﻿.school-page-box{
    width: 1920px;
    max-width: 100%;
    display: block;
    margin: 0 auto;
    position: relative;
    font-size: 0;
    min-height: calc(100vh - 100px);
    background-color: #f5f5f5;
    overflow: hidden;
}
.pages-video-box .pages-video,
.pages-video-box.pages-video-close .pages-banner-bc{
    display: block;
}
.pages-video-box .pages-banner-bc,
.pages-video-box.pages-video-close .pages-video{
    display: none;
}
.school-page-all-box{
    width: 1300px;
    max-width: 100%;
    display: block;
    margin: 0 auto;;
    position: relative;
    box-sizing: border-box;
    padding-bottom: 80px;
}
.school-page-introduction-box{
    width: 100%;
    box-sizing: border-box;
    padding: 15px 30px;
    padding-right: 15px;
    padding-bottom: 30px;
    background-color: #fff;
    border-radius: 5px;
}
.school-page-introduction-name{
    width: calc(100% - 320px);
    display: inline-block;
    vertical-align: top;
    font-size: 24px;
    color: #f3cd05;
    font-weight: bold;
    letter-spacing: 0.1em;
    margin-bottom: 5px;
}
.school-page-country-box{
    width: 320px;
    display: inline-block;
    vertical-align: top;
    text-align: right;
}
.school-page-introduction{
    position: relative;
    z-index: 9;
    display: inline-block;
    margin-left: 5px;
}
.school-page-introduction-discount{
    width: 120px;
    text-align: center;
    position: relative;
}
.school-page-introduction-discount p{
    font-size: 18px;
    color: #ff0000;
    border: 1px solid #ff0000;
    border-radius: 5px;
    margin-bottom: 10px;
}
.school-page-introduction-discount-info-box{
    position: absolute;
    top: calc(100% + 20px);
    left: 0;
    width: 260px;
    background-color: #eee;
    box-sizing: border-box;
    -webkit-filter: drop-shadow(0 0 5px rgba(0, 0, 0, 0.5));
    filter: drop-shadow(0 0 5px rgba(0, 0, 0, 0.5));
    border-radius: 10px;
    padding: 10px 20px;
    opacity: 0;
    pointer-events: none;
}
.school-page-introduction-discount:hover .school-page-introduction-discount-info-box{
    opacity: 1;
    pointer-events: all;
}
.school-page-introduction-discount-info-box::after{
    content: '';
    border-left: 8px solid transparent;
    border-bottom: 10px solid #eee;
    border-right: 8px solid transparent;
    position: absolute;
    top: -10px;
    left: 20px;
}
.school-page-introduction-discount-info{
    font-size: 14px;
    color: #888;
    letter-spacing: 0.03em;
}
.school-page-introduction-country{
    display: inline-block;
    vertical-align: middle;
    margin-right: 25px;
}
.school-page-introduction-country span{
    width: 20px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px;
}
.school-page-introduction-country p{
    display: inline-block;
    vertical-align: middle;
    font-size: 14px;
    color: #888;
}
.school-page-introduction-address,
.school-page-introduction-style{
    font-size: 14px;
    color: #888;
    letter-spacing: 0.1em;
    line-height: 36px;
    display: inline-block;
    vertical-align: middle;
}
.school-page-introduction-address{
    margin-right: 25px;
}
.school-page-introduction-address i{
    color: #f3cd05;
    margin-right: 3px;
}
.school-page-introduction-left-box{
    width: 600px;
    max-width: 100%;
    display: inline-block;
    vertical-align: top;
}
.school-page-introduction-img-box{
    width: 100%;
    height: 315px;
    display: block;
    overflow: hidden;
}
.school-page-introduction-img-box span{
    width: 100%;
    height: 100%;
    display: block;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
#ExperienceTag{
    position: relative;
    top: -110px;
}
.school-page-introduction-facility-box{
    width: 100%;
    display: block;
    background-color: #f5f5f5;
    border: 1px solid #eee;
    box-sizing: border-box;
    padding: 20px 35px;
    position: relative;
    margin-top: 60px;
    border-radius: 5px;
}
.school-page-introduction-facility-box:after{
    content: '';
    width: 77px;
    height: 12px;
    border-bottom: 1px solid #f5f5f5;
    background-color: #fff;
    top: -12px;
    left: 14px;
    position: absolute;
    z-index: 0;
}
.school-page-introduction-facility-title{
    font-size: 16px;
    color: #000;
    font-weight: bold;
    letter-spacing: 0.06em;
    position: absolute;
    top: -12px;
    left: 20px;
    z-index: 1;
}
.school-page-introduction-facility{
    width: calc(100% / 4);
    font-size: 14px;
    color: #888;
    letter-spacing: 0.06em;
    display: inline-block;
    margin-top: 20px;
}
/*.school-page-introduction-facility:nth-child(4n + 2),
.school-page-introduction-facility:nth-child(4n + 3){
    text-align: center;
}
.school-page-introduction-facility:nth-child(4n){
    text-align: right;
}*/
.school-page-introduction-facility.have{
    color: #f3cd05;
    font-weight: bold;
}
.school-page-introduction-right-box{
    width: calc(100% - 600px);
    display: inline-block;
    vertical-align: top;
    box-sizing: border-box;
    padding-right: 35px;
    font-size: 14px;
    line-height: 2;
    letter-spacing: 0.06em;
    color: #555;
}
.school-page-introduction-text{
    font-size: 14px;
    line-height: 2;
    letter-spacing: 0.06em;
    color: #555;
    display: block;
}

