/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}



.calendar{ margin:50px 0 0 0;}
.calendar .date{ text-align:center; font-size:30px; font-weight:bold; color:#23408f;}
.calendar .box-frame { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: flex-start; align-content: flex-start; align-items: flex-start; margin-top: -10px; margin-left: -10px;}
.calendar .box-frame > * { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center; align-content: center; align-items: center; width: calc(14.285% - 10px); height: 262px; background-color: #dcdede; color: #3d3b42; font-family: Poppins,sans-serif; position: relative; margin-top: 10px; margin-left: 10px; font-size: 36px; line-height: 38px;}
.calendar .box-frame .empty {background-color: #808080;}
.calendar .box-frame .event-bg { position: absolute; top: 0; right: 0; width: 100%; height: 100%; background-size: cover; background-repeat: no-repeat; background-position: center center; z-index: 1; display: flex; flex-direction: column; flex-wrap: nowrap; justify-content: center; align-content: center; align-items: center;}
.calendar .day-header { display: flex; flex-direction: row; flex-wrap: nowrap; justify-content: flex-start; align-content: flex-start; align-items: flex-start; margin-top:50px;}
.calendar .day-header > * { font-size: 17px; line-height: 27px; font-weight:400; color: #a9aaaa; width: 14.285%; height: 49px; text-align: center;}

.calendar a { display:block; position:relative;}
.calendar picture { display:block; }
.calendar .date-field { position:absolute; text-align:center; padding:10px; top:-5px; right:10px; background-color:#23408f;}
.calendar .date-field span{ display:block; color:#FFF;}
.calendar .date-field span.day{ font-size:22px; font-weight:bold; line-height:1;}
.calendar .date-field span.month{ font-size:13px; font-weight:300; line-height:1; margin-top:5px;}
.calendar img { max-width: 100%; height:auto; background-repeat: no-repeat; background-size: cover; }

.events-popup img{ max-width: 100%; height:auto;}
.events-popup .popup-title{ font-size:36px; font-weight:bold; display:flex; align-items:center; color:#23408f;}
.events-popup .popup-date{ font-size:20px; font-weight:400; padding:10px 0; display:flex; align-items:center;}
.events-popup .popup-clock{ font-size:16px; font-weight:400; display:flex; align-items:center;}
.events-popup .popup-map{ font-size:16px; font-weight:400; padding:10px 0 20px 0; display:flex; align-items:center;}
.events-popup .popup-thumtext{ font-size:16px; font-weight:400; border-top:3px solid #23408f; padding-top:15px;}
.events-popup .popup-date i, .events-popup .popup-clock i, .events-popup .popup-map i{ color:#23408f; width:25px; text-align:center; font-size:24px; margin-right:10px;}

@media (max-width: 1650px) {
.calendar .box-frame > * {height: 220px; font-size: 32px;line-height: 34px;}
}

@media (max-width: 1400px) {
.calendar .box-frame > * {height: 190px; font-size: 28px; line-height: 32px;}
.calendar .date {width: 44px; height: 52px; font-size: 13px; line-height: 14px; padding: 6px 0 0; right: 15px;}
}

@media (max-width: 1239px) {
.calendar .box-frame > * {height: 160px; font-size: 24px; line-height: 28px;}
}

@media (max-width: 1024px) {
.calendar .box-frame > *{ height: 135px; font-size: 22px; line-height: 26px;}
}

@media (max-width: 870px) {
.calendar .box-frame > * {height: 105px; font-size: 22px; line-height: 26px;}
}

@media (max-width: 670px) {
.calendar .box-frame > * {height: 190px; font-size: 18px;line-height: 22px; width: calc(33.333% - 10px);}
}

@media (max-width: 575px) {
.calendar .box-frame > * { height: 160px; font-size: 18px; line-height: 22px; width: calc(33.333% - 10px);}
}

@media (max-width: 450px) {
.calendar .box-frame > * {height: 120px; font-size: 18px; line-height: 22px; width: calc(33.333% - 10px);}
}