@charset "utf-8";
html,
body {overflow-x: hidden;}
body.darkBg::before { position: absolute; content: ""; left: 0; top: 0; width: 100vw; height: 100000vh; background: rgba(0,0,0,0.6); z-index: 999; }
.container {position: relative; margin:0 auto; width:100%; max-width:82rem; padding: 0 1rem;}
/* .container:after {clear:both; display:block; content:"";} */

:root {
  --headerMenu: 5rem;
  --mobileUtil: 3rem;
  --mobileMn: calc(var(--headerMenu) + var(--mobileUtil));
}

.mainCnt { margin-top: var(--headerMenu); }

/*헤더*/
header {position: fixed; top: 0; left: 0; width: 100%; z-index:998; box-shadow: 0px 3px 4px rgba(0,0,0,0.1); height: var(--headerMenu); background: #fff; transition: top 0.3s ease-in-out; }
.main header {position: absolute; top:0;}
header .container {display: flex; justify-content: space-between; height: 100%; transition: 0.3s ease-in-out; max-width: 90rem; }
header .container::before { position: absolute; content: ""; width: 100vw; height: calc(100vh - var(--headerMenu)); left: 50%; transform: translateX(-50%); top: var(--headerMenu); background: rgba(0,0,0,0.5); opacity: 0; visibility: hidden; }
header.mosOn .container::before { opacity: 1; visibility: visible; }
header.onSrch .container::before { opacity: 1; visibility: visible; }
header.mosOn { height: auto; box-shadow: none; background: transparent; }
header:after { background: #F5F4F9; border-radius: 0 0 5rem 5rem; box-shadow: 0px 10px 15px rgba(0,0,0,0.2); position: absolute; content: ""; left: 0; width: 100%; height: 0; top: var(--headerMenu); transition: 0.3s ease-in-out; }
header.mosOn:after { height: calc(100% - var(--headerMenu)); }
header.mosOn::before { position: absolute; content: ""; left: 0; top: 0; width: 100%; height: var(--headerMenu); background: #fff; box-shadow: 0px 3px 4px rgba(0,0,0,0.1); }


/* 260310 수정 header #nav { transition: 0.3s ease-in-out; } 
header.mosOn #nav { padding: 0; } */
/* header.mosOn .container { max-width: 98rem; } */

header .container::after {display: none;}
header.gnbTpop { height:calc(4.5rem + 55px); }

.subScroll header { top: -100%; }
.subScrollRvrs header { box-shadow: 0px 3px 4px rgba(0,0,0,0.1); }
.subScrollRvrs header.mosOn { box-shadow: none !important; }

/* logo */
header h1 { z-index:999; overflow:hidden; font-size: 0; height: var(--headerMenu); }
header h1 a {display: inline-flex; align-items: center; justify-content: center; font-size: 0; line-height: 0; height: 100%; }
header h1 img { width:auto; max-width: 10rem; }
header h1 .h1_m {display: none;}
header .mob_btn { display:none; }

/* gnb 버튼영역 */
header .gnb_btn{display: flex; align-items: center; gap: 1rem;  color:transparent; z-index:12; height: var(--headerMenu); }
header .gnb_btn a,
header .gnb_btn button {font-size: 1.4rem; color: #333; padding: 0;}
header .gnb_btn .srchBtn { width: 1.7rem; }
header .gnb_btn .srchBtn .xi-search { display: block; }
header .gnb_btn .srchBtn .xi-close-circle { display: none; }
header .gnb_btn .srchBtn.srchOpen .xi-search { display: none; }
header .gnb_btn .srchBtn.srchOpen .xi-close-circle { display: block; font-size: 1.7rem; }


/* 검색 */
header .search { position:absolute; top:var(--headerMenu); z-index:200; display: none; width:100vw;  height: 16rem; border-radius: 0 0 5rem 5rem; background:#F5F4F9; box-shadow: 0px 10px 15px rgba(0,0,0,0.2); left: 50%; transform: translateX(-50%); }
header .search.active { display: block !important; }
header .search .inner { display: flex; width: 30rem; flex-direction: column; align-items: center; height: 100%; position: relative; position: relative; margin: 0 auto; padding: 4rem 0 4.65rem; }
header .search .inner > img { position: absolute; left: -7.9rem; bottom: 4.4rem; max-width: 7.15rem; }
header .search h2 { font-family: 'Montserrat'; font-size: 1.6rem; text-transform: uppercase; color: #d8d6e2; font-weight: 900; letter-spacing: 2px; margin-bottom: 1.5rem; }
header .search_wrap { display:block; position:relative; width: 100%; max-width: 30rem; }
header .search input { width:100% !important; min-width: auto !important; line-height:3.8rem !important; font-weight:400 !important; font-size:1rem !important; color:#666665 !important; border:none !important; height: 3.8rem !important; border-radius: 5rem !important; border: 3px solid #3F4E81 !important; padding: 0 4rem 0 1.5rem !important;  background: #fff !important; }
header .search a.btn_top_sear { position: absolute; right: 0.45rem; top: 50%; transform: translateY(-50%); border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; color: #fff; background: #3F4E81; width: 3rem; height: 3rem; font-size: 1.5rem; }

/* 전체메뉴 */
header .fullmenu{ display:inline-block; overflow:hidden; width:1.15rem; z-index:12; }
header .fullmenu span{display:block; float:left; height:3px; width:100%; margin:3px 0; background:#333; transition:all 0.3s ease;}
.main header .fullmenu span{background:#fff;}
header .fullmenu:hover span{width:100% !important;}

/* web navigation */
/* gnb common */
#nav { z-index:10; flex: 1; padding: 0 5rem; /* 260310 수정 */ }
#gnb { position:relative; z-index:2; height: 5rem; }
#gnb.active { height: auto; }
#gnb li a { position:relative; display:block; font-weight:400; line-height:1.4; }
#gnb li a span { position:relative; display:inline-block; word-break:break-all; z-index:0; }
#gnb .wrap { width:100%; z-index:1; margin: 0 auto;  }
#gnb .wrap > ul { display:flex; width:100%; text-align:center; justify-content: center; gap: 0; }
#gnb .wrap > ul > li { font-size:0.8rem; text-align:left; line-height:1.6; flex: 1; }
#gnb .wrap > ul > li > a { display:flex; width:100%; height:var(--headerMenu); line-height:1.2; justify-content:center; align-items:center; font-size:1rem; color:#222; font-weight:600; z-index:2;}
.main #gnb .wrap > ul > li > a { color:#fff;}
#gnb .wrap > ul > li > a span {position: relative; display: inline-block; text-align: center; word-break: keep-all; }
#gnb .wrap > ul > li > a span::after{content: ''; display: block; width: 0; height: 0.1rem; background: #fff; position: absolute; bottom: -0.4rem; left: 50%; transform: translateX(-50%);}
#gnb .depth02 { padding: 1.05rem 0 1.45rem; width: 0; margin: 0 auto; height: 0; overflow: hidden; opacity: 0; visibility: hidden; }
#gnb .depth02 > ul { display: flex; flex-direction: column; gap: 1.25rem; padding: 1rem; background: #fff; border-radius: 1rem; border: 1px solid #E6E5ED; height: 100%; }
#gnb .depth02 > ul > li > a { color:#000000; font-weight:500; font-size: 0.9rem; line-height: 1.2; padding-right: 1rem; }
#gnb .depth02 > ul > li > a strong { font-weight: unset !important; }
#gnb .depth03 { position:relative; display:none; margin-top: 0.5rem; }
#gnb .depth03 > ul { background: #fff; border-radius: 0.5rem; padding: 0.75rem 0.6rem; display: flex; flex-direction: column; gap: 0.6rem; }
#gnb .depth03 > ul > li > a { display: block; color: #000000; font-size: 0.7rem; font-weight: 400; }
#gnb .depth03 > ul > li > a strong { font-weight: unset !important; }
/* gnb :새창 공통 */
#gnb li > a[target='_blank'] > span:after { content:'\e980'; display:inline-block; margin-left:.15rem; font-family:'xeicon'; }
#gnb a,
#gnb li > a:before, 
#gnb li > a:after, 
#gnb .wrap > ul > li > a span::after,
#gnb li > a > span:before { transition:all .2s; -webkit-transition:all .2s; }
/* gnb : active  */
#gnb .wrap > ul > li.on > a,
#gnb .wrap > ul > li > a:hover,
#gnb .wrap > ul > li > a:focus { color: #3f4e81; font-weight: bold; }
/* 260310 수정 #gnb.active .wrap > ul { gap: 0; }
#gnb.active .wrap > ul > li { flex: 1; }  */
#gnb.active .wrap > ul > li.on > .depth02 > ul { background: #3F4E81; border-color: #3F4E81; box-shadow: 2px 2px 8px rgba(101,76,73,0.4); }
#gnb.active .wrap > ul > li.on > .depth02 > ul > li > a { color: #fff; }
#gnb.active .wrap > ul > li.on > .depth02 > ul > li.dep.actv > a { font-weight: bold; }
#gnb.active .wrap > ul > li.on > .depth02 > ul > li > a::before { position: absolute; content: "\ea6e"; right: 0; top: 0.1rem; line-height: 1; color: #C0C8E4; font-family: 'remixicon'; font-weight: 400 !important; }
#gnb.active .wrap > ul > li.on > .depth02 > ul > li.dep > a::before { content: "\ea4e"; transition: 0.2s ease-in-out; }
#gnb.active .wrap > ul > li.on > .depth02 > ul > li.dep.actv > a::before { transform: rotate(180deg); color: #fff; }
#gnb.active .wrap > ul > li > a { padding: 0 0.5rem; }
#gnb.active .depth02 {  padding: 1.05rem 0 1.45rem; width: calc(100% - 1rem); opacity: 1; visibility: visible; transition: opacity 0.3s ease 0.3s, visibility 0s linear 0.3s, width 0s ease 0s; height: calc(100% - var(--headerMenu)); }
#gnb .depth03 > ul > li > a:hover,
#gnb .depth03 > ul > li > a:focus { color: #3F4E81; font-weight: bold; }
#gnb.active .wrap > ul > li.on > .depth02 > ul > li.dep.actv .depth03 { display: block; }

/* footer */
footer { background: #393738; color: #DDDDDD; }
footer .top { display: flex; justify-content: space-between; position: relative; }
footer .top::before { position: absolute; content: ""; height: 1px; width: 100vw; left: calc((100vw - 80rem) / -2); bottom: 0; background: rgba(255,255,255,0.3); }
footer .top > ul { display: flex; flex-wrap: wrap; align-items: center; margin-left: -1.25rem; padding: 1.45rem 1rem 1.45rem 0; gap: 0.5rem 0; flex: 1; }
footer .top > ul li a { padding: 0 1.25rem; font-size: 0.85rem; font-weight: 600; position: relative; line-height: 1rem; }
footer .top > ul li a::before { position: absolute; content: ""; border-radius: 50%; right: -0.1rem; top: 50%; transform: translateY(-50%); background: #D9D9D9; width: 0.2rem; height: 0.2rem; }
footer .top > ul li:last-child a::before { display: none; }
footer .top > ul li.prcv a { color: #9AB2FF; }
footer .top .siteLnk { position: relative; }
footer .top .siteLnk > a { display: inline-flex; align-items: center; justify-content: space-between; height: 100%; padding: 0 1.2rem; color: #E5E5E5; font-size: 0.85rem; font-weight: 600; width: 12.5rem; border-left: 1px solid rgba(255,255,255,0.3); border-right: 1px solid rgba(255,255,255,0.3); }
footer .top .siteLnk > a > i { color: #e5e5e5; font-weight: 400; font-size: 1rem; transition: 0.2s ease-in-out; }
footer .top .siteLnk.open > a > i { transform: rotate(180deg); }
footer .top .siteLnk > .siteLst { display: none; position: absolute; bottom: 100%; left: 0; width: 100%; }

footer .top .siteLnk > .siteLst ul { background: #fff; z-index: 1; border: 1px solid #eee;  }
footer .top .siteLnk > .siteLst ul > li > a { display: block; width: 100%; padding: 0.5rem 1rem; font-size: 0.8rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; border-top: 1px solid #eee; color: #111; }
footer .top .siteLnk > .siteLst ul > li:first-child > a { border-top: none; }

footer .bot { padding: 1.5rem 0 3rem; }
footer .bot > ul { display: flex; gap: 0.5rem 1.5rem; font-size: 0.85rem; flex-wrap: wrap; }
footer .bot > p { color: #DDDDDD; font-size: 0.85rem; margin-top: 0.3rem; }


/* 상단이동 */
.btn_top {position: relative; display:inline-flex; align-items: center; justify-content: center; position:absolute; top:0; transform: translateY(-50%); right: -3rem; z-index:99; width:3.1rem; height:3.1rem; color:#fff; font-size: 0.85rem; border-radius: 50%; font-weight: 600; background:#6C8CF4; animation: waveBtn 1.5s infinite linear; text-transform: uppercase; letter-spacing: 0px; }

@-webkit-keyframes waveBtn {
	0% {
		box-shadow: 0 0 0 0 rgba(126,171,255,0.8);
	}
	70% {
		box-shadow: 0 0 0 5px rgba(126,171,255,0.3);
	}
	100% {
		box-shadow: 0 0 0 8px rgba(126,171,255,0);
	}
}

/*===================================== 서브 =========================================*/

.subCntBody { min-height: 650px; padding-top: var(--headerMenu); margin-bottom: 6rem; }
.subCntBody .container { margin-top: -9rem; display: flex; flex-wrap: wrap; gap: 3rem; }
.subCntBody .content { margin-top: 4.45rem; }
.subvisual { position: relative; display: flex; align-items: center; justify-content: center; max-width: 90rem; margin: 0 auto; font-size: 0; line-height: 0; height: 12.65rem; background: linear-gradient(to right, #ffe7f0, #fff0e2); border-radius: 1.25rem 1.25rem 5rem 1.25rem; }
.subvisual > img { max-width: 41.7rem; position: absolute; bottom: 0; right: 5rem; }
.subCntBody .snsBox { position: absolute; right: 5rem; bottom: 0; transform: translateY(50%); z-index: 10; display: flex; align-items: center; gap: 0.25rem; } 

.subCntBody .snsBox .btnPrint { position: relative; border-radius: 50%; width: 1.6rem; height: 1.6rem; display: inline-flex; align-items: center; justify-content: center; background: #fff; border: 1px solid #D5D5D5; color: #666665; padding: 0; font-size: 0.8rem; }
.subCntBody .snsBox .btnPrint:hover,
.subCntBody .snsBox .btnPrint:focus { background: #3F4E81; border-color: #3F4E81; color: #fff; }

.subCntBody .snsBox .btnShare { position: relative; border-radius: 50%; width: 1.6rem; height: 1.6rem; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; background: #fff; border: 1px solid #D5D5D5; color: #666665; padding: 0; font-size: 0.8rem; }

.subCntBody .snsBox.open .btnShare,
.subCntBody .snsBox .btnShare:hover,
.subCntBody .snsBox .btnShare:focus { background: #3F4E81; border-color: #3F4E81; color: #fff; }

.subCntBody .snsBox .btnShare::before { position: absolute; content: "\f0f7"; font-family: 'remixicon'; left: 50%; top: 50%; transform: translate(-50%, -50%); transition: 0.2s ease-in-out; }

.subCntBody .snsBox.open .btnShare::before { content:"\f4c8"; }
.subCntBody .snsBox.open .sns_more { display: flex; }

.subCntBody .snsBox .sns_more { position: absolute; margin-top: 0.25rem; display: none; top: 100%; right: 0; left: auto; transform: none; width: 1.6rem; bottom: auto !important; flex-direction: column; gap: 0.25rem; }
.subCntBody .snsBox .sns_more > button { width: 1.6rem; height: 1.6rem; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-size: 0; text-indent: -9999px; padding: 0 !important; position: relative; } 

.subCntBody .snsBox .sns_more > button::before { position: absolute; content: ""; left: 50%; top: 50%; transform: translate(-50%,-50%); text-indent: 0; font-family: 'remixicon'; }

.subCntBody .snsBox .sns_more > button.btn_Ks { color: #3A1C1D; background: #F2DA00; font-size: 0.9rem; }
.subCntBody .snsBox .sns_more > button.btn_Ks::before { content: "\ee6c"; }
.subCntBody .snsBox .sns_more > button.btn_F { color: #fff; background: #0C5BFF; font-size: 0.8rem; }
.subCntBody .snsBox .sns_more > button.btn_F::before { content: "\ecbc"; }
.subCntBody .snsBox .sns_more > button.btn_T { color: #fff; background: #000000; font-size: 0.7rem; }
.subCntBody .snsBox .sns_more > button.btn_T::before { content: "\f3e7"; }
.subCntBody .snsBox .sns_more > button.btn_Bn { color: #fff; background: #2bc632; font-size: 0.8rem; }
.subCntBody .snsBox .sns_more > button.btn_Bn::before { content: "\ebf9"; font-family: "xeicon" !important; }

/* 260310 수정 .subCntBody .snsBox > ul { display: flex; align-items: center; gap: 0.3rem; }
.subCntBody .snsBox > ul > li { position: relative; border-radius: 50%; width: 1.6rem; height: 1.6rem; }
.subCntBody .snsBox > ul > li > button { width: 100%; height: 100%; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; background: #fff; border: 1px solid #D5D5D5; color: #666665; padding: 0; font-size: 0.8rem; transition: 0.2s ease-in-out; }
.subCntBody .snsBox > ul > li.sns.open > button,
.subCntBody .snsBox > ul > li > button:hover,
.subCntBody .snsBox > ul > li > button:focus { background: #3F4E81; border-color: #3F4E81; color: #fff; }
.subCntBody .snsBox > ul > li.sns > button .ri-close-large-line { display: none; }
.subCntBody .snsBox > ul > li.sns.open > button .ri-close-large-line { display: block; }
.subCntBody .snsBox > ul > li.sns.open > button .ri-share-fill { display: none; }
.subCntBody .snsBox > ul > li.sns > .snsLst { display: none; margin-top: 0.25rem; }
.subCntBody .snsBox > ul > li.sns.open > .snsLst { display: block; }
.subCntBody .snsBox > ul > li.sns > .snsLst > ul { display: flex; flex-direction: column; gap: 0.25rem; }
.subCntBody .snsBox > ul > li.sns > .snsLst > ul > li { width: 100%; height: 1.6rem; border-radius: 50%; }
.subCntBody .snsBox > ul > li.sns > .snsLst > ul > li > a { width: 100%; height: 100%; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; }
.subCntBody .snsBox > ul > li.sns > .snsLst > ul > li.sns_k > a { color: #3A1C1D; background: #F2DA00; font-size: 0.9rem; }
.subCntBody .snsBox > ul > li.sns > .snsLst > ul > li.sns_f > a { color: #fff; background: #0C5BFF; font-size: 0.8rem; }
.subCntBody .snsBox > ul > li.sns > .snsLst > ul > li.sns_t > a { color: #fff; background: #000000; font-size: 0.7rem; } */
div.lnb { position: relative; width: 14rem; }
div.lnb h2 { display: inline-flex; align-items: center; justify-content: center; background: #3F4E81 url('/images/web/forteacher/sub_cnt/subTit.png')no-repeat right -1rem center; background-size: cover; border-radius: 1rem 3rem 1rem 1rem; width: 100%; color: #fff; padding: 1rem; min-height: 7.5rem; font-size: 1.6rem; font-weight: 700; overflow: hidden; }
div.lnb nav { margin-top: 0.5rem; }
div.lnb ul.lnb > li { width: 100%; border: 1px solid #D5D5D5; border-radius: 0.5rem; background: #fff; }
div.lnb ul.lnb > li + li { margin-top: 0.6rem; }
div.lnb ul.lnb > li > a { display: block; padding: 0.8rem 1rem; position: relative; color: #333; font-size: 0.9rem; font-weight: 500; }
div.lnb ul.lnb > li.dep > a { padding-right: 2rem !important; }
div.lnb ul.lnb > li.dep > a::before { position: absolute; content: "\ea78"; right: 1rem; top: 0.95rem; color: #000; font-weight: 400 !important; transform: rotate(180deg); font-family: 'remixicon'; line-height: 1; }
.lnb .subLnb { display: none; width: 100%; padding: 0 1rem; margin-top: 1rem; }
.lnb .subLnb > li + li { margin-top: 0.5rem; }
.lnb .subLnb > li > a { display: block; color: #333; padding-left: 0.7rem; font-size: 0.85rem; position: relative; line-height: 1rem; }
.lnb .subLnb > li > a::before { position: absolute; content: ""; left: 0; top: 0.4rem; border-radius: 50%; width: 0.2rem; height: 0.2rem; background: #BFC1C2; }
div.lnb ul.lnb > li.dep.actv { padding: 1.25rem 0; }
div.lnb ul.lnb > li.dep.actv > a { padding: 0.3rem 1rem 0.5rem 1rem; }
div.lnb ul.lnb > li.actv > a { color: #3f4e81; font-weight: bold; }
div.lnb ul.lnb > li.dep.actv > a:after { position: absolute; content: ""; bottom: 0; height: 2px; left: 1rem; width: calc(100% - 2rem); background: #3f4e81; }
div.lnb ul.lnb > li.dep.actv > a::before { top: 0.45rem; }
div.lnb ul.lnb > li.dep.actv > a::before { transform: none; }
div.lnb ul.lnb > li.actv > .subLnb { display: block; }
.lnb .subLnb > li.actv > a,
.lnb .subLnb > li > a:hover,
.lnb .subLnb > li > a:focus { color: #333; }
.lnb .subLnb > li.actv > a:before,
.lnb .subLnb > li > a:hover::before,
.lnb .subLnb > li > a:focus::before { background: #333; }
.subContent { width: calc(100% - 17rem); }
.subContent .subTitle { padding: 1.6rem 5rem 1.6rem 0; }
.subContent .subTitle .snsBox { display: none; }
.subContent .subTitle .location ul { display: flex; flex-wrap: wrap; align-items: center; gap: 0.25rem 0; }
.subContent .subTitle .location ul li { position: relative; padding: 0 0.7rem; line-height: 1rem; font-size: 0.85rem; color: #666665; }
.subContent .subTitle .location ul li.home { position: relative; padding-left: 0; }
.subContent .subTitle .location ul li.home a { display: inline-flex; align-items: center; justify-content: center; font-size: 1rem; }
.subContent .subTitle .location ul li + li::before { position: absolute; content: "\ea6e"; font-family: 'remixicon'; width: 1rem; height: 1rem; display: inline-flex; align-items: center; justify-content: center; color: #666665; font-size: 1rem; left: 0; top: 0; transform: translateX(-50%); }
.subContent .pageTitle { font-size: 2rem; display: block; color: #000; font-weight: bold; line-height: 2.4rem; margin-top: 0.85rem; }
.subContent .mbTopMenu { display: none; } 

/* =================================================상위 메뉴 활성화 스타일 추가 ================================================= */

/* 1. LNB(왼쪽 메뉴) 및 탭 메뉴의 상위 항목이 활성화(actv/on)일 때 글자 강조 */
/* */
.lnb li.actv > a, 
.tab_st1 li.on > a {
    font-weight: bold !important;
    color: #3F4E81 !important; /* 메인 테마 색상 */
}

/* 2. 하위 메뉴(subLnb)를 가진 메뉴가 활성화되었을 때 하위 리스트를 화면에 표시 */
/* */
.lnb li.dep.actv > .subLnb {
    display: block !important;
}

/* 3. 상단 GNB 메뉴 활성화 시 스타일 (필요 시 추가) */
/* */
#gnb li.on > a {
    color: #3f4e81 !important;
    font-weight: bold !important;
}

/*===================================== 서브 =========================================*/

@media screen and (min-width: 1025px) {
    /* 전체메뉴 */
    .popFullmenu { display:none; position:fixed; left:0; top:0; width:100%; height:100%; background:linear-gradient(to top, #FFECD9 0%, #FFEAF2 75%); z-index:999; overflow: hidden; padding-bottom: 2rem; padding-top: 4.95rem; }
	.popFullmenu .util { display: none; }
    .popFullmenu::before {content:''; position: absolute; top:0; left: 50%; margin-left: -25rem; width: 100%; height: 150%; background: #fff; border-top-left-radius: 7.5rem;}
    .popFullmenu .fullmenu_wrap { position:relative; width:100%; height: 100%; color:#666665; margin:0.9rem auto 0; line-height:0; overflow-y: auto; }
	.popFullmenu .fullmenu_wrap::-webkit-scrollbar { display: none; }
    .popFullmenu .fullmenu_wrap .fullmenu_util {display: none;}
    .popFullmenu h2,
    .popFullmenu .fullLogo { position: fixed; top: 1.1rem; left: calc((100vw - 80rem) / 2); opacity: 0; visibility: hidden; }
	.popFullmenu h2 a,
	.popFullmenu .fullLogo a { display: inline-flex; align-items: center; justify-content: center; font-size: 0; line-height: 0; }
    .popFullmenu .sdept01 {max-height: 100%; max-width: 80rem; margin: 0 auto; }
    .popFullmenu .sdept01 > li {position: relative; display:flex; width:100%; margin:0 0 1rem; vertical-align:top; font-size:0.8rem; line-height:1.3; }
    .popFullmenu .sdept01 > li::after {content:''; position: absolute; left: 50%; bottom: 0; transform: translateX(-50%); width: 200%; height: 1px; background: #ccc;}
    .popFullmenu .sdept01 > li > a {width: 21%; max-width: 15rem; display:block; font-size:1.4rem; padding:0.5rem 1rem 0.5rem 0; color:#111; font-weight:bold; word-break: keep-all;}
    .popFullmenu .sdept01 > li > a > span {position: relative;  display:inline-block; }
    /* .popFullmenu .sdept01 > li > a > span::after {content: ''; position: absolute; right: -0.75rem; top: -0.1rem; width: 8px; height: 8px; border-radius: 50%; background: #3F4E81; opacity: 0;} */
    .popFullmenu .sdept01 > li > a[target="_blank"] > span:after { content:""; display:inline-block; width:18px; height:18px; margin-left:0.5rem; background:url(/resources/images/T3_B_layout/icon_new_WG.png) no-repeat; vertical-align:middle; }
    .popFullmenu .sdept01 > li:hover > a[target="_blank"] > span:after { background-image:url(/resources/images/T3_B_layout/icon_nav_wh.png); }
    .popFullmenu .sdept02 { flex:1; margin:0; font-weight:200; padding-left: 4rem; padding-right: 0.5rem; }
    .popFullmenu .sdept02 .titBox {display: none !important;}
    .popFullmenu .sdept02 > ul {display: flex; flex-wrap: wrap; gap: 1rem 2.25rem; margin-bottom: 2rem;}
    .popFullmenu .sdept02 > ul > li {width: calc((100% - 6.75rem) / 4); }
    .popFullmenu .sdept02 li a[target='_blank'] strong:after { content:''; display:inline-block; position:relative; width:11px; height:11px; margin:-3px 0 0 8px; vertical-align:middle; background:url('/resources/images/T3_B_layout/icon_new_WW.png') no-repeat; }
    .popFullmenu .sdept02 .group > li > a {position: relative; display:flex; align-items: center; height: 2.75rem; line-height: 1.2; padding: 0 0.9rem; font-size: 0.95rem; font-weight: 500; color: #333; border-radius: 0.6rem; border: 1px solid #888; letter-spacing: -1.5px;}
	.popFullmenu .sdept02 .group > li > a strong { font-weight: unset !important; }
    .popFullmenu .sdept02 .group > li > a::before {content:''; position: absolute; left: -1px; top: -1px; right: -1px; bottom: -1px; width: auto; height: auto; border-radius: 0.6rem; border: 2px solid #3F4E81; opacity: 0;}
    /* .popFullmenu .sdept02 > .group > li > a::after {content: '\EA70'; position: absolute; right: 0.5rem; top: 50%; display: flex; align-items: center; justify-content: center; width: 1.15rem; height:1.15rem; border-radius: 50%; transform: translateY(-50%); font-family: 'remixicon'; font-size: 1rem; color: #333; opacity: 1;} */
    .popFullmenu .sdept02 .group > li.dep > a:after { content:"\EB79"; font-family: 'remixicon'; color: #1C5BBE; position:absolute; right:0.85rem; top:50%; transform: translateY(-50%); opacity: 0;}
    .popFullmenu .sdept02 .group > li > a[target="_blank"]::after {content: '\ECAF'; color: #666665;}
    .popFullmenu .sdept02 .group .group {background:rgba(255,255,255,0.2); margin:0.6rem 1.1rem 0 1.1rem; overflow:hidden; display: flex; flex-direction: column; gap: 0.5rem; }
    .popFullmenu .sdept02 .group .group > li > a {display:block; position:relative; height: auto; padding:0 0 0 0.6rem; font-size:0.9rem; color: #333; border: none; border-radius: 0;}
    .popFullmenu .sdept02 .group .group > li > a:before{content:""; position:absolute; left:0; top:calc(50% - 2px); right: auto; bottom: auto; width:4px; height:4px; border-radius:50%; background:#BFC1C2; border: none; opacity: 1;}
    .popFullmenu .sdept01 > li:hover > a > span::after {opacity: 1;}
    .popFullmenu .sdept02 > .group > li > a:hover,
	.popFullmenu .sdept02 > .group > li > a:focus,
	.popFullmenu .sdept02 > .group > li.actv > a { color:#3F4E81; font-weight: 600; }
    .popFullmenu .sdept02 > .group > li > a:hover:after,
	.popFullmenu .sdept02 > .group > li > a:focus:after { color:#3F4E81; font-weight: 400;}
    .popFullmenu .sdept02 > .group > li > a:hover::before,
	.popFullmenu .sdept02 > .group > li > a:focus::before,
	.popFullmenu .sdept02 > .group > li.actv > a::before,
    .popFullmenu .sdept02 > .group > li.dep > a:hover::after,
	.popFullmenu .sdept02 > .group > li.dep > a:focus::after {opacity: 1;}
    .popFullmenu .sdept02 .group .group > li > a:hover,
	.popFullmenu .sdept02 .group .group > li > a:focus,
	.popFullmenu .sdept02 .group .group > li.actv > a { color: #3F4E81; }
    .popFullmenu .sdept02 .group .group > li > a:hover::before,
	.popFullmenu .sdept02 .group .group > li > a:focus::before,
	.popFullmenu .sdept02 .group .group > li.actv > a:before { background: #3F4E81; }
    .popFullmenu .sdept02 strong { font-weight:inherit; }
    .popFullmenu a,
    .popFullmenu *:after,
    .popFullmenu *:before { transition:all .3s ease; -ms-transition:all .3s ease; -webkit-transition:all .3s ease; }
    #fullmenuClose{position:fixed; right:calc((100vw - 80rem) / 2); top:0.9rem; font-size: 2.2rem; color: #111; opacity: 0; visibility: hidden; }
    #fullmenuClose:hover{color: #3F4E81;}

	.popFullmenu.onMenu .fullLogo,
	.popFullmenu.onMenu #fullmenuClose { opacity: 1; visibility: visible; transition-delay: 0.3s; }
}

@media screen and (min-width: 1025px) and (max-width: 1440px) {
	.popFullmenu::before { left: auto; right: 0; width: calc(100vw - 13rem); margin-left: 0 !important; }
	.popFullmenu .sdept01 > li > a { font-size: 1.25rem; max-width: 13rem; padding: 0.35rem 1rem 0.5rem 0; }
	.popFullmenu .sdept02 { padding-left: 2.5rem; }
	.popFullmenu .sdept02 > ul { gap: 1rem 1.85rem; }
	.popFullmenu .sdept02 > ul > li { width: calc((100% - 5.55rem) / 4); }
	.popFullmenu .sdept02 .group > li > a { height: 2.5rem; padding: 0 0.75rem; font-size: 1rem; }
	.popFullmenu .sdept02 .group .group { margin: 0.5rem 0.75rem 0 0.75rem; gap: 0.4rem; }
	.popFullmenu .sdept02 .group .group > li > a { font-size: 0.85rem; }
}

@media screen and (min-width: 1025px) and (max-width: 1240px) {
	.popFullmenu::before { width: calc(100vw - 10rem); }
	.popFullmenu .sdept01 > li > a { font-size: 1rem; max-width: 10rem; padding: 0.4rem 1rem 0.5rem 0; }
	.popFullmenu .sdept02 { padding-left: 1rem; }
	.popFullmenu .sdept02 > ul { gap: 1rem 1.25rem; }
	.popFullmenu .sdept02 > ul > li { width: calc((100% - 3.75rem) / 4); }
	.popFullmenu .sdept02 .group > li > a { height: 2.25rem; font-size: 0.85rem; line-height: 1.1; }

}

@media screen and (max-width: 1920px) {
	#nav { padding: 0 3rem; }
	/* 260310 수정 #gnb .wrap > ul { gap: 0 3rem; } */
}

@media screen and (max-width: 1840px) {
	#nav { padding: 0 2rem; }
	/* 260310 수정 #gnb .wrap > ul { gap: 0 3rem; } */

	.subvisual { padding: 0 1rem; width: calc(100% - 2rem); }
	div.lnb { width: 13rem; margin-left: 1rem; }
	.subCntBody .container { gap: 2.5rem; }
	.subContent { width: calc(100% - 16.5rem); }
}

@media screen and (max-width: 1780px) {
	#nav { padding: 0 2rem; }
	#gnb.active .depth02 { width: 100%; }
	#gnb .depth02 > ul { gap: 1rem; }
	#gnb .depth02 > ul > li > a { font-size: 0.85rem; }
	#gnb.active .wrap > ul > li > a { padding: 0; }
	#gnb .wrap > ul { gap: 0 0.5rem; }

	footer .bot { padding: 1.5rem 5rem 3rem 0; }
    .btn_top { right: 2rem; bottom: 1rem; top: auto; transform: none; }
}

@media screen and (max-width: 1640px) {
    footer .top::before { width: calc(100% + 2rem); left: -1rem; }
	.popFullmenu h2 { left: 1rem !important; }
	#fullmenuClose { right: 1rem; }
	.popFullmenu .sdept01 { padding: 0 1rem; max-width: 82rem; }
	.popFullmenu::before { margin-left: -30.49vw; }


	.subvisual > img { max-width: 50.85vw; right: 6.1vw; }
}

@media screen and (max-width: 1580px) {
	/* #gnb .wrap > ul { gap: 0 1rem; }
	#gnb .wrap > ul > li { flex: 1; } */
	#nav { padding: 0 1rem; }
}

@media screen and (max-width: 1440px) {
	#gnb .wrap > ul > li > a { font-size: 0.95rem; } 
	#gnb.active .depth02 { padding: 0.85rem 0 1.25rem; }
	#gnb .depth02 > ul { padding: 0.75rem; gap: 0.75rem; border-radius: 0.75rem; }
	#gnb .depth03 > ul { gap: 0.45rem; padding: 0.5rem 0.45rem; }
	header:after { border-radius: 0 0 3rem 3rem; }

	header h1 img { max-width: 9rem; }
	header .gnb_btn { gap: 0 0.75rem; }

	header .search { height: auto; padding: 3rem 1rem 3.5rem; }
	header .search .inner { padding: 0; }
	header .search .inner > img { max-width: 5rem; bottom: -0.5rem; left: -6rem; }
	header .search h2 { font-size: 1.5rem; margin-bottom: 1.25rem; }
	header .search input { line-height: 3.5rem !important; height: 3.5rem !important; }
	header .search a.btn_top_sear { width: 2.75rem; height: 2.75rem; font-size: 1.4rem; }
}

/* @media screen and (max-width: 1360px) {
	#nav { display: none; }

	header { position: relative; }
	.subCntBody { padding-top: 0 !important; }
	.mainCnt { margin-top: 0 !important; }
} */

@media screen and (max-width: 1280px) {
	.subCntBody .snsBox > ul > li.print,
	.subCntBody .snsBox .btnPrint,
	.subvisual > img,
	.subContent .pageTitle,
    .lnb { display: none; }
	.subvisual { display: none; }	
	/* .subCntBody .snsBox { right: 1rem; } */
	.subCntBody .container { margin: 0; }
	.subContent { width: 100%; }
	/* .subContent .subTitle { background: linear-gradient(to right, #ffe7f0, #fff0e2); border-radius: 1rem; padding: 2rem; min-height: 10rem; } */

	.subContent .subTitle { background: linear-gradient(to right, #ffe7f0, #fff0e2); border-radius: 1rem; padding: 2rem; min-height: auto; transition: 0.3s ease-in-out; }
	.subContent .subTitle.open { padding: 2rem 2rem 3.5rem 2rem; }

	.subContent .mbTopMenu { position: relative; display: flex; margin-top: 1.5rem; flex-wrap: wrap; }
	.subContent .mbTopMenu > button { display: inline-flex; align-items: center; justify-content: center; position: relative;  line-height: 1.6rem; font-size: 1.4rem; color: #000; font-weight: bold; padding: 0 2.5rem 0 0; max-width: calc(100% - 2.5rem); text-align: start; }
	/* .subContent .mbTopMenu.active > button { color: #3f4e81; font-weight: 800; } */
	.subContent .mbTopMenu > button::before { position: absolute; content: "\ea50"; display: inline-flex; align-items: center; justify-content: center; width: 1.6rem; height: 1.6rem; border-radius: 50%; background: #fff; right: 0; top: 0; color: #575757; font-family: 'remixicon'; font-weight: 400 !important; transition: 0.2s ease-in-out; }
	.subContent .mbTopMenu.active > button::before { transform: rotate(180deg); }
	.subContent .mbTopMenu .snsBox {display: block; position: absolute; right: 0; top: 0; transform: none; z-index: 11; height: 1.6rem; }
	.subContent .mbTopMenu > ul[class^="subDep"] { width: 100%; position: absolute; top: calc(100% + 0.75rem); left: 0; background: #fff; border: 1px solid #D5D5D5; border-radius: 0.4rem; padding: 0.5rem; display: none; z-index: 9; }
	.subContent .mbTopMenu.active > ul[class^="subDep"] { display: block; }
	.subContent .mbTopMenu > ul[class^="subDep"] > li > a { display: block; padding: 0.75rem 1rem; font-size: 1rem; color: #666566; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; border-radius: 0.25rem; border: 1px solid transparent; position: relative; }
	.subContent .mbTopMenu > ul[class^="subDep"] > li > a::before { position: absolute; content: "\ea4e"; right: 1rem; top: 50%; transform: translateY(-50%); font-family: 'remixicon'; font-size: 1.5rem; opacity: 0; visibility: hidden; color: #333; font-weight: 400 !important; }
	.subContent .mbTopMenu > ul[class^="subDep"] > li > a:hover,
	.subContent .mbTopMenu > ul[class^="subDep"] > li > a:focus,
	.subContent .mbTopMenu > ul[class^="subDep"] > li.current > a { border-color: #3f4e81; color: #3F4E81; font-weight: bold; padding-right: 3rem; }
	.subContent .mbTopMenu > ul[class^="subDep"] > li > a:hover::before,
	.subContent .mbTopMenu > ul[class^="subDep"] > li > a:focus::before,
	.subContent .mbTopMenu > ul[class^="subDep"] > li.current > a::before { opacity: 1; visibility: visible; }
	.subCntBody .content { margin-top: 2.5rem; }
	
	/* 선택자를 길게 써서 다른 설정보다 우선순위를 높임 */
    html body #wrap .subContent .mbTopMenu .mbTit.no-child::before {
        display: none !important;
        content: none !important;
        background: none !important;
    }

    /* 화살표가 사라진 만큼 여백 조정 */
    html body #wrap .subContent .mbTopMenu .mbTit.no-child {
        padding-right: 15px !important;
    }
}

@media screen and (max-width: 1240px) {
    :root {
		--headerMenu: 4rem;
	}

	header .search { border-radius: 0 0 4rem 4rem; }
	#gnb .wrap > ul > li > a span, #gnb .depth02 > ul > li > a strong {font-size:0.8rem;}
}

@media screen and (max-width: 1024px) {
	#nav { display: none; }

	header { position: relative; }
	.subCntBody { padding-top: 0 !important; }
	.mainCnt { margin-top: 0 !important; }
	
    .popFullmenu { display: none; width: 100vw; height: 100vh; z-index: 9999; position: fixed; left: 0; top: 0; background: #fff; overflow: hidden; }
	.popFullmenu h2 { height: var(--headerMenu); margin-left: 1rem; position: relative; z-index: 2; }
	.popFullmenu h2 > a { display: inline-flex; align-items: center; justify-self: center; height: 100%; }
	.popFullmenu h2 > a > img { width: auto; max-width: 10rem; }
	.popFullmenu #fullmenuClose { position: fixed; right: 1rem; top: 0; display: inline-flex; align-items: center; justify-content: center; width: auto; height: var(--headerMenu); font-size: 2rem; z-index: 2; }
	.popFullmenu::after { content: ""; position: fixed; left: 0; top: 0; width: 100%; height: var(--headerMenu); background: #fff; z-index: 1; }
	.popFullmenu .util { width: 100%; display: flex; flex-wrap: wrap; background: #3F4E81; gap: 0.5rem 0; padding: 0.65rem 1rem; height: var(--mobileUtil); }
	.popFullmenu .util > a { flex: 1; color: #fff; display: flex; align-items: center; justify-content: center; gap: 0.5rem; font-size: 1rem; position: relative; }
	.popFullmenu .util > a::before { position: absolute; content: ""; width: 1px; height: 0.75rem; right: -0.5px; top: 50%; transform: translateY(-50%); background: #fff; opacity: 0.5; }
	.popFullmenu .util > a:last-child:before { display: none; }
	.popFullmenu .util > a > i { order: 0; font-size: 1.25rem; font-weight: 400 !important; }
	.popFullmenu .util > a .sr-only { position: unset !important; margin: 0 !important; width: auto !important; height: auto !important; clip:unset !important; order: 1; }
	.fullmenu_wrap { position: relative; height: calc(100vh - var(--mobileMn)); overflow: hidden; }
	.fullmenu_wrap::before { position: absolute; content: ""; width: 20%; height: calc(100vh - var(--mobileMn)); left: 0; top: 0; background: #F5F4F9; }
	.fullmenu_wrap .sdept01 { position: relative; padding: 1.5rem 0; height: 100%; display: flex; flex-direction: column; gap: 1.25rem 0; overflow-y: auto; }
	.fullmenu_wrap .sdept01 > li { display: flex; }
	.fullmenu_wrap .sdept01 > li > a { width: 20%; font-size: 1rem; font-weight: 600; color: #000; line-height: 1.4; padding: 0.75rem 1rem;  }
	.fullmenu_wrap .sdept01 > li > a:hover,
	.fullmenu_wrap .sdept01 > li > a:focus,
	.fullmenu_wrap .sdept01 > li.actv > a { color: #3F4E81; font-weight: bold; }
	.fullmenu_wrap .sdept01 > li > a > span br { display: none; }
	.fullmenu_wrap .sdept01 > li > .sdept02 { width: 80%; display: none; position: absolute; top: 0; left: 20%; padding: 1.5rem 1rem 0 1rem; }
	.fullmenu_wrap .sdept01 > li.actv > .sdept02 { display: block; }
	.fullmenu_wrap .sdept01 > li > .sdept02 > ul > li > a { display: block; color: #222; font-size: 1rem; font-weight: 500; padding: 0.75rem 1rem; position: relative; border-bottom: 1px solid #ccc; }
	.fullmenu_wrap .sdept01 > li > .sdept02 > ul > li.dep > a { padding-right: 2rem; }
	.fullmenu_wrap .sdept01 a > strong { font-weight: unset !important; }
	.fullmenu_wrap .sdept01 > li > .sdept02 > ul > li.actv > a { color: #3F4E81; font-weight: bold; }
	.fullmenu_wrap .sdept01 > li > .sdept02 > ul > li.dep.actv > a { border-bottom: 2px solid #3F4E81; }
	.fullmenu_wrap .sdept01 > li > .sdept02 > ul > li.dep > a::before { position: absolute; content: "\ea4e"; right: 0; display: inline-flex; width: 1.5rem; height: 1.5rem; align-items: center; justify-content: center; top: 0.73rem; color: #333; font-weight: 400 !important; font-family: 'remixicon'; font-size: 1.5rem; transition: 0.2s ease-in-out; }
	.fullmenu_wrap .sdept01 > li > .sdept02 > ul > li.dep.actv > a::before { transform: rotate(180deg); }
	.fullmenu_wrap .sdept03 { display: none; padding: 1rem; border-bottom: 1px solid #ccc; }
	.fullmenu_wrap .sdept01 > li.actv > .sdept02 > ul > li.dep.actv > .sdept03 { display: block; }
	.fullmenu_wrap .sdept03 > ul > li.actv > a { color: #3F4E81; font-weight: bold; }
	.fullmenu_wrap .sdept03 > ul > li.actv > a:before { background-color: #3F4E81; }
	.fullmenu_wrap .sdept03 > ul > li + li { margin-top: 0.5rem; }
	.fullmenu_wrap .sdept03 > ul > li > a { font-size: 1rem; color: #666665; position: relative; padding-left: 0.85rem; display: block; }
	.fullmenu_wrap .sdept03 > ul > li > a:before { position: absolute; content: ""; background-color: #BFC1C2; border-radius: 50%; width: 0.2rem; height: 0.2rem; left: 0; top: 0.63rem; }
	.fullmenu_wrap .sdept03 > ul > li > a:hover,
	.fullmenu_wrap .sdept03 > ul > li > a:focus { color: #333; }
	.fullmenu_wrap .sdept03 > ul > li > a:hover:before,
	.fullmenu_wrap .sdept03 > ul > li > a:focus::before { background: #333; }

	/* .subContent .subTitle { padding: 1.5rem; min-height: 8.5rem; } */
 	.subContent .subTitle { padding: 1.5rem; }
	.subContent .subTitle.open { padding: 1.5rem 1.5rem 3rem 1.5rem; }

	.subContent .mbTopMenu { margin-top: 1.25rem; }
	.subContent .mbTopMenu > ul[class^="subDep"] > li > a { padding: 0.65rem 0.75rem; }
}

@media screen and (max-width: 860px) {
	header .gnb_btn { gap: 0.75rem; }

	header .search { padding: 2rem 1rem 3rem; }
	header .search .inner > img { max-width: 4rem; bottom: -0.5rem; left: -5rem; }
	header .search h2 { font-size: 1.35rem; margin-bottom: 1rem; }
	header .search input { line-height: 3.25rem !important; height: 3.25rem !important; }
	header .search a.btn_top_sear { width: 2.5rem; height: 2.5rem; font-size: 1.3rem; }

    footer .top { flex-wrap: wrap; }
	footer .top > ul { width: 100%; padding: 1.25rem 0; }
	footer .top .siteLnk > a,
	footer .top .siteLnk { width: 100%; }
	footer .top .siteLnk > a { height: 2.75rem; border: 1px solid rgba(255,255,255,0.3); padding: 0 1rem; border-radius: 0.5rem; }
	footer .top .siteLnk.open > a { border-radius: 0 0 0.5rem 0.5rem; }
	footer .top::before { display: none; }
	.btn_top { width: 2.85rem; height: 2.85rem; font-size: 0.8rem; }

}

@media screen and (max-width: 768px) {
	:root {
		--mobileUtil: 2.5rem;
	}

	.subCntBody { min-height: auto; margin-bottom: 4rem; }

	header .search { border-radius: 0 0 3rem 3rem; }
	header .search .inner > img { display: none; }
	header .search .inner { width: calc(100% - 4rem); }
	header .search_wrap { max-width: 100%;} 
	header .search input { line-height: 3rem !important; height: 3rem !important; padding: 0 3rem 0 1rem !important; font-size: 0.9rem !important; }
	header .search a.btn_top_sear { width: 2.25rem; height: 2.25rem; font-size: 1.15rem; }

    footer .bot { padding: 1.25rem 0 4.5rem 0; }
	.btn_top { width: 2.65rem; height: 2.65rem; font-size: 0.65rem; right: 1rem; }

	.popFullmenu .util { padding: 0.25rem 1rem; }
	.popFullmenu .util > a { font-size: 0.9rem; }
	.popFullmenu .util > a > i { font-size: 1.1rem; }
	.fullmenu_wrap .sdept01 > li > a,
	.fullmenu_wrap::before { width: 10rem; }
	.fullmenu_wrap .sdept01 { gap: 1rem 0; }
	.fullmenu_wrap .sdept01 > li > .sdept02 { width: calc(100% - 10rem); left: 10rem; }
	.fullmenu_wrap .sdept01 > li > a { font-size: 0.95rem; padding: 0.6rem 1rem; }
	.fullmenu_wrap .sdept01 > li > .sdept02 > ul > li > a { padding: 0.6rem 1rem; font-size: 0.95rem; }
	.fullmenu_wrap .sdept01 > li > .sdept02 > ul > li.dep > a::before { top: 0.53rem; font-size: 1.25rem; }
	.fullmenu_wrap .sdept03 { padding: 0.5rem 1rem; }
	.fullmenu_wrap .sdept03 > ul > li + li { margin-top: 0.35rem; }
	.fullmenu_wrap .sdept03 > ul > li > a { font-size: 0.9rem; }
	.fullmenu_wrap .sdept03 > ul > li > a:before { top: 0.55rem; }

	.subContent .subTitle { padding: 1.25rem; min-height: auto; }	
	.subContent .subTitle.open { padding: 1.25rem 1.25rem 2.75rem 1.25rem; }

	.subContent .mbTopMenu { margin-top: 1rem; }
	.subContent .mbTopMenu > button { font-size: 1.2rem; line-height: 1.4rem; padding-right: 2rem; }
	.subContent .mbTopMenu > button::before { width: 1.4rem; height: 1.4rem; }	
	.subContent .mbTopMenu > ul[class^="subDep"] > li > a { padding: 0.5rem 0.75rem; font-size: 0.9rem; }
	.subContent .mbTopMenu > ul[class^="subDep"] > li > a::before { font-size: 1.3rem; }
	.subContent .mbTopMenu > ul[class^="subDep"] > li > a:hover, .subContent .mbTopMenu > ul[class^="subDep"] > li > a:focus { padding-right: 2.5rem; }
	.subCntBody .snsBox .sns_more > button,
	.subCntBody .snsBox .btnPrint,
	.subCntBody .snsBox .btnShare { width: 1.4rem; height: 1.4rem; font-size: 0.7rem !important; }
	.subContent .mbTopMenu .snsBox { height: 1.4rem; }

}

@media screen and (max-width: 580px) {

	.fullmenu_wrap .sdept01 > li > a,
	.fullmenu_wrap::before { width: 8.5rem; }
	.fullmenu_wrap .sdept01 > li > .sdept02 { width: calc(100% - 8.5rem); left: 8.5rem; }
	
}

@media screen and (max-width: 480px) {
	:root {
		--headerMenu: 3.5rem;
	}

	header .search { padding: 1.5rem 1rem 2.5rem; border-radius: 0 0 2rem 2rem; }
	header .search .inner { width: 100%; }
	header .search h2 { font-size: 1.25rem; margin-bottom: 0.75rem; letter-spacing: 1px; }
	header .search input { line-height: 2.85rem !important; height: 2.85rem !important; padding: 0 3rem 0 1rem !important; font-size: 0.85rem !important; }
	header .search a.btn_top_sear { width: 2.1rem; height: 2.1rem; font-size: 1rem; }

	header h1 img { max-width: 9rem; }
	header .gnb_btn { gap: 0.5rem; }
	header .gnb_btn a, header .gnb_btn button { font-size: 1.35rem; }
	header .gnb_btn .srchBtn.srchOpen .xi-close-circle { font-size: 1.5rem; }
	header .gnb_btn .srchBtn { width: 1.6rem; }

	footer .top > ul { padding: 1rem 0; margin-left: -0.85rem; }
	footer .top > ul li a { padding: 0 0.85rem; }
	footer .bot { padding: 1rem 0 4.5rem 0; }
    footer .bot > ul { gap: 0.25rem 1rem; }
	footer .top .siteLnk > a { height: 2.25rem; }

	.popFullmenu .util > a { font-size: 0.85rem; }
	.popFullmenu .util > a > i { font-size: 1rem; }
	.popFullmenu h2 > a > img { max-width: 9rem; }
	.popFullmenu #fullmenuClose { font-size: 1.75rem; }
	.fullmenu_wrap .sdept01 { padding: 1rem 0; }
	.fullmenu_wrap .sdept01 > li > a,
	.fullmenu_wrap::before { width: 7.5rem; }
	.fullmenu_wrap .sdept01 { gap: 0.75rem 0; }
	.fullmenu_wrap .sdept01 > li > .sdept02 { width: calc(100% - 7.5rem); left: 7.5rem; padding: 1rem 1rem 0 1rem; }
	.fullmenu_wrap .sdept01 > li > a { font-size: 0.9rem; }
	.fullmenu_wrap .sdept01 > li > .sdept02 > ul > li > a { font-size: 0.9rem; }
	.fullmenu_wrap .sdept01 > li > .sdept02 > ul > li.dep > a { padding-right: 1.5rem; }
	.fullmenu_wrap .sdept01 > li > .sdept02 > ul > li.dep > a::before { top: 0.65rem; font-size: 1.05rem; height: auto; width: auto; }
	.fullmenu_wrap .sdept03 { padding: 0.75rem 1rem; }
	.fullmenu_wrap .sdept03 > ul > li + li { margin-top: 0.35rem; }
	.fullmenu_wrap .sdept03 > ul > li > a { font-size: 0.85rem; padding-left: 0.65rem; }

	/* .subContent .subTitle { padding: 1.25rem 1rem 2rem 1rem; } */
	.subContent .subTitle { padding: 1.25rem 1rem; }
	.subContent .subTitle.open { padding: 1.25rem 1rem 2.5rem 1rem; }
	.subContent .mbTopMenu > button { font-size: 1.1rem; }
	.subContent .mbTopMenu > ul[class^="subDep"] { top: calc(100% + 0.5rem); border-radius: 0.5rem; }
	.subContent .mbTopMenu > ul[class^="subDep"] > li > a { padding: 0.35rem 0.75rem; font-size: 0.85rem; }
	.subContent .mbTopMenu > ul[class^="subDep"] > li > a::before { font-size: 1.1rem; right: 0.75rem; }
	.subContent .mbTopMenu > ul[class^="subDep"] > li > a:hover, .subContent .mbTopMenu > ul[class^="subDep"] > li > a:focus { padding-right: 2rem; }

	.subCntBody .content { margin-top: 1.85rem; }
}

@media screen and (max-width: 380px) {
	:root {
		--mobileUtil: 2.25rem;
	}

    .container { padding: 0 0.75rem; }

	header .gnb_btn a, header .gnb_btn button { font-size: 1.25rem; }
	header .gnb_btn .srchBtn.srchOpen .xi-close-circle { font-size: 1.4rem; }
	header .gnb_btn .srchBtn { width: 1.5rem; }

	footer .top .siteLnk > a { padding: 0 0.75rem; font-size: 0.8rem; }
	footer .top .siteLnk > .siteLst ul > li > a { font-size: 0.75rem; padding: 0.5rem 0.75rem; }

	.popFullmenu h2 { margin-left: 0.75rem; }
	.popFullmenu .util { padding: 0.25rem 0.75rem; }
	.popFullmenu .util > a { font-size: 0.8rem; gap: 0.25rem; }
	.popFullmenu .util > a > i { font-size: 0.9rem; }
	.popFullmenu #fullmenuClose { font-size: 1.5rem; right: 0.75rem; }
	.fullmenu_wrap .sdept01 > li > a { font-size: 0.85rem; padding: 0.5rem 0.75rem; }

	.fullmenu_wrap .sdept01 > li > a,
	.fullmenu_wrap::before { width: 32vw; }
	.fullmenu_wrap .sdept01 { gap: 0.5rem 0; }
	.fullmenu_wrap .sdept01 > li > .sdept02 { width: calc(100% - 32vw); left: 32vw; padding: 1rem 0.75rem 0 0.75rem; }
	.fullmenu_wrap .sdept01 > li > .sdept02 > ul > li > a { font-size: 0.85rem; padding: 0.5rem 0.75rem; }
	.fullmenu_wrap .sdept01 > li > .sdept02 > ul > li.dep > a { padding-right: 1.35rem; }

	.fullmenu_wrap .sdept01 > li > .sdept02 > ul > li.dep > a::before { top: 0.55rem; font-size: 1rem; }
	.fullmenu_wrap .sdept03 { padding: 0.75rem; }
	.fullmenu_wrap .sdept03 > ul > li + li { margin-top: 0.25rem; }
	.fullmenu_wrap .sdept03 > ul > li > a { font-size: 0.8rem; padding-left: 0.6rem; }
	.fullmenu_wrap .sdept03 > ul > li > a:before { top: 0.5rem; }

	.subContent .subTitle .location ul li { font-size: 0.75rem; padding: 0 0.6rem; line-height: 0.85rem; }
	.subContent .subTitle .location ul li + li::before { width: 0.85rem; height: 0.85rem; font-size: 0.85rem; }
	.subContent .subTitle .location ul li.home a { font-size: 0.8rem; }
	/* .subContent .subTitle { padding: 1rem 1rem 2rem 1rem; }	 */
	.subContent .subTitle { padding: 1rem; }	
	.subContent .subTitle.open { padding: 1rem 1rem 2rem 1rem; }
	.subContent .mbTopMenu { margin-top: 0.75rem; }
	.subContent .mbTopMenu > button { font-size: 1.1rem; line-height: 1.4rem; padding-right: 1.85rem; }
	.subContent .mbTopMenu > button::before { width: 1.4rem; height: 1.4rem; }	
	.subContent .mbTopMenu > button::before { font-size: 1.1rem; }
	.subContent .mbTopMenu > ul[class^="subDep"] { padding: 0.4rem; }
	.subContent .mbTopMenu > ul[class^="subDep"] > li > a { padding: 0.35rem 0.5rem; font-size: 0.8rem; }
	.subContent .mbTopMenu > ul[class^="subDep"] > li > a::before { font-size: 1.05rem; right: 0.5rem; }
	.subContent .mbTopMenu > ul[class^="subDep"] > li > a:hover, .subContent .mbTopMenu > ul[class^="subDep"] > li > a:focus { padding-right: 2rem; }
	/* .subCntBody .snsBox > ul > li > button { font-size: 0.7rem; }
	.subCntBody .snsBox > ul > li.sns > .snsLst > ul > li.sns_k > a { font-size: 0.8rem; }
	.subCntBody .snsBox > ul > li.sns > .snsLst > ul > li.sns_f > a { font-size: 0.7rem; }
	.subCntBody .snsBox > ul > li.sns > .snsLst > ul > li.sns_t > a { font-size: 0.6rem; } */
	
}

@media screen and (max-width: 320px) {
	header h1 img,
	.popFullmenu h2 > a > img { max-width: 8rem; }
	header .gnb_btn { gap: 0.35rem; }

	.fullmenu_wrap::before { width: 35vw; }
	.fullmenu_wrap .sdept01 > li > .sdept02 { width: calc(100% - 35vw); left: 35vw; }
	.popFullmenu .util > a { font-size: 0.75rem; }
	.popFullmenu .util > a > i { font-size: 0.85rem; }
}