@charset "UTF-8";
/* =======================================

	ContentsElements

======================================= */

/*-----------------------------------------
	ELEMENTS
-----------------------------------------*/
/* -- MARGIN -- */
#main_contents,
#main_contents section {
	padding: 0 0 40px;
}

#main_contents section:last-of-type {
	padding: 0;
}

#main_contents h2,
#main_contents h3,
#main_contents p,
#main_contents ul,
#main_contents ol,
#main_contents table {
	margin: 0 0 40px;
}

#main_contents h4 {
	margin: 0 0 30px;
}

#main_contents ul p,
#main_contents ol p,
#main_contents table p,
#main_contents dl p {
	margin: 0 0 20px;
}

#main_contents ul p:last-child,
#main_contents ol p:last-child,
#main_contents table p:last-child,
#main_contents dl p:last-child {
	margin: 0;
}

@media only screen and (max-width: 768px) {
	/* -- MARGIN -- */
	#main_contents,
	#main_contents section {
		padding: 0 0 20px;
	}
	#main_contents section:last-of-type {
		padding: 0;
	}
	#main_contents h2,
	#main_contents h3,
	#main_contents p,
	#main_contents ul,
	#main_contents ol,
	#main_contents table {
		margin: 0 0 20px;
	}
	#main_contents h4 {
		margin: 0 0 15px;
	}
	#main_contents ul p,
	#main_contents ol p,
	#main_contents table p,
	#main_contents dl p {
		margin: 0 0 10px;
	}
}

/*	title	*/
main h2 {
	padding: 20px 0 0;
	position: relative;
}

main h2:before {
	content: "";
	width: 60px;
	height: 2px;
	display: block;
	background-image: -moz-linear-gradient( -45deg, #002d78 1%, #85c5ee 100%);
	background-image: -webkit-linear-gradient( -45deg, #002d78 1%, #85c5ee 100%);
	background-image: -ms-linear-gradient( -45deg, #002d78 1%, #85c5ee 100%);
	position: absolute;
	top: 0;
	left: 0;
}

main h2.txt_center:before {
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	position: absolute;
	top: 0;
	left: 50%;
}

main h3 {
	padding: 0 0 0 30px;
	position: relative;
}
main .numbered_title2 {
	padding: 0 0 0 40px;
}

main h3:before {
	content: "";
	width: 15px;
	height: 2px;
	display: block;
	background: #85c5ee;
	position: absolute;
	top: 0.8em;
	left: 0;
}

main .num {
	width: 1.5em;
	height: 1.5em;
	margin: -0.4em 0.8em 0 0;
	padding: 0 0 0 0.1em;
	display: inline-block;
	color: #ffffff;
	font-size: 1em;
	line-height: 1.6em;
	text-align: center;
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
	background-image: -moz-linear-gradient( -30deg, #3d94cb 1%, #85c5ee 100%);
	background-image: -webkit-linear-gradient( -30deg, #3d94cb 1%, #85c5ee 100%);
	background-image: -ms-linear-gradient( -30deg, #3d94cb 1%, #85c5ee 100%);
	border-radius: 50%;
	position: absolute;
	top: 0.4em;
	left: 0;
}

main h4 {
	padding: 0 0 15px;
	position: relative;
}

main h4:after {
	content: "";
	width: 100px;
	height: 1px;
	display: block;
	background: #85c5ee;
	position: absolute;
	bottom: 0;
	left: 0;
}
main h5 {
	color:#85c5ee;
}

.materiality_title {
	display: flex;
}

.materiality_sub_title {
	position: inherit;
	padding: inherit;
	margin-left: 15px;
}

#main_contents h3.title_number {
	width: 140px;
	padding: 5px;
	margin-right: 15px;
	color: #fff;
	background-color: #002d78;
	font-size: 1em;
	text-align: center;
	position: inherit;
}


@media only screen and (max-width: 768px) {
	.materiality_title {
		display: block;
	}
	#main_contents h3.title_number {
		width: 140px;
		padding: 5px;
		color: #fff;
		background-color: #002d78;
		font-size: 1em;
		text-align: center;
		margin-bottom: 10px;
	}
	.materiality_sub_title {
		font-size: 1.3em;
		margin: 10px 0 20px;
	}
}



/*	text decoration	*/
main .txt_center,
main .align-c {text-align: center;}
main .txt_right,
main .align-r {text-align: right;}
main .txt_left,
main .align-l {text-align: left;}

main .note,
main .attention,
main .error {
	margin-left: 1em;
	display: inline-block;
	text-indent: -1em;
	line-height: 1.6;
	font-size: 0.9em;
}

main .note:before,
main .attention:before,
main .error:before {
	content: "※";
}

main .note,
main .sign {color: #727171;}
main .attention {color: #f24820;}
main .error {color: #f24820;}
main .point {color: #f24820;}

main .text_large {font-size: 1.375em;}

main .sign {text-align: right;}
main .sign .sign_date {display: block; margin-bottom: 15px;}

/*	link	*/
main p a,
main span a,
main li a,
main table a,
main dl a,
main .agreement_area a {
	color: #002d78;
	padding: 0 0 0 1.5em;
	position: relative;
	display: inline-block;
}

main p a:before,
main span a:before,
main li a:before,
main table a:before,
main dl a:before,
main .agreement_area a:before {
	font-family: 'tandc';
	content: "\e902";
	position: absolute;
	top: 0;
	left: 0.3em;
}

main p a[target="_blank"]:before,
main span a[target="_blank"]:before,
main li a[target="_blank"]:before,
main table a[target="_blank"]:before,
main dl a[target="_blank"]:before {
	content: "\e905";
}

a.mail:before,
a.anchor:before,
a.ddl:before {
	font-family: 'tandc';
	margin: 0 0.3em 0 0;
}

a.mail:before {
	content: "\e90f"!important;
}

a.anchor:before {
	content: "\e900"!important;
}

a.ddl:before {
	content: "\e908"!important;
}

a.pdf {
	padding: 0 0 0 28px;
	position: relative;
}

a.pdf:before {
	content: ""!important;
	width: 1.3em;
	height: 1.3em;
	display: inline-block;
	background: transparent url('/img/common/icon_pdf_s.png') left center no-repeat;
	background-size: auto 1.3em;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	position: absolute;
	top: 50%;
}

/*	btn	*/
main .btn {
	margin: 0.5em 0 0 0;
	line-height: 1;
}

/*	table scroll	*/
.tbl_scroll,
.tblScroll {
	overflow-x: auto;
}

/*	list	*/
#main_contents ul li,
#main_contents ol li {
	margin-bottom: 30px;
	position: relative;
}

#main_contents ul li {
	padding: 0 0 0 15px;
}

#main_contents ul li:last-of-type {
	margin: 0;
}

#main_contents ul li:before {
	content: "";
	width: 10px;
	height: 10px;
	border: 3px solid #85c5ee;
	border-radius: 50%;
	position: absolute;
	top: 0.45em;
	left: 0;
}

#main_contents ol {
	counter-reset: my-counter;
	list-style: none;
}

#main_contents ol li {
	margin-left: 1.6em;
}

#main_contents ol li:before {
	height: 20px;
	width: 20px;
	margin: 0.2em 0 0 -25px;
	padding-left: 2px;
	font-family: Roboto;
	font-weight: 300;
	display: block;
	float: left;
	color: #fff;
	font-size: 75%;
	line-height: 20px;
	text-align: center;
	border-radius: 50%;
	background: #85c5ee;
	border: none;
	content: counter(my-counter);
	counter-increment: my-counter;
	transform: rotate(0deg);
	-webkit-transform: rotate(0deg);
	-o-transform: rotate(0deg);
}
#main_contents .list_style_num {
	height: 20px;
	width: 20px;
	margin: 0 2px 4px;
	vertical-align: middle;
	font-family: Roboto;
	font-weight: 300;
	display: inline-block;
	color: #fff;
	font-size: 75%;
	line-height: 20px;
	text-align: center;
	border-radius: 50%;
	background: #85c5ee;
	border: none;
	transform: rotate(0deg);
	-webkit-transform: rotate(0deg);
	-o-transform: rotate(0deg);
}
#main_contents ol.roman {
	list-style: lower-roman;
}

#main_contents ol li {
	margin-left: 1.6em;
}

#main_contents ol.roman li:before {
	content: none;
}

#main_contents ul.link_list li {
	padding: 0;
}

#main_contents ul.link_list li:before {
	display: none;
}

#main_contents ul.link_list li ul {
	padding-bottom: 1em;
}

#main_contents ul ul,
#main_contents ol ol {
	padding: 1.5em 0 0 1em;
	font-size: 0.9em;
}

/*	table	*/
#main_contents table {
	width: 100%;
}

#main_contents table th,
#main_contents table td {
	padding: 1em;
	vertical-align: middle;
	border-bottom: 1px solid #ffffff;
	border-right: 1px solid #ffffff;
}

#main_contents table tr > *:last-child {
	border-right: none;
}

#main_contents table th {
	width: 20%;
	background: #9dd1f1;
}

#main_contents table td {
	background: #f5f5f5;
}

#main_contents table td.tyuki_2020 {
	background: #85c5ee;
}

#main_contents table *:not(thead) tr:nth-of-type(2n) th {
	background: #85c5ee;
}

#main_contents table tr:nth-of-type(2n) td {
	background: #eaeaea;
}

#main_contents table thead th,
#main_contents table thead td {
	color: #ffffff;
	background: #002d78;
	border-bottom: 1px solid #ffffff;
	border-right: 1px solid #ffffff;
}

#main_contents table.strip {
	table-layout: fixed;
}

#main_contents table.strip td,
#main_contents table.strip th {
	text-align: center;
}

#main_contents table.strip td:nth-child(even) {
	background: #d6d6d6;
}

#main_contents table thead tr > *:last-child {
	border-right: none;
}

#main_contents table .txt_center {
	text-align: center;
}

#main_contents table ul,
#main_contents table ol {
	margin-bottom: 0;
}

#main_contents table ul li,
#main_contents table ol li {
	margin-bottom: 15px;
}

#main_contents table ul li:last-of-type,
#main_contents table ol li:last-of-type {
	margin-bottom: 0;
}

@media only screen and (max-width: 1180px) {
	#main_contents table th {
		width: 30%;
	}
}

@media only screen and (max-width: 768px) {
	#main_contents table {
		font-size: 0.9em;
	}
	#main_contents table th {
		width: auto;
	}
	#main_contents table th,
	#main_contents table td {
		padding: 0.7em;
	}
	#main_contents table tbody tr th,
	#main_contents table tbody tr:nth-of-type(2n) th {
		background: #85c5ee;
	}
	#main_contents table tr td,
	#main_contents table tr:nth-of-type(2n) td {
		background: #f5f5f5;
	}
	#main_contents table thead th,
	#main_contents table thead td {
		background: #002d78;
	}
	#main_contents table.sp_block th,
	#main_contents table.sp_block td {
		width: 100%;
		display: block;
		border-bottom: none;
	}
	#main_contents table.sp_block td {
		border-bottom: 2px solid #ffffff;
	}
	#main_contents ol li:before {
		padding-left: 0;
	}
}

.most_important {
	color: #f24820;
}

/*	dl	*/
#main_contents .definition_list {
	margin: 0 0 40px;
}

#main_contents .definition_list dl {
	width: 100%;
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
}

#main_contents .definition_list dl dt,
#main_contents .definition_list dl dd {
	padding: 20px 0;
}

#main_contents .definition_list dl dt {
	width: 20%;
	padding-right: 20px;
	position: relative;
	border-top: 1px solid #002d78;
}

#main_contents .definition_list dl dd {
	flex: 1;
	padding-left: 20px;
	border-top: 1px solid #e2e2e2;
}

#main_contents .definition_list dl ul,
#main_contents .definition_list dl ol {
	margin-bottom: 20px;
}

#main_contents .definition_list dl ul li,
#main_contents .definition_list dl ol li {
	margin-bottom: 10px;
}

#main_contents .definition_list dl ul li:last-of-type,
#main_contents .definition_list dl ol li:last-of-type {
	margin-bottom: 0;
}

#main_contents .definition_list dl dd > *:last-child {
	margin-bottom: 0;
}

@media only screen and (max-width: 768px) {
	#main_contents .definition_list {
		margin: 0 0 20px;
	}
	#main_contents .definition_list dl {
		display: block;
	}
	#main_contents .definition_list dl dt,
	#main_contents .definition_list dl dd {
		padding: 0;
	}
	#main_contents .definition_list dl dt {
		width: 100%;
		padding: 1em 0 0.5em;
		position: relative;
		border-top: 1px solid #e2e2e2;
		font-weight: bold;
	}
	#main_contents .definition_list dl dt:before {
		content: "";
		width: 3em;
		height: 1px;
		display: block;
		background: #002d78;
		position: absolute;
		top: -1px;
		left: 0;
	}
	#main_contents .definition_list dl dd {
		width: auto;
		max-width: 100%;
		padding: 0 0 1em;
		border-top: none;
		font-size: 0.9em;
	}
}




.materiality_dd {
	line-height: 2.2;
	margin-bottom: 45px;
}

