@charset "utf-8";
html, body {display:block;scroll-behavior:smooth}
.doc-wrap {color:#000;font-size:18px;font-weight:400;min-width:320px;line-height:1.3;font-family:'Spoqa Han Sans Neo', sans-serif;overflow-x:hidden;overflow-y:auto;margin:0 auto;box-sizing:border-box}

@media all and (max-width:999px) {
	.doc-wrap {font-size:17px}
}
@media all and (max-width:768px) {
	.doc-wrap {font-size:15px}
}
@media all and (max-width:599px) {
	.doc-wrap {font-size:14px}
}

/* ==============================
 * header
================================= */
#header-wrap {position:relative;width:100%;box-sizing:border-box;z-index:9999;transition:0.6s transform, 0.4s padding-bottom}

/* ==============================
 * main
================================= */
main {margin-top:-90px}
#main .main-sec {position:relative}
/* .main-sec1, .main-sec2 {height:100vh;height:100dvh;height:calc(var(--vh, 1vh) * 100)} */

@media all and (max-width:999px) {
	main {margin-top:-70px}
}

/* ==============================
 * main 섹션1
================================= */
.main-sec1 {}
.main-sec1 .mVisual-wr {}
.mVisual-wr button {background-color:transparent;border:0}

.mVisual-wr .swiper-slide {position:relative}
.mVisual-wr .swiper-slide img {width:100%;max-width:100%}
.mVisual-wr .swiper-slide .txt-box {position:absolute;left:13.281%;top:50%;transform:translateY(-50%)}
.mVisual-wr .txt-box > span {display:block;color:#fff;font-weight:700;margin-bottom:30px;word-break:keep-all}
.mVisual-wr .txt-box .s-tit {font-size:1.11em;font-family:"Inter"}
.mVisual-wr .txt-box .tit {font-size:52px}
.mVisual-wr .txt-box .mbtn {display:inline-block;position:relative;border:1px solid #fff;border-radius:30px;padding:15px 30px 15px;box-sizing:border-box;overflow:hidden}
.mVisual-wr .txt-box .mbtn:before {content:"";display:block;position:absolute;width:110%;height:110%;background-color:#fff;transform:translateX(-120%);left:0;top:-5%;border-radius:40px;z-index:-1;transition:transform .6s ease}
.mVisual-wr .txt-box .mbtn span {color:#fff;font-weight:700;transition:color .6s ease}

.mVisual-wr .data-pkg {position:absolute;left:13.281%;bottom:70px;display:flex;align-items:center;padding:0 56px}
.mVisual-wr .data-ctrl {width:100%;z-index:1}
.mVisual-wr .data-ctrl > button {display:block;position:absolute;background:none;border:0;width:25px;height:25px;top:50%;transform:translate(0,-50%);margin:0 -7px;transition:transform .3s ease}
.mVisual-wr .data-ctrl > button:before,
.mVisual-wr .data-ctrl > button:after {content:"";display:block;position:absolute;left:0;right:0;top:0;bottom:0;margin:auto}
.mVisual-wr .data-ctrl > button:before,
.mVisual-wr .data-ctrl > button:after {background:#fff;border:0;width:2px;height:14px}
.mVisual-wr .data-ctrl > .btn-prev {left:0}
.mVisual-wr .data-ctrl > .btn-next {right:0}
.mVisual-wr .data-ctrl > .btn-prev:before {transform:translateY(-35%) rotate(39deg)}
.mVisual-wr .data-ctrl > .btn-prev:after {transform:translateY(35%) rotate(-39deg)}
.mVisual-wr .data-ctrl > .btn-next:before {transform:translateY(35%) rotate(39deg)}
.mVisual-wr .data-ctrl > .btn-next:after {transform:translateY(-35%) rotate(-39deg)}
.mVisual-wr .data-pkg .swiper-pagination {position:static;display:flex}
.mVisual-wr .data-pkg .swiper-pagination > span {width:12px;height:12px;background-color:transparent;border:1px solid #fff;margin:0 10px;opacity:1;box-sizing:border-box}
.mVisual-wr .data-pkg .swiper-pagination > span:nth-child(1) {margin-left:0}
.mVisual-wr .data-pkg .swiper-pagination > span:last-child {margin-right:0}
.mVisual-wr .data-pkg .swiper-pagination > .swiper-pagination-bullet-active {background-color:#fff}
.mVisual-wr .data-pkg .data-auto {position:relative;flex-shrink:0;width:7px;height:10px;margin-left:20px;box-sizing:border-box;z-index:1}
.mVisual-wr .data-auto.disabled {display:none}
.mVisual-wr .data-auto > button {position:absolute;left:0;top:0}
.mVisual-wr .data-auto > .btn-play {display:none;width:0;height:0;border:solid;border-width:6px 0 6px 9px;border-color:transparent transparent transparent #fff;top:-1px}
.mVisual-wr .data-auto > .btn-stop {width:7px;height:10px;border-left:2px solid #fff;border-right:2px solid #fff}

/* 효과 */
.mVisual-wr .swiper-slide .txt-box > span {transform:translateY(50px);opacity:0;transition:transform 1.2s ease, opacity 1s ease, font-size 1s ease}
.mVisual-wr .swiper-slide .txt-box > span:nth-child(1) {transition-delay:0s}
.mVisual-wr .swiper-slide .txt-box > span:nth-child(2) {transition-delay:.3s}
.mVisual-wr .swiper-slide.swiper-slide-active .txt-box > span {transform:translateY(0);opacity:1}
.mVisual-wr .swiper-slide .txt-box > .mbtn {transform:translateY(50px);opacity:0;transition:transform 1.2s ease, opacity 1s ease;transition-delay:.6s}
.mVisual-wr .swiper-slide.swiper-slide-active .txt-box > .mbtn {transform:translateY(0);opacity:1}

/* 호버 */
@media(hover: hover) {
	.mVisual-wr .txt-box .mbtn:hover:before {transform:translateX(0)}
	.mVisual-wr .txt-box .mbtn:hover span {color:#444}
	.mVisual-wr .data-ctrl > .btn-prev:hover {transform:translate(-6px,-50%)}
	.mVisual-wr .data-ctrl > .btn-next:hover {transform:translate(6px,-50%)}
}
@media all and (max-width:1299px) {
	.mVisual-wr .txt-box .tit {font-size:36px}
	.mVisual-wr .txt-box .mbtn {padding:12px 20px 10px}
}
@media all and (max-width:999px) {
	.mVisual-wr .mvis-swiper {height:500px}
	.mVisual-wr .swiper-slide {height:100%}
	.mVisual-wr .swiper-slide img {position:absolute;left:50%;top:0;width:auto;max-width:initial;height:100%;transform:translateX(-50%)}
	.mVisual-wr .swiper-slide .txt-box,
	.mVisual-wr .data-pkg {left:45px}
	.mVisual-wr .txt-box .s-tit {font-size:1.11em}
	.mVisual-wr .txt-box .tit {font-size:32px}
}
@media all and (max-width:768px) {
	.mVisual-wr .swiper-slide .txt-box {padding-right:40px;left:30px}
	.mVisual-wr .txt-box > span {margin-bottom:15px}
	.mVisual-wr .txt-box .tit {font-size:28px;margin-bottom:20px}
	.mVisual-wr .data-pkg {left:30px;padding:0 36px}
}
@media all and (max-width:499px) {
	.mVisual-wr .txt-box .tit br {display:none}
}
@media all and (max-width:399px) {
	.mVisual-wr .txt-box .tit {font-size:24px;font-weight:500}
}

/* ==============================
 * main 섹션2
================================= */
.main-sec2 {width:100%;padding:160px 0;background:url(/_Img/Main/main_sec02_bg.jpg) no-repeat;background-size:cover;box-sizing:border-box}
.main-sec2 .inner {max-width:1480px;margin:0 auto;box-sizing:border-box}
.main-sec2 .tit-box {color:#fff;font-weight:700;margin-bottom:150px}
.main-sec2 .tit-box .m-tit {display:block;font-size:128px;margin-bottom:30px}
.main-sec2 .tit-box .m-tit .slice {display:none}
.main-sec2 .tit-box .s-tit {display:block;font-size:40px}

.main-sec2 .cards-box {display:flex;flex-flow:row wrap;justify-content:space-between;width:100%;box-sizing:border-box}
.main-sec2 .cards-box .card {position:relative;width:350px;height:440px;border-radius:30px;box-sizing:border-box;overflow:hidden;line-height:normal}
/* .main-sec2 .cards-box .card {width:23.648%;height:440px;} */
.main-sec2 .cards-box .card:before {content:"";display:block;position:absolute;width:40px;height:16px;right:40px;bottom:32px;background:url(/_Img/Main/card_arr.png) no-repeat;background-size:contain;transition:transform .5s ease}
.main-sec2 .card > a {display:block;width:100%;height:100%;padding:80px 45px;background-repeat:no-repeat;background-size:100% auto;background-position:center;box-sizing:border-box;transition:background-size .4s ease}
.main-sec2 .cards-box .card1 > a {background-image:url(/_Img/Main/card_01.jpg)}
.main-sec2 .cards-box .card2 > a {background-image:url(/_Img/Main/card_02.jpg)}
.main-sec2 .cards-box .card3 > a {background-image:url(/_Img/Main/card_03.jpg)}
.main-sec2 .cards-box .card4 > a {background-image:url(/_Img/Main/card_04.jpg)}
.main-sec2 .card > a > span {display:block;color:#fff}
.main-sec2 .card .cd-s-tit {font-size:1.22em;font-weight:700;margin-bottom:10px}
.main-sec2 .card .cd-tit {font-size:1.667em;font-weight:700;margin-bottom:15px;letter-spacing:-.9px;line-height:1.2;word-break:keep-all}
.main-sec2 .card .txt {font-weight:300;letter-spacing:-0.03em}

/* 효과 */
.main-sec2 .tit-box > span {transform:translateY(70px);opacity:0;transition:all 1.2s ease}
.main-sec2 .tit-box > span:nth-child(1) {transition-delay:0s}
.main-sec2 .tit-box > span:nth-child(2) {transition-delay:.4s}
.main-sec2 .inner.on .tit-box > span,
.main-sec2 .inner.no-observer .tit-box > span {transform:translateY(0);opacity:1}
.main-sec2 .cards-box .card {transform:translateY(70px);opacity:0;transition:transform 1.2s ease, opacity 1s ease}
.main-sec2 .cards-box .card1 {transition-delay:0s}
.main-sec2 .cards-box .card2 {transition-delay:.3s}
.main-sec2 .cards-box .card3 {transition-delay:.6s}
.main-sec2 .cards-box .card4 {transition-delay:.9s}
.main-sec2 .cards-box.on .card,
.main-sec2 .cards-box.no-observer .card {transform:translateY(0);opacity:1}

/* 호버 */
@media(hover: hover) {
	.main-sec2 .cards-box .card > a:hover {background-size:120% auto;transition-delay:0s !important}
	.main-sec2 .cards-box .card:hover:before {transform:translateX(10px)}
}
@media (max-width:1247px) and (min-width:1100px) and (hover:hover) {
	.main-sec2 .cards-box .card > a:hover {background-size:auto 120%}
}

/* 반응형 */
@media all and (max-width:1560px) {
	.main-sec2 .inner {padding:0 45px}
	.main-sec2 .tit-box .m-tit {font-size:98px}
	.main-sec2 .tit-box .s-tit {font-size:32px}
	.main-sec2 .cards-box .card {width:24%;height:350px}
	.main-sec2 .card > a {padding:40px 30px}
	.main-sec2 .card .cd-s-tit {font-size:1em;font-weight:500;margin-bottom:5px}
	.main-sec2 .card .cd-tit {font-size:1.444em}
}
@media all and (max-width:1247px) {
	.main-sec2 .card > a {background-size:auto 100%}
}
@media all and (max-width:1099px) {
	.main-sec2 .tit-box {margin-bottom:80px}
	.main-sec2 .tit-box .m-tit {font-size:72px}
	.main-sec2 .tit-box .s-tit {font-size:26px}
	.main-sec2 .cards-box .card {width:48%;height:250px}
	.main-sec2 .cards-box .card1,
	.main-sec2 .cards-box .card2 {margin-bottom:30px}
	.main-sec2 .card > a {padding:40px;background-size:100% auto}
}
@media all and (max-width:999px) {
	.main-sec2 {padding:100px 0}
	.main-sec2 .tit-box {margin-bottom:60px}
	.main-sec2 .tit-box .m-tit {font-size:60px;margin-bottom:10px}
	.main-sec2 .tit-box .s-tit {font-size:22px}
}
@media all and (max-width:768px) {
	.main-sec2 {padding:80px 0}
	.main-sec2 .inner {padding:0 30px}
}
@media all and (max-width:699px) {
	.main-sec2 .tit-box .m-tit {font-size:50px;line-height:1.2;margin-bottom:15px}
	.main-sec2 .tit-box .m-tit .slice {display:block}
	.main-sec2 .tit-box .s-tit {font-size:18px}
}
@media all and (max-width:599px) {
	.main-sec2 .tit-box {margin-bottom:40px}
	.main-sec2 .cards-box .card {width:100%;height:auto;margin-bottom:20px}
	.main-sec2 .cards-box .card:before {right:30px;bottom:30px}
	.main-sec2 .card > a {padding:30px}
	.main-sec2 .card .txt {margin-bottom:30px}
}
@media all and (max-width:399px) {
	.main-sec2 .tit-box .m-tit {font-size:40px}
}

/* ==============================
 * main 섹션3
================================= */
.main-sec3 {position:relative;box-sizing:border-box;padding:130px 0;overflow:hidden}
.main-sec3:before {content:"";display:block;position:absolute;width:562px;height:406px;background:url(/_Img/Main/main_sec03_deco.png) no-repeat;background-size:contain;right:0;top:0;z-index:-1}
.main-sec3 .inner {width:100%;max-width:1480px;margin:0 auto;box-sizing:border-box}
.main-sec3 .tit-box {text-align:center;margin-bottom:30px;font-family:"Spoqa Han Sans Neo";font-weight:700;line-height:normal}
.main-sec3 .tit-box .s-tit {display:block;font-size:36px;color:#888}
.main-sec3 .tit-box .m-tit {display:block;font-size:52px;color:#000}
.main-sec3 .tit-box .m-tit .slice {display:none}

.main-sec3 .links-box {display:flex}
.main-sec3 .links-box .link {position:relative;width:22.9729%;height:340px;border-radius:30px;margin-right:20px;margin-top:60px;box-sizing:border-box;background-color:#EEE;transition:box-shadow .4s ease,border-radius .4s ease,width .4s ease, height .4s ease, margin-top .4s ease, background-color .4s ease;transition-delay:0s;overflow:hidden;isolation:isolate;word-break:keep-all}
.main-sec3 .links-box .link:not(.m-link) {flex:1}
.main-sec3 .links-box .link:before {content:"";display:block;position:absolute;right:-238px;bottom:-315px;width:518px;height:518px;border-radius:300px;background-image:linear-gradient(to right,#3F2E2F,#FF000F);opacity:0;z-index:-1;transition:all 1s ease, opacity .4s ease}
.main-sec3 .links-box .link > a {display:block;width:100%;height:100%;padding:40px;box-sizing:border-box}
.main-sec3 .links-box a span {display:block}
.main-sec3 .links-box .num {color:#F40419;font-family:"Inter";font-size:1.667em;margin-bottom:35px;box-sizing:border-box}
.main-sec3 .links-box .tit {font-size:1.333em;color:#000;font-weight:700;margin-bottom:35px;transition:font-size .4s ease;transition-delay:.4s}
.main-sec3 .links-box .detail {position:absolute;bottom:40px;right:40px;color:#525252;font-size:0.944em;font-weight:700;text-align:right}
.main-sec3 .links-box .detail:after {content:"→";display:inline-block;margin-left:20px;vertical-align:middle;margin-top:-4px;transition:transform .4s ease}

.main-sec3 .links-box .m-link {flex-shrink:0;width:400px;height:400px;background-color:#F40419;margin-top:0}
.main-sec3 .links-box .m-link:before {opacity:.2}
.main-sec3 .links-box .m-link .num {display:flex;background-color:#fff;width:50px;height:50px;font-size:1.22em;align-items:center;justify-content:center;border-radius:30px}
.main-sec3 .links-box .m-link .tit {font-size:1.667em;color:#fff}
.main-sec3 .links-box .m-link .detail {color:#fff}

.main-sec3 .link:last-child {margin-right:0}

/* 효과 */
.main-sec3:before {transform:translate(100px,-100px);transition:transform 1s ease}
.main-sec3.on:before,
.main-sec3.no-observer:before {transform:translate(0,0)}
.main-sec3 .tit-box > span {transform:translateY(70px);opacity:0;transition:all 1.2s ease}
.main-sec3 .tit-box > span:nth-child(1) {transition-delay:0s}
.main-sec3 .tit-box > span:nth-child(2) {transition-delay:.3s}
.main-sec3 .inner.on .tit-box > span,
.main-sec3 .inner.no-observer .tit-box > span {transform:translateY(0);opacity:1}
.main-sec3 .links-box {transform:translateY(70px);opacity:0;transition:transform 1.2s ease, opacity 1s ease;transition-delay:.6s}
.main-sec3 .inner.on .links-box,
.main-sec3 .inner.no-observer .links-box {transform:translateY(0);opacity:1}

/* 호버 */
@media(hover: hover) {
	.main-sec3 .links-box .link:hover .detail:after {transform:translateX(6px)}
	.main-sec3 .links-box .m-link:hover {box-shadow: 0px 36px 21.5px -26px rgba(244, 4, 25, 0.30);border-radius:30px}
	.main-sec3 .links-box .m-link:hover:before {width:650px;height:650px;transform:rotate(135deg)}
}
@media (max-width:1199px) and (hover: hover) {
	.main-sec3 .links-box .m-link:hover:before {width:300px;height:300px;transform:rotate(135deg)}
}

/* 반응형 */
@media all and (max-width:1560px) {
	.main-sec3 .inner {padding:0 45px}
}
@media all and (max-width:1399px) {
	.main-sec3 .links-box .link {height:290px}
	.main-sec3 .links-box .link > a {font-size:.88em;padding:30px}
	.main-sec3 .links-box .num {margin-bottom:15px}
	.main-sec3 .links-box .detail {right:30px;bottom:30px}
	.main-sec3 .links-box > .m-link {width:350px;height:350px}
	.main-sec3 .links-box .m-link > a {font-size:1em}
}
@media all and (max-width:1199px) {
	.main-sec3 .tit-box .s-tit {font-size:26px}
	.main-sec3 .tit-box .m-tit {font-size:46px}
	.main-sec3 .links-box {flex-wrap:wrap}
	.main-sec3 .links-box .link {flex:initial !important;width:calc((100% - 20px)/2);height:auto;margin-top:0}
	.main-sec3 .links-box .link:nth-child(1) {margin-bottom:20px}
	.main-sec3 .links-box .link:nth-child(2) {margin-right:0;margin-bottom:20px}
	.main-sec3 .links-box .link:before {width:250px;height:250px;right:-150px;bottom:-150px}
	.main-sec3 .links-box .link > a {font-size:14px}
	.main-sec3 .links-box .num,
	.main-sec3 .links-box .m-link .num {display:flex;align-items:center;width:40px;height:40px;margin-bottom:20px}
	.main-sec3 .links-box .tit,
	.main-sec3 .links-box .m-link .tit {font-size:1.333em;margin-bottom:30px}
	.main-sec3 .links-box > .m-link {width:calc((100% - 20px)/2);height:auto}
}
@media all and (max-width:999px) {
	.main-sec3 {padding:100px 0}
}
@media all and (max-width:768px) {
	.main-sec2 .inner {padding:0 30px}
	.main-sec3 .tit-box .s-tit {font-size:22px}
	.main-sec3 .tit-box .m-tit {font-size:36px}
	.main-sec3 .links-box .link > a {padding:20px}
	.main-sec3 .links-box .detail {right:20px;bottom:20px}
}
@media all and (max-width:699px) {
	.main-sec3 .links-box .num,
	.main-sec3 .links-box .m-link .num {width:30px;height:30px;margin-bottom:15px}
	.main-sec3 .links-box .num {font-size:1.22em}
	.main-sec3 .links-box .m-link .num {font-size:1em}
	.main-sec3 .links-box .tit,
	.main-sec3 .links-box .m-link .tit {font-size:1.22em;margin-bottom:30px}
	.main-sec3 .links-box .detail {font-size:11px}
	.main-sec3 .links-box .detail:after {margin-left:10px;vertical-align:baseline}
}
@media all and (max-width:599px) {
	.main-sec3 {padding:60px 0}
	.main-sec3 .tit-box .s-tit {font-size:18px;margin-bottom:5px}
	.main-sec3 .tit-box .m-tit {font-size:32px;line-height:1.3}
	.main-sec3 .links-box .tit,
	.main-sec3 .links-box .m-link .tit {font-size:14px;margin-bottom:25px}
}
@media all and (max-width:499px) {
	.main-sec3 .tit-box .m-tit {font-size:28px}
	.main-sec3 .tit-box .m-tit .slice {display:block}
}
@media all and (max-width:399px) {
	.main-sec3 .links-box .link {width:100%;margin-right:0 !important;margin-bottom:10px !important}
	.main-sec3 .links-box .tit,
	.main-sec3 .links-box .m-link .tit {margin-bottom:20px}
}

/* ==============================
 * main 섹션4
================================= */
.main-sec4 {position:relative;z-index:5;background:#fff;overflow:hidden;padding-bottom:130px}
.main-sec4 .m-tit {max-width:1480px;margin:0 auto 60px;box-sizing:border-box}
.main-sec4 .m-tit strong {display:block;font-size:42px;color:#222222;font-weight:500;margin-bottom:30px;line-height:58px;font-weight:600}
.main-sec4 .m-tit p {color:#555555;font-size:30px}
.main-sec4 ul li {margin-bottom:40px}
.main-sec4 ul li:last-child {margin-bottom:0}
.main-sec4 .track-wr {position:relative;height:110px}
.main-sec4 .track {position:absolute;white-space:nowrap;will-change:transform}
.main-sec4 .track1 {animation:marquee2 500s linear infinite}
.main-sec4 .track2 {animation:marquee3 500s linear infinite;right:0}
.main-sec4 .track {display:flex}

/* 효과 */
.main-sec4 .m-tit strong {transform:translateY(70px);opacity:0;transition:all 1.2s ease;transition-delay:0s}
.main-sec4.on .m-tit strong,
.main-sec4.no-observer .m-tit strong {transform:translateY(0);opacity:1}
.main-sec4 .m-tit p {transform:translateY(70px);opacity:0;transition:all 1.2s ease;transition-delay:0.3s}
.main-sec4.on .m-tit p,
.main-sec4.no-observer .m-tit p {transform:translateY(0);opacity:1}
.main-sec4 .track-wr {transform:translateY(70px);opacity:0;transition:all 1.2s ease;transition-delay:0.6s}
.main-sec4.on .track-wr,
.main-sec4.no-observer .track-wr {transform:translateY(0);opacity:1}

/* 반응형 */
@media all and (max-width:1560px) {
	.main-sec4 .m-tit {padding:0 45px}
}
@media all and (max-width:999px) {
	.main-sec4 {padding-bottom:100px}
	.main-sec4 .m-tit {margin-bottom:50px}
	.main-sec4 .m-tit strong {font-size:36px;margin-bottom:20px;line-height:1.4}
	.main-sec4 .m-tit p {font-size:20px}
	.main-sec4 ul li {margin-bottom:25px}
	.main-sec4 .track-wr {height:60px}
	.main-sec4 .track {height:100%}
	.main-sec4 .track img {height:100%}
}
@media all and (max-width:768px) {
	.main-sec4 .m-tit {padding:0 30px}
}
@media all and (max-width:599px) {
	.main-sec4 {padding-bottom:60px}
	.main-sec4 .m-tit strong {font-size:28px}
	.main-sec4 .m-tit p {font-size:16px}
	.main-sec4 ul li {margin-bottom:10px}
	.main-sec4 .track-wr {height:40px}
}
@media all and (max-width:399px) {
	.main-sec4 .m-tit strong {font-size:22px}
	.main-sec4 .m-tit p {font-size:14px}
}

/* ==============================
 * Animation 
================================= */
@keyframes marquee2 {
	from {transform: translateX(0)}
	to {transform: translateX(-50%)}
}
@keyframes marquee3 {
	from {transform: translateX(0)}
	to {transform: translateX(50%)}
}
@keyframes rotateAni {
	to {transform: rotateZ(360deg)}
}