#wrap {position: relative; overflow: hidden;}
/* #wrap *{ scrollbar-arrow-color: #ddd; scrollbar-Track-Color: #ddd; scrollbar-base-color: #aaa; scrollbar-Face-Color: #aaa; scrollbar-3dLight-Color: #aaa; scrollbar-DarkShadow-Color: #aaa; scrollbar-Highlight-Color: #aaa; scrollbar-Shadow-Color: #aaa;} */
#wrap ::-webkit-scrollbar { width: 5px; height: 5px; }
#wrap ::-webkit-scrollbar-thumb { background-color: #aaa; border-radius:10px; }
#wrap ::-webkit-scrollbar-track { background-color: #ddd; border-radius:10px; }

/* slick slide common */
.slick-slider { -webkit-transition:all ease-in-out .3s; transition:all ease-in-out .3s; -webkit-box-sizing:border-box; box-sizing:border-box; -webkit-user-select:none; -moz-user-select:none; -ms-user-select:none; user-select:none; -webkit-touch-callout:none; -khtml-user-select:none; -ms-touch-action:pan-y; touch-action:pan-y; -webkit-tap-highlight-color:transparent; }
.slick-slide { display:none; height:100%; min-height:1px; vertical-align:middle; }
.slick-list { overflow:hidden; }
.slick-list:focus {outline: none;}
.slick-list.dragging { cursor:pointer; }
.slick-initialized .slick-slide { display:inline-block; }
.slick-arrow.slick-hidden,
.slick-arrow.slick-disabled {opacity: 0.25; cursor: default;}
.slick-current { opacity:1; display:block; }
.slick-track { position:relative; left:0; top:0; display:block; margin-left:auto; margin-right:auto; }