.materiality_dt {
	font-size: 1.3em;
	margin-bottom: 25px;
	padding: 0 0 0 30px;
	position: relative;
}

.materiality_dt:before {
	content: "";
	width: 15px;
	height: 2px;
	display: block;
	background: #85c5ee;
	position: absolute;
	top: 0.5em;
	left: 0;
}

@media only screen and (max-width: 768px) {
	dd.materiality_dd {
		line-height: 1.8;
		margin-bottom: 45px;
	}
	dt.materiality_dt {
		font-size: 1.1em;
		line-height: 1.8;
		margin-bottom: 20px;
		padding: 0 0 0 30px;
		position: relative;
	}
	.materiality_dd {
		line-height: 1.8em;
	}
	.materiality_dt:before {
		content: "";
		width: 15px;
		height: 2px;
		display: block;
		background: #85c5ee;
		position: absolute;
		top: 0.75em;
		left: 0;
	}
}

/*	FAQ	*/
#main_contents .faq_list {
	margin: 0 0 40px;
	border-top: 1px solid #e2e2e2;
}

#main_contents .faq_list dl {
	width: 100%;
	line-height: 1.6;
	border-bottom: 1px solid #e2e2e2;
}

#main_contents .faq_list dl dt,
#main_contents .faq_list dl dd {
	position: relative;
	padding: 1.5em 60px;
}

#main_contents .faq_list dl dt {
	display: block;
	font-size: 1.125em;
	cursor: pointer;
}

#main_contents .faq_list dl dd {
	padding: 0 60px 1.5em;
	display: none;
}

#main_contents .faq_list dl dt:before,
#main_contents .faq_list dl dd:before {
	width: 38px;
	height: 38px;
	margin: 0 0.8em 0 0;
	display: inline-block;
	color: #ffffff;
	text-align: center;
	line-height: 38px;
	font-size: 18px;
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
	border-radius: 50%;
	position: absolute;
	top: 1.1em;
	left: 0;
}

#main_contents .faq_list dl dt:before {
	content: "Q";
	background-image: -moz-linear-gradient( -30deg, #002d78 1%, #85c5ee 100%);
	background-image: -webkit-linear-gradient( -30deg, #002d78 1%, #85c5ee 100%);
	background-image: -ms-linear-gradient( -30deg, #002d78 1%, #85c5ee 100%);
}

#main_contents .faq_list dl dd:before {
	content: "A";
	top: 0;
	background-image: -moz-linear-gradient( -30deg, rgb(114,113,113) 0%, rgb(176,176,176) 100%);
	background-image: -webkit-linear-gradient( -30deg, rgb(114,113,113) 0%, rgb(176,176,176) 100%);
	background-image: -ms-linear-gradient( -30deg, rgb(114,113,113) 0%, rgb(176,176,176) 100%);
}

#main_contents .faq_list dl dt > span {
	color: #002d78;
	font-size: 1em;
	position: absolute;
	top: 1.5em;
	right: 0;
}

#main_contents .faq_list dl dt > span:before {
	font-family: 'tandc';
	content: "\e914";
}

#main_contents .faq_list dl dt.switch > span:before {
	content: "\e912";
	color: #7B7B7B;
}

@media only screen and (max-width: 768px) {
	#main_contents .faq_list {
		margin: 0 0 20px;
	}
	#main_contents .faq_list dl dt,
	#main_contents .faq_list dl dd {
		position: relative;
		padding: 1em 1.4rem 1em 2.6rem;
	}
	#main_contents .faq_list dl dt:before,
	#main_contents .faq_list dl dd:before {
		width: 2rem;
		height: 2rem;
		line-height: 2rem;
		font-size: 1rem;
		top: 1.3em;
	}
	#main_contents .faq_list dl dd:before {
		top: 0.3em;
	}
	#main_contents .faq_list dl dd {
		padding: 0 1.4rem 1em 2.6rem;
	}
	#main_contents .faq_list dl dt > span {
		font-size: 1.2rem;
		top: 1.2em;
	}
}

/*	point	*/
#main_contents .point_field {
	padding: 40px;
	margin: 0 0 40px;
	background: #f5f5f5;
}

#main_contents .point_field > * {
	margin: 0 0 20px;
}

#main_contents .point_field > *:last-child {
	margin-bottom: 0;
}

#main_contents .point_field ul,
#main_contents .point_field ol {
	margin-bottom: 0;
}

#main_contents .point_field ul li:last-of-type,
#main_contents .point_field ol li:last-of-type {
	margin-bottom: 20px;
}

@media only screen and (max-width: 768px) {
	#main_contents .point_field {
		margin: 0 auto 20px;
	}
	#main_contents .point_field > *,
	#main_contents .point_field > *:last-child,
	#main_contents .point_field > *:first-child {
		margin: 0 0 15px;
	}
}


/*	hr	*/
#main_contents hr {
	width: 100%;
	height: 0;
	padding: 40px 0 0;
	margin: 0 0 80px;
	border: none;
	border-bottom: 1px #d6d6d6 solid;
}

@media only screen and (max-width: 768px) {
	#main_contents hr {
		padding: 20px 0 0;
		margin: 0 0 40px;
	}
}


/*	img	*/
#main_contents figure img {
	width: auto;
	max-width: 100%;
	vertical-align: bottom;
}

#main_contents figure {
	margin-bottom: 30px;
}

#main_contents figure.img_center {
	text-align: center;
}

#main_contents figure.img_left {
	margin-right: 30px;
	float: left;
}

#main_contents figure.img_right {
	margin-left: 30px;
	float: right;
}

#main_contents td figure:last-of-type,
#main_contents li figure:last-of-type,
#main_contents dd figure:last-of-type {
	margin-bottom: 0;
}

#main_contents figure figcaption {
	width: 100%;
	padding: 1em 0 0;
	color: #727171;
	line-height: 1.4;
	font-size: 0.875em;
	text-align: center;
}
#main_contents figure figcaption.text-left {
	width: 100%;
	padding: 1em 0 0;
	color: #727171;
	line-height: 1.4;
	font-size: 0.875em;
	text-align: left;
}

#main_contents figure.border img {
	border: 1px solid #d6d6d6;
}

#main_contents figure.multi_child {
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
}

#main_contents figure.img_center.multi_child {
	justify-content: center;
	-ms-justify-content : center;
	-webkit-justify-content: center;
}

#main_contents figure.child_2 img {
	max-width: calc((100% - 20px) / 2);
	margin-right: 20px;
	display: block;
}

#main_contents figure.child_2 img:last-of-type {
	margin-right: 0;
}

#main_contents .clm_2.img_privacy {
	justify-content: center
}
#main_contents .clm_2.img_privacy figure {
	width: 40%;
}

.sustainability_page_img {
	width: 100%;
	margin: 0 0 60px;
}

.img_center {
	text-align: center;
	width: auto;
	max-width: 100%;
}

@media only screen and (max-width: 768px) {
	#main_contents figure {
		margin-bottom: 20px;
	}
	#main_contents figure img,
	#main_contents figure.middle img {
		max-width: 100%;
	}
	#main_contents figure.img_left,
	#main_contents figure.img_right {
		margin-right: auto;
		margin-left: auto;
		float: none;
		text-align: center;
	}
	#main_contents figure.img_left.sp_float,
	#main_contents figure.img_right.sp_float {
		max-width: 50%;
	}
	#main_contents figure.img_left.sp_float {
		margin-right: 20px;
		float: left;
	}
	#main_contents figure.img_right.sp_float {
		margin-left: 20px;
		float: right;
	}
	#main_contents .clm_2.img_privacy {
		display: flex;
	}
	#main_contents .clm_2.img_privacy figure {
		width: 48.4%;
		margin-right: 3.2%;
	}
	#main_contents .clm_2.img_privacy figure:nth-of-type(2n) {
		margin-right: 0;
	}
	figure.materiality_sdgs_icon {
		display: flex;
		margin: 0;
		width: 100%;
	}
	.sustainability_page_img {
		width: 100%;
		margin: 0 0 20px;
	}
}

/*	.page_nav	*/
nav.page_nav {
	width: 100%;
	margin: 0 auto 40px;
	position: relative;
	text-align: center;
}

nav.page_nav a,
nav.page_nav span.current {
	padding: 1em;
	margin: 0 0.2em;
	display: inline-block;
	overflow: hidden;
	color: #002d78;
	line-height: 1;
}

nav.page_nav a:before {
	display: none;
}

nav.page_nav .prev_nav,
nav.page_nav .next_nav {
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
	position: absolute;
	top: 0;
}

nav.page_nav .prev_nav {
	left: 0;
}

nav.page_nav .next_nav {
	right: 0;
}

nav.page_nav .prev_nav a,
nav.page_nav .next_nav a {
	margin: 0;
	padding: 1em 0.5em;
}

nav.page_nav .prev_nav .first {
	padding: 1em 0.5em 1em 0;
}

nav.page_nav .next_nav a.last {
	padding: 1em 0 1em 0.5em;
}

nav.page_nav .num_nav {
	padding: 0 10em;
}

nav.page_nav .num_nav a,
nav.page_nav span.current {
	min-width: 3em;
	text-align: center;
	border: 1px solid #002d78;
	border-radius: 50%;
}

nav.page_nav span.current {
	background: #ffddb4;
}

/*	:hover	*/
nav.page_nav .num_nav a {
	transition: all 0.2s ease;
}

@media only screen and (min-width: 769px) {
	body.pc_view nav.page_nav .num_nav a:hover {
		color: #ffffff;
		background: #002d78;
	}
}

@media only screen and (max-width: 768px) {
	nav.page_nav {
		margin: 0 auto 20px;
		padding: 0.5em 0 0;
		display: block;
	}
	nav.page_nav a,
	nav.page_nav span.current {
		padding: 0.5em;
	}
	nav.page_nav .prev_nav a,
	nav.page_nav .next_nav a {
		padding: 0.5em;
	}
	nav.page_nav .prev_nav .first {
		padding: 0.5em 0.5em 0.5em 0;
	}
	nav.page_nav .next_nav a.last {
		padding: 0.5em 0 0.5em 0.5em;
	}
	nav.page_nav .num_nav {
		padding: 2em 0 0;
	}
	nav.page_nav .num_nav a,
	nav.page_nav span.current {
		min-width: 2em;
	}
}

/*-----------------------------------------
	page_header
-----------------------------------------*/
#page_header {
	height: 180px;
	margin: 0 30px 20px;
	position: relative;
	overflow: hidden;
	background: transparent url('/img/common/title_bg.jpg') center right no-repeat;
	background-size: 80% auto;
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	align-items: flex-end;
	-ms-flex-align: flex-end;
	-webkit-box-align: flex-end;
	-webkit-align-items: flex-end;
}

#page_header h1 {
	min-width: 320px;
	margin-left: 4%;
	margin-left: calc(8% - 30px);
	padding: 60px 60px 0 0;
	position: relative;
	display: inline-block;
	line-height: 1;
	background: #ffffff;
	z-index: 2;
}

#page_header h1 span:nth-of-type(1) {
	margin: 0 0 20px;
	display: block;
	text-transform: uppercase;
}

#page_header h1 span:nth-of-type(2) {
	display: block;
	color: #7B7B7B;
	font-size: 14px;
}

.index_page #page_header {
	height: 31vw;
}

#ir.index_page #page_header {
	height: 180px;
}

.index_page #page_header h1 span:nth-of-type(1),
.single_page #page_header h1 span:nth-of-type(1) {
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
}

.index_page #page_header h1 span:nth-of-type(1) {
	font-size: 1.4em;
}

#company #page_header {background-image: url('/img/company/title_bg.jpg');}
#csr #page_header {background-image: url('/img/sustainability/title_bg.jpg');}
#business #page_header {background-image: url('/img/business/title_bg.jpg');}
#ir #page_header {background-image: url('/img/ir/title_bg.jpg');}
#recruit #page_header {background-image: url('/img/recruit/title_bg.jpg');}

@media only screen and (max-width: 1400px) {
#page_header h1 {margin-left: 2%;}
}

@media only screen and (max-width: 1300px) {
#page_header h1 {margin-left: 0;}
}

@media only screen and (max-width: 768px) {
	#page_header {
		height: auto;
		margin: 0 6% 6vw;
		background-size: 90% auto;
		display: block;
	}
	#page_header h1 {
		min-width: auto;
		margin: 1em 2em 0 0;
		padding: 0.6em 1em 0 0;
		display: inline-block;
		line-height: 1.2;
		font-size: 1.4em;
	}
	#page_header h1 span:nth-of-type(1) {
		margin: 0 0 10px;
	}
	#page_header h1 span:nth-of-type(2) {
		font-size: 12px;
	}
	.index_page #page_header {
		height: auto;
	}
	#ir.index_page #page_header {
		height: auto;
	}
	.index_page #page_header h1 {
		margin: 3em 2em 0 0;
		padding: 0.8em 1em 0 0;
	}
	.index_page #page_header h1 span:nth-of-type(1) {
		margin: 0 0 10px;
	}
}

/*-----------------------------------------
	breadcrumbs
-----------------------------------------*/
#breadcrumbs {
	display: block;
	margin-bottom: 60px;
	font-size: 0.875em;
}

