*, *:before, *:after {
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
		 -o-box-sizing: border-box;
		-ms-box-sizing: border-box;
			box-sizing: border-box;
	-webkit-text-size-adjust: 100%;
                  max-height: 100%;
}


/* ==================================
	html5doctor.com Reset Stylesheet
	v1.6.1
	Last Updated: 2010-09-17
	Author: Richard Clark - http://richclarkdesign.com 
	Twitter: @rich_clark
================================== */
html {
	font-size: 10px;
	height: auto !important;
	max-height: 100%;
	line-height: 1.5;
}

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	vertical-align:baseline;
	background:transparent;
	font-feature-settings : "palt";
	max-height: 100%;
	word-break : keep-all;
}

iframe {
	pointer-events: auto;
}

html, body, div, span,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend {
	max-height: 100%;
	font-size: 14px;
	line-height: 1.5;
}

img {
	max-height: none;
}

body {
	line-height:1;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
	display:block;
}

nav ul {
	list-style:none;
}

blockquote, q {
	quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content:'';
	content:none;
}

a {
	margin:0;
	padding:0;
	vertical-align:baseline;
	background:transparent;
	color:inherit;
}

/* change colours to suit your needs */
ins {
	background-color:#ff9;
	color:#000;
	text-decoration:none;
}

sup {
	font-size: 70%;
	vertical-align: super;
}

sub {
	font-size: 70%;
	vertical-align: baseline;
}

/* change colours to suit your needs */
mark {
	background-color:#ff9;
	color:#000; 
	font-style:italic;
	font-weight:bold;
}

del {
	text-decoration: line-through;
}

abbr[title], dfn[title] {
	border-bottom:1px dotted;
	cursor:help;
}

table {
	border-collapse:collapse;
	border-spacing:0;
}

/* change border colour to suit your needs */
hr {
	display:block;
	height:1px;
	border:0;   
	border-top:1px solid #999999;
	margin:1em 0;
	padding:0;
}

input, select {
	vertical-align:middle;
}

/* chart.js */

canvas {
	-webkit-tap-highlight-color: transparent
}

/* ==================================
	tag
================================== */



i {
	font-style: normal;
	line-height: 1;
}
a {
	text-decoration:none;
}
a:hover,
a:active {
	opacity: 0.5;
}
body {
	color: #333333;
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
}

li {
	list-style-type:none;
}
/*
.serif {
	font-family: Georgia, "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;

}
*/

/* ==================================
	responsive
================================== */
.pc {
	display: block;
}
.sp {
	display: none;
}


/* ==================================
	layout
================================== */
header,
nav,
article {
	max-width: 1040px;
	margin: 0 auto;
	padding: 0 20px;
	width: 100%;
	position: relative;
	overflow: hidden;
}
div.spacer {
	height: 30px;
}
.group_box {
	margin-bottom: 40px !important;
}
.h150 li a {
	height: 130px !important;
}
#blackbg {
	height: 0;
	display: none;
}
article {
	margin-top: 90px;
}
article.active {
	opacity: 0.2;
}

#blackbg.active {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 20000;
	background-color: #000000;
	opacity: 0.5;
	width: 100%;
}
#fixedarea {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 9;
	background-color: #ffffff;
}






/* ----------------------
	info_area
---------------------- */
.info_area {
	max-width: 1000px;
	margin: 0 auto 10px auto;
	text-align: center;
	font-size: 16px;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	background-color: #eeeeee;
	padding: 10px 0;
}

/* ----------------------
	site_update
---------------------- */
.site_update {
	text-align: center;
	font-size: 16px;
	margin: 0 0 50px 0;
}
.link_group_site ul {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	width: 100%;
}
.link_group_site li {
	width: 16.66%;
	text-align: center;
	border-left: 1px solid #cccccc;
	margin: 0 0 10px 0;
}
.link_group_site li:last-child {
	border-right: 1px solid #cccccc;
}

/* ----------------------
	award_table
---------------------- */
.award_table {
	display: table;
	width: 70%;
	margin: 0 auto;
}
.award_table div {
	display: table-cell;
	width: 25%;
	text-align: center;
}
.award_table div img {
	height: 100px;
}



/* ==================================
	header
================================== */
.header_table {
	margin: 10px auto;
	display: table;
	width: 100%;
}
.header_cell {
	display: table-cell;
	vertical-align: middle;
}
.header_cell ul {
	display: table;
	margin: 0 0 0 auto;
}
.header_cell li {
	display: table-cell;
	vertical-align: middle;
	line-height: 1;
}
.header_cell li > span {
	display: block;
	padding: 0 20px;
	border-left: 1px solid #666666;
	text-align: center;
	text-decoration: none;
}
.header_cell li:last-child span {
	padding: 0 0 0 20px;
}
.header_cell li:first-child span {
	border-left: 0;
}
.header_cell li a {
	color: #666666;
}
.header_logo {
	display: block;
	width: 200px;
}
.header_logo img {
	width: 100%;
}
.gsc-selected-option {
	width: 100px;
}
.gs-title {
	padding: 0 !important;
}
.gsc-selected-option-container {
	max-width: 100% !important;
}
.fontSize a {
	display: inline-block;
	padding: 0 3px;
	text-decoration: underline;
}


/* ----------------------
	hamburger
---------------------- */
.hamburger_wrap {
	width: 50px;
}
.menu-trigger,
.menu-trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.menu-trigger {
	position: relative;
	width: 50px;
	height: 44px;
}
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 4px;
	background-color: #333333;
	border-radius: 4px;
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger span:nth-of-type(2) {
	top: 20px;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}
.menu-trigger.active span:nth-of-type(1) {
  -webkit-transform: translateY(20px) rotate(-45deg);
  transform: translateY(20px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
  -webkit-transform: translateY(-20px) rotate(45deg);
  transform: translateY(-20px) rotate(45deg);
}


/* ==================================
	nav
================================== */
.nav_table {
	margin: 0 auto 10px auto;
	display: table;
	width: 100%;
}
.nav_cell {
	display: table-cell;
	vertical-align: middle;
}
.nav_cell:last-child {
	width: 36px;
}
.nav_cell ul {
	display: table;
	width: 100%;
}
.nav_cell li {
	display: table-cell;
	vertical-align: middle;
	width: 14.28%;
}
.nav_cell li a {
	text-decoration: none;
}
.nav_cell li a,
.nav_cell li p {
	display: block;
	padding: 0;
	border-left: 1px solid #333333;
	font-size: 15px;
	text-align: center;
}

.nav_cell li:last-child a {
	border-right: 1px solid #333333;
}
.nav_cell a.active {
	background-color: #333333;
	color: #ffffff;
}

.nav_cell li:first-child p,
.nav_cell li:first-child a {
	/*border-left: 0;*/
}
.nav_cell li:last-child {
	width: 36px;
}
.siteSearch_pc {
	display: block;
	width: 36px;
	height: 36px;
	background-color: #666666;
}
.siteSearch_pc img {
	display: block;
	width: 36px;
	padding: 6px;
}
.nav_cell span {
	display: none;
	width: 100%;
}
.gsc-control-cse {
	padding: 0 10px !important;
}

/* ==================================
	sub
================================== */

#srchBox {
	width: 100% !important;
	_width: 100% !important;
	margin-bottom: 0 !important;
	background-color: #FFFFFF;
	border-style: solid;
	border-width: 0  !important;;
	border-color: #EEEEEE;
	color: #000000;
	text-align: left;
}
#srchBox * {
	margin: 0;
	padding: 0;
	font-size: 13px;
	*font-size: small;
	*font: x-small;
}
#srchBox a img {
	border: none;
}
#srchBox #srch {
	padding: 0;
}
#srchBox #srch #srchForm {
	white-space: nowrap;
}
#srchBox #srchInput {
	width: 900px;
	margin-right: 6px;
	vertical-align: bottom;
}
#srchBox #srchBtn {
	width: 94px;
	background-color: #ac1757;
	color: #ffffff;
}
*html #srchBox #srchBtn {
	padding-top: 2px;
}
*:first-child+html #srchBox #srchBtn {
	padding-top: 2px;
}
#srchBox ul {
	margin-top: 6px;
	text-align: left;
}
#srchBox li {
	list-style-type: none;
	display: inline;
	zoom: 1;
	padding-right: 10px;
}
#srchBox li input {
	zoom: 1;
	margin-right: 2px;
	_margin: -4px 0 -4px -4px;
	vertical-align: middle;
	border: 0;
}
*:+html #srchBox li input {
	margin: -4px 0 -4px -4px;
}
#srchBox #srchLogo {
	margin: 6px 6px 6px 0;
	text-align: right;
}
#srchBox #srchLogo a {
	color: #666666;
	text-decoration: none;
	font-size: 85%;
}
#srchBox #srchLogo a:hover {
	text-decoration: none;
}
#srchBox.watermark {
	padding-bottom: 0;
}
#srchBox.watermark #srchInput {
	padding: 1px 1px 2px 1px;
	border: 1px solid #a5acb2;
	background: #fff url(http://i.yimg.jp/images/search/customsearch/yjlogo/yjlogo_type4.gif) center center no-repeat;
}
#srchBox.watermark #srchInput.nomark {
	background: #fff;
}
#srchBox.watermark #srchLogo {
	display: none;
}

/* ==================================
	sub
================================== */
aside {
	max-width: 1000px;
	margin: 0 auto 0 auto;
	position: relative;
}
.sub_area {
	position: relative;
}
.sub_wrap {
	margin: 0 auto 0 auto;
	position: absolute;
	padding: 10px 0 0 0;
	top: -10px;
	left: 0;
	z-index: 9000;
}
.sub_block {
	display: none;
	width: 1000px;
}
.sub_table {
	display: table;
	width: 100%;
/*	background-color: #f9f9f9;*/
    background-color: rgba(249, 249, 249, 0.9);
}
.sub_cell {
	display: table-cell;
	vertical-align: top;
	width: 33.33%;
	padding: 10px;
}
.sub_cell ul {
	margin: 0 0 20px 0;
}
.sub_cell a {
	display: block;
	color: #000000;
	font-size: 14px;
	line-height: 1.4;
	padding: 0 0 12px 0;
	text-decoration: none;
}
.sub_cell li.pad2 a {
	color: #333333;
	font-size: 13px;
}
.sub_cell li.spacer {
	height: 15px;
}
.sub_cell li.pad2 {
	padding-left: 15px;
}
.sub_cell img {
	display: block;
	margin: 0 0 15px 0;
	max-width: 300px;
}
.sub_cell h1 {
	display: block;
	color: #333333;
	font-size: 20px;
	margin: 0 0 5px 0;
}
.sub_cell p {
	display: block;
	color: #ffffff;
	font-size: 16px;
	line-height: 1.5;
	margin: 0 0 5px 0;
}

.sub_block .nav_close {
	background-color: #333333;
	padding: 20px;
}
.sub_block .nav_close p {
	color: #999999;
	font-size: 16px;
	margin: 0 auto;
	padding: 5px;
	border: 2px solid #999999;
	width: 200px;
	text-align: center;
	line-height: 18px;
	border-radius: 20px;
	cursor: pointer;
}
.sub_block .nav_close p:hover {
	opacity: 0.5;
}

