/* °øÅëÀû¿ë */
html {scroll-behavior:smooth;}
body {overflow-x: hidden;}
body.scroll-lock {overflow-y: hidden;}
img {max-width: 100%;}
.inner {width: 90%; max-width: 1600px; margin: 0 auto; }
.bold {font-weight: 700;}
.colorMain {color: var(--mainColor);}


/* ¾Ö´Ï¸ÞÀÌ¼Ç */
#pageAni {
    width: 100%; height: 100%; position: fixed; top: 0; left: 0; background: #000; z-index: 999; display: flex; align-items: center; justify-content: center;
    animation: pageMoveUp 1s ease forwards; animation-delay:1.5s; /* .text°¡ »ç¶óÁö°í 2ÃÊ ÈÄ */
}
#pageAni .logo {font-size: 50px;  opacity: 1; animation: logoFadeOut 1s ease forwards; animation-delay: 0.5s; /* 3ÃÊ°£ º¸¿´´Ù°¡ »ç¶óÁü */}

.fade-up {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 1.5s ease, transform 1.5s ease;
}
.fade-up.active {
    opacity: 1;
    transform: translateY(0);
}

/* ÅØ½ºÆ® ÆäÀÌµå¾Æ¿ô */
@keyframes logoFadeOut {
    to {
        opacity: 0;
    }
}


/* ÀüÃ¼ ÆäÀÌÁö À§·Î ÀÌµ¿ÇÏ¸ç »ç¶óÁü */
@keyframes pageMoveUp {
    to {
        transform: translateY(-100%);
    }
}



/* ºñ¸Þ¿À, À¯Æ©ºê */
.video_container {position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%;}
.video_container iframe {position: absolute; top: 0; left: 0; width: 100%; height: 100%; }



/* padding */
.p_tb {padding: 150px 0;}
.p_t {padding-top: 150px;}
.p_b {padding-bottom: 150px;}


