
button{
    background: transparent;
}
    
.schedule_list{
    background: #fff;
    padding: 30px 0px;
}

.schedule_list > div{
    max-width: 1100px;
    margin: auto;
    /* border: 1px solid #dbdbdb; */
}
.schedule_list article{
    position: relative;
    width: 100%;
    /* padding: 40px; */
    display: flex;
    background: #fff;
    /* border: 6px solid #ece2d3; */
    /* border: 1px solid #dbdbdb; */
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font: 17px/1.4em "나눔바른고딕";
    color: #000;
}
.schedule_list article .title ~ div{
    margin-top: 30px;
}

.schedule_list .month_select{
    border: 1px solid #d8d8d8;
    border-top: 2px solid #830020;
    border-bottom: 1px solid #9f9f9f;
}
.schedule_list .month_select .year{
    width: 100%;
    height: 70px;
    border-bottom: 1px solid #d8d8d8;
}
    
.schedule_list .month_select .year dl{
    display: flex;
    height: 100%;
    align-items: center;
    justify-content: center;
}
.schedule_list .month_select .year dl dt,
.schedule_list .month_select .year dl dd{
    display: flex;
    align-items: center;
}

.schedule_list .month_select .year dl dt button{
    display: inline-block;
    width: 40px;
    height: 40px;
    border: 1px solid #c4c4c4;
    border-radius: 20px;
    background: url(../../../../images/iosf/ko/content/schedule/img_prev_brown_16x16.png)no-repeat center;
    margin: 0 20px;
}
.schedule_list .month_select .year dl dt button:hover{
    background: url(../../../../images/iosf/ko/content/schedule/img_prev_red_16x16.png)no-repeat center;
}
.schedule_list .month_select .year dl dt button.next{
    background: url(../../../../images/iosf/ko/content/schedule/img_next_brown_16x16.png)no-repeat center;
}
.schedule_list .month_select .year dl dt button.next:hover{
    background: url(../../../../images/iosf/ko/content/schedule/img_next_red_16x16.png)no-repeat center;
}



.schedule_list .month_select .year dl p{
    font: bold 25px/1.4em "나눔바른고딕";
    color: #000;
}

.schedule_list .month_select .month{
    width: 100%;
    display: flex;
}

.schedule_list .month_select .month button{
    position: relative;
    flex: 1 0 8%;
    padding: 15px;
}
.schedule_list .month_select .month button ~ button{
    border-left: 1px solid #d8d8d8;
}
.schedule_list .month_select .month button dt{
    font: bold 15px/1.4em "나눔바른고딕";
    color: #707070;
    margin-top: 2px;
    margin-bottom: 2px;
}
.schedule_list .month_select .month button dd{
    font: bold 23px/1.4em "나눔바른고딕";
    color: #000000;
}

.schedule_list .month_select .month button.on dt{
    color: #94856d;
}
.schedule_list .month_select .month button.on dd{
    color: #6e5d42;
}
.schedule_list .month_select .month button:before{
    content: "";
    position: absolute;
    display: inline-block;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 0px;
    height: 0px;
    background: #830020;
    transition: all 0.1s;
}
.schedule_list .month_select .month button.on:before{
    width: 40px;
    height: 5px;
    transition: all 0.1s;
}


.schedule_list .month_detail {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    margin-top: 40px;
}


/* calendar */

.schedule_list .month_detail .calendar{
    min-width: 440px;
    border: 1px solid #d8d8d8;
    border-top: 2px solid #8f816a;
    border-bottom: 1px solid #222222;
}
.schedule_list .month_detail .calendar .month{
    display: flex;
    align-items: center;
    justify-content: center;
    font: bold 21px/1.4em "나눔바른고딕";
    color: #000;
    height: 56px;
    border-bottom: 1px solid #d8d8d8;
}
.schedule_list .month_detail .calendar table{
    width: 100%;
}
.schedule_list .month_detail .calendar table caption{
    display: none;
}
.schedule_list .month_detail .calendar table tr{
    width: 100%;
}
.schedule_list .month_detail .calendar table tr :is(th,td){
    font: 17px/1.4em "나눔바른고딕";
    color: #000;
    text-align: center;
    padding: 17px 7px;
}
.schedule_list .month_detail .calendar table tr th{
    border-bottom: 1px solid #9f9f9f;
}
.schedule_list .month_detail .calendar table tr td{
    position: relative;
    font-size: 15px;
    background: #fbfbfb;
}
.schedule_list .month_detail .calendar table tr:last-of-type td{
    padding-bottom: 28px;
}

.schedule_list .month_detail .calendar table tr td.on:after{
    content: "";
    display: inline-block;
    position: absolute;
    width: 10px;
    height: 10px;
    border-radius: 10px;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    background: #830020;
}

.schedule_list .month_detail .calendar table tr :is(th:first-of-type,td:first-of-type){
    color: #9d0027;
}
.schedule_list .month_detail .calendar table tr :is(th:last-of-type,td:last-of-type){
    color: #2060aa;
}


/* day_list */
.schedule_list .month_detail .day_list{
    width: 100%;
    margin-left: 40px;
}
.schedule_list .month_detail .day_list table caption{
    display: none;
}
.schedule_list .month_detail .day_list table {
    width: 100%;
    border-top: 1px solid #222222;
    border-bottom: 1px solid #9f9f9f;
}
.schedule_list .month_detail .day_list table tr:not(:last-of-type) th,
.schedule_list .month_detail .day_list table tr:not(:last-of-type) td{
    border-bottom: 1px solid #d8d8d8;
}

