/* Reset */
* {margin: 0; padding: 0; box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; word-break: keep-all;}
html, body {max-width: 100%; min-height: 100%; font-size: 16px;}
html {overflow-x: hidden; -webkit-text-size-adjust: none; scroll-behavior: smooth;}
body {-webkit-print-color-adjust: exact; background: var(--clr-white); font-family: 'Pretendard'; font-style: normal; font-weight: 300; color: var(--black-color); letter-spacing: -0.5px; -ms-overflow-style: none; scroll-behavior: smooth;}
h1, h2, h3, h4, h5, h6 {font-family: 'Pretendard';}
ul, li, dl,dt,dd {margin: 0; padding: 0; list-style: none;}
a {color: var(--color-666); text-decoration: none;}
img {border: 0; font-size: 0; max-width: 100%;}
table, tr, td {border-collapse: collapse;}
p {word-break: keep-all;}
textarea, select {font-family: 'Pretendard'; font-size: 1em;}
select {min-width: 120px; height: 50px; padding: 10px 40px 10px 20px; border-radius: 4px; border: 1px solid var(--clr-gray); color: var(--clr-gray5); background: url(../img/arrow-bottom_g.png) no-repeat center right 20px / 12px var(--clr-white); -webkit-appearance: none; -moz-appearance: none; appearance: none; outline: none; font-size: 16px; font-weight: 400;}
select::-ms-expand {display: none;}
input, button {margin: 0; padding: 0; font-family: 'Pretendard'; font-size: 1em;}
input[type="submit"], button {cursor: pointer;}
input {height: 50px; padding: 10px 15px; border: 1px solid var(--clr-gray); border-radius: 0;}
input[type="text"] {min-width: 200px; font-size: 16px; font-weight: 400; color: var(--clr-gray4);}
input::placeholder {font-size: 16px; font-weight: 400; color: var(--clr-gray5);}
textarea {padding: 10px 15px; border: 1px solid var(--clr-gray);}
fieldset {margin: 0; padding: 0; border: none;}
caption, legend {position: relative; font-size: 0; line-height: 0; height: 0;}

/* Color */
:root {
  --red-color: #CC2733;
  --navy-color: #1F3A74;
  --sub-color: #F1F3FE;
  --black-color: var(--clr-black2);
  --white-color: var(--clr-white);

  --color-82: #828282;

  --color-333: var(--clr-black2);
  --color-444: #444444;
  --color-555: #555555;
  --color-666: #666666;
  --color-888: #888888;
  --color-999: #999999;
  --color-bbb: #BBBBBB;
  --color-ccc: #CCCCCC;
  --color-ddd: #DDDDDD;
  --color-eee: #EEEEEE;

  --color-fa: #FAFAFA;
  --color-f0: #F0F0F0;
  --color-f1: #F1F1F1;
  --color-f5: #F5F5F5;
  --color-f7: #F7F7F7;
  --color-f9: #F9F9F9;
  --color-e5: #E5E5E5;
  --color-d9: #D9D9D9;
  --color-b6: #B6B6B6;
}

/* Sound only */
.sound-only{display: inline-block !important; position: absolute; top: 0; left: 0; width: 0; height: 0; margin: 0 !important; padding: 0 !important; font-size: 0; line-height: 0; border: 0 !important; overflow: hidden !important;}

/* Input : radio */
.radio-item {display: inline-block; vertical-align: top;}
.radio-wrap input[type=radio] {display: none;}
.radio-wrap input[type=radio] + label {display: inline-block; position: relative; padding-left: 36px; font-size: 16px; font-weight: 400; color: var(--color-333); line-height: 1.6; cursor: pointer;}
.radio-wrap input[type=radio]+ label:before {content: ""; display: inline-block; position: absolute; left: 0; top: 0; width: 22px; height: 22px; border: 2px solid var(--color-ddd); border-radius: 50%; z-index: 1;}
.radio-wrap input[type=radio]:checked + label:before {border-color: var(--red-color); background: var(--red-color) url('../img/ico_check.png') no-repeat center center/contain;}

/* Input : checkbox */
.check-item {display: inline-block; vertical-align: top;}
.check-wrap input[type=checkbox] {display: none;}
.check-wrap input[type=checkbox] + label {display: inline-block; position: relative; padding-left: 36px; font-size: 16px; font-weight: 400; color: var(--color-333); line-height: 1.6; cursor: pointer;}
.check-wrap input[type=checkbox]+ label:before {content: ""; display: inline-block; position: absolute; left: 0; top: 0; width: 22px; height: 22px; border: 2px solid var(--color-ddd); border-radius: 50%; z-index: 1;}
.check-wrap input[type=checkbox]:checked + label:before {border-color: var(--red-color); background: var(--red-color) url('../img/ico_check.png') no-repeat center center/contain;}

input[type="radio"]:focus-visible + label::before {outline: 2px solid var(--black-color);}

/* Input : default */
.d-input {border: 1px solid var(--clr-gray); font-size: 15px; font-weight: 500; color: var(--black-color);}
.d-input::placeholder {color: var(--color-82);}
.d-input:read-only {background-color: var(--color-f0);}

.d-select {height: 41px; border: 1px solid var(--clr-gray); font-size: 15px; font-weight: 500; color: var(--black-color);}

.d-textarea {width: 100%; min-height: 200px; border: 1px solid var(--clr-gray); font-size: 16px; font-weight: 400; color: var(--clr-black2); resize: none; border-radius: 4px;}

