.blue { color: #006bef;}
#schedule .slide .slick-slide {outline: none;}
#schedule .slick-list.draggable {position: relative;}
#schedule .slick-arrow {position: absolute; font-size: 0; width: 35px; height: 35px; display: flex; align-items: center; justify-content: center; background: #f7f7f7; border-radius: 50%; top: 20px;}
#schedule .slick-arrow::after { width: 7px; height: 12px;}
#schedule .slick-prev {top: 22px; left: 50%; transform: translateX(-120px); z-index: 10;}
#schedule .slick-prev::after {content: ''; display: block; background: url("/img/common/3_1_l_arrow.png");}
#schedule .slick-next {top: 22px; right: 50%; transform: translateX(120px); z-index: 10;}
#schedule .slick-next::after {content: ''; display: block; background: url("/img/common/3_1_r_arrow.png");}
#schedule .year { text-align: center; border: 1px solid #ddd; border-bottom: 0; padding: 20px 0;}
#schedule .year h4 { font-size: 32px; font-weight: 700;}
#schedule .month {display: flex;}
#schedule .month li {width: calc(100%/12); text-align: center; border: 1px solid #ddd; font-size: 20px; transition: all .3s; font-weight: 300;}
#schedule .month li:nth-of-type(n+2) {border-left: none;}
#schedule .month li.active {background-color: #006bef; color: #fff; border-color: #006bef; font-weight: 700;}
#schedule .month li a {display: block; width: 100%; height: 100%; padding: 20px 10px; transition: all .3s;}
#schedule .month li a:hover {background-color: #eee;}
#schedule .month li.active a:hover {background-color: #006bef; color: #fff; border-color: #006bef; font-weight: 700;}

#schedule .dot_title {margin: 60px 0 0;}
.dot_title h5 { position: relative; padding-left: 30px; text-align: left;}
.dot_title h5::before {content: ''; display: block; width: 14px; height: 14px; background-color: #fff; border:3px solid #006bef; position: absolute; left:0; top:15px; border-radius: 50%;}

#schedule .wrap {display: flex; align-items: start; padding: 80px 0; border-bottom: 1px solid #ddd;}
#schedule .wrap.w1 {padding-top: 30px;}
#schedule .wrap:last-child {border-bottom: none; padding-bottom: 0;}
/* 달력 */
.subpage .table table {width: 100%; border-top: 3px solid #777e90; text-align: center; border-collapse: collapse;}
.subpage .table table th,
.subpage .table table td {border: 1px solid #ddd; line-height: 1.6; padding: 15px;}
.subpage .table table th {font-size: 17px; font-weight: 500; background-color: #f7f7f7;}
.subpage .table table td {font-size: 16px; font-weight: 300; background-color: #fff; color:#555;}
.subpage .table table tr td:first-child,
.subpage .table table tr th:first-child {border-left: 0;}
.subpage .table table tr td:last-child,
.subpage .table table tr th:last-child {border-right: 0;}
#schedule .table table th, .subpage .table table td {border: none;}
#schedule .table table th {border-bottom: 1px solid #ddd; background-color: #fff; padding: 10px;}
#schedule .table table th:first-of-type {color: #f21616;}
#schedule .table table th:last-of-type {color: #006bef;}
#schedule .table table td {position: relative;}
#schedule .table table td:first-of-type {color: #f21616;}
#schedule .table table td.circle {color: #f21616;}
#schedule .table table td.circle::after {content: ''; display: block; width: 40px; height: 40px; border: 1px solid #f21616; border-radius: 50px;
position: absolute;; left: 50%; top: 50%; transform: translate(-50%,-50%);}
#schedule .diary {border: 1px solid #ddd; padding: 35px; box-shadow: 20px 20px 0 #f7f7f7; width: 100%; max-width: 450px;}
#schedule .diary h6 {text-align: center; margin-bottom: 20px;}
/* 상세일정 */
#schedule .wrap .day_list {margin-left: 90px; width: 100%;  text-align: left;}
#schedule .wrap .day_list b {display: block; min-width: 92px; position: relative; margin-right: 40px;}
#schedule .wrap .day_list b::before {content: ''; display: block; width: 1px; height: 20px; background-color: #ddd; position: absolute; right: 0; top: 5px;}
#schedule .wrap .day_list ul {border-top: 1px solid #ddd; margin-top: 25px; padding-top: 30px; }
#schedule .wrap .day_list li {display: flex;}
#schedule .wrap .day_list li:nth-of-type(n+2) {margin-top: 20px;}

/* responsive */
@media screen and (max-width: 1420px) {
    #schedule .diary {max-width: 400px;}
    #schedule .wrap .day_list {margin-left: 60px;}
}

@media screen and (max-width: 1024px) {
    #schedule h3 {margin-bottom: 40px;}
    #schedule .year h4 {font-size: 26px;}
    #schedule .slick-prev {transform: translateX(-120px); top: 18px;}
    #schedule .slick-next {transform: translateX(120px); top: 18px;}
    #schedule .month li {font-size: 16px;}
    #schedule .month li a {padding: 10px;}
    #schedule .wrap {flex-direction: column; align-items: center; padding: 50px 0;}
    #schedule .wrap > div {width: 100%;}
    .dot_title h5 { padding-left: 25px; line-height: 1.3;}
    .dot_title h5::before {width: 12px; height: 12px; top:9px;}
    /* 달력 */
    .subpage .table table th, .subpage .table table td {padding: 10px;}
    .subpage .table table th {font-size: 15px;}
    .subpage .table table td {font-size: 14px;}
    .subpage .table table table th,
    .subpage .table table table td {font-size: 13px; padding: 8px;}

    .subpage .table table .total {font-size: 15px;}
    .subpage .table {overflow-x: auto; }
    #schedule .diary {margin-bottom: 50px; padding: 25px;}
    #schedule .wrap .day_list b::before {top: 3px;}
    #schedule .table table td.circle::after {width: 30px; height: 30px;}
    /* 상세일정 */
    #schedule .wrap .day_list {margin-left: 0;}
    #schedule .wrap .day_list ul {padding-top: 20px; margin-top: 20px;}
    #schedule .wrap .day_list li:nth-of-type(n+2) {margin-top: 15px;}
    #schedule .wrap .day_list b {padding-right: 30px; margin-right: 30px;}
}
@media screen and (max-width: 640px) {
    #schedule .year h4 {font-size: 22px;}
    #schedule .slick-prev {transform: translateX(-90px); top: 16px;}
    #schedule .slick-next {transform: translateX(90px); top: 16px;}
    #schedule .month {flex-wrap: wrap;}
    #schedule .month li {width: calc(100%/4); font-size: 15px;}
    #schedule .month li:nth-of-type(n+5) {border-top: 0;}
    #schedule .month li:nth-of-type(5),
    #schedule .month li:nth-of-type(9) {border-left: 1px solid #ddd;}
    #schedule .wrap {padding: 40px 0;}
    .dot_title h5 {padding-left: 20px}
    .dot_title h5::before {width: 10px; height: 10px; top:7px; border-width: 2px;}

   .subpage .table table th, .subpage .table table td {padding: 8px;}
   .subpage .table table th {font-size: 14px;}
   .subpage .table table td {font-size: 13px;}
   .subpage .table table table th,
   .subpage .table table table td {font-size: 12px; padding: 5px;}
    #schedule .diary {box-shadow: 10px 10px 0 #f7f7f7; padding: 15px;}
    #schedule .wrap .day_list b {padding-right: 20px; margin-right: 20px; min-width: 60px;}
    #schedule .wrap .day_list b::before {top: 1px;}
}
