@charset "UTF-8";

/********************************************************
■ Sub Menu : 서브 메뉴 부분
********************************************************/
:root {
	--sub-menu-h:70px;
}
#sub-menu { position:relative; z-index:99; padding-right:var(--top-right-w); }
.submenu-fix #sub-menu { position:fixed; background:#fff; left:0; top:0; right:0; }
.submenu-fix #sub-top { padding-bottom:var(--sub-menu-h); }

#sub-menu .c div ul { position:relative; display:flex; justify-content:center; height:var(--sub-menu-h); transition-duration: 400ms; }
#sub-menu .c div ul:before { content:""; position:absolute; left:calc(50% + var(--top-right-w)/2); transform:translateX(-50%); width:100vw; bottom:0; }
#sub-menu .c div.depth2 ul:before { height:1px; background:#ddd; }


#sub-menu .c div ul li { position:relative; flex:0 1 12.5%; padding:0 .5em; }
#sub-menu .c div ul li:not(:last-child):after { content:""; position:absolute; top:50%; transform:translateY(-50%); left:100%; height:10px; width:1px; background:#ddd; }

#sub-menu .c div ul li .sub-a { position:relative; display:flex; align-items:center; justify-content:center; height:100%; width:100%; white-space: nowrap; color:#666; transition-duration: 400ms; }
#sub-menu .c div ul li .sub-a.on,
#sub-menu .c div ul li .sub-a:hover { font-weight:600; color:#333; }
#sub-menu .c div ul li .sub-a:before { content:""; position:absolute; left:50%; transform:translateX(-50%); width:0; transition-duration: 400ms; }
#sub-menu .c div ul li .sub-a span { line-height:1.2; word-break: normal; }

#sub-menu .c div.depth2 ul li .sub-a:before { bottom:0; height:3px; background:#333; }
#sub-menu .c div.depth2 ul li .sub-a.on:before,
#sub-menu .c div.depth2 ul li .sub-a:hover:before { width:100%; }


#sub-menu .menu-tit { position:relative; width:100%; height:50px; font-size:1.125rem; padding:0 10px; align-items:center; justify-content:space-between; display:none; }
#sub-menu .menu-tit i { font-size:.875rem; }


@media (min-width: 1025px) {
	#sub-menu .c div ul li .sub-a.on,
	#sub-menu .c div ul li .sub-a:hover { color:#333 !important; }
}

@media (max-width: 1024px) {
	#sub-menu { background:#fff; transition-delay:350ms; }
	#sub-menu .c div ul { background:#fff; }
	#sub-menu .c div.depth2 ul { position:absolute; top:50px; left:0; right:0; display:block; height:0; padding:0 5px; overflow:hidden; background:#fff; border-bottom: 1px solid #ddd;z-index:2; }
	#sub-menu .c div.depth2 ul:before { display:none; }

	#sub-menu .c div ul li { padding:10px 15px; }
	#sub-menu .c div.depth2 ul li:after { display:none; }

	#sub-menu .menu-tit { border-bottom:1px solid transparent; transition-delay:350ms; display:flex; font-size:1rem; }

	#sub-menu .c div ul li .sub-a { padding:0 20px; color:#999; }
	#sub-menu .c div.depth2 ul li .sub-a:hover { color:var(--main-color1); }
	#sub-menu .c div.depth2 ul li .sub-a { display:block; }
	#sub-menu .c div.depth2 ul li .sub-a:before { display:none; }

	#sub-menu.on { transition-delay:0ms; }
	#sub-menu.on .c { border-bottom:1px solid #666; }
	#sub-menu.on .c div.depth2 ul { height:auto; padding:15px 5px; visibility:visible; overflow:visible; }
}

@media (max-width: 767px) {
	:root {
		--sub-menu-h:50px;
	}
	#sub-menu .c div ul li { padding:10px; }
	#sub-menu .c div ul li .sub-a { padding:0 15px; }
}