@charset "UTF-8";



@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {}
@media screen and (max-width : 378px) {}

.slider {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-overflow-scrolling: touch;
}
.slider :before,
.slider :after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

/* layout
--------------------------------------------------------------------------*/
.inner {
	margin: 0 auto;
	width: 1187px;
	max-width: 100%;
	padding: 0 50px;
	position: relative;
}
#gNav ul.gnav > li ul.sub-menu {
	margin: 0 auto;
	width: 1187px;
	padding: 20px 50px;
}
#main {}
#topLead {}
.sp,
.xsp,
.ssp {
	display: none;
}
#wpadminbar {
	position: fixed!important;
}
@media screen and (max-width : 1109px) {
	.pc { display: none; }
}
@media screen and (max-width : 850px) {
	html #wpadminbar {
		display: none;
	}
	body {
		/* padding-top: 64px;*/
	}
	body.login {}
	html {
		margin-top: 0 !important;
	}
	.inner {
		padding: 0 24px;
	}
	.pcl { display: none; }
	.sp { display: block; }
	br.sp { display: inline; }
	img.sp { display: inline-block; }
}
@media screen and (max-width : 378px) {
	.ssp { display: block; }
	br.ssp { display: inline; }
	.xsp { display: block; }
	br.xsp { display: inline; }
}

/* block
------------------------------------------------------------------- */
h1, h2, h3, h4, h5, h6 {
	font-weight: bold;
	/*margin: 1.36em 0 1.18em 0;*/
	line-height: 1.6;
}
h1 { font-size: 30px; }
h2 { font-size: 24px; }
h3 { font-size: 18px; }
h4 { font-size: 16px; }
h5 { font-size: 15px; }
h6 { font-size: 13px; }
p { margin: 0 0 1em 0; }
ul {
/*	margin: 1em 0;
	padding: 0 0 0 1.8em;
	list-style-type: disc;*/
}
ol {
	margin: 1em 0;
	padding: 0 0 0 2.2em;
}
.slide li + li {
	margin-top: 4px;
}
dl {
	margin-top: 0;
	margin-bottom: 20px;
}
dt,
dd {
	line-height: 1.4;
	margin-left: 0;
}
dt {
	font-weight: bold;
}
dd+dt {
	margin-top: 1rem;
}
table {
	margin: 1em 0;
	width: 100%;
	max-width: 100%;
	border-spacing: 0 24px;
}
caption {
	text-align: left;
	padding: 1em 0;
}
table tr th,
table tr td {
	padding: 1em;
	text-align: left;
	vertical-align: top;
}
table tr th {
	width: 17.5%;
	padding: 0.25em 0.8em;
	font-size: 16px;
	line-height: 1.4;
}
table tr td {
	padding: 0.3em 2.7em 0.3em 1.6em;
	line-height: 1.47;
}
table tr td ul + p,
table tr td ol + p {
	margin-top: 1em;
}
table tr th + td {
	border-left: 1px solid #ddd;
}
table tr > *:first-child {
	padding-left: 0;
}
table tr > *:last-child {
	padding-right: 0;
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	h1 { font-size: 18px; }
	h2 { font-size: 18px; }
	h3 { font-size: 16px; }
	h4 { font-size: 15px; }
	h5 { font-size: 15px; }
	h6 { font-size: 15px; }
	table,
	table tbody,
	table tr,
	table tr th,
	table tr td {
		display: block;
		width: 100%;
	}
	table tr th {
		padding: 0 0 1em 0;
		font-size: 16px;
	}
	table tr td {
		font-weight: normal;
		font-size: 14px;
		padding-bottom: 2.86em;
	}
	table tr th + td {
		border-left: 0;
		padding: 0 0 2.85712em 0;
	}
	table tbody > tr:last-child td,
	table > tr:last-child td {
		padding-bottom: 0;
	}
}
@media screen and (max-width : 378px) {}

/* inline
------------------------------------------------------------------- */
a {
text-decoration: none;
    word-break: break-all;
    color: #d88d0b;
}
a.img {
	display: inline-block;
	-webkit-transition: opacity 0.1s linear;
	-o-transition: opacity 0.1s linear;
	transition: opacity 0.1s linear;
}
@media screen and (min-width : 851px) {
	a.img:hover {
		-ms-filter: "alpha(opacity=70)";
		filter: alpha(opacity=70);
		opacity: 0.7;
	}
	a:hover {
		color: #ED6103;
		text-decoration: underline;
	}
}
strong {
	font-weight: bold;
	font-style: normal;
	color: inherit;
}
em {
	font-style: italic;
}
small {
	font-size: 0.9em;
}
sup {}
sub {}
img {
	margin: 0;
	padding: 0;
	max-width: 100%;
	vertical-align: middle;
}

/* alignment
--------------------------------------------------------------------------*/
.alignleft 		{ float: left; margin-right: 20px; }
.alignright 	{ float: right; margin-left: 20px; }
.aligncenter 	{ text-align: center; margin: 0 auto; display: block; }
.leftcolumn img.alignleft,
.leftcolumn img.alignright {
	margin-top: 20px;
}
img {
	max-width: 100%;
	height: auto;
}
img.wp-post-image {
	height: auto;
}
img.border {
	border: 1px solid #ccc;
}

@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	img.alignright {
		margin-bottom: 20px;
	}
}

/* focus
------------------------------------------------------------------- */
.focus {
	position: relative;
	display: inline-block;
}
.focusLeft {
	padding: 0 0 0 0.4em;
	margin: 0 0 0 0.4em;
}
.focusRight {
	padding: 0 0.4em 0 0;
	margin: 0 0.4em 0 0;
}
.focusLeft:before,
.focusLeft:after,
.focusRight:before,
.focusRight:after {
	position: absolute;
	display: block;
	content: "";
	width: 28px;
	height: 28px;
	background: url(../images/ico_focus_l.svg) no-repeat;
	background-size: 28px;
}
.focusLeft:before {
	top: 5px;
	left: -0.1em;
}
.focusLeft:after {
	left: -0.1em;
	bottom: 5px;
	transform: rotate(-90deg);
	-ms-transform: rotate(-90deg);
	-moz-transform: rotate(-90deg);
	-webkit-transform: rotate(-90deg);
}
.focusRight:before {
	top: 5px;
	right: -0.1em;
	transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
}
.focusRight:after {
	right: -0.1em;
	bottom: 5px;
	transform: rotate(-180deg);
	-ms-transform: rotate(-180deg);
	-moz-transform: rotate(-180deg);
	-webkit-transform: rotate(-180deg);
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	.focusLeft:before,
	.focusLeft:after,
	.focusRight:before,
	.focusRight:after {
		width: 19px;
		height: 19px;
		background-size: 19px;
	}
	.focusLeft:before,
	.focusLeft:after {
		left: -0.2em;
	}
	.focusRight:before,
	.focusRight:after {
		right: -0.2em;
	}
}
@media screen and (max-width : 378px) {}

/* header - layout
------------------------------------------------------------------- */

body.login header {
	top: 32px;
}
@media screen and (min-width : 851px) {
	body.scroll header {
		border-bottom: 1px solid rgba(0,0,0,0.05);
	}
	body.scroll #logo {
		line-height: 60px;
		height: 60px;
	}
	body.scroll #logo img {
		width: 120px;
	}
	body.scroll #gNavWrap #gNav ul.gnav > li.lang {
		height: 60px;
	}
	body.scroll #gNavWrap #gNav ul.gnav > li > a {
		height: 60px;
		line-height: 60px;
	}
	body,
	#logo,
	#logo img,
	#gNavWrap #gNav ul.gnav > li,
	#gNavWrap #gNav ul.gnav > li > a {
		-webkit-transition: all 0.1s linear;
		-o-transition: all 0.1s linear;
		transition: all 0.1s linear;
	}
}
	
@media screen and (max-width : 1109px) {
	header {
		display: table;
		width: 100%;
	}
}
@media screen and (max-width : 850px) {
	body.login header {
		top: 0;
	}
	header {
		/* position: fixed; */
		top: 0;
		left: 0;
		width: 100%;
		height: 64px;
		z-index: 1000;
		/* background-color: rgba(255,255,255,0.95); */
	}
}
@media screen and (max-width : 378px) {}


/* header
------------------------------------------------------------------- */
#logo {
	line-height: 88px;
	height: 88px;
	min-width: 247px;
	position: absolute;
	top: 0;
	left: 0;
}
#logo a {
	display: inline-block;
	padding: 0 20px;
}
#gNavWrap {}
body.home #gNavWrap {
	width: 100%;
	text-align: right;
}
#gNavWrap #gNav {
	width: 100%;
}
#gNavWrap #gNav > .inner {
	position: static;
}
#gNavWrap #spNavBtn {
	display: none;
	width: 60px;
	height: 60px;
	line-height: 60px;
	text-align: center;
	z-index: 2000;
	text-align: right;
}
#gNavWrap #spNavBtn a {
	display: block;
}
#gNavWrap #spNavBtn a img {
	padding: 20px 0;
}
#gNavWrap #gNav > ul.gnav {
	max-width: 100%;
	list-style-type: none;
	margin: 0 auto;
	padding: 0;
	width: 100%;
	text-align: center;
}
#gNavWrap #gNav ul.gnav > li {
	display: inline-block;
	margin: 0 -5px 0 0;
	padding: 0;
	-webkit-transition: all 0.1s linear;
	-o-transition: all 0.1s linear;
	transition: all 0.1s linear;
}
@media screen and (min-width : 851px) {
	#gNavWrap #gNav ul.gnav > li:hover {
		/*background-color: rgba(245,246,247,0.9);*/
		background-color: #f4f4f4;
	}
}

#gNavWrap #gNav ul.gnav > li.menu-item-home {
	display: none;
}
#gNavWrap #gNav ul.gnav > li > a {
	display: block;
	padding: 0 2em;
	text-decoration: none;
	font-weight: bold;
	color: #000;
	text-align: center;
	line-height: 88px;
	white-space: nowrap;
	position: relative;
}
#gNavWrap #gNav ul.gnav > li:last-child > a:before {
	display: none;
}
#gNavWrap #gNav ul.gnav > li > div.inner {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	padding: 20px 0;
	/*background-color: rgba(245,246,247,0.95);*/
	/*border-bottom: 3px solid rgba(215,216,217,0.95);*/
	background-color: #f4f4f4;
	border-bottom: 3px solid #efefef;
	z-index: 200;
}

#gNavWrap #gNav ul.gnav > li > ul.sub-menu {
	display: none;
}
#gNavWrap #gNav ul.gnav > li ul.sub-menu {
	list-style-type: none;
}
#gNavWrap #gNav ul.gnav > li ul.sub-menu:after {
	content: '';
	display: block;
	clear: both;
}
#gNavWrap #gNav ul.gnav > li ul.sub-menu li {
	position: relative;
	width: 29%;
	float: left;
	margin: 8px 4% 8px 0;
	/*margin-right: 4%;*/
	border-bottom: 0;
}
#gNavWrap #gNav ul.gnav > li ul.sub-menu li a {
	display: block;
	position: relative;
	font-weight: bold;
	padding: 0;
	text-decoration: none;
	color: #3E3E3E;
	line-height: 2.875;
	-webkit-transition: all .2s ease-in-out 0s;
	-o-transition: all .2s ease-in-out 0s;
	transition: all .2s ease-in-out 0s;
}
#gNavWrap #gNav ul.gnav > li ul.sub-menu li a:after {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	right: 10px;
	width: 8px;
	height: 8px;
	margin: auto;
	border-right: 1px solid #808080;
	border-bottom: 1px solid #808080;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
	-webkit-transition: all .2s ease-in-out 0s;
	-o-transition: all .2s ease-in-out 0s;
	transition: all .2s ease-in-out 0s;
}
@media screen and (min-width : 851px) {
	#gNavWrap #gNav ul.gnav > li ul.sub-menu li a:hover {
		color: #ED6103;
	}
	#gNavWrap #gNav ul.gnav > li ul.sub-menu li a:hover:after {
		border-color: #ED6103;
	}
}
#gNavWrap #gNav ul.gnav > li ul.sub-menu li:before,
#gNavWrap #gNav ul.gnav > li ul.sub-menu li:after{
	position: absolute;
	bottom: 0;
	content: "";
	display: inline-block;
	width: 0;
	height: 1px; 
	-ms-filter: "alpha(opacity=0)";
	filter: alpha(opacity=0);
	opacity: 0;
	background: #ed6103;
	-webkit-transition: all .2s ease-in-out 0s;
	-o-transition: all .2s ease-in-out 0s;
	transition: all .2s ease-in-out 0s;
}
#gNavWrap #gNav ul.gnav > li ul.sub-menu li:before{
	left: 50%;
}
#gNavWrap #gNav ul.gnav > li ul.sub-menu li:after{
	right: 50%;
}

/* language */
#gNavWrap #gNav ul.gnav > li.lang {
	position: absolute;
	top: 0;
	right: 0;
	/*width: 123px;*/
	height: 88px;
	margin-right: 0;
}
#gNavWrap #gNav ul.gnav > li.lang > a {
	padding: 0 2.66667em;
}
#gNavWrap #gNav ul.gnav > li.lang > div.inner {
	padding: 0;
	border-bottom: 0;
}
#gNavWrap #gNav ul.gnav > li.lang ul.sub-menu {
	width: 100%;
	padding: 0 15px;
}
#gNavWrap #gNav ul.gnav > li.lang ul.sub-menu > li {
	float: none;
	width: 100%;
	margin: 0;
}
#gNavWrap #gNav ul.gnav > li.lang ul.sub-menu > li + li {
	border-top: 1px solid #d2d2d2;
}
#gNavWrap #gNav ul.gnav > li.lang ul.sub-menu > li > a {
	padding: 0;
	line-height: 57px;
	height: 57px;
}
#gNavWrap #gNav ul.gnav > li.lang ul.sub-menu > li.on > a {
	color: #ed6103;
}
#gNavWrap #gNav ul.gnav > li.lang ul.sub-menu > li:before,
#gNavWrap #gNav ul.gnav > li.lang ul.sub-menu > li:after {
	display: none;
}
#gNavWrap #gNav ul.gnav > li.lang ul.sub-menu > li > a:after {
	display: none;
}

@media screen and (min-width : 851px) {
	#gNavWrap #gNav ul.gnav > li ul.sub-menu li:hover {
		color: #ed6103;
		text-decoration: none;
	}
	#gNavWrap #gNav ul.gnav > li ul.sub-menu li:hover:before,
	#gNavWrap #gNav ul.gnav > li ul.sub-menu li:hover:after{
		width: 50%;
		-ms-filter: "alpha(opacity=100)";
		filter: alpha(opacity=100);
		opacity: 1;
	}
	#gNavWrap #gNav ul.gnav > li[class*="current-"] > a {
		color: #ed6103;
	}
}
@media screen and (max-width : 1109px) {
	header #logo {
		position: static;
		top: initial;
		left: initial;
		display: table-cell;
	}
	header #gNavWrap {
		display: table-cell;
	}
	#gNavWrap #gNav ul.gnav {
		display: table;
		max-height: 100%;
	}
	#gNavWrap #gNav ul.gnav li:not(.sp) {
		display: table-cell;
	}
	#gNavWrap #gNav ul.gnav > li > a {
		padding: 0 1em;
	}
	#gNavWrap #gNav ul.gnav > li.lang {
		position: static;
		top: initial;
		right: initial;
		width: auto;
	}
}
@media screen and (max-width : 850px) {
	#logo {
		line-height: 24px;
		height: 24px;
	}
	#logo a {
		padding: 0 16px;
		line-height: 64px;
	}
	#logo a img {
		width: 98px;
	}
	#gNavWrap {
		width: 60px;
		text-align: right;
	}
	#gNavWrap #gNav {
		display: none;
	}
	#gNavWrap #spNavBtn {
		display: inline-block;
		text-align: center;
	}
	#gNavWrap #spNavBtn {
		-webkit-transition: background 0.1s linear;
		-o-transition: background 0.1s linear;
		transition: background 0.1s linear;
		background-repeat: no-repeat;
		background-size: 24px;
		background-position: center;
	}
	#gNavWrap #spNavBtn img {
		-webkit-transition: opacity 0.1s linear;
		-o-transition: opacity 0.1s linear;
		transition: opacity 0.1s linear;
	}
	#gNavWrap #spNavBtn.on {
		background-image: url(../images/ico_spnav_btn_close.svg);
	}
	#gNavWrap #spNavBtn.on img {
		-ms-filter: "alpha(opacity=0)";
		filter: alpha(opacity=0);
		opacity: 0;
	}
}
@media screen and (max-width : 378px) {
	#gNavWrap #gNav ul.gnav > li > a,
	#gNavWrap #gNav ul.gnav > li ul.sub-menu li a {
		font-size: 14px;
	}
}

/* spNav
------------------------------------------------------------------- */
#spNav {
	display: none;
	width: 100%;
	background-color: #E75F04;
	position: fixed;
	top: 64px;
	left: 0;
	height: calc(100% - 64px);
	overflow-x: hidden;
	overflow-y: scroll;
	z-index: 1000;
}
#spNav ul.gnav {
	width: 100%;
	display: block;
	padding: 0;
	margin: 0;
}
#spNav ul.gnav > li {
	display: block;
	width: 100%;
	margin: 0;
	border-bottom: 1px solid rgba(255,255,255,0.7);
}
#spNav ul.gnav > li > a,
#spNav ul.gnav > li ul.sub-menu li a {
	display: inline-block;
	width: 100%;
	color: #fff;
	padding: 0;
	height: 64px;
	line-height: 64px;
	text-align: center;
	text-decoration: none;
}
#spNav ul.gnav>li ul.sub-menu li a {
	/*padding-left: 3.5em;*/
}
#spNav ul.gnav > li > a:before {
	display: none;
}
@media screen and (min-width : 851px) {
	#spNav ul.gnav > li:hover {
		background-color: transparent;
	}
}
#spNav ul.gnav > li.menu-item-home {
	display: block;
}
#spNav ul.gnav > li > a {
	font-weight: bold;
	background-image: url(../images/ico_spnav_arrow.svg);
	background-repeat: no-repeat;
	background-position: top 1.7em right 20px;
	background-size: 13px;
}
#spNav ul.gnav > li.menu-item-has-children > a {
	background-image: url(../images/ico_spnav_plus.svg);
	background-position: top 1.7em right 15px;
	background-size: 16px;
}
#spNav ul.gnav > li > a.exlink {
	background-image: url(../images/ico_exlink.svg);
	background-position: top 1.7em right 16px;
}
#spNav ul.gnav > li.on > a {
	background-image: url(../images/ico_spnav_minus.svg);
	background-size: 16px;
	background-position: right 15px top 33px;
}
#spNav ul.gnav > li.close > a {
	text-align: center;
	padding: 0;
	border-bottom: 0;
	background-image: none;
}
#spNav ul.gnav > li.close > a > span {
	display: inline-block;
	padding: 0 0 0 32px;
	background-image: url(../images/ico_spnav_btn_close_w.svg);
	background-repeat: no-repeat;
	background-position:  left center;
	background-size: 16px;
}
#spNav ul.gnav > li > div.inner {
	display: block;
	padding: 0;
	position: static;
	background-color: #AC4500;
}
#spNav ul.gnav > li div.sub-menu-wrap {
	display: none;
}
#spNav ul.gnav > li ul.sub-menu {
	display: flex;
	list-style-type: none;
	flex-wrap: wrap;
	width: 100%;
	padding: 0;
	margin: 0;
	background-color: #fff;
}
#spNav ul.gnav > li ul.sub-menu > li {
	width: 50%;
	margin: 0;
	display: flex;
	border-bottom: 1px solid #ED6103;
}
#spNav ul.gnav > li ul.sub-menu > li:nth-child(2n+1) {
	border-right: 1px solid #ED6103;
}
#spNav ul.gnav > li ul.sub-menu > li:last-child,
#spNav ul.gnav > li ul.sub-menu.has_even_items > li:nth-last-child(2) {
	border-bottom: 0;
}
#spNav ul.gnav > li ul.sub-menu li a {
	padding: 24px 0.5em;
	border: 0;
	color: #ED6103;
	height: auto;
	line-height: 1.3;
	text-align: center;
	font-weight: normal;
	display: flex;
	align-items: center;
}
#spNav ul.gnav > li ul.sub-menu li a > span {
	display: block;
	width: 100%;
}

#spNav ul.gnav > li.lang {
	padding: 24px 24px 42px 24px;
	border-bottom: 0;
}
#spNav ul.gnav > li.lang > span {
	display: block;
	color: #fff;
	font-weight: bold;
	line-height: 1;
	font-size: 14px;
	margin-bottom: 10px;
}
#spNav ul.gnav > li.lang > ul {
	list-style-type: none;
	display: flex;
	margin: 0;
	border: 1px solid #fff;
	border-radius: 5px;
	padding: 0;
}
#spNav ul.gnav > li.lang > ul > li {
	flex-grow: 1;
	margin: 0;
}
#spNav ul.gnav > li.lang > ul > li > a {
	display: block;
	color: #fff;
	height: 38px;
	line-height: 38px;
	text-align: center;
	text-decoration: none;
}
#spNav ul.gnav > li.lang > ul > li.on {
	background-color: #fff;
}
#spNav ul.gnav > li.lang > ul > li.on > a {
	color: #ED6103;
}
#spNav ul.gnav > li.close {
	border-bottom: 0;
}
@media screen and (max-width : 850px) {}
@media screen and (max-width : 415px) {}
@media screen and (max-width : 378px) {}

/* main
------------------------------------------------------------------- */
#main div.line > .inner {
	width: 1187px;
}
#main div.line > .inner > *:first-child { margin-top: 0; }
#main div.line > .inner > *:last-child { margin-bottom: 0; }
#main h2 {
	color: #000;
	font-size: 40px;
	line-height: 1.2;
	margin-bottom: 0.75em;
}
#main h2.en {
	font-weight: 900;
	letter-spacing: 0.1em;
}
#main h2.line {
	margin: 4.38em 0 2.085em 0;
	text-align: center;
	position: relative;
}
#main h2.line:before {
	content: "";
	display: block;
	border-top: 1px solid #ED6103;
	width: 100%;
	height: 1px;
	margin-bottom: -0.98em;
}
#main h2.line > span {
	display: inline-block;
	padding: 0 30px;
	background-color: #fff;
}
#main .inner > p.lead {
	font-size: 24px;
	font-weight: bold;
	line-height: 1.75;
	text-align: center;
}

@media screen and (min-width : 851px) {}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main h2 {
		font-size: 30px;
	}
	#main p {
		font-size: 15px;
	}
	#main .inner > p.lead {
		font-size: 18px;
		line-height: 1.77777;
		text-align: left;
		letter-spacing: 0;
	}
}
@media screen and (max-width : 378px) {}

/* post-date
------------------------------------------------------------------- */
#post-date .inner {}
#post-date .inner:after {
	content: '';
	display: block;
	clear: both;
}
#post-date .date {
	float: left;
	width: 10em;
}
#post-date .wp_social_bookmarking_light {
	float: right;
	padding-top: 0!important;
}

@media screen and (min-width : 851px) {}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#post-date .date {
		float: none;
		width: 10em;
	}
	#post-date .wp_social_bookmarking_light {
		float: none;
	}
}
@media screen and (max-width : 378px) {}

/* post-content
------------------------------------------------------------------- */
#post-content {
	margin-top: 30px;
}
#post-title + #post-content {
	margin-top: 50px;
}
#post-content > .inner {
	width: 1108px;
	line-height: 2;
}
#post-content h2 {
	margin: 80px 0 56px;
	padding: 14px 0 14px 20px;
	border-left: 5px solid #ed6103;
	color: #ED6103;
	font-size: 24px;
	position: relative;
}
#post-content h3 {
	padding: 9px 16px;
	margin: 56px 0 32px;
	border-left: 5px solid;
}
#post-content h3 > a {
	color: #3e3e3e;
}
#post-content h3 > a:hover {
	color: #bfbfbf;
}
#post-content h4 {
	color: #4C4C4C;
	margin-top: 32px;
	margin-bottom: 20px;
}
#post-content img {
	height: auto;
}
#post-content ul:not([class]),
#post-content ul ul {
	list-style-type: none;
	padding-left: 24px;
}
#post-content ul li {
	position: relative;
}
#post-content ul:not([class]) li:before,
#post-content ul li:before {
	display: block;
	content: '';
	position: absolute;
	top: 0.85em;
	left: -24px;
	width: 8px;
	height: 1px;
	background-color: #4C4C4C;
}
#post-content table td ul:not([class]) li:before {
	top: 0.75em;
}
#post-content ul li + li {
	margin-top: 4px;
}
#post-content .inner > *:first-child,
#post-content .wp_social_bookmarking_light_clear + * {
	margin-top: 0;
}
#post-content table th > *:first-child,
#post-content table td > *:first-child {
	margin-top: 0;
}
#post-content table th > *:last-child,
#post-content table td > *:last-child {
	margin-bottom: 0;
}
#post-content a {
	-webkit-transition: all 0.1s linear;
	-o-transition: all 0.1s linear;
	transition: all 0.1s linear;
}
#post-content a:hover {
	color: #efb690;
}
#post-content table td ul {
	list-style-type: none;
}
#post-content div.map-canvas {
	height: 350px;
}

#post-content ol.note li {
	position: relative;
}
#post-content ol.note li:before {
	content: '※';
	position: absolute;
	top: 0.05em;
	left: -2.3em;
}
body.en #post-content ol.note li:before {
	content: '*';
	left: -1.7em;
}

@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#post-title + #post-content {
		margin-top: 32px;
	}
	#post-content h2 {
		margin: 64px 0 40px;
		padding: 10px 0 10px 20px;
		font-size: 22px;
		border-left: 4px solid;
	}
	#post-content h2 > span {
		top: .8em;
	}
	#post-content h3 {
		font-size: 18px;
		margin: 40px 0 28px;
		padding: 9px 0 9px 12px;
		border-left: 4px solid;
	}
	#post-content h4 {
		margin-bottom: 16px;
	}
	#post-content p img.alignright {
		display: block;
		float: none;
		margin-left: 0;
	}
	#post-content ul:not([class]) li:before,
	#post-content ul li:before {
		top: 0.9em;
	}
	#post-content table td ul:not([class]) li:before {
		top: 0.65em;
	}
}
@media screen and (max-width : 378px) {}

/* h2nav
------------------------------------------------------------------- */
#main div.h2nav {
	margin: -12px;
	width: calc(100% + 24px);
	display: flex;
	flex-wrap: wrap;
}
#main div.h2nav a {
	display: inline-block;
	margin: 12px;
	text-decoration: none;
	padding: 13px 50px;
	border: 1px solid;
	border-radius: 2px;
	font-weight: bold;
	font-size: 14px;
	background-image: url(../images/ico_arrow_down.svg);
	background-repeat: no-repeat;
	background-position: 20px center;
}

@media screen and (min-width : 851px) {
	#main div.h2nav a {
		color: #797979;
		background-image: url(../images/ico_arrow_down_off.svg);
	}
	#main div.h2nav a:hover {
		color: #ED6103;
		border-color: #ED6103;
		background-image: url(../images/ico_arrow_down.svg);
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main div.h2nav {
		margin: -8px;
		width: calc(100% + 16px);
		display: flex;
		flex-wrap: wrap;
	}
	#main div.h2nav a {
		margin: 8px;
		font-size: 11px;
		padding: 12px 20px 12px 32px;
		background-position: 12px center;
		background-size: 8px;
	}
}
@media screen and (max-width : 378px) {
	#main div.h2nav a {
		padding: 12px 12px 12px 24px;
		background-position: 8px center;
	}
	#main div.h2nav a + a {
		margin-left: 8px;
	}
}

/* imgNav
------------------------------------------------------------------- */
#post-content + #imgNav {
	margin-top: 80px;
}
#imgNav ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
#imgNav ul > li {
	margin: 0;
	background-repeat: no-repeat;
	background-size: cover;
}
#imgNav ul > li:before {
	display: none!important;
}
#imgNav ul > li > a {
	display: block;
	position: relative;
	background-color: rgba(0,0,0,0.4);
	-webkit-transition: all 0.1s linear;
	-o-transition: all 0.1s linear;
	transition: all 0.1s linear;
}
#imgNav ul > li > a > img.bg {
	-ms-filter: "alpha(opacity=0)";
	filter: alpha(opacity=0);
	opacity: 0;
}
#imgNav ul > li > a > span:not(.focusRing--hover__ring) {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	font-size: 24px;
	font-weight: bold;
	color: #fff;
	text-align: center;
	padding-right: 32px;
	background-image: url(../images/btn_more_arrow_bold_w.svg);
	background-repeat: no-repeat;
	background-position: center right;
}

