@charset "UTF-8";

html, body {overscroll-behavior-x: none;} /* 20260812 수정: iOS 세이프리 좌우 러버밴드 바운스로 화면이 튕기는 현상 방지 */
body {min-width:320px;}
body.disable_scroll {height: 100%; overflow: hidden;}
/* body::before {z-index:2;content:"";position:absolute;top:145px;left:50%;transform:translateX(-50%);width:calc(100% - 40px);height:75px;margin:0 auto;background:#0038ff} */

/* skip menu */
#skip {position:relative;z-index:9999}
#skip a {position:absolute;top:-40px;left:0;width:calc(100% - 10px);/*padding:5px 0;*/font-size:14px;line-height:30px;color:#333752;text-align:center;transition:all 0.4s;background-color:#fff; margin-left: 5px; margin-right: 5px; margin-top: 5px;} /* 20260827 수정: width:99.5%가 margin-left/right:5px와 정확히 안 맞아떨어져 실제로는 뷰포트보다 몇 px 더 넓어짐 - 화면에는 안 보이는 링크(top:-40px)라 평소엔 문제 없어 보이지만, 이 여분 너비가 문서의 가로 스크롤 범위에 포함되면서 모바일 사파리 계열에서 스크롤할 때 화면이 좌우로 미세하게 흔들리는(고무줄 바운스) 원인이 되고 있었음 - margin 10px(5+5)을 정확히 뺀 calc(100% - 10px)로 수정해 실제 뷰포트 폭을 넘지 않도록 함 */
#skip a:hover, #skip a:focus, #skip a:active {top:0;text-decoration:none;}

