@charset "utf-8";

#topNavWrap{opacity:0;position:fixed;top:0;left:0;z-index:100;transform:translate3d(0,-50%,0);width:100%;height:85px;padding:0 40px;transition:opacity .5s,transform .5s var(--ani);font-family:'Archivo', 'notokr-regular'}
#topNavWrap.on{opacity:1;transform:translateZ(0)}
#topNavWrap.sub{position:relative;transform:none;opacity:1;border-bottom:1px solid rgba(0,0,0,0);background-color:var(--primary)}
#topNavWrap.sub.on{border-bottom-color:rgba(0,0,0,.1)}

/* 로고 */
#top_logo{float:left;position:relative;z-index:101;line-height:85px}

/* 대분류  */
#topNav{float:left;z-index:1;height:85px;margin-left:80px}
#topNav:after{display:block;content:"";visibility:hidden;clear:both}
#topNav > li{float:left;position:relative;padding:0 25px;line-height:85px}
#topNav > li > a{display:block;font-size:16px;font-weight:600;color:#222;transition:all .2s}
#menuLine{position:absolute;bottom:-1px;left:50%;width:0;height:1px;background-color:transparent;transition:all .4s var(--ani)}
#topNavWrap.on #menuLine{background-color:#111}

/* 소분류 */
.top_nav_s{display:none;position:absolute;width:100%;min-height:140px;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);padding-top:15px}
.top_nav_s li a{display:block;margin:0px;font-size:14px;line-height:26px;text-align:center;color:#111;transition:color .2s;font-family:'notokr-medium'}
.top_nav_s li a:hover{color:#999}

/* sns */
#topNavWrap .top_tip{float:right;position:relative;z-index:101;margin-right:120px}
#topNavWrap .top_tip li{display:inline-block;line-height:85px}
#topNavWrap .top_tip li+li{margin-left:20px}
#topNavWrap .top_tip li a{display:block;position:relative;font-size:14px;font-weight:700;color:#111;-webkit-transition:all .2s;transition:all .2s;font-family:'Archivo'}
#topNavWrap .top_tip li a:hover{color:#aaa}
#topNavWrap.white .top_tip li a{color:#fff}

/* 전체메뉴배경 */
.top_nav_bg{position:absolute;width:100%;display:none;top:85px;height:140px;background-color:var(--primary)}

/* 메뉴버튼 */
#navBtn{position:absolute;top:29px;right:40px;z-index:101;width:54px;height:25px;cursor:pointer;transition:all .3s var(--ani)}
#navBtn.no_pointer{pointer-events:none;cursor:alias}
#navBtn span{position:absolute;top:50%;left:0}
#navBtn:before, #navBtn:after{display:block;content:'';position:absolute;right:0;top:8px;z-index:-1;width:0;height:1px;background-color:#111;transition:all .3s var(--ani), width .6s .6s}
#navBtn:after{top:17px;right:auto;left:-12px}
#navBtn.active{width:26px}
#navBtn.active:before{top:50%;right:0;transform:rotate(45deg);background-color:#fff}
#navBtn.active:after{top:50%;left:0;transform:rotate(-45deg);background-color:#fff}
#navBtn.on:before, #navBtn.on:after{width:100%}

/* 메뉴오픈 */
#navWrap{position:fixed;top:-100vh;left:0;z-index:100;width:100%;height:100vh;color:#fff}
#navWrap .nav_bg_wrap{position:absolute;top:0;right:0;z-index:0;width:100%;height:100%}
#navWrap .nav_bg{overflow:hidden;position:absolute;right:0;width:0;height:calc(100vh / 3);transition:width .6s var(--ani)}
#navWrap .nav_bg:before{display:block;content:"";position:absolute;top:-5%;left:-5%;z-index:-1;width:110%;height:110%;background:url(../../common/texture.jpg) 50%;animation:grain .8s steps(1) 0s infinite}
#navWrap .bg1{top:0;transition-delay:.2s}
#navWrap .bg2{top:calc(100vh / 3);transition-delay:.3s}
#navWrap .bg3{top:calc((100vh / 3) * 2);transition-delay:.4s}
#navWrap.active .nav_bg{width:100%}
#navWrap .year{opacity:0;position:absolute;left:40px;bottom:40px;z-index:1;font-size:15px;font-weight:500;line-height:1.4}
#navWrap .year img{vertical-align:-2px;margin-right:3px}
#navWrap.active .year{opacity:1;transition:all .3s .6s}
#navWrap .nav_mn{position:absolute;top:19%;left:12%;z-index:2}
#navWrap .nav_mn li{overflow:hidden}
#navWrap .nav_mn li a{display:inline-block;transform:translateY(100%);font-size:100px;font-weight:300;letter-spacing:-1px;line-height:1.2;color:rgba(255,255,255,.25);text-transform:uppercase;transition:transform .6s var(--ani) 0s}
#navWrap .nav_mn li a:hover{color:#fff;transition:opacity .2s 0s}
#navWrap.active .nav_mn li a{transform:translateY(0)}
#navWrap.active .nav_mn li:nth-child(1) a{transition-delay:.8s}
#navWrap.active .nav_mn li:nth-child(2) a{transition-delay:.9s}
#navWrap.active .nav_mn li:nth-child(3) a{transition-delay:1s}
#navWrap.active .nav_mn li:nth-child(4) a{transition-delay:1.1s}
#navWrap.active .nav_mn li:nth-child(5) a{transition-delay:1.2s}
#navWrap .nav_mn li a span{transition:all .6s var(--ani);transition-delay:.3s}
#navWrap .nav_mn li a:hover span{padding-left:110px;transition-delay:0s}
#navWrap .nav_mn li a em{display:block;content:"";position:absolute;left:0;top:calc(50% - 3px);z-index:1;width:82px;height:6px;transform-origin:right;transform:scaleX(0);background:#fff;transition:transform .3s var(--ani) .3s}
#navWrap .nav_mn li a em:before,#navWrap .nav_mn li a em:after{content:"";position:absolute;right:-6.5px;bottom:0;background:#fff;transition:transform .6s var(--ani) 0s;z-index:2}
#navWrap .nav_mn li a em:before{width:6px;height:58px;transform-origin:0% 100%;transform:rotate(-90deg)}
#navWrap .nav_mn li a em:after{width:58px;height:6px;transform-origin:100% 0%;transform:translateX(-1px) rotate(0deg)}
#navWrap .nav_mn li a:hover em{transform-origin:left;transform:scaleX(1);transition-delay:0s}
#navWrap .nav_mn li a:hover em:before{transform:rotate(-45deg);transition-delay:.3s}
#navWrap .nav_mn li a:hover em:after{transform:translateX(-6px) rotate(-45deg);transition-delay:.3s}
#navWrap .contact{opacity:0;position:absolute;right:15%;top:21%;transform:translateY(40px);font-size:17px;line-height:1.6;transition:all .3s 0s}
#navWrap .contact p{margin-bottom:20px}
#navWrap.active .contact{opacity:1;transform:translateY(0);transition:all .3s .9s}

/* 상단 버튼 및 오픈메뉴 */
#topmenuM{position:relative;z-index:99;display:none;width:100%;line-height:1.8;padding:15px}
#topmenuM #m_logo img{max-height:18px}
#m_navBtn{position:absolute;top:50%;right:15px;z-index:30;width:30px;height:30px;transform:translateY(-50%);cursor:pointer}
#m_navBtn span{display:block;position:relative;top:50%;width:100%;height:2px;transform:translateY(-50%)}
#m_navBtn span::before{display:block;position:absolute;top:-6px;width:100%;height:100%;background-color:#000;content:""}
#m_navBtn span::after{display:block;position:absolute;top:6px;right:0%;width:45%;height:100%;background-color:#000;content:""}
#m_navBtn.on{position:fixed;top:27px}
#m_navBtn.on span:before{top:0;right:-4px;transform:rotate(45deg);background-color:#000}
#m_navBtn.on span:after{top:0;right:-4px;width:100%;transform:rotate(-45deg);background-color:#222}
#m_navWrap{display:none;position:fixed;left:0;top:0;z-index:15;width:100%;height:100%;background-color:rgba(0,0,0,.7)}
#m_navWrap .inner{overflow-y:scroll;opacity:0;position:fixed;right:-40px;top:0;z-index:999;min-width:300px;width:75%;height:100%;padding:60px 0;background-color:#fff;-webkit-transition:all .1s;transition:all .1s}
#m_navWrap.on{display:block}
#m_navWrap.on .inner{opacity:1;right:0;-webkit-transition:all .4s;transition:all .4s}
#m_navWrap .inner:before, #navWrap .inner:after{opacity:0;display:block;position:fixed;top:0;right:-40px;z-index:1;content:"";min-width:300px;width:70%;height:60px;background-color:#fff;-webkit-transition:all .1s;transition:all .1s}
#m_navWrap .inner:after{top:auto;bottom:0}
#m_navWrap.on .inner:before, #navWrap.on .inner:after{opacity:1;right:0;-webkit-transition:all .4s;transition:all .4s}
#m_navWrap .inner .mo_hd_copy{position:fixed;right:0;bottom:15px;z-index:2;min-width:300px;width:70%;font-size:12px;text-align:center;color:#888}
#m_navWrap .user_tip{padding:10px 20px;background-color:#f5f5f5}
#m_navWrap .user_tip li{display:inline-block}
#m_navWrap .user_tip li+li{margin-left:10px}
/* 대분류 */
#topmenuM .m_lnb .m_bmenu{display:block;position:relative;width:100%;height:52px;padding:0 20px;border:none;border-bottom:1px solid #ddd;background:none;font-size:16px;line-height:52px;color:#222;text-align:left;font-family:'notokr-medium'}
#topmenuM .m_lnb .m_bmenu:after{float:right;content:"\f107";font-family:'fontawesome'}
#topmenuM .m_lnb .m_bmenu.on:after{content:"\f106"}
/* 소분류 */
#topmenuM .m_smenu{display:none;padding:15px 20px;border-bottom:1px solid #ddd;background-color:#f2f3f5}
#topmenuM .m_smenu li a{font-size:14px;color:#777}

@media (max-width:1200px){
#navWrap .nav_mn li a{font-size:90px}
}
@media (max-width:1024px){
/* 반응형 필수[s] */
#topmenuM{display:block}
#topNavWrap{display:none}
/* 반응형 필수[e] */
}