#post-content #imgNav {
	margin-top: 80px;
	margin-bottom: -120px;
}
#post-content #imgNav ul {
	padding: 0;
	list-style-type: none;
}
#post-content #imgNav ul li + li {
	margin-top: 0;
}

@media screen and (min-width : 851px) {
	#imgNav ul {
		display: flex;
	}
	#imgNav ul > li {
		flex-grow: 1;
	}
	#imgNav ul > li > a:hover {
		background-color: rgba(0,0,0,0.3);
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#imgNav ul > li > a > span:not(.focusRing--hover__ring) {
		width: 100%;
		font-size: 18px;
		padding-right: 0;
		background-image: url(../images/btn_more_arrow_w.svg);
		background-position: center right 16px;
	}
	#post-content #imgNav {
		margin-bottom: -104px;
	}
}
@media screen and (max-width : 378px) {}

/* imgFullBnr
------------------------------------------------------------------- */
#imgFullBnr {
	margin-top: 120px;
	position: relative;
}
#imgFullBnr div.bg {}
#imgFullBnr div.bg img {
	width: 100%;
}
#imgFullBnr div.txt {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	color: #ed6103;
	text-align: center;
}
#imgFullBnr div.txt .outer_txt {
	display: table;
	width: 100%;
	height: 100%;
}
#imgFullBnr div.txt .in_txt {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	padding-top: 10px;
}
#imgFullBnr div.txt .in_txt > span {
	display: block;
	font-weight: bold;
}
#imgFullBnr div.txt .in_txt span.lead {
	margin-top: 32px;
	font-size: 18px;
	letter-spacing: 0.075em;
	line-height: 1.88888;
}
#imgFullBnr div.txt .in_txt p.btn {
	margin-top: 40px;
	margin-bottom: 0;
}
#imgFullBnr div.txt .focusRing__ring {
	font-size: 60px;
}
#imgFullBnr .focusRing.inset > .focusRing__ring::before {
	top: 32px;
	right: 40px;
}
#imgFullBnr .focusRing.inset > .focusRing__ring::after {
	bottom: 32px;
	right: 40px;
}
#imgFullBnr .focusRing.inset > .focusRing__ring .focusRing__ring::before {
	top: 32px;
	left: 40px;
}
#imgFullBnr .focusRing.inset > .focusRing__ring .focusRing__ring::after {
	bottom: 32px;
	left: 40px;
}

body.en #imgFullBnr div.txt .in_txt span.copy > span {
	font-weight: 900;
	font-size: 50px;
	letter-spacing: 0.143em;
	line-height: 60px;
}
body.en #imgFullBnr div.txt .in_txt span.lead {
	font-weight: normal;
}

@media screen and (min-width : 851px) {}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#imgFullBnr {
		margin-top: 64px;
	}
	#imgFullBnr div.txt .in_txt {
		padding: 32px;
	}
	#imgFullBnr div.txt .in_txt span.lead {
		font-size: 13px;
		margin-top: 24px;
	}
	#imgFullBnr div.txt .focusRing__ring {
		font-size: 48px;
	}
	#imgFullBnr div.txt .in_txt p.btn {
		margin: 24px auto 0 auto;
		width: 100%;
		max-width: 296px;
	}
	#imgFullBnr div.txt .in_txt p.btn a {
		width: 100%;
	}
	#imgFullBnr .focusRing.inset > .focusRing__ring::before {
		top: 20px;
		right: 12px;
	}
	#imgFullBnr .focusRing.inset > .focusRing__ring::after {
		bottom: 20px;
		right: 12px;
	}
	#imgFullBnr .focusRing.inset > .focusRing__ring .focusRing__ring::before {
		top: 20px;
		left: 12px;
	}
	#imgFullBnr .focusRing.inset > .focusRing__ring .focusRing__ring::after {
		bottom: 20px;
		left: 12px;
	}

	body.en #imgFullBnr div.txt .in_txt span.copy > span {
		font-size: 34px;
		line-height: 44px;
	}
	body.en #imgFullBnr div.txt .in_txt span.lead {
		letter-spacing: 0.05em;
		line-height: 20px;
	}
}
@media screen and (max-width : 378px) {}
@media screen and (max-width : 370px) {
	#imgFullBnr div.txt .in_txt span.lead {
		font-size: 12px;
	}
	body.en #imgFullBnr div.txt .in_txt span.copy > span {
		font-size: 28px;
	}
	body.en #imgFullBnr div.txt .in_txt span.lead {
		font-size: 11px;
		line-height: 1.4;
	}
}

/* topSlide
------------------------------------------------------------------- */
#topSlide {
	margin-top: 12px;
	margin-bottom: 120px;
}
#topSlide .inner {
	width: 100%;
	padding: 0;
	height: 584px;
	margin-bottom: 60px;
}
#topSlide ul.slider {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
#topSlide ul.slider li.slick-slide {
	margin: 0;
}

@keyframes slidefade {
	0% { transform: translateX(5%); }
	100% { transform: translateX(0); }
}
@keyframes slidefadeout {
	0% { transform: translateX(0); }
	100% { transform: translateX(-2%); }
}

@media screen and (min-width : 851px) {}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#topSlide,
	#topSlide .inner {
		height: 424px;
	}
	#topSlide {
		margin-bottom: 60px;
	}
}
@media screen and (max-width : 378px) {}

/* imgSlide
------------------------------------------------------------------- */
#imgSlide {
	height: 440px;
}
#imgSlide ul.slider {
	-ms-filter: "alpha(opacity=0)";
	filter: alpha(opacity=0);
	opacity: 0;
	-webkit-transition: opacity 0.1s linear;
	-o-transition: opacity 0.1s linear;
	transition: opacity 0.1s linear;
}
#imgSlide .slick-slider {
	height: 440px;
}
#imgSlide .slick-slider.slick-initialized {
	-ms-filter: "alpha(opacity=100)";
	filter: alpha(opacity=100);
	opacity: 1;
}
#imgSlide ul li.slick-slide {
	padding: 70px 15px 80px 15px;
	width: 910px;
	height: 440px;
	/*z-index: 5;*/
}
#imgSlide ul li.slick-slide a.inbox {
	display: block;
	width: 100%;
	height: 100%;
	text-align: center;
	border-radius: 8px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
#imgSlide ul li.slick-slide img {
	display: inline-block;
	-ms-filter: "alpha(opacity=0)";
	filter: alpha(opacity=0);
	opacity: 0;
	width: 100%;
	height: auto;
}
#imgSlide ul li.slick-slide {
	-webkit-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.2s linear;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-overflow-scrolling: touch;
}
#imgSlide ul li.slick-active,
#imgSlide ul li.slick-active.slick-cloned {
	padding: 40px 15px;
}

#imgSlide .focusRing {
	position: absolute;
	width: 992px;
	max-width: calc(100% - 32px);
	height: 440px;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
	/*z-index: 10;*/
}
#imgSlide .focusRing {
	-webkit-transition: all 0.075s ease-out;
	-o-transition: all 0.075s ease-out;
	transition: all 0.075s ease-out;
}
#imgSlide.focus-in .focusRing {
	top: 12px;
	width: 968px;
	max-width: calc(100% - 32px - 24px);
	height: 416px;
	-webkit-transition: all 0.275s ease-out;
	-o-transition: all 0.275s ease-out;
	transition: all 0.275s ease-out;
}

@media screen and (min-width : 851px) {}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#imgSlide,
	#imgSlide .slick-slider,
	#imgSlide ul li.slick-slide {
		height: 424px;
	}
	#imgSlide ul li.slick-slide {
		padding: 0;
		padding-top: 32px;
		padding-bottom: 184px;
	}
	#imgSlide ul li.slick-slide a.inbox {
		height: 208px;
		border-radius: 0;
	}
	#imgSlide ul li .focusRing__ring {
		display: none;
		font-size: 32px;
	}
	#imgSlide ul li .focusRing__ring::before {
		top: 0;
		right: 16px;
	}
	#imgSlide ul li .focusRing__ring::after {
		bottom: 0;
		right: 16px;
	}
	#imgSlide ul li .focusRing__ring .focusRing__ring::before {
		top: 0;
		left: 16px;
	}
	#imgSlide ul li .focusRing__ring .focusRing__ring::after {
		bottom: 0;
		left: 16px;
	}
	#imgSlide ul li.slick-active-stop .focusRing__ring {
		display: block;
	}
	#imgSlide .focusRing {
		height: 424px;
		max-width: calc(100% - 16px);
	}
	#imgSlide .focusRing .focusRing__ring {
		font-size: 32px;
	}
	#imgSlide.focus-in .focusRing {
		top: 8px;
		max-width: calc(100% - 16px - 16px);
		height: 408px;
	}
}
@media screen and (max-width : 415px) {
	/*
	#imgSlide .focusRing {
		-webkit-transition: all 0.075s ease-out;
		-o-transition: all 0.075s ease-out;
		transition: all 0.075s ease-out;
	}
	#imgSlide.focus-in .focusRing {
		-webkit-transition: all 0.275s ease-out;
		-o-transition: all 0.275s ease-out;
		transition: all 0.275s ease-out;
	}
	*/
}

/* txtSlide
------------------------------------------------------------------- */
#txtSlide {
	position: absolute;
	/*bottom: 0;*/
	left: calc((100% - 832px) / 2);
	width: 832px;
	margin: -80px 0 0 0;
}
#txtSlide ul.slider {
	-ms-filter: "alpha(opacity=0)";
	filter: alpha(opacity=0);
	opacity: 0;
	-webkit-transition: opacity 0.1s linear;
	-o-transition: opacity 0.1s linear;
	transition: opacity 0.1s linear;
}
#txtSlide .slick-slider {
	background-color: #f0ac09;
	border-radius: 8px;
}
#txtSlide .slick-slider.slick-initialized {
	-ms-filter: "alpha(opacity=100)";
	filter: alpha(opacity=100);
	opacity: 1;
}
#txtSlide ul li.slick-slide {

	width: 100%;
	padding: 0;
}
#txtSlide ul li.slick-slide div.txt {

	width: 100%;
	padding: 0;
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	line-height: 2.22;
	letter-spacing: 0;
	color: #fff;
	font-size: 18px;
}
#txtSlide ul li.slick-slide div.txt > a {
	display: block;
	color: #fff;
	text-decoration: none;
	padding: 20px 8px 20px 8px;
}
#txtSlide ul li.slick-slide div.txt span {
	display: block;
	line-height: 1.5;
}
#txtSlide ul li.slick-move div.txt {
	animation-timing-function: ease-out;
	animation-duration: 0.3s;
	animation-name: slidefade;
}
#txtSlide ul li.slick-out div.txt {
	-ms-filter: "alpha(opacity=0)";
	filter: alpha(opacity=0);
	opacity: 0;
	animation-timing-function: ease-out;
	animation-duration: 0.1s;
	animation-name: slidefadeout;
}
#txtSlide ul li.slick-slide div.txt div.row + div.row {
	margin-top: 18px;
}
#txtSlide ul li.slick-slide div.txt div.row + div.row.title {
	margin-top: 5px;
}
#txtSlide ul li.slick-slide div.txt div.row.tag + div.row.title {
	margin-top: 18px;
}
#txtSlide ul li.slick-slide div.txt span.tag {
	display: inline-block;
	padding: 0.1em 1.85714em 0 2.85714em;
	background-color: #fff;
	color: #ED6103;
	letter-spacing: -0.05em;

	height: 1.714258em;
	line-height: 1.714258em;
	border-radius: 0.85em;
	font-weight: bold;
}
#txtSlide ul li.slick-slide div.txt span.lead {
	font-size: 15px;
	font-weight: bold;
}
#txtSlide ul li.slick-slide div.txt span.lead.long {
	font-size: 16px;
	line-height: 2.8;
}
#txtSlide ul li.slick-slide div.txt div.title {
	line-height: 1;
}
#txtSlide ul li.slick-slide div.txt div.title > span {
	display: inline-block;
}
#txtSlide ul li.slick-slide div.txt div.title > span.large {
	font-size: 32px;
	font-weight: 900;
	line-height: 1.59375;
	letter-spacing: 0.075em;
}
#txtSlide ul li.slick-slide div.txt div.title > span:not(.large) {
	font-size: 29px;
	line-height: 1.4;
}

@media screen and (min-width : 851px) {}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#txtSlide ul li.slick-slide div.txt div.row.tag + div.row.title {
		margin-top: 20px;
	}
}
@media screen and (max-width : 378px) {}


body.en #txtSlide ul li.slick-slide div.txt div.title > span.large {
	font-weight: 900;
}

@media screen and (max-width :1109px) {}
@media screen and (max-width : 850px) {
	#txtSlide {
		width: calc(100% - 60px);
		left: 30px;
		height: 168px;
		bottom: 40px;
	}
	#txtSlide ul li.slick-slide {
		padding: 20px 24px;
		height: 168px;
		text-align: left;
		font-size: 14px;
	}
	#txtSlide ul li.slick-slide div.txt {
		height: auto;
		font-size: 14px;
	/*	text-align: left;*/
		padding-bottom: 0;
		line-height: 1.8;
	}
	#txtSlide ul li.slick-slide div.txt > a {
		padding: 0;
	}
	#txtSlide ul li.slick-slide div.txt div.row {
		line-height: 1;
	}
	#txtSlide ul li.slick-slide div.txt div.row + div.row {
		margin-top: 15px;
	}
	#txtSlide ul li.slick-slide div.txt span.tag {
		height: 16px;
		line-height: 16px;
		font-size: 12px;
	}
	#txtSlide ul li.slick-slide div.txt span.lead {
		font-size: 15px;
    text-align: left;
	}
	#txtSlide ul li.slick-slide div.txt span.lead.long {
		font-size: 12px;
		line-height: 2;
	}
	
	#txtSlide ul li.slick-slide div.txt span.lead{
	max-width: 800px;
		
	}	
	#txtSlide ul li.slick-slide div.txt div.title > span,
	#txtSlide ul li.slick-slide div.txt div.title > span.large,
	#txtSlide ul li.slick-slide div.txt div.title > span:not(.large) {
		display: block;
		font-size: 20px;
	}
	#txtSlide ul li.slick-slide div.txt div.title > span.large {
		line-height: 1.2;
	}

	body.en #txtSlide ul li.slick-slide div.txt {
		font-size: 14px;
	}
}
@media screen and (max-width : 374px) {
	#txtSlide ul li.slick-slide {
		padding: 20px 16px;
	}
	#txtSlide ul li.slick-slide div.txt div.title > span,
	#txtSlide ul li.slick-slide div.txt div.title > span.large,
	#txtSlide ul li.slick-slide div.txt div.title > span:not(.large) {
		font-size: 16px;
	}
	body.en #txtSlide ul li.slick-slide div.txt span.lead.long {
		line-height: 1.7;
	}
}

/* txtSlide - slick-arrow
------------------------------------------------------------------- */
#txtSlide .slick-arrow {
	top: -174px;
	width: 56px;
	height: 56px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 28px;
	-webkit-transform: none;
	-ms-transform: none;
	transform: none;
}
#txtSlide .slick-arrow:before {
	display: none;
}
#txtSlide .slick-prev {
	left: -63px;
	background-image: url(../images/ico_slider_prev.svg);
}
#txtSlide .slick-next {
	right: -63px;
	background-image: url(../images/ico_slider_next.svg);
}

@media screen and (min-width : 851px) {}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#txtSlide .slick-arrow {
		top: calc(50% - 14px);
		width: 28px;
		height: 28px;
		background-size: 14px;
	}
	#txtSlide .slick-prev {
		left: -27px;
		background-image: url(../images/ico_slider_prev_sp.svg);
	}
	#txtSlide .slick-next {
		right: -27px;
		background-image: url(../images/ico_slider_next_sp.svg);
	}
}
@media screen and (max-width : 378px) {}

/* txtSlide - slick-dotes
------------------------------------------------------------------- */
#txtSlide .slick-dots {
	bottom: -40px;
}
#txtSlide .slick-dots li button {}
#txtSlide .slick-dots li button:before {
	font-size: 12px;
	color: #d2d2d2;
	-ms-filter: "alpha(opacity=100)";
	filter: alpha(opacity=100);
	opacity: 1;
}
#txtSlide .slick-dots li.slick-active button:before {
	color: #ED6103;
	-ms-filter: "alpha(opacity=100)";
	filter: alpha(opacity=100);
	opacity: 1;
}
#txtSlide .slick-dots li button:hover:before {
	color: #ED6103;
	-ms-filter: "alpha(opacity=100)";
	filter: alpha(opacity=100);
	opacity: 1;
}

@media screen and (min-width : 851px) {}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#txtSlide .slick-dots {
		bottom: -30px;
	}
	#txtSlide .slick-dots li {
		margin: 0 2px;
	}
	#txtSlide .slick-dots li button:before {
		font-size: 8px;
	}
}
@media screen and (max-width : 374px) {
	#txtSlide .slick-dots {
		bottom: -40px;
	}
}

/* sec-title
------------------------------------------------------------------- */
#sec-title {
	margin: 0 auto 45px;
	padding: 32px 0;
	position: relative;
	background-color: #ED6103;
	color: #fff;
	text-align: center;
}
#sec-title div.inner {
	position: relative;
	display: inline-block;
	width: auto;
}
#sec-title .focusLeft:before,
#sec-title .focusLeft:after,
#sec-title .focusRight:before,
#sec-title .focusRight:after {
	background-image: url(../images/ico_focus_l_w.svg);
}
#sec-title .focusLeft {
	padding-left: 0;
	margin-left: 0;
}
#sec-title .focusRight {
	padding: 25px 90px;
	margin-right: 0;
}
#sec-title span.title,
#sec-title h1 {
	line-height: 1;
}
#sec-title span.title {
	display: block;
	margin: 0;
	font-size: 40px;
	font-weight: 900;
}
#sec-title span.title.en {
	letter-spacing: 0.1em;
}
#sec-title span.title span.focusLeft {
	padding-left: 1em;
}
#sec-title span.title span.focusRight {
	padding-right: 1em;
}
#sec-title h1 {
	margin: 0;
	font-size: 20px;
}
#sec-title span.title + h1 {
	margin-top: 0.5em;
}

@media screen and (max-width :1109px) {}
@media screen and (max-width : 850px) {
	#sec-title {
		margin: 0 auto;
		padding: 19px 0;
	}
	#sec-title .focusLeft,
	#sec-title .focusRight {
		max-width: 100%;
	}
	#sec-title .focusRight {
		padding: 20px 40px;
	}
	#sec-title:before {
		display: none;
	}
	#sec-title span.title {
		font-size: 29px;
	}
	#sec-title h1 {
		font-size: 14px;
	}
}

/* post-title
------------------------------------------------------------------- */
#post-title {
	margin: 20px 0 30px;
}
#post-title h1 {
	margin: 0;
	text-align: center;
	line-height: 1.5;
}
#post-title h1:after {
	display: block;
	content: "";
	width: 100%;
	height: 4px;
	background-color: #F5F6F7;
	margin-top: 24px;
}

body.en #post-title h1 {
	font-weight: 900;
}

@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#post-title {
		margin-top: 32px;
	}
	#post-title h1 {
		line-height: 1.4;
	}
	#post-title h1:after {
		margin-top: 14px;
	}
	#sec-title h2 {
		line-height: 2;
	}
	body.service #post-title h1:after  {
		display: none;
	}
}
@media screen and (max-width : 378px) {}

/* post-img
------------------------------------------------------------------- */
#main div.post-img {}

@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main div.post-img div.inner {
		padding: 0;
	}
}
@media screen and (max-width : 378px) {
	#main div.post-img {
		margin: 40px 0 30px 0;
	}
}

/* exectives_list / career
------------------------------------------------------------------------ */
#post-content ul.exectives_list {
	padding: 0;
	list-style-type: none;
	width: 100%;
}
#post-content ul.exectives_list:after {
	content: '';
	display: block;
	clear: both;
}
#post-content ul.exectives_list + h2 {
	margin-top: 120px;
}
#post-content ul.exectives_list li {
	float: left;
	width: 456px;
	max-width: 45.23809523809524%;
	margin-top: 72px;
	margin-right: 9.523809523809524%;
}
#post-content ul.exectives_list li:nth-child(2n) {
	margin-right: 0;
}
#post-content ul.exectives_list li:nth-child(-n+2) {
	margin-top: 0;
}
#post-content ul.exectives_list li:before {
	display: block;
	content: none;
}
#main ul.exectives_list div.photo {
	background-color: #F5F7FD;
	text-align: center;
	border-radius: 8px;
}
#main ul.exectives_list div.photo img {
	width: 100%;
	height: 228px;
	border-radius: 8px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}
#main ul.exectives_list div.txt {
	margin-top: 20px;
}
#main ul.exectives_list div.txt div.name {
	font-size: 22px;
	font-weight: bold;
	line-height: 1.6;
}
#main ul.exectives_list div.txt div.position {
	font-size: 14px;
	line-height: 1.6;
	margin-top: 10px;
}
#main ul.exectives_list a {
	display: block;
	color: #3E3E3E;
	text-decoration: none;
	width: 100%;
}
#main ul.exectives_list a:after {
	content: '';
	display: block;
	clear: both;
}
#main ul.exectives_list a:hover {
	color: #ED6103;
}
#main ul.exectives_list div.popup {
	display: none;
}

#main table.career {
	float: right;
	margin: 0;
	width: 560px;
	max-width: 62.24489%;
	display: block;
	border-spacing: 0 10px;
}
#main table.career th,
#main table.career td {
	border-left: 0;
	border-bottom: 1px solid #ddd;
	padding: 0 0 16px 0;
	font-size: 15px;
}
#main table.career th {
	width: 84px;
}
#main table.career td {
	width: 480px;
}

@media screen and (min-width : 851px) {}
@media screen and (max-width : 850px) {
	#post-content ul.exectives_list + h2 {
		margin-top: 120px;
	}
	#post-content ul.exectives_list li {
		width: calc((100% - 20px) / 2);
		max-width: calc((100% - 20px) / 2);
		margin-top: 48px;
		margin-right: 20px;
	}
	#main ul.exectives_list div.photo {
		position: relative;
		border-radius: 6px;
	}
	#main ul.exectives_list div.photo img {
		height: 180px;
		border-radius: 6px;
	}
	#main ul.exectives_list div.txt {
		margin-top: 20px;
	}
	#main ul.exectives_list div.txt div.name {
		font-size: 16px;
	}
	#main ul.exectives_list div.txt div.position {
		font-size: 14px;
		margin-top: 4px;
	}
	#main table.career {
		width: 100%;
		max-width: 100%;
	}
	#main table.career th,
	#main table.career td {
		border: 0;
		width: 100%;
		font-size: 14px;
	}
	#main table.career th {
		padding-bottom: 4px;
	}
	#main table.career td {
		padding-bottom: 20px;
	}
}
@media screen and (max-width : 378px) {
	#main ul.exectives_list div.photo img {
		height: 112px;
	}
}

/* popup
------------------------------------------------------------------- */
#main ul.exectives_list div.popup {
	display: none;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 910px;
	height: 600px;
	max-width: 90%;
	max-height: 80%;
	background-color: #fff;
	z-index: 3000;
	border-radius: 10px;
}
#main ul.exectives_list div.popup.on {
	display: block;
	animation-duration: 0.2s;
	animation-timing-function: ease-out;
	animation-name: showpopup;
}
#main ul.exectives_list div.popup div.modalwrap {
	position: relative;
	height: 100%;
	padding-bottom: 80px;
}
#main ul.exectives_list div.popup div.modalinner {
	position: relative;
	overflow-y: auto;
	height: 100%;
	padding: 64px;
}
#main ul.exectives_list div.popup div.photo {
	float: left;
	/*max-width: 31.63265%;*/
	width: 248px;
	max-width: 248px;
	border-radius: 8px;
}
#main ul.exectives_list div.popup div.photo img {
	border-radius: 8px;
	width: 248px;
	height: 248px;
}
#main ul.exectives_list div.popup div.txt {
	float: right;
	width: 560px;
	max-width: 62.24489%;
	margin: 0 0 48px 0px;
}
#main ul.exectives_list div.popup div.name {
	font-size: 24px;
}
#main ul.exectives_list div.popup div.position {
	font-size: 18px;
}

#main ul.exectives_list div.popup div.modalinner::-webkit-scrollbar {
	width: 10px;
}
#main ul.exectives_list div.popup div.modalinner::-webkit-scrollbar-track {
	border-radius: 10px;
	background: #fff;
}
#main ul.exectives_list div.popup div.modalinner::-webkit-scrollbar-thumb {
	border-radius: 10px;
	background:#C1C1C1;
}
#main ul.exectives_list div.popup div.btnwrap {
	display: block;
	text-align: center;
	width: 100%;
	position: absolute;
	bottom: 0;
	background-color: #FFF;
	border-radius: 10px;
}
#main ul.exectives_list div.popup a.btn.close {
	display: block;
	text-align: center;
	color: #ED6103;
	font-size: 22px;
	font-weight: bold;
	line-height: 80px;
	background-color: #F4F4F4;
	border-radius: 0 0 10px 10px;
}
#main ul.exectives_list div.popup a.btn.close:hover{
	opacity: 0.7;
}
#main ul.exectives_list div.popup a.btn.close span {
	background-image: url(../images/ico_close.svg);
	padding-left: 48px;
	background-repeat: no-repeat;
	background-size: 20px;
	background-position: 0 0.2em;
	letter-spacing: 0.08em;
}
@media screen and (max-width : 850px) {
	#main ul.exectives_list div.popup div.modalwrap {
		padding-bottom: 60px;
	}
	#main ul.exectives_list div.popup div.modalinner {
		padding: 32px;
	}
	#main ul.exectives_list div.popup div.txt {
		width: 100%;
		max-width: 100%;
		margin: 24px 0;
	}
	#main ul.exectives_list div.popup {
		max-width: calc(100% - 48px);
		max-height: 90%;
	}
	#main ul.exectives_list div.popup div.photo {
		text-align: center;
		float: none;
		margin: auto;
		width: 264px;
		max-width: 100%;
		padding-right: 0;
		border-radius: 6px;
	}
	#main ul.exectives_list div.popup div.photo img {
		width: 264px;
		height: auto;
	}
	#main ul.exectives_list div.popup div.name {
		font-size: 16px;
		margin-top: 0;
	}
	#main ul.exectives_list div.popup div.position {
		font-size: 15px;
	}
	#main ul.exectives_list div.popup div.btnwrap {
		height: 60px;
	}
	#main ul.exectives_list div.popup a.btn.close {
		font-size: 18px;
		line-height: 60px
	}
	#main ul.exectives_list div.popup a.btn.close span {
		background-size: 14px;
	}
}

/* modal
------------------------------------------------------------------- */
#modal {
	display: none; 
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	z-index: 1100;
}
html.modalon {
	overflow: hidden;
	height: 100%;
}
body.modalon {
	overflow-y:scroll; 
}
@media screen and (max-width : 850px) {
	body.modalon {
		overflow:hidden;
		height: 100%;
	}
}

/* group_list
------------------------------------------------------------------- */
#main ul.group_list {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
#main ul.group_list > li {
	width: 100%;
	padding: 0;
	margin: 0;
}
#main ul.group_list > li:before {
	display: none;
}
#main ul.group_list > li:after {
	content: '';
	display: block;
	clear: both;
}
#main ul.group_list:last-child li:last-child {
	margin-bottom: 0;
}
#main ul.group_list > li div.photo {
	float: left;
	width: 20%;
	text-align: center;
	padding-top: 0.5em;
}
#main ul.group_list > li div.photo img {
	vertical-align: middle;
}
#main ul.group_list > li div.photo + div.txt {
	float: right;
	width: 76%;
}
#main ul.group_list > li div.txt h3 a {
	text-decoration: none;
}
#main ul.group_list > li div.txt ul li {
	word-break: break-all;
}
#main ul.group_list > li div.txt > a {
	padding-right: 20px;
	font-weight: bold;
	background-image: url(../images/ico_more_detail.svg);
	background-repeat: no-repeat;
	background-position: right center;
}
#main ul.group_list > li div.txt > *:last-child {
	margin-bottom: 0;
}

