
/* 기본프로그램 사용자모듈 메뉴 - 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;}
}
html {scroll-behavior: smooth;}
body {height: 100vh; overflow: hidden;}
body.loaded {height: unset; overflow: visible;}
.wrap {overflow: hidden;}

/* font */
:root {
	--eng-font : 'Playfair Display';
	--kor-eng-font : 'Playfair Display', 'Pretendard';
}

.eng {font-family: var(--eng-font); letter-spacing: 0.05em;}

/* flex_wrap */
.flex_wrap {display: flex;}

/* inner */
.inner{width:100%; max-width:1400px; margin:0 auto; position:relative;}
.inner.full {max-width: 1920px;}
.inner.blank {max-width: calc(100% - calc(calc(100% - 1400px) / 2))}
.inner.w700 {max-width: 700px;}

@media all and (max-width:1400px){
	.inner{width:93.75%;}
	.inner.blank {width: 96.875%;}
}


/*ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

 * Header *
    
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ*/
.header-blank {height: 100px;}
#header {position: fixed; top: 0; left: 0; width: 100%; padding: 0 20px; box-sizing: border-box; background-color: #fff; z-index: 100; font-family: var(--kor-eng-font);}
#header .flex_wrap {display: flex; align-items: center; justify-content: space-between; height: 100px;}
/* logo */
#header .logo .m {display: none;}
/* gnb */
#header .gnb {height: 100%;width: calc(100% - 292px);display: flex;justify-content: space-around;align-items: center;}
#header .gnb .hide {display: none;}
#header .gnb > ul {display: flex; align-items: center; gap: 103px; height: 100%;}
#header .gnb > ul > li {height: 100%;}
#header .gnb > ul > li > a {display: flex; align-items: center; justify-content: center; height: 100%; font-weight: 500; font-size: var(--fz-18); letter-spacing: -0.02em; transition: 0.25s color; position: relative; color: #444;}
#header .gnb > ul > li > a span {color: #1e2d64;}
#header .gnb > ul > li > a::before {content: ''; position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 2px; height: 35px; background: linear-gradient(to bottom ,#1e2d64, transparent); opacity: 0; transition: 0.25s;}
#header .gnb > ul > li:hover > a {color: #1e2d64; font-weight: 700;}
#header .gnb > ul > li:hover > a::before {opacity: 1;}
#header .gnb > ul > li {position: relative;}
#header .depth02 {display: none; position: absolute; top: 100%; left: 50%; transform: translateX(-50%); width: fit-content; min-width: 150px; padding: 25px 0 40px; box-sizing: border-box; z-index: 1; text-align: center;}
#header .depth02 > li + li {margin-top: 10px;}
#header .depth02 > li > a {font-size: var(--fz-16); white-space: wrap;}
#header .depth02 > li > a:hover {color: #1e2d64; font-weight: 700; text-decoration: underline; text-underline-offset: 5px; text-decoration-thickness: 2px;}
#header .depth02_bg { display: none; position: absolute; top: 100%; left: 0; width: 100%;
background: url(/statics/images/img/depth02_bg.png) no-repeat center right / cover; } 
/* user */
#header .user .btn {gap: 20px;}
#header .user .btn i {display: block; width: 25px; height: 25px; background: url(/statics/images/img/person_25x25.png) no-repeat center center / contain; filter: brightness(0) saturate(100%) invert(14%) sepia(71%) saturate(1464%) hue-rotate(209deg) brightness(92%) contrast(95%);}
#header .user .btn:hover i {filter: invert(1);}

@media all and (max-width: 1600px) {
	#header .gnb > ul {gap: 40px;}
}

@media all and (max-width: 1400px) {
	#header {padding: 0;}
	#header .user .btn {min-width: unset; height: 50px; padding: 0 20px; box-sizing: border-box;}
	#header .user .btn span {display: none;}
}

@media all and (max-width: 1300px) {
	#header .logo .pc {display: none;}
	#header .logo .m {display: block;}
}

@media all and (max-width: 1024px) {
	#header .gnb {display: none;}
	#header .user {display: none;}
}


/*ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

 * 모바일 *
    
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ*/
#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%;}
#header .m_btn.on i:nth-of-type(1){margin:11px 0 -2px; transform:rotate(-45deg); -webkit-transform:rotate(-45deg); -moz-transform:rotate(-45deg); -ms-transform:rotate(-45deg);-o-transform:rotate(-45deg);}
#header .m_btn.on i:nth-of-type(2){width:0; margin:0;}
#header .m_btn.on i:nth-of-type(3){margin:0 0 11px; transform:rotate(45deg); -webkit-transform:rotate(45deg); -moz-transform:rotate(45deg); -ms-transform:rotate(45deg); -o-transform:rotate(45deg);}

.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 img {width: 50px;}
#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:#1e2d64; 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:#1e2d64; }
#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; }


@media all and (max-width: 1024px) {
	#header .m_btn {display: block;}
}