#breadcrumbs a,
#breadcrumbs ol li,
#breadcrumbs ol li:before {color: #7b7b7b;}

#breadcrumbs ol {
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	justify-content: flex-end;
	-ms-justify-content : flex-end;
	-webkit-justify-content: flex-end;
}

#breadcrumbs ol li {
	list-style-type: none;
	position: relative;
}

#breadcrumbs ol li:before {
	content: "";
	width: 10px;
	height: 1px;
	display: block;
	background: #e2e2e2;
	position: absolute;
	top: 0.8em;
	left: 20px;
}

#breadcrumbs ol li:first-child:before {
	font-family: 'tandc';
	content: "\e90c";
	width: auto;
	height: auto;
	display: inline-block;
	background: transparent;
	position: relative;
	top: 0;
	left: 0;
}

#breadcrumbs ol li a,
#breadcrumbs ol li > span {
	padding: 0 0 0 50px;
	display: inline-block;
}

#breadcrumbs ol li:first-child a {
	padding: 0;
}

#breadcrumbs ol li:last-child a {
	color: #000000;
}

@media only screen and (max-width: 768px) {
	#breadcrumbs {display: none;}
}

/*-----------------------------------------
	contents_nav
-----------------------------------------*/
#contents_nav {
	display: block;
	padding-top: 60px;
	margin-bottom: 40px;
	border-top: 3px double #002d78;
}

#contents_nav ul {
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
}

#contents_nav nav > ul > li {
	width: 40%;
	width: calc((100% - 40px) / 2);
	margin: 0 40px 30px 0;
}

#contents_nav nav > ul > li:nth-of-type(2n) {
	margin-right: 0;
}

#contents_nav ul li a {
	display: block;
	transition: all 0.2s ease-out;
}

#contents_nav ul li a[target="_blank"]:after {
	font-family: 'tandc';
	content: "\e905";
	padding: 0 0 0 0.3em;
}

#contents_nav nav > ul > li > a {
	padding: 0 0 0 20px;
	position: relative;
}

#contents_nav nav > ul > li > a:before {
	content: "";
	width: 6px;
	height: 2px;
	display: block;
	background-image: -moz-linear-gradient( -45deg, #002d78 1%, #85c5ee 100%);
	background-image: -webkit-linear-gradient( -45deg, #002d78 1%, #85c5ee 100%);
	background-image: -ms-linear-gradient( -45deg, #002d78 1%, #85c5ee 100%);
	position: absolute;
	top: 0.6em;
	left: 0;
	transition: all 0.2s ease-out;
}

#contents_nav nav > ul > li.layer {
	width: 100%;
	margin: 0 0 30px;
}

#contents_nav nav > ul ul {
	margin: 20px 0 0 20px;
	border-left: 1px solid #e2e2e2;
}

#contents_nav nav > ul ul li {
	width: 25%;
	text-align: center;
	font-size: 0.813em;
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
}

#contents_nav nav > ul ul li a {
	width: 100%;
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	align-items: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	justify-content: center;
	-ms-justify-content : center;
	-webkit-justify-content: center;
	margin: -1px 0 0 0;
	position: relative;
	padding: 1.2em;
	color: #7B7B7B;
	border-top: 1px solid #e2e2e2;
	border-bottom: 1px solid #e2e2e2;
	border-right: 1px solid #e2e2e2;
}

/*	:hover	*/
@media only screen and (min-width: 769px) {
	body.pc_view #contents_nav nav > ul > li > a:hover {
		color: #002d78;
	}

	body.pc_view #contents_nav nav > ul > li > a:hover:before {
		width: 12px;
	}

	body.pc_view #contents_nav nav > ul ul li a:hover {
		border: 1px solid #002d78;
		color: #002d78;
		z-index: 100;
	}
}

@media only screen and (max-width: 768px) {
	#contents_nav {
		padding-top: 30px;
		margin-bottom: 30px;
	}
	#contents_nav ul {
		display: block;
	}
	#contents_nav nav > ul > li,
	#contents_nav nav > ul > li:nth-of-type(2n) {
		width: 100%;
		margin: 0 0 10px 0;
	}
	#contents_nav nav > ul > li > a:before {
		font-family: 'tandc';
		content: "\e902";
		width: auto;
		height: auto;
		font-size: 0.9em;
		color: #002d78;
		background: transparent;
		top: 0.2em;
	}
	#contents_nav nav > ul > li.layer {
		margin: 0 0 20px;
	}
	#contents_nav nav > ul ul {
		margin: 20px 0 0 20px;
		border-left: none;
	}
	#contents_nav nav > ul ul li {
		width: 100%;
		display: block;
		text-align: left;
	}
	#contents_nav nav > ul ul li a {
		margin: 0;
		padding: 0 0 10px 15px;
		display: block;
		border-top: none;
		border-bottom: none;
		border-right: none;
	}
	#contents_nav nav > ul ul li a:before {
		content: "";
		width: 8px;
		height: 1px;
		margin: 0 0.5em 0 0;
		display: inline-block;
		background: #002d78;
		position: absolute;
		top: 0.6em;
		left: 0;
	}
}

/*-----------------------------------------
	samelayer_nav
-----------------------------------------*/
#container .samelayer_nav {
	padding: 60px 0 20px;
	display: block;
	border-top: 1px solid #e2e2e2;
}
#container .samelayer_nav.no_border {
	border-top: none;
}

.index_page #container .samelayer_nav {
	padding: 80px 0 40px;
}

#container .samelayer_nav ul {
	margin: 0;
}

#container .samelayer_nav ul li,
#container .samelayer_nav ul li:last-of-type {
	padding: 0;
	margin-bottom: 3vw;
}

#container .samelayer_nav ul li:before {
	display: none;
}

#container .samelayer_nav ul li a {
	width: 100%;
	height: 100%;
	padding: 30px;
	position: relative;
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	align-items: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	color: #000000;
	font-size: 0.875em;
	border: 1px solid #e2e2e2;
	transition: all 0.2s ease-out;
}

#container .samelayer_nav ul li a:before {
	display: none;
}

#container .samelayer_nav ul li > a > span {
	width: 100%;
	display: block;
}

#container .samelayer_nav ul li > a > span:before {
	content: "";
	width: 10px;
	height: 2px;
	display: block;
	background-image: -moz-linear-gradient( -45deg, #002d78 1%, #85c5ee 100%);
	background-image: -webkit-linear-gradient( -45deg, #002d78 1%, #85c5ee 100%);
	background-image: -ms-linear-gradient( -45deg, #002d78 1%, #85c5ee 100%);
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	position: absolute;
	top: 50%;
	left: 0;
	transition: all 0.2s ease-out;
}

#container .samelayer_nav ul li.type_icon a {
	text-align: center;
	flex-direction: column;
	-ms-flex-direction : column;
	-webkit-flex-direction: column;
}

#container .samelayer_nav ul li.type_icon > a > span:before {
	display: none;
}

#container .samelayer_nav ul li > a > p {
	width: 100%;
	margin: 0;
	padding: 0 30px 20px;
	line-height: 1.8;
	font-size: 0.875em;
}

#container .samelayer_nav li .icon {
	width: 120px;
	height: 120px;
	margin: 0 0 30px;
	background-image: -moz-linear-gradient( -45deg, #002d78 1%, #85c5ee 100%);
	background-image: -webkit-linear-gradient( -45deg, #002d78 1%, #85c5ee 100%);
	background-image: -ms-linear-gradient( -45deg, #002d78 1%, #85c5ee 100%);
	background-color: #002d78;
	border-radius: 50%;
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	justify-content: center;
	-webkit-justify-content: center;
	-ms-justify-content: center;
	align-items: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	transition: all 0.2s ease-out;
}

#container .samelayer_nav li .icon img {
	width: 50%;
	height: auto;
}

#container .samelayer_nav ul li.type_thumb {
	border: 1px solid #e2e2e2;
}

#container .samelayer_nav ul li.type_thumb a {
	height: auto;
	padding: 0;
	text-align: left;
	align-items: start;
	-ms-flex-align: start;
	-webkit-box-align: start;
	-webkit-align-items: start;
	flex-direction: column;
	-ms-flex-direction : column;
	-webkit-flex-direction: column;
	border: none;
}

#container .samelayer_nav ul li .thumb {
	width: 100%;
	overflow: hidden;
}

#container .samelayer_nav ul li .thumb img {
	width: 100%;
	height: auto;
}

#container .samelayer_nav ul li.type_thumb > a > span {
	padding: 20px 30px;
	display: block;
	position: relative;
	font-size: 1.143em;
}

#container .samelayer_nav ul li.type_layer ul {
	padding: 0 30px 20px;
}

#container .samelayer_nav ul li.type_layer ul li {
	padding: 0;
	margin-bottom: 10px;
}

#container .samelayer_nav ul li.type_layer ul li a {
	width: 100%;
	padding: 0 0 0 1.5em;
	display: block;
}

#container .samelayer_nav ul li.type_layer ul li a:before {
	font-family: 'tandc';
	content: "\e902";
	display: block;
	color: #002d78;
	position: absolute;
	top: 0;
	left: 0;
}

#container .samelayer_nav ul.clm_3 li.double {
	flex: 1;
}

#container .samelayer_nav ul.clm_3 li.right_obj {
	margin-right: 0;
}

#container .samelayer_nav ul.clm_3 li.double_fixed_size {
	width: calc(100% - 34.4%);
}

#container .samelayer_nav ul.clm_3 li.right_add_margin {
	margin-right: 3.2%;
}

#container .samelayer_nav ul li a[target="_blank"]:after {
	font-family: 'tandc';
	content: "\e905";
	padding: 0 0 0 0.3em;
}

#container .samelayer_nav ul li.type_icon a:after,
#container .samelayer_nav ul li.type_thumb a:after {
	display: none;
}

#container .samelayer_nav ul li.type_icon a[target="_blank"] > span:after {
	font-family: 'tandc';
	content: "\e905";
	padding: 0 0 0 0.3em;
}

#container .samelayer_nav ul li.type_icon a[target="_blank"].no_icon > span:after {
	content: none;
}

#container .samelayer_nav ul li.type_layer ul li a[target="_blank"]:before {
	content: "\e905";
}

/*	:hover	*/
@media only screen and (min-width: 768px) {
	body.pc_view #container .samelayer_nav ul li a:hover {
		color: #002d78;
		border: 1px solid #002d78;
	}
	body.pc_view #container .samelayer_nav ul li.type_thumb a:hover {
		border: none;
	}
	body.pc_view #container .samelayer_nav ul li > a:hover > span:before {
		width: 16px;
	}
	body.pc_view #container .samelayer_nav li a:hover .icon {
		opacity: 0.7;
	}
}

@media only screen and (max-width: 768px) {
	#container .samelayer_nav,
	.index_page #container .samelayer_nav {
		padding: 30px 0 10px;
	}
	#container .samelayer_nav ul {
		margin: 0 0 20px;
	}
	#container .samelayer_nav ul li,
	#container .samelayer_nav ul li:last-of-type {
		margin-bottom: 10px;
	}
	#container .samelayer_nav ul li a {
		padding: 20px;
	}
	#container .samelayer_nav ul li.type_icon a {
		text-align: left;
		flex-direction: row;
		-ms-flex-direction : row;
		-webkit-flex-direction: row;
	}
	#container .samelayer_nav li > span {flex: 1;}
	#container .samelayer_nav li .icon {
		width: 50px;
		height: 50px;
		margin: 0 10px 0 0;
	}
	#container .samelayer_nav ul li.type_icon > a > span {
		width: calc(100% - 60px);
	}
	#container .samelayer_nav ul li.type_thumb > a > span {
		padding: 20px;
	}
	#container .samelayer_nav ul li.type_layer ul {
		padding: 0 20px 0;
	}

	#container .samelayer_nav ul.clm_3 li.double_fixed_size {
		width: 100%;
	}
	#container .samelayer_nav ul.clm_3 li.right_add_margin {
		margin-right: 0;
	}
}

/*-----------------------------------------
	feature_field
-----------------------------------------*/
.feature_field {
	margin-bottom: 80px;
	padding: 50px 0 0;
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	justify-content: center;
	-webkit-justify-content: center;
	-ms-justify-content: center;
	align-items: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
}

.feature_field figure {
	width: 40%;
	margin: 0;
	position: relative;
}

.feature_field figure:before {
	content: "";
	width: 100%;
	height: 80%;
	display: block;
	background: #e6f3fb;
	position: absolute;
	top: -50px;
	left: -60%;
	z-index: 1;
}

.feature_field figure img {
	width: 100%;
	position: relative;
	z-index: 2;
}

.feature_field .info_field {
	margin: 0 0 0 5%;
	flex: 1;
}

.feature_field .info_field h2 {
	margin-bottom: 20px;
}

.feature_field .info_field p {
	margin-bottom: 20px;
}

.feature_field.nega {
	-ms-flex-flow: row-reverse;
	flex-flow: row-reverse;
}

.feature_field.nega figure:before {
	left: auto;
	right: -60%;
}

.feature_field.nega .info_field {
	margin: 0 40px 0 0;
	flex: 1;
}

