@charset "utf-8";
select { border-radius:0; /* 아이폰 사파리 보더 없애기 */ -webkit-appearance:none; /* 화살표 없애기 for chrome*/ -moz-appearance:none; /* 화살표 없애기 for firefox*/ appearance:none /* 화살표 없애기 공통*/ }
select::-ms-expand{ display:none /* 화살표 없애기 for IE10, 11*/ }
select{ background: url(/img/ico_select.png) no-repeat 96% center; background-size: auto; cursor: pointer;}



/* 관리자 버튼 */
#btn_bo_user{ width: 100%; max-width: 1200px; margin: 0 auto 30px; }
#btn_bo_user ul{ display: flex; align-items: center; justify-content: flex-end; }
#btn_bo_user ul li{ text-align:center; margin-left: 10px;}
#btn_bo_user ul > li > *{ display: inline-block; height: 37px; font-size:14px; font-weight:400; line-height: 35px; color: #4b4b4b; border: 1px solid #dedede; padding: 0 20px; background-color: #fff; border-radius:0; }
#btn_bo_user ul > li > .btn_admin{ color: #0075c2; border: 1px solid #0075c2; }

/* 분류 */
#bo_cate{ width: 100%; max-width: 1200px; margin: 0 auto 60px; }
#bo_cate ul{ display: flex; align-items: center; justify-content: center; border-bottom: 1px solid #ececec; }
#bo_cate ul li{ margin: 0 30px; }
#bo_cate ul li:first-of-type{ display: none; }
#bo_cate ul li a{ display: block; font-size: 20px; font-weight: 400; color: #999999; letter-spacing: -1px; line-height: 40px; padding: 0 15px; }
#bo_cate ul li a::after{ width: calc(100% + 30px); height: 5px; background-color: transparent; content: ''; display: block; margin-left: -15px; }
#bo_cate ul li #bo_cate_on{ color: #111; }
#bo_cate ul li #bo_cate_on::after{ background-color: #0075c2; }

