/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@400;600&display=swap');
/*=============================================================
 contents Layout
=============================================================*/
.fontEn {
	font-family: 'Oswald', sans-serif;
	font-weight: 600;
}
/* Common
-------------------------------------------------------------*/
#medium-term h3,#medium-term h4,#medium-term h5,#medium-term h6{
  margin-top:0px;
  margin-bottom:0px;
}
#medium-term p,
#medium-term li,
#medium-term ul{
	margin: 0;
	padding: 0;
}
#medium-term li,
#medium-term ul{
	list-style: none;
}
#medium-term img{
	max-width: 100%;
	height: auto;
}
#medium-term .dsp-ib {
	display: inline-block;
}
#medium-term .dspPc {
	display: block;
}
#medium-term .dspSp {
	display: none;
}
#medium-term .boxArw {
	height: 72px;
	margin-bottom: 40px;
}
#medium-term .boxArw img{
	width: 100%;
	height: 100%;
}
#medium-term .fontNormal{
	font-weight: 400;
}
/* MAIN
-------------------------------------------------------------*/
#medium-term #main {
	position: relative;
}
#medium-term #main .txt {
	width: 100%;
	box-sizing: border-box;
	padding: 0 0 0 50px;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
#medium-term #main .txt h1 {
	margin: 0;
	font-size: 30px;
	color: #fff;
	text-align: left;
	position: static;
}
#medium-term #main .txt p {
	color: #fff;
	font-size: 25px;
	padding: 20px 0 0;
}
#medium-term #main .txt p.ttl {
	font-size: 40px;
	padding: 10px 0 0;
}
#medium-term #main .boter_gray {
}
/* TTL
-------------------------------------------------------------*/
.catNum{
	width: 100px;
	height: 100px;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
	background-color: #4B1F78;
	border-radius: 999px;
	font-size: 40px;
	line-height: 40px;
	color: #fff;
	position: relative;
	z-index: 2;
}
#medium-term h2{
	margin: 40px 0 0;
	font-size: 40px;
	line-height: 1.25em;
	color: #4B1F78;
	text-align: center;
}
#medium-term h3{
	display: inline-block;
	margin: 70px auto 0;
	padding: 0 0 10px;
	font-size: 25px;
	line-height: 1.25em;
	position: relative
}
#medium-term h3:after{
	display: block;
	content: "";
	width: 100%;
	height: 4px;
	background-color: #4B1F78;
	position: absolute;
	bottom: 0;
	left: 0;
}
/* LAYOUT
-------------------------------------------------------------*/
#medium-term p.leadTxt{
	width: 100%;
	max-width: 770px;
	margin: 30px auto 0;
}
#medium-term ul.note{
	font-size: 85%;
	padding: 10px 0 0;
}
#medium-term ul.note li{
	padding: 0 0 0 1em;
	text-indent: -1em;
}
#medium-term ul.noteNum{
	font-size: 85%;
	padding: 10px 0 0;
}
#medium-term ul.noteNum li{
	padding: 0 0 0 2em;
	text-indent: -2em;
}
#medium-term .boxFig{
	margin: 30px auto 0;
}
.clrPurple{
	color: #8232D2 !important;
}
.clrBgPurple{
	background-color: #8232D2 !important;
}
.clrGreen{
	color: #00830F !important;
}
.clrBgGreen{
	background-color: #00830F !important;
}
.clrBlue{
	color: #0094D6 !important;
}
.clrBgBlue{
	background-color: #0094D6 !important;
}
#medium-term .boxFig3clm{
	width: 100%;
	justify-content: space-between;
	display: flex;
}
#medium-term .boxFig3clm .box{
	width: calc((100% - 60px) / 3);
	margin: 30px 0 0;
	text-align: center;
	background-color: #fff;
}
#medium-term .boxFig3clm .box h4{
	padding: 10px;
	color: #fff;
	line-height: 1.55;
}
#medium-term .boxFig3clm .box h4 strong{
	font-size: 20px;
	line-height: 1.25;
}
#medium-term .boxFig3clm .boxWhite{
	padding: 18px;
}
#medium-term .boxFig3clm .boxWhite h5{
	font-size: 20px;
}
#medium-term .boxFig3clm .boxWhite h6{
	padding: 20px 0 0;
	font-size: 16px;
}
#medium-term .boxFig3clm .boxWhite .boxInner{
	margin: 10px 0 0;
	padding: 10px;
	border-radius: 10px;
	font-size: 14px;
}
#medium-term .boxFig3clm .boxWhite .boxInner span.txtL{
	font-size: 30px;
}
#medium-term .boxFig3clm .boxWhite .clrLinePurple{ 
	border: 2px solid #8232D2;
}
#medium-term .boxFig3clm .boxWhite .clrLineGreen{ 
	border: 2px solid #00830F;
}
#medium-term .boxFig3clm .boxWhite .clrLineBlue{ 
	border: 2px solid #0094D6;
}


/* PageNavi
-------------------------------------------------------------*/
#pageNav {
	padding: 40px 0 10px;
}
#pageNav p {
	text-align: center;
	color: #4B1E78;
}
#pageNav ul {
	width: 100%;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	list-style: none;
}
#pageNav ul li {
	width: 25%;
	height: 115px;
	margin: 20px 0 0;
	padding: 0;
	box-sizing: border-box;
	border-right: 1px solid #8B94A6;
}
#pageNav ul li:first-child {
	border-left: 1px solid #8B94A6;
}
#pageNav ul li a {
	width: 100%;
	height: 100%;
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 0 0 25px;
	font-weight: 700;
	text-align: center;
	color: #333333;
	text-decoration: none;
	transition: all 0.5s ease-out;
}
#pageNav ul li a:hover {
	opacity: 0.6;
}
#pageNav ul li a:after {
	content: "";
	width: 22px;
	height: 22px;
	background: url("../images/arw_navi.svg") no-repeat 0 0;
	background-size: 100% 100%;
	position: absolute;
	bottom: 3px;
	left: 50%;
	transform: translateX(-50%);
}
#pageNav ul li a>span.num {
	display: inline-block;
	height: 35px;
	font-size: 30px;
	color: #dbd2e4;
	line-height: 33px;
}
#pageNav ul li a>span.txt {
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 100%;
	height: 55px;
	text-align: center;
	line-height: 1.25;
}
#medium-term .list-unstyled li {
	text-align: right;
}
#medium-term .list-unstyled a {
	font-size: 14px;
}
/* medium-term01
-------------------------------------------------------------*/
#medium-term01 {
	padding: 100px 0 0;
}
#medium-term01inner {
	margin-top: -50px;
	padding: 50px 0 0;
	background-color: #e3d6e6;
}
#medium-term01inner .road {
	margin: 30px 0 50px;
	position: relative;
	overflow: hidden;
}
#medium-term01inner .road .map {
	display: none;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
