@charset "utf-8";

*, *::before, *::after{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
html{
    font-size: 62.5%;
    line-height: 1.5;
}
body{
    font-size: 1.6rem;
    text-align: justify;
    text-justify: inter-ideograph;
    color: #333;
    font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", "Meiryo", Verdana, Arial, Helvetica, sans-serif;
}
body.fixed > *:not(.notDisplay){
    display: none;
}
h2{
    font-size: 1.5em;
}
a{
    text-decoration: none;
    color: inherit;
}
img, iframe{
    max-width: 100%;
    height: auto;
}
li{
    list-style: none;
}
.imgArea{
    font-size: 0;
}
.wrap{
    max-width: 112rem;
    margin: auto;
}
.wrap__b{
    max-width: 121.2rem;
    margin: auto;
}
.wrap__c{
    max-width: 145rem;
    margin: auto;
}
.color--a{
    color: #39b7ac;
}
.color--b{
    color: #fcff00;
}
.bold{
    font-size: 1.5em;
    font-weight: bold;
}
.note{
    font-size: .75em;
}
p + .note{
    margin-top: 1.5rem;
}
.changeArea{
    display: none;
}
.changeArea.active{
    display: block;
}
.margin--ba{
    margin-bottom: 7.5rem;
}
.margin--bb{
    margin-bottom: 10.5rem;
}
#sp__menu{
    display: none;
}
section.section--a .wrap{
    overflow-x: hidden;
}
@media(min-width: 1920px){
    h2{
        font-size: 1.875em;
    }
}
@media(min-width: 1440px) and (max-width: 1919px){
    .wrap__c{
        max-width: 130rem;
    }
}
@media(min-width: 768px) and (max-width: 1439px){
    .wrap, .wrap__b, .wrap__c{
        max-width: inherit;
    }
    .wrap,
    .wrap__b{
        padding-right: 7%;
        padding-left: 7%;
    }
    .wrap__c{
        padding-right: 5%;
        padding-left: 5%;
    }
}
@media(max-width: 767px){
    body{
        font-size: 1.4rem;
    }
    p + .note{
        margin-top: 1rem;
    }
    br.pc{
        display: none;
    }
    .wrap,.wrap__b,.wrap__c{
        padding-right: 3%;
        padding-left: 3%;
    }
    .margin--ba{
        margin-bottom: 3rem;
    }
    .margin--bb{
        margin-bottom: 6rem;
    }
    #sp__menu{
        display: block;
        width: 3rem;
        height: 2.5rem;
        flex: 0 0 3rem;
        margin-left: 1rem;
    }
    #sp__menu > span{
        display: block;
        height: .5rem;
        background: #fff;
    }
    #sp__menu > span:nth-of-type(2){
        margin: .5rem 0;
    }
}
/* title */
.title{
    background: #39b7ac;
    color: #fff;
    font-size: 2.375em;
    text-align: center;
    padding: 2.5rem 0 2rem;
    position: relative;
    overflow: hidden;
}
.title::before {
    position: absolute;
    content: '';
    left: -10px;
    right: -10px;
    top: -5px;
    height: 5px;
    box-shadow: 0 2px 9px rgba(0,0,0,.5);
}
.title .color--b{
    font-size: 5.525rem;
    margin-right: .5em;
    letter-spacing: .5rem;
}
@media(min-width: 768px) and (max-width: 1439px){
    .title{
        font-size: 2rem;
    }
    .title .color--b{
        font-size: 3.5rem;
        letter-spacing: .3rem;
    }
}
@media(max-width: 767px){
    .title{
        font-size: 1.4rem;
    }
    .title .color--b{
        font-size: 2.5rem;
        letter-spacing: 0;
    }
    .section__system .title{
        text-align: justify;
        padding-left: 3%;
        padding-right: 3%;
    }
    .section__system .title .color--b{
        display: block;
    }
}