header {z-index:5;position:relative;width:100%;} /* 20260827 수정: 20260826에 100vw로 통일했던 게 실제 데스크톱(에뮬레이션 아닌 진짜 브라우저)에서 최초 로드 시 header가 스크롤바 폭만큼 뷰포트보다 넓어져 가로 스크롤이 생기는 새 문제를 만듦(nav_up 전환 시 사라지는 이유는 fixed 전환 후에는 겹치는 폭이 시각적으로 안 보일 뿐 원인은 동일) - width:100vw 대신 header.nav_up 쪽을 left:0;right:0(width 생략)로 바꿔, position:relative(100%)와 position:fixed(left/right:0) 둘 다 스크롤바를 제외한 실제 뷰포트 너비를 기준으로 계산되도록 통일해 원래 문제(우측 요소 튐)와 새 문제(가로 스크롤) 둘 다 해결 */
header.nav_up {position: fixed; left:0; right:0; top:0; border-bottom:1px solid rgba(0,0,0,0.17); background-color: #fff;}
header.nav_up .header_wrap {height: 90px; display: flex;}
header.nav_up .header_search {padding-top:20px;}
header.nav_up .header_wrap h1 {top:50%; transform: translateY(-50%);}
header.nav_up .header_wrap .header_utill {top:50%; transform: translateY(-50%); height: 40px;}


header.nav_up #gnb {display: none;} 
.header_wrap {position:relative;text-align:center;}
.header_wrap h1 {position:absolute;top:43px;left:60px;font-size:32px;font-weight:400;color:#fff;}
.header_wrap h1 a {position:relative;display:block;width: clamp(172px, calc(140.986px + 8.263vw), 260px);aspect-ratio:222/40;} /* 20260825 수정: 로고 사이즈 clamp로 변경 */
.header_wrap h1 a:before {content:"";position:absolute;top:5px;left:5px;display:block;width:calc(100% - 10px);height:calc(100% - 10px);background-image:url(../images/common/img_logo_01.svg);background-repeat:no-repeat;background-position:0 0;background-size:100% 100%;}

/* header_search */
.header_search {z-index:100;width:620px;margin:0 auto 0;padding-top:40px;}
.header_search fieldset {position:relative;display:block;padding:0 60px 0 20px;text-align:left;border:2px solid #130657;border-radius:25px;background:#fff;}
.header_search fieldset input {width:calc(100% - 50px);height:48px;padding:0 10px;font-size:16px;line-height:26px;font-weight:400;background:transparent;}
.header_search fieldset input::placeholder {font-size:16px;line-height:26px;font-weight:400;color:#bbb;}
.header_search fieldset button {position:absolute;top:50%; transform: translateY(-50%); right:20px;width:24px;height:24px;background-image:url(../images/common/icon_search_01.svg);background-repeat:no-repeat;background-position:0 0;background-size:100% 100%;transition:all ease-out .1s;}

/* GNB */
nav {z-index:5;position:relative;height:79px;margin:30px auto 0;border-top:1px solid rgba(0,0,0,0.17);}	
.gnb_menu {z-index:5;position:relative;display:inline-block;width:auto;}
.gnb_menu > ul {display:flex;position:relative;}
.gnb_menu > ul li {position:relative;min-width:120px;height:79px;padding:0 40px;text-align:center;font-weight:400;display:inline-flex;align-items: center;}
.gnb_menu > ul > li {width: 300px; justify-content: center;}
.gnb_menu ul a {display:inline-flex; align-items: center; justify-content: center;font-size:22px;line-height:36px;font-weight:700;color:#111; width: 100%; height: 100%;}
/*.gnb_menu ul > a:focus-within {outline: 1px dashed #fff;}
.gnb_menu ul > a:focus {outline: 1px dashed #fff;}*/
.gnb_menu ul > a:focus-visible {outline: 1px dashed #fff;}
.gnb_menu > ul > li.on {background-color: #4169E1; color: #fff; position: relative;}
.gnb_menu > ul > li.on::after {content:''; width:163px; height: 1px; position: absolute; left:50%; bottom:1px; transform: translateX(-50%); background-color: #fff;}
.gnb_menu > ul > li.on > a, .gnb_menu > ul > li:hover > a {font-weight:bold;color:#fff;text-decoration:none; -webkit-text-stroke: 0.5px #4169E1;}
.gnb_menu ul.depth_2 {position:absolute;z-index:5;left:50%;top:78px;transform: translateX(-50%); overflow:hidden;width:auto;height:0;height:0;width: 300px; text-align: center;  border-left:1px solid rgba(0,0,0,0.1)}
.gnb_menu ul.depth_2:last-child {border-right: 1px solid rgba(0,0,0,0.1);}
.gnb_menu ul.depth_2 li {height:32px;margin:0;padding:0 15px;text-align:center;line-height:32px;width: 100%; margin-top:5px;}
.gnb_menu ul.depth_2 li a {font-size:18px;font-weight:500;color:#4D4D4D; white-space: nowrap;display: inline-block; width: 100%;}
#gnb.gnb_open ul li > .depth_2, #gnb.gnb_open .gnb_menu ul li:focus-within > .depth_2 {height:262px;padding:10px 0 15px;}
#gnb.gnb_open ul li > .depth_2 {padding-top:20px;}
#gnb.gnb_open::after {content: '';position: absolute; top: 100%;left: 0;right: 0; background-color:#fff; /* 원하는 배경 색상 */ z-index: -1; /* gnb_menu 뒤에 배치 */height: 260px; transition: height 0.3s ease; box-shadow: 0 8px 10px 0 rgba(0,0,0,0.1); border-top:1px solid rgba(0,0,0,0.1)}
.gnb_menu > ul > li.on ul.depth_2 {background-color: #4169E1; color: #fff; height: 281px;}
.gnb_menu > ul > li.on ul.depth_2 li a {line-height: 32px; color: #fff;}
.gnb_menu > ul > li.on ul.depth_2 li a:focus-visible {outline:2px dashed #fff!important;}
/* header_utill */
.header_utill {position:absolute;top:48px;right:60px;}
.header_utill .pc_menu_all {}
.header_utill .pc_menu_all > a {display:inline-block;width: 40px; height: 40px; background-image:url(../images/common/ico_header_menu.svg);background-repeat:no-repeat;background-position:0 0;background-size:100% 100%;}
/* ============================================================
   사이트맵 팝업(.site_map_pop, 햄버거 메뉴 클릭 시 노출되는 전체 메뉴)
   20260826 수정: contents_v260818.css / contents_2024_v260818.css에 흩어져 있던
   .site_map_pop 관련 CSS(모든 화면 사이즈)를 이 파일 한 곳으로 통합.
   통합 과정에서 서로 다른 파일에 같은 선택자가 중복 선언되어 있어 실제로는
   나중에 로드되는 파일의 값이 항상 이기고 있던 "죽은 선언"들을 발견함 —
   아래 값은 통합 전 실제로 화면에 적용되던(우선순위상 이기던) 값을 기준으로 정리했고,
   예외적으로 h2::before(로고 크기)는 desktop(262x48)/mobile(146px) 고정값 두 개만 있어 769~1024px 구간에서
   헤더 로고(가변 clamp)와 달리 계속 큰 사이즈로 보이던 문제가 있어, 헤더 로고(.header_wrap h1 a)와 동일한
   clamp 공식으로 통일함 — 모든 화면 폭에서 항상 헤더 로고와 같은 크기로 보이도록 수정.
   ============================================================ */
.site_map_pop {display: none;}
.site_map_pop.show {display: block; position: fixed; left:0;top:0;right:0;bottom:0;background-color:#fff;z-index: 1001; display: flex; align-items: center; justify-content: center;} /* 20260827 수정: width:100vw/height:100vh가 모바일 사파리에서 실제 화면 크기와 미세하게 달라(주소창 표시 상태 등에 따라 달라짐), 햄버거 버튼 클릭 시 사이트맵이 열리는 순간 안의 로고/닫기 버튼이 실제 헤더의 로고 위치보다 살짝 오른쪽으로 밀려 보이는 문제가 있었음 - header에 적용했던 것과 동일하게 width/height 대신 left/top/right/bottom:0으로 변경해 실제 뷰포트 크기에 정확히 맞도록 수정 */
.site_map_pop::before {content:''; position:absolute; top:0; left:0; width:100%; height:90px; border-bottom:1px solid rgba(0,0,0,0.17); pointer-events:none;} /* 20260826 수정: 로고/닫기 버튼이 있는 상단 바를 header.nav_up(스크롤 시 헤더)와 동일한 모양(흰 배경 위 하단 보더)으로 표시 */
.site_map_pop h2 {position: absolute; left:60px; top:45px; transform:translateY(-50%);} /* 20260826 수정: header.nav_up .header_wrap h1(top:50%+translateY(-50%), 90px 기준 중심 45px)과 동일한 위치로 맞춤 */
.site_map_pop h2::before {content: ''; background-image:url(../images/common/img_logo_01.svg);background-repeat:no-repeat;background-position:0 0; display: block; width: clamp(172px, calc(140.986px + 8.263vw), 260px); aspect-ratio:222/40; background-size:100% 100%;} /* 20260826 수정: 헤더 로고(.header_wrap h1 a, 24번째 줄)와 동일한 clamp 공식으로 통일. 20260827 수정: 24번째 줄 header_wrap h1 a의 clamp 값이 이후(20260825) 별도로 조정되면서 여기(popup)는 이전 값(160px, 9.39vw)에 머물러 있어 화면 폭이 좁아지는 구간(햄버거 메뉴 전환 구간)에서 사이트맵 로고와 실제 헤더 로고 크기가 달라지고 있었음 - header_wrap h1 a의 현재 값과 다시 동일하게 맞춤 */
.site_map_pop .sitemap_menu_wrap {width: 1440px; margin: 0 auto;}
.site_map_pop .sitemap_menu_wrap > ul {display: flex; justify-content: center; gap:0 24px;}
.site_map_pop .sitemap_menu_wrap > ul > li {width: 25%; text-align: left; border-right: none;} /* 20260826 수정: 기존에 border-right:1px 선언과, 별도 위치(102번째 줄 부근)에 있던 border-right:none 재선언이 공존해 항상 none으로 렌더링되고 있던 것을 하나로 정리 */
.site_map_pop .sitemap_menu_wrap > ul > li > button
{
	font-size: clamp(20px, 1.66vw, 24px); /* 20260826 수정 */
    background-color: #2A5C96;
    align-items: center;
    justify-content: center;
    color: #fff;
    display: inline-flex;
    width: 100%;
    padding: 12px 16px;
    font-weight: 600;
}
.site_map_pop .sitemap_menu_wrap > ul > li > ul.depth_2 > li {position: relative; background-color: #F6F6F6; border-top:none; border:1px solid #D1D1D1; border-bottom: none; padding: 20px 20px 15px 30px;}
.site_map_pop .sitemap_menu_wrap > ul > li > ul.depth_2 > li a {font-size: clamp(16px, 1.25vw, 20px); font-weight: 500; color: #565656; width: 100%; display: flex; align-items: center;} /* 20260826 수정 */
.site_map_pop .sitemap_menu_wrap > ul > li > ul.depth_2 > li a:hover {color:#164DD2;}
.site_map_pop .sitemap_menu_wrap > ul > li > ul.depth_2 > li > a::before {content: ''; position: absolute; width:4px; height: 4px; background-color: #666; border-radius:4px; left:16px; /*top:7px;*/}
.site_map_pop .sitemap_menu_wrap > ul > li > ul.depth_2 > li + li {border-top:1px solid #D1D1D1;}
.site_map_pop .sitemap_menu_wrap > ul > li > ul.depth_2 > li:last-child {border-bottom: 1px solid #d1d1d1;}

/*.site_map_pop .sitemap_menu_wrap > ul > li > ul.depth_2 {margin-top: 26px;}
.site_map_pop .sitemap_menu_wrap > ul > li > ul.depth_2 li + li {margin-top: 14px;}
.site_map_pop .sitemap_menu_wrap > ul > li > ul.depth_2 li a {color: #333752; font-size: 20px; font-weight: 300;}
.site_map_pop .sitemap_menu_wrap > ul > li > ul.depth_2 li a:focus {outline:2px dashed #fff!important;}*/
.site_map_pop .close_sitemap {position: absolute; top:45px; right:60px; transform:translateY(-50%);} /* 20260826 수정: header.nav_up .header_wrap .header_utill(top:50%+translateY(-50%), 90px 기준 중심 45px)·현재 header_utill(right:60px)과 동일한 위치로 맞춤 */
.site_map_pop .close_sitemap::after {content: '';  background-image:url(../images/common/btn_close_sitemap.svg);background-repeat:no-repeat;background-position:0 0; width:40px; height:40px; display: block;} /* 20260826 수정: display:inline-block→block, h2::before와 동일한 이유로 버튼 높이가 아이콘보다 커지는 여분 높이 제거 */

.floating_quick_menu {position: fixed; right:30px; top:50%; transform: translateY(-50%); background-color: #323845; z-index:10; padding:20px 0; border-radius: 35px; width:70px; line-height: 1.2; } /* 20260824 수정 */
.floating_quick_menu ul {text-align: center;}
.floating_quick_menu ul li {padding:10px 0; position: relative;}
.floating_quick_menu ul li + li::before {content:''; height: 1px; width:calc(100% - 22px); background-color: rgba(255,255,255,0.15); position: absolute; top: 0; left: 50%;transform: translateX(-50%);}
.floating_quick_menu ul li a {color: #fff; font-weight: 500; font-size: 13px; letter-spacing: -1px;}
.floating_quick_menu ul li a:focus-visible {outline:2px dashed #fff !important}	/* tab focus : 웹접근성 */
.floating_quick_menu ul li a i {display: block;}
/* 20260826 수정: .site_map_pop .sitemap_menu_wrap > ul > li의 border-right:none 재선언은 위쪽(61번째 줄 부근) 기본 규칙에 통합했으므로 제거 */



.contents_wrap {z-index:3;position:relative;width:100%;margin:0 auto;background-color:#fff;}
.contents_wrap.main {width: 100%; padding:0; margin:0; box-shadow: none; border-radius: 0;}
.contents {min-height:698px;margin:0 auto; overflow-x: clip;} /* 20251015 수정 - swipe 실행 시 PC 화면에서 좌우 스크롤 생기는 문제 */
/* 지역문화정보 */
/* .contents {max-width:1440px;} */
/* main detail */
.mainview.contents_wrap {width:calc(100% - 86px);}
.mainview .contents {max-width:1458px;}
.mainview .funcwrap.topside {padding-right:12px;}
/* 공통페이지 */
/* .contype02 .contents {max-width:1000px;} */
/* 문화플레이스 */
.contents_wrap.culture {height: calc(100% - 424px);} 
.contents_wrap.culture .contents {height: 100%;}




/* footer */
.footer_wrap {position:relative;clear:both;width:calc(100% - 120px);margin:0 auto;padding:25px 0 20px;}

.footer_menu .link_wrap {margin:5px 0;display:flex;flex-wrap:wrap;flex-direction:row;}
.footer_menu .link_wrap select {min-width:155px;font-size:14px;line-height:22px;border-color:#999BA9;border-radius:8px 0 0 8px;}
.gotosite {display:block;width:70px;
    padding:5px;
    text-align:center;
    font-size:14px;
    line-height:22px;
    font-weight:700;
    color:#fff;
    border-radius:0 8px 8px 0;background:#66697D;}
.footer_menu {position:relative;margin-bottom:30px;padding-bottom:15px;border-bottom:1px solid #cccdd4;display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-between;}
.footer_menu ul {display:flex;align-items:center;flex-direction:row;flex-wrap:wrap;justify-content:space-between;min-height:50px;gap:32px;} /* 20260821 수정: 항목 간격 32px (gap) */
.footer_menu li {position:relative;display:inline-block;font-size:17px;line-height:24px;font-weight:400;color:#1D1D1D;} /* 20260821 수정: margin-right 제거, 간격은 ul의 gap으로 통일 / font-size,weight,color 수정 */
.footer_menu .footer_link {margin-bottom:30px;padding-bottom:30px;border-bottom:1px solid #cccdd4;}

.footer_logo {}
.footer_logo a {position:relative;display:inline-block;width:150px;height:30px;margin-right:30px;}
.footer_logo a:last-child{margin-right:0;}
.footer_logo a::before{content:"";position:absolute;top:0;left:0;width:150px;height:30px;}
.footer_logo .logo1::before{background:url(../images/common/img_logo_02.svg) no-repeat center center;}
.footer_logo .logo2::before{background:url(../images/common/img_logo_03.svg) no-repeat center center;}

.footer_info {font-weight:400;display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-between;}
.corp_info {margin-top:10px;}
.corp_info ul {flex:auto;min-width:110px;}
.corp_info li{position:relative;display:inline-block;margin:10px 5px 0 0;padding-left:7px;font-size:14px;line-height:22px;font-weight:400;color:#333752;}
.corp_info li:first-child{padding-left:0;margin-left:0;}
.corp_info li::before{content:"";position:absolute;top:5px;left:0;width:1px;height:12px;background-color:#333752;}
.corp_info li:first-child:before{content:none;}
.footer_wrap .copy {margin-top:15px;font-size:14px;line-height:22px;font-weight:400;color:#66697D;flex:auto;min-width:110px;}
.footer_wrap .associate > * {display:inline-block;vertical-align:middle;} 
/* 20250415 마크 수정 */
.mark_wrap {margin-top:36px;}
.mark_wrap a[class^="mark"] {display:inline-block;vertical-align:middle;margin-left:20px;}
.mark_wrap a[class^="mark"]:first-child {margin-left:0;}
.mark_wrap .mark1 {width:112px; height:76px;background:url(../images/common/img_logo_04_260420.png) no-repeat center center;background-size: contain;}
.mark_wrap .mark2 {width:101px; height:42px;background:url(../images/common/img_logo_05.svg) no-repeat center center;}
.sns_wrap {margin-top:36px;} 
.sns_wrap a[class^="sns"] {display:inline-block;width:24px;height:24px;margin-right:10px;background-repeat:no-repeat;background-position:center center;} 
.sns_wrap .sns1 {background-image:url(../images/common/icon_sns_01.svg);}
.sns_wrap .sns2 {background-image:url(../images/common/icon_sns_02.svg);}
.sns_wrap .sns3 {background-image:url(../images/common/icon_sns_03.svg);}
.sns_wrap .sns4 {background-image:url(../images/common/icon_sns_04.svg);}

/* 20250415 대한민국 공식 누리집 */
#header-top { position: relative; z-index: 70; width: 100%; background-color: #EDF1F5;}
#header-top .toggle-head { padding-left: 60px;}
#header-top .toggle-head .inner { position: relative; gap: 4px 16px; min-height: 32px; padding: 8px 16px 8px 32px;}
#header-top .toggle-head .nuri-txt { display: flex; align-items: center; justify-content: flex-start; flex-direction: row; font-size: 15px; line-height: 1;	white-space: nowrap; font-weight: 400;}
#header-top .toggle-head .nuri-txt::before { display: inline-flex; position: absolute; left: 0; content: ""; width: 24px; height: 16px; margin-right: 8px; background: url(../images/common/top_ban_ico_flag.svg) no-repeat center; background-size: auto;background-size: contain;}


/* 노트북 & 테블릿 가로 (해상도 1024px ~ 1440px) */
@media screen and (max-width:1440px) {
	/* 20260826 수정: 사이트맵 팝업 CSS 통합 (원본: contents_2024_v260818.css) */
	.site_map_pop .sitemap_menu_wrap {width:100%; padding:0 40px;}
}

/* 테블릿 가로 (해상도 768px ~ 1023px) */
@media screen and (max-width:1024px) {
	#header-top { position: relative; z-index: 70; width: 100%; background-color: #EDF1F5;}
	#header-top .toggle-head { padding-left: 30px;}
	#header-top .toggle-head .inner { position: relative; gap: 4px 16px; min-height: 32px; padding: 8px 16px 8px 32px;}
	#header-top .toggle-head .nuri-txt { display: flex; align-items: center; justify-content: flex-start; flex-direction: row; font-size: 15px; line-height: 1;	white-space: nowrap; font-weight: 400;}
	#header-top .toggle-head .nuri-txt::before { display: inline-flex; position: absolute; left: 0; content: ""; width: 24px; height: 16px; margin-right: 8px; background: url(../images/common/top_ban_ico_flag.svg) no-repeat center; background-size: auto;background-size: contain;}

	/* 20260826 수정: 사이트맵 팝업 CSS 통합 (원본: contents_2024_v260818.css) */
	.site_map_pop.show {align-items: flex-start;} /* 20260826 수정: 세로 중앙 정렬(align-items:center, 74번째 줄)이 데스크톱 4열 그리드 기준이라 1024px 이하 세로 스크롤형 메뉴에서는 로고/닫기 버튼(헤더 영역)과 메뉴 목록 사이에 큰 빈 여백이 생겼음 → 상단 정렬로 변경 */
	.site_map_pop h2 {left:30px;} /* 20260826 수정: header.nav_up .header_wrap h1의 1024px 이하 left:30px(contents_v260818.css)와 동일하게 맞춤 */
	.site_map_pop .close_sitemap {top:45px; right:30px;} /* 20260826 수정: header.nav_up .header_utill(1024px 이하 right:30px, 90px 기준 중심 45px)과 동일한 위치로 맞춤 */
	.site_map_pop .close_sitemap:focus {outline:2px dashed #fff!important;}
	.site_map_pop .close_sitemap::after {width: 32px; height: 32px; background-size: 100%;}
	.site_map_pop .sitemap_menu_wrap {width:100%; padding:0;}
	.site_map_pop .sitemap_menu_wrap > ul {display: block; height:calc(100vh - 74px); overflow-y: auto; margin-top:100px; padding:0 60px;} /* 20260826 수정: 상단 정렬로 바뀌면서 닫기 버튼(top:50px+32px) 바로 아래로 오도록 margin-top 134px → 100px 축소 */
	.site_map_pop .sitemap_menu_wrap > ul::-webkit-scrollbar {width: 5px;}
	.site_map_pop .sitemap_menu_wrap > ul::-webkit-scrollbar-thumb {background-color: #fff;}
	.site_map_pop .sitemap_menu_wrap > ul > li {width: 100%;}
	.site_map_pop .sitemap_menu_wrap > ul > li > button {display: inline-flex; position: relative; align-items: center; justify-content: flex-start; width: 100%; height: 64px; padding-left: 16px; border-bottom: 1px solid rgba(255,255,255,0.15); font-size: 20px; text-align: left;}
	.site_map_pop .sitemap_menu_wrap > ul > li > button::after {content:''; background: url(../images/common/menu_arc_arrow.svg) no-repeat; position: absolute; right:16px; top:17px; width: 24px; height: 24px; transform: rotate(180deg);}
	.site_map_pop .sitemap_menu_wrap > ul > li > button:focus {outline:2px dashed #333752!important;}
	.site_map_pop .sitemap_menu_wrap > ul > li.on > button::after {transform: rotate(0); top: 18px;}
	.site_map_pop .sitemap_menu_wrap > ul > li > ul.depth_2 {margin:0; padding:0; height: 0; overflow: hidden;}
	.site_map_pop .sitemap_menu_wrap > ul > li.on > ul.depth_2 {margin:0; padding:10px 0; height: auto; overflow: hidden;}
	.site_map_pop .sitemap_menu_wrap > ul > li > ul.depth_2 li + li {margin:0;}
	.site_map_pop .sitemap_menu_wrap > ul > li > ul.depth_2 li a {font-size: 16px; display: inline-flex; height: 34px; align-items: center; width: 100%;}
}

/* 모바일 가로 & 테블릿 세로 (해상도 480px ~ 767px) */
@media screen and (max-width:768px) {
	#header-top { position: relative; z-index: 70; width: 100%; background-color: #EDF1F5;}
	#header-top .toggle-head { padding-left: 16px;}
	#header-top .toggle-head .inner { position: relative; gap: 4px 16px; min-height: 32px; padding: 8px 16px 8px 32px;}
	#header-top .toggle-head .nuri-txt { display: flex; align-items: center; justify-content: flex-start; flex-direction: row; font-size: 15px; line-height: 1;	white-space: nowrap; font-weight: 400;}
	#header-top .toggle-head .nuri-txt::before { display: inline-flex; position: absolute; left: 0; content: ""; width: 24px; height: 16px; margin-right: 8px; background: url(../images/common/top_ban_ico_flag.svg) no-repeat center; background-size: auto;background-size: contain;}

	/* 20260826 수정: 사이트맵 팝업 CSS 통합 (원본: contents_v260818.css + contents_2024_v260818.css)
	   1024px 이하 규칙에서 값이 바뀌지 않는 속성(스크롤바, 버튼 폰트/패딩, depth_2 등)은 재선언하지 않고 위 1024px 블록 값을 그대로 상속.
	   h2::before(로고)는 위쪽 기본 규칙에서 헤더 로고와 동일한 clamp 공식으로 통일했으므로 이 블록에서 별도 재정의 불필요.
	   button padding-left도 두 파일에 12px/16px가 중복 선언되어 있었는데 12px가 항상 이기고 있었음 → 1024px 블록과 동일한 16px로 통일. */
	.site_map_pop::before {height:60px;} /* 20260826 수정: header.nav_up .header_wrap의 1024px 이하 height:60px와 동일한 바 높이로 맞춤 */
	.site_map_pop h2 {left:16px; top:30px;} /* 20260826 수정: header.nav_up .header_wrap h1(1024px 이하 top:50%+translateY(-50%), 60px 기준 중심 30px)과 동일한 위치로 맞춤 */
	.site_map_pop .close_sitemap {top:29px; right:12px;} /* 20260826 수정: header.nav_up .header_utill .pc_menu_all > a(모바일 햄버거 아이콘)의 실측 렌더링 위치와 맞춤 — .pc_menu_all(div)이 line-height 기본값 때문에 자기 높이보다 약 6px 더 크게 잡혀, 내부 아이콘이 중심(32px)보다 살짝 위(약 29px)에서 보임 */
	.site_map_pop .close_sitemap:focus-visible {outline:2px dashed #fff!important;}
	.site_map_pop .sitemap_menu_wrap > ul {padding:0 16px; margin-top:74px;} /* 20260826 수정: 모바일 닫기 버튼(top:24px+32px)에 맞춰 margin-top 100px → 74px 축소 */
	.site_map_pop .sitemap_menu_wrap > ul > li > button:focus-visible {outline:2px dashed #fff!important;}
}


/* 20250918 운영기관 식별자 */
.krds-identifier {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction: row;
    gap: 1.6rem;
    width: 100%;
    min-height: 4rem;
    padding: 0.8rem 1.6rem;
    border-radius: 0.6rem;
    background-color: #fff;
	margin-top: 4.0rem;
}
.krds-identifier .logo {
    width: 6.8rem;
    aspect-ratio: 150 / 30;     
    background-image: url(../images/common/img_logo_02.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
	display: inline-block;
}
.sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    clip: rect(0px, 0px, 0px, 0px) !important;
    padding: 0px !important;
    margin: -1px !important;
    overflow: hidden !important;
    white-space: nowrap !important;
    border-width: 0px !important;
    border-style: initial !important;
    border-color: initial !important;
    border-image: initial !important;
}
.krds-identifier .ban-txt {  font-size: 1.5rem;}

@media (max-width: 767px) {
    .krds-identifier { flex-direction: column;  align-items: flex-start;  gap: 0.4rem;  }
	.krds-identifier .logo {  width: 5.8rem;  height: 2rem; }
	.krds-identifier .ban-txt {  font-size: 1.3rem;  word-break: break-all;  }
}