#medium-term01inner .map1 .road .map1,
#medium-term01inner .map2 .road .map2,
#medium-term01inner .map3 .road .map3,
#medium-term01inner .map4 .road .map4{
	display: block;
}
#medium-term01inner .road a{
	display: block;
	width: 100%;
	height: 100%;
}
#medium-term01inner .road .btn {
	width: 54%;
	height: 11.2%;
	position: absolute;
	bottom: -100px;
	transform: skewX(-40deg);
}
#medium-term01inner .road #map1 {
	height: 15.8%;
	left: 21.2%;
	bottom: 38.8%;
}
#medium-term01inner .road #map2 {
	left: 13.75%;
	bottom: 24.8%;
}
#medium-term01inner .road #map3 {
	left: 8.45%;
	bottom: 12.5%;
}
#medium-term01inner .road #map4 {
	left: 2.4%;
	bottom: 0;
}
/* medium-term02
-------------------------------------------------------------*/
#medium-term02 {
	padding: 0 0 30px;
	background-color: #e3d6e6;
}
#medium-term02 .boxFig3clm .box{
	background-color: #f5f5f5;
	padding: 0;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
#medium-term02 .boxFig3clm .boxWhite{
	padding: 0;
}
#medium-term02 .boxFig3clm .boxWhite p{
	padding: 18px 18px 0;
}
#medium-term02 .boxFig3clm .box .photo{
	padding: 18px 0 0;
}
#medium-term02 .boxResult{
	width: 100%;
	max-width: 700px;
	height: 230px;
	margin: 25px auto 0;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #fff;
	border: 3px solid #4B1F78;
	border-radius: 50%;
	text-align: center;
}
#medium-term02 .boxResult p.ttl{
	font-size: 30px;
	color: #4B1F78;
}
#medium-term02 .boxResult p.txt{
	font-size: 18px;
	padding: 15px 0 0;
}
/* medium-term03
-------------------------------------------------------------*/
#medium-term03 {
	padding: 0 0 30px;
	background-color: #F5F5F5;
}
#medium-term03 .boxMateriality {
	width: 100%;
	max-width: 620px;
	margin: 30px auto 0;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	background: url("../images/term3_fig04Bg.png") no-repeat center 5px;
	background-size: 66% auto;
}
#medium-term03 .boxMateriality .boxFigSurcle {
	width: 48%;
	padding: 0 10px;
	position: relative;
}
#medium-term03 .boxMateriality .boxFigSurcle:nth-child(3) {
	margin-top: -2.5%;
}
#medium-term03 .boxMateriality .btn {
	width: 50%;
	position: absolute;
	top: 65%;
	left: 50%;
	transform: translateX(-50%);
}
#medium-term03 .boxMateriality .btn a {
	transition: all 0.5s ease-out;
}
#medium-term03 .boxMateriality .btn a:hover {
	opacity: 0.6;
}
#medium-term .boxArwC{
	width: 100%;
	max-width: 600px;
	min-height: 60px;
	margin: 30px auto 0;
	display: flex;
	justify-content: center;
	align-items: center;
	background: url("../images/arw_gray.png") no-repeat 0 0;
	background-size: 100% 100%;
}
#medium-term .boxArwC p{
	padding: 10px;
	font-size: 22px;
	text-align: center;
}
#medium-term03 .ttlFig {
	margin: 30px 0 0;
	padding: 10px;
	background-color: #4B1F78;
	color: #fff;
	text-align: center;
}
#medium-term03 .boxList {
	margin: 20px 0 0;
}
#medium-term03 .boxList ul{
	display: inline-block;
	text-align: left;
}
#medium-term03 .boxList ul li{
	padding: 0 0 0 1.5em;
	position: relative;
}
#medium-term03 .boxList ul li span.num{
	width: 1.5em;
	position: absolute;
	left: 0;
	top: 0;
}
#medium-term03 .boxList ul li + li{
	margin: 20px 0 0;
}
#medium-term03 .boxFig3clm .box {
	padding-bottom: 70px;
	position: relative;
}
#medium-term03 .boxFig3clm .box p.btn {
	position: absolute;
	bottom: 18px;
	left: 50%;
	transform: translateX(-50%);
	border-radius: 999px;
}
#medium-term03 .boxFig3clm .box p.btn a{
	display: inline-block;
	width: 144px;
	padding: 5px 40px 5px 30px;
	color: #fff;
	position: relative;
	transition: all 0.5s ease-out;
	text-decoration: none;	
}
#medium-term03 .boxFig3clm .box p.btn a:after{
	content: "";
	width: 7px;
	height: 16px;
	background: url("../images/arw_term05_white.svg") no-repeat 0 0;
	background-size: 100% 100%;
	position: absolute;
	top: 50%;
	right: 14px;
	transform: translateY(-50%);
}
#medium-term03 .boxFig3clm .box p.btn a:hover {
	opacity: 0.6;
}
/* medium-term04
-------------------------------------------------------------*/
#medium-term04 {
	padding: 0 0 30px;
	background-color: #F5F5F5;
}
/* medium-term05
-------------------------------------------------------------*/
#medium-term05 {
	width: 100%;
	max-width: 580px;
	margin: 0 auto;
	padding: 20px 20px 0;
}
#medium-term05  ul{
	display: flex;
	justify-content: space-between;
	width: 100%;
}
#medium-term05  ul li{
	width: 260px;
	height: 150px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	margin: 20px 0 0;
	border: 2px solid #4B1F78;
	text-align: center;
}
#medium-term05  ul li p.ttl{
	font-size: 25px;
	padding: 0 0 20px;
}
#medium-term05  ul li p.btn a{
	display: inline-block;
	width: 144px;
	padding: 5px 40px 5px 30px;
	background-color: #4B1F78;
	border-radius: 999px;
	color: #fff;
	position: relative;
	transition: all 0.5s ease-out;
	text-decoration: none;	
}
#medium-term05  ul li p.btn a:after{
	content: "";
	width: 7px;
	height: 16px;
	background: url("../images/arw_term05_white.svg") no-repeat 0 0;
	background-size: 100% 100%;
	position: absolute;
	top: 50%;
	right: 14px;
	transform: translateY(-50%);
}
#medium-term05  ul li p.btn a:hover {
	opacity: 0.6;
}
	/* winOuter
-------------------------------------------------------------*/
#winOuter{
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 99999;
	visibility: hidden;
	opacity: 0;
	transition: all 0.5s ease-out;
}
.on #winOuter{
	visibility: visible;
	opacity: 1;
	transition: all 0.5s ease-out;
}
#winOuterOverlay{
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.7);
	z-index: 99999;
}