.schedule_list .month_detail .day_list table tr th{
    min-width: 170px;
    padding: 27px 0;
    text-align: left;
    font: bold 17px/1.4em "나눔바른고딕";
    color: #6e5d42;
    vertical-align: baseline;
}
.schedule_list .month_detail .day_list table tr td{
    font: 19px/1.3em "나눔바른고딕";
    padding: 27px;
    color: #000;
    vertical-align: baseline;
}



/* 등록된 일정이 없는 경우 */

.schedule_list .month_detail .day_list .empty{
    display: flex;
    justify-content: center;
    align-items: center;
    font: 17px/1.4em "나눔바른고딕";
    color: #898989;
    background: #fcfcfc;
    text-align: center;
    padding: 30px;
    border-top: 1px solid #222222;
    border-bottom: 1px solid #d8d8d8;
}
.schedule_list .month_detail .day_list .empty:before{
    content: "";
    display: inline-block;
    width: 24px;
    height: 24px;
    background: url(../../../../images/iosf/ko/content/schedule/img_info_24x24.png)no-repeat center;
    margin-right: 10px;
}
.schedule_list .month_detail .day_list .empty{
    display: none;
}

.schedule_list .month_detail .day_list:not(:has(table)) .empty,
.schedule_list .month_detail .day_list table:not(:has(tr)) + .empty{
    display: flex;
}
    

/* 리스트2 list2 */

.schedule_list.list2 .month_select .year{
    position: relative;
}
.schedule_list.list2 .month_select .year dl dt button{
    border-radius: 0px;
}
.schedule_list.list2 .month_select .year .btn{
    right: 15px;
    top: 15px;
    position: absolute;
}
.schedule_list.list2 .month_select .year .btn .calendar_btn{
    width: 40px;
    height: 40px;
    border: 1px solid #c3c3c3;
    background: url(../../../../images/iosf/ko/content/schedule/img_calendar_grey_20x20.png)no-repeat center;
}
.schedule_list.list2 .month_select .year .btn .calendar_btn:hover{
    border: 1px solid #8f816a;
    background: url(../../../../images/iosf/ko/content/schedule/img_calendar_white_20x20.png)no-repeat center,
    #8f816a;
}

.schedule_list.list2 .month_detail .day_list tr td p{
    font: 17px/1.4em "나눔바른고딕";
    color: #7d7d7d;
    margin-top: 3px;
}

.schedule_list.list2 .month_detail .day_list table tr{
    display: flex;
    flex-direction: column;
}

.schedule_list.list2 .month_detail .day_list table tr:nth-of-type(n) :is(th,td){
    padding: 0;
    border: 0;
}
.schedule_list.list2 .month_detail .day_list table tr:not(:last-of-type) td{
    border-bottom: 1px solid #d8d8d8;
}
.schedule_list.list2 .month_detail .day_list table tr:nth-of-type(n) th{
    padding: 30px 0 6px;
}
.schedule_list.list2 .month_detail .day_list table tr:nth-of-type(n) td{
    padding: 6px 0 27px;
}


/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */
@media screen and (max-width: 960px) {

    .schedule_list .month_select .year p{
        font-size: 21px;
    }

    .schedule_list .month_select .month {
        flex-wrap: wrap;
    }

    .schedule_list .month_select .month button{
        flex: 1 0 16%;
    }
    .schedule_list .month_select .month button:nth-of-type(7){
        border-left: 0;
    }
    .schedule_list .month_select .month button:nth-of-type(6) ~ button{
        border-top: 1px solid #d8d8d8;
    }
    .schedule_list .month_select .month button{
        padding: 9px;
    }
    .schedule_list .month_select .month button dt{
        font-size: 13px;
    }
    .schedule_list .month_select .month button dd{
        font-size: 17px;
    }


    .schedule_list .month_detail{
        flex-wrap: wrap;
    }
    .schedule_list .month_detail .calendar{
        min-width: 100%;
        border-left: 0;
        border-right: 0;
    }

    .schedule_list .month_detail .day_list{
        margin: 0;
    }
    .schedule_list .month_detail .day_list table{
        border-top: 0;
    }

    .schedule_list .month_detail .day_list table tr{
        display: flex;
        flex-direction: column;
    }

    .schedule_list .month_detail .day_list table tr:nth-of-type(n) :is(th,td){
        padding: 0;
        border: 0;
    }
    .schedule_list .month_detail .day_list table tr:not(:last-of-type) td{
        border-bottom: 1px solid #d8d8d8;
    }
    .schedule_list .month_detail .day_list table tr:nth-of-type(n) th{
        padding: 30px 0 7px;
    }
    .schedule_list .month_detail .day_list table tr:nth-of-type(n) td{
        padding: 7px 0 27px;
    }



}

@media screen and (max-width: 640px) {

    .schedule_list{
        padding: 20px 0;
    }

    .schedule_list .month_select .month button{
        flex: 1 0 24%;
    }
    .schedule_list .month_select .month button:nth-of-type(n){
        border-left: 1px solid #d8d8d8;
    }
    .schedule_list .month_select .month button:nth-of-type(1),
    .schedule_list .month_select .month button:nth-of-type(5),
    .schedule_list .month_select .month button:nth-of-type(9){
        border-left: 0;
    }
    .schedule_list .month_select .month button:nth-of-type(4) ~ button{
        border-top: 1px solid #d8d8d8;
    }
}


