@charset "utf-8";

.spOnly{display:none}

.over a,
.over li a{
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	opacity: 1;
}
.over a:hover,
.over li a:hover{
	opacity: 0.7;
}

/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// h1
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

#h1_area{
	width: 100%;
	height: 180px;
}

#h1_area h1{
	max-width: 1300px;
	height: 180px;
	margin: 0 auto;
	padding: 0 5%;
	display:-webkit-flex;
	display: flex;
	align-items: center;
	text-align: left;
}

#h1_area h1 span{
	font-size:2.7vw;
	background: #e4006e;
	padding: 21px 45px 21px 30px;
	font-family:'DIN Next LT W01 Regular';

}

/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// pankuz
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

#pankuz{
	max-width: 1300px;
	margin: 10px auto 50px;
	display: -webkit-flex;
    display: flex;
	padding: 0 5%;
	justify-content: flex-end;
}

#pankuz li{
	font-size:1.5rem;
	margin-right: 5px;	
}
#pankuz li a{
	font-size:1.5rem;
	padding-right: 5px;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	opacity: 1;
}

#pankuz li a:hover{
	opacity: 0.7;
	text-decoration: underline;
}
#pankuz li:after{
	content:">"
}
#pankuz li:last-child:after{
	content:"";
}

/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// content
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

#content_wrap{
	width:100%;
	margin: 0 auto;
	position: relative;
	z-index: 10;
}



#content_area{
	max-width:1300px;
	margin: 0 auto;
	overflow: hidden;
	padding: 10px 5% 50px;
	display: -webkit-flex;
	display: flex;
	justify-content: flex-end;
}

.fullcolumn #content_area{
	width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 10px 0 0 !important;
}


#content_area #content{	
	width: 73%;
	max-width: 950px;
	order: 1;
}

#content_area #content.one_column{	
	width: 100%;
	max-width: 100%;
}

.fullcolumn #content{
	width: 100% !important;
	max-width: 100% !important;
	padding: 0 5%;
}

#content_area #content img{
	width: 100%;
}

#content_area #lo_nav{
	width: 22%;
	max-width: 285px;
	order: 2;
	margin-left: auto;

}

.sns_icon{
	display: -webkit-flex;
	display: flex;
}
.sns_icon li{
	width: 45px;
	margin-right: 7px;
}

/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// local_nav
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

#lo_nav h2{
	padding: 15px;
	border-top:solid 1px #d2d2d2;
}
#lo_nav > ul{	
	border-bottom:solid 1px #d2d2d2;
}

#lo_nav > ul > li {
	border-top:solid 1px #d2d2d2;
}

#lo_nav li a{
	padding: 15px;
	font-size:2.0rem;
	color: #666666;
	display: block;
}

#lo_nav .lo_li > a{
	padding: 15px;
}
#lo_nav ul li ul {
	padding: 0 0 0 5px;
}

#lo_nav .lo_li ul{
	padding-bottom: 10px;
	padding-left: 20px;
}

#lo_nav .lo_li ul a{
	font-size:1.8rem;
}

#lo_nav li.active a{
	font-weight: bold;
}

#lo_nav .btn_wrap{
	display: table;
	width: 100%;
}
#lo_nav .btn_wrap a,
#lo_nav .btn_wrap .ac_nav{
	display: table-cell;
}
#lo_nav .btn_wrap .ac_nav{
	width: 15px;
	background: url(/common/img/icon_ac_off.svg) right 18px no-repeat;
}
#lo_nav .btn_wrap .ac_nav.clickBtn_on0{
	background: url(/common/img/icon_ac_on.svg) right 18px no-repeat;
}

@media all and (-ms-high-contrast:none) {/*IE11用*/
     *::-ms-backdrop, #lo_nav .btn_wrap {
		width: 83%;
	}
}

