@charset "utf-8";
/*--------------------------------------
	copyright : yuyu design.
--------------------------------------*/

@import url(reset.css);
@import url(common.css);
@import url(../libs/fontawesome/css/all.min.css);
@import url(../libs/aos/aos.css);
/* @import url(../libs/OwlCarousel/assets/owl.carousel.min.css); @import url(../libs/OwlCarousel/assets/owl.theme.default.min.css); */
/* @import url(../libs/lightGallery/css/lightgallery.min.css); */
/* @import url(../libs/Remodal/remodal.css); @import url(../libs/Remodal/remodal-default-theme.css); */


/*
 overview
==============================*/

body { background-color: #FFF; }

/* inner ----------*/
#main .inner { position: relative; max-width: 106rem; margin: 0 auto; padding: 0 4rem; }
@media screen and (max-width:480px) { /* s */
	#main .inner { padding: 0 12vw; }
}

/* main ----------*/
#main {}
#main .ov_bg { z-index: 1; }


/* mvp ----------*/
#mvp { background: none; }
#mvp::after { display: none; }

/* philosophy ----------*/
#philosophy { background-color: #FFF; padding-bottom: 9rem; }
#philosophy .inner { max-width: 131rem; padding: 0 2rem; }
#philosophy .w1 {}
#philosophy .w2 { text-align: right; }
#philosophy .h2 { position: relative; z-index: 4; }
#philosophy .txt_box { position: relative; display: inline-block; padding: 3rem 4.5rem 0.3rem; }
#philosophy .txt_box.-tb1 { z-index: 5; margin-top: 3rem; margin-right: 15%; }
#philosophy .txt_box.-tb2 { z-index: 4; margin-top: -4rem; margin-left: auto; }
#philosophy .txt_box::after { content: ""; position: absolute; z-index: 1; top: 0; left: 0; display: block; width: 100%; height: 100%; background-repeat: no-repeat; background-position: center; background-size: 100% 100%; }
#philosophy .txt_box.-tb1::after { background-image: url(../img/overview/philosophy_txt_bg_01.png); }
#philosophy .txt_box.-tb2::after { background-image: url(../img/overview/philosophy_txt_bg_02.png); }
#philosophy .txt_box .w { position: relative; z-index: 2; }
#philosophy .txt_box h3 { text-align: center; font-size: 3.2rem; }
#philosophy .txt_box ol { display: flex; }
#philosophy .txt_box.-tb1 ol { margin-top: -5rem; }
#philosophy .txt_box ol li { display: inline-block; }
#philosophy .txt_box.-tb1 ol li:nth-child(1) { margin-right: -3rem; }
#philosophy .txt_box.-tb1 ol li:nth-child(2) { margin-right: -2rem; padding-top: 24%; }
#philosophy .txt_box.-tb1 ol li:nth-child(3) { padding-top: 2rem; }
#philosophy .txt_box.-tb2 ol li:nth-child(1) { margin-right: -1rem; padding-top: 20%; }
#philosophy .txt_box.-tb2 ol li:nth-child(2) { margin-right: -2rem; }
#philosophy .txt_box.-tb2 ol li:nth-child(3) { padding-top: 20%; }
#philosophy .ov_01 { width: 17.3%; top: -2%; left: -10%; }
#philosophy .ov_02 { width: 58.4%; top: -3%; right: -5%; }
#philosophy .ov_03 { width: 46.1%; bottom: 0; left: -5%; }
#philosophy .ov_04 { z-index: 2; width: 12%; top: 1%; left: 1%; }
@media screen and (max-width:1260px) { /* x */
	#philosophy .txt_box.-tb1 { margin-top: 0; }
	#philosophy .txt_box.-tb2 { margin-top: -2rem; }
}
@media screen and (max-width:1024px) { /* l */
	#philosophy .txt_box.-tb2 { margin-left: 15%; }
}
@media screen and (max-width:480px) { /* s */
	#philosophy .txt_box { width: 100%; margin: 0 !important; padding: 3rem 1rem 0.3rem; }
	#philosophy .txt_box ol { flex-direction: column; margin-top: 0 !important; }
	#philosophy .txt_box ol li { padding: 0 !important; text-align: left; }
	#philosophy .txt_box ol li:nth-child(2) { text-align: right; margin-top: -24%; }
	#philosophy .txt_box ol li:nth-child(3) { margin-top: -21%;}
	#philosophy .txt_box ol li:nth-child(1) img { width: 50%; }
	#philosophy .txt_box ol li:nth-child(2) img { width: 55%; }
	#philosophy .txt_box ol li:nth-child(3) img { width: 60%; }
	#philosophy .txt_box h3 { font-size: 2.6rem; }
	#philosophy .ov_01 { top: 2%; left: -10%; }
	#philosophy .ov_02 { top: 0%; right: -5%; }
	#philosophy .ov_03 { bottom: -5%; left: -5%; }
}


/* outline ----------*/
#outline { background-color: #FBFAF0; padding-top: 5rem; }
#outline .bg_cloud {
	position: relative;
	background-image: url(../img/common/cloud_01.svg), url(../img/common/cloud_02.svg);
	background-repeat: no-repeat;
	background-position: left top 40%, left bottom;
	background-size: 100% 20rem;
}
#outline .bg_cloud::after { content: ""; position: absolute; z-index: 1; top: calc(40% + 12rem); left: 0; width: 100%; height: calc(100% - (40% + 10rem) - 20rem); background-color: #FFF; }
#outline .inner { position: relative; z-index: 2; padding-bottom: 14rem; }
#outline h3 { font-size: 1.8rem; font-weight: bold; text-align: left; line-height: 2.2; margin-bottom: 2rem; }
#outline .table th { min-width: 18rem; }
#outline .table strong { font-size: 1.8rem; display: inline-block; }
#outline .table strong.c1 { color: #F2786D; }
#outline .table strong.c2 { color: #9BC760; }
#outline .table strong.c3 { color: #7DC8E4; }
#outline .ov_bg { z-index: 1; }
#outline .ov_01 { width: 21.3%; top: -2%; left: -2%; }
#outline .ov_02 { width: 27%; top: -8%; right: 3%; }
#outline .ov_03 { width: 22%; top: 0; bottom: 0; right: 101%; margin: auto; }
#outline .ov_04 { width: 27%; bottom: 3rem; left: 101%; }
#outline .ov_05 { width: 57%; bottom: 0; left: 0; right: 0; margin: auto; }
@media screen and (max-width:480px) { /* s */
	#outline .bg_cloud { background-size: 100% 10rem; }
	#outline .bg_cloud::after { top: calc(40% + 5rem); height: calc(100% - (40% + 5rem) - 9.8rem);  }
	#outline .ov_01 { top: -1%; left: -2%; }
	#outline .ov_02 { top: -4%; right: 3%; }
	#outline .ov_03 { top: 0; bottom: 0; right: 90%; margin: auto; }
	#outline .ov_04 { bottom: 3rem; left: 90%; }
	#outline .ov_05 { width: 90%; bottom: 0; left: 0; right: 0; margin: auto; }
}