#winOuter .boxWin{
	width: 86%;
	max-height: calc(100% - 80px);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 999999;
}
#winOuter .boxWinWrap{
	width: 100%;
	max-height: 100%;
	position: relative;
	background-color: #fff;
	border-radius: 20px;
	overflow: hidden;
}
#winOuter .boxWinInner{
	height: 100%;
	padding: 30px;
	position: relative;
	overflow: auto;
}
#winOuter .boxCloseBtn{
	width: 24px;
	height: 24px;
	cursor: pointer;
	background: url("../images/btn_close.png") no-repeat 0 0;
	background-size: 100% 100%;
	position: absolute;
	right: -12px;
	top: -34px;
}
#winOuter .boxWin h2{
	padding: 0;
	margin: 0;
	font-size: 30px;
	text-align: center;
}
#winOuter .boxWin h2 .txtS{
	font-size: 16px;
}
#winOuter .boxWin h2 + p{
	padding: 10px 0 0;
}
/*#winOuter .boxWin .note{
	font-size: 13px;
	padding: 10px 0 0 1em;
	text-indent: -1em;
}*/
#winOuter .winRoad{
	max-width: 730px;
	display: none;
}
#winOuter .winRoad p + p{
	padding: 10px 0 0;
}
#winOuter .winRoad dl{
	margin: 0;
	padding: 0;
}
#winOuter .winRoad dl dt{
	margin: 0;
	padding: 10px 0 5px;
}
#winOuter .winRoad dl dd{
	margin: 0;
	padding: 0;
}
#winOuter .winRoad dl dd ul.listIcn{
	margin: 0 0 0 1.0em;
}
#winOuter .winRoad dl dd ul.listIcn li{
	list-style: disc;
	font-size: 14px;
}
#winOuter .winRoad dl dd .boxFlex{
	width: 100%;
	display: flex;
	justify-content: space-between;
}
#winOuter .winRoad dl dd .boxFlex .boxL{
	width: 59%;
}
#winOuter .winRoad dl dd .boxFlex .boxR{
	width: 38%;
}
#winOuter .winRoad dl dd table{
	width: 100%;
	margin: 0;
	padding: 0;
}
#winOuter .winRoad dl dd table th,
#winOuter .winRoad dl dd table td{
	margin: 0;
	padding: 5px;
	border: 1px solid #C0C6D3;
	font-size: 14px;
}
#winOuter .winRoad dl dd table th{
	width: 37%;
	background-color: #4B1E78;
	color: #fff;
}
#winOuter .winRoad dl dd table th:first-child{
	width: auto;
}
#winOuter .winRoad dl dd table tr:nth-child(even) td{
	background-color: #F5F5F5;
}
#winOuter .winRoad dl dd table tr td .fontEn{
	font-weight: 400 !important;
}
#winOuter .winRoad dl dd table tr td.achievement{
	background-color: #ECE6F2;
	text-align: center;
}
#winOuter .winRoad dl dd table tr td.achievement .fontEn{
	font-weight: 700 !important;
}
#winOuter .winMateriality{
	max-width: 730px;
	display: none;
}
#winOuter .winMateriality .boxFlex{
	width: 100%;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#winOuter .winMateriality .boxFlex .box{
	width: calc((100% - 16px) / 2);
	margin: 16px 0 0;
	padding: 12px;
	border: 1px solid #8231D3;
	border-top: 3px solid #8231D3;
}
#winOuter .winMateriality .boxGreen{
	width: calc(100%);
	margin: 16px 0 0;
	padding: 12px;
	border: 1px solid #00830F;
	border-top: 3px solid #00830F;
}
#winOuter .winMateriality .boxBlue{
	width: calc(100%);
	margin: 16px 0 0;
	padding: 12px;
	border: 1px solid #0094D6;
	border-top: 3px solid #0094D6;
}
#winOuter .winMateriality dl{
	display: flex;
	justify-content: space-between;
	margin: 0;
	padding: 0;
}
#winOuter .winMateriality dl dt{
	width: 55px;
	margin: 0;
	padding: 0;
}
#winOuter .winMateriality dl dd{
	width: calc(100% - 65px);
	margin: 0;
	padding: 0;
}
#winOuter .winMateriality dl.wide dd{
	width: calc(100% - 65px);
}
#winOuter .winMateriality dl dd ul{
	margin: 0 0 0 1.0em;
}
#winOuter .winMateriality dl dd ul li{
	list-style: disc;
	font-size: 18px;
}
#winOuter .winTheme{
	max-width: 950px;
	display: none;
}
#winOuter .winTheme .boxFlex{
	width: 100%;
	display: flex;
	justify-content: space-between;
}
#winOuter .winTheme .boxFlex .boxL{
	width: 65%;
	padding: 10px 0 0 0;
}
#winOuter .winTheme .boxFlex .boxR{
	width: 35%;
	padding: 10px 0 2em 15px;
}
#winOuter .winTheme .boxFlex .boxR p{
	font-size: 14px;
}
#winOuter .winTheme .boxFlex .boxR .pageNum{
	width: 100%;
	font-size: 14px;
	text-align: right;
	position: absolute;
	left: 0;
	bottom: 0;
}
#winOuter .winFtr{
	max-width: 860px;
	display: none;
}
#winOuter .winFtr .fig{
	padding: 20px 0 0;
}

