@charset "utf-8";
/* ─────────── 매뉴얼 CSS (작업시 삭제) ─────────── */
.sub_board .inner{ padding: 100px 0; max-width: 1000px; }
.sub_board .inner > h2{ font-size: 45px; font-weight: 700; color: #111; text-align: center; margin-bottom: 70px; }
/* ─────────── 매뉴얼 CSS (작업시 삭제) ─────────── */


/* 게시판 _ CSS */
select { cursor: pointer; border-radius: 0; -webkit-appearance: none; -moz-appearance: none; appearance: none; }
select::-ms-expand{ display: none; }

/*? 체크박스 */
#gall_allchk{ margin-bottom: 10px; }
.selec_chk { display: none; }
.chk_box {position:relative; }
.chk_box input[type="checkbox"]{ display: none; }
.chk_box input[type="checkbox"] + label { position:relative; font-size: 14px; font-weight: 400; color: #797979; letter-spacing: -0.5px; line-height: 23px; cursor: pointer; }
.chk_box input[type="checkbox"] + label span{ display: inline-block; width: 23px; height: 23px; background: #f8f8f8; border: 1px solid #ddd; border-radius: 0; vertical-align: -6px; margin-right: 5px; }
.chk_box input[type="checkbox"]:checked + label span{ background: url(img/ico_board_check.png) no-repeat center center, #1d7abf; border: 1px solid #1d7abf; }

/*? 관리자 버튼 */
#bo_list #btn_bo_user{ margin-bottom: 30px; }
#bo_v #btn_bo_user{ margin-top: 30px; }
#btn_bo_user{ width: 100%; }
#btn_bo_user ul{ display: flex; align-items: center; justify-content: flex-end; }
#btn_bo_user ul li{ text-align:center; margin-left: 7px;}
#btn_bo_user ul > li > *{ display: inline-block; height: 33px; font-size: 13px; font-weight:500; line-height: 32px; color: #777; border: 1px solid #dedede; padding: 0 12px; background-color: #fff; border-radius: 0; }
#btn_bo_user ul > li > .btn_admin{ color: #1d7abf; border: 1px solid #1d7abf; }

/*? 확인버튼 */
.btn_confirm{ text-align: center; margin-top: 50px; }
.btn_confirm #btn_submit{ display: inline-block; height: 50px; font-size: 17px; font-weight: 500; color: #1d7abf; letter-spacing: -0.5px; line-height: 48px; border: 1px solid #1d7abf; padding: 0 40px; background: #fff; border-radius: 0; transition: all 0.2s ease-in-out; }
.btn_confirm #btn_submit:hover{ color: #fff; background: #1d7abf; }




/*! ─────────── L I S T ─────────── */
#bo_gall{ width: 100%; }
.listBox{ display: flex; flex-wrap: wrap; margin: 0 auto; }
.listBox > li{ position: relative; width: 24%; margin-right: 1.33%; }
.listBox > li:nth-of-type(4n){ margin-right: 0; }
.listBox > li:nth-of-type(n+5){ margin-top: 40px; }
.listBox > li.empty_list{ width: 100%; margin: 0; }
.listBox > li > .gall_chk{ position: absolute; left: 6px; top: 6px; z-index: 20; }
.listBox > li > a{ display: block; text-align: center; }
.listBox > li > a > .imgBox{ position: relative; width: 100%; height: 70px; border: 1px solid #e9e9e9; overflow: hidden; }
.listBox > li > a > .imgBox .no_image{ position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; width: 100%; height: 100%; background: #f8f8f8; }
.listBox > li > a > .imgBox .no_image::before{ width: 90px; height: 18px; background: url(/img/logo2.svg) no-repeat center center; background-size: contain; content: ''; display: block; }
.listBox > li > a > .imgBox img{ width: 100% !important; height: 100% !important; object-fit: contain; }
.listBox > li > a > p{ font-size: 18px; font-weight: 500; color: #111; letter-spacing: -1px; margin-top: 10px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; transition: all 0.2s ease-in-out; }
/* hover */
.listBox > li > a:hover > p{ color: #1a4fa0; }


/*! ─────────── V I E W ─────────── */
#bo_v > #btn_bo_user{ margin-top: 40px; }
#bo_v_con{ width: 100%; text-align: center; }
#bo_v_con .view_image{ display: inline-block; border: 1px solid #dedede; pointer-events: none; }
#bo_v_con .view_image img{ max-width: 100%; }
#bo_v_con p{ font-size: 16px; font-weight: 500; color: #111; letter-spacing: -0.5px; margin-top: 10px; }


/*! ─────────── W R I T E ─────────── */
#bo_w{ position: relative; width: 100%; }
#bo_w form .frmBox ul{ display: flex; flex-wrap: wrap; justify-content: space-between; }
#bo_w form .frmBox ul li{ width: 100%; margin-bottom: 30px; }
#bo_w form .frmBox ul li:last-of-type{ margin-bottom: 0; }
#bo_w form .frmBox ul li .label{ font-size: 18px; font-weight: 500; color: #111; letter-spacing: -0.5px; margin-bottom: 10px; }
#bo_w form .frmBox ul li .label .req{ display: inline-block; width: 5px; height: 5px; background: #1d7abf; border-radius: 50%; vertical-align: 10px; margin-left: 5px; }
#bo_w form .frmBox ul li .label em{ font-size: 14px; font-weight: 400; color: #aaa; font-style: normal; }
#bo_w form .frmBox ul li .frm_input{ width: 100%; height: 55px; font-size: 16px; color: #111; padding: 0 20px; border: 1px solid #ddd; outline: none; border-radius: 0; background: #fff; transition: all 0.2s ease-in-out; }
#bo_w form .frmBox ul li .frm_input::placeholder{ color: #c1c5cc; }
#bo_w form .frmBox ul li .frm_input:focus,
#bo_w form .frmBox ul li .frm_input:focus-visible{ border: 1px solid #1d7abf; }
/* 파일박스 */
#bo_w form .frmBox .fileBox{ width: 100%; height: 55px; display: flex; align-items: center; justify-content: space-between; padding: 0 20px; background: #fff; border: 1px solid #ddd; }
#bo_w form .frmBox .fileBox input[type="file"]{ display: none; }
#bo_w form .frmBox .fileBox label{ display: inline-block; cursor: pointer; }
#bo_w form .frmBox .fileBox .upload-name{ display: inline-block; font-size: 16px; color: #c1c5cc; border: 0; background-color: transparent; -webkit-appearance: none; -moz-appearance: none; appearance: none; }
#bo_w form .frmBox .fileBox + .file_del{ display: block; margin-top: 7px; padding: 0; }




/*! TABLET  */
@media screen and (max-width: 1024px){ 

    /* LIST */
    .listBox > li{ width: 32%; margin-right: 2%; }
    .listBox > li:nth-of-type(4n){ margin-right: 2%; }
    .listBox > li:nth-of-type(3n){ margin-right: 0; }
    .listBox > li:nth-of-type(n+4){ margin-top: 40px; }
    .listBox > li > a > .imgBox{ height: 60px; }
    .listBox > li > a > p{ font-size: 16px; }
}


/*! MOBILE  */
@media screen and (max-width: 767px){ 

    /*? 체크박스 */
    .chk_box input[type="checkbox"] + label span{ width: 20px; height: 20px; vertical-align: -5px; }
    /*? 관리자 버튼 */
    #btn_bo_user{ margin-bottom: 30px; }
    #btn_bo_user ul li{ margin-left: 3px; }
    #btn_bo_user ul > li > *{ height: 30px; font-size: 11px; line-height: 28px; padding: 0 8px; }
    /*? 확인버튼 */
    .btn_confirm{ margin-top: 30px; }
    .btn_confirm #btn_submit{ height: 45px; font-size: 14px; line-height: 43px; padding: 0 35px; transition: all 0s ease; }
    
    /* LIST */
    .listBox > li{ width: 49%; margin-right: 2%; }
    .listBox > li:nth-of-type(3n){ margin-right: 2%; }
    .listBox > li:nth-of-type(2n){ margin-right: 0; }
    .listBox > li:nth-of-type(n+3){ margin-top: 40px; }
    .listBox > li > a > .imgBox{ height: 60px; }
    .listBox > li > a > p{ font-size: 14px; }

    /* WRITE */
    #bo_w form .frmBox ul li{ margin-bottom: 20px; }
    #bo_w form .frmBox ul li .label{ font-size: 17px; }
    #bo_w form .frmBox ul li .label em{ font-size: 13px; }
    #bo_w form .frmBox ul li .frm_input{ height: 50px; font-size: 16px; padding: 0 10px; }
    #bo_w form .frmBox ul li .frm_input::placeholder{ font-size: 15px; }
    #bo_w form .frmBox .fileBox{ height: 50px; padding: 0 10px; }
    #bo_w form .frmBox .fileBox .upload-name{ font-size: 15px; color: #777; opacity: 1; }

}