@charset "utf-8";

/* main header */
#topNavWrap{z-index:1;position:relative;display:flex;align-items:center;justify-content:center;height:var(--hd-height)}
#topNavWrap .inner{display:flex;justify-content:space-between;align-items:center;max-width:var(--main-size);width:100%}

/* 로고 */
#top_logo{position:relative}
#top_logo img{width:135px}

/* util */
#topNavWrap .btn_area{position:relative;display:flex;align-items:center}
#topNavWrap .btn_area ul{display:flex;gap:8px}
#topNavWrap .btn_area ul li a{position:relative;display:flex;align-items:center;justify-content:center;width:48px;aspect-ratio:1;background-color:#000;color:#fff;transition:color 0.4s}
#topNavWrap .btn_area ul li a::before{position:absolute;content:'';inset:0;width:100%;height:100%;background-color:#fff;transform:scaleX(0);transform-origin:left;transition:transform 0.4s ease}
#topNavWrap .btn_area ul li a:hover{color:#000}
#topNavWrap .btn_area ul li a:hover::before{transform:scaleX(1) translateZ(0)}
#topNavWrap .btn_area ul li a svg{position:relative;z-index:1;width:22px;height:22px}

/* 대분류  */
#topNav{position:absolute;left:50%;transform:translateX(-50%);display:flex}
#topNav > li{position:relative;transition:all 0.4s}
#topNav > li > a{position:relative;display:block;padding:0 35px;line-height:var(--hd-height);font-size:17px;font-weight:600;color:#000;transition:all .4s}
#topNav > li > a::before{position:absolute;content:'';bottom:0;left:0;width:100%;height:2px;background-color:#000;transform:scaleX(0);transform-origin:center center;transition:transform 0.4s ease}
#topNav > li > a:hover::before{transform:scaleX(1)}
#topNavWrap.on #topNav > li > a{padding:0 55px}


/* 소분류 */
.top_nav_s{display:none;position:absolute;width:100%;min-height:165px;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:16px;font-weight:400;line-height:1.8;text-align:center;color:#777;transition:color .2s}
.top_nav_s li a:hover{color:#222}
.top_nav_bg{position:absolute;width:100%;display:none;top:var(--hd-height);left:0;height:160px;border-top:1px solid #e1e1e1;background:#fff;-webkit-box-shadow:0px 12px 12px -17px rgba(0,0,0,0.25);box-shadow:0px 12px 12px -17px rgba(0,0,0,0.25)}

/* 상단 버튼 및 오픈메뉴 */
#topslideM{display:none}
#topmenuM{position:relative;display:none;width:100%;line-height:1.8;padding:15px;background:#fff;border-bottom:1px solid #e1e1e1}
#topmenuM #m_logo img{width:138px}
#m_navBtn{position:absolute;top:48%;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:var(--brand-color);content:"";transform:translateZ(0);will-change:transform}
#m_navBtn span::after{display:block;position:absolute;top:6px;right:0%;width:40%;height:100%;background-color:var(--brand-color);content:"";transform:translateZ(0);will-change:transform}
#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}
#navWrap{position:fixed;left:0;top:0;z-index:15;width:100%;height:100%;background-color:rgba(0,0,0,.7)}
#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}
#navWrap.on .inner{opacity:1;right:0;-webkit-transition:all .4s;transition:all .4s}
#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}
#navWrap .inner:after{top:auto;bottom:0}
#navWrap.on .inner:before, #navWrap.on .inner:after{opacity:1;right:0;-webkit-transition:all .4s;transition:all .4s}
#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}
#navWrap .user_tip{padding:10px 20px;background-color:#f5f5f5}
#navWrap .user_tip li{display:inline-block}
#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}
#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}

/* 반응형 [s] */
@media (max-width:1800px){
#topNavWrap{padding:0 20px}
}
@media (max-width:1400px){
.top_nav_bg{height:148px}
#topNav > li > a{padding:0 30px;font-size:16px}
.top_nav_s li a{font-size:15px}
#topNavWrap .btn_area ul li a{width:45px}
#topNavWrap .btn_area ul li a svg{width:20px;height:20px}
#topNavWrap.on #topNav > li > a{padding:0 45px}
}
@media (max-width:1200px){
.top_nav_bg{height:138px}
#top_logo img{width:128px}
#topNav{justify-content:center;width:60%}
#topNav > li > a{font-size:15px}
.top_nav_s li a{font-size:14px}
#topNavWrap .btn_area ul li a{width:42px}
#topNavWrap.on #topNav > li > a{padding:0 40px}
}
@media (max-width:1024px){
#topNavWrap{display:none}
#topmenuM{display:block}
#navWrap{display:none}
}
@media (max-width:480px){
#topmenuM #m_logo img{width:125px}
}
/* 반응형 [e] */