#winOuter .boxSlide{
	width: 100%;
	position: relative;
	overflow: hidden;
}
#winOuter .boxSlide .boxSlideInner{
	background-color: #fff;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	z-index: 0;
	transition: all 0.5s ease-out;
}
#winOuter .boxSlide .theme0101.boxSlideInner,
#winOuter .boxSlide .theme0201.boxSlideInner{
	position: relative;
}
#winOuter .boxSlide .themeSl1 .theme0101,
#winOuter .boxSlide .themeSl2 .theme0102,
#winOuter .boxSlide .themeSl3 .theme0103,
#winOuter .boxSlide .themeSl1 .theme0201,
#winOuter .boxSlide .themeSl2 .theme0202,
#winOuter .boxSlide .themeSl3 .theme0203{
	opacity: 1;
	z-index: 1;
}
#winOuter .winTheme .arwL,
#winOuter .winTheme .arwR{
	width: 40px;
	height: 40px;
	cursor: pointer;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
	transition: all 0.5s ease-out;
	border-radius: 999px;
}
#winOuter .winTheme .arwR{
	background:#4b1e78 url("../images/arw_slide_r.png") no-repeat 0 0;
	background-size: 100% 100%;
	right: -20px;
}
#winOuter .winTheme .arwL{
	background:#4b1e78 url("../images/arw_slide_l.png") no-repeat 0 0;
	background-size: 100% 100%;
	left: -20px;
}
#winOuter .winTheme .arwL:hover,
#winOuter .winTheme .arwR:hover{
	background-color: #886ba6;
}
#winOuter .boxSlide .strategy0105.boxSlideInner{
	position: relative;
}
#winOuter .boxSlide .strategySl1 .strategy0101,
#winOuter .boxSlide .strategySl2 .strategy0102,
#winOuter .boxSlide .strategySl3 .strategy0103,
#winOuter .boxSlide .strategySl4 .strategy0104,
#winOuter .boxSlide .strategySl5 .strategy0105,
#winOuter .boxSlide .strategySl6 .strategy0106,
#winOuter .boxSlide .strategySl7 .strategy0107{
	opacity: 1;
	z-index: 1;
}
#winOuter .winFtr .arwL,
#winOuter .winFtr .arwR{
	width: 40px;
	height: 40px;
	cursor: pointer;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
	transition: all 0.5s ease-out;
	border-radius: 999px;
}
#winOuter .winFtr .arwR{
	background: #4b1e78 url("../images/arw_slide_r.png") no-repeat 0 0;
	background-size: 100% 100%;
	right: -20px;
}
#winOuter .winFtr .arwL{
	background: #4b1e78 url("../images/arw_slide_l.png") no-repeat 0 0;
	background-size: 100% 100%;
	left: -20px;
} 
#winOuter .winFtr .arwL:hover,
#winOuter .winFtr .arwR:hover{
	background-color: #886ba6;
}
#winOuter .winFtr #strategyInner .boxSlideInner{
	padding-bottom: 2em;
}
#winOuter .winFtr .pageNum{
	width: 100%;
	padding: 5px 0 0;
	font-size: 14px;
	text-align: right;
	position: absolute;
	bottom: 0;
	left: 0;
}

#winOuter.winRoad01 #winRoad01,
#winOuter.winRoad02 #winRoad02,
#winOuter.winRoad03 #winRoad03,
#winOuter.winRoad04 #winRoad04,
#winOuter.materiality01 #materiality01,
#winOuter.materiality02 #materiality02,
#winOuter.materiality03 #materiality03,
#winOuter.theme01 #theme01,
#winOuter.theme02 #theme02,
#winOuter.theme03 #theme03,
#winOuter.winStrategy #winStrategy,
#winOuter.winGovernance #winGovernance{
	display: flex;
}

/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 TUBLET
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media (min-width: 768px) and (max-width:991px) {}
/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Smartphones
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media screen and (max-width: 767px) {
	/* Common
-------------------------------------------------------------*/
	#medium-term .dspPc {
		display: none;
	}
	#medium-term .dspSp {
		display: block;
	}
#medium-term .boxArw {
	height: 40px;
	margin-bottom: 30px;
}
#medium-term .boxArw img{
	width: 100%;
	height: 40px;
}

