@charset "utf-8";
/* 당근고양이 'ㅅ' */

/* 초기화 */
@import url("default.css");
@import url("font.css");

*{
	--iden:#00457e;
}

/* color */
	.red {color:#f00 !important;}
	.c_blue {color:#00457e !important;}
	.c_red {color:#fe6767 !important;}
	.c_yellow {color:#ffe400 !important;}
	.c_black {color:#002 !important;}
	.bg_failure {background:#ff006a85 !important;}

	.bg_blue {background:#1582b0 !important;}
	.bg_green {background:#3bb015 !important;}
	.bg_red {background:#cc0e0e !important;}
	.bg_red2 {background:#cf0505 !important;}
	.bg_org {background:#ff8400 !important;}

	a.btn_s,.btn_s{line-height:30px;height:30px;padding:0 10px;text-align:center;  font-size: 14px; border-radius:5px; border:#ddd 1px solid;}
	.btn_fixed_top a.btn,.btn_fixed_top .btn{width: auto; line-height:30px;height:30px;padding:0 20px;text-align:center;  font-size: 14px; border-radius:5px; border:#ddd 1px solid;}

/* header */
/* 체크박스 */

	label.radio {position:relative; padding-left:30px; font-size:15px; color:#555; font-weight:500; line-height:24px; padding-right:30px;}
	label.radio input {display:none;}
	label.radio i {position:absolute; top:50%; left:0; width:24px; height:24px; border:#ddd 1px solid; border-radius:50%; transform:translateY(-50%); transition:.2s linear;}
	label.radio i:before {content:""; position:absolute; top:50%; left:50%; width:0; height:0; background:var(--iden); border-radius:50%; transform:translate(-50%,-50%); transition:.2s linear;}
	label.radio input:checked + i {border-color:var(--iden);}
	label.radio input:checked + i:before {width:12px; height:12px;}

	label.check {position:relative; display:inline-block; padding-left:36px; font-size:15px; color:#222; font-weight:500; line-height:24px; padding-right:30px;}
	label.check input {display:none;}
	label.check i {position:absolute; top:0; left:0; width:24px; height:24px; border:#ddd 1px solid; border-radius:5px; background:#fff url('/images/icon_check.png') no-repeat 50% 50%; transition:.2s linear;}
	label.check input:checked + i {background-color:#00457e; border-color:#00457e;}

	.radio-wrap{display:inline-flex; align-items:center; gap:6px; margin-right:18px;  cursor:pointer;}
	.radio-wrap input{margin:0; width:16px; height:16px;}
	.radio-wrap span{display:inline-block; line-height:1;}


/* header */
	.header {position:fixed; top:0; left:0; width:100%; z-index:100; color:#222; border-bottom:#fff3 1px solid; background:#fff; transition:.2s linear;}
	.header .inner {position:relative; display:flex;  gap:33px; justify-content:space-between; height:70px; }
	.header .logo { line-height:70px; transition:none;}
	.header .logo img {height:50px;}
	.header h1 {display:none;}
	.header .gnb {position:relative;display:inline-block; }
	.header .gnb ul {display:flex; justify-content:right;}
	.header .gnb li {position:relative;}
	.header .gnb li > a {display:block; font-size:20px; font-weight:700; line-height:70px; padding:0 20px;}
	.header .gnb li > a span {position:relative; display:block; width:100%;}
	.header .gnb li > a span:after {content:""; position:absolute; bottom:0; left:50%; width:0; height:2px; background:var(--iden); transform:translateX(-50%); transition:.2s linear;}
	.header .gnb li.on > a {color:var(--iden);}
	.header .gnb li.on > a span:after {width:100%;}
	.header .snb {position:absolute; top:100%; left:0; width:100%; height:0; padding:0; overflow:hidden; transition:.2s linear;}
	.header .snb a {display:block; font-size:16px; color:#555; line-height:34px; text-align:center; }
	.header .snb a.on {color:var(--iden);}

	.header.fixed {background:#fff; box-shadow:rgba(0,0,0,.1) 0 0 10px;}
	.header.fixed .logo {background:none; mask:none; -webkit-mask:none;}
	.header.fixed .logo img {opacity:1;}
	.header.fixed .gnb li > a {color:#222;}
	.header.fixed .mems a {color:#555;}
	.header.fixed .mems .cart {background:#5f6368;}

/* footer */
	.footer {position:relative; background:#fff; border-top:#e1e1e1 1px solid; padding:45px 0;}
	.footer .point {top:-100vh;}
	.footer .inner {position:relative;  }
	.footer .links {display:flex; gap:33px; margin-bottom:40px;}
	.footer .links li {position:relative;}
	.footer .links li + li:before {content:""; position:absolute; top:50%; left:-17px; width:1px; height:14px; background:#ccc; opacity:.26; transform:translateY(-50%);}
	.footer .links a {display:block; font-size:17px; color:#222; line-height:24px;}
	.footer .address {font-size:17px; color:#222;}
	.footer .address .name {display:block; font-weight:700; line-height:24px; margin-bottom:20px;}
	.footer .address .dls {display:flex; flex-wrap:wrap; gap:10px 55px;}
	.footer .address .dls dl {display:flex; align-items:center; gap:10px; font-size:17px;}
	.footer .address .dls dt {font-weight:700;}
	.footer .address .dls dd {color:#adadad;}
	.footer .copy {color:#adadad; margin-top:50px; width:100%;}

/* sub */

	.container {position: relative; padding-top:90px; padding-bottom:100px; font-size:18px; color:#666; line-height:30px; letter-spacing:-.5px; z-index:20;}
	.container .contents {width:100%;}
	.container .title {font-size:40px; color:#222; font-weight:700; line-height:1; padding-bottom:50px;     border-bottom: #004483 2px solid;  margin-bottom:52px;}

	.aside {position:relative; width:100%; border:#ebebeb 1px solid; margin-bottom:30px;}
	.aside .g,
	.aside .s dt {display:none;}
	.aside dd {display:flex;}
	.aside dd a {flex:1 1 25%; font-size:18px; color:#666; font-weight:500; line-height:50px; text-align:center; border-right:#ebebeb 1px solid;}
	.aside dd a:last-child {border-right:0;}
	.aside dd a.on {color:#fff; background:var(--iden);}

	.stit {position:relative; font-size:22px; color:#222; font-weight:700; line-height:26px; margin-bottom:40px; padding-top:12px;}
	.stit:before {content:""; position:absolute; top:0; left:0; width:45px; height:4px; background:#00457e;}
	.stit.mt {margin-top:100px;}
	.ctit {font-size:27px; color:#222; font-weight:700; text-align:center; margin-bottom:55px;}

/* 멤버십 가입 - 게시판 쓰기 */
	.btn {display:inline-block; width:160px; height:50px; line-height:50px; background:#11578f; font-size:20px; font-weight:600; color:#fff; text-align:center; border:0; vertical-align:top;}
	.board_write .gbox {font-size:20px; color:#222; font-weight:600; line-height:46px; padding:20px; text-align:center; margin-bottom:20px;}
	.board_write table {border-top:#ddd 1px solid;}
	.board_write th,
	.board_write td {border-bottom:#ddd 1px solid; font-size:17px; color:#222; height:70px;}
	.board_write th {width:25%; background:#f5f5f5; text-align:left; padding-left:10px;}
	.board_write td {padding:10px 10px;}
	.board_write td span {width:35px; line-height:40px; text-align:center;}
	.board_write .tel .text {width:140px; max-width:calc((100% - 70px)/3);}
	.board_write .email .text {width:170px; max-width:calc((100% - 45px)/3);}
	.board_write .email select.text {margin-left:10px;}
	.board_write textarea.text {height:150px;}
	.board_write tr .btn{display:inline-block; line-height:36px; height:38px; padding: 0 0px; width: 80px; background:#6f757c; color:#fff; border:0; font-size:14px; cursor:pointer;}
	.board_write .info {font-size:0.8em;}

	.terms_area {margin-top:55px;}
	.terms_area .tit {font-size:17px; color:#222; font-weight:700; margin-bottom:10px;}
	.terms_area .txt {width:100%; height:140px; border:#e1e1e1 1px solid; padding:10px; overflow:auto; font-size:13px; line-height:1.4; margin-bottom:20px;}
	.write_btm {margin-top:70px;}

	.flex_center{display:flex;justify-content:center;margin-top:36px;gap:20px; }
	.flex_center .btn{height:50px; line-height:50px; }

/* 게시판 소개 */
	.board_list col.w60 {width:60px;}
	.board_list col.w120 {width:120px;}
	.board_list col.w160 {width:160px;}
	.board_list table {border-top:#222 2px solid;}
	.board_list th,
	.board_list td {font-size:17px; height:56px; text-align:center; border-bottom:#ddd 1px solid;}
	.board_list th {color:#222; background:#f5f5f5;}
	.board_list td {color:#525252; padding:20px 0;}
	.board_list td.tal a {position:relative; display:inline-block; vertical-align:top; max-width:100%; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
	.board_list .infile td a {padding-right:28px; background:url('/images/icon_infile.png') no-repeat 100% 50%;}
	.board_list .lock td a {padding-right:28px; background:url('/images/icon_lock.png') no-repeat 100% 50%;}
	.board_list .re td a {padding-left:30px;}
	.board_list .re td a:before {content:""; position:absolute; top:0; left:0; width:15px; height:100%; background:url('/images/icon_re.png') no-repeat 0 50% / contain;}

	.board_top {display:flex; justify-content:space-between; margin-bottom:10px;}
	.board_top .total { color:#666; }
	.board_top .total strong {color:#004890; }
	.board_top .search_wrap {display:flex; gap:10px;}
	.board_top .search_wrap .text {border:#ddd 1px solid;}
	.board_top .search_wrap select.text {width:100px;}
	.board_top .search_wrap input.text {width:200px; margin-right:2px; }
	.board_top .search_wrap .btn {display:inline-block; width:80px; padding:0px; color:#fff; border:#004890 1px solid; text-align:center; background:#004890;  }
	.board_top .total, .board_top .search_wrap .text, .board_top .search_wrap .btn  { font-size:16px;  height:35px !important; line-height:33px !important;}

/* 게시판 하단 */
	.board_bottom .paging {display:flex; justify-content:center; gap:26px; margin-top:50px;}
	.board_bottom .paging a {width:20px; height:20px; line-height:20px; text-align:center; font-size:17px; color:999; border-bottom:#fff 2px solid;}
	.board_bottom .paging a.on {color:#00457e; border-bottom-color:#00457e;}
	.board_bottom .paging .arrow {font-size:0;}
	.board_bottom .paging .prev {margin-right:10px;}
	.board_bottom .paging .next {margin-left:10px;}

	.board_bottom .btns {margin-top:20px; display:flex; justify-content:flex-end;}
	.board_bottom .btns .btn {display:block; font-size:17px; color:#fff; font-weight:700; line-height:54px; height:54px; width:130px; text-align:center; border:0; border-radius:5px;}

/* 수련원 등록 */
.board_write .date-wrap{display:flex;align-items:center;gap:6px;}
.board_write .camp-date{width:160px;height:30px;padding:0 8px;border:1px solid #bfc7cf;background:#fff;box-sizing:border-box;}
.board_write .date-wrap span{color:#333;}

/* 수련원 목록 */
.camp-list-wrap{display:flex;flex-direction:column;gap:32px;max-width:660px;margin:0 auto;}

.camp-card{display:grid;grid-template-columns:1.08fr 1fr;align-items:center;gap:26px;padding:26px;border:1px solid #e2e7ec;background:#fff;box-sizing:border-box;}

.camp-img{height:100%;min-height:235px;overflow:hidden;background:#f6f8fa;}
.camp-img img{display:block;width:100%;height:100%;object-fit:cover;}
.camp-info{display:flex;flex-direction:column;justify-content:center;min-width:0;}
.camp-info h3{position:relative;margin:0 0 26px;padding-bottom:14px;font-size:30px;font-weight:700;line-height:1.2;color:#111;}
.camp-info h3:after{content:"";position:absolute;left:0;bottom:0;width:34px;height:2px;background:#00457e;}

.camp-date{display:flex;flex-direction:column;gap:15px;margin-bottom:24px;}

.camp-date p{display:flex;flex-direction:column;margin:0;padding-bottom:14px;border-bottom:1px solid #eef2f5;}

.camp-date p:last-child{padding-bottom:0;border-bottom:0;}

.camp-date strong{display:block;margin-bottom:5px;font-size:14px;font-weight:800;color:#00457e;}

.camp-date span{display:block;font-size:16px;line-height:1.55;color:#444;word-break:keep-all;}

.camp-btns{display:grid;grid-template-columns:1fr 1fr;gap:10px;}

.camp-btn{display:flex;align-items:center;justify-content:center;height:48px;border:1px solid #d7dde3;font-size:15px;font-weight:700;text-decoration:none;box-sizing:border-box;transition:all .2s ease;}

.camp-btn.type1{border-color:#00457e;background:#00457e;color:#fff;}
.camp-btn.type1:hover{background:#003866;border-color:#003866;}

.camp-btn.type2{background:#fff;color:#222;}
.camp-btn.type2:hover{border-color:#00457e;color:#00457e;}

/* 수련원 신청서 */
.camp_apply_write .partner-field{display:none;}
.camp_apply_write .partner-wrap{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.camp_apply_write .partner-txt{margin:0;font-size:15px;color:#777;}

/* 멤버십 자료실 - 게시판 상세 */
	.board_view {border-top:#222 2px solid;}
	.board_view .txt {position:relative; padding:30px; }
	.board_view .txt .tit2 {font-size:22px; color:#222; padding-bottom:20px; border-bottom:#e1e1e1 1px solid;}
	.board_view .txt dl {display:flex; font-size:18px; border-bottom:#e1e1e1 1px solid;padding:10px 0px;}
	.board_view .txt dt {width:90px; color:#222; font-weight:600;}
	.board_view .txt dd {width:calc(100% - 90px); color:#666;}
	.board_view .tit {position:relative; padding:30px 120px 30px 0; border-bottom:#e1e1e1 1px solid;}
	.board_view .tit strong {font-size:22px; color:#222;}
	.board_view .tit .date {position:absolute; top:50%; right:0; width:120px; font-size:17px; color:#9f9f9f; font-weight:400; transform:translateY(-50%); text-align:center;}

	.board_view .con {padding:35px 30px; border-bottom:#ddd 1px solid; font-size:17px; color:#747474;}
	.board_view .file {display:flex; border-bottom:#ddd 1px solid; line-height:24px; padding:20px 0;}
	.board_view .file dt {width:90px; font-size:17px; color:#222; font-weight:500;}
	.board_view .file dd {width:calc(100% - 90px);}
	.board_view .file dd a {display:block; font-size:16px; color:#666; font-weight:500;}
	.board_view .prevnext li {border-bottom:#e1e1e1 1px solid; display:flex; height:70px; line-height:70px;}
	.board_view .prevnext strong {position:relative; width:170px; padding-left:10px;}
	.board_view .prevnext strong:after {content:""; position:absolute; top:0; right:20px; width:14px; height:100%; background:url('/images/arrow_page.png') no-repeat 50% 50% / contain;}
	.board_view .prevnext li + li strong:after {transform:scaleY(-1);}
	.board_view .prevnext a {width:calc(100% - 170px); white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
	.board_view .btns {margin-top:60px;}
	.board_view .btns .btn_list {display:block; font-size:16px; color:#9f9f9f; line-height:48px; height:50px; width:110px; text-align:center; border:#e1e1e1 1px solid;}

/* 온라인 교육 */
	.status { background:#c1c1c1; color:#fff; font-size:12px; padding:2px 10px; line-height:20px; border-radius:12px; }
	.status.end { background:#4ac500;  }
	.status.success { background:#ff0000;  }
	.status.cancel { background:#00ffe7;  }
	.jobList {display:flex; flex-wrap:wrap; gap:20px;}
	.jobList .box {width:100%; border:#e1e1e1 1px solid; border-radius:10px; padding:30px 20px;}
	.jobList .tit {font-size:20px; color:#222; font-weight:700; line-height:24px; padding-bottom:20px; border-bottom:#ebebeb 1px solid; margin-bottom:25px;}
	.jobList .type { background:#156082; color:#fff; padding:2px 20px; font-size:14px; line-height:24px; height:24px; text-align:center; border-radius:12px;  margin-right:14px;}
	.jobList .status { line-height:24px; height:24px;  border-radius:12px; right:50px; position:absolute;}
	.jobList dl {display:flex; font-size:16px; color:#525252;}
	.jobList dl + dl {margin-top:10px;}
	.jobList dt {position:relative; width:100px; font-weight:500;}
	.jobList dt:after {content:""; position:absolute; top:10px; right:20px; width:1px; height:10px; background:#d7d7d7;}
	.jobList dd {width:calc(100% - 100px);}
	.jobList .btns {display:flex; gap:12px; margin-top:35px;}
	.jobList .btns .btn {position:relative; font-size:16px; font-weight:500; line-height:48px; padding:0 20px; border-radius:10px; border:1px solid;}
	.jobList .btns .btn:after {content:""; position:absolute; top:0; right:20px; width:8px; height:100%; mask:url('/images/arrow_link2.png') no-repeat 50% 50% / contain; -webkit-mask:url('/images/arrow_link2.png') no-repeat 50% 50% / contain;}


	.job_view_top {position:relative;display:inline-block;  margin-bottom:50px; width:100%;}
	.job_view_top .status { font-size:20px; padding:5px 20px; line-height:30px; text-align:center; border-radius:12px; margin-right:14px; right:10px;position:absolute;}
	.job_view_top .txt {width:100%;}
	.job_view_top .tit {font-size:30px; color:#222; font-weight:700; line-height:44px;padding:20px 0px; border-bottom:#e1e1e1 1px solid; margin-bottom:20px; }
	.job_view_top .type { font-size:20px; background:#156082; color:#fff;  padding:10px 30px; line-height:30px; text-align:center; border-radius:12px;margin-right:14px;}
	.job_view_top dl {display:flex; font-size:18px;}
	.job_view_top dl + dl {margin-top:20px;}
	.job_view_top dt {width:150px; color:#222; font-weight:600;}
	.job_view_top dd {width:calc(100% - 90px); color:#666;}
	.job_view_top .btns {display:flex; gap:22px; margin-top:40px;}
	.job_view_top .btns .btn {width:calc(50% - 11px); height:60px; line-height:60px; text-align:center; font-size:20px; color:#fff; font-weight:600; border-radius:5px;}
	.job_view_top .btns .c1 {background:#a32f96;}
	.job_view_top .btns .c2 {background:#c1c1c1;}
	.job_view_top .history {}
	.job_view_top .history ul {width:100%; list-style: none; margin: 0; padding: 0; }
	.job_view_top .history li {width:100%; border-bottom: 1px solid #ddd; line-height:30px; }
	.job_view_top .history li .name { display:inline-block; width:100px;}
	.job_view_top .history li .date {  right:100px; position:absolute;}
	.job_view_top .history li .status { font-size:12px; padding:2px 10px; line-height:20px; border-radius:12px;}
	.job_view_wrap  {display:flex; flex-wrap:wrap; gap:20px 30px;}
	.job_view_wrap .txt{width:calc((100% - 60px)/2);}

	.vod_view_btm .jq_tab button {font-size:18px; color:#868686; font-weight:500; line-height:68px; height:70px; text-align:center; border-radius:20px 20px 0 0;}
	.vod_view_btm .jq_tab li.on button {background:#666;}
	.vod_view_btm .tit {font-size:24px; color:#222; font-weight:700; line-height:30px; margin-bottom:25px;}
	.vod_view_btm .board_list td strong {color:#222;}

/* 수강 가이드 */
	.tabs {display:flex; border:#ddd 1px solid; margin-bottom:25px;}
	.tabs a {width:25%; font-size:18px; color:#666; font-weight:500; line-height:58px; height:58px; text-align:center;}
	.tabs a + a {border-left:#ddd 1px solid;}
	.tabs .on {color:#fff; background:#a32f96;}

	.faq_wrap {border-top:#222 2px solid;}
	.faq_wrap dl {padding:0 15px; border-bottom:#ddd 1px solid;}
	.faq_wrap dt button {position:relative; display:block; padding:30px 30px 30px 200px; font-size:17px; color:#222; line-height:24px; width:100%; text-align:left;}
	.faq_wrap dt button strong {position:absolute; top:50%; left:0; padding-left:30px; transform:translateY(-50%);}
	.faq_wrap dt button:after {content:""; position:absolute; top:0; right:0; width:24px; height:100%; background:url('/images/arrow_faq.png') no-repeat 50% 50%; transition:.2s linear;}
	.faq_wrap i {position:absolute; left:140px; width:38px; line-height:36px; aspect-ratio:1/1; border-radius:50%; border:#d8a4d3 1px solid; text-align:center;}
	.faq_wrap p {padding-right:30px; white-space:normal;}
	.faq_wrap dt i {top:50%; color:#fff; background:#d8a4d3; transform:translateY(-50%);}
	.faq_wrap dd {position:relative; background:#f5f5f5; border-radius:10px; padding:30px 30px 30px 200px; display:none;}
	.faq_wrap dd i {top:25px; color:#d8a4d3; background:#fff;}
	.faq_wrap .on dt button:after {transform:rotate(180deg);}

/* 로그인 */

	.jq_tab {display:flex; gap:20px; border:0px; margin-bottom:40px;}
	.jq_tab li {width:calc((100% - 20px)/2); font-size:18px; line-height:50px; height:52px;border-radius:25px;  border:#11578f 1px solid; color:#666;  text-align:center; cursor:pointer; transition:.2s linear;}
	.jq_tab li.on {color:#fff; background:#11578f;}
	.jq_tab li a {font-size:inherit; color:inherit; width:100%;display:block;}
	.jq_tab.set5 li {width:calc((100% - 80px)/5);}
	.jq_tab.set3 li {width:calc((100% - 40px)/3);}
	.jq_tab.set2 li {width:calc((100% - 20px)/2);}

	.login_inputs {width:100%; max-width:490px; margin:0 auto;}
	.login_inputs .text {height:55px; font-size:16px; margin-bottom:5px;}
	.login_inputs .text + .text {margin-top:8px;}
	.login_inputs .btn_login {display:block; font-size:18px; color:#fff; font-weight:700; line-height:56px; height:56px; width:100%; background:#222; text-align:center; border:0; margin-top:18px;}
	.login_inputs .btn_login.btn_c {background:var(--iden);}
	.login_inputs .links {margin:25px 0 60px; display:flex; justify-content:center; gap:35px;}
	.login_inputs .links a {position:relative; font-size:16px; line-height:1.2;}
	.login_inputs .links a + a:before {content:""; position:absolute; top:50%; left:-18px; width:1px; height:12px; background:#d1d1d1; transform:translateY(-50%);}

	.join_inputs {position:relative; display:block; width:100%;max-width: 490px; margin:0 auto;}
	.join_inputs .join_info {height:55px; font-size:16px; margin-top:35px;}
	.log_join {margin-top:25px; display:flex; justify-content:space-between;}
	.log_join li {font-size:15px; color:#999; line-height:24px;}
	.log_join li.left a {color:#222; font-weight:700; border-bottom:#222 1px solid; margin-left:14px;}


/* 검색 팝업창 */
	.school-select-wrap{display:flex; gap:10px; align-items:center;}
	.school-select{flex:1; height:44px; border:1px solid #ccc; padding:0 12px; font-size:14px; box-sizing:border-box; background:#fff;}
	.school-open-btn{flex:0 0 80px; height:44px; background:#6f757c; color:#fff; border:0; font-size:14px; cursor:pointer;}
	.school-open-btn:hover{background:#555;}

	.school-trigger{cursor:pointer; background:#fff;}
	.school-trigger[readonly]{cursor:pointer;}
	.school-modal{position:fixed; top:0; left:0; width:100%; height:100%; padding:20px; background:rgba(7,16,40,0.58); display:none; justify-content:center; align-items:center; z-index:9999; box-sizing:border-box; backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px);}
	.school-modal.is-open{display:flex;}
	.school-modal-dialog{position:relative; width:100%; max-width:460px; padding:34px 30px 30px; background:#ffffff; border:1px solid rgba(50,33,123,0.08); box-shadow:0 24px 60px rgba(10,23,70,0.18); box-sizing:border-box;}
	.school-modal-title{margin:0; font-size:28px; line-height:1.3; color:#111; font-weight:700; text-align:center; letter-spacing:-0.03em;}
	.school-modal-sub{margin:10px 0 0; font-size:15px; line-height:1.6; color:#666; text-align:center;}
	.school-modal-search{margin:28px 0 0;}
	.school-search-input{width:100%; height:56px; padding:0 18px; font-size:16px; color:#111; background:#fff; border:1px solid #ccd5e3; box-sizing:border-box; outline:none; transition:border-color .2s ease, box-shadow .2s ease;}
	.school-search-input:focus{border-color:#3a63d0; }
	.school-search-btn{display:flex; justify-content:center; align-items:center; width:100%; height:56px; margin:14px 0 0; border:0;  background:#11578f; color:#fff; font-size:17px; font-weight:600; cursor:pointer;  }
	.school-search-btn:hover{background:#062d4d;}
	.school-modal-close{position:absolute; top:14px; right:14px; width:38px; height:38px; border:0; background:#eef3fb; color:#465066; font-size:24px; line-height:1; cursor:pointer; display:flex; justify-content:center; align-items:center; transition:background .2s ease, color .2s ease, transform .2s ease;}
	.school-modal-close:hover{background:#dde7f7; color:#1f2c4d;  }

	.school_list {position:relative; display:block; width:100%; margin:10px auto; padding:10px 0; min-height:0; max-height:520px;overflow-y:auto;overflow-x:hidden;  border-top:1px solid #ccd5e3; border-bottom:1px solid #ccc; }
	.school_list li {flex-wrap:wrap; gap:12px 0;}
	.school_list li .text {display: inline-block; width:calc(100% - 80px); color:#000}
	.school_list li .btn{color:#fff; background:#222; line-height:24px; height:26px; width:60px; text-align:center; padding:0; border:0;}

/* 팝업 */
	.popup,
	.popup .dm {position:fixed; top:0; left:0; width:100%; height:100%;}
	.popup {z-index:101; display:none;}
	.popup .dm {background:#0009;}
	.popup .inbox {position:absolute; top:50%; left:50%; width:920px; max-width:calc(100vw - 140px); max-height:calc(100vh - 40px); background:#fff; transform:translate(-50%,-50%); padding:30px;}
	.popup .btn_close {position:absolute; top:0; right:-64px; width:64px; aspect-ratio:1/1; background:#a32f96 url('/images/btn_close.png') no-repeat 50% 50%; font-size:0;}
	.popup .tit {font-size:25px; color:#222; font-weight:700; line-height:30px; padding-bottom:20px; margin-bottom:20px; border-bottom:#ebebeb 1px solid;}
	.popup .scroll {max-height:calc(100vh - 171px); overflow:hidden auto;}


	.add-term-btn {padding:0px 10px; width:auto; color: #fff; height: 30px; line-height: 30px; font-size:0.8em; }
	.delete-term-btn { background: none; border: none; color: #e74c3c; cursor: pointer; font-size: 18px; }
	.text.exdate { padding-left:18px; background:url('/images/icon_date.png') no-repeat 0 70%; }

	label.radio2 {position:relative;display:inline-block;}
	label.radio2 input {display:none;}
	label.radio2 i {display:block; font-size:16px; line-height:35px; height:35px; padding:0 20px; border:1px solid #ccd5e3; color:#ccd5e3; text-align:center; border-radius:5px; transition:.2s linear;}
	label.radio2 input:checked + i {background:#6a748b;}

	/*대체인력 배치 통보서 인쇄  */
	.notice-a4{width:210mm;min-height:297mm;margin:0 auto;background:#fff;}
	.notice-paper{position:relative;width:210mm;min-height:297mm;padding:34mm 18mm 18mm;box-sizing:border-box;background:#fff;font-weight:400;}
	.notice-title{width:121mm;margin:0 auto 8mm;padding-bottom:3mm;border-bottom:4px double #999;text-align:center;font-size:35px;font-weight:800;line-height:1.15;letter-spacing:.18em;}
	.notice-info{margin-top:0;font-size:20px;line-height:1.65;font-weight:500;}
	.notice-info-row{display:flex;align-items:flex-start;height:9.2mm;}
	.notice-info-label{display:inline-block;width:28mm;font-weight:700;letter-spacing:.08em;}
	.notice-info-value{display:inline-block;flex:1;font-weight:500;}
	.notice-info-value small{font-size:17px;font-weight:500;}
	.notice-body{margin-top:10mm; margin-bottom:10mm; font-size:18px;line-height:1.6;font-weight:400;}
	.notice-p{margin:0 0 1mm;font-weight:400;}
	.notice-blue{color:#003cff;text-decoration:underline;text-underline-offset:2px;font-weight:700;}
	.notice-strong{display:inline-block;font-size:19px;font-weight:700;}
	.notice-subtitle{margin:8mm 0 3mm 2mm;font-size:19px;font-weight:700;}
	.notice-table{width:100%;margin:0 auto;}
	.notice-table table{width:100%;border-collapse:collapse;table-layout:fixed;}
	.notice-table th{height:10mm;border:1px solid #333;text-align:center;vertical-align:middle;font-size:17px;font-weight:700;line-height:1.2;}
	.notice-table td{height:19mm;border:1px solid #333;text-align:center;vertical-align:middle;font-size:19px;font-weight:700;line-height:1.35;}
	.notice-table .col-num{width:7.4%;}
	.notice-table .col-name{width:13.1%;}
	.notice-table .col-period{width:25.8%;}
	.notice-table .col-days{width:12.3%;}
	.notice-table .col-time{width:24.6%;}
	.notice-table .col-note{width:16.8%;}
	.notice-p3{line-height:1.72;font-weight:400;}

	.notice-etc{position:relative;margin:7mm 0 0;font-size:16px;line-height:1.55;font-weight:500;}
	.notice-etc span{display:inline-block;padding-left:15mm;}
	.notice-sign{position:relative;margin-top:27mm;text-align:center;font-size:32px;font-weight:700;line-height:1;letter-spacing:.02em;}
	.notice-sign span{position:relative;z-index:4;}
	#printArea .notice-sign img.notice-seal{position:absolute;left:calc(50% + 19mm);top:-15mm;width:34mm!important;height:34mm!important;max-width:none!important;max-height:none!important;object-fit:contain;transform:none!important;z-index:2;}

	.btn_print{display:block;margin:20px auto;padding:8px 18px;border:0;background:#111;color:#fff;cursor:pointer;}
	@media print{html,body{margin:0!important;padding:0!important;background:#fff!important;}.notice-a4{width:190mm!important;min-height:auto!important;margin:0 auto!important;background:#fff!important;}.notice-paper{width:190mm!important;min-height:auto!important;height:auto!important;padding:26mm 10mm 10mm!important;box-shadow:none!important;page-break-after:auto!important;overflow:visible!important;}.btn_print{display:none!important;}}