/* section--a */
.section--a .wrap{
    margin-top: 9rem;
    margin-bottom: 9rem;
}
@media(max-width: 767px){
    .section--a .wrap{
        margin-top: 5rem;
        margin-bottom: 5rem;
    }
}
/* logoArea__bottom */
.logoArea__bottom{
    padding: 2.5rem 0;
    background: #00aa87;
    background-image: linear-gradient(0deg, #059a8c, transparent 15%);
}
@media(max-width: 767px){
    .logoArea__bottom .wrap__c{
        display: flex;
        align-items: center;
    }
}
/* globalNav */
.globalNav{
    background: #f8f8f8;
}
.globalNav .mainNav{
    display: flex;
    position: relative;
    margin: auto;
}
.globalNav .mainNav > li{
    flex: 1;
    font-size: 2.2rem;
    text-align: center;
    position: relative;
}
.globalNav .mainNav > li > div .item{
    padding: .9rem 0 .8rem;
    transition: color .3s, background .3s;
}
.globalNav .mainNav > li:hover > div .item{
    background: #059a8c;
    color: #fff;
}
.globalNav .mainNav > li > div > a{
    display: block;
}
.globalNav .mainNav .subNav{
    position: absolute;
    top: 100%;
    left: 0;
    right: -150%;
    font-size: 1.6rem;
    text-align: left;
    visibility: hidden;
    opacity: 0;
    transition: .5s;
    z-index: 99;
    background: rgba(5,154,140,.75);
    color: #fff;
    padding: 2rem 3rem;
    display: flex;
    flex-wrap: wrap;
}
.globalNav .mainNav .subNav > li{
    flex: 0 0 65%;
    max-width: 65%;
}
.globalNav .mainNav .subNav > li:nth-of-type(odd){
    flex: 0 0 36%;
    max-width: 35%;
    margin-bottom: .5rem;
}

.globalNav .mainNav .subNav > li.adjust{
    flex: 0 0 100%;
    max-width: 100%;
}
.globalNav .mainNav > li:hover .subNav{
    visibility: visible;
    opacity: 1;
}
.sp__close{
    display: none;
    width: 3rem;
    height: 2.5rem;
    position: relative;
    margin: 2rem 3% 2rem auto;
}
.sp__close > span{
    display: block;
    height: .5rem;
    background: #fff;
    position: absolute;
    top: 50%;
    width: 100%;
    transform: translateY(-50%) rotate(45deg);
}
.sp__close > span:last-of-type{
    transform: translateY(-50%) rotate(135deg);
}
@media(min-width: 1440px){
    .globalNav .mainNav .subNav{
        right: -100%;
    }
}
@media(min-width: 768px) and (max-width: 1439px){
    .globalNav .mainNav > li{
        font-size: 1.8rem;
    }
}
@media(max-width: 767px){
    .globalNav{
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        min-height: 100vh;
        z-index: 999;
        background: #00aa87;
        transition: .3s;
        transform: translateX(-101vw);
    }
    .globalNav.active{
        transform: translateX(0);
    }
    .globalNav .mainNav{
        display: block;
    }
    .globalNav .mainNav .subNav{
        position: static;
        display: block;
        opacity: 1;
        visibility: visible;
        background: transparent;
        padding-top: 0;
    }
    .globalNav .mainNav > li{
        text-align: left;
        color: #fff;
        padding-left: 1em;
    }
    .globalNav .mainNav > li > div .item{
        font-size: 1.8rem;
    }
    .globalNav .mainNav > li:hover > div .item{
        background: transparent;
    }
    .globalNav .mainNav > li:not(:first-of-type){
        border-top: .1rem solid;
    }
    .sp__close{
        display: block;
    }
}
/* slickWrap */
.slickWrap{
    position: relative;
}
#mainSlick{
    display: none;
}
#mainSlick.slick-initialized{
    display: block;
}
.slickWrap .slide-arrow{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-size: 4rem;
    z-index: 2;
    color: #00aa87;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}
.slickWrap .slide-arrow.prev-arrow{
    left: -3.5%;
}
.slickWrap .slide-arrow.next-arrow{
    right: -3.5%;
}
.slickWrap .slick-dots{
    display: flex !important;
    justify-content: center;
    position: absolute;
    right: 0;
    left: 0;
    bottom: -2.5rem;
}
.slickWrap .slick-dots li{
    line-height: 1;
    height: auto;
    font-size: 0;
    padding: 0;
}
.slickWrap .slick-dots > li:not(:last-of-type){
    margin-right: .5rem;
}
.slickWrap .slick-dots button{
    font-size: 0;
    line-height: 1;
    padding: 0;
    height: auto;
    padding: .5rem;
    border-radius: 50%;
    background:#b3b3b3;
    border: none;
    outline: none;
    cursor: pointer;
}
.slickWrap .slick-dots .slick-active button {
    background: #00aa87;
}
.slickWrap .bottom{
    background: #ebebeb;
    padding: 2rem 0;
}
@media(max-width: 767px){
    .slickWrap .bottom{
        display: none;
    }
    .slickWrap .slick-dots{
        display: none !important;
    }
    .slickWrap .wrap__c{
        padding: 0;
    }
    .slickWrap .slide-arrow{
        display: none !important;
    }
}

/* bannerArea */
.bannerArea{
    padding: 2rem 0;
}
.bannerArea .flex{
    display: flex;
}
.bannerArea .flex > .imgArea:not(:last-of-type){
    margin-right: 3rem;
}
@media(min-width: 768px){
    .bannerArea .flex > .imgArea{
        flex: 1;
    }
}
@media(max-width: 767px){
    .bannerArea{
        padding: 1.5rem 0 0;
    }
    .bannerArea .wrap__c{
        padding: 0;
    }
    .bannerArea .flex{
        overflow-x: auto;
        padding-bottom: 1.5rem;
    }
    .bannerArea .flex .imgArea{
        flex: 0 0 45%;
    }
    .bannerArea .flex > .imgArea:not(:last-of-type){
        margin-right: 1rem;
    }
}

/* board__b */
.board__b{
    display: flex;
    margin-top: 2rem
}
.board__b > .item{
    border: .1rem solid #39b7ac;
    flex: 1;
}
.board__b > .item:first-of-type{
    margin-right: 2rem;
}
.board__b .text__center{
    text-align: center;
}
.board__b .imgArea{
    margin: 2rem 0;
    text-align: center;
}
@media(max-width: 767px){
    .board__b{
        display: block;
    }
    .board__b > .item:first-of-type{
        margin-right: 0;
        margin-bottom: 1rem;
    }
}

/* board */
.board{
    border: .1rem solid #39b7ac;
    display: flex;
}
.board .left{
    flex: 0 0 55%;
    max-width: 55%;
    border-right: 1px solid #39b7ac;
}
.board .right{
    flex: 0 0 45%;
    max-width: 45%;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 2rem 1rem;
}
.board .head,
.board__b .head{
    border-left: .2rem solid #39b7ac;
    margin: 2rem 0;
    padding-left: 3rem;
}
.board .body,
.board__b .body{
    border-top: .1rem solid #39b7ac;
    padding: 7rem 5rem;
    line-height: 1.75;
}
@media(min-width: 768px) and (max-width: 1439px){
    .board .body,
    .board__b .body{
        padding: 3rem 2rem;
    }
}
@media(min-width: 768px){
    .board .left{
        display: flex;
        flex-direction: column;
    }
    .board .left .body{
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }
}
@media(max-width: 767px){
    .board{
        display: block;
    }
    .board .body,
    .board__b .body{
        padding: 3rem 4%;
    }
    .board .head,
    .board__b .head{
        padding-left: 1rem;
        padding-right: 1rem;
    }
    .board .head .subTitle,
    .board__b .head .subTitle{
        /* font-size: 1.6rem; */
        font-size: 2rem;
    }
    .board .left,
    .board .right{
        max-width: inherit;
    }
    .board .left{
        border: none;
    }
}

/* board__bg */
.board__bgWrap{
    position: relative;
}
.board__bg{
    background: #39b7ac;
    width: 75%;
    background-image: radial-gradient(circle at 90% 30%, #21d8be, transparent 35%);
    padding: 4rem 4rem 4rem 15rem;
    color: #fff;
    margin-left: auto;
}
.board__bg.adjust{
    margin-left: 0;
    margin-right: auto;
    padding: 4rem 15rem 4rem 4rem;
}
.board__bg .imgArea{
    position: absolute;
    width: 86vw;
}
.board__bg .imgArea img{
    width: calc(25% + 12rem);
    max-width: 40rem;
    box-shadow: 0.2rem 0.2rem 0.3rem rgba(0,0,0,.3);
}
.board__bg:not(.adjust) .imgArea{
    top: -3rem;
    left: 0
}
.board__bg.adjust .imgArea{
    bottom: -3rem;
    right: 0;
}
.board__bg.adjust .imgArea img{
    margin-left: auto;
    display: block;
}
.board__bg .titleArea{
    border-left: .3rem solid;
    padding-left: 3rem;
}
.board__bg .body{
    line-height: 1.75;
    margin-top: 2rem;
}
@media(max-width: 767px){
    .board__bg.adjust .imgArea img{
        margin-left: 0;
        display: inline;
    }
    .board__bg .imgArea,
    .board__bg .imgArea img{
        width: 100%;
    }
    .board__bg,
    .board__bg.adjust{
        width: 100%;
        padding: 4rem 4%;
    }
}
@media(min-width: 426px) and (max-width: 767px){
    .board__bg .imgArea{
        position: static;
        text-align: center;
        margin-bottom: 2rem;
    }
}
@media(max-width: 425px){
    .board__bg .titleArea{
        width: 40%;
        margin-left: auto;
        padding-left: 1rem;
        border-left: .2rem solid;
    }
    .board__bg .titleArea p{
        font-size: 1rem;
    }
    .board__bg .titleArea h2{
        font-size: 2rem;
    }
    .board__bg .imgArea{
        width: 50vw;
    }
    .board__bg.adjust .imgArea{
        bottom: auto;
        right: auto;
        top: -3rem;
    }
    .board__bg.adjust .imgArea,
    .board__bg .imgArea{
        left: 2% !important;
    }
}
/* flex2__a */
.flex2__a{
    display: flex;
}
.flex2__a > .item{
    flex: 1;
    background: #fafafa;
    padding: 3rem 5rem 5rem;
}
.flex2__a > .item:first-of-type{
    margin-right: 5rem;
}
.flex2__a > .item .head{
    border-left: .3rem solid #39b7ac;
    padding-left: 3rem;
}
.flex2__a > .item .body{
    margin-top: 2rem;
    line-height: 1.75;
}
@media(min-width: 768px) and (max-width: 1439px){
    .flex2__a > .item{
        padding: 3rem 3rem 5rem;
    }
    .flex2__a > .item:first-of-type{
        margin-right: 2.5rem;
    }
}
@media(max-width: 767px){
    .flex2__a{
        display: block;
    }
    .flex2__a > .item{
        padding: 2rem 4%;
    }
    .flex2__a > .item:first-of-type{
        margin-right: 0;
    }
    .flex2__a > .item .head{
        padding-left: 1rem;
    }
    .flex2__a > .item .head .subTitle{
        /* font-size: 1.6rem; */
        font-size: 2rem;
    }
}

/* section__searchArea */
.section__searchArea{
    background: url(../img/search_bg.gif);
    background-position: center;
    background-size: cover;
    padding: 5rem 0;
}
.section__searchArea h1{
    text-align: center;
    color: #fff;
    font-size: 4rem;
}
.section__searchArea .search__board{
    background: #fff;
    border-radius: .5rem;
    max-width: 100rem;
    margin: 3rem auto 0;
    padding: 6.5rem 14rem;
}
.section__searchArea .search__board .flex{
    display: flex;
    justify-content: space-between;
}
.section__searchArea .search__board .flex > div{
    display: flex;
}
.section__searchArea .search__board .flex .left{
    align-items: center;
}
.section__searchArea .search__board .flex .iconArea{
    display: none;
}
.section__searchArea .search__board .flex .left .inner{
    margin-left: 1rem;
}
.section__searchArea .search__board .flex .left .top{
    font-size: 2.4rem;
    line-height: 1.2;
    color: #d9d9d9;
    text-align: center;
    font-family: 'Pragati Narrow', sans-serif;
}
.section__searchArea .search__board .flex .left .bottom{
    font-size: 2.5rem;
    font-weight: bold;
}
.section__searchArea .search__board .flex .right > a{
    display: flex;
    align-items: center;
    justify-content: center;
    border: .3rem solid #d9d9d9;
    width: 48rem;
    padding: 0 2rem;
    position: relative;
    cursor: pointer;
}
.section__searchArea .search__board .flex .right > a:active{
    border-color: #00aa87;
}
.section__searchArea .search__board .flex .right > a .text{
    font-weight: bold;
    margin-left: 1rem;
}
.section__searchArea .search__board .flex .right > a::after {
    content: '';
    display: block;
    position: absolute;
    top: calc(50% - .5rem);
    right: 2rem;
    width: 1.5rem;
    height: 1.5rem;
    border: .3rem solid #00aa87;
    transform: translateY(-25%) rotate(45deg);
    border-bottom-color: transparent;
    border-left-color: transparent;
}
@media(min-width: 768px) and (max-width: 1439px){
    .section__searchArea .search__board{
        max-width: 75rem;
        padding: 6.5rem 3rem;
    }
    .section__searchArea h1{
        font-size: 3rem;
    }
}

@media(max-width: 767px){
    .section__searchArea h1{
        font-size: 2.4rem;
    }
    .section__searchArea .search__board{
        background: transparent;
        padding: 0;
    }
    .section__searchArea .search__board .flex{
        display: block;
    }
    .section__searchArea .search__board .flex .left{
        justify-content: center;
        margin-bottom: 1rem;
    }
    .section__searchArea .search__board .flex .left .imgArea{
        display: none;
    }
    .section__searchArea .search__board .flex .left .iconArea{
        display: block;
        font-size: 3rem;
        transform: scaleX(-1);
        color: #fff;
    }
    .section__searchArea .search__board .flex .left .top{
        font-size: 1.2rem;
        color: #fff;
    }
    .section__searchArea .search__board .flex .left .bottom{
        font-size: 2rem;
        color: #fcff00
    }
    .section__searchArea .search__board .flex .right{
        margin-left: 3%;
        margin-right: 3%;
        justify-content: center;
    }
    .section__searchArea .search__board .flex .right > a{
        border-width: .2rem;
        background: #fff;
        padding: 1rem;
    }
    .section__searchArea .search__board .flex .right > a .imgArea img{
        height: 2.5rem;
    }
    .section__searchArea .search__board .flex .right > a::after{
        top: calc(50% - .3rem);
        width: 1.2rem;
        height: 1.2rem;
        border-width: .2rem;
    }
}

/* section__secret */
.section__secret{
    text-align: center;
    padding: 9rem 0 20rem;
    background-position: center;
    background-size: cover;
    background-image: linear-gradient(rgba(255,255,255,.75), rgba(255,255,255,.75)), url(../img/system_bg.jpg)
}
.section__secret .subTitle{
    font-size: 4rem;
    line-height: 1;
    margin: 4rem 0 3rem;
}
.section__secret .wrap__b > p:first-of-type{
    font-size: 2.2rem;
    line-height: 1;
}
.section__secret .wrap__b > .subTitle + p{
    line-height: 2;
}
.section__secret .wrap__b .imgArea{
    margin-top: 5rem;
}
@media(min-width: 768px) and (max-width: 1439px){
    .section__secret .subTitle{
        font-size: 3rem;
    }
}
@media(max-width: 767px){
    .section__secret{
        padding: 5rem 0 0;
    }
    .section__secret .wrap__b > p:first-of-type{
        font-size: 1.6rem;
    }
    .section__secret .subTitle{
        font-size: 2.4rem;
        margin: 2rem 0;
    }
    .section__secret .wrap__b > .subTitle + p{
        line-height: inherit;
        text-align: justify;
        text-justify: inter-ideograph;
        font-weight: bold;
    }
    .section__secret .wrap__b .bold{
        font-size: inherit;
    }
}

/* section__changeBtnArea */
.section__changeBtnArea{
    padding: 5rem 0;
}
.section__changeBtnArea .btnAreaWrap{
    color: #39b7ac;
    border: .2rem solid;
    display: flex;
    text-align: center;
    font-weight: bold;
}
.section__changeBtnArea .btnAreaWrap > div{
    flex: 1;
    padding: 2rem;
    position: relative;
    cursor: pointer;
}
.section__changeBtnArea .btnAreaWrap > div .iconArea{
    position: absolute;
    right: 5%;
    top: 50%;
    transform: translateY(-50%);
    font-size: 2rem;
    height: 3.5rem;
    width: 3.5rem;
    border: .2rem solid;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.section__changeBtnArea .btnAreaWrap .middle{
    background: #eefefd;
}
@media(max-width: 767px){
    .section__changeBtnArea{
        padding: 3rem 0;
    }
    .section__changeBtnArea .wrap{
        padding: 0;
    }
    .section__changeBtnArea .btnAreaWrap > div{
        padding: 1rem;
    }
    .section__changeBtnArea .btnAreaWrap > div .iconArea{
        right: 1%;
        height: 2.25rem;
        width: 2.25rem;
        font-size: 1.4rem;
    }
}

/* section__class */
.section__class .text__centerArea{
    text-align: center;
    margin-bottom: 5rem;
}
.section__class .text__centerArea h2{
    font-size: 4rem;
    margin-bottom: 1rem;
}
.section__class .text__centerArea h2 + p{
    line-height: 1.75;
}
.section__class .teacherArea{
    display: flex;
    justify-content: space-between;
}
.section__class .teacherArea .imgWrap{
    margin-right: 1rem;
}
.section__class .teacherArea .imgArea{
    border-radius: 1rem;
    overflow: hidden;
}
.section__class .teacherArea .imgWrap:last-of-type{
    margin-right: 0;
}
@media(min-width: 768px) and (max-width: 1439px){
    .section__class .text__centerArea h2{
        font-size: 3rem;
    }
}
@media(max-width: 767px){
    .section__class .text__centerArea h2{
        font-size: 2.4rem;
        margin: 1rem 0;
    }
    .section__class .text__centerArea h2 + p{
       line-height: inherit; 
    }
    .section__class .text__centerArea p:not(:first-child){
        text-align: justify;
        text-justify: inter-ideograph;
    }
    .section__class .teacherArea{
        flex-wrap: wrap;
    }
    .section__class .teacherArea > .imgWrap{
        margin: 0;
        flex: 0 0 32%;
        max-width: 32%;
    }
    .section__class .teacherArea .imgArea{
        max-width: fit-content;
        margin: auto;
    }
    .section__class .teacherArea .imgWrap:first-of-type{
        margin-bottom: 2rem;
    }
    .section__class .teacherArea .imgWrap:first-of-type > .imgArea{
        margin-left: 0;
    }
    .section__class .teacherArea .imgWrap:nth-of-type(3) > .imgArea{
        margin-right: 0;
    }
    .section__class .teacherArea > .imgWrap:nth-of-type(4){
        margin-left: 17%;
    }
    .section__class .teacherArea > .imgWrap:last-of-type{
        margin-right: 17%;
    }
}

/* section__pos */
.section__pos{
    padding: 9rem 0 5rem;
    background: linear-gradient(rgba(57,183,172,.6),rgba(57,183,172,.6)),url(../img/system_bg.jpg);
    background-position: center;
    background-size: cover;
}
.section__pos .text__centerArea{
    text-align: center;
    color: #fff;
}
.section__pos .text__centerArea h1{
    font-size: 4rem;
}
.section__pos .board__white{
    display: flex;
    background: #fff;
    padding: 5rem 7.5rem;
    margin-top: 3rem;
}
.section__pos .board__white .left{
    flex: 0 0 53%;
    margin-right: 3rem;
}
.section__pos .board__white .right{
    flex: 1;
    align-self: flex-end;
}
.section__pos .board__white .right > p:first-of-type{
    font-weight: bold;
    text-align: center;
}
.section__pos .board__white .right > h2{
    text-align: center;
    margin-bottom: 2rem;
    font-size: 3rem;
}
@media(min-width: 768px) and (max-width: 1439px){
    .section__pos .text__centerArea h1{
        font-size: 3rem;
    }
    .section__pos .board__white .left{
        flex: 0 0 50%;
    }
    .section__pos .board__white{
        padding: 5rem 3rem;
    }
}
@media(max-width: 767px){
    .section__pos{
        padding: 3rem 0 2rem;
    }
    .section__pos .text__centerArea h1{
        font-size: 3rem;
    }
    .section__pos .board__white .right > h2{
        font-size: 2.4rem;
    }
    .section__pos .board__white{
        display: block;
        padding: 3rem 4%;
    }
    .section__pos .board__white .left{
        margin-right: 0;
        margin-bottom: 2rem;
    }
    .section__pos .board__white .right > p:first-of-type{
        font-size: 1.2rem;
    }
}

/* section__ultimate */
.section__ultimate .imgArea{
    text-align: center;
}
.section__ultimate .titleWrap{
    position: relative;
}
.section__ultimate .decoration{
    position: absolute;
    top: 0;
    left: 5%;
    z-index: 2;
    transform: translateY(-40%) rotate(-8deg);
}
.section__ultimate .title{
    display: flex;
    justify-content: center;
    align-items: center;
}
.section__ultimate .title > span:last-of-type{
    text-align: justify;
}
.section__ultimate .sp{
    display: none;
}
@media(min-width: 1440px) and (max-width: 1919px){
    .section__ultimate .decoration{
        left: 10%;
    }
}
@media(min-width: 1024px) and (max-width: 1439px){
    .section__ultimate .decoration{
        left: 15%;
    }
}
@media(min-width: 1440px) and (max-width: 1599px){
    .section__ultimate .title{
        font-size: 2rem;
    }
}
@media(min-width: 768px) and (max-width: 1439px){
    .section__ultimate .title{
        font-size: 1.6rem;
    }
}
@media(max-width: 767px){
    .section__ultimate .imgArea{
        text-align: center;
    }
    .section__ultimate .title,
    .section__ultimate .title > span{
        display: block;
    }
    .section__ultimate .title{
        margin-right: 0;
        padding: 1.5rem 0;
    }
    .section__ultimate .titleWrap .title > span{
        text-align: center;
    }
    .section__ultimate .wrap{
        margin-top: 1rem;
        margin-bottom: 2rem;
    }
    .section__ultimate .wrap .imgArea{
        overflow-x: auto;
    }
    .section__ultimate .wrap .imgArea img{
        max-width: inherit;
        max-height: 30rem;
    }
    .section__ultimate .sp{
        display: block;
        text-align: center;
        margin-bottom: 1rem;
        color: #b1b1b1;
        background: #f3f3f3;
        padding: .5rem;
    }
    .section__ultimate .decoration{
        width: 12rem;
    }
}

/* section__introduction */
.section__introduction .wrap{
    padding-top: 5rem;
    padding-bottom: 5rem;
}

/* footer toContact */
.footer .toContact{
    background: #fafafa;
    padding: 7.5rem 0 5rem;
}
.footer .toContact .text__centerArea{
    text-align: center;
}
.footer .toContact .text__centerArea > p:first-of-type{
    font-weight: bold;
    font-size: 1.5em;
    line-height: 1;
}
.footer .toContact .text__centerArea .contactTitle{
    font-weight: bold;
    max-width: 89rem;
    margin: 1rem auto 3rem;
    border-bottom: .1rem solid #39b7ac;
    font-size: 1.875em;
    padding-bottom: 2rem;
    line-height: 1;
}
.footer .toContact .flex2{
    display: flex;
    max-width: 95rem;
    margin: auto;
    justify-content: space-between;
    align-items: center;
}
.footer .toContact .flex2 > div{
    flex: 1;
}
.footer .toContact .flex2 .left p{
    margin-left: 4rem;
}
.footer .toContact .flex2 > .right{
    flex: 0 0 40%;
    border-bottom: .2rem solid #d9d9d9;
    position: relative;
    padding-bottom: 1rem;
}
.footer .toContact .flex2 > .right .flex{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.footer .toContact .flex2 > .right .arrow{
    width: 5rem;
    height: 5rem;
    border-radius: 50%;
    border: .1rem solid;
    display: flex;
    justify-content: center;
    align-items: center;
}
.footer .toContact .flex2 > .right .arrow::after{
    content: "";
    width: 1.5rem;
    height: 1.5rem;
    transform: translateX(-.375rem) rotate(45deg);
    border: 0.2rem solid;
    border-bottom-color: transparent;
    border-left-color: transparent;
}

.footer .toContact .flex2 > .right::after{
    position: absolute;
    content: "";
    bottom: -.2rem;
    height: .2rem;
    left: 0;
    width: 25%;
    background: #00aa87;
    z-index: 2;
}
.footer .toContact .tel{
    font-size: 4.6rem;
    font-weight: bold;
    line-height: 1;
    display: flex;
}
.footer .toContact .tel .imgArea {
    background: #00aa87;
    border-radius: 50%;
    height: fit-content;
    width: fit-content;
    margin-right: 2rem;
}
.footer .toContact .web{
    font-size: 2rem;
    font-weight: bold;
}
@media(min-width: 768px) and (max-width: 1439px){
    .footer .toContact .tel{
        font-size: 3.6rem;
    }
    .footer .toContact .flex2 .left p{
        margin-left: 0;
    }
    .footer .toContact .web{
        font-size: 1.8rem;
    }
}
@media(max-width: 767px){
    .footer .toContact{
        padding: 2rem 0 1rem;
    }
    .footer .toContact .flex2{
        display: block;
        max-width: inherit;
    }
    .footer .toContact .wrap{
        padding-right: 0;
        padding-left: 0;
    }
    .footer .toContact .text__centerArea > p:first-of-type{
        font-size: 1.4rem;
    }
    .footer .toContact .text__centerArea .contactTitle{
        margin-bottom: 0;
        font-size: 2.4rem;
    }
    .footer .toContact .tel{
        justify-content: center;
        font-size: 3rem;
        align-items: center;
    }
    .footer .toContact .tel .imgArea{
        margin-right: 1rem;
        width: 3rem;
    }
    .footer .toContact .flex2 .left{
        padding-top: 2rem;
        padding-bottom: 1rem;
        background: #ececec;
    }
    .footer .toContact .flex2 .left p{
        margin: 0;
        text-align: center;
        font-size: 1.2rem;
    }
    .footer .toContact .flex2 > .right{
        width: 80%;
        margin: 2rem auto 0;
        max-width: 35rem;
    }
    .footer .toContact .web{
        font-size: 1.4rem;
    }
    .footer .toContact .flex2 > .right .arrow{
        width: 3rem;
        height: 3rem;
    }
    .footer .toContact .flex2 > .right .arrow::after{
        width: 1rem;
        height: 1rem;
        transform: translateX(-.25rem) rotate(45deg);
    }
}

/* footer footer__logo */
.footer .footer__logo{
    text-align: center;
    background: #00aa87;
    padding: 1rem 0;
}
@media(max-width: 767px){
    .footer .footer__logo{
        padding: 1.5rem 0;
    }
}

/* footer footer__btnArea */
.footer{
    margin-bottom: 12.3rem;
}
.footer .footer__btnArea{
    background: #fff4bf;
    padding: 2rem 0 3.5rem;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 99;
}
.footer .footer__btnArea .btnAreaWrap{
    max-width: 60rem;
    margin: auto;
    position: relative;
}
.footer .footer__btnArea .btnArea a{
    background: #ffac00;
    padding: 2rem 1rem;
    display: block;
    color: #fff;
    text-align: center;
    font-size: 1.9rem;
    position: relative;
    z-index: 2;
}
.footer .footer__btnArea .btnAreaWrap::after{
    content: "";
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    transform: translate(1rem, 1rem);
    background: repeating-linear-gradient(135deg, rgba(0,0,0,.3), rgba(0,0,0,.3) .2rem, transparent 0, transparent .4rem);
}
@media(max-width: 767px){
    .footer{
        margin-bottom: 8.8rem;
    }
    .footer .footer__btnArea{
        padding: 1.5rem 0 2.5rem;
    }
    .footer .footer__btnArea .btnArea a{
        font-size: 1.2rem;
        padding: 1.5rem .5rem;
    }
    .footer .footer__btnArea .btnAreaWrap::after{
        transform: translate(.5rem, .5rem);
    }
}


/* ==========
    school-building
========== */
body.school-building .section__guide{
    padding: 5rem 0 7.5rem;
}
body.school-building .section__guide .wrap > p:first-child{
    text-align: center;
    font-weight: bold;
    font-size: 1.5em;
    line-height: 1;
}
body.school-building .section__guide .wrap > h1{
    margin-bottom: 3rem;
    text-align: center;
    font-size: 1.875em;
}
body.school-building .section__guide .wrap .iframeArea{
    margin-bottom: 5rem;
}
body.school-building .section__guide .flex{
    display: flex;
    flex-wrap: wrap;
}
body.school-building .section__guide .flex .item{
    flex: 0 0 33.333%;
    max-width: 33.333%;
    border: .1rem solid #e1e1e1;
    padding: 0 0 3rem;
    border-top: none;
    position: relative;
}
body.school-building .section__guide .flex .item .inner{
    margin: auto;
    padding: 0 3.5rem;
    display: block;
}
body.school-building .section__guide .flex .item .top{
    font-size: 0;
    text-align: center;
    margin-bottom: 2rem;
}
body.school-building .section__guide .flex .item .name{
    display: flex;
    justify-content: center;
    align-items: center;
    color: #39b7ac;
    font-size: 2.4rem;
    margin-bottom: 2rem;
}
body.school-building .section__guide .flex .item .name > span{
    font-size: 1.8rem;
    background: #ef014c;
    color: #fff;
    padding: 0 1rem;
    margin-right: 1rem;
    /*flex: 0 0 7.4rem;*/
}
body.school-building .section__guide .flex .item .imgFlex{
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 2rem;
}
/*body.school-building .section__guide .flex .item .imgFlex > .imgArea{
    flex: 0 0 48%;
    max-width: 48%;
}
body.school-building .section__guide .flex .item .imgFlex > .imgArea:last-of-type{
    text-align: right;
}*/
body.school-building .section__guide .flex .item .tel{
    font-size: 2rem;
}
body.school-building .section__guide .flex .item .arrowIconArea{
    background: #059a8c;
    width: 3rem;
    height: 3rem;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    position: absolute;
    bottom: 0;
    right: 0;
}
body.school-building .section__guide .wrap .iframeArea iframe{
    width: 100%;
    height: 45rem;
}
@media(min-width: 768px){
    body.school-building .section__guide .flex > .item:nth-of-type(3n),
    body.school-building .section__guide .flex > .item:nth-of-type(3n + 2){
        border-left: none;
    }
    body.school-building .section__guide .flex > .item:nth-of-type(1),
    body.school-building .section__guide .flex > .item:nth-of-type(2),
    body.school-building .section__guide .flex > .item:nth-of-type(3){
        border-top: .1rem solid #e1e1e1;
    }
}
@media(max-width: 1439px){
    body.school-building .section__guide .flex .item .name{
        display: block;
    }
    body.school-building .section__guide .flex .item .name span{
        display: block;
        max-width: 10.5rem;
    }
}
@media(min-width: 768px) and (max-width: 1439px){
    body.school-building .section__guide .flex .item .inner{
        padding: 0 2rem;
    }
}
@media(max-width: 767px){
    body.school-building .section__guide .wrap > p:first-child{
        font-size: 1.4rem;
    }
    body.school-building .section__guide .wrap > h1{
        font-size: 2.4rem;
    }
    body.school-building .section__guide .wrap .iframeArea iframe{
        height: 30rem;
    }
}
@media(min-width: 568px) and (max-width: 767px){
    body.school-building .section__guide .flex .item{
        flex: 0 0 50%;
        max-width: 50%;
    }
    body.school-building .section__guide .flex > .item:nth-of-type(2n){
        border-left: none;
    }
    body.school-building .section__guide .flex > .item:nth-of-type(1),
    body.school-building .section__guide .flex > .item:nth-of-type(2){
        border-top: .1rem solid #e1e1e1;
    }
}
@media(max-width: 567px){
    body.school-building .section__guide .flex .item{
        flex: 0 0 100%;
        max-width: 100%;
    }
    body.school-building .section__guide .flex > .item:not(:first-of-type){
        border-top: none;
    }
    body.school-building .section__guide .flex .item .inner{
        padding: 0 2.5rem;
    }
}

/* ==========
    school-page
========== */
body.school-page .title{
    margin-bottom: 5rem;
    font-size: 3.5rem;
}
body.school-page .title img{
    position: relative;
    top: .3rem;
    height: 3.5rem;
    margin-right: 3rem;
}
body.school-page .wrap__b .topArea__title{
    font-size: 4rem;
    font-weight: bold;
    color: #08a697;
    padding: 3rem 0;
}
body.school-page .section__school .wrap__b > h2{
    border-left: .5rem solid #39b7ac;
    color: #39b7ac;
    padding: .5rem 2rem;
    margin-bottom: 5rem;
    background: url(../img/h2_bg.png);
}
body.school-page .section__school .wrap__b > h2 > span{
    font-size: .75em;
    margin-left: 2.5rem;
}
body.school-page .section__school .wrap__b .top_flex{
    display: flex;
    margin-bottom: 7.5rem;
}
body.school-page .section__school .wrap__b .top_flex .left{
    flex: 0 0 40%;
    margin-right: 5rem;
}
body.school-page .section__school .wrap__b .top_flex .left img{
    border: .1rem solid #ccc;
    padding: .5rem;
}
body.school-page .section__school .wrap__b .top_flex .right{
    flex: 1;
}
body.school-page .section__school .wrap__b .top_flex .right .tr{
    display: flex;
    border-top: .1rem dotted;
    padding: 1rem 0;
}
body.school-page .section__school .wrap__b .top_flex .right .th{
    flex: 0 0 10rem;
    color: #08a697;
    font-weight: bold;
}
body.school-page .section__school .wrap__b .iframeArea{
    margin-bottom: 7.5rem;
}
body.school-page .section__school .wrap__b .iframeArea iframe{
    display: block;
    width: 100%;
    height: 35rem;
}
body.school-page .section__school .wrap__b .bottom_flex{
    display: flex;
    margin-bottom: 5rem;
}
body.school-page .section__school .wrap__b .bottom_flex > div{
    flex: 1;
}
body.school-page .section__school .wrap__b .bottom_flex > div:first-of-type{
    margin-right: 6rem;
}
body.school-page .section__school .wrap__b .bottom_flex .under{
    text-align: right;
    margin-top: 1rem;
}
body.school-page .section__school .wrap__b .bottom_flex .under::before{
    content: "■";
    color: #08a697;
    margin-right: .5rem;
}
body.school-page .section__school .wrap__b .textArea__under{
    margin-bottom: 7.5rem;
}
@media(max-width: 767px){
    body.school-page .wrap__b .topArea__title{
        font-size: 2rem;
    }
    body.school-page .title{
        font-size: 1.4rem;
        margin-bottom: 3rem;
    }
    body.school-page .title img{
        height: 2rem;
        margin-right: 1.5rem;
    }
    body.school-page .section__school .wrap__b .top_flex{
        display: block;
        margin-bottom: 5rem;
    }
    body.school-page .section__school .wrap__b .iframeArea{
        margin-bottom: 5rem;
    }
    body.school-page .section__school .wrap__b .top_flex .left{
        margin-right: 0;
        margin-bottom: 3rem;
    }
    body.school-page .section__school .wrap__b .top_flex .right .tr{
        border-top: none;
        border-bottom: .1rem dotted;
    }
    body.school-page .section__school .wrap__b .bottom_flex{
        display: block;
    }
    body.school-page .section__school .wrap__b .bottom_flex > div:first-of-type{
        margin-right: 0;
        margin-bottom: 3rem;
    }
    body.school-page .section__school .wrap__b > h2 > span{
        margin-left: .5rem;
    }
    body.school-page .section__school .wrap__b > h2{
        margin-bottom: 3rem;
    }
}