@media only screen and (max-width: 768px) {
	.feature_field {
		margin-bottom: 40px;
		padding: 20px 0 0;
		display: block;
	}
	.feature_field figure {
		width: 95%;
		margin: 0 0 30px;
	}
	.feature_field figure:before,
	.feature_field.nega figure:before {
		width: 90%;
		top: -20px;
		left: auto;
		right: -5%;
		z-index: 1;
	}
	.feature_field .info_field,
	.feature_field.nega .info_field {
		margin: 0;
		text-align: center;
	}
	.feature_field .info_field h2 {
		margin-bottom: 10px;
		text-align: left;
	}
}

/*-----------------------------------------
	banner_nav
-----------------------------------------*/
.banner_nav {
	padding: 0 0 20px;
}

.banner_nav ul li {
	margin-bottom: 40px;
}

.banner_nav ul li a {
	padding: 0;
	position: relative;
	color: #000000;
	border: 1px solid #e2e2e2;
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	align-items: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
}

.banner_nav ul li a:before {
	display: none;
}

.banner_nav ul li a:after {
	font-family: 'tandc';
	content: "\e902";
	color: #002d78;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	position: absolute;
	top: 50%;
	right: 0.8em;
}

.banner_nav ul li a[target="_blank"]:after {content: "\e905";}

.banner_nav ul li figure {
	width: 30%;
}

.banner_nav ul li figure img {
	width: 100%;
}
.banner_nav ul li figure img.bg_white {
	border-right: 1px solid #e2e2e2;
}

.banner_nav ul li .link_info {
	flex: 1;
	padding: 0 2em 0 10%;
	font-size: 1.3vw;
}

.banner_nav ul li .link_info span {
	display: block;
	color: #002d78;
	font-size: 0.875em;
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
}

/*	:hover	*/
.banner_nav ul li a {
	transition: all 0.2s ease;
}

@media only screen and (min-width: 769px) {
	body.pc_view .banner_nav ul li a:hover {
		color: #002d78;
		border: 1px solid #002d78;
	}
}

@media only screen and (max-width: 980px) {
	.banner_nav ul li .link_info {
		font-size: 1em;
	}
}

@media only screen and (max-width: 768px) {
	.banner_nav ul li {
		margin-bottom: 10px;
	}
	.banner_nav ul li .link_info {
		padding: 0 2em 0 5%;
	}
}

/* ------------------------------------
	list_XJ
------------------------------------ */
.list_XJ {
	position: relative;
}

.list_XJ .sl_box {
	position: relative;
	width: 240px;
	height: 40px;
	margin-bottom: 30px;
}

.list_XJ .sl_box select {
	position: absolute;
	width: 100%;
	height: 100%;
	color: #7b7b7b;
	font-size: 14px;
	border: 1px solid #e2e2e2;
	background: #fbfbfa;
	-webkit-appearance: menulist-button;
}

/* .list_XJ h2,
.list_XJ h3 {
	margin: 0 0 20px !important;
} */

.list_XJ .txtlink {
	position: absolute;
	top: 0;
	right: 0;
}

.list_XJ .txtlink .btn {
	font-size: 0.75em;
}

@media only screen and (max-width: 720px) {
	.list_XJ .txtlink {
		position: static;
		text-align: right;
	}
	.list_XJ .sl_box {
		width: 100%;
	}
	.list_XJ .sl_box select {
		font-size: 16px;
	}
}

/* ------------------------------------
	filelink_list
------------------------------------ */
#main_contents .filelink_list {
	width: 100%;
	margin: 0 0 40px;
	border-top: 1px solid #e2e2e2;
}

#main_contents .filelink_list li {
	width: 100%;
	padding: 0;
	margin: 0;
	vertical-align: middle;
	border-bottom: 1px solid #e2e2e2;
}

#main_contents .filelink_list li:before {
	display: none;
}

#main_contents .filelink_list li a {
	width: 100%;
	height: 100%;
	padding: 1em 0;
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	font-size: 0.875em;
}

#main_contents .filelink_list li a:before {
	display: none;
}

#main_contents .filelink_list li a:after {
	font-family: 'tandc';
	content: '\e905';
}

#main_contents .filelink_list.filelink_icon_arrow li a:after {
	content: '\e902';
}

/* #main_contents .filelink_list.no_icon li a span.iconPdf {
	width: 6.2em;
	padding: 0;
	background: none;
} */

#main_contents .filelink_list li a span.librarydate {
	padding: 0 2em 0 0;
	color: #000000;
	font-size: 0.875em;
}

#main_contents .filelink_list li a span.ttl {
	color: #002d78;
}
#main_contents .filelink_list li a span.iconPdf {
	width: 8em;
	margin: 0 0 0 auto;
	padding: 0 0 0 1.8em;
	display: inline-block;
	color: #7b7b7b;
	font-size: 0.875em;
	background: transparent url('/img/common/icon_pdf_s.png') left center no-repeat;
	background-size: auto 1.3em;
}

/*	:hover	*/
#main_contents .filelink_list li a {
	transition: all 0.2s ease-out;
}
@media only screen and (min-width: 769px) {
	body.pc_view #main_contents .filelink_list li a:hover {
		text-decoration: none;
		background: #e6f3fb;
	}
}

@media only screen and (max-width: 768px) {
	#main_contents .filelink_list li a {
		padding: 15px 2em 15px 0;
		display: block;
	}
	#main_contents .filelink_list li a:after {
		position: absolute;
		-webkit-transform: translate(0, -50%);
		transform: translate(0, -50%);
		position: absolute;
		top: 50%;
		right: 0;
	}
	#main_contents .filelink_list li a span.librarydate {
		display: block;
	}
}

/*-----------------------------------------
	#business
-----------------------------------------*/
#business .business_sec > section {
	padding-bottom: 80px;
}

#business .business_sec .feature_field {
	margin-bottom: 20px;
}

#business .business_sec .affiliated_company {
	text-align: center;
	border: 1px solid #85c5ee;
}

#business .business_sec .affiliated_company h3 {
	margin: 0 auto;
	padding: 0.5em 0;
	text-align: center;
	font-size: 1em;
	background: #85c5ee;
	color: #ffffff;
}

#business .business_sec .affiliated_company h3:before {
	display: none;
}

#business .business_sec .affiliated_company ul {
	margin: 0;
	padding: 10px 5em 0;
	justify-content: center;
	-ms-justify-content : center;
	-webkit-justify-content: center;
}

#business .business_sec .affiliated_company li {
	margin-bottom: 10px;
	padding: 0;
}

#business .business_sec .affiliated_company li a {
	padding: 0;
}

#business .business_sec .affiliated_company li img {
	width: 100%;
}

#business .business_sec .affiliated_company li.business_ss img {
	opacity: 1.0;
}

#business .business_sec .affiliated_company li:before,
#business .business_sec .affiliated_company a:before {
	display: none;
}
#business #xjgroupList li::before {
	display: none;
}

@media only screen and (max-width: 720px) {
#business .business_sec .affiliated_company ul {
	padding: 10px 1em 0;
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
}
#business .business_sec .affiliated_company li,
#business .business_sec .affiliated_company li:nth-of-type(3n) {
	width: 49.5%;
	margin-right: 1%;
}
#business .business_sec .affiliated_company li:nth-of-type(2n) {
	margin-right: 0;
}
}

/*-----------------------------------------
	#company
-----------------------------------------*/
/*	message	*/
#main_contents .message_sec {
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
}

#main_contents .message_sec figure {
	order: 2;
	width: 35%;
}

#main_contents .message_sec div {
	order: 1;
	width: 60%;
	margin-right: 5%;
}

@media only screen and (max-width: 768px) {
	#main_contents .message_sec {
		display: block;
	}
	#main_contents .message_sec figure {
		order: unset;
		width: 50%;
		float: right;
		margin-left: 20px;
	}
	#main_contents .message_sec div {
		order: unset;
		width: 100%;
		margin: 0;
	}
}

/*	concept	*/
#main_contents .concept_sec {
	text-align: center;
}

#main_contents .concept_sec .policy_set p,
#main_contents .policy_set .value_way .value_num,
#main_contents .policy_set .value_way h4 {
	font-family: "游明朝", YuMincho, serif;
}

#main_contents .policy_set {
	padding: 20px 0;
}

#main_contents .policy_set h3 {
	margin: 0 auto 20px;
	padding: 0;
}

#main_contents .policy_set h3:before {display: none;}

#main_contents .policy_set h3 span:nth-of-type(1) {
	min-width: 260px;
	margin: 0 0 5px;
	padding: 0.5em 1em;
	display: inline-block;
	color: #ffffff;
	line-height: 1;
	font-size: 0.875em;
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
	background: #002d78 url(/img/company/concept/title_bg.png) center center no-repeat;
}

#main_contents .policy_set h3 span:nth-of-type(2) {
	display: block;
	font-size: 14px;
	color: #002d78;
}

#main_contents .concept_sec .policy_set p {
	text-align: center;
}

#main_contents .concept_sec .policy_set .sub {
	padding: 0 0 20px;
	display: block;
	font-size: 1.3em;
	line-height: 1.5;
}

#main_contents .concept_sec .policy_set .sub.large {
	font-size: 1.7em;
}

#main_contents .concept_sec .policy_set .policy {
	display: block;
}

#main_contents .policy_set .value_way {
	justify-content: center;
	-ms-justify-content : center;
	-webkit-justify-content: center;
}

#main_contents .policy_set .value_way li {
	padding: 1em;
}

#main_contents .policy_set .value_way li:before {
	display: none;
}

#main_contents .policy_set .value_way h4 {
	margin: 0 0 20px;
	padding: 0;
	color: #002d78;
	font-size: 1.5em;
	line-height: 1em;
	text-align: center;
}

#main_contents .policy_set .value_way h4 .value_num {
	display: block;
	font-size: 3.5em;
	line-height: 1em;
}

#main_contents .policy_set .value_way h4:after {display: none;}

#main_contents .policy_set .value_way p {
	font-size: 1em;
	line-height: 1.4;
}

#main_contents .policy_set .value_way .sub {
	padding: 0 0 10px;
	font-size: 1em;
}

@media only screen and (max-width: 768px) {
#main_contents .concept_sec .policy_set p {
	font-size: 1.125em;
}
#main_contents .policy_set {
	padding: 10px 0;
}
#main_contents .policy_set h3 {
	margin: 0 auto 10px;
}
#main_contents .policy_set h3 span:nth-of-type(1) {
	min-width: 220px;
	padding: 0.5em 1em;
}
#main_contents .concept_sec .policy_set .sub {
	padding: 0 0 10px;
	font-size: 0.875em;
}
#main_contents .concept_sec .policy_set .sub.large {
	font-size: 1.1em;
}
#main_contents .policy_set .value_way li {
	padding: 0 0 1.5em;
	margin: 0 0 1.5em;
	border-bottom: 1px dotted #e2e2e2;
}
#main_contents .policy_set .value_way li:last-of-type {
	margin: 0;
}
#main_contents .policy_set .value_way h4 {
	margin: 0 0 10px;
	font-size: 0.875em;
}
#main_contents .policy_set .value_way h4 .value_num {
	font-size: 3em;
}
#main_contents .policy_set .value_way p {
	font-size: 0.875em;
}
}

/*	logo_title	*/
#company .logo_title:before {
	display: none;
}
#company .logo_title img {
	width: 400px;
}

/*	map	*/
#company .map {
	margin: 0 0 40px;
}

@media only screen and (max-width: 768px) {
	#company .logo_title img {
		width: 80%;
	}
	#company .map {
		margin: 0 0 20px;
	}
}

/*	history_list	*/
#company .history_list {
	margin-bottom: 40px;
	padding-left: 40px;
	overflow: hidden;
}

#company .history_list dl {
	padding: 1.5em 0;
	position: relative;
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	border-top: 1px dotted #e2e2e2;
}

#company .history_list dl:before {
	content: '';
	width: 0;
	padding-top: 100%;
	border-left: 1px solid #85c5ee;
	position: absolute;
	top: 0;
	left: -37px;
}

#company .history_list dl:first-of-type:before {
	top: 2.3em;
}

#company .history_list dt,
#company .history_list dd {
	position: relative;
}

#company .history_list dt {
	width: 9em;
	color: #002d78;
}

#company .history_list dt:before {
	content: '';
	display: block;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #85c5ee;
	margin: 0 10px 0 0;
	position: absolute;
	top: 0.5em;
	left: -40px;
}

#company .history_list dd {
	flex: 1;
}

#company .history_list dt span {
	padding: 0 0.3em 0 0;
	font-size: 1.8em;
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
}

@media only screen and (max-width: 768px) {
	#company .history_list {
		margin-bottom: 20px;
		padding-left: 20px;
	}
	#company .history_list dl {
		padding: 1em 0;
		display: block;
	}
	#company .history_list dl:before {
		left: -17px;
	}
	#company .history_list dl:first-of-type:before {
		top: 1.8em;
	}
	#company .history_list dt {
		width: 100%;
		padding: 0 0 0.3em;
	}
	#company .history_list dt:before {
		left: -20px;
	}
	#company .history_list dd {
		width: 100%;
	}
	#company .history_list dt span {
		padding: 0 0.3em 0 0;
		font-size: 1.6em;
		font-family: 'Roboto', sans-serif;
		font-weight: 300;
	}
}