.school-page-features-box{
    margin-top: 30px;
}
.school-page-features-left-box{
    width: 900px;
    max-width: 100%;
    border-radius: 5px;
    display: inline-block;
    vertical-align: top;
    overflow: hidden;
}
.school-page-features-title-box{
    width: 100%;
    display: block;
}
.school-page-features-title{
    width: calc(100% / 7 );
    display: inline-block;
    vertical-align: middle;
    line-height: 60px;
    text-align: center;
    font-size: 16px;
    color: #555;
    letter-spacing: 0.06em;
    cursor: pointer;
    background-color: #eee;
    transition: all .3s linear;
}
.school-page-features-title:last-child{
    border-top-right-radius: 10px;
}
.school-page-features-title.active{
    background-color: #fff;
    border-top-right-radius: 10px;
    border-top-left-radius: 10px;
    pointer-events: none;
}
.school-page-features-all-box{
    position: relative;
    display: block;
    overflow-x: auto;
    height: 860px;
    max-height: 860px;
    background-color: #fff;
}
.school-page-calculation-box{
    width: calc(100% - 940px);
    margin-left: 40px;
    display: inline-block;
    vertical-align: top;
    border-radius: 5px;
    overflow: hidden;
}
.school-page-calculation-title{
    font-size: 20px;
    letter-spacing: 0.06em;
    font-weight: bold;
    color: #555;
    background-color: #f3cd05;
    line-height: 60px;
    text-align: center;
}
.school-page-calculation-all-box{
    overflow-x: auto;
    max-height: 860px;
    height: 860px;
}
.school-page-calculation-right-box{
    background-color: #fff;
    box-sizing: border-box;
    padding-bottom: 20px;
}
.school-page-calculation-registered{
    font-size: 16px;
    color: #555;
    letter-spacing: 0.06em;
    box-sizing: border-box;
    padding: 11px 25px;
    background-color: #fff;
}
.school-page-calculation-registered span{
    width: calc(100% - 51px);
    color: #888;
    font-family: "roboto";
    font-weight: 500;
    display: inline-block;
    vertical-align: middle;
    text-align: right;
}
.school-page-calculation-registered span>sup{
    vertical-align: super;
    transform: scale(0.7);
    display: inline-block;
}
.school-page-calculation-name{
    font-size: 18px;
    letter-spacing: 0.06em;
    font-weight: bold;
    color: #fff;
    background-color: #202a2f;
    line-height: 40px;
    text-align: center;
}
.school-page-calculation{
    line-height: 40px;
    font-size: 14px;
    color: #555;
    letter-spacing: 0.06em;
    box-sizing: border-box;
    padding: 0 25px;
    background-color: #fff;
    position: relative;
    border-bottom: 1px solid #eee;
    transition: all .3s linear;
}
.school-page-calculation:nth-child(2):after{
    content: '';
    width: 0px;
    height: 0px;
    margin: 0 auto;
    border-right: 5px solid transparent;
    border-top: 5px solid #555;
    border-left: 5px solid transparent;
    display: block;
    position: absolute;
    bottom: calc(50% - 3px);
    right: 25px;
    box-sizing: border-box;
}

.school-page-calculation span{
    display: inline-block;
    vertical-align: middle;
}
.school-page-list-many-box {
    width: calc(100% - 79px);
    text-align: right;
    display: inline-block;
    font-size: 0;
    line-height: initial;
    vertical-align: middle;
    box-sizing: border-box;
}
.school-page-list-bth {
    display: inline-block;
    vertical-align: top;
    border: 1px solid #ddd;
    font-size: 16px;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    color: #202a2f;
    box-sizing: border-box;
    background-color: #fff;
    cursor: pointer;
}
.school-page-list-many-box input {
    display: inline-block;
    vertical-align: top;
    font-size: 14px;
    border: 1px solid #ddd;
    width: calc(100% - 100px);
    height: 30px;
    box-sizing: border-box;
    color: #000;
    text-align: center;
    border-right: 0;
    border-left: 0;
}

