xmp,pre{
    max-width: 100%;
    white-space: pre-wrap;
    font-weight: inherit !important;
    font-size: inherit !important;
    font-family: inherit !important;
    line-height: inherit !important;
}

textarea{
    font-weight: inherit !important;
    font-size: inherit !important;
    font-family: inherit !important;
    line-height: inherit !important;
}

.layered-popup {
    display:none;
    position: absolute;
    width:400px;
    z-index: 8;
    top:70px;
    font-size:20px;
    padding-left:5px;
    padding-right:5px;
}
.popup-wrap {
    position: absolute;
    width: 100%;
    text-align: center;
}
.popup-inner{
    position: relative;
    width: 1460px;
    display: inline-block;
}
.layered-popup img {
    width: 100%;
    border: 1px solid black;
    float: left;
    /*height: 340px;*/
}
.layered-popup .button_area{
    text-align: center;
}
.layered-popup .button_area .button{
    background-color: #333;
    color: white;
    display: inline-block;
    width: 50%;
    float: left;
    font-size: 13px;
    padding: 8px 12px;
    cursor: pointer;
}
.layered-popup .button_area .button:nth-child(1){
    border-right: 1px solid black;
    background-color: #2889e5;
}
.prev-arrow-bot {
    display: none!important;
}
.next-arrow-bot{
    display: none!important;
}

.event-item .event-img{
    height: 300px;
    object-fit: cover;
}

.event-item h5{
    -webkit-line-clamp: 1;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    max-height: 26px;
    height: 26px;
}
.event-item p{
    -webkit-line-clamp: 2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    max-height: 50px;
    height: 50px;
}
.course-txt h5{
    padding: 0px 10px;
    -webkit-line-clamp: 1;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    max-height: 40px;
    height: 40px;
}
.course-txt h4{
    padding: 0px 10px;
    -webkit-line-clamp: 1;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    max-height: 36px;
    height: 36px;
}
.mvs-txt p{
    margin-top: 15px;
    font-size: 30px;
    font-family: 'GmarketSansLight';
}
.sub-docent{
    background-image: url(../images/sub/docent-bg.png);
}
.docent-01{
    background-image: url(../images/sub/docent-01.png);
}
.docent-02{
    background-image: url(../images/sub/docent-02.png);
}
.docent-03{
    background-image: url(../images/sub/docent-03.png);
}
.stamp-txt h6{
    margin-top: 10px;
    font-size: 18px;
    font-weight: 300;
    line-height: 28px;
}

.jjct-link img{
    display: inline-block;
    vertical-align: middle;
    height: 14px;
    margin-left: 5px;
    margin-top: -3px;
}
/*.header-top{*/
/*    width: 100%;*/
/*    height: 50px;*/
/*    background: transparent;*/
/*    color: white;*/
/*    font-family: 'GmarketSansMedium';*/
/*}*/
.header-top div{
    text-align: left;
    width: 100%;
    max-height: 50px;
    border: 0;
}
.header-top .top-stamp{
    width: 100%;
    display: block;
    background: rgb(20,127,228);
    background: linear-gradient(180deg, rgba(20,127,228,1) 0%, rgba(84,163,238,1) 100%);
    background-image: -moz-linear-gradient( 177deg, rgb(84,163,238) 0%, rgb(20,127,228) 100%);
    background-image: -webkit-linear-gradient( 177deg, rgb(84,163,238) 0%, rgb(20,127,228) 100%);
    background-image: -ms-linear-gradient( 177deg, rgb(84,163,238) 0%, rgb(20,127,228) 100%);
}
.header-top .top-docent{
    background: rgb(255,95,15);
    background: linear-gradient(129deg, rgba(255,95,15,1) 0%, rgba(255,167,0,1) 100%);
    background-image: -moz-linear-gradient(129deg, rgba(255,95,15,1) 0%, rgba(255,167,0,1) 100%);
    background-image: -webkit-linear-gradient(129deg, rgba(255,95,15,1) 0%, rgba(255,167,0,1) 100%);
    background-image: -ms-linear-gradient(129deg, rgba(255,95,15,1) 0%, rgba(255,167,0,1) 100%);
}
/*.header-top .inner{*/
/*    position: absolute;*/
/*    width: 1420px;*/
/*    height: 50px;*/
/*    top: 50%;*/
/*    left: 50%;*/
/*    transform: translate(-50%,-50%);*/
/*}*/
/*.header-top .inner h6{*/
/*    float: left;*/
/*    width: 50%;*/
/*    line-height: 50px;*/
/*    height: 50px;*/
/*    text-align: left;*/
/*    padding-left: 20px;*/
/*}*/
.btn-x {
    right: 20px;
}
.stamp-hamo{
    width: 210px;
    bottom: 233px;
    right: 40px;
}
.btns-new{
    display: none;
    position: fixed;
    bottom: 100px;
    right: 8px;
    width: 200px;
    height: auto;
    z-index: 999;
}
.btns-new button{
    width: 100%;
    height: 52px;
    border-radius: 25px;
    line-height: 20px;
    background-color: #fff;
    border:2px solid #000;
}