/* ==================================
	accordion
================================== */
.accordion_wrap {
	position: absolute;
	top: 90px;
	left: 0;
	width: 100%;
	background-color: #000000;
	display: none;
}
.accordion_wrap.active {
	display: block;
}
.accordion {
	background-color: #333333;
	color: #ffffff;
}
.accordion .inner {
	display: none;
}
.accordion .inner li ul {
	display: none;
}
.accordion > li {
	cursor: pointer;
}
.accordion > li > b {
	display: block;
}
.accordion > li > b > a {
	display: block;
	background-image: url(../_common_img/icon_accordion_arrow.svg);
	background-repeat: no-repeat;
	background-position: right 5px center;
	background-size: 24px;
}
.accordion .inner a {
	display: block;
	padding: 15px 10px;
	border-bottom: 2px dotted #ffffff;
	background-image: url(../_common_img/icon_accordion_arrow.svg);
	background-repeat: no-repeat;
	background-position: right 15px center;
	background-size: 24px;
	background-color: #777777;
	font-size: 18px;
}
.accordion .inner li {
	background-color: #555555;
}
.accordion .inner li a {
	padding: 15px 10px 15px 20px;
}
.accordion .inner li ul li a {
	padding: 15px 10px 15px 30px;
}
.accordion .inner li ul li ul li a {
	padding: 15px 10px 15px 50px;
}
.accordion .inner li ul li ul li ul li a {
	padding: 15px 10px 15px 70px;
}
.accordion li b,
.accordion li p {
	display: block;
	border-bottom: 2px solid #ffffff;
	padding: 15px 10px;
	font-size: 18px;
	font-weight: normal;
}
.accordion li p {
	cursor: pointer;
	background-image: url(../_common_img/icon_accordion_plus.svg);
	background-repeat: no-repeat;
	background-position: right 10px center;
	background-size: 36px;
}
.accordion li p.active {
	background-image: url(../_common_img/icon_accordion_minus.svg);
}
.accordion li ul li p {
	padding: 15px 10px 15px 20px;
}

.accordion li ul li.pad2 > p {
	padding: 15px 10px 15px 40px;
}

.accordion li ul li.pad4 > p {
	padding: 15px 10px 15px 60px;
}


/* ==================================
	pankuzu
================================== */
.pankuzu {
	display: table;
	width: 100%;
	background-color: #ffffff;
	border-top: 2px solid #eeeeee;
	margin: 20px 0 20px 0;
	padding: 5px 5px;
}
.pankuzu div {
	display: table-cell;
}
.pankuzu li {
	display: inline;
	font-size: 12px;
	color: #666666;
}
.pankuzu li:after {
	content: ">";
	padding: 0 10px;
}
.pankuzu li:last-child:after {
	content: "";
}
.pankuzu time {
	display: block;
	margin: 0 0 0 auto;
	font-size: 12px;
	text-align: right;
	color: #666666;
}


/* ==================================
	footer
================================== */
footer {
	padding: 100px 0 0 0;
}
.footer_wrap {
	background-color: #333333;
	padding: 0 10px;
}
.footer_table {
	max-width: 1000px;
	margin: 0 auto;
	padding: 20px 0;
	display: table;
	width: 100%;
}
.footer_cell {
	display: table-cell;
	vertical-align: top;
	width:25%;
	padding:10px;
}
.footer_cell h1 {
	display: block;
	color: #ffffff;
	margin: 0 0 5px 0;
	word-break:keep-all;
}
.footer_cell h1 a {
	font-size: 16px;
	display: inline-block;
	border-bottom: 3px solid #ac1757;
	text-decoration: none;
}
.footer_cell ul {
	margin: 0 0 20px 0;
}

.footer_cell ul li{
	word-break:keep-all;
}
.footer_cell ul li.pad2 {
	padding-left: 10px;
}
.footer_cell ul li.pad3 {
	padding-left: 20px;
}
.footer_cell ul li.pad4 {
	padding-left: 30px;
}
.footer_cell ul li.spacer {
	height: 15px;
}
.footer_cell ul a {
	display: block;
	color: #ffffff;
	line-height: 1.7;
	padding: 0 0 5px 0;
	font-size: 12px;
}
#footer_logo {
	display: block;
	margin: 10px auto;
	width: 237px;
}

#page-top {
	position: fixed;
	right: 0;
	bottom: 0;
	width: 50px;
	height: 50px;
	padding: 10px;
}
.footer_copy {
	background-color: #ac1757;
	color: #ffffff;
	text-align: center;
	font-weight: normal;
	padding: 10px 0;
}


/* ==================================
	content_block
================================== */
#slider_block {
	margin: 10px auto 30px auto !important;
}
.content_block {
	max-width: 1000px;
	margin: 0 auto 50px auto;
	width: 100%;
}
.content_block h1.pTit {
	font-size: 20px;
	font-weight: normal;
	color: #ac1757;
	border-bottom: 2px solid #ac1757;
	padding: 0 0 3px 0;
	margin: 0 0 15px 0;
}
.content_block h1.pTit.pTit_top {
    font-size: 18px;
    color: #333;
    border-bottom: none;
    padding: 0 0 5px 0;
    margin:0;
}
.content_block h1.pTit small {
	display: inline-block;
	color: #333333;
	font-size: 18px;
	margin: 0 0 0 20px;
}
.content_block h2.pTit {
	font-size: 18px;
	margin: 0 0 5px 0;
}
.content_block h2.pTit small {
	display: inline-block;
	color: #333333;
	font-size: 16px;
	font-weight: normal;
	margin: 0 0 0 20px;
}
.content_block h2.pTit small:before {
	content: "(";
}
.content_block h2.pTit small:after {
	content: ")";
}
.content_block p.pTxt {
	font-size: 16px;
	line-height: 1.6;
	margin: 0 0 1em 0;
}

.content_block p.pTxt.pTxt_top {
    font-size: 12px;
}

.content_block p.pTxt.pTxt_top small {
    font-size: 11px;
}

.content_block p.pTxt.pCenter {
    text-align: center;
}

.content_block p.pBld {
	font-size: 16px;
	line-height: 1.6;
	margin: 0 0 5px 0;
	font-weight: bold;
}
.content_block .text_list {
	font-size: 14px;
	line-height: 1.6;
	margin: 0 0 30px 0;
}
.content_block .text_list {
	padding: 0 0 0 20px;
}
.content_block .text_list li {
	list-style-type: disc;
	list-style-position: outside;
	padding: 0 0 10px 0;
}

.content_block.disclaimer {
    background-color: #eee;
    padding: 10px;
}
.content_block .anchor_list {
	display: flex;
	flex-wrap: wrap;
	margin-left: -10px;
}

.content_block .anchor_list li {
	display: flex;
    align-items: center;
	padding: 10px 0 0 10px;
}

.content_block .anchor_list li:before {
	content: "";
    width: 2px;
    height: 30px;
    background-color: #eee;
    display: inline-block;
    margin-right: 10px;
}

.content_block .anchor_list li a {
	position: relative;
	display: inline-block;
	padding: 0 0 0 20px;
	vertical-align: middle;
}

.content_block .anchor_list li a::before{
	content: "";
	position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
    left: 3px;
    width: 10px;
    height: 10px;
    border-bottom: 2px solid #ac1757;
    border-right: 2px solid #ac1757;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: 3px;
}

section[id^="sustainability_contents_"],
tr[id^="sustainability_contents_"],
div[id^="sustainability_contents_"],
h1.pTit[id^="sustainability_contents_"],
#human-rights,
#pdfLink {
	padding-top: 120px;
	margin-top: -120px;
}


@media only screen and (max-width: 767px) {
	.content_block .anchor_list li a::before{
		margin-top: 11px;
	}
}
/* ==================================
	content_tabs
================================== */
.content_tabs {
	overflow: hidden;
}
.content_tabs li {
	float: left;
	width: 80px;
	text-align: center;
	font-size: 16px;
	background-color: #eeeeee;
	display: inline-block;
	padding: 5px 0;
	margin: 0 20px 10px 0;
}


/* ==================================
	bnr_block
================================== */

.adjustment_content_block {
    margin-bottom: 0;
}

.bnr_block {
    margin: 0 0 50px 0;
}

.bnr_block .bnr_top_4 {
    display: flex;
/*    justify-content: center;*/
}

.bnr_block .bnr_top_4 div {
/*    padding: 5px;*/
}

.bnr_block .bnr_top_4 div img{
    width:242.5px;
    height:auto;
}

/* ==================================
	data_box
================================== */
.data_box {
	margin-bottom: 30px;
}

/* ==================================
	data_list
================================== */
.data_list {
	margin: 0 0 20px 0;
}
.data_list.outside li {
	margin-left: 20px; 
	list-style-type: disc;
	list-style-position: outside;
}
.data_list li {
	display: list-item;
	margin: 0 0 10px 0;
}

/* ==================================
	data_dtdd
================================== */
.data_dtdd {
	margin: 0 0 20px 0;
}
.data_dtdd dt {
	float: left;
	width: 50px;
}
.data_dtdd dt:after {
	content: "：";
}


/* ==================================
	data_col2
================================== */
.data_col2 {
	display :table;
	width: 100%;
	margin: 0 0 70px 0;
}
.data_col2 > div {
	display :table-cell;
	width: 50%;
}
.data_col2 > div:first-child {
	padding: 0 10px 0 0;
}
.data_col2 > div:last-child {
	padding: 0 0 0 10px;
}
.data_col1 {
	width: 100%;
	margin: 0 0 70px 0;
}
.data_col1 h3,
.data_col2 h3 {
	font-size: 18px;
}
.data_col1 p,
.data_col2 p {
	margin: 0 0 10px 0;
}
.data_col1 .darkRed,
.data_col2 .darkRed {
	display: inline-block;
	margin: 0 0 5px 0;
	font-size: 12px;
}
.icon_xls:before {
	content: "XLS";
	display: inline-block;
	width: 50px;
	background-color: #33691E;
	color: #ffffff;
	padding: 3px 5px;
	margin: 0 5px 0 0;
	text-align: center;
	font-size: 10px;
}
.icon_pdf:before {
	content: "PDF";
	display: inline-block;
	width: 50px;
	background-color: #ac1757;
	color: #ffffff;
	padding: 3px 5px;
	margin: 0 5px 0 0;
	text-align: center;
	font-size: 10px;
    text-indent: 0;
}
.icon_pdf {
    text-indent: -55px;
    padding-left: 55px;
}
article.disclosure .icon_pdf {
    margin-bottom: 10px;
}

.icon_movie:before {
	content: "動画";
	display: inline-block;
	width: 50px;
	background-color: #827717;
	color: #ffffff;
	padding: 3px 5px;
	margin: 0 5px 0 0;
	text-align: center;
	font-size: 10px;
}
.icon_movie_e:before {
	content: "movie";
	display: inline-block;
	width: 50px;
	background-color: #827717;
	color: #ffffff;
	padding: 3px 5px;
	margin: 0 5px 0 0;
	text-align: center;
	font-size: 10px;
}
small.size {
	display: inline-block;
	font-size: 10px;
	color: #999999;
	margin-left: 10px;
    text-indent: 0;
}
small.size:before {
	content: "( ";
}
small.size:after {
	content: " )";
}

.pdf_date {
    display: inline-block;
    width: 45px;
}

article.disclosure .pdf_date {
	margin-left: 60px;
	margin-right: 0px;
}

.pdf_name {
    display: inline;
    margin: 0 0 10px 0;
}

/*----------*/
.annual_list li {
	
	margin: 0 0 10px 0;
}
.annual_title img {
	display: block;
	margin: 0;
	width: 200px;
	border: 1px solid #cccccc;
}
.annual_title > div{
	vertical-align: top;
}

.annual_title > div:nth-child(1) {
	width: auto !important;
}
.annual_title > div:nth-child(2) {
	width: 120px !important;
}

.sustainability_report_title .batch_dl {
    vertical-align: top;
}

.sustainability_report_title .batch_dl h3 {
    background-color: #FCE4EC;
    padding: 10px;
}

.sustainability_report_title .batch_dl img {
    max-width: 300px;
    display: block;
    margin: 10px auto;
}

.sustainability_report_title .cover img {
    width:100%;
    border: 1px solid #ddd;
}