/* 게시판 목록 공통 */
#gall_allchk{ width: 100%; max-width: 1200px; margin: 0 auto 30px; }
.selec_chk { display: none; }
.chk_box {position:relative}
.chk_box input[type="checkbox"] + label { position:relative; font-size: 14px; font-weight: 400; color: #797979; letter-spacing: -0.5px; line-height: 25px; cursor: pointer; }
.chk_box input[type="checkbox"] + label span{ display: inline-block; width: 25px; height: 25px; background: #f8f8f8; border: 1px solid #ddd; border-radius: 8px; vertical-align: -7px; margin-right: 10px; }
.chk_box input[type="checkbox"]:checked + label span{ background: url(/img/ico_board_check.png) no-repeat center center, #0075c2; border: 1px solid #0075c2; }

/* 확인버튼 */
.btn_confirm{ text-align: center; margin-top: 50px; }
.btn_confirm #btn_submit{ display: inline-block; height: 55px; font-size: 16px; font-weight: 400; color: #0075c2; letter-spacing: -0.5px; line-height: 55px; border: 1px solid #f4f4f4; padding: 0 60px; border-radius: 10px; background-color: #f8f8f8; transition: all 0.2s ease-in-out; }
.btn_confirm #btn_submit:hover{ color: #fff; border: 1px solid #0075c2; background-color: #0075c2; }










/*! ========== L I S T ========== */
#bo_list{ position:relative; }
#bo_list .table_wrap{ margin-bottom: 75px; }
#bo_list .table_wrap table{ width: 100%; border-collapse: collapse; border-top: 2px solid #000000; }
#bo_list .table_wrap table caption{ display: none; }
#bo_list .table_wrap table tr{ border-bottom: 1px solid #e6e6e6; transition: all 0.2s ease-in-out; }
#bo_list .table_wrap table thead tr th{ height: 65px; font-size: 17px; font-weight: 700; color: #111111; letter-spacing: -0.5px; text-align: center; padding: 15px; }
#bo_list .table_wrap table thead tr th a{ display: block; }
#bo_list .table_wrap table tbody tr:hover{ background-color: #f8f8f8; }
#bo_list .table_wrap table tbody tr.bo_notice{ background-color: #f6fbff; }
#bo_list .table_wrap table tbody tr td{ height: 65px; font-size: 15px; font-weight: 400; color: #111111; letter-spacing: -0.5px; text-align: center; padding: 15px; }
#bo_list .table_wrap table tbody tr td .notice_icon{ display: inline-block; width: 40px; height: 40px; background: url(/img/ico_bell.png) no-repeat center center,#0075c2; border-radius: 50%; text-indent: -9999px; }
#bo_list .table_wrap table tbody tr td.td_subject{ text-align: left; padding: 15px 30px; }
#bo_list .table_wrap table tbody tr td .bo_tit a{ display: inline-block; border-bottom: 1px solid transparent; transition: all 0.1s ease-in-out; }
#bo_list .table_wrap table tbody tr td .bo_tit a:hover{ color: #0075c2; border-bottom: 1px solid #0075c2; }
#bo_list .table_wrap table tbody tr td .new_icon{ position: relative; display: inline-block; font-size: 12px; color: #111111; padding-left: 8px; margin-left: 5px; z-index: 10; }
#bo_list .table_wrap table tbody tr td .new_icon::before{ position: absolute; left: 0; top: -2px; width: 15px; height: 12px; background: url(/img/ico_new_heart.png) no-repeat center center; background-size: contain; content: ''; display: block; z-index: -1; }




/*! ========== L I S T ========== */
#bo_list{ position:relative; }
#bo_list .teacher-Swiper{ position: relative; width: 100%; overflow: hidden; }
#bo_list .teacher-Swiper .swiper-wrapper .swiper-slide{ width: 1200px; }
#bo_list .teacher-Swiper .swiper-wrapper .swiper-slide.empty_list { padding: 100px 0; }
#bo_list .teacher-Swiper .t-swiper-button-next{ position: absolute; right: 15%; top: 50%; width: 55px; height: 37px; background: url(/img/btn_teacher_next.png) no-repeat center center; background-size: contain; cursor: pointer; transition: all 0.2s ease-in-out; z-index: 100; }
#bo_list .teacher-Swiper .t-swiper-button-prev{ position: absolute; left: 15%; top: 50%; width: 55px; height: 37px; background: url(/img/btn_teacher_prev.png) no-repeat center center; background-size: contain; cursor: pointer; transition: all 0.2s ease-in-out; z-index: 100;}
#bo_list .teacher-Swiper .t-swiper-button-next:hover{ background: url(/img/btn_teacher_next_on.png) no-repeat center center; background-size: contain; cursor: pointer; }
#bo_list .teacher-Swiper .t-swiper-button-prev:hover{ background: url(/img/btn_teacher_prev_on.png) no-repeat center center; background-size: contain; cursor: pointer; }
#bo_list .gall_box{ position: relative; padding-bottom: 100px; }
#bo_list .gall_box > .chk_box{ position: absolute; left: 0; top: 0; z-index: 10; }
#bo_list .gall_box > a{ display: flex; align-items: stretch; justify-content: center; }
#bo_list .gall_box > a > .infoBox{ position: relative; width: 460px; opacity: 0; transition: all 0.2s ease-in-out; }/*! ========== 20230411수정 ========== */
#bo_list .gall_box > a > .infoBox .bottom{ position: absolute; left: 0; bottom: 0; width: 100%; }
#bo_list .gall_box > a > .infoBox .bottom > span{ display: inline-block; font-size: 18px; font-weight: 500; color: #0075c2; letter-spacing: -0.8px; margin-bottom: 10px; }
#bo_list .gall_box > a > .infoBox .bottom > h3{ font-size: 20px; font-weight: 500; color: #111111; letter-spacing: -1px; }
#bo_list .gall_box > a > .infoBox .bottom > h3 strong{ display: inline-block; font-size: 34px; font-weight: 700; letter-spacing: 3px; }
#bo_list .gall_box > a > .infoBox .bottom > ul{ margin-top: 50px; }
#bo_list .gall_box > a > .infoBox .bottom > ul li{ font-size: 16px; font-weight: 400; color: #111111; letter-spacing: -0.5px; line-height: 28px; border-bottom: 2px solid #f3f3f3; padding: 10px; }
#bo_list .gall_box > a > .infoBox .bottom > ul li:last-of-type{ border-bottom: none; }
#bo_list .gall_box > a > .gall_img{ position: relative; width: 450px; margin: 0 40px; z-index: 10; }
#bo_list .gall_box > a > .gall_img::before{ position: absolute; right: -180px; bottom: 60px; width: 140px; height: 140px; background-color: #f8f8f8; border-radius: 50%; content: ''; display: block; z-index: -2; opacity: 0; transition: all 0.2s ease-in-out; }
#bo_list .gall_box > a > .gall_img::after{ position: absolute; right: -150px;; bottom: -70px; width: 245px; height: 242px; background: url(/img/obj_txt_circle.png) no-repeat center center; background-size: contain; animation: rotate 15s linear infinite; content: ''; display: block; z-index: -1; opacity: 0; transition: all 0.2s ease-in-out; }
#bo_list .gall_box > a > .gall_img img{ width: 100%; }
#bo_list .gall_box > a > .txtBox{ width: 350px; padding-top: 100px; opacity: 0; transition: all 0.2s ease-in-out; }
#bo_list .gall_box > a > .txtBox p{ position: relative; display: inline-block; font-size: 22px; font-weight: 300; color: #111111; letter-spacing: -1px; line-height: 40px; font-family: 'Noto Serif KR'; z-index: 10; }
#bo_list .gall_box > a > .txtBox p::before{ position: absolute; left: -20px; top: -10px; width: 47px; height: 46px; background: url(/img/obj_teacher_point.png) no-repeat center center; background-size: contain; content: ''; display: block; z-index: -1; }
/* ? active */
#bo_list .teacher-Swiper .swiper-wrapper .swiper-slide.swiper-slide-active .gall_box > a > .infoBox,
#bo_list .teacher-Swiper .swiper-wrapper .swiper-slide.swiper-slide-active .gall_box > a > .gall_img::before,
#bo_list .teacher-Swiper .swiper-wrapper .swiper-slide.swiper-slide-active .gall_box > a > .gall_img::after,
#bo_list .teacher-Swiper .swiper-wrapper .swiper-slide.swiper-slide-active .gall_box > a > .txtBox{ opacity: 1; }





/*! ========== V I E W ========== */
#bo_v > #bo_v_atc{ position: relative; display: flex; align-items: stretch; justify-content: space-between; z-index: 10; }
#bo_v > #bo_v_atc::before{ position: absolute; left: -125px; bottom: 80px; width: 140px; height: 140px; background-color: #f8f8f8; border-radius: 50%; content: ''; display: block; z-index: -2; }
#bo_v > #bo_v_atc::after{ position: absolute; left: -150px;; bottom: -80px; width: 245px; height: 242px; background: url(/img/obj_txt_circle.png) no-repeat center center; background-size: contain; animation: rotate 15s linear infinite; content: ''; display: block; z-index: -1; }
#bo_v > #bo_v_atc #bo_v_img{ width: 500px; border-bottom-left-radius: 100px; overflow: hidden; }
#bo_v > #bo_v_atc #bo_v_img img{ width: 100%; }
#bo_v > #bo_v_atc #bo_v_con{ position: relative; width: 620px; }
#bo_v > #bo_v_atc #bo_v_con > p{ font-size: 15px; font-weight: 400; color: #888888; letter-spacing: -0.5px; text-align: right; margin-bottom: 15px; }
#bo_v > #bo_v_atc #bo_v_con > .bo_v_tit{ padding: 45px 30px 30px; border-top: 1px solid #f3f3f3; border-bottom: 1px solid #f3f3f3; }
#bo_v > #bo_v_atc #bo_v_con > .bo_v_tit h3{ position: relative; display: inline-block; font-size: 24px; font-weight: 300; color: #111111; letter-spacing: -1px; line-height: 46px; font-family: 'Noto Serif KR'; z-index: 10; }
#bo_v > #bo_v_atc #bo_v_con > .bo_v_tit h3::before{ position: absolute; left: -20px; top: -10px; width: 47px; height: 46px; background: url(/img/obj_teacher_point.png) no-repeat center center; background-size: contain; content: ''; display: block; z-index: -1; }
#bo_v > #bo_v_atc #bo_v_con > .infoBox{ position: absolute; left: 0; bottom: 0; width: 100%; }
#bo_v > #bo_v_atc #bo_v_con > .infoBox > div{ display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; }
#bo_v > #bo_v_atc #bo_v_con > .infoBox > div .class{ display: inline-block; font-size: 16px; font-weight: 400; color: #fff; letter-spacing: -0.5px; line-height: 40px; padding: 0 25px; border-radius: 10px; background-color: #0075c2; }
#bo_v > #bo_v_atc #bo_v_con > .infoBox > div .teacher{ font-size: 20px; font-weight: 500; color: #111; letter-spacing: -1.5px; }
#bo_v > #bo_v_atc #bo_v_con > .infoBox > div .teacher strong{ display: inline-block; font-size: 42px; font-weight: 700; letter-spacing: 3px; }
#bo_v > #bo_v_atc #bo_v_con > .infoBox > ul{ width: 100%; padding: 30px 40px; border-top-right-radius: 80px; background-color: #f8f8f8; }
#bo_v > #bo_v_atc #bo_v_con > .infoBox > ul li{ font-size: 18px; font-weight: 400; color: #111; letter-spacing: -0.8px; line-height: 30px; margin-bottom: 20px; }
#bo_v > #bo_v_atc #bo_v_con > .infoBox > ul li:last-of-type{ margin-bottom: 0; }



/*! ========== W R I T E ========== */
#bo_w .write_div{ margin-bottom: 10px; }
#bo_w .write_div ul{ display: flex; align-items: center; justify-content: space-between; }
#bo_w .write_div ul li{ width: 32.8%; }
#bo_w .write_div select,
#bo_w .write_div .form_input{ width: 100%; height: 50px; font-size: 16px; 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 .write_div textarea{ width: 100%; height: 200px; font-size: 16px; 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 .write_div .form_input::placeholder,
#bo_w .write_div textarea::placeholder{ font-size: 14px; color: #797979; }
#bo_w .filebox{ width: 100%; height: 50px; padding: 0 20px; border: 1px solid #ececec; display: flex; align-items: center; justify-content: space-between; }
#bo_w .filebox p{ font-size: 14px; color: #797979; }
#bo_w .filebox .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 .filebox .right label { display:inline-block; width: 120px; 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; margin-right: 10px; }
#bo_w .filebox .right .upload-name { display: inline-block; font-size: 14px; color: #797979; border: 0; background-color: transparent; -webkit-appearance: none; -moz-appearance: none; appearance: none; }
#bo_w .btn_confirm{ text-align: center; margin-top: 50px; }
/*? focus */
#bo_w .write_div select:focus,
#bo_w .write_div select:focus-visible,
#bo_w .write_div .form_input:focus,
#bo_w .write_div .form_input:focus-visible,
#bo_w .write_div textarea:focus,
#bo_w .write_div textarea:focus-visible{ border: 1px solid #0075c2; }