@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main ul.group_list > li div.photo,
	#main ul.group_list > li div.txt,
	#main ul.group_list > li div.photo + div.txt {
		float: none;
		width: 100%;
	}
	#main ul.group_list > li div.photo {
		margin-bottom: 20px;
	}
	#main ul.group_list > li div.photo img {
		max-height: 120px!important;
		width: auto!important;
	}
	#main ul.group_list > li div.txt h3 {
		font-size: 18px;
	}
	#main ul.group_list > li div.txt > a {
		display: block;
		text-align: right;
	}
}
@media screen and (max-width : 378px) {}

/* grouplist (detail)
------------------------------------------------------------------- */
#main ul.grouplist {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
#main ul.grouplist > li {
	width: 100%;
	padding: 0 0 30px 0;
	margin-bottom: 30px;
	border-bottom: 1px solid #95989A;
}
#main ul.grouplist > li:before {
	display: none;
}
#main ul.grouplist > li:after {
	content: '';
	display: block;
	clear: both;
}
#main ul.grouplist > li h3 {
	display: none;
}
#main ul.grouplist:last-child li:last-child {
	margin-bottom: 0;
}
#main ul.grouplist > li div.map {
	float: left;
	width: 36%;
	text-align: center;
	border: 1px solid #b2b2b2;
	padding: 30px 0 0 0;
	min-height: 200px;
	position: relative;
	height: 0;
	overflow: hidden;
}
#main ul.grouplist > li div.map iframe,
#main ul.grouplist > li div.map object,
#main ul.grouplist > li div.map embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#main ul.grouplist > li div.map img {
	vertical-align: middle;
}
#main ul.grouplist > li div.map + div.innerlist {
	float: right;
	width: 60%;
}
#main ul.grouplist > li div.txt p.company {
	font-size: 20px;
	font-weight: bold;
	margin: 0.5em 0 0 0;
}
#main ul.grouplist > li div.txt p.company a {
	text-decoration: none;
}
#main ul.grouplist > li div.txt ul li {
	word-break: break-all;
}
#main ul.grouplist > li div.txt > *:last-child {
	margin-bottom: 0;
}

@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main ul.grouplist > li div.map,
	#main ul.grouplist > li div.map + div.innerlist {
		float: none;
		width: 100%;
	}
	#main ul.grouplist > li div.map {
		margin-bottom: 20px;
	}
	#main ul.grouplist > li div.map img {
		max-height: 80px!important;
		width: auto!important;
	}
}
@media screen and (max-width : 378px) {}

/* governance
------------------------------------------------------------------- */
body.governance #post-content p {
	margin-bottom: 0;
}
#main p.governancelink.btn.more a {
	width: auto;
	height: 58px;
	background-image: url(../images/ico_arrow_down.svg);
	background-repeat: no-repeat;
	background-position: 20px center;
	background-size: 12px;
	padding: 0 32px 0 48px;
	line-height: 56px;
	letter-spacing: 0;
	border-width: 1px;
}
#main p.governancelink.btn.more a {
	-webkit-transition: all 0.1s linear;
	-o-transition: all 0.1s linear;
	transition: all 0.1s linear;
}
#main p.governancelink.btn.more a:hover {
	background-image: url(../images/ico_arrow_down_w.svg);
}
#main div.govbox .txt {
	float: left;
	width: 48%;
}
#main div.govbox .photo {
	float: right;
	width: 48%;
}
#main div.govbox .photo h4 {
	margin-top: 0;
}
#main div.govbox.riskmng {
	margin-top: 60px;
	margin-bottom: 30px;
}
#main div.govbox.riskmng .txt {
	float: right;
	width: 45%;
	font-size: 13px;
}
#main div.govbox.riskmng .photo {
	float: left;
	width: 50%;
}
#main p.govnote {
	font-size: 13px;
}
#main p.govnote,
#main p.lisklist {
	margin-top: 30px;
}
body.governance #post-content p.govprivacy {
	margin-top: 22px;
	margin-bottom: 16px;
}
#main p.govprivacy a {
	font-size: 16px;
	color: #666666;
	font-weight: bold;
}
table.remuneration {
	font-size: 15px;
	margin-top: 0;
	border-spacing: 0;
}
table.remuneration tr th,
table.remuneration tr td {
	text-align: center;
	font-weight: bold;
	vertical-align: middle;
}
table.remuneration tr th {
	background-color: #DE6103;
	color: #FFF;
	line-height: 25px;
	padding: 0;
}
table.remuneration tr td {
	padding: 10px 0;
}
table.remuneration tr th.col-mid {
	border-left: solid 1px #FFF;
	border-right: solid 1px #FFF;
}
table.remuneration tr.row-mid td {
	border-top: solid 1px #DE6103;
	border-bottom: double 1px #DE6103;
	border-bottom-width: 4px;
}
@media screen and (max-width : 850px) {
	#main div.govbox .txt,
	#main div.govbox .photo,
	#main div.govbox.riskmng .txt,
	#main div.govbox.riskmng .photo {
		float: none;
		width: 100%;
	}
	#main div.govbox .photo h4 {
		margin-top: 50px;
	}
	#main div.govbox.riskmng .txt p {
		font-size: 13px;
	}
	table.remuneration tbody{
		display: table-row-group;
	}
	table.remuneration tr {
		width: 100%;
		display: table-row;
	}
	table.remuneration tr th,
	table.remuneration tr td {
		width: auto;
		display: table-cell;
	}
}

/* ir-groupplan (alt)
------------------------------------------------------------------- */
body.ir-groupplan #post-content div.cabinet.cont {
	position: relative;
}
body.ir-groupplan #main .drawerBtn {
	display: none!important;
}
body.ir-groupplan #main .matrix__contents {
	height: auto!important;
}

/* iri-concept_list (alt)
------------------------------------------------------------------- */
#post-content table.iri-concept_list {
	border-collapse: collapse;
	margin: 30px 0;
	border: 1px solid #ddd;
}
#post-content table.iri-concept_list tr.hd th {
	width: inherit;
	vertical-align: middle;
	text-align: center;
	border-right: 1px solid #ddd;
	background-color: #efefef;
}
#post-content table.iri-concept_list tr.hd th:last-child {
	border-right: 0;
}
#post-content table.iri-concept_list th {
	width: 50%;
	border-right: 1px solid #ddd;
	background-color: #fafafa;
}
#post-content table.iri-concept_list td {
	max-width: 30%;
	border-right: 1px solid #ddd;
}
#post-content table.iri-concept_list td:last-child {
	border-right: none;
}
#post-content table.iri-concept_list th,
#post-content table.iri-concept_list td {
	border-bottom: 1px solid #ddd;
	padding: 0.5em;
}
@media screen and (max-width : 850px) {
	#post-content table.iri-concept_list {
		display: table;
	}
	#post-content table.iri-concept_list tbody {
		display: table-row-group;
	}
	#post-content table.iri-concept_list tr {
		display: table-row;
	}
	#post-content table.iri-concept_list th,
	#post-content table.iri-concept_list td {
		display: table-cell;
		width: auto;
		font-size: 13px;
	}
}
@media screen and (min-width : 851px) {
	#post-content table.outline.outline_half.outline_spflat {
		border-top: 1px solid #ddd;
		border-collapse: collapse;
		margin: 30px 0;
	}
	#post-content table.outline.outline_half.outline_spflat th,
	#post-content table.outline.outline_half.outline_spflat td {
		border-bottom: 1px solid #ddd;
		padding: 0.5em;
		width: 50%;
	}
	#post-content table.outline.outline_half.outline_spflat tr.hd th {
		text-align: center;
	}
	#post-content table.outline.outline_half.outline_spflat td {
		text-align: center;
	}
}
@media screen and (max-width : 850px) {
	#post-content div.scroll_table_wrap {
		overflow-x: auto;
	}
}
@media screen and (max-width : 378px) {}

/* ir-financialhighlights
------------------------------------------------------------------- */
body.ir-financialhighlights #post-content div.globaltab {
	width: 100%;
	padding: 0px;
	overflow: hidden;
}
body.ir-financialhighlights #post-content div.globaltab ul {
	margin: 0px;
	padding: 0;
	font-size: 16px;
	font-weight: normal;
	list-style: none;
	border-left: 1px solid #ED6103;
}
body.ir-financialhighlights #post-content div.globaltab ul li {
	float: left;
	margin: 0px;
	padding: 0;
	border-right: 1px solid #ED6103;
}
body.ir-financialhighlights #post-content div.globaltab ul li a {
	color: #ED6103;
	padding: 15px 10px;
	text-decoration: none;
}
body.ir-financialhighlights #post-content div.globaltab ul li a.active,
body.ir-financialhighlights #post-content div.globaltab ul li a.active:hover {
	color: #FFF;
	background-color:  #ED6103;
}
body.ir-financialhighlights #post-content div.globaltab ul li a.active {
	color: #FFF;
}
div.content div.cont div.globaltab ul li:hover {
	background-color:  #E5EBF3;
}

/* main
------------------------------------------------------------------- */
@media screen and (max-width :1109px) {}
@media screen and (max-width : 850px) {
	#main>h2 {
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		padding: 10px 0;
		margin-bottom: 10px;
	}
}

/* policy
------------------------------------------------------------------- */
#main div.note {
	padding: 30px;
	border: 4px solid #ddd;
}
#main div.note > *:first-child {
	margin-top: 0;
}
#main div.note > *:last-child {
	margin-bottom: 0;
}

#main ul.policy {
	margin-bottom: 1em;
	list-style-type: none;
	margin: 0;
	padding: 0;
}
#main ul.policy li {
	margin-bottom: 1em;
}
#main ul.policy > li:before {
	display: none;
}
#main ul.policy li p {}
#main ol.policy {
	margin-bottom: 1em;
	list-style-type: decimal;
	-webkit-padding-start: 30px;
}
#main ol.numlist {
	padding: 0;
	list-style-type: decimal;
}
#main ol.numlist li {
	text-indent: 0em;
	margin-left: 3em;
	margin-bottom: 20px;
}
#main ul.alphalist {
	padding: 0;
	list-style-type: lower-alpha;
}
#main ul.alphalist li {
	text-indent: 0em;
	margin-left: 1.25em;
}
#main ul.alphalist li:before {
	display: none;
}
#main div.asklist {
	/*padding: 30px;*/
	/*margin: 30px 0;*/
	/*border: 4px solid #ddd;*/
}
#main div.asklist > *:first-child {
	margin-top: 0;
}
#main div.asklist > *:last-child {
	margin-bottom: 0;
}
#main ul.asklist {
	list-style-type: none;
}
#main ul.asklist li a.pclink {
	background-image: url(../images/G00_icon.jpg);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 65px 20px;
	padding-left: 75px;
	line-height: 20px;
	display: inline-block;
}
#main ul.asklist li a.pclink_after {
	padding-left: 0;
	padding-right: 75px;
	background-position: 100% 0;
}
#main ul.asklist li:last-child {
	margin-bottom: 0;
}
#main div.asklist > form {
	display: flex;
}
#main div.asklist input[type="text"] {
	-webkit-appearance: none;
	padding: 0 8px;
	border-radius: 8px 0 0 8px;
	border: 1px solid #bbb;
	box-shadow: none;
	height: 40px;
	line-height: 38px;
}
#main div.asklist input[type="text"]:focus {
	outline: none;
}
#main div.asklist input[type="submit"] {
	-webkit-appearance: none;
	padding: 0 10px;
	margin-left: -2px;
	background-color: #ED6103;
	color: #fff;
	font-size: 15px;
	box-shadow: none;
	border: 0;
	border-radius: 0 8px 8px 0;
	height: 40px;
	line-height: 40px;
}
#main div.asklist input[type="submit"][disabled] {
	-ms-filter: "alpha(opacity=100)";
	filter: alpha(opacity=100);
	opacity: 1;
	background-color: #bbb;
}

#main div.asklist h4 {
	margin-top: 60px;
	color: #666;
}
#main div.asklist h5 {
	font-weight: normal;
}
#main ul.normal,
#main ul.normal ul {
	list-style-type: none;
	padding: 0;
	margin-bottom: 1em;
}
#main ul.normal li {
	margin-left: 1.5em;
	text-indent: -0.9em;
	margin-bottom: 1em;
}
#main ul.normal > li:before {
	display: none;
}
#main ul.normal > li ul li {
	text-indent: 0;
}
#main ul.normal_kakko {
	list-style-type: none;
	padding: 0;
	margin: 0;
}
#main ul.normal_kakko li {
	margin-left: 1.8em;
	text-indent: -1.8em;
	margin-bottom: 1em;
}
#main ul.normal_kakko li:before {
	display: none;
}
#main ul.nomark {
	list-style-type: none;
	padding: 0;
	margin: 0;
}
#main ul.nomark>li {
	text-indent: -1.6em;
	margin-left: 2em;
}
#main ul.nomark li > ul.boxlist {
	margin-top: 20px;
}

@media screen and (min-width : 851px) {}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main div.asklist input[type="text"] {
		width: 220px;
	}
}
@media screen and (max-width : 378px) {}

/* policy - medialist
------------------------------------------------------------------- */
#main ul.medialist {
	border: 4px solid #ddd;
	list-style-type: none;
	margin: 0;
	padding: 20px 40px;
}
#main ul.medialist li {
	margin-bottom: 1em;
}
#main ul.medialist li:last-child {
	margin-bottom: 0;
}

@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main ul.medialist {
		padding: 20px 35px;
	}
}
@media screen and (max-width : 378px) {}


/* search
------------------------------------------------------------------- */
#main ul.search_result {
	font-size: 15px;
	font-weight: bold;
	line-height: 160%;
	margin-bottom: 2em;
	list-style: none;
}
#main ul.search_result li {
	margin-left: 0;
	margin-bottom: 40px;
}
#main ul.search_result li h3 {
	margin-bottom: 0;
}
#main ul.search_result li h3 a {
	text-decoration: none;
	color: #ED6103;
}
#main ul.search_result li h3 a br {
	display: none;
}
#main ul.search_result li h3 a:hover {
	text-decoration: underline;
}
#main ul.search_result li p {
	margin: 3px;
}
#main ul.search_result li p.url a {
	text-decoration: none;
	font-weight: normal;
}
#main ul.search_result li p:last-child {
	font-weight: normal;
	font-size: 14px;
	line-height: 1.6;
}
#main ul.search_result li p br {
	display: none;
}
#main ul.search_result li p img.icon {
	margin-bottom: 0;
}
#main ul.search_result li p img.icon_pdf {
	width: 20px;
	margin: 0 7px -7px 5px;
}
#main ul.search_result li p span.filesize {
	font-weight: normal;
}
#main ul.search_result li.not_result {
	border: 4px solid #ddd;
	margin-top: 40px;
	padding: 20px;
	font-weight: normal;
}

/* content - cont - extention
------------------------------------------------------------------------ */
#main div.cont_lead {}
#main div.cont table.keyword_desc {
	width: initial;
}
#main div.cont table.keyword_desc tr th {
	font-size: 12px;
	vertical-align: middle;
	padding: 5px 10px;
}
#main div.cont table.keyword_desc tr td {
	font-size: 30px;
	vertical-align: middle;
	padding: 5px 10px;
	line-height: 1.25;
}

#main div.cont table.keyword_desc_slim {
	width: initial;
}
#main div.cont table.keyword_desc_slim tr th {
	font-weight: bold;
	padding: 3px 10px;
}
#main div.cont table.keyword_desc_slim tr td {
	font-weight: bold;
	padding: 3px 10px;
}
@media screen and (max-width :1109px) {}
@media screen and (max-width : 850px) {
	#main div.cont table.keyword_desc {
		border: 4px solid #ddd;
		display: block;
		padding: 20px;
	}
	#main div.cont table.keyword_desc tr th {
		display: block;
		padding: 5px 10px;
	}
	#main div.cont table.keyword_desc tr td {
		display: block;
		padding: 5px 10px;
	}
}



/* A60 */
#post-content div.imgblock {
	margin-bottom: 40px;
	overflow: hidden;
}
#post-content p + div.imgblock {
	margin-top: 40px;
}
#post-content div.imgblock img {
	float: left;
	margin: 0 30px 0 0;
	width: 40%;
}
#post-content div.imgblock div.caption {
	float: left;
	width: 55%;
}
#post-content div.imgblock div.caption p:first-child {
	margin-top: 0;
}
@media screen and (max-width :1109px) {}
@media screen and (max-width : 850px) {
	#post-content div.imgblock img {
		float: none;
		display: block;
		width: 70%;
		margin: 0 auto 30px auto;
		text-align: center;
	}
	#post-content div.imgblock div.caption {
		width: 100%;
		float: none;
	}
}

/* project_list
------------------------------------------------------------------- */
#main ul.project_list {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
#main ul.project_list li {
	margin: 0 0 60px 0;
}
#main ul.project_list li:before {
	display: none;
}
#main ul.project_list li:after {
	content: ""; 
	display: block; 
	clear: both;
}
#main ul.project_list li div.txt {
	float: left;
	width: 65%;
}
#main ul.project_list li div.txt h2 {
	font-size: 22px;
	font-weight: bold;
	margin: 0 0 1em 0;
	line-height: 1.4;
}
#main ul.project_list li div.txt span.date {
	display: block;
	margin-bottom: 1em;
	font-size: 14px;
}
#main ul.project_list li div.txt p {
	font-size: 15px;
}
#main ul.project_list li div.txt > *:last-child {
	margin-bottom: 0;
}
#main ul.project_list li div.photo {
	float: right;
	width: 26%;
}
#main ul.project_list li div.photo a {
	display: block;
}
#main ul.project_list li div.photo img {
	margin: 0px;
	height: auto!important;
}

@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main ul.project_list li div.txt,
	#main ul.project_list li div.photo {
		float: none;
		width: 100%;
	}
	#main ul.project_list li div.txt + div.photo {
		margin-top: 20px;
	}
	#main ul.project_list li div.txt h2 {
		font-size: 16px;
	}
	#main ul.project_list li div.txt p {
		font-size: 13px;
	}
}
@media screen and (max-width : 378px) {}

/* interivew - detail
------------------------------------------------------------------- */
#main div.articletitle {
	margin-bottom: 0px;
}
#main div.articletitle p.vol {
	font-size: 18px;
	font-weight: bold;
	line-height: 120%;
	color: #999;
	margin-bottom: 0.5em;
	border-bottom: 1px solid #999;
	position: relative;
	padding-bottom: 10px;
	font-family: Montserrat, sans-serif;
}
#main div.articletitle p.vol span {
	font-size: 14px;
	font-weight: normal;
	position: absolute;
	right: 0;
}
#main div.articletitle p.title {
	font-size: 26px;
	font-weight: bold;
	line-height: 1.6;
	margin-bottom: 20px;
}
#main div.articleinfo {
	margin-bottom: 40px;
}
#main div.articleinfo p {
	margin-bottom: 20px;
}
#main div.articleinfo ul.anchor li {
	list-style: none;
	font-size: 14px;
	line-height: 140%;
	margin: 0 0 10px 0;
}

/* interview - detail
------------------------------------------------------------------- */
#main ul.profile_list {
	font-size: 12px;
	list-style-type: none;
	padding: 0;
	margin: 0;
}
#main ul.profile_list li {
	margin-left: 0;
	margin-bottom: 30px;
	font-size: 13px;
	list-style-type: none;
	width: 100%;
}
#main ul.profile_list li:after {
	content: '';
	display: block;
	clear: both;
}
#main ul.profile_list li:before {
	border: 0;
}
#main ul.profile_list li div.photo {
	float: left;
	width: 16%;
}
#main ul.profile_list li div.photo a {
	display: block;
}
#main ul.profile_list li div.photo a img {
	margin-bottom: 0;
}
#main ul.profile_list li div.innerlist {
	float: right;
	width: 80%;
	margin: 0px;
}
#main ul.profile_list li div.innerlist h3,
#main ul.profile_list li div.innerlist h4 {
	font-size: 16px;
	font-weight: bold;
	margin: 0 0 1em 0;
	padding: 0;
	border-left: 0;
}
#main ul.profile_list li div.innerlist h3 span,
#main ul.profile_list li div.innerlist h4 span {
	font-size: 12px;
	color: #666;
	padding-left: 2em;
}
#main ul.profile_list li div.innerlist p.caption {
	font-size: 12px;
	font-weight: normal;
	line-height: 140%;
	margin-bottom: 0;
	font-weight: normal;
	color: #666;
}
@media screen and (max-width :1109px) {}
@media screen and (max-width : 850px) {
	#main ul.profile_list li div.photo {
		width: 30%;
	}
	#main ul.profile_list li div.innerlist {
		width: 66%
	}
	#main ul.profile_list li div.innerlist h3 span {
		display: block;
		margin-top: 5px;
		padding-left: 0;
	}
}

/* interview - detail
------------------------------------------------------------------- */
#main ul.interview_list {
	font-size: 12px;
	line-height: 12px;
	margin-top: 50px 0 0 0;
	padding: 0;
	list-style: none;
	list-style-type: none;
}
#main ul.interview_list li {
	margin: 0 0 10px 0;
	list-style: none;
	font-size: 13px;
	margin-bottom: 60px;
}
#main ul.interview_list li:before {
	display: none;
}
#main ul.interview_list li h3 {
	font-weight: normal;
	line-height: 160%;
	margin-bottom: 2em;
	padding: 10px;
	color: #ED6103;
	background-color: #fff7f2;
}
#main ul.interview_list li div.answer {
	margin-bottom: 30px;
	width: 100%;
}
#main ul.interview_list li div.answer:after {
	content: '';
	display: block;
	clear: both;
}
#main ul.interview_list li div.answer div.photo {
	float: left;
	width: 10%;
}
#main ul.interview_list li div.answer div.photo img {
	margin: 0;
	border-radius: 50%;
}
#main ul.interview_list li div.answer div.photo p.name {
	margin: 1em 0 0 0;
	font-size: 12px;
	font-weight: bold;
	text-align: center;
}
#main ul.interview_list li div.answer div.innerlist {
	float: right;
	width: 85%;
}
#main ul.interview_list li div.answer div.innerlist p {
	margin-bottom: 1em;
	font-weight: normal;
	font-size: 15px;
	line-height: 2;
	letter-spacing: .1em;
}
#main ul.interview_list li div.answer div.innerlist p strong {
	font-size: 105%;
	font-weight: bold;
}
@media screen and (max-width :1109px) {}
@media screen and (max-width : 850px) {
	#main ul.interview_list li div.answer div.photo {
		width: 18%;
	}
	#main ul.interview_list li div.answer div.innerlist {
		width: 79%;
	}
	#main ul.interview_list li div.answer div.photo p.name {
		word-break: break-all;
	}
}

/* interview - detail
------------------------------------------------------------------- */
#main ul.related_links {
	list-style: none;
}
#main ul.related_links li {
	margin-bottom: 10px;
}
#main ul.related_links li a {
	font-weight: bold;
}

/* B00
------------------------------------------------------------------- */
#main ul.office {
	list-style-type: none;
	margin: 0;
	padding: 0;
	width: 100%;
}
#main ul.office:after {
	content: '';
	display: block;
	clear: both;
}
#main ul.office li {
	width: 100%;
}
#main ul.office li + li {
	margin-top: 56px;
	padding-top: 56px;
	border-top: 1px solid #ccc;
}
#main ul.office li:before {
	display: none;
}
#main ul.office li:after {
	content: '';
	display: block;
	clear: both;
}
#main ul.office li div.data {
	float: left;
	width: 47%;
}
#main ul.office li div.data > *:first-child {
	margin-top: 0;
}
#main ul.office li div.data > *:last-child {
	margin-bottom: 0;
}
#main ul.office li div.data h2 {
	position: relative;
	font-size: 30px;
	padding: 0 0 16px 0;
	margin-bottom: 24px;
	border-left: 0;
	line-height: 1;
	color: #1F1F1F;
	border-bottom: 3px solid #ED6103;
}
#main ul.office li div.data h2 > span {
	position: static;
	top: initial;
	right: initial;
	line-height: 30px;
}
#main ul.office li div.data h2 span.en {
	font-size: 30px;
	font-weight: 900;
}
#main ul.office li div.data h2 span.ja {
	font-size: 20px;
	position: absolute;
	top: 0;
	right: 0;
}
#main ul.office li div.data p {
	font-size: 13px;
	line-height: 140%;
	margin: 0;
}
#main ul.office li div.map-canvas {
	float: right;
	width: 50%;
	height: 220px;
	overflow: hidden;
}
#main ul.office li div.map-canvas iframe {
	width: 100%;
	height: 100%;
	overflow: hidden;
}
#main ul.office li div.map-canvas iframe html,
#main ul.office li div.map-canvas iframe html body {
	overflow-x: hidden;
}

@media screen and (max-width :1109px) {}
@media screen and (max-width : 850px) {
	#main ul.office li + li {
		margin-top: 32px;
		padding-top: 32px;
	}
	#main ul.office li div.data {
		float: none;
		width: 100%;
		padding: 0 0 24px 0;
	}
	#main ul.office li div.data h2 {
		font-size: 24px;
		padding-bottom: 12px;
		margin-bottom: 16px;
	}
	#main ul.office li div.data h2 > span {
		line-height: 24px;
	}
	#main ul.office li div.data h2 span.en {
		font-size: 23px;
	}
	#main ul.office li div.data h2 span.ja {
		font-size: 14px;
	}
	#main ul.office li div.map-canvas {
		float: none;
		width: 100%;
		height: 300px;
		padding: 10px;
	}
	#main ul.office li div.map-canvas iframe {
		width: 100%;
	}
}

/* history_lead
------------------------------------------------------------------- */
#main div.history_lead {
	padding-bottom: 62px;
	margin-bottom: 62px;
	border-bottom: 1px solid #D2D2D2;
}
#main div.history_lead div.txt > *:first-child { margin-top: 0; }
#main div.history_lead div.txt > *:last-child { margin-bottom: 0; }

#main div.history_lead div.txt {
	position: relative;
}
#main div.history_lead div.txt p {
	margin-top: 32px;
	margin-bottom: 0;
}
#main div.history_lead div.txt.off p {
	height: 4em;
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}
#main div.history_lead div.txt a.btn.readmore {
	display: none;
}
#main div.history_lead div.txt.off a.btn.readmore {
	width: 100%;
	height: 80px;
	line-height: 80px;
	display: block;
	background-color: #fff;
}

body.msie #main div.history_lead div.txt.off p {
	
}

@media screen and (min-width : 851px) {
	#main div.history_lead {
		width: 1008px;
		max-width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
	#main div.history_lead:after {
		content: '';
		display: block;
		clear: both;
	}
	#main div.history_lead div.photo {
		float: left;
		width: 31.74603%;
	}
	#main div.history_lead div.txt {
		float: right;
		width: 61.90476%;
	}
	#main div.history_lead div.txt h2 {
		margin-bottom: 32px;
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main div.history_lead {
		padding-bottom: 62px;
		margin-bottom: 32px;
	}
	#main div.history_lead div.txt {
		margin-top: 32px;
	}
	#main div.history_lead div.txt h2 {
		font-size: 18px;
	}
	#main div.history_lead div.txt p {
		margin-top: 32px;
	}
	#main div.history_lead div.txt.off p {
		height: 6em;
		-webkit-line-clamp: 3;
	}
	#main div.history_lead div.txt.off a.btn.readmore {
		height: 64px;
		line-height: 64px;
	}
}
@media screen and (max-width : 378px) {}

/* history
------------------------------------------------------------------- */
#post-content ul.history {
	width: 1008px;
	max-width: 100%;
	list-style-type: none;
	margin: 100px auto 0 auto;
	padding: 0;
}
#post-content ul.history li {
	position: relative;
	width: calc(100% - 48px);
	margin: 60px 0 0 48px;
	padding: 20px 0 20px 124px;
	border-left: 1px solid #ED6103;
}
#post-content ul.history li > *:last-child { margin-bottom: 0; }
#post-content ul.history li + li {
	margin-top: 60px;
}
#post-content ul.history li:before {
	display: none!important;
}
#post-content ul.history li h2,
#post-content ul.history li h3 {
	border-left: 0;
	padding: 0;
	margin: 0;
	width: 75px;
	color: #ED6103;
}
#post-content ul.history li h2 {
	position: absolute;
	top: -40px;
	left: -48px;
	height: 44px;
	font-size: 24px;
	font-weight: 900;
	padding: 0;
}
#post-content ul.history li h3 {
	position: absolute;
	left: 24px;
	padding: 0;
	width: 80px;
	text-align: left;
}
#post-content ul.history li h3 + p {
	position: relative;
}
#post-content ul.history li p {
	position: relative;
}
#post-content ul.history li p:before {
	content: '';
	position: absolute;
	top: 12px;
	left: -24px;
	width: 8px;
	height: 1px;
	background-color: #4C4C4C;
}

