.scroll-box{display: flex;flex-direction: column; align-items: center;gap : 8px; position : absolute;z-index: 1; left : 87px; bottom : 68px; transition : opacity 1s;}
.scroll-box.hide{opacity: 0;}

.scroll-progress{display: flex;justify-content: center; width : 1px; height : 91px; background: #fff;position : relative;}
.scroll-progress::after{position : absolute;content: '';width : 10px; height : 10px; border-radius: 50%; background: #fff;animation : scroll-progress 1.5s infinite ease-in-out}
@keyframes scroll-progress {
    0%{top : 0}
    100%{top : calc(100% - 10px);}
}
.scroll-box > span{writing-mode: vertical-lr;font-family: futura-pt;color : #fff; font-size: 14px;}


.open-rotate{display: flex;flex-direction: column;align-items: center;justify-content: center; position : fixed; width : 129px; height : 129px; border-radius: 50%; right : 9px; bottom : 50px; font-family: pretendard; font-weight: 700; font-size: 20px; letter-spacing: -0.033em;z-index: 1;transition : color .5s, background .5s;}
.dark.open-rotate{color : #fff; background: #0F4794;}

.open-rotate::after{position : absolute; content: '';width : 129px; height : 129px; background: url(../../assets/images/main/visual-rotate-text-dark.png)no-repeat center / contain; animation : rotate-text 6s infinite linear; transition : background .5s;}
.dark.open-rotate::after{background: url(/assets/images/main/visual-rotate-text.png)no-repeat center / contain;}
@keyframes rotate-text {
    0%{transform: rotate(0);}
    100%{transform: rotate(360deg);}
}

.open-rotate p{color : #000;transition : color .5s, background .5s;}
.dark.open-rotate span{color : #fff;}
.open-rotate b{font-size: 22px;}


.visual-slide{width : 100%;height : 100%;}

.visual-bg{position : absolute;right : 0;top : 0; width : 100%;height : 100%; transition : width 1.5s ease-in-out;}
.visual-bg > img,
.visual-bg > video{width : 100%;height : 100%; object-fit: cover; object-position: center; transform: scale(1); transition : transform 3s;}
.on .visual-bg > img,
.on .visual-bg > video{transform: scale(1);}

.visual-inner{display: flex;align-items: center; justify-content: center; position : absolute;z-index: 10; padding-bottom: 250px; height : 100%; width : 100%;max-width: 1750px;left : 50%; transform: translateX(-50%);top : 0; transition : opacity 0.7s; pointer-events: none;}

.visual-tit{display: flex; justify-content: center; align-items: center; margin-top: 200px; width: 100%; font-family: PT;color : #fff; letter-spacing: -0.04em;gap : 10px; text-shadow: 0 0 20px rgba(0,0,0,0.3);}

.visual-tit-01{/*font-size: 29px;*/position : absolute; margin-top: -100px; margin-left: -800px; font-size : 36px; font-weight: 300; transform: translateX(-100px);opacity: 0; transition : transform 1s 1s, opacity 1s 1s;}
.visual-tit-01 b{font-weight: 700;}

.on .visual-tit-01{transform: translateX(0); opacity: 1;}

.visual-tit-02{/* font-size: 64px; */ font-family: 'Noto Serif KR', serif; font-size : 29px; font-weight: 300; line-height: 1em; letter-spacing: 0.5em; opacity: 0; transition : opacity 1s, letter-spacing 1.5s;}
.on .visual-tit-02{letter-spacing: -0.04em; opacity: 1; transition : letter-spacing 2s 1s, opacity 1s;}
.visual-tit-02 span{font-weight: 700;}
.visual-tit-02 b{font-weight: 700; font-size: 92px;}

.visual-line{width : 10%;height : 2px; background: #555; opacity: 0.4; clip-path: inset(0 100% 0 0);}
.visual-tit-02-01{font-size: 29px; font-family: 'Noto Serif KR', serif; font-weight: 400; color : #DB5012; }
.visual-tit-02-01 .char{opacity: 0; transform: translateY(-50px);}


.visual-tit-03{margin-left: auto;font-size: 29px; font-weight: 300;margin-top: 10px;transform: translateX(100px);opacity: 0; transition : transform 1s 1s, opacity 1s 1s;}
.on .visual-tit-03{transform: translateX(0); opacity: 1;}

.visual-tit-03 b{font-weight: 700;}

.visual-logo{display: flex;flex-direction: column;align-items: end; position :absolute; right : 0;gap : 32px; bottom : 55px; color : #fff; font-family: PT; font-size: 18px; letter-spacing: -0.04em; font-weight: 300;}
.visual-logo b{font-weight: 700;}

.visual-logo > img{transform: scale(0); transition : 1s;}
.on .visual-logo > img{transform: scale(1);}

.visual-logo .char{opacity: 0;}

.visual-tit-img{opacity : 0; transform : translateX(100px)}
/**********************************
********** TYPE 2 VISUAL **********
**********************************/
.main-section-overview {
	overflow: hidden;
}

.type1 .visual-bg{width : 50%;}
.type1 .visual-inner{opacity: 0;}
.type1 .visual-con-box{}
.type1 .visual-con-bg{transform: translateY(0);}
.type1 .visual-con-01 > p > span{background-size : 100% 100%;}

.visual-con-box{width : 50%; height : 100%; position : absolute; background-color: rgba(0, 0, 0, 0.7); z-index: 1;left : 0; top : 0;clip-path: inset(0 100% 0 0); transition : clip-path 1s; }
.main-section-overview.active .visual-con-box {
	clip-path: inset(0 0 0 0); transition : clip-path 1s 1.5s
	opacity : 1;
}

.overview-bg {position : absolute; width: 100%; height: 100%; background : url(../../assets/images/main/main-section-overview-bg.jpg) no-repeat; object-fit: cover;object-position: center; transform: scale(1.2);transition : transform 2s;}
.active .overview-bg {transform: scale(1);transition : transform 3s;}


.visual-con-box > div{position : absolute;}

.visual-con-01{padding : 250px 85px 108px;}

.visual-con-bg{display: flex;flex-direction: column; position : absolute; left : 0;top : 0;width : 100%;height : 100%;position : relative; transform: translateY(100%); transition : transform 1.5s ease-in-out;}
.visual-con-bg > div{display: flex;flex-direction: column;justify-content: space-between; align-items: start;width : 100%;height : 100%;padding : 250px 85px 108px; flex-shrink: 0;transition : transform 1.5s ease-in-out;}

.visual-con-bg-02{transform: translateY(100%);}

.visual-con-bg-img-02{margin-left: auto;}

.visual-con-01.on > p > b{background-size : 100% 100%;}

/**********************************
********** TYPE 3 VISUAL **********
**********************************/

.type2 .visual-bg{width : 50%;}
.type2 .visual-inner{opacity: 0;}
.type2 .visual-con-box{transform: translateX(0);}
.type2 .visual-con-bg{transform: translateY(0);}
.type2 .visual-con-bg > div{transform: translateY(-100%);}
.type2 .visual-con-01 > p > span{background-size : 100% 100%;}
/* .type2 .visual-con-01 > p > b{background-size : 100% 100%;} */


.visual-con-01{display: flex;justify-content: center; align-items: center;width : 100%;height : 100%;padding : 100px 85px 100px; transition : transform 1.5s ease-in-out; color : #fff;font-size: 18px; font-family: PT; letter-spacing: -0.04em; font-weight: 300;}
.visual-con-01 b{font-weight: 700;}

.visual-con-01 > p{}

.visual-con-01 > p > span,
.visual-con-01 > p > b{color : rgba(255,255,255,0.5);  background : url(/assets/images/main/white.jpg)no-repeat; background-size: 0% 100%; -webkit-background-clip: text; background-clip: text; transition : background-size 1s;}

/**********************************
********** TYPE 4 VISUAL **********
**********************************/

.type3 .visual-bg{width : 50%;}
.type3 .visual-inner{opacity: 0;}
.type3 .visual-con-box{transform: translateX(0);}
.type3 .visual-con-bg{transform: translateY(0);}
.type3 .visual-con-bg > div{transform: translateY(-100%);}
.type3 .visual-con-01{transform: translateY(-100%);}
.type3 .visual-con-01 > p > span{background-size : 100% 100%;}
/* .type3 .visual-con-01 > p > b{background-size : 100% 100%;} */
.type3 .visual-con-bg{transform: translateY(-100%);}
.type3 .overview{transform: translateY(0);}
.type3 .overview-tit-box{transform: translateX(0);opacity: 1;}

.type3 .overview-line{clip-path: inset(0); transition-delay : 1s;}
.type3 .overview-list-tit .char,
.type3 .overview-list-desc .char{transform: translateY(0); transition-delay : 1s;}



.overview{display: flex;flex-direction: column; justify-content: space-between; align-items: start;width : 100%;height : 100%;padding : 175px 107px 70px 85px; transition : transform 1.5s ease-in-out; color : #fff;font-size: 18px; font-family: PT; letter-spacing: -0.04em; font-weight: 300; transform: translateY(100%);}

.overview-tit-box{transform: translateX(-100px);opacity: 0; transition : 1.5s ease-in-out}
.overview-tit{font-family: Athena; font-size: 70px;}

.overview-desc{font-size: 18px; font-family: PT; letter-spacing: -0.04em; font-weight: 400;}
.overview-desc b{font-weight: 700;}

.overview-list{display: flex;flex-direction: column;gap : 73px; margin-left: auto; font-size: PT; letter-spacing: -0.04em;}

.overview-list > li{display: flex; flex-direction: column;gap : 23px;}
.overview-list-tit{font-size: 22px; color : #fff;}

.overview-list-tit .line{overflow: hidden;}
.overview-list-tit .char{transform: translateY(100%); transition : transform 1s;}

.overview-line{width : 303px; height : 1px; background: rgba(255,255,255,0.3); clip-path: inset(0 100% 0 0); transition : clip-path 1s;}
.overview-list-desc{font-size: 16px; color : #ACACAC}

.overview-list-desc .line{overflow: hidden;}
.overview-list-desc .char{transform: translateY(-100%); transition : transform 1s;}

/******************************/
.main-section-premium{overflow : hidden;}
.premium-bg{position :absolute; left : 0;top : 0; z-index: -1;}
.premium-bg-img{width : 100%;height : 100%; object-fit: cover; object-position: center;}
.premium-slide{display: flex;align-items: center; justify-content: center; width : 100%;height : 100%; position : relative;}

.premium-inner{position : absolute; width : 100%; max-width: 1600px; height : 100%;padding : 182px 0 122px;}

.premium-sub-tit{font-size: 20px; font-family: PT; letter-spacing: -0.03em; margin-bottom: 10px; font-weight: 500; transform: translateY(-100px); opacity: 0; transition : transform 1s .4s, opacity 1s .4s}
.active .premium-sub-tit{transform: translateY(0); opacity: 1;}
.premium-sub-tit .color{color : #DB5012}

.premium-tit{font-size: 24px; font-family: futura-pt; font-weight: 500; letter-spacing: 0.5em;}

.premium-tit .char{opacity: 0;}

.active .premium-tit .char{opacity: 1;}

.premium-con{display: flex;flex-direction: column;align-items: start; position : absolute;}
.premium-con-01,
.premium-con-04{right : 0; bottom : 496px}

.premium-con-02,
.premium-con-05{left : 0; bottom : 122px}

.premium-con-03,
.premium-con-06{right : 0; bottom : 122px;}

.premium-con.right{text-align: right; align-items: end;}

.premium-con-tit-eng{font-size: 17px; font-family: futura-pt; font-weight: 500; margin-bottom: 15px; letter-spacing: 0.25em; transform: translateX(-100px); opacity: 0; transition : transform 1s, opacity 1s;}
.right .premium-con-tit-eng{transform: translateX(100px);}

.premium-con-tit-kor{ font-family: PT; font-size: 20px; letter-spacing: -0.03em; font-weight: 500; margin-bottom: 19px;transform: translateX(-100px); opacity: 0; transition : transform 1s, opacity 1s; }
.right .premium-con-tit-kor{ transform: translateX(100px);}

.premium-con-desc{font-size: 16px; font-family: PT; letter-spacing: -0.03em; color : #727272; font-weight: 400; line-height: 1.5em; transform: translateX(-100px); opacity: 0;  transition : transform 1s, opacity 1s;}
.right .premium-con-desc{ transform: translateX(100px);}

.premium-con-desc b{color : #DB5012}

.active .type1 .premium-con-01 .premium-con-tit-kor,
.active .type1 .premium-con-01 .premium-con-tit-eng,
.active .type1 .premium-con-01 .premium-con-desc,
.active .type1 .premium-con-02 .premium-con-tit-kor,
.active .type1 .premium-con-02 .premium-con-tit-eng,
.active .type1 .premium-con-02 .premium-con-desc,
.active .type1 .premium-con-03 .premium-con-tit-kor,
.active .type1 .premium-con-03 .premium-con-tit-eng,
.active .type1 .premium-con-03 .premium-con-desc{opacity: 1; transform: translateX(0);}

.active .type2 .premium-con-04 .premium-con-tit-kor,
.active .type2 .premium-con-04 .premium-con-tit-eng,
.active .type2 .premium-con-04 .premium-con-desc,
.active .type2 .premium-con-05 .premium-con-tit-kor,
.active .type2 .premium-con-05 .premium-con-tit-eng,
.active .type2 .premium-con-05 .premium-con-desc,
.active .type2 .premium-con-06 .premium-con-tit-kor,
.active .type2 .premium-con-06 .premium-con-tit-eng,
.active .type2 .premium-con-06 .premium-con-desc{opacity: 1; transform: translateX(0);}


.type1 .premium-con-tit-kor,
.type2 .premium-con-tit-kor{transition-delay: 0.4s;}

.type1 .premium-con-tit-eng,
.type2 .premium-con-tit-eng{transition-delay: 0.5s;}

.type1 .premium-con-desc,
.type2 .premium-con-desc{transition-delay: 0.6s;}

.premium-img-box{display: flex;align-items: center; justify-content: center; gap : 9px; position : absolute; left : 50%;top : 50%;transform: translateX(-50%) translateY(-50%);}
.premium-img-box::after{position: absolute; content: ''; width: 1035px;height : 583px; background: url(/assets/images/main/premium-img-bg.png)no-repeat center / contain;z-index: 100; transform: translateX(-16px) translateY(-30px) scale(1.2);opacity: 0; transition : transform 2s, opacity 2s;}
.active .premium-img-box::after{transform: translateX(-16px) translateY(-30px) scale(1);opacity: 1;}

.premium-img{position :relative;overflow: hidden; opacity: 0; transition : opacity 1s, transform 1s}

.premium-img-01{transform: translateX(-100px) translateY(-100px);}
.premium-img-02{transform: translateX(100px) translateY(100px);}
.premium-img-03{transform: translateY(100px);}

.active .premium-img{transform: translateX(0) translateY(0); opacity: 1; transition-delay: 1s;}

.premium-img > img{position: absolute; left : 0;top : 0;width : 100%;height : 100%;top : 100%; transition : transform 1s;}

.type2 .premium-img > img{transform: translateY(-100%);}
.premium-img > img:first-child{position : static;}

.premium-img-left{display: flex;flex-direction: column; align-items: end; gap : 9px;}

.premium-img-left-line{width : 378px; background: #000;height : 1px; clip-path: inset(0 0 0 100%); transition : clip-path 1s .4s;}
.active .premium-img-left-line{clip-path: inset(0);}

.premium-img-left-bottom{display: flex;align-items: start; gap : 9px}
.premium-img-left-rect{width : 49px;height : 207px; background: #DB5012; clip-path: inset(100% 0 0); transition : clip-path 1s .4s}
.active .premium-img-left-rect{clip-path: inset(0);}


.premium-img-right{display: flex;flex-direction: column; align-items: start; gap : 9px}
.premium-img-right-line{width : 345px; background: #000;height : 1px; clip-path: inset(0 100% 00 0); transition : clip-path 1s .4s;}
.active .premium-img-right-line{clip-path: inset(0);}

.premium-slide .swiper-slide{display: flex;justify-content: center;}
.premium-obj{position : absolute; transition : transform 1s .4s, opacity 1s .4s;}

.premium-obj-01{bottom : 0; transform: translateX(-470px) translateY(100%);}
.active .swiper-slide-active .premium-obj-01{transform: translateX(-470px) translateY(0);}

.premium-obj-02{bottom : 310px; transform: translateX(700px); opacity: 0;}
.active .swiper-slide-active .premium-obj-02{opacity: 1;}


/*********************************/

.main-section-envi{background: #F9FAFA;}
.envi-inner{display: flex;align-items: end; width : 100%;height : 100%;}

.envi-left{position :relative;padding-bottom: 20px; width : 1393px; width : 67vw; height : 42.7604vw; transform: translateX(-30%); opacity: 0; transition : transform 1s .4s, opacity 1s .4s;}
.active .envi-left{opacity: 1; transform: translateX(0);transition : transform 1.4s .4s, opacity 1.4s .4s;}
.envi-bg{width : 100%; height : 100%; max-width: 100%;object-fit: contain;}
.envi-btn{position : absolute; z-index: 1;bottom : 28.0146%; left : 34.7452%; width : 5.8866%;}
.envi-btn > img{width : 100%;}

.envi-right{position : absolute;right : 0; padding-right: 84px; padding-bottom: 46px;}

.envi-desc{font-size: 18px; font-family: PT; font-weight: 500; letter-spacing: -0.03em; margin-bottom: 13px;}

.envi-tit{font-size: 37px; font-family: PT; font-weight: 300; letter-spacing: -0.03em;}
.envi-tit b{font-weight: 700; color : #DB5012}

.envi-tit-box{margin-bottom: 37px; transform: translateX(100px);opacity: 0; transition : transform 1s .4s, opacity 1s .4s}

.active .envi-tit-box{transform: translateX(0); opacity: 1;}

.envi-list{display: grid; grid-template-columns: repeat(2, 1fr); margin-bottom: 50px;}
.envi-list > li{display: flex; flex-direction: column; align-items: center; justify-content: center;  width : 260px; height : 250px; text-align: center; position : relative;}

.envi-list > li::after,
.envi-list > li::before{transition : clip-path 1s .4s;}
.envi-list > li:nth-child(1)::after{position: absolute;content : ''; width : 1px; height : 95%; background: #B7B7B7; right : 0; clip-path: inset(100% 0 0);}
.envi-list > li:nth-child(1)::before{position: absolute;content : ''; width : 95%; height :1px; background: #B7B7B7; bottom : 0; clip-path: inset(0 0 0 100%)}
.envi-list > li:nth-child(2)::before{position: absolute;content : ''; width : 95%; height :1px; background: #B7B7B7; bottom : 0; clip-path: inset(0 100% 0 0);}
.envi-list > li:nth-child(3)::after{position: absolute;content : ''; width : 1px; height : 95%; background: #B7B7B7; right : 0; clip-path: inset(0 0 100%);}

.active .envi-list > li::after,
.active .envi-list > li::before{clip-path: inset(0);}

.envi-icon{margin-bottom: 24px; transform: translateX(-50px); opacity: 0; transition : opacity 1s .4s, transform 1s .4s;}
.active .envi-icon{transform: translateX(0); opacity: 1; transition-delay: .4s;}
.envi-con-tit{margin-bottom: 12px; font-family: PT; font-size: 24px; color : #DB5012;transform: translateX(-50px); opacity: 0; transition : opacity 1s .4s, transform 1s .4s;}
.active .envi-con-tit{transform: translateX(0); opacity: 1; transition-delay: .5s;}

.envi-con-desc{font-size: 16px; letter-spacing: -0.04em; font-family: PT; letter-spacing: -0.04em; line-height: 1.5em;transform: translateX(-50px); opacity: 0; transition : opacity 1s .4s, transform 1s .4s;}
.active .envi-con-desc{transform: translateX(0); opacity: 1; transition-delay: .6s;}

.envi-sub-tit{font-size: 24px; font-family: futura-pt; letter-spacing: 0.5em; font-weight: 400; text-align: right;}

.envi-sub-tit .char{opacity: 0;}



/*==========================================================
********************    LOCATION     *********************
============================================================*/

.main-section-location{overflow: hidden;}

.main-section-location .fp-tableCell{display: flex;justify-content: center; align-items: center;}

.location-inner{display: flex;flex-direction: column;align-items: center;padding-top: 100px;}

.location-bg{display: flex;align-items: center;justify-content: center; position : absolute;width : 100%;height : 100%;left : 0;top : 0;z-index: -1;}
.location-bg > img{width: 100%; height: 100%; object-fit: cover;object-position: center; transform: scale(1.2);transition : transform 2s;}
.fp-active .location-bg > img{transform: scale(1);transition : transform 3s;}

.location-tit{position : relative; font-size : 60px; font-family: 'Montserrat', sans-serif; letter-spacing: 0.5em; font-weight : bold; color : #000000;line-height : 1em; margin-bottom: 40px;transform : translateX(-100px);opacity : 0; transition : transform 1s .4s, opacity 1s .4s;}
.fp-active .location-tit{transform : translateX(0);opacity : 1; transition : transform 1s .4s, opacity 1s .4s}

.location-tit > span{position : absolute; font-family : AV; font-size : 48px; color : #797979;left :-10%;bottom : 90%;line-height : 1em;transform : rotate(-15deg) translateX(-100px);opacity : 0;transition : transform 1s .4s, opacity 1s .4s;}
.fp-active .location-tit > span{transform : rotate(-15deg) translateX(0);opacity : 1; transition : transform 1s .8s, opacity 1s .8s}

.location-desc{font-size: 16px; letter-spacing: -0.04em; color : #DBDBDB; margin-bottom: 43px;text-align: center; transform: translateY(50px);opacity: 0;transition : transform 1s, opacity 1s;}
.fp-active .location-desc{transform: translateY(0);opacity: 1;transition : transform 1s .4s, opacity 1s .4s;}

.location-map{margin-bottom: 14px;clip-path: inset(0 50%); transition : clip-path 1s}
.fp-active .location-map{clip-path: inset(0);transition : clip-path 1s 1.5s}

.location-address-box{display: flex;align-items: center;justify-content: start; width : 100%;}
.location-address-box + .location-address-box{margin-top: 30px;}

.location-name{color : #cb5a2a; letter-spacing: -0.033em; font-weight: 700;font-family: pretendard;font-size: 23px;position : relative; margin-right: 33px;}
/* .location-name::after{position : absolute; content : ''; width : 1px; height : 100%;background: #fff;left : 0; clip-path: inset(50% 0); transition : clip-path 1s, left 1s;}
.location-name::before{position : absolute; content : ''; width : 1px; height : 100%;background: #fff;left : 0; clip-path: inset(50% 0); transition : clip-path 1s, left 1s;} */
.location-name span b{font-size: 36px;}

.fp-active .location-name::after{clip-path: inset(0);transition : clip-path 1s .4s, left 1s .4s;}
.fp-active .location-name::before{clip-path: inset(0);left: 100%; transition : clip-path 1s .4s, left 1s 1s;}

.location-name span{opacity: 0;transform: translateY(100%);transition : opacity 1s, transform 1s;}
.fp-active .location-name span{transform: translateY(0); opacity: 1;transition : opacity 1s 1.5s, transform 1s 1.5s;}

.location-address{font-size: 18px; letter-spacing: -0.033em; color : #000; font-family: pretendard; font-weight: 500; opacity: 0; transition : opacity 1s; margin-top: 8px;}
.fp-active .location-address{opacity: 1; transition-delay: 1.5s;}

.location-btn-box{display: flex;gap : 4px; margin-left: auto;transform: translateX(50px); opacity: 0;transition : opacity 1s, transform 1s;}
.fp-active .location-btn-box{transform: translateX(0); opacity: 1;transition : opacity 1s 1.5s, transform 1s 1.5s;}
.location-btn-box > a{transition : transform .5s;}
.location-btn-box > a:hover{transform: translateY(-5px);}

.map-wrap {
	display: flex;
	gap: 20px;
}