.sustainability_report_title.past {
    width:35%;
}

.sustainability_report_title.past .cover {
    padding: 0;
}

@media only screen and (max-width: 767px) {
    .sustainability_report_title.past {
        width:100%;
    }
}
/* ==================================
	content_ir_table
================================== */
.content_ir_table_wrap {
	margin: 0 0 20px 0;
}
.content_ir_table {
	width: 100%;
}
.content_ir_table caption {
	text-align: left;
}
.content_ir_table th {
	border-right: 1px solid #999999;
	background-color: #f5f5f5;
	padding: 0 0 0 5px;
}

.content_ir_table.col2 th {
	width: 340px;
}
.content_ir_table.col2 td {
	width: 660px;
}
.content_ir_table.col3 th {
	width: 340px;
}
.content_ir_table.col3 td {
	width: 328px;
}
.content_ir_table.col5 th {
	width: 340px;
}
.content_ir_table.col5 td {
	width: 164px;
}
.content_ir_table.col6 th {
	width: 340px;
}
.content_ir_table.col6 td {
	width: 132px;
}
.content_ir_table.col7 th {
	width: 340px;
}
.content_ir_table.col7 td {
	width: 94px;
}
.content_ir_table.col8 th {
	width: 340px;
}
.content_ir_table.col8 td {
	width: 82px;
}
.content_ir_table.col9 th {
	width: 340px;
}
.content_ir_table.col9 td {
	width: 73px;
}
.content_ir_table.col16 th {
	width: 340px;
}
.content_ir_table.col16 td {
	width: 55px;
    text-align: right;
}


.content_ir_table .pad1 {
	padding-left: 5px;
}
.content_ir_table .pad2 {
	padding-left: 15px;
}
.content_ir_table .pad3 {
	padding-left: 25px;
}

.content_ir_table thead td,
.content_ir_table tbody td {
	border-right: 1px dashed #999999;
}

.content_ir_table thead th,
.content_ir_table thead td {
	border-bottom: 1px solid #999999;
}
.content_ir_table thead td b {
	display: block;
	font-size: 12px;
	text-align: center;
	margin: 5px 0 5px 0;
	line-height: 1.2;
}
.content_ir_table thead td p {
	display: block;
	font-size: 10px;
	text-align: center;
	margin: 0 0 5px 0;
	color: #999999;
}
.content_ir_table thead th:nth-child(1) {
	vertical-align: middle;
	text-align: left;
}
.content_ir_table thead th i {
	color: #999999;
}
.content_ir_table tbody th,
.content_ir_table tbody td {
	border-bottom: 1px dotted #dddddd;
}
.content_ir_table tbody th {
	text-align: left;
}
.content_ir_table tbody th b,
.content_ir_table tbody th p {
	display: block;
	text-align: left;
}
.content_ir_table tbody th p {
	font-weight: normal;
}
.content_ir_table tbody td b,
.content_ir_table tbody td p {
	display: block;
	text-align: right;
	width: 70px;
	margin: 0 auto;
}
.supply-chain02 .content_ir_table tbody td b,
.supply-chain02 .content_ir_table tbody td p {
	width: 90px;
}
.work-life03 .content_ir_table tbody td b,
.work-life03 .content_ir_table tbody td p {
	width: 180px;
}
.content_ir_table tbody th,
.content_ir_table thead th {
	padding: 10px 5px 10px 5px;
}
.content_ir_table tbody td {
	padding: 10px 0;
}
.content_ir_table tfoot th i,
.content_ir_table tfoot td p {
	font-weight: normal;
}
.content_ir_table tfoot th {
	text-align: left;
}


.content_ir_table.nowidth tbody td b,
.content_ir_table.nowidth tbody td p {
	text-align: left;
	width: auto;
	padding: 0 0 0 5px;
}
.content_ir_table thead th:last-child,
.content_ir_table thead td:last-child,
.content_ir_table tbody td:last-child {
	border-right: 0;
}

/* ------------------

------------------ */
.content_ir_table.mix thead td:nth-child(4),
.content_ir_table.mix tbody td:nth-child(4) {
	border-right: 1px solid #999999;
}
.content_ir_table.mix thead td:nth-child(6),
.content_ir_table.mix tbody td:nth-child(6) {
	border-right: 0;
}
.content_ir_table.mix tfoot td:nth-child(2),
.content_ir_table.mix tfoot td:nth-child(5) {
	border-left: 1px solid #999999;
	padding: 10px 0 10px 5px;
	color: #999999;
}
.content_ir_table.mix tfoot td:nth-child(2) p,
.content_ir_table.mix tfoot td:nth-child(5) p {
	text-align: left;
}


/* ==================================
	content_sus_table
================================== */
.content_sus_table_wrap {
	margin: 0 0 70px 0;
}
.content_sus_table {
	width: 100%;
}
.content_sus_table caption {
	text-align: left;
}
.content_sus_table th {
	text-align: left;
	width: 170px;
	border-right: 1px solid #999999;
	background-color: #f5f5f5;
    padding: 0 0 0 5px;
}
.content_sus_table td {
	width: 166px;
}
.content_sus_table thead td,
.content_sus_table tbody td {
	border-right: 1px dashed #999999;
}
.content_sus_table thead td:last-child,
.content_sus_table tbody td:last-child {
	border-right: 0;
}
.content_sus_table tbody tr:last-child td {
	border-bottom: 0;
}
.content_sus_table thead th,
.content_sus_table thead td {
	border-bottom: 1px solid #999999;
}

.content_sus_table thead td b {
	display: block;
	font-size: 12px;
	text-align: center;
	margin: 0 0 3px 0;
}
.content_sus_table thead th p,
.content_sus_table thead td p {
	display: block;
	font-size: 12px;
	text-align: left;
	margin: 0 0 5px 0;
	padding: 10px 0 10px 5px;
}
.content_sus_table tbody th,
.content_sus_table tbody td {
	border-bottom: 1px dotted #dddddd;
}

.content_sus_table tbody th.border_btm_none,
.content_sus_table tbody td.border_btm_none {
    border-bottom: none;
}

.content_sus_table tbody th {
	font-size: 12px;
	text-align: left;
}
.content_sus_table tbody td p {
	font-size: 12px;
	margin: 0 auto;
}
.content_sus_table thead td,
.content_sus_table tbody td {
	padding: 10px 0 10px 5px;
}
.content_sus_table tfoot th i,
.content_sus_table tfoot td p {
	font-size: 12px;
	font-weight: normal;
}
.content_sus_table tfoot th {
	text-align: left;
}
.content_sus_table tfoot th i {
	color: #999999;
}

.content_sus_table tbody td.sticky_cell {
    padding-top: 30px;
}
.content_sus_table.content_sus_table_community_community01 th:nth-child(1){
    width:10%;
}
.content_sus_table.content_sus_table_community_community01 th:nth-child(2){
    width:45%;
}
.content_sus_table.content_sus_table_community_community01 th:nth-child(3){
    width:45%;
}
.content_sus_table.content_sus_table_community_community01 th,
.content_sus_table.content_sus_table_community_community01 td {
    vertical-align: middle;
    text-align: center;
}
.content_sus_table.content_sus_table_community_community01 thead th p {
    text-align: center;
    margin: 0
}
@media only screen and (max-width: 767px) {
    

    .content_sus_table.content_sus_table_community_community01 tbody td p {
        width: 220px;
    }
}

/* ==================================
	content_title
================================== */
.content_title {
	max-width: 1000px;
	margin: 0 auto 40px auto;
	width: 100%;
	background-color: #eeeeee;
	border-left: 4px solid #ac1757;
	padding: 10px; 
}
.content_title h1 {
	font-size: 28px;
	margin: 0 0 5px 0;
}
.content_title p {
	font-size: 18px;
	color: #999999;
}


.content_sub_title {
	margin: 0 0 50px 0;
}
.content_sub_title h2 {
	text-align: center;
	font-size: 32px;
	line-height: 1.5;
	margin: 0 0 5px 0;
}
.content_sub_title h2.h2Center {
	text-align: center;
    line-height: 1.0;
}
.content_sub_title h3 {
	text-align: center;
	font-size: 24px;
	line-height: 1.5;
	margin: 0 0 5px 0;
}

/* ==================================
	content_btn
================================== */
.content_btn {
	max-width: 1000px;
	margin: 0 auto 50px auto;
	width: 100%;
}


/* ==================================
	tab_area
================================== */
.tab_area {
    display: flex;
}
.tab_area .tab {
    text-align: center;
    cursor: pointer;
    background-color: #fff;
    color:#ac1757;
    border-top: 1px solid #ac1757;
    border-bottom: 1px solid #ac1757;
    border-left: 1px solid #ac1757;
    min-height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 5px;
}
.tab_area .tab:last-child {
    border-right: 1px solid #ac1757;
}
.tab_area.column2 .tab {
    width: calc(100%/2);
}
.tab_area.column3 .tab {
    width: calc(100%/3);
}
.tab_area .tab.active {
    background-color: #ac1757;
    color:#fff;
}

.tab_content_area {}

.tab_content_area .tab_content {
    display: none;
}
.tab_content_area .tab_content.show {
    display: block;
}



/* ==================================
	slider
================================== */
.slick-slide img {
	display: block;
	width: 100%;
}
#sub_slider .slick-slide {
	padding: 4px 2px;
}

#sub_slider li p {
    font-size: 10px;
    background-color: #f5f5f5;
    padding:3px;
    color: #000;
    min-height: 37px;
}