/*	group_list	*/
#company .group_contents .group_logo {
	text-align: center;
}

#company .group_contents h3 {
	padding: 0.5em 1em;
	margin: 0;
	color: #ffffff;
	font-size: 1em;
	text-align: center;
	background: #002d78;
}

#company .group_contents h3:before {
	display: none;
}

#company .group_list {
	margin: 0 0 40px;
}

#company .group_list a,
#company .group_list > div {
	position: relative;
	color: #000000;
	border-bottom: 1px solid #e2e2e2;
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	align-items: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
}

#company .group_list a:after {
	font-family: 'tandc';
	content: "\e905";
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	position: absolute;
	top: 50%;
	right: 0;
}

#company .group_list a.group_ss:after {
	font-family: 'tandc';
	content: "\e905";
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	position: absolute;
	top: 50%;
	right: 0;
	display: none;
}

#company .group_list figure {
	width: 25%;
	margin: 0 20px 0 0;
	position: relative;
}

#company .group_list p {
	margin: 0;
	flex: 1;
	padding-right: 1.5em;
}

#company .group_list p > span {
	display: block;
}

#company .group_list p span.company_description {
	font-size: 0.875em;
	color: #7b7b7b;
}

#company .group_list .translasia figure {
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	align-items: flex-start;
	-ms-flex-align: flex-start;
	-webkit-box-align: flex-start;
	-webkit-align-items: flex-start;
}

#company .group_list .translasia figure img {
	width: 100%;
}

#company .group_list .translasia figure img:nth-of-type(2),
#company .group_list .translasia figure img:nth-of-type(3) {
	width: 48%;
	margin: 0 4% 20px 0;
	border: 1px solid #e2e2e2;
}

#company .group_list .translasia figure img:nth-of-type(3) {
	margin-right: 0;
}

/*	:hover	*/
#company .group_list a,
#company .group_list a p span.company_description {
	transition: all 0.3s ease;
}

@media only screen and (min-width: 769px) {
	body.pc_view#company .group_list a:hover,
	body.pc_view#company .group_list a:hover p span.company_description {
		color: #002d78;
	}
	body.pc_view#company .group_list a.group_ss:hover,
	body.pc_view#company .group_list a.group_ss:hover p span.company_description {
		color: #7b7b7b;
		opacity: 1.0!important;
	}
	body.pc_view a.group_ss:hover img,
	body.pc_view a.group_ss:hover  {
		opacity: 1.0;
	}
}
.group_ss span.company_name{
	color: #000000;
}


@media only screen and (max-width: 768px) {
	#company .group_contents .group_logo img {
		width: 60%;
	}
	#company .group_list {
		margin: 0 0 20px;
	}
	#company .group_list a,
	#company .group_list > div {
		padding: 1em 0;
	}
	#company .group_list h3 {
		font-size: 0.85em;
	}
	#company .group_list p span {
		font-size: 0.875em;
	}
}

/*	company_data	*/
#company .company_data .page_read {
	padding: 0 0 40px;
}

#company .company_data .page_read p {
	width: 80%;
	margin: 0 auto 40px;
}

#company .company_data h2.impression_title span:nth-of-type(1) {
	font-size: 2em;
}

#company .company_data h2.impression_title:after {
	background: #e2e2e2;
}

#company .company_data .data_set {
	margin: 0 0 40px;
}

#company .company_data .data_set h3 {
	padding: 10px;
	font-size: 1.125em;
	text-align: center;
}

#company .company_data .data_set h3:before {
	display: none;
}

#company .company_data .data_set h4 {
	margin: 0 0 15px;
	padding: 0;
}

#company .company_data .data_set h4:after {
	display: none;
}

#company .company_data .data_set .clm_2 {
	align-items: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
}

#company .company_data .data_set .graph_field {
	width: 460px;
}

#company .company_data .data_set .graph_field figure {
	margin: 0;
}

#company .company_data .data_set .graph_field canvas {
	height: 280px!important;
}

#company .company_data .data_set .info_field {
	flex: 1;
}

#company .company_data .data_set .info_field .data_num {
	padding: 0 0 40px;
}

#company .company_data .data_set .info_field .data_num > span {
	margin: 0 10px 0 0;
	font-size: 4.375em;
	font-family: 'Roboto', sans-serif;
	font-weight: 700;
}

#company .company_data .data_set .info_field .data_num > span:before {
	content: "";
	width: 100px;
	height: 1px;
	margin: 0 20px 0 0;
	display: inline-block;
	vertical-align: middle;
}

#company .company_data .data_set .info_field .data_num > span > span {
	font-size: 0.75em;
}

#company .company_data .data_set .info_field p {
	margin: 0;
}

/*color*/
#company .company_data .core_business .data_set h3 {
	color: #036db7;
	background: #e5f0f8;
}
#company .company_data .core_business h2.impression_title span:nth-of-type(1),
#company .company_data .core_business h2.impression_title span:nth-of-type(2),
#company .company_data .core_business .data_set .info_field .data_num span {
	color: #036db7;
}
#company .company_data .core_business .data_set .info_field .data_num span:before {
	background: #036db7;
}

#company .company_data .new_business .data_set h3 {
	color: #02acde;
	background: #edf9fc;
}
#company .company_data .new_business h2.impression_title span:nth-of-type(1),
#company .company_data .new_business h2.impression_title span:nth-of-type(2),
#company .company_data .new_business .data_set .info_field .data_num span {
	color: #4ac3e6;
}
#company .company_data .new_business .data_set .info_field .data_num span:before {
	background: #4ac3e6;
}

@media only screen and (max-width: 768px) {
#company .company_data .page_read {
	padding: 0 0 20px;
}
#company .company_data .page_read p {
	width: 100%;
	margin: 0 auto 20px;
	text-align: left;
}
#company .company_data h2.impression_title span:nth-of-type(1) {
	font-size: 2em;
}
#company .company_data .data_set h3 {
	font-size: 1em;
}
#company .company_data .data_set .graph_field {
	width: 100%;
	overflow: hidden;
}
#company .company_data .data_set .graph_field figure {
	width: 176vw;
	margin-top: -60px;
	margin-left: -44vw;
	margin-bottom: -50px;
	transform: scale(0.6);
}
#company .company_data .data_set .info_field {
	width: 100%;
}
#company .company_data .data_set .info_field .data_num {
	padding: 0 0 20px;
}
#company .company_data .data_set .info_field .data_num > span {
	font-size: 3em;
}
#company .company_data .data_set .info_field .data_num > span:before {
	width: 20px;
	margin: 0 10px 0 0;
}
#company .company_data .data_set .info_field .data_num > span > span {
	font-size: 0.75em;
}
}

/*-----------------------------------------
	#ir
-----------------------------------------*/
#ir main .detail {
	width: 80%;
	margin: 0 auto 40px;
	padding: 40px;
	background: #eef7fa;
	display: block;
	line-height: 2.2;
}
#ir main .status {
	margin: 0 0 10px;
	display: block;
}
#ir main .unit_l {
	display: block;
	margin: 0 0 10px;
	padding: 0 0 0 55px;
	color: #7b7b7b;
}
#ir main .unit_r {
	display: block;
	margin: 0 0 10px;
	text-align: right;
	color: #7b7b7b;
}
#ir main .aline_l {
	text-align: left;
}
#ir main .highcharts-container,
#ir main img {
	margin: 0 auto;
	display: block;
}
#ir main table.xj_chart_table tr .xj_chart_header,
#ir main table.xj_chart_table tr .xj_chart_header_first {
	font-size: 0.875em;
	background: #e6f3fb;
	text-align: center;
	color: #002d78;
}
#ir main table.xj_chart_table td {
	font-size: 0.875em;
	border: 1px solid #e2e2e2;
	background: #ffffff;
	text-align: right;
}
#ir main table.xj_chart_table tr td:last-child {
	background: #f6f7f5;
}
#ir main .vary table.xj_chart_table tr .xj_chart_header_first,
#ir main .vary table.xj_chart_table tr:nth-child(2) .xj_chart_header {
	display: none;
}
#ir main table.xj_chart_table tr:first-child td:last-child {
	background: #d5ecfa;
}
#ir main .single .date .unit_l {
	padding: 0;
}
#ir main .imgCenter {
	text-align: center;
}
#ir main .addCaption {
	display: inline-block;
	position: relative;
}
#ir main .addCaption::before {
	content: "（円）";
	position: absolute;
	top: 0;
	left: -50px;
}
#ir main .addCaption::after {
	content: "（％）";
	position: absolute;
	top: 0;
	right: -50px;
}
#ir main .xj_text {
	line-height: 2.2;
}
#ir main .newsInfo {
	overflow: hidden;
}
#ir main .newsInfo li {
	float: right;
}
#ir main .newsInfo li:before {
	display: none;
}
#ir main .newsInfo .date span {
	margin: 0 20px 0 0;
	display: inline-block;
	color: #000000;
	font-size: 0.875em;
}
#ir main .newsInfo .tag {
	width: 10em;
	margin: 0;
	padding: 0.6em 0;
	display: inline-block;
	color: #002d78;
	text-align: center;
	font-size: 0.85em;
	line-height: 1;
	background: #e6f3fb;
}
#ir main .XJTxtDPDataTblTdHr {
	background: transparent;
}
#ir #main_contents.news_list #tabCategory {
	margin-bottom: 25px;
}
#ir #main_contents.news_list #tabCategory .tabArea {
	margin: 0;
}
#ir #main_contents.news_list #tabCategory .tabArea li {
	padding: 1em;
	margin-bottom: 0;
}
#ir #main_contents.news_list #xjList .contBlock {
	padding: 0 0 0 0;
}
#ir .news_list ul li:before {
	display: none;
}

#main_contents.cg .linkList li {
	padding: 0;
}
#main_contents.cg .linkList li:before {
	display: none;
}
#main_contents.cg .iconPdf {
	padding: 0 0 0 28px;
	position: relative;
}
#main_contents.cg a.iconPdf:before {
	content: ""!important;
	width: 1.3em;
	height: 1.3em;
	display: inline-block;
	background: transparent url(/img/common/icon_pdf_s.png) left center no-repeat;
	background-size: auto 1.3em;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	position: absolute;
	top: 50%;
}

/*	calendar_table	*/
#ir .calendar_table .XJTxtDPDataTblTdDate {
	background: #9dd1f1;
}

#ir .calendar_table .XJTxtDPDataTableTr:nth-of-type(2n) .XJTxtDPDataTblTdDate {
	background: #85c5ee;
}

#ir .calendar_table .XJTxtDPDataTableTr:nth-of-type(2n) .XJTxtDPDataTblTdValue {
	background: #eaeaea;
}

#ir .calendar_table .XJTxtDPDataTblTdHr hr {
	margin: 0 0 40px;
}
#ir #main_contents.news_list #tabCategory .tabArea li {
	font-size: 0.85em;
}

/*	news	*/
#ir .contArea {
	padding: 0 0 40px;
}
#ir .contArea article a {
	width: 100%;
	height: 100%;
	padding: 1em 0;
	position: relative;
	font-size: 0.875em;
	border-bottom: 1px solid #e2e2e2;
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	align-items: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	transition: all 0.2s ease-out;
}
#ir .contArea .date {
	margin: 0 20px 0 0;
	display: inline-block;
	color: #000000;
	font-size: 0.875em;
}
#ir .contArea .tag {
	width: 10em;
	margin: 0 20px 0 0;
	padding: 0.6em 0;
	display: inline-block;
	color: #002d78;
	text-align: center;
	font-size: 0.85em;
	line-height: 1;
	background: #e6f3fb;
}
#ir .contArea h3 {
	flex: 1;
	font-size: 14px;
	margin: 0;
	padding: 0 0 0 30px;
}
#ir .contArea h3::before {
	display: none;
}

#ir h5 {
	margin-bottom: 30px;
}
#ir .tbl_plan_result table {
	min-width: 540px;
}
#ir .tbl_plan_result table span {
	display: inline-block;
}
#ir .tbl_plan_result table thead th {
	background: #002d78;
	text-align: center;
}
#ir .tbl_plan_result table tbody td {
	text-align: center;
	white-space: nowrap;
}
#ir .tbl_plan_target table {
	min-width: 800px;
}
#ir .tbl_plan_target table span {
	display: inline-block;
}
#ir .tbl_plan_target table thead th {
	text-align: center;
	width: 12%;
}
#ir .tbl_plan_target table tbody td {
	text-align: center;
	white-space: nowrap;
}

