
#sub_container img{ max-width:100%; }
.sub_content .xm h1{ margin-bottom:20px; }

/*********************subtop.css*********************/
.subtop_wrap{overflow:hidden; position:relative;}
.subtop_img{position:absolute; top:0; left:0; transform: scale(1.1); background-repeat:no-repeat; background-position:center; background-size:cover; animation-duration:3s; animation-fill-mode:forwards; z-index:-1; object-fit:cover; opacity:0.85; animation:shrinkImage 2s ease-out forwards; min-height:350px;}
@keyframes shrinkImage {
  0% {
    transform: scale(1.1);
    opacity: 0.85;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}

.subtop_txt_wrap{ text-align:center; padding:180px 0; max-width:var(--content-width); width:100%;  border:0px solid #fff;box-sizing:border-box;}
.subtop_txt{ max-width:100%; margin:0 auto 0px auto;border:0px solid #fff; padding:35px 0 0px 0;box-sizing:border-box;}
.subtop_txt p{font-size:18px; line-height:1.5; margin:5px 0; text-shadow:2px 2px 5px rgba(0, 0, 0, 0.9); font-weight:600;}
.subtop_slogan{ font-size:17px; font-weight:300; text-shadow:2px 2px 5px rgba(0,0,0,0.15); }
.subtop_title{font-size:45px;color:#fff; font-weight:700;margin:0px;width:100%;letter-spacing:0px;/*font-family:'Abril Fatface', 'bb';*/ text-shadow:3px 3px 5px rgba(0, 0, 0, 0.7);}
.subtop_title i{font-size:20px;background:var(--point-color);color:#fff;padding:12px;border-radius:100%;position:relative;left:5px;margin:0px 10px 0 0;}
.subtop_title span{padding:10px 0px;}
.subtop_subtitle{ font-size:18px; font-weight:400; text-shadow:2px 2px 5px rgba(0,0,0,0.8);}

@media (max-width: 768px) {
	.subtop_img{background-size:cover;}
	.subtop_txt_wrap{padding:0px 0 !important;}
	.subtop_title{font-size:27px;}
    .subtop_txt p{font-size:14px; margin:10px 0 0px; padding:0 75px; word-break:keep-all;}
}

.subtop_txt > div{ width:100px; height:5px; margin:15px auto 0px auto;  /*display:flex;*/ justify-content:center; display:none;}
.subtop_txt > div > div:first-child{background:var(--point-color);width:40px;}
.subtop_txt > div > div:last-child{background:var(--point-color3);width:40px;}

.subTopMenu{padding:0px;margin:0 auto 20px auto;list-style:none;width:100%;position:relative;z-index:10;border:0px solid #000;text-align:center;box-sizing:border-box;}
.subTopMenu .locNav{padding:0px 0px 0px 0px;margin:0 auto;list-style:none;margin:0px auto;position:relative;display:flex;justify-content:center;width:100%;}
.subTopMenu .locNav li{padding:0;vertical-align:top; background:#ddd; opacity:1; margin-right:1px;flex-grow:1;text-align:center;}
.subTopMenu .locNav li a{padding:14px 0px;display:block;border-bottom:0px solid #e8e8e8;border-left:0;border-right:0;color:#333;position:relative;z-index:99;text-decoration:none;font-size:14px;}

.subTopMenu .locNav .active{background:#006666;}
.subTopMenu .locNav li.active a{color:#fff;background:#006666;border:0px solid #de4332;border-left:0;border-right:0;}


#submenu{width:100%;position:absolute !important;margin:0px auto;z-index:10;border:0px solid #000;left:0px;}
.subTopMenu .locNav li ul{display:block;position:absolute;padding:0px;margin:0px;border:0px solid #000;overflow:hidden;z-index:100;width:100% !important;}
.subTopMenu .locNav li li{padding:10px 10px 0 10px;position:relative;top:-1px;border:0px solid #000;float:left;display:block;}
.subTopMenu .locNav li li a{padding:3px 0px;color:#818181 !important;border:none;background:none !important;border:none !important;font-size:12px;border:0px solid #fff;}
.subTopMenu .locNav li.active li.active a{color:#ff1a00 !important;font-weight:bold !important;}
.subTopMenu .locNav li:last-child{margin-right:0px;}



/*********************location.css*********************/
.location_bar{ width: 100%;margin:0 auto; max-width:var(--content-width);  box-sizing:border-box; text-align:center; }
.site_location_wrap{ padding: 0 0px; margin:15px 0 0 -10px; line-height:25px;}
p.site_location{ display: inline-block; font-size:16px; }
span.site_location_icon{ margin:0 10px; color:#bfbfbf; font-size:12px;}

.site_location a{color:#777 !important;}

.subtop_inner_txt_wrap{width:100%;display:block;position:relative;margin:48px 0 50px; padding:0px 0 25px; border-bottom:2px solid #ebebeb;}
@media( max-width:650px ){
	.subtop_inner_txt_wrap{margin:0px 0 0 0;}
}

/*********************location.css*********************/
.subtop_inner_txt_wrap .location_bar{ width: 100%;margin:0 auto; max-width:100%;  box-sizing:border-box; text-align:left;}
.subtop_inner_txt_wrap .site_location_wrap{ padding:0px; margin:0px 0 0 0px; line-height:25px; }
.subtop_inner_txt_wrap .site_location_wrap a{ color:#333;font-size:16px;}
.subtop_inner_txt_wrap .site_location_wrap .location_home a{font-size:18px !important;}

@media( max-width:768px ){
	.subtop_inner_txt_wrap .site_location_wrap a{font-size:13px; letter-spacing:0;}
	.subtop_inner_txt_wrap .site_location_wrap .location_home a{font-size:16px !important;}
}

/*********************서브타이틀*********************/
.subtop_inner_txt_wrap .subtop_cont_title{font-size:37px; color:#333; text-align:left; font-weight:700; margin:20px 0 0; width:100%; letter-spacing:-0.5px;}

@media( max-width:768px ){
	.subtop_inner_txt_wrap .subtop_cont_title{font-size:26px; margin:10px 0 0;}
}

.subtop_inner_txt_wrap h1::before {
  content: '';
  position: absolute;
  top: 0%;
  left: 0;
  width:50px;
  height:5px;
  background-color:var(--point-color3);
  display:none;
}

.subtop_inner_txt_wrap h1::after {
  content: '';
  position: absolute;
  top: 0%;
  left: 50px;
  width:calc(100% - 50px);
  height: 5px;
  background-color:ddd;
}



.subtop_inner_txt_wrap .subtop_title i{font-size:20px;background:var(--point-color);color:#fff;padding:15px;border-radius:100%;position:relative;left:5px;margin:0px 10px 0 0;}
.subtop_inner_txt_wrap .subtop_txt p{font-size:17px;color:#666;}


/* location Depth - 본문위 */
.lnbw{display:block;padding:0; width:100%; border-top:1px solid #ddd;border-bottom:1px solid #ddd; background:#fff;z-index:90;height:60px;box-sizing:border-box;}
.lnb{position:relative;left:0; white-space:nowrap;margin-bottom:0px;z-index:1000;width:100%;max-width:calc(var(--content-width) + 40px);padding:0 20px;box-sizing:border-box;margin:0 auto;display:block;} /* v62: 위치메뉴 홈버튼을 본문 좌측 라인에 정렬 */
.lnb > ul{list-style:none;margin:0;padding:0;zoom:1;float:left;box-sizing:border-box;}
.lnb > ul:after{content:"";display:block;clear:both}


.lnb > ul > li:nth-child(1){padding:0px 15px;background:var(--point-color); border-left:0px solid #ddd;float:left;box-sizing:border-box;overflow:hidden;height:58px;text-align:center;display:flex;justify-content:center;}
.lnb > ul > li:nth-child(1) a{color:#fff;}

.lnb > ul > li:nth-child(2){float:left;list-style:none; border-left:1px solid #ddd; padding-left:15px; position:relative;font-size:16px; min-width:250px;height:58px;}
.lnb > ul > li:nth-child(3){float:left;list-style:none; border-left:1px solid #ddd; border-right:1px solid #ddd; padding-left:15px; position:relative;font-size:16px; min-width:250px;height:58px;}



.lnb ul ul{display:none;position:absolute;left:-1px;top:60px;padding:15px 0;background:#fff;z-index:100;margin:0px;border-left:1px solid #ddd;border-right:1px solid #ddd;border-top:0;border-bottom:1px solid #ddd;box-sizing:border-box;width:calc(100% + 2px);margin:0px;box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;}

.lnb ul li span{position:absolute;right:10px;float:right;border:0px solid #ddd;padding:0 3px;margin:0px;font-size:0.5;}
.lnb ul li span i{color:var(--point-color4);}

.lnb .depth3 {
    display: none;
}

.lnb li.active > .depth3 {
    display: block;
	background:#f2f2f2;padding:10px 0;border-radius:5px;margin:0px;
}

.lnb li li{float:none;background:none;padding:0;left:0;border-bottom:0px solid #ddd; padding:0px; border-right:0px;width:250px;box-sizing:border-box;}
.lnb li a{float:left;padding:20px 0px;color:#474747;text-decoration:none;}
.lnb li a:hover,
.lnb li a:active,
.lnb li a:focus{color:var(--point-color2);}
.lnb li.active > a{font-weight:bold;color:var(--point-color2);} /* 직계 링크만 강조 — 하위 전체가 물드는 것 방지 */
.lnb li li a{float:none;display:block;padding:5px 15px !important;background:none !important;height:auto;font-weight:normal !important}
/*.lnb li li:hover{padding-left:15px; box-sizing:border-box; transition:1s;}*/
.lnb li li.active > a{font-weight:normal !important;}
/* 3차(depth3)에서는 선택된 항목만 강조 */
.lnb .depth3 p a{color:#474747;}
.lnb .depth3 p.active > a{color:var(--point-color2);font-weight:bold !important;}
.lnb > ul > li > a > i{font-size:20px;}


@media( max-width:650px ){
	.lnbw{display:block; height:50px;}
	.lnb > ul > li:nth-child(1){padding:0px 10px; height:50px;}
	.lnb > ul > li:nth-child(2){min-width:180px;height:50px;}
	.lnb > ul > li:nth-child(3){min-width:200px;height:50px;}
	.lnb ul ul{top:50px; padding:10px 0;}
	.lnb li a{padding:12px 0px;}
	.lnb li li{width:180px;}
	.lnb li li a{padding:5px 10px !important;}
}
@media( max-width:419px ){
	.lnb > ul > li:nth-child(2){min-width:170px; font-size:17px;}
	.lnb > ul > li:nth-child(3){min-width:180px; font-size:17px;}
	.lnb li li{width:170px;}
}
@media( max-width:389px ){
	.lnb > ul > li:nth-child(2){min-width:160px; font-size:15px;}
	.lnb > ul > li:nth-child(3){min-width:170px; font-size:15px;}
	.lnb li li{width:160px;}
}
@media( max-width:380px ){
	.lnb > ul > li:nth-child(2){min-width:135px; font-size:13px;}
	.lnb > ul > li:nth-child(3){min-width:135px; font-size:13px;}
	.lnb li li{width:135px;}
}

/*********************content.css*********************/

#content{padding:0 20px 100px !important;box-sizing:border-box;z-index:10;} /* v62: id 특이도가 .content_wrap 패딩을 덮던 것 — 여기서 직접 20px 부여 */
.content_wrap{padding:0 20px 100px !important; margin:0px auto 0px auto; box-sizing:border-box;background:#fff;z-index:10;max-width:calc(var(--content-width) + 40px)} /* v62: 본문 좌우 20px 여백(메인과 동일), 설정 너비는 내부 콘텐츠 기준 유지 */
.boardContent{max-width:var(--content-width);width:100%; margin:0px auto; display:block;overflow:hidden;z-index:1;}
.left_aside{ width:313px; order:-1; padding:0 0 150px; height:100%;border:0px solid #ddd; transform: translateY(-50px);}
.right_aside{ width:313px; order:10; padding-left:0px;}
.left_content{ width:calc(100% - 313px); padding-right:0px; box-sizing:border-box;}
.right_content{ width:calc(100% - 313px); padding-left:7% !important; border:0px solid #000; }

.contentDiv{padding-bottom:75px;animation: fadeIn 1s ease-in-out;}
.contentDiv img{max-width:100% !important;margin:0px auto;}
.contentDiv p > img{display:block;margin:0px auto;}

/*depth3Menu*/
.depth3Menu_back{display: flex;flex-wrap: wrap;border-top: 1px solid #ddd;border-left: 1px solid #ddd;}
.depth3Menu_back a{flex:1 1;min-width:25%;box-sizing: border-box;border-right: 1px solid #ddd;border-bottom: 1px solid #ddd;text-align: center;color:#555; padding:10px 0;font-weight:500; font-size:14pt;}
.depth3Menu_back a:hover{background:var(--point-color3);transition-duration:0.4s;color:#fff !important;}
.depth3Menu_back .tabon{background:var(--point-color3); color:#fff;}

.depth3Menu{display:flex; flex-wrap:wrap; width:100%; overflow:hidden; gap:5px;}
.depth3Menu a{flex:1 1; min-width:25%; box-sizing: border-box; text-align: center; color:#555; background:#f0f0f0; padding:18px 0px;font-weight:500; font-size:20px; border-radius:7px; margin:0;}
.depth3Menu a:hover{background:var(--point-color2); transition-duration:0.4s; color:#fff;}
.depth3Menu .tabon{background:var(--point-color2); color:#fff;}
.depth3Menu .tabon:hover{background:var(--point-color2); color:#fff !important;}

.depth3Menu_{display:flex; flex-wrap:wrap; width:100%; overflow:hidden; gap:5px;}
.depth3Menu_ a{flex:1 1; min-width:20%; box-sizing: border-box; text-align: center; color:#555; background:#f0f0f0; padding:18px 0px;font-weight:500; font-size:20px; border-radius:7px; margin:0;}
.depth3Menu_ a:hover{background:var(--point-color2); transition-duration:0.4s; color:#fff;}
.depth3Menu_ .tabon{background:var(--point-color2); color:#fff;}
.depth3Menu_ .tabon:hover{background:var(--point-color2); color:#fff !important;}

@media( max-width:1240px ){
	.content_wrap{width:100%; max-width:100%;} /* v62: 95% 대신 고정 20px 여백으로 통일 */
}
@media( max-width:650px ){
	#content, .content_wrap{padding:0 15px 60px !important;}
	.lnb{padding:0;} /* 모바일 위치메뉴는 전폭 유지 */
}
@media( max-width:650px ){
	.depth3Menu a{flex:none; width:48%; font-size:17px; padding:12px 0px; word-break:keep-all;}
	.depth3Menu_ a{flex:none; width:48%; font-size:17px; padding:12px 0px; word-break:keep-all;}
	.contentDiv{padding-bottom:50px;}	
	.contentDiv img{max-width:100%;}
}
@media( max-width:380px ){
	.depth3Menu a{font-size:16px; padding:9px 0px;}
	.depth3Menu_ a{font-size:16px; padding:9px 10px;}
}

/*********************좌측메뉴, 우측메뉴 sub_nav.css*********************/
.lnb_title{ margin:0px 0 0px 0px; border-bottom:1px solid #ddd; color:#fff; border-top:0px solid #ddd;padding:0px;height:150px;line-height:150px;background:var(--point-color);}
.lnb_title span{ margin-bottom:-1px; font-size:30px; font-weight:600; padding: 0; display:inline-block;color:#fff !important;}

.lnb_list li a{border-bottom:1px solid #e8e8e8;}
.lnb_list > li > a{ padding:12px 30px 12px 15px; display:block; font-size:16px; color:#666; position:relative; transition-duration:0.3s; transition-timing-function:linear; }
.lnb_list > li > a:hover{ padding-left:15px; }
.lnb_list > li > a:after{ content:'\e93e'; position:absolute; top:50%; right:8px; font-family:xeicon; transform:translate(0, -50%); }

.lnb_list > li > ul.depth2{ background-color:#f8f8f8; padding:0px 10px;}
.lnb_list > li > ul.depth2 > li > a{ padding:10px 5px 10px 10px; display:block; font-size:14px; color:#666; transition-duration:0.3s; transition-timing-function:linear; }
.lnb_list > li > ul.depth2 > li > a:hover{ padding-left:20px; }

.lnb_list ul.depth3{ background-color:#fff; padding:0px 10px;}
.lnb_list ul.depth3 > li > a{ padding:10px 5px 10px 10px; display:block; font-size:14px; color:#666; transition-duration:0.3s; transition-timing-function:linear; }
.lnb_list ul.depth3 > li > a:hover{ padding-left:20px; }

.lnb_title2{display:block; padding:50px 10px 70px; border-radius:30px 30px 0 0; background:url(/outpage/img/sidebar_top_back01_2.png) no-repeat left top, url(/outpage/img/sidebar_top_back02_2.png) no-repeat right top var(--point-color3)/*#065395*/;}
.lnb_title2 span{text-align:center; color:#fff !important; font-family:var(--font-base); font-size:30px; line-height:1.3; font-weight:700;}

.lnb_list2{background:#fff; border:1px solid #ebebeb; border-radius:30px; overflow:hidden; margin-top:-25px; padding:25px 40px 70px; font-family:var(--font-base); font-weight:500;}
.lnb_list2 > li > a{display:block; font-size:18px; line-height:1.3; position:relative; border-bottom:1px solid #ebebeb; color:#000 !important;}
.lnb_list2 > li > a:visited{color: #000; text-decoration: none;}
.lnb_list2 > li > a span{display:block; border-bottom:1px solid #fff; padding:20px 40px 20px 0;}
.lnb_list2 > li > a:after {content:""; width:25px; height:25px; border-radius:50%; border:1px solid #ebebeb; background:url(/outpage/img/sidebar_list_arrow.png) no-repeat center; position:absolute; top:50%; right:0; transform:translateY(-50%);}
.lnb_list2 > .on a span {border-color:var(--point-color3); color:var(--point-color3); font-weight:700;}
.lnb_list2 > .on a:after{background-color:var(--point-color3); background-image:url(/outpage/img/sidebar_list_arrow_on.png); border-color:var(--point-color3);}

.lnb_list2 > li > ul.depth2{ background-color:#f8f8f8; padding:0px 10px;}
.lnb_list2 > li > ul.depth2 > li > a{ padding:20px 5px; display:block; font-size:16px; color:#333; transition-duration:0.3s; transition-timing-function:linear; }
.lnb_list2 > li > ul.depth2 > li > a:hover{ padding-left:10px; }
.lnb_list2 > li > ul.depth2 > li > a i{padding-right:5px;}


@media( max-width:991px ){
	.sub_aside{ display:none; }
	.sub_content{ width:100%; padding:0; }
}

@media( max-width:850px ){
	.subtop_wrap{ min-height:180px !important; padding:85px 0 35px; }
	.subtop_title{ font-size:35px; }
	.subtop_subtitle{ font-size:17px; }
	
	.left_content{ width:100%; padding:0px 10px; box-sizing:border-box;}
	.right_content{ width:100%; padding:0px 10px !important;  border:0px solid #000; }


}
@media( max-width:650px ){
	#content{padding:35px 10px !important;box-sizing:border-box;border:0px solid #000;}


	.subtop_wrap{ padding:0px 0; background-size:cover;background-repeat:no-repeat; overflow:hidden; position:relative; margin-top:30px;}
	.subtop_txt_wrap{text-align:center; padding:0 0px; max-width:100%; width:100%;  border:0px solid #fff;box-sizing:border-box;}
	.subtop_txt{ max-width:100%; margin:0 auto 0px auto;border:0px solid #fff;padding:10px 0;box-sizing:border-box;box-shadow: rgba(0, 0, 0, 0) 0px 22px 70px 4px;}
	.subtop_slogan{ font-size:17px; font-weight:300; text-shadow:2px 2px 5px rgba(0,0,0,0.15); }
	.subtop_title{font-size:35px; font-weight:700; line-height:1.2; text-shadow:2px 2px 5px rgba(0,0,0,0); margin-bottom:0px; letter-spacing:-1px;width:100%;border:0px solid #000;white-space:nowrap;}
	.subtop_subtitle{ font-size:18px; font-weight:300; text-shadow:2px 2px 5px rgba(0,0,0,0.15);}
	.subtop_inner_txt_wrap .subtop_txt p{font-size:13px;}

	/*********************location.css*********************/
	.location_bar{ width:100%;margin:0 auto; max-width:100%;  box-sizing:border-box; text-align:center; }
	.site_location_wrap{ padding: 0 10px; margin:0 0 0 0px; line-height:25px;letter-spacing:-1px;}
	p.site_location{ display: inline-block; font-size: 12px; }
	span.site_location_icon{ margin:0 5px; }

	.subTopMenu .locNav{padding:0px 0px 0px 0px;margin:0 auto;list-style:none;margin:0px auto;position:relative;display:flex;justify-content:center;width:95%;}
	.subTopMenu .locNav li a{font-size:11px; padding:10px 0;}

	.depth3Menu a{padding:12px 15px; font-size:15px;}
	.subtop_inner_txt_wrap .subtop_title{font-size:35px; display:block; white-space:normal; word-break:keep-all;}
}

@media( max-width:430px ){
	.depth3Menu a{padding:12px 5px; font-size:13px; min-width:33.3%; word-break:keep-all;}
	.subtop_inner_txt_wrap .subtop_title{font-size:27px;}
}

@media( max-width:380px ){
	.subtop_title{font-size:27px !important;}
	.subtop_inner_txt_wrap .subtop_txt p{font-size:12px;}
}
/* ============================================================
   2026-08-24 : 서브 상단/위치메뉴 보정
   1) 서브 비주얼: 타이틀 미사용 페이지에서 래퍼 높이가 붕괴해
      이미지가 얇은 조각으로 잘리던 것 -> 최소 높이 보장 + 이미지가
      래퍼를 정확히 채우도록 (min-height 350 고정 슬라이스 제거)
   2) 홈 버튼: 정사각 + 완전 중앙 정렬로 정돈
   3) 메뉴 미등록 페이지 폴백 라벨(.lnb_fallback)은 드롭다운 화살표 숨김
   ============================================================ */
/* 래퍼 높이 = 관리자 설정 "서브탑 최소 높이"(SLD_sb.html 인라인) - 아래 240 은 설정 미입력 시 폴백.
   preference.html 이 .subtop_img 에 넣는 min-height:{설정값} 은 래퍼가 아닌 이미지에만 걸려
   래퍼 붕괴 시 이미지가 잘렸음 -> 이미지는 래퍼를 정확히 채우는 방식으로 전환 (min-height 강제 해제).
   모바일(850px 이하)은 기존 .subtop_wrap min-height:180px !important 규칙이 인라인보다 우선 적용됨 */
.subtop_wrap{min-height:240px;}
.subtop_img{top:0; left:0; right:0; bottom:0; width:100%; height:100%; min-height:0 !important;}

/* 홈 버튼 정돈 */
.lnb > ul > li:nth-child(1){width:58px; padding:0; align-items:center; overflow:visible;}
.lnb > ul > li:nth-child(1) a{float:none; padding:0; display:flex; align-items:center; justify-content:center; width:100%; height:100%;}
.lnb > ul > li:nth-child(1) a i{font-size:20px; line-height:1;}
@media( max-width:650px ){
	.lnb > ul > li:nth-child(1){width:50px;}
}

/* 폴백 라벨: 이동할 하위 목록이 없으므로 화살표 숨김, 클릭 무효 커서 */
.lnb li a.lnb_fallback{cursor:default;}
.lnb li a.lnb_fallback span{display:none;}


/* ---- v65: 서브 좌측메뉴(sub_nav) 녹색 테마 정리 — 원본은 --point-color3(연베이지)+/outpage/img 이미지 의존이라
   흰 제목·활성항목이 안 보이고 화살표 이미지가 비어 있었음. 이미지 의존 제거, 사이트 포인트 #669900 기준 ---- */
.left_aside{ transform:none; padding:0 0 80px; }
.left_aside .sub_nav_wrap{ padding-top:48px; } /* 우측 브레드크럼 행(subtop_inner_txt_wrap margin-top 48) 과 상단선 정렬 */
.lnb_title2{ padding:34px 16px 60px; border-radius:20px 20px 0 0; background:#669900 linear-gradient(135deg, #7ab00e 0%, #5f8f00 100%); }
.lnb_title2 span{ display:block; color:#fff !important; font-size:26px; line-height:1.3; font-weight:800; letter-spacing:-0.5px; }
.lnb_list2{ margin-top:-25px; border:1px solid #e6e6e6; border-radius:20px; padding:16px 26px 24px; box-shadow:0 4px 14px rgba(0,0,0,0.05); }
.lnb_list2 > li > a{ font-size:17px; color:#222 !important; border-bottom:1px solid #eee; }
.lnb_list2 > li:last-child > a{ border-bottom:0; }
.lnb_list2 > li > a span{ padding:16px 40px 16px 2px; border-bottom:0; transition:color .15s ease; }
.lnb_list2 > li > a:hover span{ color:#557f00; }
.lnb_list2 > li > a:after{ width:24px; height:24px; border:1px solid #ddd; background:#fff none; box-sizing:border-box; }
.lnb_list2 > li > a:before{ content:""; position:absolute; top:50%; right:9px; width:6px; height:6px; border-right:2px solid #999; border-bottom:2px solid #999; transform:translateY(-50%) rotate(-45deg); z-index:1; } /* 이미지 대신 CSS 화살표 */
.lnb_list2 > .on > a span{ color:#669900 !important; font-weight:700; }
.lnb_list2 > .on > a:after{ background:#669900 none; border-color:#669900; }
.lnb_list2 > .on > a:before{ border-color:#fff; }
.lnb_list2 > li > ul.depth2{ background:#f7f9f2; border-radius:10px; padding:6px 12px; margin:4px 0 10px; }
.lnb_list2 > li > ul.depth2 > li > a{ padding:10px 6px; font-size:15px; color:#444; }
.lnb_list2 > li > ul.depth2 > li > a:hover{ padding-left:10px; color:#557f00; }
.lnb_list2 > li > ul.depth2 > li.on > a{ color:#557f00; font-weight:700; }
.lnb_list2 > li > ul.depth2 > li > a i{ font-style:normal; color:#9dc23f; }
.lnb_list2 ul.depth3 a{ font-size:14px; color:#666; padding:6px 6px 6px 18px; display:block; }
.lnb_list2 ul.depth3 li.on > a{ color:#557f00; font-weight:700; }

/* ---- v66: 좌측메뉴-본문 간격 축소 — .right_content 의 padding-left:7%(1520 기준 약 85px) 가 과다 → 30px ---- */
@media( min-width:851px ){
	.right_content{ padding-left:30px !important; }
	.left_content{ padding-right:30px; }
}

/* ---- v67: #sub_container 의 flex row-wrap 제거 — 자식(blankTop/subtop/lnbw/content_wrap)이 전부 100% 폭이라 flex 일 이유가 없고,
   flex 상태에선 blankTop 과 subtop 이 같은 줄에서 stretch 되는 사고(subtop.top 0)가 재발함. block 으로 확정 ---- */
#sub_container.flex_wrap{ display:block; }
.subtop_wrap{ margin-top:0; }

/* ---- v68: 서브탑 높이 설정값(subtop_height, 인라인 min-height) 미반영 원인 — .subtop_txt_wrap 의 padding:180px 0 (+ .subtop_txt padding-top 35) 이
   텍스트 블록만으로 약 440px 을 차지해 min-height 를 항상 넘김. 세로 중앙은 래퍼(flex_center)가 담당하므로 패딩을 최소화 ---- */
.subtop_txt_wrap{ padding:30px 0; }
.subtop_txt{ padding:0; }

/* ---- v81: 좌측메뉴 하위메뉴 보유 항목은 화살표 대신 +(닫힘)/−(열림) 표시 — li[data-child=Y] 마커(SLD_sb.html) 기준 ---- */
.lnb_list2 > li[data-child="Y"] > a:before{ width:10px; height:2px; border:0; background:#999; transform:translateY(-50%) rotate(0); right:7px; }
.lnb_list2 > li[data-child="Y"] > a{ position:relative; }
.lnb_list2 > li[data-child="Y"] > a span:after{ content:""; position:absolute; top:50%; right:11px; width:2px; height:10px; background:#999; transform:translateY(-50%); z-index:1; }
.lnb_list2 > li[data-child="Y"].on > a:before{ background:#fff; }
.lnb_list2 > li[data-child="Y"].on > a span:after{ display:none; } /* 열림 상태는 − 만 */
.lnb_list2 > li[data-child="Y"] > a:hover:before{ background:#557f00; }
.lnb_list2 > li[data-child="Y"] > a:hover span:after{ background:#557f00; }
.lnb_list2 > li[data-child="Y"].on > a:hover:before{ background:#fff; }

/* ---- v82: 좌측메뉴 페이지에서 경로(브레드크럼)/제목을 좌측 카드와 정렬 — 경로 줄은 카드 녹색 제목의 세로 중심선(약 99px), 페이지 제목은 카드 흰 영역 시작선에 맞춤 ---- */
@media( min-width:851px ){
	.right_content .subtop_inner_txt_wrap{ margin-top:86px; }
	.right_content .subtop_inner_txt_wrap .subtop_cont_title{ margin-top:22px; }
}

/* ---- v83: 제목 우측 SNS 공유·인쇄 아이콘(레이아웃 공통) — wizone_board 스킨 post-sns 와 동일 톤 ---- */
.subtop_inner_txt_wrap .subtop_txt{ position:relative; }
.sld-sns{ position:absolute; right:0; top:50%; transform:translateY(-50%); display:flex; gap:6px; }
.sld-sns .sns-c{ width:32px; height:32px; display:inline-flex; align-items:center; justify-content:center; border:0; border-radius:50%; cursor:pointer; color:#fff; padding:0; background:#fff; transition:transform 120ms ease, opacity 120ms ease; }
.sld-sns .sns-c:hover{ transform:translateY(-1px); opacity:.88; }
.sld-sns .i-kakao{ background:#FEE500; color:#191919; }
.sld-sns .i-fb{ background:#1877F2; }
.sld-sns .i-x{ background:#0F1419; }
.sld-sns .i-band{ background:#00C73C; }
.sld-sns .i-link, .sld-sns .i-print{ background:#fff; color:#666; border:1px solid #cfcfcf; }
.sld-sns .i-link.done{ background:#669900; color:#fff; border-color:#669900; }
.subtop_inner_txt_wrap .subtop_cont_title, .subtop_inner_txt_wrap .subtop_title{ padding-right:250px; box-sizing:border-box; } /* 아이콘 줄과 제목 겹침 방지 */
@media( max-width:850px ){
	.sld-sns{ position:static; transform:none; margin:12px 0 0; }
	.subtop_inner_txt_wrap .subtop_cont_title, .subtop_inner_txt_wrap .subtop_title{ padding-right:0; }
}

/* ---- v83: 인쇄 — 본문 콘텐츠만 출력 (헤더·GNB·서브탑·위치메뉴·좌측메뉴·푸터·퀵메뉴 제거) ---- */
@media print{
	#header, #footer, .blankTop, .subtop_wrap, .lnbw, .sub_aside, .sld-sns, .quick_menu, .top_btn, #top2v, .allmenu{ display:none !important; }
	#content, .content_wrap{ padding:0 !important; max-width:none !important; box-shadow:none !important; }
	.right_content, .left_content, .sub_content{ width:100% !important; padding:0 !important; }
	.subtop_inner_txt_wrap{ margin-top:0 !important; }
	.subtop_inner_txt_wrap .subtop_cont_title, .subtop_inner_txt_wrap .subtop_title{ padding-right:0; }
	html, body{ background:#fff !important; }
	a[href]:after{ content:"" !important; }
}

/* v84: 원본 35행 `.subtop_txt > div{ display:none; width:100px; height:5px }`(옛 장식 바 숨김 규칙)이 공유바 div 까지 숨기던 것 → 명시 복원 */
.subtop_inner_txt_wrap .subtop_txt > div.sld-sns{ display:flex; width:auto; height:auto; margin:0; justify-content:flex-start; }
@media( max-width:850px ){ .subtop_inner_txt_wrap .subtop_txt > div.sld-sns{ margin:12px 0 0; } }

/* v86: 공유·인쇄 아이콘 확대 32 -> 42px, 간격 8px, SVG 비례 확대 */
.sld-sns{ gap:8px; }
.sld-sns .sns-c{ width:42px; height:42px; }
.sld-sns .sns-c svg{ width:20px; height:20px; }
.sld-sns .i-x svg{ width:17px; height:17px; }
@media( max-width:850px ){ .sld-sns .sns-c{ width:36px; height:36px; } .sld-sns .sns-c svg{ width:17px; height:17px; } }

/* v89: 위치메뉴 바(.lnb z-index:1000)가 top6 전체메뉴 패널(.gnb z 100)보다 위에 떠서 드롭다운 위로 비침 → 바 컨텍스트를 30 으로 낮춤.
   바 내부 드롭다운(.lnb ul ul z 100)은 바 컨텍스트 안에서만 쌓이므로 본문(z 10) 위 표시는 그대로 유지 */
.lnbw{ position:relative; z-index:30; }
.lnb{ z-index:auto; }

/* ---- v144: 좌측메뉴 폭 = 헤더 로고 폭. --aside-w 를 SLD_sb.html 의 JS 가 로고 실측폭으로 세팅(폴백 300px), 본문 폭도 같은 변수로 계산 ---- */
@media (min-width:1025px){
	#sub_container{ --aside-w:300px; }
	.left_aside{ width:var(--aside-w); }
	.left_content{ width:calc(100% - var(--aside-w)); }
	.right_content{ width:calc(100% - var(--aside-w)); }
}

/* ---- v145: 좌측메뉴 폭 = 로고 폭 - 20 (JS), 좌측메뉴-본문 간격 30 -> 50px ---- */
@media (min-width:1025px){
	#sub_container{ --aside-w:280px; }
	.right_content{ padding-left:50px !important; }
}

/* ---- v151: 서브 페이지 제목 톤 다운 — 37/700 → 30/600, 색 #2c3327 ---- */
@media (min-width:769px){
	.subtop_inner_txt_wrap .subtop_cont_title{ font-size:30px; font-weight:600; color:#2c3327; letter-spacing:-0.3px; }
}

/* ---- v152: 인쇄 영역 지정 — 블랙리스트(v83) → 화이트리스트 전환.
   v83 방식은 숨길 요소를 나열하는 구조라 목록에 없는 요소(#right_gnb 설정패널, 우측퀵, DEBUG 배지 등)가 그대로 인쇄됨.
   body > #container > #sub_container > #content > 본문div 경로만 남기고 나머지 형제를 전부 제외한다. ---- */
@media print{
	/* 1) 인쇄 경로 밖의 형제 요소는 전부 제외 */
	body > *,
	#container > *,
	#sub_container > *,
	#content > *{ display:none !important; }

	/* 2) 인쇄 경로만 복원 */
	body > #container,
	#container > #sub_container,
	#sub_container > #content{ display:block !important; width:100% !important; margin:0 !important; padding:0 !important; box-shadow:none !important; }
	#content > div:not(.sub_aside){ display:block !important; width:100% !important; float:none !important; padding:0 !important; }

	/* 3) 본문 영역 내부에서 제외할 것 — 경로(브레드크럼)·공유아이콘 */
	.subtop_inner_txt_wrap .location_bar,
	.sld-sns{ display:none !important; }
	.subtop_inner_txt_wrap{ margin-top:0 !important; }
	.subtop_inner_txt_wrap .subtop_cont_title,
	.subtop_inner_txt_wrap .subtop_title{ padding-right:0 !important; }

	html, body{ background:#fff !important; }
	a[href]:after{ content:"" !important; }
}
@page{ margin:12mm; }

/* ---- v153: 인쇄 시 버튼 영역 제외 — 페이지 모듈 관리자 버튼(.btnArea > .btn-group: 캐시파일 재생성/설정)이
   본문(.contentDiv) 안쪽에 출력돼 v152 화이트리스트를 통과하던 것. 게시판 목록/수정 버튼 등도 동일하게 제외. ---- */
@media print{
	.btnArea,
	.btn-group{ display:none !important; }
}

/* ---- v154: 인쇄 폭 초과 시 자동 축소 + 배경색 인쇄
   A4 세로 인쇄 가능 폭은 여백 12mm 기준 약 703px. 조직도 등 그보다 넓은 콘텐츠는 브라우저가 잘라내므로
   SLD_sb.html 의 beforeprint 스크립트가 필요 폭을 실측해 본문 래퍼에 zoom 을 건다(--print-zoom).
   배경색/그래픽은 크롬 "배경 그래픽" 체크와 무관하게 출력되도록 강제. ---- */
@media print{
	*, *::before, *::after{ -webkit-print-color-adjust:exact !important; print-color-adjust:exact !important; }
	#content > div:not(.sub_aside){ zoom:var(--print-zoom, 1); }
	/* 축소 후 가로 스크롤 컨테이너가 내용을 자르지 않도록 */
	.contentDiv, .contentDiv *{ overflow-x:visible !important; }
}

/* ---- v178: 좌측 3차 메뉴 행 간격 축소 — 항목당 상하 패딩 10px(행 약 40px)이 과해 보여 6px 로.
   컨테이너 상하 여백과 항목 간 간격도 함께 조여 목록이 한 덩어리로 읽히게 한다. ---- */
.lnb_list2 > li > ul.depth2{ padding:4px 12px; margin:2px 0 8px; }
.lnb_list2 > li > ul.depth2 > li > a{ padding:6px 6px; line-height:1.4; }

/* ---- v179: 851~991px 구간 본문 폭 공백 수정 —
   .sub_aside 숨김은 991px 이하, 본문 폭 100% 복원은 850px 이하에만 있어
   그 사이 구간에서 좌측메뉴는 사라졌는데 본문은 calc(100% - 313px) 를 유지,
   메뉴가 있던 자리만큼 우측이 비어 보였다. 두 경계를 991 로 일치시킨다. ---- */
@media( max-width:991px ){
	.left_content{ width:100%; padding:0 10px; box-sizing:border-box; }
	.right_content{ width:100%; padding:0 10px !important; }
}
