@charset "utf-8";

/*? 체크박스 */
#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; }

/*? 관리자 버튼 */
#btn_bo_user{ width: 100%; margin: 30px 0; }
#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:400; 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-color: #1d7abf; }



/*! ============== L I S T ============== */
.listBox{ display: flex; flex-wrap: wrap; margin: 0 auto;  }
.listBox > li{ position: relative; width: 22%; }
.listBox > li.empty_list{ width: 100%; margin: 0; }
.listBox > li > .gall_chk{ position: absolute; left: 10px; top: 10px; z-index: 20; }
.listBox > li { position: relative; display: block; width: 24%; margin-right: 1.33%; }
.listBox > li .imgBox{ position: relative; width: 100%; max-height: 385px; border: 1px solid #eee; overflow: hidden; }
.listBox > li .imgBox img{ width: 100%; transition: all 0.3s ease-in-out; }
.listBox > li .imgBox a{ position: absolute; right: 10px; bottom: 10px; z-index: 10; display: inline-block; font-size: 14px; font-weight: 500; color: #fff; line-height: 30px; padding: 0 15px; background: #aaa; }
.listBox > li .imgBox .noimg{ position: relative; display: block; width: 100%; height: 100%; background: #f8f8f8; }
.listBox > li .imgBox .noimg::after{ position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); width: 120px; height: 100px; background: url(/img/logo2.svg) no-repeat center center; background-size: contain; content: ''; display: block; }
.listBox > li .txtBox{ margin-top: 15px; text-align: center; }
.listBox > li .txtBox > h3{ font-size: 17px; font-weight: 600; color: #111; letter-spacing: -1px; line-height: 30px; margin-bottom: 20px; transition: all 0.2s ease-in-out; }
.listBox > li .txtBox > .cont{ font-size: 16px; font-weight: 300; color: #111; letter-spacing: -0.5px; line-height: 25px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
/* ? hover */
.listBox > li:hover > .imgBox > img{ transform: scale(1.05); }
.listBox > li:hover > .txtBox > h3{ color: #1d7abf; }


/*! ========== V I E W ========== */
#bo_v > #bo_v_title{ padding-bottom: 40px; }
#bo_v > #bo_v_title > h3{ font-size: 28px; font-weight: 700; color: #111; letter-spacing: -2px; line-height: 40px; }
#bo_v > #bo_v_title > h3 span{ display: inline-block; font-size: 13px; font-weight: 700; color: #fff; letter-spacing: 0; line-height: 34px; background: #111; padding: 0 20px; vertical-align: 5px; margin-right: 5px; }
#bo_v > #bo_v_title > p{ font-size: 14px; font-weight: 400; color: #585858; margin-top: 10px; }
#bo_v > #bo_v_title > p > span{ display: inline-block; margin-right: 30px; }
#bo_v > #bo_v_title > p > span strong{ display: inline-block; margin-right: 10px; }
#bo_v > #bo_v_atc{ border-top: 1px solid #e6e6e6; border-bottom: 1px solid #e6e6e6; }
#bo_v > #bo_v_atc > .bo_v_file{ padding: 20px 0; border-top: 1px solid #e6e6e6; }
#bo_v > #bo_v_atc > .bo_v_file h4{ font-size: 16px; font-weight: 700; color: #111; letter-spacing: -0.5px; margin-bottom: 10px; }
#bo_v > #bo_v_atc > .bo_v_file li{ margin-bottom: 10px; }
#bo_v > #bo_v_atc > .bo_v_file li i{ font-size: 16px; margin-right: 5px; } 
#bo_v > #bo_v_atc > .bo_v_file li a{ display: inline-block; font-size: 14px; font-weight: 500; color: #666; transition: all 0.2s ease-in-out; }
#bo_v > #bo_v_atc > .bo_v_file li a:hover{ color: #1d7abf; }
#bo_v > #bo_v_atc #bo_v_con{ width: 100%; min-height: 300px; font-size: 16px; font-weight: 400; color: #111; letter-spacing: -0.5px; line-height: 28px; padding: 30px 0; }
#bo_v > #bo_v_atc #bo_v_con img{ max-width: 100%; }


/*! ========== W R I T E ========== */
#bo_w{ width: 100%; max-width: 900px; margin: 0 auto; }
#bo_w .formBox{ margin-bottom: 10px; }
#bo_w .formBox select{ background: url(/img/ico_select.png) no-repeat 97% center, #fff; background-size: auto;}
#bo_w .formBox select,
#bo_w .formBox .frm_input{ width: 100%; height: 50px; font-size: 15px; font-weight: 400; color: #111; letter-spacing: -0.5px; padding: 0 20px; border: 1px solid #ececec; border-radius: 0; outline: none; transition: all 0.2s ease-in-out; }
#bo_w .formBox textarea{ width: 100%; height: 200px; font-size: 15px; font-weight: 400; color: #111; letter-spacing: -0.5px; padding: 20px; border: 1px solid #ececec; border-radius: 0; outline: none; resize: none; transition: all 0.2s ease-in-out; }
#bo_w .formBox textarea:focus,
#bo_w .formBox textarea:focus-visible,
#bo_w .formBox select:focus,
#bo_w .formBox select:focus-visible,
#bo_w .formBox .frm_input:focus,
#bo_w .formBox .frm_input:focus-visible{ border: 1px solid #1d7abf; }
#bo_w .formBox .frm_input::placeholder{ font-size: 14px; color: #797979; }
#bo_w .formBox .btn_frmline{ position: absolute; right: 10px; top: 6px; }
#bo_w .formBox ul li{ margin-bottom: 10px; }
#bo_w .fileList ul li{ height: 50px; display: flex; align-items: center; justify-content: space-between; padding: 0 20px; border: 1px solid #ececec; margin-bottom: 10px; }
#bo_w .fileList ul li > p{ display: inline-block; font-size: 14px; color: #111; }
#bo_w .fileList ul li > p em{ font-size: 13px; font-weight: 500; color: #797979; font-style: normal; }
#bo_w .fileList ul li > .right input[type="file"] { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0;}
#bo_w .fileList ul li > .right label { display:inline-block; margin-left: 20px; width:100px; padding:0 5px; height: 35px; font-size: 14px; font-weight: 400; color: #797979; line-height: 35px; text-align: center; background-color: #f8f8f8; border: 1px solid #ececec; border-radius: 0; cursor: pointer; }
#bo_w .fileList ul li > .right .upload-name { display: inline-block; font-size: 14px; color: #797979; border: 0; background-color: transparent; -webkit-appearance: none; -moz-appearance: none; appearance: none; }






@media screen and (min-width: 1200px){ 

    /* LIST */
    .listBox > li:nth-of-type(4n){ margin-right: 0; }
    .listBox > li:nth-of-type(n+5){ margin-top: 50px; }
}


/*! TABLET  */
@media screen and (max-width: 1199px){ 

    /* LIST */
    .listBox > li:nth-of-type(4n){ margin-right: 0; }
    .listBox > li:nth-of-type(n+5){ margin-top: 50px; }
    .listBox > li > a .txtBox > h3{ font-size: 18px; letter-spacing: -0.5px; margin-bottom: 10px; }


}


/*! MOBILE  */
@media screen and (max-width: 767px){

    /*? 체크박스 */
    .chk_box input[type="checkbox"] + label span{ width: 22px; height: 22px; vertical-align: -5px; }
    /*? 관리자 버튼 */
    #btn_bo_user{ margin-bottom: 20px; }
    #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: 20px; }
    .btn_confirm #btn_submit{ height: 45px; font-size: 14px; line-height: 43px; padding: 0 35px; transition: all 0s ease; }
    

    /* LIST */
    .listBox > li{ width: 49%; }
    .listBox > li:nth-of-type(2n){ margin-right: 0; }
    .listBox > li:nth-of-type(n+3){ margin-top: 40px; }
    .listBox > li > a .imgBox{ height: 37.5vw; min-height: 120px; }
    .listBox > li > a .txtBox{ margin-top: 10px; }
    .listBox > li > a .txtBox > h3{ height: 52px; font-size: 16px; line-height: 26px; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; word-wrap:break-word; margin-bottom: 0; }
    .listBox > li > a .txtBox > .cont{ display: none; }

    /* VIEW */
    #bo_v > #bo_v_title{ padding-bottom: 20px; }
    #bo_v > #bo_v_title > h3{ font-size: 22px; letter-spacing: -0.5px; line-height: 30px; }
    #bo_v > #bo_v_title > p{ font-size: 12px; }
    #bo_v > #bo_v_title > p > span{ margin-right: 10px; }
    #bo_v > #bo_v_atc #bo_v_con{ padding: 20px 0; }

    /* WRITE */
    #bo_w .formBox ul > li{ margin-bottom: 10px; }
    #bo_w .formBox ul > li:last-of-type{ margin-bottom: 0; }
    #bo_w .formBox ul > li.wid02{ width: 100%; }
    #bo_w .formBox .label{ font-size: 16px; }
    #bo_w .formBox select, #bo_w .formBox .frm_input{ padding: 0 10px; }
    #bo_w .fileList ul li{ padding: 0 10px; }
    #bo_w .fileList ul li > .right .upload-name{ display: none; }
    #bo_w .fileList ul li > .right label{ margin-left: 0; }
}