@media only screen and (max-width: 768px) {
	#ir main .detail {
		width: 100%;
		margin: 0 auto 20px;
		padding: 20px;
		background: #eef7fa;
		display: block;
		line-height: 1.8;
	}
	#ir main .unit_l {
		padding: 0 0 0 0;
	}
	#ir main table.xj_chart_table tr .xj_chart_header,
	#ir main table.xj_chart_table tr .xj_chart_header_first {
		font-size: 10px;
	}
	#ir main table.xj_chart_table td {
		font-size: 9px;
	}
	#ir main .xj_single .date .chart,
	#ir main section > .date ,
	#ir main #main_contents > .date {
		overflow-x: auto;
	}
	#ir main .xj_single .date .chart .xj_chart_table,
	#ir main section > .date table,
	#ir main #main_contents > .date table {
		width: 620px;
	}
	#ir main .addCaption {
		display: inline-block;
		position: relative;
	}
	#ir main .addCaption {
		padding-top: 26px;
	}
	#ir main .addCaption::before {
		left: 0;
	}
	#ir main .addCaption::after {
		right: 0;
	}
	#ir main .xj_text {
		line-height: 1.8;
	}
	#ir .calendar_table .XJTxtDPDataTblTdDate,
	#ir .calendar_table .XJTxtDPDataTblTdValue {
		display: block;
		width: 100%;
	}
	#ir .calendar_table .XJTxtDPDataTblTdDate {
		background: #85c5ee;
	}
	#ir .calendar_table .XJTxtDPDataTableTr:nth-of-type(2n) .XJTxtDPDataTblTdValue {
		background: #f5f5f5;
	}
	#ir .calendar_table .XJTxtDPDataTblTdHr hr {
		margin: 0 0 20px;
	}
	#ir #main_contents.news_list #tabCategory .tabArea li {
		padding: 1em 0;
		flex: auto;
		font-size: 0.6em;
	}
	#ir .contArea {
		padding: 0 0 20px;
	}
	#ir .contArea article a {
		padding: 10px 1em 10px 0;
		display: block;
	}
	#ir .contArea .date {
		margin: 0 1em 0 0;
	}
	#ir .contArea .tag {
		margin: 0;
		padding: 0.3em 0;
		font-size: 0.8em;
	}
	#ir .contArea h3 {
		padding: 5px 0 0;
		display: block;
		font-size: 0.875em;
	}
}

@media only screen and (max-width: 370px) {
	#ir main .date .chart {
		overflow-x: auto;
	}
}

/* xj-newslist */
.xj-newslist, .xj-sel-year {
	visibility: hidden;
}

/* xj-meeting */
#ir #xj-meeting a {
	padding: 0;
}
#ir #xj-meeting a::before {
	content: none;
}
#ir #xj-meeting a::after {
	content: ""!important;
	width: 1.3em;
	height: 1.3em;
	display: inline-block;
	background: transparent url('/img/common/icon_pdf_s.png') left center no-repeat;
	background-size: auto 1.3em;
	vertical-align: middle;
	margin-left: .4em;
}

/*	xj_graph	*/
#main_contents.xj_graph .date {
	margin-bottom: 40px;
}

#main_contents.xj_graph .date h2,
#main_contents.xj_graph .date h3 {
	padding: 0.5em 1em;
	text-align: center;
	font-size: 1em;
	color: #ffffff;
	background: #002d78;
}

#main_contents.xj_graph .date h2:before,
#main_contents.xj_graph .date h3:before {
	display: none;
}

#main_contents.xj_graph .date table {
	margin: 0;
}

#main_contents.xj_graph .date small {
	margin: 10px 0 0;
	display: block;
}

@media only screen and (max-width: 768px) {
	#main_contents.xj_graph .date {
		margin-bottom: 20px;
	}
	#main_contents.xj_graph .date small {
		margin: 5px 0 0;
	}
}

/* latest_ir_wrap */
.latest_ir_wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
	margin-bottom: 40px;
}

.latest_ir_field {
	flex: 1;
}

.latest_ir_field .filelink_list li a {
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	align-items: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
}

.latest_ir_field .filelink_list li a span.ttl {
	flex: 1;
	color: #000 !important;
}

.latest_ir_field .btn_area {
	text-align: left;
	margin: 0;
}

.latest_ir_field .btn_area a.btn {
	margin: 0;
}

.stock_price_field {
	width: 459px;
}

.stock_price_field figure {
	border: 1px solid #E2E2E2;
	margin-bottom: 20px !important;
	padding: 42px 39px 41px 40px;
}

.stock_price_field ul {
	display: flex;
	justify-content: flex-end;
	gap: 0 39px;
	margin-bottom: 0 !important;
}

.stock_price_field ul li {
	font-size: 0.875em;
	padding: 0 !important;
	margin-bottom: 0 !important;
}

.stock_price_field ul li:before {
	content: none !important;
}

.stock_price_field ul li a {
	transition: all 0.2s ease;
}

.stock_price_field ul li a:before {
	content: "\e902";
	font-size: 0.75em;
	top: 4px;
}

/*	:hover	*/
@media only screen and (min-width: 769px) {
	body.pc_view .stock_price_field ul li a:hover {
		opacity: 0.6;
	}
}

@media only screen and (max-width: 768px) {
	.latest_ir_wrap {
		margin-bottom: 20px;
	}

	.latest_ir_field .filelink_list {
		margin: 0 0 20px !important;
	}

	.latest_ir_field .btn_area {
		text-align: center;
	}

	.stock_price_field {
		width: 100%;
	}
}

/* ir_link_field */
.ir_link_field {
	margin: 0 30px 80px;
}

.ir_link_list {
	display: flex;
	flex-wrap: wrap;
}

.ir_link_list li {
	width: calc((100% / 3) - 0.1px);
	aspect-ratio: 213 / 110;
	overflow: hidden;
}

.ir_link_list .emphasis_list {
	width: 50%;
	aspect-ratio: 32 / 15;
}

.ir_link_list li a {
	display: block;
	height: 100%;
	padding: 0;
}

.ir_link_list li a:before {
	width: 30px;
	height: 30px;
	font-size: 0.8125em;
	text-align: center;
	letter-spacing: 0;
	color: #ffffff;
	line-height: 30px;
	border-radius: 50%;
	top: auto;
	left: auto;
	right: 20px;
	bottom: 20px;
	border: 1px solid #ffffff;
	transition: all 0.2s ease-out;
	z-index: 1;
}

.ir_link_list li a:before {
	font-size: 0.6em;
}

.ir_link_list li a[target="_blank"]:before {
	font-size: 0.54em;
}

.ir_link_list li figure {
	width: 100%;
	height: inherit;
	position: relative;
}

.ir_link_list li figure:before {
	content: "";
	width: 100%;
	height: 100%;
	background: rgba(0, 45, 119, 0.5);
	position: absolute;
	top: 0;
	left: 0;
	transition: all 0.2s ease-out;
}

.ir_link_list li figure img {
	height: 100%;
	object-fit: cover;
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	transform-origin: center;
	transition: all 0.2s ease-out;
}

.ir_link_list li a figcaption {
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
    align-items: center;
	font-size: 1.375em;
	font-weight: 400;
	letter-spacing: 0.11em;
	color: #ffffff;
	text-align: center;
	position: relative;
	z-index: 1;
}

.ir_link_list li a .en {
	font-family: 'Roboto', sans-serif;
	font-size: 0.59em;
	font-weight: 400;
	letter-spacing: 0.1em;
}

.ir_link_list .emphasis_list figcaption {
	font-size: 1.75em;
}

.ir_link_list .emphasis_list a .en {
	font-size: 0.5em;
}

/*	:hover	*/
@media only screen and (min-width: 769px) {
	body.pc_view .ir_link_list li a:not([target="_blank"]):hover:before {
		right: 15px;
	}

	body.pc_view .ir_link_list li a:hover figure:before {
		background: rgba(0, 45, 119, 0.2);
	}

	body.pc_view .ir_link_list li a:hover figure img {
		transform: scale(1.1);
		opacity: 1;
	}
}

@media only screen and (max-width: 768px) {
	.ir_link_field {
	    width: calc(100% - 12%);
	    margin: 0 6% 40px;
	}

	.ir_link_list li {
		width: calc(100% / 2);
	}

	.ir_link_list li a:before {
		width: 18px;
    	height: 18px;
		font-size: 0.55em;
		line-height: 18px;
		right: 8px;
		bottom: 6px;
	}

	.ir_link_list li a[target="_blank"]:before {
		font-size: 0.5em;
	}

	.ir_link_list li a figcaption {
		font-size: 1em !important;
	}

	.ir_link_list li a .en {
		display: none;
	}
}

/*	highlight_field	*/
.highlight_field {
	display: flex;
	justify-content: center;
    flex-direction: column;
    margin-left: 30px;
    margin-right: 30px;
	padding: 80px 50px 74px 50px;
	background: #E6F3FB;
	position: relative;
}

.highlight_field:before {
	content: "";
	width: 486px;
	height: 296px;
	background: url(/img/ir/highlight_bg_t.png);
	background-size: contain;
	position: absolute;
	top: 0;
	left: 0;
}

.highlight_field:after {
	content: "";
	width: 378px;
	height: 189px;
	background: url(/img/ir/highlight_bg_b.png);
	background-size: contain;
	position: absolute;
	right: 0;
	bottom: 0;
}

.highlight_field h2.impression_title span:nth-of-type(1) {
	font-size: 1.388888888888889em;
	letter-spacing: 4px;
}

.highlight_list_wrap {
	width: 100%;
    margin-left: auto;
    margin-right: auto;
	position: relative;
	z-index: 1;
}

.highlight_list_wrap time {
	display: block;
	font-size: 0.875em;
	letter-spacing: 0.05em;
	color: #7B7B7B;
	text-align: right;
}

.highlight_list_wrap .btn_wrap {
	text-align: center;
	position: relative;
	top: -6px;
}

.highlight_list_wrap .btn {
	margin: 0;
}

.highlight_list {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
	margin: 0 0 40px;
}

.highlight_list > li {
	width: calc((100% - 120px) / 4);
	padding: 40px 20px 28px;
	background: #fff;
}

.highlight_list > li .highlight_title {
	font-size: 1.0em;
	line-height: 1;
	text-align: center;
	padding: 35px 0 0;
	margin: 0 0 24px;
	position: relative;
}

.highlight_list > li .highlight_title:before {
	content: "" !important;
	width: 23px;
	height: 19px;
	display: inline-block;
	background: transparent url('/img/ir/icon_graph.svg') center center no-repeat;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	position: absolute;
	top: 0;
	left: 50%;
}

.highlight_list > li .highlight_title:before {
	content: none;
}

.highlight_list > li .amount {
	font-size: 0.875em;
	line-height: 1.175;
	text-align: center;
	color: rgba(0, 44, 120, 0.7);
}

.highlight_list > li .amount .numbers {
	font-family: 'Roboto', sans-serif;
	font-size: 5.714285714285714em;
	font-weight: 300;
	color: #002c78;
	padding: 0 9px;
}

/* @media only screen and (max-width: 1400px) {
	.highlight_field {
	     width: calc(100% - 60px);
	}
} */

@media only screen and (max-width: 1300px) {
	.highlight_list {
		gap: 20px;
	}

	.highlight_list > li {
		width: calc((100% - 60px) / 4);
		padding: 40px 10px 28px;
	}
}

@media only screen and (max-width: 1180px) {
	.highlight_list > li .amount .numbers {
		font-size: 4.2em;
		padding: 0 4px;
	}
}

@media only screen and (max-width: 768px) {
	.highlight_field {
		margin-right: 0;
		margin-left: 0;
		padding: 60px 6% 80px;
		background-position: left center;
	}

	.highlight_field h2.impression_title {
		margin-bottom: 30px;
	}

	.highlight_list_wrap .btn_wrap {
		top: 20px;
	}

	.highlight_list {
		gap: 10px;
		margin: 0 0 30px;
	}

	.highlight_list > li {
		width: calc((100% - 10px) / 2);
		padding: 20px 5px 18px;
	}

	.highlight_list > li .highlight_title {
		padding: 30px 0 0;
		margin: 0 0 18px;
	}

	.highlight_list > li .amount .numbers {
		font-size: 3em;
		padding: 0 2px;
	}
}

/*	ir_individual_field	*/
.ir_individual_field {
}

.ir_individual_field .samelayer_nav {
	padding: 0 !important;
	border-top: none !important;
}

/*-----------------------------------------
	#csr
-----------------------------------------*/
#csr .bg_wrap {
	background: #f5f5f5;
	padding: 40px;
}
#csr .bg_wrap.logo_bg {
	background: rgb(241,241,241);	/*sdgsロゴの指定背景色*/
}
#csr .bg_wrap figure:last-child,
#csr .bg_wrap p:last-child {
	margin-bottom: 0;
}

@media only screen and (max-width: 768px) {
	#csr .bg_wrap {
		padding: 5%;
	}
	#csr .bg_wrap figure:last-child {
		margin-bottom: 20px;
	}
	#csr main section > .date  {
		overflow-x: auto;
	}
	#csr main section > .date table {
		width: 620px;
	}
}

/* csr_sec */
#main_contents .csr_sec figure {
	width: 140px;
}
#main_contents .csr_sec figure.img_l {
	width: 450px;
}
#main_contents .csr_sec .float_r {
	float: right;
	margin: 0 0 15px 30px;
}
#main_contents .csr_sec .float_l {
	float: left;
	margin: 0 30px 15px 0;
}
@media only screen and (max-width: 768px) {
	#main_contents .csr_sec figure {
		width: 35%;
	}
	#main_contents .csr_sec figure.img_l {
		width: 100%;
	}
	#main_contents .csr_sec .float_r {
		margin: 0.5em 0 5% 5%;
	}
	#main_contents .csr_sec .float_l {
		margin: 0.5em 5% 5% 0;
	}
}

