@charset "utf-8";



/**************************************************
 Responsive
**************************************************/
@media screen and (max-width: 690px){
	
	
	
/**************************************************
 overview
**************************************************/
.philosophy{
	padding: 10px;
	border-radius: 20px;
}

.philosophy dl{
	padding: 30px 20px;
	border-radius: 10px;
	border: 5px solid #FFFFFF;
}
.philosophy dl dt span{
	font-size: 8.0vw;
	letter-spacing: 1px;
	padding: 0 60px;
}
.philosophy dl dt span::before,
.philosophy dl dt span::after{
	width: 40px;
	height: 3px;
}
.philosophy dl dd{
	font-size: 5.5vw;
	line-height: 1.4;
	padding-top: 30px;
}

section.flexWrap{display: block;}
section.flexWrap p{width: 100%;}
section.flexWrap p.greeting{font-size: 3.3vw;}
section.flexWrap p span.sign{margin-top: 50px;}

.president{
	position: static;
	width: 100%;
	text-align: center;
	margin-top: 30px;
}
.president img{
	width: 50%;
	border-radius: 15px;
}

section.flexWrap table.overview{width: 100%;}
section.flexWrap table.overview th{
	width: auto;
	white-space: nowrap;
	padding-right: 30px;
}

.accessHanger{
	width: 100%;
	margin-top: 40px;
}
.accessHanger dl:last-of-type{margin-top: 60px;}
.accessHanger dl dt{
	font-size: 2.2rem;
	font-weight: 700;
	letter-spacing: 1px;
}
.accessHanger dl dd{font-size: 1.6rem;}

.mapHanger{
	height: 70vw;
	margin-top: 20px;
}
	
	

/**************************************************
 business
**************************************************/
.businessIntro{
	padding: 25px;
	border-radius: 20px;
	border: 7px solid var(--green2);
}

.businessHanger{margin-top: 20px;}
.businessHanger ul li{
	width: calc(50% - 10px);
	font-size: 1.6rem;
}
.businessHanger ul li:nth-of-type(2n){margin-left: 20px;}
.businessHanger ul li::before{
	width: 8px;
	height: 3px;
	top: 12px;
	left: 0;
	background: var(--green3);
	border-radius: 10.0rem;
}
	
.dataHanger{margin-top: 20px;}
.dataHanger dl{
	width: calc(50% - 10px);
	padding: 0 15px;
	border: 7px solid var(--green2);
	border-radius: 15px;
	margin: 20px 20px 0 0;
}
.dataHanger dl:nth-of-type(2n){margin: 20px 0 0 0;}
.dataHanger dl dt{
	font-size: 3.2vw;
	padding-bottom: 20px;
}
.dataHanger dl dt::before{
	width: 40px;
	height: 4px;
	left: calc(50% - 20px);
}
.dataHanger dl dd{
	font-size: 12.5vw;
	padding-top: 15px;
}
	
.businessImage{margin-top: 40px;}
.businessImage img{
	width: calc(50% - 10px);
	border-radius: 10px;
}
.businessImage img:nth-of-type(2n){margin-left: 20px;}
	
	

/**************************************************
 activities
**************************************************/
.certification{margin-top: 20px;}
.certification img{
	width: calc(50% - 10px);
	margin: 0 5px;
}
.certification img.vertical{width: calc(45% - 10px);}
.certification.award{
	width: 100%;
	margin: 0;
}
.certification.award img{
	width: calc(50% - 10px);
	margin: 20px 20px 0 0;
}
.certification.award img:nth-of-type(2n){margin: 20px 0 0 0;}

strong.sdgs{
	font-size: 4.2vw;
	line-height: 1.5;
	margin-bottom: 15px;
}

.goals{margin-top: 40px;}

.sdgsHanger{padding-right: 0;}
.sdgsHanger p{
	margin-top: 0;
	padding-top: 20px;
}
.sdgsHanger ul{padding: 0;}
.sdgsHanger ul li{font-size: 1.6rem;}
.sdgsHanger ul li::before{
	width: 8px;
	height: 3px;
	top: 12px;
	left: 0;
	background: var(--green3);
	border-radius: 10.0rem;
}
	
.sdgsIcon{
	position: static;
	margin-top: 30px;
	text-align: center;
}
.sdgsIcon img{
	width: 35%;
	margin: 0 10px;
}
	
	
	
}