/***** 메인 공통컨텐츠 *****/
.comCont{ position:relative; width:100%; max-width:72rem; display:flex; align-items: center; justify-content: space-between; -ms-flex-pack: space-between; padding:2.5rem 1rem; margin:0 auto; overflow:hidden;}
.comCont .cont{ position:relative; }
.comCont h2{ line-height:1.25rem; font-size:1rem; font-weight: 700; margin-right:4rem; overflow:hidden;}
.comCont .inner{ margin-top:1rem;}
.comCont .slick-list{ width:calc(100% + .5rem); margin-left:-.25rem; padding-bottom:5px;}
.comCont .item{ height:12.5rem; padding:0 .25rem;}
.comCont .item a{ position:relative; height:100%; display:block;}
.comCont .item .img{ border-radius:1.5rem; overflow:hidden; text-align:center; background:#f0f0f0;}
.comCont .item .img.sq img{ position:relative; top:50%; width:100%; max-height:100%; transform: translateY(-50%); -webkit-transform: translateY(-50%);}
.comCont .item .img.hz img{ width:auto; max-width:100%; height:100%;}
.comCont .item .img.vt img{ top:auto; width:100%; height:auto; max-height:inherit; transform:none; -webkit-transform:none;}
.comCont .item strong{ font-size:.85rem; font-weight:400; display:block;  overflow:hidden; }
.comCont .control{ position:absolute; right:0; top:0; font-size:0; }
.comCont .control a{ display:inline-block; line-height:1.25rem; margin:0 4px; font-size:1rem; }
.comCont .control a.slick-hidden{display:none;}
/* list type 01 */
.comCont .listTy01 .item .img{ height:calc(100% - 1.25rem);}
.comCont .listTy01 .item strong{ position:relative; margin-top:-1.25rem; width:80%; line-height:2.5rem; padding:0 .75rem; border-radius:0 1rem 1rem; background:#fff; box-shadow:0 0 5px rgba(0,0,0,0.15); white-space: nowrap; text-overflow: ellipsis;}
/* list type 02 */
.comCont .listTy02 .item a{ border-radius:1.5rem; border:1px solid #ccc; background:#fff;}
.comCont .listTy02 .item .img{ height:7rem; border-bottom-right-radius: 0;}
.comCont .listTy02 .item .txt{ padding:.75rem 1rem;}
.comCont .listTy02 .item strong{ line-height:1.2rem; max-height:2.4rem;}
.comCont .listTy02 .item span{ color:#555; display:block; margin-top:.25rem;} 
/* active */
.comCont .control a:not(.slick-hidden):hover,
.comCont .control a:not(.slick-hidden):focus,
.comCont .item a:hover strong,
.comCont .item a:focus strong{ color:#0063be;}
.comCont .listTy01 .item a:hover strong,
.comCont .listTy01 .item a:focus strong{ box-shadow:0 0 5px rgba(11, 60, 133, 0.5); }
.comCont .listTy02 .item a:hover,
.comCont .listTy02 .item a:focus{ border-color:#0063be;}
.comCont a,
.comCont img,
.comCont a strong{transition: all .2s; -webkit-transition: all .2s;}
/* 정렬 : 3개 */
.comCont.align03 .cont{max-width:36%;}
.comCont.align03 .cont:nth-child(3){max-width:18%;}
/* 정렬 : 2개 */
.comCont.align02 .cont{max-width:38%;}
.comCont.align02 .cont:nth-child(2){max-width:57%;}
/* 정렬 : 1개 */
.comCont.align01 .slick-list{ width:calc(100% + 1.5rem); margin-left:-.75rem;}
.comCont.align01 .cont{max-width:100%;}
.comCont.align01 .item{ padding:0 .75rem;}

/***** 레이어팝업 *****/
.lyrPop{ display:none; position: fixed; left:0; top:0; width:100%; height:100%; background:rgba(0,0,0,0.5); z-index: 999;}
.lyrWrap{ position:absolute; left:50%; top:50%; width:95%; max-width:70rem; background:#fff; border-radius:1.5rem; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%);}
.lyrWrap .inner{ position:relative; max-height:80vh; padding:2.5rem; overflow-y: auto; overflow-x: hidden;} 
.lyrPop .btnClose{ position:absolute; right:2rem; top:-1.5rem; width:3rem; height:3rem; text-align:center; line-height:3rem; font-size:1.25rem; color:#fff; border-radius:50%; background:#414855; transition: all .2s; -webkit-transition: all .2s;}
.lyrPop .btnClose:before{ content:""; position:absolute; left:-.5rem; top:-.5rem; width:calc(100% + 1rem); height:calc(100% + 1rem); background:rgba(0,0,0,0.2); border-radius:50%; transition: all .2s; -webkit-transition: all .2s;}
.lyrPop .btnClose:hover,
.lyrPop .btnClose:focus{ background:#fff; color:#0063be; font-weight: 600;}
.lyrPop .btnClose:hover:before,
.lyrPop .btnClose:focus:before{ background:rgba(255, 255, 255, 0.5);}

/* 공통 오류 */
.pageError {display: flex; flex-direction: column; justify-content: center; align-items: center; min-height: 31.1rem; height: 100vh; padding: 2rem 1rem; text-align: center;}
.pageError img {max-width: 100%;}
.pageError .logo {font-size: 0; line-height: 0;}
.pageError .img {font-size: 0; line-height: 0; margin-top: 1rem;}
.pageError .txt {color: #111; margin-top: 1.25rem;}
.pageError .txt h2 {font-size: 1.5rem; font-weight: 600;}
.pageError .txt h2 .pc_blue {color: #085ea9;}
.pageError .txt p {font-size: 0.85rem; margin-top: 0.75rem;}
.pageError .txt .btns {margin-top: 1.75rem;}
.pageError .txt .btns .btn_bl {display: inline-block; min-width: 11rem; border-radius: 1.15rem; background: #085ea9; padding: 0.6rem 1rem; color: #fff; text-align: center;}

/* 프로그램 View */
.prgmView .row1 {border-radius: 1.5rem; border-top-left-radius: 0 !important; padding: 2px; position: relative; z-index: 0; overflow: hidden;}
.prgmView .row1::before {content: ""; display: block; width: 100%; height: 50%; background: linear-gradient(90deg, #2b6dc4 0%, #4bdbc3 100%); position: absolute; left: 0; top: 0; z-index: -1;}
.prgmView .row1::after {content: ""; display: block; width: 100%; height: 50%; background: #d1d5d9; position: absolute; left: 0; bottom: 0; z-index: -1;}
.prgmView .row1 .wrap {display: flex; align-items: flex-start; min-height: 8.85rem; border-radius: calc(1.5rem - 2px); border-top-left-radius: 0 !important; background: #fff; padding: 0 2rem; position: relative; overflow: hidden;}
.prgmView .row1 .wrap::before {content: ""; display: block; width: 8.2rem; height: 8.2rem; border-radius: 50%; background: #edf7ff; position: absolute; left: -1.5rem; top: -2rem; z-index: 1;}
.prgmView .row1 .wrap::after {content: ""; display: block; width: 5.4rem; height: 5.4rem; border-radius: 50%; background: url(/images/template/common/login/info_bg.png); position: absolute; left: 4rem; top: 1.35rem; z-index: 0;}
.prgmView .row1 .wrap > * {position: relative; z-index: 2;}
.prgmView .row1 .wrap .ico {flex-shrink: 0; display: flex; align-items: center; width: 46%; max-width: 22.5rem; padding: 2.25rem 0; font-size: 0; line-height: 0; margin-right: 1.25rem;}
.prgmView .row1 .wrap .ico img {max-width: 100%; min-height:20rem; /*max-height: 13.7rem;*/ object-fit: contain;}
.prgmView .row1 .wrap .txt {flex: 1; max-width: 100%; padding: 1.75rem 0; font-size: 0.85rem;}
.prgmView .row1 .wrap .txt .tit2 {font-size: 1.1rem; color: #114e91; font-weight: 600; margin-bottom: 0.75rem;}

/* 파일뷰어다운로드 */
.fileViewerDownload .box_st1 .wrap .txt .txtBoxWrap {display: flex; flex-wrap: wrap; justify-content: space-between;}
.fileViewerDownload .box_st1 .wrap .txt .txtBoxWrap > div {width: calc(50% - 0.5rem);}
.fileViewerDownload .box_st1 .wrap .txt .txtBoxWrap > div:nth-child(n+2) {margin-top: 0.5rem;}
.fileViewerDownload .box_st1 .wrap .txt .txtBoxWrap > div p {font-size: 0.75rem;}

/* 창 팝업 - 소속기관 */
.popup_affOrg {display: flex; flex-direction: column; height: 100vh; background: #f5f5f5;}
.popup_affOrg h1 {background: #144293; padding: 1rem; font-size: 1rem; color: #fff; font-weight: 600;}
.popup_affOrg .schBox {flex-shrink: 0; display: flex; height: 3.5rem; border-bottom: 1px solid #ddd; background: #fff; font-size: 0.9rem;}
.popup_affOrg .schBox input {flex: 1; height: 100%; border: 0; padding: 0 1rem;}
.popup_affOrg .schBox button {flex-shrink: 0; width: 5rem; height: 100%; background: #000; color: #fff; font-weight: 600;}
.popup_affOrg .rstBox {flex: 1; padding: 0.5rem 0.5rem 1rem; overflow-y: auto;}
.popup_affOrg .rstBox table {border-top: 2px solid #0f4e93; background: #fff; text-align: center;}
.popup_affOrg .rstBox th,
.popup_affOrg .rstBox td {border-bottom: 1px solid #ccc; padding: 1rem 0.5rem;}
.popup_affOrg .rstBox th {background: #f0f8ff;}
.popup_affOrg .rstBox .btns {text-align: center; margin-top: 1rem;}
.popup_affOrg .rstBox .btns a {display: inline-block; min-width: 9rem; border-radius: 1.2rem; padding: 0.5rem 1rem; color: #fff; margin: 0 0.1rem;}
.popup_affOrg .rstBox .btns a.btn_bl {border: 2px solid #0f4e93; background: #0f4e93;}
.popup_affOrg .rstBox .btns a.btn_gr {border: 2px solid #777; background: #777;}
/* 창 팝업 - 소속기관 : active */
.popup_affOrg .rstBox .btns a {transition: 0.15s;}
.popup_affOrg .rstBox tr:hover {background: #f0f8ff;}
.popup_affOrg .rstBox td a:hover,
.popup_affOrg .rstBox td a:focus {color: #0f4e93; font-weight: 500;}
.popup_affOrg .rstBox .btns a.btn_bl:hover,
.popup_affOrg .rstBox .btns a.btn_bl:focus {background: #fff; color: #0f4e93;}
.popup_affOrg .rstBox .btns a.btn_gr:hover,
.popup_affOrg .rstBox .btns a.btn_gr:focus {background: #fff; color: #777;}

/* 창 팝업 - 기관별 조직도 */
.popup_org {display: flex; flex-direction: column; height: 100vh; background: url(/images/template/TA/main/sec1/wrap2_bg.png) center / 10rem auto no-repeat;}
.popup_org h1 {background: #144293; padding: 1rem; font-size: 1rem; color: #fff; font-weight: 600;}
.popup_org .rstBox {flex: 1; padding: 1rem; overflow-y: auto;}
.popup_org .rstBox h2 {background: url(/images/template/TA/sub/tit1_bg.png) left top no-repeat; padding-top: 0.65rem; font-size: 1.1rem; color: #111; font-weight: 600; line-height: 1.3;}
.popup_org .rstBox ul + h2 {margin-top: 1.5rem;}
.popup_org .rstBox ul {margin-top: 0.75rem;}
.popup_org .rstBox ul li {padding-left: 0.7rem; position: relative;}
.popup_org .rstBox ul li + li {margin-top: 0.5rem;}
.popup_org .rstBox ul li::before {content: ""; display: block; width: 0.3rem; height: 0.3rem; border-radius: 50%; background: #056cb6; position: absolute; left: 0; top: 0.45rem;}
/* 창 팝업 - 기관별 조직도 */
.popup_org .rstBox ul li a:hover,
.popup_org .rstBox ul li a:focus {text-decoration: underline;}

/* 창 팝업 - 수강신청 결과 조회 */
.statPop {display: flex; flex-direction: column; height: 100vh; background: url(/images/template/TA/main/sec1/wrap2_bg.png) center / 10rem auto no-repeat;}
.statPop h1 {border-bottom: 1px solid #ddd; background: #fafafa; padding: 1rem; font-size: 1rem; color: #000; font-weight: 600;}
.statPop .rstBox {flex: 1; padding: 1rem; overflow-y: auto;}
.statPop .rstBox .tit1 {font-weight: 600; line-height: 1.3;}
.statPop .rstBox .btns {margin-top: 1rem;}

/* 창 팝업 - 시설 사용 신청서 */
.popup_fclUseApp {background: url(/images/template/TA/main/sec1/wrap2_bg.png) center / 10rem auto no-repeat;}
.popup_fclUseApp h1 {background: #144293; padding: 1rem; font-size: 1rem; color: #fff; font-weight: 600;}
.popup_fclUseApp .rstBox {padding: 1rem;}
.popup_fclUseApp .rstBox div[class*='tbl_st'] > table td {background: none;}

/* 인트로 */
.pageIntro {display: flex; align-items: center; height: 100vh; background: #f5fbff; position: relative; overflow: hidden;}
.pageIntro * {word-break: keep-all;}
.pageIntro::before {content: ""; display: block; width: 35.25rem; height: 35.25rem; background: url(/images/common/intro/bg01.png) center / contain no-repeat; position: absolute; left: -13.5rem; top: -12.75rem;}
.pageIntro::after {content: ""; display: block; width: 29.55rem; height: 29.55rem; background: url(/images/common/intro/bg02.png) center / contain no-repeat; position: absolute; right: -8.25rem; bottom: -8.5rem;}
.pageIntro .container {width: 100%; max-height: 100%; padding: 2rem calc(50% - 30.25rem); text-align: center; position: relative; z-index: 1; overflow-y: auto;}
.pageIntro .container > div {width: 100%;}
.pageIntro .introHd img {max-width: 100%;}
.pageIntro .introHd h1 {font-size: 0; line-height: 0;}
.pageIntro .introHd h2 {font-size: 0; line-height: 0; margin-top: 1rem;}
.pageIntro .introHd p {font-size: 1rem; color: #111; margin-top: 1.25rem;}
.pageIntro .introHd p em {font-weight: 600;}
.pageIntro .introBd {margin-top: 3.25rem;}
.pageIntro .introBd ul {display: flex; flex-wrap: wrap; margin: -0.75rem;}
.pageIntro .introBd ul li {width: calc(100% / 2);padding: 0.75rem;}
.pageIntro .introBd ul li .liWr {display: flex; flex-direction: column; height: 100%; border-radius: 1.5rem; background: #fff; box-shadow: 0.4rem 0.3rem 0.5rem rgba(0,0,0,0.1); position: relative; overflow: hidden;}
.pageIntro .introBd ul li .liWr::after {content: ""; display: block; width: 100%; height: 100%; border-radius: 1.5rem; border-width: 2px; border-style: solid; position: absolute; left: 0; top: 0; z-index: 1; opacity: 0;}
.pageIntro .introBd ul li .liWr .imgWr {height: 10.5rem; border-bottom-left-radius: 2.5rem;}
.pageIntro .introBd ul li .liWr .txtWr {flex: 1; display: flex; flex-direction: column; justify-content: space-between; align-items: center; padding: 0 1.5rem; margin-top: 1.25rem;}
.pageIntro .introBd ul li .liWr .txtWr h3 {font-size: 1.1rem; color: #1f3258; font-weight: 600;}
.pageIntro .introBd ul li .liWr .txtWr p {display: inline-flex; justify-content: center; align-items: center; width: 100%; max-width: 8.5rem; height: 2.25rem; border-radius: 1rem 1rem 0 0; font-size: 0.85rem; color: #fff; font-weight: 500; margin-top: 1.5rem;}
.pageIntro .introBd ul li .liWr .txtWr p i {font-size: 1.2rem; margin-left: 0.25rem;}
.pageIntro .introBd ul li:nth-child(4n+1) .liWr::after {border-color: #007ada;}
.pageIntro .introBd ul li:nth-child(4n+2) .liWr::after {border-color: #04a363;}
.pageIntro .introBd ul li:nth-child(4n+3) .liWr::after {border-color: #ffa200;}
.pageIntro .introBd ul li:nth-child(4n) .liWr::after {border-color: #0e375c;}
.pageIntro .introBd ul li:nth-child(4n+1) .liWr .imgWr {background: url(/images/common/intro/lnk01.png) #ddeffe center no-repeat;}
.pageIntro .introBd ul li:nth-child(4n+2) .liWr .imgWr {background: url(/images/common/intro/lnk02.png) #def7f1 center bottom no-repeat;}
.pageIntro .introBd ul li:nth-child(4n+3) .liWr .imgWr {background: url(/images/common/intro/lnk03.png) #fcf6df center bottom no-repeat;}
.pageIntro .introBd ul li:nth-child(4n) .liWr .imgWr {background: url(/images/common/intro/lnk04.png) #e6eaf8 center bottom no-repeat;}
.pageIntro .introBd ul li:nth-child(4n+1) .liWr .txtWr p {background: #007ada;}
.pageIntro .introBd ul li:nth-child(4n+2) .liWr .txtWr p {background: #04a363;}
.pageIntro .introBd ul li:nth-child(4n+3) .liWr .txtWr p {background: #ffa200;}
.pageIntro .introBd ul li:nth-child(4n) .liWr .txtWr p {background: #0e375c;}
.pageIntro .introFt {border-top: 1px solid #d3e3ed; padding-top: 1.5rem; text-align: left; margin-top: 4.25rem;}
.pageIntro .introFt .ftTop {display: flex; justify-content: space-between;}
.pageIntro .introFt .ftTop .info {padding: 0.475rem 0; margin-right: 1rem; overflow: hidden;}
.pageIntro .introFt .ftTop .info ul {display: flex; flex-wrap: wrap; margin: -0.3rem -0.6rem;}
.pageIntro .introFt .ftTop .info ul li {padding: 0.2rem 0.6rem; font-size: 0.9rem; color: #222; font-weight: 500; position: relative;}
.pageIntro .introFt .ftTop .info ul li::before {content: ""; display: block; width: 1px; height: 0.7rem; background: #d3e3ed; position: absolute; left: 0; top: calc(50% - 0.35rem);}
.pageIntro .introFt .ftTop .info ul li em {color: #2a4a98;}
.pageIntro .introFt .ftTop .sns ul {display: flex; margin: -0.1rem;}
.pageIntro .introFt .ftTop .sns ul li {margin: 0.1rem;}
.pageIntro .introFt .ftTop .sns ul li a {display: block; width: 2rem; height: 2rem; border-radius: 50%; font-size: 0; line-height: 0;}
.pageIntro .introFt .ftTop .sns ul li a img {width: 100%; height: 100%;}
.pageIntro .introFt .copyright {font-size: 0.75rem; color: #555; margin-top: 0.5rem;}
/* 인트로 : active */
.pageIntro .introBd ul li .liWr::after {transition: 0.15s;}
.pageIntro .introBd ul li .liWr:hover::after,
.pageIntro .introBd ul li .liWr:focus::after {opacity: 1;}

/* 인트로 - 사이트 전환 */
.pageIntro.tyChange {background: #effaff;}
.pageIntro.tyChange::before {background-image: url(/images/common/intro/bg01_change.png);}
.pageIntro.tyChange::after {background-image: url(/images/common/intro/bg02_change.png);}
.pageIntro.tyChange img {max-width: 100%;}
.pageIntro.tyChange .logo {font-size: 0; line-height: 0;}
.pageIntro.tyChange .imgWr {font-size: 0; line-height: 0; margin-top: 2.5rem;}
.pageIntro.tyChange .txtWr {letter-spacing: -0.05rem; margin-top: 1.75rem;}
.pageIntro.tyChange .txtWr .tit {font-size: 2.5rem; color: #032952; font-weight: 600;}
.pageIntro.tyChange .txtWr .tit em {color: #0069ba;}
.pageIntro.tyChange .txtWr .dsc {display: inline-block; padding: 0 1.5rem 0.2rem; font-size: 1.5rem; color: #171717; font-weight: 600; margin-top: 1.5rem; position: relative;}
.pageIntro.tyChange .txtWr .dsc::before {content: ""; display: block; width: 100%; height: 1rem; border-radius: 0.5rem; background: #b9e9ff; position: absolute; left: 0; bottom: 0; z-index: -1;}

/* 자주하는질문 - common */
[class^="bbs_Faq"] + [class^="bbs_Faq"] {margin-top: 2rem;}
[class^="bbs_Faq"] li > a {display: flex; padding: 0.9rem 1.5rem; padding-right: 2.95rem; position: relative;}
[class^="bbs_Faq"] li > a::before {content: "Q."; flex-shrink: 0; display: block; font-size: 1.2rem; color: #555; font-weight: 500; line-height: 1.15rem; margin-right: 1rem;}
[class^="bbs_Faq"] li > a span.faq_arr {position: absolute; right: 1rem; top: 1.05rem;}
[class^="bbs_Faq"] li > a span.faq_arr::before {content: "\e941"; font-family: 'xeicon'; font-size: 1rem; color: #111;}
[class^="bbs_Faq"] li .faq_A {border: 1px solid #dfebf1; border-top: 0; background: #f3fbff; padding: 1.25rem 1.5rem 1.5rem 3.6rem; line-height: 1.8; position: relative;}
[class^="bbs_Faq"] li .faq_A::before {content: "A."; font-size: 1.2rem; color: #193356; font-weight: 500; position: absolute; left: 1.5rem; top: 0.85rem;}
/* 자주하는질문 - A타입 */
.bbs_FaqA li + li {margin-top: 0.5rem;}
.bbs_FaqA li > a {border-radius: 0.75rem; border: 1px solid #ddd;}
.bbs_FaqA li > a::before {color: #555;}
.bbs_FaqA li .faq_A {border-radius: 0 0 0.75rem 0.75rem;}
/* 자주하는질문 - B타입 */
.bbs_FaqB {border-top: 2px solid #1d4070;}
.bbs_FaqB li {border-bottom: 1px solid #ccc;}
.bbs_FaqB li > a::before {color: #555;}
/* 자주하는질문 - common : active */
[class^="bbs_Faq"] li > a,
[class^="bbs_Faq"] li > a::before,
[class^="bbs_Faq"] li > a span.faq_arr::before {transition: 0.15s;}
[class^="bbs_Faq"] li > a:hover,
[class^="bbs_Faq"] li > a:focus {border-color: #cce3ee; background: #e7f6fd;}
[class^="bbs_Faq"] li.on > a {background: #1d4070; color: #fff; font-weight: 500;}
[class^="bbs_Faq"] li.on > a::before {color: #fff;}
[class^="bbs_Faq"] li.on > a span.faq_arr::before {content: "\e944"; color: #fff;}
/* 자주하는질문 - A타입 : active */
.bbs_FaqA li.on > a {border-radius: 0.75rem 0.75rem 0 0; border-color: #1d4070;}
/* 자주하는질문 - B타입 : active */
.bbs_FaqB li.on {border-bottom: 0; margin-top: -1px; position: relative; z-index: 1;}
/* 자주하는질문 - common : no_alpha */
[class^="bbs_Faq"] li.no_alpha > a::before {display: none;}
[class^="bbs_Faq"] li.no_alpha .faq_A {padding: 1.25rem 1.5rem 1.5rem;}
[class^="bbs_Faq"] li.no_alpha .faq_A::before {display: none;}

/* 사이트맵 */
.sitemap .tabBtn {margin-bottom: 0;}
.sitemap .tabCon .conBox {display: none;}
.sitemap .tabCon .conBox a {display: block;}
.sitemap .tabCon .conBox a[target="_blank"] {padding-right: 0.5rem;}
.sitemap .tabCon .conBox a[target="_blank"]::after {content: "\e980"; font-family: 'xeicon'; margin-left: 0.25rem;}
.sitemap .tabCon .conBox .dep01 > ul {display: flex; flex-wrap: wrap; margin: 0 -0.9vw;}
.sitemap .tabCon .conBox .dep01 > ul > li {width: 25%; padding: 0 0.9vw; margin-top: 1.75rem;}
.sitemap .tabCon .conBox .dep01 > ul > li > a {font-size: 0.95rem; color: #111; font-weight: 600;}
.sitemap .tabCon .conBox .dep02 {border-radius: 0.5rem; border: 1px solid #eaeff7; background: #f7faff; margin-top: 0.65rem;}
.sitemap .tabCon .conBox .dep02 > ul {padding: 0.6rem 1rem;}
.sitemap .tabCon .conBox .dep02 > ul > li {padding: 0.1rem 0;}
.sitemap .tabCon .conBox .dep02 > ul > li > a {padding-left: 0.5rem; color: #666; position: relative;}
.sitemap .tabCon .conBox .dep02 > ul > li > a::before {content: ""; display: block; width: 0.25rem; height: 2px; background: #666; position: absolute; left: 0; top: calc(0.6rem - 1px);}
.sitemap .tabCon .conBox .dep03 {border-radius: 0.4rem; border: 1px solid #eaeff7; background: #fff; margin: 0.3rem 0;}
.sitemap .tabCon .conBox .dep03 > ul {padding: 0.5rem 0.7rem;}
.sitemap .tabCon .conBox .dep03 > ul > li {padding: 0.1rem 0;}
.sitemap .tabCon .conBox .dep03 > ul > li > a {padding-left: calc(0.3rem + 3px); font-size: 0.7rem; color: #444; position: relative;}
.sitemap .tabCon .conBox .dep03 > ul > li > a::before {content: ""; display: block; width: 3px; height: 3px; border-radius: 50%; background: #7d7d7d; position: absolute; left: 0; top: calc(0.5rem - 1.5px);}
.sitemap .tabCon .conBox .dep04 {border-radius: 0.4rem; background: #f4f4f4; margin: 0.3rem 0;}
.sitemap .tabCon .conBox .dep04 > ul {padding: 0.5rem;}
.sitemap .tabCon .conBox .dep04 > ul > li > a {padding-left: calc(0.3rem + 3px); font-size: 0.7rem; color: #555; position: relative;}
.sitemap .tabCon .conBox .dep04 > ul > li > a::before {content: ""; display: block; width: 3px; height: 1px; background: #8d8d8d; position: absolute; left: 0; top: 0.5rem;}
/* 사이트맵 : active */
.sitemap .tabCon .conBox.active {display: block;}
.sitemap .tabCon .conBox .dep02 > ul > li > a:hover,
.sitemap .tabCon .conBox .dep02 > ul > li > a:focus {color: #144293; font-weight: 600;}
.sitemap .tabCon .conBox .dep02 > ul > li > a:hover::before,
.sitemap .tabCon .conBox .dep02 > ul > li > a:focus::before {background: #144293;}
.sitemap .tabCon .conBox .dep03 > ul > li > a:hover,
.sitemap .tabCon .conBox .dep03 > ul > li > a:focus {color: #111; font-weight: 600;}
.sitemap .tabCon .conBox .dep03 > ul > li > a:hover::before,
.sitemap .tabCon .conBox .dep03 > ul > li > a:focus::before {background: #111;}
.sitemap .tabCon .conBox .dep04 > ul > li > a:hover,
.sitemap .tabCon .conBox .dep04 > ul > li > a:focus {color: #111; font-weight: 500;}
.sitemap .tabCon .conBox .dep04 > ul > li > a:hover::before,
.sitemap .tabCon .conBox .dep04 > ul > li > a:focus::before {background: #111;}
 
/* 만족도 조사 - satisfySurvey */
.satisfySurvey {border-radius: 0.75rem; border: 1px solid #ddd; background: #fff; margin-top: 2.5rem; overflow: hidden;}
.satisfySurvey .titWrap {max-height: 5rem; border-bottom: 1px solid #ddd; padding: 0.9rem 1.25rem; font-size: 0.75rem; overflow-y: auto;}
.satisfySurvey .titWrap em {font-weight: 500;}
.satisfySurvey .titWrap .infoUpdate {display: flex; justify-content: space-between;}
.satisfySurvey .titWrap .infoUpdate + .infoUpdate {border-top: 1px dashed #ddd; padding-top: 0.5rem; margin-top: 0.5rem;}
.satisfySurvey .titWrap .infoUpdate .info ul {display: flex;}
.satisfySurvey .titWrap .infoUpdate .info ul li {margin-right: 0.75rem;}
.satisfySurvey .titWrap .infoUpdate .info ul li i {font-size: 0.9rem; margin-right: 0.1rem; position: relative; top: 0.05rem;}
.satisfySurvey .titWrap .infoUpdate .info ul li i.xi-call {font-size: 0.8rem;}
.satisfySurvey .titWrap .infoUpdate .update {white-space: nowrap; margin-left: 0.5rem;}
.satisfySurvey .conWrap {display: flex; background: #f7fbff; padding: 1.5rem 1.25rem;}
.satisfySurvey .conWrap .imgWrap {flex-shrink: 0; display: flex; justify-content: center; align-items: center; width: 4.5rem; height: 4.5rem; border-radius: 50%; background: #e2f0fd; font-size: 0; line-height: 0; margin-right: 1.75rem;}
.satisfySurvey .conWrap .imgWrap img {max-width: 100%; max-height: 100%; object-fit: contain;}
.satisfySurvey .conWrap .txtWrap {flex: 1;}
.satisfySurvey .conWrap .txtWrap .radioWrap {margin-top: 0.5rem;}
.satisfySurvey .conWrap .txtWrap .radioWrap ul {display: flex; flex-wrap: wrap; margin: -0.2rem -0.4rem;}
.satisfySurvey .conWrap .txtWrap .radioWrap ul li {padding: 0.2rem 0.4rem;}
.satisfySurvey .conWrap .txtWrap .radioWrap ul li input[type="radio"] {border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px;}
.satisfySurvey .conWrap .txtWrap .radioWrap ul li input[type="radio"] + label {padding-left: 0.9rem; font-size: 0.75rem; font-weight: 500; position: relative; cursor: pointer;}
.satisfySurvey .conWrap .txtWrap .radioWrap ul li input[type="radio"] + label::before {content: ""; display: block; width: 0.65rem; height: 0.65rem; border-radius: 50%; border: 1px solid #666; background: #fff; position: absolute; left: 0; top: 0.2rem;}
.satisfySurvey .conWrap .txtWrap .radioWrap ul li input[type="radio"] + label::after {content: ""; display: block; width: 0.35rem; height: 0.35rem; border-radius: 50%; background: #144293; position: absolute; left: 0.15rem; top: 0.35rem; transform: scale(0);}
.satisfySurvey .conWrap .txtWrap .opinionArea {display: flex; align-items: center; margin-top: 1rem;}
.satisfySurvey .conWrap .txtWrap .opinionArea textarea {flex: 1; height: 1.9rem; border-radius: 0.35rem; border: 1px solid #ccc; background: #fff; padding: 0.35rem 0.75rem; font-size: 0.75rem; color: #555; margin: 0; margin-right: 1rem;}
.satisfySurvey .conWrap .txtWrap .opinionArea .btns {flex-shrink: 0; display: flex; margin: 0;}
.satisfySurvey .conWrap .txtWrap .opinionArea .btns a {min-width: 5.75rem; padding: 0.35rem 0.7rem; margin: 0;}
.satisfySurvey .conWrap .txtWrap .opinionArea .btns a + a {margin-left: 0.5rem;}
/* 만족도 조사 - satisfySurvey : active */
.satisfySurvey .conWrap .txtWrap .radioWrap ul li input[type="radio"] + label::before,
.satisfySurvey .conWrap .txtWrap .radioWrap ul li input[type="radio"] + label::after {transition: 0.15s;}
.satisfySurvey .conWrap .txtWrap .radioWrap ul li input[type="radio"]:hover + label,
.satisfySurvey .conWrap .txtWrap .radioWrap ul li input[type="radio"]:focus + label {text-decoration: underline;}
.satisfySurvey .conWrap .txtWrap .radioWrap ul li input[type="radio"]:checked + label {color: #085ea9;}
.satisfySurvey .conWrap .txtWrap .radioWrap ul li input[type="radio"]:checked + label::before {border-color: #144293;}
.satisfySurvey .conWrap .txtWrap .radioWrap ul li input[type="radio"]:checked + label::after {transform: scale(1);}

/* 만족도 조사 - satisfyResult */
.satisfyResult {display: none; border-radius: 0.75rem; border: 1px solid #ddd; margin-top: 0.5rem; overflow: hidden;}
.satisfyResult table {width: calc(100% + 1px); text-align: center; margin-left: -1px;}
.satisfyResult th {width: calc(100% / 6); border-left: 1px solid #ddd; background: #f7fbff; padding: 1.1rem 0.5rem; font-weight: 600;}
.satisfyResult th[scope="rowgroup"] {background: #e8f4ff; font-size: 0.9rem; color: #111; word-break: keep-all;}
.satisfyResult td {border-left: 1px solid #ddd; border-top: 1px solid #ddd; padding: 0.85rem 0.5rem;}

/* 공공누리 저작권 */
.ggnrCopy {display: flex; justify-content: space-between; align-items: center; border-radius: 0.75rem; border: 1px solid #ddd; background: #f7fbff; padding: 1rem; margin-top: 2.5rem;}
.satisfyResult + .ggnrCopy {margin-top: 2rem;}
.ggnrCopy .txt {display: flex; align-items: flex-start; margin-right: 1rem;}
.ggnrCopy .txt i {flex-shrink: 0; display: block; width: 1.5rem; line-height: 1.5rem; border-radius: 50%; background: #085ea9; font-size: 0.9rem; color: #fff; text-align: center; margin-right: 0.5rem;}
.ggnrCopy .txt p {flex: 1; padding-top: 0.15rem;}
.ggnrCopy img {flex-shrink: 0; max-width: 5.7rem; max-height: 1.7rem; object-fit: contain;}

/* 캘린더 - 리스트 타입 - Full
+ 교육 > 교직원지원 > 보결강사지원 > 유치원
+ 교육 > 교직원지원 > 보결강사지원 > 유치원 > "신청일자 관리" 버튼
+ 참여/신청 > 견학·체험 > view
+ 참여/신청 > 학교시설 > write
*/
.vocalWrap .calWrap table {display: flex; flex-direction: column;}
.vocalWrap .calWrap table tr {flex: 1; display: flex;}
.vocalWrap .calWrap table th,
.vocalWrap .calWrap table td {display: block; width: calc(100% / 7);}
.vocalWrap .calWrap table thead {display: block;}
.vocalWrap .calWrap table thead th {border-left: 1px solid #739ec3; background: #085ea9; padding: 1rem 0; color: #fff;}
.vocalWrap .calWrap table thead tr th:first-child {border-top-left-radius: 1rem; border-left: 0;}
.vocalWrap .calWrap table thead tr th:last-child {border-top-right-radius: 1rem;}
.vocalWrap .calWrap table tbody {flex: 1; display: flex; flex-direction: column;}
.vocalWrap .calWrap table tbody tr td {border-left: 1px solid #eee; border-bottom: 1px solid #eee; vertical-align: top;}
.vocalWrap .calWrap table tbody tr td:first-child {background: #fff2f3;}
.vocalWrap .calWrap table tbody tr td:last-child {border-right: 1px solid #eee; background: #f0f8fe;}
.vocalWrap .calWrap table tbody tr:last-child td:first-child {border-bottom-left-radius: 1rem;}
.vocalWrap .calWrap table tbody tr:last-child td:last-child {border-bottom-right-radius: 1rem;}
.vocalWrap .calWrap table tbody tr td .tdWr {display: block; min-height: 5rem; height: 100%; padding: 0.5rem 0.5rem 1rem; font-size: 0.75rem; line-height: 1; position: relative; z-index: 1;}
.vocalWrap .calWrap table tbody tr td .tdWr::before {content: ""; display: block; width: calc(100% + 2px); height: calc(100% + 2px); border-radius: 0.25rem; border: 3px solid #085ea9; position: absolute; left: -1px; top: -1px; opacity: 0;}
.vocalWrap .calWrap table tbody tr:last-child td:first-child .tdWr::before {border-bottom-left-radius: 1rem;}
.vocalWrap .calWrap table tbody tr:last-child td:last-child .tdWr::before {border-bottom-right-radius: 1rem;}
.vocalWrap .calWrap table tbody tr td .tdWr .cal_data {display: block; font-size: 0.7rem; position: relative; z-index: 1;}
.vocalWrap .calWrap table tbody tr td .tdWr .cal_data > span {display: inline-block; border-radius: 0.25rem; padding: 0.3rem 0.5rem; color: #f4eaee; text-align: center; margin: 0.4rem 0 0.25rem;}
.vocalWrap .calWrap table tbody tr td .tdWr .cal_data > span.no {background: #9e2763;}
.vocalWrap .calWrap table tbody tr td .tdWr .cal_data > span.wait {background: #777;}
.vocalWrap .calWrap table tbody tr td .tdWr .cal_data > span.ing {background: #085ea9;}
.vocalWrap .calWrap table tbody tr td .tdWr .cal_data > span.okay {background: #017444;}
.vocalWrap .calWrap table tbody tr td .tdWr .cal_data > span.can {background: #39A90A;}
.vocalWrap .calWrap table tbody tr td .tdWr .cal_data > span.wait2 {background: #f36d00;}
.vocalWrap .calWrap table tbody tr td .tdWr .cal_data > span.cant {background: #e40000;}
.vocalWrap .calWrap table tbody tr td .tdWr .cal_data .ppWrap {color: #444; line-height: 1.4;}
/* 캘린더 - 리스트 타입 : event */
.vocalWrap .calWrap table tbody tr td.event {background: #e4f1ff; font-weight: 600;}
.vocalWrap .calWrap table tbody tr td.red_date .tdWr > span {display: inline-block; color: #f30013; margin-left: 0.25rem;}
/* 캘린더 - 리스트 타입 : able */
.vocalWrap.ableCheck * {border-color: #ddd !important;}
.vocalWrap.ableCheck .calWrap table tbody tr td:first-child,
.vocalWrap.ableCheck .calWrap table tbody tr td:last-child {background: #fff;}
/*웹표준 점검 오류*/
/*.vocalWrap.ableCheck .calWrap table tbody tr td:has(a) {background: #fafafa !important;}*/
.vocalWrap.ableCheck .calWrap table tbody tr td.abl {background: #fefbdc !important;}
.vocalWrap.ableCheck .calWrap table tbody tr td.ablNot {background: #ddd !important;}
.vocalWrap.ableCheck .calWrap table tbody tr td.ablOn {background: #e0f7ff !important;}
.vocalWrap.ableCheck .calWrap table tbody tr td.ablLOn {background: #ffe4ab !important;}
.vocalWrap.ableCheck .calWrap table tbody tr td.ablAllOn {background: #d0f7c7  !important;}
.vocalWrap.ableCheck .ableView {display: flex; margin-top: 0.5rem;}
.vocalWrap.ableCheck .ableView li {display: flex; align-items: center;}
.vocalWrap.ableCheck .ableView li + li {margin-left: 0.5rem;}
.vocalWrap.ableCheck .ableView li .bg {width: 1rem; height: 1rem; border: 1px solid #ccc;}
.vocalWrap.ableCheck .ableView li.ablOn .bg {background: #e0f7ff;}
.vocalWrap.ableCheck .ableView li.ablLOn .bg {background: #ffe4ab;}
.vocalWrap.ableCheck .ableView li.ablAllOn .bg {background: #d0f7c7 ;}
.vocalWrap.ableCheck .ableView li.ablNot .bg {background: #ddd;}
.vocalWrap.ableCheck .ableView li.abl .bg {background: #fff456;}
.vocalWrap.ableCheck .ableView li .txt {font-size: 0.75rem; margin-left: 0.25rem;}
/* 캘린더 - 리스트 타입 : active */
.vocalWrap .calWrap table tbody tr td .tdWr:hover::before,
.vocalWrap .calWrap table tbody tr td.on a::before {opacity: 1;}
.vocalWrap .calWrap table tbody tr td .tdWr:hover .cal_data .ppWrap {text-decoration: underline;}

/* 캘린더 - 캘린더 유지 타입
+ 소식 > 교육청안내 > 학교일정정보
*/
.sche_cal2 .vocalWrap h3 {font-size: 0.9rem; color: #000; font-weight: 500; text-align: center; margin-bottom: 0.5rem;}
.sche_cal2 .vocalWrap .calWrap table {display: table;}
.sche_cal2 .vocalWrap .calWrap table tr {display: table-row;}
.sche_cal2 .vocalWrap .calWrap table thead {display: table-header-group;}
.sche_cal2 .vocalWrap .calWrap table thead th {display: table-cell; height: 2.25rem; padding: 0; vertical-align: middle;}
.sche_cal2 .vocalWrap .calWrap table thead tr th:first-child {border-top-left-radius: 0;}
.sche_cal2 .vocalWrap .calWrap table thead tr th:last-child {border-top-right-radius: 0;}
.sche_cal2 .vocalWrap .calWrap table tbody {display: table-row-group; height: 10rem;}
.sche_cal2 .vocalWrap .calWrap table tbody tr td {display: table-cell; padding: 0.25rem; text-align: center; vertical-align: middle;}
.sche_cal2 .vocalWrap .calWrap table tbody tr td:first-child {background: none;}
.sche_cal2 .vocalWrap .calWrap table tbody tr td:last-child {background: none;}
.sche_cal2 .vocalWrap .calWrap table tbody tr td.sun {color: #db2929;}
.sche_cal2 .vocalWrap .calWrap table tbody tr td.sat {color: #047ed9;}
.sche_cal2 .vocalWrap .calWrap table tbody tr:last-child td:first-child {border-bottom-left-radius: 0;}
.sche_cal2 .vocalWrap .calWrap table tbody tr:last-child td:last-child {border-bottom-right-radius: 0;}

/* 캘린더 - 리스트 타입 - Half
+ 소식 > 교육청안내 > 조직도(전화번호) > 전화번호 안내
*/
[class*="sche_cal"] .vocalWrap,
[class*="func_frame"] .vocalWrap {width: 26rem;}
[class*="func_frame"] .vocalWrap .calWrap table tbody {height: 20rem;}
[class*="func_frame"] .vocalWrap .calWrap table tbody tr td {height: 4rem;}
[class*="func_frame"] .vocalWrap .calWrap table tbody tr td .tdWr {min-height: unset;}

/* 캘린더 - 버튼 */
.vocalWrap .btns span,
.vocalWrap .btns a {min-width: 7.4rem; border-radius: 0.5rem; padding: 0.5rem 1rem;}

/* 캘린더 - 상세 */
[class*="sche_cal"] .cal_txt,
.func_frame .cal_txt {display: flex; flex-direction: column; width: calc(100% - 27.5rem); border-radius: 1rem; border: 1px solid #eeeeee; overflow: hidden;}
[class*="sche_cal"] .cal_txt > span,
.func_frame .cal_txt > span {display: flex; align-items: center; justify-content: center; height: 3.15rem; background: #0e375c; font-size: 0.85rem; color: #fff; font-weight: 500;}
[class*="sche_cal"] .cal_txt .txt_Wrap,
.func_frame .cal_txt .txt_Wrap {flex: 1; padding: 1rem; overflow-y: auto;}

/* 캘린더 - 캘린더 유지 타입 - 상세 */
.sche_cal2 .cal_txt {border-radius: 0;}
.sche_cal2 .cal_txt > span {height: 2.15rem;}

/* 보컬강사지원 신청프로그램 */
.vocalWrap select { background: url(/resource/images/con_com/sel_arr2.png) #fff right 0.6rem top 0.8rem/0.5rem 0.3rem no-repeat !important; padding-left: 0.75rem !important; }
.vocalWrap .dateWrap { display: flex; width: 100%; gap: 0.45rem; align-items: center; justify-content: center; }
.vocalWrap .dateWrap span { font-size: 1rem; font-weight: 600; color: #333333; }
.vocalWrap .dateWrap a { font-size: 1rem; display: flex; align-items: center; justify-content: center; width: 1.55rem; height: 1.55rem; border-radius: 0.5rem; border: 1px solid #eeeeee; background: #f5f5f5; }
.vocalWrap .selWrap { display: flex; width: 100%; flex-wrap: wrap; gap: 0.5rem; align-items: center; justify-content: end; margin: 0.4rem 0 0.6rem; }
.vocalWrap .selWrap select:nth-child(1) { min-width: 4.5rem !important; }
.vocalWrap .selWrap select:nth-child(2) { min-width: 3rem !important; }
/* 보컬강사지원 신청프로그램 : active */
.vocalWrap .dateWrap a { transition: 0.15s; -webkit-transition: 0.15s; }
.vocalWrap .dateWrap a.prev:hover,
.vocalWrap .dateWrap a.prev:focus { transform: translateX(-5px); -webkit-transform: translateX(-5px); }
.vocalWrap .dateWrap a.next:hover,
.vocalWrap .dateWrap a.next:focus { transform: translateX(5px); -webkit-transform: translateX(5px); }

/* 보컬강사지원 신청프로그램 관리자 */
.vocalWrap .dt_chk { display: flex; align-items: center; width: 100%; position: relative; }
.vocalWrap .dt_chk input { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.vocalWrap .dt_chk input + label { padding-right: 0.9rem; color: #444; position: relative; cursor: pointer; }
.vocalWrap .dt_chk input + label::before { content: ""; display: block; width: 0.65rem; height: 0.65rem; border: 1px solid #666; position: absolute; right: 0; top: 0.08rem; }
.vocalWrap .dt_chk input + label::after { content: ""; display: block; width: 0.2rem; height: 0.35rem; border-bottom: 1px solid #144293; border-right: 1px solid #144293; position: absolute; right: 0.21rem; top: 0.22rem; transform: rotate(45deg); opacity: 0; visibility: hidden; }
.vocalWrap .dt_sel { display: block; width: 100%; position: relative; margin-top: 0.5rem; }
.vocalWrap .dt_sel > select { min-width: 100%; }
.vocalWrap .dt_sel > input { min-width: 100%; }
.red_date .dt_chk,
.red_date .dt_sel { display: none; }
.vocalWrap .chk_bot { margin-top: 0.5rem; display: flex; align-items: center; gap: 0.25rem; flex-wrap: wrap; }
.vocalWrap .chk_bot .allsel > select { min-width: 4.5rem; }
.vocalWrap .allchk input { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.vocalWrap .allchk input + label { padding-left: 0.9rem; color: #444; position: relative; cursor: pointer; }
.vocalWrap .allchk input + label::before { content: ""; display: block; width: 0.65rem; height: 0.65rem; border: 1px solid #666; position: absolute; left: 0; top: 0.25rem; }
.vocalWrap .allchk input + label::after { content: ""; display: block; width: 0.2rem; height: 0.35rem; border-bottom: 1px solid #144293; border-right: 1px solid #144293; position: absolute; left: 0.25rem; top: 0.35rem; transform: rotate(45deg); opacity: 0; visibility: hidden; }
/* active */
.vocalWrap .dt_chk input + label { transition: 0.15s; -webkit-transition: 0.15s; }
.vocalWrap .dt_chk input:hover + label, .vocalWrap .dt_chk input:focus + label { text-decoration: underline; }
.vocalWrap .dt_chk input:checked + label { color: #085ea9; }
.vocalWrap .dt_chk input:checked + label::before { border-color: #144293; }
.vocalWrap .dt_chk input:checked + label::after { opacity: 1; visibility: visible; }
.vocalWrap .allchk input + label { transition: 0.15s; -webkit-transition: 0.15s; }
.vocalWrap .allchk input:hover + label, .vocalWrap .dt_chk input:focus + label { text-decoration: underline; }
.vocalWrap .allchk input:checked + label { color: #085ea9; }
.vocalWrap .allchk input:checked + label::before { border-color: #144293; }
.vocalWrap .allchk input:checked + label::after { opacity: 1; visibility: visible; }

/* 운영일정캘린더 - 공통 */
.grd_Wrap { display: flex; align-items: center; justify-content: space-between; background: #f8f8f8; padding: 1rem 1.5rem; flex-wrap: wrap; margin-bottom: 3rem; gap: 0.25rem 0; }
.grd_Wrap p { color: #5b5b5b; }
.grd_Wrap p > strong { color: #000000; }
.grd_Wrap .grd_sel { display: flex; align-items: center; gap: 0.25rem 0.5rem; flex-wrap: wrap; }
.grd_Wrap .grd_sel > a { min-width: 7.5rem; padding: 0.3rem 1rem; margin: 0; }
[class*="sche_cal"] {display: flex; justify-content: space-between; align-items: flex-end;}

/* 운영일정캘린더 */
.sche_cal .date_frame { display: flex; align-items: center; justify-content: space-between; width: 100%; margin-bottom: 1rem; }
.sche_cal .date_frame > a {min-width: 5rem; padding: 0.25rem 0.95rem; border-radius: 0.25rem; text-align: center;}
.sche_cal .cal_txt {height: 28.4rem;}

/* 운영일정캘린더_v2 */
.sche_cal2 .cal_txt {height: 12.25rem;}

/* 일정기능 - 공통 */
[class*="func_frame"] {position: relative;}
[class*="func_frame"] .func_tit {display: flex; align-items: center; justify-content: center; gap: 1rem; width: 100%; height: 2.5rem; border-radius: 1.5rem; background: #f5f5f5; font-size: 1rem; margin-bottom: 0.75rem;}
[class*="func_frame"] .func_tit span {font-weight: 600;}
[class*="func_frame"] .func_tit span em {color: #085ea9;}
[class*="func_frame"] .func_cal {display: flex; justify-content: space-between; margin: 2rem 0;}
[class*="func_frame"] .func_cal .vocalWrap {width: 34rem;}
[class*="func_frame"] .func_cal .rol_tb {width: calc(100% - 35rem); margin-top: 0;}
[class*="func_frame"] .func_cal .rol_tb table {display: flex; flex-direction: column; height: 100%;}
[class*="func_frame"] .func_cal .rol_tb table thead {display: block;}
[class*="func_frame"] .func_cal .rol_tb table tbody {flex: 1; display: block; border-bottom: 1px solid #ddd; overflow-y: auto;}
[class*="func_frame"] .func_cal .rol_tb table tr {display: flex;}
[class*="func_frame"] .func_cal .rol_tb table th {padding: 0.5rem; font-size: 0.75rem;}
[class*="func_frame"] .func_cal .rol_tb table td {padding: 0.5rem; border: none; font-size: 0.7rem;}
[class*="func_frame"] > .btns {text-align: right;}
[class*="func_frame"] > .btns a {min-width: 3.9rem; border-radius: 0.5rem; padding: 0.5rem;}
/* 일정기능 - 공통 : no_data */
[class*="func_frame"] .func_cal .rol_tb table tr.no_data {height: 100%;}
[class*="func_frame"] .func_cal .rol_tb table tr.no_data td {display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; padding: 5rem 0.5rem;}

/* 일정기능_v2 */
.func_frame_v2 .func_cal .rol_tb table th, 
.func_frame_v2 .func_cal .rol_tb table td {flex: 1;}

/* 일정기능_v3 */
.func_frame_v3 .func_cal .rol_tb table th, 
.func_frame_v3 .func_cal .rol_tb table td {width: 20%;}
.func_frame_v3 .func_cal .rol_tb table th:last-child, 
.func_frame_v3 .func_cal .rol_tb table td:last-child {width: 80%;}

/* 예약 - rsvInfoWrap */
.rsvInfoWrap {display: flex; padding: 2rem; position: relative; overflow: hidden;}
.rsvInfoWrap::before {content: ""; display: block; width: 27.5rem; height: 27.5rem; border-radius: 50%; background: #085ea9; position: absolute; right: -11.5rem; top: -12.5rem; z-index: -2; opacity: 0.05;}
.rsvInfoWrap::after {content: ""; display: block; width: 13.75rem; height: 13.75rem; border-radius: 50%; background: #085ea9; position: absolute; right: -3.75rem; top: 8.5rem; z-index: -2; opacity: 0.05;}
.rsvInfoWrap .brdr {position: absolute; left: 0; top: 0; right: 0; bottom: 0; z-index: -1;}
.rsvInfoWrap .brdr::before {content: ""; display: block; width: 100%; height: 100%; border: 1px solid #ddd; position: absolute; left: 0; top: 0;}
.rsvInfoWrap .brdr::after {content: ""; display: block; width: 7.5rem; height: 7.5rem; border-top: 2px solid #085ea9; border-left: 2px solid #085ea9; position: absolute; left: 0; top: 0;}
.rsvInfoWrap .img {flex-shrink: 0; display: flex; justify-content: center; align-items: center; width: 30%; max-width: calc(28rem + 2px); height: 17rem; border-radius: 1rem; border: 1px solid #eee; background: #f5fbff; margin-right: 2rem;}
.rsvInfoWrap .img img {max-width: 100%; max-height: 100%; object-fit: contain;}
.rsvInfoWrap .txt {flex: 1;}
.rsvInfoWrap .img + .txt {padding-top: 0.75rem;}
.rsvInfoWrap .txt h3 {font-size: 1.1rem; color: #1b4690; font-weight: 600;}
.rsvInfoWrap .txt ul {margin-top: 1rem;}
.rsvInfoWrap .txt ul li {display: flex; padding: 0.2rem 0; padding-left: 0.8rem; position: relative;}
.rsvInfoWrap .txt ul li::before {content: ""; display: block; width: 0.3rem; height: 0.3rem; border-radius: 50%; background: #7fa0bd; position: absolute; left: 0; top: 0.65rem;}
.rsvInfoWrap .txt ul li .tit {flex-shrink: 0; min-width: 2.9rem; color: #111; font-weight: 500; margin-right: 1rem;}
.rsvInfoWrap .txt ul li .dsc {flex: 1; color: #555;}
.rsvInfoWrap .txt ul li .dsc a {display: flex; margin-top: 0.1rem;}
.rsvInfoWrap .txt ul li .dsc a + a {margin-top: 0.4rem;}
.rsvInfoWrap .txt ul li .dsc a i {flex-shrink: 0; display: block; width: 1.05rem; line-height: 1.05rem; border-radius: 0.3rem; background: #144393; color: #fff; text-align: center; margin-right: 0.3rem;}
.rsvInfoWrap .txt ul li .dsc a span {flex: 1; font-weight: 500;}
/* 예약 - rsvInfoWrap : active */
.rsvInfoWrap .txt ul li .dsc a:hover span,
.rsvInfoWrap .txt ul li .dsc a:focus span {text-decoration: underline;}

/* 예약 - rsvView */
.rsvView {margin: 2.5rem 0 3.5rem;}
.rsvView h2 {font-size: 1.5rem; color: #000; font-weight: 600; margin-bottom: 0.75rem;}
.rsvView .vocalWrap {margin-top: 2.5rem;}
.rsvView .scheWrap {margin-top: 2.5rem;}
.rsvView .scheWrap div[class*='tbl_st'] > table td {vertical-align: middle;}
.rsvView .rsvDetailWrap {margin-top: 3rem;}
.rsvView .rsvDetailWrap .tabBtn {margin: 0 0 1.5rem;}
.rsvView .rsvDetailWrap .tabCon .conBox {display: none; border: 1px solid #ddd; padding: 1rem;}
/* 예약 - rsvView : active */
.rsvView .rsvDetailWrap .tabCon .conBox.active {display: block;}
/* 예약 - rsvView : no_data */
.rsvView .rsvDetailWrap .tabCon .conBox.no_data {padding: 8.5rem 1rem; text-align: center;}

/* 예약 - rsvWrite */
.rsvWrite {margin: 2.5rem 0 3.5rem;}
.rsvWrite h2 {font-size: 1.5rem; color: #000; font-weight: 600; margin-bottom: 0.75rem;}
.rsvWrite .rsvWriteWrap {margin-top: 2.5rem;}
.rsvWrite .rsvWriteWrap [class*='tbl_st'] {margin-top: 0.75rem;}
.rsvWrite .rsvWriteWrap [class*='tbl_st'] > table th label::before,
.rsvWrite .rsvWriteWrap [class*='tbl_st'] > table th span::before {content: "\002A"; color: #d71919; margin-right: 0.25rem;}
.rsvWrite .rsvWriteWrap [class*='tbl_st'] > table td {padding: 0.4rem 1rem; vertical-align: middle;}
.rsvWrite .rsvWriteWrap [class*='tbl_st'] > table td input:not([type="radio"], [type="checkbox"]),
.rsvWrite .rsvWriteWrap [class*='tbl_st'] > table td select {width: 100%; max-width: 17.35rem; height: 1.9rem; border-radius: 0.35rem; border: 1px solid #ccc; padding: 0 0.75rem; font-size: 0.75rem; color: #555; margin: 0.1rem 0;}
.rsvWrite .rsvWriteWrap [class*='tbl_st'] > table td input.phn {min-width: unset; width: 5rem; max-width: unset;}
.rsvWrite .rsvWriteWrap [class*='tbl_st'] > table td select {padding-left: 0.5rem; padding-right: 1.85rem; background: url(/resource/images/con_com/sel_arr.png) #fff right 0.75rem center/0.6rem 0.4rem no-repeat; appearance: none;}
.rsvWrite .rsvWriteWrap [class*='tbl_st'] > table td select::-ms-expand {display: none;}
.rsvWrite .rsvWriteWrap [class*='tbl_st'] > table td [class^='btn_'] {display: inline-block; min-width: 6.25rem; border-radius: 1.2rem; padding: 0.3rem 0.7rem; font-size: 0.7rem; text-align: center; margin-right: 5px;}
.rsvWrite .rsvWriteWrap [class*='tbl_st'] > table td span {display: inline-block; font-size: 0.75rem; color: #666;}
.rsvWrite .prvInfoBox {margin-top: 2.5rem;}
.rsvWrite > .btns {margin: 2.5rem 0 0;}

/* 예약 - rsvList */
.rsvList h2 {font-size: 1.5rem; color: #000; font-weight: 600; text-align: center; margin-bottom: 1.25rem;}
.rsvList .searchOption {border-radius: 1rem; background: #fff; overflow: hidden;}
.rsvList .searchOption + .searchOption {margin-top: 1.25rem;}
.rsvList .searchOption > button,
.rsvList .searchOption > h3 {width: 100%; height: 3rem; background: #f3f3f3; padding: 0; position: relative;}
.rsvList .searchOption > button span,
.rsvList .searchOption > h3 span {display: flex; justify-content: center; align-items: center; height: 100%; font-size: 1rem;}
.rsvList .searchOption > button i {display: flex; justify-content: center; align-items: center; width: 3rem; height: 100%; font-size: 1.1rem; position: absolute; right: 0; top: 0;}
.rsvList .searchOption .searchCon {border-radius: 0 0 1rem 1rem; border: 1px solid #d1dae3; border-top: none; overflow: hidden;}
.rsvList .searchOption .tabBox {padding: 1.25rem 3rem 2rem;}
.rsvList .searchOption .tabBox .tabList1 ul {display: flex; flex-wrap: wrap; margin: -0.25rem -0.5rem;}
.rsvList .searchOption .tabBox .tabList1 ul li {width: 20%; padding: 0.25rem 0.5rem;}
.rsvList .searchOption .tabBox .tabList1.Tab_w25 ul li {width: 25%;}
.rsvList .searchOption .tabBox .tabList1 ul li a {display: flex; color: #666;}
.rsvList .searchOption .tabBox .tabList1 ul li a i {flex-shrink: 0; font-size: 1rem; margin-right: 0.4rem; position: relative; top: 0.1rem;}
.rsvList .searchOption .tabBox .tabList2 {border-radius: 0.6rem; border: 1px solid #d9e3ea; background: #f5fbff; padding: 1rem 1.5rem; margin-top: 1rem;}
.rsvList .searchOption .tabBox .tabList2 ul {display: flex; flex-wrap: wrap; margin: -0.25rem -1.25rem;}
.rsvList .searchOption .tabBox .tabList2 ul li {padding: 0.25rem 1.25rem;}
.rsvList .searchOption .tabBox .tabList2 ul li a {padding-left: 0.7rem; color: #666; font-weight: 500; position: relative;}
.rsvList .searchOption .tabBox .tabList2 ul li a::before {content: ""; display: block; border-left: 0.25rem solid #144393; border-top: 0.15rem solid transparent; border-bottom: 0.15rem solid transparent; position: absolute; left: 0; top: 0.45rem;}
.rsvList .searchOption .dlBox > dl {display: flex;}
.rsvList .searchOption .dlBox > dl + dl {border-top: 1px solid #d1dae3;}
.rsvList .searchOption .dlBox > dl > dt {flex-shrink: 0; width: 16%; background: #f5fbff; padding: 1.35rem 1rem; font-size: 0.9rem; color: #222; font-weight: 500; text-align: center;}
.rsvList .searchOption .dlBox > dl > dd {flex: 1; display: flex; justify-content: space-between; align-items: center; padding: 0.5rem 1.5rem;}
.rsvList .searchOption .dlBox > dl > dd .radioCheck {margin: -0.25rem -1.5rem;}
.rsvList .searchOption .dlBox > dl > dd .radioCheck li {padding: 0.25rem 1.5rem;}
.rsvList .searchOption .dlBox > dl > dd .radioCheck li label {padding-left: 1.35rem;}
.rsvList .searchOption .dlBox > dl > dd .radioCheck li input[type="radio"] + label::before {width: 0.85rem; height: 0.85rem; top: 0.15rem;}
.rsvList .searchOption .dlBox > dl > dd .radioCheck li input[type="radio"] + label::after {width: 0.55rem; height: 0.55rem; top: 0.3rem;}
.rsvList .searchOption .dlBox > dl > dd .radioCheck li input[type="checkbox"] + label::before {width: 0.85rem; height: 0.85rem; top: 0.15rem;}
.rsvList .searchOption .dlBox > dl > dd .radioCheck li input[type="checkbox"] + label::after {width: 0.25rem; height: 0.5rem; border-width: 2px; left: 0.3rem; top: 0.25rem;}
.rsvList .searchOption .dlBox > dl.row02 > dd .dateWrap {display: flex; align-items: center;}
.rsvList .searchOption .dlBox > dl.row02 > dd .dateWrap .col {display: flex; height: 2.2rem; border-radius: 0.35rem; border: 1px solid #ccc;}
.rsvList .searchOption .dlBox > dl.row02 > dd .dateWrap .col + .col {margin-left: 1.35rem; position: relative;}
.rsvList .searchOption .dlBox > dl.row02 > dd .dateWrap .col + .col::before {content: "\007E"; position: absolute; left: -0.95rem; top: 50%; transform: translateY(-50%);}
.rsvList .searchOption .dlBox > dl.row02 > dd .dateWrap .col input {flex: 1; height: 100%; border-radius: 0.35rem 0 0 0.35rem; border: 0; margin: 0;}
.rsvList .searchOption .dlBox > dl.row02 > dd .dateWrap .col label {flex-shrink: 0; display: flex; justify-content: center; align-items: center; width: 2.2rem; border-radius: 0.35rem; background: #056cbb; font-size: 1rem; color: #fff; margin: -1px; margin-left: 0;}
.rsvList .searchOption .dlBox > dl.row04 > dd select {height: 2.25rem; border-radius: 0.35rem; margin: 0; margin-right: 0.35rem;}
.rsvList .searchOption .dlBox > dl.row04 > dd input {flex: 1; height: 2.25rem; border-radius: 0.35rem; margin: 0;}
.rsvList .searchOption .dlBox > dl.row04 > dd button {flex-shrink: 0; width: 6.75rem; height: 2.25rem; border-radius: 0.35rem; background: #144293; color: #fff; font-weight: 600; margin-left: 0.35rem;}
.rsvList .searchOption .dlBox > dl.row04 > dd button i {font-size: 0.9rem; margin-left: 0.3rem; position: relative; top: 0.05rem;}
.rsvList .searchOption .dlBox > dl.row05 > dd {flex-direction: column; align-items: flex-start;}
.rsvList .searchOption .dlBox > dl.row05 > dd dl {display: flex; width: 100%;}
.rsvList .searchOption .dlBox > dl.row05 > dd dl + dl {border-top: 1px dashed #ddd; padding-top: 0.5rem; margin-top: 0.5rem;}
.rsvList .searchOption .dlBox > dl.row05 > dd dl dt {flex-shrink: 0; width: 5rem; padding: 0.1rem 0; color: #000; font-weight: 500;}
.rsvList .searchOption .dlBox > dl.row05 > dd dl dd {flex: 1;}
.rsvList .searchOption .mngBox {display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; padding: 0.75rem 1.25rem;}
.rsvList .searchOption .mngBox > div.lft {display: flex; flex-wrap: wrap; margin: 0.15rem;}
.rsvList .searchOption .mngBox > div.lft select {margin: 0.1rem;}
.rsvList .searchOption .mngBox > div.lft .iptWr {margin: 0.1rem; position: relative;}
.rsvList .searchOption .mngBox > div.lft .iptWr input {padding-right: 3.5rem; margin: 0;}
.rsvList .searchOption .mngBox > div.lft .iptWr .btnSearch {align-items: center; min-width: unset; width: 2.75rem; height: 100%; border-radius: 0.35rem; padding: 0 0.5rem; font-size: 0.75rem; margin: 0; position: absolute; right: 0; top: 0;}
.rsvList .searchOption .mngBox > div.rght {margin: 0.15rem;}
.rsvList .searchOption .mngBox > div.rght button {margin: 0.1rem;}
.rsvList .rsvListCon {margin-top: 2.25rem;}
.rsvList .rsvListCon > .titWrap {display: flex; justify-content: space-between; align-items: center;}
.rsvList .rsvListCon > .titWrap h3 {font-size: 1.1rem; color: #111; font-weight: 600;}
.rsvList .rsvListCon > .titWrap .listUtil {display: flex; align-items: center;}
.rsvList .rsvListCon > .titWrap .listUtil .listViewOpt {display: flex; margin-right: 1.5rem;}
.rsvList .rsvListCon > .titWrap .listUtil .listViewOpt a {display: flex; align-items: center; color: #666;}
.rsvList .rsvListCon > .titWrap .listUtil .listViewOpt a + a {margin-left: 0.5rem;}
.rsvList .rsvListCon > .titWrap .listUtil .listViewOpt a i {flex-shrink: 0; display: flex; justify-content: center; align-items: center; width: 2rem; height: 2rem; border-radius: 0.35rem; border: 1px solid #e2e2e2; font-size: 1.1rem; margin-right: 0.3rem;}
.rsvList .rsvListCon > .titWrap .listUtil .listBrief {display: flex; align-items: center;}
.rsvList .rsvListCon > .titWrap .listUtil .listBrief li {display: flex; align-items: center;}
.rsvList .rsvListCon > .titWrap .listUtil .listBrief li + li {padding-left: calc(1.4rem + 2px); position: relative;}
.rsvList .rsvListCon > .titWrap .listUtil .listBrief li + li::before {content: ""; display: block; height: 0.6rem; border-left: 2px dotted #9d9d9d; position: absolute; left: 0.7rem; top: calc(50% - 0.3rem);}
.rsvList .rsvListCon > .titWrap .listUtil .listBrief li span {color: #111;}
.rsvList .rsvListCon > .titWrap .listUtil .listBrief li select {min-width: 4rem; margin: 0; margin-left: 0.4rem;}
/* 예약 - rsvList : active */
.rsvList .searchOption,
.rsvList .searchOption > button span,
.rsvList .searchOption > button i {transition: 0.15s;}
.rsvList .searchOption.active {box-shadow: 0 0.25rem 0.6rem rgba(0,0,0,0.11);}
.rsvList .searchOption.active > button span,
.rsvList .searchOption.active > h3 span {background: #0069ba; color: #fff; font-weight: 600;}
.rsvList .searchOption.active > button i {background: #002f53; color: #fff;}
.rsvList .searchOption .tabBox .tabList1 ul li.on a {color: #0069ba; font-weight: 600;}
.rsvList .searchOption .tabBox .tabList1 ul li.on a i::before {content: "\e92b";}
.rsvList .searchOption .tabBox .tabList1 ul li a:hover span,
.rsvList .searchOption .tabBox .tabList1 ul li a:focus span {text-decoration: underline;}
.rsvList .searchOption .tabBox .tabList2 ul li a:hover,
.rsvList .searchOption .tabBox .tabList2 ul li a:focus {text-decoration: underline;}
.rsvList .searchOption .tabBox .tabList2 ul li.on a {padding-left: 1.35rem; color: #0269b8; font-weight: 600;}
.rsvList .searchOption .tabBox .tabList2 ul li.on a::before {content: "\e92c"; border: 0; font-family: 'xeicon'; font-size: 1rem; color: #0069ba; top: 0.1rem;}
.rsvList .searchOption .dlBox > dl > dd .radioCheck li input[type="checkbox"]:checked + label::before {border-color: #0068b9; background: #0068b9;}
.rsvList .searchOption .dlBox > dl > dd .radioCheck li input[type="checkbox"]:checked + label::after {border-color: #fff;}
.rsvList .rsvListCon > .titWrap .listUtil .listViewOpt a.on {color: #111; font-weight: 500;}
.rsvList .rsvListCon > .titWrap .listUtil .listViewOpt a.on i {border-color: #0069ba; background: #e5f4ff;}

/* 예약 - rsvList - type1 */
.rsvList .rsvListCon .conWrap .conType1 div[class*='tbl_st'] > table td {vertical-align: middle;}
.rsvList .rsvListCon .conWrap .conType1 div[class*='tbl_st'] > table td.sbj .list_st4 {border-radius: 0.5rem; background: #f1f1f1; padding: 0.25rem 0.5rem;}
.rsvList .rsvListCon .conWrap .conType1 div[class*='tbl_st'] > table td.sbj .list_st4 > li {font-size: 0.7rem;}
.rsvList .rsvListCon .conWrap .conType1 div[class*='tbl_st'] > table td.tbl div[class*='tbl_st'] > table {font-size: 0.7rem;}
.rsvList .rsvListCon .conWrap .conType1 div[class*='tbl_st'] > table td.tbl div[class*='tbl_st'] > table th,
.rsvList .rsvListCon .conWrap .conType1 div[class*='tbl_st'] > table td.tbl div[class*='tbl_st'] > table td {padding: 0.4rem 0.5rem;}

/* 예약 - rsvList - type2 */
.rsvList .rsvListCon .conWrap .conType2 {margin-top: 1rem;}
.rsvList .rsvListCon .conWrap .conType2 > ul {display: flex; flex-wrap: wrap; margin: -1rem -1.5rem;}
.rsvList .rsvListCon .conWrap .conType2 > ul > li {width: calc(100% / 3); padding: 1rem 1.5rem;}
.rsvList .rsvListCon .conWrap .conType2 > ul > li a {display: block; height: 100%; border-radius: 1rem; border: 1px solid #ddd; padding: 1.25rem 1.75rem 1.5rem; position: relative;}
.rsvList .rsvListCon .conWrap .conType2 > ul > li a::before {content: ""; display: block; width: calc(100% + 2px); height: calc(100% + 2px); border-radius: 1rem; border: 2px solid #056cbb; position: absolute; left: -1px; top: -1px; opacity: 0;}
.rsvList .rsvListCon .conWrap .conType2 > ul > li a::after {content: "go"; display: block; width: 2.75rem; height: 2.75rem; border-radius: 50%; border: 0.25rem solid #c8deef; background: #0069ba; padding-top: 0.3rem; font-size: 0.9rem; color: #fff; font-weight: 600; text-align: center; position: absolute; right: 1.5rem; bottom: 0; transform: translateY(50%); opacity: 0;}
.rsvList .rsvListCon .conWrap .conType2 > ul > li a .imgWrap {display: flex; justify-content: center; align-items: center; height: 8.5rem; border-radius: 1rem; border: 1px solid #ddd; background: #f5fbff; font-size: 0; line-height: 0;}
.rsvList .rsvListCon .conWrap .conType2 > ul > li a .imgWrap img {max-width: 100%; max-height: 100%; object-fit: contain;}
.rsvList .rsvListCon .conWrap .conType2 > ul > li a .txtWrap .tit {display: flex; align-items: center; height: 4.15rem;}
.rsvList .rsvListCon .conWrap .conType2 > ul > li a .txtWrap .tit span {flex-shrink: 0; display: block; width: 4rem; line-height: 1.75rem; border-radius: 0.875rem; font-size: 0.7rem; color: #fff; font-weight: 600; text-align: center; margin-right: 0.7rem;}
.rsvList .rsvListCon .conWrap .conType2 > ul > li a .txtWrap .tit span.wait {background: #085ea9;}
.rsvList .rsvListCon .conWrap .conType2 > ul > li a .txtWrap .tit span.ing {background: #f36d00;}
.rsvList .rsvListCon .conWrap .conType2 > ul > li a .txtWrap .tit span.end {background: #777;}
.rsvList .rsvListCon .conWrap .conType2 > ul > li a .txtWrap .tit p {flex: 1; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; max-height: 2.5rem; font-size: 0.9rem; color: #111; font-weight: 600; overflow: hidden; text-overflow: ellipsis;}
.rsvList .rsvListCon .conWrap .conType2 > ul > li a .txtWrap .con {border-top: 1px solid #ddd;}
.rsvList .rsvListCon .conWrap .conType2 > ul > li a .txtWrap .con ul {padding-top: 0.75rem;}
.rsvList .rsvListCon .conWrap .conType2 > ul > li a .txtWrap .con ul li {display: flex; padding: 0.2rem 0; padding-left: 0.8rem; position: relative;}
.rsvList .rsvListCon .conWrap .conType2 > ul > li a .txtWrap .con ul li::before {content: ""; display: block; width: 0.3rem; height: 0.3rem; border-radius: 50%; background: #7fa0bd; position: absolute; left: 0; top: 0.65rem;}
.rsvList .rsvListCon .conWrap .conType2 > ul > li a .txtWrap .con ul li p {flex-shrink: 0; width: 2.9rem; color: #111; font-weight: 500; margin-right: 0.5rem;}
.rsvList .rsvListCon .conWrap .conType2 > ul > li a .txtWrap .con ul li span {flex: 1; color: #555;}
/* 예약 - rsvList - type2 : hasLeftMenu */
#lnb + #subContent .rsvList .rsvListCon .conWrap .conType2 > ul > li {width: 50%;}
/* 예약 - rsvList - type2 : active */
.rsvList .rsvListCon .conWrap .conType2 > ul > li a,
.rsvList .rsvListCon .conWrap .conType2 > ul > li a::before,
.rsvList .rsvListCon .conWrap .conType2 > ul > li a::after {transition: 0.15s;}
.rsvList .rsvListCon .conWrap .conType2 > ul > li a:hover,
.rsvList .rsvListCon .conWrap .conType2 > ul > li a:focus {box-shadow: 0.25rem 0.45rem 1rem rgba(0,0,0,0.05);}
.rsvList .rsvListCon .conWrap .conType2 > ul > li a:hover::before,
.rsvList .rsvListCon .conWrap .conType2 > ul > li a:focus::before,
.rsvList .rsvListCon .conWrap .conType2 > ul > li a:hover::after,
.rsvList .rsvListCon .conWrap .conType2 > ul > li a:focus::after {opacity: 1;}



/* 대표 - 참여/신청 - 학교시설 - write */
.sub_0506_view .ntcWr {display: flex; justify-content: space-between; margin-top: 1rem;}
.sub_0506_view .ntcWr .imgWr {display: flex; justify-content: center; align-items: center; width: calc(30rem + 2px); height: calc(20rem + 2px); border-radius: 0.5rem; border: 1px solid #ddd; background: #fafafa; overflow: hidden;}
.sub_0506_view .ntcWr .imgWr img {max-width: 100%; max-height: 100%; object-fit: contain;}
.sub_0506_view .ntcWr .txtWr {display: flex; flex-direction: column; width: calc(100% - 31rem - 2px);}
.sub_0506_view .ntcWr .txtWr .box_st3 {height: 18.4rem; overflow-y: auto;}
.sub_0506_view .tmtblWr {background: none !important;}
.sub_0506_view .tmtblWr .titWr {display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center;}
.sub_0506_view .tmtblWr .titWr .tit3 {flex: 1; margin-right: 1rem;}
.sub_0506_view .tmtblWr .titWr .ableView {display: flex;}
.sub_0506_view .tmtblWr .titWr .ableView li {display: flex; align-items: center;}
.sub_0506_view .tmtblWr .titWr .ableView li + li {margin-left: 0.5rem;}
.sub_0506_view .tmtblWr .titWr .ableView li .bg {width: 1rem; height: 1rem; border: 1px solid #ccc;}
.sub_0506_view .tmtblWr .titWr .ableView li.ablNot .bg {background: #ddd;}
.sub_0506_view .tmtblWr .titWr .ableView li.ablIng .bg {background: #ace6fa;}
.sub_0506_view .tmtblWr .titWr .ableView li.ablIng2 .bg {background: #ffe4ab;}
.sub_0506_view .tmtblWr .titWr .ableView li.abl .bg {background: #fff456;}
.sub_0506_view .tmtblWr .titWr .ableView li .txt {font-size: 0.75rem; margin-left: 0.25rem;}
.sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table {display: table; flex-direction: unset; min-width: unset; height: unset;}
.sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table tbody {flex: unset; display: table-row-group; max-height: unset; border-bottom: 0; overflow-y: unset;}
.sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table tr {display: table-row;}
.sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table th {flex: unset;}
.sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table td {flex: unset; border-left: 1px solid #c5c9d6; border-bottom: 1px solid #c5c9d6;}
.sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table td ul {display: flex;flex-wrap: wrap;margin: -0.15rem;}
.sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table td ul li {width: calc(100% / 3); padding: 0.15rem;}
.sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table td ul li input[type="checkbox"] {display: none;}
.sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table td ul li input[type="checkbox"] + label {display: flex; justify-content: center; align-items: center; width: 100%; height: 2.5rem; border: 1px solid #ddd; background: #fafafa;}
.sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table td ul li.ablIng input[type="checkbox"] + label {background: #e0f7ff; cursor: pointer;}
.sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table td ul li.ablIng2 input[type="checkbox"] + label {background: #ffe4ab; cursor: pointer;}
.sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table td ul li.abl input[type="checkbox"] + label {background: #fefbdc; cursor: pointer;}
.sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table td ul li.ablNot input[type="checkbox"] + label {background: #ddd; cursor: pointer;}
.sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table td ul li input[type="checkbox"]:not([disabled]):checked + label {border-color: #144293; background: #144293; color: #fff;}

/*채용공고 검색*/
.nttSrch .dateWrap {display: flex; flex-wrap: wrap; align-items: center;}
.nttSrch .dateWrap .col{display: flex; height: 2.2rem; border-radius: 0.35rem; border: 1px solid #ccc;}
.nttSrch .dateWrap .col + .col {margin-left: 1.35rem; position: relative;}
.nttSrch .col + .col::before {content: "\007E"; position: absolute; left: -0.95rem; top: 50%; transform: translateY(-50%);}
.nttSrch .dateWrap .col input {flex: 1; height: 100%; border-radius: 0.35rem 0 0 0.35rem; border: 0; margin: 0;}
.nttSrch .dateWrap .col label {flex-shrink: 0; display: flex; justify-content: center; align-items: center; width: 2.2rem; border-radius: 0.35rem; background: #056cbb; font-size: 1rem; color: #fff; margin: -1px; margin-left: 0;}

@media (max-width: 1540px) {
 /* 프로그램 View */
.prgmView .row1 .wrap .ico {width: 44%;}
.prgmView .row1 .wrap .ico img {max-width: 100%; min-height:20rem; /*max-height: 13.7rem;*/ object-fit: contain;}

}

@media (max-width: 1480px) {

    /* 운영일정캘린더_v2 */
    .grd_Wrap .grd_sel select { min-width: 8.35rem; }
    
    /* 프로그램 View */
    .prgmView .row1 .wrap .ico {flex-shrink: 0; display: flex; align-items: center; width: 38%; max-width: 22.5rem; padding: 2.25rem 0; font-size: 0; line-height: 0; margin-right: 1.25rem;}
    .prgmView .row1 .wrap .ico img {max-width: 100%; min-height:20rem; /*max-height: 13.7rem;*/ object-fit: contain;}
    .prgmView .row1 .wrap .txt {flex: 1; max-width: 100%; padding: 1.75rem 0; font-size: 0.8rem;}
}

@media (max-width: 1440px) {

    /* 메인 공통컨텐츠 */
    /* 정렬 : 3개 */
    .comCont.align03 .cont{max-width:38%;}
    .comCont.align03 .cont:nth-child(3){max-width:19%;}
    /* 정렬 : 2개 */
    .comCont.align02 .cont{max-width:39%;}
    .comCont.align02 .cont:nth-child(2){max-width:57%;}

    /* 사이트맵 */
    .sitemap .tabCon .conBox .dep01 > ul > li {margin-top: 1.25rem;}

    /* 예약 - rsvList */
    .rsvList .searchOption .tabBox {padding: 1.5rem;}

    /* 예약 - rsvList - type2 */
    .rsvList .rsvListCon .conWrap .conType2 > ul {margin: -0.75rem;}
    .rsvList .rsvListCon .conWrap .conType2 > ul > li {padding: 0.75rem;}
}



@media (max-width: 1440px) and (min-width: 1241px) {

    /* 캘린더 - 리스트 타입 - Half
    + 소식 > 교육청안내 > 조직도(전화번호) > 전화번호 안내
    */
    [class*="sche_cal"] .vocalWrap,
    [class*="func_frame"] .vocalWrap {width: 100%;}

    /* 캘린더 - 상세 */
    [class*="sche_cal"] .cal_txt,
    .func_frame .cal_txt {width: 100%; margin-top: 1.5rem;}

    /* 운영일정캘린더 - 공통 */
    [class*="sche_cal"] {flex-wrap: wrap;}

    /* 일정기능 - 공통 */
    [class*="func_frame"] .func_cal {flex-wrap: wrap;}
    [class*="func_frame"] .func_cal .vocalWrap {width: 100%;}
    [class*="func_frame"] .func_cal .rol_tb {width: 100%; margin-top: 1.5rem;}

    /* 대표 - 참여/신청 - 학교시설 - write */
    .sub_0506_view .tmtblWr {margin-top: 1rem !important;}
}



@media (max-width: 1280px) {

    /* 인트로 */
    .pageIntro .container {padding: 2em;}
    .pageIntro .introBd {margin-top: 2.5rem;}
    .pageIntro .introBd ul li .liWr .imgWr {height: 15vw; background-size: 80% auto !important;}
    .pageIntro .introBd ul li .liWr .txtWr h3 {font-size: 1rem;}
    .pageIntro .introBd ul li .liWr .txtWr p {font-size: 0.8rem; margin-top: 1.25rem;}
    .pageIntro .introBd ul li .liWr .txtWr p i {font-size: 1.15rem;}
    .pageIntro .introFt {padding-top: 1.25rem; margin-top: 3rem;}
    .pageIntro .introFt .ftTop .info ul li {font-size: 0.85rem;}

    /* 인트로 - 사이트 전환 */
    .pageIntro.tyChange .txtWr .tit {font-size: 2.25rem;}
    
    /* 프로그램 View */
    .prgmView .row1 .wrap .ico {flex-shrink: 0; display: flex; align-items: center; width: 35%; max-width: 22.5rem; padding: 2.25rem 0; font-size: 0; line-height: 0; margin-right: 1.25rem;}
    .prgmView .row1 .wrap .ico img {max-width: 100%; min-height:20rem; /*max-height: 13.7rem;*/ object-fit: contain;}
}



@media (max-width: 1240px) {

     /* 메인 공통컨텐츠 */
    .comCont .item .img.sq img{ top:auto; max-width:100%; width:auto; height:100%; max-height:inherit; transform: none; -webkit-transform: none;}

    /***** 레이어팝업 *****/
    .lyrWrap .inner{ padding:1.75rem;} 
    .lyrPop .btnClose{ right:2rem; top:-1.25rem; width:2.5rem; height:2.5rem; line-height:2.5rem; }
    .lyrPop .btnClose:before{ left:-.3rem; top:-.3rem; width:calc(100% + .6rem); height:calc(100% + .6rem); }

    /* 자주하는질문 - common */
    [class^="bbs_Faq"] + [class^="bbs_Faq"] {margin-top: 3.75vw;}

    /* 만족도 조사 - satisfySurvey */
    .satisfySurvey {margin-top: 3rem;}

    /* 공공누리 저작권 */
    .ggnrCopy {margin-top: 3rem;}
    .satisfyResult + .ggnrCopy {margin-top: 2.5rem;}

    /* 예약 - rsvInfoWrap */
    .rsvInfoWrap .txt h3 {font-size: 1.05rem;}
    .rsvInfoWrap .txt ul {margin-top: 0.75rem;}

    /* 예약 - rsvView */
    .rsvView {margin: 0;}
    .rsvView h2 {font-size: 1.25rem;}

    /* 예약 - rsvWrite */
    .rsvWrite {margin: 0;}
    .rsvWrite h2 {font-size: 1.25rem;}

    /* 예약 - rsvList */
    .rsvList h2 {font-size: 1.25rem;}
    .rsvList .searchOption .tabBox .tabList1 ul li {width: 25%;}
    .rsvList .searchOption .tabBox .tabList1.Tab_w25 ul li {width: calc(100% / 3);}

    /* 예약 - rsvList - type1 */
    .rsvList .rsvListCon .conWrap .conType1 div[class*='tbl_st'] > table {display: block;}
    .rsvList .rsvListCon .conWrap .conType1 div[class*='tbl_st'] > table thead {display: none;}
    .rsvList .rsvListCon .conWrap .conType1 div[class*='tbl_st'] > table tbody {display: block;}
    .rsvList .rsvListCon .conWrap .conType1 div[class*='tbl_st'] > table tr {display: flex; flex-wrap: wrap; border-bottom: 1px solid #c5c9d6; padding: 0.5rem 0;}
    .rsvList .rsvListCon .conWrap .conType1 div[class*='tbl_st'] > table td {display: block; border: 0; background: none; padding: 0.2rem 0.75rem; font-size: 0.75rem; text-align: left; position: relative;}
    .rsvList .rsvListCon .conWrap .conType1 div[class*='tbl_st'] > table td.num {display: none;}
    .rsvList .rsvListCon .conWrap .conType1 div[class*='tbl_st'] > table td.img {order: -2;}
    .rsvList .rsvListCon .conWrap .conType1 div[class*='tbl_st'] > table td.sbj {order: -1; font-size: 0.8rem; color: #000; font-weight: 500;}
    .rsvList .rsvListCon .conWrap .conType1 div[class*='tbl_st'] > table td.tdW100 {width: 100%; text-align: left;}
    .rsvList .rsvListCon .conWrap .conType1 div[class*='tbl_st'] > table td:not(.tdW100, :nth-child(7), .last)::after {content: ""; display: block; width: 0.2rem; height: 0.2rem; border-radius: 50%; background: #cbcbcb; position: absolute; right: -0.1rem; top: calc(50% - 0.1rem);}
    .rsvList .rsvListCon .conWrap .conType1 div[class*='tbl_st'] > table td.tbl {order: 1; width: 100%;}
    .rsvList .rsvListCon .conWrap .conType1 div[class*='tbl_st'] > table td.tbl::after {display: none;}
    .rsvList .rsvListCon .conWrap .conType1 div[class*='tbl_st'] > table td.tbl div[class*='tbl_st'] > table tr {justify-content: center; background: #fafcff; padding: 0.25rem 0;}
    .rsvList .rsvListCon .conWrap .conType1 div[class*='tbl_st'] > table td.tbl div[class*='tbl_st'] > table td {padding-top: 0.25rem; padding-bottom: 0.25rem; font-size: 0.7rem; text-align: center;}
    .rsvList .rsvListCon .conWrap .conType1 div[class*='tbl_st'] > table td.tbl div[class*='tbl_st'] > table td:nth-child(3)::after {display: none;}
    .rsvList .rsvListCon .conWrap .conType1 div[class*='tbl_st'] > table td p {display: inline;}

    /* 예약 - rsvList - type2 */
    .rsvList .rsvListCon .conWrap .conType2 > ul > li a {padding: 1rem 1.25rem 1.25rem;}
    .rsvList .rsvListCon .conWrap .conType2 > ul > li a .txtWrap .tit {flex-wrap: wrap; height: auto; padding: 0.75rem 0;}
    .rsvList .rsvListCon .conWrap .conType2 > ul > li a .txtWrap .tit p {flex: unset; width: 100%; margin-top: 0.5rem;}
    .rsvList .rsvListCon .conWrap .conType2 > ul > li a .txtWrap .con ul {font-size: 0.75rem;}
    .rsvList .rsvListCon .conWrap .conType2 > ul > li a .txtWrap .con ul li {padding-left: 0.7rem;}
    .rsvList .rsvListCon .conWrap .conType2 > ul > li a .txtWrap .con ul li::before {top: 0.6rem;}
    /* 예약 - rsvList - type2 : hasLeftMenu */
    #lnb + #subContent .rsvList .rsvListCon .conWrap .conType2 > ul > li {width: calc(100% / 3);}

    /* 대표 - 참여/신청 - 학교시설 - write */
    .sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table td ul li {width: 25%;}
}



@media (max-width: 1150px) {

    /* 메인 공통컨텐츠 */
    /* 정렬 : 3개 */
    .comCont.align03 .cont,
    .comCont.align03 .cont:nth-child(3){max-width:31%;}
    /* 정렬 : 2개 */
    .comCont.align02 .cont,
    .comCont.align02 .cont:nth-child(2){max-width:49%;}
}



@media (max-width: 1024px) { 

    /* 프로그램 View */
    .prgmView .row1 .wrap {flex-wrap: wrap; min-height: unset; padding: 0 2rem;}
    .prgmView .row1 .wrap .ico {justify-content: center; width: 100%; max-width: unset; padding-bottom: 0; margin-right: 0;}
    .prgmView .row1 .wrap .txt {font-size: 0.8rem;}
    .prgmView .row1 .wrap .txt .tit2 {font-size: 1rem;}

    /* 창 팝업 - 기관별 조직도 */
    .popup_org .rstBox h2 {font-size: 1.05rem;}

    /* 창 팝업 - 시설 사용 신청서 */
    .popup_fclUseApp h1 {font-size: 1.05rem;}

    /* 인트로 */
    .pageIntro::before {width: 25rem; height: 25rem; left: -10rem; top: -10rem;}
    .pageIntro::after {width: 25rem; height: 25rem; right: -10rem; bottom: -10rem;}
    .pageIntro .introBd {margin-top: 2rem;}
    .pageIntro .introBd ul {margin: -0.5rem;}
    .pageIntro .introBd ul li {padding: 0.5rem;}
    .pageIntro .introBd ul li .liWr,
    .pageIntro .introBd ul li .liWr::after {border-radius: 1rem;}
    .pageIntro .introBd ul li .liWr .imgWr {border-bottom-left-radius: 1.5rem;}
    .pageIntro .introBd ul li .liWr .txtWr h3 {font-size: 0.95rem;}
    .pageIntro .introBd ul li .liWr .txtWr {margin-top: 1rem;}
    .pageIntro .introBd ul li .liWr .txtWr p {height: 2rem;}
    .pageIntro .introFt {margin-top: 2.5rem;}
    .pageIntro .introFt .ftTop .info ul li {font-size: 0.8rem;}

    /* 인트로 - 사이트 전환 */
    .pageIntro.tyChange .txtWr .tit {font-size: 2rem;}

    /* 사이트맵 */
    .sitemap .tabCon .conBox .dep01 > ul > li {width: calc(100% / 3);}
    .sitemap .tabCon .conBox .dep02 {margin-top: 0.5rem;}

    /* 캘린더 - 리스트 타입 - Half
    + 소식 > 교육청안내 > 조직도(전화번호) > 전화번호 안내
    */
    [class*="sche_cal"]:not(.sche_cal2) .vocalWrap,
    [class*="func_frame"] .vocalWrap {width: 100%;}

    /* 캘린더 - 상세 */
    [class*="sche_cal"]:not(.sche_cal2) .cal_txt,
    .func_frame .cal_txt {width: 100%; height: auto; margin-top: 1.5rem;}
    [class*="sche_cal"]:not(.sche_cal2) .cal_txt .txt_Wrap,
    .func_frame .cal_txt .txt_Wrap {max-height: 10rem;}

    /* 운영일정캘린더 - 공통 */
    [class*="sche_cal"] {flex-wrap: wrap;}

    /* 일정기능 - 공통 */
    [class*="func_frame"] .func_cal {flex-wrap: wrap;}
    [class*="func_frame"] .func_cal .vocalWrap {width: 100%;}
    [class*="func_frame"] .func_cal .rol_tb {width: 100%; margin-top: 1.5rem;}

    /* 예약 - rsvInfoWrap */
    .rsvInfoWrap {flex-wrap: wrap; padding: 1.5rem;}
    .rsvInfoWrap::before,
    .rsvInfoWrap::after {display: none;}
    .rsvInfoWrap .img {flex-shrink: unset; width: 100%; max-width: unset; margin-right: 0; margin-bottom: 1.25rem; height: calc(46.5vw - 5rem);}
    .rsvInfoWrap .img > p {height: 100%;}
    .rsvInfoWrap .img + .txt {padding-top: 0;}

    /* 예약 - rsvView */
    .rsvView .scheWrap,
    .rsvView .rsvDetailWrap {margin-top: 2rem;}
    .rsvView .rsvDetailWrap .tabBtn {margin-bottom: 1.25rem;}

    /* 예약 - rsvWrite */
    .rsvWrite .rsvWriteWrap {margin-top: 2rem;}
    .rsvWrite .rsvWriteWrap [class*='tbl_st'] > table td input:not([type="radio"], [type="checkbox"]),
    .rsvWrite .rsvWriteWrap [class*='tbl_st'] > table td select {min-width: unset; max-width: unset; margin-right: 0;}
    .rsvWrite .rsvWriteWrap [class*='tbl_st'] > table td [class^='btn_'],
    .rsvWrite .rsvWriteWrap [class*='tbl_st'] > table td span {margin-top: 5px;}
    .rsvWrite .prvInfoBox,
    .rsvWrite > .btns {margin-top: 2rem;}

    /* 예약 - rsvList */
    .rsvList .rsvListCon {margin-top: 2rem;}
    .rsvList .searchOption .tabBox .tabList2 ul {margin: -0.25rem -1rem;}
    .rsvList .searchOption .tabBox .tabList2 ul li {padding: 0.25rem 1rem;}
    .rsvList .searchOption .dlBox > dl > dd .radioCheck {margin: -0.25rem -1rem;}
    .rsvList .searchOption .dlBox > dl > dd .radioCheck li {padding: 0.25rem 1rem;}
    .rsvList .searchOption .dlBox > dl.row02 > dd {flex-wrap: wrap;}
    .rsvList .searchOption .dlBox > dl.row02 > dd .dateWrap {width: 100%; margin-top: 0.75rem;}

    /* 예약 - rsvList - type2 */
    .rsvList .rsvListCon .conWrap .conType2 > ul > li {width: 50%;}
    /* 예약 - rsvList - type2 : hasLeftMenu */
    #lnb + #subContent .rsvList .rsvListCon .conWrap .conType2 > ul > li {width: 50%;}

    /* 대표 - 참여/신청 - 학교시설 - write */
    .sub_0506_view .ntcWr {flex-direction: column;}
    .sub_0506_view .ntcWr .imgWr {width: 100%; height: auto;}
    .sub_0506_view .ntcWr .txtWr {width: 100%; margin-top: 1rem;}
    .sub_0506_view .ntcWr .txtWr .box_st3 {height: 40vw;}

    /* 대표 - 참여/신청 - 학교시설 - write */
    .sub_0506_view .tmtblWr {margin-top: 1rem !important;}
    .sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table,
    .sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table tbody,
    .sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table tr,
    .sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table th,
    .sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table td {display: block;}
    .sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table td ul li {width: calc(100% / 6);}

    /*채용공고 검색*/
    .nttSrch .dateWrap {justify-content: center;}
}



@media (max-width: 968px) {

    /* 캘린더 - 리스트 타입 - Full
    + 교육 > 교직원지원 > 보결강사지원 > 유치원
    + 교육 > 교직원지원 > 보결강사지원 > 유치원 > "신청일자 관리" 버튼
    + 참여/신청 > 견학·체험 > view
    */
    .vocalWrap:not(
        [class*="sche_cal"] .vocalWrap,
        [class*="func_frame"] .vocalWrap
    ) .calWrap table thead {display: none;}
    .vocalWrap:not(
        [class*="sche_cal"] .vocalWrap,
        [class*="func_frame"] .vocalWrap
    ) .calWrap table tbody {max-height: 15rem; border: 1px solid #eee; overflow-y: auto;}
    .vocalWrap:not(
        [class*="sche_cal"] .vocalWrap,
        [class*="func_frame"] .vocalWrap
    ) .calWrap table tr {flex-wrap: wrap;}
    .vocalWrap:not(
        [class*="sche_cal"] .vocalWrap,
        [class*="func_frame"] .vocalWrap
    ) .calWrap table td {width: 100%; border-radius: 0 !important; border: 0 !important;}
    .vocalWrap:not(
        [class*="sche_cal"] .vocalWrap,
        [class*="func_frame"] .vocalWrap
    ) .calWrap table td .tdWr {min-height: 0; border-top: 1px solid #eee; padding: 0.75rem 0.5rem; margin-top: -1px;}
    .vocalWrap:not(
        [class*="sche_cal"] .vocalWrap,
        [class*="func_frame"] .vocalWrap
    ) .calWrap table tbody tr td .tdWr::before {width: 100%; height: 100%; left: 0; top: 0;}

    /* 캘린더 - 리스트 타입 - Half
    + 소식 > 교육청안내 > 조직도(전화번호) > 전화번호 안내
    */
    .sche_cal2 .vocalWrap {width: 100%;}

    /* 캘린더 - 상세 */
    .sche_cal2 .cal_txt {width: 100%; margin-top: 1.5rem;}
    .sche_cal2 .cal_txt .txt_Wrap {max-height: 10rem;}

    /* 운영일정캘린더 - 공통 */
    .sche_cal2 {flex-wrap: wrap;}

    /* 일정기능 - 공통 */
    [class*="func_frame"] .func_cal .rol_tb table tbody {max-height: 10rem;}
}



@media (max-width: 820px) { 

    /* 정렬 : 2개 */
    .comCont.align02 .comCont{display:block;}
    .comCont.align02 .cont,
    .comCont.align02 .cont:nth-child(2){max-width:100%;}
}



@media (max-width: 768px) {

    /* 공통 오류 */
    .pageError {min-height: 33rem;}
    .pageError .txt h2 {font-size: 1.25rem;}
    .pageError .txt p {font-size: 0.8rem;}
    .pageError .txt .btns {margin-top: 1.25rem;}
    .pageError .txt .btns .btn_bl {min-width: 10rem; padding: 0.5rem;}

    /* 인트로 */
    .pageIntro::before {width: 20rem; height: 20rem; left: -7.5rem; top: -7.5rem;}
    .pageIntro::after {width: 20rem; height: 20rem; right: -7.5rem; bottom: -7.5rem;}
    .pageIntro .container {padding: 2rem 1rem;}
    .pageIntro .introHd h1 {width: 33%; margin: 0 auto;}
    .pageIntro .introHd h2 {width: 77%; margin: 1rem auto 0;}
    .pageIntro .introBd ul li .liWr .txtWr p {margin-top: 1rem;}
    .pageIntro .introBd ul li .liWr .txtWr p i {font-size: inherit; margin-left: 0.25rem;}
    .pageIntro .introBd ul li .liWr .txtWr p i::before {content: "\e93e";}
    .pageIntro .introFt .ftTop {display: block;}
    .pageIntro .introFt .ftTop .info {margin-right: 0;}
    .pageIntro .introFt .ftTop .sns {margin-top: 0.5rem;}
    .pageIntro .introFt .copyright {margin-top: 0.75rem;}

    /* 인트로 - 사이트 전환 */
    .pageIntro.tyChange .logo {width: 33%; margin: 0 auto;}
    .pageIntro.tyChange .imgWr {width: 77%; margin: 1rem auto 0;}
    .pageIntro.tyChange .txtWr .tit {font-size: 5vw;}
    .pageIntro.tyChange .txtWr .dsc {padding: 0 1rem; font-size: 3.5vw; margin-top: 1rem;}
    .pageIntro.tyChange .txtWr .dsc::before {height: 2.5vw; bottom: -0.25vw;}

    /* 자주하는질문 - common */
    [class^="bbs_Faq"] li > a {padding: 0.9rem 1rem; padding-right: 2.85rem;}
    [class^="bbs_Faq"] li > a::before {font-size: 1rem; margin-right: 0.75rem;}
    [class^="bbs_Faq"] li > a span.faq_arr {top: 0.95rem;}
    [class^="bbs_Faq"] li > a span.faq_arr::before {font-size: 0.8rem;}
    [class^="bbs_Faq"] li .faq_A {padding: 0.75rem 1rem 1rem 2.6rem;}
    [class^="bbs_Faq"] li .faq_A::before {font-size: 1rem; margin-right: 0.75rem; left: 1rem; top: 0.55rem;}
    /* 자주하는질문 - A타입 */
    .bbs_FaqA li > a {border-radius: 0.5rem;}
    .bbs_FaqA li .faq_A {border-radius: 0 0 0.5rem 0.5rem}
    /* 자주하는질문 - A타입 : active */
    .bbs_FaqA li.on > a {border-radius: 0.5rem 0.5rem 0 0;}
    /* 자주하는질문 - common : no_alpha */
    [class^="bbs_Faq"] li.no_alpha .faq_A {padding: 0.75rem 1rem 1rem;}

    /* 사이트맵 */
    .sitemap .tabCon .conBox .dep01 > ul {margin: 0 -0.5rem;}
    .sitemap .tabCon .conBox .dep01 > ul > li {padding: 0 0.5rem;}

    /* 만족도 조사 - satisfySurvey */
    .satisfySurvey {margin-top: 2.5rem;}
    .satisfySurvey .titWrap {max-height: 8rem; padding: 0.75rem 1rem; line-height: 1.8;}
    .satisfySurvey .titWrap .infoUpdate .info ul {flex-wrap: wrap;}
    .satisfySurvey .conWrap {padding: 1rem;}
    .satisfySurvey .conWrap .imgWrap {width: 4rem; height: 4rem; margin-right: 1.25rem;}
    .satisfySurvey .conWrap .txtWrap .opinionArea {flex-wrap: wrap; margin-top: 0.75rem;}
    .satisfySurvey .conWrap .txtWrap .opinionArea textarea {height: 5rem; margin-right: 0;}
    .satisfySurvey .conWrap .txtWrap .opinionArea .btns {width: 100%; margin-top: 0.5rem;}

    /* 만족도 조사 - satisfyResult */
    .satisfyResult th {padding: 0.75rem 0.5rem;}
    .satisfyResult th[scope="rowgroup"] {font-size: 0.8rem;}
    .satisfyResult td {padding: 0.5rem;}

    /* 공공누리 저작권 */
    .ggnrCopy {display: block; text-align: center; padding: 0.75rem 1rem; margin-top: 2.5rem;}
    .satisfyResult + .ggnrCopy {margin-top: 2rem;}
    .ggnrCopy .txt {margin-right: 0;}
    .ggnrCopy .txt i {display: none;}
    .ggnrCopy .txt p {padding-top: 0;}
    .ggnrCopy img {margin-top: 0.75rem;}

    /* 캘린더 - 버튼 */
    .vocalWrap .btns span {min-width: unset; padding: 0.4rem 0.8rem;}
    .vocalWrap .btns a {min-width: 6rem; padding: 0.4rem 0.8rem;}

    /* 예약 - rsvView */
    .rsvView .rsvDetailWrap .tabBtn {margin-bottom: 1rem;}
    /* 예약 - rsvView : no_data */
    .rsvView .rsvDetailWrap .tabCon .conBox.no_data {padding: 15vw 1rem;}

    /* 예약 - rsvWrite */
    .rsvWrite .rsvWriteWrap [class*='tbl_st'] > table td {padding: 0.4rem 0.75rem;}

    /* 예약 - rsvList */
    .rsvList .searchOption > button,
    .rsvList .searchOption > h3 {height: 2.75rem; font-size: 0.9rem;}
    .rsvList .searchOption > button span,
    .rsvList .searchOption > h3 span {justify-content: flex-start; padding: 0 1rem; font-size: inherit;}
    .rsvList .searchOption > button i {width: 2.75rem; font-size: inherit;}
    .rsvList .searchOption .tabBox {padding: 1rem;}
    .rsvList .searchOption .tabBox .tabList2 {padding: 0.75rem 1rem;}
    .rsvList .searchOption .tabBox .tabList2 ul {margin: -0.25rem -0.75rem;}
    .rsvList .searchOption .tabBox .tabList2 ul li {padding: 0.25rem 0.75rem;}
    .rsvList .searchOption .dlBox > dl > dt {padding: 1rem; font-size: 0.8rem;}
    .rsvList .searchOption .dlBox > dl > dd {flex-wrap: wrap; padding: 1rem;}
    .rsvList .searchOption .dlBox > dl > dd .radioCheck {margin: -0.25rem -0.75rem;}
    .rsvList .searchOption .dlBox > dl > dd .radioCheck li {padding: 0.25rem 0.75rem;}
    .rsvList .searchOption .mngBox {padding: 0.75rem;}
    .rsvList .rsvListCon > .titWrap {flex-wrap: wrap;}
    .rsvList .rsvListCon > .titWrap .listUtil {justify-content: space-between; width: 100%; margin-top: 0.5rem;}
    .rsvList .rsvListCon > .titWrap .listUtil .listViewOpt a i {width: 1.5rem; height: 1.5rem; font-size: 0.9rem;}

    /* 예약 - rsvList - type2 */
    .rsvList .rsvListCon .conWrap .conType2 {margin-top: 0.75rem;}
    .rsvList .rsvListCon .conWrap .conType2 > ul > li a .txtWrap .tit span {font-weight: 500;}
}



@media (max-width: 680px) { 

    /* 메인 공통컨텐츠 */
    .comCont{display:block;}
    .comCont .cont{max-width:100% !important;}
    .comCont .cont ~ .cont{ margin-top:1.5rem; }
    .comCont .item .img,
    .comCont .listTy02 .item a{ border-radius:1rem;}

    /***** 레이어팝업 *****/
    .lyrWrap .inner{ padding:1.5rem 1.25rem;}

    /* 프로그램 View */
    .prgmView .row1 .wrap {padding: 1.5rem;}
    .prgmView .row1 .wrap::before,
    .prgmView .row1 .wrap::after {display: none;}
    .prgmView .row1 .wrap .ico {padding-top: 0;}
    .prgmView .row1 .wrap .txt {padding: 1.5rem 0 0;}

    /* 파일뷰어다운로드 */
    .fileViewerDownload .box_st1 .wrap .txt .txtBoxWrap > div {width: 100%;}

    /* 인트로 */
    .pageIntro .introBd ul li .liWr .txtWr h3 {font-size: 0.9rem;}

    /* 사이트맵 */
    .sitemap .tabCon .conBox .dep01 > ul > li {width: 50%;}

    /* 예약 - rsvInfoWrap */
    .rsvInfoWrap .img {height: calc(66.5vw - 5rem);}

    /* 대표 - 참여/신청 - 학교시설 - write */
    .sub_0506_view .tmtblWr .titWr {display: block; width:100%;}
    .sub_0506_view .tmtblWr .titWr .ableView {padding-top:0.5rem;}

    /* 예약 - rsvList */
    .rsvList .searchOption {border-radius: 0.5rem;}
    .rsvList .searchOption > button,
    .rsvList .searchOption > h3 {height: 2.5rem; font-size: 0.85rem;}
    .rsvList .searchOption.active > button span,
    .rsvList .searchOption.active > h3 span {font-weight: 500;}
    .rsvList .searchOption .searchCon {border-radius: 0 0 0.5rem 0.5rem;}
    .rsvList .searchOption .tabBox .tabList1 ul li {width: calc(100% / 3);}
    .rsvList .searchOption .tabBox .tabList1.Tab_w25 ul li {width: 50%;}
    .rsvList .searchOption .dlBox > dl {flex-wrap: wrap;}
    .rsvList .searchOption .dlBox > dl > dt {width: 100%; padding: 0.5rem;}
    .rsvList .searchOption .dlBox > dl > dd {width: 100%; padding: 0.75rem 1rem;}
    .rsvList .searchOption .dlBox > dl.row02 > dd .dateWrap .col {width: calc(50% - 0.5rem);}
    .rsvList .searchOption .dlBox > dl.row02 > dd .dateWrap .col + .col {margin-left: 1rem;}
    .rsvList .searchOption .dlBox > dl.row02 > dd .dateWrap .col + .col::before {display: none;}
    .rsvList .searchOption .dlBox > dl.row02 > dd .dateWrap .col input {min-width: unset; width: 100%;}

    /* 예약 - rsvList - type2 */
    .rsvList .rsvListCon .conWrap .conType2 > ul {margin: -0.5rem;}
    .rsvList .rsvListCon .conWrap .conType2 > ul > li {padding: 0.5rem;}

     /* 대표 - 참여/신청 - 학교시설 - write */
    .sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table td ul li {width: calc(100% / 3);}
}



@media (max-width: 580px) {

    /* 프로그램 View */
    .prgmView .row1 {border-radius: 1rem;}
    .prgmView .row1 .wrap {border-radius: calc(1rem - 2px); padding: 1.25rem;}
    .prgmView .row1 .wrap .txt {padding-top: 1.25rem;}

    /* 인트로 */
    .pageIntro .introHd h1 {width: 40%;}
    .pageIntro .introHd h2 {width: 80%;}
    .pageIntro .introHd p {font-size: 0.95rem;}
    .pageIntro .introBd ul li {width: 100%;}
    .pageIntro .introBd ul li .liWr {flex-direction: row-reverse;}
    .pageIntro .introBd ul li .liWr .imgWr {width: 50%; min-height: 30vw; height: auto;}
    .pageIntro .introBd ul li .liWr .txtWr {justify-content: center; align-items: flex-start; width: 50%; padding: 1rem 1.5rem; text-align: left; margin-top: 0;}
    .pageIntro .introBd ul li .liWr .txtWr p {width: auto; max-width: unset; border-radius: 1rem; padding: 0 1rem;}
    .pageIntro .introFt {padding-top: 1rem;}

    /* 인트로 - 사이트 전환 */
    .pageIntro.tyChange .logo {width: 40%;}
    .pageIntro.tyChange .imgWr {width: 80%;}

    /* 캘린더 - 리스트 타입 - Full
    + 교육 > 교직원지원 > 보결강사지원 > 유치원
    + 교육 > 교직원지원 > 보결강사지원 > 유치원 > "신청일자 관리" 버튼
    + 참여/신청 > 견학·체험 > view
    */
    .vocalWrap:is(
        .sche_cal .vocalWrap,
        [class*="func_frame"] .vocalWrap
    ) .calWrap table thead {display: none;}
    .vocalWrap:is(
        .sche_cal .vocalWrap,
        [class*="func_frame"] .vocalWrap
    ) .calWrap table tbody {max-height: 15rem; border: 1px solid #eee; overflow-y: auto;}
    .vocalWrap:is(
        .sche_cal .vocalWrap,
        [class*="func_frame"] .vocalWrap
    ) .calWrap table tr {flex-wrap: wrap;}
    .vocalWrap:is(
        .sche_cal .vocalWrap,
        [class*="func_frame"] .vocalWrap
    ) .calWrap table td {width: 100%; height: auto; border-radius: 0 !important; border: 0 !important;}
    .vocalWrap:is(
        .sche_cal .vocalWrap,
        [class*="func_frame"] .vocalWrap
    ) .calWrap table td .tdWr {min-height: 0; border-top: 1px solid #eee; padding: 0.75rem 0.5rem; margin-top: -1px;}
    .vocalWrap:is(
        .sche_cal .vocalWrap,
        [class*="func_frame"] .vocalWrap
    ) .calWrap table tbody tr td .tdWr::before {width: 100%; height: 100%; left: 0; top: 0;}

    /* 캘린더 - 버튼 */
    .vocalWrap .btns span,
    .vocalWrap .btns a {border-radius: 0.25rem; padding: 0.3rem 0.6rem; font-size: 0.7rem;}
    .vocalWrap .btns a {min-width: unset; padding: 0.3rem 1.5rem;}

    /* 캘린더 - 상세 */
    [class*="sche_cal"] .cal_txt > span,
    .func_frame .cal_txt > span {height: 2.5rem;}
    [class*="sche_cal"] .cal_txt .txt_Wrap,
    .func_frame .cal_txt .txt_Wrap {padding: 0.75rem;}

    /* 운영일정캘린더_v2 */
    .grd_Wrap { margin-bottom: 1.5rem; }
    .grd_Wrap .grd_sel { width: 100%; }
    .grd_Wrap .grd_sel select { min-width: 100%; }
    .grd_Wrap .grd_sel > a { width: calc((100% - 0.5rem) / 2); min-width: calc((100% - 0.5rem) / 2); }

    /* 일정기능 - 공통 */
    [class*="func_frame"] .func_cal .rol_tb {background: linear-gradient(to left, rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0) 100%) right 5px / 30px 100% no-repeat; overflow-x: auto;}
    [class*="func_frame"] .func_cal .rol_tb table {min-width: 580px;}
    /* 일정기능 - 공통 : no_data */
    [class*="func_frame"] .func_cal .rol_tb table tr.no_data td {padding: 4rem 0.5rem;}

    /* 예약 - rsvInfoWrap */
    .rsvInfoWrap .brdr::after {border-width: 1px;}
    .rsvInfoWrap .txt h3 {font-size: 1rem;}

    /* 예약 - rsvView */
    .rsvView .scheWrap div[class*='tbl_st'] > table td {font-size: 0.75rem;}

    /* 예약 - rsvWrite */
    .rsvWrite .rsvWriteWrap [class*='tbl_st'] > table td {padding: 0.5rem;}

    /* 예약 - rsvList */
    .rsvList .searchOption .tabBox .tabList1 ul li {width: 50%;}
    .rsvList .searchOption .tabBox .tabList1.Tab_w25 ul li {width: 100%;}
    .rsvList .searchOption .tabBox .tabList2 ul {margin: -0.25rem -0.5rem;}
    .rsvList .searchOption .tabBox .tabList2 ul li {padding: 0.25rem 0.5rem;}
    .rsvList .searchOption .tabBox .tabList2 ul li a {padding-left: 0.6rem;}
    .rsvList .searchOption .dlBox > dl > dd .radioCheck {margin: -0.25rem -0.5rem;}
    .rsvList .searchOption .dlBox > dl > dd .radioCheck li {padding: 0.25rem 0.5rem;}
    .rsvList .searchOption .dlBox > dl.row04 > dd select {width: 100%; margin-right: 0; margin-bottom: 0.35rem;}
    .rsvList .searchOption .dlBox > dl.row04 > dd button {width: 5rem;}
    .rsvList .rsvListCon > .titWrap .listUtil {flex-wrap: wrap;}
    .rsvList .rsvListCon > .titWrap .listUtil .listViewOpt {margin-right: 0;}
    .rsvList .rsvListCon > .titWrap .listUtil .listBrief {width: 100%;}
    .rsvList .rsvListCon > .titWrap .listUtil .listViewOpt + .listBrief {margin-top: 0.25rem;}
    /* 예약 - rsvList : active */
    .rsvList .searchOption .tabBox .tabList2 ul li.on a {padding-left: 1.25rem;}

    /* 예약 - rsvList - type2 */
    .rsvList .rsvListCon .conWrap .conType2 > ul > li {width: 100%;}
    /* 예약 - rsvList - type2 : hasLeftMenu */
    #lnb + #subContent .rsvList .rsvListCon .conWrap .conType2 > ul > li {width: 100%;}

    /*채용공고 검색*/
    .nttSrch .dateWrap .col {width: calc(100% - 1.35rem);}
    .nttSrch .dateWrap .col + .col {margin-top: 0.25rem;}
    .nttSrch .dateWrap .col input {flex: unset; width: 100%;}
}



@media (max-width: 480px) {

    /* 공통 오류 */
    .pageError {display: block; min-height: unset; padding: 7.5vw 0.75rem;}
    .pageError .logo {width: 100%;}
    .pageError .logo img {max-width: 62.5%;}
    .pageError .img {width: 100%; margin-top: 0.5rem;}
    .pageError .img img {max-width: 80%;}
    .pageError .txt {margin-top: 1rem;}
    .pageError .txt h2 {font-size: 1.1rem;}
    .pageError .txt p {font-size: 0.75rem; margin-top: 0.5rem;}
    .pageError .txt p br {display: none;}
    .pageError .txt .btns {margin-top: 1rem;}
    .pageError .txt .btns .btn_bl {min-width: unset; padding: 0.5rem 2rem; font-size: 0.75rem;}

    /* 프로그램 View */
    .prgmView .row1 .wrap {padding: 1rem;}
    .prgmView .row1 .wrap .txt {padding-top: 1rem; font-size: 0.75rem;}
    .prgmView .row1 .wrap .txt .tit2 {font-size: 0.9rem; margin-bottom: 0.5rem;}

    /* 창 팝업 - 소속기관 */
    .popup_affOrg .rstBox table {font-size: 0.75rem;}
    .popup_affOrg .rstBox th,
    .popup_affOrg .rstBox td {padding: 0.5rem 0.25rem;}

    /* 창 팝업 - 기관별 조직도 */
    .popup_org .rstBox h2 {font-size: 1rem;}

    /* 창 팝업 - 시설 사용 신청서 */
    .popup_fclUseApp h1 {font-size: 1rem;}

    /* 인트로 */
    .pageIntro::before {width: 75vw; height: 75vw; left: -25vw; top: -25vw;}
    .pageIntro::after {width: 75vw; height: 75vw; right: -25vw; bottom: -25vw;}
    .pageIntro .introHd h1 {width: 45%;}
    .pageIntro .introHd h2 {width: 90%;}
    .pageIntro .introHd p {font-size: 0.9rem; margin-top: 1rem;}
    .pageIntro .introBd {margin-top: 1.5rem;}
    .pageIntro .introBd ul li .liWr .txtWr {padding: 1rem 1.25rem;}
    .pageIntro .introBd ul li .liWr .txtWr h3 {font-size: 0.85rem;}
    .pageIntro .introFt {margin-top: 2rem; padding-top: 0.75rem;}
    .pageIntro .introFt .copyright {font-size: 0.7rem;}

    /* 인트로 - 사이트 전환 */
    .pageIntro.tyChange .logo {width: 45%;}
    .pageIntro.tyChange .imgWr {width: 90%;}
    .pageIntro.tyChange .txtWr {margin-top: 1.25rem;}
    .pageIntro.tyChange .txtWr .tit {font-size: 6vw;}
    .pageIntro.tyChange .txtWr .dsc {padding: 0 0.25rem; font-size: 4.5vw; margin-top: 0.75rem;}

    /* 자주하는질문 - common */
    [class^="bbs_Faq"] + [class^="bbs_Faq"] {margin-top: 1.5rem;}

    /* 사이트맵 */
    .sitemap .tabCon .conBox .dep01 > ul {margin: 0 -0.375rem;}
    .sitemap .tabCon .conBox .dep01 > ul > li {width: 100%; padding: 0 0.375rem; margin-top: 1rem;}
    .sitemap .tabCon .conBox .dep01 > ul > li > a {font-size: 0.9rem;}
    .sitemap .tabCon .conBox .dep02 {margin-top: 0.4rem;}
    .sitemap .tabCon .conBox .dep02 > ul {padding: 0.5rem 0.75rem;}

    /* 만족도 조사 - satisfySurvey */
    .satisfySurvey {margin-top: 2rem;}
    .satisfySurvey .titWrap {font-size: 0.7rem;}
    .satisfySurvey .titWrap .infoUpdate {flex-wrap: wrap;}
    .satisfySurvey .titWrap .infoUpdate .update {width: 100%; margin-left: 0;}
    .satisfySurvey .conWrap .imgWrap {display: none;}
    .satisfySurvey .conWrap .txtWrap .opinionArea textarea {padding: 0.5rem; font-size: 0.7rem;}

    /* 공공누리 저작권 */
    .ggnrCopy {margin-top: 2rem;}
    .satisfyResult + .ggnrCopy {margin-top: 1.5rem;}
    .ggnrCopy .txt {font-size: 0.75rem;}
    .ggnrCopy img {max-width: 5.2rem; max-height: 1.45rem;}

    /* 보컬강사지원 신청프로그램 */
    .vocalWrap .selWrap { margin: 0.5rem 0; }
    .vocalWrap select { height: 1.5rem; background: url(/resource/images/con_com/sel_arr2.png) #fff right 0.6rem top 0.525rem/0.5rem 0.3rem no-repeat !important }
    .vocalWrap input[type="text"] { height: 1.5rem; }

    /* 운영일정캘린더 - 공통 */
    .grd_Wrap .grd_sel > a { width: 100%; }

    /* 운영일정캘린더 */
    .sche_cal .date_frame { flex-wrap: wrap; gap: 1rem 0.25rem; justify-content: start; align-items: start; }
    .sche_cal .date_frame .dateWrap { order: 3; justify-content: space-between; padding: 0 1rem; }

    /* 일정기능 - 공통 */
    [class*="func_frame"] > .btns a { padding: 0.25rem 0.5rem; }

    /* 예약 - rsvInfoWrap */
    .rsvInfoWrap {padding: 1rem;}
    .rsvInfoWrap .img {height: calc(66.5vw - 3.5rem); margin-bottom: 0.75rem;}
    .rsvInfoWrap .txt h3 {font-size: 0.9rem;}
    .rsvInfoWrap .txt ul {font-size: 0.75rem; margin-top: 0.5rem;}
    .rsvInfoWrap .txt ul li {padding-left: calc(4px + 0.5rem);}
    .rsvInfoWrap .txt ul li::before {width: 4px; height: 4px; top: 12px;}

    /* 예약 - rsvView */
    .rsvView h2 {font-size: 1.1rem;}
    .rsvView .vocalWrap,
    .rsvView .scheWrap {margin-top: 1.5rem;}
    .rsvView .scheWrap div[class*='tbl_st'] > table {display: block;}
    .rsvView .scheWrap div[class*='tbl_st'] > table thead {display: none;}
    .rsvView .scheWrap div[class*='tbl_st'] > table tbody {display: block;}
    .rsvView .scheWrap div[class*='tbl_st'] > table tr {display: block; border-bottom: 1px solid #c5c9d6; padding: 0.5rem 0;}
    .rsvView .scheWrap div[class*='tbl_st'] > table td {display: block; border: 0; padding: 0; text-align: left;}
    .rsvView .rsvDetailWrap {margin-top: 1.5rem;}

    /* 예약 - rsvWrite */
    .rsvWrite h2 {font-size: 1.1rem;}
    .rsvWrite .rsvWriteWrap {margin-top: 1.5rem;}
    .rsvWrite .rsvWriteWrap [class*='tbl_st'] > table,
    .rsvWrite .rsvWriteWrap [class*='tbl_st'] > table tbody,
    .rsvWrite .rsvWriteWrap [class*='tbl_st'] > table tr,
    .rsvWrite .rsvWriteWrap [class*='tbl_st'] > table th,
    .rsvWrite .rsvWriteWrap [class*='tbl_st'] > table td {display: block;}
    .rsvWrite .rsvWriteWrap [class*='tbl_st'] > table td input.phn {width: 30%;}
    .rsvWrite .prvInfoBox,
    .rsvWrite > .btns {margin-top: 1.5rem;}

    /* 예약 - rsvList */
    .rsvList h2 {font-size: 1.1rem;}
    .rsvList .rsvListCon {margin-top: 1.5rem;}
    .rsvList .searchOption + .searchOption {margin-top: 0.75rem;}
    .rsvList .searchOption .mngBox > div.lft select,
    .rsvList .searchOption .mngBox > div.lft .iptWr,
    .rsvList .searchOption .mngBox > div.lft .iptWr input {width: 100%;}

    /* 예약 - rsvList - type2 */
    .rsvList .rsvListCon .conWrap .conType2 > ul > li a .txtWrap .tit p {font-size: 0.85rem;}

    /* 대표 - 참여/신청 - 학교시설 - write */
    .sub_0506_view .tmtblWr .titWr .ableView {width: 100%; margin-top: 0.5rem;}
    .sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table td ul li {width: 25%;}
    .sub_0506_view .tmtblWr .conWr div[class*='tbl_st'] > table td ul li input[type="checkbox"] + label {height: 1.75rem;}
}



@media (max-width: 420px) { 

    /* 메인 공통컨텐츠 */
    .comCont #cardNews .item{height:auto;}

    /***** 레이어팝업 *****/
    .lyrWrap .inner{ padding:1.5rem 1rem;} 
}



@media (max-width: 380px) {

    /* 창 팝업 - 소속기관 */
    .popup_affOrg h1 {padding: 0.75rem 1rem; font-size: 0.9rem;}
    .popup_affOrg .schBox {flex-wrap: wrap; height: auto; border-bottom: 0; font-size: 0.8rem;}
    .popup_affOrg .schBox input {width: 100%; height: 3rem;}
    .popup_affOrg .schBox button {width: 100%; height: 2.5rem;}
    .popup_affOrg .rstBox .btns a {display: flex; justify-content: center; align-items: center; min-width: unset; width: 100%; height: 2.5rem; border-radius: 0.25rem; padding: 0 0.5rem; margin: 0;}
    .popup_affOrg .rstBox .btns a + a {margin-top: 0.25rem;}

    /* 창 팝업 - 기관별 조직도 */
    .popup_org h1 {padding: 0.75rem 1rem; font-size: 0.9rem;}

    /* 창 팝업 - 수강신청 결과 조회 */
    .statPop h1 {padding: 0.75rem 1rem; font-size: 0.9rem;}

    /* 창 팝업 - 시설 사용 신청서 */
    .popup_fclUseApp h1 {padding: 0.75rem 1rem; font-size: 0.9rem;}

    /* 인트로 */
    .pageIntro .introHd h1 {width: 66%;}
    .pageIntro .introHd h2 {width: 100%;}
    .pageIntro .introBd ul li .liWr {flex-direction: column;}
    .pageIntro .introBd ul li .liWr .imgWr {width: 100%; min-height: unset; height: 60vw;}
    .pageIntro .introBd ul li .liWr .txtWr {align-items: center; width: 100%; padding: 1rem;}
    .pageIntro .introBd ul li .liWr .txtWr p {height: 1.75rem; font-size: 0.7rem; margin-top: 0.75rem;}
    .pageIntro .introFt {padding-top: 0.5rem;}

    /* 인트로 - 사이트 전환 */
    .pageIntro.tyChange .logo {width: 66%;}
    .pageIntro.tyChange .imgWr {width: 100%;}

    /* 자주하는질문 - common */
    [class^="bbs_Faq"] li > a {padding: 0.75rem; padding-right: 2.25rem; font-size: 0.75rem; line-height: 1.6;}
    [class^="bbs_Faq"] li > a::before {display: none;}
    [class^="bbs_Faq"] li > a span.faq_arr {right: 0.75rem; top: 0.75rem;}
    [class^="bbs_Faq"] li .faq_A {padding: 0.75rem !important; font-size: 0.7rem;}
    [class^="bbs_Faq"] li .faq_A::before {display: none;}

    /* 만족도 조사 - satisfySurvey */
    .satisfySurvey .conWrap .txtWrap .opinionArea input {font-size: 0.75rem; letter-spacing: -0.05rem;}

    /* 공공누리 저작권 */
    .ggnrCopy {padding: 0.75rem;}
    .ggnrCopy .txt {font-size: 0.7rem;}

    /* 캘린더 - 버튼 */
    .vocalWrap .btns {display: flex; flex-wrap: wrap; gap: 0.25rem;}
    .vocalWrap .btns span,
    .vocalWrap .btns a {padding: 0.15rem 0.3rem; font-size: 0.65rem;}
    .vocalWrap .btns a {min-width: 3.5rem;}
    .vocalWrap .btns a:last-child {float: none;}

    /* 예약 - rsvInfoWrap */
    .rsvInfoWrap .brdr::after {width: 5rem; height: 5rem;}
    .rsvInfoWrap .txt h3 {font-size: 0.85rem;}
    .rsvInfoWrap .txt ul {font-size: 0.7rem;}
    .rsvInfoWrap .txt ul li .tit {min-width: 2.5rem; margin-right: 0.75rem;}

    /* 예약 - rsvList */
    .rsvList .searchOption > button,
    .rsvList .searchOption > h3 {height: 2.25rem; font-size: 0.8rem;}
    .rsvList .searchOption.active > button i {width: 2.5rem;}
    .rsvList .searchOption .tabBox .tabList1 ul li {width: 100%;}
    .rsvList .searchOption .dlBox > dl.row02 > dd .dateWrap {flex-wrap: wrap;}
    .rsvList .searchOption .dlBox > dl.row02 > dd .dateWrap .col {width: 100%; height: 2rem;}
    .rsvList .searchOption .dlBox > dl.row02 > dd .dateWrap .col + .col {margin-left: 0; margin-top: 0.5rem;}
    .rsvList .searchOption .dlBox > dl.row04 > dd select {height: 2rem;}
    .rsvList .searchOption .dlBox > dl.row04 > dd input {height: 2rem; border-radius: 0.35rem 0.35rem 0 0; border-bottom: 0;}
    .rsvList .searchOption .dlBox > dl.row04 > dd button {width: 100%; height: 2rem; border-radius: 0 0 0.35rem 0.35rem; margin-left: 0;}
    .rsvList .rsvListCon > .titWrap .listUtil .listBrief {flex-wrap: wrap;}
    .rsvList .rsvListCon > .titWrap .listUtil .listViewOpt + .listBrief {margin-top: 0.5rem;}
    .rsvList .rsvListCon > .titWrap .listUtil .listBrief li {width: 100%;}
    .rsvList .rsvListCon > .titWrap .listUtil .listBrief li + li {padding-left: 0;}
    .rsvList .rsvListCon > .titWrap .listUtil .listBrief li + li::before {display: none;}

    /* 대표 - 참여/신청 - 학교시설 - write */
    .sub_0506_view .ntcWr .txtWr .box_st3 {height: calc(100vw - 1.5rem);}
}