/* border_field */
#main_contents .border_field {
	border: 1px solid #e2e2e2;
	padding: 40px;
	margin: 0 0 40px;
}
#main_contents .border_field .border_field_ttl {
	padding: 0 20px;
	margin: -60px auto 30px;
	display: table;
	background: #FFF;
}
#main_contents .border_field .border_field_ttl:before {
	content: none;
}
#main_contents .border_field ul {
	margin: 0;
}
#main_contents .border_field ul li {
	margin-bottom: 15px;
}
#main_contents .border_field p:last-child {
	margin: 0;
}

@media only screen and (max-width: 768px) {
	#main_contents .border_field {
		padding: 5%;
		margin: 0 0 20px;
	}
	#main_contents .border_field .border_field_ttl {
		margin: -10% auto 6%;
	}
}

/* philosophy */
.philosophy_system {
	margin: 0 0 40px;
}

.philosophy_system dl {
	position: relative;
	margin-bottom: 80px;
}

.philosophy_system dl::after {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 40px 50px 0 50px;
	border-color: #85c6ee transparent transparent transparent;
	position: absolute;
	left: 50%;
	bottom: -60px;
	margin-left: -50px;
}

.philosophy_system dl:last-of-type {
	margin-bottom: 0;
}

.philosophy_system dl:last-of-type::after {
	content: none;
}

.philosophy_system dt {
	background-image: -moz-linear-gradient( -45deg, #002d78 1%, #85c5ee 100%);
	background-image: -webkit-linear-gradient( -45deg, #002d78 1%, #85c5ee 100%);
	background-image: -ms-linear-gradient( -45deg, #002d78 1%, #85c5ee 100%);
	color: #fff;
	font-weight: bold;
	padding: 1em;
	text-align: center;
}
.philosophy_system dd {
	background: #f5f5f5;
	padding: 30px 30px 1px;
}

@media only screen and (max-width: 768px) {
	.philosophy_system dd {
		padding-bottom: 10px;
	}
}



/* stakeholder */
#csr .stakeholder_data .data_set {
	margin: 0 0 60px;
}
#csr .stakeholder_data .data_set .clm_2 {
	align-items: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
}

#csr .stakeholder_data .data_set .ttl_field {
	width: 160px;
	height: 160px;
	font-size: 1.15em;
	color: #FFF;
	line-height: 1.5;
	text-align: center;
	background: #6770a8;
	border-radius: 50%;
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	justify-content: center;
	-ms-justify-content : center;
	-webkit-justify-content: center;
	align-items: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
}

/* background */
#csr .stakeholder_data .data_set .customer .ttl_field { background: #6770a8; }
#csr .stakeholder_data .data_set .suppliers .ttl_field { background: #b1615a; }
#csr .stakeholder_data .data_set .employee .ttl_field { background: #7c9077; }
#csr .stakeholder_data .data_set .shareholders .ttl_field { background: #6770a8; }
#csr .stakeholder_data .data_set .community .ttl_field { background: #98d6f6; }
#csr .stakeholder_data .data_set .government .ttl_field { background: #7fbfbc; }

/* border-color */
#csr .stakeholder_data .data_set .customer ul li:before { border-color: #6770a8; }
#csr .stakeholder_data .data_set .suppliers ul li:before { border-color: #b1615a; }
#csr .stakeholder_data .data_set .employee ul li:before { border-color: #7c9077; }
#csr .stakeholder_data .data_set .shareholders ul li:before { border-color: #6770a8; }
#csr .stakeholder_data .data_set .community ul li:before { border-color: #98d6f6; }
#csr .stakeholder_data .data_set .government ul li:before { border-color: #7fbfbc; }

#csr .stakeholder_data .data_set .text_field {
	flex: 1;
}
#csr .stakeholder_data .data_set .text_field p {
	margin: 0 0 15px;
}
#csr .stakeholder_data .data_set .text_field strong {
	font-size: 1.125em;
	line-height: 2.2;
	font-weight: normal;
	display: block;
	margin: 0 0 5px;
}
#csr .stakeholder_data .data_set .text_field ul {
	margin-bottom: 0;
}
#csr .stakeholder_data .data_set .text_field ul li {
	margin-bottom: 10px;
}

@media only screen and (max-width: 768px) {
	#csr .stakeholder_data .data_set {
		margin: 0 0 40px;
	}
	#csr .stakeholder_data .data_set .ttl_field {
		width: 120px;
		height: 120px;
		font-size: 1.0em;
		margin: 0 auto 20px;
	}
}

/* accumulation */
#csr .clm_accumulation figure:first-child {
	width: 44.2%;
}
#csr .clm_accumulation figure:nth-child(2) {
	width: 52.6%;
}

@media only screen and (max-width: 768px) {
	#csr .clm_accumulation figure:first-child,
	#csr .clm_accumulation figure:nth-child(2) {
		width: 100%;
	}
}

/* csr_data */
#csr .csr_data .data_set {
	margin: 0 0 50px;
}
#csr .csr_data .bg_wrap .data_set {
	margin-bottom: 0;
}
#csr .csr_data .data_set .img_field {
	width: 450px;
}
#csr .csr_data .data_set .img_field.img_environment {
	width: 140px;
}
#csr .csr_data .data_set .img_field.img_environment img {
	margin-bottom: 20px;
}
#csr .csr_data .data_set .img_field.img_philosophy {
	width: 140px;
}
#csr .csr_data .data_set .img_field.img_philosophy img {
	margin-bottom: 20px;
}
#csr .materiality_process {
	margin-bottom: 80px;
}
#csr .materiality_process .img_field.img_sp_icon {
	width: 140px;
}
#csr .materiality_process .img_field.img_sp_icon img {
	margin-bottom: 20px;
}


#csr .csr_data .data_set .img_field.img_shrink {
	width: 325px;
}
#csr .csr_data .data_set .img_field p {
	margin: 0 0 20px;
}
#csr .csr_data .data_set .img_field figure {
	position: relative;
}
#csr .csr_data .data_set .img_field figure.outside::before {
	content: '社外';
	display: inline-block;
	font-size: 0.875em;
	color: #FFF;
	padding: 4px 10px;
	background: #727171;
	position: absolute;
	top: 10px;
	right: 10px;
	border-radius: 5px;
}
#csr .csr_data .data_set .img_field img {
	width: 140px;
	margin-right: 20px;
}
#csr .csr_data .data_set .img_field img.img_full {
	width: 100%;
}
#csr .csr_data .data_set .text_field {
	flex: 1;
}
#csr .materiality_process .text_field {
	flex: 1;
}
#csr .csr_data .data_set .text_field strong {
	font-size: 1.125em;
	line-height: 2.2;
	font-weight: normal;
	display: block;
	margin: 0 0 5px;
}
#csr .csr_data .data_set .text_field ul {
	margin-bottom: 0;
}
#csr .csr_data .data_set .text_field ul li {
	margin-bottom: 10px;
}
#csr .materiality_process .text_field ul li {
	margin-bottom: 10px;
}

@media only screen and (max-width: 768px) {
	#csr .csr_data .data_set .img_field,
	#csr .csr_data .data_set .img_field.img_sdgs {
		width: 100%;
	}
	#csr .csr_data .data_set .img_field.img_environment {
		margin-left: auto;
		margin-right: auto;
	}
	#csr .csr_data .data_set .img_field.img_environment img {
		width: 100%;
	}
	#csr .csr_data .data_set .img_field.img_shrink {
		width: 100%;
		max-width: 500px;
		margin-right: auto;
		margin-left: auto;
	}
	#csr .csr_data .data_set .img_field img {
		width: 35%;
		margin-right: 5%;
	}
	#csr .csr_data .data_set .img_field.img_philosophy img {
		width: auto;
	}
	/* #csr .data_set .img_field.img_sp_icon .materiality_sdgs_icon, */

	#csr .materiality_process .img_field.img_sp_icon {
		width: 100%;
	}

	#csr .materiality_process .img_field.img_sp_icon .materiality_sdgs_icon {
		justify-content: center;
	}

	#csr .materiality_process .img_field.img_sp_icon img {
		width: calc( ( 100% - 14px ) / 3 );
		margin-right: 7px;
	}
	#csr .materiality_process .img_field.img_sp_icon img:last-child {
		margin-right: 0;
	}


}

/* cg */
/* cg_table_reason */
.cg_table_reason thead th {
	width: 35% !important;
}
.cg_table_reason thead th:first-child,
.cg_table_reason thead th:nth-child(3) {
	width: 15% !important;
}
.cg_table_reason tbody th {
	width: auto !important;
}

/* cg_table_skill */
#main_contents .cg_table_skill thead th {
	width: auto;
}
#main_contents .cg_table_skill thead th:nth-child(n+3) {
	width: 10%;
	font-size: .8em;
	text-align: center;
}
#main_contents .cg_table_skill tbody th .name {
	display: inline-block;
	width: 6.5em;
}
#main_contents .cg_table_skill tbody th .attr {
	display: inline-block;
	font-size: .8em;
	padding: .2em;
	border: 1px solid #fff;
	background: rgba(255,255,255,.5);
	margin: 0 2px;
	padding: 0 .4em;
}

#main_contents .cg_table_skill tbody td {
	text-align: center;
}
#main_contents .cg_table_skill tbody th {
	white-space: nowrap;
}


/* cg_table_reward */
.cg_table_reward thead th {
	text-align: center;
	width: 12% !important;
	background: #002d78 !important;
}
.cg_table_reward tbody td {
	text-align: right;
}

/* cg_table_risk */
.cg_table_risk th {
	text-align: center;
}
.cg_table_risk th,
.cg_table_risk td {
	width: 50% !important;
}

/*-----------------------------------------
	#sitemap
-----------------------------------------*/
#sitemap main nav a {color: #000000;}
#sitemap main nav a:before {color: #002d78;}

#sitemap main nav ul li {
	margin-bottom: 10px;
}

#sitemap main nav > ul > li.single a,
#sitemap main nav > ul > li > dl dt a {
	font-size: 1.125em;
	margin: 0 0 20px;
	padding-bottom: 30px;
	position: relative;
	display: block;
}

#sitemap main nav > ul > li.single a:before,
#sitemap main nav > ul > li > dl dt a:before {
	content: "";
	width: 10px;
	height: 2px;
	display: block;
	background-image: -moz-linear-gradient( -45deg, #002d78 1%, #85c5ee 100%);
	background-image: -webkit-linear-gradient( -45deg, #002d78 1%, #85c5ee 100%);
	background-image: -ms-linear-gradient( -45deg, #002d78 1%, #85c5ee 100%);
	position: absolute;
	top: 0.6em;
	left: 0;
	transition: all 0.2s ease-out;
}

#sitemap main nav > ul > li.single a:after,
#sitemap main nav > ul > li > dl dt a:after {
	content: "";
	width: 100%;
	height: 0;
	display: block;
	border-bottom: 1px solid #e2e2e2;
	position: absolute;
	bottom: 0;
	left: 0;
}

#sitemap main nav > ul > li ul ul li a:before {
	color: #85c5ee;
}

#sitemap main nav ul.sub_nav {
	border-top: 1px #e2e2e2 solid;
	padding-top: 40px;
}

#sitemap main nav ul.sub_nav li {
	margin: 0 2em 0 0;
	display: inline-block;
}

#sitemap main nav ul.sub_nav li a {
	font-size: 1em;
}

/*	:hover	*/
#sitemap main nav a,
#sitemap main nav > ul > li > dl dt a:before {
	transition: all 0.2s ease;
}

@media only screen and (min-width: 769px) {
	body.pc_view#sitemap main nav a:hover {
		color: #002d78;
	}
	body.pc_view#sitemap main nav > ul > li > dl dt a:hover:before {
		width: 16px;
	}
}

@media only screen and (max-width: 768px) {
	#sitemap main nav > ul > li.single a {
		margin: 0 0 20px;
		padding-bottom: 20px;
	}
	#sitemap main nav > ul > li > dl dt a {
		margin: 0 0 10px;
		padding-bottom: 20px;
	}
	#sitemap main nav ul.sub_nav {
		border-top: 1px solid #e2e2e2;
		padding: 30px 0 0;
	}
	#sitemap main nav ul.sub_nav li {
		margin: 0 0 10px;
		display: block;
	}
}

/*-----------------------------------------
	#rules
-----------------------------------------*/
.screen_img_clm {
	display: flex;
	gap: 40px;
}

.screen_img_clm .screen_img {
	max-width: 570px;
}

.screen_img {
	max-width: 888px;
	filter: drop-shadow(0 0 8px rgba(0, 53, 117, 0.16));
}

.screen_img.screen_size_m {
	max-width: 680px;
}

@media only screen and (max-width: 768px) {
	.screen_img_clm {
		flex-direction: column;
		gap: 5px;
	}

	.screen_img_clm .screen_img {
		max-width: 450px;
	}
}

