body.fixed{overflow : hidden;}
.open-rotate-btn{display: flex;flex-direction: column;align-items: center;justify-content: center; background: #004E50; width : 110px; height : 110px; position : fixed; right : 86px; bottom : 80px; z-index: 10; border-radius: 50%; color : #CCCCCC; font-family: PT; letter-spacing: -0.04em;font-weight: 700; transition : 1.2s; opacity: 0; transform: translateX(100px); font-size: 15px;}
.show.open-rotate-btn{opacity: 1; transform: translateX(0);}
.hide.open-rotate-btn{opacity: 0; transform: translateX(100px);}

.open-rotate-btn b{color : #fff; font-family: jost, PT; font-size: 25px;line-height: 1em; font-weight: 600;}
.open-rotate-btn span{color : #fff; font-family: jost, PT; font-size: 21px; line-height: 1em;}
.open-rotate-btn::before{position : absolute; content : ''; width : 100%; height : 100%; border : 1px solid #fff; transform: scale(0.88); border-radius: 50%;}
.open-rotate-btn::after{position : absolute; content : ''; width : 141px; height : 141px;  background: url(../images/main/open-rotate-text.png)no-repeat center / contain; animation : rotate-text 8s infinite linear; filter: invert(0.5)}
@keyframes rotate-text {
    100%{transform: rotate(360deg);}
}

.scroll{display: flex;align-items: end;gap : 8px; position : absolute; bottom : 50px; left : 80px; z-index: 10; pointer-events: none; transition : .5s;}
.scroll.hide{opacity: 0;}
.scroll-icon{display: flex;flex-direction: column;align-items: center;}
.scroll-progress{width :1px;height : 73px; background: rgba(255,255,255,0.5); position : relative; margin-bottom: 8px; transition : background .5s, color .5s;}
.dark .scroll-progress{background: rgba(0,0,0,0.3);}

.scroll-progress::after{position : absolute; content: '';width : 100%; height : 100%; left : 0; top : 0; background: #fff;animation : scroll-progress 2s infinite; transition : background .5s, color .5s;}
.dark .scroll-progress::after{background: #000;}
@keyframes scroll-progress {0%{height : 0%}100%{height : 100%;}}

.scroll-circle{width : 10px;height : 10px; border-radius: 50%; border : 1px solid #fff; transition : border-color .5s;}
.dark .scroll-circle{border-color: #000;}
.scroll-arrow{width : 8px;height : 8px; border-bottom : 1px solid #fff; border-right : 1px solid #fff; transform: rotate(45deg); transition : border-color .5s;}
.dark .scroll-arrow{border-color: #000}
.scroll > span{color : #fff; transition : color .5s; font-family: Athena; font-size: 16px; line-height: 1em; transition : background .5s, color .5s;}
.dark.scroll > span{color : #000}

/* visual */

.visual-container{display: flex;align-items: center;justify-content: center; width : 100%;height : 100%; position : relative;}
.visual-bg{position : absolute;width : 100%;height : 100%; overflow: hidden; clip-path: inset(calc(50% - 122px) 50% round 1000px); transition : 1.4s; z-index: 1;}

.t1 .visual-bg{clip-path: inset(calc(50% - 122px) calc(50% - 379px) round 1000px);}
.t2 .visual-bg{clip-path: inset(0 round 0px);}
.visual-bg > img{width : 100%;height : 100%; object-fit: cover; object-position: center; transform: scale(1.25); transition : 5s;}
.t2 .visual-bg > img{transform: scale(1);}

.intro-inner{display: flex; align-items: center; justify-content: center;  position :absolute; gap : 36px; transition : 1.4s; z-index: 0;}
.t1 .intro-inner{gap : 800px;}
.intro-tit-01{font-family: GG; font-size: 20px;}
.intro-tit-01 span{color : #004E50; font-weight: 700;}
.intro-tit-01 .char{opacity: 0;}
.intro-tit-02{font-family: PT; font-size: 29px; font-weight: 600; color : #004E50;}
.intro-tit-02 .char{opacity: 0;}

.visual-inner{display: flex;justify-content: center;align-items: center; z-index: 2; height : 100%;padding-bottom: 100px; max-width: 1740px;width : 100%;}
.visual-tit-box{display: flex; align-items: center; gap : 16px; color : #000;}
.visual-desc{font-family: GG; font-size: 20px;}
.visual-desc span{font-weight: 700;}
.visual-desc .char{opacity: 0;}

.visual-line{width : 148px; height : 1px; background: rgba(0,0,0,0.3); clip-path: inset(0 100% 0 0); transition : 1.2s}
.t2 .visual-line{clip-path: inset(0); transition : 1.2s 1s;}

.visual-tit{font-family: PT; font-size: 29px; font-weight: 600; color : #004E50;}
.visual-tit .char{opacity: 0;}

/* LOCATION */
.location-slide{width : 100%;height : 100%;}
.location-slide .swiper-slide{display: flex; overflow: hidden;}
.location-slide .swiper-slide > div{width : 50%; height : 100%; overflow: hidden; position : relative;}
.location-bg{width : 100%;height : 100%; position : absolute; left : 0;top : 0;}
.location-bg > img{width : 100%;height : 100%; object-fit: cover; object-position: center; transform: scale(1.25); transition : 0s 1.4s;}
.active .swiper-slide-active .location-bg > img{transform: scale(1); transition : 3s}

.location-slide-02{background: #000;}

.location-left{display: flex;align-items: end; justify-content: start;}
.location-slide-02 .location-left{align-items: start; padding-top: 196px;}
.location-tit-box{position : relative; padding : 0 0 104px 131px; color : #fff; transform: translateX(-100px); opacity: 0; transition : 0s 1.4s;}
.location-tit-box.dark{color : #000}
.active .swiper-slide-active .location-tit-box{transform: translateX(0); opacity: 1; transition : 1.4s .4s;}
.location-tit{font-family: GG; margin-bottom: 20px; font-size: 20px;}
.location-desc{font-family: PT; font-size: 16px; font-weight: 500; letter-spacing: -0.04em;line-height: 1.5em;}

.location-right{display: flex;align-items: center;justify-content: center; padding-top: 100px;}

.location-list{margin-bottom: 50px; text-align: right; transform: translateX(100px); opacity: 0; transition : 0s 1.4s;}
.active .swiper-slide-active .location-list{transform: translateX(0); opacity: 1; transition : 1.4s 1s;}
.location-list > li + li{margin-top: 42px;}
.location-list-tit{font-family: GG; margin-bottom: 20px; font-size: 20px; color : #8C6F50;}
.location-list-desc{font-family: PT; font-size: 16px; font-weight: 500; letter-spacing: -0.04em;line-height: 1.5em; color : #0B0B0B}
.white .location-list-desc{color : #9A9A9A}

.location-img-box{display: flex;align-items: center; gap : 23px}
.location-img{overflow: hidden; opacity: 0; transition : 0s 1.4s;}
.location-img:nth-child(1){transform: translateX(-100px) translateY(-100px);}
.location-img:nth-child(2){transform: translateX(100px) translateY(100px);}
.active .swiper-slide-active .location-img{transform: translateX(0); opacity: 1; transition : 1.4s .4s;}
.location-img > img{transform: scale(1.5); transition : 0s 1.4s;}
.active .swiper-slide-active .location-img > img{transform: scale(1); transition : 3s;}

/**/
.main-map{background: #F5F3EE;}
.map-bg{width : 100%;height : 100%; position : absolute; left : 0;top : 0; transform: translateX(-50%); opacity: 0; transition : 0s 1.4s}
.active .map-bg{transform: translateX(0); opacity: 1; transition : 2s .4s;}
.map-bg > img{width : 100%;height : 100%; object-fit: cover; object-position: center;}

.map-inner{display: flex;justify-content: end; width : 100%;}

.map-tit-box{display: flex;flex-direction: column;align-items: start; padding-right: 150px; position : relative;}
.map-sub-tit{font-family: GG; font-size: 20px; font-weight: 700; margin-bottom: 30px; padding-bottom: 6px; position : relative; transform: translateY(-100px); opacity: 0; transition : 0s 1.4s;}
.active .map-sub-tit{transform: translateY(0); opacity: 1; transition : 1.4s .4s;}
.map-sub-tit::after{position : absolute; content : ''; width : 100%; height : 1px; background: rgba(0,0,0,0.26); left : 0; bottom : 0; clip-path: inset(0 50%); transition : 0s 1.4s;}
.active .map-sub-tit::after{clip-path: inset(0); transition : 1s .4s;}
.map-desc{font-family: PT; font-size: 22px; font-weight: 300; margin-bottom: 11px; transform: translateY(100px); opacity: 0; transition : 0s 1.4s;}
.active .map-desc{transform: translateX(0); opacity: 1; transition : 1.4s .4s;}
.map-desc b{font-weight: 500;}
.map-tit{font-family: PT; color : #004E50; font-weight: 600; font-size: 44px; margin-bottom: 80px; transform: translateY(100px); opacity: 0; transition : 0s 1.4s;}
.active .map-tit{transform: translateX(0); opacity: 1; transition : 1.4s .4s;}
.map-tit span{color : #8C6F50; margin-bottom: 82px;}

.map-link{display: flex; align-items: center; gap : 16px; transform: translateY(100px); opacity: 0; transition : 0s 1.4s; font-family: GG; font-size: 14px; font-weight: 400; letter-spacing: 0.25em; gap : 16px}
.active .map-link{transform: translateX(0); opacity: 1; transition : 1.4s .4s;}
.map-arrow{display: flex;align-items: center; position : relative; transition :.5s;}
.map-link:hover .map-arrow{transform: translateX(10px);}
.map-arrow > img{position : relative;}
.map-arrow::after{position : absolute; content : ''; width : 24px; height : 24px; background: #DEDEDE; border-radius: 50%; right : 0; transform: scale(1) translateX(30%);z-index: -1; transition : .5s;}
.map-link:hover .map-arrow::after{transform: scale(0) translateX(100%);}

/* PREMIUM */
.main-premium{background: url(../images/main/premium-bg.jpg)no-repeat center / cover; overflow: hidden;}
.premium-slide{width : 100%;height : 100%;}
.premium-container{position :absolute; left : 0;top : 0; width : 100%;height : 100%; z-index: 1;}

.premium-inner{width : 100%; max-width: 1540px; margin : 0 auto; position : relative; padding-top: 292px; height : 100%;}
.premium-tit-box{display: flex;flex-direction: column;align-items: start; position : relative;}
.premium-sub-tit{font-family: GG; font-size: 20px; font-weight: 700; margin-bottom: 30px; padding-bottom: 6px; position : relative; transform: translateY(-100px); opacity: 0; transition : 0s 1.4s;}
.active .premium-sub-tit{transform: translateY(0); opacity: 1; transition : 1.4s .4s;}
.premium-sub-tit::after{position : absolute; content : ''; width : 100%; height : 1px; background: rgba(0,0,0,0.26); left : 0; bottom : 0; clip-path: inset(0 50%); transition : 0s 1.4s;}
.active .premium-sub-tit::after{clip-path: inset(0); transition : 1s .4s;}
.premium-desc{font-family: PT; font-size: 22px; font-weight: 300; margin-bottom: 11px; transform: translateY(100px); opacity: 0; transition : 0s 1.4s;}
.active .premium-desc{transform: translateX(0); opacity: 1; transition : 1.4s .4s;}
.premium-desc b{font-weight: 500;}
.premium-tit{font-family: PT; color : #004E50; font-weight: 600; font-size: 44px; margin-bottom: 80px; transform: translateY(100px); opacity: 0; transition : 0s 1.4s;}
.active .premium-tit{transform: translateX(0); opacity: 1; transition : 1.4s .4s;}
.premium-tit span{color : #8C6F50; margin-bottom: 82px;}

.premium-img-box{display: flex;align-items: center;justify-content: center; position : absolute; left : 50%; top : 50%; transform: translateX(-50%) translateY(-50%); height : 100%;}
.premium-img-box::after{position : absolute; content : ''; width : 1px; height : 100%; background: linear-gradient(to bottom, #B2A78D, #E0CB9E); clip-path: inset(50% 0%); transition : 0s 1.4s; }
.active .premium-img-box::after{clip-path: inset(0); transition : 1s .4s;}

@property --deg {
    syntax: "<angle>";
    inherits: false;
    initial-value: 0deg;
}
.premium-img-box::before{ position :absolute; content: ''; width : 410px; height : 410px; border : 1px solid #DCA533; border-radius: 50%; mask-image:conic-gradient(from 0deg,#000 0deg,var(--deg),transparent 0); transition : --deg 0s 1.4s}
.active .premium-img-box::before{--deg : 360deg; transition : --deg 1s 1s;}

.premium-img-dot{--deg : 0deg; position :absolute; width : 40px; height : 40px; background: linear-gradient(to bottom, #784D04, #B38216, #FEC52E); border-radius: 50%;z-index: 1; mask-image:conic-gradient(from 0deg,#000 0deg,var(--deg),transparent 0); transition : --deg 0s 1.4s}
.active .premium-img-dot{--deg : 360deg; transition : --deg 1s 1s;}

.premium-img{width : 392px; position : relative; z-index: 1;}
.premium-img > div{position :absolute; left : 0;top : 0; width : 392px; height : 392px; border-radius : 50%; overflow : hidden}
.premium-img > div > img,
.premium-img > div > video{width : 100%; height : 100%; object-fit : cover; object-position : center;}
.premium-img > div:first-child{position : static;}

.premium-img-top{--deg : 0deg; mask-image:conic-gradient(from 180deg,#000 0deg,var(--deg),transparent 0); transition : --deg 0s 1.4s, transform 0s 1.4s; transform: translateY(-50%);}
.active .premium-img-top{--deg : 360deg; transform: translateY(0); transition : --deg .8s .4s ease-in-out, transform 2s .4s;}

.premium-img-bottom{--deg : 360deg; mask-image:conic-gradient(from 0deg,transparent 0deg,var(--deg),#000 0); transition : --deg 0s 1.4s, transform 0s 1.4s; transform: translateY(50%);}
.active .premium-img-bottom{--deg : 0deg; transform: translateY(0); transition : --deg 1s 1.2s ease-in-out, transform 2s .4s;}

.premium-img-bottom > div{--deg : 360deg; mask-image:conic-gradient(from 0deg,transparent 0deg,var(--deg),#000 0); transition : --deg .8s 0s;}
.premium-img-bottom > div.on{--deg : 0deg; transition : --deg .8s .6s ease-in-out;}

.premium-img-top > div{--deg : 0deg; mask-image:conic-gradient(from 180deg,#000 0deg,var(--deg),transparent 0);transition : --deg 0.8s 0.6s ease-in-out;}
.premium-img-top > div.on{--deg : 360deg; transition : --deg .8s 0s ease-in-out;}

/**/
.premium-slide-tit{position : absolute; left : 50%;top : 50%; transform: translateY(-50%); margin-left: 245px; white-space: nowrap; font-family: jost; letter-spacing: 0.35em; clip-path: inset(0 -500px);}

.premium-slide-tit > h2{position : absolute; top : 0;left : 0; font-weight: 500; font-size: 50px;}
.premium-slide-tit > h2:first-child{position : static;}
.premium-slide-tit > h2 .char{transform: translateY(100%); transition : 0s 1.4s;}
.active .premium-slide-tit > h2 .char{transition : 0s;}

.active .premium-slide-tit > h2.on .char{transform: translateY(0);}
.active .premium-slide-tit > h2.on .char:nth-child(1){transition: .7s .4s;}
.active .premium-slide-tit > h2.on .char:nth-child(2){transition: .7s .45s;}
.active .premium-slide-tit > h2.on .char:nth-child(3){transition: .7s .5s;}
.active .premium-slide-tit > h2.on .char:nth-child(4){transition: .7s .55s;}
.active .premium-slide-tit > h2.on .char:nth-child(5){transition: .7s .6s;}
.active .premium-slide-tit > h2.on .char:nth-child(6){transition: .7s .65s;}
.active .premium-slide-tit > h2.on .char:nth-child(7){transition: .7s .7s;}
.active .premium-slide-tit > h2.on .char:nth-child(8){transition: .7s .75s;}
.active .premium-slide-tit > h2.on .char:nth-child(9){transition: .7s .8s;}
.active .premium-slide-tit > h2.on .char:nth-child(10){transition: .7s .85s;}

.active .premium-slide-tit > h2.end .char{transform: translateY(-100%);}
.active .premium-slide-tit > h2.end .char:nth-child(1){transition: .7s 0s;}
.active .premium-slide-tit > h2.end .char:nth-child(2){transition: .7s .05s;}
.active .premium-slide-tit > h2.end .char:nth-child(3){transition: .7s .1s;}
.active .premium-slide-tit > h2.end .char:nth-child(4){transition: .7s .15s;}
.active .premium-slide-tit > h2.end .char:nth-child(5){transition: .7s .2s;}
.active .premium-slide-tit > h2.end .char:nth-child(6){transition: .7s .25s;}
.active .premium-slide-tit > h2.end .char:nth-child(7){transition: .7s .3s;}
.active .premium-slide-tit > h2.end .char:nth-child(8){transition: .7s .35s;}
.active .premium-slide-tit > h2.end .char:nth-child(9){transition: .7s .4s;}
.active .premium-slide-tit > h2.end .char:nth-child(10){transition: .7s .45s;}

.premium-slide-desc{position : absolute; left : 50%;top : 75%; transform: translateY(-50%); margin-left: 290px; white-space: nowrap;}
.premium-slide-desc > p{position : absolute; font-family: PT; font-weight: 400; line-height: 1.5em; transform: translateY(50px); transition : .7s; opacity : 0;}
.premium-slide-desc > p > b{display: block; font-family: GG; font-size: 20px; margin-bottom: 30px; font-weight: 700; transform: translateY(-100px); transition : .7s}

.premium-slide-desc > p.on,
.premium-slide-desc > p.on b{opacity : 1; transform : translateY(0); transition : 1s .4s;}

.premium-frame{position : absolute; width : 100%; height : 100%; left : 0;top : 0;}
.premium-frame > img{position : absolute; opacity: 0; transition : 0s 1.4s;}
.premium-frame-01{bottom : 224px; transform: translateY(200px);}
.premium-frame-02{right : 60px;top : 250px; transform: translateY(-200px);}
.active .premium-frame > img{transform: translateX(0); opacity: 1; transition : 2s 1s;}

.premium-navigation{display: none;}

/**/
.contact-bg{position : absolute; left : 0;top : 0; width : 100%; height : 100%; overflow: hidden;}
.contact-bg > img{width : 100%;height : 100%; object-fit: cover; object-position: center; transform: scale(1.5); transition : 0s 1.4s;}
.fp-active .contact-bg > img{transform: scale(1); transition : 5s;}

.contact-inner{display: flex; justify-content: center;align-items: end; gap : 135px;  position : relative; z-index: 1;}

.contact-left{width : 623px;}

.contact-tit-box{margin-bottom: 50px; transform: translateX(-100px); opacity: 0; transition : 0s 1.4s;}
.contact-tit{font-family: Athena; font-size: 75px; font-weight: 400; color : #294F51}
.contact-desc{font-family: PT; font-size: 16px; color : #313131; font-weight: 400; letter-spacing: -0.033em;}

.contact-info{font-family: futura-pt, PT; font-weight: 500; margin-bottom: 167px; transform: translateY(100px); opacity: 0; transition : 0s 1.4s;}

.contact-address-box{display: flex;justify-content: space-between;align-items: end;  position :relative; padding-bottom: 26px;;}
.contact-address-box::after{position : absolute; content : ''; width : 100%; height : 1px; background: #B2B2B2; left : 0; bottom : 0; clip-path: inset(0 100% 0 0); transition : 0s 1.4s;}

.contact-address{font-family: PT; font-size: 16px; letter-spacing: -0.04em; font-weight: 500; transform: translateY(-50px); opacity: 0; transition : 0s 1.4s;}
.contact-address b{display: block; color : #004E50; font-size: 25px; font-weight: 500; margin-bottom: 8px;}

.contact-btn-box{display: flex; gap : 20px; font-family: PT; transform: translateY(-50px); opacity: 0; transition : 0s 1.4s;}

.contact-btn-box > a{display: flex; align-items: center; gap : 10px; letter-spacing: -0.04em; font-weight: 500; color : #1F1F1F;}
.contact-btn-box > a > img{transition : .5s;}
.contact-btn-box > a:hover > img{transform: translateY(-5px);}

.contact-map{transform: translateX(100px); opacity: 0; transition : 0s 1.4s;}


.fp-active .contact-address-box::after{clip-path: inset(0); transform: translateY(0); opacity: 1; transition : 2s .4s;}
.fp-active .contact-tit-box,
.fp-active .contact-info,
.fp-active .contact-map,
.fp-active .contact-address,
.fp-active .contact-btn-box{transform: translateY(0); opacity: 1; transition : 2s .4s;}

@media(max-width : 1200px){

    .section{position : relative; overflow: hidden;}
    .scroll{display: none;}

    .open-rotate-btn{width : 80px; height : 80px; right : 36px; bottom : 48px; z-index: 10; font-size: 13px; position : absolute;}

    .open-rotate-btn b{font-size: 19px;}
    .open-rotate-btn span{font-size: 17px;}
    .open-rotate-btn::after{width : 110px; height : 110px;}
    @keyframes rotate-text {
        100%{transform: rotate(360deg);}
    }

    /* visual */

    .visual-bg{clip-path: inset(calc(50% - 30px) 50% round 100px);}

    .t1 .visual-bg{clip-path: inset(calc(50% - 30px) 10% round 100px);}
    .t2 .visual-bg{clip-path: inset(0 round 0px);}

    .intro-inner{display: flex; flex-direction: column;  position :absolute; gap : 36px; transition : 1.4s; z-index: 0;}
    .t1 .intro-inner{gap : 120px;}
    .intro-tit-01{font-size: 16px;}
    .intro-tit-02{font-size: 20px;}

    .visual-inner{padding-top: 120px; justify-content: center;}
    .visual-tit-box{display: flex; flex-direction: column; align-items: center; gap : 16px;}
    .visual-desc{font-size: 16px;}
    .visual-line{width : 80px;}
    .visual-tit{font-size: 20px;}

    /* LOCATION */
    .location-slide .swiper-wrapper{display: block !important;}
    .location-slide .swiper-slide{display: block;}
    .location-slide .swiper-slide > div{width : 100%; height : auto;}
    .location-bg > img{transition : 3s;}
    .active .location-bg > img{transform: scale(1);}

    .location-left{display: flex;align-items: end; justify-content: start; padding : 120px 24px 36px;}
    .location-slide-02 .location-left{padding : 48px 24px 180px}
    .location-tit-box{padding : 0;}
    .active .location-tit-box{transform: translateX(0); opacity: 1; transition : 1.4s;}
    .location-tit{margin-bottom: 18px; font-size: 16px;}
    .location-desc{font-size: 14px;}

    .location-right{padding : 48px 10px 10px;}

    .location-list{margin-bottom: 36px; transition : 1.4s;}
    .active .location-list{transform: translateX(0); opacity: 1; transition : 1.4s;}
    .location-list > li + li{margin-top: 24px;}
    .location-list-tit{margin-bottom: 16px; font-size: 18px;}
    .location-list-desc{font-size: 14px;}

    .location-img-box{gap : 10px}
    .location-img{transition : 1.4s;}
    .active .location-img{transform: translateX(0); opacity: 1; transition : 1.4s .4s;}
    .location-img > img{transform: scale(1.5); transition : 3s;}
    .active .location-img > img{transform: scale(1); transition : 3s;}

    /**/
    .map-bg{width : 140%;height : auto; position : static; transform: translateY(-50%); transition : 2s;}
    .active .map-bg{transform: translateY(0); opacity: 1; transition : 2s;}
    .map-bg > img{width : 100%;height : 100%; object-fit: cover; object-position: center;}

    .map-inner{display: flex;justify-content: start; width : 100%;}

    .map-tit-box{padding-right: 0; padding : 48px 16px;}
    .map-sub-tit{font-size: 18px; margin-bottom: 24px; padding-bottom: 4px; transition : 1.4s;}
    .active .map-sub-tit{transition : 1.4s;}
    .map-sub-tit::after{transition : 1.4s;}
    .active .map-sub-tit::after{transition : 1.4s;}
    .map-desc{font-size: 18px; margin-bottom: 8px; transition : 1.4s;}
    .active .map-desc{transition : 1.4s;}
    .map-tit{font-size: 36px; margin-bottom: 48px; transition : 1.4s;}
    .active .map-tit{transition : 1.4s;}
    .map-tit span{margin-bottom: 0;}

    .map-link{transition : 1.4s; font-size: 12px; gap : 12px}
    .active .map-link{transition : 1.4s;}
    .map-link:hover .map-arrow{transform: translateX(0px);}
    .map-arrow > img{width : 48px;}
    .map-arrow::after{width : 20px; height : 20px;}
    .map-link:hover .map-arrow::after{transform: scale(1) translateX(0);}

    /* PREMIUM */
    .main-premium{padding-bottom: 860px;}
    .premium-slide{width : 100%;height : 100%;}
    .premium-container{ left : 0;top : 0; width : 100%;height : 100%; z-index: 1;}

    .premium-inner{padding-top: 48px;}
    .premium-tit-box{padding : 0 12px; z-index: 1;}
    .premium-sub-tit{font-size: 18px; margin-bottom: 24px; padding-bottom: 4px; transition : 1.4s;}
    .active .premium-sub-tit{transition : 1.4s;}
    .premium-sub-tit::after{transition : 1.4s;}
    .active .premium-sub-tit::after{transition : 1.4s;}
    .premium-desc{font-size: 18px; margin-bottom: 8px; transition : 1.4s;}
    .active .premium-desc{transition : 1.4s;}
    .premium-tit{font-size: 36px; margin-bottom: 0;transition : 1.4s;}
    .active .premium-tit{transition : 1.4s;}
    .premium-tit span{margin-bottom: 0;}

    .premium-img-box{display: flex;align-items: center;justify-content: center; position : absolute; left : 50%; top : 50%; transform: translateX(-50%) translateY(-50%); height : 100%; padding-bottom: 64px;}
    .premium-img-box::after{position : absolute; content : ''; width : 1px; height : 100%; background: linear-gradient(to bottom, #B2A78D, #E0CB9E); clip-path: inset(50% 0%); transition : 0s 1.4s; }
    .active .premium-img-box::after{clip-path: inset(0); transition : 1s .4s;}

    @property --deg {
        syntax: "<angle>";
        inherits: false;
        initial-value: 0deg;
    }
    .premium-img-box::before{width : 200px; height : 200px; transition : --deg 1.4s}
    .active .premium-img-box::before{--deg : 360deg; transition : --deg 1s 1s;}

    .premium-img-dot{width : 30px; height : 30px; transition : --deg 1.4s}
    .active .premium-img-dot{--deg : 360deg; transition : --deg 1s 1s;}

    .premium-img{width : 200px; height : 200px;}
	.premium-img > div{width : 100%;height : 100%;}

    .premium-img-top{transition : --deg 1.4s, transform 1.4s;}
    .premium-img-bottom{transition : --deg 1.4s, transform 1.4s;}

    /**/
    .premium-slide-tit{left : 16px;top : 620px; transform: translateY(0%); margin-left: 0;}
    .premium-slide-tit > h2{font-size: 36px;}

    .active .premium-slide-tit > h2 .char{transition : 0s;}
    .premium-slide-desc{left : 16px; top : 690px; transform: translateY(0%); margin-left: 0;}
    .premium-slide-desc > p{font-size: 14px;}

    .premium-slide-desc > p > b{font-size: 18px; margin-bottom: 10px;}

    .premium-slide-desc > p.on,
    .premium-slide-desc > p.on b{opacity : 1; transform : translateY(0); transition : 1s .4s;}

    .premium-frame{display: none;}

    .premium-navigation{display: flex; position : absolute; right : 12px; bottom : 12px; z-index: 1; gap : 5px;}
    .premium-navigation > div{display: flex;align-items: center;justify-content: center; width : 42px; height : 42px; background: linear-gradient(to bottom, #784D04, #B38216, #FEC52E); border-radius: 50%;}
    .premium-navigation > div.swiper-button-disabled{opacity: 0.5;}
    .premium-navigation > div::after{position : absolute; content : ''; width : 8px; height : 8px; border-top : 1px solid #fff; border-left : 1px solid #fff}
    .premium-prev::after{transform: rotate(-45deg);}
    .premium-next::after{transform: rotate(135deg);}

    /**/
    .contact-bg > img{transition : 5s;}
    .active .contact-bg > img{transform: scale(1); transition : 5s;}

    .contact-inner{display: flex;flex-direction: column;align-items: center; gap : 60px; padding : 60px 12px;}

    .contact-left{width : 100%;}

    .contact-tit-box{margin-bottom: 24px;transition : 1.4s; text-align: center;}
    .contact-tit{font-size: 48px;}
    .contact-desc{font-size: 14px;}

    .contact-info{font-size: 13px; margin-bottom: 48px; transition : 1.4s; text-align: center;}

    .contact-address-box{display: flex;flex-direction: column; justify-content: start; gap : 16px;align-items: center; padding-bottom: 16px;;}
    .contact-address-box::after{position : absolute; content : ''; width : 100%; height : 1px; background: #B2B2B2; left : 0; bottom : 0; clip-path: inset(0 100% 0 0); transition : 0s 1.4s;}

    .contact-address{font-family: PT; font-size: 14px; letter-spacing: -0.04em; font-weight: 500; transform: translateY(-50px); opacity: 0; transition : 0s 1.4s; text-align: center;}
    .contact-address b{display: block; color : #004E50; font-size: 20px; font-weight: 500; margin-bottom: 4px;}

    .contact-btn-box{display: flex; gap : 16px; font-family: PT; transform: translateY(-50px); opacity: 0; transition : 0s 1.4s;}

    .contact-btn-box > a{display: flex; align-items: center; gap : 6px; letter-spacing: -0.04em; font-weight: 500; color : #1F1F1F; font-size: 12px;}
    .contact-btn-box > a > img{transition : .5s; width : 30px;}
    .contact-btn-box > a:hover > img{transform: translateY(-5px);}

    .contact-map{transform: translateX(100px); opacity: 0; transition : 0s 1.4s; margin-bottom: 36px;}


    .active .contact-address-box::after{clip-path: inset(0); transform: translateY(0); opacity: 1; transition : 2s .4s;}
    .active .contact-tit-box,
    .active .contact-info,
    .active .contact-map,
    .active .contact-address,
    .active .contact-btn-box{transform: translateY(0); opacity: 1; transition : 2s .4s;}
}