/*-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// current
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/
#lo_nav li a.current {
	font-weight: 700;
	color: #000;
}

/*-----+-----+-----+-----+-----+-----+
+-----+// Investor Relations
+-----+-----+-----+-----+-----+-----+*/
body.management #lo_nav .management,
body.strategy #lo_nav .strategy,
body.governance #lo_nav .governance,
body.officers #lo_nav .officers,
body.compliance #lo_nav .compliance,
body.risk #lo_nav .risk,
body.finance #lo_nav .finance,
body.stock #lo_nav .stock,
body.library #lo_nav .library,
body.news #lo_nav .news,
body.disclaimer #lo_nav .disclaimer,
body.statements #lo_nav .statements,
body.results #lo_nav .results,
body.presemtations #lo_nav .presemtations
{font-weight: bold;color:#000;}

/*-----+-----+-----+-----+-----+-----+
+-----+// sustainability
+-----+-----+-----+-----+-----+-----+*/
body.management #lo_nav .management,
body.stakeholder #lo_nav .stakeholder,
body.human_rights #lo_nav .human_rights,
body.socialvalue #lo_nav .socialvalue,
body.environmental #lo_nav .environmental,
body.external #lo_nav .external,
body.gri #lo_nav .gri,
body.disclosure #lo_nav .disclosure,
body.report #lo_nav .report
{font-weight: bold;color:#000;}

/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// pagetop
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

#pagetop{
	overflow: hidden;
	position: fixed;
	z-index: 300;
	right: 10px;
	bottom: 20px;
}
#pagetop a{
	width: 70px;
	height: 70px;
	display: block;
	float: right;
	margin-right: 20px;

	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

#pagetop a:hover{
	opacity: 0.7;
}

#pagetop a img{
	width: 100%;
}

/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// Anchor Link
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

#anc01,#anc02,#anc03,#anc04,#anc05,#anc06{
	margin-top:-100px;
  	padding-top:100px;
}

@media (max-width: 1280px) {
    #anc01,#anc02,#anc03,#anc04,#anc05,#anc06{
		margin-top:-180px;
		padding-top:180px;
	}
}

/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// module
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

/*-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// 見出し
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

#content h2{
	font-size:3.0rem;	
	line-height: 1.2;
	padding-top: 5px;
	margin-bottom: 40px;
	font-family:'DIN Next LT W01 Bold';
}

#content .read_txt{
	font-size:3.2rem;
	line-height: 1.4;
}

#content .intro_txt{
	font-size:2.4rem;
	line-height: 1.4;
}

#content h3{
	font-size:2.4rem;
	font-family:'DIN Next LT W01 Bold';
}

#content h4{	
	font-size:1.8rem;
	font-family:'DIN Next LT W01 Bold';
}

/*-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// アンカーリンク
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

.anchor_link{
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
}

.anchor_link li{
	margin-right: 80px;
	margin-bottom: 10px;
}

.anchor_link li a{
	padding-left: 25px;
	font-size:1.8rem;
	line-height: 1.2;
	box-sizing: border-box;
	display: -webkit-flex;
 	display: flex;
    align-items: center;	
	background: url(/common/img/icon_arrow02.svg) left 7px no-repeat #fff;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	opacity: 1;
	
	font-family:'DIN Next LT W01 Regular';
}

.anchor_link a:hover{
	opacity: 0.7;
}


/*-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// ジャンプメニュー
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

.jmenu_wrap{
	display: -webkit-flex;
	display: flex;
	align-content:flex-end;
}

.jmenu_wrap .box{
	width: 465px;
}
.jmenu_wrap .box:last-child{
	margin-left: 20px;
}

.easy-select-box{
	width: 100% !important;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;	
	border: solid 1px #000000;
}
.easy-select-box .esb-displayer{
	background: url(/common/img/btn_select_off.png) right center no-repeat;
	cursor: default;
	padding: 20px 70px 20px 10px;
	min-height: 60px;
	font-size:1.8rem;
	font-weight: bold;
	box-sizing: border-box;
	
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.easy-select-box .esb-displayer:hover {
	background-color: #ededee;
}

.easy-select-box:hover .esb-displayer{
	text-decoration:none;
}

.easy-select-box.active .esb-displayer{
	background: url(/common/img/btn_select_on.png) right center no-repeat;
}


.easy-select-box.disabled .esb-displayer,
.easy-select-box:hover.disabled .esb-displayer{
	background-position: 0 -36px;
}
.easy-select-box .esb-dropdown{
	background: #fff;
	border: 1px solid #000000;
	display: none;
	overflow: auto;
	position: absolute;
	z-index: 999;
}
.easy-select-box  .esb-item{
	padding:5px 10px;
	background:#fff;
	color:#848484;
	cursor:default;
	width: 100%;
	box-sizing: border-box;
}
.easy-select-box .esb-item:hover{
	background:#ededee;
	color:#848484;
	text-decoration:none;
}

/*-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// 本文テキスト
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/
.text{
	font-size:1.8rem;
	line-height: 1.6;
}

.note{
	font-size:1.4rem;
	color: #666;
}
.note a.note {
	color: #5F1985;
    text-decoration: underline;
}
.note a.note:hover {
	text-decoration: none;
}
/*-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// タブメニュー
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

.tab{
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
}

.tab li{
	width: 12.2%;
	max-width: 116px;
	margin-right: 2px;
	margin-bottom: 2px;
	background: #e8e8e8;
	text-align: center;
}

.tab li a{
	color: #b2b2b2;
	display: block;
	padding: 15px 0 13px;
	
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.tab li.clickBtn_on0 a,
.tab li a:hover{
	color:#fff;
	text-decoration: none;
}

.tab_content .dl01{
	display: -webkit-flex;
	display: flex;
	border-bottom: solid 1px #cfcfcf;
	padding: 20px 25px;
}

.tab_content .dl01 dt{
	flex-shrink: 0;
	font-weight: bold;
	margin-right: 20px;
	font-size:1.6rem;
	line-height: 1.6;
}
.tab_content .dl01 dd{
	font-size:1.6rem;
	line-height: 1.6;
}
/*-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// グレーボックス
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

.glaybox{
	padding: 30px 40px;
	background: #ededee;
}

.glaybox h3{
	font-size:2.8rem !important;
	font-family:'DIN Next LT W01 Light' !important;
	font-weight: normal !important;
	margin-bottom: 15px !important;
}

/*-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// アコーディオン
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

.ac_area{
	border-bottom:solid 2px #cccccc;
}
.ac_area .ac_btn{
	cursor: pointer;	
	padding: 20px 25px;
	border-top:solid 2px #cccccc;
	background: url(/common/img/icon_ac_off.svg) 98% 25px no-repeat #fff;
	font-family:'DIN Next LT W01 Light' !important;
	
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.ac_area .ac_btn.clickBtn_on1{
	font-family:'DIN Next LT W01 Bold' !important;
	/*margin: -1px 0 0 -1px;*/
	background: url(/common/img/icon_ac_on.svg) 98% 25px no-repeat #f6f6f7  !important;
}

