@charset "utf-8";

.top_nav_bg{position:fixed;width:100%;display:none;top:var(--hd-height);left:0;height:220px;border-top:1px solid #e1e1e1;background:#fff;box-shadow:0px 12px 12px -17px rgba(0,0,0,0.25)}
#sh_hd.sub .top_nav_bg{position:absolute}

#top_nav_wrap{position:relative;display:flex;align-items:center;justify-content:space-between;width:100%;height:var(--hd-height);margin:0 auto;padding:0 40px;background-color:rgba(255,255,255,0.16);transition:background-color 0.3s}
#top_nav_wrap .top__util{display:flex;align-items:center;justify-content:space-between;width:100%}

/* logo + link-tel */
#top__logo img{width:137px}
.top__util .link-tel{padding:12px 20px;border:1px solid #fff;border-radius:100px;font-size:16px;font-weight:700;color:#fff;transform:translateZ(0);will-change:transform;transition:all 0.2s}
.top__util .link-tel span{display:flex;align-items:center;gap:10px}
.top__util .link-tel span svg{flex-shrink:0;width:18px;height:18px}

/* nav_depth  */
#top__nav{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);display:flex;align-items:center}
#top__nav li.list{position:relative;color:#848484;font-size:14px;text-align:center}
#top__nav > li > a{display:block;padding:0 48px;font-size:17px;font-weight:700;color:#fff;line-height:var(--hd-height);white-space:nowrap;transition:color 0.3s}
#top__nav li ul{position:absolute;display:none;left:50%;transform:translateX(-50%);width:100%;height:200px;padding:15px 0}
#top__nav li ul a{position:relative;display:block;padding:10px 20px;color:#888;font-size:15px}

/* LNB */
#top_nav.sub li > a{color:#fff}
#top_nav.sub li ul a{color:#888}

/* fixed */
#top_nav_wrap.fixed{box-shadow:0 0 12px rgba(0, 0, 0, 0.05)}

/* on */
#top_nav_wrap.fixed, #top_nav_wrap.on{background-color:#fff}
#top_nav_wrap.fixed #top__nav > li > a, #top_nav_wrap.on #top__nav > li > a{color:#111}
#top_nav_wrap.fixed .top__util .link-tel, #top_nav_wrap.on .top__util .link-tel{border-color:var(--primary);color:var(--primary)}

@media (hover:hover){
#top__nav li ul a:hover{color:#333} 
.top__util .link-tel:hover{background-color:#fff;color:var(--primary)}
#top_nav_wrap.fixed .top__util .link-tel:hover{border-color:var(--primary);background-color:var(--primary);color:#fff}
}

/* 상단 버튼 및 오픈메뉴 */
#topmenuM{position:relative;z-index:99;display:none;width:100%;line-height:1.8;padding:15px;transition:box-shadow 0.3s}
#topmenuM::before{z-index:-1;position:absolute;inset:0%;width:100%;height:100%;content:'';background-color:transparent;transition:all 0.3s}
#topmenuM #m_logo img{width:125px}
#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:#fff;content:"";transition:background-color 0.3s}
#m_navBtn span::after{display:block;position:absolute;top:6px;right:0%;width:45%;height:100%;background-color:#fff;content:"";transition:background-color 0.3s}
#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{display:none;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{display:block}
#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;font-family:var(--main-font)}
#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}

/* fixed */
#topmenuM.fixed{box-shadow:0 0 12px rgba(0, 0, 0, 0.05)}
#topmenuM.fixed::before{background-color:rgba(255,255,255,0.8);backdrop-filter:blur(10px)}
#topmenuM.fixed #m_navBtn span::before, #topmenuM.fixed #m_navBtn span::after{background-color:var(--primary)}

/* 반응형 [s] */
@media (max-width:1700px){
#top_nav_wrap{padding:0 20px}
}
@media (max-width:1400px){
#top__logo img{width:125px}
#top__nav > li > a{padding:0 40px;font-size:16px}
#top__nav li ul a{padding:10px;font-size:14px}
.top__util .link-tel{padding:12px 16px;font-size:15px}
.top__util .link-tel span{gap:8px}
.top__util .link-tel span svg{width:16px;height:16px}
}
@media (max-width:1200px){
.top__util .link-tel{padding:10px 16px}
.top__util .link-tel span svg{display:none}
}
@media (max-width:1024px){
/* 반응형 필수[s] */
#topmenuM{display:block}
#top_nav_wrap{display:none}
/* 반응형 필수[e] */
}
@media (max-width:480px){
#sh_hd.sub #m_navBtn span::before, #sh_hd.sub #m_navBtn span::after{background-color:var(--primary)}
}
/* 반응형 [e] */