.school-page-calculation-price-box{
    box-sizing: border-box;
    padding: 10px 25px;
    background-color: #fff;
    border-bottom: 1px solid #eee;
}
.school-page-calculation-price{
    font-size: 16px;
    letter-spacing: 0.06em;
    color: #888;
    display: inline-block;
    vertical-align: middle;
    width: calc(100% - 80px);
    padding-right: 10px;
    box-sizing: border-box;
}
.school-page-calculation-price span{
    font-family: "roboto";
    font-weight: 500;
}
.school-page-calculation-price span>sup{
    transform: scale(0.7);
    display: inline-block;
    vertical-align: top;
}
.school-page-calculation-price-plus{
    font-size: 14px;
    letter-spacing: 0.06em;
    color: #555;
    display: inline-block;
    vertical-align: middle;
    width: 80px;
    line-height: 30px;
    text-align: center;
    border: 1px solid #d1d1d1;
    border-radius: 5px;
    box-sizing: border-box;
    background-color: #eee;
    cursor: pointer;
    transition: all .3s linear;
}
.school-page-calculation-list-box{
    display: none;
    background-color: #fff;
}
.school-page-calculation-list{
    font-size: 12px;
    color: #555;
    letter-spacing: 0.06em;
    box-sizing: border-box;
    padding: 0 40px;
    line-height: 40px;
    border-bottom: 1px solid #eee;
}
.school-page-calculation-summary-box{
    box-sizing: border-box;
    padding: 20px 20px;
    background-color: #fff;
    border-bottom: 1px solid #eee;
}
.school-page-calculation-summary-all-box{
    box-sizing: border-box;
    padding: 5px 5px;
    background-color: #f5f5f5;
}
.school-page-calculation-summary-left{
    display: inline-block;
    vertical-align: middle;
    width: calc(100% - 40px);
}
.school-page-calculation-summary-select span{
    font-size: 14px;
    color: #555;
    letter-spacing: 0.06em;
    display: inline-block;
    vertical-align: middle;
}
.school-page-calculation-summary-select span:nth-child(1){
    margin-right: 25px;
}
.school-page-calculation-summary-price{
    font-size: 14px;
    color: #555;
    letter-spacing: 0.06em;
    display: block;
    margin-top: 5px;
}
.school-page-calculation-summary-price span{
    font-family: "roboto";
    font-weight: 500;
}
.school-page-calculation-summary-price span>sup{
    transform: scale(0.7);
    display: inline-block;
    vertical-align: top;
}
.school-page-calculation-summary-right{
    display: inline-block;
    vertical-align: middle;
    font-size: 12px;
    color: #888;
    letter-spacing: 0.06em;
    cursor: pointer;
    transition: all .3s linear;
}
.school-page-calculation-old_price,
.school-page-calculation-discount,
.school-page-calculation-offer{
    font-size: 14px;
    color: #555;
    letter-spacing: 0.06em;
    box-sizing: border-box;
    padding: 12px 25px;
    background-color: #fff;
    border-bottom: 1px solid #eee;
}
.school-page-calculation-old_price span,
.school-page-calculation-discount span,
.school-page-calculation-offer span{
    width: calc(100% - 30px);
    color: #888;
    font-family: "roboto";
    font-weight: 500;
    display: inline-block;
    vertical-align: middle;
    text-align: right;
}
.school-page-calculation-old_price span>sup,
.school-page-calculation-discount span>sup,
.school-page-calculation-offer span>sup{
    transform: scale(0.8);
    display: inline-block;
    vertical-align: top;
}
.school-page-calculation-discount span{
    width: calc(100% - 60px);
}
.school-page-calculation-offer span{
    width: calc(100% - 45px);
}