/* ==================================
	block
================================== */
/* ----------------------
	link_top_,
	link_top_3
---------------------- */
.link_top_2,
.link_top_3 {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
.link_top_2 li,
.link_top_3 li {
	width: 33.33%;
}
.link_top_2 li:nth-child(3n-2),
.link_top_3 li:nth-child(3n-2) {
	padding: 0 10px 0 0;
}
.link_top_2 li:nth-child(3n-1),
.link_top_3 li:nth-child(3n-1) {
	padding: 0 5px 0 5px;
}
.link_top_2 li:nth-child(3n),
.link_top_3 li:nth-child(3n) {
	padding: 0 0 0 10px;
}
.link_top_2 li a,
.link_top_3 li a {
	display: table;
    border: 1px solid #999999;
    background-image: url(../_common_img/red.png);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 100px 2px;
    margin: 0 0 15px 0;
    padding: 0 10px 0 10px;
    height: 90px;
    text-decoration: none;
    width: 100%;
    min-height: 90px;
}
.link_top_2 li a:before,
.link_top_3 li a:before {
	content: "";
}
.link_top_2 li h1,
.link_top_3 li h1 {
	text-align: center;
	margin: 34px 0 5px 0;
	font-size: 16px;
	font-weight: normal;
    display: table-cell;
    vertical-align: middle;
}
.link_top_2 li small,
.link_top_3 li small {
	display: block;
	text-align: center;
	margin: 5px 0 5px 0;
	font-size: 12px;
	font-weight: normal;
	color: #999999;
}
.link_top_2 li p,
.link_top_3 li p {
	font-size: 12px;
	line-height: 1.5;
	padding: 10px 0 0 0;
}

/* ----------------------
	link_top_2_picture
---------------------- */
.link_top_2_picture {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
.link_top_2_picture li {
	width: 50%;
}
.link_top_2_picture li:nth-child(2n-1) {
	padding: 0 5px 0 0;
}
.link_top_2_picture li:nth-child(2n){
	padding: 0 0 0 5px;
}
.link_top_2_picture li a {
	display: block;
	border: 1px solid #999999;
	margin: 0 0 15px 0;
	height: 90px;
	text-decoration: none;
}
.link_top_2_picture li a:before{
	content: "";
}

.link_top_2_picture li a img{
    height: 100%;
    float: left;
    padding:10px;
    border-radius: 50%;
}

.link_top_2_picture li a .link_top_2_txt{
    padding: 10px;
}

.link_top_2_picture li h1 {
/*	text-align: center;*/
	margin: 7px 0 5px 0;
	font-size: 16px;
	font-weight: normal;
}
.link_top_2_picture li small{
	display: block;
/*	text-align: center;*/
	margin: 5px 0 5px 0;
	font-size: 12px;
	font-weight: normal;
	color: #999999;
}
.link_top_2_picture li p{
	font-size: 12px;
	line-height: 1.5;
	padding: 10px 0 0 0;
}

/* ----------------------
	link_top_1
---------------------- */
.link_top_1 {
/*	display: flex;*/
/*	flex-direction: row;*/
/*	flex-wrap: wrap;*/
}
.link_top_1 li {
	width: 100%;
}
.link_top_1 li a {
	display: block;
	border: 1px solid #999999;
	height: 87px;
	background-image: url(../_common_img/red.png);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 2px 30px;
	margin: 0 0 15px 0;
	padding: 0 0 0 10px;
	text-decoration: none;
}
.link_top_1 li a:before {
	content: "";
}
.link_top_1 li h1 {
	text-align: left;
	margin: 25px 0 5px 0;
	font-size: 15px;
	font-weight: normal;
}
.link_top_1 li small {
	display: block;
	text-align: left;
	margin: 5px 0 5px 0;
	font-size: 10px;
	font-weight: normal;
	color: #999999;
}


/* ----------------------
	link_left_3
---------------------- */
.link_left_3 {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
.link_left_3 li {
	width: 33.33%;
}
.link_left_3 li:nth-child(3n-2) {
	padding: 0 10px 0 0;
}
.link_left_3 li:nth-child(3n-1) {
	padding: 0 5px 0 5px;
}
.link_left_3 li:nth-child(3n) {
	padding: 0 0 0 10px;
}
.link_left_3 li a {
	display: table;
	border: 1px solid #999999;
	height: 87px;
	background-image: url(../_common_img/red.png);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 2px 30px;
	margin: 0 0 15px 0;
	padding: 0 0 0 10px;
	text-decoration: none;
    width:100%;
    min-height: 87px;
}
.link_left_3 li a:before {
	content: "";
}
.link_left_3 li h1 {
	text-align: left;
/*	margin: 31px 0 5px 0;*/
	font-size: 16px;
	font-weight: normal;
    display: table-cell;
    vertical-align: middle;
}
.link_left_3 li small {
	display: block;
	text-align: left;
	margin: 5px 0 5px 0;
	
	font-weight: normal;
	color: #999999;
}

/* ----------------------
	link_top_4
---------------------- */
.link_top_4 {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
.link_top_4 li {
	width: 25%;
}
.link_top_4 li:nth-child(4n-3) {
	padding: 0 5px 0 0;
}
.link_top_4 li:nth-child(4n-2),
.link_top_4 li:nth-child(4n-1){
	padding: 0 5px 0 5px;
}
.link_top_4 li:nth-child(4n) {
	padding: 0 0 0 5px;
}
.link_top_4 li a {
	display: block;
	border: 1px solid #999999;
	height: 87px;
	background-image: url(../_common_img/red.png);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 2px 30px;
	margin: 0 0 15px 0;
	padding: 0 0 0 10px;
	text-decoration: none;
}
.link_top_4 li a:before {
	content: "";
}
.link_top_4 li h1 {
	text-align: left;
	margin: 25px 0 5px 0;
	font-size: 15px;
	font-weight: normal;
}
.link_top_4 li small {
	display: block;
	text-align: left;
	margin: 5px 0 5px 0;
	font-size: 10px;
	font-weight: normal;
	color: #999999;
}

.content_table {
	width: 100%;
}


.content_table tbody th,
.content_table tbody td {
    border-bottom: 0 solid #999999;
	padding: 10px 0;
}
.content_table tbody th {
	width: 170px;
	border-right: 1px solid #999999;
	border-bottom: 1px dotted #dddddd;
	background-color: #f5f5f5;
	padding: 10px 0 10px 5px;
    font-size: 16px;
    text-align: left;
}
.content_table tbody td {
	font-size: 16px;
	line-height: 1.5;
	padding: 10px 0 10px 5px;
	border-bottom: 1px dotted #dddddd;
}
.content_table tbody tr:last-child th,
.content_table tbody tr:last-child td {
	border-bottom: 0 dotted #cccccc;
}
.content_table tbody td:nth-of-type(2) {
	border-left: 1px solid #999999;
}







/* -------- */
.ir_content_table {
	display: table;
}
.ir_content_table > div:first-child {
	padding: 0 15px 0 0;
}
.ir_content_table > div {
	display: table-cell;
	vertical-align: top;
}

.ir_content_table.ir_calendar_table .navimenu_1 {
    width:33.3%;
    padding-left: 10px;
}

/* ----------------------
	list_news
---------------------- */
.list_news a {
	display: table;
	margin: 0 0 10px 0;
	line-height: 1.5;
}
.list_news div {
	display: table-cell;
	padding: 0 10px 0 0;
	font-size: 14px;
	line-height: 1.5;
    vertical-align: text-bottom;
    padding-top: 0px;
    width: 8em;
}
.list_news p {
	display: table-cell;
	padding: 0 10px 0 0;
	font-size: 14px;
	line-height: 1.5;
    vertical-align: text-bottom;
}
.list_news span {
	display: inline-table;
    font-size: 12px;
    padding: 0;
    margin: 0 10px 0 0;
    width: 60px;
    text-align: center;
    vertical-align: text-bottom;
}
.list_news span.press {
	color: #ac1757;
	border: 1px solid #ac1757;
}
.list_news span.ir {
	color: #244a96;
	border: 1px solid #244a96;
}


/* ----------------------
	btn_table
---------------------- */
.btn_table {
	display: table;
	width: 100%;
	max-width: 780px;
	margin: 0 auto;
}
.btn_cell {
	display: table-cell;
	vertical-align: top;
}
.btn_cell:first-child {
	padding: 0 10px 0 0;
}
.btn_cell:last-child {
	padding: 0 0 0 10px;
}
.btn {
	display: block;
	width: 390px;
	background-color: #21478d;
	background-repeat: no-repeat;
	background-position: right 10px center;
	background-size: 23px 23px;
	padding: 10px;
}
.btn b {
	display: block;
	
	color: #ffffff;
	margin: 0 0 5px 0;
}
.btn p {
	display: block;
	font-size: 12px;
	color: #ffffff;
}
.btn_download {
	background-image: url(../_common_img/icon_download.svg);
}
.btn_window {
	background-image: url(../_common_img/icon_window.svg);
}


/* ----------------------
	graph_area
---------------------- */
.graph_area {
	display: flex;
	flex-wrap: wrap;
}
.graph_block {
	width: 320px;
	margin-right: 20px;
	margin-top: 20px;
	margin-bottom: 60px;
}
.graph_block:nth-child(3n) {
	margin-right: 0;
}
.graph_block canvas {

}
.graph_title {
	height: 40px;
}
.graph_title h2 {
	font-size: 16px;
	margin: 0 0 5px 0;
}
.graph_title p {
	font-size: 10px;
}
.graph_caption {
	display: table;
	width: 100%;
	margin: 10px 0;
}
.graph_caption > div {
	display: table-cell;
	font-size: 9px;
	text-align: right;
}
.graph_caption div span {
	display: inline-block;
	width: 9px;
	height: 9px;
	margin: 0 3px 0 0;
}
.graph_caption div:nth-child(2) span {
	border: 1px solid #ac1757;
}
.graph_caption div:nth-child(3) span {
	background-color: #ac1757;
}




/* ==================================
	img block
================================== */

.hdrImg_csr {
	margin-bottom: 0 !important;
    font-feature-settings : "palt";
}
.subhdrImg_csr {
	margin: 0;
	margin-bottom: 1em;
    padding: 8px 15px;
    margin: 0 0 20px;
    list-style: none;
    background: #eee;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
}


.txtBlock {
	margin-bottom: 30px;
}
.subBlock {
	background-color: #eeeeee;
	padding: 10px;
	margin-bottom: 30px;
}
.subBlock dt {
	margin-bottom: 0.5em;
}
.subBlock dd {
	margin-bottom: 0.5em;
	margin-left: 1em;
	text-indent: -1em;
}

.txtRight {
	text-align: right;
}


/* ------------------ */
.imgBlock {
	margin: 20px 0;
}
.imgBlock > figure {
	margin: 0;
}
.imgBlock > figure.w200 {
	width: 200px;
}
.imgBlock > figure.w300 {
	width: 300px;
}
.imgBlock > figure.w400 {
	width: 400px;
}
.imgBlock > figure.w600 {
	width: 600px;
}
.imgBlock > figure.w800 {
	width: 800px;
}
.imgBlock > figure.w1000 {
	width: 1000px;
}
.imgBlock > figure > figcaption {
	font-size: 12px;
	word-break: normal;
	line-height: 1.25;
}
.imgBlock > figure.w1000 > figcaption {
	text-align: right;
}
.imgBlock > figure > img {
	display: block;
	margin: 0 auto 5px auto;
	width: 100%;
}

/* ------------------ */
.imgBlock.col1,
.imgBlock.col2,
.imgBlock.col3 {
	display: table;
	margin-right: auto;
	margin-left: auto;
}
.imgBlock.col1 > figure,
.imgBlock.col2 > figure,
.imgBlock.col3 > figure {
	display: table-cell;
	text-align: center;
	padding: 0 10px;
}

.imgBlock.col1.flex_col1,
.imgBlock.col2.flex_col2,
.imgBlock.col3.flex_col3 {
	display: flex;
    align-items: center;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .imgBlock.col1.flex_col1,
    .imgBlock.col2.flex_col2,
    .imgBlock.col3.flex_col3 {
        flex-direction: column;
    }
    .imgBlock.col1.flex_col1 > figure,
    .imgBlock.col2.flex_col2 > figure,
    .imgBlock.col3.flex_col3 > figure {
        padding:10px 10px 30px;
        width:100%;
    }
}

.imgBlock.col1 > figure.w1000 {
    padding: 0;
}

.imgBlock.col1 > figure.w1000 > img {
    width: 100%;
}

/*
#Contents section {
    margin-bottom: 90px;
}
#Contents p {
    margin-bottom: 1em;
}
#Contents p.indent {
	text-indent: 1em;
}

.subhdrImg_csr div {
	text-align: left;
	font-weight: bold;
}
.sizeM {
	font-size: 16px;
}
.sizeL {
	font-size: 24px;
}

*/

/* ==================================
	link_list
================================== */
.link_list li {
	display: block;
	
	margin: 0 0 10px 0;
}
.link_list li a {
	text-decoration: none;
}
.link_table th,
.link_table td {
	
	text-align: left;
	padding-bottom: 10px;
}
.link_table td {
	padding-left: 10px;
}
.link_table td a {
	text-decoration: none;
}

/* ==================================
	top_mainpic
================================== */
.ir_mainpic {
    width: 100%;
    height: 200px;
    background: url(../ir/index/mainpic.jpg) no-repeat center center;
    position: relative;
}

.individual_investors_mainpic {
    width: 100%;
    height: 200px;
    background: url(../ir/investors/index/mainpic.jpg) no-repeat center center;
    position: relative;
}

.corporate_information_mainpic {
    width: 100%;
    height: 200px;
    background: url(../company/company/mainpic.jpg) no-repeat center 85%;
    position: relative;
}

.sustainability_mainpic {
    width: 100%;
    height: 200px;
    background: url(../sustainability/sustainability/mainpic.jpg) no-repeat center 71%;
    position: relative;
}

.background_transparent {
    background-color: rgba(0,0,0,0.3);
    height: 200px;
}

h1.mainpic {
    color:#fff;
    position: absolute;
    top:40%;
    text-align: center;
    width:100%;
    font-size: 36px;
}

/* ==================================
	picture_block_2
================================== */

.picture_block_2 {
    display: flex;
	flex-direction: row;
	flex-wrap: wrap;
    justify-content :space-between;
}
.picture_block_2 li {
	width:49.8%;
}

.picture_block_2 li img {
    width: 100%;
}

#yList a {
	display: block;
	margin: 0 0 5px 0;
}
#nList {
	padding: 50px 0 0 0;
}
#nList h3 {
	font-size: 24px;
}
#nList table {
	width: 100%;
}
#nList th,
#nList td {
	border: 1px solid #cccccc;
	padding: 5px 5px 20px 5px;
}
#nList th {
	width: 120px;
	background-color: #eeeeee;
	text-align: left;
	font-family: monospace, serif;
}

