@charset "UTF-8";
.calendar {
    position: relative
}

.calendar .cal-body .cal-keys {
    float: left;
    margin: 0 30px;
    border: 1px dotted #1a202d;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px
}

.calendar .cal-body .cal-keys ul {
    text-align: center
}

.calendar .cal-body .cal-keys ul li {
    display: inline-block;
    margin: 0 15px 0
}

.calendar .cal-body p.lead {
    text-align: center;
    margin: 0 0 30px;
    font-size: 14px
}

.calendar .cal-body .cal-table {
    padding: 0 0 40px
}

.calendar .cal-body .cal-table table {
    border-bottom: 1px solid #ededed
}

.calendar .cal-body .cal-table table tr.top-days {
    border-left: 1px solid #EADAC0;
    border-right: 1px solid #EADAC0;
    text-align: center;
}

.calendar .cal-body .cal-table table tr th {
    width: 139px;
    height: 40px;
    background-color: #EADAC0;
    color: #65443E;
    font-weight: 400;
    border-right: 1px solid white;
    vertical-align: middle
}

.calendar .cal-body .cal-table table tr th.sat {
    width: 140px;
}
.calendar .cal-body .cal-table table tr th.sun{
    border-right: 0;
}
.calendar .cal-body .cal-table table tr {
    border-left: 1px solid #ededed
}

.calendar .cal-body .cal-table table tr td {
    width: 139px;
    max-width: 139px;
    border-top: 1px solid #ededed;
    border-right: 1px solid #ededed;
    background-color: white
}
.calendar .cal-body .cal-table table tr td.holiday{
    background-color: #f3f3f3;
}

.calendar .cal-body .cal-table table tr td.sat {
    width: 140px;
    border-right: 0px solid #ededed
}

.calendar .cal-body .cal-table table tr td .day-bar {
    text-align: left;
    
    font-size: 14px;
    padding: 0 0 0 10px;
}

.calendar .cal-body .cal-table table tr td .day-bar .day p {

}

.calendar .cal-body .cal-table table tr td .day-bar .day p span {
    width: 30px;
    height: 30px;
    line-height: 30px;
    -moz-border-radius: 100%;
    -webkit-border-radius: 100%;
    border-radius: 100%;
    display: block;
    text-align: center
}

.calendar .cal-body .cal-table table tr td .day-bar.today-circle .day p span {
    color: white;
    background-color: #65443E
}

.calendar .cal-body .cal-table table tr td .cal-event {
    margin: 3px 0 0;
    padding: 0px 10px 10px;

    font-size: 12px;
    line-height: 18px
}

.calendar .cal-body .cal-table table tr td .cal-event p.closed-txt {
    margin: 5px;
    padding: 10px;
    min-height: 0;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    color: #6b7d83;
    text-align: left;
    background-color: #ededed
}

.calendar .cal-body .cal-table table tr td .cal-event .b-bdr {
    width: 120px;
    text-align: center;
    background-position: 100px 4.5px;
    margin: 10px auto 0px;
    -moz-background-size: 6px auto;
    -o-background-size: 6px auto;
    -webkit-background-size: 6px auto;
    background-size: 6px auto
}

.calendar .cal-body .cal-table table tr td .cal-event span.details {
    color: #1a202d
}

.calendar .cal-body .cal-table table tr td .cal-event span.cat {
    margin: 0 5px 0 0;
    font-size: 10px
}