/* Button */
.btn {display: flex; align-items: center; justify-content: center; width: 93px; height: 50px; line-height: 50px; border-radius: 4px; font-weight: 400; font-size: 16px; color: var(--clr-white); text-align: center; border: 1px solid transparent; transition: .3s;}
.btn.type01 {background-color: var(--clr-main);}
.btn.type02 {background-color: var(--clr-gray4);}
.btn.type01:hover {background-color: var(--clr-white); color: var(--clr-main); border-color: var(--clr-main);}
.btn.type02:hover {background-color: var(--clr-white); color: var(--clr-gray4); border-color: var(--clr-gray4);}
.btn-gray {display: inline-block; min-width: 140px; height: 50px; line-height: 50px; padding: 0 25px; border: none; background: #898989; border-radius: 4px; font-size: 16px; font-weight: 600; color: var(--clr-white); text-align: center;}
.btn-gray i.back {display: inline-block; vertical-align: middle; width: 12px; height: 12px; margin: 0 5px 0 0; background: url("../img/icon-back.png") no-repeat center/contain;}
.btn-color {display: inline-block; min-width: 140px; height: 50px; line-height: 50px; padding: 0 25px; border: none; background: #007081; border-radius: 4px; font-size: 16px; font-weight: 600; color: var(--clr-white); text-align: center;}
.btn-color i.file {display: inline-block; vertical-align: middle; width: 16px; height: 16px; margin: -1px 0 0 5px; background: url("../img/icon-file_w.png") no-repeat center/contain;}
.btn-color i.ok {display: inline-block; vertical-align: middle; width: 12px; height: 12px; margin: -2px 0 0 5px; background: url("../img/icon-check.png") no-repeat center/contain;}
/***************************************************************/
/**************************** 반응형 ****************************/
/***************************************************************/

@media screen and (max-width: 1800px) {
  /* Contents Line */
  /* .wrapper {width: 100%; padding-left: 34px; padding-right: 34px;} */
}

@media screen and (max-width: 1440px) {
  /* Contents Line */
  /* .wrapper {padding-left: 14px; padding-right: 14px;} */
  .wrapper2 {width: 100%; padding-left: 34px; padding-right: 34px;}
}

@media screen and (max-width: 1024px) {
  /* Contents Line */
  /* .wrapper {padding-left: 9px; padding-right: 9px;} */
  .wrapper2 {padding-left: 25px; padding-right: 25px;}

  select {height: 45px; padding: 10px; font-size: 14px;}
  input {height: 45px; padding: 10px;}
  input[type="text"] {min-width: 150px; font-size: 14px;}
  input::placeholder {font-size: 14px;}

  /* Pop Up */
  .pop-inner {max-width: calc(100% - 50px); padding: 30px;}

  /* Button */
  .btn-color {padding: 0 20px; font-size: 15px; height: 44px; line-height: 44px;}
  .btn-gray {padding: 0 20px; font-size: 15px; height: 44px; line-height: 44px;}
}

@media screen and (max-width: 768px) {
  /* Contents Line */
  /* .wrapper {padding-left: 0; padding-right: 0;} */
  .wrapper2 {padding-left: 0; padding-right: 0;}

  /* Input : radio */
  .radio-wrap input[type=radio]+ label:before {width: 18px; height: 18px;}
  .radio-wrap input[type=radio] + label {padding-left: 28px; font-size: 14px; line-height: 1.5;}
  
  /* Input : checkbox */
  .check-wrap input[type=checkbox]+ label:before {width: 18px; height: 18px;}
  .check-wrap input[type=checkbox] + label {padding-left: 28px; font-size: 14px; line-height: 1.5;}

  /* Input : default */
  .d-select {font-size: 14px;}

  /* Button */
  .btn {width: 120px; height: 45px; line-height: 45px; border-radius: 7px; font-size: 14px;}
  .btn-color {font-size: 14px; padding: 0 15px; height: 40px; line-height: 40px;}
  .btn-gray {font-size: 14px; padding: 0 15px; height: 40px; line-height: 40px;}
  
  /* Pop Up */
  .pop-inner {max-width: calc(100% - 32px); padding: 20px; border-radius: 15px;}
  .pop-head {padding-bottom: 10px; margin-bottom: 15px;}
  .pop-foot {padding-top: 13px; margin-top: 13px;}
  .pop-close-btn {width: 120px; line-height: 45px; border-radius: 7px; font-size: 14px;}

  /* Main Popup */
  .m-popup-button {padding: 5px; font-size: 14px;}
  .m-popup-pagination.swiper-pagination {bottom: 40px !important;}
}

@media screen and (max-width: 480px) {
  /* Contents Line */
  select {height: 40px;}
  input {height: 40px;}
  input[type="text"] {font-size: 13px;}
  input::placeholder {font-size: 13px;}

  /* Button */
  .btn {width: 100px;}

  /* Pop Up */
  .pop-inner {padding: 15px;}
  .pop-body {max-height: calc(100vh - 280px);}
  .pop-close-btn {width: 80px; line-height: 35px;}
}

/* 공통 > 페이징 */
.board-pagination {margin-top: 50px; text-align: center;}
.board-pagination-list {font-size: 0;}
.board-pagination-list > li {display: inline-block; vertical-align: middle; font-size: 0;}
.board-pagination-list > li > * {display: block; width: 42px; height: 42px; line-height: 42px; border-radius: 4px; text-align: center; font-size: 16px; font-weight: 400; color: var(--clr-gray4); background: var(--clr-white);}
.board-pagination-list > li.active > * {font-weight: 400; color: var(--clr-white); background: var(--clr-main);}
.board-pagination-list > .num ~ .num {margin-left: 4px;}

.board-pagination-list > li.first {margin-right: 9px;}
.board-pagination-list > li.prev {margin-right: 11px;}
.board-pagination-list > li.next {margin-left: 11px;}
.board-pagination-list > li.last {margin-left: 9px;}
.board-pagination-list > li.i > * {background-repeat: no-repeat; background-position: center center; width: 40px; height: 40px; border-radius: 999px; background-color: var(--clr-white); border: 1px solid var(--clr-gray);}
.board-pagination-list > li.first > * {background-image: url('../img/icon-first.png'); background-size: 14px;}
.board-pagination-list > li.prev > * {background-image: url('../img/icon-prev_s.png'); background-size: 8px;}
.board-pagination-list > li.next > * {background-image: url('../img/icon-next_s.png'); background-size: 8px;}
.board-pagination-list > li.last > * {background-image: url('../img/icon-last.png'); background-size: 14px;}

/* 목록 > 상단(탭 메뉴) */
/* .board-taps {display: flex; margin-bottom: 40px; border-top: 1px solid var(--clr-gray);}
.board-taps > * {cursor: pointer; text-align: center; flex: 1; border-bottom: 1px solid var(--clr-gray); border-top: 2px solid transparent; border-left: none; border-right: none; padding: 20px; background-color: var(--clr-white); font-size: 22px; font-weight: 500; color: var(--clr-gray5);}
.board-taps > *.active {border-top: 2px solid var(--clr-main); color: var(--clr-main);}
.board-taps > *:hover {border-top: 2px solid var(--clr-main); color: var(--clr-main);} */

/* 목록 > 상단(카테고리, 검색) */
.board-util {display: flex; align-items: flex-end; justify-content: center; margin-bottom: 12px; background-color: #F5F5F5; padding: 25px; border-radius: 10px;}
.board-category {margin-right: 10px;}
.board-category select {min-width: 180px;}
.board-category-list {display: flex; gap: 10px;}
.board-category-button {padding: 14px 25px; font-size: 16px; font-weight: 400; color: var(--clr-black2); text-align: center; border: 1px solid var(--clr-gray);}
.board-category-button.active {background: var(--navy-color); border: 1px solid var(--navy-color); color: var(--clr-white);}
.board-search {}
.board-search-wrap {}
.board-search-inner {font-size: 0;}
.board-search-item {display: inline-block; vertical-align: middle;}
.board-search-item:not(:last-child) {margin-right: 10px;}
.board-search-select {min-width: 160px;}
.board-search-input {display: inline-block; vertical-align: middle; width: 440px; border-radius: 3px 0 0 3px;}
.board-search-button {display: inline-block; vertical-align: middle; width: 50px; height: 50px; background: var(--clr-main) url('../img/icon-search_w.png') no-repeat center center / 18px; border: none; font-size: 0; border-radius: 0  3px 3px 0;}

.board-info {margin-bottom: 8px; margin-top: 15px;}  
.board-info-text {font-size: 16px; font-weight: 400; color: var(--clr-gray5);}
.board-info-text b {color: var(--clr-main);}

/* 목록 > 하단(버튼) */
.board-btns {position: absolute; right: 0; bottom: 30px;}

/* 목록 > 텍스트 게시판 */
.board-list {}
.board-list-tbl {table-layout: fixed; width: 100%; border-top: 1px solid var(--clr-black2);}
.board-list-tbl thead {border-bottom: 1px solid var(--clr-gray); background-color: var(--clr-main-light);}
.board-list-tbl th {border-right: 1px solid var(--clr-gray); position: relative; height: 60px; padding: 10px; font-size: 18px; font-weight: 700; color: var(--color-333);}
.board-list-tbl th:last-child {border-right: none}
.board-list-tbl tbody tr {position: relative; border-bottom: 1px solid var(--clr-gray);}
.board-list-tbl tbody tr {position: relative; border-bottom: 1px solid var(--clr-gray);}
/* .board-list-tbl tbody tr:hover {border-left: 2px solid var(--navy-color);}  */
.board-list-tbl td {border-right: 1px solid var(--clr-gray); position: relative; height: 60px; padding: 10px; font-size: 16px; font-weight: 400; color: var(--clr-black2); text-align: center;}
.board-list-tbl td:last-child {border-right: none}
.board-list-tbl tr.notice {background: #F5F5F5;}
.board-list-tbl tr.notice .notice-icon {display: block; height: 16px; margin-bottom: 1px; background: url('../img/icon-megaphone.png') no-repeat center center/contain; font-size: 0;}
.board-list-tbl td.period {font-size: 15px;}

.board-list-tbl td.title {display: flex; align-items: center; padding-left: 30px; padding-right: 30px; text-align: left;}
.board-list-tbl td.title a {color: var(--clr-black2); position: relative; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.board-list-tbl .category {flex: none; margin-right: 13px; padding: 4px 12px 3px; font-size: 16px; font-weight: 400; color: var(--navy-color); border: 1px solid var(--navy-color); border-radius: 15px; transition: 0.1s;}
.board-list-tbl .new {display: inline-block; flex: none; margin-right: 7px; width: 18px; height: 18px; margin-bottom: 1px; background: url('../img/icon-new.png') no-repeat center center/contain; font-size: 0;}
.board-list-tbl .file {flex: none; width: 16px; height: 16px; margin-left: 7px; margin-bottom: 1px; background: url('../img/icon-file.png') no-repeat center center/contain; font-size: 0;}
.board-list-tbl td.title a:hover {text-decoration: underline;}
.board-list-tbl td.title .category:hover {background: var(--navy-color); color: var(--clr-white); text-decoration: none;}
/* .board-list-tbl th:not(:last-child):after, .board-list-tbl td:not(:last-child)::after {content:""; position: absolute; right: 0; top: 50%; width: 1px; height: 12px; margin-top: -6px; background: var(--color-b6);} */
span.state {padding: 4px 11px; border-radius: 4px; font-size: 14px; color: var(--clr-white);}
span.state.planned {background-color: var(--clr-status-ready);}
span.state.ongoing {background-color: var(--clr-status-ing);}
span.state.complete {background-color: var(--clr-status-end);}
/* .board-list-tbl td.state::before {content: ''; position: absolute; z-index: -1; width: 48px; height: 26px;border-radius: 4px; top: 50%; left: 50%; transform: translate(-50%, -50%);} */

/* 20251216 주석처리 (대신 commom.css의 스타일을 적용) */
/* .board-list-tbl .status {display: inline-block; width: 80px; height: 30px; line-height: 30px; font-size: 16px; font-weight: 400; text-align: center; background: var(--navy-color); color: var(--clr-white); border-radius: 15px;} */
/* .board-list-tbl .status.end {background: var(--clr-black2); color: var(--clr-white);} */
/* .board-list-tbl .status.ready {background: var(--clr-gray); color: var(--clr-black2);} */

/* 목록 > 갤러리 게시판 */
.gallery-wrap {padding-top: 25px; border-top: 1px solid var(--black-color);}
.gallery-list {margin: -30px -16.5px; font-size: 0;}
.gallery-item {display: inline-block; vertical-align: top; width: 25%; padding: 30px 16.5px;}
.gallery-inner {}
.gallery-thumb {display: block; position: relative; width: 100%; height: 0; padding-bottom: 65.5%; overflow: hidden;}
.gallery-thumb img {position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); width: 100%; object-fit: cover; transition: 0.2s;}
.gallery-content {padding-top: 25px; text-align: right;}
.gallery-title {display: block; font-size: 18px; font-weight: 400; color: var(--black-color); text-align: left; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.gallery-date {display: inline-block; position: relative; padding-left: 24px; margin-top: 10px; font-size: 16px; font-weight: 400; color: var(--clr-black2); text-align: right;}
.gallery-date::before {content: ""; position: absolute; left: 0; top: 3px; width: 16px; height: 16px; background: url('../img/icon-clock.png') no-repeat center center/contain;}
.gallery-thumb:hover img {transform: translate(-50%,-50%) scale(1.1);}
.gallery-thumb:hover + .gallery-content .gallery-title,
.gallery-title:hover {color: var(--navy-color); font-weight: 500; text-decoration: underline;}

/* 목록 > FAQ 게시판 */
#faq_list .board-category {width: 100%;}
#faq_list .board-category-list {justify-content: center; flex-wrap: wrap;}

.faq-wrap {}
.faq-list {border-top: 1px solid var(--black-color);}
.faq-item {font-size: 0; border-bottom: 1px solid var(--clr-gray);}
.faq-question {display: flex; padding: 15px 0; cursor: pointer;}
.faq-icon {position: relative; width: 150px; font-size: 16px; font-weight: 500; color: var(--clr-black2); text-align: center;}
.faq-icon::after {content:""; position: absolute; right: 0; top: 4px; width: 1px; height: 12px; background: var(--color-b6);}
.faq-question .faq-icon {margin-top: 5px;}
.faq-text {display: flex; align-items: flex-start; width: calc(100% - 150px); padding: 0 40px;}
.faq-question-text {position: relative; padding-right: 135px;}
.faq-question-text::after {content:""; position: absolute; right: 103px; top: 10px; width: 11px; height: 11px; background: url('../img/ico_plus.png') no-repeat center center/contain;}
.faq-question-category {display: inline; margin-right: 13px; padding: 4px 12px; font-size: 16px; font-weight: 400; color: var(--navy-color); border: 1px solid var(--navy-color); border-radius: 15px; transition: 0.1s;}
.faq-question-category:hover {background: var(--navy-color); color: var(--clr-white);}
.faq-question-name {padding-top: 2px; font-size: 16px; font-weight: 400; color: var(--color-333); line-height: 1.5;}
.faq-answer {display: none; padding: 35px 0 30px; border-top: 1px solid var(--clr-gray); background: var(--color-f5);}
.faq-answer-inner {display: flex; }
.faq-answer-text {}
.faq-answer-content {font-size: 16px; font-weight: 400; color: var(--black-color); line-height: 1.45;}

.faq-item.active .faq-question {position: relative;}
.faq-item.active .faq-question::before {content:""; position: absolute; left: 0; top: 0; width: 2px; height: 100%; background: var(--navy-color);}
.faq-item.active .faq-question-text::after {background-image: url('../img/ico_minus.png');}

/* 상세 > 공통 */
.board-view {}
.board-view-title {position: relative; padding: 25px 30px 10px; font-size: 20px; font-weight: 600; color: var(--black-color); line-height: 1.5; border-top: 1px solid var(--black-color);}
.board-view-title span {display: inline-block; vertical-align: top; margin-right: 30px; padding: 4px 12px 3px; font-size: 16px; font-weight: 400; color: var(--clr-white); line-height: 1.4; background: var(--navy-color); border-radius: 15px;}
.board-view-title .notice-icon {display: inline-block; vertical-align: middle; margin-top: -5px; margin-right: 4px; width: 16px; height: 16px; background: url('../img/icon-megaphone.png') no-repeat center center/contain; font-size: 0;}

.board-view-info {padding: 0 30px 22px; border-bottom: 1px solid var(--clr-gray);}
.board-view-info-list::after {content: ''; display: block; clear: both;}
.board-view-info-item {position: relative; vertical-align: middle; float: left; margin-right: 20px;}

.board-view-info-item[class*=" "]:not(.right)::before {content: ''; transform: translateY(2px); width: 16px; height: 16px; background-repeat: no-repeat; background-position: center; background-size: 14px;}
.board-view-info-item.posted-date::before {display: inline-block; background-image: url(../img/icon-clock.png);}
.board-view-info-item.views::before {display: inline-block; background-image: url(../img/icon-views.png);}
.board-view-info-item.state::before {display: inline-block; background-image: url(../img/icon-lightbulb.png);}

.board-view-info-item.right {float: right; margin-right: 0; margin-left: 20px;}
.board-view-info-item > * {display: inline-block; vertical-align: middle;}
.board-view-info-title {margin-right: 5px; font-size: 16px; font-weight: 500; color: var(--black-color);}
.board-view-info-text {font-size: 16px; font-weight: 400; color: var(--clr-gray4);}

.board-view-content {padding: 35px; min-height: 400px; font-size: 16px; width: 1080px; margin: 0 auto; max-width: 100%;}
.board-view-content * {margin: 0 auto; max-width: 100%;}
.board-view-content a {color: var(--clr-main);}
.board-view-content a:hover {text-decoration: underline;}
.board-view-content img {margin: 0 auto;}

.board-view-file {border-bottom: 1px solid var(--clr-gray); padding: 20px 30px;}
.board-view-file-head {font-size: 17px; font-weight: 600; padding-left: 18px; position: relative; margin-bottom: 10px;}
.board-view-file-head::before {content: ''; position: absolute; left: 0; top: 3px; width: 16px; height: 16px; background: url('../img/icon-file.png') no-repeat center center/contain;}
.board-view-file-body {}
.board-view-file-body a {display: inline-block; font-size: 16px; font-weight: 400; color: var(--black-color); max-width: calc(100% - 150px); vertical-align: middle; word-break: break-all;}
.board-view-file-body a:hover {text-decoration: underline;}
.board-view-file-body .sub-btn {margin-left: 10px; font-size: 14px; padding: 5px 15px;}
.board-view-file-body .sub-btn::after {background-size: 12px;}
.board-view-file-item ~ .board-view-file-item {margin-top: 10px;}

.board-view-foot {margin-top: 17px; text-align: right; font-size: 0;}
.board-view-btn {font-weight: 500; display: inline-block; line-height: 50px; text-align: center;}
.board-view-btn:not(:last-child) {margin-right: 10px;}

.board-view.reply {margin-top: 30px;}
.board-reply-title {margin-bottom: 10px; font-size: 24px; font-weight: 700;}

.board-ctrl {margin-top: 50px; border-top: 1px solid var(--clr-black2);}
.board-ctrl-page {position: relative; padding: 15px 15px 15px 25px; border-bottom: 1px solid var(--clr-gray);}
.board-ctrl-page span {font-size: 17px; font-weight: 600; margin-right: 17px;}
.board-ctrl-page::before {content:""; position: absolute; left: 3px; top: 20px; width: 20px; height: 20px; margin-top: -4px; background-repeat: no-repeat; background-position: center center; background-size: 11px;}
.board-ctrl-page.prev::before {background-image: url('../img/icon-brd-prev.png');}
.board-ctrl-page.next::before {background-image: url('../img/icon-brd-next.png');}
.board-ctrl-page-link {font-size: 16px; font-weight: 400; color: var(--black-color);}

/* 상세 > 설문조사 게시판 */
.survey-wrap {}
.survey-head {background: #F5F5F5; padding: 25px 105px;}
.survey-head-total {position: relative; padding-left: 33px; font-size: 18px; font-weight: 400; color: var(--clr-black2);}
.survey-head-total::before {content: ''; position: absolute; bottom: 0; left: 0; width: 25px; height: 25px; border-radius: 50%; background: var(--navy-color) url('../img/ico_graph.png') no-repeat center center;}
.survey-head-total span {font-weight: 700; color: var(--navy-color);}
.survey-head-period {padding-top: 6px; font-size: 18px; font-weight: 500; color: var(--clr-black2);}
.survey-head-period span {padding-left: 10px; color: var(--color-333);}
.survey-body {border: 1px solid var(--clr-gray); border-top: none;}
.survey-body-item {padding: 35px 105px 29px; border-bottom: 1px solid var(--color-f1);}
.survey-body-item:last-child {border-bottom: none;}
.survey-body-top {display: flex; align-items: flex-start; padding-bottom: 20px;}
.survey-body-num {flex: none; padding: 6px 12px; margin-right: 14px; border-radius: 16px; background-color: var(--black-color); font-size: 15px; font-weight: 400; color: var(--clr-white);}
.survey-body-question {padding-top: 3px; font-size: 18px; font-weight: 400; color: var(--color-333);}
.survey-body-bottom {}
.survey-body-bottom .radio-wrap,
.survey-body-bottom .check-wrap {font-size: 0; margin: 0 -20px -10px;}
.survey-body-bottom .radio-item,
.survey-body-bottom .check-item {display: inline-block; vertical-align: top; padding: 0 20px;}
.survey-body-bottom .radio-wrap input[type=radio] + label,
.survey-body-bottom .check-wrap input[type=checkbox] + label {line-height: 2.625;}
.survey-body-bottom .radio-wrap input[type=radio]+ label:before, 
.survey-body-bottom .check-wrap input[type=checkbox] + label:before {top: 8px;}
.survey-body-bottom .etc-item {}
.survey-body-bottom .etc-hidden {display: inline-block; vertical-align: top; margin-left: 15px;}
.survey-body-bottom .input-wrap {}
.survey-body-bottom .input-wrap input[type=text] {width: 100%; height: 42px; padding: 0 20px; border: 1px solid var(--color-ddd); border-radius: 5px;}
.survey-foot {display: flex; align-items: center; justify-content: center; gap: 0 15px; margin-top: 50px;}

.pop-wrap .survey-head {padding: 38px 28px}
.pop-wrap .survey-body {border: none;}
.pop-wrap .survey-body-item {padding-left: 40px; padding-right: 40px;}
.survey-result-wrap {margin: -10px;}
.survey-result-item {padding: 10px;}
.survey-result-head {display: flex; align-items: center; justify-content: space-between; padding-bottom: 10px;}
.survey-result-name {font-size: 16px; font-weight: 400; color: var(--color-333);}
.survey-result-num {font-size: 16px; font-weight: 400; color: var(--color-333);}
.survey-result-num span {color: var(--red-color);}
.survey-result-bar {display: flex; position: relative; height: 32px; border: 1px solid var(--color-e5); border-radius: 16px; box-shadow: inset 2px 0 10px rgba(0,0,0,0.05); overflow: hidden;}
.survey-result-bar span {position: absolute; top: 0; left: 0; height: 100%; background-color: var(--red-color);}
.survey-result-text {padding: 20px 22px; border-radius: 10px; border: 1px solid var(--color-d9); font-size: 15px; font-weight: 400; color: var(--color-333);}

/* 상세 > 비밀글 */
.board-secret {padding: 50px 0; text-align: center;}
.board-secret-img {}
.board-secret-txt {margin-top: 50px; font-size: 20px; font-weight: 500; color: var(--clr-black2);}
.board-secret-btn {margin-top: 35px;}

/* 작성 */
/* .board-write {}
.board-write-list {border-top: 1px solid var(--black-color);}
.board-write-item {border: 1px solid var(--clr-gray); border-top: none;}
.board-write-inner {display: flex;}
.board-write-head {width: 330px; padding: 30px 60px; font-size: 20px; font-weight: 600; color: var(--black-color); background: var(--color-f5); border-right: 1px solid var(--clr-gray);}
.board-write-head span {font-weight: 400;}
.board-write-head span b {font-weight: 400; color: var(--red-color);}
.board-write-body {width: calc(100% - 330px); padding: 17px 20px;}
.board-write-body .radio-wrap {padding-top: 12px;}
.board-write-body .radio-item:not(:last-child) {margin-right: 25px;}
.board-write-body .d-textarea {height: 400px;}

.file-add-btn {}
.file-list {}
.file-item {margin-top: 10px;}
.file-item ~ .file-item {margin-top: 5px;}
.file-txt {display: inline; vertical-align: top; margin-right: 10px; font-size: 16px; font-weight: 400; color: var(--black-color); line-height: 1.8;}
.file-del {display: inline; vertical-align: top; padding: 5px 15px; font-size: 16px; font-weight: 400; color: var(--clr-white); background: var(--red-color); border: none; border-radius: 5px;}

.board-write-btns {margin-top: 35px; text-align: right; font-size: 0;}
.board-write-btn {display: inline-block; vertical-align: middle;}
.board-write-btn:not(:last-child) {margin-right: 10px;} */

/* 통신원 글쓰기 */
.board-write-head {display: flex; align-items: flex-end; justify-content: space-between; gap: 10px;}

.board-write-form-body .d-input {height: 40px; padding: 10px 12px; font-size: 16px; border-radius: 4px;}

.board-write-download {padding: 25px 30px; border-radius: 10px; border: 1px solid var(--clr-gray); background: #F5F5F5;}
.board-write-download-box {display: flex; justify-content: space-between; align-items: center; padding-top: 20px; border-top: 1px solid var(--clr-gray);}
.board-write-download-box:first-child {padding-top: 0; padding-bottom: 20px; border-top: none;}
.board-write-download-head {}
.board-write-download-head .t1 {font-size: 18px; font-weight: bold; color: var(--clr-black2); line-height: 1.35;}
.board-write-download-head .t2 {margin-top: 7px; font-size: 14px; font-weight: 400; color: #007081; line-height: 1.35;}
.board-write-download-body {}
.board-write-download-body .btn-download {height: 40px; line-height: 40px; padding: 0 20px;}

.board-write-form {}
.board-write-form-list {width: 100%; border-top: 1px solid var(--clr-black2); font-size: 0;}
.board-write-form-item {width: 100%; border-bottom: 1px solid var(--clr-gray);}
.board-write-form-item.item2 {display: inline-block; width: 50%;}
.board-write-form-inner {display: flex;}
.board-write-form-head {display: flex; align-items: center; justify-content: center; width: 290px; min-height: 60px; border-right: 1px solid var(--clr-gray); background-color: var(--clr-main-light); text-align: center;}
.board-write-form-head .t1 {font-size: 18px; font-weight: bold; color: var(--clr-black2);}
.board-write-form-head .t1 .red {color: #f00;}
.board-write-form-head .t1 strong {vertical-align: top; font-size: 14px; font-weight: 400; color: #FF6720;}
.board-write-form-body {width: calc(100% - 290px); padding: 10px;}

.board-write-form .d-input, .board-write-form .d-select, .board-write-form .d-textarea {width: 100%;}
.board-write-form .btn-black {display: inline-block; min-width: 93px; height: 40px; line-height: 42px; padding: 0 12px; border: none; background: var(--clr-black2); border-radius: 4px; font-size: 16px; font-weight: 500; color: var(--clr-white); text-align: center;}
.board-write-form .btn-color {height: 40px; line-height: 42px; font-weight: 500; cursor: pointer;}
.board-write-form .btn-white {display: inline-block; width: 67px; height: 40px; line-height: 40px; padding: 0 5px; border: 1px solid var(--clr-gray); border-radius: 3px; background: var(--clr-white); font-size: 15px; font-weight: 500; color: var(--clr-black2); text-align: center;}

.board-write-input ~ .board-write-input {margin-top: 6px;}

.board-write-input.w50 {width: 38%;}

.board-write-input .d-textarea {height: 500px;}

.board-write-input.txtBtn {display: flex; gap: 15px; align-items: center;}
.board-write-input.txtBtn .d-input {flex: 1;}

.board-write-input.btnTxt {display: flex; gap: 8px;}
.board-write-input.btnTxt .d-input {flex: 1;}

.board-write-input.selTxtBtn {display: flex; gap: 8px;}
.board-write-input.selTxtBtn .d-select {width: 120px; min-width: auto;}
.board-write-input.selTxtBtn .d-input {width: auto; flex: 1;}
.board-write-input.selTxtBtn .d-white {}

.board-write-input.labelTxtBtn {display: flex; align-items: center; gap: 8px;}
.board-write-input.labelTxtBtn .label {width: 60px; font-size: 16px; font-weight: 400; color: var(--clr-black2); text-align: left;}
.board-write-input.labelTxtBtn .d-input {width: auto; flex: 1;}

.board-write-input.tel {}
.board-write-input.tel .d-input {width: calc((100% - 50px) / 3); min-width: auto;}
.board-write-input.tel .dash {display: inline-block; vertical-align: middle; width: 25px; font-size: 18px; font-weight: 400; color: var(--clr-black2); text-align: center;}

.board-write-caption {display: block; margin-bottom: 3px;}
.board-write-caption p {position: relative; padding-left: 10px; font-size: 14px; font-weight: 400; color: #007081;}
.board-write-caption p::before {content: "*"; position: absolute; left: 0; top: 0;}

.board-write-status {display: block; margin-top: 7px;}
.board-write-status p {font-size: 14px; font-weight: 500; color: #B2B2B2;}
.board-write-status p strong {font-weight: 500; color: #007081;}

.board-write-radio-wrap ~ .board-write-radio-wrap {margin-top: 15px; padding-top: 7px; border-top: 1px solid var(--clr-gray);}
.board-write-radio {padding: 7px 0;}
.board-write-radio.p-none {padding: 0;}
.board-write-radio .radio-wrap {display: inline-block; vertical-align: middle; margin: 5px 0;}
.board-write-radio .radio-wrap:not(:last-child) {margin-right: 30px;}
.board-write-radio-view {display: none; margin-top: 8px;}

.board-write-caution {padding: 22px 46px 25px; border: 1px solid #007081; border-radius: 10px; background: var(--clr-main-light);}
.board-write-caution .t1 {font-size: 18px; font-weight: bold; color: #007081;}
.board-write-caution-list {margin-top: 15px;}
.board-write-caution-list li:not(:first-child) {margin-top: 8px;}
.board-write-caution-list span {display: inline-block; vertical-align: top; width: 20px; height: 20px; line-height: 20px; background: #007081; border-radius: 50%; font-size: 14px; font-weight: 600; color: var(--clr-white); text-align: center;}
.board-write-caution-list p {display: inline-block; vertical-align: top; width: calc(100% - 20px); padding-left: 5px; padding-top: 1px; font-size: 15px; font-weight: 400; color: var(--clr-black2);}

#mapLayer {display:none; position:fixed; overflow:hidden; z-index:1; -webkit-overflow-scrolling:touch;}
#mapLayer #btnCloseLayer {position:absolute; right:-3px; top:-3px; z-index:1; cursor:pointer;}

.board-write-ctrl {margin-top: 60px; text-align: center;}

.cp-info-pop-sch {width: 100%; padding: 20px; border-radius: 10px; background: #F5F5F5; text-align: center;}
.cp-info-pop-sch-inner {font-size: 0;}
.cp-info-pop-sch .d-input {width: 250px; border-radius: 4px 0 0 4px;}
.cp-info-pop-sch .btn-sch {width: 38px; height: 38px; background: #007081 url('/source/img/icon-srch.png') no-repeat center center; border-radius: 0 4px 4px 0; border: none; font-size: 0;}

/* 2025-12-18 통합검색 신규 페이지 추가 { */
.sub-contents:has(.search-result-top) {padding-top: 0;}
.search-result-top {width: 100%; max-width: 100%; border-radius: 0; height: 410px; background: url('../img/search-result-top-bg.png') no-repeat center/cover; position: relative; overflow: hidden; margin: 20px auto 0;}
.search-result-top .container, .search-result-top .wrapper, .search-result-top form {height: 100%;}
.integrated-search {height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center;}
.integrated-search-title {font-weight: 800; font-size: 50px; color: var(--clr-black2); padding-bottom: 25px;}
.integrated-search-bar {width: 706px; max-width: 100%; display: flex; align-items: center; height: 70px; border: 3px solid var(--clr-main);}
.integrated-search-bar input[type=text] {width: 100%; border: none; height: 100%; font-weight: 400; font-size: 20px; color: var(--clr-black2); padding: 0 20px;}
.integrated-search-btn {aspect-ratio: 1 / 1; height: 100%; border: none; background: url('../img/icon-integrated-search.png') no-repeat center var(--clr-main);}
.popular-keywords {display: flex; align-items: flex-start; width: 706px; max-width: 100%; gap: 20px; justify-content: center; margin-top: 20px;}
.popular-keywords-title {font-weight: 700; font-size: 25px; color: var(--clr-black2); line-height: 1.35; padding-top: 5px;}
.popular-keywords-list {display: flex; flex-wrap: wrap; align-items: center; gap: 10px; max-width: calc(100% - 135px);}
.popular-keywords-item {}
.popular-keywords-item .keyword-hash {display: flex; align-items: center; justify-content: center; border-radius: 50px; height: 40px; background-color: var(--clr-white); font-weight: 400; font-size: 18px; color: var(--clr-black2); padding: 0 17px; transition: .3s; box-shadow: 0 0 4px rgba(144,144,144,0.25);}
.popular-keywords-item .keyword-hash:hover {color: var(--clr-white); background-color: var(--clr-main);}

.integrated-search-result-top {text-align: center; padding-bottom: 26px;}
.integrated-search-result-top .result-text {font-weight: 600; font-size: 25px; color: var(--clr-black2); line-height: 1.35;}
.integrated-search-result-top .result-text .c {font-weight: 700; color: var(--clr-main);}

.search-result-top ~ .sp-sec {margin-top: 30px;}
.board-list.search-type {border-top: 1px solid var(--clr-black2);}
.board-list.search-type:has(.empty-data) {border-top: none;}
.search-result-item {border-bottom: 1px solid var(--clr-gray); display: flex; align-items: flex-start; justify-content: space-between; padding: 25px 0;}
.search-result-title-row {width: calc(100% - 120px);}
.search-result-title {display: flex; align-items: flex-start; gap: 27px; font-weight: 700; font-size: 22px; line-height: 1.35; color: var(--clr-black2);}
.search-result-title .category {color: var(--clr-main);}
.search-result-title .title {flex: 1;}
.search-result-content {font-weight: 400; font-size: 18px; line-height: 1.5; color: var(--clr-black2); margin-top: 10px;}
.search-result-date {font-weight: 400; font-size: 16px; color: var(--clr-black2);}
/* } 2025-12-18 통합검색 신규 페이지 추가 */


/***************************************************************/
/**************************** 반응형 ****************************/
/***************************************************************/

@media screen and (max-width: 1800px) {
}

@media screen and (max-width: 1440px) {
  /* 목록 > 하단(버튼) */
  .board-btns {position: relative; right: inherit; bottom: inherit; margin-top: 15px;}
  .board-btns .borad-btn {margin-left: auto;}

  /* 목록 > 텍스트 게시판 */
  .board-list-tbl th {height: 55px; font-size: 16px;}
  .board-list-tbl td {height: 55px; padding: 5px; font-size: 15px;}
  .board-list-tbl td.title {padding-left: 20px; padding-right: 20px;}
  .board-list-tbl td.period {font-size: 12px;}
  .board-list-tbl .category {margin-right: 10px; padding: 4px 8px; font-size: 14px; line-height: 1.3;}
  /* .board-list-tbl .status {width: auto; height: auto; padding: 4px 8px; font-size: 14px; line-height: 1.3;} */
  span.state {padding: 4px 10px; font-size: 13px;}

  /* 목록 > 갤러리 게시판 */
  .gallery-list {margin: -25px -10px;}
  .gallery-item {width: 33.3333%; padding: 25px 10px;}

  /* 목록 > FAQ 게시판 */
  .faq-question-text {padding-right: 80px;}
  .faq-question-text::after {right: 35px;}

  /* 상세 > 공통 */
  .board-view-title {padding: 15px 20px 8px;}

  .board-view-info {padding: 0 20px 15px;}
  /* .board-view-info-title {margin-right: 25px;} */

  .board-view-file {padding: 20px;}
  .board-view-content {padding: 30px 20px;}
  
  /* 상세 > 설문조사 게시판 */
  .survey-head {padding: 20px 50px;}
  .survey-body-item {padding: 30px 50px;}

  /* 상세 > 비밀글 */
  .board-secret {padding: 20px 0 50px;}

  /* 작성 */
  /* .board-write-head {width: 257px; padding: 22px 24px; font-size: 18px; text-align: center;}
  .board-write-body {width: calc(100% - 257px); padding: 14px 24px;}
  .board-write-body input[type="text"] {height: 41px;}
  .board-write-body .radio-wrap {padding-top: 7px;} */

  /* 통신원 글쓰기 */
  .board-write-form-head {width: 180px; padding: 5px 10px;}
  .board-write-form-body {width: calc(100% - 180px);}

  .board-write-input.w50 {width: 50%;}

  /* 2025-12-18 통합검색 신규 페이지 추가 { */
  .search-result-top {height: 350px;}
  .integrated-search-title {font-size: 42px; padding-bottom: 20px;}
  .integrated-search-bar {height: 60px;}
  .popular-keywords-title {font-size: 22px;}
  .popular-keywords-item .keyword-hash {font-size: 16px; height: 36px;}

  .integrated-search-result-top {padding-bottom: 20px;}
  .integrated-search-result-top .result-text {font-size: 22px;}

  .search-result-title {gap: 20px; font-size: 18px;}
  .search-result-content {font-size: 16px;}
  .search-result-item {padding: 20px 10px;}
  /* } 2025-12-18 통합검색 신규 페이지 추가 */
}

@media screen and (max-width: 1024px) {
  /* 목록 > 상단(탭 메뉴) */
  .board-taps {margin-bottom: 30px;}
  .board-taps > * {padding: 15px 3px; font-size: 18px;}

  /* 공통 > 페이징 */
  .board-pagination {margin-top: 40px;}

  /* 목록 > 상단(카테고리, 검색) */
  .board-category-button {padding: 12px 15px;}
  .board-search-input {width: 400px;}

  .board-search-button {width: 45px; height: 45px;}

  .board-util {flex-direction: column-reverse; align-items: flex-start; gap: 8px; padding: 10px;}
  .board-category {width: 100%;}
  .board-category select {width: 100%;}
  .board-category-list {gap: 5px;}
  .board-category-button {padding: 8px 12px; font-size: 14px;}
  .board-search {width: 100%; /* padding: 15px; background: var(--color-f5); border: 1px solid var(--color-ddd); border-radius: 8px; */}
  .board-search-inner {display: flex; flex-wrap: wrap;}
  .board-search-item {/*width: calc(100% - 188px);*/ flex: auto;}
  .board-search-item:not(:last-child) {/*width: 180px;*/ flex: 1;}
  .board-search-select {width: 100%; min-width: 100px;}
  .board-search-input {width: calc(100% - 45px); min-width: auto !important;}

  .board-info-text {font-size: 15px;}

  /* 목록 > 텍스트 게시판 */
  .board-list-tbl {display: block; width: 100%;}
  .board-list-tbl thead {display: none;}
  .board-list-tbl tbody {display: block; width: 100%;}
  .board-list-tbl tbody tr {display: block; width: 100%; border-left: none; border-bottom: 1px solid var(--black-color);}
  .board-list-tbl tbody tr:hover {border-left: none;}
  .board-list-tbl td {position: relative; display: block; width: 100%; height: auto; padding: 10px 15px 10px 115px; color: var(--color-333); text-align: left; border-top: 1px solid var(--color-e5);}
  .board-list-tbl td {border-right: none;}
  .board-list-tbl td::before {content:attr(data-th); position: absolute; left: 0; top: 0; display: flex; align-items: center; justify-content: center; width: 100px; height: 100%; color: var(--clr-black2); text-align: center; border-right: 1px solid var(--color-e5);}
  .board-list-tbl th:not(:last-child):after, .board-list-tbl td:not(:last-child)::after {display: none;}
  .board-list-tbl td.title {display: block; padding: 10px 15px 10px 115px;}
  .board-list-tbl .new {display: none;}
  .board-list-tbl td.title a {display: block; color: var(--color-333);}
  .board-list-tbl tr.notice .notice-icon {background-position: center left; margin-bottom: 0;}
  .board-list-tbl .category, 
  .board-list-tbl td.title a.category {display: inline-block; margin-right: 0; border-radius: 5px;}
  .board-list-tbl .file {display: none;}
  .board-list-tbl td.period {font-size: 15px;}
  .board-list-tbl td.period br {display: none;}
  /* .board-list-tbl .status {border-radius: 5px;} */
  span.state {font-size: 12px;}

  /* 목록 > 갤러리 게시판 */
  .gallery-list {margin: -20px -8px;}
  .gallery-item {padding: 20px 8px;}
  .gallery-content {padding-top: 15px;}
  .gallery-title {font-size: 16px;}
  .gallery-date {margin-top: 5px; font-size: 15px;}

  /* 목록 > FAQ 게시판 */
  .faq-icon {width: 100px;}
  .faq-text {width: calc(100% - 100px); padding: 0 25px;}
  .faq-question-text {padding-right: 60px;}
  .faq-question-text::after {right: 30px;}
  
  /* 상세 > 공통 */
  .board-view-title {font-size: 18px;}
  .board-view-title span {margin-right: 15px; font-size: 15px; border-radius: 5px;}

  .board-view-info-item {margin-right: 15px;}

  .board-view-info-item[class*=" "]:not(.right)::before {transform: translateY(3px); width: 14px; height: 14px; background-size: 12px;}

  .board-view-info-item.right {margin-left: 15px;}
  .board-view-info-title {margin-right: 3px; font-size: 14px;}
  .board-view-info-text {font-size: 14px;}

  /* .board-view-file-body {padding: 12px 20px;} */
  .board-view-file-body a {max-width: calc(100% - 120px);}

  .board-ctrl-page {padding: 15px 15px 15px 50px;}
  .board-ctrl-page::before {left: 20px;}
  
  /* 상세 > 설문조사 게시판 */
  .survey-head {padding: 20px;}
  .survey-body-item {padding: 25px 20px;}
  .survey-body-bottom .radio-wrap, 
  .survey-body-bottom .check-wrap {margin: 0 -15px -10px;}
  .survey-body-bottom .radio-item, 
  .survey-body-bottom .check-item {padding: 0 15px;}

  .pop-wrap .survey-head {padding: 20px;}
  .pop-wrap .survey-body-item {padding-left: 20px; padding-right: 20px;}
  
  /* 작성 */
  /* .board-write-head {width: 180px;}
  .board-write-body {width: calc(100% - 180px);}
  .survey-body-top {padding-bottom: 10px;} */

  /* 통신원 글쓰기 */
  .board-write-input .d-textarea {height: 350px;}

  .board-write-download {padding: 20px 25px;}
  .board-write-download-box {padding-top: 15px;}
  .board-write-download-box:first-child {padding-bottom: 15px;}
  .board-write-download-head .t2 {margin-top: 3px;}
  .board-write-download-body .btn-download {padding: 0 15px;}

  .board-write-form-item.item2 {width: 100%;}
  .board-write-form-head .t1 {font-size: 17px;}

  .board-write-input.w50 {width: 100%;}

  .board-write-caution {padding: 20px 30px;}

  /* 2025-12-18 통합검색 신규 페이지 추가 { */
  .search-result-top {height: 220px;}
  .integrated-search-title {font-size: 32px; padding-bottom: 12px;}
  .integrated-search-bar {height: 50px; width: 420px;}
  .integrated-search-bar input[type=text] {padding: 0 16px; font-size: 16px;}
  .integrated-search-btn {background-size: 22px;}
  .popular-keywords {width: 420px; margin-top: 14px;}
  .popular-keywords-title {display: none;}
  .popular-keywords-list {max-width: 100%; gap: 5px;}
  .popular-keywords-item .keyword-hash {font-size: 14px; height: 30px; padding: 0 10px;}

  .integrated-search-result-top .result-text {font-size: 18px;}

  .search-result-item {padding: 16px 10px;}
  .search-result-title {font-size: 16px; gap: 10px;}
  .search-result-date {font-size: 14px;}
  .search-result-content {font-size: 14px; margin-top: 8px;}
  /* } 2025-12-18 통합검색 신규 페이지 추가 */
}

@media screen and (max-width: 768px) {
  /* 목록 > 상단(탭 메뉴) */
  .board-taps {margin-bottom: 20px; flex-wrap: wrap;}
  .board-taps > * {min-width: 33.33%; padding: 10px 2px; font-size: 16px;}

  /* 공통 > 페이징 */
  .board-pagination {margin-top: 30px;}
  .board-pagination-list > li > * {width: 26px; height: 26px; line-height: 26px; font-size: 14px;}
  .board-pagination-list > .num ~ .num {margin-left: 2px;}
  .board-pagination-list > li.first {margin-right: 2px;}
  .board-pagination-list > li.prev {margin-right: 5px;}
  .board-pagination-list > li.next {margin-left: 5px;}
  .board-pagination-list > li.last {margin-left: 2px;}
  .board-pagination-list > li.i > * {width: 33px; height: 33px;}
  .board-pagination-list > li.first > * {background-size: 12px;}
  .board-pagination-list > li.prev > * {background-size: 7px;}
  .board-pagination-list > li.next > * {background-size: 7px;}
  .board-pagination-list > li.last > * {background-size: 12px;}
  
  /* 목록 > 상단(카테고리, 검색) */
  .board-util {flex-direction: column-reverse; align-items: flex-start; gap: 8px; padding: 10px;}
  .board-category {width: 100%;}
  .board-category select {width: 100%;}
  .board-category-list {gap: 5px;}
  .board-category-button {padding: 8px 12px; font-size: 14px;}
  .board-search {width: 100%; /* padding: 15px; background: var(--color-f5); border: 1px solid var(--color-ddd); border-radius: 8px; */}
  .board-search-inner {display: flex; flex-wrap: wrap;}
  .board-search-item {/*width: calc(100% - 188px);*/ flex: auto;}
  .board-search-item:not(:last-child) {/*width: 180px;*/ flex: 1;}
  .board-search-select {width: 100%; min-width: 100px;}
  .board-search-input {width: calc(100% - 45px); min-width: auto !important;}

  .board-info-text {font-size: 15px;}

  /* 목록 > 하단(버튼) */
  .board-btns {margin-top: 10px;}
  .board-btns .borad-btn {width: 100px; height: 40px; line-height: 40px;}

  /* 목록 > 텍스트 게시판 */
  .board-list-tbl td {padding: 10px 10px 10px 80px; font-size: 14px;}
  .board-list-tbl td::before {width: 70px;}
  .board-list-tbl td.title {padding: 10px 10px 10px 80px;}
  .board-list-tbl td.period {font-size: 14px;}
  /* .board-list-tbl .status {font-size: 13px;} */
  .board-list-tbl .category, .board-list-tbl td.title a.category {font-size: 13px;}
  
  /* 목록 > 갤러리 게시판 */
  .gallery-list {margin: -15px -5px;}
  .gallery-item {width: 50%; padding: 15px 5px;}
  .gallery-content {padding-top: 12px;}
  .gallery-date {margin-top: 3px; font-size: 14px;}

  /* 목록 > FAQ 게시판 */
  .faq-icon {width: 60px;}
  .faq-text {width: calc(100% - 60px); padding: 0 15px;}
  .faq-question-category {margin-right: 8px; padding: 4px 8px; border-radius: 5px; font-size: 13px;}
  .faq-question-name {font-size: 15px;}
  .faq-question-text {padding-right: 35px;}
  .faq-question-text::after {right: 15px; top: 7px;}
  .faq-answer {padding: 20px 0;}
  .faq-answer-content {font-size: 14px;}
  
  /* 상세 > 공통 */
  .board-view-title .notice-icon {margin-top: -3px; margin-right: 2px;}
  .board-view-title {padding: 10px 15px 6px; font-size: 16px;}
  .board-view-title span {padding: 3px 8px; margin-right: 10px; font-size: 14px;}

  .board-view-info {padding: 0 15px 10px;}
  .board-view-info-list {display: flex; flex-wrap: wrap;}
  .board-view-info-item {display: inline-flex; padding: 0; margin-right: 10px;}
  .board-view-info-item.right {margin-left: unset; margin-right: unset;}
  .board-view-info-item[class*=" "]:not(.right)::before {transform: translateY(2px);}
  .board-view-info-title {margin-right: 5px;}
  .board-view-info-text {}

  .board-view-content {min-height: 320px; padding: 20px 15px; font-size: 15px;}

  .board-view-file {padding: 15px;}

  .board-view-foot {margin-top: 10px;}
  .board-view-btn {width: 93px; line-height: 45px;}
  .board-view-btn:not(:last-child) {margin-right: 5px;}

  .board-view.reply {margin-top: 20px;}
  .board-reply-title {margin-bottom: 8px; font-size: 20px;}

  .board-ctrl {margin-top: 30px;}
  .board-ctrl-page {padding: 10px 10px 10px 50px;}
  .board-ctrl-page span {font-size: 15px; margin-right: 10px;}
  .board-ctrl-page::before {width: 18px; height: 18px; top: 16px; background-size: 10px;}
  .board-ctrl-page-link {font-size: 14px;}
  
  /* 상세 > 설문조사 게시판 */
  .survey-head {padding: 15px;}
  .survey-body-item {padding: 15px;}
  .survey-head-total {font-size: 16px;}
  .survey-head-total::before {width: 23px; height: 23px; background-size: 50%;}
  .survey-head-period {font-size: 16px;}
  .survey-body-top {flex-direction: column; padding-bottom: 12px;}
  .survey-body-num {margin-right: 0; padding: 5px 10px; font-size: 13px;}
  .survey-body-question {width: 100%; padding-top: 5px; font-size: 16px;}
  .survey-body-bottom .radio-wrap input[type=radio] + label, 
  .survey-body-bottom .check-wrap input[type=checkbox] + label {line-height: 2.5;}
  .survey-body-bottom .radio-wrap input[type=radio]+ label:before, 
  .survey-body-bottom .check-wrap input[type=checkbox] + label:before {top: 6px;}
  .survey-body-bottom .etc-item input[type=radio] + label, 
  .survey-body-bottom .etc-item input[type=checkbox] + label {line-height: 3;}
  .survey-body-bottom .etc-item input[type=radio]+ label:before, 
  .survey-body-bottom .etc-item input[type=checkbox] + label:before {top: 11px;}
  .survey-body-bottom .radio-wrap, 
  .survey-body-bottom .check-wrap {margin: 0 -10px -5px;}
  .survey-body-bottom .radio-item, 
  .survey-body-bottom .check-item {display: block; padding: 0 10px;}
  .survey-body-bottom .input-wrap {margin-top: 5px;}
  .survey-body-bottom .etc-hidden .input-wrap {margin: 0;}
  .survey-foot {gap: 5px; margin-top: 30px;}

  .pop-wrap .survey-head {padding: 15px;}
  .pop-wrap .survey-body-item {padding-left: 15px; padding-right: 15px;}
  .survey-result-head {padding-bottom: 3px;}
  .survey-result-wrap {margin: -7px;}
  .survey-result-item {padding: 7px;}
  .survey-result-name {font-size: 14px;}
  .survey-result-num {font-size: 14px;}
  .survey-result-bar {height: 20px;}
  .survey-result-text {padding: 15px; font-size: 14px;}

  /* 상세 > 비밀글 */
  .board-secret {padding: 0;}
  .board-secret-img img {width: 80px;}
  .board-secret-txt {margin-top: 20px; font-size: 18px;}
  .board-secret-btn {margin-top: 30px;}
  
  /* 작성 */
  /* .board-write-item {border: 1px solid var(--color-d9);}
  .board-write-item ~ .board-write-item {margin-top: 10px;}
  .board-write-inner {flex-direction: column;}
  .board-write-head {width: 100%; padding: 12px; font-size: 16px; border-right: none;}
  .board-write-body {width: 100%; padding: 12px;}
  .board-write-body input[type="text"] {width: 100%;}
  .board-write-body .radio-wrap {padding-top: 0;}
  .board-write-body .d-textarea {height: 250px;}

  .file-item {margin-top: 7px;}
  .file-item ~ .file-item {margin-top: 3px;}
  .file-txt {font-size: 14px;}
  .file-del {padding: 5px; font-size: 14px;}

  .board-write-btns {margin-top: 30px; text-align: center;}
  .board-write-btn:not(:last-child) {margin-right: 5px;} */

  /* 통신원 글쓰기 */
  .board-write-input .d-textarea {height: 250px;}

  .board-write-download {padding: 18px;}
  .board-write-download-box {flex-direction: column; gap: 5px; text-align: center;}
  .board-write-download-head .t1 {font-size: 16px;}

  .board-write-head {flex-direction: column; align-items: flex-start; gap: 2px;}

  .board-write-form-head {width: 120px;}
  .board-write-form-head .t1 {font-size: 15px;}
  .board-write-form-body {width: calc(100% - 120px);}

  .board-write-form .btn-black {min-width: 70px; height: 38px; padding: 0 10px; line-height: 38px; font-size: 14px;}
  .board-write-form .btn-color {min-width: 80px; height: 38px; padding: 0 10px; line-height: 38px; font-size: 14px;}
  .board-write-form .btn-white {width: 50px; height: 38px; line-height: 38px; font-size: 13px;}

  .board-write-input ~ .board-write-input {margin-top: 5px;}
  
  .board-write-input.txtBtn {gap: 10px;}

  .board-write-input.btnTxt {gap: 5px;}

  .board-write-input.selTxtBtn {flex-wrap: wrap; gap: 5px;}
  /* .board-write-input.selTxtBtn .d-select {width: 28%;} */
  .board-write-input.selTxtBtn .btn-white {flex: 1 auto; width: 100%;}
  .board-write-input.selTxtBtn ~ .board-write-input.selTxtBtn {margin-top: 6px; padding-top: 6px; border-top: 1px dashed #CFCFCF;}

  .board-write-input.labelTxtBtn {flex-wrap: wrap; gap: 5px;}
  .board-write-input.labelTxtBtn .label {width: 50px; font-size: 14px;}
  .board-write-input.labelTxtBtn .btn-white {flex: 1 auto; width: 100%;}
  .board-write-input.labelTxtBtn ~ .board-write-input.labelTxtBtn {padding-top: 0; border: none;}

  .board-write-input.tel .d-input {width: calc((100% - 36px) / 3);}
  .board-write-input.tel .dash {width: 18px; font-size: 15px;}

  .board-write-radio-wrap ~ .board-write-radio-wrap {margin-top: 10px; padding-top: 6px; border-top: 1px dashed #CFCFCF;}

  .board-write-caution {padding: 18px 20px;}
  .board-write-caution .t1 {font-size: 16px;}
  .board-write-caution-list {margin-top: 10px;}
  .board-write-caution-list li:not(:first-child) {margin-top: 5px;}
  .board-write-caution-list span {font-size: 12px;}
  .board-write-caution-list p {font-size: 14px;}

  #mapLayer {left: 50% !important; max-width: 90% !important; transform: translateX(-50%);}

  .board-write-ctrl {margin-top: 40px;}
  
  .cp-info-pop-sch .d-input {width: calc(100% - 38px);}

  /* 2025-12-18 통합검색 신규 페이지 추가 { */
  .search-result-top {margin-top: 10px;}
  .integrated-search-title {font-size: 28px;}
  .integrated-search-bar {height: 46px;}
  .integrated-search-bar input[type=text] {font-size: 14px; padding: 0 14px;}
  .popular-keywords-item .keyword-hash {font-size: 12px; height: 28px; padding: 0 8px;}

  .integrated-search-result-top {padding-bottom: 14px;}
  .integrated-search-result-top .result-text {font-size: 16px;}
  .search-result-item {flex-direction: column; gap: 6px; padding: 10px 8px;}
  .search-result-title {flex-direction: column; gap: 4px; font-size: 15px;}
  .search-result-content {font-size: 13px; margin-top: 2px;}
  .search-result-title-row {width: 100%;}
  .search-result-date {font-size: 13px;}
  /* } 2025-12-18 통합검색 신규 페이지 추가 */
}

@media screen and (max-width: 480px) {
  /* 목록 > 상단(탭 메뉴) */
  .board-taps > * {min-width: 50%; padding: 10px 2px; font-size: 14px;}

  /* 목록 > 상단(카테고리, 검색) */
  .board-search-button {width: 40px; height: 40px;}

  .board-info-text {font-size: 14px;}

  /* 공통 > 페이징 */
  .board-pagination {margin-top: 20px;}
  .board-pagination-list > li > * {width: 17px; max-width: 100%; height: 20px; line-height: 20px; background: none; font-size: 13px;}
  .board-pagination-list > li.active > * {width: 20px;}
  .board-pagination-list > .num ~ .num {margin-left: 0;}
  .board-pagination-list > li.i > * {width: 23px; height: 23px;}
  .board-pagination-list > li.first > * {background-size: 10px;}
  .board-pagination-list > li.prev > * {background-size: 5px;}
  .board-pagination-list > li.next > * {background-size: 5px;}
  .board-pagination-list > li.last > * {background-size: 10px;}

  /* .board-search {padding: 10px;} */
  .board-search-inner {flex-direction: column; gap: 8px;}
  .board-search-item:not(:last-child) {margin-right: 0;}
  
  /* 목록 > 하단(버튼) */
  .board-btns .borad-btn {width: 80px; height: 35px; line-height: 35px;}
  
  /* 목록 > 텍스트 게시판 */
  .board-list-tbl td {padding: 6px 10px 6px 65px; font-size: 13px;}
  .board-list-tbl td::before {width: 55px;}
  .board-list-tbl td.title {padding: 6px 10px 6px 65px;}
  
  /* 목록 > 갤러리 게시판 */
  .gallery-list {margin: -12px 0;}
  .gallery-item {width: 100%; padding: 12px 0;}
  .gallery-content {padding-top: 10px;}
  span.state {padding: 3px 8px;}
  
  /* 목록 > FAQ 게시판 */
  .faq-icon {width: 45px;}
  .faq-text {display: block; width: calc(100% - 45px);}
  .faq-question {padding: 15px 0 10px;}
  .faq-question .faq-icon {margin-top: 3px;}
  .faq-question-category {display: inline-block;}
  .faq-question-text::after {top: 5px;}
  .faq-answer {padding: 15px 0;}
  
  /* 상세 > 공통 */
  .board-view-title {padding: 12px 8px 6px;}

  .board-view-info {padding: 0 8px 12px;}
  .board-view-info-list {margin: 0; gap: 5px 0;}
  .board-view-info-item[class*=" "]:not(.right)::before {transform: translateY(0);}
  .board-view-info-title {font-size: 13px;}
  .board-view-info-text {font-size: 13px;}

  .board-view-file {flex-direction: column; padding: 12px 8px;}
  .board-view-file-head {width: 100%; /* padding: 12px 10px; */ margin-bottom: 5px;}
  .board-view-file-body {width: 100%; /* padding: 10px 10px; */}
  .board-view-file-head {font-size: 15px; padding-left: 15px;}
  .board-view-file-head::before {width: 13px; height: 13px;}
  .board-view-file-body a {font-size: 14px; max-width: calc(100% - 110px);}

  .board-view-file-body .sub-btn {margin-left: 5px; font-size: 13px;}
  .board-view-file-body .sub-btn::after {width: 13px; height: 13px; background-size: 11px;}

  .board-view-btn {line-height: 35px; height: 35px; width: 70px; font-size: 13px;}

  .board-reply-title {font-size: 18px;}

  .board-ctrl {margin-top: 30px;}
  .board-ctrl-page {padding: 12px 10px 12px 38px;}
  .board-ctrl-page::before {left: 15px; width: 12px; top: 19px;}
  .board-ctrl-page span {font-size: 14px;}
  
  /* 상세 > 설문조사 게시판 */
  .survey-head-period {padding-top: 10px; font-size: 15px;}
  .survey-head-period span {display: block; padding: 0;}
  .survey-body-top {padding-bottom: 8px;}
  .survey-body-bottom .etc-hidden {display: block !important; margin: 3px 0 0;}
  .survey-body-bottom .radio-wrap input[type=radio] + label, 
  .survey-body-bottom .check-wrap input[type=checkbox] + label {line-height: 2.3;}
  .survey-body-bottom .radio-wrap input[type=radio]+ label:before, 
  .survey-body-bottom .check-wrap input[type=checkbox] + label:before {top: 6px;}
  .survey-body-bottom .etc-hidden .input-wrap {width: 100%;}


  /* 상세 > 비밀글 */
  .board-secret-img img {width: 60px;}
  .board-secret-txt {margin-top: 10px; font-size: 16px;}
  .board-secret-btn {margin-top: 15px;}
  
  /* 작성 */
  /* .board-write-head {padding: 10px; font-size: 15px;}
  .board-write-body {padding: 10px;}
  .board-write-body .d-textarea {height: 200px;} */

  /* 통신원 글쓰기 */
  .board-write-download {padding: 15px;}

  .board-write-form-inner {flex-direction: column;}
  .board-write-form-head {width: 100%; min-height: 42px; border-bottom: 1px dotted #CFCFCF; border-right: none;}
  .board-write-form-body {width: 100%;}
  
  .board-write-caution {padding: 15px;}
  
  .cp-info-pop-sch {padding: 10px; border-radius: 5px;}
  .cp-info-pop-sch .d-input {width: calc(100% - 36px);}
  .cp-info-pop-sch .btn-sch {width: 36px; height: 36px;}

  /* 2025-12-18 통합검색 신규 페이지 추가 { */
  .search-result-top {height: 180px;}
  .integrated-search-title {font-size: 24px; padding-bottom: 8px;}
  .integrated-search-bar {height: 40px;}
  .popular-keywords-list {align-items: center; justify-content: center;}

  .integrated-search-result-top .result-text {font-size: 15px;}
  .search-result-title .category {font-size: 13px;}
  /* } 2025-12-18 통합검색 신규 페이지 추가 */
}