.school-page-calculation-price_us{
    width: 100%;
    max-width: 100%;
    display: block;
    font-size: 12px;
    color: #d3221b;
    letter-spacing: 0.03em;
    box-sizing: border-box;
    padding: 0 10px;
    padding-top: 10px;
    text-align: center;
}
.school-page-calculation-more{
    font-size: 14px;
    color: #555;
    letter-spacing: 0.06em;
    width: 120px;
    display: block;
    margin: 0 auto;
    margin-top: 18px;
    line-height: 30px;
    background-color: #f3cd05;
    text-align: center;
    border-radius: 5px;
    transition: all .3s linear;
}
#CourseList2 .school-page-calculation-summary-right,
#AccommodationList2 .school-page-calculation-summary-right{
    display: none;
}
#CourseList2 .school-page-calculation-summary-left,
#AccommodationList2 .school-page-calculation-summary-left{
    width: 100%;
}
#CourseList2 .school-page-calculation-summary-select,
#AccommodationList2 .school-page-calculation-summary-select{
    display: inline-block;
    vertical-align: middle;
    margin-right: 10px;
    width: calc(100% - 120px);
}
#CourseList2 .school-page-calculation-summary-price,
#AccommodationList2 .school-page-calculation-summary-price{
    display: inline-block;
    vertical-align: middle;
    width: 110px;
    margin-top: 0;
    text-align: right;
}
#CourseList2 .school-page-calculation-summary-select span,
#AccommodationList2 .school-page-calculation-summary-select span{
    display: block;
}
#CourseList2 .school-page-calculation-summary-select span:nth-child(1),
#AccommodationList2 .school-page-calculation-summary-select span:nth-child(1){
    margin-right: 0;
}



.school-page-device-box{
    width: 100%;
    border-radius: 5px;
    background-color: #fff;
    overflow: hidden;
    margin-top: 40px;
}
.school-page-device-title{
    font-size: 20px;
    font-weight: bold;
    color: #555;
    letter-spacing: 0.06em;
    background-color: #f3cd05;
    box-sizing: border-box;
    padding-left: 50px;
    line-height: 60px;
}
.school-page-device-title i{
    margin-right: 10px;
}
.school-page-device-all-box{
    width: 100%;
    display: block;
    box-sizing: border-box;
    padding: 50px;
}
.school-page-device{
    width: 280px;
    height: 225px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 26px;
    border-radius: 5px;
    overflow: hidden;
    cursor: pointer;
}
.school-page-device-img{
    width: 100%;
    height: 200px;
    overflow: hidden;
    display: block;
}
.school-page-device-img span{
    width: 100%;
    height: 100%;
    display: block;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    transition: all .3s linear;
}
.school-page-device>span{
    font-size: 20px;
    line-height: 20px;
    display: block;
    margin-top: 5px;
    text-align: center;
}

.school-page-device-all-box .slick-prev{
    width: 10px;
    height: 18px;
    left: 20px;
    z-index: 1;
}
.school-page-device-all-box .slick-prev:before{
    content: '';
    width: 0;
    height: 0;
    border-top: 9px solid transparent;
    border-right: 10px solid #f3cd05;
    border-bottom: 9px solid transparent;
    display: block;
    opacity: 1;
}
.school-page-device-all-box .slick-next{
    width: 10px;
    height: 18px;
    right: 20px;
    z-index: 1;
}
.school-page-device-all-box .slick-next:before{
    content: '';
    width: 0;
    height: 0;
    border-top: 9px solid transparent;
    border-left: 10px solid #f3cd05;
    border-bottom: 9px solid transparent;
    display: block;
    opacity: 1;
}
.school-page-device-all-box .slick-prev.slick-disabled:before, 
.school-page-device-all-box .slick-next.slick-disabled:before{
    opacity: 0;
}

.fancybox-school-page-box{
    width: 1200px;
    max-width: 100%;
    display: block;
    margin: 0 auto;
    position: relative;
    z-index: 999;
    box-sizing: border-box;
    padding: 30px;
}
.fancybox-table-mid a{
    margin-bottom: 20px;
}
.fancybox-school-page-img{
    height: 80vh;
}
.fancybox-school-page-img-list{
    height: calc(100% - 41px)
}
.fancybox-school-page-img>span{
    font-size: 20px;
    line-height: 20px;
    display: block;
    margin-top: 5px;
    text-align: center;
    color: #fff;
    letter-spacing: 0.06em;
    line-height: 36px;
}
.fancybox-school-arrow{
    z-index: 999;
    width: initial;
    height: inherit;
    line-height: 36px;
    font-size: 36px;
    top: -46px;
    background-color: transparent;
    color: #fff;
}
.fancybox-school-page-img-box .slick-prev{
    width: inherit;
    height: inherit;
    left: -60px;
    z-index: 1;
}
.fancybox-school-page-img-box .slick-prev:before{
    content: '';
    width: 0;
    height: 0;
    border-top: 14px solid transparent;
    border-right: 16px solid #fff;
    border-bottom: 14px solid transparent;
    display: block;
    opacity: 1;
}
.fancybox-school-page-img-box .slick-next{
    width: inherit;
    height: inherit;
    right: -60px;
    z-index: 1;
}
.fancybox-school-page-img-box .slick-next:before{
    content: '';
    width: 0;
    height: 0;
    border-top: 14px solid transparent;
    border-left: 16px solid #fff;
    border-bottom: 14px solid transparent;
    display: block;
    opacity: 1;
}


