@charset "UTF-8";

.main {width: 100%;position: relative;}
.main img {width: 100%;height: auto;}
.main dl.name {position: absolute;right: 50px;top: 50px;text-align: center;}
.main dl.name dt{font-size: 20px;line-height: 1;letter-spacing: .1em;padding: 5px .2em 5px .3em;margin: 0 0 5px; color: #add8f4;background: var(--main-color);}
.main dl.name dd {}
.main dl.name dd h1.facility {font-size: 24px; line-height: 1.6;font-weight: 100;letter-spacing: .1em;padding: 0 0 0 .1em;color: var(--main-color);}
.main dl.name dd p {font-size: 18px; line-height: 1.6;color: var(--main-color);}



.name {position: absolute;right: 50px;top: 50px;text-align: center;}
.name p.head {font-size: 20px;line-height: 1;letter-spacing: .1em;padding: 5px .2em 5px .3em;margin: 0 0 5px; color: #add8f4;background: var(--main-color);}
.name h1.facility {font-size: 24px; line-height: 1.6;font-weight: 100;letter-spacing: .1em;padding: 0 0 0 .1em;color: var(--main-color);}
.name p.sub {font-size: 18px; line-height: 1.6;color: var(--main-color);}



.main .maincopy {text-align: center;width: 100%; position: absolute;top: 45%;left: 50%;transform: translateY(-50%) translateX(-50%);-webkit- transform: translateY(-50%) translateX(-50%);}

.main .maincopy p.english {font-size: 28px;line-height: 2;color: #fff;letter-spacing: .5em;margin: 0 0 40px;}
.main .maincopy p.p2_text {font-size: 28px;line-height: 2;color: #fff;letter-spacing: .5em;margin: 0;}
.main .maincopy p.maincopy_text {font-size: 40px;line-height: 1.6;color: #fff;letter-spacing: .5em;}

.main_contact_block{width: 90vw;margin:0 5vw;position: absolute;bottom: 40px;left: 50%;transform: translateX(-50%);-webkit- translateX(-50%);text-align: left;}
.main_contact_block .main_contact {background: rgba(255,255,255,0.4);padding: 20px;display: inline-block;}
.main_contact_block .main_contact p.main_contact_text {font-size: 20px;line-height: 1.6;color: #fff; text-align: center;margin: 0 0 10px;}
.main_contact_btn.btn_slide {background: #fff;overflow: hidden;position: relative;z-index: 1;padding: 10px;border-radius: 50vh;text-align: center;}
.main_contact_btn.btn_slide a {font-size: 18px;line-height: 1;font-weight: 700; color: var(--main-color);text-decoration: none;}
.main_contact_btn.btn_slide::after {background: var(--main-color);color: #fff;position: absolute;top: 0;left: 0;content: '';width: 100%;height: 100%;transform: scale(0, 1);transform-origin: left top;transition: .2s cubic-bezier(0.45, 0, 0.55, 1);z-index: -1;}
.main_contact_btn.btn_slide:hover {color: var(--main-color);}
.main_contact_btn.btn_slide:hover a {color: #fff;}
.main_contact_btn.btn_slide:hover::after {transform: scale(1, 1);}
@media (max-width: 1600px) {
.main dl.name {right: 3.16vw;top: 3.16vw;}
.main dl.name dt{font-size: 1.26vw;padding: 0.31vw .2em 0.31vw .3em;margin: 0 0 0.31vw; }
.main dl.name dd { }
.main dl.name dd h1.facility {font-size: 1.51vw;}
.main dl.name dd p {font-size: 1.12vw;}


.name {right: 3.16vw;top: 3.16vw;}
.name p.head{font-size: 1.26vw;padding: 0.31vw .2em 0.31vw .3em;margin: 0 0 0.31vw; }
.name h1.facility {font-size: 1.51vw;}
.name p.sub {font-size: 1.12vw;}



.main .maincopy p.english {font-size: 1.77vw;margin: 0 0 2.53vw;}
.main .maincopy p.p2_text {font-size: 1.77vw;}
.main .maincopy p.maincopy_text {font-size: 2.53vw;}

.main_contact_block{width: 90vw;margin:0 5vw;position: absolute;bottom: 2.53vw;}
.main_contact_block .main_contact {padding: 1.26vw;}
.main_contact_block .main_contact p.main_contact_text {font-size: 1.26vw;margin: 0 0 0.63vw;}
.main_contact_btn.btn_slide {padding: 0.63vw;}
.main_contact_btn.btn_slide a {font-size: 1.13vw;}
}
@media screen and (max-width: 767px) {
.main dl.name {right: inherit;top: 5vw;position: absolute;left: 50%;transform:translateX(-50%);-webkit- transform:translateX(-50%);}
.main dl.name dt{white-space: nowrap;font-size: 3vw;padding: 0.31vw .2em 0.31vw .3em;margin: 0 0 2vw; }
.main dl.name dd { }
.main dl.name dd h1.facility {white-space: nowrap;font-size: 3.8vw;}
.main dl.name dd p {font-size:2.6vw;}

.name {right: inherit;top: 5vw;position: absolute;left: 50%;transform:translateX(-50%);-webkit- transform:translateX(-50%);}
.name p.head {white-space: nowrap;font-size: 3vw;padding: 0.31vw .2em 0.31vw .3em;margin: 0 0 2vw; }
.name h1.facility {white-space: nowrap;font-size: 3.8vw;}
.name p {font-size:2.6vw;}


.main .maincopy {top: 47.5%;}
.main .maincopy p.english {font-size: 3.2vw;margin: 0;letter-spacing: .25em;}
.main .maincopy p.p2_text {font-size: 3.2vw;margin: 0;}
.main .maincopy p.maincopy_text {font-size: 5vw;}

.main_contact_block{width: 100%;position: absolute;

position: absolute;
bottom: 5vw;
left: 50%;
transform:translateX(-50%);
-webkit- transform:translateX(-50%);
margin: 0;text-align: center;
}
.main_contact_block .main_contact {background: rgba(255,255,255,0);padding: 1.26vw;margin: auto;}
.main_contact_block .main_contact p.main_contact_text {display: none;}

.main_contact_btn.btn_slide {padding:2.5vw 5vw;}
.main_contact_btn.btn_slide a {font-size: 3.4vw;}


}



.y100 {padding: 80px 0 0;}
.y100 img {margin: 80px 0 0;width: 100%;height: auto;}
@media (max-width: 1600px) {
.y100 {padding: 5.06vw 0 0;}
.y100 img {margin: 5.06vw 0 0;}
}
@media screen and (max-width: 767px) {
.y100 {padding: 7.14vw 0 0;}
.y100 img {margin: 7.14vw 0 0;}
}



.top_type {background: #F9F9F9;padding: 80px 0;}
.top_type ul.top_type_btn {max-width: 1160px;margin:0 auto;padding: 80px 20px 0; display:flex;flex-wrap:wrap;}
.top_type ul.top_type_btn li {width: 48%;margin-right: 4%;}
.top_type ul.top_type_btn li:nth-child(2) {margin-right: 0;}
.btn {width:calc(100% - 40px);display: inline-block;padding: 20px 0 20px 40px;position: relative;overflow: hidden;text-decoration: none;transition: 0.25s;color: #fff;border-radius: 6px;transition: transform 0.5s ease-in-out;text-align: left;}
.btn:hover {transform: scale(1.1);}
a.btn-triangle-right::after {content: '';position: absolute;top: 0;bottom: 0;right: 27px;width: 0;height: 0;margin: auto;border-top: 6px solid transparent;border-right: 0 solid transparent;border-left: 9px solid #fff;border-bottom: 6px solid transparent;box-sizing: border-box;}
.btn-triangle-right {}
.btn-triangle-right {font-size: 30px;line-height: 1.6;color: #fff;text-decoration: none;}
.i1 {background: #2E4E53;}
.j1 {background: #6D5985;}


/*
.btn.btn-triangle-right:hover {color: #fff;display: block;}
.btn.btn-triangle-right:before {
content: "";position: absolute;top: 0;left: 0;right: 0;bottom: 0;background-color: var(--main-color);color: #fff;transform: translateX(-100%);transition: 0.25s;z-index: -1;}
.btn.btn-triangle-right:hover {
color: #ffffff;background: none;}
.btn.btn-triangle-right:hover:before {
transform: translateX(0);color: #ffffff;}
*/
@media (max-width: 1600px) {
.top_type {padding: 5.06vw 0;}
.top_type ul.top_type_btn {max-width: 73.41vw;padding: 5.06vw 1.26vw 0;}
.btn {width:calc(100% - 2.53vw);padding: 1.26vw 0 1.26vw 2.53vw;border-radius: 0.37vw;}
a.btn-triangle-right::after {right: 1.70vw;border-top: 0.37vw solid transparent;border-left: 0.56vw solid #fff;border-bottom: 0.37vw solid transparent;}
.btn-triangle-right {font-size: 1.89vw;}


}
@media screen and (max-width: 767px) {
.top_type {padding: 7.14vw 0;}
.top_type ul.top_type_btn {max-width: 80vw;padding: 7.14vw 0 0; margin: auto;}
.top_type ul.top_type_btn li {width: 100%;margin:0 0 5%;}
.top_type ul.top_type_btn li:nth-child(2) {margin: 0;}
.btn {width:calc(100% - 2.53vw);padding: 2.5vw 0 2.5vw 2.5vw;border-radius: 1vw;}
a.btn-triangle-right::after {right: 2.5vw;border-top: 1.37vw solid transparent;border-left: 1.56vw solid #fff;border-bottom: 1.37vw solid transparent;}
.btn-triangle-right {font-size: 5vw;}

}



.benefits {padding: 80px 0;}
ul.benefits_list {max-width: 1600px;padding: 0 20px; margin: 60px auto 0;}
ul.benefits_list li {padding: 40px 120px;border-bottom: 1px solid #535353;display:flex;flex-wrap:wrap;}
ul.benefits_list li:first-child {border-top: 1px solid #535353;}
ul.benefits_list li .benefits_pic {width: 340px;margin: 0 50px 0 0;}
ul.benefits_list li .benefits_pic img {width: 100%;height: auto;}
ul.benefits_list li .benefits_text_block {width:calc(100% - 390px);text-align: left;}
ul.benefits_list li .benefits_text_block h3.benefits_pic_title{font-size: 30px;vertical-align: middle;margin: 0 0 30px;}
ul.benefits_list li .benefits_text_block h3.benefits_pic_title span{font-size: 40px;margin-right: .5em;}
ul.benefits_list li .benefits_text_block p.benefits_pic_text {font-size: 20px;line-height: 2;}
ul.benefits_list li .benefits_text_block {}


ul.benefits_list li:nth-child(1) .benefits_text_block h3.benefits_pic_title {color: #6E1919;}
ul.benefits_list li:nth-child(2) .benefits_text_block h3.benefits_pic_title {color: #285487;}
ul.benefits_list li:nth-child(3) .benefits_text_block h3.benefits_pic_title {color: #6D5985;}
ul.benefits_list li:nth-child(4) .benefits_text_block h3.benefits_pic_title {color: #8F4C37;}
ul.benefits_list li:nth-child(5) .benefits_text_block h3.benefits_pic_title {color: #2E4E53;}
@media (max-width: 1600px) {
.benefits {padding: 5.06vw 0;}
ul.benefits_list {padding: 0 1.26vw; margin: 3.79vw auto 0;}
ul.benefits_list li {padding: 2.53vw 7.59vw;}
ul.benefits_list li .benefits_pic {width: 21.51vw;margin: 0 3.16vw 0 0;}
ul.benefits_list li .benefits_text_block {width:calc(100% - 24.68vw);}
ul.benefits_list li .benefits_text_block h3.benefits_pic_title{font-size: 1.89vw;vertical-align: middle;margin: 0 0 1.89vw;}
ul.benefits_list li .benefits_text_block h3.benefits_pic_title span{font-size: 2.53vw;}
ul.benefits_list li .benefits_text_block p.benefits_pic_text {font-size: 1.26vw;}
ul.benefits_list li .benefits_text_block {}
}
@media screen and (max-width: 767px) {
.benefits {padding: 7.14vw 0;}

ul.benefits_list {width: 90%; margin: 7.14vw auto 0;}
ul.benefits_list li {padding:5vw 0;flex-direction: row-reverse;}
ul.benefits_list li .benefits_pic {width: 45vw;margin: 0 0 0 5vw;}
ul.benefits_list li .benefits_text_block {width:calc(100% - 50vw);}
ul.benefits_list li .benefits_text_block h3.benefits_pic_title{font-size: 3.8vw;line-height: 1.6;vertical-align: middle;margin: 0 0 1.89vw;padding: 8px 0 0 2em;position: relative;}
ul.benefits_list li .benefits_text_block h3.benefits_pic_title span{font-size: 5.71vw; position: absolute;left: 0;top: 0;}
ul.benefits_list li .benefits_text_block p.benefits_pic_text {display: none;}



}



.everydaylife {  background: linear-gradient(90deg, #ECF4F9 0%, #ECF4F9 50%, #F9F3EC 50%, #F9F3EC 100%);justify-content: center;align-items: center;width: 100%;padding: 80px 20px}
h2.everydaylife_title {font-size: 40px;line-height: 1.6;font-weight: 600; letter-spacing: .2em;margin: 0 0 80px;}

.everydaylife_box {max-width: 1600px;margin: auto; display:flex;flex-wrap:wrap;}
.everydaylife_block {width:calc(50% - 100px);}
.left {padding: 0 100px 0 0;}
.right {padding: 0 0 0 100px;}

.everydaylife_main {display:flex;flex-wrap:wrap;margin: 0 0 80px;}
.everydaylife_main p.everydaylife_main_title {font-size: 40px;letter-spacing: .8em; width:calc(100% - 580px);float: left;writing-mode: vertical-lr;text-align: left;display: inline-block;}
.everydaylife_main p.everydaylife_main_title span {font-size: 30px;letter-spacing: 0;margin-bottom: 2em;}
.everydaylife_main dl {width: 580px;display: inline-block;}
.everydaylife_main dl dt {margin: 0 0 40px;}
.everydaylife_main dl dt img {width: 100%;height: auto;}
.everydaylife_main dl dd {font-size: 26px;line-height: 1.6;text-align: left;}

.everydaylife_block .everydaylife_time_list {width:100%;clear: both;}
.everydaylife_block .everydaylife_time_list ul.{}
.everydaylife_block .everydaylife_time_list ul li {width: 100%;display:flex;flex-wrap:wrap;margin: 0 0 60px;}
.everydaylife_block .everydaylife_time_list ul li:last-child {margin: 0;}
.everydaylife_block .everydaylife_time_list ul li .everydaylife_time {width:calc(100% - 280px);text-align: left;}
.everydaylife_block .everydaylife_time_list ul li .everydaylife_time h3.everydaylife_time_title {font-size: 26px;line-height: 1.6;margin: 0 0 30px;}
.everydaylife_block .everydaylife_time_list ul li .everydaylife_time p.everydaylife_time_text {font-size: 20px;line-height: 1.6;margin-right: 20px;}
.everydaylife_block .everydaylife_time_list ul li .everydaylife_time_pic {width: 280px;}
.everydaylife_block .everydaylife_time_list ul li .everydaylife_time_pic img {width: 100%;height: auto;}
@media (max-width: 1600px) {
.everydaylife {padding: 5.06vw 0;}
h2.everydaylife_title {font-size: 2.53vw;margin: 0 0 5.06vw;}
.everydaylife_box {width: 96%;}
.everydaylife_block {width:calc(50% - 6.32vw);}

.left {padding: 0 6.32vw 0 0;}
.right {padding: 0 0 0 6.32vw;}
.everydaylife_main {margin: 0 0 5.06vw;}
.everydaylife_main p.everydaylife_main_title {font-size: 2.53vw;width:calc(100% - 35.44vw);}
.everydaylife_main p.everydaylife_main_title span {font-size: 1.89vw;}
.everydaylife_main dl {width:35.44vw;display: inline-block;}
.everydaylife_main dl dt {margin: 0 0 2.53vw;}
.everydaylife_main dl dd {font-size: 1.6vw;}
.everydaylife_block .everydaylife_time_list ul li {margin: 0 0 3.79vw;}
.everydaylife_block .everydaylife_time_list ul li .everydaylife_time {width:calc(100% - 17.72vw);}
.everydaylife_block .everydaylife_time_list ul li .everydaylife_time h3.everydaylife_time_title {font-size: 1.5vw;margin: 0 0 1.89vw;}
.everydaylife_block .everydaylife_time_list ul li .everydaylife_time p.everydaylife_time_text {font-size: 1.2vw;margin-right: 1.26vw;}
.everydaylife_block .everydaylife_time_list ul li .everydaylife_time_pic {width: 17.72vw;}
}
@media screen and (max-width: 767px) {
.everydaylife {padding: 7.14vw 0 0;background: #ECF4F9;}
h2.everydaylife_title {font-size: 4.76vw;width: 90%;margin:0 auto 7.14vw;}

.everydaylife_box {width: 100%;}
.everydaylife_block {width:100%;}
.left {padding:0 0 10%;background: #ECF4F9;}
.right {padding:10% 0;background: #F9F3EC;}
.everydaylife_main {width: 80%; margin: 0 auto 5.06vw;}
.everydaylife_main p.everydaylife_main_title {font-size: 4.76vw;width:calc(100% - 70vw);}
.everydaylife_main p.everydaylife_main_title span {font-size: 3.33vw;}
.everydaylife_main dl {width:70vw;display: inline-block;}
.everydaylife_main dl dt {margin: 0 0 2.5vw;}
.everydaylife_main dl dd {font-size: 3vw;}
.everydaylife_block .everydaylife_time_list {width: 80%;margin: auto;}
.everydaylife_block .everydaylife_time_list ul li .everydaylife_time {width:calc(100% - 40vw);}
.everydaylife_block .everydaylife_time_list ul li .everydaylife_time h3.everydaylife_time_title {font-size: 3.4vw;margin: 0 2.5vw 1.89vw 0;}
.everydaylife_block .everydaylife_time_list ul li .everydaylife_time p.everydaylife_time_text {font-size: 2.8vw;margin-right: 2.5vw;}
.everydaylife_block .everydaylife_time_list ul li .everydaylife_time_pic {width: 40vw;}
}





.program {padding: 80px 0;}
ul.program_list {max-width: 1580px; padding: 60px 20px 0;margin: auto; display:flex;flex-wrap:wrap;}
ul.program_list li {width: 19%;margin-right: 8%;}
ul.program_list li:last-child {margin-right: 0;}
ul.program_list li img {width: 100%;height: auto;margin: 0 0 30px;}
ul.program_list li dl {}
ul.program_list li dl dt {font-size: 30px;line-height: 1.6;font-weight: 700; color:  var(--main-color);}
ul.program_list li dl dd {font-size: 21px;line-height: 1.6;}
@media (max-width: 1600px) {
.program {padding: 5.06vw 0;}
ul.program_list {max-width: 1580px; padding: 3.79vw 1.26vw 0;}
ul.program_list li img {margin: 0 0 1.89vw;}
ul.program_list li dl dt {font-size: 1.89vw;}
ul.program_list li dl dd {font-size: 1.3vw;}
}
@media screen and (max-width: 767px) {
.program {padding: 7.14vw 0;}
ul.program_list {max-width: 1580px; padding: 7.14vw 5vw 0;}
ul.program_list li {width: 46%;margin: 0 8% 8% 0;}
li:last-child,li:nth-last-child(2):nth-child(odd) {margin-bottom: 0;}
ul.program_list li:nth-child(2n) {margin-right: 0;}
ul.program_list li dl dt {font-size: 3.8vw;}
ul.program_list li dl dd {font-size: 2.8vw;}
}



.event {padding: 80px 0;background: #F3EFF9;}
.event .event_block {max-width: 1580px; padding: 60px 20px 0;margin: auto;display:flex;flex-wrap:wrap;}
.event .event_block ul.month {width: 30%; margin-right: 5%;border-top: 1px solid #000;}
.event .event_block ul.month:last-child {margin-right: 0;}
.event .event_block ul.month li {border-bottom: 1px solid #000;padding: 20px 0;text-align: left;position: relative;}
.event .event_block ul.month li p{font-size: 24px;line-height: 1.8;min-height: 87px;margin-left: 100px;display: inline-flex;align-items: center;}
.event .event_block ul.month li {}
.event .event_block ul.month li:before{color: #6D5985;content: '';position: absolute;top: 50%;left:0;transform: translateY(-50%) ;-webkit- transform: translateY(-50%) ;font-size: 34px;}
.event .event_block ul.month li.Jan:before{content: '1月';}
.event .event_block ul.month li.Feb:before{content: '2月';}
.event .event_block ul.month li.Mar:before{content: '3月';}
.event .event_block ul.month li.Apr:before{content: '4月';}
.event .event_block ul.month li.May:before{content: '5月';}
.event .event_block ul.month li.Jun:before{content: '6月';}
.event .event_block ul.month li.Jul:before{content: '7月';}
.event .event_block ul.month li.Aug:before{content: '8月';}
.event .event_block ul.month li.Sep:before{content: '9月';}
.event .event_block ul.month li.Oct:before{content: '10月';}
.event .event_block ul.month li.Nov:before{content: '11月';}
.event .event_block ul.month li.Dec:before{content: '12月';}
@media (max-width: 1600px) {
.event {padding: 5.06vw 0;background: #F3EFF9;}
.event .event_block {max-width: 1580px; padding: 3.79vw 1.26vw 0;}
.event .event_block ul.month li {padding: 1.26vw 0;}
.event .event_block ul.month li p{font-size: 1.51vw;min-height: 5.50vw;margin-left: 6.32vw;}
.event .event_block ul.month li {}
.event .event_block ul.month li:before{font-size: 2.15vw;}
}
@media screen and (max-width: 767px) {
.event {padding: 7.14vw 0;}
.event .event_block {max-width: 1580px;width: 90%;margin: auto; padding: 7.14vw 0 0;}
.event .event_block ul.month {width: 100%; margin-right: 0;border-top: none;}
.event .event_block ul.month:first-child {border-top: 1px solid #000;}
.event .event_block ul.month li p{font-size: 3.6vw;min-height: 14vw;margin-left: 20vw;display: flex;
    align-items: center;}
.event .event_block ul.month li:before{font-size: 5.4vw;}
}




.map {max-width: 1580px;padding: 80px 20px;margin: auto;}
.map p.block_text span {color: #3aa8b4;}
.map_pic {padding: 60px 0 0;}
.map_pic img {width: 100%;height: auto;}
area {cursor:pointer}
body {position: relative;}
.content{
margin: 0 auto;padding: 40px;}
.modal{
display: none;height: 100vh;position: fixed;top: 0;left: 0;width: 100%;z-index: 999;}
.modal__bg{
background: rgba(0,0,0,0.8);height: 100vh;position: absolute;width: 100%;}
.modal__content{
background: #fff;left: 50%;padding: 40px;position: absolute;top: 50%;transform: translate(-50%,-50%);width: 40%;}
.modal__content .modal_pic {margin: 0 0 40px;}
.modal__content .modal_pic img {width: 100%;height: auto;}
.modal__content dl {}
.modal__content dl dt {font-size: 30px;line-height: 1.6;font-weight: 700;text-align: center;}
.modal__content dl dd {font-size: 24px;line-height: 1.6;text-align: left;}

.pc .location_pic {width:100%;padding: 40px 0 0;}
.pc .location_pic img {width: 100%;height: auto}


@media (max-width: 1600px) {
.map {padding: 5.06vw 1.26vw;}
.map_pic {padding: 3.79vw 0 0;}
.content{margin: 0 auto;padding: 2.53vw;}
.modal__content{padding: 2.53vw;}
.modal__content .modal_pic {margin: 0 0 2.53vw;}
.modal__content dl dt {font-size: 1.89vw;}
.modal__content dl dd {font-size: 1.51vw;}

.pc .location_pic {padding: 3.79vw 0 0}


}
@media screen and (max-width: 767px) {
.map {padding: 7.14vw 1.26vw;}
.map_pic {padding: 7.14vw 0 0;}
}





@media screen and (max-width: 767px) {
.sph_location_block {padding: 7.14vw 0 0;width: 90%;margin: auto;}
ul.sph_location {border-top: 1px solid #000;}
ul.sph_location li {display:flex;flex-wrap:wrap;padding: 5% 0;border-bottom: 1px solid #000;}
ul.sph_location li dl {width:calc(100% - 40vw);text-align: left;}
ul.sph_location li dl dt {font-size: 3.8vw;line-height: 1.8;font-weight: 700; margin-right: 5vw;}
ul.sph_location li dl dd {font-size: 3vw;line-height: 1.8; margin-right: 5vw;}
ul.sph_location li .location_pic {width: 40vw;}
ul.sph_location li .location_pic img {width: 100%;height: auto}
}