@charset "utf-8";
html {background:#f4f4f6;}
.controls a { position:relative; display:block; float:left; text-indent:-99999px; }
.controls a::before { content:''; position:absolute; left:50%; top:50%; width:25rem; height:25rem; background:url('/design/facility/img/main/controls.png') no-repeat 0 0/300% auto; transform:var(--center); }
.controls a.play::before { background-position:100% 0;}
.controls a.stop::before { background-position:50% 0;}
.controls a.next { transform:rotate(180deg);}
.controls a.next::before {margin-top: -1px;}
.controls a.play {display:none;}

.visual { position:relative; margin:0 60rem; border-radius:20rem; overflow:hidden; background:#000; }
.visual > .wrap { position:absolute; top:50%; left:50%; transform:var(--center); z-index:3; margin-top:120rem; }
.visual > .wrap::after { content:''; position:absolute; left:-250rem; bottom:25rem; width:100%; height:1px; background:#fff; opacity:0.4; }
.visual .controls_slide { float:left; width:auto; }
.visual .controls_slide a { width:auto; font-size:21rem; color:#fff; font-style:italic; margin-right:50rem; padding-bottom:15rem; }
.visual .controls_slide a.swiper-slide-thumb-active {font-weight:700; border-bottom:3px solid #fff; }
.visual .controls_slide a span {padding-right:10rem;}
.visual .controls { float:right; margin-top:25rem; }
.visual .controls a { width:55rem; height:55rem; margin-left:10rem; border-radius:50%; border:1px solid rgba(255,255,255,0.5); text-indent:-99999px;}
.visual_slide { height:540rem; }
.visual_slide dl { position:absolute !important; left:50%; top:50%; transform:var(--center); z-index:2; color:#fff; padding-bottom:200rem; }
.visual_slide dt {font-size:49rem; font-weight:700; }
.visual_slide dd {font-size:21rem;  }
.visual_slide img { position:relative; width:100%; height:100%; object-fit:cover; opacity:0.6; z-index:1; }
@media all and (max-width:1620px){
    .visual { margin:0 auto; max-width:1500px; width:96%; }
}
@media all and (max-width:1023px){
    .visual_slide { height:450rem; }
    .visual_slide dt {font-size:40rem; text-align:center; }
    .visual_slide dd {font-size:19rem; text-align:center; }
}
@media all and (max-width:768px){
    .visual > .wrap {text-align:center;}
    .visual > .wrap::after {display:none;}
    .visual .controls {float:none; display:inline-block;}
    .visual_slide dl { padding-bottom:100rem; }
    .visual_slide dt {font-size:30rem; line-height:1.3; margin-bottom:20rem; }
    .visual_slide dd {font-size:17rem; }
    .controls_slide {display:none;}
}
@media all and (max-width:480px){
    .visual > .wrap {margin-top:75rem; }
    .visual_slide { height:300rem; }
}


.location {position:relative; margin:50rem auto; }
.location::before {content:''; position:absolute; left:calc(50% + 80rem); bottom:20rem; width:125rem; height:145rem; background:url('/design/facility/img/main/loca_icon.png') no-repeat center/cover; z-index:10;}
.location::after {content:''; display:table; clear:both; }
.location p {display:inline;}
.location h2 { float:left; font-size:27rem;}
.location .tel { position:relative; float:right; background:#fff; border-radius:20rem; padding:12rem 30rem 12rem 60rem; margin-right:130rem; }
.location .tel::before {content:''; position:absolute; left:-20rem; top:0; width:80rem; height:80rem; background:url('/design/facility/img/main/bell.png') no-repeat center/cover; }
.location .tel strong {margin-right:10rem;}
#all_open { position:absolute; right:0; top:0; background:url('/design/facility/img/main/all_icon.png') no-repeat right center; padding:12rem 40rem 12rem 0; }
.location_slide  {padding:60rem 0 30rem; }
.location_slide div { position:relative; background:var(--blue); color:#fff; padding:30rem 40rem; min-height:250rem; border-radius:20rem; box-shadow:20rem 20rem 20rem rgba(0,0,0,0.1); }
.location_slide div:nth-of-type(2n-1) {background:var(--blue);}
.location_slide div:nth-of-type(3n-1) {background:#28146f;}
.location_slide div:nth-of-type(4n-1) {background:#104447;}
.location_slide div:nth-of-type(5n-1) {background:#691917;}
.location_slide div:nth-of-type(6n-1) {background:#a9244c;}
.location_slide dt { font-size:25rem; margin-bottom:20rem; font-weight:700; }
.location_slide dd { position:relative; padding:5rem 80rem; line-height:1.4; }
.location_slide dd strong {position:absolute; left:0; top:5rem; }
.location_slide a.more { position:absolute; right:40rem; top:40rem; background:url('/design/facility/img/main/more_icon.png') no-repeat right center; padding-right:20rem; color:#fff; }
.location .controls {float:right;}
.location .controls a { width:60rem; height:40rem; }
.location .controls a::before { background-position:0 100%; opacity:0.5; }
.location .controls a.swiper-button-disabled::before { opacity:0.2; }
.location .controls a.next::after {content:''; position:absolute; right:0; top:50%; width:1px; height:12rem; background:#aaa; transform:var(--hcenter); }
@media all and (min-width:1301px){
    .location_slide dd:first-of-type { padding:5rem 0 5rem 80rem;}
}
@media all and (max-width:1300px){
    .location::before { display:none; }
    .location_slide dd { padding:5rem 0 5rem 80rem; }
}
@media all and (max-width:1023px){
    .location p {display:block; line-height:1.2; }
    /*.location h2 {padding-bottom:30rem; }
    .location .tel { clear:both; float:none; width:450rem; margin:0 auto; text-align:center; }*/
}
@media all and (max-width:768px){
    .location h2 {padding-bottom:30rem; }
    .location .tel { clear:both; float:none; max-width:450rem; width:90%; margin:0 auto; text-align:center; }
}

#all_Close {display:none;}
.all_view { display:block !important; position:fixed; left:0; top:0; width:calc(100% - 200rem); height:calc(100% - 230rem); padding:130rem 100rem 100rem; transform:none !important; transition-duration:unset !important; overflow-y:scroll; z-index:30; }
.all_view::before {content:''; position:fixed; left:0; top:0; width:100%; height:100%; background:rgba(255,255,255,.5); backdrop-filter:blur(10px); }
.all_view.location_slide div { float:left; width:calc((100% - 100rem)/3) !important; margin:10rem 50rem 10rem 0 !important; transform:none !important; backface-visibility:unset !important; height:auto;}
.all_view.location_slide div:nth-of-type(3n) {margin-right:0 !important;}
.all_view.location_slide dd {padding:5rem 0 5rem 80rem !important;}
.all_view #all_Close { display:block; position:absolute; right:100rem; top:50rem; width:50rem !important; height:50rem; margin-right:0 !important; background:#333; border-radius:50%; text-indent:-999990px; }
.all_view #all_Close::before,
.all_view #all_Close::after {content:''; position:absolute; left:50%; top:30%; width:2px; height:20rem; background:#fff; transform:rotate(45deg);}
.all_view #all_Close::after {transform:rotate(-45deg);}
@media all and (max-width:1500px){
    .all_view {padding:80rem 50rem 50rem; width:calc(100% - 100rem); height:calc(100% - 130rem);}
    .all_view.location_slide div { width:calc((100% - 40rem)/2) !important;  margin:10rem 40rem 10rem 0 !important; }
    .all_view.location_slide div:nth-of-type(3n) {margin-right:40rem !important;}
    .all_view.location_slide div:nth-of-type(2n) {margin-right:0 !important;}
    .all_view #all_Close { top:30rem; right:50rem; }
}
@media all and (max-width:768px){
    .all_view.location_slide div { width:100% !important;  margin:10rem 40rem 10rem 0 !important; }
    .all_view.location_slide div:nth-of-type(3n) {margin-right:0 !important;}
}

.notice { position:relative; background:#f0f1ff; border-radius:40rem; overflow:hidden; box-shadow:20rem 20rem 20rem rgba(0,0,0,0.1); }
.notice h2 {float:left; font-size:21rem; padding:0 50rem; line-height:80rem; }
.notice a:not(.more) { display:block; float:left; width:calc(100% - 460rem); margin-top:25rem; }
.notice a:not(.more) dl { width:100%; }
.notice a:not(.more) * { float:left; }
.notice a.more { position:absolute; right:0; top:0; height:100%; padding:0 50rem; line-height:80rem; font-size:19rem; text-align:center; background:#d8daf1; font-weight:600; }
.notice dt, .notice dd:not(.date) { width:calc((100% - 200rem)/2); text-overflow:ellipsis; white-space:nowrap; overflow:hidden;}
.notice dt { font-weight:600; }
.notice dd { margin-left:50rem; color:var(--g_txt);}
.notice dd.date { width:100rem; }
@media all and (max-width:1023px){
    .notice a:not(.more) {margin-top:10rem; width:calc(100% - 300rem);}
    .notice dt, .notice dd:not(.date) { width:calc(100% - 150rem); margin-left:0; }
    .notice dd.date { float:right; }
    .notice a.more { width:80rem; text-indent:-99999px; padding:0; }
    .notice a.more::after {content:'+'; position:absolute; left:50%; top:50%; transform:var(--center); font-size:35rem; text-indent:0; }
}
@media all and (max-width:768px){
    .notice h2 { display:none; }
    .notice a:not(.more) { width:calc(100% - 80rem); margin-top:0; padding:20rem 30rem; }
    .notice dt, .notice dd {width:100% !important;}
    .notice dd:not(.date) {display:none; }
}

.quick { background:var(--blue); margin-top:-40rem; overflow:hidden; padding:80rem 0 40rem; }
.quick a { position:relative; display:block; float:left; width:calc(100% / 8); color:#fff; text-align:center; padding-top:80rem; line-height:1.3; }
.quick a::before {content:''; position:absolute; left:50%; top:0; width:60rem; height:60rem; background:url('/design/facility/img/main/quick_icon.png') no-repeat 0 0/400% auto; transform:var(--wcenter); }
.quick a.icon2::before { background-position:33.33% 0; }
.quick a.icon3::before { background-position:66.66% 0; }
.quick a.icon4::before { background-position:100% 0; }
.quick a.icon5::before { background-position:0 100%; }
.quick a.icon6::before { background-position:33.33% 100%; }
.quick a.icon7::before { background-position:66.66% 100%; }
.quick a.icon8::before { background-position:100% 100%; }
@media all and (max-width:1023px){
    .quick { padding:60rem 0 30rem; }
    .quick a {width:25%; margin:20rem 0; padding-top:70rem; }
    .quick a:nth-of-type(4n+1) { clear:both; }
}
@media all and (max-width:480px){
    .quick a {padding:50rem 10rem 0;}
    .quick a::before {width:40rem; height:40rem; }
}

.bg_white {background:#fff; padding:60rem 0; overflow:hidden; }
.bg_white .wrap {display:flex; justify-content:space-between;}

.qna {float:left; width:calc(100% - 520rem); border:2px solid #ededed; border-radius:20rem; padding:40rem;}
.qna dl {float:left; width:40%;}
.qna dt { font-size:49rem; color:var(--blue); font-weight:700; background:url('/design/facility/img/main/qna_icon.png') no-repeat 130rem center; line-height:1.2; margin-bottom:20rem; }
.qna dt span { display:block; font-size:27rem; color:#343434; }
.qna dd {color:var(--g_txt);}
.qna > div {float:right; width:60%; }
.qna > div a { position:relative; display:block; border-bottom:1px solid #ededed; padding:12rem 20rem 12rem 40rem; overflow:hidden; }
.qna > div a:last-of-type {border-bottom:0; }
.qna > div a::before {content:''; position:absolute; left:20rem; top:23rem; width:2px; height:2px; background:#323232; }
.qna > div a span { display:block; float:left; }
.qna > div a span:not(.date) { width:calc(100% - 150rem); text-overflow:ellipsis; white-space:nowrap; overflow:hidden; }
.qna > div a span.date {text-align:right; width:150rem; color:var(--g_txt); }
@media (max-width:1400px) and (min-width:1024px), all and (max-width:768px){
    .qna { padding:24rem 30rem; }
    .qna dl {width:100%;  }
    .qna dd {display:none;}
    .qna dt {background-position:right top; background-size:auto 100%; }
    .qna dt span {display:inline; }
    .qna > div {width:100%; }
    .qna > div a:nth-of-type(4) {border-bottom:0;}
    .qna > div a:last-of-type {display:none;}
}
@media all and (max-width:1023px){
    .bg_white .wrap {display:block;}
    .qna {width:100%;}
}

.popup { position:relative; float:right; width:460rem; overflow:hidden;  }
.popup .controls { position:absolute; right:20rem; bottom:20rem; background:rgba(0,0,0,0.6); border-radius:20rem; z-index:2; padding:5rem 10rem; }
.popup .controls a { width:25rem; height:25rem;}
.popup_slide a { border-radius:20rem; overflow:hidden;}
.popup_slide a img {width:100%;}
@media all and (max-width:1023px){
    .popup {width:100%; margin-top:50rem; }
}