/*-----------------------------------------
	#search
-----------------------------------------*/
/* search_result_head */
#search .search_result_head {
	height: 80px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 60px;
	padding: 10px 30px 10px 60px;
	background: #F5F5F5;
}
#search .search_result_head h1 {
	font-family: 'Roboto', sans-serif;
    font-weight: 300;
    font-size: 2.250em;
}
#search .search_result_head #breadcrumbs {
	margin-bottom: 0;
}

@media only screen and (max-width: 768px) {
	#search .search_result_head {
		height: 40px;
		margin-bottom: 30px;
		padding: 0 6%;
	}
	#search .search_result_head h1 {
		font-size: 1.375em;
		line-height: 1.8;
	}
}

/* search_input_area */
#search .search_input_area {
	max-width: 900px;
	margin-bottom: 40px;
	position: relative;
}

#search .search_input_area .search_input {
	width: 100%;
	padding: 16px 54px 16px 16px;
	display: block;
	font-size: 1em;
	background: #FBFBFA;
	border: 1px solid #E2E2E2;
	border-radius: 5px;
}

#search .search_input_area .search_input::-webkit-input-placeholder {
    color:#999;
}

#search .search_input_area .btn_submit {
	padding: 16px 20px;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}

#search .search_input_area .btn_submit::before {
	font-family: 'tandc';
	content: "\e915";
	color: #002d78;
	font-weight: bold;
	font-size: 1.375em;
}

@media only screen and (max-width: 768px) {
	#search .search_input_area {
		margin-bottom: 20px;
	}
	#search .search_input_area .search_input {
		padding: 10px 40px 10px 10px;
	}
	#search .search_input_area .btn_submit {
		padding: 10px;
	}
}

/* search_option_field */
#search .search_option_field {
	display: flex;
	flex-direction: column;
	gap: 24px;
	border-top: 1px solid #E2E2E2;
	position: relative;
}

#search .search_option_field + .search_option_field {
	margin-top: 40px;
}

#search .search_option_field::before {
	content: '';
	width: 220px;
	height: 1px;
	display: block;
	position: absolute;
	top: -1px;
	left: 0;
	background: #002D78;
}

/* sort_group */
#search .sort_group {
    padding: 0;
    margin: 0;
	position: relative;
}

#search .sort_group ._attributegroup {
	margin: 0;
	padding: 0;
}

#search .sort_group ._group {
	padding: 20px 0;
	font-size: 1em;
	font-weight: 500;
	border-bottom: 1px solid #E2E2E2;
	transition: all 0.3s ease-out;
}

#search .sort_group ._group:before {
	content: "\e914";
	font-family: 'tandc';
	color: #0F2E73;
	font-size: 1.25em;
	display: inline-block;
	vertical-align: text-bottom;
}

#search .sort_group ._attributes {
	height: 0;
	visibility: hidden;
	display: flex;
	flex-wrap: wrap;
	gap: 16px 32px;
	margin-top: 20px;
}

#search .sort_group ._attribute {
	margin: 0;
    white-space: normal;
}

#search .sort_group ._attribute label {
	padding-left: 30px;
	position: relative;
	display: block;
	cursor: pointer;
	line-height: 1.5;
	font-size: 16px;
}

#search .sort_group ._attribute input {
	margin: 0;
	position: absolute;
	top: 3px;
	left: 0;
}

#search .sort_group ._open ._group:before {
	content: "\e912";
}

@media only screen and (max-width: 768px) {
	#search .sort_group ._group {
		padding: 12px 0;
		font-size: 0.875em;
		font-weight: 500;
		border-bottom: 1px solid #E2E2E2;
		transition: all 0.3s ease-out;
	}
	#search .sort_group ._attribute {
		width: 100%;
	}
	#search .sort_group ._attributes {
		gap: 10px;
		margin-top: 10px;
	}
	#search .sort_group ._attribute label {
		font-size: 14px;
	}
	#search .sort_group ._attribute input {
		top: 1px;
	}
}

@media (hover: hover) {
	#search .sort_group ._group:hover {
		opacity: 0.7;
	}
}

/* searchstatus */
#search  .searchstatus {
	margin-top: 40px;
	text-align: right;
	font-size: 0.875em;
	line-height: 1.4;
}

#search  .searchstatus ._searchstatus {
	margin: 0;
}

@media only screen and (max-width: 768px) {
	#search  .searchstatus {
		margin-top: 20px;
		font-size: 0.75em;
	}
}

/* searchresults */
#search .searchresults ._items > ._item {
	min-height: 190px;
	margin: 0;
    padding: 20px 0;
	cursor: pointer;
	border-bottom: 1px solid #E2E2E2;
	transition: all 0.3s ease-out;
}
#search .searchresults ._items > ._item:first-child {
    margin-top: 20px;
	border-top: 1px solid #E2E2E2;
}
#search .searchresults ._wrap {
    width: 100%;
	display: flex;
    flex-direction: column;
	padding: 0 0 0 272px;
}
#search .searchresults ._wrap > div {
	margin: 0;
	padding: 0;
}
#search .searchresults ._wrap ._sitesearch_group1 {
	order: 1;
}
#search .searchresults ._wrap ._sitesearch_group1 ._seq {
    display: none;
}
#search .searchresults ._wrap ._sitesearch_group1 ._title {
	padding: 0;
	font-size: 18px;
}
#search .searchresults ._wrap ._sitesearch_group1 ._title a {
	pointer-events: none;
}
#search .searchresults ._wrap ._sitesearch_group1 ._filetype._filetype_pdf {
	width: 20px;
	height: 20px;
	margin-top: 3px;
    margin-left: 8px;
	font-size: 0;
    background: url(/img/common/icon_pdf_s.png) left center no-repeat;
	background-size: 100% auto;
}
#search .searchresults ._wrap ._sitesearch_group2 {
	order: 3;
	margin-top: 20px;
}
#search .searchresults ._wrap ._sitesearch_group2 ._thumbnail {
	min-width: 250px;
	min-height: 250px;
    position: absolute;
    top: 0;
    left: 0;
	padding: 0;
}
#search .searchresults ._wrap ._sitesearch_group2 ._thumbnail a {
	height: auto;
	pointer-events: none;
}
#search .searchresults ._wrap ._sitesearch_group2 ._thumbnail:before {
	content: none;
}
#search .searchresults ._wrap ._sitesearch_group2 ._snippet {
	padding: 0;
	font-size: 0.875em;
    line-height: 1.7;
}
#search .searchresults ._wrap ._sitesearch_group3 {
	order: 4;
}
#search .searchresults ._wrap ._sitesearch_group3 ._filesize,
#search .searchresults ._wrap ._sitesearch_group3 ._last_modified {
	padding: 0;
}
#search .searchresults ._wrap ._sitesearch_group3 ._filesize {
	margin-top: 20px;
}
#search .searchresults ._wrap ._sitesearch_group3 ._last_modified span {
	display: none;
}
#search .searchresults ._wrap ._sitesearch_group4 {
	order: 2;
	margin-top: 10px;
	justify-content: flex-start;
}
#search .searchresults ._wrap ._sitesearch_group4 ._link {
	padding: 0;
	line-height: 1.2;
}
#search .searchresults ._wrap ._sitesearch_group4 ._link a {
	color: #7B7B7B;
	word-break: break-all;
}

@media only screen and (max-width: 768px) {
	#search .searchresults ._wrap {
		padding: 0;
	}
	#search .searchresults ._items > ._item {
		min-height: auto;
	}
	#search .searchresults ._wrap ._sitesearch_group1 ._title a {
		font-size: 16px;
	}
	#search .searchresults ._wrap ._sitesearch_group1 ._filetype._filetype_pdf {
		margin-top: 3px;
		background-size: auto 100%;
	}
	#search .searchresults ._wrap ._sitesearch_group2 {
		margin-top: 10px;
		gap: 16px;
	}
	#search .searchresults ._wrap ._sitesearch_group2 ._thumbnail {
		min-width: 104px;
		min-height: 76px;
		position: relative;
	}
	#search .searchresults ._wrap ._sitesearch_group2 ._snippet {
		margin-top: 0;
		font-size: 12px;
	}
	#search .searchresults ._wrap ._sitesearch_group3 {
		width: 100%;
		display: flex;
		flex-direction: column;
		align-items: flex-end;
		font-size: 12px;
	}
	#search .searchresults ._wrap ._sitesearch_group3 ._filesize {
		margin-top: 10px;
	}
	#search .searchresults ._wrap ._sitesearch_group4 {
		margin-top: 4px;
	}
	#search .searchresults ._wrap ._sitesearch_group4 ._link a {
		font-size: 12px;
	}
}
@media (hover: hover) {
	#search .searchresults ._items>._item:hover {
		background: #E6F3FB;
	}
}

/* pagenator */
#search .pagenator.top {
	margin: 20px 0;
}
#search .pagenator {
	margin: 40px 0 50px;
	text-align: center;
}
#search ._pagenator {
	display: inline-flex;
	vertical-align: bottom;
	margin: 0;
	padding: 0;
	gap: 36px;
}
#search ._pagenator ._nav {
	margin: 0;
	padding: 0;
	flex: none;
}
#search ._pagenator ._nav a,
#search ._pagenator ._nav._current,
#search ._pagenator ._nav ._disable {
	width: 36px;
	height: 36px;
	padding: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #002D78;
	font-family: 'Roboto', sans-serif;
	background: #fff;
	border-radius: 50px;
	border: 1px solid #002D78;
	transition: background 0.3s ease-out;
}
#search ._pagenator ._nav._current {
	background: #85C5EE;
}
#search ._pagenator ._nav ._disable {
	color: lightgray;
	background: #fff;
	border: 1px solid lightgray;
}

@media only screen and (max-width: 768px) {
	#search .pagenator.top {
		display: none;
	}
	#search .pagenator {
		margin: 20px 0;
	}
	#search ._pagenator {
		gap: 8px;
	}
	#search ._pagenator ._nav a,
	#search ._pagenator ._nav._current,
	#search ._pagenator ._nav ._disable {
		width: 34px;
		height: 34px;
	}
}
@media (hover: hover) {
	#search ._pagenator ._nav a:hover {
		background: #85C5EE;
	}
}

/* ------------------------------------
	coming_soon
------------------------------------ */
#main_contents .coming_soon {
	padding: 3em;
	background: #e6f3fb;
}

#main_contents .coming_soon,
#main_contents .coming_soon p {
	text-align: center;
	color: #002d78;
}

#main_contents .coming_soon strong {
	margin: 0 0 10px;
	display: block;
	font-size: 2.5em;
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
}

#main_contents .coming_soon p {
	font-size: 0.875em;
	margin: 0;
}

@media only screen and (max-width: 768px) {
	#main_contents .coming_soon strong {
		font-size: 2em;
	}
}


/*-----------------------------------------
	#http_statuscode
-----------------------------------------*/
#http_statuscode {
	padding: 100px 0 60px;
	color: #ffffff;
	text-align: center;
	background: #002d78 url('/img/common/title_bg.jpg') center right no-repeat;
	background-size: cover;
}

#http_statuscode h1 {
	margin: 0 0 40px;
	padding: 0 0 20px;
	position: relative;
	font-size: 5em;
	line-height: 1.2;
	letter-spacing: 0.08em;
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
}

#http_statuscode h1:after {
	content: "";
	width: 60px;
	height: 2px;
	display: block;
	background-image: -moz-linear-gradient( -45deg, #002d78 1%, #85c5ee 100%);
	background-image: -webkit-linear-gradient( -45deg, #002d78 1%, #85c5ee 100%);
	background-image: -ms-linear-gradient( -45deg, #002d78 1%, #85c5ee 100%);
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	position: absolute;
	bottom: 0;
	left: 50%;
}

#http_statuscode h1 span {
	display: block;
	font-size: 0.4em;
}

#http_statuscode p {
	margin: 0 0 40px;
	padding: 0 6%;
	text-align: center;
}

@media only screen and (max-width: 768px) {
#http_statuscode {
	padding: 60px 0 40px;
}
#http_statuscode h1 {
	margin: 0 0 20px;
	padding: 0 0 10px;
	font-size: 3.8em;
	letter-spacing: 0.04em;
}
#http_statuscode p {
	margin: 0 0 20px;
}
}


/* =====================================
	Hover:opacity
===================================== */
.index_list ul li a {
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
}

body.pc_view .index_list ul li a:hover {
	opacity: 0.6;
}

/* =====================================
	ClearFixElements
===================================== */
#page_header:before,
#page_header:after {
	content: " ";
	display: table;
}

#page_header:after {
	clear: both;
}

#page_header {
	*zoom: 1;
}


@media print {
#main_contents{
	width: 1100px;
	margin: 0 auto;
}
#ir .contArea article a {
	width: 1080px;
}
#main_contents{
	width: 1100px;
}
.contents_wrap.base {
    width: 1100px;
}
#container .samelayer_nav {
	width: 1080px;
}
#main_contents .filelink_list li a {
	width: 1080px;
}

#main_contents, #main_contents section {
	width: 1000px;
}
#business .business_sec .affiliated_company ul{
	width: 1080px;
}
#container .samelayer_nav ul li, #container .samelayer_nav ul li:last-of-type {
width: 318px;
}
}