/* ==================================
	materiality02
================================== */

.materiality02 .imgBlock.col2 > figure,
.materiality02 .imgBlock.col2 > p {
    display: table-cell;
    text-align: left;
    padding: 50px 10px 0;
	margin: 0 ;
	vertical-align: middle;
}
.materiality02 .listBlock {
	border-bottom: 1px #707070 dashed;
}

.materiality02 .listBlock > figure {
	width: 200px;
    display: table-cell;
    text-align: center;
    padding: 30px 10px;
	margin: 0 ;
	vertical-align: middle;
}

.materiality02 .listBlock > figure > img {
    max-height: 100%;
}

.materiality02 .listBlock_txt {
    display: table-cell;
    text-align: left;
    padding: 30px 10px;
	margin: 0 ;
	vertical-align: top;
}
.materiality02 .listBlock_txt dd {
	margin: 0 0 10px 0;
}

.materiality02 .listBlock_txt dt {
    font-weight:800;
    font-size: 16px;
}

.materiality02 #materiality02 {
    padding-top: 100px;
    margin-top:-100px;
}

/* ==================================
	materiality
================================== */
.sustainability_materiality_nav_area {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.sustainability_materiality_nav_area .sustainability_materiality_nav_block {
	width: 49%;
	margin-top: 30px;
	border: 1px solid #DCDCDC;
	position: relative;
}

.sustainability_materiality_nav_area .sustainability_materiality_nav_category {
	background-color: #AC1757;
	color: #fff;
	display: block;
	padding: 5px 10px;
	font-size: 18px;
	font-weight: 400;
}
.sustainability_materiality_nav_area .sustainability_materiality_nav_category a {
	position: relative;
}
.sustainability_materiality_nav_area .sustainability_materiality_nav_category a.non_link {
	pointer-events: none;
}
.sustainability_materiality_nav_area .sustainability_materiality_nav_category a::after {
	content: "";
	position: absolute;
	right: -1.0em;
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg) translateY(-75%);
	top: 50%;
}
.sustainability_materiality_nav_area .sustainability_materiality_nav_category a.non_link::after {
    border-top: none;
    border-right: none;
}
.sustainability_materiality_nav_area .sustainability_materiality_nav_border {
	padding: 25px 20px 130px 20px;
}
.sustainability_materiality_nav_area ul.sustainability_materiality_nav_list {
	padding-left: 25px;
}
.sustainability_materiality_nav_area ul.sustainability_materiality_nav_list li:not(:first-child) {
	padding-top: 15px;
}
.sustainability_materiality_nav_area ul.sustainability_materiality_nav_list li a {
	position: relative;
	line-height: 1.3;
}
.sustainability_materiality_nav_area ul.sustainability_materiality_nav_list li a::before {
	content: "";
	position: absolute;
	left: -1.6em;
    width: 8px;
    height: 8px;
    border-top: 2px solid #AC1757;
    border-right: 2px solid #AC1757;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg) translateY(-75%);
	top: 50%;
}

.sustainability_materiality_nav_area .sustainability_materiality_nav_icon_area {
	display: flex;
	justify-content: center;
	position: absolute;
	bottom: 20px;
	left: 0;
	right: 0;
}
.sustainability_materiality_nav_area .sustainability_materiality_nav_icon {
	padding: 0 5px;
}

.sustainability_materiality_nav_area .sustainability_materiality_nav_icon img {
	width: 80px;
	height: auto;
}

/* ==================================
	sustainability_top
================================== */

