@charset "utf-8";
/* 기본프로그램 사용자모듈 메뉴 - PC */
.all_m_btn {padding:10px; background:#323337;}
.all_m_btn img {position:absolute; top:28%; left:15px; width:10%; max-width:40px; cursor:pointer;}
.all_m_btn .mutit {text-align:center; font-weight:900; font-size:26px; color:#fff;}
.pro_m_wrap {display:none; font-family:'Nanum Gothic', sans-serif; transition:all 0.3s linear;}
.pro_m_wrap .m_menu {width:200px;}
.pro_m_wrap .bg_black {display:none; position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.7); z-index:-1;}


/* 기본프로그램 사용자모듈 메뉴 - MOBILE */
.pro_m_wrap .subleftmenu {
	list-style:none;
	margin:0;
	padding:0;
}
.pro_m_wrap .subleftmenu li {
	border-bottom:1px solid #515155;
	background:#323337;
}
.pro_m_wrap .subleftmenu a {
	display:block;
	color:#b5b2b2;
	font-size:14px;
	padding:11px 5px 11px 15px;
	font-family:'Noto Sans KR';
}
.sub_title_m{
	font-size:28px !important;
	font-weight:bold;
	color:#fff !important;
	padding:12px 5px 12px 15px !important;
}
.pro_m_wrap .subleftmenu a:hover {
	background:#307dd4;
	color:#fff;
}
.sub_title_m:hover {
	background:#323337 !important;
	cursor:default;
}

@media all and (max-width:999px){
	.pro_m_wrap {display:block; position:absolute; left:-100%; top:0; z-index:999;}
	.pro_m_wrap.view {left:0;}
}

/*--------------------------------------------------------------*

* basic *

*---------------------------------------------------------------*/
img {width: 100%; max-width: fit-content;}

body {word-break: keep-all;}

.inner {width: 100%; max-width: 1140px; margin: 0 auto;}
.inner.w1800 {max-width: 1800px;}

@media all and (max-width: 1800px) {
    .inner.w1800 {width: 93.75%;}
}

@media all and (max-width: 1140px) {
    .inner {width: 93.75%;}
}

/*--------------------------------------------------------------*

* header *

*---------------------------------------------------------------*/
#header {position: relative; z-index: 100;}
/* top_wrap */
#header .top_wrap {border-bottom: 1px solid #f0f0f0; box-sizing: border-box;}
#header .top_wrap .inner {display: flex; align-items: center; justify-content: flex-end; min-height: 45px; }
#header .top_wrap .user_box {display: flex; align-items: center;}
#header .top_wrap .user_box li {padding: 0 20px; position: relative;}
#header .top_wrap .user_box li:first-child {padding-left: 0;}
#header .top_wrap .user_box li:last-child {padding-right: 0;}
#header .top_wrap .user_box li + li::before {content: ''; position: absolute; top: 50%; left: 0; transform: translateY(-50%); width: 1px; height: 12px; background-color: #ccc;}
#header .top_wrap .user_box li a {font-size: var(--fz-14); letter-spacing: -0.025em; color: #666; line-height: 1em;}
/* bot_wrap */
#header .bot_wrap .inner {display: flex; align-items: center; justify-content: space-between; min-height: 115px; gap: 0 30px;}
#header .bot_wrap .logo {flex-shrink: 0; padding: 20px 0;}
#header .gnb .hide {display: none;}
#header .bot_wrap .gnb > ul {display: flex; align-items: center;}
#header .bot_wrap .gnb > ul > li {position: relative;}
#header .bot_wrap .gnb > ul > li > a {display: block; padding: 20px 30px; box-sizing: border-box; font-weight: 600; font-size: var(--fz-18); letter-spacing: 1.56em; letter-spacing: -0.025em; color: #444; transition: 0.25s; text-align: center;}
#header .bot_wrap .gnb > ul > li:first-child > a {padding-left: 0;}
#header .bot_wrap .gnb > ul > li:last-child > a {padding-right: 0;}
#header .bot_wrap .gnb .depth02 {position: absolute; top: 100%; left: 50%; transform: translateX(-50%); background-color: #4887dd; min-width: 150px; text-align: center; padding: 25px 0; box-sizing: border-box; opacity: 0; visibility: hidden; transition: 0.35s;}
#header .bot_wrap .gnb > ul > li:last-child .depth02 {left: calc(50% + 15px);}
#header .bot_wrap .gnb .depth02 li + li {margin-top: 10px;}
#header .bot_wrap .gnb .depth02 li a {font-weight: 600; font-size: var(--fz-16); line-height: 1.75em; letter-spacing: -0.025em; color: #ccdef6; transition: 0.25s;}
#header .m_btn {display:none; width:24px; text-align:right; cursor:pointer; }
#header .m_btn i{display:inline-block; width:100%; height:2px; margin:3px 0; background:#000; transition:all 0.5s;}
#header .m_btn i:nth-of-type(2){width:84%;}
/* hover */
#header .bot_wrap .gnb > ul > li:hover > a {color: #4887dd;}
#header .bot_wrap .gnb > ul > li:hover .depth02 {opacity: 1; visibility: visible;}
#header .bot_wrap .gnb .depth02 li a:hover {color: #fff;}

@media all and (max-width: 1800px) {
    #header .bot_wrap .gnb > ul > li > a {padding: 20px;}
    #header .bot_wrap .gnb > ul > li:last-child .depth02 {left: calc(50% + 10px);}
}

@media all and (max-width: 1500px) {
    #header .bot_wrap .gnb > ul > li > a {padding: 14px;}
    #header .bot_wrap .gnb > ul > li:last-child .depth02 {left: calc(50% + 7px);}
}

@media (min-width: 1025px) and (max-width: 1300px) {
    #header .bot_wrap .inner {flex-direction: column; justify-content: center;}
}

@media all and (max-width: 1024px) {
    #header .bot_wrap .gnb {display: none;}
    #header .bot_wrap .m_btn {display: block;}
}

/*--------------------------------------------------------------*

* m_menu *

*---------------------------------------------------------------*/
.m_menu_bg {z-index:101; position:fixed; left:0; top:0; display:none; width:100%; height:100%; background:rgba(0,0,0,.7); cursor:pointer; }
#m_menu {z-index:102; position:fixed; right:-100%; top:0; width:500px; max-width:80%; height:100%; background-color:#fff; box-sizing:Border-box; transition:all 0.5s; overfloW-y:auto;}
#m_menu.on {right:0; }
#m_menu .top_box {position:relative; padding:10px; box-sizing:border-box; }
#m_menu .top_box .close_btn {position:absolute; right:20px; top:calc(50% - 15px); width:30px; height:30px; }
#m_menu .top_box .close_btn i {display:block; width:100%; height:2px; background-color:#333; }
#m_menu .top_box .close_btn i:first-of-type {-webkit-transform:rotate(45deg) translate(9px,9px); -moz-transform:rotate(45deg) translate(9px,9px); -ms-transform:rotate(45deg) translate(9px,9px); -o-transform:rotate(45deg) translate(9px,9px); transform:rotate(45deg) translate(9px,9px); }
#m_menu .top_box .close_btn i:last-of-type {-webkit-transform:rotate(-45deg) translate(-7px,8px); -moz-transform:rotate(-45deg) translate(-7px,8px); -ms-transform:rotate(-45deg) translate(-7px,8px); -o-transform:rotate(-45deg) translate(-7px,8px); transform:rotate(-45deg) translate(-7px,8px); }
#m_menu .login_box {padding:20px 0; background-color:#292929; text-align:center; }
#m_menu .login_box a {position:relative; padding:0 30px; font-size:20px; color:#fff; letter-spacing:-0.04em; }
#m_menu .login_box a:first-of-type:before {content:''; position:absolute; right:-1px; top:calc(50% - 7px); width:2px; height:15px; background-color:#fff; }
#m_menu .gnb_box {border-top:1px solid #ddd; }
#m_menu .gnb_box .hide {display: none;}
#m_menu .gnb_box > ul > li {border-bottom:1px solid #dddddd; }
#m_menu .gnb_box > ul > li > a {position:relative; display:block; padding:20px 20px; font-size:20px; font-weight:bold; color:#222222; letter-spacing:-0.04em; box-sizing:border-box; }
#m_menu .gnb_box .depth02 {display:none; padding:10px 0; background-color:#000; }
#m_menu .gnb_box .depth02 li a {position:relative; display:block; padding:7px 20px; font-size:18px; color:#fff; letter-spacing:-0.04em; box-sizing:border-box; }

/*--------------------------------------------------------------*

* Footer *

*---------------------------------------------------------------*/
#footer_custom {padding: 60px 0; box-sizing: border-box; border-top: 1px solid #f0f0f0;}
#footer_custom .inner {display: flex; align-items: center; column-gap: 120px;}
#footer_custom .left_wrap {flex-shrink: 0;}
#footer_custom .btn_wrap {margin-top: 40px; }
#footer_custom .btn_wrap a + a{margin-left: 5px;}
#footer_custom .info {display: flex; flex-wrap: wrap; margin-left: -15px;}
#footer_custom .info li {font-size: var(--fz-16); line-height: 1.625em; letter-spacing: -0.025em; color: #888; padding: 0 15px;}
#footer_custom .copyright {font-size: var(--fz-16); line-height: 1.78em; letter-spacing: -0.025em; color: #aaa; margin-top: 15px;}


@media all and (max-width: 1140px) {
    #footer_custom .inner {column-gap: 60px;}
}

@media all and (max-width: 767px) {
    #footer_custom .inner {flex-direction: column; align-items: flex-start; row-gap: 40px;}
}