body.en #post-content ul.history li p:before {
	top: 14px;
}

@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#post-content ul.history {}
	#post-content ul.history li {
		width: calc(100% - 8px);
		margin-top: 56px;
		padding: 20px 0 20px 80px;
		margin-left: 8px;
	}
	#post-content ul.history li p:before {
		left: -20px;
	}
	#post-content ul.history li h2 {
		top: -44px;
		left: -8px;
		font-size: 18px;
		line-height: 30px;
		height: 30px;
	}
	#post-content ul.history li h3 {
		left: 16px;
		width: 40px;
		font-size: 18px;
	}
	#post-content ul.history li p {
		font-size: 14px;
		line-height: 24px;
		padding-top: 2px;
	}
	body.en #post-content ul.history li {
		padding-left: 90px;
	}
	body.en #post-content ul.history li p:before {
		top: 14px;
	}
}
@media screen and (max-width : 378px) {}


/* --- Start NextCoLtd_Extension------IR_list----------------------- */

.tableinc{
	width:100%;
	height:auto;
	overflow:auto;
}

.tableinc__irtable {
	font-size:14px;
	min-width:700px;
}

.tableinc__irtable th{
	border: 1px dotted #333;
	font-weight:bold;
	vertical-align:middle;
	text-align:center !important;
}

.tableinc__irtable .r1{
	text-align:center;
	background-color:#ccc;
}

.tableinc__irtable td{
	border-bottom: 1px dotted #666;
}

.tableinc__irtable .c1,
.tableinc__irtable .c2,
.tableinc__irtable .c3{
	background-color:#0a50a1;
	color:#FFF;
}

.tableinc__irtable .c1{
	padding:5 5 5 10px;
	margin:10px;
	width:3%;
}
.tableinc__irtable .c2{
/*  width:3%;*/
}
.tableinc__irtable .c3{
/*  width:26%;*/
}
.tableinc__irtable td.c4{
	text-align:right;
	width:19%;
}
.tableinc__irtable td.c5{
	text-align:right;
	width:19%;
}
.tableinc__irtable td.c6{
	text-align:right;
	width:15%;
}
.tableinc__irtable td.c7{
	text-align:right;
	width:15%;
}
/* --- End  NextCoLtd_Extension-------IR_list----------------------- */


/* --- Start NextCoLtd_Extension------generallist----------------------- */

#main div.cabinet table.generallist {
	border-bottom: 1px dotted #CCC;
}
#main div.cabinet table.generallist tr {
	border-bottom: 1px dotted #CCC;
}
#main div.cabinet table.generallist tr th {
	width: 19%;
	font-size: 12px;
	font-weight: bold;
	min-width: 130px;
	padding: 5px 30px 10px 10px;
	vertical-align: top;
	text-align: left;
}
#main div.cabinet table.generallist tr td {
	width: 27%;
	padding: 5px 10px 10px 0;
	font-size: 12px;
	vertical-align: top;
	text-align: right;
}
#main div.cabinet table.generallist tr.hd th {
	width: initial;
}
#main div.cabinet table.generallist tr.hd th:nth-child(2),
#main div.cabinet table.generallist tr.hd th:nth-child(3) {
	text-align: right;
	padding-left: 10px;
	padding-right: 10px;
}

#main div.cabinet table.generallist tr.hd th:nth-child(4) {
	text-align: right;
	padding-left: 10px;
	padding-right: 15px;
}

#main div.cabinet table.generallist tr.sum th,
#main div.cabinet table.generallist tr.sum td {
	background-color: #f5f5f5;
	font-weight: bold;
}
#main div.cabinet table.generallist tr.sum th {
	padding-left: 10px;
}
@media screen and (max-width :1109px) {}
@media screen and (max-width : 850px) {
	#main div.cabinet table.generallist tr th,
	#main div.cabinet table.generallist tr td {
		display: block;
		width: 100%;
			padding: 0 10px 0 15px;
		font-size: 0.8em;
	}
	#main div.cabinet table.generallist tr th br,
	#main div.cabinet table.generallist tr td br {
		display: none;
	}
	#main div.cabinet table.generallist tr td {
		padding-top: 0;
	}
	#main div.cabinet table.generallist tr.hd th {
		padding-top: 0;
		font-size: 0.8em;
	}
	#main div.cabinet table.generallist tr.hd th:nth-of-type(2) {
		padding-bottom: 0;
	}
	#main div.cabinet table.generallist tr th {
		padding-bottom: 0;
	}
	#main div.cabinet table.generallist tr td:nth-of-type(1),
	#main div.cabinet table.generallist tr td:nth-of-type(2),
	#main div.cabinet table.generallist tr td:nth-of-type(3) {
		padding-bottom: 3px;
	}
	#main div.cabinet table.generallist tr.sum td {
		padding-right: 10px;
	}
}
/* ---End  NextCoLtd_Extension------generallist----------------------- */

/* B110 */
#main ul.medialist_corp {
	margin-bottom: 40px;
	list-style-type: none;
	margin: 0;
	padding: 0;
}
#main ul.medialist_corp li {
	margin-left: 15px;
	margin-bottom: 30px;
	width: 100%;
}
#main ul.medialist_corp li:after {
	content: '';
	display: block;
	clear: both;
}
#main ul.medialist_corp li:last-child {
	margin-bottom: 0;
}
#main ul.medialist_corp li div.photo {
	width: 15%;
	float: left;
}
#main ul.medialist_corp li div.photo a {
	display: block;
}
#main ul.medialist_corp li div.txt {
	width: 80%;
}
#main ul.medialist_corp li div.txt_only {
	width: 100%;
	float: none;
}
#main ul.medialist_corp li div.txt h4 {
	margin: 0 0 5px 0;
	color: #666;
}
#main ul.medialist_corp li div.txt a {
	padding-left: 30px;
	line-height: 20px;
	color: #ED6103;
	font-weight: bold;
	display: inline-block;
	word-break: break-all;
}
#main ul.medialist_corp li div.txt a:hover {
	color: #efb690;
}
#main ul.medialist_corp li div.txt_only a {
	padding-left: 0;
}

/* general */
@media screen and (max-width :1109px) {}
@media screen and (max-width : 850px) {
	#main ul.medialist_corp li div.photo {
		width: 30%;
	}
	#main ul.medialist_corp li div.txt {
		width: 66%;
	}
	#main ul.medialist_corp li div.txt_only {
		width: 100%;
	}
}


/* D30_Mid-Term Vision */
#post-content .ir-groupplan h3 span,
#post-content .ir-groupplan h4 span {
	margin-left: 1.0em;
	font-size: 0.8em;
	font-weight: normal;
}
#post-content .ir-groupplan dl {
	padding-left: 1em;
	margin-bottom: 1em;
}
#post-content .ir-groupplan dl dt {
	padding: 5px
}
#post-content .ir-groupplan dl dd {
	margin-top: 0;
}
#post-content .ir-groupplan ul {
	list-style: disc;
	margin: 0 0 10px 0;
}
#post-content .ir-groupplan ul li {
	margin: 0 0 5px 1.5em;
}
#post-content.matrix{
	display:block;
	position:relative;
}
#post-content.matrix:hover{
	display:block;
	color:rgba(94,94,94,1.00);
	cursor: pointer;
}
#post-content.matrix__contents{
	transform-origin: 0% 0%;
	height:auto;
	transition-property:all height;
	transition-duration: 0.2s;
	opacity:1;
	overflow:hidden;
}
#post-content .drawerBtnWrap{
	position: absolute;
	top:2px;
	right:10px;
	z-index:1000;
	}
#post-content .drawerBtn {
	display: block;
	width: 30px;
	height: 30px;
	position: relative;
	margin: 0 0 0 auto;
}
#post-content .drawerBtn__stripe {
	position: absolute;
	width: 80%;
	height: 3px;
	background-color: rgba(196,196,196,1.00);
	left: 10%;
	transition-duration: 0.2s;
	transition-property: transform top opacity;
}
#post-content .drawerBtn__stripe--1 {
	top: 13px;
	left:13px;
	transform: rotate(-30deg);
}
#post-content .drawerBtn__stripe--2 {
	top: 13px;
	transform: rotate(30deg);
	left:-6px;
}

#post-content .show>.drawerBtn__stripe--1 {
	top: 13px;
	transform:rotate(30deg);
	left: 13px;
}
#post-content .show>.drawerBtn__stripe--2 {
	top: 13px;
	left: -6px;
	transform:rotate(-30deg);
}

/* boxlist
------------------------------------------------------------------- */
#main ul.boxlist {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
#main ul.boxlist li {
	padding: 0;
	margin-bottom: 65px;
	width: 100%;
}
#main ul.boxlist li:before {
	display: none;
}
#main ul.boxlist li:after {
	content: '';
	display: block;
	clear: both;
}
#main ul.boxlist li:last-child {
	margin-bottom: 0;
}
#main ul.boxlist li div.photo {
	float: left;
	width: 12%;
	text-align: center;
}
#main ul.boxlist li div.photo img {
	vertical-align: middle;
}
#main ul.boxlist li div.photo .img {
	width: 100%;
}
#main ul.boxlist li div.txt {
	float: left;
	width: 85%;
	margin-left: 3%;
}
#main ul.boxlist li div.txt span.date {
	display: block;
	margin-bottom: 1.5em;
}
#main ul.boxlist li div.txt h3,
#main ul.boxlist li div.txt h4 {
	margin: 0 0 1em 0;
	font-size: 20px;
	line-height: 1.5;
	padding: 0;
	border-left: 0;
}
#main ul.boxlist li div.txt a {
	display: block;
}
#main ul.boxlist li div.txt a.pdf {
	padding: 3px 0 0 3em;
	margin: 0 0 5px 0;
	background-image: url(../images/icon_pdf.png);
	background-repeat: no-repeat;
	background-size: 20px;
	background-position: 0.2em 0;
}
#main ul.boxlist li div.txt p {
	font-size: 16px;
}
#main ul.boxlist li div.txt span.small {
	font-size: 0.8em;
}
#main ul.boxlist li div.txt > *:fitst-child {
	margin-top: 0;
}
#main ul.boxlist li div.txt > *:last-child {
	margin-bottom: 0;
}

@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main ul.boxlist li div.photo,
	#main ul.boxlist li div.txt {
		float: none;
		width: 100%;
	}
	#main ul.boxlist li div.photo {
		margin-bottom: 20px;
	}
	#main ul.boxlist li div.txt p.lead {
		font-size: 16px;
	}

	#main ul.boxlist.col2-any li {
		margin-bottom: 30px;
	}
	#main ul.boxlist.col2-any li div.photo {
		float: left;
		width: 30%;
	}
	#main ul.boxlist.col2-any li div.txt {
		float: right;
		width: 66%;
	}
	#main ul.boxlist.col2-any li div.txt h3,
	#main ul.boxlist.col2-any li div.txt h4 {
		font-size: 15px;
	}
	#main ul.boxlist.col2-any li div.txt a.pdf {
		padding: 3px 0 0 2em;
		background-size: 15px;
	}
	#main ul.boxlist.col2-any li div.txt p {
		font-size: 13px;
	}
}
@media screen and (max-width : 378px) {}

/* tab
------------------------------------------------------------------- */
body.ird-result #post-content > .inner,
body.ird-fs #post-content > .inner,
body.ird-meeting #post-content > .inner {
	width: 1180px;
}
#post-content div.tab_lists {
	display: none;
}
#post-content ul.tab {
	margin: 30px 0 14px 0;
	padding: 0;
	font-weight: normal;
	list-style: none;
	width: 100%;
}
#post-content ul.tab:after {
	content: '';
	display: block;
	clear: both;
}
#post-content ul.tab li {
	float: left;
	margin: 0;
	/*margin: 0 0 0 -1px;*/
	position: relative;
}
#post-content ul.tab li:before,
#post-content ul.tab li:after {
	content: '';
	position: absolute;
	top: 0;
	width: 1px;
	height: 100%;
	background-color: #ED6103;
}
#post-content ul.tab li:before {
	left: 0;
}
#post-content ul.tab li:after {
	right: -1px;
}
#post-content ul.tab li + li {
	margin: 0;
}
#post-content ul.tab li a {
	display: block;
	color: #ED6103;
	padding: 0 10px;
	font-size: 14px;
	line-height: 3.5em;
	text-decoration: none;
	text-align: center;
	white-space: nowrap;
}
#post-content ul.tab li.active,
#post-content ul.tab li.active:hover {
	color: #FFF;
	background-color: #ED6103;
}
#post-content ul.tab li.active a {
	color: #FFF;
}

@media screen and (min-width : 851px) {
	#post-content ul.tab li,
	#post-content ul.tab li + li {
		width: 108px;
		margin-bottom: 16px;
	}
	#post-content ul.tab li:hover,
	#post-content ul.tab li:hover a {
		color: #ED6103;
		background-color:  #FFF7F2;
	}
	#post-content ul.tab li.active:hover,
	#post-content ul.tab li.active a:hover {
		color: #FFF;
		background-color: #ED6103;
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#post-content ul.tab li,
	#post-content ul.tab li + li {
		min-width: 80px;
		margin-bottom: 9px;
	}
}
@media screen and (max-width : 378px) {
	#post-content ul.tab li a {
		padding: 0 7px;
		font-size: 13px;
	}
}

/* list
------------------------------------------------------------------- */
#main ul.list {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
#main ul.list > li {
	display: table;
	margin-bottom: 20px;
}
#main ul.list > li:before {
	display: none;
}
#main ul.list > li > * {
	display: table-cell;
}
#main ul.list > li > span.date {
	width: 10em;
	font-size: 14px;
	color: #808080;
}

#main ul.list > li > span.ico {
	width: 6em;
	padding: 0 10px;
}
#main ul.list > li > span.ico > span {
	display: block;
	background-color: #ddd;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	line-height: 2;
	text-align: center;
	white-space: nowrap;
}

#main ul.list > li > span.ico.newspaper > span { background-color: #666; }
#main ul.list > li > span.ico.magazine > span { background-color: #00398A; }
#main ul.list > li > span.ico.book > span { background-color: #0080FF; }
#main ul.list > li > span.ico.web > span { background-color: #A09432; }
#main ul.list > li > span.ico.radio > span { background-color: #3EA135; }
#main ul.list > li > span.ico.tv > span { background-color: #B300B3; }
#main ul.list > li > span.ico.others > span { background-color: #969084; }
#main ul.list > li > span.media {
	width: 14em;
	padding: 0 10px;
	font-size: 14px;
	font-weight: bold;
}
/* future remove */
#main ul.list > li > span.title {
	line-height: 20px;
	font-weight: bold;
	font-size: 14px;
}
#main ul.list > li > span.date + span.title {
	padding-left: 2em;
}
#main ul.list > li > span.title span.lead {
	color: #666;
	font-weight: normal;
	margin-top: 0.3em;
	display: block;
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main ul.list > li > * {
		display: block;
		width: 100%;
	}
	#main ul.list li span.date,
	#main ul.list li span.ico,
	#main ul.list li span.media {
		display: inline-block;
	}
	#main ul.list li span.ico {
		padding-right: 20px;
	}
	#main ul.list li span.media {
		width: auto;
		padding: 0;
		border-bottom: 1px solid;
	}
	#main ul.list li span.media br {
		display: none;
	}
	#main ul.list li span.ico + span {
		margin-top: 5px;
	}
	#main ul.list li span.title {
		margin-top: 8px;
	}
}

/* ir_list
------------------------------------------------------------------- */
#main ul.ir_list {
	font-size: 12px;
	list-style: none;
	overflow: hidden;
	padding-left: 20px;
	margin: 0;
	padding: 0;
}
#main ul.ir_list_in_section {}
body.ird-meeting #main ul.ir_list_in_section {
	padding-top: 6px;
}
#main ul.ir_list li {
	margin: 0;
	padding: 10px 0;
	overflow: hidden;
	font-size: 14px;
}
#main ul.ir_list li.file {
	padding: 3px 0 0 3em;
	margin: 0 0 5px 0;
	background-repeat: no-repeat;
	background-size: 20px;
	background-position: 0.2em 0;
}


#main ul.ir_list li span {
	line-height: 20px;
}
#main ul.ir_list li span.date {
	float: left;
	width: 9em;
	margin-right: 10px;
	color: #808080;
}
#main ul.ir_list li span.quarter {
	float: left;
	width: 40px;
	display: inline-block!important;
}
#main ul.ir_list li span.quarter img {
	margin: 0 0 -3px 0!important;
}
#main ul.ir_list li span.title {
	float: left;
	font-weight: bold;
	margin-right: 10px;
}
#main ul.ir_list li span.title span.lead {
	font-weight: normal;
	color: #666;

}
#main ul.ir_list li span.media {
	float: left;
	display: inline-block;
	width: 12em;
	font-size: 12px;
	font-weight: bold;
	line-height: 120%;
	margin-left: 10px;
	margin-right: 10px;
}
#main ul.ir_list li span.caption {
	display: inline-block;
	font-weight: bold;
	font-size: 14px;
}
#main ul.ir_list li span.caption a {
	color: #ED6103;
	font-weight: bold;
}
#main ul.ir_list li span.caption a:hover {
	color: #efb690;
}

#main ul.ir_list li span.filesize {
	font-size: 12px;
	margin-left: 10px;
}

@media screen and (max-width : 850px) {
	#main ul.ir_list {
		padding-left: 0;
	}
	#main ul.ir_list li {
		width: initial;
	}
	#main ul.ir_list li span {
		float: none;
		display: inline;
	}
	#main ul.ir_list li.file {
		padding: 3px 0 0 40px;
		background-position: left top;
	}
	#main ul.ir_list li.file_video {
		background-position-y: 4px;
	}
	#main ul.ir_list li span.title {
		float: none;
		width: 100%;
		margin-top: 5px;
	}
	#main ul.ir_list li span.title,
	#main ul.ir_list li span.quarter,
	#main ul.ir_list li span.caption,
	#main ul.ir_list li span.pdf {
		display: inline;
	}
	#main ul.ir_list li span.date {
		display: block;
		float: none;
	}
	#main ul.ir_list li span.media {
		width: 60%;
	}
	#main ul.ir_list li span.media br {
		display: none;
	}
	#main ul.ir_list li span.title {
		display: block;
	}
	#main ul.ir_list5 li div.photo {
		width: 32%;
	}
	#main ul.ir_list5 li div.innerlist h3 {
		margin-top: 0;
	}
	#main ul.ir_list li span.filesize {
		font-size: 10px;
	}
}

/* D145
------------------------------------------------------------------- */
#main ul.ir_list_multifiles {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
#main ul.ir_list_multifiles li {
	margin-bottom: 40px;
	width: 100%;
	display: table;
}
#main ul.ir_list_multifiles li:before {
	display: none;
}
#main ul.ir_list_multifiles > li > * {
	display: table-cell;
	vertical-align: top;
}
#main ul.ir_list_multifiles li h4.date {
	margin: 0;
	font-size: 14px;
	font-weight: normal;
	line-height: 1.71;
	color: #808080;
	width: 9em;
	white-space: nowrap;
}
#main ul.ir_list_multifiles li span.ico {
	width: 56px;
	padding: 0;
}
#main ul.ir_list_multifiles li span.ico > span {
	display: block;
	background-color: #ddd;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	line-height: 2;
	text-align: center;
	white-space: nowrap;
}
#main ul.ir_list_multifiles li span.ico.quarter > span { background-color: #666; }
#main ul.ir_list_multifiles li span.ico.interim > span { background-color: #00368C; }
#main ul.ir_list_multifiles li span.ico.annual > span { background-color: #B40001; }

#main ul.ir_list_multifiles li ul.ir_list {
	padding-left: 16px;
	display: block;
	margin-top: -3px;
}
body.home #main ul.ir_list_multifiles li ul.ir_list {
	margin-top: 4px;
}
body.ir-data #main ul.ir_list_multifiles li ul.ir_list,
body.ird-indivisual #main ul.ir_list_multifiles li ul.ir_list {
	margin-top: 3px;
}
body.ird-result #main ul.ir_list_multifiles li ul.ir_list {
	margin-top: 3px;
}
body.home #main ul.ir_list_multifiles li ul.ir_list {
	padding-left: 0;
}
#main ul.ir_list_multifiles li ul.ir_list li.title {
	padding: 0;
	margin-bottom: 0.6em;
	font-size: 16px;
	font-weight: bold;
}
#main ul.ir_list_multifiles li ul.ir_list li.title > a {
	text-decoration: none;
	color: #151515;
}
@media screen and (min-width : 851px) {
	#main ul.ir_list_multifiles li ul.ir_list li.title > a:hover {
		color: #ED6103;
	}
}
#main ul.ir_list_multifiles li ul.ir_list li.title span {
	display: block;
}
#main ul.ir_list_multifiles li ul.ir_list li.title a > span {
	display: inline-block;
}
#main ul.ir_list_multifiles li ul.ir_list li.title a span.filesize {
	font-size: 0.8em;
	font-weight: normal;
	border-left: 1px solid;
	padding-left: 1em;
}
@media screen and (max-width :1109px) {}
@media screen and (max-width : 850px) {
	#main ul.ir_list_multifiles > li > * {
		display: block;
		width: 100%;
	}
	#main ul.ir_list_multifiles li h4.date,
	#main ul.ir_list_multifiles li span.ico {
		display: inline-block;
	}
	#main ul.ir_list_multifiles li ul.ir_list,
	#main ul.ir_list_multifiles li h3 {
		width: 100%;
		margin-bottom: 0;
	}
	#main ul.ir_list_multifiles li ul.ir_list {
		padding: 0;
	}
	#main ul.ir_list_multifiles li span.ico + ul.ir_list {
		margin-top: 5px;
	}
	#main ul.ir_list_multifiles li ul.ir_list li.title {
		margin-bottom: 1em;
	}
	#main ul.ir_list_multifiles li h3 {
		margin-bottom: 10px;
	}
	#main ul.ir_list_multifiles li h3 span {
		margin-left: 10px;
	}
	#main ul.ir_list_multifiles>li {
		margin-bottom: 40px;
	}
	#main ul.ir_list_multifiles li h4.date {
		margin-bottom: 0;
	}
	#main ul.ir_list_multifiles li ul.ir_list li {
		padding-bottom: 0;
	}
	#main ul.ir_list_multifiles li ul.ir_list li.title {
		line-height: 1.4;
	}
	#main ul.ir_list_multifiles li ul.ir_list li.title a span.filesize {
		display: block;
		padding-left: 0;
		border-left: 0;
		margin-left: 0;
		margin-top: 0.5em;
	}
	body.home #main ul.ir_list_multifiles li ul.ir_list {
		margin-top: 2px;
	}
}

/* D140 */
#main ul.ir_list_multifiles_1col li h3 {
	float: none;
	width: initial;
}
#main ul.ir_list_multifiles_1col li ul.ir_list {
	float: none;
	width: initial;
	padding-left: 20px;
}

/* home ir list */
#main div.line.ir .inner > *:last-child { margin-bottom: 0; }
#main div.ir_list_wrap > .col > *:first-child { margin-top: 0; }
#main div.ir_list_wrap > .col > *:last-child { margin-bottom: 0; }
#main div.ir_list_wrap > .col.latest {
	border: 1px solid #ED6103;
	border-radius: 5px;
}
#main div.ir_list_wrap > .col.latest div.annual {
	border-top: 1px solid #ED6103;
	margin-top: 20px;
	padding-top: 20px;
	display: flex;
}
#main div.ir_list_wrap > .col.latest div.annual div.photo {
	width: 67px;
}
#main div.ir_list_wrap > .col.latest div.annual div.txt a {
	text-decoration: none;
	color: #000;
	font-weight: bold;
	font-size: 16px;
}

#main div.ir_list_wrap h3 {
	color: #ED6103;
	font-size: 20px;
}
#main div.ir_list_wrap ul.ir_list_multifiles {
	display: inline-block;
	text-align: left;
}
#main div.ir_list_wrap ul.ir_list_multifiles > li {
	margin: 0;
	position: relative;
}
#main div.ir_list_wrap ul.ir_list_multifiles > li h4 {
	display: none;
}
#main div.ir_list_wrap ul.ir_list_multifiles li span.ico {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}
#main div.ir_list_wrap ul.ir_list_multifiles li ul.ir_list li.title {
	padding-left: 72px;
	margin-bottom: 1.5em;
}
body.home #main div.ir_list_wrap ul.ir_list_multifiles li ul.ir_list li.title {
	padding-left: 0;
}

@media screen and (min-width : 851px) {
	#main div.ir_list_wrap {
		display: flex;
		align-items: start;
	}
	#main div.ir_list_wrap > .col.latest {
		width: 47.10211%;
		padding: 30px;
	}
	#main div.ir_list_wrap > .col.list {
		width: 47.83808%;
		margin-left: auto;
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main div.ir_list_wrap > .col.latest {
		padding: 20px 24px;
	}
	#main div.ir_list_wrap > .col.list {
		margin-top: 24px;
	}
	#main div.ir_list_wrap h3 {
		font-size: 22px;
	}
	#main div.ir_list_wrap > .col.latest div.annual div.photo {
		margin-right: 14px;
	}
	#main div.ir_list_wrap > .col.latest div.annual div.txt a {
		font-size: 14px;
	}
}
@media screen and (max-width : 378px) {}

/* service - movielink
------------------------------------------------------------------- */
#post-title p.movielink {
	display: inline-block;
	top: 0;
	right: 50px;
	height: 50px;
	margin: 0;
}
#post-title p.movielink a {
	height: 50px;
	background-image: url(../images/ico_arrow_down.svg);
	background-repeat: no-repeat;
	background-position: 20px center;
	background-size: 12px;
	padding: 0 20px 0 40px;
	line-height: 50px;
	letter-spacing: 0;
	text-align: left;
}

@media screen and (min-width : 851px) {
	#post-title p.movielink a {
		-webkit-transition: all 0.1s linear;
		-o-transition: all 0.1s linear;
		transition: all 0.1s linear;
		width: 230px;
	}
	#post-title p.movielink a:hover {
		background-image: url(../images/ico_arrow_down_w.svg);
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 950px) {
	body.en #post-title p.movielink {
		position: static;
		top: initial;
		right: initial;
		margin: 25px auto 0 auto;
	}
}
@media screen and (max-width : 850px) {
	#post-title p.movielink {
		position: static;
		top: initial;
		right: initial;
		margin: 25px auto 0 auto;
	}
	#post-title p.movielink a {
		display: block;
		padding: 0 0 0 30px;
		background-position: 10px;
	}
}
@media screen and (max-width : 378px) {
	#post-title p.movielink a {
		font-size: 11px;
		padding-left: 26px;
		background-position: 8px;
	}
}

/* movie_page
------------------------------------------------------------------- */
#post-content div.movie_page {
	text-align: center;
}
#post-content div.movie_page > *:first-child { margin-top: 0; }
#post-content div.movie_page > *:last-child { margin-bottom: 0; }
#post-content div.movie_page h2 {
	border: 0;
	padding: 0;
	font-size: 2.67em;
}
#post-content div.movie_page h3 {
	border: 0;
	padding: 0;
	margin-bottom: 2.75em;
}
#post-content div.movie_page p {
	margin-bottom: 2em;
}
#post-content div.movie_page div.moviebox {
	width: 728px;
	max-width: 100%;
	margin: 0 auto 100px auto;
}
#post-content div.movie_page div.moviebox > *:first-child { margin-top: 0; }
#post-content div.movie_page div.moviebox > *:last-child { margin-bottom: 0; }
#post-content div.movie_page div.moviebox div.movie {
	position: relative;
}
#post-content div.movie_page div.moviebox div.movie img {}
#post-content div.movie_page div.moviebox div.movie a {
	display: block;
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url(../images/cm-promo/ico_play.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 100px;
	cursor: pointer;
}
#post-content div.movie_page div.moviebox div.btn {
	text-align: center;
	margin-top: 28px;
	margin-bottom: 0;
}
#post-content div.movie_page div.moviebox div.btn p {
	display: inline-block;
	width: 47%;
	margin: 0 -5px;
}
#post-content div.movie_page div.moviebox div.btn p + p {
	margin-left: 6%;
}
#post-content div.movie_page div.moviebox div.btn p a {
	display: block;
	font-size: 1.33em;
	padding: 0;
	line-height: 3;
	height: 3em;
}
#post-content div.movie_page div.moviebox div.btn p a span {
	display: inline-block;
	padding-left: 2em;
	background-image: url(../images/ico_play_nomark.svg);
	background-repeat: no-repeat;
	background-position: left 1.1em;
	background-size: 12px;
	vertical-align: top;
}

