/* 초기화 */
html {overflow-y:scroll}
body {margin:0;padding:0;font-size:0.75em;font-family:'Noto Sans KR', dotum, sans-serif !important;background:#e7e7e7}
html, h1, h2, h3, h4, h5, h6, form, fieldset, img {margin:0;padding:0;border:0}
h1, h2, h3, h4, h5, h6 {font-size:1em;font-family:'Noto Sans KR', dotum, sans-serif}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display:block}

ul, dl,dt,dd {margin:0;padding:0;list-style:none}
legend {position:absolute;margin:0;padding:0;font-size:0;line-height:0;text-indent:-9999em;overflow:hidden}
label, input, button, select, img {vertical-align:middle;font-size:1em}
input, button {margin:0;padding:0;font-family:'Noto Sans KR', dotum, sans-serif;font-size:1em}
input[type="submit"]{cursor:pointer}
button {cursor:pointer}

textarea, select {font-family:'Noto Sans KR', dotum, sans-serif;font-size:1em}
select {margin:0}
p {margin:0;padding:0;word-break:break-all}
hr {display:none}
pre {overflow-x:scroll;font-size:1.1em}
a {color: #000; text-decoration: none;}

*, :after, :before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

input[type=text],input[type=password], textarea {
-webkit-transition: all 0.30s ease-in-out;
-moz-transition: all 0.30s ease-in-out;
-ms-transition: all 0.30s ease-in-out;
-o-transition: all 0.30s ease-in-out;
outline: none;
}

input[type=text]:focus,input[type=password]:focus,  textarea:focus,select:focus {
-webkit-box-shadow:  0 0 5px #9ed4ff;
-moz-box-shadow:  0 0 5px #9ed4ff;
box-shadow: 0 0 5px #9ed4ff;
border: 1px solid #558ab7 !important;
}
.placeholdersjs { color: #aaa !important; }






/* 레이아웃 크기 지정 */
/* #hd, #wrapper, #ft{min-width:1200px} */

/* #hd_pop, */
#tnb ul,
#container_wr,
#ft_wr{width:1200px;}

/* 팝업레이어 */
#hd_pop {z-index:1000;position:relative;margin:0 auto;height:0}
#hd_pop h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
.hd_pops {position:absolute;border:1px solid #e9e9e9;background:#fff;}
.hd_pops img{max-width:100%}
.hd_pops_con {}
.hd_pops_footer {padding: 0;background:#000;color:#fff;text-align:left;position:relative;}
.hd_pops_footer:after {display:block;visibility:hidden;clear:both;content:""}
.hd_pops_footer button {padding: 10px;border:0;color:#fff}
.hd_pops_footer .hd_pops_reject{background:#000;text-align:left}
.hd_pops_footer .hd_pops_close{background:#393939;position:absolute;top:0;right:0}



/************************************************************ 
************************************************************ 
						상단 레이아웃
************************************************************ 
************************************************************ /

/***************** 상단-로고 *****************/
#hd_h1 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#hd_wrapper {position:relative; margin:0 auto; padding: 10px; height: 80px; zoom:1;}

#logo {padding: 10px 0; width: 24%;}
#logo img{width: 100%;}

/***************** 상단-검색어 *****************/
.hd_right{display: flex; justify-content: space-between; align-items: center;}
.hd_sch_wr{}
#hd_sch h3 {position:absolute; font-size:0; line-height:0; overflow:hidden;}
#hd_sch{background: #f8f8fa; border-radius: 150px; border: 1px solid #dfdfdf; overflow:hidden;}
#hd_sch #sch_stx {padding: 24px 0; height:40px; width: 210px; border:0; border-right:0; overflow: hidden;font-size: 1em; background: none;}


#sch_stx:focus-visible {
  border-radius: 0;
  background-color: #fff8f0;

  outline: 3px dashed #ff6600;   /* 주황 점선 */
  outline-offset: -4px;          /* 안쪽으로 끌어들이기 */

  -webkit-box-shadow: inset 0 0 0 2px #0078d7;
  box-shadow: inset 0 0 0 2px #0078d7;
}


/* 검색창 래퍼 */
.form_inner {
  display: flex;
  align-items: center;
  border-radius: 9999px;           /* 둥근 캡슐 */
  padding: 0 20px 0 24px;              /* 왼쪽 여백 확보 */
  transition: border-color 0.2s, box-shadow 0.2s;
}

/* 인풋 */
#sch_stx {
  flex: 1;
  border: none;
  outline: none;
  font-size: 1em;
  border-radius: 0;                /* 둥근 모양은 부모가 처리 */
  background: transparent;
}

/* 버튼 */
#sch_submit {
  border: none;
  background: none;
  cursor: pointer;
  font-size: 1.1em;
}

#hd_sch #sch_submit {border:0; background:#f8f8fa; color:#4c4f6f; cursor:pointer; font-size:18px}

#hd_sch input[type=text]:focus, #hd_sch input[type=password]:focus,  #hd_sch textarea:focus, #hd_sch select:focus {
	-webkit-box-shadow:  0 0 5px #9ed4ff;
	-moz-box-shadow:  0 0 5px #9ed4ff;
	box-shadow: 0 0 5px #9ed4ff;
	border: 1px solid #558ab7 !important;
}

#sbn_side{position:absolute; top:20px; right:0;}

#tnb {border-bottom:1px solid #ddd;background:#fff}
#tnb h3 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#tnb ul {margin:0 auto;zoom:1}
#tnb ul:after {display:block;visibility:hidden;clear:both;content:""}
#tnb li {float:right;border-left:1px solid #ddd;margin-bottom:-1px;font-size:0.92em}
#tnb a {display:inline-block; padding:0 10px; color:#646464; line-height:35px;}
#tnb a:focus, #tnb a:hover {color:#4c4f6f;background:#fafafa}
#tnb .tnb_admin a{color:#ff0000;}
#tnb .tnb_left{float:left;}
#tnb .tnb_left a{padding:0 14px}
#tnb .tnb_cart{border-right:1px solid #ddd;}
#tnb .tnb_community{border-right:1px solid #ddd}
#tnb .tnb_community i{font-size:15px}
#tnb .tnb_community{background:#e7e7e7;font-weight:bold;}
#tnb .tnb_community:focus, #tnb .tnb_community:hover {color:#333;border-bottom:0}
#tnb .tnb_community a{color:#4c4f6f;border-bottom:1px solid #e7e7e7}

#hd_qnb{float:right;margin-top:20px}
#hd_qnb:after {display:block;visibility:hidden;clear:both;content:""}
#hd_qnb li{float:left; font-size:1.083em; line-height:15px;position:relative;text-align:center;margin:0 10px}
#hd_qnb li span {display:block;margin-top:5px;font-size:0.92em}
#hd_qnb li a{display:block}
#hd_qnb li i{display:inline-block;width:40px;line-height:40px;border-radius:25px;background:#fff;text-align:center;margin:0;color:#fff}
#hd_qnb .visit .visit-num{display:inline-block;line-height:18px;padding:0 5px;border-radius:10px;background:#f04e00;color:#fff;font-size:10px;position:absolute;top:0;right:0}
#hd_qnb li .fa-question{background:#e83a5f;font-size:20px}
#hd_qnb li .fa-question:hover{background:#e41b45}
#hd_qnb li .fa-comments{background:#82c13f;font-size:16px}
#hd_qnb li .fa-comments:hover{background:#5aa708}
#hd_qnb li .fa-users{background:#f0ba00;font-size:15px}
#hd_qnb li .fa-users:hover{background:#f06f00}
#hd_qnb li .fa-history{background:#8522c4;font-size:15px}
#hd_qnb li .fa-history:hover{background:#6700a9}

.mo_hd_sch_wr{display: none;}
/* 닫기(X) 아이콘을 div 두 줄로 그리기 */
.mo_hd_sch_close {display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; float: right; margin: 4px 0;}
.mo_hd_sch_close .close-btn {position: relative; width: 20px; height: 20px;}
.mo_hd_sch_close .close-btn::before,
.mo_hd_sch_close .close-btn::after {content: ''; position: absolute; top: 50%; left: 50%; width: 100%; height: 2px; background: #fff; transform-origin: center;}
.mo_hd_sch_close .close-btn::before {transform: translate(-50%, -50%) rotate(45deg);}
.mo_hd_sch_close .close-btn::after {transform: translate(-50%, -50%) rotate(-45deg);}

@media(max-width: 1499px){
	#gnb .gnb_wrap {padding: 10px 30px;}
	#gnb #gnb_1dul{width: 70% !important;}
	.hd_right{margin-left: 12%;}
	#hd_wrapper {padding: 10px 40px;}
	.d2grid {--gap: 16px 10px;}
}

@media(max-width: 1023px){
	#logo{width: 260px;}
	#logo img {width: 100%;}
}

@media(min-width: 768px){
	.mo_hd_sch_close{display: none;}
}

@media(max-width: 767px){
	#hd_wrapper {padding: 10px 20px;}
	.hd_sch_sns {gap: 8px;}
	.top_snsicon {display: none;}

	#hd_sch #sch_submit{float: right; padding: 10px;}
	.mo_hd_sch_wr{display: block; font-size: 14px; padding: 6px 8px; background: #434a54; color: #fff; border-radius: 50%;}
	.mo_hd_sch_wr:hover {color: #fff;}
	.hd_sch_wr{display: inline-block; width: 80%;}
	.mo_hd_sch_bg {
		display: none;
	    position: absolute;
	    padding: 16px 10px;
		width: 100%;
	    height: 80px;
		background: #004a8f;
		top: 80px;
		left: 0;
		z-index: 10;
	}
	.mo_hd_sch_bg.is-open{display:flex; justify-content:center; align-items:center;}
}

/***************** 메인메뉴 *****************/

#hd_wrapper, #gnb .gnb_wrap{display: flex; justify-content: space-between; align-items: center; max-width: 1380px;}
#gnb{position:relative; border-top: 1px solid #D8D8D8; border-bottom: 1px solid #D8D8D8;}
#gnb h2.gnb_menu_title{position:absolute;font-size:0;line-height:0; overflow:hidden;}
#gnb .gnb_wrap{display: flex; align-items: center; justify-content:flex-end; gap: 80px; margin:0 auto;}
#gnb #gnb_1dul {
	display: flex;
    justify-content: space-between;
	width: 80%;
	font-size:1.083em;
	padding: 0;
	zoom:1;
}

#gnb .gnb_1dli{text-align: center;}
#gnb .gnb_1dli:nth-child(6) .gnb_2dul_box:nth-child(2) .gnb_3dul_box,
#gnb_all .gnb_1dli:nth-child(6) .gnb_2dul_box:nth-child(2) .gnb_3dul_box{display: none;}
#gnb .gnb_1dli:hover{
	-webkit-transition: background-color 2s ease-out;
	-moz-transition: background-color 0.3s ease-out;
	-o-transition: background-color 0.3s ease-out;
	transition: background-color 0.3s ease-out;
}
.gnb_1dli_over .gnb_2dul_box,
.gnb_1dli_over2 .gnb_2dul_box{
    flex-grow: 1;
	width: 80%;
    height: 100%;
    min-height: 200px;
    display: flex;
    flex-wrap: wrap;
    padding-top: 30px;
    padding-bottom: 30px;
    /* background-color: rgb(255, 255, 255); */
    padding-left: 20px;
    gap: 20px;
    border-left: 1px solid rgb(228, 228, 228);
    border-right: 1px solid rgb(228, 228, 228);
}
.gnb_wrap ul li .gnb_1da {display: block; text-decoration:none; padding: 20px 22px; color: #000; font-size:20px; font-weight:700; }
.gnb_wrap ul li:nth-child .gnb_1da {padding: 20px 22px 20px 0; background-color:red;}

.gnb_1dul_title{width: 300px; background: var(--main); font-weight: 600; font-size: 26px; color: #fff; padding-top: 30px;}

.gnb_1dul>li>a{color:#fff; }


/* 모바일에서도 정보공개 > 경영공시 3차 메뉴 안보이게 처리 */
@media (max-width:1279.98px){

  /* 2차: '경영공시' 항목의 토글 아이콘(▶/∨ 등) 숨김 */
  #gnb #gnb_all .gnb_al_ul2 > li > a[href*="co_id=info_reports"] .arrow.depth2{
    display:none !important;
  }

  /* 3차 목록 자체를 시각적으로 숨김 (a 바로 다음에 오는 ul) */
  #gnb #gnb_all .gnb_al_ul2 > li > a[href*="co_id=info_reports"] + .gnb_al_ul3{
    display:none !important;
  }

  /* 아이콘 사라지면서 남는 오른쪽 여백 제거(수치는 사이트 스타일에 맞춰 조정) */
  #gnb #gnb_all .gnb_al_ul2 > li > a[href*="co_id=info_reports"]{
    padding-right:0 !important;
  }
}



/***************** 2차메뉴 *****************/
.gnb_2dli {position:relative; flex-basis: calc(20% - 20px); width: 224px; padding:0 10px;}
.gnb_2dli:hover {color: rgb(36, 107, 235); border: rgb(36, 107, 235);}
.gnb_2dli > .gnb_2da {display: flex; justify-content: space-between; align-items: center; border: 1px solid #D8D8D8; border-radius: 4px; padding: .5em .7em; text-align: left; color: #000; white-space: nowrap;}
.gnb_2dli:hover .gnb_2da, .gnb_2dli:hover i{color: #055190; transition: all 0.3s ease-out;}
.gnb_2dli:hover .gnb_2da{border: 1px solid #055190;}
.gnb_2dli .gnb_2da i{text-align: right; font-size: .8rem;}

.gnb_all_menu{display: none; box-shadow: rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.04) 0px 10px 10px -5px;}
.gnb_1dli_over .gnb_all_menu,
.gnb_1dli_over2 .gnb_all_menu{position: absolute; left: 0; display: block; width: 100%; background: #fff; border-top: 1px solid #D8D8D8; z-index: 10;}
.gnb_2dli:first-child{border:0}

.gnb_1dli_over .gnb_1dul_title, .gnb_1dli_over .gnb_2dul{display: inline-block;}
.gnb_all_menu_box{max-width: 1600px; display: flex; margin: 0 auto;}

/***************** //2차메뉴 추가 끝 *****************/


/***************** 3차메뉴 *****************/
/* #gnb .gnb_3dli.on .gnb_3da, */
#gnb .gnb_2dli.on .gnb_2da,
#gnb .gnb_3dli:hover .gnb_3da {font-weight:bold; color: var(--main); border: 1px solid #055190;}

#gnb .gnb_3dli {position: relative; display: inline-block; width: 200px; vertical-align: middle;}
.gnb_wrap .gnb_3dul_box {display: flex; flex-direction: column; padding: 20px 10px 0px;}
.gnb_3da {position: relative; display: flex; align-items: center; justify-content: flex-start; gap: 4px; font-size: 16px; transition: 0.3s; padding: 6px; border-radius: 4px; padding-left: 20px; color: #000;}
.gnb_3da:before{content: ''; position:absolute; display: inline-block; margin-left: 10px; top: 50%; left: 0; width: 2px; height: 2px; background: #000;}

/***************** //3차메뉴 추가 끝 *****************/


/***************** 전체 메뉴 공통 *****************/
.hd_sch_sns{display: flex; align-items: center; gap: 10px;}
.sns_icon_box {display: flex; justify-content: space-between;}
.gnb_wrap .gnb_empty {padding:10px 0;width:100%;text-align:center;line-height:2.7em;color:#080808}
.gnb_wrap .gnb_empty a {color:#3a8afd;text-decoration:underline}
.gnb_wrap .gnb_al_ul .gnb_empty, .gnb_wrap .gnb_al_ul .gnb_empty a {color:#555}

#gnb .gnb_menu_btn {background:none; width:40px; height:45px; border:0; vertical-align: middle; font-size: 24px;}
#gnb .gnb_mnal {padding:0; margin-left: 10px;}

#gnb_all {display:none;position:absolute; left: 0; top: -80px; border:1px solid #c5d6da;width:100%;background:#fff;z-index:1000;box-shadow:0 2px 5px rgba(0,0,0,0.2)}
#gnb_all .gnb_alltop_box {display: flex; justify-content: flex-end; background: var(--main);}
#gnb_all .gnb_al_ul {max-width: 1400px; margin: 0 auto; padding: 10px 0;}
#gnb_all .gnb_al_ul:after {display:block;visibility:hidden;clear:both;content:""}
#gnb_all .gnb_al_li .gnb_al_a {color: #000;}
#gnb_all .gnb_al_ul2 > li {line-height:2em; border-bottom: 1px solid #efefef;}
#gnb_all .gnb_al_ul2 > li.active > a{color: var(--main); font-weight: bold;}
#gnb_all .gnb_al_li li a {color:#494949;}
#gnb_all_bg {display:none;background:rgba(0,0,0,0.1);width:100%;height:100%;position:fixed;left:0;top:0;z-index:999}


/* 닫기 버튼 */
#gnb_all .gnb_close_btn {
  width:50px; height:50px;
  border:0;
  position: relative;
  cursor: pointer;
  padding: 0;
  background: none;
}

/* div만으로 X 아이콘 */
#gnb_all .gnb_close_btn .close-icon {
  position: relative;
  width: 20px; height: 20px;
  margin: 0 auto;
}

#gnb_all .gnb_close_btn .close-icon::before,
#gnb_all .gnb_close_btn .close-icon::after {
  content: '';
  position: absolute;
  top: 50%; left: 0;
  width: 100%; height: 2px;
  background: #fff;
  transform-origin: center;
}

#gnb_all .gnb_close_btn .close-icon::before {
  transform: rotate(45deg);
}

#gnb_all .gnb_close_btn .close-icon::after {
  transform: rotate(-45deg);
}


/***************** 반응형 *****************/
@media (min-width: 1280px) {
  /* PC: 그리드/카드형으로 보이도록 (원래 스타일 유지) */
  #gnb_all .gnb_al_ul {display: flex; flex-wrap: wrap; gap: 50px;}
  #gnb_all .gnb_al_li {min-height:150px; padding: 20px; border-left:1px solid #e7eeef}
  .sns_icon_box {width: 120px;}

  /* PC에서는 아코디언 제약 없이 보이도록(디자인에 맞게 조정 가능) */
  #gnb_all .gnb_al_ul2,
  #gnb_all .gnb_3dul_box {display: block;}
}

@media (max-width: 1279px) {
	#gnb #gnb_1dul{display: none;}
	#gnb .gnb_al_li.active a.gnb_al_a{background: var(--main); color: #fff;}
	#gnb .gnb_al_li.active a.gnb_al_a .arrow{border-right: 2px solid #fff; border-bottom: 2px solid #fff;}

	.hd_right{margin-left: 0;}
	.sns_icon_box {width: 120px;}
	#gnb_all .gnb_al_li{padding: 0 20px; border-left:1px solid #e7eeef}
	#gnb_all .gnb_al_li .gnb_al_a {display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid var(--gray1, #eee); margin-bottom: 10px; padding: 12px 10px;}
	

	#gnb_all .gnb_al_ul2 {display: none; border-radius: 6px;}
	#gnb_all .gnb_3dul_box {display: none; background: #fff; margin: 8px 0 6px 14px; padding: 6px 12px; border-left: 2px solid #ddd; border-radius: 4px;}

	#gnb_all .gnb_al_ul2 li a{display: flex; justify-content: space-between; align-items: center; padding: 8px 4px 8px 8px; font-size: 15px;}
	#gnb_all .gnb_al_ul2 > li:last-child {border-bottom: 2px solid var(--main);}
	#gnb_all .gnb_al_ul2 li li {background: #F9F9F9; padding-left: 20px;}
	#gnb_all .gnb_al_a2{position: relative;}
	#gnb_all .gnb_al_a2::before{position: absolute; content: ''; width: 2px; height: 2px; left: 0; top: 50%; transform: translateY(-50%); background: #494949; border-radius: 50%;}
	/* 화살표 토글 */
	#gnb_all .arrow {
		width: 8px; height: 8px;
		border-right: 2px solid #333;
		border-bottom: 2px solid #333;
		transform: rotate(45deg);
		display: inline-block;
		margin-left: 8px;
		transition: transform .25s ease;
		flex: 0 0 auto;
	}

	/* 1차 열림시 화살표 회전(▲) */
	#gnb_all .gnb_al_li.active > .gnb_al_a .arrow.depth1 {transform: rotate(-135deg);}

	/* 2차 열림시 화살표 회전(▲) */
	#gnb_all .gnb_al_ul2 > li.active > a .arrow.depth2 { transform: rotate(-135deg); border-right: 2px solid var(--main); border-bottom: 2px solid var(--main);}
}




/***************** 메인 상단 sns icon *****************/
.sns_icon_list{width: calc(100% / 5);}
.sns_icon_box img {width: 100%;}

/***************** // 메인 상단 sns icon 끝 *****************/

/**************** 삭제 예정
.gnb_1dli_over2 .gnb_2dul {display:block;right:0}
.gnb_wrap .gnb_empty {padding:10px 0;width:100%;text-align:center;line-height:2em;color:#fff}
.gnb_wrap .gnb_empty a{color:#fff;text-decoration:underline}
.gnb_wrap .gnb_al_ul .gnb_empty, .gnb_wrap .gnb_al_ul .gnb_empty a{color:#555}

#gnb .gnb_menu_btn{background:#4158d1;color:#fff;width:50px;height:50px;border:0;vertical-align:top;font-size:18px}
#gnb .gnb_close_btn{background:#4158d1;color:#fff;width:50px;height:50px;border:0;vertical-align:top;font-size:18px;position:absolute;top:-50px;left:0}
#gnb .gnb_mnal{padding:0}

#gnb_all{display:none;position:absolute;width:100%;z-index:99;}
#gnb_all .gnb_al_ul:after {display:block;visibility:hidden;clear:both;content:""}
#gnb_all .gnb_al_ul{background:#fff;border:1px solid #4158d1;padding:20px;
-webkit-box-shadow: 0 2px 5px rgba(0,0,0,0.2);
-moz-box-shadow:  0 2px 5px rgba(0,0,0,0.2);
box-shadow: 0 2px 5px rgba(0,0,0,0.2);}
#gnb_all .gnb_al_li{background:#fff;float:left;min-width:20%;padding:5px }
#gnb_all .gnb_al_li .gnb_al_a{font-size:1.083em;padding:10px;display:block;position:relative;margin-bottom:10px;background: #eff1f9;border-bottom: 1px solid #dee2f1;font-weight: bold;color:#243071}
#gnb_all .gnb_al_li li {padding-left:10px;line-height:2em}
#gnb_all .gnb_al_li li i{color:#9ca6cc}
#gnb_all .gnb_al_li li a{color:#555}
****************/


/* 중간 레이아웃 */
#wrapper{}
#container_wr:after {display:block;visibility:hidden;clear:both;content:""}
#container_wr {z-index:5;margin:0 auto;height:100%;zoom:1}
#aside {float:right;width:305px;padding:0;background: #e7ebf3;height: 100%;border: 1px solid #adbfd2;margin:20px 0 20px 20px}

#container {z-index:4;position:relative;float:left;min-height:500px;height:auto !important; margin:0 0 20px  0;height:500px;font-size:1em;zoom:1}
#container:after {display:block;visibility:hidden;clear:both;content:""}
#container_title {font-size:1.333em;margin:0 auto;font-weight:bold;}
#container_title span{margin:0 auto 10px;display:block;line-height:30px;}
/*.latest_wr:after {display:block;visibility:hidden;clear:both;content:""}*/
.lt_wr{width:49%}
.lt_wr:nth-child(2n+1){clear:both}
.latest_wr:after {display:block;visibility:hidden;clear:both;content:""}
/* 하단 레이아웃 */
#ft {border-top:1px solid #d5d5d5;background:#fff;padding-bottom:30px;margin:0 auto;text-align:center}
#ft h1 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#ft_wr {margin:0 auto;position:relative;}
#ft_link{padding:15px 0;border-bottom:1px solid #eee}
#ft_link a{display:inline-block;padding:0 8px;line-height:1.083em;font-weight:bold}
#ft_catch{margin:20px 0 10px}
#ft_copy{color:#555;font-size:0.92em}
#top_btn {position:fixed;bottom:20px;right:20px;width:50px;height:50px;line-height:46px;border:2px solid #333;color:#333;text-align:center;font-size:15px;z-index:90;background:rgba(255,255,255,0.5)}
#top_btn:hover{border-color:#3059c7;background:#3059c7;color:#fff}

/* 게시물 선택복사 선택이동 */
#copymove {}
#copymove  .win_desc {text-align:center;display:block}
#copymove  .tbl_wrap{margin:20px }
#copymove  .win_btn{padding:0 20px 20px}
.copymove_current {float:right;background:#ff3061;padding:5px;color:#fff;border-radius:3px}
.copymove_currentbg {background:#f4f4f4}

/* 화면낭독기 사용자용 */
#hd_login_msg {position:absolute;top:0;left:0;font-size:0;line-height:0;overflow:hidden}
.msg_sound_only, .sound_only {display:inline-block !important;position:absolute;top:0;left:0;margin:0 !important;padding:0 !important;font-size:0;line-height:0;border:0 !important;overflow:hidden !important}
/* 본문 바로가기 */
#skip_to_container a {z-index:100000;position:absolute;top:0;left:0;width:1px;height:1px;font-size:0;line-height:0;overflow:hidden}
#skip_to_container a:focus, #skip_to_container a:active {width:100%;height:75px;background:#21272e;color:#fff;font-size:2em;font-weight:bold;text-align:center;text-decoration:none;line-height:3.3em}

/* ie6 이미지 너비 지정 */
.img_fix {width:100%;height:auto}

/* 캡챠 자동등록(입력)방지 기본 -pc */
#captcha {display:inline-block;position:relative}
#captcha legend {position:absolute;margin:0;padding:0;font-size:0;line-height:0;text-indent:-9999em;overflow:hidden;}
#captcha #captcha_img {height:40px;border:1px solid #898989;vertical-align:top;padding:0;margin:0}
#captcha #captcha_mp3 {margin:0;padding:0;width:40px;height:40px;border:0;background:transparent;vertical-align:middle;overflow:hidden;cursor:pointer;background:url('../../../img/captcha2.png') no-repeat;text-indent:-999px;border-radius:3px}
#captcha #captcha_reload {margin:0;padding:0;width:40px;height:40px;border:0;background:transparent;vertical-align:middle;overflow:hidden;cursor:pointer;background:url('../../../img/captcha2.png') no-repeat  0 -40px;text-indent:-999px;border-radius:3px}
#captcha #captcha_key {margin:0 0 0 3px;padding:0 5px;width:90px;height:40px;border:1px solid #ccc;background:#fff;font-size:1.333em;font-weight:bold;text-align:center;border-radius:3px;vertical-align:top}
#captcha #captcha_info {display:block;margin:5px 0 0;font-size:0.95em;letter-spacing:-0.1em}

/* 캡챠 자동등록(입력)방지 기본 - mobile */
#captcha.m_captcha audio {display:block;margin:0 0 5px;width:187px}
#captcha.m_captcha #captcha_img {width:160px;height:60px;border:1px solid #e9e9e9;margin-bottom:3px;margin-top:5px;display:block;}
#captcha.m_captcha #captcha_reload {position:static;margin:0;padding:0;width:40px;height:40px;border:0;background:transparent;vertical-align:middle;overflow:hidden;cursor:pointer;background:url('../../../img/captcha2.png') no-repeat  0 -40px;text-indent:-999px}
#captcha.m_captcha #captcha_reload span{display:none;}
#captcha.m_captcha #captcha_key {margin:0;padding:0 5px;width:115px;height:29px;border:1px solid #b8c9c2;background:#f7f7f7;font-size:1.333em;font-weight:bold;text-align:center;line-height:29px;margin-left:3px}
#captcha.m_captcha #captcha_info {display:block;margin:5px 0 0;font-size:0.95em;letter-spacing:-0.1em}
#captcha.m_captcha #captcha_mp3 {width:31px;height:31px;background:url('../../../img/captcha2.png') no-repeat 0 0 ;  vertical-align:top;overflow:hidden;cursor:pointer;text-indent:-9999px;border:none}

/* ckeditor 단축키 */
.cke_sc {margin:0 0 5px;text-align:right}
.btn_cke_sc{display:inline-block;padding:0 10px;height:23px;border:1px solid #ccc;background:#fafafa;color:#000;text-decoration:none;line-height:1.9em;vertical-align:middle;cursor:pointer}
.cke_sc_def {margin:0 0 5px;padding:10px;border:1px solid #ccc;background:#f7f7f7;text-align:center}
.cke_sc_def dl{margin:0 0 5px;text-align:left;zoom:1}
.cke_sc_def dl:after {display:block;visibility:hidden;clear:both;content:""}
.cke_sc_def dt, .cke_sc_def dd {float:left;margin:0;padding:5px 0;border-bottom:1px solid #e9e9e9}
.cke_sc_def dt {width:20%;font-weight:bold}
.cke_sc_def dd {width:30%}

/* ckeditor 태그 기본값 */
#bo_v_con ul{display: block;list-style-type: disc;margin-top: 1em;margin-bottom: 1em;margin-left: 0;margin-right: 0;padding-left: 40px;}
#bo_v_con ol{display: block;list-style-type: decimal;margin-top: 1em;margin-bottom: 1em;margin-left: 0;margin-right: 0;padding-left: 40px;}
#bo_v_con li{display: list-item;}

/* 버튼 */
a.btn,.btn{line-height:35px;height:35px;padding:0 10px;text-align:center;font-weight:bold;border:0;font-size:14px;
-webkit-transition: background-color 0.3s ease-out;
-moz-transition: background-color 0.3s ease-out;
-o-transition: background-color 0.3s ease-out;
transition: background-color 0.3s ease-out;}

a.btn01 {display:inline-block;padding:7px;border:1px solid #ccc;background:#fafafa;color:#000;text-decoration:none;vertical-align:middle}
a.btn01:focus, a.btn01:hover {text-decoration:none}
button.btn01 {display:inline-block;margin:0;padding:7px;border:1px solid #ccc;background:#fafafa;color:#000;text-decoration:none}
a.btn02 {display:inline-block;padding:7px;border:1px solid #3b3c3f;background:#4b545e;color:#fff;text-decoration:none;vertical-align:middle;}
a.btn02:focus, .btn02:hover {text-decoration:none}
button.btn02 {display:inline-block;margin:0;padding:7px;border:1px solid #3b3c3f;background:#4b545e;color:#fff;text-decoration:none}

.btn_confirm {text-align:right} /* 서식단계 진행 */

.btn_submit {border:0; background: var(--main); color:#fff; cursor:pointer; border-radius: 30px;}

a.btn_cancel {display:inline-block;background:#969696;color:#fff;text-decoration:none;vertical-align:middle;font-family: 'S-CoreDream-4Regular';}
button.btn_cancel {display:inline-block;background:#969696;color:#fff;text-decoration:none;vertical-align:middle;font-family: 'S-CoreDream-4Regular';}
.btn_cancel:hover {background:#aaa;color:#fff;font-family: 'S-CoreDream-4Regular';}
a.btn_frmline, button.btn_frmline {display:inline-block;padding:0 5px;height:40px;border:0;background:#3c3c3c;border-radius:5px;color:#fff;text-decoration:none;vertical-align:top;font-family: 'S-CoreDream-4Regular';} /* 우편번호검색버튼 등 */
a.btn_frmline {}
button.btn_frmline {font-size:1em}

/* 게시판용 버튼 */
a.btn_b01,.btn_b01 {display:inline-block; background:#4c4f6f; color:#fff;}
.btn_b01:hover, .btn_b01:hover {background:#54598c; color:#fff;}
a.btn_b02,.btn_b02 {display:inline-block;background:#4c4f6f;padding:0 10px;color:#fff;text-decoration:none;border:0;vertical-align:middle;}
a.btn_b02:hover, .btn_b02:hover {background:#54598c; color:#fff;font-family: 'S-CoreDream-4Regular';}
a.btn_b03, .btn_b03 {display:inline-block;background:#fff;border:1px solid #b9bdd3;color:#646982;text-decoration:none;vertical-align:middle;font-family: 'S-CoreDream-4Regular';}
a.btn_b03:hover, .btn_b03:hover {background:#ebedf6;color:#fff;font-family: 'S-CoreDream-4Regular';}
a.btn_b04, .btn_b04 {display:inline-block;background:#fff;border:1px solid #ccc;color:#707070;text-decoration:none;vertical-align:middle;font-family: 'S-CoreDream-4Regular';}
a.btn_b04:hover, .btn_b04:hover {color:#333;background:#f9f9f9;font-family: 'S-CoreDream-4Regular';}
a.btn_admin,.btn_admin {display:inline-block;background:#d13f4a;color:#fff;text-decoration:none;vertical-align:middle;font-family: 'S-CoreDream-4Regular';} /* 관리자 전용 버튼 */
.btn_admin:hover, a.btn_admin:hover {background:#ff3746;color:#fff;font-family: 'S-CoreDream-4Regular';}

.btn {
    display: inline-block;
    font-weight: 400;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 1px solid transparent;
    padding: .375rem .75rem;
    font-size: 14px !important;
    line-height: 1.5;
    border-radius: .25rem;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}


/*컬러*/
.color_1 {background:#169dd6}
.color_2 {background:#14d53d}
.color_3 {background:#3814ff}
.color_4 {background:#7520c5}

/* 기본테이블 */
.tbl_wrap table {width:100%;border-collapse:collapse;border-spacing: 0 5px;border-top:1px solid #ccc;} 
.tbl_wrap caption {padding:10px 0;font-weight:bold;text-align:left}
.tbl_head01 {margin:0 0 10px}
.tbl_head01 caption {padding:0;font-size:0;line-height:0;overflow:hidden}
.tbl_head01 thead th{border-top:2px solid #103e93;}
.tbl_head01 thead th {padding:10px 0;font-weight:normal;text-align:center;border-bottom:1px solid var(--table);background:#f3f4f5;height:40px}
.tbl_head01 thead th input {vertical-align:top} /* middle 로 하면 게시판 읽기에서 목록 사용시 체크박스 라인 깨짐 */
.tbl_head01 tfoot th, .tbl_head01 tfoot td {padding:10px 0;border-top:1px solid #c1d1d5;border-bottom:1px solid #c1d1d5;background:#d7e0e2;text-align:center}
.tbl_head01 tbody th {padding:8px 0;border-bottom:1px solid #e8e8e8}
.tbl_head01 td {color:#666;background:#fff;padding:10px 5px;border-top:1px solid var(--table);line-height:1.4em;height:60px;word-break:break-all}
.tbl_head01 tbody tr:hover td{background:#fafafa;}
.tbl_head01 a:hover {text-decoration:underline}
.tbl_head01 tbody tr:last-child{border-bottom:1px solid var(--table);}
.tbl_head01 thead tr th{border-right:1px solid var(--table); color:#181818;}
.tbl_head01 thead tr th:last-child{border-right:0;}
.tbl_head01 tbody tr td{border-right:1px solid var(--table);}
.tbl_head01 tbody tr td:last-child{border-right:0;}
.tbl_head01 tbody tr td .bo_tit a{padding-left:1em;}


.tbl_head02 {margin:0 0 10px}
.tbl_head02 caption {padding:0;font-size:0;line-height:0;overflow:hidden}
.tbl_head02 thead th {padding:5px 0;border-top:1px solid #d1dee2;border-bottom:1px solid #d1dee2;background:#e5ecef;color:#383838;font-size:0.95em;text-align:center;letter-spacing:-0.1em}
.tbl_head02 thead a {color:#383838}
.tbl_head02 thead th input {vertical-align:top} /* middle 로 하면 게시판 읽기에서 목록 사용시 체크박스 라인 깨짐 */
.tbl_head02 tfoot th, .tbl_head02 tfoot td {padding:10px 0;border-top:1px solid #c1d1d5;border-bottom:1px solid #c1d1d5;background:#d7e0e2;text-align:center}
.tbl_head02 tbody th {padding:5px 0;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9;background:#fff}
.tbl_head02 td {padding:5px 3px;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9;background:#fff;line-height:1.4em;word-break:break-all}
.tbl_head02 a {}

/* 폼 테이블 */
.tbl_frm01 {margin:0 0 20px}
.tbl_frm01 table {width:100%;border-collapse:collapse;border-spacing:0}
.tbl_frm01 th {width:70px;padding:7px 13px;border:1px solid #e9e9e9;border-left:0;background:#f5f8f9;text-align:left}
.tbl_frm01 td {padding:7px 10px;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9;background:transparent}
.wr_content textarea,.tbl_frm01 textarea,.form_01 textarea, .frm_input {border:1px solid #ccc;background:#fff;color:#000;vertical-align:middle; border-radius: 6px; padding:5px;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
}
.tbl_frm01 textarea {padding:2px 2px 3px}

.full_input{width:100%}
.half_input{width:49.5%}
.tbl_frm01 textarea, .write_div textarea {width:100%;height:100px}
.tbl_frm01 a {text-decoration:none}
.tbl_frm01 .frm_file {display:block;margin-bottom:5px}
.tbl_frm01 .frm_info {display:block;padding:0 0 5px;line-height:1.4em}

/*기본 리스트*/
.list_01 li{border:1px solid #dbdbdb;background:#fff;border-radius:3px;margin:3px 0;padding:10px 15px;list-style:none;position:relative;}
.list_01 li:after {display:block;visibility:hidden;clear:both;content:""}
.list_01 li:hover{background:#f9f9f9}
.list_01 li.empty_li{text-align:center;padding:20px 0;color:#666}
/*폼 리스트*/
.form_01 h2{margin:0 0 10px;font-size:1.167em}
.form_01 li{margin:10px 0}
.form_01 li:after {display:block;visibility:hidden;clear:both;content:""}
.form_01 li .right_input{float:right}
.form_01 textarea{height:100px;width:100%}
.form_01 .frm_label{display:inline-block;width:130px}

/* 자료 없는 목록 */
.empty_table {padding:50px 0 !important;text-align:center}
.empty_list {padding:20px 0 !important;color:#666;text-align:center}

/* 필수입력 */
.required, textarea.required {background-image:url('../img/require.png')  !important;background-repeat:no-repeat   !important;background-position:right top  !important;}

/* 테이블 항목별 정의 */
.td_board {width:80px;text-align:center}
.td_category {width:80px;text-align:center}
.td_chk {width:30px;text-align:center}
.td_date {width:60px;text-align:center}
.td_datetime {width:110px;text-align:center}
.td_group {width:80px;text-align:center}
.td_mb_id {width:100px;text-align:center}
.td_mng {width:80px;text-align:center}
.td_name {width:100px;text-align:left}
.td_nick {width:100px;text-align:center}
.td_num {width:50px;text-align:center}
.td_numbig {width:80px;text-align:center}
.td_stat {width:60px;text-align:center}

.txt_active {color:#5d910b}
.txt_done {color:#e8180c}
.txt_expired {color:#ccc}
.txt_rdy {color:#8abc2a}

/* 새창 기본 스타일 */
.new_win {position:relative;}
.new_win .tbl_wrap {margin:0 20px}
.new_win #win_title {font-size:1.25em;height:50px;line-height:30px;padding:10px 20px;background:#333;color:#fff;}
.new_win #win_title .sv {font-size:0.75em;line-height:1.2em}
.new_win .win_ul {border-right:1px solid #dfe6e7;}
.new_win .win_ul:after {display:block;visibility:hidden;clear:both;content:""}
.new_win .win_ul li{float:left;background:#fff;width:33.333%;text-align:center;border:1px solid #ccc;margin-left:-1px}
.new_win .win_ul li a{display:block;padding:10px 0}
.new_win .win_ul .selected{background:#fff;border-color:#4c4f6f;position:relative;z-index:5}
.new_win .win_ul .selected a{color:#4c4f6f;font-weight:bold}
.new_win .win_desc {margin:5px 0;font-size:0.92em;color:#3598db;}
.new_win .frm_info{font-size:0.92em;color:#3598db}
.new_win .win_total{text-align:right;margin:10px 0}
.new_win .win_total span{display:inline-block;line-height:30px;font-size:0.92em;color:#4e546f;background:#d4d4d4;padding:0 10px;border-radius:5px;}
.new_win .new_win_con{margin:20px;}
.new_win .new_win_con:after {display:block;visibility:hidden;clear:both;content:""}
.new_win .btn_confirm:after {display:block;visibility:hidden;clear:both;content:""}
.new_win .win_btn{text-align:right}
.new_win .btn_close {position:absolute;top:0;right:0;height:50px;width:50px;background:url(../img/close_btn.gif) no-repeat 50% 50%;border:0;text-indent:-999px;overflow:hidden;cursor:pointer}
.new_win .btn_submit {padding:0 20px;height:40px;font-weight:bold;font-size:1.083em;float:right}

/* 검색결과 색상 */
.sch_word {color:var(--main);}

/* 자바스크립트 alert 대안 */
#validation_check {margin:100px auto;width:500px}
#validation_check h1 {margin-bottom:20px;font-size:1.3em}
#validation_check p {margin-bottom:20px;padding:30px 20px;border:1px solid #e9e9e9;background:#fff}

/* 사이드뷰 */
.sv_wrap {position:relative;font-weight:normal}
.sv_wrap .sv {z-index:1000;display:none;margin:5px 0 0;font-size:0.92em;background:#333;
-webkit-box-shadow: 2px 2px 3px 0px rgba(0,0,0,0.2);
-moz-box-shadow: 2px 2px 3px 0px rgba(0,0,0,0.2);
box-shadow: 2px 2px 3px 0px rgba(0,0,0,0.2);}
.sv_wrap .sv:before{content: "";position: absolute;top: -6px;left: 15px;width: 0;height: 0;border-style: solid;border-width: 0 6px 6px 6px;border-color: transparent transparent #333 transparent;}
.sv_wrap .sv a {display:inline-block;margin:0;padding:0  10px;line-height:30px;width:100px;font-weight:normal;color:#bbb }
.sv_wrap .sv a:hover{background:#000;color:#fff}
.sv_member{color:#333}
.sv_on {display:block !important;position:absolute;top:23px;left:0px;width:auto;height:auto}
.sv_nojs .sv {display:block}

/* 페이징 */
.pg_wrap {clear:both;margin:30px 0 ;text-align:center}
.pg_wrap:after {display:block;visibility:hidden;clear:both;content:""} 
.pg {}
.pg_page, .pg_current {display:inline-block;vertical-align:middle;background:#f3f3f3;border:1px solid #bbbcc3}
.pg a:focus, .pg a:hover {text-decoration:none}
.pg_page {color:#555;font-size:1.083em;height:30px;line-height:28px;padding:0 5px;min-width:30px;text-decoration:none;border-radius:3px;}
.pg_page:hover{background-color:#ddd}
.pg_start {text-indent:-999px;overflow:hidden;background:url('../img/btn_first.gif') no-repeat 50% 50% #fff;padding:0;border:1px solid #bbb;}
.pg_prev {text-indent:-999px;overflow:hidden;background:url('../img/btn_prev.gif') no-repeat 50% 50% #fff;padding:0;border:1px solid #bbb}
.pg_end {text-indent:-999px;overflow:hidden;background:url('../img/btn_end.gif') no-repeat 50% 50% #fff;padding:0;border:1px solid #bbb}
.pg_next {text-indent:-999px;overflow:hidden;background:url('../img/btn_next.gif') no-repeat 50% 50% #fff;padding:0;border:1px solid #bbb}
.pg_start:hover,.pg_prev:hover,.pg_end:hover,.pg_next:hover{background-color:#fafafa}

.pg_current {display:inline-block;background:#4c4f6f;color:#fff;font-weight:bold;height:30px;line-height:30px;padding:0 10px;min-width:30px;border-radius:3px;
-webkit-box-shadow: inset 1px 1px 2px #222542;
-moz-box-shadow:  inset 1px 1px 2px #222542;
box-shadow: inset 1px 1px 2px #222542;
}

/* cheditor 이슈 */
.cheditor-popup-window *, .cheditor-popup-window :after, .cheditor-popup-window :before {
-webkit-box-sizing: content-box;
-moz-box-sizing: content-box;
box-sizing: content-box;
}

/* Mobile화면으로 */
#device_change {display:block;margin:0.3em;padding:0.5em 0;border:1px solid #eee;border-radius:2em;background:#fff;color:#000;font-size:2em;text-decoration:none;text-align:center}

/* 폰트 */
table th{background:#f9f9f9;color:#181818;font-family: 'Noto Sans KR', sans-serif;}
.profile_img img{width:20px;height:20px;}
#bo_cate ul li{color:#666;font-size:14px;font-family: 'Noto Sans KR', sans-serif;}
.list-group a{font-size:14.5px;font-family: 'Noto Sans KR', sans-serif;}



/******************* 메인 레이아웃 *******************/
#main_container{max-width:1400px; margin:50px auto 0 auto; padding:0 16px; width:100%;}
.main_section{display:grid; grid-template-columns: 1.23fr 1fr; gap:min(2.5vw,24px); align-items:stretch;}
.main_section > *{min-width:0;}

@media (min-width: 1025px) and (max-width:1499px){
	#main_container{padding:0 30px;}
}

@media (max-width:1024px){
	#main_container{display:block; max-width:100%; margin:24px auto 0; padding:0 20px;}
	.main_section{grid-template-columns:1fr; gap:16px; width:100%;}
}

/* ========== 팝업존 ========== */
.popupzone{position:relative; overflow:hidden; border-radius: 16px;}
.popupzone__viewport{position:relative; overflow:hidden; width:100%; height:auto; aspect-ratio:18/9;}
@media (min-width:1025px){
	.popupzone__viewport{aspect-ratio:auto; height:364px;}
}
.popupzone__list{display:flex; margin:0; padding:0; list-style:none; transition:transform .5s ease; will-change:transform; height:100%;}
.popupzone__slide{flex:0 0 100%; position:relative; height:100%;}
.popupzone__slide img{display:block; width:100%; height:100%; object-fit:cover;}

/* ===== Controls 공통 배치 ===== */
.popupzone__controls{position:absolute; top:20px; right:30px; display:flex; align-items:center; gap:8px; z-index:2;}
.popupzone__meta{margin-top:5px; background:rgba(255,255,255,.9); font-size:13px; line-height:1; padding:2px 8px; border-radius:999px; border:1px solid #e7ebf0; color:#111;}
.count-total{color:#9aa3ad;}
.count-total.is-active{color:#111;}

/* 원형 버튼 */
.pz-btn.pz-circle{width:20px; height:20px; min-width:20px; border-radius:999px; background:#fff; border:0; display:inline-flex; align-items:center; justify-content:center; padding:0; cursor:pointer;}
.pz-btn.pz-circle:focus{outline:3px solid #8EC5FF; outline-offset:2px}
.icon.arrow{position:relative; width:6px; height:6px}
.icon.arrow::before,.icon.arrow::after{content:""; position:absolute; inset:0; border:1px solid #000; border-left:none; border-top:none;}
.arrow-right{transform:rotate(-45deg); margin-left:1px}
.arrow-left{transform:rotate(135deg); margin-right:1px}

/* 재생/멈춤 – 텍스트 없이 div만 사용 */
.icon.media{position:relative; width:16px; height:16px; display:block}
.icon.media.play::before{content:""; position:absolute; left:6px; top:3px; width:0; height:0; border-top:5.5px solid transparent; border-bottom:5.5px solid transparent; border-left:7px solid #000;}
.icon.media.pause::before,.icon.media.pause::after{content:""; position:absolute; top:3px; width:2px; height:11px; border-radius:.5px; background:#000;}
.icon.media.pause::before{left:4px}
.icon.media.pause::after{right:4px}

/* ▶ (재생) */
.icon.media.media-play::before{content:""; position:absolute; left: 6px; top:3px; width:0; height:0; border-top:5.5px solid transparent; border-bottom:5.5px solid transparent; border-left: 7px solid #000; }

/* Ⅱ (일시정지) */
.icon.media.media-pause::before,
.icon.media.media-pause::after{content:""; position:absolute; top:3px; width: 2px; height:11px; border-radius:0.5px; border: 1px solid #000;}
.icon.media.media-pause::before{left:4px;}
.icon.media.media-pause::after{right:4px;}


/* 사용자 모션 선호 */
@media (prefers-reduced-motion: reduce){
	.popupzone__list{transition:none}
	.pz-btn.pz-circle{transition:none}
}

/* ========== 바로가기(오른쪽) ========== */
.main_quick{display:flex; align-items:center; background:#F4F7FE; padding:20px; height:100%; border-radius: 16px;}
.main_quick_box{display:grid; grid-template-columns:repeat(3,1fr); gap: 22px; width:100%;}

@media (max-width:767px){
	.main_quick_box{gap: 8px; grid-template-columns:repeat(3,1fr)}
	.main_quick{background:none; padding: 0;}
}

.main_quick_item{background:#E7EBF6; border-radius: 10px;}

.quicklinks_link{display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; min-height:110px; padding: 30px 4px; text-align:center; text-decoration:none;}
.quick_icon img{width: 42px; height: 42px;}
.quicklinks_text{color: #041B47; font-size:18px; font-weight: 400}

@media (max-width: 767px){
	.quicklinks_link {padding: 20px 4px;}
	.quicklinks_text {font-size: 16px;}
	.quick_icon img {width: 28px; height: 28px;}
}

/* ========================= 알림소식 + 홍보영상 ========================= */
.main_section2{display: flex; margin-top:60px; align-items:stretch; justify-content: space-between;}
.main-more, .notice_head {margin-bottom: 30px;}
.main-more {margin-bottom: 30px; display:flex; align-items: flex-end; gap: 10px;}
.main-more #main-heading, .main-section-heading #main-heading {margin-bottom: 0; white-space: nowrap }
.main-more a {display: block; color: #000; margin: 0; padding: 4px 0 4px 20px;}
#main-heading {font-size: 24px; font-weight: 700;}
.main-section-heading {display: flex; align-items: flex-end; gap: 12px; margin-bottom: 20px;}
.main-section-heading span {color: #686868; margin: 0; font-size: 16px; font-weight: 400;}

/* 탭 스타일 */
.notice_tab_menu{display:flex; gap:8px; margin:0 0 12px 0; padding:0 0 8px 2px; overflow-x:auto; overflow-y:hidden; white-space:nowrap; -webkit-overflow-scrolling: touch; scroll-snap-type: x proximity; scrollbar-width:thin; scrollbar-color:#d7dee9 transparent;}
.notice_tab_menu [role="tab"]{appearance:none; border:1px solid #005EB8; background: #fff; color: #005EB8; font-size: 16px; padding: 4px 12px; cursor:pointer; font-weight: 400; border-radius: 6px;}
.notice_tab_menu [role="tab"]:hover{background: #005EB8; color: #fff}
.notice_tab_menu [aria-selected="true"]{background: #005EB8; border-color: #005EB8; color: #fff; font-weight: 600;}
.notice_tabbar{ position: relative;}

/* 더보기 버튼(기존 원형 버튼 재사용) */
.notice_head .tab_more:focus{ outline:3px solid #8EC5FF; outline-offset:2px; }

@media(min-width: 768px) {
	#main-heading {font-size: 30px; font-weight: 700;}
}

@media (max-width:1024px){
	.notice_tab_menu li{flex:0 0 auto;}
	.notice_tab_menu [role="tab"]{scroll-snap-align:center;}
	.notice_tab_menu > li:last-of-type > button {border-right: 1px solid;}
	.notice_tab_menu::-webkit-scrollbar{height:6px;}
	.notice_tab_menu::-webkit-scrollbar-thumb{background:#d7dee9; border-radius:999px;}
	.main-more {justify-content: space-between; margin-bottom: 20px;}
}

@media (max-width:767px){
	.main-section-heading {display: block;}
	.notice_tab_menu {gap: 0;}
	.notice_tab_menu [role="tab"] {border: 1px solid #005EB8; border-right: 0; border-radius: 0;}
}

/* 알림·소식 박스 */
.main_notice{display:flex; flex-direction:column; height:100%; width: 46%; position: relative;}
.main_notice .lat_list_one{flex:1 1 auto; min-height:0;  padding-inline:0;}


/* 홍보영상 */
.main_video{display:flex; flex-direction:column; height:100%; width: 48%;}
.video_wrap{position:relative; width:100%; aspect-ratio: 16/9; background:#000; overflow:hidden; flex:1 1 auto; border: 1px solid;}
.video_wrap iframe{position:absolute; inset:0; width:100%; height:100%; border:0;}
.ytp-gradient-top, .ytp-chrome-top {display: none !important;}
.main_video .html5-video-player .ytp-impression-link {display: none !important;}

@media (min-width:1025px){
	.video_wrap{aspect-ratio:auto; height:370px;}
}

@media (max-width:1024px){
	.main_section2{ grid-template-columns:1fr; margin-top: 58px; }
	.video_wrap{aspect-ratio:16/9; height:auto;}
	.main_section2{display: block;}
	.main_notice, .main_video{width: 100%};
}


/* ========================= 현장 스케치 ========================= */
.main_section3{margin-top: 40px;}


/* ========================= 바로가기2 ========================= */
.main_section4{margin-top: 50px; background: #E4E8F4;}
.fullSize{width: 100vw; position: relative; left: 50%; margin-left: -50vw;}
.baro_wrap{max-width: 1400px; margin: 0 auto; padding: 50px 20px;}
.baro2_box{display:grid; grid-template-columns: repeat(6, 1fr); gap: 10px; margin-top: 16px;}
.baro2_list{
  display:flex;
  align-items:center;
  gap: 10px;
  min-height: 70px;
  padding: 16px;
  background:#fff;
  border:1px solid #e3e8f2;
  border-radius: 12px;
  text-decoration:none;
  transition: transform .15s ease, box-shadow .15s ease;
}

.baro2_list:hover{transform: translateY(-2px); box-shadow: 0 6px 16px rgba(16, 35, 71, .06);}
.baro2_icon{flex: 0 0 auto; width: 28px; height: 28px; display:flex; align-items:center; justify-content:center;}
.baro2_icon img{width: 100%; object-fit: contain; display:block;}
.baro2_list > span{
  flex: 1 1 auto;
  min-width: 0;
  color:#0b2344;
  font-weight: 400;
  line-height:1.3;
  /* white-space: nowrap; */
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 16px;
}

/* 화살표 */
.baro2_arrow{position: relative; display: none; flex: 0 0 28px; width: 28px; height: 28px;}
.baro2_arrow::before,
.baro2_arrow::after{
	content:"";
	position:absolute;
	top:50%; 
	width: 8px;
	height: 8px;
	border: 1px solid #2186DE;
	border-left:0; border-top:0;
	transform: translate(-50%, -50%) rotate(-45deg);
}
.baro2_arrow::before{left: 32%;}
.baro2_arrow::after{left: 60%;}

@media (max-width: 1300px){
	.baro2_list > span{font-size: 13px;}
}

@media (max-width: 1200px){
  .baro2_box{ grid-template-columns: repeat(3, 1fr); gap: 12px; }
  .baro2_list{ min-height: 88px; padding: 14px 20px; }
  .baro2_icon{ width: 36px; height: 36px; }
  .baro2_arrow{display: block; width:26px; height:26px;}
}

@media (min-width: 960px) and (max-width: 1200px){
	.baro2_list > span{font-size: 16px;}
}

@media (max-width: 959px){
	.baro_wrap {padding: 50px 30px;}
	.baro2_box{ grid-template-columns: repeat(2, 1fr); gap: 10px; }
	.baro2_list{ min-height: 64px; padding: 12px 20px; border-radius:10px; }
	.baro2_list > span{ 
		font-size:16px; 
		display:-webkit-box;
		-webkit-line-clamp:2; 
		-webkit-box-orient:vertical; 
		overflow:hidden;
	}
	.baro2_icon{width: 24px; height: 24px;}
}

@media (max-width: 599px){
  .baro2_box{ grid-template-columns: 1fr; }
  .baro2_list > span{font-size:16px;}
}


/* ========================= 협력기관 ========================= */
.family_wrap{max-width: 1400px;margin: 0 auto 30px auto;padding-bottom: 20px;border-bottom: 1px solid #7d7d7d;display:grid;grid-template-columns: auto 1fr;gap: 12px;align-items:center;}
.main_section5 .family_site_console,
.main_section5 .family_site_box{box-sizing: border-box;width: 100%;}
.main_section5 h2 {color: #7d7d7d; font-size: 20px !important;}
.family_site_console{display:flex; align-items:center; gap: 4px; padding: 0 16px; min-height: 40px;}

/* 버튼 공통 */
.fs-btn{
  width: 26px;
  height: 26px;
  border-radius: 999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer; position:relative;
  transition: box-shadow .15s ease, transform .15s ease;
}

.fs-btn:hover{ box-shadow: 0 2px 8px rgba(20,40,80,.12); transform: translateY(-1px);}

/* 비활성화 */
.fs-btn.is-disabled{ opacity:.35; cursor:default; pointer-events:none; }

/* 단일 화살표( > ) */
.icon-chevron{ position:relative; width: 10px; height:10px; }
.icon-chevron::before{
  content:""; position:absolute; top:50%; left:50%;
  width: 10px; height:10px;
  border: 1px solid #141414; border-left:0; border-top:0;
  transform: translate(-50%,-50%) rotate(-45deg);
}
.fs-prev .icon-chevron::before{ transform: translate(-50%,-50%) rotate(135deg); }

/* 재생/일시정지 (div 도형) */
.icon-media{ position:relative; width:14px; height:14px; }
.fs-play .icon-media::before{
  content:""; position:absolute; left:4px; top:2px;
  width:0; height:0;
  border-top:5px solid transparent;
  border-bottom:5px solid transparent;
  border-left:8px solid #141414;
}

.family_site_console .fs-prev:focus-visible,
.family_site_console .fs-toggle:focus-visible,
.family_site_console .fs-next:focus-visible,
.family_site_console .fs-prev:focus-visible{
	outline: 3px dashed #ff6600;
	outline-offset: 3px;
	border-radius: 6px;
	background-color: #fff8f0;
}

.fs-pause .icon-media::before, .fs-pause .icon-media::after{content:""; position:absolute; top:2px; width: 2px; height: 12px; background: #141414; border-radius:.5px;}
.fs-pause .icon-media::before{ left:3px; }
.fs-pause .icon-media::after{  right:3px; }

.family_site_box{
	--gap: 40px;
	display:flex;
	gap: 50px;
	padding: 0;
	overflow-x: hidden;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
}

.family_site_box::-webkit-scrollbar{height:8px;}
.family_site_box::-webkit-scrollbar-thumb{ background:#e1e7f1; border-radius:999px; }
.family_site_box{ scrollbar-width:thin; scrollbar-color:#e1e7f1 transparent; }

.family_site_list{
	box-sizing: border-box;
	/* font-size: 18px; */
	color: #7d7d7d;
	/* flex: 0 0 calc((100% - (var(--gap) * 7)) / 5); */
	scroll-snap-align: start;
	display:flex;
	align-items:center;
	justify-content:center;
	transition: box-shadow .15s ease, transform .15s ease, border-color .15s;
    text-align: center;
	/* word-break: keep-all; */
}

.family_site_list img{
	box-sizing:border-box;
	height :52px;
	width:auto;
	padding:12px 52px;
	object-fit: contain;
	display:block;
	border:1px solid #ccc;
}

@media (min-width: 681px) {
	.family_wrap .main-section-heading {margin-bottom: 0;}
	.family_site_box{overflow-x: auto;}
}

@media (min-width: 768px) {
	.family_wrap .main-section-heading {margin-bottom: 0;}
}

@media (max-width: 1024px){
	.main_section5{/* margin-top: 20px; */}
	.family_site_console{ order:1; padding: 0 16px; }
	.family_site_box{order:2; --gap: 44px; gap: var(--gap);}
	.family_site_list{flex: 0 0 auto; height: 68px;}
	.family_site_list img{width: 150px; height: 40px; padding: 8px 12px;}
}

@media (max-width: 767px){
	.family_site_list img{width: 120px;}
}

@media (max-width: 560px){
	.family_site_box{ --gap: 10px; gap: var(--gap);}
	.family_site_list{flex-basis: calc((100% - var(--gap)) / 2); height: 64px;}
	.family_site_list img{ height: 32px; }
	.fs-btn{ width:28px; height:28px; }
}

@media (prefers-reduced-motion: reduce){
	.fs-btn, .family_site_list{transition: none;}
}


/* ===== 모바일 전환: 배너 슬라이드 X, 텍스트 박스 그리드 ===== */
.family_wrap{display: flex;/* align-items: center; *//* justify-content: space-between; */gap: 60px;align-items:center;}
/* .family_wrap{display:grid; grid-template-columns: auto 1fr; gap: 40px; align-items:center;} */

@media (max-width: 680px){
	/* 협력기관 영역 전체 라인 */
	.family_wrap {display: grid;grid-template-columns: 1fr;gap: 0;/* padding: 20px 30px; */}
	.family_site_list {min-height: 64px;padding: 14px;/* background:#fff; */display:flex;align-items:center;justify-content:center;}
	.family_site_console{ display:none; }
	.family_site_box{display:grid; grid-template-columns: repeat(2, 1fr); gap: 0; overflow: visible; scroll-snap-type: none;}
	.family_site_list img{display:none;}
	.family_site_list::after{content: attr(data-label); display:block; color:#0b2344; font-size: 14px; line-height:1.35; text-align: center;}
}

@media (min-width: 361px) and (max-width: 680px){
	.family_site_list {min-height: 64px;padding: 14px;border-bottom: 1px solid #7d7d7d;border-right: 1px solid #7d7d7d;}
	.family_site_list:nth-child(1),	.family_site_list:nth-child(2){border-top: 1px solid #7d7d7d;}
	.family_site_list:nth-child(odd){border-left: 1px solid #7d7d7d;}
}

/* 아주 작은 화면은 1열 */
@media (max-width: 360px){
	.family_site_box{ grid-template-columns: 1fr; }
	.family_site_list {border: 1px solid #e6ebf4; border-bottom: 0;}
	.family_site_list:last-child {border-bottom: 1px solid #e6ebf4;}
}


/* 풋터 */
.footer_wrap{background: #222222; padding: 60px 20px;}
.footer_box{display: flex; justify-content: space-between; align-items: center; max-width: 1400px; margin: 0 auto;}
.footer_logo{max-width: 300px;}
.footer_logo img {width: 100%;}
.footer_info {color: #fff; margin-top: 24px; margin-bottom: 0;}
.footer_info span {font-size: 18px;}
.copyright {color: #fff; margin-top: 4px; font-size: 14px;}

.footer_info .info_item{position:relative; white-space:nowrap; font-size:18px; margin: 0 8px;}
.footer_info .info_item:nth-child(1){margin-left: 0;}
.footer_info .info_item:nth-child(3){margin-right: 0;}
.footer_info .info_item a{color:#fff; text-decoration:none;}
.footer_info .info_item a:focus-visible{outline:2px solid #8EC5FF; outline-offset:2px; background: none;}
.footer_info .info_item:not(:last-child)::before{
	content:"";
	position:absolute;
	right: -20px;
	top:50%;
	margin-right: 10px;
	transform:translateY(-50%);
	width:1px; height:14px;
	background:rgba(255,255,255,.5);
}

/* 로그인 */
.footer-login{width: 100px; display: block; text-align: center; color: #222222; font-size: 12px; padding: 4px 0; margin-top:4px;}
.footer-login:hover{color: #adadad; border: 1px solid #adadad;}

/* 인증마크 */
.web_mark {width: 130px;}
.web_mark img {width: 100%;}

@media (max-width: 1024px){
	.footer_box{display: block;}
}

@media (min-width:768px){
	.footer_snsicon {display: none;}
}

@media (max-width:767px){
	.footer_box{flex-direction:column; gap:16px;}
	.footer_info{flex-direction:column; align-items:flex-start; gap:6px;}
	.footer_info{flex-direction:column; align-items:flex-start; gap:6px;}
	.footer_info .info_item{display: block; margin: 0; font-size: 14px;}
	.footer_info .info_item::before{display:none;} /* 모바일에선 구분자 숨김 */
	.footer_logo{max-width: 300px;}
	.footer_snsicon {display: block; margin-bottom: 20px;}
}