/* btn */
.btn {display: flex; align-items: center; justify-content: center; width: max-content; transition: all .3s;}
.btn.lg {height: 85px; font-size: 1.5rem; padding: 0 20px;}
.btn.md {height: 70px; font-size: 1.25rem; padding: 0 20px;}
.btn.sm {height: 55px; font-size: 1rem; padding: 0 15px;}
.btn.st1 {background: var(--mainColor); color: #fff;}
.btn.st1:hover {background: #63ccbc;}
.btn.st2 {border: 2px solid var(--mainColor); background: #fff; color: var(--mainColor);}
.btn.st2:hover {background: var(--mainColor); color: #fff;}
.btnLoad {text-align: center; display: flex; align-items: center; justify-content: center; width: max-content;}
.btnLoad span {font-size: 2.5vw;}
.btnLoad span::after {display: block; margin: 0 auto; content: ""; width: 2vw; aspect-ratio: 1/1; background: url('/base/img/mf/icon_load_arr.png') no-repeat center center / contain;}


/* swiper */
.swiper_box {position: relative;}
.swiper_prev,
.swiper_next {
    width: 70px; aspect-ratio: 1/1; background-repeat: no-repeat; background-position: center center; background-size: contain; cursor: pointer;
    position: absolute; top: 50%; transform: translateY(-50%); z-index: 3;
}
.swiper_prev {background-image: url('/base/img/mf/icon_swiper_arr_prev.png'); left: 0;}
.swiper_next {background-image: url('/base/img/mf/icon_swiper_arr_next.png'); right: 0;}
.swiper_prev.white {background-image: url('/base/img/mf/icon_swiper_arr_prev_w.png');}
.swiper_next.white {background-image: url('/base/img/mf/icon_swiper_arr_next_w.png');}


/* ÇÃ·ÎÆÃ */
#floating {position: fixed; bottom: 20px; right: 20px; z-index: 998; font-size: 0;}
#floating a {width: 100px; display: block;}




/* footer */
#footer {padding: 90px 0; background: #212121;}
#footer .inner {display: flex; flex-direction: column; gap: 40px;}
#footer .name {color: #fff;}
#footer .name .big {font-size: 7vw; font-weight: 700; line-height: 1;}
#footer .name .small {font-size: 2vw; margin-top: 5px;}
#footer .info {display: flex; flex-direction: column; gap: 10px;}
#footer .info .list {display: flex; gap: 15px;  flex-wrap: wrap;}
#footer .info li {display: flex; gap: 7px; color: #fff; font-size: 1rem;}
#footer .info li.w100 {width: 100%;}
#footer .info li span {opacity: .5;}
#footer .info .copy {color: #fff; opacity: .5; font-size: 0.875rem; margin-top: 60px;}



/* header */
#header {width: 100%; height: 90px; display: flex; align-items: center; background: rgba(0,0,0,0); position: fixed; z-index: 998;}
#header .inner {display: flex; align-items: center; justify-content: space-between; height: 100%; gap: 40px;}
#header .logo {font-size: 0;}
#header .logo img {height: 58px;}
#header .nav_wrap {height: 100%;}
#header .menu {display: flex; gap: 40px; align-items: center; color: #000; height: 100%;}
#header .menu > li {height: 100%; position: relative;}
#header .menu > li > a {height: 100%; display: flex; align-items: center; justify-content: center; font-size: 1.125rem; position: relative;}
#header .menu > li > a::after {
    display: block; content: ""; width: 0%; height: 3px; background: var(--mainColor);
    position: absolute; bottom: 28px; left: 0; transition: all .3s;
}
#header .menu > li:hover > a::after {width: 100%;}
#header .submenu {
    display: none; position: absolute; top: 100%; left: 50%; transform: translateX(-50%); background: rgba(0,0,0,.9);
    padding: 15px; text-align: center; min-width: 120px;
}
#header .submenu > div {display: flex; flex-direction: column; gap: 10px}
#header .submenu > div > a {white-space: nowrap; display: block; color: #fff; font-size: 0.875rem; line-height: 1;}
#header .submenu > div > a:hover {font-weight: 700;}



#header .hamberg {display: none;}
#header.active {background: rgba(255,255,255, .9);}



/* sub */
#container {padding-top: 90px;}
.sec_tit {margin-bottom: 60px;}
.sec_tit .big {font-size: 6rem; line-height: 1.2; font-weight: 700;}




@media screen and (max-width:1199px) {



}


@media screen and (max-width:899px) {


    /* btn */
    .btnLoad span {font-size: 1.125rem;}
    .btnLoad span::after {width: 18px;}
    .btn.t-lg {height: 85px; font-size: 1.5rem; padding: 0 20px;}
    .btn.t-md {height: 70px; font-size: 1.25rem; padding: 0 20px;}
    .btn.t-sm {height: 55px; font-size: 1rem; padding: 0 15px;}


    /* padding */
    .p_tb {padding: 90px 0;}
    .p_t {padding-top: 90px;}
    .p_b {padding-bottom: 90px;}


    /* footer */
    #footer {padding: 60px 0;}
    #footer .inner {flex-direction: column; gap: 20px;}
    #footer .name .big {font-size: 9vw;}
    #footer .name .small {font-size: 4vw;}
    #footer .info .list {gap: 10px;}
    #footer .info ul {width: 100%;}
    #footer .info li {font-size: 0.875rem;}
    #footer .info .copy {font-size: 0.75rem; margin-top: 40px;}



    /* swiper */
    .swiper_prev,
    .swiper_next {width: 40px;}


    /* header */
    #header {height: 60px;}
    #header .inner {gap: 20px;}
    #header .lang {margin-left: auto;}
    #header .logo img {height: 40px;}
    
    #header .hamberg {width: 24px; height: 24px; font-size: 0; display: flex; align-items: center; cursor: pointer; position: relative; z-index: 2;}
    #header .hamberg span {width: 100%; height: 2px; background: #000; display: block; position: relative; transition: all .3s;}
    #header .hamberg span::before,
    #header .hamberg span::after {display: block; content: ""; width: 100%; height: 2px; background: #000; position: absolute; transition: all .3s;}
    #header .hamberg span::before {top: -8px;}
    #header .hamberg span::after {top: 8px;}
    #header .hamberg span.on {background: rgba(255,255,255,0);}
    #header .hamberg span.on::before {top: 0; transform: rotate(-45deg);}
    #header .hamberg span.on::after {top: 0; transform: rotate(45deg);}
    
    #header .nav_wrap {
        position: fixed; top: 0; left: -500px; background: rgba(0,0,0,.95); width: 500px; height: 100vh;
        transition: all .3s; z-index: 1;
    }
    #header .nav_wrap.on {left: 0;}
    #header .menu {gap: 10px; justify-content: center; flex-direction: column; color: #fff;}
    #header .menu > li {height: auto; width: 100%;}
    #header .menu > li::after {display: none;}
    #header .menu > li > a {height: auto; height: 50px; font-size: 1.125rem; padding: 0 20px;}
    #header .menu > li > a::after {display: none;}
    #header .submenu {position: unset; transform: unset; width: 100%; border: 0; background: #222; padding: 20px;}
    #header .submenu > div {gap: 15px;}
    #header .submenu > div > a {font-size: 0.9125rem;}


    /* sub */
    #container {padding-top: 60px;}
    .sec_tit {margin-bottom: 40px;}
    .sec_tit .big {font-size: 4rem;}


}


@media screen and (max-width:599px) {



    /* ÇÃ·ÎÆÃ */
    #floating a {width: 80px;}


    /* btn */
    .btn.m-lg {height: 85px; font-size: 1.5rem; padding: 0 20px;}
    .btn.m-md {height: 70px; font-size: 1.25rem; padding: 0 20px;}
    .btn.m-sm {height: 55px; font-size: 1rem; padding: 0 15px;}



    /* hedaer */    
    #header .inner {gap: 10px;}
    #header .nav_wrap {width: 80%;}


    /* footer */   
    #footer .name .big {font-size: 2.5rem;}
    #footer .name .small {font-size: 1.25rem;}


    /* sub */
    .sec_tit .big {font-size: 2.5rem;}



}