#colorbox,
#cboxWrapper,
#cboxContent,
#cboxLoadedContent,
#colorbox iframe {
	max-width: 100%!important;
	max-height: 600px!important;
}
#cboxContent {
	margin-top: 0!important;
}

@media screen and (min-width : 851px) {
	#post-content div.movie_page div.moviebox div.movie a:hover {
		background-color: rgba(255,255,255,0.2);
	}
	#post-content div.movie_page div.moviebox div.btn p a:hover span {
		background-image: url(../images/ico_play_nomark_w.svg);
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#post-content div.movie_page h2 {
		font-size: 20px;
	}
	#post-content div.movie_page div.moviebox {
		margin-bottom: 50px;
	}
	#post-content div.movie_page div.moviebox div.movie a {
		background-size: 50px;
	}
	#post-content div.movie_page div.moviebox div.btn p a {
		font-size: 1em;
	}
	#post-content div.movie_page div.moviebox div.btn p a span {
		padding-left: 1.5em;
		background-image: url(../images/ico_play_nomark_w.svg);
		background-size: 10px;
	}
	#post-content div.movie_page div.moviebox div.btn p.full,
	#post-content div.movie_page div.moviebox div.btn p.full a {
		width: 100%;
	}
	#colorbox,
	#cboxWrapper,
	#cboxContent,
	#cboxLoadedContent,
	#colorbox iframe {
		max-height: 400px!important;
	}
}
@media screen and (max-width : 378px) {
	#post-content div.movie_page h2 {
		font-size: 17px;
	}
	#post-content div.movie_page div.moviebox div.btn p a {
		font-size: 0.8em;
	}
	#post-content div.movie_page div.moviebox div.btn p a span {
		padding-left: 1.5em;
	}
	#colorbox,
	#cboxWrapper,
	#cboxContent,
	#cboxLoadedContent,
	#colorbox iframe {
		max-height: 300px!important;
	}
	#colorbox {
		margin-top: 30%!important;
	}
}

/* top_service_list
------------------------------------------------------------------- */
body.home #main div.line + div.line {
	margin-top: 90px;
}
#main div.line.service .inner {
	width: 100%;
	padding: 0;
}
#main div.line.service .inner .outbox > *:first-child { margin-top: 0; }
#main div.line.service .inner .outbox > *:last-child { margin-bottom: 0; }
#main div.line.service .focusRing__ring {
	font-size: 30px;
	display: none;
}
#main div.line.service .focusRing.inset > .focusRing__ring::before {
	top: 10px;
	right: 10px;
}
#main div.line.service .focusRing.inset > .focusRing__ring::after  {
	bottom: 10px;
	right: 10px
}
#main div.line.service .focusRing.inset > .focusRing__ring .focusRing__ring::before {
	top: 10px;
	left: 10px
}
#main div.line.service .focusRing.inset > .focusRing__ring .focusRing__ring::after {
	bottom: 10px;
	left: 10px
}
#main div.line.service .row {
	width: 100%;
	border-top: 1px solid #E3E3E3;
}
#main div.line.service .row + .row {
	border-top: 0;
}
#main div.line.service .row:after {
	content: '';
	display: block;
	clear: both;
}
#main div.line.service .col {
	float: left;
	width: 50%;
}
#main div.line.service .col .box {
	border-bottom: 1px solid #E3E3E3;
}
#main div.line.service a {
	display: block;
	text-decoration: none;
	position: relative;
	height: 184px;
	width: 100%;
}
#main div.line.service a:after {
	content: '';
	display: block;
	clear: both;
}
#main div.line.service a:hover .focusRing__ring {
	display: block;
}
#main div.line.service div.box div.photo {
	float: right;
	width: 40%;
	height: 184px;
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: cover;
}
#main div.line.service div.box div.photo img {
	-ms-filter: "alpha(opacity=0)";
	filter: alpha(opacity=0);
	opacity: 0;
	width: 100%!important;
	max-height: 100%;
}
#main div.line.service div.box div.txt {
	width: 60%;
	height: 184px;
	display: table;
	float: left;
}
#main div.line.service div.box div.txt .intxt {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	padding: 0 20px;
}
#main div.line.service div.box div.txt h2 {
	margin: 0 0 0.5em 0;
}
#main div.line.service div.box div.txt h2 img {
	max-height: 53px;
	max-width: 100%;
}
#main div.line.service div.box div.txt p {
	margin-bottom: 0;
	font-size: 14px;
	letter-spacing: 0;
}
#main div.line.service div.box div.txt > *:first-child { margin-top: 0; }
#main div.line.service div.box div.txt > *:last-child { margin-bottom: 0; }
#main div.line.service div.box.imgLeft div.photo {
	float: left;
}
#main div.line.service div.box.imgLeft div.txt {
	float: right;
}


@media screen and (max-width : 1109px) {}
@media screen and (min-width : 851px) {
	#main div.line.service .inner > h2 {
		width: 1187px;
		padding: 0 50px;
		max-width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
	#main div.line.service div.box.large a {
		height: 554px;
	}
	#main div.line.service div.box.large div.photo {
		width: 100%;
		height: 100%;
		float: none;
	}
	#main div.line.service div.box.large div.photo img {
		height: 554px!important;
	}
	#main div.line.service div.box.large div.txt {
		float: none;
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		color: #fff;
		padding: 40px 20px;
		height: auto;
	}
	#main div.line.service div.box.large div.txt h2 {
		display: table-cell;
		width: 44%;
		padding: 0 30px 0 0;
		vertical-align: middle;
	}
	#main div.line.service div.box.large div.txt h2 img {
		height: 53px;
	}
	body.msie #main div.line.service div.box.large div.txt h2 img {
		width: 230px;
		height: auto;
	}
	#main div.line.service div.box.large div.txt p {
		display: table-cell;
		vertical-align: middle;
		text-align: left;
	}
}
@media screen and (max-width : 1109px) {
	#main div.line.service div.box.large div.txt h2 {
		width: 50%;
	}
}
@media screen and (max-width : 850px) {
	body.home #main div.line + div.line {
		margin-top: 60px;
	}
	#main div.line.service h2 {
		padding: 0 24px;
	}
	#main div.line.service .focusRing__ring {
		font-size: 24px;
	}
	#main div.line.service .focusRing.inset > .focusRing__ring::before {
		top: 7px;
		right: 7px;
	}
	#main div.line.service .focusRing.inset > .focusRing__ring::after  {
		bottom: 7px;
		right: 7px
	}
	#main div.line.service .focusRing.inset > .focusRing__ring .focusRing__ring::before {
		top: 7px;
		left: 7px
	}
	#main div.line.service .focusRing.inset > .focusRing__ring .focusRing__ring::after {
		bottom: 7px;
		left: 7px
	}
	#main div.line.service .col {
		float: none;
		width: 100%;
	}
	#main div.line.service div.box div.photo {
		height: calc(100vw * 0.3);
	}
	#main div.line.service div.box a {
		height: auto;
	}
	#main div.line.service div.box div.txt {
		height: calc(100vw * 0.3);
	}
	#main div.line.service div.box div.txt p {
		font-size: 12px;
	}
	#main div.line.service div.box div.txt h2 {
		margin-top: 0;
	}
	#main div.line.service div.box div.txt h2 img {
		height: calc(100vw * 0.085)!important;
	}
	#main div.line.service div.box.large div.photo,
	#main div.line.service div.box.large div.txt {
		width: 100%;
		float: none;
		text-align: center;
	}
	#main div.line.service div.box.large div.photo {
		height: auto;
	}
	#main div.line.service div.box.large a,
	#main div.line.service div.box.large div.photo img {
		height: auto!important;
	}
	#main div.line.service div.box.large div.txt {
		text-align: center;
	}
	#main div.line.service div.box.large div.txt h2 {
		width: 100%;
	}
	#main div.line.service div.box.large div.txt h2 img.sp {
		height: calc(100vw * 0.1)!important;
		display: inline-block;
	}
	#main div.line.service .inner .outbox > p.btn.more {
		padding: 0 24px;
	}

	#main div.line.service div.box.sp_reverse div.photo {
		float: left;
	}
	#main div.line.service div.box.sp_reverse div.txt {
		float: right;
	}
	#main div.line.service div.box.sp_reverse.imgLeft div.photo {
		float: right;
	}
	#main div.line.service div.box.sp_reverse.imgLeft div.txt {
		float: left;
	}
}

/* statistics
------------------------------------------------------------------- */
#main div.statistics {
	width: calc(100% + 10px);
	margin-left: -5px;
}
#main div.statistics .row {
	display: table;
	width: 100%;
}
#main div.statistics .row + .row {}
#main div.statistics .row:after {
	content: '';
	display: block;
	clear: both;
}
#main div.statistics .col {
	display: table-cell;
	width: 100%;
	text-align: center;
	vertical-align: top;
	/*padding: 25px 20px;*/
	padding: 5px;
	position: relative;
}
#main div.statistics .col:before {
	content: "";
	position: absolute;
	top: 5px;
	left: 5px;
	width: calc(100% - 10px);
	height: calc(100% - 10px);
	background-color: #f5f6f8;
	z-index: -1;
}
#main div.statistics .col > *:first-child { margin-top: 0; }
#main div.statistics .col > *:last-child { margin-bottom: 0; }
#main div.statistics .col-2 {
	width: 50%;
}
#main div.statistics .col-3 {
	width: 33.33333%;
}
#main div.statistics .col * {
	z-index: 10;
}
#main div.statistics .col h3 {
	font-size: 16px;
}
body.en #main div.statistics .col h3 {
	letter-spacing: 0;
	line-height: 1.2;
	min-height: 2.4em;
}
#main div.statistics .col h3 span {
	font-size: 14px;
}
#main div.statistics .col h3 span.s {
	font-size: 12px;
}
#main div.statistics .col > img {
	/*padding: 0 40px;*/
}
#main div.statistics .col .viewbox {
	position: relative;
	display: inline-block;
}
#main div.statistics .col.person img.bg {}
#main div.statistics .col.person img.num {
	position: absolute;
	top: 0;
	left: 0;
}
#main div.statistics .col img.marker {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#main div.statistics .col img.action {}
#main div.statistics .col span.note {
	display: block;
	text-align: right;
	color: #3e3e3e;
	font-size: 12px;
	margin-top: 2em;
}

/* motion */
#main div.statistics .col img {
/*	-ms-filter: "alpha(opacity=0)";
	filter: alpha(opacity=0);
	opacity: 0;
	transform: translateY(40%);*/
}
#main div.statistics .col img.action {
	animation-duration: 0.2s;
	animation-timing-function: ease-out;
	animation-fill-mode: forwards;
	animation-name: statImgUp;
}
#main div.statistics .col img.leave {
	width: 80%;
}
@keyframes statImgUp {
	0% {
		-ms-filter: "alpha(opacity=0)";
		filter: alpha(opacity=0);
		opacity: 0;
		transform: translateY(40%);
	}
	100% {
		-ms-filter: "alpha(opacity=100)";
		filter: alpha(opacity=100);
		opacity: 1;
		transform: translateY(0);
	}
}

@media screen and (min-width : 851px) {}
@media screen and (max-width : 850px) {
	#main div.statistics .col {
		/*padding: 20px 25px;*/
		padding: 5px;
	}
	#main div.statistics .col > img {
		padding: 0;
	}
	#main div.statistics .col-2 {
		display: block;
		float: none;
		width: 100%;
	}
	#main div.statistics .row > .col-3 {
		float: none;
		clear: both;
		display: block;
		width: 100%;
	}
	#main div.statistics .row > .col-3 img {
		/*width: 60%;*/
	}
	#main div.statistics .row .col-3 img.leave {
		/*width: 50%;*/
	}
	#main div.statistics .row > .col-3 span.note {
		text-align: center;
	}
	#main div.statistics .col h3 {
		font-size: 13px;
	}
	#main div.statistics .col h3 span,
	#main div.statistics .col span.note {
		font-size: 10px;
	}
	#main div.statistics .col h3 span.s {
		font-size: 11px;
	}
	#main div.statistics .col span.note {
		margin-top: 0.5em;
	}
}

/* top_section -> remove
------------------------------------------------------------------- */
#main div.top_section {
	position: relative;
	margin: 0;
	color: #ED6103;
	display: table;
	width: 100%;
}
#main #topMovie + div.top_section {
	margin-top: 50px;
}
#main div.top_section .inner {
	max-width: 100%;
	padding: 0;
	width: 1080px;
}
#main div.top_section .inner .focus {
	width: 100%;
	padding: 0;
	margin: 0;
	vertical-align: middle;
}
#main div.top_section .inner .focusLeft:before,
#main div.top_section .inner .focusLeft:after,
#main div.top_section .inner .focusRight:before,
#main div.top_section .inner .focusRight:after {
	width: 45px;
	height: 45px;
	background-size: 45px;
	z-index: 10;
	-ms-filter: "alpha(opacity=0)";
	filter: alpha(opacity=0);
	opacity: 0;
	-webkit-transition: opacity 0.2s linear;
	-o-transition: opacity 0.2s linear;
	transition: opacity 0.2s linear;
}
#main div.top_section.on .inner .focusLeft:before,
#main div.top_section.on .inner .focusLeft:after,
#main div.top_section.on .inner .focusRight:before,
#main div.top_section.on .inner .focusRight:after {
	-ms-filter: "alpha(opacity=100)";
	filter: alpha(opacity=100);
	opacity: 1;
}
#main div.top_section .inner .focusLeft:before {
	left: 35px;
	top: 35px;
}
#main div.top_section .inner .focusLeft:after {
	left: 35px;
	bottom: 35px;
}
#main div.top_section .inner .focusRight:before {
	right: 35px;
	top: 35px;
}
#main div.top_section .inner .focusRight:after {
	right: 35px;
	bottom: 35px;
}
#main div.top_section div.photo,
#main div.top_section div.txt {
	width: 50%;
}
#main div.top_section div.photo {
	float: left;
	background-repeat: no-repeat;
	background-position: top right;
	background-size: cover;
	height: 380px;
}
#main div.top_section div.txt {
	float: right;
}
#main div.top_section div.txt > .box {
	margin: auto;
	padding: 0 29.62962% 0 23.148148%;
	display: table-cell;
	vertical-align: middle;
	height: 380px;
}
#main div.top_section div.txt a {
	display: block;
	text-decoration: none;
	width: 550px;
	max-width: 100%;
}
#main div.top_section div.txt a > *:first-child { margin-top: 0; }
#main div.top_section div.txt a > *:last-child { margin-bottom: 0; }
#main div.top_section div.txt h2 {
	/*width: 230px;*/
}
body.msie #main div.top_section div.txt h2 img {
	width: 240px;
}
#main div.top_section div.txt p {
	font-size: 13px;
	letter-spacing: 0;
}

body.home.en #main div.top_section div.txt > .box h2 {
	display: block;
	margin: 0 auto;
}
body.home.en #main div.top_section div.txt > .box p {
	display: none;
}

#main div.top_section.right div.photo {
	float: right;
	background-position: top left;
}
#main div.top_section.right div.txt {
	float: left;
}
#main div.top_section.right div.txt > .box {
	padding: 0 23.148148% 0 29.62962%;
}

/* animation */
#main div.top_section div.txt.fadeInDown {
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
	-webkit-animation-duration:1s;
	-ms-animation-duration:1s;
	animation-duration:1s;
	-webkit-animation-name: fadeInDown;
	animation-name: fadeInDown;
	visibility: visible !important;
}
@-webkit-keyframes fadeInDown {
	0% { opacity: 0; -webkit-transform: translateY(-40px); }
	100% { opacity: 1; -webkit-transform: translateY(0); }
}
@keyframes fadeInDown {
	0% { opacity: 0; -webkit-transform: translateY(-40px); -ms-transform: translateY(-40px); transform: translateY(-40px); }
	100% { opacity: 1; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
}

@media screen and (min-width : 851px) {}
@media screen and (max-width : 1109px) {
	#main div.top_section .inner {
		width: 100%;
		padding: 0;
	}
}
@media screen and (max-width : 850px) {
	#main div.top_section {
		display: block;
		position: static;
	}
	#main #topMovie + div.top_section {
		margin-top: 20px;
	}
	#main div.top_section .inner {
		padding: 0;
	}
	#main div.top_section .inner .focusLeft:before,
	#main div.top_section .inner .focusLeft:after,
	#main div.top_section .inner .focusRight:before,
	#main div.top_section .inner .focusRight:after {
		width: 20px;
		height: 20px;
		background-size: 20px;
	}
	#main div.top_section .inner .focusLeft:before {
		left: 16px;
		top: 16px;
	}
	#main div.top_section .inner .focusLeft:after {
		left: 16px;
		bottom: 16px;
	}
	#main div.top_section .inner .focusRight:before {
		right: 16px;
		top: 16px;
	}
	#main div.top_section .inner .focusRight:after {
		right: 16px;
		bottom: 16px;
	}
	#main div.top_section div.txt,
	#main div.top_section div.photo,
	#main div.top_section.right div.txt,
	#main div.top_section.right div.photo {
		width: 100%;
		float: none;
	}
	#main div.top_section div.photo {
		background-image: none!important;
		height: auto;
	}
	#main div.top_section div.photo img {
		width: 100%;
	}
	#main div.top_section div.txt,
	#main div.top_section.right div.txt {
		display: table;
	}
	#main div.top_section div.txt > .box,
	#main div.top_section.right div.txt > .box {
		width: 100%;
		padding-top: 0;
		padding-bottom: 0;
	}
	#main div.top_section div.txt h2,
	#main div.top_section div.txt p {
		display: block;
		width: 100%;
		padding: 0;
	}
	#main div.top_section div.txt h2 {
		text-align: center;
	}
	#main div.top_section div.txt h2 img {
		width: 200px;
	}
	#main div.top_section div.txt p {
		font-size: 12px;
	}
}
@media screen and (max-width : 378px) {
	#main div.top_section div.txt h2 img {
		width: 160px;
	}
	#main div.top_section div.txt > .box,
	#main div.top_section.right div.txt > .box {
		padding: 0 40px;
	}
}

/* service - service_nav
------------------------------------------------------------------- */
#main div.service_nav {
	text-align: center;
	white-space: nowrap;
	font-size: 0;
}
#main div.service_nav p.btn {
	display: inline-block;
	margin: 0;
	margin-right: 20px;
	top: 0;
	right: 50px;
	height: 50px;
}
#main div.service_nav > p:last-child {
	margin-right: 0;
}
#main div.service_nav p.btn a {
	height: 50px;
	background-image: url(../images/ico_arrow_down.svg);
	background-repeat: no-repeat;
	background-position: 20px center;
	background-size: 12px;
	padding: 0 20px 0 40px;
	line-height: 50px;
	letter-spacing: 0;
	text-align: left;
}

@media screen and (min-width : 851px) {
	#main div.service_nav p.btn a {
		-webkit-transition: all 0.1s linear;
		-o-transition: all 0.1s linear;
		transition: all 0.1s linear;
		width: 230px;
	}
	#main div.service_nav p.btn a:hover {
		background-image: url(../images/ico_arrow_down_w.svg);
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 950px) {
	body.en #main div.service_nav p.btn {
		position: static;
		top: initial;
		right: initial;
		margin: 25px auto 0 auto;
	}
}
@media screen and (max-width : 850px) {
	#main div.service_nav p.btn {
		position: static;
		top: initial;
		right: initial;
		margin: 25px auto 0 auto;
	}
	#main div.service_nav p.btn {
		width: 32.5%;
		margin-right: 1.25%;
	}
	body.service.en #main div.service_nav p.btn {
		width: 49%;
		margin-right: 2%;
	}
	#main div.service_nav p.btn:last-child {
		margin-right: 0;
	}
	#main div.service_nav p.btn a {
		display: block;
		padding: 0 0 0 30px;
		background-position: 10px;
	}
}
@media screen and (max-width : 378px) {
	#main div.service_nav p.btn a,
	#main div.service_nav p.btn a span {
		font-size: 11px;
		padding-left: 26px;
		background-position: 8px;
	}
}

/* sub - service_group
------------------------------------------------------------------- */
@media screen and (min-width : 851px) {
	#main #serviceGroupWrap {
		position: relative;
		margin-top: 100px;
	}
	#main #serviceGroupWrap #svFocusRing {
		position: absolute;
		top: 98px;
		left: 0;
		display: block;
		width: 90px;
		height: 90px;
	}
	#main #serviceGroupWrap #svFocusRing.on {}
	#main #serviceGroupWrap h2 {
		margin-bottom: 40px;
	}
	#main #serviceGroupWrap h2 span {
		display: block;
		padding: 5px 15px;
		border-left: 6px solid #ed6103;
		color: #ED6103;
		font-size: 1em;
		position: static;
		top: initial;
		right: initial;
	}
	#main #serviceGroupWrap .focusLeft,
	#main #serviceGroupWrap .focusRight {
		padding: 0;
		margin: 0;
		width: 90px;
		height: 90px;
	}
	#main #serviceGroupWrap .focusLeft:before,
	#main #serviceGroupWrap .focusLeft:after,
	#main #serviceGroupWrap .focusRight:before,
	#main #serviceGroupWrap .focusRight:after {
		width: 30px;
		height: 30px;
		background-size: 30px;
	}
	#main #serviceGroupWrap .focusLeft:before {
		top: 0;
		left: 0;
	}
	#main #serviceGroupWrap .focusRight:before {
		top: 0;
		right: 0;
	}
	#main #serviceGroupWrap .focusRight:after {
		right: 0;
		bottom: 0;
	}
	#main #serviceGroupWrap .focusLeft:after {
		left: 0;
		bottom: 0;
	}

	#main div.service_group {
		margin-top: -178px;
		padding-top: 178px;
		padding-left: 150px;
	}
	#main div.service_group span.icowrap {
		position: static;
		margin-top: 0;
		margin-left: -150px;
		padding: 0 0 0 150px;
		border-left: 0;
	}
	#main div.service_group span.icowrap > span {
		position: static;
	}
	#main div.service_group span.icowrap > span.label {
		font-size: 30px;
		font-weight: bold;
		color: #ED6103;
		line-height: 90px;
	}
	#main div.service_group span.icowrap > img {
		width: 90px;
		position: absolute;
		top: 0;
		left: 0;
	}
	#main div.service_group span.icowrap > span.ico {
		position: absolute;
		top: 0;
		left: 0;
		width: 90px;
		height: 90px;
	}
	#main div.service_group span.icowrap > span.ico.hide {
		display: none;
	}
	#main div.service_group span.icowrap > span.ico svg {
		width: 90px;
		height: 90px;
	}
	#main div.service_group span.icowrap > span.ico.off svg path,
	#main div.service_group span.icowrap > span.ico.off svg circle,
	#main div.service_group span.icowrap > span.ico.off svg rect {
		fill: #acacac;
	}
	#main div.service_group span.icowrap > span.ico.first {
		top: 98px;
	}
	#main div.service_group span.icowrap > span.ico.first svg path,
	#main div.service_group span.icowrap > span.ico.first svg circle,
	#main div.service_group span.icowrap > span.ico.first svg rect {
		fill: #ED6103;
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main #serviceGroupWrap #svFocusRing {
		display: none;
	}
	#main #serviceGroupWrap h2 {
		margin: 50px 0 20px 0;
	}
	#main #serviceGroupWrap h2 span {
		border-left-width: 4px;
	}
	#main div.service_group {
		margin-top: -60px;
		padding-top: 90px;
	}
	#main div.service_group span.icowrap > img,
	#main div.service_group span.icowrap > span.ico {
		display: none;
	}
	#main div.service_group span.icowrap > span.label {
		position: static;
		display: block;
		font-size: 18px;
		font-weight: bold;
		color: #ED6103;
	}
	#main div.service_group span.icowrap {
		display: none;
	}
}
@media screen and (max-width : 378px) {}

#main #serviceGroupWrap div.service_hd {
	padding: 5px 15px;
	border-left: 6px solid #ed6103;
	color: #ED6103;
	position: relative;
	font-size: 25px;
	font-weight: bold;
	margin-top: 80px;
}
@media screen and (max-width : 850px) {
	#main #serviceGroupWrap div.service_hd {
		font-size: 20px;
		margin-top: 60px;
		margin-bottom: 20px;
	}
}

/* serviceMovie
------------------------------------------------------------------- */
#main #serviceMovie {
	margin: -150px auto 0 auto;
	padding-top: 190px;
}
#main #serviceMovie div.movieWrap,
#main #serviceMovie div.movieInWrap {
	position: relative;
}
#main #serviceMovie div.movieWrap:before,
#main #serviceMovie div.movieInWrap:before {
	content: "";
	width: 100%;
	height: 2px;
	position: absolute;
	left: -1px;
	z-index: 10;
	background-color: #fff;
}
#main #serviceMovie div.movieWrap:after,
#main #serviceMovie div.movieInWrap:after {
	content: "";
	width: 2px;
	height: 100%;
	position: absolute;
	top: -1px;
	z-index: 10;
	background-color: #fff;
}
#main #serviceMovie div.movieWrap:before { top: -1px; }
#main #serviceMovie div.movieInWrap:before { bottom: -1px; }
#main #serviceMovie div.movieWrap:after { left: -1px; }
#main #serviceMovie div.movieInWrap:after { right: -1px; }

#main #serviceMovie iframe {
	width: 100%;
	height: 600px;
	vertical-align: top;
}
@media screen and (min-width : 851px) {}
@media screen and (max-width : 1109px) {
	#main #serviceMovie iframe {
		height: 400px;
	}
}
@media screen and (max-width : 850px) {
	#main #serviceMovie {
		margin-top: -80px;
		padding-top: 100px;
	}
	#main #serviceMovie iframe {
		height: 400px;
	}
}
@media screen and (max-width : 378px) {
	#main #serviceMovie iframe {
		height: 250px;
	}
}

/* service_list_wrap
------------------------------------------------------------------- */
body.service #post-content > .inner {
	width: 1195px;
}
#main div.service_list_wrap {
	margin-top: 80px;
}
#main div.service_list_wrap div.col > *:first-child { margin-top: 0; }
#main div.service_list_wrap div.col > *:last-child { margin-bottom: 0; }

@media screen and (min-width : 851px) {
	#main div.service_list_wrap {
		display: flex;
	}
	#main div.service_list_wrap div.col.nav {
		width: 240px;
		padding-right: 60px;
	}
	#main div.service_list_wrap div.col.content {
		width: 850px;
		margin-left: auto;
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main div.service_list_wrap {
		margin-top: 32px;
	}
	#main div.service_list_wrap div.col.nav {
		margin: 0 0 40px;
	}
}
@media screen and (max-width : 378px) {}

/* service_list_nav
------------------------------------------------------------------- */
#main ul.service_list_nav {
	padding-left: 0;
	list-style-type: none;
	padding: 0;
}
#main ul.service_list_nav > li:before {
	display: none;
}
#main ul.service_list_nav a {
	text-decoration: none;
	font-weight: bold;
	display: block;
}
#main ul.service_list_nav > li > a {
	font-size: 14px;

}
#main ul.service_list_nav ul.sub-menu {
	margin: 10px 0;
	padding-left: 16px;
	list-style-type: none;
}
#main ul.service_list_nav ul.sub-menu > li {
	line-height: 1;
}
#main ul.service_list_nav ul.sub-menu > li:before {
	top: 0.5em;
	left: -15px;
	width: 5px;
	background-color: #8F8F8F;
}
#main ul.service_list_nav ul.sub-menu > li + li {
	margin-top: 5px;
}
#main ul.service_list_nav ul.sub-menu > li > a {
	font-size: 10px;
	line-height: 1.6;
	color: #8F8F8F;
}

#main ul.service_list_nav ul.sub-menu > li.on > a,
#main ul.service_list_nav ul.sub-menu > li:hover > a {
	color: #ED6103;
}
#main ul.service_list_nav ul.sub-menu > li.on:before,
#main ul.service_list_nav ul.sub-menu > li:hover:before {
	background-color: #ED6103; 
}