.btns-new button p{
    font-family: 'GmarketSansMedium';
    background-repeat: no-repeat;
    background-position: left center;
    padding: 14px 0 10px 30px;
    background-size: 35px;
    font-size: 14px;
    margin-left: 0px;
}


.btns-new button.btn-stamp{
    margin-bottom: 10px;
}

.btns-new button.btn-stamp p{
    background-image: url("../images/common/btn-stamp.png");
}

.btns-new button span{
    position: relative;
    font-weight: 600;
    display: inline-block;
    z-index: 9;
    padding: 0 3px;
}

.btns-new button span::after{
    display: block;
    content: "";
    width: 100%;
    height: 20px;
    /*background: #fdff31;*/
    position: absolute;
    bottom: 1px;
    z-index: -1;
    left: 50%;
    transform: translateX(-50%);
}

.btns-new button.btn-stamp span{
    color: #fff;
    /*display: block;*/
    font-weight: 600;
}

.btns-new button.btn-docent p{
    background-image: url("../images/common/btn-docent.png");
}

.btns-new button.btn-docent span{
    color: #fff;
    font-weight: 600;
    /*display: block;*/
}

.stamp-button{
    display: none;
    position: fixed;
    top: 80px;
    right: 60px;
    z-index: 99;
    width: 130px;
    cursor: pointer;
}
.stamp-button-frame{
    display: none;
    position: fixed;
    top: 60px;
    right: 40px;
    z-index: 99;
    width: 170px;
    cursor: pointer;
    transform-origin: center center;
    animation: rolling 18s infinite;
    animation-timing-function: linear;
    image-rendering: -moz-crisp-edges;
    image-rendering: -o-crisp-edges;
    image-rendering: -webkit-optimize-contrast;
    -ms-interpolation-mode: nearest-neighbor;
    image-rendering: crisp-edges;
}
@keyframes rolling {
    0%{
        transform: rotate(0deg);
    }
    50%{
        transform: rotate(180deg);
    }
    100%{
        transform: rotate(360deg);
    }
}
.stamp-button::before{
    content: " ";
    background: url("../images/main/stamp-button-frame.png");
}
.detail-img img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.p-date-item{
    width: calc(100% / 4);
}
.sub-p-date-tab::before{
    width: 77%;
}
.enacash-button{
    display: none;
    position: fixed;
    left: 20px;
    bottom: 100px;
    z-index: 9999;
    height: 52px;
    border-radius: 25px;
    line-height: 20px;
    color: white;
    background-color: #3b60fd;
    border: 2px solid #000;
    padding: 0 15px;
}
.enacash-button.active{
    display: block;
}
.enacash-button br{
    display: none;
}
@media screen and (max-width: 1420px) {
    .event-item .event-img{
        height: calc(25vw - 65px);
        object-fit: cover;
    }
    .event{
        height: auto;
        padding-bottom: 50px;
    }
    .event-item{
        height: auto;
    }
    .event-txt{
        padding: 20px;
    }
    .header-top .inner{
        width: 100%;
        padding: 0;
    }
}
@media screen and (max-width : 1140px){
    .sub-stamp{
        height: auto;
    }
    .stamp-txt {
        width: 100%;
        height: auto;
        float: unset;
        text-align: center;
    }
    .stamp-txt hr{
        width: 60%;
        margin-left: auto;
        margin-right: auto;
    }
    .stamp-txt .clearfix {
        padding-top: 50px;
    }
    .stamp-app-slide{
        display: none;
    }
}

