@charset "utf-8";

/*
* File       : site-custom.css
* Author     : B-WORKER
*
 * SUMMARY:
 * 0) ROOT
 * 1) WRAP
 * 2) SITE CUSTOM
    - 사이트 전반적으로 함께 쓰이는 속성
	- 메인, 서브 함께 쓰이는 속성
*/

/* **************************************** *
 * font set
 * **************************************** */
body{font-size:var(--default); line-height:var(--lh-default); color:var(--b-default); font-weight:300; word-break:keep-all;}
body, input, textarea, button, select{font-family:'Google Sans Flex', "Pretendard", '맑은 고딕', '돋움', Dotum, '굴림', Gulim, Sans-serif;}
p, li{font-family: var(--lang-ko);}

@media (max-width:860px){
	body, p, li, a{font-family:-apple-system, BlinkMacSystemFont, Sans-serif; text-wrap:balance;}
}

@media (max-width:540px){
	body{letter-spacing:-0.1rem;}

	p{line-height:1.6;}
}

/* **************************************** *
 * global root
 * **************************************** */

 :root {
    /* 브랜드 */
	--c-primary: #0c2971;
	--c-secondary: #1952b9;
	--c-accent: #338cff;
	--c-primary-deep: #071331;

    /* title / body */
	--b-title:#171717;
	--b-default:#3e3f3f;
	--b-sub:#666666;
	--b-mute:#999999;

	/* 게시판 세팅용 */
	--b-01:var(--b-title);
	--border-01: #eee;

	--w: #fff;

	/* background-color */
	--bg-default: #171717;
	--bg-gray: #f7f7f7;
	--bg-light: #edf0f5;
	--bg-navy: #111624;
	--bg-soft: #efefef;

	/* border */
	--br-default: #ededed;
	--br-strong: #e1e1e1;

	 /* 폰트 사용 */
	--lang-en:'Google Sans Flex';
	--lang-ko:"Pretendard";

	/* 폰트사이즈 */
	--default:17rem;
	--lh-default:1.6;

	--font-210:210rem;
	--font-150:150rem;
	--font-103:103rem;
	--font-100:100rem;
	--font-72:72rem;
	--font-62:62rem;
	--font-55:55rem;
	--font-52:52rem;
	--font-42:42rem;
	--font-36:36rem;
	--font-32:32rem;
	--font-27:27rem;
	--font-24:24rem;
	--font-19:19rem;
	--font-18:18rem;
	--font-16:16rem;
	--font-15:15rem;
	--font-14:14rem;
	--font-13:13rem;
	--font-12:12rem;
	--font-10:10rem;

    /* 폰트 weight */
    --weight-100:100;
    --weight-200:200;
    --weight-300:300;
    --weight-400:400;
    --weight-500:500;
    --weight-600:600;
    --weight-700:700;
    --weight-800:800;
    --weight-900:900;

	/* 간격 */
    --space150:150rem;
    --space140:140rem;
    --space130:130rem;
    --space120:120rem;
    --space110:110rem;
    --space100:100rem;
    --space80:80rem;
    --space60:60rem;
    --space50:50rem;

	/* 투명도 블랙 */
    --op-b05:rgba(0,0,0,.05);
    --op-b10:rgba(0,0,0,.1);
    --op-b20:rgba(0,0,0,.2);
    --op-b30:rgba(0,0,0,.3);
    --op-b40:rgba(0,0,0,.4);
    --op-b50:rgba(0,0,0,.5);
    --op-b60:rgba(0,0,0,.6);
    --op-b70:rgba(0,0,0,.7);
    --op-b80:rgba(0,0,0,.8);
    --op-b90:rgba(0,0,0,.9);

	/* 투명도 타이틀색(#171717) */
    --op-t05:rgba(23,23,23,.05);
    --op-t10:rgba(23,23,23,.1);
    --op-t15:rgba(23,23,23,.15);
    --op-t20:rgba(23,23,23,.2);
    --op-t30:rgba(23,23,23,.3);
    --op-t40:rgba(23,23,23,.4);
    --op-t60:rgba(23,23,23,.6);
    --op-t70:rgba(23,23,23,.7);

	/* 투명도 프라이머리(#0c2971) */
    --op-p05:rgba(12,41,113,.05);
    --op-p10:rgba(12,41,113,.1);

	/* 투명도 화이트 */
    --op-w05:rgba(255,255,255,.05);
    --op-w10:rgba(255,255,255,.1);
    --op-w20:rgba(255,255,255,.2);
    --op-w30:rgba(255,255,255,.3);
    --op-w40:rgba(255,255,255,.4);
    --op-w50:rgba(255,255,255,.5);
    --op-w60:rgba(255,255,255,.6);
    --op-w70:rgba(255,255,255,.7);
    --op-w80:rgba(255,255,255,.8);
    --op-w90:rgba(255,255,255,.9);

	/* 트렌지션 */
	--trans-01:all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
	--trans-02:all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
	--trans-03:all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
	--trans-04:all 0.5s ease;
}