@media screen and (min-width : 851px) {
	#main ul.service_list_nav > li + li {
		margin-top: 24px;
	}

	#main ul.service_list_nav.on {
		position: fixed;
		top: 0;
		left: 0;
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main ul.service_list_nav {
		display: flex;
		width: 100%!important;
		top: initial!important;
		left: initial!important;
	}
	#main ul.service_list_nav li {
		flex-grow: 1;
		margin: 0;
	}
	#post-content ul.service_list_nav li + li {
		margin-left: 8px;
		margin-top: 0;
	}
	#main ul.service_list_nav li > a {
		border: 1px solid;
		border-radius: 2px;
		line-height: 38px;
		height: 40px;
		padding-left: 40px;
		background-image: url(../images/ico_arrow_down.svg);
		background-repeat: no-repeat;
		background-position: 19px center;
		background-size: 11px;
	}
	#main ul.service_list_nav li > a > span {
		display: none;
	}
	#main ul.service_list_nav ul.sub-menu {
		display: none;
	}
}
@media screen and (max-width : 378px) {}

/* service_list
------------------------------------------------------------------- */
#main ul.service_list {
	list-style-type: none;
	margin: 0;
	padding: 0 0 40px 0;
	padding-top: 1px; /* for edge */
	border-bottom: 1px solid #E8E8E8;
}
#main ul.service_list > li {
	padding: 40px 0 0 0;
	margin: 40px 0 0 0;
	border-top: 1px solid #E8E8E8;
	width: 100%;
}
#post-content ul.service_list > li + li {
	margin-top: 40px;
	padding-top: 40px;
}
#main ul.service_list > li:first-child {
	border-top: 0;
	margin-top: 0;
	padding-top: 0;
}
#main ul.service_list > li:before {
	display: none;
}
#main ul.service_list > li:after {
	content: '';
	display: block;
	clear: both;
}
#main ul.service_list > li div.photo {
	float: left;
	width: 37.64705%;
	text-align: center;
	border: 1px solid #E8E8E8;
	border-radius: 8px;
}
#main ul.service_list > li div.photo a {
	display: block;
}
#main ul.service_list > li div.photo img {
	display: block;
}
#main ul.service_list > li div.photo img.img {
	width: calc(100% + 2px);
	max-width: calc(100% + 2px);
	margin-left: -1px;
	margin-top: -1px;
	border-radius: 8px 8px 0 0;
}
#main ul.service_list > li div.photo img {
	vertical-align: middle;
	max-width: 100%;
	height: auto;
}
#main ul.service_list > li div.photo img.logo {
	padding: 14px;
	margin: 0 auto;
	height: 56px;
}
body.msie #main ul.service_list > li div.photo img.logo {
	width: 100%;
}
#main ul.service_list > li div.photo ~ div.txt {
	float: right;
	width: 57.64705%;
}
#main ul.service_list > li div.txt h3.title {
	display: block;
	margin: 0 0 16px 0;
	padding: 0;
	line-height: 1.33;
	border: 0;
	font-size: 28px;
	font-weight: bold;
	color: #ED6103;
}
#main ul.service_list > li div.txt h3.title a {
	color: #ED6103;
	text-decoration: none;
}
#main ul.service_list > li div.txt p.lead {
	font-size: 14px;
	line-height: 1.7;
}
#main ul.service_list > li div.txt p.company {
	font-size: 12px;
	margin: 1em 0 0 0;
	color: #797979;
}
#main ul.service_list > li div.txt span.small {
	color: #797979;
}
#main ul.service_list > li div.txt > *:last-child {
	margin-bottom: 0;
}
#main ul.service_list > li div.txt ul.links {
	padding-left: 0;
}
#main ul.service_list > li div.txt ul.links li {
	margin: 0;
}
#main ul.service_list > li div.txt ul.links li:before {
	display: none;
}
#main ul.service_list > li div.txt ul.links li > a {
	display: block;
	width: 200px;
	padding: 0 40px;
	border: 1px solid;
	line-height: 38px;
	height: 40px;
	text-decoration: none;
	border-radius: 20px;
	font-weight: bold;
	font-size: 16px;
	background-image: url(../images/btn_more_arrow.svg);
	background-repeat: no-repeat;
	background-position: right 12px center;
	background-size: 12px;
}

@media screen and (min-width : 851px) {
	#main ul.service_list > li div.photo a {
		position: relative;
	}
	#main ul.service_list > li div.photo a:after {
		content: '';
		position: absolute;
		width: calc(100% + 2px);
		height: calc(100% + 2px);
		top: -1px;
		left: -1px;
		border: 1px solid #ED6103;
		border-radius: 8px;
		-ms-filter: "alpha(opacity=0)";
		filter: alpha(opacity=0);
		opacity: 0;
		-webkit-transition: opacity 0.1s linear;
		-o-transition: opacity 0.1s linear;
		transition: opacity 0.1s linear;
	}
	#main ul.service_list > li div.photo a:hover:after {
		-ms-filter: "alpha(opacity=100)";
		filter: alpha(opacity=100);
		opacity: 1;
	}
	#main ul.service_list > li div.txt ul.links {
		display: flex;
		flex-wrap: wrap;
	}
	#main ul.service_list > li div.txt ul.links li + li {
		margin-left: 12px;
	}
	#main ul.service_list > li div.txt ul.links li > a {
		-webkit-transition: all 0.1s linear;
		-o-transition: all 0.1s linear;
		transition: all 0.1s linear;
	}
	#main ul.service_list > li div.txt ul.links li > a:hover {
		color: #fff;
		background-color: #ED6103;
		background-image: url(../images/btn_more_arrow_w.svg);
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main ul.service_list {
		padding-bottom: 32px;
	}
	#main ul.service_list > li {
		margin-top: 32px;
		padding-top: 32px;
	}
	#main ul.service_list > li div.txt h3.title {
		font-size: 20px;
	}
	#main ul.service_list > li div.photo ~ div.txt,
	#main ul.service_list > li div.photo,
	#main ul.service_list > li div.txt {
		float: none;
		width: 100%;
	}
	#main ul.service_list > li div.photo {
		margin-bottom: 24px;
	}
	#main ul.service_list > li div.txt p.lead {
		font-size: 14px;
	}
	#main ul.service_list > li div.txt ul.links {
		margin-top: 30px;
	}
	#main ul.service_list > li div.txt ul.links li + li {
		margin-top: 16px;
	}
	#main ul.service_list > li div.txt ul.links li > a {
		width: 100%;
		height: 48px;
		line-height: 46px;
		border-radius: 24px;
		text-align: center;
		background-position: right 20px center;
	}
}
@media screen and (max-width : 378px) {}


/* searchInput
------------------------------------------------------------------- */
#searchInput {
	margin-bottom: 40px;
	padding: 16px 16px 16px 80px;
	background-color: #f4f4f4;
	color: #fff;
	border-radius: 8px;
	width: 100%;
	background-image: url(../images/ico_search.svg);
	background-repeat: no-repeat;
	background-size: 30px;
	background-position: left 20px center;
}
#searchInput div.wrap {
	display: flex;
	width: 100%;
}

#searchInput div.col {
	padding: 0;
	height: 50px;
}
#searchInput div.col.year {
	width: 104px;
}
#searchInput div.col.cat {
	width: 192px;
	padding-left: 16px;
}
#searchInput div.col.kwd {
	width: 464px;
	padding-left: 16px;
	/*width: 50%;*/
}
#searchInput div.col.submit {
	width: 150px;
	padding-left: 16px;
	margin-left: auto;
}
#searchInput div.col span {
	display: block;
}
#searchInput div.col span.label {
	font-size: 14px;
	color: #626262;
	letter-spacing: 0.05em;
	line-height: 20px;
	font-weight: bold;
}
#searchInput div.col span.val {
	position: relative;
	border-bottom: 1px solid #8F8F8F;
}
#searchInput div.col input[type=text],
#searchInput div.col select {
	padding: 0 0.1em;
	width: 100%;
	/*color: #fff;*/
	color: #3e3e3e;
	font-size: 16px;
	background-color: transparent;
	border: 0;
	-webkit-transition: all 0.1s linear;
	-o-transition: all 0.1s linear;
	transition: all 0.1s linear;
}
#searchInput div.col.year span.val select,
#searchInput div.col.year span.val span.unit {
	display: inline-block;
	width: auto;
}
#searchInput div.col.year span.val span.unit {
	color: #000;
}
#searchInput div.col.year span.val,
#searchInput div.col.cat span.val {
	background-image: url(../images/ico_dropdown.svg);
	background-repeat: no-repeat;
	background-size: 11px;
	background-position: left 4px bottom 10px;
}
#searchInput div.col select {
	padding-left: 1.2em;
	padding-right: 0.4em;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
#searchInput div.col select option {
	background-color: #f4f4f4;
}
#searchInput div.col input[type=text] {
	line-height: 1.85;
	padding: 0;
	-webkit-appearance: none;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
}
#searchInput input[type=submit] {
	display: block;
	padding: 0 1.4em;
	line-height: 48px;
	border-radius: 6px;
	border: 0;
	background-color: #ED6103;
	color: #fff;
	-webkit-appearance: none;
	margin: 0 auto;
	font-size: 18px;
	font-weight: bold;
	-webkit-transition: all 0.1s linear;
	-o-transition: all 0.1s linear;
	transition: all 0.1s linear;
	cursor: pointer;
}
#searchInput input[type=submit][disabled] {
	background-color: #bbb;
	-ms-filter: "alpha(opacity=100)";
	filter: alpha(opacity=100);
	opacity: 1;
	cursor: default;
}

#searchInput input[type=submit]:hover {}
#searchInput div.col select.active,
#searchInput div.col input[type="text"].active {
	background-color: rgba(249, 207, 178, 0.4);
}
#searchInput div.col select.empty,
#searchInput div.col select.empty.active,
#searchInput div.col input.empty,
#searchInput div.col input.empty.active {
	color: #fff;
}
#searchInput div.col input[type=text]:hover,
#searchInput div.col input[type=text]:focus,
#searchInput div.col select:hover,
#searchInput div.col select:focus {
	outline: 0;
	-webkit-transition: all .2s ease-in-out 0s;
	-o-transition: all .2s ease-in-out 0s;
	transition: all .2s ease-in-out 0s;
}

/* hover */
#searchInput.off #searchOpen:hover {
	background-color: #e7e8e8;
}

/* animation */

@media screen and (max-width :1109px) {
	#searchInput div.col input[type=text],
	#searchInput div.col select {
		font-size: 16px;
	}
}
@media screen and (min-width :851px) {
	#searchInput div.col select,
	#searchInput div.col span.val {
		height: 2em;
	}
	#searchInput div.col {
		flex-shrink: 1;
	}
	#searchInput div.col.year {
		width: 105px;
		padding: 0;
	}
	#searchInput div.col.cat {
		width: 190px;
		padding: 0 0 0 15px;
	}
	#searchInput div.col.kwd {
		flex-shrink: 10;
		flex-grow: 2;
	}
	body.en #searchInput div.col span.label {
		font-size: 14px;
	}
}
@media screen and (max-width : 850px) {
	#searchInput {
		padding: 0;
		margin: 40px 0 30px 0!important;
		border-radius: 4px;
		background-position: center top 12px;
		background-size: 20px;
	}
	#searchInput div.input,
	#searchInput div.wrap,
	#searchInput div.col {
		display: block;
		width: 100%;
	}
	#searchInput div.wrap {
		border-radius: 0 0 4px 4px;
	}
	#searchInput div.wrap,
	#searchInput div.col {
	}
	#searchInput div.col span.val:before {
		top: initial;
		bottom: 12px;
		left: 4px;
	}
	#searchInput div.col,
	#searchInput div.col.year,
	#searchInput div.col.cat,
	#searchInput div.col.kwd {
		display: table;
		width: 100%;
		padding: 0 32px 0 16px;
	}
	#searchInput div.col.year {
		padding-top: 32px;
	}
	#searchInput div.col.kwd {
		padding-bottom: 10px;
	}
	#searchInput div.col > span {
		display: table-cell;
		font-size: 12px;
		padding: 16px 0 0 0;
		vertical-align: bottom;
	}
	#searchInput div.col > span.label {
		width: 34%;
		padding-left: 0;
		padding-right: 1em;
		font-size: 12px;
	}
	#searchInput div.col input[type=text],
	#searchInput div.col select {
		font-size: 15px;
		border-radius: 0;
	}
	#searchInput div.col select {
		background-size: 6px 5px;
	}
	#searchInput div.col span.unit {
		font-size: 0.9em;
	}
	#searchInput div.col.submit {
		width: 100%;
		border-radius: 0 0 4px 4px;
		padding: 16px;
	}
	#searchInput input[type=submit] {
		font-size: 15px;
		width: 2em;
		line-height: 32px;
		padding: 0;
		width: 100%;
	}
}

/* morebtn
------------------------------------------------------------------- */
#main p.btn.more {
	margin-top: 50px;
	text-align: center;
}
#main p.btn.more a {
	width: 320px;
	max-width: 100%;
	display: inline-block;
	text-decoration: none;
	height: 64px;
	line-height: 60px;
	margin: auto;
	padding: 0 3em;
	border: 2px solid #ed6103;
	border-radius: 5px;
	color: #ed6103;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	background-image: url(../images/btn_more_arrow.svg);
	background-repeat: no-repeat;
	background-position: center right 25px;
}
body.en #main p.btn.more a {
	font-weight: 900;
}

@media screen and (min-width : 851px) {
	#main p.btn.more a {
		-webkit-transition: all 0.1s linear;
		-o-transition: all 0.1s linear;
		transition: all 0.1s linear;
	}
	#main p.btn.more a:hover {
		background-image: url(../images/btn_more_arrow_w.svg);
		background-color: #ed6103;
		color: #fff;
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main p.btn.more {
		margin-top: 40px;
	}
	#main p.btn.more a {
		height: 48px;
		line-height: 44px;
		font-size: 18px;
	}
}
@media screen and (max-width : 378px) {}

/* btn.gray
------------------------------------------------------------------- */
#main p.btn.gray {
	margin-top: 50px;
	text-align: center;
}
#main p.btn.gray a {
	display: inline-block;
	text-decoration: none;
	width: 277px;
	max-width: 100%;
	height: 3em;
	line-height: 3em;
	margin: auto;
	padding: 0 3em;
	border-radius: 3px;
	background-color: #767676;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	position: relative;
	white-space: nowrap;
}
body.en #main p.btn.gray a {
	letter-spacing: 0;
	font-size: 20px;
	height: 2.4em;
	line-height: 2.4em;
}
#main p.btn.gray a:after {
	content: '';
	display: block;
	width: 9px;
	height: 9px;
	position: absolute;
	top: 50%;
	right: 18px;
	margin-top: -5px;
	border: 2px solid #fff;
	border-width: 2px 2px 0 0;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

@media screen and (min-width : 851px) {
	#main p.btn.gray a {
		-webkit-transition: all 0.1s linear;
		-o-transition: all 0.1s linear;
		transition: all 0.1s linear;
	}
	#main p.btn.gray a:hover {
		background-color: #ed6103;
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main p.btn.gray {
		margin-top: 30px;
	}
	#main p.btn.gray a {
		border-width: 0;
		color: #fff;
		font-size: 14px;
		height: 46px;
		line-height: 46px;
	}
	body.en #main p.btn.gray a {
		font-size: 16px;
		height: 46px;
		line-height: 46px;
	}
}
@media screen and (max-width : 378px) {}

/* pickup_list
------------------------------------------------------------------- */
#main ul.pickup_list {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
#main ul.pickup_list li a {
	display: block;
	text-decoration: none;
}
#main ul.pickup_list li div.photo {
	/*border: 1px solid #ddd;*/
	border-radius: 5px;
	position: relative;
	text-align: center;
}
#main ul.pickup_list li div.photo:after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 1px solid #ddd;
	border-radius: 5px;
}
#main ul.pickup_list li div.photo img {
	border-radius: 5px;
	width: 100%;
}
#main ul.pickup_list li div.photo span.bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 5px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}
#main ul.pickup_list li div.info {
	display: flex;
	margin-top: 16px;
}
#main ul.pickup_list li div.info span.cat {
	padding: 0 0.2em;
	width: 120px;
	height: 24px;
	line-height: 24px;
	font-size: 12px;
	background-color: #ed6103;
	color: #fff;
	text-align: center;
	white-space: nowrap;
}
#main ul.pickup_list li div.info span.date {
	height: 24px;
	line-height: 24px;
	color: #797979;
	font-size: 14px;
	font-weight: bold;
}
#main ul.pickup_list li div.info span.cat + span.date {
	margin-left: 12px;
}
#main ul.pickup_list li span.title {
	font-size: 14px;
	margin-top: 12px;
	display: inline-block;
	color: #3e3e3e;
	font-weight: bold;
	line-height: 1.6;
	letter-spacing: 0.05em;
}

#main ul.pickup_list li span.service {
	font-size: 12px;
	font-weight: bold;
	margin-top: 0.25em;
}
#main ul.pickup_list li.noresult {
	margin: auto;
	text-align: center;
	float: none;
}
#main ul.pickup_list li a,
#main ul.pickup_list li a div.photo:after,
#main ul.pickup_list li a span {
	-webkit-transition: all 0.1s linear;
	-o-transition: all 0.1s linear;
	transition: all 0.1s linear;
}

body.en #main ul.pickup_list li span.title {
	font-weight: normal;
}

@media screen and (min-width : 851px) {
	#main ul.pickup_list {
		display: flex;
		flex-wrap: wrap;
	}
	#main ul.pickup_list li {
		width: calc((100% - 80px) / 3);
		margin: 48px 40px 0 0;
	}
	body.safari #main ul.pickup_list li,
	body.msie #main ul.pickup_list li,
	body.edge #main ul.pickup_list li {
		width: calc((100% - 82px) / 3);
	}
	#main ul.pickup_list li:nth-child(-n+3) {
		margin-top: 0;
	}
	#main ul.pickup_list li:nth-child(3n) {
		margin-right: 0;
	}
	#main ul.pickup_list li a:hover div.photo:after {
		border-color: #ED6103;
	}
	#main ul.pickup_list li a:hover span.date,
	#main ul.pickup_list li a:hover span.title {
		color: #ED6103;
	}
	#main ul.pickup_list li a:hover span.cat {
		background-color: #ED6103;
	}
	#main ul.pickup_list li a:hover span.img {
		border-color: #ED6103;
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main ul.pickup_list li + li {
		margin-top: 32px;
	}
	#main ul.pickup_list li div.info {
		margin-top: 14px;
	}
	#main ul.pickup_list li span.title {
		margin-top: 12px;
		line-height: 1.35714;
	}
	#main ul.pickup_list li span.date {
		font-size: 11px;
		font-weight: bold;
	}
	#main ul.pickup_list li span.service {
		font-size: 11px;
	}
}

/* top_newslist
------------------------------------------------------------------- */
#main ul.top_newslist {
	list-style-type: none;
	margin: 0;
	padding: 0;
	width: 100%;
}
#main ul.top_newslist > li {
	margin: 24px 0 0 0;
}
#main ul.top_newslist > li:first-child {
	margin-top: 0;
}
#main ul.top_newslist > li > a {
	display: table;
	width: 100%;
	padding: 0;
	text-decoration: none;
}
#main ul.top_newslist > li > a > div.row {
	display: flex;
}
#main ul.top_newslist > li > a > div.row > div.col {
	display: table-cell;
	vertical-align: top;
}
#main ul.top_newslist > li span.cat {
	display: inline-block;
	padding: 0 0.2em;
	width: 120px;
	height: 24px;
	line-height: 24px;
	font-size: 12px;
	background-color: #ed6103;
	color: #fff;
	text-align: center;
	white-space: nowrap;
}
#main ul.top_newslist > li span.date {
	display: inline-block;
	margin-left: 12px;
	height: 24px;
	line-height: 24px;
	color: #797979;
	font-size: 14px;
	font-weight: bold;
}
#main ul.top_newslist > li span.title {
	font-size: 14px;
	letter-spacing: 0.05em;
	padding-top: 10px;
	color: #3e3e3e;
	font-weight: bold;
	line-height: 1.57142;
}
#main ul.top_newslist > li.noresult {
	margin: auto;
	text-align: center;
	border-bottom: 0;
}

#main ul.top_newslist > li a,
#main ul.top_newslist > li a span {
	-webkit-transition: all 0.1s linear;
	-o-transition: all 0.1s linear;
	transition: all 0.1s linear;
}

body.en #main ul.top_newslist > li span.title {
	font-weight: normal;
}

@media screen and (min-width : 851px) {
	#main ul.top_newslist > li > a:hover {
		border-color: #ED6103;
	}
	#main ul.top_newslist > li > a:hover:before {
		border-color: #ED6103;
	}
	#main ul.top_newslist > li > a:hover span.date,
	#main ul.top_newslist > li > a:hover span.title {
		color: #ED6103;
	}
	#main ul.top_newslist > li > a:hover span.cat span {
		background-color: #ED6103;
	}
	#main ul.top_newslist > li span.title {
		overflow : hidden;
		display: block;
		line-height: 1.6;
	}
	#main ul.top_newslist > li span.title.line2 {
		height: 3.4em;
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main div.top_newslist_wrap > div.col {
		float: none;
		width: 100%;
	}
	#main div.top_newslist_wrap > div.col + div.col {
		margin-left: 0;
	}
	#main div.top_newslist_wrap > div.col h3 {
		font-size: 21px;
	}
	#main ul.top_newslist > li > a {
		display: block;
		border-color: #c7c7c7;
	}
	#main ul.top_newslist > li > a > div.row > div.col {
		display: block;
		width: 100%;
	}
	#main ul.top_newslist > li span.date {
		font-size: 14px;
	}
	#main ul.top_newslist > li span.cat {}
	#main ul.top_newslist > li span.title {
		padding-left: 0;
		font-size: 14px;
	}
}

/* newstab
------------------------------------------------------------------- */
#main div.newstab {
	width: 100%;
	padding: 0px;
}
#main div.newstab ul {
	display: block;
	list-style-type: none;
	margin: 0px;
	padding: 0;
	font-size: 16px;
	font-weight: normal;
}
#main div.newstab ul li {
	display: inline-block;
	margin: 0px;
	padding: 0;
}
#main div.newstab ul li + li {
	margin-left: 8px;
}
#main div.newstab ul li a {
	display: block;
	width: 200px;
	padding: 13px 2px;
	color: #3e3e3e;
	text-decoration: none;
	text-align:center;
	font-weight: bold;
	border-bottom: 2px solid #E8E8E8;
	white-space: nowrap;
}
#main div.newstab ul li a:hover {
	color: #ED6103;
}
#main div.newstab ul li a.active,
#main div.newstab ul li a.active:hover {
	color: #ED6103;
}
#main div.newstab ul li.active a {
	color: #ED6103;
	position: relative;
}
#main div.newstab ul li.active a:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: -2px;
	height: 4px;
	width: 100%;
	background-color: #ED6103;
}

#main .newslead {
	margin: 40px 0;
	font-size: 16px;
}

@media screen and (min-width : 851px) {}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main div.newstab ul {
		font-size: 14px;
		letter-spacing: 0;
		width: 100%;
	}
	#main div.newstab ul:after {
		content: '';
		display: block;
		clear: both;
	}
	#main div.newstab ul li {
		float: left;
		display: block;
		width: calc((100% - 16px) / 3);
		margin-right: 0;
		padding-left: 2px;
	}
	#main div.newstab ul li:nth-child(1) {
		padding-left: 0;
	}
	#main div.newstab ul li.active + li {
		padding-left: 0;
	}
	#main div.newstab ul li a {
		width: 100%;
		font-size: 12px;
	}
	#main div.newstab ul li:not(.active) + li.active {
		padding-left: 0;
	}
}
@media screen and (max-width : 374px) {
	#main div.newstab ul li a {
		font-size: 10px;
	}
}

/* news_list
------------------------------------------------------------------- */
#main ul.news_list {
	list-style-type: none;
	margin: 0;
	padding: 0;
	width: 100%;
}
#main ul + ul.news_list {
	margin-top: 50px;
}
body.home #main ul.news_list {
	border-top: 1px solid #d2d2d2;
}
#main ul.news_list li {
	margin: 0;
}
#main ul.news_list li:before {
	display: none;
}
#main ul.news_list li > a {
	display: flex;
	align-items: start;
	width: 100%;
	padding: 15px 0;
	border-bottom: 1px solid #d2d2d2;
	text-decoration: none;
}
#main ul.news_list li > a > span {
	display: block;
}
#main ul.news_list li span.date {
	width: 6.5em;
	white-space: nowrap;
	height: 24px;
	line-height: 24px;
	color: #808080;
	font-size: 15px;
	font-weight: bold;
}
#main ul.news_list li span.cat {
	width: 150px;
	white-space: nowrap;
	padding: 0;
	margin-left: 32px;
	font-size: 13px;
	color: #fff;
	background-color: #ED6103;
	line-height: 2.08;
	text-align: center;
}
body.msie #main ul.news_list li span.cat,
body.safari #main ul.news_list li span.cat {
	height: 27px;
	line-height: 2.4;
}
body.safari #main ul.news_list li span.cat {
	line-height: 27px;
}
body.msie #main ul.top_newslist > li span.cat {
	line-height: 28px;
}
#main ul.news_list li span.title {
	width: calc(100% - 150px - 6.5em - 24px - 32px);
	margin-left: 24px;
	margin-top: -0.15em;
	font-size: 15px;
	color: #353535;
	font-weight: bold;
	line-height: 2.13333;
	letter-spacing: 0.05em;
	flex-grow: 1;
}
#main ul.news_list li.noresult {
	margin: auto;
	text-align: center;
	border-bottom: 0;
}

#main ul.news_list li a,
#main ul.news_list li a span {
	-webkit-transition: all 0.1s linear;
	-o-transition: all 0.1s linear;
	transition: all 0.1s linear;
}

body.en #main ul.news_list li span.title {
	font-weight: normal;
}

@media screen and (min-width : 851px) {
	#main ul.news_list li > a:hover {
		border-color: #ED6103;
	}
	#main ul.news_list li > a:hover:before {
		border-color: #ED6103;
	}
	#main ul.news_list li > a:hover span.date,
	#main ul.news_list li > a:hover span.title {
		color: #ED6103;
	}
	#main ul.news_list li > a:hover span.cat span {
		color: #FFF;
		background-color: #ED6103;
		border-color: #ED6103;
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main ul.news_list li > a {
		display: flex;
		flex-wrap: wrap;
		border-color: #c7c7c7;
		padding: 16px 0;
	}
	#main ul.news_list li span.date {
		order: 2;
		font-size: 14px;
		font-weight: bold;
		margin-left: auto;
	}
	#main ul.news_list li span.cat {
		order: 1;
		width: 10em;
		padding: 0;
		margin: 0;
	}
	#main ul.news_list li span.title {
		order: 3;
		display: block;
		width: 100%;
		margin-top: 0.5em;
		padding: 0;
		margin: 16px 0 0 0;
		line-height: 21px;
	}
}
@media screen and (max-width : 375px) {}


/* record_list
------------------------------------------------------------------- */
body.record #post-content > .inner {
	width: 1180px;
}
#main ul.record_list {
	list-style-type: none;
	margin: 0;
	padding: 0;
	width: 100%;
}
#main ul.record_list li {
	width: 100%;
	padding: 16px 0;
	margin: 0;
	display: flex;
	align-items: start;
	border-bottom: 1px solid #d2d2d2;
	text-decoration: none;
}
#main ul.record_list li:before {
	display: none;
}
#main ul.record_list li:first-child {
	padding-top: 0;
}
#main ul.record_list li > span {
	display: block;
}
#main ul.record_list li span.date {
	width: 90px;
	white-space: nowrap;
	height: 24px;
	line-height: 24px;
	color: #808080;
	font-size: 15px;
	font-weight: bold;
}
#main ul.record_list li span.cat {
	width: 128px;
	white-space: nowrap;
	padding: 0;
	margin-left: 56px;
	font-size: 13px;
	border: 1px solid;
	line-height: 22px;
	text-align: center;
}
body.msie #main ul.record_list li span.cat,
body.safari #main ul.record_list li span.cat {
	height: 24px;
	line-height: 26px;
}
body.safari #main ul.record_list li span.cat {
	line-height: 24px;
}
#main ul.record_list li span.cat.newspaper { color: #666; }
#main ul.record_list li span.cat.magazine { color: #00398A; }
#main ul.record_list li span.cat.book { color: #0080FF; }
#main ul.record_list li span.cat.web { color: #A09432; }
#main ul.record_list li span.cat.radio { color: #3EA135; }
#main ul.record_list li span.cat.tv { color: #B300B3; }
#main ul.record_list li span.cat.others { color: #969084; }

#main ul.record_list li span.media {
	width: 150px;
	padding: 0;
	margin-left: 64px;
	line-height: 1.5;
	font-weight: bold;
}
#main ul.record_list li span.title {
	width: calc(100% - 90px - 128px - 150px - 56px - 64px - 64px);
	margin-left: 64px;
	color: #353535;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: 0.05em;
	flex-grow: 1;
}

