@charset "utf-8";

/* 공통 */
.sub-inner {padding-top:70px!important;}

/********************************* 공지 및 일정 ************************************/
/* 공지 및 일정 - 행사 일정 */
.calendar_board {display:flex; justify-content:center; align-items:center; margin:0px 0 0 0; color:#666666; padding-bottom:20px!important;}

.calendar_board a:link, .calendar_board a:visited {color:#666666; text-decoration:none;}
.calendar_board a:hover, .calendar_board a:active {color:#000000; text-decoration:none;position:relative;z-index:2; }
.calendar_board strong {color:#000; padding:0 20px; font-size:30px; font-weight:400;}
.calendar_board span {display:none;}
.calendar_board a {display:block; border:1px solid #d2d6e8; width:50px; height:50px; border-radius:50%;}
.calendar_board a.prev_end {background:url(/images/common/arrow-prevX12.png) no-repeat center; }
.calendar_board a.prev {background:url(/images/common/arrow-prev.png) no-repeat center; margin-left:5px;}
.calendar_board a.next {background:url(/images/common/arrow-next.png) no-repeat center;}
.calendar_board a.next_end {background:url(/images/common/arrow-nextX12.png) no-repeat center; margin-left:5px;}
.calendar .calendar_table_bx {border:1px solid var(--border1); overflow:hidden;}
.calendar .calendar_month {width:100%;}
.calendar .calendar_month th:first-child {color:#ff0000; border-left:1px solid #e0e0e0;}
.calendar .calendar_month th:first-child, .calendar .calendar_month td:first-child {border-left:0;}
.calendar .calendar_month th:last-child, .calendar .calendar_month td:last-child {border-right:0;}
.calendar .calendar_month tr:first-child th {background:#f9f9fa; border-top:0;} 
.calendar .calendar_month tr:last-child td {border-bottom:0;}
.calendar .calendar_month .sat_blue{color:#3166ff; border-right:1px solid #e0e0e0;}
.calendar .calendar_month th {font-size:15px; line-height:70px; font-weight:400; color:#282b32; border:1px solid var(--border1);}
.calendar .calendar_month .blue a{color:#193996;}
.calendar .calendar_month .red a {color:#ee2e24;}
.calendar .calendar_month td {font-size:14px; line-height:16px; color:#333; border:1px solid var(--border1); height:70px; vertical-align:top;}
.calendar .calendar_month td:active, .calendar .calendar_month td:hover{background:#f5f5f5;}
.calendar .calendar_month td:first-child{color:#ee2e24;}
.calendar .calendar_month td .check{color:#ee2e24; font-size:12px; text-align:right; cursor:pointer;}
.calendar .calendar_month td a {display:flex; align-items:center; justify-content:space-between; height:70px; padding:15px; text-decoration:none; font-size:14px; font-weight:500; color:#000;}
.calendar .calendar_month td .check img {position:relative; top:0px;left:0px; color:#ff0000; font-size:12px; text-align:right;}
.calendar .calendar_month td a span.schedule_num {display:block; width:35px; height:35px; background:var(--orange); border-radius:50%; color:#fff; font-weight:800; transform:var(--textRotate); text-align:center; line-height:35px;}

.sub-inner.schedule .calList {margin-top:50px;}
.sub-inner.schedule .calList .tabItem {display:none;}
.sub-inner.schedule .calList .tabItem.on {display:block;}
.sub-inner.schedule .calList .btnWrap .tabWrap {display:flex; flex-wrap:wrap; justify-content:center; gap:10px;}
.sub-inner.schedule .calList .btnWrap .tabWrap li {cursor:pointer; padding:15px 40px; font-weight:600; color:var(--bluegray); border:2px solid var(--bluegray); border-radius:5rem; transform:var(--textRotate); }
.sub-inner.schedule .calList .btnWrap .tabWrap li.on {background:var(--bluegray) url(/images/common/i-schedule-check.png) no-repeat 15px center / 15px; color:#fff;}
.sub-inner.schedule .calList .tabItem .no_schedule {display:flex; justify-content:center; align-items:center; height:100px; color:#000; margin-top:50px;}
.sub-inner.schedule .calList .tabItem .schedule_list {margin-top:30px;}
.sub-inner.schedule .calList .tabItem .schedule_list li {display:flex; padding:5px 0; font-size:16px; gap:20px; cursor:pointer; color:#333;}
.sub-inner.schedule .calList .tabItem .schedule_list li+li {border-top:1px solid var(--border1);}
.sub-inner.schedule .calList .tabItem .schedule_list li p.date {width:204px; padding:10px 20px 10px 70px; background:url(/images/common/schedule-check.png) no-repeat 20px center / 35px; font-weight:800; display:flex; align-items:center;}
.sub-inner.schedule .calList .tabItem .schedule_list li p.date span {word-break:keep-all;}
.sub-inner.schedule .calList .tabItem .schedule_list li:hover p.date {background:url(/images/common/schedule-check-on.png) no-repeat 20px center / 35px; color:var(--orange);}
.sub-inner.schedule .calList .tabItem .schedule_list li dl {display:flex; flex-wrap:wrap; padding:10px 0;}
.sub-inner.schedule .calList .tabItem .schedule_list li dl dt {padding-right:20px; overflow: hidden; white-space: normal; text-overflow:ellipsis; display:-webkit-box; -webkit-line-clamp:1;
-webkit-box-orient:vertical; word-break:keep-all; max-width:600px;}
.sub-inner.schedule .calList .tabItem .schedule_list li dl dd {position:relative; padding-left:20px; overflow: hidden; white-space: normal; text-overflow:ellipsis; display:-webkit-box; -webkit-line-clamp:1; -webkit-box-orient:vertical; word-break:keep-all; max-width:500px;}
.sub-inner.schedule .calList .tabItem .schedule_list li dl dd:before {content:""; display:block; width:2px; height:16px; position:absolute; left:0; top:6px; background:#333;}

.schedule .overlay {display: none; position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0, 0, 0, 0.5); z-index:9999;}
.schedule .modal_pop {display:none; position: fixed;top:50%;left:50%;transform:translate(-50%, -50%);background:#fff; z-index:10000; box-shadow: 0px 16px 31px rgba(0, 0, 0, 0.4); min-width:700px; border-radius:20px;}
.schedule .close {cursor:pointer;position:absolute;top:20px;right:20px; display:block; width:15px; height:15px; background:url(/images/common/i-closeX.png) no-repeat center / contain;}
.schedule .modal_pop .inner {position:relative; padding:40px 50px; background:#fff; border-radius:2rem;}
.schedule .modal_pop h4 {color:var(--orange); font-size:24px; font-weight:600; transform:var(--textRotate); padding:0 0 20px; border-bottom:1px solid var(--border1); line-height:1.4;}
.schedule .modal_pop ul {margin-top:30px; padding-right:40px;}
.schedule .modal_pop ul li {display:grid; grid-template-columns:90px auto; position:relative; font-size:16px;}
.schedule .modal_pop ul li span {max-height:300px; overflow-y:auto;}
.schedule .modal_pop ul li span::-webkit-scrollbar {width:7px; background:#dadada; border-radius:10px;}
.schedule .modal_pop ul li span::-webkit-scrollbar-thumb {background:#888; border-radius: 10px;}
.schedule .modal_pop ul li span::-webkit-scrollbar-thumb:hover {background:#555;}
.schedule .modal_pop ul li+li {margin-top:10px;}
.schedule .modal_pop ul li:before {content:""; display:block; width:5px; height:5px; background:#ccc; position:absolute; left:0; top:12px; border-radius:50%;}

.schedule .modal_pop ul li p {padding-left:15px; position:relative;}
.schedule .modal_pop ul li p:after {content:":"; position:absolute; right:5px;}
.schedule .modal_pop ul li span a {color:#000;}


/* ************************ 태블릿 이하(~1199) ************************ */
@media (max-width: 1199px) { 

/* 공통 */
.sub-inner {padding-top:40px !important;}

}

/* ************************ 태블릿 이하(~991) ************************ */
@media (max-width: 991px) {
	
/* 공통 */
.sub-inner {padding-top:20px!important;}

/********************************* 공지 및 일정 ************************************/
/* 공지 및 일정 - 행사 일정 */
.schedule .modal_pop {min-width:auto;}
.schedule .modal_pop {width:80%;}
}

/* ************************ 모바일 ************************ */
@media (max-width: 767px) { 
/* 공통 */


/********************************* 공지 및 일정 ************************************/
/* 공지 및 일정 - 행사 일정 */
.calendar_board strong {font-size:24px;}
.calendar_board a {width:35px; height:35px;}
.calendar .calendar_month th {line-height:50px;}
.calendar .calendar_month td {height:50px;}
.calendar .calendar_month td a {padding:4px; flex-direction:column; height:50px;}
.calendar .calendar_month td a span.schedule_num {width:25px;height:25px; line-height:25px; font-size:12px;}
.sub-inner.schedule .calList .btnWrap .tabWrap li {padding:8px 35px;}
.sub-inner.schedule .calList .tabItem .schedule_list li {flex-direction:column; gap:0;}
.sub-inner.schedule .calList .tabItem .schedule_list li p.date {width:100%; padding: 10px 20px 10px 50px; background: url(/images/common/schedule-check.png) no-repeat 0px center / 35px;}
.sub-inner.schedule .calList .tabItem .schedule_list li:hover p.date {background: url(/images/common/schedule-check-on.png) no-repeat 0px center / 35px;}
.sub-inner.schedule .calList .tabItem .schedule_list li dl {padding-top:0; gap:10px;        flex-direction: column;}
.sub-inner.schedule .calList .tabItem .schedule_list li dl dt {-webkit-line-clamp: 2;}
.sub-inner.schedule .calList .tabItem .schedule_list li dl dd {padding-left:0;}
.sub-inner.schedule .calList .tabItem .schedule_list li dl dd:before {display:none;}

.schedule .modal_pop {transform: translate(-47%, -50%);}
.schedule .modal_pop h4 {font-size:20px;}
.schedule .modal_pop ul {margin-top:20px;}
.schedule .modal_pop .inner {padding:40px 30px;}
}

/* ************************ 모바일 ************************ */
@media (max-width: 500px) { 

/********************************* 공지 및 일정 ************************************/
/* 공지 및 일정 - 행사 일정 */
.calendar_board strong {font-size:18px;}
.calendar_board a {width:27px; height:27px;}
.schedule .modal_pop {width:95%; transform: translate(-50%, -50%);}
.schedule .modal_pop ul li {grid-template-columns: 80px auto;}
.schedule .modal_pop ul li p {padding-left: 10px;}

}