@media only screen and (max-width: 1024px){
    html{
        overflow-x: hidden !important;
    }
    .layered-popup{
        left: unset !important;
        right: 50px !important;
        top: 80px !important;
    }
    .popup-wrap{
        width: 100%;
    }
    .popup-inner{
        width: 100%;
    }
    .pop-img-wrap{
        height: 200px;
    }
}

@media only screen and (max-width: 768px){
    .layered-popup{
        left:0px!important;
        top:66px!important;
        width: 100% !important;
        padding:0px!important;
    }
    .layered-popup img{
        width: 100%;
        /*height: 100vw;*/
    }
    .stamp-button{
        top: 90px;
        width: 90px;
        right: 20px;
    }
    .stamp-button-frame{
        width: 105px;
        top: 82.5px;
        right: 13px;
    }
    .course-txt h5{
        max-height: 28px;
        height: 28px;
    }
    .course-txt h4{
        max-height: 16px;
        height: 16px;
    }
    .event-item .event-img{
        height: calc(100vw - 60px);
        object-fit: cover;
    }
    .layered-popup{
        left:0px!important;
        top:66px!important;
        width: 100% !important;
        padding:0px!important;
    }
    .layered-popup img{
        width: 100%;
        /*height: 100vw;*/
    }

    .sub-stamp {
        padding: 70px 0;
        background-position: -340px;
    }
    .stamp-txt h1 {
        font-size: 32px;
        line-height: 45px;
        word-break: keep-all;
    }
    .stamp-txt hr {
        width: 100%;
        margin: 20px 0;
    }
    .stamp-txt p {
        text-align: left;
        word-break: keep-all;
        margin-top: 10px;
    }
    .stamp-txt .clearfix {
        padding-top: 30px;
    }
    .stamp-txt .clearfix button{
        width: 200px;
        height: 60px;
        margin-right: 0;
    }
    .stamp-txt .clearfix button.btn-apps{
        margin-bottom: 10px;
    }
    .mvs-txt{
        margin-top: 60px;
    }
    .mvs-txt p{
        margin-top: 10px;
        font-size: 16px;
    }

    .header-top{
        height: 30px;
    }
    .header-top div{
        height: 30px;
    }
    .header-top h6{
        padding-left: 10px;
    }
    .stamp-hamo{
        width: 140px;
        bottom: 170px;
        right: 20px;
    }
    .btns-new{
        display: none;
        position: fixed;
        bottom: 60px;
        right: 10px;
        width: 100px;
        height: auto;
    }
    .btns-new button{
        width: 95px;
        height: 55px;
        font-size: 14px;
        line-height: 18px;
        border-radius: 10px;
    }
    .btns-new button.btn-stamp{
        margin-bottom: 5px;
    }
    .btns-new button.btn-docent span,
    .btns-new button.btn-stamp span {
        display: block;
    }

    .btns-new button p{
        background-image: none !important;
        background-position: left 9px;
        padding: 8px 0 10px 0;
        background-size: 20px;
        font-size: 10px;
        text-align: center;
    }

    .btns-new button span::after {
        display: none;
    }

    .sub-contents-title p{
        margin-bottom: 20px;
    }
    .real-header > .inner > a{

    }
    .reservation-btn button.chk-btn{
        margin-top: 10px;
    }
    .enacash-button{
        left: 10px;
        bottom: 60px;
        width: 95px;
        height: 55px;
        font-size: 14px;
        line-height: 18px;
        border-radius: 10px;
        padding: 0;
    }
    .enacash-button br{
        display: block;
    }
}