/* 폰트 시스템 */
[data-heading]{font-family:var(--lang-ko); color:var(--b-title);}
[data-heading="5xl"]{font-size:var(--font-72); line-height:1.35; font-weight:700;}
[data-heading="4xl+"]{font-size:var(--font-62); line-height:1.3; font-weight:700;}
[data-heading="4xl"]{font-size:var(--font-52); line-height:1.3; font-weight:700;}
[data-heading="3xl"]{font-size:var(--font-42); line-height:1.32; font-weight:700; letter-spacing:-0.02em;}
[data-heading="2xl"]{font-size:var(--font-36); line-height:1.3; font-weight:700; letter-spacing:-0.02em;}
[data-heading="xl+"]{font-size:var(--font-32); line-height:1.35; font-weight:700; letter-spacing:-0.02em;}
[data-heading="xl"]{font-size:var(--font-27); line-height:1.35; font-weight:700;}
[data-heading="lg"]{font-size:var(--font-24); line-height:1.45; font-weight:700;}
[data-heading="md"]{font-size:var(--font-19); line-height:1.45; font-weight:600;}

[data-heading-en], .sub-visual__title .title-eng{font-family:var(--lang-en); color:var(--b-title); letter-spacing:-0.02em;}
[data-heading-en="6xl"], .sub-visual__title .title-eng{font-size:var(--font-103); line-height:1.1; font-weight:700;}
[data-heading-en="display"]{font-size:var(--font-210); line-height:1.1; font-weight:700;}
[data-heading-en="5xl"]{font-size:var(--font-72); line-height:1.1; font-weight:700;}
[data-heading-en="4xl"]{font-size:var(--font-62); line-height:1.1; font-weight:700;}
[data-heading-en="3xl"]{font-size:var(--font-55); line-height:1.1; font-weight:700;}
[data-heading-en="2xl"]{font-size:var(--font-36); line-height:1.2; font-weight:600;}
[data-heading-en="2xl+"]{font-size:var(--font-42); line-height:1.1; font-weight:700;}

[data-body="sm"]{font-size:var(--font-16); line-height:1.35;}
[data-body="xsm"]{font-size:var(--font-15); line-height:1.35;}
[data-body="xxsm"]{font-size:var(--font-14); line-height:1.35;}

[data-body-en]{font-family:var(--lang-en);}
[data-body-en="default"]{font-size:var(--default); line-height:1.4; letter-spacing:-0.02em;}
[data-body-en="sm"]{font-size:var(--font-16); line-height:1.3; letter-spacing:-0.02em;}
[data-body-en="xsm"]{font-size:var(--font-14); line-height:1.4; letter-spacing:-0.02em;}
[data-body-en="xxsm"]{font-size:var(--font-12); line-height:1.35;}

[data-caption="ko"]{font-size:var(--font-13); line-height:1.35; font-weight:700;}
[data-caption="en"]{font-family:var(--lang-en); font-size:var(--font-10); line-height:1.3; font-weight:600;}