.school-page-other-box{
    width: 100%;
    margin-top: 50px;
}
.school-page-other-title{
    font-size: 20px;
    font-weight: bold;
    letter-spacing: 0.06em;
    color: #41688d;
}
.school-page-device-title i{
    margin-right: 10px;
}
.school-page-other-all-box{
    margin-top: 40px;
}
.school-page-other{
    width: 300px;
    display: inline-block;
    vertical-align: top;
    background-color: #fff;
    border-radius: 30px;
    margin-right: 33px;
    overflow: hidden;
    position: relative;
    box-shadow: 0 0 5px rgba(0,0,0,0.0);
    transition: all .3s linear;
}
.school-page-other .index-school-info-img-box{
    border-radius: 0;
    height: 200px;
}
.school-page-other .index-school-info-text-box{
    margin-top: 5px;
    padding: 0 15px;
    padding-bottom: 15px;
}
.school-page-other .index-school-info-name{
    font-size: 18px;
}
.school-page-other .index-school-info-address, 
.school-page-other .index-school-info-style{
    font-size: 14px;
    line-height: 30px;
}
.school-page-other .index-school-info-price-box{
    font-size: 14px;
    line-height: 30px;
    margin-top: 10px;
}
.school-page-other .index-school-info-price-box span{
    font-size: 22px;
}
.school-page-other .index-school-info-menu-box{
    margin-top: 8px;
    min-height: 32px;
}
.school-page-other .index-school-info-menu{
    width: 70px;
    border-width: 1px;
}
.school-page-other .index-school-info-menu span{
    line-height: 30px;
    font-size: 14px;
}
.school-page-other-border{
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    border-radius: 30px;
    width: 100%;
    height: 100%;
    border: 1px solid #f3cd05;
    box-sizing: border-box;
    opacity: 0;
    pointer-events: none;
    transition: all .3s linear;
}
.school-page-other:hover{
    box-shadow: 0 0 5px rgba(0,0,0,0.7);
}
.school-page-other:hover .school-info-border,
.school-page-other:hover .index-school-info-evaluation-box{
    opacity: 1;
}
.school-page-other-all-box .slick-prev{
    width: 10px;
    height: 18px;
    left: -35px;
    z-index: 1;
}
.school-page-other-all-box .slick-prev:before{
    content: '';
    width: 0;
    height: 0;
    border-top: 9px solid transparent;
    border-right: 10px solid #f3cd05;
    border-bottom: 9px solid transparent;
    display: block;
    opacity: 1;
}
.school-page-other-all-box .slick-next{
    width: 10px;
    height: 18px;
    z-index: 1;
}
.school-page-other-all-box .slick-next:before{
    content: '';
    width: 0;
    height: 0;
    border-top: 9px solid transparent;
    border-left: 10px solid #f3cd05;
    border-bottom: 9px solid transparent;
    display: block;
    opacity: 1;
}
.school-page-contact-box{
    background-color: #fff;
    border-radius: 5px;
    overflow: hidden;
    margin-top: 40px;
}

#school-page .mCSB_scrollTools{
    background-color: #dddddd;
    opacity: 1;
    width: 10px;
}
#school-page .mCSB_scrollTools .mCSB_draggerContainer{
    box-sizing: border-box;
    padding: 5px 0;
}
#school-page  .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{
    opacity: 1;
    background-color: #eee;
    width: 6px;
    box-shadow: 0 0 3px rgba(0,0,0,0.3);
    border-radius: 0;
}