.ac_area .ac_btn:hover{
	background-color: #f6f6f7;
}

.ac_area .ac_detail{
	background: #f6f6f7;
	display: none;
	padding: 0 20px;
}

.ac_area .ac_detail dl{
	overflow: hidden;
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: dotted 1px #cccccc;
}

.ac_area .ac_detail dl dt{
	width: 10%;
	max-width: 100px;
	float: left;
	font-size:1.6rem;
	font-family:'DIN Next LT W01 Bold';
}
.ac_area .ac_detail dl dd{
	width: 90%;
	max-width: 760px;
	float: right;
	font-size:1.6rem;
}

.ac_area .ac_detail dl:last-child{
	border-bottom: none;
	margin-bottom: 0;
}

/*-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// リンクエリア
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

.link_area_ttl{
	font-size: 3.0rem !important;
	font-family:'DIN Next LT W01 Light' !important;
	margin-bottom: 20px;
}
.link_area{
	display: -webkit-flex;
	display: flex;
}

.link_area .links {
	max-width: 220px;
	width: 25%;
	background: #ededee;
	margin-right: 22px;
}

.link_area .links:last-child{
	margin-right: 0;
}
.link_area .img{
	color: #fff;
}
.link_area .bg01{
	height: 8.7vw;
	max-height: 111px;
	background:#00aaea;
}
.link_area .bg02{
	height: 8.7vw;
	max-height: 111px;
	background:#e4006e;
}
	@media screen and (max-width:980px){
		.link_area .bg01{
		height: 12vw;
		max-height: 118px;
	}
	.link_area .bg02{
		height: 12vw;
		max-height: 118px;
	}
	}


.link_area .img span{
	padding: 10px;
	display: block;
}

.link_area dl{
	padding: 20px;
}
.link_area dt{
	font-size: 2.2rem;
	font-family:'DIN Next LT W01 Regular' !important;
	margin-bottom: 15px;
	word-break: break-all;
}

.link_area dd{
	font-size:1.5rem;
	color: #666666;
	word-break: break-all;
}

.link_area .links a *{
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	opacity: 1;
}
.link_area .links a:hover *{
	opacity: 0.8;
}

/*-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// テーブル
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

.table{
	width: 100%;
}
.table caption{
	font-size:1.2rem;
	text-align: right;
	margin-bottom: 10px;
}
.table th,
.table td{
	font-size:1.6rem;
	line-height: 1.6;
	padding: 10px;
	vertical-align: top;
	border-bottom: solid 1px #e6e5e5;
}
.table thead th{
	color: #fff;
	font-size:1.6rem;
	text-align: center;
}
.table tbody th{
	text-align: left;
	font-weight: normal;
}
.table td{
	text-align: center;
	vertical-align: middle;
}
.table td.bordrR{
	border-right: 1px solid #000;
}
.table td.align-left {
	text-align: left;
}
.table.blue th {
	background-color: #005BAB;
	color: #fff;
	border-bottom: 1px solid #fff;
}
.table.blue tr:first-child th {
	border-top: 1px solid #000;
}
.table.blue tr:last-child th {
	border-bottom: 1px solid #000;
}
.table.blue tr:first-child td {
	border-top: 1px solid #000;
}
.table.blue td {
	text-align: left;
	vertical-align: top;
	border-bottom: 1px solid #000;
}



/*-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// リンクボタン
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

.link_btn a{
	display: inline-block;
	font-size:2.0rem;
	line-height: 1.0;
	padding: 20px 50px 20px 35px;
	background: url(/common/img/icon_arrow01.svg) 15px 19px no-repeat;
	background-size:14px auto;
	border:solid 3px #e6e5e5;
	text-decoration: none;
	box-sizing: border-box;
	
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	
	font-family:'DIN Next LT W01 Regular';
}
.link_btn a:hover{
	background-color: #ededee;
}


.link_txt a,
.link_txt_w a{
	font-size:1.8rem;

	display: inline-block;
	padding-left: 20px;
	background: url(/common/img/icon_arrow01.svg) left -1px no-repeat;
	background-size:14px auto;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	
	font-family:'DIN Next LT W01 Regular';
}

.link_txt_w a{
	color: #fff;
	background: url(/common/img/icon_arrow03.svg) left top no-repeat;
	background-size: 14px 20px;
		
}

.link_txt_w a:hover{
	background: url(/common/img/icon_arrow03.svg) left top no-repeat;
	background-size: 14px 20px;
}
.link_txt a:hover,
.link_txt_w a:hover{
	opacity: 0.7;
}

.link_window a,
.link_window_nolink{
	font-size:1.8rem;
	display: inline-block;
	padding-left: 20px;
	padding-right: 25px;
	background: url(/common/img/icon_arrow01.svg) left -1px no-repeat,url(/common/img/icon_window.svg) right 4px no-repeat;
	background-size:14px auto,16px auto;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;	
	font-family:'DIN Next LT W01 Regular';
}

.link_window a:hover{
	opacity: 0.7;
}

/*-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// カラムレイアウト
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

.layout01{
	display: -webkit-flex;
	display: flex;
	align-content: flex-end;
}

.layout01 .box_l{
	max-width: 630px;
	margin-right: 20px;
}

.layout01 .box_s{
	max-width: 300px;
	margin-right: 0;
}

.layout02{
	display: -webkit-flex;
	display: flex;
	align-content:flex-end;
}

.layout02 .box{
	max-width: 465px;
	flex-basis: 50%;
}
.layout02 .box:last-child{
	margin-left: 20px;
}

.layout03{
	display: -webkit-flex;
	display: flex;
}

.layout03 .box{
	width: calc((100% - 50px) / 3);
	margin-right: 25px;
}

.layout03 .box:last-child{
	margin-right: 0;
}

.layout04 .box{
	max-width: 630px;
	margin: auto;
}

.layout05{
	display: -webkit-flex;
	display: flex;
	align-content:flex-end;
}

.layout05 .box{
	max-width: auto;
}
.layout02 .box:last-child{
	margin-left: 20px;
}

.layout05 .box img{
	width: auto !important;
}
.w50-center {
	max-width: 50%;
	margin: 0 auto;
}

figcaption{
	color: #666666;
	font-size: 1.5rem;
	line-height: 1.4;
}

/* ページ内アンカー（ヘッダーとの重なりを解消） */
.anchor {
	display: block;
	height: 0;
	outline: none;
	margin-top: -62px;
	padding-top: 62px;
}