/* font-weight 시스템 */
.fw-100{font-weight:var(--weight-100);}
.fw-200{font-weight:var(--weight-200);}
.fw-300{font-weight:var(--weight-300);}
.fw-400{font-weight:var(--weight-400);}
.fw-500{font-weight:var(--weight-500);}
.fw-600{font-weight:var(--weight-600);}
.fw-700{font-weight:var(--weight-700);}
.fw-800{font-weight:var(--weight-800);}
.fw-900{font-weight:var(--weight-900);}

/* 컬러 시스템 */
.c-primary{color:var(--c-primary);}
.c-secondary{color:var(--c-secondary);}
.c-accent{color:var(--c-accent);}
.b-title{color:var(--b-title);}
.c-sub{color:var(--b-sub);}
.c-t30{color:var(--op-t30);}
.c-t05{color:var(--op-t05);}
.c-t40{color:var(--op-t40);}
.c-w{color:var(--w);}
.c-w30{color:var(--op-w30);}
.c-w40{color:var(--op-w40);}
.c-mute{color:var(--b-mute);}
.bg-primary{background-color:var(--c-primary);}
.bg-default{background-color:var(--bg-default);}
.bg-gray{background-color:var(--bg-gray);}
.bg-light{background-color:var(--bg-light);}
.bg-navy{background-color:var(--bg-navy);}
.bg-soft{background-color:var(--bg-soft);}

/* boarder 값 기본 셋 */
[data-radius]{overflow:hidden;}
[data-radius="5"]{border-radius:max(0.2604vw, 3rem);}
[data-radius="10"]{border-radius:max(0.5208vw, 5rem);}
[data-radius="20"]{border-radius:max(1.0417vw, 10rem);}
[data-radius="30"]{border-radius:max(1.5625vw, 15rem);}
[data-radius="40"]{border-radius:max(2.0833vw, 20rem);}
[data-radius="full"]{border-radius:999rem;}

[data-border]{border:1px solid;}
[data-border="default"]{border-color:var(--br-default);}
[data-border="strong"]{border-color:var(--br-strong);}

@media (max-width:1600px){
	:root{
	--font-210:176rem;
	--font-150:126rem;
    }
}

@media (max-width:1480px){
	:root{
	--font-210:163rem;
	--font-150:117rem;
	--font-103:93rem;
	--font-100:90rem;
	--font-72:66rem;
	--font-62:57rem;
	--font-55:50rem;
	--font-52:48rem;
	--font-42:39rem;
	--font-36:34rem;
	--font-32:30rem;
	--font-27:26rem;
	--font-24:23rem;
	--font-19:19rem;
	--font-18:18rem;
	--font-14:15rem;
	--font-13:15rem;
	--space150:122rem;
	--space140:114rem;
	--space130:106rem;
	--space120:98rem;
	--space110:89rem;
	--space100:81rem;
	--space80:65rem;
	--space60:49rem;
	--space50:41rem;
    }
}

@media all and (max-width:1200px){
	:root{
	--font-210:139rem;
	--font-150:100rem;
	--font-103:80rem;
	--font-100:78rem;
	--font-72:58rem;
	--font-62:50rem;
	--font-55:45rem;
	--font-52:43rem;
	--font-42:35rem;
	--font-36:31rem;
	--font-32:28rem;
	--font-27:25rem;
	--font-24:22rem;
	--font-19:18rem;
	--font-18:17rem;
	--space150:103rem;
	--space140:96rem;
	--space130:89rem;
	--space120:83rem;
	--space110:76rem;
	--space100:69rem;
	--space80:55rem;
	--space60:41rem;
	--space50:34rem;
    }
}

@media all and (max-width:1023px){
	.lang-menu{margin-right:24rem} /* 사장님 지시 2026-10-20: 모바일 다국어 버튼↔햄버거 간격 */
	:root{
	--font-210:113rem;
	--font-150:81rem;
	--font-103:68rem;
	--font-100:66rem;
	--font-72:50rem;
	--font-62:44rem;
	--font-55:40rem;
	--font-52:38rem;
	--font-42:32rem;
	--font-36:29rem;
	--font-32:26rem;
	--font-27:24rem;
	--font-24:21rem;
	--font-19:18rem;
	--font-18:17rem;
	--font-16:15rem;
	--font-10:12rem;
	--space150:88rem;
	--space140:82rem;
	--space130:76rem;
	--space120:70rem;
	--space110:64rem;
	--space100:58rem;
	--space80:47rem;
	--space60:35rem;
	--space50:29rem;
    }
}