.sustainability_top{
}
.sustainability_top .sustainability_top_main_area{
	margin-bottom: 0;
}
.sustainability_top .sustainability_top_nav_img_top_area{
	margin-top: -50px;
}
.sustainability_top .sustainability_top_img{
}
.sustainability_top .sustainability_top_img img{
	width: 100%;
}
.sustainability_top .nav_img_top_area{
}
.sustainability_top .nav_img_top_block{
	display: flex;
	justify-content: space-between;

}
.sustainability_top .nav_img_top_block li{
	width: 24.3%;
	/* border: 1px solid #000; */
	position: relative;
	box-shadow: 1px 0 10px 1px #ddd;
	background-color: #fff;
	box-sizing: border-box;
	margin-bottom:20px;
}
.sustainability_top .nav_img_top_block li:last-child{
	margin-left: 1px;
}
.sustainability_top .nav_img_top_block li::after{
	content: "";
	position: absolute;
	bottom:20px;
	right: 15px;
	width: 30px;
	height: 8px;
	border-right: solid 1px #ac1757;
	border-bottom: solid 1px #ac1757;
	transform: skew(45deg);
	margin-left: 10px;
}
.sustainability_top .nav_img_top_box{
	position: relative;
	padding: 10px 10px 20px 10px;
	/* border: 1px solid #000; */
	display: block;
}
.sustainability_top .nav_img_top_img{
}
.sustainability_top .nav_img_top_img img{
	width: 100%; 
}
.sustainability_top .nav_img_top_txt{
	padding-top: 0;
	font-weight: 700;
	font-size: 16px;
}
.sustainability_top .esg_menu_area{
}
.sustainability_top .btn_title{
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #ac1757;
	padding: 20px;
	width: 250px;
	height: 100px;
	flex-direction: column;
	position: relative;
}
.sustainability_top .btn_title:after{
	content:"";
	border-radius: 50px;
	background-color: #fff;
	position: absolute;
	width: 24px;
	height: 24px;
	right: 20px;
}
.sustainability_top .btn_title:before {
	content: "";
	position: absolute;
	/* top: 0; */
	/* bottom: 0; */
	/* left: 0; */
	/* margin: auto; */
	vertical-align: middle;
	/* left: 3px; */
	width: 8px;
	height: 8px;
	border-top: 2px solid #ac1757;
	border-right: 2px solid #ac1757;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	/* margin-top: 3px; */
	right: 29px;
	z-index: 5;
}
.sustainability_top .btn_title_txt{
	color: #fff;
	font-size: 24px;
	line-height: 1;
	text-align: center;
	margin-right:20px;
}
.sustainability_top .btn_title_sub_txt{
	color: #fff;
	font-weight: 400;
	font-size: 14px;
}
.sustainability_top .esg_menu_list_area{
	background-color: #eee;
	margin-top: -70px;
	margin-left: 80px;
	
}
.sustainability_top  .esg_menu_list_bg_color{
	background-color: rgba(255,255,255,0.8);
}
.sustainability_top .esg_menu_area.environment .esg_menu_list_area{
	background-image: url(../sustainability/sustainability/bg_esg_menu_list_area01.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.sustainability_top .esg_menu_area.social .esg_menu_list_area{
	background-image: url(../sustainability/sustainability/bg_esg_menu_list_area02.jpg);
	background-position: right 35% top 40%;
	background-repeat: no-repeat;
	background-size: cover;
}

.sustainability_top .esg_menu_area.governance .esg_menu_list_area{
	background-image: url(../sustainability/sustainability/bg_esg_menu_list_area03.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.sustainability_top .esg_menu_list_block{display: flex;justify-content: space-between;flex-wrap: wrap;padding: 100px 50px 50px 100px;align-items: center;}
@media only screen and (min-width: 1000px) {
	.sustainability_top .esg_menu_list_block{
		padding: 55px 50px 55px 280px;
		}
}
.sustainability_top .esg_menu_list{width: 48%;font-size: 20px;padding-top: 20px;}
.sustainability_top .esg_menu_list:nth-child(1),
.sustainability_top .esg_menu_list:nth-child(2) {
	padding-top: 0 ;
}
.sustainability_top .esg_menu_list .esg_menu_list_link {
	padding: 0 0 0 30px;
	position: relative;
	margin-left: -30px;
}

.sustainability_top .esg_menu_list .esg_menu_list_link::before{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	left: 3px;
	width: 12px;
	height: 12px;
	border-top: 2px solid #ac1757;
	border-right: 2px solid #ac1757;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.sustainability_top hr.sustainability_top_hr{
	background-color: #DCDCDC;
	height:1px;
	position: relative;
	border: none;
	margin-top: 80px;
	margin-bottom: 80px;
}
.sustainability_top .sustainability_top_hr::before{
	content: "";
	width: 60px;
	background-color: #ac1757;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 2px;
	margin: auto;
}
.sustainability_top .nav_img_bottom_block{
	display: flex;
	justify-content: space-between;
}
.sustainability_top .nav_img_bottom_box{
	width: 19.2%;
	padding-bottom: 40px;
}
.sustainability_top .nav_img_bottom_img{
}
.sustainability_top .nav_img_bottom_img img{
	width: 100%;
}
.sustainability_top .nav_img_bottom_txt{
	text-align: center;
	font-size: 16px;
	font-weight: 700;
}


@media only screen and (max-width: 767px) {
	.sustainability_top{
	}
	.sustainability_top .sustainability_top_main_area{margin-bottom: 20px;}
	.sustainability_top .sustainability_top_nav_img_top_area{margin-top: 0;}
	.sustainability_top .sustainability_top_img{
	}
	.sustainability_top .sustainability_top_img img{

	}
	.sustainability_top .nav_img_top_area{
	}
	.sustainability_top .nav_img_top_block{flex-wrap: wrap;}
	.sustainability_top .nav_img_top_block li{width: 49%;}
	.sustainability_top .nav_img_top_block li:last-child{
		margin-left: 0;
	}
	.sustainability_top .nav_img_top_block li::after{

	}
	.sustainability_top .nav_img_top_box{

	}
	.sustainability_top .nav_img_top_img{
	}
	.sustainability_top .nav_img_top_img img{

	}
	.sustainability_top .nav_img_top_txt{

	}
	.sustainability_top .esg_menu_area{
	}
	.sustainability_top .btn_title{width: 80%;margin: 0 auto;height: 120px;}
	.sustainability_top .btn_title:after{width: 40px;height: 40px;right: 50px;}
	.sustainability_top .btn_title:before {width: 14px;height: 14px;right: 66px;}
	.sustainability_top .btn_title_txt{width: 100%;font-size: 24px;}
	.sustainability_top .btn_title_sub_txt{

	}
	.sustainability_top .esg_menu_list_area{
    
    margin-left: 0;
    margin-top: -60px;
}
.sustainability_top .esg_menu_area.environment .esg_menu_list_area{
	background-image: url(../sustainability/sustainability/bg_esg_menu_list_area01.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.sustainability_top .esg_menu_area.social .esg_menu_list_area{
	background-image: url(../sustainability/sustainability/bg_esg_menu_list_area02.jpg);
	background-position: right 60% top 25%;
	background-repeat: no-repeat;
	background-size: cover;
}

.sustainability_top .esg_menu_area.governance .esg_menu_list_area{
	background-image: url(../sustainability/sustainability/bg_esg_menu_list_area03.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
	.sustainability_top .esg_menu_list_block{padding: 90px 70px 50px 70px;}
	.sustainability_top .esg_menu_list{width: 100%;font-size: 18px;}
	.sustainability_top .esg_menu_list:nth-child(1),
	.sustainability_top .esg_menu_list:nth-child(2) {padding-top: 20px;}
	.sustainability_top .esg_menu_list .esg_menu_list_link {

	}
	
	.sustainability_top .esg_menu_list .esg_menu_list_link::before{

	}
	.sustainability_top hr.sustainability_top_hr{

	}
	.sustainability_top .sustainability_top_hr::before{

	}
	.sustainability_top .nav_img_bottom_block{flex-wrap: wrap;justify-content: flex-start;}
	.sustainability_top .nav_img_bottom_box{width: calc(100%/3 + -2%);}
	.sustainability_top .nav_img_bottom_box:not(:nth-child(3n+1)){
		margin-left: 20px;
	}
	.sustainability_top .nav_img_bottom_img{
	}
	.sustainability_top .nav_img_bottom_img img{

	}
	.sustainability_top .nav_img_bottom_txt{

	}
}

/* ==================================
	low-carbon06
================================== */

.low-carbon06 .low-carbon06_only_table th,
.low-carbon06 .low-carbon06_only_table td {
    vertical-align: middle;
    text-align: center;
}

.low-carbon06 .low-carbon06_only_table td.align_left {
    text-align: left;
}

.low-carbon06 .low-carbon06_only_table td.col01 {
    width: 10%;
}

.low-carbon06 .low-carbon06_only_table td.col02 {
    width: 10%;
}

.low-carbon06 .low-carbon06_only_table td.col03 {
    width: 10%;
}

.low-carbon06 .low-carbon06_only_table td.col04 {
    width: 50%;
}

.low-carbon06 .low-carbon06_only_table td.col05 {
    width: 10%;
}

.low-carbon06 .low-carbon06_only_table td.col06 {
    width: 10%;
}

/* ==================================
	management
================================== */

.management .content_block .content_sus_table_wrap .content_sus_table {
    
}

@media only screen and (max-width: 767px) {
    .management .content_block .content_sus_table_wrap .content_sus_table th:nth-child(1) {
        position: relative;
    }

    .management .content_block .content_sus_table_wrap .content_sus_table.th_colspan2 th:nth-child(2) {
        position: relative;
        left: 0;
    }

	.content_block .content_sus_table_wrap .content_sus_table.th_colspan5 {
        width: 1370px;
    }
    
    .management .content_block .content_sus_table_wrap .content_sus_table tbody td p {
        width: auto;
        padding: 5px;
    }

}


.management span.p_indent {
    margin-left: 1em;
    text-indent: -1em;
    display: block;
    font-size: 12px;
}

@media only screen and (max-width: 767px) {
    .management span.p_indent {
        margin-left: 1.8em;
        text-indent: -1.8em;
    }
}

.management span.p_indent_emphasis {
    margin-left: 1em;
    text-indent: -1em;
    display: block;
}

@media only screen and (max-width: 767px) {
    .management span.p_indent_emphasis {
        margin-left: 1.8em;
        text-indent: -1.8em;
    }
}

/* ==================================
	btn
================================== */
.btn_01 {
    color: #fff;
    background-color: #ac1757;
    padding: 10px 50px;
    border-radius: 12px;
    box-shadow: 2px 2px 4px;
    width: 250px;
    display: inline-block;
    margin-right: 20px;
}

.btn_02 {
    color: #fff;
    background-color: #bbb;
    padding: 10px 50px;
    border-radius: 12px;
    box-shadow: 2px 2px 4px;
    width: 250px;
    display: inline-block;
    margin-left: 20px;
}


#ir_schedule {
	width: 100%;
	margin-bottom: 15px;
}
#ir_schedule th {
	width: 170px;
    border-right: 1px solid #999999;
    border-bottom: 1px dotted #dddddd;
    background-color: #f5f5f5;
    padding: 10px 0 10px 5px;
    font-size: 14px;
    text-align: left;
	font-family: monospace, serif;
}
#ir_schedule td {
    font-size: 16px;
    line-height: 1.5;
    padding: 10px 0 10px 5px;
    border-bottom: 1px dotted #dddddd;
	text-align: left;
}
#btn_schedule {
	background-color: #eeeeee;
	width: 100px;
	display: inline-block;
	text-align: center;
	line-height: 24px;
	border-radius: 12px;
}

/* ==================================
	Frame border
================================== */

.box26 {
    position: relative;
    margin: 2em 0;
    padding: 0.5em 1em;
    border: solid 2px #333;
    display: table;
  margin-right: auto;
  margin-left: auto;
/*    border-radius: 8px;*/
}
.box26 .box-title {
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 25%;
    padding: 0 9px;
    line-height: 1;
    font-size: 18px;
    background: #FFF;
    color: #333;
    font-weight: bold;
}

.content_block .box26 .text_list {
    padding: 10px 20px 10px ;
    font-weight: 700;
    margin-bottom: 0;
}

/* ==================================
	materiality02
================================== */
table.materiality_kpi {
    border: 1px solid #ccc;
    border-color: #ccc;
    width: 100%;
    margin-bottom: 20px;
    
}

table.materiality_kpi a {
    border-bottom: 1px solid #000;
    line-height: 1.5;
}

table.materiality_kpi tr td:nth-child(1),
table.materiality_kpi tr td:nth-child(4) {
    text-align: center;
}

table.materiality_kpi tr td p {
    text-indent: -1em;
    margin-left: 1em;
    font-feature-settings:normal;
}

table.materiality_kpi tr td p:not(:last-child) {
    padding-bottom: 10px;
}

table.materiality_kpi tr th {
    text-align: left;
    background-color: #eee;
}

table.materiality_kpi tr th,
table.materiality_kpi tr td {
    padding: 5px;
    border-bottom: 1px solid #ccc;
    border-right: 1px solid #ccc;
    line-height: 1.5;
    vertical-align: middle;
}


table.materiality_kpi tr th:nth-child(1) {
    width:25%;
}

table.materiality_kpi tr th:nth-child(2),
table.materiality_kpi tr td:nth-child(2) {
    width:30%;
}

table.materiality_kpi tr th:nth-child(3),
table.materiality_kpi tr td:nth-child(3){
    width:30%;
    border-right: none;
}

table.materiality_kpi tr th:nth-child(4) {
    width:15%;
}

table.materiality_kpi tr td:nth-child(4) img {
    width: 100px;
}

.supply-chain05 .content_sus_table th p {
    display: block;
    font-size: 12px;
    text-align: left;
    margin: 0 0 5px 0;
    padding: 10px 0 10px 5px;
}

.supply-chain05 .content_sus_table thead th p {
    margin: 0;
    padding: 0;
    font-size: 16px;
    font-weight: 400;
}

.supply-chain05 .content_sus_table thead th p:nth-child(2) {
    text-align: right;
}

.supply-chain05 .content_sus_table thead th {
    background-color: transparent;
    border:none;
}

.supply-chain05 .content_sus_table th:nth-child(1) {
    position: relative;
}


/*gdpr*/

.gdpr .gdpr_ul {
    margin-bottom: 1em;
}

.gdpr .gdpr_ul li {
    font-size: 16px;
    line-height: 1.6;
    margin-left: 1.5em;
    text-indent: -1.5em;
    padding-bottom: 5px;
}

.btn_gdpr_switch {
    text-align: right;
    padding-bottom: 10px;
}

.btn_gdpr_switch a {
    display: inline-block;
    padding: 3px;
    background-color: #A11943;
    border-radius: 20px;
    color: #fff;
    width: 140px;
    text-align: center;
}





/* ==================================
    governance02
================================== */

.governance02 .p_indent {
    margin-left: 1.7em;
    text-indent: -1.7em;
    display: block;
    font-size: 16px;
}

/* ==================================
    guidelines
================================== */

.guidelines .content_sus_table_wrap .content_sus_table a {
    text-decoration: underline;
}

.guidelines .region_block {
    max-width: 150px;
    display: block;
    position: relative;
}

.guidelines .region_block .wage {
    position: absolute;
    right: 0;
}

@media only screen and (max-width: 767px) {
    .guidelines .region_block .wage {
        position: relative;
    }
}

/* ==================================
	sus_list_flex
================================== */
.sus_list_flex {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	margin: 0 0 50px 0;
}
.sus_list_flex div {
	width: 33.33%;
	margin: 0 0 30px 0;
}
.sus_list_flex div:nth-child(3n-2) {
	padding: 0 10px 0 0;
}
.sus_list_flex div:nth-child(3n-1) {
	padding: 0 5px 0 5px;
}
.sus_list_flex div:nth-child(3n) {
	padding: 0 0 0 10px;
}
.sus_list_flex ul li {
	font-size: 14px;
	margin: 0 0 10px 0;
}
.sus_list_flex ul li:first-child {
	font-size: 18px;
	color: #ac1757;
	border-bottom: 1px solid #999999;
	padding: 0 0 3px 0;
}
.sus_list_flex ul li:first-child a {
	text-decoration: none;
}

@media only screen and (max-width: 767px) {

	/* ==================================
		sus_list_flex
	================================== */
	.sus_list_flex div {
		width: 100%;
		margin: 0 0 60px 0;
	}
	.sus_list_flex div:nth-child(3n-2) {
		padding: 0 0 0 0;
	}
	.sus_list_flex div:nth-child(3n-1) {
		padding: 0 0 0 0;
	}
	.sus_list_flex div:nth-child(3n) {
		padding: 0 0 0 0;
	}
	.sus_list_flex ul li {
		margin: 0 0 30px 0;
	}
}


@media only screen and (max-width: 767px) {

	*, *:before, *:after {
		-webkit-text-size-adjust: 180%;
	}

	html {
		font-size: 110%;
	}
	.info_area {
		line-height: 1.5;
		font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
		background-color: #eeeeee;
		padding: 10px 0;
	}


	/* ==================================
		header
	================================== */
	.header_cell:nth-child(1) a {
		width: 160px;
	}
	.header_cell:nth-child(2) {
		width: 50px;
	}
	.header_cell:nth-child(2) ul {
		display: none;
	}

	/* ==================================
		layut
	================================== */
	.link_group_site li {
		width: 33.33%;
		margin: 0 0 20px 0;
		border: 0 !important;
	}
    
    /* ==================================
	    slider
    ================================== */
    #sub_slider li p {
        min-height: 60px;
    }

	/* ==================================
		nav
	================================== */
	nav {
		padding: 0;
		margin: 0;
	}
	.nav_table {
		display: none;
	}
	.sub_wrap {
		display: none;
		position: relative;
		margin: 0;
		left: 0;
		padding: 0 0 10px 0;
	}
	.sub_wrap.active {
		display: block;
	}
	.sub_block {
		display: block;
		background-color: #333333;
		padding: 0 0 75px 0;
		width: 100%;
	}
	.sub_table,
	.sub_cell {
		display: block;
		padding: 0;
		width: 100%;
	}
	.sub_cell:first-child img,
	.sub_cell:first-child p {
		display: none;
	}
	.sub_cell h1,
	.sub_cell ul {
		margin: 0;
	}
	.sub_cell h1,
	.sub_cell a {
		margin: 0;
		padding: 0 0 0 20px;
		font-size: 24px;
		line-height: 2;
	}
	.sub_cell h1 {
		border-bottom: 2px solid #ffffff;
	}
	.sub_cell li.pad2 {
		padding-left: 30px;
	}
	#sub_search {
		display: none;
	}
	.sub_block .nav_close p {
		display: none;
	}
	.sub_cell li.spacer {
		height: 30px;
	}
	/* ==================================
		pankuzu
	================================== */
	.pankuzu {
		margin: 0 0 20px 0;
		padding: 10px 10px;
	}
	.pankuzu div:first-child {
		padding: 0 30px 0 0;
	}
	.pankuzu div:last-child {
		width: 200px;
	}
	.pankuzu li {
		
		line-height: 1.25;
	}
	.pankuzu time {
		
	}

	/* ==================================
		responsive
	================================== */
	.pc {
		display: none;
	}
	.sp {
		display: block;
	}

	/* ==================================
		contentBlock
	================================== */
	.content_block h1.pTit {
		margin: 0 0 10px 0;
	}
	.content_block p.pTxt {
		margin: 0 0 20px 0;
	}


	/* ==================================
		content_title
	================================== */
	.content_title {
		padding: 10px;
	}
	.content_title h1 {
		font-size: 24px;
		margin: 0 0 5px 0;
	}
	.content_sub_title h2 {
		text-align: left;
		font-size: 24px;
	}
	.content_sub_title h3 {
		text-align: left;
		font-size: 24px;
	}

	/* ==================================
		block
	================================== */
	/* ----------------------
		link_top_3
	---------------------- */
	.link_top_3 li a {
		background-size: 100px 4px;
		height: 150px;
        min-height: 150px;
	}
    
    /* ----------------------
		link_top_1
	---------------------- */
    
    .link_top_1 {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
    
	.link_top_1 li {
		width: 50%;
	}
	.link_top_1 li:nth-child(3n-2) {
		padding: 0 0 0 0;
	}
	.link_top_1 li:nth-child(3n-1) {
		padding: 0 0 0 0;
	}
	.link_top_1 li:nth-child(3n) {
		padding: 0 0 0 0;
	}
	.link_top_1 li:nth-child(2n-1) {
		padding: 0 10px 0 0;
	}
	.link_top_1 li:nth-child(2n) {
		padding: 0 0 0 10px;
	}
	.link_top_1 li a {
		height: 150px;
		background-position: center top;
		background-size: 100px 4px;
		padding: 0;
	}
	.link_top_1 li h1 {
		text-align: center;
		margin: 20px 0 5px 0;
	}
	.link_top_1 li small {
		text-align: center;
		margin: 5px 0 5px 0;
	}

	/* ----------------------
		link_top_2
	---------------------- */
	.link_top_2 li {
		width: 50%;
	}
	.link_top_2 li:nth-child(3n-2) {
		padding: 0 0 0 0;
	}
	.link_top_2 li:nth-child(3n-1) {
		padding: 0 0 0 0;
	}
	.link_top_2 li:nth-child(3n) {
		padding: 0 0 0 0;
	}
	.link_top_2 li:nth-child(2n-1) {
		padding: 0 10px 0 0;
	}
	.link_top_2 li:nth-child(2n) {
		padding: 0 0 0 10px;
	}
	.link_top_2 li a {
		background-size: 100px 4px;
		height: 150px;
        min-height: 150px;
	}
	.link_top_2 li small {
		text-overflow: ellipsis;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}
	.link_top_2 li p {
		font-size: 20px;
	}


	/* ----------------------
		link_left_3
	---------------------- */
	.link_left_3 li {
		width: 50%;
	}
	.link_left_3 li:nth-child(3n-2) {
		padding: 0 0 0 0;
	}
	.link_left_3 li:nth-child(3n-1) {
		padding: 0 0 0 0;
	}
	.link_left_3 li:nth-child(3n) {
		padding: 0 0 0 0;
	}
	.link_left_3 li:nth-child(2n-1) {
		padding: 0 10px 0 0;
	}
	.link_left_3 li:nth-child(2n) {
		padding: 0 0 0 10px;
	}
	.link_left_3 li a {
		height: 150px;
		background-position: center top;
		background-size: 100px 4px;
		padding: 0 20px;
        min-height: 150px;
	}
	.link_left_3 li h1 {
		text-align: center;
		margin: 20px 0 5px 0;
        
	}
	.link_left_3 li small {
		text-align: center;
		margin: 5px 0 5px 0;
	}
    
    /* ----------------------
		link_top_4
	---------------------- */
	.link_top_4 li {
		width: 50%;
	}
	.link_top_4 li:nth-child(3n-2) {
		padding: 0 0 0 0;
	}
	.link_top_4 li:nth-child(3n-1) {
		padding: 0 0 0 0;
	}
	.link_top_4 li:nth-child(3n) {
		padding: 0 0 0 0;
	}
	.link_top_4 li:nth-child(2n-1) {
		padding: 0 10px 0 0;
	}
	.link_top_4 li:nth-child(2n) {
		padding: 0 0 0 10px;
	}
	.link_top_4 li a {
		height: 150px;
		background-position: center top;
		background-size: 100px 4px;
		padding: 0;
	}
	.link_top_4 li h1 {
		text-align: center;
		margin: 20px 0 5px 0;
	}
	.link_top_4 li small {
		text-align: center;
		margin: 5px 0 5px 0;
	}


	/* ----------------------
		list_news
	---------------------- */
	.list_news a {
		margin: 0 0 40px 0;
	}
	.list_news time {
		display: block;
		font-weight: bold;
	}
	.list_news time,
	.list_news p {
		
		line-height: 1.5;
	}
	.list_news span {
		width: 120px;
	}
    
    .list_news div,
    .list_news p,
    .list_news span {
	    display: block;
    }

	/* -------- */
	.ir_content_table {
		display: block;
	}
    .ir_content_table > div:nth-child(1) img ,
	.ir_content_table > div:nth-child(2) img {
		display: block;
		margin: 0 auto 50px auto;
		width: 438px;
	}
	.ir_content_table > div {
		display: block;
	}
    
    .ir_content_table.ir_calendar_table .navimenu_1 {
    width:100%;
    padding-left: 0;
    }

	/* ----------------------
		btn_table
	---------------------- */
	.btn_table {
		display: table;
		width: 100%;
		max-width: auto;
	}
	.btn {
		width: 100%;
	}


	/* ----------------------
		graph_area
	---------------------- */
	.graph_block {
		width: 100%;
	}
	.graph_block,
	.graph_block:nth-child(3n) {
		margin-right: 0;
	}
	.graph_title {
		height: 60px;
	}
	.graph_title h2 {
		font-size: 28px;
	}
	.graph_title p {
		
	}
	.graph_caption {
		margin: 20px 0;
	}
	.graph_caption > div {
		font-size: 22px;
	}
	.graph_caption div:nth-child(2) span,
	.graph_caption div:nth-child(3) span {
		width: 19px;
		height: 19px;
	}

	/* ----------------------
		data_col2
	---------------------- */
	.data_col2,
	.data_col2 > div {
		display: block;
		width: 100%;
	}
	.data_col2 > div:first-child,
	.data_col2 > div:last-child  {
		padding: 0 0 0 0;
	}
	.annual_title img {
		width: 250px;
	}
    .sustainability_report_title .batch_dl img {
        max-width: 70%;
        margin: 30px auto;
    }

    /* ==================================
	    bnr_block
    ================================== */

    .bnr_block .bnr_top_4 {
        flex-wrap: wrap;
    }

    .bnr_block .bnr_top_4 div {
        padding: 0px 0 20px 0;
        width:50%;
    }
    
    .bnr_block .bnr_top_4 div:nth-child(odd) {
        padding-right: 10px;
    }
    
    .bnr_block .bnr_top_4 div:nth-child(even) {
        padding-left: 10px;
    }
    
    .bnr_block .bnr_top_4 div img {
        width: 100%;
    }

	/* ==================================
		data_dtdd
	================================== */
	.data_dtdd dt {
		width: 90px;
	}
	/* ==================================
		content_ir_table
	================================== */
	.content_ir_table_wrap {
		margin: 0 0 70px 0;
		overflow-x: scroll;
	}
	.content_ir_table_wrap::-webkit-scrollbar {
		-webkit-appearance: none;
		height: 10px;
	}
	.content_ir_table_wrap::-webkit-scrollbar-track {
		-webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
		-webkit-border-radius: 8px;
		border-radius: 8px;
	}
	.content_ir_table_wrap::-webkit-scrollbar-thumb {
		-webkit-border-radius: 8px;
		border-radius: 8px;
		background-color: rgba(0, 0, 0, .5);
		-webkit-box-shadow: 0 0 1px rgba(255, 255, 255, .5);
		box-shadow: 0 0 1px rgba(255, 255, 255, .5);
	}
	.content_ir_table th {
		position: -webkit-sticky;
		position: sticky;
		left: 0;
		z-index: 1;
		padding: 0 0 0 10px;
	}
	.content_ir_table.position_inherit th {
		position: -webkit-inherit;
		position: inherit;
	}
	.content_ir_table thead th i {
		color: #999999;
		
	}
	/*--------------*/
	.content_ir_table.col3 {
		width: 727px;
	}
	.content_ir_table.col4 {
		width: 850px;
	}
	.content_ir_table.col5 {
		width: 1020px;
	}
	.content_ir_table.col6 {
		width: 1190px;
	}
	.content_ir_table.col7 {
		width: 1360px;
	}
	.content_ir_table.col8 {
		width: 1530px;
	}
	.content_ir_table.col9 {
		width: 1700px;
	}
    .content_ir_table.col16 {
		width: 2890px;
	}
	.content_ir_table.col3 th,
	.content_ir_table.col4 th,
	.content_ir_table.col5 th,
	.content_ir_table.col6 th,
	.content_ir_table.col7 th,
	.content_ir_table.col8 th,
	.content_ir_table.col9 th,
    .content_ir_table.col16 th {
		width: 340px;
	}
	.content_ir_table.col3 td {
		width: 193px;
	}
	.content_ir_table.col4 td,
	.content_ir_table.col5 td,
	.content_ir_table.col6 td,
	.content_ir_table.col7 td,
	.content_ir_table.col8 td,
	.content_ir_table.col9 td,
    .content_ir_table.col16 td {
		width: 170px;
	}


	.content_ir_table tbody td p,
	.content_ir_table tbody td b {
		width: 150px;
	}
    
    .supply-chain02 .content_ir_table tbody td b,
    .supply-chain02 .content_ir_table tbody td p {
	    width: 150px;
    }
    
    /* ==================================
		content_sus_table
	================================== */
	.content_sus_table_wrap {
		margin: 0 0 70px 0;
		overflow-x: scroll;
	}
	.content_sus_table_wrap::-webkit-scrollbar {
		-webkit-appearance: none;
		height: 10px;
	}
	.content_sus_table_wrap::-webkit-scrollbar-track {
		-webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
		-webkit-border-radius: 8px;
		border-radius: 8px;
	}
	.content_sus_table_wrap::-webkit-scrollbar-thumb {
		-webkit-border-radius: 8px;
		border-radius: 8px;
		background-color: rgba(0, 0, 0, .5);
		-webkit-box-shadow: 0 0 1px rgba(255, 255, 255, .5);
		box-shadow: 0 0 1px rgba(255, 255, 255, .5);
	}
	.content_sus_table th:nth-child(1) {
		position: -webkit-sticky;
		position: sticky;
		left: 0;
		z-index: 1;
		padding: 0 0 0 10px;
	}

	.content_sus_table.col10.th_colspan5 th:nth-child(1) {
		position: -webkit-sticky;
		position: inherit;
	}

	.content_sus_table.position_inherit th {
		position: -webkit-inherit;
		position: inherit;
	}
    
    .content_sus_table.th_colspan2 th:nth-child(2) {
		position: -webkit-sticky;
		position: sticky;
		left: 193px;
		z-index: 1;
		padding: 0 0 0 10px;
	}
    
    .content_sus_table.th_colspan3 th:nth-child(2) {
		position: -webkit-sticky;
		position: sticky;
		left: 145px;
		z-index: 1;
		padding: 0 0 0 10px;
	}
    
    .content_sus_table.th_colspan3 th:nth-child(3) {
		position: -webkit-sticky;
		position: sticky;
		left: 290px;
		z-index: 1;
		padding: 0 0 0 10px;
	}
    
    .content_sus_table .tr_th_colspan3 th:nth-child(2) {
        position: -webkit-sticky;
		position: sticky;
        left: 256px;
        z-index: 1;
    }
    
    .content_sus_table .tr_th_colspan3 th:nth-child(3) {
        position: -webkit-sticky;
		position: sticky;
        left: 419px;
        z-index: 1;
    }
    
    .content_sus_table .tr_th_colspan4 th:nth-child(2) {
        position: -webkit-sticky;
		position: sticky;
        left: 140px;
        z-index: 1;
    }
    
    .content_sus_table .tr_th_colspan4 th:nth-child(3) {
        position: -webkit-sticky;
		position: sticky;
        left: 256px;
        z-index: 1;
    }
    
    .content_sus_table .tr_th_colspan4 th:nth-child(4) {
        position: -webkit-sticky;
		position: sticky;
        left: 419px;
        z-index: 1;
    }
    
    .content_sus_table tbody td.sticky_cell {
        position: -webkit-sticky;
		position: sticky;
        left: 0;
        z-index: 1;
    }
    
	.content_sus_table thead th i {
		color: #999999;
		
	}
	/*--------------*/
	.content_sus_table.col3 {
		width: 727px;
	}
	.content_sus_table.col4 {
		width: 850px;
	}
	.content_sus_table.col5 {
		width: 1020px;
	}
	.content_sus_table.col6 {
		width: 1190px;
	}
	.content_sus_table.col7 {
		width: 1360px;
	}
	.content_sus_table.col8 {
		width: 1530px;
	}
	.content_sus_table.col9 {
		width: 1700px;
	}
    .content_sus_table.col16 {
		width: 2890px;
	}
	.content_sus_table.col3 th,
	.content_sus_table.col4 th,
	.content_sus_table.col5 th,
	.content_sus_table.col6 th,
	.content_sus_table.col7 th,
	.content_sus_table.col8 th,
	.content_sus_table.col9 th,
    .content_sus_table.col16 th {
		width: 340px;
	}

    .content_sus_table.th_colspan2 th {
		width: 170px;
	}
    
	.content_sus_table.th_colspan3 th {
		width: 113px;
	}



	.content_sus_table.col3 td {
		width: 193px;
	}
	.content_sus_table.col4 td,
	.content_sus_table.col5 td,
	.content_sus_table.col6 td,
	.content_sus_table.col7 td,
	.content_sus_table.col8 td,
	.content_sus_table.col9 td,
    .content_sus_table.col16 td{
		width: 170px;
	}


	.content_sus_table tbody td p,
	.content_sus_table tbody td b {
		/* width: 150px; */
	}
    
    .low-carbon06 .content_sus_table tbody td p,
	.low-carbon06 .content_sus_table tbody td b {
		width: auto;
	}

	/* ==================================
		img block
	================================== */
/*	.imgBlock > figure > figcaption {
		font-size: 22px;
	}
*/
	/* ==================================
		footer
	================================== */
	.footer_wrap {
		padding: 0;
	}
	.footer_table {
		display: block;
		overflow: hidden;
		margin: 0;
		padding: 0;
	}
	.footer_cell {
		width: 33.33%;
		padding: 0;
	}
	.footer_cell h1 {
		width: 100%;
		margin: 0;
	}
	.footer_cell,
	.footer_cell h1 {
		display: block;
		overflow: hidden;
		float: left;
	}
	.footer_cell:last-child {
		width: 100%;
	}
	.footer_cell:last-child h1 {
		width: 33.33%;
	}
	.footer_cell h1 a {
		display: flex;
		width: 100%;
		margin: 0;
		padding: 20px 0 20px 10px;
		border-bottom: 0;
		font-size: 14px;
		font-weight: normal;
		border-right: 2px solid #ffffff;
		border-bottom: 2px solid #ffffff;
		height: 90px;
		align-items: center;
	}
	.footer_cell:nth-child(3) h1 a,
	.footer_cell:nth-child(4) h1:nth-of-type(3) a,
	.footer_cell:nth-child(4) h1:nth-of-type(6) a {
		border-right: 0 solid #ffffff;
	}
	.footer_cell ul {
		display: none;
	}
	#page-top {
		width: 125px;
		height: 125px;
		padding: 20px;
	}
	.footer_copy {
		padding: 10px 0 130px 0;
		font-size: 12px;
	}

	/* ==================================
		link_list
	================================== */
	.content_block h1.pTit small {
		display: block;
		margin: 10px 0 0 0;
	}
	/* ==================================
		content_table
	================================== */
	.content_table tbody th {
		width: 250px;
		padding: 20px 0 20px 5px;
	/*	font-size: 26px; */
	}
	.content_table tbody td {
	/*	font-size: 26px; */
		padding: 20px 0 20px 5px;
		min-width: 150px;
	}
    
    /* ==================================
	    picture_block_2
    ================================== */
    
    .picture_block_2 li {
        width:100%;
    }
    
    /* ==================================
	    materiality02
    ================================== */
    
    .materiality02 .imgBlock.col2 > figure,
    .materiality02 .imgBlock.col2 > p {
        display: block;
	    padding: 30px 0 0;
	    text-align: left;
    }
    .materiality02 .listBlock_txt {
        display: block;
	    padding: 0;
    }    
    .materiality02 .listBlock > figure {
	    margin: 0 auto;
	    display: block;
        padding: 30px 0 0;
    }

	/* ==================================
		materiality
	================================== */
	.sustainability_materiality_nav_area .sustainability_materiality_nav_block {
		width: 100%;
	}
	.sustainability_materiality_nav_area .sustainability_materiality_nav_category {
		font-size: 16px;
	}
	.sustainability_materiality_nav_area .sustainability_materiality_nav_category a::after {
		content: "";
		position: absolute;
		right: -1.0em;
		width: 14px;
		height: 14px;
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg) translateY(-75%);
		top: 50%;
	}
	.sustainability_materiality_nav_area ul.sustainability_materiality_nav_list li a::before {
		content: "";
		position: absolute;
		left: -30px;
		width: 12px;
		height: 12px;
		border-top: 2px solid #AC1757;
		border-right: 2px solid #AC1757;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg) translateY(-75%);
		top: 50%;
	}
    
    /* ==================================
	    IR_mainpic
    ================================== */
    
    h1.mainpic {
        top:30%;
    }
    
    /* ==================================
	    Frame border
    ================================== */

    .box26 .box-title {
        left: 13%;
        top: -33px;
        text-align: center;
        width:530px;
    }
    
    .content_block .box26 .text_list {
        padding:30px 20px 10px;
    }

}
@media print { 
	@page {
		size: A4;
		margin: 12.7mm 9.7mm;
	}
	body {
		zoom: 0.78;
		-webkit-print-color-adjust: exact;
	}
	html {
		font-size: 45%;
	}
	.header_logo{
		display: none;
	}
	.header_table div:last-child {
		display: none;
	}
	nav {
		display: none;
	}
	aside {
		display: none;
	}
	article {
		margin-top: 20px;
	}
	footer {
		display: none;
	}
	.link_top_2 li a,
	.link_top_3 li a {
		height: auto;
	}

}
/* IE10以上 */
@media print and (-ms-high-contrast: none) {
        /* @pageの指定いらないかも */
    @page {
        size: A4;
        margin: 12.7mm 9.7mm;
    }

    body {
        zoom: 1.6;
        width: 1000px;
        transform: scale(0.7);
        transform-origin: 0 0;
    }
}

	/* ==================================
		2022/10/26 content_sus_table border
    ================================== */

  table { border-collapse: separate !important; }

  .content_sus_table th,
  .content_sus_table td {
						  border-bottom: 1px solid #dddddd !important;
						  border-right: 1px solid #dddddd !important;
						}

  .content_sus_table th:last-child,
  .content_sus_table td:last-child {
						  border-right: 0 !important;
						}


/* Materiality Issues (Important Issues) SDGs */
.floatR_txt {
	float: right;
}
#sustainability_contents_materiality_03 > .materiality_kpi td p {
	text-indent: 0;
}
#sustainability_contents_materiality_04 > .materiality_kpi td p {
	text-indent: 0;
	margin-left: 0;
}


