@charset "UTF-8";
/*---------------------------------------------------------
	MESSAGE
---------------------------------------------------------*/
#message,
#office{
	/*margin-top: var(--base-90);*/
}
.message_wrap,
.office_wrap{
	margin-top: var(--base-90);
}
#message .section_content p{
	margin-left: var(--base-40);
	padding-right: var(--base-55);
}
#message .section_content span{
	margin-top: var(--base-35);
	display: block;
	font-size: var(--base-20);
	font-weight: 600;
}
#message .section_content .section_sub_img{
	width: var(--base-560);
	margin-top: var(--base-150);
	background: #eee;
	border-radius: var(--base-60);
}
#message .section_content .section_sub_img img{
	border-radius: var(--base-60);
}
#message .section_content .section_sub_img_bg{
	position: absolute;
	display: block;
	right: min(29.375vw, 376px);
	bottom: var(--base-70);
	width: min(16.875vw, 216px);
	height: min(21.875vw, 280px);
	background-color: #eaf5eb;
	border-radius: var(--base-60);
	z-index: -2;
} 
@media screen and (max-width: 576px) {
	#message .section_content .section_sub_img{
		position: static;
		margin-top: 0;
		margin-bottom: var(--base-20);
		width: 100%;
	}
	#message .section_content .section_sub_img img{
		width: 100%;
	}
	#message .section_content .section_sub_img_bg{
		display: none;
	}
	#message .section_content p {
		margin-left: 0;
		padding-left: 0;
		padding-right: 0;
	}
}
/*---------------------------------------------------------
	PHILOSOPHY
---------------------------------------------------------*/
#philosophy {
	/*margin-top: var(--base-30);*/
	margin-bottom: var(--base-75);
	z-index: 3;
}
#philosophy .section_content,
#overview .section_content,
#office .section_content,
#sustainability .section_content{
	padding-left: min(11.328125vw, 145px);
	padding-right: min(11.328125vw, 145px); 
}
#philosophy .section_content h3{
	text-align: center;
}
#philosophy .section_content p{
	padding: var(--base-60) 0 0;
}
.phil_bg{
	padding-top: var(--base-120);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
.phil_bg::after{
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: var(--base-color-white);
	opacity: 0.5;
	z-index: 2;
}
#sustainability .block_wrap h2{
	margin-top: var(--base-40);
	font-size: var(--base-20);
	font-weight: 700;
}
#sustainability .block_wrap h2:first-of-type{
	margin-top: 0;
}
#sustainability .block_wrap h3{
	margin-top: var(--base-20);
	font-size: var(--base-18);
	font-weight: 700;	
}
#sustainability .block_wrap h3:first-of-type{
	margin-top: 0;
}
#sustainability .block_wrap strong{
	font-weight: 700;
}
#sustainability .block_wrap li{
	list-style-type: disc;
	list-style-position: inside;
	text-indent: -1.5em;
	padding-left: 2em;
	line-height: var(--base-40);
}
@media screen and (max-width: 768px) {
	#philosophy .section_content,
	#overview .section_content,
	#office .section_content,
	#sustainability .section_content{
		padding-left: var(--base-50);
		padding-right: var(--base-50);
	}
}
@media screen and (max-width: 576px) {
	#philosophy .section_content,
	#overview .section_content,
	#office .section_content,
	#sustainability .section_content{
		padding-left: 0;
		padding-right: 0; 
	}
}
/*---------------------------------------------------------
	OVERVIEW
---------------------------------------------------------*/
#overview .section_content{
	padding-bottom: var(--base-65);
}
.overview_ttl, .overview_detail{
	/*height: min(5.625vw, 72px);
	line-height: min(5.625vw, 72px);*/
	padding:var(--base-35) 0;
	line-height: var(--base-30);
}
.overview_ttl{
	border-bottom: 1px solid var(--base-color-green);
}
.overview_detail{
	border-bottom: 1px solid #ccc;
}
/*---------------------------------------------------------
	MAP
---------------------------------------------------------*/
.map_wrap{
	width:100%;
	height:auto;
	position:relative;
	padding-top: min(34.375vw, 440px);
}
.map_wrap iframe{
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
}
/*---------------------------------------------------------
	BASEAREA
---------------------------------------------------------*/
#office .section_ttl{
	position: absolute;
}
.basemap_wrap{
	/*padding: 0 var(--base-15);*/
}
.basearea_wrap{
	position: relative;
	top: calc(min(6.09375vw, 78px) * -1);
	margin: 0 auto;
	border-top: 1px solid #eee;
	background: #ffffff67;
}
.basearea_wrap_lr,
.basearea_wrap_sm{
	padding: var(--base-30) 0;
	border-bottom: 1px solid #eee;
}
.basearea_wrap_lr figure{
	margin-right: var(--base-35);
	width: min(28.125vw, 360px);
}
.basearea_wrap_lr .basearea{
	width: calc(100% - min(30.859375vw, 395px));
}
.basearea_ttl{
	font-weight: 700;
}
.basearea_wrap_lr .basearea_ttl{
	font-size: var(--base-20);
	margin-bottom: var(--base-15);
}
.basearea_wrap_sm.basearea_ttl{
	font-size: var(--base-15);
}
.basearea_detail{
	margin-bottom: var(--base-5);
}
.basearea_detail_ttl,
.basearea_detail_txt{
	font-size: var(--base-14);
	line-height: min(1.71875vw, 22px);
}
.basearea_detail_ttl{
	width: var(--base-90);
}
.basearea_detail_txt{
	width:	calc(100% - var(--base-90));
}
.basearea_gmap a{
	color: var(--base-color-green);
	font-weight: 600;
}
.basearea_wrap_lr .basearea_gmap{
	margin-top: var(--base-20);
}
.basearea_wrap_sm .basearea_gmap{
	text-align: right;
}
@media screen and (max-width: 768px){
	.basearea_ttl{
		margin-bottom: var(--base-15);
	}
	.basearea_detail_ttl,
	.basearea_detail_txt{
		line-height: var(--base-20);
	}
	.basearea_wrap_sm .basearea_gmap{
		margin-top: var(--base-20);
		text-align: initial;
	}
}
@media screen and (max-width: 576px) {
	.basearea_wrap_sm>*{
		padding-left: 0;
		padding-right: 0;
	}
	.basearea_detail_ttl{
		margin-bottom: var(--base-5);
	}
	.basearea_detail_ttl,
	.basearea_detail_txt{
		width: 100%;
	}
	.basearea_wrap_lr figure{
		width: 100%;
		margin-bottom: var(--base-20);
	}
}
/*---------------------------------------------------------
	SUSTAINABILITY
---------------------------------------------------------*/
.sustainability_wrap{
	background-color: rgba(255, 255, 255, 0.7);
    background-blend-mode: lighten;
	background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}
.sustainability_wrap .wp-block-column{
	padding-left: 1em;
}