@media (max-width:860px){
	:root{
	--lang-ko:-apple-system, BlinkMacSystemFont, Sans-serif;
	--default:16rem;
	--font-210:92rem;
	--font-150:66rem;
	--font-103:56rem;
	--font-100:54rem;
	--font-72:42rem;
	--font-62:38rem;
	--font-55:35rem;
	--font-52:33rem;
	--font-42:29rem;
	--font-36:26rem;
	--font-32:24rem;
	--font-27:23rem;
	--font-24:20rem;
	--font-19:17rem;
	--font-18:16rem;
	--font-12:14rem;
	--font-10:14rem;
	--space150:72rem;
	--space140:67rem;
	--space130:62rem;
	--space120:58rem;
	--space110:53rem;
	--space100:48rem;
	--space80:38rem;
	--space60:29rem;
	--space50:24rem;
    }
}

@media (min-width:541px) and (max-width:700px){
	:root{
	--default:19rem;
	--font-19:20rem;
	--font-18:19rem;
	--font-16:19rem;
	--font-15:19rem;
	--font-14:19rem;
	--font-13:19rem;
	}
}

@media (max-width: 540px){
	:root{
	--default:16rem;
	--font-210:100rem;
	--font-150:60rem;
	--font-103:40rem;
	--font-100:39rem;
	--font-72:32rem;
	--font-62:28rem;
	--font-55:27rem;
	--font-52:26rem;
	--font-42:24rem;
	--font-36:21rem;
	--font-32:21rem;
	--font-27:20rem;
	--font-24:19rem;
	--font-19:17rem;
	--font-18:16rem;
	--font-16:15rem;
	--font-15:14rem;
	--font-14:13rem;
	--font-13:13rem;
	--font-12:13rem;
	--font-10:13rem;
	--space150:70rem;
	--space140:60rem;
	--space130:56rem;
	--space120:52rem;
	--space110:48rem;
	--space100:44rem;
	--space80:36rem;
	--space60:28rem;
	--space50:24rem;
    }
}

@media (max-width:540px){
	#header{padding:12rem 0}
	#logo a{width:96.226rem; height:34rem}
	.lang-menu{margin-right:0}
	.gnb-full-btn-wrap{margin-left:20rem}
	.gnb-full-btn-wrap--fixed{width:max(44px, 40rem)}
	.site-map-inner{padding:72rem 20rem 40rem}
	.site-map-list{gap:22rem}
	.site-map-list .gnb-item{gap:2rem}
	.site-map-list .gnb-item + .gnb-item::before{top:-11rem}
	.site-map-list .gnb-item > a{min-height:40px}
	.site-map-list .sub-menu{column-gap:14rem}
	.site-map-list .sub-menu a{min-height:34px; font-size:var(--font-15)}

	.footer-inner{display:flex; flex-direction:column; align-items:stretch; gap:26rem; padding:30rem 0 26rem}
	.footer-left{display:contents}
	.footer-left > p{order:1}
	.footer-right{order:2}
	.footer-policy{order:3; gap:8rem 16rem}
	.footer-nav{gap:40rem; padding:22rem 0}
	.footer-contact{padding:22rem 0}
	.footer-gnb__menu, .footer-sns{gap:10rem}
	.btn-top-wrap{top:10rem}
	a.btn-top{width:48rem; height:48rem}
}

/* **************************************** *
 * wrapper
 * **************************************** */
*[class^="wrap"]{position:relative; margin:0 auto;}

.wrap{max-width:1400rem;}
.wrap-wide{max-width:1805rem;}

/* 빼지마세요 */
.wrap-narrow{max-width:1206rem;}

/* 게시글 전용 폭 */
.wrap-post{max-width:900rem;}

/* 사이트맵 열림 = 흰 로고 */
@media (max-width:1023px){
	#header:has(#site-map.active) #logo a{background-image:url(../img/layout/logo_w.svg) !important}
}