.calendar .sec-btn-group a.next .arrow-gr {
    right: 13px
}
.calendar .sec-btn-group{
    margin-top: 20px;
    margin-bottom: 30px;
    position: relative;
}
.calendar .box-btn01{
    text-align: center;
}
.calendar .sec-btn-group .next{
    background-repeat: no-repeat;
    background-position: right center;
    background-image: url(../img/common/arrow_r.png);
}
.calendar .sec-btn-group .pre{
    background-repeat: no-repeat;
    background-position: left center;
    background-image: url(../img/common/arrow_l.png);
}
.calendar .cal-detail{
    font-size: 12px;
}
@media only screen and (max-width: 979px) {
    .calendar .cal-body .cal-table {
        width: 100%
    }
    .calendar .sec-btn-group a{
        height: 18px;
    }
    .calendar .sec-btn-group a.pre{
        position: absolute;
        left: 0;
    }
    .calendar .sec-btn-group a.next{
        position: absolute;
        right: 0;
    }
    .calendar .sec-btn-group .month{
        display: none;
    }
    .calendar .cal-body .cal-table table {
        width: 100%
    }
    .calendar .cal-body .cal-table table tr {
        width: 100%;
        border: 0px
    }
    .calendar .tab-none{
        display: none;
    }
    .calendar .cal-body .cal-table table tr.cal-res {
        display: block
    }
    .calendar .cal-body .cal-table table tr td {
        width: 100%;
        max-width: 100%
    }
    .calendar .cal-body .cal-table table tr td.cal-res {
        display: block
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
    }
    .calendar .cal-body .cal-table table tr td .day-bar {
        width: 80px;
        padding: 0;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;

    }
    .calendar .cal-body .cal-table table tr td .spdate {
        background-color: #EADAC0;
        font-size: 14px;
        text-align: center;
        width: 40px; 
        padding-top: 5px;
        padding-bottom: 5px; 
    }
    .calendar .cal-body .cal-table table tr td .spdate p {
        top: 50%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        position: relative;  
    }
    .calendar .cal-body .cal-table table tr td .day {
        text-align: center;
        width: 40px;
        font-size: 14px;
        background-color: #ededed;  
        padding-top: 5px;
        padding-bottom: 5px; 
    }
    .calendar .cal-body .cal-table table tr td .day p {
        top: 50%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        position: relative; 
        line-height: 30px;
    }
    .calendar .cal-body .cal-table table tr td .day p span {
        margin: 0 auto;
    }
    .calendar .cal-body .cal-table table tr td .cal-event {
        margin: 0 !important;
        width: calc(100% - 80px);
        box-sizing: border-box;
        padding: 10px 20px
    }
    .calendar .cal-body .cal-table table tr td .cal-event.closed p.closed-txt {
        text-align: left
    }
    .calendar .cal-body .cal-table table tr td .cal-event div {
        max-width: 100%
    }
    .calendar .sec-btn-group .pre{
        background-size: 8px auto;
        -moz-background-size: 8px auto;
        -webkit-background-size: 8px auto;
        -o-background-size: 8px auto;
        -ms-background-size: 8px auto;
        padding-left: 30px;
    }
    .calendar .sec-btn-group .next{
        background-size: 8px auto;
        -moz-background-size: 8px auto;
        -webkit-background-size: 8px auto;
        -o-background-size: 8px auto;
        -ms-background-size: 8px auto;
        padding-right: 30px;
    }
}
@media only screen and (min-width: 980px) {
    .calendar .sec-btn-group{
        margin-top: 17px;
    }
    .calendar .sec-btn-group .pre{
        background-size: 8px auto;
        -moz-background-size: 8px auto;
        -webkit-background-size: 8px auto;
        -o-background-size: 8px auto;
        -ms-background-size: 8px auto;
        padding-left: 30px;
    }
    .calendar .sec-btn-group .next{
        background-size: 8px auto;
        -moz-background-size: 8px auto;
        -webkit-background-size: 8px auto;
        -o-background-size: 8px auto;
        -ms-background-size: 8px auto;
        padding-right: 30px;
    }
    .calendar .cal-cat-ttl{
        margin-top: 10px;
        line-height: 20px;
    }
    .calendar .cal-body .cal-table table tr td .day-bar{
        padding-top: 10px;
    }
    .calendar .cal-body .cal-table table tr td .day-bar,
    .calendar .cal-body .cal-table table tr td .cal-event {
        height: auto!important;
    }
    .calendar .cal-body .cal-table table tr td .cal-event{
        min-height: 50px;
    }

}