@media only screen and (max-width: 1380px){
    .school-page-all-box{
        width: 1200px;
    }
    .school-page-device{
        width: 255px;
        height: 207px;
    }
    .school-page-device-img{
        height: 182px;
    }
    .school-page-other{
        width: 275px;
    }
    .school-page-other .index-school-info-img-box{
        height: 183px;
    }
}
@media only screen and (max-width: 1280px){
    .school-page-all-box{
        width: 1100px;
    }
    .school-page-features-left-box{
        width: 700px;
    }
    .school-page-calculation-box{
        width: calc(100% - 740px);
    }
    .school-page-features-title:last-child{
        line-height: inherit;
        box-sizing: border-box;
        padding: 8px 0;
    }
    .school-page-device{
        width: 235px;
        height: 193px;
        margin-right: 20px;
    }
    .school-page-device-img{
        height: 168px;
    }
    .school-page-other{
        width: 260px;
        margin-right: 20px;
    }
    .school-page-other .index-school-info-img-box{
        height: 173px;
    }
    .fancybox-school-page-box{
        width: 900px;
    }
}
@media only screen and (max-width: 1180px){
    .school-page-all-box{
        width: 1000px;
    }
    .school-page-device{
        width: 210px;
        height: 175px;
    }
    .school-page-device-img{
        height: 150px;
    }
    .school-page-other{
        width: 235px;
    }
    .school-page-other .index-school-info-img-box{
        height: 157px;
    }
    .school-page-other .index-school-info-evaluation-text,
    .school-page-other .index-school-info-evaluation-star{
        line-height: 26px;
    }
    .school-page-features-left-box{
        width: 650px;
    }
    .school-page-calculation-box{
        width: calc(100% - 690px);
    }
}
@media only screen and (max-width: 1000px){
    .school-page-all-box{
        width: 750px;
    }
    .school-page-introduction-box{
        padding: 15px 20px;
        margin-top: 30px;
    }
    .school-page-introduction-left-box{
        width: 100%;
    }
    .school-page-introduction-img-box{
        height: 373px;
    }
    .school-page-introduction-right-box{
        width: 100%;
        padding-left: 0;
        margin-top: 20px;
    }
    .school-page-features-left-box{
        width: 100%;
    }
    .school-page-calculation-box{
        width: 100%;
        margin-left: 0;
        margin-top: 20px;
    }
    .school-page-device-all-box{
        padding: 40px;
    }
    .school-page-other{
        width: 236px;
        margin-bottom: 0;
    }
    .school-page-introduction-facility{
        width: calc(100% / 4);
        margin-right: 0;
    }
    .school-page-other-all-box .slick-next{
        right: 20px;
        top: -45px;
    }
    .school-page-other-all-box .slick-prev{
        left: 10px;
        top: -45px;
    }
    .school-page-other-title{
        text-align: center;
    }
    .school-page-contact-box{
        margin-top: 40px;
    }
    .school-page-other-all-box{
        margin-top: 20px;
    }
    .school-page-calculation-all-box {
        overflow-x: auto;
        max-height: inherit;
        height: inherit;
    }
    .school-page-features-title:last-child{
        padding: 19px 0;
    }
    .fancybox-school-page-box{
        width: 80vw;
    }
}
@media only screen and (max-width: 750px){
    .school-page-all-box{
        width: 550px;
    }
    .school-page-introduction-img-box{
        height: 268px;
    }
    .school-page-device-all-box{
        padding: 30px;
    }
    .school-page-device{
        width: 235px;
        height: 191px;
    }
    .school-page-device-img{
        height: 168px;
    }
    .school-page-device>span{
        font-size: 18px;
        line-height: 18px;
    }
    .school-page-other{
        width: 265px;
    }
    .school-page-other .index-school-info-img-box{
        height: 173px;
    }
    .school-page-device-all-box .slick-prev{
        left: 10px;
    }
    .school-page-device-all-box .slick-next{
        right: 10px;
    }
    .school-page-contact-box .contact-info-form{
        padding: 20px;
    }
    .rwd-school-page-features-title{
        width: 100%;
        height: 46px;
        border-top-right-radius: 5px;
        border-top-left-radius: 5px;
        font-size: 20px;
        font-weight: bold;
        letter-spacing: 1px;
        text-align: center;
        display: block;
        line-height: 46px;
        position: relative;
        box-sizing: border-box;
        color: #fff;
        background-color: #f3cd05;
    }
    .rwd-school-page-features-title:after {
        content: '';
        width: 0px;
        height: 0px;
        margin: 0 auto;
        border-right: 8px solid transparent;
        border-top: 10px solid #fff;
        border-left: 8px solid transparent;
        display: block;
        position: absolute;
        bottom: calc(50% - 5px);
        right: 5%;
        box-sizing: border-box;
    }
    .school-page-features-title-all-box{
        width: 100%;
        display: none;
        position: absolute;
        z-index: 1;
        border-top: 1px solid #ddd;
        box-shadow: 0 5px 5px rgba(0,0,0,0.3);
    }
    .school-page-features-title{
        font-size: 14px;
        width: 100%;
        line-height: inherit;
        padding: 5px 0;
    }
    .school-page-features-all-box{
        height: 760px;
    }
    .school-page-features-title:last-child{
        padding: 5px 0;
    }
    .fancybox-school-page-img{
        height: calc(90vh - 80px);
    }
    .fancybox-school-page-box{
        padding: 10px;
    }
    .fancybox-school-page-img-box .slick-prev{
        left: -10vw;
    }
    .fancybox-school-page-img-box .slick-next{
        right: -10vw;
    }
    .school-page-introduction-name,
    .school-page-country-box{
        width: 100%;
        display: block;text-align: left;
    }
}
@media only screen and (max-width: 550px){
    .school-page-all-box{
        width: 400px;
    }
    .school-page-introduction-name{
        font-size: 20px;
        margin-bottom: 0;
    }
    .school-page-introduction-discount{
        margin-top: 5px;
        width: 100px;
    }
    .school-page-introduction-discount p{
        font-size: 14px;
        margin-bottom: 5px;
    }
    .school-page-introduction-address, .school-page-introduction-style{
        font-size: 12px;
        line-height: 20px;
        margin-bottom: 5px;
    }
    .school-page-introduction-img-box{
        height: 189px;
    }
    .school-page-introduction-facility-box{
        margin-top: 30px;
        padding: 10px 15px;
    }
    .school-page-introduction-facility-title{
        font-size: 14px;
    }
    .school-page-introduction-facility-box:after{
        width: 70px;
    }
    .school-page-introduction-facility{
        width: calc(100% / 3);
        font-size: 12px;
        margin-top: 10px;
    }
    .school-page-introduction-text{
        font-size: 12px;
    }
    .rwd-school-page-features-title{
        font-size: 16px;
        line-height: 46px;
        height: 46px;
    }
    .school-page-features-left-box{
        margin-bottom: 50px;
    }
    .school-page-calculation-box{
        margin-top: 0;
    }
    .school-page-features-title,
    .school-page-features-title:last-child{
        font-size: 12px;
    }
    .school-page-calculation-title{
        font-size: 16px;
        line-height: 46px;
    }
    .school-page-calculation-registered{
        font-size: 14px;
        padding: 10px 15px;
    }
    .school-page-calculation{
        font-size: 12px;
        line-height: 40px;
        padding: 0 15px;
    }
    .school-page-calculation-price-box{
        padding: 10px 15px;
    }
    .school-page-calculation-price{
        font-size: 14px;
    }
    .school-page-calculation-price-plus{
        line-height: 20px;
        font-size: 12px;
    }
    .school-page-calculation-summary-box{
        padding: 15px;
    }
    .school-page-calculation-summary-select span{
        font-size: 12px;
    }
    .school-page-calculation-summary-price{
        font-size: 12px;
    }
    .school-page-calculation-old_price, 
    .school-page-calculation-discount, 
    .school-page-calculation-offer{
        font-size: 14px;
        padding: 10px 15px;
    }
    .school-page-calculation-more{
        font-size: 12px;
        margin: 10px auto;
        line-height: 26px;
        width: 100px;
    }
    .school-page-device-title{
        font-size: 16px;
        line-height: 46px;
        padding-left: 20px;
    }
    .school-page-device-all-box{
        padding: 20px;
    }
    .school-page-device-all-box .slick-prev{
        left: 5px;
    }
    .school-page-device-all-box .slick-next{
        right: 5px;
    }
    .school-page-device{
        width: 170px;
        height: 142px;
    }
    .school-page-device-img{
        height: 121px;
    }
    .school-page-device>span{
        font-size: 16px;
        line-height: 16px;
    }
    .school-page-other-all-box .slick-next{
        right: 15px;
        top: -40px;
    }
    .school-page-other-all-box .slick-prev{
        left: 5px;
        top: -40px;
    }
    .school-page-other{
        width: 190px;
    }
    .school-page-other .index-school-info-img-box{
        height: 127px;
    }
    .school-page-other .index-school-info-evaluation-text{
        font-size: 12px;
        width: 50px;
        line-height: 22px;
        margin-right: 10px;
    } 
    .school-page-other .index-school-info-evaluation-star{
        font-size: 12px;
        line-height: 22px;
    }
    .index-school-info-evaluation-star i {
        width: 14px;
    }
    .school-page-other .index-school-info-text-box{
        padding: 0 10px;
        padding-bottom: 5px;
    }
    .school-page-other .index-school-info-name{
        font-size: 16px;
    }
    .school-page-other .index-school-info-address, 
    .school-page-other .index-school-info-style{
        font-size: 12px;
        line-height: 20px;
    }
    .school-page-other .index-school-info-price-box{
        font-size: 12px;
        line-height: 20px;
    }
    .school-page-other .index-school-info-price-box span {
        font-size: 18px;
        margin-right: 5px;
    }
    .school-page-other .index-school-info-menu-box {
        margin-top: 5px;
        min-height: 28px;
    }
    .school-page-other .index-school-info-menu {
        width: 60px;
    }
    .school-page-other .index-school-info-menu span {
        font-size: 14px;
        line-height: 20px;
    }
    .school-page-contact-box{
        margin-top: 20px;
    }
    .school-page-contact-box .index-contact-title-box{
        padding: 0 20px;
    }
    .school-page-contact-box .index-contact-title-box h2 {
        font-size: 16px;
        line-height: 46px;
    }
    .school-page-calculation-name{
        font-size: 16px;
        line-height: 30px;
    }
    .school-page-other-title{
        font-size: 16px;
    }
    .school-page-other-box{
        margin-top: 30px;
    }
    .school-page-device-box{
        margin-top: 20px;
    }
    .school-page-introduction-country{
        display: block;
        margin: 5px 0;
    }
    #school-page .school-info{
        width: 400px;
    }
    #school-page .school-info-border{
        border-radius: 10px;
    }
}
@media only screen and (max-width: 400px){
    .school-page-all-box{
        width: 300px;
    }
    .school-page-introduction-name{
        font-size: 18px;
    }
    .school-page-introduction-facility {
        width: calc(100% / 2);
    }
    .school-page-introduction-img-box{
        height: 142px;
    }
    .school-page-introduction-box{
        padding: 10px 15px;
        margin-top: 20px;
    }
    .school-page-calculation-title{
        line-height: 40px;
    }
    .school-page-device-title{
        padding-left: 10px;
        line-height: 40px;
    }
    .school-page-device{
        width: 260px;
        height: 205px;
    }
    .school-page-device-img{
        height: 186px;
    }
    .school-page-device>span{
        font-size: 14px;
        line-height: 14px;
    }
    .school-page-other-all-box{
        margin-top: 20px;
    }
    .school-page-other{
        width: 300px;
    }
    .school-page-other .index-school-info-img-box{
        height: 200px;
    }
    .school-page-other-all-box .slick-dots {
        bottom: -25px;
    }
    .school-page-other-all-box .slick-dots li,
    .school-page-other-all-box .slick-dots li button,
    .school-page-other-all-box .slick-dots li button:before{
        width: 8px;
        height: 8px;
        border-radius: 50%;
    }
    .school-page-other-all-box .slick-dots li{
        margin: 0 3px;
    }
    .school-page-other-all-box .slick-dots li button{
        padding: 0;
    }
    .school-page-other-all-box .slick-dots li button:before{
        content: '';
        background-color: #000;
    }
    .school-page-contact-box .index-contact-title-box{
        padding: 0 10px;
    }
    .school-page-contact-box .index-contact-title-box h2{
        line-height: 40px;
    }
    .school-page-contact-box .contact-info-form{
        padding: 10px;
    }
    .school-page-features-all-box{
        height: 660px;
    }
    #school-page .school-info{
        width: 300px;
    }
}