/* ==================================
		2024/4/23 management_plan 表
    ================================== */

	table.management_plan tr th,
	table.management_plan tr td {
		padding: 10px;
		border-bottom: 1px solid #000;
		border-right: 1px solid #000;
		line-height: 1.5;
		vertical-align: baseline;
	}
	table.management_plan tr th:nth-child(2),
	table.management_plan tr td:nth-child(2) {
		width: 50%;
	}
	table.management_plan {
		border: 1px solid #000;
		border-color: #000;
		width: 100%;
		margin-bottom: 20px;
		border-bottom: none;
	}
	table.management_plan tr th:nth-child(2),
	table.management_plan tr td:nth-child(2) {
		border-right: none;
	}
	table.bg_blue tr th:first-child,
	table.bg_blue tr td:first-child {
		background-color: #DEEAF6;
	}
	table.bg_blue tr td:nth-child(2) {
		background-color: #fff;
		text-align: right;
	}
	.imgBlock.col2.grid_col2 {
		display: grid;
		grid-template-columns: 1fr 1fr;
		align-items: center;
		justify-content: space-between;
	}
	.pTxt_underline {
		text-decoration: underline 2px;
		display: inline-block;
	}
	.content_block p.pTxt.p--indent {
		text-indent: -0.5em;
		margin-left: 0.5em;
	}
	table.materiality_table tr th,
	table.materiality_table tr td {
		vertical-align: middle;
	}
	@media only screen and (max-width: 767px) {
		.imgBlock.col2.grid_col2 {
			grid-template-columns: auto;
		}
		.imgBlock.col2.grid_col2 > figure {
			margin: 0 auto;
		}
		.pTxt_underline {
			display: inline;
		}
		.content_block p.pTxt.p--indent {
			text-indent: 0;
			margin-left:0;
		}
	}

	.sustainability_section .data_col2 {
		display: flex;
	}
	
	.sustainability_section .cover {
		width: 41%;
	}
	
	.sustainability_section_img {
		margin-bottom: 35px;
		display: inline-block;
	}
	
	.sustainability_section_img.border {
		border: 1px solid #93cbdb;
	}
	
	.sustainability_section_img img {
		vertical-align: bottom;
	}
	
	@media only screen and (max-width: 767px) {
		.sustainability_section .data_col2 {
			flex-direction: column;
			gap: 40px;
		}
		
		.sustainability_section .cover {
			width: 100%;
		}	
	}



	.sr_2_col {
		display: flex;
		align-items: baseline;
		gap: 20px;
		margin-bottom: 20px;
	}
	
	.sr_item {
		width: 50%;
	}
	
	.sr_thumb {
		margin-bottom: 35px;
		display: block;
	}
	
	.sr_thumb img {
		width: 100%;
		vertical-align: bottom;
	}
	
	.sr_tcfd {
		display: flex;
		gap: 10px;
		margin-bottom: 35px;
	}
	
	.sr_tcfd a {
		width: 50%;
	}
	
	.sr_tcfd img {
		width: 100%;
		vertical-align: bottom;
	}
	
	.sr_nite {
		margin-top: 10px;
	}
	
	
	@media only screen and (max-width: 767px) {
		.sr_2_col {
			flex-direction: column;
		}
		
		.sr_item {
			width: 100%;
		}
		.sr_item:not(:last-child) {
			margin-bottom: 35px;
		}
		.sr_tcfd {
			flex-direction: column;
		}
		
		.sr_tcfd a {
			width: 100%;
		}
	}