@charset "UTF-8";

/* common */
#ion .mincho {
    font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
    color: #566166;
}

#ion .p_txt {
    font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
    font-weight: 400;
    color: #566166;
    line-height: 2;
}

#ion .red_txt {
    color: #e66a7a;
}

/* top */


/* section01 */
#ion .sec01 {
    padding: 0 3% 4%;
}

#ion .sec01 .ttl_area {
    text-align: center;
}

#ion .sec01 h3 {
    font-size: 6.7rem;
    display: inline-block;
    margin: 0 0 8%;
    border-bottom: 1px solid;
    letter-spacing: .1em;
}

#ion .sec01 figure {
    margin-bottom: 8%;
}

/* section02 */
#ion .sec02 {
    background: url("../images/menu/ion/sec2_bg.jpg") no-repeat center;
    background-size: cover;
    padding-bottom: 4%;
    position: relative;
}

#ion .sec02 .water {
    position: absolute;
    top: -6%;
    right: 4%;
    width: 13%;
    opacity: .75;
}

#ion .sec02 .ttl_area {
    margin-bottom: 6%;
}

#ion .sec02 .ttl_area .p_txt {
    font-size: 4.1rem;
}

#ion .sec02 .ttl_area h3 {
    font-size: 7rem;
    margin-bottom: 2%;
}

#ion .sec02 .ttl_area h3 .color_txt {
    color: #5f99b4;
}

#ion .sec02 .ttl_area h3 .txt_s {
    font-size: 6rem;
}

#ion .sec02 .ttl_area img {
    margin: 0 auto;
}

#ion .sec02 figure img {
    margin: 0 auto 6%;
}

#ion .sec02 .desc_area img {
    margin: 0 auto;
    padding: 2% 4%;
}


/* section03 */
#ion .sec03 .heading {
    padding: 0 0;
}

#ion .sec03 .course {
    padding: 2% 4% 4%;
}

#ion .sec03 .course .ttl_area {
    margin: 2% 0 6%;
}

#ion .sec03 .course .ttl_area img {
    margin: 0 auto 3%;
    width: 44%;
}

#ion .sec03 .course .ttl_area h4 {
    font-size: 8.4rem;
    font-feature-settings: "palt";
    letter-spacing: .07em;
    color: #40abde;
    line-height: 1.2;
    text-shadow: 4px 4px 20px #fff, -4px 4px 20px #fff, 4px -4px 20px #fff, -4px -4px 20px #fff;
}

#ion .sec03 .course03 .ttl_area h4 {
    font-size: 7.6rem;
}

#ion .sec03 .course img {
    margin: 0 auto 6%;
}

#ion .sec03 .course .txt_area .p_txt {
    text-shadow: 4px 4px 20px #fff, -4px 4px 20px #fff, 4px -4px 20px #fff, -4px -4px 20px #fff;
}

#ion .sec03 .course01 {
    background: url("../images/menu/ion/sec3_bg1.jpg") no-repeat center;
    margin-top: -5%;
    background-size: cover;
}

#ion .sec03 .course02 {
    background: url("../images/menu/ion/sec3_bg2.jpg") no-repeat center;
    background-size: cover;
}

#ion .sec03 .course03 {
    background: url("../images/menu/ion/sec3_bg3.jpg") no-repeat center;
    background-size: cover;
}

@media screen and (max-width: 750px) {
    #ion .sec03 .course .ttl_area h4 {
        font-size: 10.5vw;
    }

    #ion .sec03 .course03 .ttl_area h4 {
        font-size: 10vw;
    }
}


/* section04 */
#ion .sec04 {
    background: #f2f9fc;
    padding-bottom: 4%;
}

#ion .sec04 .inner {
    padding: 6% 3% 4%;
}

#ion .sec04 .heading {
    padding: 0 0;
}

#ion .sec04 .txt_area {
    padding: 2% 4% 4%;
}


/* section05 */
#ion .sec05 .heading {
    padding: 4% 3% 4%;
}

#ion .sec05 .heading h3 {
    -webkit-text-stroke-width: 0px;
    font-size: 7.3rem;
    margin-bottom: 2%;
}

#ion .sec05 .heading h3 .txt_s {
    font-size: 6.1rem;
}

#ion .sec05 .heading p {
    position: relative;
}

#ion .sec05 .txt_area {
    padding: 4% 3%;
    text-align: center;
}

#ion .sec05 .txt_area ul li {
    text-align: center;
    border: 1px solid #40abde;
    border-radius: 40px;
    margin-bottom: 4%;
}

#ion .sec05 .txt_area ul li .p_txt {
    color: #40abde;
    font-weight: 700;
    font-size: 3.4rem;
    font-feature-settings: "palt";
}

#ion .sec05 .txt_area h5 {
    font-size: 3.8rem;
    
    display: inline-block;
    color: #40abde;
    border-bottom: 1px solid;
    margin: 2% 0 4%;
}

#ion .sec05 .txt_area .sub_txt {
    line-height: 1.8;
}

#ion .sec05 .fee_area {
    padding: 4% 0;
}

#ion .sec05 .fee_area ul li {
    border: 1px solid #40abde;
    background: #e9f5fb;
    padding: 2% 6%;
    margin-bottom: 4%;
}

#ion .sec05 .fee_area ul li dl dt {
    font-size: 4rem;
    font-weight: 700;
}

#ion .sec05 .fee_area ul li dl dd {
    font-size: 6.6rem;
    color: #40abde;
    position: relative;
    font-weight: 700;
}

#ion .sec05 .fee_area ul li dl dd .txt_s {
    font-size: 4.8rem;
}

#ion .sec05 .fee_area ul li dl dd .tax {
    position: absolute;
    font-size: 1.8rem;
    top: 4%;
    right: -2%;
    font-weight: 400;
}