@charset "utf-8";

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

html { min-width: 320px; min-height: 100%; }
body { margin: 0; min-width: 320px; color: #29374a; font-family: -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", sans-serif; font-size: 14px; line-height: 1.5; -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4, p, figure, dl, dd { margin: 0; }
ul, ol { margin: 0; padding: 0; list-style: none; }
img { max-width: 100%; height: auto; border: 0; vertical-align: middle; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { color: inherit; font: inherit; }
button { cursor: pointer; }
button:disabled { cursor: not-allowed; }
input, select, textarea { max-width: 100%; }
hr { display: none; }
fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
table { border-collapse: collapse; border-spacing: 0; }
label, input, button, select, textarea { vertical-align: middle; }
input[type="checkbox"], input[type="radio"] { width: 16px; height: 16px; accent-color: #4c82b8; }
input[type="text"], input[type="password"], input[type="email"], input[type="number"], input[type="search"], input[type="tel"], select, textarea, .frm_input {
    border: 1px solid #d7e0e7;
    border-radius: 6px;
    background: #fff;
    color: #29374a;
}
input[type="text"], input[type="password"], input[type="email"], input[type="number"], input[type="search"], input[type="tel"], select, .frm_input { min-height: 38px; padding: 0 10px; }
textarea { padding: 9px 10px; line-height: 1.55; resize: vertical; }
input:focus, select:focus, textarea:focus { border-color: #8eabc7; outline: 3px solid rgba(76, 130, 184, .12); }
input[type="file"] { max-width: 100%; }
.frm_input { height: 40px; }
.full_input { width: 100%; }
.half_input { width: 49.5%; }
.tbl_wrap { max-width: 100%; overflow-x: auto; }
.tbl_wrap table { width: 100%; background: #fff; }
.tbl_wrap caption { padding: 10px 0; font-weight: 700; text-align: left; }
.tbl_head01, .tbl_head02 { margin: 0 0 14px; }
.tbl_head01 th, .tbl_head01 td, .tbl_head02 th, .tbl_head02 td { padding: 9px 8px; border-bottom: 1px solid #e8edf1; text-align: left; }
.tbl_head01 thead th, .tbl_head02 thead th { background: #f5f8fa; color: #566477; font-weight: 650; white-space: nowrap; }
.tbl_head01 tbody td, .tbl_head02 tbody td { color: #526174; line-height: 1.5; }
.tbl_head01 tbody tr:hover td, .tbl_head02 tbody tr:hover td { background: #fafcfd; }
.tbl_frm01 { margin: 0 0 18px; }
.tbl_frm01 table { width: 100%; }
.tbl_frm01 th, .tbl_frm01 td { padding: 9px 10px; border-bottom: 1px solid #e8edf1; text-align: left; }
.tbl_frm01 th { width: 150px; background: #f7f9fa; color: #566477; font-weight: 650; }
.tbl_frm01 textarea, .write_div textarea, .form_01 textarea { width: 100%; min-height: 100px; }
.tbl_frm01 .frm_info, .frm_info { display: block; margin-top: 5px; color: #7d8997; font-size: 12px; line-height: 1.55; }
.frm_file { display: block; margin-bottom: 6px; }
.form_01 li { margin-bottom: 10px; }
.empty_table, .empty_list { padding: 26px 12px !important; color: #7d8997; text-align: center; }
.btn_confirm { display: flex; align-items: center; justify-content: flex-end; gap: 7px; margin: 14px 0; }
.btn_submit, .btn_cancel, .btn_close, .btn_frmline, .btn01, .btn02, .btn_b01, .btn_b02, .btn_b03, .btn_b04, .btn_admin {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 0 12px;
    border: 1px solid transparent;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 650;
    line-height: 1.3;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
}
.btn_submit { border-color: #4c82b8; background: #4c82b8; color: #fff; }
.btn_submit:hover { border-color: #3e70a4; background: #3e70a4; }
.btn_cancel, .btn_close, .btn_b03, .btn_b04, .btn01 { border-color: #d8e0e6; background: #fff; color: #59697b; }
.btn_cancel:hover, .btn_close:hover, .btn_b03:hover, .btn_b04:hover, .btn01:hover { background: #f5f8fa; }
.btn_b01 { border-color: transparent; background: transparent; color: #59799a; }
.btn_b02, .btn02 { border-color: #4c82b8; background: #4c82b8; color: #fff; }
.btn_b02:hover, .btn02:hover { border-color: #3e70a4; background: #3e70a4; }
.btn_admin { border-color: #eedde2; background: #fcf7f8; color: #925865; }
.btn_frmline { border-color: #d8e0e6; background: #f7f9fa; color: #4d6176; }
.btn_cke_sc { display: inline-flex; padding: 4px 8px; border: 1px solid #d8e0e6; border-radius: 5px; background: #f7f9fa; color: #53667b; }
.list_01 ul { border-top: 1px solid #e8edf1; }
.list_01 li { padding: 10px 12px; border-bottom: 1px solid #e8edf1; }
.list_01 li:nth-child(odd) { background: #fafcfd; }
.pg_wrap { display: flex; justify-content: center; width: 100%; margin: 16px 0; }
.pg { display: flex; align-items: center; gap: 4px; }
.pg_page, .pg_current { display: inline-grid; min-width: 32px; min-height: 32px; place-items: center; padding: 0 8px; border: 1px solid #dfe6eb; border-radius: 6px; background: #fff; color: #657487; }
.pg_current { border-color: #4c82b8; background: #4c82b8; color: #fff; font-weight: 700; }
.local_desc, .local_desc01, .local_desc02 { margin: 0 0 14px; padding: 10px 12px; border: 1px solid #e3e9ee; border-radius: 7px; background: #f7f9fa; color: #647386; line-height: 1.6; }
.sv_wrap { position: relative; }
.sv_wrap .sv { z-index: 20; display: none; position: absolute; top: 100%; left: 0; min-width: 120px; padding: 5px; border: 1px solid #d8e0e6; border-radius: 6px; background: #fff; box-shadow: 0 7px 18px rgba(35, 54, 74, .12); }
.sv_wrap .sv a { display: block; padding: 6px 8px; color: #536477; font-size: 12px; }
.sv_wrap .sv a:hover { background: #f5f8fa; }
.sv_member { color: #426f9c; }
.sv_on { display: block !important; }
.new_win { position: relative; }
.new_win #win_title { padding: 12px 16px; border-bottom: 1px solid #e5eaee; background: #f7f9fa; color: #29374a; font-size: 17px; font-weight: 700; }
.new_win .new_win_con { padding: 16px; }
.new_win .win_btn { margin: 14px 0; text-align: center; }
.new_win .win_btn .btn_submit, .new_win .win_btn .btn_close { min-width: 80px; }
.new_win .win_ul { display: flex; gap: 5px; padding: 12px 16px; }
.new_win .win_ul a { display: block; padding: 6px 9px; border-radius: 5px; color: #637286; }
.new_win .win_ul .selected { background: #edf3f8; color: #315f92; font-weight: 700; }
#bo_v_con ul { display: block; margin: 1em 0; padding-left: 28px; list-style: disc; }
#bo_v_con ol { display: block; margin: 1em 0; padding-left: 28px; list-style: decimal; }
#bo_v_con li { display: list-item; }
.required { color: #a75e70; font-weight: 700; }

.sound_only,
.msg_sound_only { position: absolute !important; width: 1px !important; height: 1px !important; margin: -1px !important; padding: 0 !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }

#hd_h1 { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; }

:focus-visible { outline: 3px solid rgba(65, 120, 175, .45); outline-offset: 2px; }
