
.main-banner{display : flex; flex-direction : column; align-items : center; gap : 36px; position : fixed; right : 97px;bottom : 77px; z-index : 1; opacity : 0; transform : translateX(100px); transition : 2s;}
.on.main-banner{opacity : 1; transform : translateX(0)}
.hide.main-banner{opacity : 0; transform : translateX(100px)}

.open-rotate-btn{display : flex; flex-direction : column; align-items : center; justify-content : center; color : #fff; font-family : PT; font-weight : 700; width : 92px;height : 92px; border-radius : 50%; letter-spacing : -0.04em; line-height : 1.2em;}
.open-rotate-btn::after{position : absolute; content : ''; width : 129px;height : 129px; background: url(../images/main/open-rotate-text.png)no-repeat center / contain; animation : rotate-text 8s infinite linear}
.open-rotate-btn > p:nth-child(1){margin-bottom: 5px;}
.open-rotate-btn span{font-size : 19px; font-family : futura-pt; font-weight : 600}
.open-rotate-btn b{font-size : 28px; font-family : futura-pt; font-weight : 600;}

/* .main-banner{display: flex;flex-direction: column;justify-content: space-between; align-items: center; position : fixed; right : 0; top : 105px; background: #003A64; width : 108px; height : 196px; padding: 15px 0 17px; color : #fff; font-family: PT; letter-spacing: -0.04em; font-weight: 700; z-index: 10; overflow: hidden; transform: translateX(100%); transition : 1s;}
.main-banner.on{transform: translateX(0);}
.banner-tit{display: flex;flex-direction: column;align-items: center; font-size: 13px;gap : 2px;}
.banner-bg{transition : 1s;}
.main-banner:hover .banner-bg{transform: scale(1.2);}
.banner-arrow{display: flex;align-items: center;justify-content: center; position : relative;}
.banner-arrow::after{position : absolute; content : ''; width : 21px; height : 21px; border-radius: 50%; border : 1px solid rgba(255,255,255,0.4);transform: translateX(-25%); transition : .5s;}
.main-banner:hover .banner-arrow::after{transform: translateX(-75%) scale(0);}
.banner-arrow > img{transform: translateX(25%); transition : .5s;}
.main-banner:hover .banner-arrow > img{transform: translateX(-25%);} */


.scroll{position:absolute;bottom:55px;left:85px;z-index:2;display:flex;flex-direction:column;align-items:center;opacity:0;transform:translateX(-100px);transition:1.2s;}
.scroll.on{transform:translateX(0);opacity:1;}

.hide.scroll{display:none;}
.scroll-line{position:relative;width:1px;height:73px;background:#707070;transition:1.2s;}
.scroll-line::before{content:'';position:absolute;width:1px;height:100%;background:#fff;transform-origin:top;animation:scrollLineAni 2s ease-in-out infinite;transition:1.2s;}
.scroll-icon{width:9px;height:9px;border:1px solid #fff;border-radius:50%;flex-shrink:0;margin-top:8px;transition:1.2s;}
.scroll-arrow{width:9px;height:9px;border-right:1px solid #fff;border-bottom:1px solid #fff;transform:rotate(45deg);margin-top:2px;transition:1.2s;}
.scroll > span{position:absolute;bottom:-5px;left : 30px;font-family:futura-pt-web-medium;font-size:15px;color:#fff;transition:1.2s; white-space: nowrap;}
@keyframes scrollLineAni{
    0%{transform:scaleY(0);transform-origin:top;opacity:1;}
    50%{transform:scaleY(1);transform-origin:top;opacity:1;}
    51%{transform:scaleY(1);transform-origin:bottom;opacity:1;}
    100%{transform:scaleY(0);transform-origin:bottom;opacity:0;}
}

.dark .scroll-line{background-color:rgba(0,0,0,.32);}
.dark .scroll-line::before{background-color:#000;}
.dark .scroll-icon{border-color:#000;}
.dark .scroll-arrow{border-color:#000;}
.dark.scroll > span{color:#000;}

@keyframes rotate-text{
	100%{transform : rotate(360deg)}
}

/**/

.visual-slide{width : 100%;height : 100%;}
.visual-container{position :absolute; left : 0;top : 0; width : 100%;height : 100%;z-index: 1;}
.visual-container > div{width : 100%;height : 100%;position : relative;}

.visual-bg{display: flex;justify-content: center; width : 100%;height : 100%;position : absolute; left : 0;top : 0; overflow: hidden;}
/* .visual-bg > video{width : 100%;height : 100%; object-fit: cover; object-position: center; transform: scale(1.5); transition : 5s;}
.on .visual-bg > video{transform: scale(1);} */
.visual-bg > video{width : 100%;height : 100%; object-fit: cover; object-position: center;}
.on .visual-bg > video{ }

.visual-obj{position: absolute; bottom :0; transform: translateY(120%) scale(1); transition :3s; left : 60px;}
.on .visual-obj{transform: translateY(0);}

.visual-inner{display : flex; align-items : center; justify-content : end; width : 100%; max-width : 1200px; height : 100%; margin : 0 auto; position : relative;}

.visual-tit-box{display : flex; flex-direction : column; align-items : center; text-align : center; font-family : KB; color : #fff; letter-spacing : -0.033em}
.visual-tit{font-size : 61px; font-weight : 500;}
.visual-tit > p{overflow : hidden;}
.visual-tit .color{color : #003A64}
.visual-tit .mb{margin-bottom: 24px;}

.visual-tit .char{transform : translateY(100%); transition :1.2s;}

.on .visual-tit > p:nth-child(1) .char{transform : translateY(0); transition-delay : .4s;}
.on .visual-tit > p:nth-child(2) .char{transform : translateY(0); transition-delay : .6s;}
.on .visual-tit > p:nth-child(3) .char{transform : translateY(0); transition-delay : .8s;}
.on .visual-tit > p:nth-child(4) .char{transform : translateY(0); transition-delay : 1s;}

.visual-line{width : 1px; height : 66px; background: rgba(255,255,255,0.6); margin : 8px 0 14px; clip-path : inset(0 0 100%); transition : 1s;}
.on .visual-line{clip-path : inset(0); transition : 1s 1s}

.visual-sub-tit{font-size : 31px; font-weight : 500; line-height : 1.4em;}
.visual-sub-tit > p{transition : 1.2s; opacity : 0; transform : translateY(100px)}

.on .visual-sub-tit > p:nth-child(1){transform : translateY(0); opacity : 1; transition-delay : 1.4s;}
.on .visual-sub-tit > p:nth-child(2){transform : translateY(0); opacity : 1; transition-delay : 1.5s;}
.on .visual-sub-tit > p:nth-child(3){transform : translateY(0); opacity : 1; transition-delay : 1.6s;}
/* 
.visual-con{display: flex; align-items: center;gap :250px; font-family: PT; letter-spacing: -0.04em;padding-top: 120px;}

.visual-left{transition :1s; opacity: 0; transform: translateX(-50px);}
.t2 .visual-left{transform: translateX(0); opacity: 1;transition-delay: .4s;;}

.visual-con-tit{font-size: 35px; color : #fff; font-weight: 400; margin-bottom: 47px; line-height: 1.25em;}
.visual-con-tit b{font-weight: 700; color : #65CEF6}

.visual-con-desc{color : #fff; font-size: 17px; font-weight: 500; line-height: 1.5em; margin-bottom: 110px;}

.visual-right{display: flex;flex-direction: column; align-items: center; justify-content: center; position : relative;}
.visual-right::after{position : absolute; content : ''; width : 1px;height : 90%; background: rgba(255,255,255,0.3); left : -130px; clip-path: inset(0 0 100% 0); transition : 1s;}

.t2 .visual-right::after{clip-path: inset(0);transition-delay: .4s;}
*/
.visual-info{font-size : 13px; letter-spacing : -0.04em; color : #fff; position : absolute; right : 80px; bottom : 16px; font-family : PT;}

.main-section-hug{font-family : PT;}

.hug-inner{display : flex;}
.hug-inner > div{width : 50%;display : flex; align-items : center; justify-content : center; }
.hug-left{color : #003A64;}
.hug-left-inner{display : flex; flex-direction : column; align-items : start;}
.hug-right-inner{display : flex; flex-direction : column; align-items : center;}

.hug-bg{display: flex;justify-content: center; width : 100%;height : 100%;position : absolute; left : 0;top : 0; overflow: hidden;z-index : -1;}
.hug-bg > img{width : 100%;height : 100%; object-fit: cover; object-position: center;}

.hug-logo-left{margin-bottom: 44px; transform : translateY(-100px); opacity : 0; transition : 0s 1s;}
.active .hug-logo-left{transform : translateY(0); opacity : 1; transition : 1s .4s;;}
.hug-con-tit{font-size: 40px; font-weight: 400; margin-bottom: 47px; line-height: 1.25em; margin-bottom: 51px; padding-right: 88px; transform : translateX(-100px); opacity : 0; transition : 0s 1s;}
.hug-con-tit b{font-weight: 700;}

.hug-con-desc{font-size: 20px; font-weight: 500; line-height: 1.6em; margin-bottom: 110px; transform : translateX(-100px); opacity : 0; transition : 0s 1s;}

.active .hug-con-tit,
.active .hug-con-desc{transform : translateX(0); opacity : 1; transition : 1s .4s;}

.hug-line-box{margin-left: auto;}

.hug-line{stroke : #003a64; fill : none; stroke-width : 1; stroke-dasharray : 2000; stroke-dashoffset : 2000; transition : 0s 1s;}
.active .hug-line{stroke-dashoffset : 0; transition : 4s 1s;}

.hug-logo{margin-right: 40px; margin-bottom: 5px; opacity: 0; transition : 0.7s}
.active .hug-logo{opacity: 1; transition-delay: 1s;}
.hug-tit{font-size: 46px; color : #fff; font-weight: 700; margin-bottom: 24px; opacity: 0; transition : 0.7s; letter-spacing : -0.04em}
.active .hug-tit{opacity: 1; transition-delay: 1.2s;}

.hug-list-tit{padding : 5px 53px; color : #fff; font-size: 29px; border-top : 1px solid rgba(255,255,255,0.4); border-bottom : 1px solid rgba(255,255,255,0.4); margin-bottom: 47px; opacity: 0; transition : 0.7s}
.active .hug-list-tit{opacity: 1; transition-delay: 1.4s;}

.hug-list > li{transform: translateX(50px); opacity: 0; transition : 1s;}
.active .hug-list > li{transform: translateY(0); opacity: 1;}
.active .hug-list > li:nth-child(1){transition-delay: 1.4s;}
.active .hug-list > li:nth-child(2){transition-delay: 1.5s;}
.active .hug-list > li:nth-child(3){transition-delay: 1.6s;}

.hug-list > li + li{margin-top: 7px;}
.hug-list > li > img{backdrop-filter: blur(10px);} */

/**/


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

.benefit-container{position :absolute; left : 0;top : 0; width : 100%;height : 100%;z-index: 1;}
.benefit-container > div{width : 100%;height : 100%;position : absolute;left : 0;top : 0;}

.benefit-bg{display: flex;justify-content: center; width : 100%;height : 100%;position : absolute; left : 0;top : 0; overflow: hidden;}

.benefit-bg > img{width : 100%;height : 100%; object-fit: cover; object-position: center; transition : 0.6s ease-out calc(var(--i) * 0.07s);;position : absolute; left : 0;top : 0; clip-path: inset(50%)}

.benefit-bg > img:nth-child(1){clip-path: inset(33.3333% 80% 66.6666% 0);}
.benefit-bg > img:nth-child(2){clip-path: inset(33.3333% 60% 66.6666% 20%);}
.benefit-bg > img:nth-child(3){clip-path: inset(33.3333% 40% 66.6666% 40%);}
.benefit-bg > img:nth-child(4){clip-path: inset(33.3333% 20% 66.6666% 60%);}
.benefit-bg > img:nth-child(5){clip-path: inset(33.3333% 0%  66.6666% 80%);}
.benefit-bg > img:nth-child(6){clip-path: inset(66.6666% 80% 33.3333% 0  );}
.benefit-bg > img:nth-child(7){clip-path: inset(66.6666% 60% 33.3333% 20%);}
.benefit-bg > img:nth-child(8){clip-path: inset(66.6666% 40% 33.3333% 40%);}
.benefit-bg > img:nth-child(9){clip-path: inset(66.6666% 20% 33.3333% 60%);}
.benefit-bg > img:nth-child(10){clip-path: inset(66.6666% 0%  33.3333% 80%);}
.benefit-bg > img:nth-child(11){clip-path: inset(100% 80% 0% 0  );}
.benefit-bg > img:nth-child(12){clip-path: inset(100% 60% 0% 20%);}
.benefit-bg > img:nth-child(13){clip-path: inset(100% 40% 0% 40%);}
.benefit-bg > img:nth-child(14){clip-path: inset(100% 20% 0% 60%);}
.benefit-bg > img:nth-child(15){clip-path: inset(100% 0%  0% 80%);}

.on .benefit-01 .benefit-bg > img:nth-child(1){clip-path: inset(0 80% 66.6666% 0);}
.on .benefit-01 .benefit-bg > img:nth-child(2){clip-path: inset(0 60% 66.6666% 20%);}
.on .benefit-01 .benefit-bg > img:nth-child(3){clip-path: inset(0 40% 66.6666% 40%);}
.on .benefit-01 .benefit-bg > img:nth-child(4){clip-path: inset(0 20% 66.6666% 60%);}
.on .benefit-01 .benefit-bg > img:nth-child(5){clip-path: inset(0 0%  66.6666% 80%);}
.on .benefit-01 .benefit-bg > img:nth-child(6){clip-path: inset(33.3333% 80% 33.3333% 0  );}
.on .benefit-01 .benefit-bg > img:nth-child(7){clip-path: inset(33.3333% 60% 33.3333% 20%);}
.on .benefit-01 .benefit-bg > img:nth-child(8){clip-path: inset(33.3333% 40% 33.3333% 40%);}
.on .benefit-01 .benefit-bg > img:nth-child(9){clip-path: inset(33.3333% 20% 33.3333% 60%);}
.on .benefit-01 .benefit-bg > img:nth-child(10){clip-path: inset(33.3333% 0%  33.3333% 80%);}
.on .benefit-01 .benefit-bg > img:nth-child(11){clip-path: inset(66.6666% 80% 0% 0  );}
.on .benefit-01 .benefit-bg > img:nth-child(12){clip-path: inset(66.6666% 60% 0% 20%);}
.on .benefit-01 .benefit-bg > img:nth-child(13){clip-path: inset(66.6666% 40% 0% 40%);}
.on .benefit-01 .benefit-bg > img:nth-child(14){clip-path: inset(66.6666% 20% 0% 60%);}
.on .benefit-01 .benefit-bg > img:nth-child(15){clip-path: inset(66.6666% 0%  0% 80%);}

.on .t2 .benefit-02 .benefit-bg > img:nth-child(1){clip-path: inset(0 80% 66.6666% 0);}
.on .t2 .benefit-02 .benefit-bg > img:nth-child(2){clip-path: inset(0 60% 66.6666% 20%);}
.on .t2 .benefit-02 .benefit-bg > img:nth-child(3){clip-path: inset(0 40% 66.6666% 40%);}
.on .t2 .benefit-02 .benefit-bg > img:nth-child(4){clip-path: inset(0 20% 66.6666% 60%);}
.on .t2 .benefit-02 .benefit-bg > img:nth-child(5){clip-path: inset(0 0%  66.6666% 80%);}
.on .t2 .benefit-02 .benefit-bg > img:nth-child(6){clip-path: inset(33.3333% 80% 33.3333% 0  );}
.on .t2 .benefit-02 .benefit-bg > img:nth-child(7){clip-path: inset(33.3333% 60% 33.3333% 20%);}
.on .t2 .benefit-02 .benefit-bg > img:nth-child(8){clip-path: inset(33.3333% 40% 33.3333% 40%);}
.on .t2 .benefit-02 .benefit-bg > img:nth-child(9){clip-path: inset(33.3333% 20% 33.3333% 60%);}
.on .t2 .benefit-02 .benefit-bg > img:nth-child(10){clip-path: inset(33.3333% 0%  33.3333% 80%);}
.on .t2 .benefit-02 .benefit-bg > img:nth-child(11){clip-path: inset(66.6666% 80% 0% 0  );}
.on .t2 .benefit-02 .benefit-bg > img:nth-child(12){clip-path: inset(66.6666% 60% 0% 20%);}
.on .t2 .benefit-02 .benefit-bg > img:nth-child(13){clip-path: inset(66.6666% 40% 0% 40%);}
.on .t2 .benefit-02 .benefit-bg > img:nth-child(14){clip-path: inset(66.6666% 20% 0% 60%);}
.on .t2 .benefit-02 .benefit-bg > img:nth-child(15){clip-path: inset(66.6666% 0%  0% 80%);}

.benefit-grid{position :absolute; left : 0;top : 0;width : 100%; height : 100%;z-index: 10; pointer-events: none;}
.benefit-grid > span{position : absolute; background: rgba(255,255,255,0.5); transition : 1s;}
.benefit-grid > span:nth-child(1){width : 1px;height : 100%; left : 20%; clip-path: inset(50% 0);}
.benefit-grid > span:nth-child(2){width : 1px;height : 100%; left : 40%; clip-path: inset(50% 0);}
.benefit-grid > span:nth-child(3){width : 1px;height : 100%; left : 60%; clip-path: inset(50% 0);}
.benefit-grid > span:nth-child(4){width : 1px;height : 100%; left : 80%; clip-path: inset(50% 0);}
.benefit-grid > span:nth-child(5){width : 100%;height : 1px; top : 33.3333%; clip-path: inset(0 50%);}
.benefit-grid > span:nth-child(6){width : 100%;height : 1px; top : 66.6666%; clip-path: inset(0 50%);}

.on .benefit-grid > span{clip-path: inset(0); transition-delay: .4s;}

.benefit-con{position :absolute;width : 20%;height : 33.3333%; overflow: hidden;}
.benefit-con-01{left : 20%}
.benefit-con-02{left : 40%; top : 33.3333%}
.benefit-con-03{left : 60%; top : 66.6666%}
.benefit-con-04{left : 80%; top : 33.3333%}

.benefit-con-inner{display: flex;flex-direction: column;justify-content: center;align-items: start; background: #fff;width : 100%;height : 100%; padding : 0 0 0 50px; position :relative; font-family: PT; letter-spacing: -0.06em; padding-top: 10px; transform: translateY(150%); transition : 1.2s ease;}

.on .t1 .benefit-01 .benefit-con-inner{transform: translateY(0%);}
.on .t1 .benefit-01 .benefit-con-01 .benefit-con-inner {transition-delay: .0s;}
.on .t1 .benefit-01 .benefit-con-02 .benefit-con-inner {transition-delay: .2s;}
.on .t1 .benefit-01 .benefit-con-03 .benefit-con-inner {transition-delay: .4s;}

.on .t2 .benefit-01 .benefit-con-inner{transform: translateY(-150%);}
.on .t2 .benefit-01 .benefit-con-01 .benefit-con-inner {transition-delay: 0s;}
.on .t2 .benefit-01 .benefit-con-02 .benefit-con-inner {transition-delay: .2s;}
.on .t2 .benefit-01 .benefit-con-03 .benefit-con-inner {transition-delay: .4s;}

.on .t2 .benefit-02 .benefit-con-inner{transform: translateY(0%);}
.on .t2 .benefit-02 .benefit-con-01 .benefit-con-inner {transition-delay: 0s;}
.on .t2 .benefit-02 .benefit-con-02 .benefit-con-inner {transition-delay: .2s;}
.on .t2 .benefit-02 .benefit-con-03 .benefit-con-inner {transition-delay: .4s;}
.on .t2 .benefit-02 .benefit-con-04 .benefit-con-inner {transition-delay: .6s;}

.benefit-con-num{font-family: futura-pt; font-weight: 18px; font-weight: 500; letter-spacing: 0.2em; margin-bottom: 19px;}
.benefit-con-tit{font-weight: 600; color : #003A64; margin-bottom: 16px;}
.benefit-con-desc{font-size: 16px; font-weight: 500; line-height: 1.5em; color : #111}

.benefit-icon{position : absolute; right : 36px;bottom : 36px;}

.benefit-tit{display: flex;align-items: end;justify-content: center; position : absolute; width : 30%; height : 33.3333%; z-index: 1; left : 10%;  top : 33.3333%; font-family: futura-pt-bold; font-weight: 700; font-size: 98px; color : #fff; line-height: 0.75em; clip-path: inset(0); white-space: nowrap;}

.benefit-tit .char{transform: translateY(100%); transition : 0.7s;}
.on .benefit-tit .char{transform: translateY(0); transition-delay: 0.6s;}

/**/

.main-section-envi{overflow: hidden;}
.envi-slide{display: flex;justify-content: center; width : 100%;height : 100%;}
.envi-container{display: flex; position : absolute; left : 0;top : 0; width : 100%;height : 100%; transition : 1.2s;}
.t2 .envi-container{transform: translateX(-100%);}
.envi-container > div{width : 100%;height : 100%; flex-shrink: 0; position : relative;}

.envi-map{position : absolute; width : 100%;height : 100%; object-fit: cover; object-position: right bottom;}

.envi-inner{display: flex;align-items: center; width : 100%; max-width: 1640px;height : 100%; margin : 0 auto; position : absolute; z-index: 1;}
.envi-tit-box{position : absolute; transition : 1.2s;left : 0; top : 50%; transform: translateY(-90%); transition : 1.2s;}
.t2 .envi-tit-box{left : 50%; transform: translateX(-50%) translateY(-50%);}
.envi-tit{font-family: futura-pt-bold; font-size: 98px; letter-spacing: -0.033em; color : #003A64;position : relative; line-height: 1em; margin-bottom: 16px;;}
.envi-tit > span{font-family: AV; font-size: 30px; font-weight: 700;color : #1D1D1D; position : absolute;bottom : 70%; opacity : 0; transform: rotate(-15deg) translateX(-100%); transition : 1s;}
.active .envi-tit > span{opacity: 1; transform: rotate(-15deg) translateX(-30%); transition-delay: .4s;}

.envi-tit > p{overflow: hidden;}
.envi-tit .char{transform: translateY(100%); transition : 1s;}
.active .envi-tit .char{transform: translateY(0); transition-delay: .4s;}

.envi-desc{font-family: PT; font-size: 18px; letter-spacing: -0.06em; font-weight: 500; transform: translateY(50px); opacity: 0; transition : 1s;}
.active .envi-desc{transform: translateY(0); opacity: 1; transition-delay: .4s;}

.envi-link{display: flex;flex-direction: column;align-items: center;justify-content: center;gap : 6px; width : 82px; height :82px; border-radius: 50%; background: #000; color : #fff; font-family: PT; font-weight: 600; letter-spacing: -0.04em; position : absolute;top : 100%; margin-top: 50px; transition : 1s;}
.t2 .envi-link{opacity: 0; transform: translateY(50px); pointer-events: none;}

.envi-link .plus{display: flex;align-items: center;justify-content: center; width : 21px;height : 21px; position : relative; transition :.5s;}
.envi-link:hover .plus{transform: rotate(180deg);}
.envi-link .plus::after{position : absolute; content : ''; width : 1px;height : 100%; background: #fff;}
.envi-link .plus::before{position : absolute; content : ''; width : 100%; height : 1px; background: #fff;}

.envi-02{background: #FCFCFC;}

.envi-bg{display: flex;justify-content: center;align-items: center; position : absolute; left : 0;top : 0;width : 100%;height : 100%;}

.envi-bg-circle{position : absolute; border-radius: 50%; border : 1px dashed #707070;}
.envi-bg-circle-01{width : 654px;height : 654px; z-index: 1; background: #fff;animation : rotate-text 14s linear infinite reverse}
.envi-bg-circle-02{width : 1672px;height : 1672px; animation : rotate-text 28s linear infinite}

.envi-bg-circle::after{position : absolute; content : ''; width : 14px;height : 14px; border-radius: 50%; background: #003A64; left : 0; top : 50%; transform: translateX(-50%) translateY(-50%);}
.envi-bg-circle::before{position : absolute; content : ''; width : 14px;height : 14px; border-radius: 50%; background: #003A64; right : 0; top : 50%; transform: translateX(50%) translateY(-50%);}

.envi-con-box{width : 100%; max-width: 1400px; margin : 0 auto; position : relative;height : 100%;}
.envi-con{position : absolute;}
.envi-con-01,
.envi-con-03{top : 22.7835vh}

.envi-con-03{right : 0;}

.envi-con-02{top : 58.7629vh}
.envi-con-04{top : 57.701vh}

.envi-con-02{margin-left: 143px;}
.envi-con-04{right : 0; margin-right: 57px;}

.envi-con-tit-eng{font-family: futura-pt-bold; font-size: 15px; letter-spacing: 0.25em; color : #003A64; margin-bottom: 12px; opacity: 0; transform: translateX(50px); transition :1s;}
.t2 .envi-con-tit-eng{transform: translateX(0); opacity: 1; transition-delay: 1s;}

.envi-con-tit{font-family: PT; font-weight: 500; font-size: 24px; letter-spacing: -0.06em; color : #111; margin-bottom: 13px; opacity: 0; transform: translateX(50px); transition :1s;}
.t2 .envi-con-tit{transform: translateX(0); opacity: 1; transition-delay: 1.1s;}

.envi-con-desc{font-family: PT; font-weight: 500; font-size: 17px; letter-spacing: -0.06em; color : #808080; line-height: 1.5em; opacity: 0; transform: translateX(50px); transition :1s;}
.t2 .envi-con-desc{transform: translateX(0); opacity: 1; transition-delay: 1.2s;}

.envi-obj{position : absolute; opacity: 0; transform: scale(1.2); transition :1s;}
.envi-obj-01{bottom : -16px;left : 80px;}
.envi-obj-02{left : 105%;top : 100%;}
.envi-obj-03{left : 100%;margin-left: 80px; top: 67px;}
.envi-obj-04{bottom :0; left : 100%;}

.envi-obj-bg{position :absolute; right : 100%; margin-right: 75px; top : 115px; opacity: 0; transform: scale(1.2); transition :1s;}

.envi-con-img{opacity: 0; transform: scale(1.2); transition :1s;}
.envi-con-01 .envi-con-img{transform: translateX(-150px)  scale(1.2); margin-top: 23px;}
.envi-con-02 .envi-con-img{margin-bottom: 30px;}
.envi-con-03 .envi-con-img{margin-top: 30px;}
.envi-con-04 .envi-con-img{margin-bottom: 60px; margin-left: auto; transform: scale(1.2) translateX(calc(100% + 68px));}

.t2 .envi-con-01 .envi-obj-01{opacity: 1; transform: scale(1); transition-delay: .4s;}
.t2 .envi-obj-bg{opacity: 1; transform: scale(1); transition-delay: .5s;}
.t2 .envi-con-01 .envi-con-img{opacity: 1; transform: translateX(-150px) scale(1); transition-delay: .6s;}
.t2 .envi-obj-02{opacity: 1; transform: scale(1); transition-delay: 1s;}
.t2 .envi-obj-02{opacity: 1; transform: scale(1); transition-delay: 1s;}

.t2 .envi-con-02 .envi-con-img{opacity: 1; transform: scale(1); transition-delay: .5s;}
.t2 .envi-con-03 .envi-con-img{opacity: 1; transform: scale(1); transition-delay: .6s;}
.t2 .envi-con-03 .envi-obj-03{opacity: 1; transform: scale(1); transition-delay: .7s;}
.t2 .envi-con-04 .envi-con-img{opacity: 1; transform: scale(1) translateX(calc(100% + 68px)); transition-delay: .8s;}
.t2 .envi-obj-04{opacity: 1; transform: scale(1); transition-delay: .9s;}

/**/

.contact-bg{position : absolute; left : 0;top : 0;z-index: -1;width : 100%;height : 100%;}
.contact-bg > img{width : 100%; height : 100%; transform: scale(1.25); transition : 3s;}
.fp-active .contact-bg > img{transform: scale(1);}

.contact-inner{display: flex;flex-direction: column;align-items: center;width : 100%; width : 1135px; margin : 0 auto;}
.contact-tit-box{display: flex;flex-direction: column;align-items: center; text-align: center; padding-bottom: 47px; position : relative; width : 100%; margin-bottom: 40px;}
.contact-tit-box::after{position : absolute; content : ''; width : 100%;height : 1px; left : 0; bottom : 0; background: #9D9D9D; clip-path: inset(0 50%); transition : 1s;}

.contact-tit{font-family: futura-pt-bold; font-size: 98px; letter-spacing: -0.033em; color : #003A64;position : relative; line-height: 1em; margin-bottom: 16px;;}
.contact-tit > span{font-family: AV; font-size: 30px; font-weight: 700;color : #1D1D1D; position : absolute;bottom : 70%; opacity : 0; transform: rotate(-15deg) translateX(-100%); transition : 1s;}
.fp-active .contact-tit > span{opacity: 1; transform: rotate(-15deg) translateX(-30%); transition-delay: .4s;}

.contact-tit > p{overflow: hidden;}
.contact-tit .char{transform: translateY(100%); transition : 1s;}
.fp-active .contact-tit .char{transform: translateY(0); transition-delay: .4s;}

.contact-desc{font-family: PT; font-size: 18px; letter-spacing: -0.06em; font-weight: 500; transform: translateY(50px); opacity: 0; transition : 1s;}
.fp-active .contact-desc{transform: translateY(0); opacity: 1; transition-delay: .4s;}

.contact-container{display: flex; position : relative; width : 100%; gap : 62px; padding-bottom: 38px;}

.contact-container::after{position : absolute; content : ''; width : 100%;height : 1px; left : 0; bottom : 0; background: #9D9D9D; clip-path: inset(0 50%); transition : 1s;}

.contact-left{padding : 23px 0 30px;}

.fp-active .contact-map .line{clip-path: inset(0) !important;}
.fp-active .contact-map .line:nth-child(1),.fp-active .contact-map .line:nth-child(3){width:100%;height:1px; transition-delay: .4s;}
.fp-active .contact-map  .line:nth-child(2),.fp-active .contact-map span.line:nth-child(4){width:1px;height:100%; transition-delay: .4s;}

.contact-address-box{display: flex;flex-direction: column;justify-content: center; padding-left: 62px;position : relative;}
.contact-address-box::after{position : absolute; content : ''; width : 1px;height : 100%; background: #9d9d9d;left : 0; clip-path: inset(50% 0); transition : 1s;}

.contact-address{font-family: PT; letter-spacing: -0.04em;}
.contact-address + .contact-address{margin-top: 62px;}
.contact-address > h3{font-size: 25px; font-weight: 500; color : #003A64; margin-bottom: 26px; opacity: 0; transform: translateX(50px); transition : 1s;}
.contact-address > p{font-size: 16px; font-weight: 500; color : #919191; margin-bottom: 26px; opacity: 0; transform: translateX(50px); transition : 1s;}
.contact-btn-box{display: flex;gap : 4px; opacity: 0; transform: translateX(50px); transition : 1s;}

.contact-btn-box > a > img{transition : 0.5s;}
.contact-btn-box > a:hover > img{transform: translateY(-5px);}

.fp-active .contact-address > h3{opacity: 1; transform: translateX(0); transition-delay: .4s;}
.fp-active .contact-address > p{opacity: 1; transform: translateX(0); transition-delay: .5s;}
.fp-active .contact-address > .contact-btn-box{opacity: 1; transform: translateX(0); transition-delay: .6s;}

.fp-active .contact-tit-box::after,
.fp-active .contact-container::after,
.fp-active .contact-address-box::after{clip-path: inset(0); transition-delay: .4s;}

/* schedule */

.main-section-schedule{padding : 0 120px;}
.schedule-bg{position:absolute;left:0;top:0;width:100%;height:100%;overflow:hidden;z-index:-1; background: #000;}
.schedule-bg > img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.5);opacity: 0; transition : 0s 1s;}
.active .schedule-bg > img{opacity: 1; transform:scale(1);transition:transform 1.6s;}

.sec-small-tit{font-family: trajan-pro-3; font-size: 18px; font-weight: 400; color : #909090; transform: translateY(-100px); opacity: 0; transition : 0s 1s;}
.active .sec-small-tit{transform: translateY(0);opacity: 1; transition : 1s .4s;}

.sec-tit{font-family: futura-pt-bold; font-size: 98px; font-weight: 400; transform: translateX(-100px); opacity: 0; transition : 0s 1s; letter-spacing: 0.1em; white-space: nowrap; line-height: 1em; margin-bottom: 10px; color : #fff;}
.active .sec-tit{transform: translateX(0);opacity: 1; letter-spacing: -0.033em; transition : 1s .4s;}

.sec-desc{font-family: PT; font-size: 20px; letter-spacing: -0.06em; color : #333; transform: translateY(100px); opacity: 0; transition : 0s 1s; font-weight: 600; color : #fff;}
.active .sec-desc{transform: translateY(0);opacity: 1; transition : 1s .4s;}

.schedule-inner{display: flex; align-items: start;justify-content: space-between; width : 100%; max-width: 1440px; margin : 0 auto; padding-bottom: 100px;}


.schedule-right{display: flex;flex-direction: column;align-items: end;}
.schedule-table{display: grid;grid-template-columns: repeat(6, 1fr); width : 934px; gap : 10px; margin-bottom: 26px;}

.schedule-table > li{display: flex;flex-direction: column;align-items: start; justify-content: start; grid-column: span 2; height : 174px; border-radius: 10px; border : 1px solid #989898; transition : background .5s, opacity 1s, transform 1s; opacity: 0; transform: translateY(100px); padding : 29px 0 0 27px;}
.active .schedule-table > li{transform: translateY(0); opacity: 1; transition : background .5s, opacity 1s calc(var(--i) * 0.1s + 0.4s), transform 1s calc(var(--i) * 0.1s + 0.4s)}

/* .schedule-table > li:hover{background: rgba(255,255,255,0.2);} */
.schedule-table > li.wide{grid-column: span 3;}

.schedule-name{font-family: PT; font-weight: 700; font-size: 22px;color : #fff; margin-bottom: 5px;}
.schedule-table > li:hover .schedule-name{color : #6AA9D1}

.schedule-day{font-family: PT; font-size: 16px; font-weight: 500; color : #9D9D9D;}
.schedule-table > li:hover .schedule-day{color : #fff; }

.schedule-btn-box{display: flex; align-items: center; gap : 11px; opacity: 0; transform: translateX(100px); transition : 0s 1s;}
.active .schedule-btn-box{transform: translateX(0); opacity: 1; transition : 1s .4s;}
.schedule-btn-box > a{display: flex;height : 45px;font-weight: 700; font-family: PT; font-size: 15px;}
.schedule-btn-box > a:nth-child(1) > *{background: #fff; transition : .5s; color : #0E2F52;}
.schedule-btn-box > a:nth-child(2) > *{background: #65CEF6; transition : .5s; color :#003A64; }

.schedule-btn-box > a > p{display: flex;align-items: center;justify-content: center; width : 168px;height : 45px; border-radius: 100px;}
.schedule-btn-box > a > span{display: flex;align-items: center;justify-content: center; width : 45px;height : 45px; border-radius: 100px; transition : .5s;}
.schedule-btn-box > a:hover > span{transform: rotate(180deg);}
.schedule-btn-box > a > span::after{content : ''; position : absolute; width : 1px;height : 15px;}
.schedule-btn-box > a > span::before{content : ''; position : absolute; width : 15px;height : 1px;}

.schedule-btn-box > a:nth-child(1) > span::after,
.schedule-btn-box > a:nth-child(1) > span::before{background: #0E2F52;}

.schedule-btn-box > a:nth-child(2) > span::after,
.schedule-btn-box > a:nth-child(2) > span::before{background: #003A64;}

.medal-list{display: flex;gap : 12px;position : absolute; bottom : 56px; right : 240px;}
.medal-list > li{transform: translateY(50px); opacity: 0; transition : 1.2s;}
.active .medal-list > li{transform: translateY(0); opacity: 1;}
.active .medal-list > li:nth-child(1){transition-delay: 1s;}
.active .medal-list > li:nth-child(2){transition-delay: 1.1s;}
.active .medal-list > li:nth-child(3){transition-delay: 1.2s;}

/**/