@media screen and (min-width : 851px) {
	#main ul.record_list li > a:hover {
		color: #ED6103;
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main ul.record_list li {
		padding: 24px 0;
		border-color: #c7c7c7;
		position: relative;
		flex-wrap: wrap;
	}
	#main ul.record_list li span.date {
		order: 2;
		margin: 0;
		margin-left: auto;
		font-size: 14px;
		line-height: 24px;
	}
	#main ul.record_list li span.cat {
		order: 1;
		width: 96px;
		height: 24px;
		line-height: 24px;
		margin: 0;
	}
	#main ul.record_list li span.media {
		order: 3;
		width: 100%;
		margin: 16px 0 0 0;
		font-size: 15px;
	}
	#main ul.record_list li span.title {
		order: 4;
		width: 100%;
		margin: 0;
		line-height: 1.26666;
		font-weight: normal;
	}
}
@media screen and (max-width : 375px) {}

/* sitemap
------------------------------------------------------------------- */
#main ul.sitemap_list {
	list-style-type: none;
	padding: 0;
}
#main ul.sitemap_list > li {
	margin-left: 0;
	margin-top: 20px;
}
#main ul.sitemap_list > li:before {
	display: none;
}
#main ul.sitemap_list > li:first-child {
	margin-top: 0;
}
#main ul.sitemap_list > li > a {
	padding-left: 18px;
	border-left: 4px solid #ED6103;
	font-size: 20px;
	font-weight: bold;
}
#main ul.sitemap_list li:before {
	top: 0.95em;
}
#main ul.sitemap_list li ul.children {
	margin: 20px 0;
	list-style-type: none;
}
#main ul.sitemap_list li ul.children li ul.children {
	margin: 10px 0 20px 0;
	list-style-type: none;
}
#main ul.sitemap_list li ul.children li ul.children li {}
#main ul.sitemap_list li {
	color: #ED6103;
}
#main ul.sitemap_list li a {
	color: #ED6103;
	text-decoration: none;
}
@media screen and (min-width : 851px) {
	#main ul.sitemap_list li a:hover {
		text-decoration: underline;
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main ul.sitemap_list li:before {
		top: 0.95em;
	}
}
@media screen and (max-width : 378px) {}

/* tellist
------------------------------------------------------------------- */
@media screen and (min-width : 851px) {
	#post-content fle.tellist {
		border-collapse: collapse;
		border-top: 1px solid #ddd;
	}
	#post-content table.tellist th,
	#post-content table.tellist td {
		border-bottom: 1px solid #ddd;
		padding: 0.5em;
	}
	#post-content table.tellist th {
		width: 80%;
		padding-left: 1em;
	}
	#post-content table.tellist td {
		background-color: #fafafa;
		text-align: center;
		border-left: 0;
	}
}

/* pager
------------------------------------------------------------------------ */
#pager {
	margin-top: 60px;
	text-align: center;
}
#pager .wp-pagenavi {
	display: flex;
	justify-content: center;
}
/* order */
#pager .wp-pagenavi .previouspostslink { order: 1; margin-left: 0; margin-right: 15px; }
#pager .wp-pagenavi a { order: 2; }
#pager .wp-pagenavi span { order: 2; }
#pager .wp-pagenavi .nextpostslink { order: 3; }

#pager .wp-pagenavi span.current {
	background-color: #E75F04;
	border 0;
	color: #fff;
}
#pager .wp-pagenavi a,
#pager .wp-pagenavi span {
	display: inline-block;
	vertical-align: top;
	width: 48px;
	height: 48px;
	line-height: 46px;
	border: 1px solid #ED6103;
	border-radius: 5px;
	padding: 0 0.75em;
	font-weight: bold;
	letter-spacing: 0;
	font-size: 16px;
	-webkit-transition: all 0.1s linear;
	-o-transition: all 0.1s linear;
	transition: all 0.1s linear;
}
#pager .wp-pagenavi a {
	text-decoration: none;
}
#pager .wp-pagenavi a + a,
#pager .wp-pagenavi a + span,
#pager .wp-pagenavi span + a {
	margin-left: 16px;
}
#pager .wp-pagenavi .previouspostslink,
#pager .wp-pagenavi .nextpostslink {
	overflow: hidden;
	text-indent: 200%;
	white-space: nowrap;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 6px;
}
#pager .wp-pagenavi .previouspostslink {
	background-image: url(../images/ico_pager_prev.svg);
}
#pager .wp-pagenavi .nextpostslink {
	background-image: url(../images/ico_pager_next.svg);
}

#pager .wp-pagenavi.has_smaller a.first,
#pager .wp-pagenavi.has_larger a.last {
	position: relative;
}
#pager .wp-pagenavi.has_smaller a.first:before,
#pager .wp-pagenavi.has_larger a.last:before {
	content: '';
	position: absolute;
	top: 0;
	width: 12px;
	height: 100%;
	background-image: url(../images/ico_pager_dotted.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 12px;
}
#pager .wp-pagenavi.has_smaller a.first {
	margin-right: 16px;
}
#pager .wp-pagenavi.has_smaller a.first:before {
	right: -22px;
}
#pager .wp-pagenavi.has_larger a.last {
	margin-left: 32px;
}
#pager .wp-pagenavi.has_larger a.last:before {
	left: -22px;
}

@media screen and (min-width : 851px) {
	#pager .wp-pagenavi a:hover {
		color: #E75F04;
		text-decoration: none;
		background-color: #F5F6F7;
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#pager {
		margin-top: 32px;
	}
	#pager .wp-pagenavi a,
	#pager .wp-pagenavi span {
		width: 32px;
		height: 32px;
		line-height: 32px;
		font-size: 11px;
	}
	#pager .wp-pagenavi a + a,
	#pager .wp-pagenavi a + span,
	#pager .wp-pagenavi span + a {
		margin-left: 8px;
		padding: 0;
	}
	#pager .wp-pagenavi.has_smaller a.first:before,
	#pager .wp-pagenavi.has_larger a.last:before {
		width: 9px;
		background-size: 9px;
	}
	#pager .wp-pagenavi.has_smaller a.first {
		margin-right: 20px;
	}
	#pager .wp-pagenavi.has_smaller a.first:before {
		right: -20px;
	}
	#pager .wp-pagenavi.has_larger a.last {
		margin-left: 28px;
	}
	#pager .wp-pagenavi.has_larger a.last:before {
		left: -20px;
	}

}
@media screen and (max-width : 378px) {}


/* nav sub (footer sub menu)
------------------------------------------------------------------------ */
#subNav {
	padding: 0;
	margin: 30px auto 0 auto;
}
#subNav h2 {
	margin: 80px 0 56px;
	padding: 56px 0 0 0;
	font-size: 24px;
	/*border-top: 40px solid #F5F6F7;*/
}
#sec-title + #subNav {
	margin-top: 0;
}
#sec-title + #subNav h2:nth-of-type(1) {
	border-top: 0;
	margin-top: 0;
	padding-top: 2em;
}
#subNav ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
}
#subNav ul li {
	padding: 0;
	margin: 0;
}
#subNav ul li a {
	display: block;
	width: 100%;
	border: 1px solid #D2D2D2;
	border-radius: 8px;
	color: #3e3e3e;
	text-decoration: none;
}
#subNav ul li h3 {
	padding: 0 12px 0 0;
	margin: 0 0 24px 0;
	color: #ED6103;
	font-size: 18px;
	line-height: 1.6;
	background-image: url(../images/btn_more_arrow.svg);
	background-repeat: no-repeat;
	background-position: right center;
}
#subNav ul li p {
	border-top: 1px solid #d2d2d2;
	padding: 20px 0 0 0;
	margin: 0;
}

.ir-groupplan #subNav ul li {
	margin-left: 0;
}

/* hover */
@media screen and (min-width : 851px) {
	#subNav ul {
		display: flex;
		flex-wrap: wrap;
		margin-top: -14px;
		margin-left: -14px;
		margin-bottom: -14px;
		width: calc(100% + 28px);
		max-width: calc(100% + 28px);
	}
	#subNav ul li {
		display: flex;
		width: calc((100% - 84px) / 3);
		margin: 14px;
		padding: 0;
	}
	body.safari #subNav ul li,
	body.msie #subNav ul li,
	body.edge #subNav ul li {
		width: calc((100% - 86px) / 3);
	}
	#subNav ul li.sp {
		display: none;
	}
	#subNav ul li > a {
		padding: 24px;
		padding-bottom: 0;
	}
	#subNav ul li a:hover {
		color: #ED6103;
		border-color: #ED6103;
	}
	#subNav ul li a p {
		margin-bottom: 24px;
		font-size: 12px;
		-webkit-transition: all 0.1s linear;
		-o-transition: all 0.1s linear;
		transition: all 0.1s linear;
	}
	#subNav ul li a:hover p {
		color: #3e3e3e;
		border-color: #ED6103;
	}
}

/* animation */
#subNav ul li a,
#subNav ul li div.txt {
	-webkit-transition: all 0.05s linear 0s;
	-o-transition: all 0.05s linear 0s;
	transition: all 0.05s linear 0s;
}
#subNav ul li .txt:before {
	-webkit-transition: all 0.1s ease-out 0s;
	-o-transition: all 0.1s ease-out 0s;
	transition: all 0.1s ease-out 0s;
}

@media screen and (min-width : 851px) {}
@media screen and (max-width :1109px) {}
@media screen and (max-width : 850px) {
	#subNav {
		display: block;
		margin-top: 0;
		margin-bottom: 0;
		padding: 0;
		width: 100%;
	}
	#sec-title + #subNav {
		border-top-width: 14px;
	}
	#subNav > div.inner + div.inner {
		margin-top: 2em;
	}
	#subNav ul li.sp {
		display: none;
	}
	#subNav h2 {
		width: calc(100% + 48px);
		margin: 64px 0 0 -24px;
		padding: 28px 24px;
		font-size: 20px;
		text-align: center;
	}
	#subNav ul + h2 {
		margin-top: 2em;
		padding-top: 1em;
		border-top: 34px solid #F5F6F7;
	}
	#subNav ul {
		padding-top: 10px;
	}
	#subNav ul li {
		margin-top: 16px;
	}
	#subNav ul li:nth-child(1) {
		margin-top: 0;
	}
	#subNav ul li.sp + li:nth-child(2) {
		margin-top: 0;
	}
	#subNav ul li > a {
		padding: 24px;
		padding-bottom: 0;
	}
	#subNav ul li h3 {
		font-size: 18px;
		margin-bottom: 24px;
	}
	#subNav ul li p {
		margin-top: 24px;
		margin-bottom: 24px;
		font-size: 12px;
		padding-top: 14px;
	}
}
@media screen and (max-width : 378px) {}

/* bread
------------------------------------------------------------------- */
#breadcrumb {
	margin-top: 120px;
	font-size: 12px;
	color: #353535;
	border-bottom: 1px solid #E8E8E8;
	letter-spacing: 0.05em;
}
#imgNav + #breadcrumb {
	margin-top: 0;
}
#breadcrumb div.inner {
	padding: 18px 50px;
	width: 1187px;
}
#breadcrumb ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
#breadcrumb ul li {
	position: relative;
	display: inline-block;
	color: #353535;
	padding-right: 2em;
	margin: 0;
}
#breadcrumb ul li:before {
	position: absolute;
	display: block;
	content: '/';
	top: 1px;
	right: 6px;
	color: #626262;
}
#breadcrumb ul li:last-child {
	padding-right: 0;
}
#breadcrumb ul li:last-child:before {
	display: none;
}
#breadcrumb a {
	position: relative;
	color: #353535;
	text-decoration: none;
}
#breadcrumb a:before,
#breadcrumb a:after{
	position: absolute;
	top: 1.4em;
	content: "";
	display: inline-block;
	width: 0;
	height: 1px; 
	-ms-filter: "alpha(opacity=0)";
	filter: alpha(opacity=0);
	opacity: 0;
	background: #ed6103;
	-webkit-transition: all .2s ease-in-out 0s;
	-o-transition: all .2s ease-in-out 0s;
	transition: all .2s ease-in-out 0s;
}
#breadcrumb a:before {
	left: 50%;
}
#breadcrumb a:after {
	right: 50%;
}
#breadcrumb a:hover {
	color: #ed6103;
}
#breadcrumb a:hover:before,
#breadcrumb a:hover:after{
	width: 50%;
	-ms-filter: "alpha(opacity=100)";
	filter: alpha(opacity=100);
	opacity: 1;
}
#breadcrumb a,
#breadcrumb ul li {
	/*font-weight: bold;*/
}

@media screen and (max-width :1109px) {}
@media screen and (max-width : 850px) {
	#breadcrumb {
		margin-top: 104px;
		font-size: 13px;
		border-top: 1px solid #E8E8E8;
	}
	#breadcrumb div.inner {
		padding: 10px 25px;
	}
	#imgNav + #breadcrumb {
		margin-top: 0;
	}
}

/* footer
------------------------------------------------------------------------ */
#footer {
	padding: 0;
	position: relative;
}
#footer ul {
	list-style-type: none;
	padding: 0;
}
#footer ul li {}
#footer ul li a {
	position: relative;
	display: inline-block;
	padding: 0.2em;
	font-size: 14px;
	font-weight: bold;
	color: #3E3E3E;
	text-decoration: none;
	padding: 0.5em 0.8em;
}

@media screen and (min-width : 851px) {
	#footer ul li a:hover {
		color: #ed6103;
		text-decoration: none;
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#footer {}
	#footer .inner {
		padding: 0 24px;
	}
	#footer ul {
		margin: 30px 0;
	}
	#footer ul li a:hover {
		text-decoration: none;
	}
}
@media screen and (max-width :350px) {
	#footer .inner {
		font-size: 10px;
	}
}

/* footer - fBanner
------------------------------------------------------------------- */
#fBanner .inner {
	padding-top: 32px;
	padding-bottom: 32px;
}
body.ir #fBanner {
	display: none;
}

@media screen and (min-width : 851px) {}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#fBanner .inner {
		padding-top: 32px;
		padding-bottom: 32px;
	}
}
@media screen and (max-width : 378px) {}

/* footer fbanner
------------------------------------------------------------------- */
#footer ul.fbanner {
	margin: 0;
	letter-spacing: -0.4em;
	display: flex;
	justify-content: center;
}
#footer ul.fbanner > li {
	display: block;
	margin: 0;
	padding: 0 32px;
	letter-spacing: 0.08em;
}
#footer ul.fbanner > li > a {
	padding: 0;
	text-align: center;
}
#footer ul.fbanner > li > a img.logo {
	margin-top: 10px;
}
#footer ul.fbanner > li > span {
	display: block;
	font-size: 14px;
	font-weight: bold;
	width: 100%;
	text-align: center;
	letter-spacing: 0.08em;
}
#footer ul.fbanner > li > span + a {
	margin-top: 16px;
}

@media screen and (min-width : 851px) {
	#footer ul.fbanner > li > a span,
	#footer ul.fbanner > li > a img {
		-webkit-transition: all 0.1s linear;
		-o-transition: all 0.1s linear;
		transition: all 0.1s linear;
	}
	#footer ul.fbanner > li > a:hover span {
		color: #ED6103;
	}
	#footer ul.fbanner > li > a:hover img {
		-ms-filter: "alpha(opacity=70)";
		filter: alpha(opacity=70);
		opacity: 0.7;
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#footer ul.fbanner {
		display: block;
	}
	#footer ul.fbanner > li {
		display: block;
		width: 100%;
		padding: 0;
	}
	#footer ul.fbanner > li + li {
		margin-top: 30px;
	}
	#footer ul.fbanner > li > a {
		display: block;
		border: 1px solid #ED6103;
		border-radius: 4px;
		padding: 0 18px;
	}
	#footer ul.fbanner > li > a img.img {
		display: none;
	}
	#footer ul.fbanner > li > a img.logo {
		margin: 0;
		height: 62px;
	}
}
@media screen and (max-width :350px) {
	#footer ul.fbanner span {
		letter-spacing: -0.08em;
	}
}

/* footer - fnav
------------------------------------------------------------------- */
#fNav {
	background-color: #F4F4F4;
}
#fNav .inner {
	padding-top: 50px;
	padding-bottom: 50px;
}

@media screen and (min-width : 851px) {}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#fNav .inner {
		padding-top: 32px;
		padding-bottom: 32px;
	}
}
@media screen and (max-width :350px) {}

/* footer - fsitemap
------------------------------------------------------------------- */
#fNav ul.fsitemap {
	margin: 0 0 50px 0;
	width: 100%;
}
#fNav ul.fsitemap:after {
	content: '';
	display: block;
	clear: both;
}
#fNav ul.fsitemap > li {
	float: left;
	width: 22.81508%;
	margin: 0;
}
#fNav ul.fsitemap > li + li {
	margin-left: 2.94388%;
}
#fNav ul.fsitemap li > a {
	padding: 0;
	font-weight: normal;
}
#fNav ul.fsitemap li > span {
	display: block;
	width: 100%;
	padding-bottom: 0.75em;
	border-bottom: 1px solid #D2D2D2;
}
#fNav ul.fsitemap li > span > a {
	font-size: 16px;
	font-weight: bold;
	padding: 0;
}
#fNav ul.sub-menu {
	margin: 16px 0 0 0;
}
#fNav ul.sub-menu > li + li {
	margin: 0;
}
#fNav ul.sub-menu > li > a {
	padding: 7px 0;
}
#fNav ul.other-menu {
	margin: 0;
}
#fNav ul.other-menu > li {
	margin: 0;
}
#fNav ul.other-menu > li + li {
	margin-top: 36px;
}
#fNav ul.other-menu > li:not([class]) + li:not([class]) {
	margin-top: 36px;
}
#fNav ul.other-menu > li.contact a + a {
	margin-left: 20px;
}

#fNav ul.fsitemap > li.wide {
	width: 48.47405%;
	display: flex;
	flex-wrap: wrap;
}
#fNav ul.fsitemap > li.wide ul.sub-menu {
	width: 50%;
}

body.en #footer ul li a {
	font-weight: normal;
}
body.en #fNav ul.fsitemap li > span > a {
	font-weight: 900;
}

@media screen and (min-width : 851px) {}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#fNav ul.fsitemap {
		display: none;
	}
}
@media screen and (max-width : 378px) {}


/* footer - flinks
------------------------------------------------------------------- */
#fNav ul.flinks {
	width: fit-content;
	float: left;
	margin: 0;
	padding-top: 8px;
	font-size: 0;
}
#fNav ul.flinks li {
	display: inline-block;
	font-size: 10px;
	line-height: 1;
	position: relative;
	margin-bottom: 0;
}
#fNav ul.flinks li:after {
	content: '';
	position: absolute;
	top: 0;
	right: 0.75em;
	width: 1px;
	height: 10px;
	border-right: 1px solid #3e3e3e;
}
#fNav ul.flinks li:last-child:after {
	display: none;
}
#fNav ul.flinks li a {
	padding: 0 1.5em 0 0;
	font-size: 10px;
	font-weight: normal;
}
#fNav ul.flinks li a:first-child {
	padding-left: 0;
}

@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#fNav ul.flinks {
		float: none;
		padding: 0;
	}
	#fNav ul.flinks {
		text-align: center;
		margin: 0 auto;
	}
	#fNav ul.flinks li {
		margin: 0.5em 0;
	}
	#fNav ul.flinks li:after {
		right: 0.5em;
	}
	#fNav ul.flinks li a {
		font-size: 13px;
		padding-right: 1em;
	}
}
@media screen and (max-width :350px) {}

/* footer - fsns
------------------------------------------------------------------- */
#fNav ul.fsns {
	margin: 0;
	display: flex;
	float: right;
}
#fNav ul.fsns:after {
	content: '';
	display: block;
	clear: both;
}
#fNav ul.fsns > li {
	margin: 0;
	padding: 0 8px;
	display: flex;
}
#fNav ul.fsns > li > a {
	padding: 0;
	display: flex;
	align-items: center;
}
#fNav ul.fsns > li > a > img {
	vertical-align: middle;
}

@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#fNav ul.fsns {
		display: none;
	}
}
@media screen and (max-width :350px) {}


/* footer - logo/copyright
------------------------------------------------------------------- */
#fLogo {
	background-color: #ed6103;
	text-align: center;
}
#fLogo .inner {
	padding-top: 30px;
	padding-bottom: 30px;
}
#fLogo .logo {
	float: left;
}
#fLogo p.copyright {
	float: right;
	color: rgba(255,255,255,0.6);
	font-size: 12px;
	text-align: center;
	position: relative;
	margin: 0 auto;
	max-width: 100%;
	padding: 12px 0;
	letter-spacing: 0;
}

@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#fLogo .logo {
		float: none;
		margin-top: 0;
	}
	#fLogo p.copyright {
		float: none;
		font-size: 12px;
		padding: 0;
		margin-top: 20px;
	}
	#fLogo p.copyright:before {
		border-color: #aaa;
	}
}
@media screen and (max-width :350px) {}

/* goTop
------------------------------------------------------------------- */
#goTop {
	display: block;
	position: fixed;
	bottom: 70px;
	right: 70px;
	display: none;
	width: 60px;
	height: 60px;
	line-height: 56px;
	background-color: #FF9576;
	border-radius: 50%;
	text-align: center;
	-webkit-transition: all 0.1s linear;
	-o-transition: all 0.1s linear;
	transition: all 0.1s linear;
	z-index: 1000;
}
#goTop:hover {
	-webkit-transform: rotate(360deg);
	-moz-transform: rotate(360deg);
	-ms-transform: rotate(360deg);
	transform: rotate(360deg);
}
#goTop:hover {
	background-color: rgba(255, 149, 118, 0.7);
}
#goTop img {}

@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#goTop {
		bottom: 10px;
		right: 10px;
		width: 50px;
		height: 50px;
		line-height: 47px;
	}
	#goTop:before {
		top: 22px;
	}
	#goTop.btm {
		position: absolute;
		bottom: initial;
		top: -25px;
	}
	#goTop img {
		width: 20px;
	}
}

/*20150710 ando */

.mobileBr {
	display: none;
	
}
.canvas-holderWrap {
	width: 100%;
	height:auto;
	margin:30px;
}
#canvas-holder {

}
.canvas-holder {
	float: left;
		position: relative;
	width: 346px;
	height: 346px;
}
.canvas-holder__chart {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
	zndex: 2;
}
.canvas-holder__goukei {
	position: absolute;
	top: 0;
	left: 0;
	width: 346px;
	font-size: 17px;
	text-align: center;
	padding-top: 158px;
	color: #000000;
	z-index: 1;
	font-weight: bold;
}
.chartCaption {
	width: 336px;
	height: auto;
	float: left;
	z-index: 2;
	padding-left: 20px;
	padding-top:20px;
}
.chartCaption__inner {
	float: left;
	margin: 10px 0 10px 0;
	width: 296px;
}
.chartCaption__block {
	text-indent: 30px;
	width: 20px;
	height: 20px;
	display: inline-block;
	background: #BD8700;
	margin: 10px 10px 10px 0;
	float: left;
	border-radius: 4px;
}
/*20150821 */
.slide__inner{
	position:relative;
}
.slide__inner__mov{
	position:absolute;
	z-index:0;
}

.movup {
	background-color: rgba(255, 255, 255, 0.4);
	background:url("http://www.next-group.jp/wp-content/uploads/2015/08/movbk3.png");
	height: 100%;
	left: 0;
	opacity: 1;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 99;
}
#movup__youtube_1 {
	background: rgba(0, 0, 0, 0) url("http://www.next-group.jp/wp-content/uploads/2015/08/cp_top_move_11_03.png") no-repeat scroll 0 0;
	background-size:contain;
}
.movup__youtube {
	display: block;
	height: 181px;
	opacity: 0;
	overflow: hidden;
	position: absolute;
	text-indent: -220%;
	vertical-align: bottom;
	width: 317px;
}
/*20151008 */

.ir_hilight {}
.ir_hilight__li {}
.ir_hilight__li:before {
	display: none!important;
}
.ir_hilight__li a{
	text-align:center;
	display:block;
	width:200px;
}

@media screen and (max-width:560px){
	.chartCaption__block {
		margin: 5px 5px 5px 0;
	}
	.canvas-holderWrap {
		margin:0;
		width: 100%;
	}
	.chartCaption__inner {
		margin: 5px 0 5px 0;
		line-height:1.4em;
		text-wrap: suppress;
		width: 246px;
	}
	.canvas-holder {
		width: 276px;
		height: 276px;
		margin:auto;
		float:none;
	}
	.chartCaption{
		width:100%;
		float:none;
	}
	.chartCaption__ul{
		width:100%;
	}
	.canvas-holder__goukei{
		font-size: 12px;
		width: 276px;
		padding-top: 127px;
	}
	.chartCaption {
		width: 276px;
		height: 276px;
	}
}

/* noWrap
------------------------------------------------------------------------ */
.noWrap {
	white-space: nowrap;
}

/* btnLink
------------------------------------------------------------------------ */
.c-btnWrapper {
	overflow: hidden;
	margin-bottom: 60px;
}
.c-btnLink {
	float: right;
	width: 10em;
	text-align: center;
}
.c-btnLink a {
	display: block;
	background: #ED6103;
	border: none;
	border-radius: 5px;
	padding: .5em;
	text-decoration: none;
}
.c-btnLink a:visited {
	color: #fff;
}
.c-btnLink a:hover {
	text-decoration: none;
	filter:alpha(opacity=70);
	-moz-opacity: .7;
	opacity: .7;
}

/* social
------------------------------------------------------------------- */
#main .wp_social_bookmarking_light {
	margin: 0 auto!important;
	max-width: 100%!important;
}

/* Focus Ring
------------------------------------------------------------------- */
.focusRing {
	position: relative;
}
.focusRing__ring::before,
.focusRing__ring::after {
	content: "";
	position: absolute;
	width: 1em;
	height: 1em;
	background: url(../images/l.svg) no-repeat 0 0;
	background-size: 1em;
	opacity: 0;
}
.focusRing.white .focusRing__ring::before,
.focusRing.white .focusRing__ring::after {
	background: url(../images/l_w.svg) no-repeat 0 0;
	background-size: 1em;
}
.focusRing__ring::before { top: 0; right: 0; transform: rotate(180deg); animation: focus-in-tr 0.5s cubic-bezier(.075,.82,.165,1) 0.2s forwards; }
.focusRing__ring::after  { right: 0; bottom: 0; transform: rotate(-90deg); animation: focus-in-br 0.5s cubic-bezier(.075,.82,.165,1) 0.2s forwards; }
.focusRing__ring .focusRing__ring::before { top: 0; left: 0; transform: rotate(90deg); animation: focus-in-tl 0.5s cubic-bezier(.075,.82,.165,1) 0.2s forwards; }
.focusRing__ring .focusRing__ring::after  { left: 0; bottom: 0; transform: rotate(0deg); animation: focus-in-bl 0.5s cubic-bezier(.075,.82,.165,1) 0.2s forwards; }

/* inset */
.focusRing.inset > .focusRing__ring::before,
.focusRing--hover.inset > .focusRing--hover__ring::before {
	top: 20px;
	right: 20px;
}
.focusRing.inset > .focusRing__ring::after,
.focusRing--hover.inset > .focusRing--hover__ring::after {
	bottom: 20px;
	right: 20px
}
.focusRing.inset > .focusRing__ring .focusRing__ring::before,
.focusRing--hover.inset > .focusRing--hover__ring .focusRing--hover__ring::before {
	top: 20px;
	left: 20px
}
.focusRing.inset > .focusRing__ring .focusRing__ring::after,
.focusRing--hover.inset > .focusRing--hover__ring .focusRing--hover__ring::after {
	bottom: 20px;
	left: 20px
}
/* insetfix */
.focusRing.insetfix > .focusRing__ring::before,
.focusRing--hover.insetfix > .focusRing--hover__ring::before {
	top: 20px;
	right: 20px;
}
.focusRing.insetfix > .focusRing__ring::after,
.focusRing--hover.insetfix > .focusRing--hover__ring::after {
	bottom: 20px;
	right: 20px;
}
.focusRing.insetfix > .focusRing__ring .focusRing__ring::before,
.focusRing--hover.insetfix > .focusRing--hover__ring .focusRing--hover__ring::before {
	top: 20px;
	left: 20px;
}
.focusRing.insetfix > .focusRing__ring .focusRing__ring::after,
.focusRing--hover.insetfix > .focusRing--hover__ring .focusRing--hover__ring::after {
	bottom: 20px;
	left: 20px;
}
/* fit */
.focusRing.fit > .focusRing__ring::before,
.focusRing--hover.fit > .focusRing--hover__ring::before {
	top: 0;
	right: 0;
}
.focusRing.fit > .focusRing__ring::after,
.focusRing--hover.fit > .focusRing--hover__ring::after {
	bottom: 0;
	right:0;
}
.focusRing.fit > .focusRing__ring .focusRing__ring::before,
.focusRing--hover.fit > .focusRing--hover__ring .focusRing--hover__ring::before {
	top: 0;
	left: 0;
}
.focusRing.fit > .focusRing__ring .focusRing__ring::after,
.focusRing--hover.fit > .focusRing--hover__ring .focusRing--hover__ring::after {
	bottom: 0;
	left: 0;
}