/* facilityList ----------*/
#facilityList { padding-top: 8rem; padding-bottom: 9rem; background-color: #FFF5FB; }
#facilityList .w { margin-top: 8rem; }
#facilityList .inner { z-index: 4; }
#facilityList .bg_cloud {
	position: relative;
	background-image: url(../img/common/cloud_01.svg), url(../img/common/cloud_02.svg);
	background-repeat: no-repeat;
	background-position: left top 10rem, left bottom 20rem;
	background-size: 100% 20rem;
}
#facilityList .bg_cloud::after { content: ""; position: absolute; z-index: 1; top: 30rem; left: 0; width: 100%; height: calc(100% - 30rem - 40rem); background-color: #FFF; }
#facilityList .table { position: relative; z-index: 4; }
#facilityList .table th, #facilityList .table td { padding: 4rem 0; }
#facilityList .table th { min-width: 26rem; line-height: 1.33; }
#facilityList .table td { min-width: 15rem; line-height: 2; }
#facilityList .table .btw { text-align: right; }
#facilityList .ov_bg { z-index: 3; }
#fl_secA {}
#fl_secA .ov_01 { width: 51.6%; top: -3%; left: -30%; }
#fl_secA .ov_02 { width: 51.6%; top: -3%; right: -30%; }
#fl_secA .ov_03 { width: 12.8%; top: 40%; left: -25%; }
#fl_secA .ov_04 { width: 8.1%; top: 40%; right: -13%; }
#fl_secB {}
#fl_secB .ov_01 { width: 23.6%; top: 6%; left: -17%; }
#fl_secB .ov_02 { width: 19.2%; bottom: -10%; left: -25%; }
#fl_secB .ov_03 { width: 16.8%; bottom: -8%; right: -25%; }
#fl_secC {}
#fl_secC .ov_01 { width: 8.5%; bottom: 0; left: -17%; }
#fl_secC .ov_02 { width: 19.2%; bottom: -5%; right: -25%; }
@media screen and (max-width:480px) { /* s */
	#facilityList .bg_cloud { background-size: 100% 10rem; }
	#facilityList .bg_cloud::after { top: 20rem; height: calc(100% - 20rem - 30rem); }
	#facilityList .table th, #facilityList .table td { padding: 2rem 0; }
	#facilityList .table th br { display: none; }
	#fl_secA .ov_01 { top: -3%; left: -20%; }
	#fl_secA .ov_02 { top: -5%; right: -20%; }
	#fl_secA .ov_03 { top: 40%; left: -2%; }
	#fl_secA .ov_04 { top: 40%; right: -2%; }
	#fl_secB .ov_01 { top: 6%; left: -2%; }
	#fl_secB .ov_02 { bottom: -10%; left: -7%; }
	#fl_secB .ov_03 { bottom: -8%; right: -2%; }
	#fl_secC .ov_01 { bottom: 0; left: -5%; }
	#fl_secC .ov_02 { bottom: -5%; right: -5%; }
}