@charset "utf-8";

table{border-collapse: collapse;}
/* 레이어달력 */
.layer_calendar{
    position: relative;
    width:100%;
    box-sizing: border-box;
    background: #fff;
    line-height:16px;
    padding:25px 15px;
}
.layer_calendar a{ 
cursor:pointer;
}
.layer_calendar a:hover{
cursor:pointer;
text-decoration:none;
color:#333;
}
.layer_calendar .year_select_box{
    position:absolute;
    top:53px;
    left:19px;
    width:70px;
    height:112px;
    overflow-y:auto;
    background:#fff;
    font-size:19px;
    font-weight:bold;
    border:1px solid #999;
}
*:first-child+html .layer_calendar .year_select_box{
    top:51px;
    left:17px;
}
.layer_calendar .cal_bx_top{
    text-align: center;
    width: 100%;
}
#goToday,
#closeBtn{
    display: inline-block;
    min-width:100px;
    height:40px;
    line-height:40px;
    border-radius: 6px;
    font-size:16px;
    color:#fff;
    text-align: center;
}
#goToday{
    margin-right: 10px;
    background-color:#2A5BED;
    transition: background .3s;
}

#closeBtn {
    background: #fff;
    border: 1px solid #2A5BED;
    color:#2A5BED;
    transition: background .3s;
}

.layer_calendar .cal_bx_middle{
    position: relative;
    margin: 0 0 10px 0;
    height:36px;
    text-align: center;
}
*:first-child+html .layer_calendar .cal_bx_middle{
    padding:0 0 0 17px;
    margin:2px 0 17px 0;
}
    .cal_bx_middle strong, .cal_bx_middle a{
        vertical-align:middle;
    }
    .cal_bx_middle .font_year{
        font-size:24px;
        font-family:'roboto',Arial;
        line-height: 36px;
        color: #333;
        font-weight: normal;
    }
    .cal_bx_middle .font_year b {
        font-weight: normal;
    }
    .cal_bx_middle .font_month::before {
        content:'.'
    }
    .cal_bx_middle .font_month{
        font-size:24px;
        line-height: 36px;
        font-family:'roboto',Arial;
        color: #333;
        font-weight: normal;
    }
    #open_year .font_year:hover ,
    .font_month:hover {
        color:#3b8fff;
    }
    .cal_bx_middle .month_btn{
        position: absolute;
        top:0;
        border: 1px solid #dddddd;
        transition: border .3s;
        border-radius: 100px;
    }
    .cal_bx_middle .month_btn:hover {
        border-color: #999;
    }
    .cal_bx_middle #prev_mon,
    .cal_bx_middle #prev_year,
    .cal_bx_middle #prev_year_list{
        left:0;
    }
    .cal_bx_middle #next_mon ,
    .cal_bx_middle #next_year, 
    .cal_bx_middle #next_year_list {
        right:0;
    }

    #open_year img {
        vertical-align: middle;
    }
.layer_calendar .cal_bx_bottom{
}
    .cal_bx_bottom table{
        table-layout:fixed;
        width:100%;
        height: 260px;
        margin:10px 0 20px;
        padding:0;
        font-family:inherit;
        font-size:18px;
        color: #333333;
    }
    .cal_bx_bottom table .sun, .cal_bx_bottom table .sun a{
        color:#fb30a8;
    }
    .cal_bx_bottom table th.sat{
        /* color:#001eff; */
    }
    .cal_bx_bottom table td.sat, .cal_bx_bottom table td.sat a{
        /* color:#0c4dc6; */
    }
    .cal_bx_bottom table thead th{
        text-align:center;
        height:40px;
        line-height:40px;
        font-weight: normal;
    }
    .cal_bx_bottom table tbody td{
        position: relative;
        line-height: 1;
        font-weight: normal;
        text-align: center;
    }
    .cal_bx_bottom table tbody td a{
        display:inline-block;
        position: relative;
        z-index: 2;
        text-align:center;
        margin: 0 auto;
        padding: 5px;
        border-radius: 50%;
        width: 20px;
        height: 20px;
        line-height: 20px;
        text-decoration: none;
        color: #333333;
    }
    .cal_bx_bottom table tbody td a:hover{
        background: #eee;
        text-decoration:none;
    }
    .cal_bx_bottom table tbody td.none a:hover{
        background:none;
        text-decoration:none;
    }
    .cal_bx_bottom table tbody td a.today{
        background:#4692e0;
        color:#fff !important;
    }
    .cal_bx_bottom table tbody td.select{
        /* background:url("/images/jex_cal/bg_cal_hover.gif") no-repeat left top; */
    }

/* 년도,월 클릭후 */
.calendar_bg2{
    /* width:231px;
    height:235px;
    background:url("./jex_cal/bg_program_calendar2.png") no-repeat left top !important; */
    position:relative !important;
    z-index: 10;
}
.calendar_bg2 .cal_bx_bottom2 table{
    width:90%;
    height: 260px;
    margin:13px auto 0;
    font-size: 18px;
    color: #333333;
}
.calendar_bg2 .cal_bx_bottom2 table td{
    text-align:center;
    padding:10px 0;
}
.calendar_bg2 .cal_bx_bottom2 table td a{
    display: inline-block;
    padding: 10px 15px;
    font-weight:bold;
    font-size: 18px;
    color: #333333;
}
.calendar_bg2 .cal_bx_bottom2 table td a:hover {
    color:#4692e0;
}

#_jex_calendar {
    position: fixed !important;
    left:50% !important;
    top:50% !important;
    margin-top:0;
    z-index:1500;
    width:calc(100% - 30px);
    height:auto;
    max-width:450px;
    transform: translate(-50%,-50%);
    overflow-y:auto;
    overflow-x: hidden;
    animation: calView .3s forwards;
    border-radius: 12px;
}
@keyframes calView {
    0% {transform: translate(-50%,-45%)}
    100% {transform: translate(-50%,-50%)}
}
@media (orientation: landscape) {
    #_jex_calendar {
        height:calc(100vh - 30px);
        background:#fff;
    }
    .cal_bx_bottom table thead th {height:auto;line-height:auto}
}
.jex_calendar__bg {
    position: fixed;
    left:0;
    top:0;
    z-index:1400;
    width:100%;
    height:100%;
    background:#000;
    opacity: 0.5;
}
/* //년도,월 클릭후 */