/* normal */
.focusRing .focusRing__ring,
.focusRing--hover .focusRing--hover__ring {
	/* w:28px = font-size:37px(1.325966850828729*28) */
	font-size: 37px;
}
/* medium */
.focusRing.medium .focusRing__ring,
.focusRing--hover.medium .focusRing--hover__ring {
	font-size: 40px;
}
/* large */
.focusRing.large .focusRing__ring,
.focusRing--hover.large .focusRing--hover__ring {
	/* w:40px = font-size:53px(1.325966850828729*40) */
	font-size: 53px;
}

@media screen and (min-width : 851px) {}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	/* normal */
	.focusRing .focusRing__ring,
	.focusRing--hover .focusRing--hover__ring {
		/* w:19px = font-size:25px(1.325966850828729*19) */
		font-size: 25px;
	}
	/* large */
	.focusRing.large .focusRing__ring,
	.focusRing--hover.large .focusRing--hover__ring {
		/* w:32px = font-size:42px(1.325966850828729*32) */
		font-size: 42px;
	}
}

@keyframes spin-in-tr {
	from { transform: rotate(90deg); opacity: 0; }
	to { transform: rotate(180deg); opacity: 1; }
}
@keyframes spin-in-br {
	from { transform: rotate(0deg); opacity: 0; }
	to { transform: rotate(-90deg); opacity: 1; }
}
@keyframes spin-in-tl {
	from { transform: rotate(0deg); opacity: 0; }
	to { transform: rotate(90deg); opacity: 1; }
}
@keyframes spin-in-bl {
	from { transform: rotate(-90deg); opacity: 0; }
	to { transform: rotate(0deg); opacity: 1; }
}

@keyframes focus-in-tr {
	from { transform: rotate(180deg) translate(-20px, 20px); opacity: 0; }
	to { transform: rotate(180deg) translate(0, 0); opacity: 1; }
}
@keyframes focus-in-br {
	from { transform: rotate(-90deg) translate(-20px, 20px); opacity: 0; }
	to { transform: rotate(-90deg) translate(0, 0); opacity: 1; }
}
@keyframes focus-in-tl {
	from { transform: rotate(90deg) translate(-20px, 20px); opacity: 0; }
	to { transform: rotate(90deg) translate(0, 0); opacity: 1; }
}
@keyframes focus-in-bl {
	from { transform: rotate(0deg) translate(-20px, 20px); opacity: 0; }
	to { transform: rotate(0deg) translate(0, 0); opacity: 1; }
}

.focusRing--hover {
	position: relative;
}
.focusRing--hover__ring::before,
.focusRing--hover__ring::after {
	content: "";
	position: absolute;
	width: 1em;
	height: 1em;
	background: url(../images/l.svg) no-repeat 0 0;
	background-size: 1em;
	-webkit-transition: all 0.5s cubic-bezier(.075,.82,.165,1);
	-o-transition: all 0.5s cubic-bezier(.075,.82,.165,1);
	transition: all 0.5s cubic-bezier(.075,.82,.165,1);
	-ms-filter: "alpha(opacity=0)";
	filter: alpha(opacity=0);
	opacity: 0;
}
.focusRing--hover.white .focusRing--hover__ring::before,
.focusRing--hover.white .focusRing--hover__ring::after {
	background: url(../images/l_w.svg) no-repeat 0 0;
	background-size: 1em;
}
.focusRing--hover__ring::before { top: 0; right: 0; transform: rotate(180deg); }
.focusRing--hover__ring::after  { right: 0; bottom: 0; transform: rotate(-90deg); }
.focusRing--hover__ring .focusRing--hover__ring::before { top: 0; left: 0; transform: rotate(90deg); }
.focusRing--hover__ring .focusRing--hover__ring::after  { left: 0; bottom: 0; transform: rotate(0deg); }

a:hover .focusRing--hover__ring::before,
a:hover .focusRing--hover__ring::after {
	-ms-filter: "alpha(opacity=100)";
	filter: alpha(opacity=100);
	opacity: 1;
}
a.focusRing--hover:hover > .focusRing--hover__ring::before,
a:hover .focusRing--hover > .focusRing--hover__ring::before {
	top: 12px; right: 12px;
}
a.focusRing--hover:hover > .focusRing--hover__ring::after,
a:hover .focusRing--hover > .focusRing--hover__ring::after {
	bottom: 12px; right: 12px;
}
a.focusRing--hover:hover > .focusRing--hover__ring > .focusRing--hover__ring::before,
a:hover .focusRing--hover > .focusRing--hover__ring > .focusRing--hover__ring::before {
	top: 12px; left: 12px;
}
a.focusRing--hover:hover > .focusRing--hover__ring > .focusRing--hover__ring::after,
a:hover .focusRing--hover > .focusRing--hover__ring > .focusRing--hover__ring::after {
	bottom: 12px; left: 12px;
}

@media screen and (max-width:850px) {
	.focusRing--hover__ring {
		display: none;
	}
}

/* focusBox
------------------------------------------------------------------- */
#main div.focusBox {
	width: 880px;
	max-width: 100%;
	margin: 80px auto;
	padding: 40px;
	text-align: center;
}

@media screen and (min-width : 851px) {}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main div.focusBox {
		margin: 40px auto;
		padding: 40px;
	}
}
@media screen and (max-width : 378px) {}

/* .sec-eventWrap
------------------------------------------------------------------- */
.sec-eventWrap .mainImg {
	width: 100%;
}
.sec-eventWrap .eventProgramList {
	padding: 0;
}
.sec-eventWrap .eventProgramList li:before {
	content: none;
}
.sec-eventWrap .eventProgramList li {
	display: -webkit-flex;
	display: flex;
	margin-bottom: 40px;
	padding-bottom: 20px;
	border-bottom: 1px dotted #999;
}
.sec-eventWrap .pageCatchCopy {
	margin: 60px 0 40px;
	padding: 5px 0 !important;
	border: none !important;
	color: #000 !important;
	font-size: 1.8rem !important;
}
.sec-eventWrap .pageBodyCopy {
	margin-bottom: 80px;
	color: #000;
	font-weight: bold;
	line-height: 2.4;
}
.sec-eventWrap .prgWrap {
	width: 600px;
	padding: 0 30px;
}
.sec-eventWrap .prgWrap .prgTitle {
	margin-top: 0;
	font-size: 1.3rem;
	font-weight: bold;
	color: #ed6103;
}
.sec-eventWrap .prgWrap .prgText {
	margin-bottom: 0;
	line-height: 1.4;
	font-weight: bold;
}
.sec-eventWrap .prgWrap .prgText .act {
	font-size: 0.9rem;
	color: #ed6103;
}
.sec-eventWrap .prgWrap .prgText .position {
	font-size: 0.7rem;
	color: #777;
}
.sec-eventWrap .prgWrap .prgName + .prgText {
	margin-top: 20px;
}
.sec-eventWrap .prgWrap .prgName {
	margin-bottom: 6px;
	font-size: 1.1rem;
	font-weight: bold;
	line-height: 1.8;
}
.sec-eventWrap .prgWrap .prgTp {
	margin-bottom: 40px;
	font-size: 0.8rem;
}
.sec-eventWrap .entry {
	padding: 30px 0 50px;
	text-align: center;
}
.sec-eventWrap .entry .btn {
	position: relative;
	top: 0;
	display: inline-block;
	padding: 1.2em 5em;
	line-height: 3.3em;
	border-radius: 3em;
	background-color: #ED6103;
	color: #fff;
	border: 0;
	-webkit-appearance: none;
	margin: 0 auto;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	text-decoration: none;
	box-shadow: 0 3px 0 0 #a15a2b;
	-webkit-transition: all 0.1s linear;
	-o-transition: all 0.1s linear;
	transition: all 0.1s linear;
}
.sec-eventWrap .entry .btn .note {
	display: block;
	padding-top: 10px;
	font-size: 0.7rem;
	font-weight: normal;
}
.sec-eventWrap .entry .btn:hover {
	top: 3px;
	box-shadow: none;
	text-decoration: none;
	color: #fff !important;
}
@media screen and (max-width: 850px) {
	.sec-eventWrap .break {
		display: none;
	}
	.sec-eventWrap .pageCatchCopy {
		margin: 40px 0 20px;
		font-size: 1.4rem !important;
	}
	.sec-eventWrap .pageBodyCopy {
		margin-bottom: 40px;
		font-size: 13px !important;
	}
	.sec-eventWrap .eventProgramList li {
		flex-wrap: wrap;
	}
	.sec-eventWrap .prgWrap {
		width: 82%;
		padding: 0 0 0 15px;
	}
	.sec-eventWrap .prgWrap .prgTitle {
		margin-top: 7px;
	}
	.sec-eventWrap .sign {
		width: 18%;
	}
	.sec-eventWrap .sign img {
		width: 100%;
	}
	.sec-eventWrap .photo {
		margin-top: 20px;
	}
	.sec-eventWrap .photo,
	.sec-eventWrap .photo img {
		width: 100%;
	}
	.sec-eventWrap .entry .btn {
		padding: 1.2em 1.8em;
	}
	.sec-eventWrap .entry .btn:hover {
		top: 0;
		box-shadow: 0 3px 0 0 #a15a2b;
	}
}

/* basic elementes
------------------------------------------------------------------- */
span.break {
	display: block;
}
span.spBreak {
	display: inline;
}
hr {
	border: 0;
}
@media screen and (max-width:850px) {
	span.break {
		display: inline;
	}
	span.spBreak {
		display: block;
	}
}

/* top cm movie
------------------------------------------------------------------- */
div.topmovie iframe {
	width: 100%;
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	div.topmovie iframe {
		height: 300px;
	}
}

/* relatedinfo
------------------------------------------------------------------- */
.relatedinfo {
	width: 840px;
	margin: 0 auto;
	border: 1px solid #b2b2b2;
	padding: 20px;
	max-width: 100%;
	margin-top: 60px;
	font-weight: bold;
}
.relatedinfo p.related_title {
	font-size: 18px;
}
.relatedinfo ul {
	font-size: 16px;
	list-style: none;
	padding-left: 0;
	margin: 0;
}
.relatedinfo ul li {
	display: inline-block;
	margin-right: 16px;
	margin-bottom: 0;
}
.relatedinfo ul li:last-child {
	margin-right: 0;
}

@media screen and (min-width : 851px) {
	.relatedWrap {
		padding-bottom: 100px;
	}
}
@media screen and (max-width : 850px) {
	.relatedinfo {
		width: 100%;
		border: 0;
		padding: 20px;
		background-color: #fff;
		text-align: center;
		padding: 40px 10px;
	}
	.relatedinfo p.related_title {
		margin-bottom: 50px;
		font-size: 20px;
	}
	body.en .relatedinfo ul li {
		display: block;
		margin-right: 0;
	}
}

/* pdf download
------------------------------------------------------------------- */
p.pdflink {
	text-align: right;
}
p.pdflink a{
	background-image: url(../images/icon_pdf.png);
	padding: 3px 0 3px 2em;
	margin: 0 0 5px 0;
	background-repeat: no-repeat;
	background-size: 20px;
	background-position: 0.2em 0;
}

/* body.brand
------------------------------------------------------------------- */
body.brand #post-content {
	margin-top: 80px;
}
body.brand #post-content .inner {
	width: 100%;
	padding: 0;
}
body.brand #main div.focusBox {
	padding-bottom: 56px;
}
body.brand #main div.focusBox > span {
	display: block;
	line-height: 1;
}
body.brand #main div.focusBox span.hd {
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 0.05em;
	margin-bottom: 32px;
	color: #ED6103;
}
body.brand #post-content div.brand_img {
	margin: 80px 0;
}
body.brand #post-content div.brand_lead {
	margin-top: 80px;
	text-align: center;
}
body.brand #post-content div.brand_lead p {
	font-size: 24px;
	line-height: 56px;
	font-weight: bold;
	letter-spacing: 0;
	color: #1F1F1F;
}
body.brand #post-content div.brand_lead p.logo {
	margin-top: 80px;
	margin-bottom: 120px;
	line-height: 1;
}
body.brand #post-content div.brand_lead p.logo img {
	height: 80px;
}

body.brand.en #main div.focusBox span.copy {
	font-size: 48px;
	font-weight: 900;
	color: #ED6103;
	letter-spacing: 0.08em;
}
body.brand.en #post-content div.brand_lead p {
	letter-spacing: 0.02em;
}

@media screen and (min-width : 851px) {}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	body.brand #post-content {
		margin-top: 40px;
	}
	body.brand #post-content .inner {
		width: 100%;
		text-align: left;
	}
	body.brand #main div.focusBox {
		width: calc(100% - 48px);
		margin-left: auto;
		margin-right: auto;
		padding-top: 28px;
		padding-bottom: 32px;
		padding-left: 28px;
		padding-right: 20px;
	}
	body.brand #main div.focusBox span.hd {
		font-size: 18px;
		margin-bottom: 22px;
	}
	body.brand #post-content div.brand_img {
		margin: 40px 0;
	}
	body.brand #post-content div.brand_lead {
		margin-top: 40px;
		padding: 0 32px;
		text-align: left;
	}
	body.brand #post-content div.brand_lead p {
		font-size: 18px;
		line-height: 36px;
		letter-spacing: -0.02em;
	}
	body.brand #post-content div.brand_lead p.logo {
		margin-top: 60px;
		margin-bottom: 80px;
		text-align: center;
	}
	body.brand #post-content div.brand_lead p.logo img {
		height: 56px;
	}
	body.brand.en #main div.focusBox span.hd {
		letter-spacing: 1px;
	}
	body.brand.en #post-content div.brand_lead p {
		letter-spacing: 0;
	}
	body.brand.en #main div.focusBox span.copy {
		font-size: 32px;
		letter-spacing: 0.08em;
		line-height: 48px;
	}
}
@media screen and (max-width : 378px) {}
@media screen and (max-width : 370px) {
	body.brand.en #main div.focusBox span.copy {
		font-size: 28px;
	}
}

/* body.philosophy
------------------------------------------------------------------- */
body.en.philosophy h2,
body.en.philosophy h3 {
	font-weight: 900;
}
body.philosophy #post-content {
	margin-top: 88px;
}
body.philosophy #post-content .inner {
	width: calc(100% - 100px);
	padding-bottom: 80px;
	text-align: center;
}
body.philosophy #post-content h2,
body.philosophy #post-content h3 {
	border: 0;
	padding: 0;
}
body.philosophy #post-content h2 {
	font-size: 32px;
	margin-top: 152px;
	margin-bottom: 2em;
	position: relative;
	letter-spacing: 0.05em;
}
body.philosophy #post-content h2:after {
	content: '';
	position: absolute;
	width: 64px;
	height: 2px;
	background-color: #ED6103;
	left: calc(50% - 32px);
	bottom: -1em;
}
body.philosophy #post-content p {
	font-size: 16px;
	line-height: 2;
}
body.philosophy #post-content p.large {
	font-size: 32px;
	line-height: 1.5;
	letter-spacing: 0;
	font-weight: bold;
	margin-bottom: 24px;
}

body.philosophy #main div.focusBox {
	padding: 40px;
	width: 880px;
}
body.philosophy #main div.focusBox h2 {
	margin-top: 0;
}
body.philosophy #main div.focusBox h3 {
	font-size: 48px;
	margin-top: 66px;
}
body.philosophy #main div.focusBox h3 > span {
	display: block;
}
body.philosophy #main div.focusBox h3 > span.main {
	line-height: 1;
}
body.philosophy #main div.focusBox h3 > span.en {
	font-size: 20px;
	color: #bbb;
	display: block;
	margin-top: 18px;
}
body.philosophy #main div.focusBox p {
	margin-bottom: 0;
}

body.philosophy #post-content ul.slogan {
	width: 1214px;
	max-width: 100%;
	margin: 80px auto 0 auto;
	padding: 0;
	list-style-type: none;
}
body.philosophy #post-content ul.slogan li:before {
	display: none;
}
body.philosophy #post-content ul.slogan li {
	position: relative;
}
body.philosophy #post-content ul.slogan li + li {
	margin-top: 64px;
}
body.philosophy #post-content ul.slogan li div.box {
	width: 536px;
	max-width: 50%;
	padding: 64px;
	background-color: #F4F4F4;
	letter-spacing: 0;
	text-align: left;
}
body.philosophy #post-content ul.slogan li div.box > *:first-child { margin-top: 0; }
body.philosophy #post-content ul.slogan li div.box > *:last-child { margin-bottom: 0; }
body.philosophy #post-content ul.slogan li div.box h3 {
	font-size: 28px;
	color: #ED6103;
	margin-bottom: 28px;
}
body.philosophy #post-content ul.slogan li div.box p {}

body.philosophy #post-content ul.guideline {
	width: 1008px;
	max-width: 100%;
	margin: 40px auto 0 auto;
	padding: 0;
	list-style-type: none;
}
body.philosophy #post-content ul.guideline li {
	margin: 0;
	margin-top: 32px;
	background-color: #F4F4F4;
	padding: 32px;
	padding-top: 6px;
}
body.philosophy #post-content ul.guideline li > *:first-child { margin-top: 0; }
body.philosophy #post-content ul.guideline li > *:last-child { margin-bottom: 0; }
body.philosophy #post-content ul.guideline li + li {}
body.philosophy #post-content ul.guideline li:before {
	display: none;
}
body.philosophy #post-content ul.guideline li h3 {
	height: 173px;
	margin: 0;
	margin-bottom: -12px;
	font-size: 28px;
	line-height: 44px;
	min-height: 81px;
	font-weight: bold;
	color: #ed6103;
	border-left: 0;
	padding: 0;
	text-align: center;
	display: flex;
	align-items: center;
	position: relative;
}
body.philosophy #post-content ul.guideline li h3:before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	line-height: 178px;
	font-size: 144px;
	color: #fff;
	font-weight: 900;
}
body.philosophy #post-content ul.guideline li:nth-child(1) h3:before { content: '1'; }
body.philosophy #post-content ul.guideline li:nth-child(2) h3:before { content: '2'; }
body.philosophy #post-content ul.guideline li:nth-child(3) h3:before { content: '3'; }
body.philosophy #post-content ul.guideline li:nth-child(4) h3:before { content: '4'; }
body.philosophy #post-content ul.guideline li:nth-child(5) h3:before { content: '5'; }
body.philosophy #post-content ul.guideline li:nth-child(6) h3:before { content: '6'; }
body.philosophy #post-content ul.guideline li:nth-child(7) h3:before { content: '7'; }
body.philosophy #post-content ul.guideline li:nth-child(8) h3:before { content: '8'; }

body.philosophy #post-content ul.guideline li h3 > span {
	display: block;
	width: 100%;
	text-align: center;
	z-index: 1;
}
body.philosophy #post-content ul.guideline li p {
	font-size: 16px;
	text-align: left;
}

body.philosophy #post-content ol.act {
	width: 415px;
	max-width: 100%;
	margin: 64px auto 0 auto;
	list-style-type: none;
	padding: 0;
}
body.philosophy #post-content ol.act li {
	margin: 0;
}
body.philosophy #post-content ol.act li + li {
	margin-top: 56px;
}
body.philosophy #post-content ol.act li dl {
	margin: 0;
	background-repeat: no-repeat;
	background-position: left top;
	padding-left: 88px;
	text-align: left;
}
body.philosophy #post-content ol.act li dl dt {
	font-size: 40px;
	letter-spacing: 0;
	font-weight: 900;
	color: #ed6103;
	line-height: 1;
	min-height: 48px;
}
body.philosophy #post-content ol.act li dl dd {
	font-size: 16px;
	font-weight: bold;
	min-height: 21px;
}

body.philosophy.en #post-content .inner > p:not([class]),
body.philosophy.en #post-content .inner > p.large {
	width: 1008px;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
}
body.philosophy.en #post-content ul.guideline li h3 > span {
	font-weight: 900;
	letter-spacing: 0.02em;
}
body.philosophy.en #post-content ul.slogan li div.box h3 {
	letter-spacing: 0.016em;
}

body.philosophy #post-content #imgNav {
	width: calc(100% + 200px);
	margin-left: -100px;
	margin-bottom: -200px;
}

@media screen and (min-width : 851px) {
	body.philosophy #post-content ul.guideline {
		display: flex;
		flex-wrap: wrap;
	}
	body.philosophy #post-content ul.guideline li {
		flex-grow: 1;
		width: calc((100% - 32px) / 2);
		margin-right: 32px;
	}
	body.philosophy #post-content ul.guideline li:nth-child(2n) {
		margin-right: 0;
	}
	body.philosophy #post-content ul.guideline li:nth-child(-n+2) {
		margin-top: 0;
	}
	body.philosophy #post-content ul.slogan li:nth-child(1) div.box {
		margin-top: -40px;
		margin-left: auto;
	}
	body.philosophy #post-content ul.slogan li:nth-child(2) div.box {
		margin-top: -72px;
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	body.philosophy #post-content {
		margin-top: 32px;
	}
	body.philosophy #post-content .inner {
		width: 100%;
		padding: 0 16px;
	}
	body.philosophy #main div.focusBox {
		padding: 32px;
	}
	body.philosophy #post-content h2 {
		font-size: 20px;
		margin-top: 92px;
		margin-bottom: 62px;
	}
	body.philosophy #post-content h2.en {
		line-height: 1.6;
	}
	body.philosophy #post-content h2:after {
		bottom: -31px;
	}
	body.philosophy #main div.focusBox h3 {
		font-size: 40px;
		margin-top: 52px;
	}
	body.philosophy #main div.focusBox h3 > span.en {
		font-size: 18px;

		margin-top: 8px;
	}
	body.philosophy #post-content p:not(.img) {
		font-size: 14px;
		text-align: left;
		letter-spacing: 0;
	}
	body.philosophy #post-content p.large {
		margin-bottom: 20px;
		font-size: 22px;
		text-align: center;
		line-height: 40px;
	}
	body.philosophy #post-content p.large.large_narrowh {
		text-align: center;
		line-height: 1.6;
	}
	body.philosophy #post-content ul.guideline {
		margin-top: 24px;
	}
	body.philosophy #post-content ul.guideline li {
		padding: 24px;
		padding-top: 12px;
		margin: 0;
	}
	body.philosophy #post-content ul.guideline li + li {
		margin-top: 16px;
	}
	body.philosophy #post-content ul.guideline li h3 {
		height: 115px;
		font-size: 22px;
		line-height: 36px;
		margin-bottom: 0;
	}
	body.philosophy #post-content ul.guideline li h3:before {
		line-height: 115px;
		font-size: 96px;
	}
	body.philosophy #post-content ul.guideline li p {
		font-size: 14px;
	}
	body.philosophy #post-content ul.slogan {
		margin-top: 24px;
	}
	body.philosophy #post-content ul.slogan li + li {
		margin-top: 40px;
	}
	body.philosophy #post-content ul.slogan li div.box {
		width: 100%;
		max-width: 100%;
		margin-top: -20px;
		padding: 40px 30px;
	}
	body.philosophy #post-content ul.slogan li div.box h3 {
		font-size: 20px;
		margin-bottom: 24px;
	}
	body.philosophy #post-content ul.slogan li div.box p {
		font-size: 14px;
	}
	body.philosophy #post-content ol.act {
		margin-top: 42px;
	}
	body.philosophy #post-content ol.act li + li {
		margin-top: 40px;
	}
	body.philosophy #post-content ol.act li dl {
		background-size: 48px;
		padding-left: 62px;
	}
	body.philosophy #post-content ol.act li dl dt {
		font-size: 28px;
		min-height: 34px;
	}
	body.philosophy #post-content ol.act li dl dd {
		font-size: 14px;
	}

	body.philosophy #post-content #imgNav {
		width: calc(100% + 32px);
		margin-left: -16px;
		margin-bottom: -104px;
	}
}

@media screen and (max-width : 378px) {}
@media screen and (max-width : 370px) {
	body.philosophy #post-content p.large {
		font-size: 20px;
	}
}

/* csr
------------------------------------------------------------------- */
@media screen and (min-width : 851px) {
	body.csr #post-content div.csrimg {
		display: flex;
	}
	body.csr #post-content div.csrimg > * {
		width: 50%;
	}
	body.csr #post-content div.csrimg > p {
		padding-right: 32px;
	}
	body.csr #post-content div.csrimg > img {
		padding-left: 32px;
		margin-left: 0;
	}
	body.csr #post-content div.csrimg + h2 {
		margin-top: 40px;
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	body.csr #post-content div.csrimg + h2 {
		margin-top: 40px;
	}
}
@media screen and (max-width : 378px) {}


/* ir_message_lead
------------------------------------------------------------------- */
#main div.ir_message_lead {}
#main div.ir_message_lead div.photo img {
	border-radius: 5px;
}
#main div.ir_message_lead div.txt > *:first-child { margin-top: 0; }
#main div.ir_message_lead div.txt > *:last-child { margin-bottom: 0; }

#main div.ir_message_lead div.txt {
	position: relative;
}
#main div.ir_message_lead div.txt p {
	margin-top: 32px;
	margin-bottom: 0;
}
#main div.ir_message_lead div.txt p.signature {
	font-weight: bold;
	padding-top: 32px;
	border-top: 1px solid #D2D2D2;
	text-align: right;
}
body.en #main div.ir_message_lead div.txt p.signature {
	text-align: left;
}

@media screen and (min-width : 851px) {
	#main div.ir_message_lead {
		width: 1008px;
		max-width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
	#main div.ir_message_lead:after {
		content: '';
		display: block;
		clear: both;
	}
	#main div.ir_message_lead div.photo {
		float: left;
		width: 31.74603%;
	}
	#main div.ir_message_lead div.txt {
		float: right;
		width: 61.90476%;
	}
	#main div.ir_message_lead div.txt h2 {
		margin-bottom: 32px;
	}
	#main div.ir_message_lead div.txt p.signature {
		font-size: 1.1em;
	}
}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	#main div.ir_message_lead {
		padding-bottom: 62px;
		margin-bottom: 32px;
	}
	#main div.ir_message_lead div.txt {
		margin-top: 32px;
	}
	#main div.ir_message_lead div.txt h2 {
		font-size: 18px;
	}
	#main div.ir_message_lead div.txt p {
		margin-top: 32px;
	}
}
@media screen and (max-width : 378px) {}

/* ir - ir-financialhighlights
------------------------------------------------------------------- */
body.ir-financialhighlights #post-content iframe {
	width: 100%;
	height: 900px;
}

@media screen and (min-width : 851px) {}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	body.ir-financialhighlights #post-content iframe {
		height: 800px;
	}
}
@media screen and (max-width : 378px) {}

/* ir - stockquote
------------------------------------------------------------------- */
body.stockquote #post-content iframe {
	width: 100%;
	height: 900px;
}

@media screen and (min-width : 851px) {}
@media screen and (max-width : 1109px) {}
@media screen and (max-width : 850px) {
	body.stockquote #post-content iframe {
		height: 800px;
	}
}
@media screen and (max-width : 378px) {}

/* others
------------------------------------------------------------------- */
#main #shihanki {
	display: none;
}
@media screen and (max-width :1109px) {
	.mobileBr {
		display: block;
	}
}
@media screen and (max-width : 850px) {}

header:before,
header:after,
#searchBox div.inner form::before,
#searchBox div.inner form::after,
#main:before,
#main:after,
#main #breadcrumb ul:before,
#main #breadcrumb ul:after,
.inner:before,
.inner:after,
.clear:before,
.clear:after,
.clearfix:before,
.clearfix:after,
.clf:before,
.clf:after {
	display: table;
	content: " ";
}
header:after,
#searchBox div.inner form::after,
#main:after,
#main #breadcrumb ul:after,
.inner:after,
.clear:after,
.clearfix:before,
.clf:after {
	clear: both;
}