/* MAIN
-------------------------------------------------------------*/
#medium-term #main .txt {
	width: 100%;
	box-sizing: border-box;
	padding: 0 20px;
	position: absolute;
	top: 30px;
	left: 0;
	transform: translateY(0);
}
#medium-term #main .txt h1 {
	font-size: 23px;
	text-align: center;
}
#medium-term #main .txt p {
	color: #fff;
	font-size: 19px;
	padding: 20px 0 0;
	text-align: center;
}
#medium-term #main .txt p.ttl {
	font-size: 32px;
	padding: 10px 0 0;
}
/* LAYOUT
-------------------------------------------------------------*/
#medium-term .boxFig{
	width: 100%;
	max-width: 400px;
}
#medium-term .boxFig3clm{
	display: block;
}
#medium-term .boxFig3clm .box{
	width: calc(100%);
	max-width: 400px;
	margin: 30px auto 0;
}
#medium-term .boxFig3clm .box h4 strong{
	font-size: 18px;
	line-height: 1.25;
}
#medium-term .boxFig3clm .boxWhite{
	padding: 18px;
}
/* TTL
-------------------------------------------------------------*/
.catNum{
	width: 66px;
	height: 66px;
	font-size: 27px;
	line-height: 27px;
}
#medium-term h2{
	margin: 30px 0 0;
	font-size: 26px;
}
#medium-term h3{
	margin: 50px auto 0;
	font-size: 20px;
}
/* PageNavi
-------------------------------------------------------------*/
#pageNav ul {
	display: block;
}
#pageNav ul li {
	width: 100%;
	height: 80px;
	margin: 0;
	padding: 0;
	border-right: none;
	border-bottom: 1px solid #8B94A6;
}
#pageNav ul li:first-child {
	border-left: none;
	border-top: 1px solid #8B94A6;
}
#pageNav ul li a {
	flex-direction: row;
	align-items: center;
	padding: 0;
}
#pageNav ul li a:after {
	bottom: 50%;
	left: 100%;
	transform: translateX(-22px) translateY(50%);
}
#pageNav ul li a>span.num {
	width: 50px;
	height: auto;
	line-height: 30px;
}
#pageNav ul li a>span.txt {
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: calc(100% - 50px);
	height: 80px;
	text-align: left;
}
#medium-term .list-unstyled li {
	text-align: left;
}
/* medium-term01
-------------------------------------------------------------*/
#medium-term01 {
	padding: 50px 0 0;
}
#medium-term01inner {
	margin-top: -33px;
	padding: 33px 0 0;
	background-color: #e3d6e6;
}
#medium-term01inner .road {
	margin: 30px 0 50px;
	position: relative;
}
#medium-term01inner .road .map {
	display: none !important;
}
#medium-term01inner .road .btn {
	width: 96%;
	transform: skewX(0);
}
#medium-term01inner .road #map1 {
	left: 4.0%;
}
#medium-term01inner .road #map2 {
	left: 4.0%;
}
#medium-term01inner .road #map3 {
	left: 4.0%;
}
#medium-term01inner .road #map4 {
	left: 4.0%;
}
/* medium-term02
-------------------------------------------------------------*/	
#medium-term02 .boxFig3clm .boxWhite{
	padding: 0;
}
#medium-term02 .boxResult{
	height: auto;
	padding: 40px 0;
}
#medium-term02 .boxResult p.ttl{
	font-size: 24px;
}
#medium-term02 .boxResult p.txt{
	font-size: 14px;
	padding: 10px 0 0;
}
/* medium-term03
-------------------------------------------------------------*/
#medium-term .boxArwC p{
	font-size: 20px;
}
/* medium-term05
-------------------------------------------------------------*/
#medium-term05  ul{
	display: block;
}
#medium-term05  ul li{
	margin: 20px auto 0;
}
	/* winOuter
-------------------------------------------------------------*/
#winOuter .boxWin{
	border-radius: 10px;
}
#winOuter .boxWinInner{
	padding: 20px;
}
#winOuter .boxCloseBtn{
	width: 20px;
	height: 20px;
	right: 0;
	top: -25px;
}
#winOuter .boxWin h2{
	font-size: 22px;
}
#winOuter .boxWin h2 .txtS{
	font-size: 14px;
}
#winOuter .boxWin .note{
	font-size: 11px;
}
#winOuter .winRoad dl dd .boxFlex{
	display: block;
}
#winOuter .winRoad dl dd .boxFlex .boxL{
	width: 100%;
}
#winOuter .winRoad dl dd .boxFlex .boxR{
	width: 100%;
	padding: 10px 0 0;
}
#winOuter .winRoad dl dd table th,
#winOuter .winRoad dl dd table td{
	font-size: 12px;
}
#winOuter .winMateriality .boxFlex{
	display: block;
}
#winOuter .winMateriality .boxFlex .box{
	width: calc(100%);
}
#winOuter .winMateriality dl{
	display: flex;
	justify-content: space-between;
	margin: 0;
	padding: 0;
}
#winOuter .winMateriality dl dd ul li{
	font-size: 14px;
}
#winOuter .winTheme .boxFlex{
	display: block;
}
#winOuter .winTheme .boxFlex .boxL{
	width: 100%;
}
#winOuter .winTheme .boxFlex .boxR{
	width: 100%;
	padding: 10px 0 2em 0;
}
#winOuter .winTheme .boxFlex .boxR p{
	font-size: 13px;
}
#winOuter .winTheme .boxFlex .boxR .pageNum{
	font-size: 13px;
}
#winOuter .winFtr .fig{
	padding: 15px 0 0;
}


#winOuter .winTheme .arwL,
#winOuter .winTheme .arwR{
	width: 36px;
	height: 36px;
}
#winOuter .winTheme .arwR{
	z-index: 2;
}
#winOuter .winTheme .arwL{
	z-index: 2;
}
#winOuter .winFtr .arwL,
#winOuter .winFtr .arwR{
	width: 36px;
	height: 36px;
}
#winOuter .winFtr .arwR{
	z-index: 2;
}
#winOuter .winFtr .arwL{
	z-index: 2;
}

	
	
	
#winOuter .winFtr .pageNum{
	font-size: 13px;
}
	
}
/*2025.08.12追加*/
.bg_wh32{
	background-color: #fff;
	padding: 32px;
	text-align: center;
}
.bg_wh32-16{
	background-color: #fff;
	padding: 32px;
	text-align: center;
}
@media screen and (max-width: 767px) {
	.bg_wh32-16{
		padding: 16px;
	}
}
.col_vertical{
	display: flex;
	flex-flow: column;
	justify-content: space-between;
	row-gap: 20px;
}
/*改行調整*/
.breaks_pc{
	display: block;
}
.breaks_pd{
	display: none;
}
.breaks_sp{
	display: none;
}
@media screen and (min-width: 767px) and (max-width: 1280px) {
	.breaks_pd{
	display: block;
}
}
@media screen and (max-width: 520px) {
	.breaks_pc{
		display: none;
	}
	.breaks_pd{
	display: none;
	}
	.breaks_sp{
		display: block;
	}
}
/*改行調整*/
.mt5{margin-top: 5px;}
.mt10{margin-top: 10px;}
.mt15{margin-top: 15px;}
.mt20{margin-top: 20px;}
.mt25{margin-top: 25px;}
.mt30{margin-top: 30px;}
.mt35{margin-top: 35px;}
.mt40{margin-top: 40px;}
.mt45{margin-top: 45px;}
.mt50{margin-top: 50px;}
.mt55{margin-top: 55px;}
.mt60{margin-top: 60px;}

.mb5{margin-bottom: 5px;}
.mb10{margin-bottom: 10px;}
.mb15{margin-bottom: 15px;}
.mb20{margin-bottom: 20px;}
.mb25{margin-bottom: 25px;}
.mb30{margin-bottom: 30px;}
.mb35{margin-bottom: 35px;}
.mb40{margin-bottom: 40px;}
.mb45{margin-bottom: 45px;}
.mb50{margin-bottom: 50px;}
.mb55{margin-bottom: 55px;}
.mb60{margin-bottom: 60px;}