/*ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

 * Footer *
    
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ*/
#footer {background-color: #111; padding: 80px 0; box-sizing: border-box; color: #a6a6a6;}
#footer .flex_wrap {align-items: center; gap: 0 80px;}
/* user */
#footer .user {display: flex; align-items: center; gap: 25px;}
#footer .user a {font-weight: 700; font-size: var(--fz-16); line-height: 1.625em; text-decoration: underline; text-underline-offset: 5px;}
#footer .user a:hover {color: #fff;}
/* info */
#footer .info {display: flex; font-size: var(--fz-16); line-height: 1.625em; gap: 0 25px; flex-wrap: wrap; max-width: 34em; margin-top: 20px;}
/* sns */
#footer .sns {margin-left: auto; display: flex; align-items: center; gap: 10px;}
#footer .sns a {display: flex; align-items: center; justify-content: center; width: 50px; height: 50px; border-radius: 50%; border: 1px solid #313131; background: #191919; transition: 0.25s;}
#footer .sns a:hover {border-color: #fff; background-color: #fff;}
.copyright {background-color: #191919; color: #a6a6a6; font-size: var(--fz-14); letter-spacing: 0.1em; text-align: center; line-height: 1.7em; padding: 15px 0; box-sizing: border-box;}

#footer .sns a i.insta::before {content: url(/statics/images/img/ins.png);}
#footer .sns a i.facebook::before {content: url(/statics/images/img/facebook_14x26.png);}
#footer .sns a i.kakao::before {content: url(/statics/images/img/kakao-gray_24x22.png);}
#footer .sns a i.naver::before {content: url(/statics/images/img/naver_18x18.png);}
#footer .sns a i.youtube::before {content: url(/statics/images/img/youtube_22x16.png);}
#footer .sns a i.line::before {content: url(/statics/images/img/line.png);}
#footer .sns a i.whatsapp::before {content: url(/statics/images/img/whatsapp.png);}
#footer .sns a i.tiktok::before {content: url(/statics/images/img/tiktok.png);}
#footer .sns a i.threads::before {content: url(/statics/images/img/threads.png);}

@media all and (max-width: 1300px) {
	#footer .flex_wrap {gap: 40px;}
}

@media all and (max-width: 1100px) {
	#footer .flex_wrap {flex-wrap: wrap;}
	#footer .logo {width: 100%;}
}

@media all and (max-width: 767px) {
	#footer .logo {text-align: center;}
	#footer .user {justify-content: center;}
	#footer .info {margin: auto; justify-content: center;}
	#footer .sns {width: 100%; justify-content: center;}
}


/*ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

 * Quick *
    
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ*/
#quick {position: fixed; top: 50%; transform: translateY(-50%); z-index: 99;}
#quick ul li {width: 3.33em; font-size: var(--fz-18);}
#quick ul li a {display: flex; align-items: center; justify-content: center; width: 100%; min-height: 200px;  writing-mode: vertical-rl; padding: 20px 0; box-sizing: border-box; font-weight: 600; line-height: 1.22em; color: #fff; border: 1px solid #fff; background-color: #1e2d64; transition: 0.25s; font-size: inherit;}
#quick ul li:hover a {background-color: #f5e0d9; color: #1e2d64;}
/* 카카오톡 상담 */
#quick ul li.kakao a {min-height: unset; aspect-ratio: 1/1; background: #ffde00 url(/statics/images/img/kakao_24x22.png) no-repeat center center;}
#quick ul li.nblog a {min-height: unset; aspect-ratio: 1/1; background: #5ab533 url(/statics/images/img/nblog.png) no-repeat center center;}
#quick ul li.line a {min-height: unset; aspect-ratio: 1/1; background: #5ab533 url(/statics/images/img/line2.png) no-repeat center center;}
#quick ul li.whatsapp a {min-height: unset; aspect-ratio: 1/1; background: #ffffff url(/statics/images/img/whatsapp2.png) no-repeat center center;}
/* 최상위로 이동 */
#quick .top {display: flex; align-items: center; justify-content: center; font-family: var(--eng-font); font-weight: 700; font-size: var(--fz-18); color: #1e2d64; width: 3.33em; height: 3.33em; border-radius: 50%; background-color: #fff; border: 1px solid #a5abc1; transition: 0.25s; margin-top: 10px; box-sizing: border-box;}
#quick .top:hover {background-color: #1e2d64; color: #fff; border-color: #1e2d64;}

@media all and (min-width: 1921px) {
	#quick {right: calc( calc(100% - 1920px) / 2 );}
}

@media all and (max-width: 1920px) {
	#quick {right: 20px;}
}

@media all and (min-width : 768px) {
	#quick .top {opacity: 0; visibility: hidden; transition: 0.25s;}
	#quick .top.on {opacity: 1; visibility: visible;}
}

@media all and (max-width: 767px) {
	#quick {top: unset; bottom: 0; transform: unset; left: 0; width: 100%;}
	#quick ul {display: flex; background-color: yellow;}
	#quick ul li {width: calc(50% - 30px);}
	#quick ul li a{min-height: unset; writing-mode: unset; height: 60px;}
	#quick ul li.kakao {width: unset;}
	#quick .top {margin-top: 0; border-radius: unset; width: 100%;}
}

/* loading */
.load {position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: #fff; z-index: 999;}

