body{background-color: #fff;}
.mo{display: none !important;}
.mo-flex{display: none !important;}
.mo-inline{display: none !important;}
.mo-grid{display: none !important;}
.flex-cont{display: flex;}
.grid-cont{display: flex;}
html:has(header nav.active), body:has(header nav.active){overflow: hidden; overscroll-behavior: none;}

.content-wrap{}
#mainPage h1{}
#mainPage h2{}
#mainPage h3{}
#mainPage .description{}
#mainPage .detail{}

.font-ten{font-family: "ten-oldstyle", serif;}
.font-suit{font-family: "Suit", serif;}
.font-goudy{font-family: "Sorts Mill Goudy", serif;}
.italic{font-style: italic;}


/* header 시작 */
header{position: fixed; top: 0; width: 100%; z-index: 99; --header-color: #fff; --header-border-color: #c4c4c4; border-bottom: 1px solid #c4c4c4; transition: top 1s;}
header.dark{--header-color: #222; --header-border-color: #95bddd; backdrop-filter: blur(10px); background-color: rgba(255, 255, 255, 0.7);}
header .header-cont{display: flex; justify-content: space-between; align-items: center; width: 93.55%; max-width: 1800px; margin-inline: auto; padding-block: 14px;}
header .header-cont .header-left{display: flex; width: 40%;}
header .header-cont .header-left ul{display: inline-flex; gap: 30px;}
header .header-cont .header-left ul li a{color: var(--header-color); font-size: 15px; letter-spacing: -0.02em;}
header .header-cont .header-center{max-width: 400px;}
header .header-cont .header-center .header-logo{display: none; width: 100%;}
header .header-cont .header-center .header-logo.active{display: block;}
header .header-cont .header-right{display: flex; justify-content: end; gap: 27px; width: 40%;}
header .header-cont .header-right .metro-info-cont{display: flex; align-items: center;}
header .header-cont .header-right .metro-info-cont .metro-num{width: 18px; line-height: 18px; height: 18px; text-align: center; border-radius: 50%; color: #fff; font-size: 13px;}
header .header-cont .header-right .metro-info-cont .metro-num.mn7{background-color: #41563b; margin-right: 5px;}
header .header-cont .header-right .metro-info-cont .metro-num.mn4{background-color: #4fb0d8; margin-right: 10px;}
header .header-cont .header-right .metro-info-cont .metro-text{color: var(--header-color); font-size: 15px; letter-spacing: -0.02em;}
header .header-cont .header-right #btnMenu{display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 7px 20px; border: 1px solid var(--header-border-color); border-radius: 50px; background-color: transparent; cursor: pointer;}
header .header-cont .header-right #btnMenu>span{font-size: 21px; color: var(--header-color);}
header .header-cont .header-right #btnMenu .ham{display: flex; flex-direction: column; align-items: center;}
header .header-cont .header-right #btnMenu .ham>span{display: block; width: 17px; height: 1px; margin-bottom: 6px; background-color: var(--header-border-color);}
header .header-cont .header-right #btnMenu .ham>span:last-child{margin-bottom: 0;}

header nav{position: absolute; top: 0; right: -100%; width: 50%; height: 100vh; background-color: #415b70; transition: right 0.5s ease;}
header nav.active{right: 0;}
header nav hr{background-color: #c4c4c4;}
header nav .nav-top{display: flex; align-items: center; justify-content: end; gap: 20px; width: 87.1%; max-width: 1800px; margin-inline: auto; padding-block: 14px;}
header nav .nav-top ul{display: inline-flex;}
header nav .nav-top ul li a{color: #fff; padding-inline: 10px; font-size: 15px;}
header nav .nav-top ul li:nth-child(1) a{border-right: 1px solid #ccc;}
header nav .nav-top #btnMenuCls{display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 7px 20px; border: 1px solid #fff; border-radius: 50px; background-color: transparent; cursor: pointer;}
header nav .nav-top #btnMenuCls>span{font-size: 21px; color: #fff;}
header nav .nav-top #btnMenuCls .cls{position: relative; width: 17px;}
header nav .nav-top #btnMenuCls .cls>span{position: absolute; top: 50%; left: 50%; translate: -50% -50%; width: 17px; height: 1px; background-color: #fff;}
header nav .nav-top #btnMenuCls .cls>span:nth-child(1){rotate: 45deg;}
header nav .nav-top #btnMenuCls .cls>span:nth-child(2){rotate: -45deg;}
header nav .nav-mid{width: 82%; padding-block: 90px; padding-inline: 10px; margin-inline: auto; border-bottom: 1px solid #c4c4c4;}
header nav .nav-mid .nav-list{display: flex; flex-direction: column; gap: 40px;}
header nav .nav-mid .nav-list>li{display: flex; align-items: center;}
header nav .nav-mid .nav-list>li .nav-title{width: 190px; margin-right: 40px; font-size: 22px; font-weight: 500; color: #c1e4ff;}
header nav .nav-mid .nav-list>li .nav-item{display: flex;}
header nav .nav-mid .nav-list>li .nav-item li{}
header nav .nav-mid .nav-list>li .nav-item li a{margin-right: 10px; font-size: 15px; color: #fff;}
header nav .nav-mid .nav-list>li .nav-item li a:hover{text-decoration: underline; text-underline-offset: 2px;}
header nav .nav-btm{position: relative; width: 82%; padding-block: 30px; padding-inline: 10px; margin-inline: auto;}
header nav .nav-btm:before{position: absolute; top: 30px; right: 30px; content: ''; width: 150px; height: 150px; background:url(../img/menu_logo.png) center/contain no-repeat;}
header nav .nav-btm ul{display: flex; gap: 10px;}
header nav .nav-btm ul li{}
header nav .nav-btm ul li a{display: flex; flex-direction: column; align-items: center; gap: 15px; width: 110px;}
header nav .nav-btm ul li a img{width: 50px;}
header nav .nav-btm ul li a span{font-size: 15px; color: #fff;}
/* header 끝 */

/* main 시작 */
/* html.scroll-lock{overflow: hidden !important;}
body.scroll-lock{overflow: hidden !important;} */
#intro{position: fixed; top: 0; left: 0; display: flex; align-items: center; justify-content: center; width: 100vw; height: 100vh; background-color: #afcbe1; z-index: 999997; transition: opacity 1s ease;}
#intro.intro-fade-out{opacity: 0; pointer-events: none;}
#intro img{position: absolute; top: 50%; left: 50%; translate: -50% -50%; z-index: -1;}
#intro span{}
#intro span.intro-text{font-size: 40px; color: #fff;}
#intro span.line{width: 110px; height: 1px; margin-inline: 30px; background-color: #fff;}
#intro h1{font-size: 40px; color: #fff; font-weight: 600;}

#secHero{position: relative; overflow: hidden;}
#secHero .hero-bg-group{position: absolute;top: 0;left: 0;width: 100%;height: 100%;z-index: -1;}
#secHero .hero-bg-group .bg{position: absolute;top: 0;left: 0;width: 100%;height: 100%;background-size: cover;background-repeat: no-repeat;background-position: center center;opacity: 0;transition: opacity 1.2s ease-in-out, transform 0s 1.2s;}
#secHero .hero-bg-group .bg1{background-image: url(../img/260407_main_bg_01.webp);}
#secHero .hero-bg-group .bg2{background-image: url(../img/r_main_bg_02.webp);}
#secHero .hero-bg-group .bg3{background-image: url(../img/r_main_bg_03.webp);}
#secHero.hero1 .bg1,
#secHero.hero2 .bg2,
#secHero.hero3 .bg3{opacity: 1;z-index: 1;transform: scale(1);transition: opacity 1.2s ease-in-out;animation: zoomOut 5s linear forwards;}

#secHero .content-wrap{display: flex; flex-direction: column; justify-content: space-between; width: 60.3%; max-width: 1160px; height: 551px; padding-top: min(365px, 18.9vw); padding-bottom: min(158px, 8.2vw); margin-inline: auto; box-sizing: content-box;}
#secHero .text-cont{}
#secHero.hero1 .text-cont li{display: flex; flex-direction: column; max-width: 1000px; margin-inline: auto; text-align: center;}
#secHero.hero1 .text-cont h2{display: flex; justify-content: center; align-items: center; gap: 37px; margin-bottom: 48px; font-size: clamp(36px, 3.01vw, 58px); color: #fff;}
#secHero.hero1 .text-cont h2 span{width: 100px; height: 1px; background-color: #fff;}
#secHero.hero1 .text-cont .description{margin-bottom:47px; font-size: 21px; color: #fff; letter-spacing: 0.35em;}
#secHero.hero1 .text-cont .detail{font-size: 17px; color: #fff; line-height: 1.6em;}
#secHero.hero2 .text-cont li{display: flex; flex-direction: column; max-width: 1000px; text-align: left;}
#secHero.hero2 .text-cont h2{gap: 37px; margin-bottom: 48px; font-size: clamp(30px, 2.08vw, 40px); color: #fff;}
#secHero.hero2 .text-cont .description{margin-bottom:47px; font-size: 21px; color: #fff;}
#secHero.hero2 .text-cont .detail{font-size: 17px; color: #fff; line-height: 1.6em;}
#secHero.hero3 .text-cont li{display: flex; flex-direction: column; max-width: 1000px; text-align: left;}
#secHero.hero3 .text-cont h2{gap: 37px; margin-bottom: 48px; font-size: clamp(30px, 2.08vw, 40px); color: #fff;}
#secHero.hero3 .text-cont .description{margin-bottom:47px; font-size: 21px; color: #fff;}
#secHero.hero3 .text-cont .detail{font-size: 17px; color: #fff; line-height: 1.6em;}
#secHero .text-cont li{display: none !important;}
#secHero .text-cont li.active{display: flex !important;}
#secHero .page-cont{display: flex; align-items: center; gap: 70px;}
#secHero .page-cont .button-cont{display: flex; gap: 18px; margin-bottom: 8px;}
#secHero .page-cont .button-cont>button{display: flex; width: 45px; height: 45px; justify-content: center; align-items: center; background-color: rgba(255,255,255,0.5); border-radius: 50%; border: 0; cursor: pointer;}
#secHero .page-cont .button-cont>button:nth-child(1) img{rotate: 180deg;}
#secHero .page-cont .hero-list{display: flex; gap: 40px;}
#secHero .page-cont .hero-list li{width: 290px; opacity: 0.5;}
#secHero .page-cont .hero-list li.active{opacity: 1;}
#secHero .page-cont .hero-list li .progress-bar{position: relative; width: 100%; height: 3px; margin-bottom: 11px; background-color: rgba(255, 255, 255, 0.5);}
#secHero .page-cont .hero-list li .progress-bar:after{position: absolute; top: 0; left: 0; width: 0; height: 3px; background-color: #fff; content: '';}
#secHero .page-cont .hero-list li.active .progress-bar:after{width: 100%; transition: width 5s linear;}
#secHero .page-cont .hero-list li .title{display: block; text-align: center; color: #fff;}

#secDocInfo{}
#secDocInfo .content-wrap{padding-top: min(270px, 14vw);}
#secDocInfo .text-cont{position: relative; text-align: center;}
#secDocInfo .text-cont .rotate-img-cont{position: absolute; top: 30px; left: 100px; width: 187px;}
#secDocInfo .text-cont .rotate-img-cont img:nth-child(1){position: absolute; top: 50%; left: 50%; translate: -50% -50%; animation: rotate_image 8s linear infinite;}
#secDocInfo .text-cont .rotate-img-cont img:nth-child(2){position: absolute; top: 50%; left: 50%; translate: -50% -50%;}
#secDocInfo .text-cont .title{margin-bottom: 20px; font-size: 18px; color: #94bddd; font-weight: 500;}
#secDocInfo .text-cont h2{margin-bottom: 27px; font-size: clamp(28px, 2.02vw, 39px); font-weight: 400; letter-spacing: -0.06em;}
#secDocInfo .text-cont h2 b{font-weight: 500;}
#secDocInfo .text-cont .description{margin-bottom: 38px; font-size: 17px; font-weight: 400; line-height: 1.7em;}
#secDocInfo .text-cont .description b{font-weight: 600;}
#secDocInfo .text-cont .info-more{display: inline-flex; padding: 15px 45px; margin-bottom: 46px; gap: 10px; align-items: center; background-color: #eaeff2; font-size: 14px; border-radius: 50px; color: #3b3e41; transition: 0.5s;}
#secDocInfo .text-cont .info-more img{transition: 0.3s;}
#secDocInfo .text-cont .info-more:hover{background-color: #94bddd; color: #fff;}
#secDocInfo .text-cont .info-more:hover img{filter: brightness(0) invert(1);}
#secDocInfo .text-cont .bg-text{position: absolute; bottom: 0; right: 100px; font-size: min(93px, 4.8vw); color: #bfbfbf; opacity: 0.3;}
#secDocInfo .doc-list{width: 83.16%; max-width: 1600px; margin-inline: auto; display: flex; gap: 2%; margin-bottom: 130px; justify-content: center; align-items: center; aspect-ratio: 1600 / 438;}
#secDocInfo .doc-list li{position: relative; justify-content: space-between; width: 19%; transition: width 0.5s cubic-bezier(0.4, 0, 0.2, 1); cursor: pointer;}
#secDocInfo .doc-list li img{width: 100%; filter: grayscale(1); transition: 0.5s;}
#secDocInfo .doc-list li.active{width: 24%;}
#secDocInfo .doc-list li.active img{filter: grayscale(0);}
#secDocInfo .doc-list li .img-text-cont{opacity: 0; position: absolute; bottom: 0; width: 100%; padding-top: 200px; padding-bottom: 35px; text-align: center; background: linear-gradient(to top, rgba(148, 189, 221, 1) 0%, rgba(148, 189, 221, 1) 30%, rgba(148, 189, 221, 0) 100%);}
#secDocInfo .doc-list li .img-title{margin-bottom: 10px; font-size: 25px; color: #fff;}
#secDocInfo .doc-list li .img-description{display: inline-block; padding: 8px 16px; border: 1px solid #fff; border-radius: 50px; font-size: 16px; color: #fff;}
#secDocInfo .doc-list li.active .img-text-cont{opacity: 1;}
#secDocInfo .bg-text-flow{display: flex; white-space: nowrap; font-size: min(120px, 6.2vw); color: #ececec; text-transform: uppercase; line-height: 1; opacity: 0.8;}
#secDocInfo .bg-text-flow>span{display: block; animation: marquee 60s linear infinite;}

#secStory .content-wrap{padding-top: 70px;}
#secStory .text-cont{position: relative; text-align: center;}
#secStory .text-cont .title{margin-bottom: 20px; font-size: 18px; color: #94bddd; font-weight: 500;}
#secStory .text-cont h2{margin-bottom: 30px; font-size: clamp(28px, 2.02vw, 39px); font-weight: 400; letter-spacing: -0.06em; line-height: 1.4em;}
#secStory .text-cont h2 em{font-size: clamp(23px, 1.71vw, 33px);}
#secStory .text-cont .description{margin-bottom: 38px; font-size: 17px; font-weight: 400; line-height: 1.7em;}
#secStory .text-cont .description b{font-weight: 600;}
#secStory .text-cont .info-more{display: inline-flex; padding: 15px 45px; margin-bottom: 50px; gap: 10px; align-items: center; background-color: #eaeff2; font-size: 14px; border-radius: 50px; color: #3b3e41;}
#secStory .text-cont .info-more img{transition: 0.3s;}
#secStory .text-cont .info-more:hover{background-color: #94bddd; color: #fff;}
#secStory .text-cont .info-more:hover img{filter: brightness(0) invert(1);}
#secStory .video-cont{display: flex; flex-direction: column; align-items: center; gap: 145px; margin-bottom: 278px;}
/* gsap추가 */
#secStory .video-cont{position: relative; width: 75.52vw; margin-inline: auto; aspect-ratio: 1450/740; overflow: hidden; background-color: transparent;}
#secStory .img-box{position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 100%; height: 100%;}
#secStory .img-box img{width: 100%; height: 100%; object-fit: cover; filter: grayscale(100%);}
#secStory .img-box.first{z-index: 2; width: 59.375vw; aspect-ratio: 1450/740; height: auto; top: 50%; transform: translate(-50%, -50%); transition: opacity 0.5s;}
#secStory .img-box.second{z-index: 1; opacity: 0; width: 100%; height: 100%; top: 0; left: 50%; transform: translateX(-50%);}

#secImpInfo{position: relative; overflow: hidden; background-color: #89abc6;}
#secImpInfo .scroll-wrap{display: flex; width: 100%; align-items: flex-start; height: 100vh;}
#secImpInfo .col-left, #secImpInfo .col-right{width: 50%; display: flex; flex-direction: column; will-change: transform;}
#secImpInfo .inner{position: relative; display: flex; flex-direction: column; justify-content: center; width: 100%; height: 100%; box-sizing: border-box;}
#secImpInfo .title-cont .inner{height: 100vh; padding: min(60px, 3.1vw); align-items: center; background-size: cover; background-repeat: no-repeat;}
#secImpInfo .desc-cont .inner, #secImpInfo .detail-cont .inner{height: 50vh; padding-left: min(150px, 7.8vw); background-size: cover; background-position: center; background-repeat: no-repeat;}
#secImpInfo .imp-t .inner{background-image: url(../img/imp_info_bg_01.webp); background-position: left center;}
#secImpInfo .orth-t .inner{background-image: url(../img/imp_info_bg_02.webp); background-position: center;}
#secImpInfo .imp-d .inner{background-image: url(../img/r_imp_info_01.webp);}
#secImpInfo .orth-d .inner{background-image: url(../img/r_imp_info_02.webp);}
#secImpInfo .detail-cont .inner{background-color: #5f819c;}
#secImpInfo h2{margin-bottom: 27px; font-size: clamp(25px, 2.13vw, 41px); font-weight: 600; color: #fff; text-align: center; line-height: 1.3;}
#secImpInfo h3{margin-bottom: 30px; font-size: clamp(20px, 1.55vw, 30px); font-weight: 500; color: #fff;}
#secImpInfo .description{font-size: 18px; color: #fff; line-height: 1.6em;}
#secImpInfo .title-cont .description{margin-bottom: min(70px, 3.6vw); text-align: center;}
#secImpInfo .desc-cont .description, #secImpInfo .detail-cont .description{font-size: 16px; text-align: left;}
#secImpInfo .info-more{display: inline-flex; align-items: center; gap: 10px; padding: 15px 25px; margin-bottom: 46px; border-radius: 50px; color: #fff; font-size: 14px; transition: 0.5s;}
#secImpInfo .imp-t .info-more{background-color: #92b0c8;}
#secImpInfo .imp-t .info-more:hover{background-color: #425d72;}
#secImpInfo .orth-t .info-more{background-color: #425d72;}
#secImpInfo .orth-t .info-more:hover{background-color: #92b0c8;}
#secImpInfo .detail-cont .bg-text{position: absolute; top: 75px; right: 82px; color: rgba(255,255,255,0.5); font-size: min(64px, 3.32vw);}
#secImpInfo .detail-cont .img-cont{display: flex; width: 80%; gap: 3px; margin-bottom: 10px;}
#secImpInfo .detail-cont .img-cont img{position: relative; width: 100%;}
#secImpInfo .detail-cont .img-title{width: 80%; font-size: 14px; color: #fff; text-align: center;}
#secImpInfo .orth-dt .inner{justify-content: flex-end;}
#secImpInfo .orth-dt .flex-cont{display: flex; align-items: flex-end; gap: min(90px, 4.6vw); margin-bottom: min(60px, 3.1vw);}
#secImpInfo .orth-dt .font-goudy{margin-bottom: 23px; font-size: clamp(30px, 2.7vw, 52px); color: #fff;}
#secImpInfo .orth-dt .description{margin-bottom: min(80px, 4.1vw); line-height: 1.75em;}

#secImpInfoMo .grid-cont{display: grid; grid-template-columns: repeat(2, 1fr); grid-template-rows: repeat(2, 1fr);}
#secImpInfoMo .grid-cont.impinfo-1{}
#secImpInfoMo .grid-cont.impinfo-1 .title-cont{display: flex; flex-direction: column; justify-content: center; align-items: center; grid-row: span 2 / span 2; background-image: url(../img/imp_info_bg_01.webp); background-size: cover; background-position: left center; background-repeat: no-repeat;}
#secImpInfoMo .grid-cont.impinfo-1 .title-cont h2{margin-bottom: 27px; text-align: center; font-size: 41px; font-weight: 600; color: #fff;}
#secImpInfoMo .grid-cont.impinfo-1 .title-cont .description{margin-bottom: 70px; text-align: center; font-size: 18px; color: #fff;}
#secImpInfoMo .grid-cont.impinfo-1 .title-cont .info-more{display: inline-flex; padding: 15px 25px; margin-bottom: 46px; gap: 10px; align-items: center; background-color: #92b0c8; font-size: 14px; border-radius: 50px; color: #fff;}
#secImpInfoMo .grid-cont.impinfo-1 .desc-cont{display: flex; flex-direction: column; justify-content: center; padding-left: 150px; background-image: url(../img/r_imp_info_01.webp); background-size: cover; background-repeat: no-repeat; background-position: center; aspect-ratio: 16/9;}
#secImpInfoMo .grid-cont.impinfo-1 .desc-cont h3{margin-bottom: 30px; font-size: 30px; font-weight: 500; color: #fff;}
#secImpInfoMo .grid-cont.impinfo-1 .desc-cont .description{line-height: 1.6em; font-size: 16px; color: #fff;}
#secImpInfoMo .grid-cont.impinfo-1 .detail-cont{position: relative; display: flex; flex-direction: column; justify-content: center; padding-left: 150px; grid-column-start: 2; grid-row-start: 2; aspect-ratio: 16/9; background-color: #5f819c;}
#secImpInfoMo .grid-cont.impinfo-1 .detail-cont .bg-text{position: absolute; top: 75px; right: 82px; color: rgba(255,255,255,0.5); font-size: 64px;}
#secImpInfoMo .grid-cont.impinfo-1 .detail-cont h3{margin-bottom: 30px; font-size: 30px; font-weight: 500; color: #fff;}
#secImpInfoMo .grid-cont.impinfo-1 .detail-cont .description{font-size: 16px; margin-bottom: 30px; color: #fff;}
#secImpInfoMo .grid-cont.impinfo-1 .detail-cont .img-cont{display: flex; width: 80%; gap: 3px; margin-bottom: 10px;}
#secImpInfoMo .grid-cont.impinfo-1 .detail-cont .img-cont img{position: relative; width: 100%;}
#secImpInfoMo .grid-cont.impinfo-1 .detail-cont .img-cont img:not(:last-child):after{position: absolute; top: 50%; right: -10px; width: 20px; height: 20px; background-color: #000; border-radius: 50%; content: '';}
#secImpInfoMo .grid-cont.impinfo-1 .detail-cont .img-title{width: 80%; font-size: 14px; color: #fff; text-align: center;}
#secImpInfoMo .grid-cont.impinfo-2{}
#secImpInfoMo .grid-cont.impinfo-2 .title-cont{display: flex; flex-direction: column; justify-content: center; align-items: center; grid-row: span 2 / span 2; grid-column-start: 2; grid-row-start: 1; background-image: url(../img/imp_info_bg_02.webp); background-size: cover; background-position: center; background-repeat: no-repeat;}
#secImpInfoMo .grid-cont.impinfo-2 .title-cont h2{margin-bottom: 30px; text-align: center; font-size: 41px; font-weight: 600; color: #fff;}
#secImpInfoMo .grid-cont.impinfo-2 .title-cont .description{margin-bottom: 70px; text-align: center; font-size: 18px; color: #fff;}
#secImpInfoMo .grid-cont.impinfo-2 .title-cont .info-more{display: inline-flex; padding: 15px 25px; margin-bottom: 46px; gap: 10px; align-items: center; background-color: #425d72; font-size: 14px; border-radius: 50px; color: #fff;}
#secImpInfoMo .grid-cont.impinfo-2 .desc-cont{display: flex; flex-direction: column; justify-content: center; padding-left: 150px; grid-column-start: 1; grid-row-start: 1; background-image: url(../img/r_imp_info_02.webp); background-size: cover; background-repeat: no-repeat; background-position: center; aspect-ratio: 16/9;}
#secImpInfoMo .grid-cont.impinfo-2 .desc-cont h3{margin-bottom: 30px; font-size: 30px; font-weight: 500; color: #fff;}
#secImpInfoMo .grid-cont.impinfo-2 .desc-cont .description{line-height: 1.6em; font-size: 16px; color: #fff;}
#secImpInfoMo .grid-cont.impinfo-2 .detail-cont{position: relative; display: flex; flex-direction: column; justify-content: end; padding-left: 150px; aspect-ratio: 16/9; background-color: #5f819c;}
#secImpInfoMo .grid-cont.impinfo-2 .detail-cont .bg-text{position: absolute; top: 90px; right: 100px; color: rgba(255,255,255,0.5); font-size: 60px;}
#secImpInfoMo .grid-cont.impinfo-2 .detail-cont h3{margin-bottom: 30px; font-size: 30px; font-weight: 500; color: #fff;}
#secImpInfoMo .grid-cont.impinfo-2 .detail-cont .flex-cont{align-items: end; gap: 90px; margin-bottom: 60px;}
#secImpInfoMo .grid-cont.impinfo-2 .detail-cont .font-goudy{margin-bottom: 23px; font-size: 52px; color: #fff;}
#secImpInfoMo .grid-cont.impinfo-2 .detail-cont .description{line-height: 1.75em; font-size: 16px; margin-bottom: 80px; color: #fff;}

#secSubList{position: relative; background-image: url(../img/sub_list_bg_edit.webp);}
#secSubList::before,
#secSubList::after{position: absolute; content: ''; width: 500px; height: 500px; z-index: 0; background-position: center; background-repeat: no-repeat; background-size: cover; animation: rotate_image 10s linear infinite;}
#secSubList::before{left: -100px; top: 52%; background-image: url(../img/bg_circle_1.webp);}
#secSubList::after{right: -100px; top: 17%; background-image: url(../img/bg_circle_2.webp);}
#secSubList .content-wrap{padding-top: 250px; padding-bottom: 330px;}
#secSubList .text-cont{width: 79%; max-width: 1520px; margin-inline: auto; text-align: left;}
#secSubList .text-cont .title{margin-bottom: 18px; font-size: 18px; color: #94bddd; font-weight: 500;}
#secSubList .text-cont h2{margin-bottom: 30px; font-size: clamp(28px, 2.02vw, 39px); font-weight: 700; letter-spacing: -0.06em;}
#secSubList .text-cont .description{font-size: 17px; font-weight: 400; line-height: 1.7em;}
#secSubList .text-cont .description b{font-size: 19px; font-weight: 700;}
#secSubList .diagonal-slider-wrap{position: relative; width: 100%;overflow: visible;padding: 30px 0;transform: rotate(-8deg);transform-origin: center; margin-top: -25px; z-index: 1;}
#secSubList .img-slider{width: 140%;margin-left: -20%;}
#secSubList .img-slider .swiper-wrapper{transition-timing-function: linear !important; margin: 0 auto;}
#secSubList .img-cont{display: flex;align-items: flex-end;}
#secSubList .swiper-slide{position: relative; width: 490px;list-style: none;flex-shrink: 0;transform: rotate(8deg);transition: transform 0.3s ease;padding: 0 70px;}
#secSubList .swiper-slide img{width: 100%;display: block; margin-top: 20px; margin-bottom: 15px; transition: filter 0.3s;}
#secSubList .img-sub-title{position: absolute; top: 50px; left: 100px; font-size: 22px; color: #fff; z-index: 1;}
#secSubList .img-description{font-size: 17px;color: #000;margin-bottom: 5px;}
#secSubList .img-title{font-size: 23px;font-weight: 700;color: #94bddd;}

#secSpecial{padding-top: 100px; background-color: #f6fbff;}
#secSpecial .description{margin-bottom: 20px; text-align: center; font-size: 17px; font-weight: 500; letter-spacing: -0.025em;}
#secSpecial h2{margin-bottom: 50px; text-align: center; font-size: clamp(27px, 1.55vw, 30px); font-weight: 700;}
#secSpecial h2 .blue{color: #94bddd;}
#secSpecial ul{position: relative; display: flex; flex-direction: column; background-color: #999; background-size: cover; background-position: center; background-repeat: no-repeat; transition: background-image 0.5s ease-in-out;}
#secSpecial ul:has(li:nth-child(1).active){background: url(../img/r_special_bg_1.webp) center/cover no-repeat;}
#secSpecial ul:has(li:nth-child(3).active){background: url(../img/r_special_bg_2.webp) center/cover no-repeat;}
#secSpecial ul:has(li:nth-child(5).active){background: url(../img/r_special_bg_3.webp) center/cover no-repeat;}
#secSpecial ul::before{position: absolute; top: 0; left: 0; display: block; width: 100%; height: 33.33%; background-color: rgba(148, 189, 221, 0.8); z-index: 0; content: ''; transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1); pointer-events: none; transform: translateY(var(--hover-top, 0));}
#secSpecial ul hr{background-color: rgba(255, 255, 255, 0.2); z-index: 1;}
#secSpecial ul li{position: relative; display: grid; grid-template-columns: repeat(10, 1fr); grid-template-rows: 1fr; align-items: center; padding-block: 55px; width: 76.4%; max-width: 1470px; margin-inline: auto; z-index: 1; opacity: 0.3; transition: opacity 0.4s; cursor: pointer;}
#secSpecial ul li.active{opacity: 1;}
#secSpecial ul li .num{text-align: center; font-size: 35px; grid-column: span 2; color: #fff;}
#secSpecial ul li h3{font-size: 30px; font-weight: 500; grid-column: span 4; color: #fff;}
#secSpecial ul li .detail-cont{ grid-column: span 3; color: #fff;}
#secSpecial ul li .detail-cont .sub-title{margin-bottom: 20px; font-size: 20px; font-weight: 500; color: #fff;}
#secSpecial ul li .detail-cont .detail{font-size: 16px; color: #fff;}
#secSpecial ul li a{display: flex; align-items: center; gap: 15px; grid-column: span 1; color: #fff;}
#secSpecial ul li a span{font-size: 20px; text-decoration: underline; text-underline-offset: 3px;}

#secReview{padding-top: 280px;}
#secReview .text-cont{display: flex; align-items: end; gap: 80px; width: 78%; max-width: 1500px; margin-inline: auto; text-align: left; margin-bottom: 30px;}
#secReview .text-cont .title-cont{}
#secReview .text-cont .title-cont .title{margin-bottom: 30px; font-size: 18px; color: #94bddd; font-weight: 500;}
#secReview .text-cont .title-cont h2{font-size: clamp(28px, 2.02vw, 39px); font-weight: 700; letter-spacing: -0.06em;}
#secReview .text-cont .description{flex-grow: 1; font-size: 16px; font-weight: 400; line-height: 1.7em;}
#secReview .text-cont .info-more{display: inline-flex; padding: 15px 30px; gap: 10px; align-items: center; background-color: #eaeff2; font-size: 14px; border-radius: 50px; color: #3b3e41; transition: 0.5s;}
#secReview .text-cont .info-more img{transition: 0.3s;}
#secReview .text-cont .info-more:hover{background-color: #94bddd; color: #fff;}
#secReview .text-cont .info-more:hover img{filter: brightness(0) invert(1);}
#secReview .review-slider{width: 100%; overflow: hidden; padding: 20px 0;}
#secReview .review-slider .swiper-wrapper{transition-timing-function: linear !important; margin: 0 auto;}
#secReview .review-list{display: flex;list-style: none;padding: 0;margin: 0;}
#secReview .review-list li{display: inline-flex; width: 900px; gap: 100px; padding: 50px; transition: transform 0.3s;}
#secReview .review-list li img{width: 100%; aspect-ratio: 1/1; border-radius: 10px;margin-bottom: 80px;display: block;}
#secReview .review-list li .detail-cont{display: flex; flex-direction: column; justify-content: space-between; align-items: start; width: 100%; aspect-ratio: 1/1; margin-top: 80px; background-color: #edf7ff; border-radius: 30px; padding: 35px 25px;}
#secReview .review-list li .sub-title{display: inline-block; padding: 8px 16px; border-radius: 50px; background-color: #d3eafc; margin-bottom: 20px; font-size: 14px; color: #74b1e2; margin-bottom: 10px; font-weight: 600;}
#secReview .review-list li .detail{display: block; font-size: 18px; line-height: 1.6; color: #000; word-break: keep-all; font-weight: 600; flex-grow: 1;}
#secReview .review-list li .writer{font-size: 17px; color: #aaa;}

#secIntrr{padding-top: 150px; padding-bottom: 300px;}
#secIntrr .text-cont{display: flex; align-items: end; gap: 80px; width: 78%; max-width: 1500px; margin-inline: auto; margin-bottom: 100px; text-align: left;}
#secIntrr .text-cont .title-cont{}
#secIntrr .text-cont .title-cont .title{margin-bottom: 30px; font-size: 18px; color: #94bddd; font-weight: 500;}
#secIntrr .text-cont .title-cont h2{font-size: clamp(28px, 2.02vw, 39px); font-weight: 700; letter-spacing: -0.06em;}
#secIntrr .text-cont .description{flex-grow: 1; font-size: 16px; font-weight: 400; line-height: 1.7em;}
#secIntrr .text-cont .info-more{display: inline-flex; padding: 15px 30px; gap: 10px; align-items: center; background-color: #eaeff2; font-size: 14px; border-radius: 50px; color: #3b3e41; transition: 0.5s;}
#secIntrr .text-cont .info-more img{transition: 0.3s;}
#secIntrr .text-cont .info-more:hover{background-color: #94bddd; color: #fff;}
#secIntrr .text-cont .info-more:hover img{filter: brightness(0) invert(1);}
#secIntrr .intrr-gallery-container{position: relative; margin: 0 auto;}
#secIntrr .intrr-main{width: 100%; overflow: visible !important;}
#secIntrr .intrr-main .swiper-slide{transition: all 0.5s; transform: scale(0.8); opacity: 0.4; overflow: hidden;}
#secIntrr .intrr-main .swiper-slide-active{transform: scale(1); opacity: 1; z-index: 10;}
#secIntrr .intrr-main .swiper-slide img{width: 100%; height: auto; object-fit: cover; aspect-ratio: 478/247;}
#secIntrr .intrr-main .swiper-button-prev, #secIntrr .intrr-main .swiper-button-next{color: #000; width: min(65px, 3.37vw); height: min(65px, 3.37vw); top: 50%; margin-top: 0; z-index: 20;}
#secIntrr .intrr-thumbs{position: absolute; bottom: -30px; left: 50%; transform: translateX(-50%); width: 100%; max-width: 600px; margin-inline: auto; z-index: 1; overflow: hidden;}
#secIntrr .intrr-thumbs .swiper-wrapper{transform: none; display: flex; justify-content: unset;}
#secIntrr .intrr-thumbs .swiper-slide{width: calc((100% - 40px) / 5); aspect-ratio: 4/3; cursor: pointer; filter: brightness(0.4) grayscale(0.2); overflow: hidden; transition: 0.5s;}
#secIntrr .intrr-thumbs .swiper-slide.on{border: 2px solid #74b1e2; filter: brightness(1) grayscale(0);}
#secIntrr .intrr-thumbs .swiper-slide img{width: 100%; object-fit: cover; aspect-ratio: 4/3;}
#secIntrr .intrr-thumbs .swiper-slide-thumb-active{opacity: 1; border: 2px solid #222;}
#secIntrr .intrr-main .swiper-button-prev{left: 50%; right: auto; margin-top: 0; transform: translateY(-50%);}
#secIntrr .intrr-main .swiper-button-next{right: 50%; left: auto; margin-top: 0; transform: translateY(-50%);}
#secIntrr .swiper-button-next:after, #secIntrr .swiper-button-prev:after{content:'' !important; width: min(65px, 3.37vw); height: min(65px, 3.37vw); background-image: url(../img/arrow_gr.png); background-position: center; background-size: cover; background-repeat: no-repeat;}
#secIntrr .swiper-button-prev:after{rotate: 180deg;}


#secSubList .diagonal-slider-wrap{cursor: none; user-select: none;}
#secReview .review-slider{cursor: none; user-select: none;}
#customCursor{position: fixed; top: 0; left: 0; width: 100px; height: 100px; pointer-events: none; z-index: 9999; opacity: 0; transition: opacity 0.2s ease;}
#customCursor img{width: 100%; height: auto; display: block;}
#customCursor.active{opacity: 1;}
/* main 끝 */

footer{border-top: 2px solid #e7e7e7;}
.footer_inner{display: flex; width: 85.75%; max-width: 1650px; margin-inline: auto;}
.footer_inner .contact-cont{flex: 4; display: flex; flex-direction: column; justify-content: space-between; gap: 130px; padding-block: 65px;}
.footer_inner .contact-cont .top-cont{}
.footer_inner .contact-cont .top-cont .title{font-size: 22px; margin-bottom: 23px;}
.footer_inner .contact-cont .top-cont .detail{}
.footer_inner .contact-cont .top-cont .detail li{margin-bottom: 10px; font-size: 15px;}
.footer_inner .contact-cont .btm-cont{}
.footer_inner .contact-cont .btm-cont ul{display: flex; gap: 20px; margin-bottom: 50px;}
.footer_inner .contact-cont .btm-cont ul li{font-size: 15px;}
.footer_inner .contact-cont .btm-cont img{}
.footer_inner .contact-cont{}
.footer_inner .contact-cont{}
.footer_inner .time-info-cont{flex: 6; border-left: 2px solid #e7e7e7; border-right: 2px solid #e7e7e7; padding-block: 65px; padding-left: 110px;}
.footer_inner .time-info-cont .title{margin-bottom: 30px; font-size: 18px; font-weight: 500;}
.footer_inner .time-info-cont .description{margin-bottom: 10px;}
.footer_inner .time-info-cont .description li{margin-bottom: 11px;}
.footer_inner .time-info-cont .description li .day{display: inline-block; min-width: 110px; margin-right: 40px; text-align-last: justify; font-size: 16px;}
.footer_inner .time-info-cont .description li .time{font-size: 18px;}
.footer_inner .time-info-cont .description li .time em{font-size: 16px;}
.footer_inner .time-info-cont .add-info{font-size: 13px; margin-bottom: 5px;}
.footer_inner .time-info-cont .naver-place{display: inline-flex; gap: 5px; align-items: center; margin-top: 30px; border: 1px solid #57bf4c; border-radius: 50px; padding: 10px 15px;}
.footer_inner .time-info-cont .naver-place img{}
.footer_inner .time-info-cont .naver-place span{font-size: 13px;}
.footer_inner .way-info-cont{flex: 6; padding-block: 65px; padding-left: 80px;}
.footer_inner .way-info-cont .title{margin-bottom: 30px; font-size: 18px; font-weight: 500;}
.footer_inner .way-info-cont .description{margin-bottom: 10px; font-size: 16px; font-weight: 500;}
.footer_inner .way-info-cont .detail{margin-bottom: 20px; font-size: 15px;}
.footer_inner .way-info-cont .add-info{margin-bottom: 50px; font-size: 15px;}
.footer_inner .way-info-cont .metro-info{display: flex; gap: 10px; align-items: center; margin-bottom: 10px; font-size: 16px;}
.footer_inner .way-info-cont .bus-info{display: flex; margin-bottom: 40px; gap: 10px; align-items: start;}
.footer_inner .way-info-cont .bus-info span{font-size: 16px;}
.footer_inner .way-info-cont .bus-info span em{display: block; font-size: 14px;}
.footer_inner .way-info-cont .map-cont{display: flex; gap: 10px;}
.footer_inner .way-info-cont .map-cont .map-naver{padding: 10px 30px; background-color: #0fa400; border-radius: 50px; font-size: 16px; color: #fff;}
.footer_inner .way-info-cont .map-cont .map-kakao{padding: 10px 30px; background-color: #ffdc11; border-radius: 50px; font-size: 16px; color: #000;}
.copy-cont{border-top: 2px solid #e7e7e7; padding-block: 30px;}
.copy-cont .copyright{text-align: center; font-size: 14px; color: #828282;}

.quick-btn-area{position: relative; background-color: #95bede;}
.quick-wrap.is-active .quick-btn-area{background-color: #425c71;}
.quick-btn-area img{position: absolute; top: 50%; left: 50%; translate: -50% -50%; width: 90%; height: 90%;}
.quick-btn-area img.img-quick-rotate{animation: rotate_image 8s linear infinite;}
.quick-btn-area img.img-quick{width: 60%; height: 60%;}
.quick-btn-area img.quick-center-off{opacity: 1; transition: 0.5s;}
.quick-btn-area img.quick-center-on{opacity: 0; transition: 0.5s;}
.quick-wrap.is-active .quick-btn-area img.quick-center-off{opacity: 0;}
.quick-wrap.is-active .quick-btn-area img.quick-center-on{opacity: 1;}
/* 애니메이션 시작*/
/* 하 to 상 */
@keyframes slideUpFade {
    from {opacity: 0;transform: translateY(50px);}
    to {opacity: 1;transform: translateY(0);}
}
/* 좌 to 우 */
@keyframes slideLeftFade {
    from {opacity: 0;transform: translateX(-50px);}
    to {opacity: 1;transform: translateX(0);}
}
/* 우 to 좌 */
@keyframes slideRightFade {
    from {opacity: 0;transform: translateX(50px);}
    to {opacity: 1;transform: translateX(0);}
}
@keyframes fadeIn {
    from {opacity: 0;}
    to {opacity: 1;}
}

@keyframes zoomOut{
    from{transform: scale(1.1);}
    to{transform: scale(1);}
}

@keyframes zoomInFade {
    from {opacity: 0;transform: scale(1.1);}
    to {opacity: 1;transform: scale(1);}
}

@keyframes marquee{
    from{transform: translateX(0);}
    to{transform: translateX(-50%);}
}

@keyframes marquee-diag{
    from{transform: translateX(0);}
    to{transform: translateX(-50%);}
}

@keyframes rotate_image {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

.reveal-up {opacity: 0;animation-duration: 1s; animation-timing-function: ease-out; animation-fill-mode: forwards;}
.reveal-up.active {animation-name: slideUpFade;}
.reveal-left {opacity: 0; animation-duration: 1s; animation-timing-function: ease-out; animation-fill-mode: forwards;}
.reveal-left.active {animation-name: slideLeftFade;}
.reveal-right {opacity: 0; animation-duration: 1s; animation-timing-function: ease-out; animation-fill-mode: forwards;}
.reveal-right.active {animation-name: slideRightFade;}
.reveal-bg {opacity: 0; animation-duration: 1.2s; animation-timing-function: ease-in-out; animation-fill-mode: forwards;}
.reveal-bg.active {animation-name: fadeIn;}
.reveal-zoom-in {opacity: 0; animation-duration: 1.5s; animation-timing-function: ease-out; animation-fill-mode: forwards;}
.reveal-zoom-in.active {animation-name: zoomInFade;}

.delay-1 { animation-delay: 0.2s; }
.delay-2 { animation-delay: 0.35s; }
.delay-3 { animation-delay: 0.5s; }
.delay-4 { animation-delay: 0.65s; }
.delay-5 { animation-delay: 0.8s; }
.delay-6 { animation-delay: 0.95s; }

.pc-delay-1 { animation-delay: 0.2s; }
.pc-delay-2 { animation-delay: 0.35s; }
.pc-delay-3 { animation-delay: 0.5s; }
.pc-delay-4 { animation-delay: 0.65s; }
.pc-delay-5 { animation-delay: 0.8s; }
/* 애니메이션 끝*/

@media(max-width: 1024px){
    .pc{display: none !important;}
    .mo{display: block !important;}
    .mo-flex{display: flex !important;}
    .mo-inline{display: inline !important;}
    .mo-grid{display: grid !important;}

    header .header-cont{max-width: 90%; margin-inline: auto;}
    header .header-cont .header-center .header-logo{max-width: 200px;}
    header .header-cont .header-right #btnMenu{background-color: #95bede; border-color: #95bede;}
    header .header-cont .header-right #btnMenu .ham>span{width: 15px; height: 2px; margin-bottom: 3px; background-color: #fff;}
    header .header-cont .header-right #btnMenu>span{font-size: 17px; color: #fff;}

    header nav{width: 100%;}
    header nav .nav-top{justify-content: space-between;}
    header nav .nav-top .header-logo{width: 100%; max-width: 200px;}
    header nav .nav-top #btnMenuCls>span{font-size: 17px;}
    header nav .nav-mid{width: 87%; padding-top: 0; padding-bottom: 60px;}
    header nav .nav-mid .member-ul{display: flex; padding-block: 20px; justify-content: end;}
    header nav .nav-mid .member-ul li a{padding-inline: 10px; color: #fff;}
    header nav .nav-mid .member-ul li:nth-child(1){border-right: 1px solid #fff;}
    header nav .nav-mid .nav-list{height: 45vh; overflow-y: scroll; gap: 25px;}
    header nav .nav-mid .nav-list>li{flex-direction: column; align-items: start; gap: 10px;}
    header nav .nav-mid .nav-list>li .nav-title{font-weight: 700; color: #c1e4ff; font-size: 18px;}
    header nav .nav-mid .nav-list>li .nav-item li a{font-size: 13px;}
    header nav .nav-btm{width: 87%;}
    header nav .nav-btm:before{width: 90px; height: 90px;}
    header nav .nav-btm ul li a{width: auto;}
    header nav .nav-btm ul li a img{width: 38px;}
    header nav .nav-btm ul li a span{display: none;}

    #intro{flex-direction: column; gap: 10px;}
    #intro span.intro-text{font-size: 18px; font-weight: 400;}
    #intro span.line{display: none;}
    #intro h1{font-size: 30px; font-weight: 500;}

    #secHero .hero-bg-group .bg1{background: url(../img/260407_m_main_bg_01.webp) top/cover no-repeat;}
    #secHero .hero-bg-group .bg2{background: url(../img/r_m_main_bg_02.webp) top/cover no-repeat;}
    #secHero .content-wrap{padding-top: 300px; padding-bottom: 0; height: calc(100svh - 300px); justify-content: start; gap: 40px; width: 100%;}
    #secHero .text-cont li{min-height: 300px;}
    #secHero.hero1 .text-cont .description{font-size: 16px; letter-spacing: unset;}
    #secHero.hero1 .text-cont h2{gap: 25px; font-size: 36px;}
    #secHero.hero1 .text-cont h2 span{width: 80px; background-color: #c7c5c3;}
    #secHero.hero1 .text-cont .detail{font-size: 13px;}
    #secHero.hero2 .text-cont .description{font-size: 16px; letter-spacing: unset; text-align: center;}
    #secHero.hero2 .text-cont h2{gap: 25px; font-size: 30px; text-align: center;}
    #secHero.hero2 .text-cont .detail{font-size: 13px; text-align: center;}
    #secHero.hero3 .text-cont .description{font-size: 16px; letter-spacing: unset; text-align: center;}
    #secHero.hero3 .text-cont h2{gap: 25px; font-size: 30px; text-align: center;}
    #secHero.hero3 .text-cont .detail{font-size: 13px; text-align: center;}
    #secHero .page-cont{justify-content: center; gap: 10px;}
    #secHero .page-cont .button-cont>button{width: 35px; height: 35px;}
    #secHero .page-cont .hero-list{gap: 10px;}
    #secHero .hero-list.mo{display: flex !important; align-items: center; gap: 5px; color: #fff; z-index: 10;}
    #secHero .hero-list.mo span{font-size: 14px; font-weight: 500; min-width: 10px; text-align: center;}
    #secHero .hero-list.mo .progress-bar{position: relative; width: 90px; height: 2px; background: rgba(255, 255, 255, 0.3); border-radius: 2px; overflow: hidden;}
    #secHero .hero-list.mo .progress-bar::after{content: ''; position: absolute; top: 0; left: 0; height: 100%; width: 0%; background: #fff;}
    #secHero .hero-list.mo .progress-bar.filling::after{width: 100%; transition: width 5s linear;}

    #secDocInfo .content-wrap{padding-top: 150px;}
    #secDocInfo .text-cont .title{margin-bottom: 15px; font-size: 15px;}
    #secDocInfo .text-cont h2{font-size: 28px;}
    #secDocInfo .text-cont .description{font-size: 14px;}
    #secDocInfo .text-cont .info-more{padding: 8px 20px; font-size: 12px;}
    #secDocInfo .content-wrap{overflow: hidden; touch-action: pan-y;}
    #secDocInfo .doc-list{display: flex; width: 100%; margin-bottom: 30px; padding: 40px 0; list-style: none; gap: 0; transition: transform 0.3s ease-out; will-change: transform; max-width: unset; aspect-ratio: unset;}
    #secDocInfo .doc-list .slick-arrow{display: none !important;}
    #secDocInfo .doc-list .slick-list{overflow: visible;}
    #secDocInfo .doc-list li{flex: 0 0 55%; box-sizing: border-box; transform: scale(0.65); transition: all 0.3s; overflow: hidden; position: relative; user-select: none;}
    #secDocInfo .doc-list li.slick-center{transform: scale(1.1); opacity: 1; z-index: 2; box-shadow: 0 10px 20px rgba(0,0,0,0.2);}
    #secDocInfo .doc-list li.slick-center img{filter: grayscale(0);}
    #secDocInfo .doc-list li.slick-center .img-text-cont{padding-top: 40px; opacity: 1;}
    #secDocInfo .doc-list li .img-title{font-size: 16px;}
    #secDocInfo .bg-text-flow{font-size: 60px;}

    #secStory .text-cont .title{margin-bottom: 15px; font-size: 15px;}
    #secStory .text-cont h2 em{font-size: 23px;}
    #secStory .text-cont h2{font-size: 28px;}
    #secStory .text-cont .description{font-size: 14px;}
    #secStory .text-cont .info-more{padding: 8px 20px; font-size: 12px;}
    #secStory .video-cont{margin-bottom: 120px;aspect-ratio: 320/570;}
    #secStory .img-box.first{aspect-ratio: 320/570;}

    #secImpInfoMo .grid-cont.impinfo-1,
    #secImpInfoMo .grid-cont.impinfo-2{display: flex; flex-direction: column;}
    #secImpInfoMo .grid-cont.impinfo-1 .title-cont{padding-block: 60px; gap: 25px;}
    #secImpInfoMo .grid-cont.impinfo-1 .title-cont h2{margin-bottom: 0; font-size: 25px; font-weight: 500;}
    #secImpInfoMo .grid-cont.impinfo-1 .title-cont .description{margin-bottom: 0; font-size: 13px;}
    #secImpInfoMo .grid-cont.impinfo-1 .title-cont .info-more{margin-bottom: 0; padding: 8px 20px; font-size: 12px;}
    #secImpInfoMo .grid-cont.impinfo-1 .desc-cont{aspect-ratio: 3 / 2; padding-left: 0; padding-block: 30px; justify-content: end; background-image: url(../img/m_imp_info_01.webp);}
    #secImpInfoMo .grid-cont.impinfo-1 .desc-cont h3{width: 100%; max-width: 85%; margin-inline: auto; margin-bottom: 10px; font-size: 20px;}
    #secImpInfoMo .grid-cont.impinfo-1 .desc-cont .description{width: 100%; max-width: 85%; margin-inline: auto; font-size: 13px;}
    #secImpInfoMo .grid-cont.impinfo-1 .detail-cont{aspect-ratio: 3 / 2; padding-left: 0; padding-block: 30px;}
    #secImpInfoMo .grid-cont.impinfo-1 .detail-cont h3{width: 100%; max-width: 85%; margin-inline: auto; margin-bottom: 10px; font-size: 20px;}
    #secImpInfoMo .grid-cont.impinfo-1 .detail-cont .description{width: 100%; max-width: 85%; margin-inline: auto; font-size: 13px;}
    #secImpInfoMo .grid-cont.impinfo-1 .detail-cont .bg-text{top: 15px; right: 30px; font-size: 34px;}
    #secImpInfoMo .grid-cont.impinfo-1 .detail-cont .img-cont{width: 85%; gap: 3px; margin-bottom: 10px; margin-inline: auto;}
    #secImpInfoMo .grid-cont.impinfo-1 .detail-cont .img-cont img{width: 33.33%;}
    #secImpInfoMo .grid-cont.impinfo-1 .detail-cont .img-title{width: 100%;}
    #secImpInfoMo .grid-cont.impinfo-2 .title-cont{padding-block: 60px; gap: 25px;}
    #secImpInfoMo .grid-cont.impinfo-2 .title-cont h2{margin-bottom: 0; font-size: 25px; font-weight: 500;}
    #secImpInfoMo .grid-cont.impinfo-2 .title-cont .description{margin-bottom: 0; font-size: 13px;}
    #secImpInfoMo .grid-cont.impinfo-2 .title-cont .info-more{margin-bottom: 0; padding: 8px 20px; font-size: 12px;}
    #secImpInfoMo .grid-cont.impinfo-2 .desc-cont{aspect-ratio: 3 / 2; padding-left: 0; padding-block: 30px; justify-content: end;}
    #secImpInfoMo .grid-cont.impinfo-2 .desc-cont h3{width: 100%; max-width: 85%; margin-inline: auto; margin-bottom: 10px; font-size: 20px;}
    #secImpInfoMo .grid-cont.impinfo-2 .detail-cont .font-goudy{font-size: 26px;}
    #secImpInfoMo .grid-cont.impinfo-2 .desc-cont .description{width: 100%; max-width: 85%; margin-inline: auto; font-size: 13px;}
    #secImpInfoMo .grid-cont.impinfo-2 .detail-cont{aspect-ratio: 3 / 2; padding-left: 0; padding-block: 30px; justify-content: center;}
    #secImpInfoMo .grid-cont.impinfo-2 .detail-cont h3{width: 100%; max-width: 85%; margin-inline: auto; margin-bottom: 10px; font-size: 20px;}
    #secImpInfoMo .grid-cont.impinfo-2 .detail-cont .flex-cont{width: 85%; margin-inline: auto; gap: 10px; margin-bottom: 0;}
    #secImpInfoMo .grid-cont.impinfo-2 .detail-cont .description{margin-bottom: 0; font-size: 13px;}
    #secImpInfoMo .grid-cont.impinfo-2 .detail-cont img{width: 35%; margin-bottom: 30px;}
    #secImpInfoMo .grid-cont.impinfo-2 .detail-cont .img-title{width: 100%;}

    #secSubList{background-position: center bottom;}
    #secSubList::before,
    #secSubList::after{content: unset !important;}
    #secSubList .content-wrap{padding-top: 130px; padding-bottom: 40px;}
    #secSubList .text-cont{width: 100%; max-width: 1520px;}
    #secSubList .text-cont .title{margin-bottom: 15px; font-size: 15px; text-align: center;}
    #secSubList .text-cont h2{font-size: 28px; text-align: center;}
    #secSubList .text-cont .description{font-size: 14px; text-align: center;}
    #secSubList .text-cont .description b{font-size: 14px; text-align: center;}
    #secSubList .img-cont.mo-grid{display: grid; grid-template-columns: repeat(2, 1fr); grid-template-rows: repeat(10, 1fr); grid-column-gap: 25px; grid-row-gap: 0px; list-style: none; padding: 0; margin-inline: auto; width: 85%;}
    #secSubList .img-cont.mo-grid li{position: relative;}
    #secSubList .img-cont.mo-grid li:nth-child(1){grid-area: 1 / 1 / 4 / 2;}
    #secSubList .img-cont.mo-grid li:nth-child(2){grid-area: 4 / 1 / 7 / 2;}
    #secSubList .img-cont.mo-grid li:nth-child(3){grid-area: 7 / 1 / 10 / 2;}
    #secSubList .img-cont.mo-grid li:nth-child(4){grid-area: 2 / 2 / 5 / 3;}
    #secSubList .img-cont.mo-grid li:nth-child(5){grid-area: 5 / 2 / 8 / 3;}
    #secSubList .img-cont.mo-grid li img{width: 100%;display: block; margin-top: 20px; margin-bottom: 8px; transition: filter 0.3s;}
    /* #secSubList .img-cont.mo-grid li:nth-child(4) img,
    #secSubList .img-cont.mo-grid li:nth-child(5) img{margin-top: 0;}} */
    #secSubList .img-cont.mo-grid .img-sub-title{position: absolute; top: 40px; left: 10px; font-size: 15px; color: #fff; z-index: 1;}
    #secSubList .img-cont.mo-grid .img-description{font-size: 13px;color: #000;margin-bottom: 5px;}
    #secSubList .img-cont.mo-grid .img-title{font-size: 19px;font-weight: 700;color: #94bddd;}

    #secSpecial .description{font-size: 14px;}
    #secSpecial h2{margin-bottom: 30px; font-size: 27px;}
    #secSpecial ul{background-color: #334655;}
    #secSpecial ul:has(li:nth-child(1).active){background: url(../img/r_m_special_bg_1.webp) center/cover no-repeat;}
    #secSpecial ul:has(li:nth-child(3).active){background: url(../img/r_m_special_bg_2.webp) top/cover no-repeat;}
    #secSpecial ul:has(li:nth-child(5).active){background: url(../img/r_m_special_bg_3.webp) center/cover no-repeat;}
    #secSpecial ul li{display: grid; max-width: 85%; width: 100%; padding-block: 30px; margin-inline: auto; grid-template-columns: repeat(7, 1fr);}
    #secSpecial ul li .num,
    #secSpecial ul li a{display: none;}
    #secSpecial ul li h3{grid-column: span 3; font-size: 16px;}
    #secSpecial ul li .detail-cont{grid-column: span 4;}
    #secSpecial ul li .detail-cont .sub-title{font-size: 14px;}
    #secSpecial ul li .detail-cont .detail{font-size: 12px;}

    #secReview{padding-top: 120px;}
    #secReview .content-wrap{padding-top: 130px; padding-bottom: 40px;}
    #secReview .text-cont{flex-direction: column; align-items: center; gap: 30px; margin-bottom: 40px; width: 100%; max-width: 1500px;}
    #secReview .text-cont .title-cont .title{margin-bottom: 15px; font-size: 15px; text-align: center;}
    #secReview .text-cont .title-cont h2{font-size: 28px; text-align: center;}
    #secReview .text-cont .description{font-size: 14px; text-align: center;}
    #secReview .text-cont .info-more{padding: 8px 20px; font-size: 12px;}
    #secReview .review-list li{width: 90vw; aspect-ratio: 5/4; gap: 20px; padding: 0;}
    #secReview .review-list li img{width: calc(50% - 10px); margin-bottom: 40px; aspect-ratio: 4/5; object-fit: cover; border-radius: 15px;}
    #secReview .review-list li .detail-cont{width: calc(50% - 10px); margin-top: 40px; aspect-ratio: 4/5; padding: 15px 10px 25px; border-radius: 15px;}
    #secReview .review-list li .detail-cont .sub-title{padding: 4px 8px; font-size: 12px;}
    #secReview .review-list li .detail-cont .detail{width: 100%; aspect-ratio: 1/1; word-break: keep-all; font-size: 14px; overflow: hidden;}
    #secReview .review-list li .detail-cont .detail br{display: none;}
    #secReview .review-list li .detail-cont .writer{font-size: 14px;}
    
    #secIntrr{padding-top: 120px; padding-bottom: 120px; background: linear-gradient(to top, rgba(245, 249, 252, 1) 0%, rgba(245, 249, 252, 1) 40%, rgba(245, 249, 252, 0) 40%, rgba(245, 249, 252, 0) 100%);}
    #secIntrr .content-wrap{padding-top: 130px; padding-bottom: 40px;}
    #secIntrr .text-cont{flex-direction: column; align-items: center; gap: 30px; margin-bottom: 40px; width: 100%; max-width: 1500px;}
    #secIntrr .text-cont .title-cont .title{margin-bottom: 15px; font-size: 15px; text-align: center;}
    #secIntrr .text-cont .title-cont h2{font-size: 28px; text-align: center;}
    #secIntrr .text-cont .description{font-size: 14px; text-align: center;}
    #secIntrr .text-cont .info-more{padding: 8px 20px; font-size: 12px;}
    #secIntrr .intrr-main{aspect-ratio: 213/110;}
    #secIntrr .intrr-main .swiper-slide:not(.swiper-slide-active){opacity: 0;}
    #secIntrr .intrr-main .swiper-slide-active{width: 100% !important; translate: -25%;}
    #secIntrr .intrr-thumbs{position: unset; translate: unset; width: 70%; margin-top: 20px; transform: unset;}
    #secIntrr .intrr-thumbs .swiper-slide{width: calc(25% - 5px); margin-right: 5px !important;}
    #secIntrr .intrr-thumbs .swiper-slide:last-child{margin-right: 0 !important;}
    #secIntrr .intrr-main .swiper-button-prev, #secIntrr .intrr-main .swiper-button-next{width: 30px; height: 30px; top: 90%;}
    #secIntrr .swiper-button-next:after, #secIntrr .swiper-button-prev:after{width: 30px; height: 30px; background-size: contain;}
    
    footer{border-top: 0;}
    footer .mo.logo-cont{width: 100%; max-width: 89%; margin-inline: auto; padding: 100px 0 30px;}
    footer .mo.logo-cont img{width: 100%; max-width: 260px;}
    .footer_inner{width: 100%; max-width: unset;}
    .footer_inner .time-info-cont{order: 1; padding-left: 0; padding-block: 20px; border-left: 0; border-right: 0; border-bottom: 2px solid #e7e7e7;}
    .footer_inner .time-info-cont .title{font-size: 16px;}
    .footer_inner .way-info-cont{order: 2; padding-left: 0; padding-block: 20px; border-bottom: 2px solid #e7e7e7;}
    .footer_inner .way-info-cont .title{font-size: 16px;}
    .footer_inner .way-info-cont .detail{font-size: 13px;}
    .footer_inner .way-info-cont .add-info{font-size: 12px;}
    .footer_inner .way-info-cont .metro-info{font-size: 13px;}
    .footer_inner .way-info-cont .metro-info img{max-width: 16px;}
    .footer_inner .way-info-cont .bus-info img{max-width: 16px;}
    .footer_inner .way-info-cont .bus-info span{font-size: 13px;}
    .footer_inner .way-info-cont .bus-info span em{margin-top: 5px; font-size: 13px;}
    .footer_inner .way-info-cont .map-cont .map-naver{padding: 8px 27px; font-size: 14px;}
    .footer_inner .way-info-cont .map-cont .map-kakao{padding: 8px 27px; font-size: 14px;}
    .footer_inner .contact-cont{order: 3; padding-block: 20px; gap: 20px;}
    .footer_inner .contact-cont .title{font-size: 16px;}
    .footer_inner .contact-cont .btm-cont ul{margin-bottom: 0;}
    .copy-cont{border-top: 0;}
    .copy-cont .copyright{width: 100%; max-width: 89%; margin-inline: auto; text-align: left; font-size: 12px;}

    #customCursor{display: none !important;}

    /* 애니메이션 시작 */
    .pc-delay-1 { animation-delay: unset; }
    .pc-delay-2 { animation-delay: unset; }
    .pc-delay-3 { animation-delay: unset; }
    .pc-delay-4 { animation-delay: unset; }
    .pc-delay-5 { animation-delay: unset; }
    .mo-delay-1 { animation-delay: 0.2s; }
    .mo-delay-2 { animation-delay: 0.35s; }
    .mo-delay-3 { animation-delay: 0.5s; }
    .mo-delay-4 { animation-delay: 0.65s; }
    .mo-delay-5 { animation-delay: 0.8s; }
    /* 애니메이션 끝 */
}