@charset "utf-8";

/* reset CSS */
html { height: 100%; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;  }
body { height: 100%; margin: 0; line-height: 1.5; }
body, input, textarea, button, select, pre { font-family: "Pretendard", "Malgun Gothic", "AppleGothic", sans-serif; font-weight: 400; font-size: 16px; color: #1d1d1d; word-break: keep-all; }
ul, ol, dl, h1, h2, h3, h4, h5, h6, p, fieldset { margin: 0; padding: 0; }
ul, ol, dl { list-style: none; }
caption, legend { display: none; }
fieldset { border: none; }
textarea { resize: none; }
select { -webkit-appearance: none; -moz-appearance: none; appearance: none; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23969696' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' class='feather feather-chevron-down'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") right 6px center no-repeat; background-size: 17px; }
a { color: #0072e6; }
a:link { text-decoration: none; }
a:visited { text-decoration: none; }
a:hover { text-decoration: underline; transition-duration: 250ms; }
a:active { text-decoration: none; }
a:focus { text-decoration: none; }
.blind { width: 1px; height: 1px; margin: 0 !important; padding: 0 !important; line-height: 1px; text-indent: -9999em; overflow: hidden; position: absolute; top: -9999em; left: -9999em; }
::-webkit-input-placeholder, :-ms-input-placeholder, ::placeholder { color: #767676; }
@media screen and (max-width:1000px) {
    body, input, textarea, button, select, pre { font-size: 15px; }
}

/* margin */
.mt-0 { margin-top: 0 !important; }
.mt-5 { margin-top: 5px !important; }
.mt-10 { margin-top: 10px !important; }
.mt-15 { margin-top: 15px !important; }
.mt-20 { margin-top: 20px !important; }
.mt-30 { margin-top: 30px !important; }
.ml-0 { margin-left: 0 !important; }
.ml-5 { margin-left: 5px !important; }
.ml-10 { margin-left: 10px !important; }
.ml-15 { margin-left: 15px !important; }
.ml-20 { margin-left: 20px !important; }
.ml-30 { margin-left: 30px !important; }
.mr-0 { margin-right: 0 !important; }
.mr-5 { margin-right: 5px !important; }
.mr-10 { margin-right: 10px !important; }
.mr-15 { margin-right: 15px !important; }
.mr-20 { margin-right: 20px !important; }
.mr-30 { margin-right: 320px !important; }
.mb-0 { margin-bottom: 0 !important; }
.mb-5 { margin-bottom: 5px !important; }
.mb-10 { margin-bottom: 10px !important; }
.mb-15 { margin-bottom: 15px !important; }
.mb-20 { margin-bottom: 20px !important; }
.mb-30 { margin-bottom: 30px !important; }

/* text */
.text-primary { color: #0072e6 !important; }
.text-secondary { color: #797676 !important; }
.text-success { color: #4daa26 !important; }
.text-info { color: #0681ce !important; }
.text-warning { color: #f99f01 !important; }
.text-danger { color: #dd3654 !important; }
.text-left { text-align: left !important; }
.text-center { text-align: center !important; }
.text-right { text-align: right !important; }
.text-bold-5 { font-weight: 500 !important; }
.text-bold-6 { font-weight: 600 !important; }
.requied { color: #d74f4f !important; }
strong { font-weight: 700; }
mark { background-color: #fcf8e3; color: #dd3654; font-weight: 700; }

/* badge */
.badge { padding: 5px 10px; border: 1px solid #D9D9D9; border-radius: 5px; box-sizing: border-box; line-height: 1; text-align: center; font-weight: 500; font-size: .875rem; white-space: nowrap; vertical-align: baseline; display: inline-block; }
.badge-primary { background-color: #edf5fd; border-color: #edf5fd; color: #0072e6; }
.badge-secondary { background-color: #f2f3f4; border-color: #f2f3f4; color: #797676; }
.badge-success { background-color: #f2f9f0; border-color: #f2f9f0; color: #4daa26; }
.badge-info { background-color: #edf9ff; border-color: #edf9ff; color: #00a6fa; }
.badge-warning { background-color: #fff8ed; border-color: #fff8ed; color: #f99f01; }
.badge-danger { background-color: #fef2ef; border-color: #fef2ef; color: #f24421; }
.badge-dark { background-color: #f0f0f0; border-color: #f0f0f0; color: #595959; }
.badge-outline-primary { background-color: #fff; border-color: #0072e6; color: #0072e6; }
.badge-outline-secondary { background-color: #fff; border-color: #727780; color: #727780; }
.badge-outline-success { background-color: #fff; border-color: #4daa26; color: #4daa26; }
.badge-outline-info { background-color: #fff; border-color: #00a6fa; color: #00a6fa; }
.badge-outline-warning { background-color: #fff; border-color: #f99f01; color: #f99f01; }
.badge-outline-danger { background-color: #fff; border-color: #f24421; color: #f24421; }
.badge-outline-dark { background-color: #fff; border-color: #595959; color: #595959; }

/* form */
.form-group { margin-bottom: 15px; }
.form-group.flex { display: flex; }
.form-group.flex .form-control { width: 100%; }
.form-group.flex .form-control + .form-control { margin-left: 7px; }
.form-group.flex .custom-control + .custom-control { margin-left: 15px; }
.form-group .hyphen { margin: 0 5px; display: flex; align-items: center; }

/* input */
.form-control { width: 100%; padding: 10px; background-color: #fff; border: 1px solid #D9D9D9; box-sizing: border-box; border-radius: 7px; font-weight: normal; }
.form-control:focus { border-color: #00823E; transition-duration: 250ms; }
.size-sm { padding: 7px 10px; font-size: .813rem; }
.size-lg { padding: 15px 10px; border-radius: 10px; font-size: 1.125rem; }

/* size */
.w-xs { width: 80px !important; }
.w-sm { width: 100px !important; }
.w-md { width: 150px !important; }
.w-lg { width: 200px !important; }
.w-xl { width: 250px !important; }
.w-full { width: 100% !important; }
.w-2xl { width: 300px !important; }
.w-3xl { width: 350px !important; }
.w-4xl { width: 400px !important; }
.w-5xl { width: 450px !important; }
.w-6xl { width: 500px !important; }
.w-7xl { width: 600px !important; }
.w-full { width: 100% !important; }

/* 체크박스, 라디오버튼 커스텀 */
.custom-control { display: flex; position: relative; }
.custom-control input[type="radio"], .custom-control input[type="checkbox"] { width: 16px; margin: 0 -16px 0 0; opacity: 0; z-index: auto; }
.custom-control label { padding: 0 0 0 22px; line-height: 1.35; cursor: pointer; display: inline-block; position:relative; }
.custom-control label:before, .custom-control label:after { content: ""; display: block; position: absolute; top: 1px; left: 0; }
.custom-control label:before { width: 15px; height: 15px; background-color: #fff; border: 1px solid #b1b1b1; border-radius: 4px; }
.custom-control input:focus + label:before { outline: 2px solid #000; }
.custom-control input[type="radio"] + label:before, .custom-control input[type="radio"] + label:after { border-radius: 50px; }
.custom-control input[type="radio"]:checked + label:after { width: 7px; height: 87px; margin: 5px; background-color: #0072e6; }
.custom-control input[type="checkbox"]:checked + label:after { width: 9px; height: 4px; margin: 4px 3px; border-left: 2px solid #0072e6; border-bottom: 2px solid #0072e6; -ms-transform: rotate(-45deg); -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }
.custom-control input[disabled] + label { color: #8c8c8c; }
.custom-control input[disabled] + label:before { background-color: #e8e8e8; }
.custom-control.check-lg label { padding: 0 0 0 28px; font-size: 1.125rem; }
.custom-control.check-lg label:before { width: 19px; height: 19px; }
.custom-control.check-lg input[type="checkbox"]:checked + label:after { width: 11px; height: 5px; margin: 5px 4px; }

/* 버튼형 라디오 버튼 */
.btn-group { display: flex; position: relative; }
.btn-group .btn-check { clip: rect(0, 0, 0, 0); position: absolute; }
.btn-group .btn-check:focus + label { outline: 2px solid #000; }
.btn-group .btn-check:checked + .btn { border-color: #0072e6; color: #0072e6; z-index: 3; }
.btn-group > .btn:not(:last-child), .btn-group > .btn-group:not(:last-child) > .btn { border-top-right-radius: 0; border-bottom-right-radius: 0; }
.btn-group > .btn:nth-child(n+3), .btn-group > :not(.btn-check) + .btn, .btn-group > .btn-group:not(:first-child) > .btn { border-top-left-radius: 0; border-bottom-left-radius: 0; }
.btn-group > :not(.btn-check:first-child) + .btn { margin-left: -1px; }

/* button */
.btn { padding: 10px 20px; background-color: transparent; border: 1px solid transparent; box-sizing: border-box; color: #fff; border-radius: 7px; text-align: center; font-weight: normal; line-height: 1.4; display: inline-block; cursor: pointer; }
.btn:hover { text-decoration: none; transition-duration: 250ms; }
.btn-sm { padding: 6px 13px 4px 13px; border-radius: 7px; font-size: .875rem; }
.btn-lg { padding: 15px 20px; border-radius: 10px; font-size: 1.125rem; }
.btn-block { width: 100%; display: block; }
.btn-primary { background-color: #0072e6; border-color: #0072e6; }
.btn-primary:hover { background-color: #0066ce; border-color: #0066ce; }
.btn-secondary { background-color: #727780; border-color: #727780; }
.btn-secondary:hover { background-color: #5b5f66; border-color: #5b5f66; }
.btn-success { background-color: #4daa26; border-color: #4daa26; }
.btn-success:hover { background-color: #459922; border-color: #459922; }
.btn-info { background-color: #00a6fa; border-color: #00a6fa; }
.btn-info:hover { background-color: #0095e1; border-color: #0095e1; }
.btn-warning { background-color: #f99f01; border-color: #f99f01; }
.btn-warning:hover { background-color: #e08f01; border-color: #e08f01; }
.btn-danger { background-color: #f24421; border-color: #f24421; }
.btn-danger:hover { background-color: #d93d1e; border-color: #d93d1e; }
.btn-light { background-color: #fff; border-color: #D9D9D9; color: #000; }
.btn-light:hover { background-color: #FBFBFB; border-color: #aeaeae; }
.btn-dark { background-color: #595959; border-color: #595959; }
.btn-dark:hover { background-color: #474747; border-color: #474747; }

.btn-outline-primary { background-color: #fff; border-color: #0072e6; color: #0072e6; }
.btn-outline-primary:hover { background-color: #edf5fd; border-color: #0066ce; color: #0066ce; }
.btn-outline-secondary { background-color: #fff; border-color: #727780; color: #727780; }
.btn-outline-secondary:hover { background-color: #f2f3f4; border-color: #5b5f66; color: #5b5f66; }
.btn-outline-success { background-color: #fff; border-color: #4daa26; color: #4daa26; }
.btn-outline-success:hover { background-color: #f2f9f0; border-color: #459922; color: #459922; }
.btn-outline-info { background-color: #fff; border-color: #00a6fa; color: #00a6fa; }
.btn-outline-info:hover { background-color: #edf9ff; border-color: #0567a5; color: #0567a5; }
.btn-outline-warning { background-color: #fff; border-color: #f99f01; color: #f99f01; }
.btn-outline-warning:hover { background-color: #fff8ed; border-color: #e08f01; color: #e08f01; }
.btn-outline-danger { background-color: #fff; border-color: #f24421; color: #f24421; }
.btn-outline-danger:hover { background-color: #fef2ef; border-color: #d93d1e; color: #d93d1e; }
.btn-outline-dark { background-color: #fff; border-color: #595959; color: #595959; }
.btn-outline-dark:hover { background-color: #f0f0f0; border-color: #474747; color: #474747; }

/* 버튼 아이콘 */
.icon { width: 15px; height: 15px; display: inline-block; position: relative; top: 1px; }
.icon span { clip-path: inset(50%); }
.btn-lg .icon { width: 18px; height: 18px; margin-left: 5px; top: 2px; }
.i-down { margin-left: 5px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-download'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'%3E%3C/path%3E%3Cpolyline points='7 10 12 15 17 10'%3E%3C/polyline%3E%3Cline x1='12' y1='15' x2='12' y2='3'%3E%3C/line%3E%3C/svg%3E"); background-size: cover; background-repeat: no-repeat; }
.i-down-b { margin-right: 4px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%230072e6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-download'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'%3E%3C/path%3E%3Cpolyline points='7 10 12 15 17 10'%3E%3C/polyline%3E%3Cline x1='12' y1='15' x2='12' y2='3'%3E%3C/line%3E%3C/svg%3E"); background-size: cover; background-repeat: no-repeat; top: -1px; }
.i-phone { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23004184' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' class='feather feather-phone'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'%3E%3C/path%3E%3C/svg%3E"); background-size: cover; background-repeat: no-repeat; }
.i-headset { margin-right: 5px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%230072e6' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' class='feather feather-headphones'%3E%3Cpath d='M3 18v-6a9 9 0 0 1 18 0v6'%3E%3C/path%3E%3Cpath d='M21 19a2 2 0 0 1-2 2h-1a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2h3zM3 19a2 2 0 0 0 2 2h1a2 2 0 0 0 2-2v-3a2 2 0 0 0-2-2H3z'%3E%3C/path%3E%3C/svg%3E"); background-size: cover; background-repeat: no-repeat; }

.icon-down:after { width: 15px; height: 15px; margin-left: 5px; content: ""; background: url("../images/common/base_sprite.png") no-repeat 0 0; background-position: -60px -123px; display: inline-block; }
.btn-sm.icon-down:after { width: 14px; height: 14px; margin-left: 5px; content: ""; background: url("../images/common/base_sprite.png") no-repeat 0 0; background-size: 463px auto; background-position: -56px -114px; display: inline-block; position: relative; top: 1px; }
.btn-plus, .btn-minus { width: 30px !important; height: 31px; position: relative; }
.btn-plus:before, .btn-plus:after, .btn-minus:before { content: ""; background-color: #fff; display: inline-block; }
.btn-plus:before { width: 2px; height: 14px; position: relative; top: 1px; }
.btn-plus:after { width: 14px; height: 2px; margin-top: -1px; position: absolute; top: 50%; left: 7px; }
.btn-minus:before { width: 13px; height: 2px; position: relative; top: -5px; left: -5px; }

/* 알럿 */
.alert { margin-bottom: 15px; padding: 15px; border: 1px solid transparent; border-radius: 13px; position: relative; }
.alert:before { width: 20px; height: 20px; content: ""; background-size: auto 20px; display: inline-block; position: absolute; top: 15px; left: 15px; }
.alert-success { padding-left: 40px; background-color: #DBEEE3; border-left: 7px solid #00B952; border-color: #00B952; color: #035E2C; }
.alert-success:before { background-image: url("../images/common/alert_icon.svg"); background-position: 0 0; }
.alert-info { padding-left: 40px; background-color: #E3F3FF; border-left: 7px solid #55B0F2; border-color: #55B0F2; color: #1C5B88; }
.alert-info:before { background-image: url("../images/common/alert_icon.svg"); background-position: -23px 0; }
.alert-warning { padding-left: 40px; background-color: #FEF8E5; border-left: 7px solid #FFB400; border-color: #FFB400; color: #9E6F01; }
.alert-warning:before { background-image: url("../images/common/alert_icon.svg"); background-position: -47px 0; }
.alert-danger { padding-left: 40px; background-color: #FEEAEA; border-left: 7px solid #EB4F4D; border-color: #EB4F4D; color: #A42927; }
.alert-danger:before { background-image: url("../images/common/alert_icon.svg"); background-position: -69px 0; }

/* 목록 스타일 */
.list-type { padding-left: 11px; }
.list-type li { position: relative; }
.list-type li + li { margin-top: 4px; }
.list-type li:has(strong) { margin-top: 7px; }
.list-type > li ul { margin: 0 0 15px 13px; padding-left: 0; }
.list-type > li ul > li { margin-top: 3px; }
.list-type.dot > li:before { width: 4px; height: 4px; content: ""; background-color: #0072e6; border-radius: 10px; display: block; position: absolute; top: 9px; left: -10px; }
.list-type.decimal { padding-left: 20px; list-style-type: decimal; list-style-position: outside; }
.list-type.decimal > li > ul { padding-top: 1px; }
.list-type.ganada > li { padding-left: 8px; position: relative; }
.list-type.ganada > li > i { font-style: normal; position: absolute; left: -15px; }
.list-type.hyphen > li:before { width: 6px; height: 1px; content: ""; background-color: #000; display: block; position: absolute; top: 9px; left: -11px; }
.list-type.hyphen > li > ul { padding-top: .2rem; }

/* 요소 하단 버튼 그룹 */
.action-btn-group { display: flex; justify-content: center; }
.action-btn-group :is(.center, .left, .right) { display: flex; }
.action-btn-group .btn + .btn { margin-left: .5rem; }
.action-btn-group .left { margin-right: auto; }
.action-btn-group .right { margin-left: auto; }
.action-btn-group .full { width: 100%; display: flex; }
.action-btn-group .full .btn { width: 100%; }
form + .action-btn-group { margin-top: 10px; }

/* 테이블 상단 컨텐츠 */
.table-utility { margin-bottom: 15px; display: flex; align-items: center; }
.table-utility .left { margin-right: auto; }
.table-utility .right { margin-left: auto; }
.table-utility .txt span { color: #0072e6; font-weight: 500; }
.table-utility .count span { margin-right: 2px; }
.table-utility .btn { width: auto; }

/* 테이블 (본문용) */
.table { width: 100%; margin: 20px 0; border-collapse: collapse; border-spacing: 0; box-sizing: border-box; position: relative; }
.table th, .table td { padding: 8px 10px; border-bottom-width: 1px; border-left-width: 1px; border-right-width: 1px; border-width: 1px; border-style: solid; border-color: #dedede; text-align: center; line-height: 1.45; word-wrap: break-word; word-break: keep-all; vertical-align: middle; }
.table:before { width: 100%; height: 1px; content: ""; background-color: #000; display: block; position: absolute; left: 0; top: 0; }
.table th:first-child, .table td:first-child { border-left: none; }
.table th:last-child, .table td:last-child { border-right: none; }
.table thead th { padding: 8px 10px; border-bottom: 0; font-weight: 500; }
.table tbody th { font-weight: normal; }
.table tbody td * { vertical-align: middle; }
.col-table thead th { padding: 8px 10px; background-color: #f6f6f6; border-bottom: 0; font-weight: 500; }
.row-table tbody th { background-color: #f6f6f6; font-weight: 500; }
.table-scroll .table { margin: 0; }
.table-scroll + * { margin-top: 10px; }
.table .list-type { margin-top: 0; margin-bottom: 3px; }
.table .list-type li + li { margin-top: 2px; }
.table .list-type > li ul > li { margin-top: 0; }
.table .mini-circle { width: 10px; height: 10px; border: 3px solid #4daa26; border-radius: 50px; display: inline-block; }
.table .mini-circle span { clip-path: inset(50%); }
.table .mini-x { width: 10px; height: 10px; display: inline-block; position: relative; }
.table .mini-x:before, .table .mini-x:after { width: 15px; height: 3px; content: ""; background-color: #dd3654; position: absolute; top: 3px; right: -3px; }
.table .mini-x:before { transform: rotate(-135deg); -webkit-transform: rotate(-135deg); -moz-transform: rotate(-135deg); -o-transform: rotate(-135deg); -ms-transform: rotate(-135deg); }
.table .mini-x:after { transform: rotate(135deg); -webkit-transform: rotate(135deg); -moz-transform: rotate(135deg); -o-transform: rotate(135deg); -ms-transform: rotate(135deg); }
.table .mini-x span { clip-path: inset(50%); }

/* 데이터 테이블 */
.data-table { margin: 0; }
.data-table thead th { padding: 8px 10px; background-color: #f7f7f7; font-weight: 500; }
.data-table tbody td { padding: 8px 10px; }
.data-table .none { width: 100%; padding: 8rem 0; color: #767676; font-size: 1.125rem; text-align: center; }
.data-table th a, .data-table td a:not(.btn) { color: #000; }
.data-table th a:hover, .data-table td a:not(.btn):hover { color: #0072e6; }
.data-table td .icon-link { width: 15px; height: 15px; margin-left: 5px; content: ""; background: url("../images/common/base_sprite.png") no-repeat 0 0; background-position: -20px -123px; display: inline-block; position: relative; top: -2px; }
.data-table td .icon-print { width: 15px; height: 15px; margin-left: 5px; content: ""; background: url("../images/common/base_sprite.png") no-repeat 0 0; background-position: -40px -123px; display: inline-block; position: relative; top: -2px; }
.data-table + .pagination { margin-top: 30px; }

/* 상세 테이블 */
.detail-table tbody th { padding: 13px 13px; background-color: #f7f7f7; font-weight: 500; }
.detail-table tbody td { padding: 13px 13px; }
.detail-table td a { color: #000; }
.detail-table td a:hover { color: #0072e6; }

/* 게시판 상단 검색 */
.post-search fieldset { display: flex; align-items: center; }
.post-search fieldset select { width: 100px; margin-right: 7px; }
.post-search .wrap { position: relative; }
.post-search .wrap .form-control { padding-right: 41px; }
.post-search .wrap .btn { width: 41px; height: 41px; padding: 0; display: flex; align-items: center; justify-content: center; position: absolute; top: 0; right: 0; }
.post-search .wrap .btn:before { width: 21px; height: 21px; content: ""; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%230072e6' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' class='feather feather-search'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E"); background-size: cover; display: block; position: relative; top: -1px; }
.post-search .wrap .btn:hover:before { color: #049BA2; }
.post-search .wrap .btn span { width: 1px; height: 1px; line-height: 1px; text-indent: -9999em; overflow: hidden; position: absolute; top: -9999em; left: -9999em; }

/* 게시판 목록 */
.board-list { margin: 0 0 1rem 0; }
.board-list .num { width: 85px; }
.board-list .subject { width: auto; }
.board-list .writer { width: 100px; }
.board-list .date { width: 200px; }
.board-list .counter { width: 100px; }
.board-list th { padding: 15px 13px; background-color: #f6f9fb; border-left-width: 0; border-right-width: 0; }
.board-list td { padding: 15px 13px; border-left-width: 0; border-right-width: 0; }
.board-list .none { width: 100%; padding: 8rem 0; color: #767676; font-size: 1.125rem; text-align: center; }
.board-list .fixed { background-color: #fdfdf9; }
.board-list .fixed .subject a strong { color: #0072e6; }
.board-list .fixed .num .badge { background-color: transparent; border: 1px solid #0072e6; color: #0072e6; }
.board-list td.subject { text-align: left; }
.board-list .subject a { display: flex; }
.board-list .subject a strong { height: 20px; color: #000; font-weight: normal; line-height: 1.3; white-space: normal; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; }
.board-list .subject a strong:hover { text-decoration: underline !important; }
.board-list .subject a em { margin-left: 5px; font-size: 13px; color: rgba(0,0,0,.3); font-style: normal; display: inline-block; }
.board-list .subject .new { width: 18px; height: 18px; margin-left: 5px; display: inline-block; position: relative; }
.board-list .subject .new:before { width: 18px; height: 18px; content: ""; background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3Csvg width='800px' height='800px' viewBox='0 0 64 64' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' aria-hidden='true' role='img' class='iconify iconify--emojione-monotone' preserveAspectRatio='xMidYMid meet'%3E%3Cpath d='M32 2C15.432 2 2 15.432 2 32s13.432 30 30 30s30-13.432 30-30S48.568 2 32 2zm11.762 44.508h-6.061L25.889 25.92v20.588h-5.65V17.492h6.357l11.518 20.231V17.492h5.648v29.016z' fill='%23FFC107'%3E%3C/path%3E%3C/svg%3E"); background-size: cover; display: inline-block; }
.board-list .subject .new span, .board-list .subject .file span { width: 1px; height: 1px; line-height: 1px; text-indent: -9999em; overflow: hidden; position: absolute; top: -9999em; left: -9999em; }
.board-list .subject .file { width: 14px; height: 14px; margin-left: 5px; display: inline-block; position: relative; top: -1px; }
.board-list .subject .file:before { width: 14px; height: 14px; content: ""; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%237d7d7d' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' class='feather feather-link'%3E%3Cpath d='M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71'%3E%3C/path%3E%3Cpath d='M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71'%3E%3C/path%3E%3C/svg%3E"); background-size: cover; display: inline-block; }
.board-list + .pagination { margin-top: 2rem; }

/* 페이지넘버 */
.pagination { margin-bottom: .5rem; display: flex; align-items: center; justify-content: center; }
.pagination ul { margin: 0; display: flex; }
.pagination ul li { vertical-align: middle; display: inline-block; }
.pagination ul li a { min-width: 32px; height: 32px; padding: 0 10px; border-radius: .4rem; box-sizing: border-box; color: #444444; text-decoration: none; display: flex; align-items: center; justify-content: center; position: relative; }
.pagination ul li a span { position: relative; bottom: -1px; }
.pagination ul li.first, .pagination ul li.prev { margin-right: 6px; }
.pagination ul li.next, .pagination ul li.last { margin-left: 6px; }
.pagination ul li.first a, .pagination ul li.prev a, .pagination ul li.next a, .pagination ul li.last a { width: 32px; height: 32px; background-size: 23px; background-position: center; background-repeat: no-repeat; border: 1px solid #D9D9D9; position: relative; }
.pagination ul li.first a, .pagination ul li.last a { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%237d7d7d' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' class='feather feather-chevrons-left'%3E%3Cpolyline points='11 17 6 12 11 7'%3E%3C/polyline%3E%3Cpolyline points='18 17 13 12 18 7'%3E%3C/polyline%3E%3C/svg%3E"); }
.pagination ul li.prev a, .pagination ul li.next a { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%237d7d7d' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' class='feather feather-chevron-left'%3E%3Cpolyline points='15 18 9 12 15 6'%3E%3C/polyline%3E%3C/svg%3E"); }
.pagination ul li.first a:hover, .pagination ul li.prev a:hover, .pagination ul li.next a:hover, .pagination ul li.last a:hover { background-color: #F6F7F8; }
.pagination .active > a, .pagination .active > a:hover, .pagination .active > a:focus { background-color: #0072e6; color: #fff; text-decoration: none; }
.pagination ul li a:hover, .pagination li a:focus { color: #0072e6; text-decoration: underline; }
.pagination ul li.next a, .pagination ul li.last a { transform: rotate(180deg); background-position: 3px center; }
.pagination ul li.disabled a { opacity: .6; cursor: default; }
.pagination ul li.disabled a:hover { background-color: #fff; }
.pagination .m-num { display: none; }
.pagination .m-num .page-mark { padding: 6px 15px; line-height: 1.4; text-decoration: none; vertical-align: top; position: relative; }
.pagination .m-num .page-mark span { color: #0072e6; font-weight: 500; cursor: default; }
.pagination .m-num .page-mark span:after { content: "/"; padding: 0 7px; color: #bbb; }

/* 게시판 읽기 */
.board-view { margin: 0 0 30px 0; border-top: 1px solid #3c3c3c; border-bottom: 1px solid #3c3c3c; }
.board-view .head { padding: 25px 15px; border-bottom: 1px solid #dedede; }
.board-view .head .subject { font-size: 1.75rem; font-weight: 500; letter-spacing: -.3px; line-height: 1.35; text-align: center; display: block; }
.board-view .head .info { margin: 10px 0 0 0; padding: 0; text-align: center; }
.board-view .head .info li { margin: 0; padding: 0; color: #767676; font-size: .938rem; display: inline-block; }
.board-view .head .info li strong { margin-right: 8px; font-weight: normal; }
.board-view .head .info li:after { width: 1px; height: 13px; margin: 0 9px 0 14px; content: ""; background-color: #D9D9D9; display: inline-block; position: relative; top: 0; }
.board-view .head .info li:last-child:after { display: none; }
.board-view .content { min-height: 200px; padding: 30px 15px; line-height: 1.6; }
.board-view .content p span{font-size:16px !important;}
.board-view .file { padding: 15px; border-top: 1px solid #dedede; }
.board-view .file .tit { margin-bottom: .7rem; color: #767676; }
.board-view .file ul { margin: 0; }
.board-view .file ul li { padding-left: 20px; line-height: 1.35; text-align: left; position: relative; }
.board-view .file ul li + li { margin: 5px 0 0 0; }
.board-view .file ul li:before { width: 14px; height: 14px; content: ""; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%237d7d7d' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' class='feather feather-link'%3E%3Cpath d='M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71'%3E%3C/path%3E%3Cpath d='M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71'%3E%3C/path%3E%3C/svg%3E"); background-size: cover; display: inline-block; position: absolute; top: 4px; left: 0; }
.board-view .file ul li a { color: #000; }
.board-view .file ul li a:hover { color: #0072e6; }

/* 이전글, 다음글 */
.board-nextpost { width: 100%; margin: 30px 0; padding: 0; border-top: 1px solid #767676; border-bottom: 1px solid #767676; }
.board-nextpost li { padding: 14px 0 12px 0; border-bottom: 1px solid #dedede; line-height: 1.3; display: flex; }
.board-nextpost li:last-child { border-bottom: none; }
.board-nextpost li strong { width: 100px; color: #767676; text-align: center; font-weight: normal; }
.board-nextpost li a { width: 100%; height: 20px; padding: 0 15px; color: #000; font-weight: normal; white-space: normal; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; }

/* 게시글 작성 */
.board-write { margin: 0 0 30px 0; }
.board-write .table { margin: 0; }
.board-write .table th { background-color: #f6f9fb; }
.board-write .subject { display: flex; align-items: center; }
.board-write .subject .custom-control { margin-left: 15px; }
.file-upload .input-file { display: flex; position: relative; }
.file-upload .input-file .file-route { width: 100%; padding: 10px; background-color: #fff; border: 1px solid #D9D9D9; border-right: none; box-sizing: border-box; border-radius: .4rem 0 0 .4rem; font-weight: normal; }
.file-upload .input-file .file-label { padding: 10px 20px; background-color: #fff; border: 1px solid #595959; box-sizing: border-box; color: #595959; border-radius: 0 .4rem .4rem 0; text-align: center; font-weight: normal; display: inline-block; cursor: pointer; }
.file-upload .input-file [type="file"] { width: 1px; height: 1px; margin: -1px; padding: 0; border: 0; clip-path: inset(50%); overflow: hidden; position: absolute; }
.file-upload .input-file .file-focus { outline: 2px solid #000; }
.file-upload .upload-list { margin-top: 10px; }
.file-upload .upload-list li { line-height: 1.35; text-align: left; position: relative; }
.file-upload .upload-list li + li { margin-top: 3px; }
.file-upload .upload-list li a { color: #000; display: inline-block; }
.file-upload .upload-list li a:hover { color: #0072e6; }
.file-upload .upload-list li .delete { width: 16px; height: 16px; margin: 0 0 0 5px; display: inline-block; position: relative; }
.file-upload .upload-list li .delete:before { width: 16px; height: 16px; content: ""; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23f24421' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' class='feather feather-x-circle'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='15' y1='9' x2='9' y2='15'%3E%3C/line%3E%3Cline x1='9' y1='9' x2='15' y2='15'%3E%3C/line%3E%3C/svg%3E"); background-size: cover; display: inline-block; position: relative; }
.file-upload .upload-list li .delete span { width: 1px; height: 1px; line-height: 1px; text-indent: -9999em; overflow: hidden; position: absolute; top: -9999em; left: -9999em; }

/* 포토갤러리 */
.gallery-list { margin: 20px 0 40px 0; gap: 30px; display: flex; flex-wrap: wrap; }
.gallery-list .none { width: 100%; padding: 8rem 0; color: #bbbbbb; font-size: 16px; text-align: center; }
.gallery-list > a { width: calc(100% / 3 - 20px); }
.gallery-list > a:hover { text-decoration: none; }
.gallery-list > a:hover .thum img { transition-duration: 250ms; transform: scale(1.1); }
.gallery-list > a:hover .subject { text-decoration: underline; }
.gallery-list > a:hover .date { text-decoration: none; }
.gallery-list > a .thum { height: 200px; margin: 0 0 20px 0; background-color: #fff; border: 1px solid #E7E7E7; border-radius: 15px; overflow: hidden; display: block; position: relative; }
.gallery-list > a .thum img { width: 100%; height: 100%; object-fit: cover; position: absolute; top: 0; left: 0; }
.gallery-list > a ul { display: flex; flex-direction: column; }
.gallery-list > a ul .subject { height: 24px; margin-bottom: 15px; font-size: 19px; color: #1d1d1d; font-weight: 700; line-height: 1.3; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; word-break: break-all; }
.gallery-list > a ul .date { color: #8e8e8e; display: inline-block; }

/* contents text */
h4, .h4 { margin: 35px 0 10px 0; padding-left: 18px; font-size: 19px; font-weight: 700; line-height: 27px; position: relative; }
h4:before, .h4:before { width: 13px; height: 13px; content: ""; background-image: url("../images/common/h5.png"); background-size: cover; display: inline-block; position: absolute; top: 7px; left: 0; }
h5, .h5 { margin: 25px 0 8px 0; padding-left: 11px; font-size: 17px; font-weight: 700; line-height: 27px; position: relative; }
h5:before, .h5:before { width: 4px; height: 14px; content: ""; background-color: #0072e6; display: inline-block; position: absolute; top: 6px; left: 0; }
h4 .list-type { margin-top: 5px; }
h4 .list-type.dot > li:before { top: 10px; }
h4 .list-type > li ul { margin-bottom: 0; }
.contents .para + * { margin-top: 35px; }
.contents .para :is(h1, h2, h3, h4) + * { margin-left: 18px; }
.cont-tit { margin-bottom: 40px; font-size: 30px; font-weight: 700; text-align: center; display: block; }

/* tabs */
.tabs .tab-head { border-bottom: 1px solid #ddd; }
.tabs .tab-head.tab-fill { flex: 1; }
.tabs .tab-head > ul { display: flex; justify-content: center; }
.tabs .tab-head .selected-tab { display: none; }
.tabs .tab-btn { padding: 12px 25px; background-color: transparent; border: none; border-bottom: 3px solid transparent; box-sizing: border-box; font-size: 20px; font-weight: 700; color: #333; text-align: center; display: block; cursor: pointer; transition: all 0.3s ease-in-out; }
.tabs .tab-btn:hover { text-decoration: none; }
.tabs .tab-btn:hover { color: #0072e6; }
.tabs .tab-btn[aria-selected="true"] { border-bottom: 3px solid #0072e6; color: #0072e6; }
.tabs .tab-body { padding: 40px 0 0 0; display: block; }
.tabs .hidden { display: none; }

.inner-tabs > .tab-head { border-bottom: none; }
.inner-tabs > .tab-head .btn { border-radius: 50px; }
.inner-tabs > .tab-head .btn.active { background-color: #0072e6; color: #fff; }
.inner-tabs > .tab-head > ul { display: flex; justify-content: center; gap: 20px; }
.inner-tabs > .tab-body { padding: 40px 0 0 0; display: block; }

/* modal */
.modal { width: 100%; height: 100%; background-color: rgba(0,0,0,.8); overflow: auto; display: none; position: fixed; left: 0; top: 0; z-index: 900; }
.modal-lg { max-width: 800px !important; }
.modal-xl { max-width: 1000px !important; }
.modal .modal-sandbox { width: 100%; height: 100%; background-color: transparent; position: fixed; top: 0; left: 0; }
.modal .modal-content { width: 90%; max-width: 500px; margin: 100px auto; position: relative; animation-name: modalbox; animation-duration: .4s; animation-timing-function: cubic-bezier(0,0,.3,1.6); }
.modal .modal-content.w800{max-width:800px;}
.modal .modal-head { padding: 13px 20px; background-color: #fff; border-bottom: 1px solid #D9D9D9; border-radius: 15px 15px 0 0; display: flex; position: relative; }
.modal .modal-head .tit { margin-right: auto; font-size: 1.125rem; font-weight: 500; }
.modal .modal-head .btn-close { width: 46px; height: 46px; cursor: pointer; display: inline-block; position: absolute; top: 0; right: 0; }
.modal .modal-head .btn-close span { display: none; }
.modal .modal-head .btn-close:before, .modal .modal-head .btn-close:after { width: 20px; height: 1px; content: ""; background-color: rgba(0,0,0,.6); position: absolute; top: 24px; right: 13px; }
.modal .modal-head .btn-close:before { transform: rotate(-135deg); -webkit-transform: rotate(-135deg); -moz-transform: rotate(-135deg); -o-transform: rotate(-135deg); -ms-transform: rotate(-135deg); }
.modal .modal-head .btn-close:after { transform: rotate(135deg); -webkit-transform: rotate(135deg); -moz-transform: rotate(135deg); -o-transform: rotate(135deg); -ms-transform: rotate(135deg); }
.modal .modal-body { min-height: 100px; padding: 25px; background-color: #fff; border-radius: 0 0 15px 15px; }
.modal .modal-body .action-btn-group { margin-top: 25px; }
@-webkit-keyframes modalbox {
  0% { top: -250px; opacity: 0; }
  100% { top: 0; opacity: 1; }
}
@keyframes modalbox {
  0% { top: -250px; opacity: 0; }
  100% { top: 0; opacity: 1; }
}

.img-respon { display: flex; justify-content: center; }

@media screen and (max-width:1200px) {
	.container { max-width: 1000px; }
}

@media screen and (max-width:1000px) {
	.tabs > .tab-head { border-bottom-color: transparent; flex-direction: column; position: relative; }
	.tabs .tab-btn { width: 100%; padding: 9px 15px; font-size: 17px; display: none; }
	.tabs .tab-btn[aria-selected="true"] { border-bottom-color: transparent; }
	.tabs .active .tab-btn { display: block; }
	.tabs > .tab-head .selected-tab { padding: 12px 20px 12px 10px; background-color: #fff; border: 1px solid #ddd; border-radius: 10px; box-sizing: border-box; font-size: 18px; text-align: center; font-weight: 500; display: block; cursor: pointer; position: relative; z-index: 305; }
	.tabs > .tab-head .selected-tab:after { width: 17px; height: 17px; content: ""; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23969696' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' class='feather feather-chevron-down'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E"); background-size: cover; display: inline-block; transition: transform 0.3s ease; position: absolute; right: 9px; }
	.tabs > .tab-head.active .selected-tab:after { transform: rotate(180deg); }
	.tabs > .tab-head.active > ul { width: 100%; max-height: 170px; margin-top: 15px; background-color: #fff; border: 1px solid #ddd; border-radius: 10px; box-shadow: 0px 0px 39.2437px rgb(0 0 0 / 10%); overflow-y: auto; box-sizing: border-box; position: absolute; flex-direction: column; justify-content: flex-start; top: 45px; left: 50%; transform: translate(-50%, 0); z-index: 300; }
	.tabs .tab-body { padding: 20px 0 0 0; }
    .table-scroll { overflow-x: auto; }
    .table-scroll .table { width: 900px; }
    .board-list .date { width: 160px; }
    .board-list .num:before { margin-right: 10px; content: "번호"; vertical-align: middle; }
    .board-list .subject:before { margin-right: 10px; content: "제목"; position: relative; top: -1px; }
    .board-list .writer:before { margin-right: 10px; content: "작성자"; }
    .board-list .date:before { margin-right: 10px; content: "작성일"; }
    .board-list .counter:before { margin-right: 10px; content: "조회수"; }
    .board-list .date:after, .board-list .counter:after { width: 1px; height: 13px; content: ""; background-color: #D9D9D9; display: inline-block; position: relative; top: 3px; right: -14px; }
    .board-list td:last-child:after, .board-list thead { display: none; }
    .board-list tbody tr { padding: 13px 10px; border-bottom: 1px solid #dedede; display: flex; flex-wrap: wrap; }
    .board-list tbody td { border-top-width: 0; border-bottom-width: 0; }
    .board-list td.num { width: 100%; margin-bottom: 6px; padding: 0; text-align: left; }
    .board-list td.subject { width: 100%; margin-bottom: 6px; padding: 0; display: flex; }
    .board-list .subject a strong { font-size: 1rem; font-weight: 500; }
    .board-list .num:before, .board-list .subject:before, .board-list .date:before, .board-list .counter:before { padding: 0; color: #767676; font-size: .875rem; }
    .board-list .date, .board-list .counter { padding: 0; font-size: .875rem; display: flex; }
    .board-view .head { padding: 20px 10px; }
    .board-view .head .subject { font-size: 1.5rem; }
    .board-view .head .info li { font-size: .875rem; }
    .board-view .head .info li:after { top: 1px; }
    .board-view .content { padding: 25px 10px; }
    .board-view .file { padding: 15px 10px; }
    .board-nextpost li strong { max-width: 65px; }
    .board-nextpost li a { padding: 0 10px; }
    .gallery-list > a { width: calc(100% / 2 - 15px); }
    .pagination .pc-num { display: none; }
    .pagination .m-num { display: block; }
    .action-btn-group + .pagination { margin-top: 20px; }
    .board-write .table, .board-write .table tbody, .board-write .table tr { display: block; }
    .board-write .table th, .board-write .table td { width: 100%; padding: 11px 0; display: block; }
    .board-write .table th { padding: 11px 0 0 0; background-color: transparent; border-right-width: 0; border-bottom-width: 0; text-align: left; }
    .board-write .table td { border-left-width: 0; border-top-width: 0; }
    .data-table colgroup col { width: 100% !important; }
    .data-table thead th { display: none; }
    .data-table tbody tr { padding: 12px 0; border-bottom: 1px solid #dedede; display: block; }
    .data-table tbody th, .data-table tbody td { width: 100%; padding: 4px 10px; box-sizing: border-box; border-top-width: 0; border-bottom-width: 0;  border-left-width: 0; border-right-width: 0; text-align: left; display: block; }
    .data-table tbody th:before, .data-table tbody td:before { margin-right: 15px; content: attr(data-title); color: #767676; display: inline-block; }
    .detail-table colgroup col { width: 100% !important; }
    .detail-table tr { display: flex; flex-direction: column; }
    .detail-table tbody th, .detail-table tbody td { width: 100%; box-sizing: border-box; border-top-width: 0; border-left-width: 0; border-right-width: 0; }
    .detail-table tbody th { margin-bottom: 6px; padding: 13px 10px 0 10px; background-color: #fff; border-bottom-width: 0; color: #00813e; text-align: left; }
    .detail-table tbody td { padding: 0 10px 13px 10px; text-align: left; }
}

@media screen and (max-width:768px) {
	.container { max-width: 640px; }
    h4, .h4 { font-size: 1.25rem; }
    h5, .h5 { font-size: 1.125rem; }
    h6, .h6 { font-size: .938rem; }
    .form-control { padding: 12px 10px; }
    .btn:not(.btn-sm, .btn-lg) { padding: 12px 18px; }
    .table-utility .left + .right { margin-top: 5px; }
    .gallery-list > a { width: 100%; }
    .action-btn-group .center, .action-btn-group .left, .action-btn-group .right { width: 100%; flex-direction: column; }
    .action-btn-group .btn { width: 100% !important; }
    .action-btn-group .btn + .btn { margin-top: 10px; margin-left: 0; }   
    .post-search .wrap .btn { width: 44px; height: 44px; } 
    .faq-list .question { padding: 20px 40px 20px 55px; }
    .faq-list .question:before { width: 30px; height: 30px; font-size: 1.125rem; top: calc(50% - 15px); left: 13px; }
    .faq-list .question:after { right: 13px; }
    .faq-list .answer { padding: 10px 20px 20px 55px; }
    .faq-list .answer:before { top: 6px; left: 13px; }
    .img-respon img { width: 100%; }
}
