@charset "utf-8";

/* 공통 */
#calendar-wrap {display: flex; padding:0 32px; border-top:1px solid #000; border-bottom:1px solid #000;}
@media (max-width:1280px) {
    #calendar-wrap {padding:0px 24px;}
}
@media (max-width:1023px) {
    #calendar-wrap {padding:20px 24px;}
}
._fnctWrap ._fnTable caption {display:block; width:0; height:0; padding:0; font-size: 0; opacity:0;}
#calendar-wrap .search {display:flex; align-items:center; padding:27px 0;}
#calendar-wrap .search p {font-size: 20px; font-family: 'Pre Bold'; color: #000; margin:0 24px; line-height: 60px;}
#calendar-wrap .search .prev {width:36px; height:36px; text-indent: -9999px; position: relative;}
#calendar-wrap .search .next {width:36px; height:36px; text-indent: -9999px; position: relative;}
#calendar-wrap .search .prev svg,
#calendar-wrap .search .next svg {position: absolute;  top: 50%; left: 50%; transform: translate(-50%,-50%);}
/* 버튼 */
.schedule-button{font-size: 0; text-align:right; height:115px; display: flex; align-items: center; justify-content: end; margin-bottom:-115px; position: relative; z-index: 1; float:right;}
.schedule-button-box{display: inline-block; overflow: hidden; border:1px solid #D9D9D9; background:#f0f0f0; border-radius:4px; margin-right: 32px;}
.schedule-button button{width:86px; padding:10px 0; display: inline-block;text-align: center; font-family: "Pre Medium"; font-size: 14px; line-height: 22px; color:#707070;}
.schedule-button button:first-child{border-right:1px solid transparent; border-radius:4px;}
.schedule-button button:first-child.on{background:#000; color:#fff; border-right:1px solid #d9d9d9;}
.schedule-button button:last-child{border-left:1px solid transparent; border-radius:4px;}
.schedule-button button:last-child.on{background:#000; color:#fff; border-left:1px solid #d9d9d9;}
@media (max-width:1200px) {
    .schedule-button {margin-bottom: 20px; float:unset; height:auto;}
}

/* 캘린더 */
/* 캘린더 - 월 */
.monthList{padding:27px 0; display: flex; justify-content: center; flex:1; margin-right:174px;}
.monthList::after{content:""; display: table; clear: both;}
.monthList li{display: inline-block; width: 72px; text-align: center; margin:0 6px;}
.monthList li a{width: 100%; height: 100%; display: block;}
.monthList li span{display: inline-block; line-height: 60px; width:60px; height:60px; border-radius:50%; padding:0 2px; color:#000; font-size: 20px; letter-spacing: -.05em; font-family: 'Pre Bold'; position: relative;}
.monthList li:hover span {background:rgba(40,34,233,0.2);}
.monthList li.on span{background:#2822E9;  display: inline-block; color: #fff; font-family: 'Pre Medium';}


.month-search-header {text-align: center; padding: 38px 42px; position: relative; display: flex; align-items: center; justify-content: center; border-bottom:1px solid #6C6C76;}
.month-search-header p{display: inline-block; padding: 0 180px; position: relative; color: #000; font-family: "Pre Bold"; font-size: 48px;}
.month-search-header .month-prev,
.month-search-header .month-next{width: 36px; height: 36px; border-radius: 50%; text-indent: -99999px; position: relative; background: #F0F0F0;}
.month-search-header .month-prev svg,
.month-search-header .month-next svg {position: absolute;  top: 50%; left: 50%; transform: translate(-50%,-50%);}


.monthSchdul {border-bottom:1px solid #02020C; display: table;}
.monthSchdul::after{content:""; display: table; clear: both;}
.monthSchdul .table-content{display: table-cell;width: 40%; padding:25px;}
.table-content ._fnTable{border: 0; padding:0 22px;}
.table-content ._fnTable thead tr {margin-bottom: 24px;}
.table-content ._fnTable thead tr, ._fnctWrap ._fnTable tbody tr._odd{background-color: white;}
.table-content ._fnTable thead tr th{background-color: #f7f7f7; box-shadow: none; font-weight: normal; border: 0; color: #000; font-family: 'Pre Bold'; font-size: 16px; padding:18px 0;}
.table-content ._fnTable thead tr th.sunTh {color:#FF1800;}
.table-content ._fnTable thead tr th.satTh {color: #01499A}
/* .table-content ._fnTable tbody tr {border-bottom:1px solid #DCDCDC;} */
.table-content ._fnTable tbody tr td{border: 0; color: #000; font-family: "Pre Bold"; padding:0;font-size: 24px; position: relative; padding:24px 0;}
/* .table-content ._fnTable tbody tr td ul {position: absolute; left: 0; top: 0; width: 100%;} */
/* .table-content ._fnTable tbody tr:first-child td{padding-top: 27.5px;} */ 
.table-content ._fnTable tbody tr:last-child {border-bottom:0;}
/* .table-content ._fnTable tbody tr:last-child td{padding-bottom: 27.5px;} */
.table-content ._fnTable tbody tr td .day{position: relative; z-index: 2;}
.table-content ._fnTable tbody tr td.today::before {content: ''; position: absolute; left:50%; top:50%; transform: translate(-50%,-50%); width:55px; height:55px; background: #2822E9; border-radius:50%;}
.table-content ._fnTable tbody tr td.today span{position: relative; color:#fff !important;}
.table-content ._fnTable tbody tr td.sunTd {color: #FF1800}
.table-content ._fnTable tbody tr td.satTd {color: #01499A}
.table-content ._fnTable tbody tr td.has span {display:inline-block;}
.table-content ._fnTable tbody tr td.has::after{content:''; display: block; width:6px; height:6px; border-radius:50%; background:#2822E9; position: absolute; bottom:0; left:50%; margin-left:-3px; z-index: 1;}
/* .table-content ._fnTable tbody tr td .date-circle:first-of-type{display: inline-block;} */

.yearSchdulWrap .scheList{width: 60%; border-left:1px solid #D0D0DA; display: table-cell; vertical-align: top;}
.yearSchdulWrap .scheList table {text-align:left;}
.yearSchdulWrap .scheList table th {text-align:left;}
.yearSchdulWrap .scheList col.th {width: 31.9%;}
.yearSchdulWrap .scheList dl {display:flex; width: 100%; border-bottom: 1px solid #ccd0d7; min-height:88px; align-items: center;}  
.yearSchdulWrap .scheList dt{display: table-cell; width:305px; flex-shrink:0; font-family: 'Pre Bold'; font-size: 20px; color:#000; padding:29px 0 29px 72px; align-self: flex-start;}
.yearSchdulWrap .scheList dt:last-child{border-bottom: 0;}
.yearSchdulWrap .scheList dd{display: table-cell; text-align: left; padding: 28px; color: #222; font-size: 20px; font-family: 'Pre Medium';}
.yearSchdulWrap .scheList dd.nodata {text-align: center;transform: translateY(210px);}

@media (max-width:1550px) {
    .monthList li {width:auto;}
}
@media (max-width:1500px) {
    .yearSchdulWrap .scheList tbody th {padding-left:36px;}
}
@media (max-width:1400px) {
    /* .schedule-button {float:unset; margin-bottom:0;}
    .monthList ul {margin-right:0;} */
    #calendar-wrap .search {padding:16px 0;}

    #calendar-wrap .search p {font-size: 16px; line-height: 40px;}
    .monthList li span {width:40px; height:40px; font-size: 16px; line-height: 40px;}
    .schedule-button {height:95px;}
    .schedule-button button {font-size: 12px;}
}
@media (max-width:1280px) {
    .schedule-button-box {margin-right:24px;}
    .schedule-button {height: 72px; }
    .schedule-button button {width:58px; font-size: 11px; padding:7px 0;}
    .monthList {padding:16px 0; margin-right:110px;}
    .monthList li {margin:0 4px; width:48px;}
    .month-search-header {padding:24px 45px;}
    .month-search-header p {font-size: 30px; padding:0 80px;}
    .monthList .all-prev, 
    .month-search-header .all-prev {width:28px; height:28px; background-size:cover;}
    .monthList .all-next, 
    .month-search-header .all-next {width:28px; height:28px; background-size:cover;}
    #calendar-wrap .search .next,
    #calendar-wrap .search .prev {width:24px; height:24px; background-size:8px;}
    #calendar-wrap .search p {margin:0 8px;}
    .table-content ._fnTable thead tr th {font-size: 14px;}
    .table-content ._fnTable tbody tr td {font-size: 18px; padding:21px 0;}
    .table-content ._fnTable tbody tr td.today::before {width:40px; height:40px;}
    .yearSchdulWrap .scheList dl {min-height:68px;}
    .yearSchdulWrap .scheList dt {font-size: 14px; width:245px; padding:23px 30px;}
    .yearSchdulWrap .scheList dd {font-size: 14px; padding:23px 30px;}
    .yearSchdulWrap .scheList dd.nodata {transform: translateY(0);}
}
@media all and (max-width:1200px) {
    .monthList {width:100%;}
    .monthList li {width:6.5%;}
    /* .monthSchdul .scheList tbody th {padding-left: 20px; font-size: 18px;} */
    .table-content ._fnTable tbody tr td.today::after {font-size: 20px;}
    /* .monthSchdul .scheList tbody td {font-size: 18px; padding:20px;} */
}
@media all and (max-width: 1023px) {
    #calendar-wrap {display:block;}
    #calendar-wrap .search {justify-content: center;}
    #calendar-wrap .search p {font-size: 24px; margin:0 15px;}
    .month-search-header{padding: 22px 15px;}
    .month-search-header p{padding: 0 40px; font-size: 40px;}
    .month-search-header .all-next{text-align: left;}
    .monthSchdul {display:block;}
    .monthList{margin-right: 0; width:auto; margin: 0 10px; padding: 10px 15px; flex-wrap:wrap;}
    .monthList li {width:calc(100% / 6); margin:0;}
    .monthList li span {width:45px; height:45px; font-size: 17px; line-height: 45px;}
    .monthSchdul .table-content{width: 100%; float: none; display: block; border-bottom:1px solid #02020C;}
    .yearSchdulWrap {display: block;}
    .yearSchdulWrap .scheList {border-left: 0;}
    .yearSchdulWrap .scheList {width: 100%; float: none; margin-top: 20px; display:block;}
    .yearSchdulWrap .scheList dl {min-height:55px;}
    .yearSchdulWrap .scheList dt {font-size: 16px; padding:15px 20px; width:220px;}
    .yearSchdulWrap .scheList dd{font-size: 16px; padding:15px 20px;}
    .month-search-header .png {display: block;}
    /* .monthList .png{display: none;} */
    .monthList ul{width: 100%; margin: 0; flex-wrap:wrap;}
    .monthSchdul ._fnTable tbody tr td{padding: 15px 0; font-size: 20px;}
    .monthSchdul ._fnTable tbody tr td.today::before {font-size: 20px; }
    .monthSchdul ._fnTable tbody tr td.today::before {width:45px; height:45px;}
    .monthSchdul ._fnTable tbody tr:first-child td, .monthSchdul ._fnTable tbody tr:last-child td{padding-top: 15px;}
    
    
}
@media all and (max-width: 768px) {
    .month-search-header p {font-size: 30px;}
}
@media all and (max-width:650px) {
    .month-search-header {display: flex; align-items: center;}
    .month-search-header p {line-height: 30px;}
    /* .month-search-header p {position: absolute; top:15px; left:0; width:100%; padding:0;} */
}
@media all and (max-width: 500px) {
    .month-search-header p {font-size: 20px;}
    .month-search-header .all-next {font-size: 15px;}
    .monthList li{width: 25%;}
    .monthList .all-prev,
    .month-search-header .all-prev {font-size: 15px;}
    .monthList .all-next,
    .monthList li span {font-size: 15px;}
    .monthSchdul .table-content {padding:25px 0;}
    .monthSchdul ._fnTable thead tr th {font-size: 15px}
    .monthSchdul ._fnTable tbody tr td {font-size: 15px; line-height: 40px;}
    .yearSchdulWrap .scheList dl {}
    .yearSchdulWrap .scheList dt {width:190px; padding: 15px; font-size: 15px;}
    .yearSchdulWrap .scheList dd{padding: 15px; font-size: 15px;}
    /* .table-content .table-month p span {font-size: 20px;} */
    /* .table-content .table-month .month-eng {margin-left: 0; font-size: 18px;} */
    .table-content ._fnTable tbody tr td.has::after {top:-10px;}

}


/* 전체일정 */
.year-wrap {position: relative; display: none;}
.year-wrap li {position: relative; border-bottom:1px solid #d9d9d9; }
.year-wrap li .scd-month {width:320px;background:#fff;display: table-cell;vertical-align: top;border-right:1px solid #D0D0DA;padding:73px 32px;}
.year-wrap li .scd-month .month-box{color:#000;font-family: 'Pre Bold';}
.year-wrap li .scd-month .box-year {font-size: 16px; line-height: 20px; letter-spacing: -.05em; color:#FFA900;font-family: 'Dream Regular';}
.year-wrap li .scd-month .box-month {font-size: 48px; line-height: 64px;}
.year-wrap li .scd-month .box-month-en {font-family: 'Sebang Regular'; font-size: 15px; letter-spacing: -.05em;}
/* .year-wrap li h3 span{font-size: 50px;} */
.year-wrap li .list-inner{display: table-cell; vertical-align: middle;}
.year-wrap .list-box{font-size: 0;border-bottom:1px solid #D7DEE3; display: table; width: 100%; table-layout: fixed;}
.year-wrap .list-box:last-child{margin-bottom: 0; border-bottom:0;}
.year-wrap .list-box::after{content:""; display: table; clear: both;}
.year-wrap .list-date{ font-family: 'Pre Bold'; color: #000; line-height: 1.5; display: table-cell; width: 335px; font-size: 20px; line-height: 30px; padding:37px 0 37px 72px;}
.year-wrap .list-content{width:100%; color: #000; font-size: 20px; font-family: 'Pre Medium'; padding:14px 20px; display: table-cell; vertical-align: middle;}
.year-wrap .list-box .nodata {font-size: 16px;}
.year-wrap .nodata-wrap {padding:30px 20px; width:100%; text-align: center;}
@media all and (max-width: 1280px) {
    .year-wrap .list-date{width: 230px; padding:20px; font-size: 14px;}
    .year-wrap .list-content{width: 100%; font-size: 14px;}
    /* .year-wrap li{padding: 20px 10px;} */
    .year-wrap li .scd-month{float: none; margin: 0 auto;}
    .year-wrap li .scd-month .box-month {font-size: 38px;}
    .year-wrap li .scd-month {padding:40px 32px;}
    /* .year-wrap li .list-inner{width: 100%; float: none; margin-top: 20px;}*/
} 
@media (max-width:1023px) {
    .year-wrap li .scd-month {padding:30px 32px; width:240px;}
    .year-wrap li .scd-month .box-month {font-size: 35px;}
}
@media all and (max-width: 768px) {
    .year-wrap li:nth-child(odd)::before{display: none;}
    /* display:table-cell 제거 */
    .year-wrap li .scd-month {width:100%; display:block; padding:10px 0; border-right:none; border-bottom:1px solid #D7DEE3;}
    .year-wrap li .scd-month .month-box {width:100%;}
    .year-wrap li .scd-month .box-month {font-size: 30px; padding-left: 20px;}
    .year-wrap li .list-inner {display: block;}
    .year-wrap .list-date {padding:15px 20px; font-size: 16px;}
    .year-wrap .list-content {font-size: 16px; padding:14px 0px;}
}

@media all and (max-width: 500px) {
    .year-wrap .list-date {font-size: 15px;}
    .year-wrap .list-content {font-size: 15px;}
    .year-wrap .list-date::after {top: 9px;}
}