/* GNB 2차 메뉴 */
@media (min-width:1024px){
	#gnb .gnb-item .sub-menu{border-bottom:2px solid var(--c-primary)}
	#gnb .gnb-item .sub-menu > li > a{padding:6rem 24rem; font-size:var(--default); font-weight:var(--weight-500)}
}

/* 게시판 새글 N 배지 */
:is(#gnb, .gnb-mobile-menu, .site-map-list, #lnb) a[data-new="1"]::after{content:"N"; position:relative; top:-8rem; margin-left:2rem; font-family:var(--lang-en); font-size:10rem; font-weight:700; line-height:1; letter-spacing:0; color:var(--c-primary);}

@media all and (max-width:1919px){
	.wrap-wide{margin:0 50rem; max-width:none;}
}

@media all and (max-width:1480px){
	.wrap{margin:0 100rem; max-width:none;}
}

@media all and (max-width:1200px){
	.wrap{margin:0 80rem;}
}

@media all and (max-width:1023px){
	*[class^="wrap"]{margin:0 40rem; max-width:none; width:auto;}
}

@media all and (max-width:540px){
	*[class^="wrap"]{margin:0 20rem;}
	.swiper-pagination{gap:12rem;}
}

/* **************************************** *
 * swiper set
 *
 * 사이트 기본 슬라이드 스타일에 맞게 마음껏 수정하면 됩니다.
 * 특정 페이지에서만 다른 스타일 슬라이드를 사용한다면 부모 클레스 상쇄하여 사용
 * **************************************** */
.swiper-controls{display:flex; justify-content:center; align-items:center;}
.swiper-controls .wrap *{cursor:pointer;}
.swiper-controls > div{cursor:pointer;}
.swiper-controls *[class^="swiper-btn--"]{position:relative; width:30rem; height:30rem; cursor:pointer; display:flex; align-items:center; margin:0 25rem; font-size:16rem; font-weight:600;}
.swiper-controls *[class^="swiper-btn--"]::after{content:""; display:block; min-width:30rem; height:30rem; background:url(../img/common/arrow-basic.svg) no-repeat 50% 50%; background-size:8rem;}
.swiper-controls .swiper-btn--prev{flex-direction:row-reverse;}
.swiper-controls .swiper-btn--next::after{/* transform:rotate(-90deg); */}
.swiper-controls .swiper-btn--prev::after{transform:rotate(180deg);}
.swiper-controls .swiper-button-disabled{opacity:0.5;}

.swiper-container img{width:100%;}

.button-next.swiper-button-disabled, .button-prev.swiper-button-disabled{opacity:0.5;}

.swiper-pagination-bullet{width:10rem; height:10rem; background:#b7b7b7; border-radius:100%;}
.swiper-pagination{display:flex; gap:15rem;}
.swiper-pagination-bullet-active{opacity:1; background:var(--c-primary);}

/* 페이지네이션 비활성 */
.pagination__btn.is-disabled{opacity:.3; pointer-events:none;}

/* **************************************** *
 * site custom
 * **************************************** */

/* button common */
*.btn-basic{display:inline-flex; align-items:center; gap:30rem; position:relative; box-sizing:border-box; padding:18rem 20rem; background:var(--bg-gray); color:var(--b-default); border-radius:5rem; font-size:var(--font-15); font-weight:var(--weight-600); line-height:1.35; transition:var(--trans-01);}
*.btn-basic::after{content:""; flex:none; width:10rem; height:10rem; background:url(../img/common/btn-arrow.svg) no-repeat 50% 50% / contain; transform:scaleX(-1); transition:var(--trans-01);}
*.btn-basic--secondary{background:var(--c-secondary); color:var(--w);}
*.btn-basic--secondary::after, *.btn-basic--accent::after{background-image:url(../img/common/btn-arrow_w.svg);}
*.btn-basic--accent{background:var(--c-accent); color:var(--w);}
*.btn-basic--line{background:transparent; border:1px solid var(--br-strong); color:var(--b-sub);}
*.btn-basic--on-dark{color:var(--w);}
*.btn-basic--on-dark::after{background-image:url(../img/common/btn-arrow_w.svg);}
*.btn-basic--sm{gap:10rem; padding:8rem 10rem; border-radius:3rem; font-size:var(--font-13); font-weight:var(--weight-500);}
*.btn-basic--sm::after{width:8rem; height:8rem;}
*.btn-basic--noarrow::after{display:none;}
*.btn-basic--map{justify-content:center; min-width:140rem; border-color:var(--br-default); color:var(--b-default);}
.btn-basic__lb{display:flex; align-items:center; gap:4rem;}
*.btn-basic--map .btn-basic__lb{gap:5rem;}
.btn-basic__lb img{flex:none; width:15rem; height:auto;}

@media (hover: hover) and (pointer: fine){
	*.btn-basic:hover{background:var(--c-primary); color:var(--w);}
	*.btn-basic:hover::after{background-image:url(../img/common/btn-arrow_w.svg);}
	*.btn-basic--line:hover{border-color:var(--c-primary);}
	*.btn-basic--on-dark:hover{background:var(--w); border-color:var(--w); color:var(--b-title);}
	*.btn-basic--on-dark:hover::after{background-image:url(../img/common/btn-arrow.svg);}
}

@media all and (max-width:1023px){
	*.btn-basic{gap:24rem; padding:16rem 20rem;}
	*.btn-basic--sm{gap:10rem; padding:8rem 10rem;}
}

@media (min-width:541px) and (max-width:700px){
	*.btn-basic--sm{min-height:62rem;}
}

@media (max-width: 540px){
	*.btn-basic{gap:20rem; padding:14rem 16rem;}
	*.btn-basic--sm{gap:10rem; padding:8rem 10rem; min-height:44rem;}
}

/* video popup */
.video-popup{position:fixed; top:0; left:0; z-index:1100; display:flex; align-items:center; justify-content:center; width:100%; height:100%; background:var(--op-t70); backdrop-filter:blur(10rem); opacity:0; visibility:hidden; transition:opacity 0.4s ease, visibility 0.4s ease}
.video-popup.is-open{opacity:1; visibility:visible}
.video-popup__inner{position:relative; display:flex; flex-direction:column; align-items:center; gap:20rem; width:1000rem; filter:drop-shadow(8rem 12rem 7.5rem rgba(0,0,0,0.05))}
.video-popup__video{position:relative; width:100%; aspect-ratio:16 / 9; background:var(--bg-default)}
.video-popup__video iframe, .video-popup__video img{display:block; width:100%; height:100%; object-fit:cover}
.video-popup__close{position:absolute; top:0; left:100%; width:100rem; height:100rem; background:url(../img/main/btn-close.svg) no-repeat 50% 50% / contain; cursor:pointer}

@media (max-width:1200px){
	.video-popup__inner{width:80%}
	.video-popup__close{top:-80rem; left:auto; right:0; width:80rem; height:80rem}
}

@media (max-width:1023px){
	.video-popup__inner{gap:16rem}
	.video-popup{background:var(--op-b90); backdrop-filter:none}
}

@media (max-width:860px){
	.video-popup__inner{width:88%}
}

@media (max-width:540px){
	.video-popup__inner{gap:14rem}
	.video-popup__close{top:-60rem; width:60rem; height:60rem}
}

/* front edit */
.front-edit{position:fixed; left:50%; bottom:40rem; z-index:1000; display:flex; align-items:center; gap:10rem; padding:18rem 30rem; border-radius:40rem; box-shadow:0 10rem 30rem var(--op-b40); white-space:nowrap; transform:translateX(-50%); transition:var(--trans-01)}
.front-edit::after{content:""; flex:none; width:14rem; height:14rem; background:url(../img/common/ic-external_w.svg) no-repeat 50% 50% / contain}

@media (hover: hover) and (pointer: fine){
	.front-edit:hover{background:var(--c-primary-deep)}
}

@media (max-width:1023px){
	.front-edit{bottom:30rem; gap:8rem; padding:16rem 26rem}
}

@media (max-width:540px){
	.front-edit{bottom:20rem; gap:8rem; padding:14rem 22rem}
	.front-edit::after{width:12rem; height:12rem}
}

/* count num */
.main-bottom__num{display:inline-grid}
.main-bottom__num::before{content:attr(data-count-to); grid-area:1 / 1; visibility:hidden}
.main-bottom__num > span{grid-area:1 / 1; justify-self:end}

/* facility card */
.main-facility__list{display:flex; flex-direction:column; align-items:stretch; gap:42rem}
.main-facility__card{position:relative; display:flex; align-items:center; gap:60rem; padding:60rem}
.main-facility__info{position:relative; flex:1; min-width:0; min-height:181rem; display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between}
.main-facility__count{position:absolute; top:-38rem; left:0; white-space:nowrap}
.main-facility__tp{display:inline-block; opacity:0; transform:translateY(0.15em); transition:opacity 0.6s ease, transform 0.6s ease}
.main-facility__tp.is-on{opacity:1; transform:none}
.main-facility__photo{flex:none; width:438rem; aspect-ratio:438 / 380}
.main-facility__photo img{display:block; width:100%; height:100%; object-fit:cover}
.main-facility__body{flex:1; min-width:0; display:flex; flex-direction:column; align-items:flex-start; gap:30rem}
.main-facility__body--sm{gap:20rem}
.main-facility__txt{display:flex; flex-direction:column; align-items:flex-start; gap:12rem}

@media (min-width:1024px){
	.main-facility__item{--fs-top:130rem; position:sticky; top:calc(var(--fs-top) + var(--fs-i, 0) * 24rem)}
	.main-facility__item:nth-child(1){z-index:1}
	.main-facility__item:nth-child(2){--fs-i:1; z-index:2}
	.main-facility__item:nth-child(3){--fs-i:2; z-index:3}
	.main-facility__card{transform-origin:50% 0}
}

@media (max-width:1480px){
	.main-facility__list{gap:36rem}
	.main-facility__card{gap:48rem; padding:48rem}
	.main-facility__info{min-height:160rem}
	.main-facility__count{top:-34rem}
	.main-facility__photo{width:380rem}
	.main-facility__body{gap:26rem}
	.main-facility__body--sm{gap:18rem}
	.main-facility__txt{gap:10rem}
}

@media (min-width:1201px) and (max-width:1480px){
	.main-facility__item{--fs-top:120rem}
}

@media (max-width:1200px){
	.main-facility__list{gap:30rem}
	.main-facility__card{gap:40rem; padding:40rem}
	.main-facility__info{min-height:140rem}
	.main-facility__count{top:-30rem}
	.main-facility__photo{width:320rem}
	.main-facility__body{gap:22rem}
	.main-facility__body--sm{gap:16rem}
	.main-facility__txt{gap:8rem}
}

@media (min-width:1024px) and (max-width:1200px){
	.main-facility__item{--fs-top:110rem}
}

@media (max-width:1023px){
	.main-facility__list{gap:28rem}
	.main-facility__card{flex-direction:column; align-items:stretch; gap:28rem; padding:32rem}
	.main-facility__info{min-height:0; gap:14rem; justify-content:flex-start}
	.main-facility__count{position:static}
	.main-facility__photo{width:100%; aspect-ratio:3 / 2}
	.main-facility__body{gap:22rem}
}

@media (max-width:860px){
	.main-facility__list{gap:24rem}
	.main-facility__card{gap:24rem; padding:28rem}
	.main-facility__info{gap:12rem}
	.main-facility__body{gap:20rem}
	.main-facility__body--sm{gap:15rem}
}

@media (max-width:540px){
	.main-facility__list{gap:26rem}
	.main-facility__card{gap:24rem; padding:24rem}
	.main-facility__info{gap:10rem}
	.main-facility__photo{aspect-ratio:287 / 249}
	.main-facility__body{gap:20rem}
	.main-facility__body--sm{gap:20rem}
	.main-facility__txt{gap:10rem}
}

@media (min-width:1024px) and (max-width:1200px), (max-width:540px){
	.main-facility__txt p br{display:none}
}