.speechBubble {
  position: relative;
  display: block;
  margin-bottom: 24px;
  padding: 16px;
  background-color: #ffffff;
  text-align: center;
  font-size: 18px;
	font-style: normal;
	font-weight: 300;
	line-height: 175%;
  color: #333;
}
.speechBubble h4{
	font-size: 22px;
	font-style: normal;
	font-weight: 600;
	line-height: 175%;
	margin-bottom: 7px;
}
.speechBubble h4 span{
	font-family: Oswald;
	font-size: 28px;
	font-style: normal;
	font-weight: 600;
	line-height: 175%;
	padding-left: 3px;
	vertical-align: -2px;
	}
@media screen and (max-width: 767px) {
	.speechBubble{
		font-size: 12px;
	}
	.speechBubble h4{
		font-size: 18px;
	}
	.speechBubble h4 span{
		font-size: 20px;
	}
	.speechBubble p{
		font-size: 15px;
	}
}
.speechBubble::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  border-style: solid;
  border-width: 24px 32px 0 32px;
  border-color: #ffffff transparent transparent;
  translate: -50% 100%;
}
.corner_flag_purple{
	text-align: center;
	color: #333;
	padding: 32px;
	position: relative;
	background: #EFDBF7;
	background-image: linear-gradient(135deg, #4B1E78 62px, transparent 0);
}
@media screen and (max-width: 767px) {
	.corner_flag_purple{
		background-image: linear-gradient(135deg, #4B1E78 50px, transparent 0);
	}
}
@media screen and (max-width: 767px) {
	.corner_flag.bg_wh32{
		padding: 16px;
	}
	.corner_flag .col-block{
		gap: 16px 16px !important;
	}
}
.corner_flag_purple h5{
	color: #4B1E78;
	font-family: Oswald;
	font-size: 68px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
}
.corner_flag_purple .sub_title{
	font-size: 20px;
	font-style: normal;
	font-weight: 600;
	line-height: 175%;
}
.corner_flag_purple .sub_title span{
	color: #4B1E78;
	font-size: 40px;
	font-style: normal;
	font-weight: 600;
	line-height: 175%;
}
.corner_flag_purple p{
	font-size: 20px;
	font-style: normal;
	font-weight: 300;
	line-height: 175%;
}
.corner_flag_purple::before{
	position: absolute;
	content: "01";
	color: #fff;
	font-family: Oswald;
	font-size: 32px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
	top: 8px;
	left: 12px;
}
@media screen and (max-width: 767px) {
	.corner_flag_purple::before{
		font-size: 24px;
	}
}
@media screen and (max-width: 1240px) {
	.corner_flag_purple h5{
		font-size:34px ;
	}
	.corner_flag_purple .sub_title{
		font-size: 18px;
	}
	.corner_flag_purple .sub_title span{
		font-size: 30px;
	}
}
@media screen and (max-width: 767px) {
	.corner_flag_purple p{
		font-size:15px ;
	}
	.corner_flag_purple .sub_title{
		font-size: 16px;
	}
	.corner_flag_purple .sub_title span{
		font-size: 20px;
	}
}

.corner_flag_brown{
	text-align: center;
	color: #333;
	padding: 32px;
	position: relative;
	background: #F9EDDC;
	background-image: linear-gradient(135deg, #A76100 62px, transparent 0);
}
@media screen and (max-width: 767px) {
	.corner_flag_brown{
		background-image: linear-gradient(135deg, #A76100 50px, transparent 0);
	}
}
.corner_flag_brown h5{
	color: #A76100;
	font-family: Oswald;
	font-size: 68px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
}
.corner_flag_brown .sub_title{
	font-size: 20px;
	font-style: normal;
	font-weight: 600;
	line-height: 175%;
}
.corner_flag_brown .sub_title span{
	color: #A76100;
	font-size: 40px;
	font-style: normal;
	font-weight: 600;
	line-height: 175%;
}
.corner_flag_brown p{
	font-size: 20px;
	font-style: normal;
	font-weight: 300;
	line-height: 175%;
}
.corner_flag_brown::before{
	position: absolute;
	content: "02";
	color: #fff;
	font-family: Oswald;
	font-size: 32px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
	top: 8px;
	left: 10px;
}
@media screen and (max-width: 767px) {
	.corner_flag_brown::before{
		font-size: 24px;
	}
}
@media screen and (max-width: 1240px) {
	.corner_flag_brown h5{
		font-size:34px ;
	}
	.corner_flag_brown .sub_title{
		font-size: 18px;
	}
	.corner_flag_brown .sub_title span{
		font-size: 30px;
	}
}
@media screen and (max-width: 767px) {
	.corner_flag_brown p{
		font-size:15px ;
	}
	.corner_flag_brown .sub_title{
		font-size: 16px;
	}
	.corner_flag_brown .sub_title span{
		font-size: 20px;
	}
}

.corner_flag_blue{
	text-align: center;
	color: #333;
	padding: 24px;
	position: relative;
	background: #DBEFF9;
	background-image: linear-gradient(135deg, #006C9C 62px, transparent 0);
}
@media screen and (max-width: 767px) {
	.corner_flag_blue{
		background-image: linear-gradient(135deg, #006C9C 50px, transparent 0);
	}
}
.corner_flag_blue h5{
	color: #006C9C;
	font-family: Oswald;
	font-size: 68px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
}
.corner_flag_blue .sub_title{
	font-size: 20px;
	font-style: normal;
	font-weight: 600;
	line-height: 175%;
}
.corner_flag_blue .sub_title span{
	color: #006C9C;
	font-size: 40px;
	font-style: normal;
	font-weight: 600;
	line-height: 175%;
}
.corner_flag_blue p{
	font-size: 20px;
	font-style: normal;
	font-weight: 300;
	line-height: 175%;
}
.corner_flag_blue::before{
	position: absolute;
	content: "03";
	color: #fff;
	font-family: Oswald;
	font-size: 32px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
	top: 8px;
	left: 10px;
}
@media screen and (max-width: 767px) {
	.corner_flag_blue::before{
		font-size: 24px;
	}
}
@media screen and (max-width: 1240px) {
	.corner_flag_blue h5{
		font-size:34px ;
	}
	.corner_flag_blue .sub_title{
		font-size: 18px;
	}
	.corner_flag_blue .sub_title span{
		font-size: 30px;
	}
}
@media screen and (max-width: 767px) {
	.corner_flag_blue p{
		font-size:15px ;
	}
	.corner_flag_blue .sub_title{
		font-size: 16px;
	}
	.corner_flag_blue .sub_title span{
		font-size: 20px;
	}
}

.mid-list01{
	display: block;
	margin-top: 60px;
	color: #333;
}
.mid-list01 li{
	display: grid;
	grid-template-columns: 124px 1fr;
	column-gap: 32px;
	font-size: 16px;
	margin-top: 40px;
	position: static;
}
.mid-list01 li .mid-list__title{
	font-size: 24px;
	font-style: normal;
	font-weight: 600;
	line-height: 175%;
	padding-bottom: 20px;
}
.mid-list01 li .mid-list__title::before{
	font-family: Oswald;
	font-size: 28px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
	padding-right: 10px;
	vertical-align:-2px;
}
.mid-list01 li:nth-child(1) .mid-list__title::before{
	content: "01";
	color: #4B1E78;
	
}
.mid-list01 li:nth-child(2) .mid-list__title::before{
	content: "02";
	color: #A76100;
}
.mid-list01 li:nth-child(3) .mid-list__title::before{
	content: "03";
	color: #006C9C;
}
.mid-list01 .trans_area{
	display: block;
}
@media screen and (max-width: 767px) {
	.mid-list01 li{
		display: block;
		position: relative;
		margin-top: 20px;
	}
	.mid-list01 li .mid-list__title{
		font-size: 17px;
		padding-bottom: 0;
	}
	.mid-list01 li .mid-list__title::before{
		font-size: 18px;
		padding-right: 5px;
		vertical-align: -1px;
	}
	.mid-list01 .trans_area{
		display: grid;
		grid-template-columns: 20% 80%;
		grid-column-gap: 10px;
		grid-row-gap: 10px;
	}
	.mid-list01 .trans_area p{
		font-size: 15px;
		grid-area: 2 / 1 / 3 / 3;
	}
}

.new_management{
	color: #333;
	font-size: 24px;
	font-style: normal;
	font-weight: 600;
	line-height: 175%; 
}
.new_management h4{
	color:#4B1E78;
	text-align: center;
	font-size: 36px;
	font-style: normal;
	font-weight: 600;
	line-height: 150%;
	margin-top: 25px;
	margin-bottom: 16px;
}
.new_management p{
	font-size: 18px;
	font-style: normal;
	font-weight: 600;
	line-height: 150%;
	margin-bottom: 0;
}
@media screen and (max-width: 767px) {
	.new_management{
		font-size: 14px;
	}
	.new_management h4{
		font-size: 18px;
	}
	.new_management p{
		font-size: 12px;
	}
}

.bg_wh_line_gr{
	background-color: #fff;
	border: 1px solid #A3A3A3;
	text-align: center;
}
.objectives{
	color: #333;
}
.objectives p{
	font-size: 24px;
	font-style: normal;
	font-weight: 600;
	line-height: 175%;
	padding-top: 50px;
	padding-bottom: 0;
	margin: 0;
}
.objectives-tx_l{
	color:#4B1E78;
	text-align: center;
	font-family: Oswald;
	font-size: 100px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
	padding: 40px 0 66px;
}
.objectives-tx_l span{
	font-size: 50px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
}
.objectives-tx_m p{
	padding: 8px 0 7px;
}
.objectives-tx_m div{
	color: #4B1E78;
	font-family: Oswald;
	font-size: 60px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
	padding: 0 0 18px;
}
.objectives-tx_m div span{
	font-size: 30px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
}
@media screen and (max-width: 1240px) {
		.objectives p{
		font-size: 20px;
	}
}
@media screen and (max-width: 767px) {
	.objectives p{
		padding-top: 18px;
		font-size: 18px;
	}
	.objectives-tx_l{
		font-size: 50px;
		padding: 10px 0 30px;
	}
	.objectives-tx_l span{
		font-size: 20px;
	}
	.objectives-tx_m div{
		font-size: 40px;
	}
	.objectives-tx_m div span{
		font-size: 18px;
	}
	.objectives-tx_m p{
		font-size: 18px;
	}
}
/*---------------KPI部分------------------*/
.kpi{
	color: #333;
	font-size: 16px;
	font-style: normal;
	font-weight: 600;
	line-height: 175%;
}
.kpi ul li{
	margin-bottom: 60px;
}
.kpi .bg_wh_line_gr{
	padding: 10px;
	margin-bottom: 10px;
}
.kpi_grbox{
	width: 100%;
}
.kpi_subtitle{
	display: block;
	height: 78px;
	font-size: 22px;
	font-style: normal;
	font-weight: 600;
	line-height: 175%;
	position: absolute;
	left: 0;
	bottom: 78px;
}
.kpi_firstbox{
	position: relative;
	height: auto;
	width: 220px;
}
.kpi_firstbox figure{
	position: absolute;
	width: 77px;
	bottom: -1px;
	right: 0;
}
@media screen and (max-width: 1240px) {
	.kpi_firstbox{
		width: 100%;
		height: 70px;
	}
	.kpi_subtitle{
		top: 0;
		left: 60px;
	}
	.kpi_firstbox figure{
		width: 50px;
		left: 0;
		top: 0;
	}
}
@media screen and (max-width: 767px) {
	.kpi_subtitle{
		font-size: 16px;
		padding-top: 18px;
		line-height: 100%;
	}
}
.kpi table{
	display: inline-block;
	background: none;
	border: none;
	color: #333;
	table-layout: auto;
	margin: 0 auto;
	width: fit-content;
	text-align: left;
}
.kpi table th{
	display: table-cell;
	border: none;
	background:none;
	font-size: 18px;
	font-style: normal;
	font-weight: 600;
	line-height: 175%;
	vertical-align: middle;
	margin: 0;
	padding:0 36px 0 0;
	position: relative;
}
.kpi table td{
	border: none;
	vertical-align: middle;
	background: none;
	font-size: 18px;
	font-style: normal;
	font-weight: 600;
	line-height: 100%;
	margin: 0;
	padding:6px 0;
}
.kpi table td span{
	font-family:Oswald;
	font-size: 36px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
	vertical-align: -2px;
	padding-left: 10px;
}
.kpi_pa{
	display: flex;
	border-bottom:#4B1E78 solid 4px ;
	column-gap: 32px;
	color: #4B1E78;
}
@media screen and (max-width: 1240px) {
	.kpi_pa{
		display: block;
	}
}
@media screen and (max-width: 767px) {
	.kpi_pa{
		border: none;
	}
}
.kpi_pa .kpi_grbox{
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: 32px;
	align-items: center;
}
.kpi_pa .kpi_grbox div{
	display: grid;
	align-items: center;
}
@media screen and (max-width: 767px) {
	.kpi_pa .kpi_grbox{
		grid-template-columns: 1fr;
		row-gap: 0;
		font-size: 14px;
	}
	.kpi_pa .kpi_grbox p{
		font-size: 15px;
	}
}
.kpi_pa table th::after{
	content: url("/ja/ir/management/medium-term/images/arrow_pa.svg");
	margin: 0 20px 0 0;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

.kpi_br{
	display: flex;
	border-bottom:#A76100 solid 4px;
	column-gap: 32px;
	color: #A76100;
}
@media screen and (max-width: 1240px) {
	.kpi_br{
		display: block;
	}
}
@media screen and (max-width: 767px) {
	.kpi_br{
		border: none;
	}
}
.kpi_br .kpi_grbox{
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: 32px;
}
@media screen and (max-width: 767px) {
	.kpi_br .kpi_grbox{
		grid-template-columns: 1fr;
		row-gap: 0;
		font-size: 14px;
	}
	.kpi_br .kpi_grbox p{
		font-size: 15px;
	}
}
.kpi_br table th::after{
	content: url("/ja/ir/management/medium-term/images/arrow_br.svg");
	margin: 0 20px 0 10px;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}
.kpi_br .kpi_grbox div{
	display: grid;
	grid-template-rows: subgrid; 
	grid-row: span 2;
	align-items: center;
}

.kpi_bl{
	display: flex;
	border-bottom:#006C9C solid 4px ;
	column-gap: 32px;
	color: #006C9C;
}
@media screen and (max-width: 1240px) {
	.kpi_bl{
		display: block;
	}
}
@media screen and (max-width: 767px) {
	.kpi_bl{
		border: none;
	}
}
.kpi_bl .kpi_grbox{
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: 32px;
}
.kpi_bl .kpi_grbox div{
	display: grid;
	align-items: center;
}
@media screen and (max-width: 767px) {
	.kpi_bl .kpi_grbox{
		grid-template-columns: 1fr;
		row-gap: 0;
		font-size: 14px;
	}
}
.kpi_bl table th::after{
	content: url("/ja/ir/management/medium-term/images/arrow_bl.svg");
	margin: 0 20px 0 0;
	position: absolute;
	right: 0;
}

.kpi_gr{
	display: flex;
	border-bottom:#00590A solid 4px;
	column-gap: 32px;
	color: #00590A;
}
@media screen and (max-width: 1240px) {
	.kpi_gr{
		display: block;
	}
}
@media screen and (max-width: 767px) {
	.kpi_gr{
		border: none;
	}
}
.kpi_gr .kpi_grbox{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	column-gap: 14px;
}
@media screen and (max-width: 767px) {
	.kpi_gr .kpi_grbox{
		grid-template-columns: 1fr;
		row-gap: 0;
		font-size: 14px;
	}
}
.kpi_gr table th::after{
	content: url("/ja/ir/management/medium-term/images/arrow_gr.svg");
	margin: 0 8px 0 8px;
	position: absolute;
	right: 0;
}
.kpi_gr .kpi_grbox div{
	display: grid;
	grid-template-rows: subgrid; 
	grid-row: span 2;
	align-items: center;
}
.kpi_gr table th{
	padding:0 20px 0 0;
	position: relative;
}
.kpi_gr table th.note03::before{
	content: "※3";
	position: absolute;
	font-size: 10px;
	font-weight: 300;
	line-height: 100%;
	left: 75%;
	top: 15px;
}
.kpi_gr table td{
	position: relative;
}
.kpi_gr table td span{
	padding-left: 0;
}
.kpi_gr table td.eco{
	padding-left: 18px;
}
.kpi_gr table td.eco .triangle::before{
	content: "△";
	font-size: 16px;
	position: absolute;
	font-weight:600;
	left: 0;
}
.kpi_gr table td p{
	position: absolute;
	top: 10px;
	right: 0;
	font-size: 10px;
	font-weight: 300;
	line-height: 100%;
}

@media screen and (max-width: 1240px) {
	.kpi table th{
		font-size: 15px;
		padding-right: 24px;
	}
	.kpi table th::after{
		margin: 0 5px 0 10px;
		top: 50%;
		transform: translateY(-50%);
	}
	.kpi table td{
		font-size: 14px;
		display: table-cell;
	}
	.kpi table td span{
		padding-left: 5px;
		font-size: 22px;
	}
	.kpi_gr table td p {
		font-size: 8px;
		top: 50%;
		transform: translateY(-150%);
	}
	.kpi_gr table th.note03::before {
		left: 50%;
		top: 10px;
	}
}
@media screen and (min-width: 767px) and (max-width: 970px) {
	.kpi_gr table th.note03::before {
		left: 60%;
		top: 10px;
	}
}
@media screen and (max-width: 767px) {
	.kpi .bg_wh_line_gr{
		margin-bottom: 20px;
	}
	.kpi_gr table th.note03::before {
	left: 71%;
	top: 10px;
	}
}

.information_session figure{
	width: 300px;
}
@media screen and (max-width: 767px) {
	ul.anchor-link li{
		font-size: 15px;
	}
}
/*---------------KPI部分------------------*/

.materiality{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: 67px , 3fr , 140px , 60px;
	grid-column-gap: 32px;
	grid-row-gap: 0px;
}
.materiality_box01{
	grid-area: 1 / 1 / 2 / 2;
}
.materiality_box02{
	grid-area: 1 / 2 / 4 / 3;
}
.materiality_box03{
	grid-area: 2 / 1 / 3 / 2;
}
.materiality_box04{
	grid-area: 3 / 1 / 4 / 2;
}
@media screen and (max-width: 767px) {
	.materiality{
		display: block;
	}
	.materiality_box03{
		margin-top: 25px;
	}
	.materiality_box03 p{
		font-size: 15px;
	}
	.materiality_box04.mt50{
		margin-top: 25px;
	}
}