.school-page-features-title:hover{
    background-color: #fff;
    border-top-right-radius: 10px;
    border-top-left-radius: 10px;
}
.school-page-features-info-data:hover,
.school-page-features-info-data.active{
    background-color: #f3cd05;
}
.school-page-features-class:hover{
    background-color: #f3cd05;
    font-weight: bold;
}
.school-page-features-info-btn:hover{
    color: #fff;
    background-color: #41688d;
}
.school-page-features-info-share:hover .school-page-features-info-share-img-box span{
    transform: scale(1.1);
}
.school-page-features-info-share:hover .school-page-features-info-share-more{
    color: #f3cd05;
    letter-spacing: 0.1em;
}
.school-page-features-info-share:hover .school-page-features-info-share-more:after{
    background-color: #f3cd05;
}
.school-page-calculation:hover{
    background-color: #f1f1f1;
}
.school-page-calculation-list:hover{
    background-color: #efefef;
}
.school-page-calculation-price-plus:hover{
    color: #fff;
    background-color: #41688d;
}
.school-page-calculation-more:hover{
    color: #fff;
    background-color: #e2d102;
}
.school-page-device-img:hover span{
    transform: scale(1.1);
}
.school-page-calculation-summary-right:hover{
    color: #f3cd05;
}


@media only screen and (min-width: 1000px){
    .school-page-introduction-name,
    .school-page-introduction-left-box,
    .school-page-introduction-right-box,
    .school-page-features-left-box,
    .school-page-calculation-box,
    .school-page-device-box,
    .school-page-other-box{
        opacity: 0;
    }
    .school-page-introduction-name.anima,
    .school-page-features-left-box.anima{
        animation: fade 1s ease 0s 1 both;
        z-index: 9;
        position: relative;
    }
    .school-page-introduction-left-box.anima{
        animation: fadeInLeft 1s ease 0s 1 both;
    }
    .school-page-introduction-right-box.anima,
    .school-page-calculation-box.anima{
        animation: fadeInRight 1s ease 0s 1 both;
        z-index: 0;
    }
    .school-page-device-box.anima,
    .school-page-other-box.anima{
        animation: fadeInUp 1s ease 0s 1 both;
    }
}