@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700&display=swap");
/*base is →　! sanitize.css v5.0.0 | CC0 License | github.com/jonathantneal/sanitize.css */
html {
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

article, aside, footer, header, nav, section, figcaption, figure, main {
    display: block;
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -.25em;
}

sup {
    top: -.5em;
}

img {
    border-style: none;
    vertical-align: top;
}

table {
    border-collapse: collapse;
}

button, input, select, textarea {
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}

button, html [type="button"], [type="reset"], [type="submit"] {
    -webkit-appearance: button;
}

textarea {
    overflow: auto;
    resize: vertical;
}

[type="checkbox"], [type="radio"] {
    box-sizing: border-box;
    padding: 0;
}

a, area, button, input, label, select, summary, textarea, [tabindex] {
    -ms-touch-action: manipulation;
    touch-action: manipulation;
}

@keyframes scroll {
    0% {
        bottom: 60px;
    }

    100% {
        bottom: 70px;
    }
}

@media print, screen and (min-width: 561px) {
    * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    html {
        font-family: 'Noto Sans JP', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
        font-size: 62.5%;
        line-height: 1.6;
    }

    body {
        font-weight: 400;
        font-size: 1.4rem;
        position: relative;
        min-width: 1040px;
    }

    h1, h2, h3, h4, h5, h6 {
        line-height: 1;
    }

    p {
        line-height: 1.4;
    }

    ul li {
        list-style: none;
    }

    a {
        text-decoration: none;
        color: #000;
    }

    .premium-link {
        text-decoration: underline;
        color: #176FA8;
    }

    article > section {
        overflow: hidden;
    }

    section h2 {
        text-align: center;
        color: #176FA8;
        font-size: 4rem;
        line-height: 1.2;
        margin-bottom: 30px;
    }

        section h2 .size_l {
            font-size: 8rem;
        }

        section h2 .size_s {
            font-size: 2.6rem;
        }

    .inner {
        width: 1040px;
        margin: 0 auto;
    }

    .c_orange {
        color: #ff9900;
    }

    .forSP {
        display: none !important;
    }

    .align_c {
        text-align: center;
    }

    .align_r {
        text-align: right;
    }

    .commonBox {
        background: url(../images/bg_comment.jpg) repeat center top;
        padding: 5px;
    }

        .commonBox .box_in {
            background: #fff;
            padding: 25px;
        }

            .commonBox .box_in p {
                font-size: 1.6rem;
                line-height: 1.6;
            }

                .commonBox .box_in p strong {
                    color: #176FA8;
                    display: block;
                    font-size: 3rem;
                    margin-bottom: 5px;
                }

    .commonBt {
        color: #fff;
        background-color: #ff9900;
        border: 1px solid #ff9900;
        font-weight: bold;
        display: inline-block;
        font-size: 2.5rem;
        min-width: 500px;
        padding: 0 20px;
        height: 70px;
        line-height: 70px;
        border-radius: 40px;
        transition: all .4s;
    }

        .commonBt:hover {
            color: #f90;
            border: 1px solid #ff9900;
            background: #fff;
        }

    .fade {
        opacity: 0;
        transform: translateY(50px);
        transition: 1s;
    }

    header {
        padding: 15px 0;
        width: 100%;
        background: #fff;
        position: absolute;
        top: 0;
        left: 0;
    }

        header .inner {
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

            header .inner > p {
                display: flex;
                align-items: center;
                font-size: 1.5rem;
            }

                header .inner > p img {
                    margin-right: 12px;
                }

            header .inner > a {
                background: #f90;
                color: #fff;
                display: inline-block;
                border: 1px solid #f90;
                padding: 10px 28px;
                border-radius: 25px;
                transition: all .4s;
            }

                header .inner > a:hover {
                    background: #fff;
                    color: #f90;
                }

        header.fixed {
            position: fixed;
            z-index: 20;
            border-bottom: 2px solid #176FA8;
        }

            header.fixed p span {
                display: none;
            }

            header.fixed nav {
                display: block;
            }

    #spNavBt {
        display: none;
    }

    nav {
        display: none;
    }

        nav ul {
            letter-spacing: -0.4em;
        }

            nav ul li {
                letter-spacing: normal;
                display: inline-block;
                font-size: 1.4rem;
                margin-right: 25px;
            }

                nav ul li:last-of-type {
                    margin-right: 0;
                }

                nav ul li:hover {
                    position: relative;
                }

                    nav ul li:hover::after {
                        content: "";
                        width: 100%;
                        height: 2px;
                        background: #176FA8;
                        position: absolute;
                        bottom: -7px;
                        left: 0;
                    }

    main {
        padding-top: 88px;
    }

    footer {
        background: #e9f5fc;
    }

        footer .footer_head {
            padding: 40px 0;
        }

            footer .footer_head a {
                color: #176FA8;
            }

                footer .footer_head a:hover {
                    text-decoration: underline;
                }

            footer .footer_head p {
                color: #176FA8;
                font-weight: bold;
                border-bottom: 1px solid #176FA8;
                line-height: 1;
                font-size: 1.8rem;
                padding: 0 0 10px 12px;
                position: relative;
                margin-bottom: 10px;
            }

                footer .footer_head p::before {
                    content: "";
                    position: absolute;
                    top: 0;
                    left: 0;
                    width: 5px;
                    background: #176FA8;
                    height: 18px;
                    border-radius: 5px;
                }

            footer .footer_head ul {
                letter-spacing: -0.4em;
            }

                footer .footer_head ul li {
                    letter-spacing: normal;
                    display: inline-block;
                }

                    footer .footer_head ul li:last-of-type::after {
                        content: none;
                    }

                    footer .footer_head ul li::after {
                        color: #176FA8;
                        content: "|";
                        padding: 0 10px;
                        vertical-align: text-bottom;
                    }

        footer .footer_bottom {
            background: #176FA8;
            color: #fff;
            font-size: 1.2rem;
            padding: 10px 0;
        }

            footer .footer_bottom p {
                font-size: 1.2rem;
                letter-spacing: .1em;
            }

                footer .footer_bottom p a {
                    color: #fff;
                }

    #pageTop {
        border-radius: 50%;
        background: #176FA8;
        position: fixed;
        text-indent: -9999px;
        display: block;
        opacity: 0;
        transition: all .4s;
        z-index: 20;
        width: 80px;
        height: 80px;
        right: 40px;
        cursor: pointer;
        transition: all .4s;
        border: 2px solid #176FA8;
    }

        #pageTop:hover {
            background: #fff;
        }

            #pageTop:hover::after {
                border-color: #176FA8;
                transition: all .4s;
            }

        #pageTop::after {
            content: "";
            position: absolute;
            top: 50%;
            left: 50%;
            transform: rotate(-45deg);
            width: 20px;
            height: 20px;
            border-top: 2px solid #fff;
            border-right: 2px solid #fff;
            margin: -5px 0 0 -10px;
        }

        #pageTop.show {
            opacity: 1;
        }

    .fv {
        width: 100%;
        height: 482px;
        position: relative;
        overflow: hidden;
    }

        .fv .inner {
            color: #fff;
            height: 100%;
            align-items: center;
            display: flex;
        }

            .fv .inner #sp-slider {
                display: none;
            }

            .fv .inner .sp-slider_img:nth-child(1) {
                background: url(../images/sp-main01.jpg) center top no-repeat;
                background-size: cover;
            }

            .fv .inner .sp-slider_img:nth-child(2) {
                background: url(../images/sp-main02.jpg) center top no-repeat;
                background-size: cover;
            }

            .fv .inner .sp-slider_img:nth-child(3) {
                background: url(../images/sp-main03.jpg) center top no-repeat;
                background-size: cover;
            }

            .fv .inner .sp-slider_img:nth-child(4) {
                background: url(../images/sp-main04.jpg) center top no-repeat;
                background-size: cover;
            }

            .fv .inner .sp-slider_img:nth-child(5) {
                background: url(../images/sp-main05.jpg) center top no-repeat;
                background-size: cover;
            }

            .fv .inner .sp-slider_img:nth-child(6) {
                background: url(../images/sp-main06.jpg) center top no-repeat;
                background-size: cover;
            }

        .fv h1 {
            line-height: 1.2;
            font-size: 5.6rem;
            text-align: center;
        }

            .fv h1 span {
                font-size: 3rem;
            }

        .fv .spArrow {
            display: none;
        }

        .fv #video {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: -1;
            display: flex;
            align-items: center;
            /*video{
            object-fit: cover;
            height: 100%;
            
            @if $type == pc{
                min-width: 100%;  
            }

            @if $type == sp{
                height: 100%;
            }
        }*/
        }

            .fv #video::after {
                content: "";
                width: 100%;
                height: 100%;
                background: rgba(0, 0, 0, 0.4);
                position: absolute;
                top: 0;
                left: 0;
            }

            .fv #video video {
                min-width: 100%;
                min-height: 100%;
                position: absolute;
                top: 0;
            }

    .sec1 {
        padding-top: 50px;
    }

        .sec1 h2 {
            margin: 3px 0 36px;
        }

        .sec1 .sec1_con {
            height: 322px;
            background: url(../images/sec01_img.jpg) no-repeat center bottom;
            background-size: auto 322px;
        }

            .sec1 .sec1_con.sports {
                background: url(../images/sports/sec01_img.jpg) no-repeat center bottom / auto 322px;
            }

            .sec1 .sec1_con ul {
                position: relative;
                height: 100%;
            }

                .sec1 .sec1_con ul li {
                    background: #176FA8;
                    color: #fff;
                    text-align: center;
                    position: absolute;
                    width: 250px;
                    padding: 20px 0;
                    font-size: 2rem;
                    line-height: 1.2;
                    border-radius: 45px;
                    max-height: 85px;
                }

                    .sec1 .sec1_con ul li span {
                        color: #ffff00;
                    }

                    .sec1 .sec1_con ul li:nth-child(1) {
                        top: 26px;
                        left: 112px;
                    }

                    .sec1 .sec1_con ul li:nth-child(2) {
                        top: 26px;
                        right: 110px;
                    }

                    .sec1 .sec1_con ul li:nth-child(3) {
                        top: 140px;
                        left: 53px;
                        font-size: 1.8rem;
                    }

                    .sec1 .sec1_con ul li:nth-child(4) {
                        top: 141px;
                        right: 51px;
                        font-size: 1.8rem;
                    }

                    .sec1 .sec1_con ul li:nth-child(1)::after, .sec1 .sec1_con ul li:nth-child(3)::after {
                        content: "";
                        position: absolute;
                        bottom: 0;
                        width: auto;
                        height: auto;
                        border: 16px solid transparent;
                        border-bottom-color: #176FA8;
                        right: 10px;
                    }

                    .sec1 .sec1_con ul li:nth-child(2)::after, .sec1 .sec1_con ul li:nth-child(4)::after {
                        content: "";
                        position: absolute;
                        bottom: 0;
                        left: 0;
                        width: auto;
                        height: auto;
                        border: 16px solid transparent;
                        border-bottom-color: #176FA8;
                        left: 10px;
                    }

    .sec2 {
        background: #e9f5fc;
        padding: 52px 0 70px;
    }

        .sec2 h2 {
            margin-bottom: 31px;
        }

        .sec2 ul {
            display: flex;
            justify-content: space-between;
            margin-bottom: 35px;
        }

            .sec2 ul li {
                background: #fff;
                border-radius: 5px;
                width: 255px;
                border: 2px solid #acdbf3;
                padding: 22px 22px 15px;
            }

                .sec2 ul li img {
                    display: block;
                    margin: 0 auto;
                }

                .sec2 ul li:nth-child(1) img {
                    width: 169px;
                }

                .sec2 ul li:nth-child(1) dl dt {
                    margin-bottom: 18px;
                }

                .sec2 ul li:nth-child(1) dl span {
                    margin-top: 16px;
                }

                .sec2 ul li:nth-child(2) img {
                    width: 179px;
                }

                .sec2 ul li:nth-child(2) dl dt {
                    margin-bottom: 10px;
                }

                .sec2 ul li:nth-child(2) dl span {
                    margin-top: 6px;
                }

                .sec2 ul li:nth-child(3) img {
                    width: 167px;
                }

                .sec2 ul li:nth-child(3) dl dt {
                    margin-bottom: 20px;
                }

                .sec2 ul li:nth-child(3) dl dd span {
                    margin-top: 25px;
                }

                .sec2 ul li:nth-child(4) img {
                    width: 164px;
                }

                .sec2 ul li:nth-child(4) dl dt {
                    margin-bottom: 9px;
                }

                .sec2 ul li:nth-child(4) dl dd span {
                    margin-top: 5px;
                }

                .sec2 ul li dl dt {
                    background: #176FA8;
                    text-align: center;
                    color: #fff;
                    font-weight: bold;
                    line-height: 1;
                    letter-spacing: .1em;
                    position: relative;
                    font-size: 2rem;
                    padding: 8px 0;
                    border-radius: 20px;
                }

                    .sec2 ul li dl dt::after {
                        content: "";
                        position: absolute;
                        top: 100%;
                        left: 50%;
                        width: auto;
                        height: auto;
                        border: 6px solid transparent;
                        border-top-color: #176FA8;
                        margin-left: -6px;
                    }

                .sec2 ul li dl dd {
                    text-align: center;
                    color: #176FA8;
                }

                    .sec2 ul li dl dd span {
                        font-weight: bold;
                        display: block;
                        font-size: 2.4rem;
                        line-height: 1.2;
                        display: flex;
                        align-items: center;
                        justify-content: center;
                    }

    .sec3 {
        position: relative;
        z-index: 1;
        background: url(../images/sec08_bg-pc.jpg) no-repeat center top;
        background-size: cover;
        padding: 60px 0;
    }

        .sec3 h2 {
            color: #fff;
        }

        .sec3 .sec_con {
            display: flex;
            justify-content: space-around;
            margin-bottom: 40px;
        }

            .sec3 .sec_con section {
                flex-basis: 252px;
                min-height: 305px;
                background-color: #fff;
                border-radius: 5px;
                text-align: center;
            }

                .sec3 .sec_con section h3 {
                    color: #2378B1;
                    border-radius: 5px 5px 0 0;
                    text-align: center;
                    flex-basis: 510px;
                    padding: 20px;
                    font-size: 2rem;
                }

                    .sec3 .sec_con section h3 span {
                        color: #ffff00;
                    }

            .sec3 .sec_con.fade {
                transition-delay: .2s;
            }

        .sec3 .inner .read {
            background-color: #fff;
            width: 800px;
            border-radius: 5px;
            padding: 12px 0 20px;
            text-align: center;
            margin: 0 auto 35px;
        }

            .sec3 .inner .read .txt {
                font-size: 2.4rem;
                font-weight: bold;
                color: #2378B1;
                display: inline-block;
                background: linear-gradient(transparent 60%, #ff6 60%);
            }

    .sec4 {
        background: #e9f5fc;
        padding: 49px 0 70px;
    }

        .sec4 h2 {
            margin-bottom: 24px;
        }

        .sec4 .inner > section {
            background: #fff;
            border-radius: 5px;
            border: 2px solid #acdbf3;
            padding: 60px 40px;
            margin-bottom: 20px;
        }

            .sec4 .inner > section:last-of-type {
                margin-bottom: 0;
            }

            .sec4 .inner > section h3 {
                text-align: center;
                margin-bottom: 25px;
            }

                .sec4 .inner > section h3 .point {
                    display: inline-block;
                    background: #176FA8;
                    color: #fff;
                    letter-spacing: .1em;
                    position: relative;
                    min-width: 200px;
                    padding: 8px;
                    font-size: 2rem;
                    border-radius: 20px;
                    margin-bottom: 15px;
                }

                    .sec4 .inner > section h3 .point::after {
                        content: "";
                        position: absolute;
                        top: 100%;
                        left: 50%;
                        width: auto;
                        height: auto;
                        border: 6px solid transparent;
                        border-top-color: #176FA8;
                        margin-left: -6px;
                    }

                .sec4 .inner > section h3 .txt {
                    color: #176FA8;
                    display: inline-block;
                    position: relative;
                    z-index: 1;
                    font-size: 4.5rem;
                }

                    .sec4 .inner > section h3 .txt::after {
                        content: "";
                        z-index: -1;
                        background: #ff0;
                        position: absolute;
                        bottom: -6px;
                        left: 0;
                        width: 100%;
                        height: 18px;
                        border-radius: 15px;
                    }

            .sec4 .inner > section .read {
                font-size: 1.7rem;
                text-align: center;
            }

            .sec4 .inner > section .fukidashi {
                color: #176FA8;
                position: relative;
                font-weight: bold;
                text-align: center;
                display: inline-block;
                font-size: 2.6rem;
                padding: 0 25px;
            }

                .sec4 .inner > section .fukidashi::before {
                    content: "";
                    background: #176FA8;
                    position: absolute;
                    transform: rotate(-30deg);
                    width: 2px;
                    height: 25px;
                    top: 8px;
                    left: 0;
                }

                .sec4 .inner > section .fukidashi::after {
                    content: "";
                    background: #176FA8;
                    position: absolute;
                    transform: rotate(30deg);
                    width: 2px;
                    height: 25px;
                    top: 8px;
                    right: 0;
                }

        .sec4 .sec4_point1 .read {
            margin-bottom: 35px;
        }

        .sec4 .sec4_point1 .fukidashi {
            margin-bottom: 18px;
        }

        .sec4 .sec4_point1 .genreAll {
            margin: 45px 0 40px;
        }

            .sec4 .sec4_point1 .genreAll .genre {
                padding: 25px 0;
                display: flex;
                align-items: center;
            }

                .sec4 .sec4_point1 .genreAll .genre dt {
                    font-weight: bold;
                    text-align: center;
                    width: 170px;
                    font-size: 2rem;
                }

                .sec4 .sec4_point1 .genreAll .genre dd {
                    width: calc(100% - 170px);
                }

                    .sec4 .sec4_point1 .genreAll .genre dd ul {
                        letter-spacing: -0.4em;
                    }

                        .sec4 .sec4_point1 .genreAll .genre dd ul li {
                            letter-spacing: normal;
                            display: inline-block;
                            vertical-align: top;
                        }

                            .sec4 .sec4_point1 .genreAll .genre dd ul li a:hover {
                                text-decoration: underline;
                            }

                            .sec4 .sec4_point1 .genreAll .genre dd ul li::after {
                                content: "|";
                                color: #747a7e;
                                padding: 0 8px;
                                vertical-align: text-bottom;
                            }

                            .sec4 .sec4_point1 .genreAll .genre dd ul li:last-child::after {
                                content: none;
                                padding: 0;
                            }

            .sec4 .sec4_point1 .genreAll .genre_gakusyu {
                background: #e9f5fc;
                margin-bottom: 15px;
            }

                .sec4 .sec4_point1 .genreAll .genre_gakusyu dt {
                    color: #2378B1;
                }

                .sec4 .sec4_point1 .genreAll .genre_gakusyu dd ul li a:hover {
                    color: #2378B1;
                }

            .sec4 .sec4_point1 .genreAll .genre_sports {
                background: #f8f4d9;
                margin-bottom: 15px;
            }

                .sec4 .sec4_point1 .genreAll .genre_sports dt {
                    color: #ff9900;
                }

                .sec4 .sec4_point1 .genreAll .genre_sports dd ul li a:hover {
                    color: #ff9900;
                }

            .sec4 .sec4_point1 .genreAll .genre_bunka {
                background: #fcf0f0;
            }

                .sec4 .sec4_point1 .genreAll .genre_bunka dt {
                    color: #ff6699;
                }

                .sec4 .sec4_point1 .genreAll .genre_bunka dd ul li a:hover {
                    color: #ff6699;
                }

        .sec4 .sec4_point2 .read {
            margin-bottom: 65px;
        }

        .sec4 .sec4_point2 .appealCon {
            position: relative;
        }

            .sec4 .sec4_point2 .appealCon .items {
                text-align: center;
                position: relative;
                padding-top: 35px;
                margin-bottom: 70px;
            }

                .sec4 .sec4_point2 .appealCon .items p {
                    color: #176FA8;
                    font-weight: bold;
                    position: relative;
                    font-size: 2.6rem;
                    margin-bottom: 15px;
                    line-height: 1.2;
                    display: inline-block;
                }

                    .sec4 .sec4_point2 .appealCon .items p::before {
                        position: absolute;
                        content: "";
                        background: url(../images/sec04_p2-iconl.jpg) no-repeat;
                        background-size: contain;
                        width: 39px;
                        height: 48px;
                        left: -49px;
                        top: 6px;
                    }

                    .sec4 .sec4_point2 .appealCon .items p::after {
                        position: absolute;
                        content: "";
                        background: url(../images/sec04_p2-iconr.jpg) no-repeat;
                        background-size: contain;
                        width: 39px;
                        height: 48px;
                        right: -49px;
                        top: 10px;
                    }

                    .sec4 .sec4_point2 .appealCon .items p span {
                        color: #ff9900;
                        font-size: 2.6rem;
                        margin-bottom: 15px;
                    }

                .sec4 .sec4_point2 .appealCon .items .item_img {
                    width: 390px;
                    margin: 0 auto;
                }

                    .sec4 .sec4_point2 .appealCon .items .item_img img {
                        width: 100%;
                    }

                .sec4 .sec4_point2 .appealCon .items .hide {
                    display: none;
                }

            .sec4 .sec4_point2 .appealCon ul {
                width: 100%;
                height: 100%;
                position: absolute;
                top: 0;
                left: 0;
            }

                .sec4 .sec4_point2 .appealCon ul li {
                    background: #fff;
                    border-radius: 4px;
                    border: 2px solid #b1def4;
                    width: 260px;
                    max-height: 185px;
                    padding-top: 15px;
                    position: absolute;
                    transition: all .4s;
                    cursor: default;
                }

                    .sec4 .sec4_point2 .appealCon ul li.on {
                        background: #176FA8;
                        border-color: #176FA8;
                        color: #fff;
                        transition: all .4s;
                    }

                        .sec4 .sec4_point2 .appealCon ul li.on dt {
                            color: #fff;
                        }

                        .sec4 .sec4_point2 .appealCon ul li.on::after {
                            border-color: #176FA8;
                            background: #176FA8;
                            transition: all .4s;
                        }

                    .sec4 .sec4_point2 .appealCon ul li::after {
                        content: "";
                        background: #fff;
                        border-top: 2px solid #b1def4;
                        border-right: 2px solid #b1def4;
                        position: absolute;
                        margin-left: -5px;
                        transition: all .4s;
                    }

                    .sec4 .sec4_point2 .appealCon ul li:nth-child(1)::after, .sec4 .sec4_point2 .appealCon ul li:nth-child(2)::after {
                        width: 10px;
                        height: 10px;
                        top: 50%;
                        right: -7px;
                        transform: rotate(45deg);
                    }

                    .sec4 .sec4_point2 .appealCon ul li:nth-child(3)::after, .sec4 .sec4_point2 .appealCon ul li:nth-child(4)::after {
                        width: 10px;
                        height: 10px;
                        top: 50%;
                        left: -2px;
                        transform: rotate(-135deg);
                    }

                    .sec4 .sec4_point2 .appealCon ul li:nth-child(1) {
                        top: 0;
                        left: 0;
                    }

                    .sec4 .sec4_point2 .appealCon ul li:nth-child(2) {
                        top: 205px;
                        left: 0;
                    }

                    .sec4 .sec4_point2 .appealCon ul li:nth-child(3) {
                        top: 0;
                        right: 0;
                    }

                    .sec4 .sec4_point2 .appealCon ul li:nth-child(4) {
                        top: 205px;
                        right: 0;
                    }

                    .sec4 .sec4_point2 .appealCon ul li dl dt {
                        color: #176FA8;
                        text-align: center;
                        font-weight: bold;
                        line-height: 1;
                        font-size: 2.2rem;
                        margin-bottom: 10px;
                    }

                        .sec4 .sec4_point2 .appealCon ul li dl dt span {
                            margin: 0 -5px;
                        }

                    .sec4 .sec4_point2 .appealCon ul li dl dd {
                        font-size: 1.5rem;
                        padding: 0 20px 15px;
                    }

        .sec4 .sec4_point3 .read {
            margin-bottom: 40px;
        }

        .sec4 .sec4_point3 .fukidashi {
            position: relative;
            z-index: 2;
        }

        .sec4 .sec4_point3 .price {
            position: relative;
            z-index: 1;
            margin-bottom: -22px;
        }

            .sec4 .sec4_point3 .price img {
                width: 208px;
                transform: translateY(-22px);
            }

            .sec4 .sec4_point3 .price + div {
                position: relative;
                z-index: 2;
            }

        .sec4 .sec4_point4 .read {
            margin-bottom: 25px;
        }

            .sec4 .sec4_point4 .read + div img {
                width: 485px;
            }

        .sec4 .sec4_point4 .commonBox {
            margin-bottom: 40px;
        }

    .sec5 {
        background: #FFFFCB;
        padding: 65px 0 70px;
    }

        .sec5 ul {
            display: flex;
            justify-content: space-between;
            margin-bottom: 40px;
        }

            .sec5 ul.col2 {
                justify-content: center;
                column-gap: 30px;
            }

            .sec5 ul li {
                position: relative;
                flex-basis: 335px;
                height: 350px;
            }

                .sec5 ul li .box {
                    background: #fff;
                    border: 3px solid #B2D8ED;
                    border-radius: 5px;
                    padding: 25px;
                    height: 100%;
                    display: flex;
                    flex-direction: column;
                    justify-content: space-between;
                }

                .sec5 ul li:nth-child(1).fade {
                    transition-delay: .2s;
                }

                .sec5 ul li:nth-child(2).fade {
                    transition-delay: .4s;
                }

                .sec5 ul li:nth-child(3).fade {
                    transition-delay: .6s;
                }

                .sec5 ul li p {
                    font-size: 1.6rem;
                    line-height: 1.6;
                }

                .sec5 ul li .teacher {
                    background: #E8F5FD;
                    position: relative;
                    padding: 11px 15px;
                }

                .sec5 ul li .school {
                    color: #2378B1;
                    font-size: 1.2rem;
                    font-weight: bold;
                }

                .sec5 ul li .name {
                    font-size: 1.5rem;
                }

                .sec5 ul li .teacher img {
                    position: absolute;
                    bottom: 0;
                    right: -10px;
                }

        .sec5 + .premium_link_banner {
            border-bottom: 1px solid #ECECEC;
        }

    .sec6 {
        padding: 64px 0 70px;
    }

        .sec6 ul {
            margin-bottom: 40px;
        }

            .sec6 ul li {
                border: 2px solid #acdbf3;
                margin-bottom: 20px;
                border-radius: 5px;
                padding: 40px;
            }

                .sec6 ul li:last-of-type {
                    margin-bottom: 0;
                }

                .sec6 ul li dl dt {
                    color: #176FA8;
                    position: relative;
                    font-size: 2rem;
                    padding-left: 40px;
                }

                    .sec6 ul li dl dt::before {
                        content: "Q";
                        color: #fff;
                        position: absolute;
                        background: #176FA8;
                        border-radius: 50%;
                        text-align: center;
                        top: 0;
                        left: 0;
                        font-size: 2rem;
                        width: 35px;
                        height: 35px;
                    }

                .sec6 ul li dl dd {
                    position: relative;
                    font-size: 1.6rem;
                    padding-left: 40px;
                    margin-top: 13px;
                }

                    .sec6 ul li dl dd::after {
                        content: "A";
                        color: #fff;
                        position: absolute;
                        background: #ff9900;
                        border-radius: 50%;
                        text-align: center;
                        left: 0;
                        font-size: 2rem;
                        width: 35px;
                        height: 35px;
                        top: 5px;
                    }

        .sec6 + .premium_link_banner {
            border-top: 1px solid #ECECEC;
        }
    /*add start 20220318アコーディオン*/
    .accordion {
        width: 100%;
        font-size: 2rem;
        margin-bottom: 50px;
    }

    .accordion-hidden {
        display: none;
    }

    .accordion-open {
        display: block;
        padding: 20px 80px 20px 10px;
        background: #176FA8;
        color: #fff;
        cursor: pointer;
        margin: 10px 0;
        position: relative;
    }

        .accordion-open::before,
        .accordion-open::after {
            content: '';
            width: 20px;
            height: 3px;
            background: #fff;
            position: absolute;
            top: 50%;
            right: 5%;
            transform: translateY(-50%);
        }

        .accordion-open::after {
            transform: translateY(-50%) rotate(90deg);
            transition: .5s;
        }

    .accordion-hidden:checked + .accordion-open:after {
        transform: translateY(-50%) rotate(0);
    }

    .accordion-inner {
        display: block;
        height: 0;
        overflow: hidden;
        padding: 0;
        opacity: 0;
        transition: 0.5s;
        /* 表示速度の設定 */
        cursor: pointer;
    }

    .accordion-hidden:checked + .accordion-open + .accordion-inner {
        height: auto;
        opacity: 1;
        padding: 10px;
    }

    .accordion_qa .Q,
    .accordion_qa .A {
        position: relative;
    }

        .accordion_qa .Q::before,
        .accordion_qa .A::before {
            font-size: 1.2em;
            display: block;
            position: absolute;
            top: -.3em;
            left: -1.3em;
        }

        .accordion_qa .Q::before {
            content: 'Q.';
        }

        .accordion_qa .A::before {
            content: 'A.';
        }

    .accordion_qa .accordion-open {
        padding-left: 2.5em;
    }

    .accordion_qa .accordion-hidden:checked + .accordion-open + .accordion-inner {
        height: auto;
        opacity: 1;
        padding: 10px 10px 10px 2.5em;
    }

    /*add end 20220318アコーディオン*/

    .sec7 {
        background: #e9f5fc;
        padding: 49px 0 70px;
    }

        .sec7 h2 {
            margin-bottom: 22px;
        }

        .sec7 ul {
            position: relative;
            margin-bottom: 35px;
            display: flex;
            justify-content: space-between;
        }

            .sec7 ul li {
                background: #fff;
                border: 2px solid #acdbf3;
                border-radius: 5px;
                padding-bottom: 41px;
                flex-basis: 333px;
                min-height: 265px;
                position: relative;
            }

                .sec7 ul li::after {
                    content: "";
                    position: absolute;
                    background: url(../images/dot.png) no-repeat;
                    background-size: cover;
                    width: 6px;
                    height: 14px;
                    margin-left: 9px;
                    top: 50%;
                    left: 100%;
                    transform: rotate(90deg);
                }

                .sec7 ul li:last-of-type::after {
                    content: none;
                }

                .sec7 ul li:nth-child(1) img {
                    width: auto;
                    height: 125px;
                }

                .sec7 ul li:nth-child(1).fade {
                    transition-delay: .2s;
                }

                .sec7 ul li:nth-child(2) img {
                    width: auto;
                    height: 127px;
                    margin-top: 14px;
                }

                .sec7 ul li:nth-child(2).fade {
                    transition-delay: .4s;
                }

                .sec7 ul li:nth-child(3) img {
                    width: 268px;
                    height: auto;
                }

                .sec7 ul li:nth-child(3).fade {
                    transition-delay: .6s;
                }

                .sec7 ul li dl {
                    text-align: center;
                    height: 100%;
                    display: flex;
                    flex-direction: column;
                    justify-content: space-between;
                }

                    .sec7 ul li dl dt {
                        color: #176FA8;
                        font-weight: bold;
                        position: relative;
                        line-height: 1;
                        font-size: 2.5rem;
                        padding-top: 40px;
                    }

                        .sec7 ul li dl dt span {
                            color: #fff;
                            top: 0;
                            left: 0;
                            position: absolute;
                            z-index: 1;
                            font-size: 2.5rem;
                            padding: 15px 0 0 15px;
                        }

                            .sec7 ul li dl dt span::before {
                                content: "";
                                position: absolute;
                                top: -2px;
                                left: -2px;
                                width: auto;
                                height: auto;
                                z-index: -1;
                                border: 44px solid transparent;
                                border-top-color: #176FA8;
                                border-left-color: #176FA8;
                                border-radius: 5px 0 0 0;
                            }

                    .sec7 ul li dl dd {
                        font-size: 1.6rem;
                    }

        .sec7 p {
            font-size: 1.6rem;
            margin-bottom: 40px;
        }

        .sec7 .sec7_p {
            font-size: 1.4rem;
            padding: 20px 20px 0;
            margin-bottom: -15px;
        }

    .sec8 {
        position: relative;
        z-index: 1;
        background: url(../images/sec08_bg-pc.jpg) no-repeat center top;
        background-size: cover;
        padding: 70px 0;
    }

        .sec8 .inner {
            position: relative;
            z-index: 2;
            overflow: hidden;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

            .sec8 .inner > a {
                background: #e65646;
                color: #fff;
                text-align: center;
                width: 100%;
                position: relative;
                font-weight: bold;
                display: inline-block;
                font-size: 2.5rem;
                height: 70px;
                line-height: 70px;
                border-radius: 40px;
                position: absolute;
                left: 0;
                transition: all .4s;
                width: 500px;
                top: 255px;
            }

                .sec8 .inner > a:hover {
                    background: #fff;
                    color: #e65646;
                }

                    .sec8 .inner > a:hover::after {
                        transition: all .4s;
                        border-color: #e65646;
                    }

                .sec8 .inner > a::after {
                    content: "";
                    transform: rotate(45deg);
                    position: absolute;
                    top: 50%;
                    width: 12px;
                    height: 12px;
                    border-top: 2px solid #fff;
                    border-right: 2px solid #fff;
                    right: 25px;
                    margin-top: -6px;
                }

        .sec8 h2 {
            color: #fff;
            text-align: left;
            margin-bottom: 10px;
        }

        .sec8 .inner_left {
            width: 500px;
            transform: translateY(-43px);
        }

            .sec8 .inner_left p {
                color: #fff;
                font-size: 1.8rem;
                margin-bottom: 25px;
            }

        .sec8 .inner_right {
            background: #fff;
            width: 500px;
            padding: 30px 15px 20px;
        }

            .sec8 .inner_right .box_title {
                font-weight: bold;
                text-align: center;
                font-size: 1.8rem;
                margin-bottom: 20px;
            }

            .sec8 .inner_right p {
                margin-bottom: 15px;
                font-size: 1.5rem;
            }

                .sec8 .inner_right p img {
                    width: 347px;
                    display: block;
                    margin: 0 auto;
                }

                .sec8 .inner_right p:last-of-type {
                    margin-bottom: 0;
                }

    .sec9 {
        padding: 60px 0;
    }

        .sec9 .inner > p {
            margin-bottom: 20px;
        }

        .sec9 dl {
            display: flex;
            align-items: center;
            border: 1px solid #abdbf3;
            border-bottom: none;
            background: #e9f5fc;
        }

            .sec9 dl:last-of-type {
                border-bottom: 1px solid #abdbf3;
            }

			.sec9 dl dt {
				position: relative;
				color: #176FA8;
				padding: 20px 90px 20px 30px;
				font-size: 1.8rem;
				flex-basis: 280px;
			}

                .sec9 dl dt span {
                    background: #f90;
                    color: #fff;
                    display: inline-block;
                    position: absolute;
                    top: 50%;
                    border-radius: 5px;
                    right: 30px;
                    font-size: 1.5rem;
                    padding: 3px 6px;
                    margin-top: -15px;
                }

                    .sec9 dl dt span.nini {
                        background: #176FA8;
                    }

            .sec9 dl dd {
                background: #fff;
                padding: 20px 30px;
                flex-basis: calc( 100% - 220px);
            }

    #form {
        font-size: 1.6rem;
        /*
    .custom-wpcf7c-confirmed{
        input,textarea,select{
            background: none;
            border: none;
        }
        
        input::placeholder, textarea::placeholder{
            color: #fff;
        }

        select{
            -webkit-appearance: none;
            -moz-appearance: none;
            appearance: none;
        }
        
        .confirmBtn::after{
            content: none;
        }
        
        .wpcf7c-conf{
            background: #fff;
        }
    }*/
    }

        #form form > p {
            text-align: center;
            font-size: 1.6rem;
        }

        #form input[type="text"], #form input[type="tel"], #form input[type="email"] {
            border: 1px solid #c6c6c6;
            width: 100%;
            padding: 8px;
            border-radius: 5px;
        }

        #form input:-webkit-autofill {
            -webkit-box-shadow: 0 0 0 1000px white inset;
        }

        #form select {
            border: 1px solid #c6c6c6;
            padding: 8px;
            border-radius: 5px;
        }

        #form textarea {
            border: 1px solid #c6c6c6;
            width: 100%;
            padding: 8px;
            border-radius: 5px;
        }

        #form .attention {
            font-size: 1.4rem;
            margin-top: 10px;
        }

        #form .name_box:first-of-type > span:first-of-type {
            margin-right: 48px;
        }

        #form .name_box > span:first-of-type {
            display: inline-block;
            margin-right: 16px;
        }

        #form .name_box .your-name {
            display: inline-block;
            margin: 0 0 10px;
        }

        #form .name_box .your-kana {
            display: inline-block;
            margin: 0 0 10px;
        }

        #form .name_box input {
            width: auto;
            max-width: 300px;
        }

        #form .zip_box {
            display: inline-block;
            margin-bottom: 20px;
        }

            #form .zip_box .zipcode {
                margin-left: 5px;
            }

                #form .zip_box .zipcode input {
                    width: 200px;
                }

            #form .zip_box:last-of-type {
                margin-left: 15px;
            }

        #form .online_box {
            padding: 36px 30px;
        }

        #form .menu-649 select, #form .menu-172 select, #form .menu-genre3 select, #form .menu-genre4 select {
            margin-bottom: 10px;
        }

        #form .tac {
            margin-top: 30px;
        }

            #form .tac .form_btns {
                text-align: center;
            }

                #form .tac .form_btns input {
                    border: none;
                    background: none;
                    width: 100%;
                    height: 100%;
                    cursor: pointer;
                    border-radius: 40px;
                    transition: all .4s;
                    height: 70px;
                    line-height: 70px;
                }

                    #form .tac .form_btns input[type="submit"] {
                        background: #ff9900;
                        color: #fff;
                        border: 1px solid #ff9900;
                    }

                #form .tac .form_btns > span {
                    position: relative;
                    display: inline-block;
                    font-size: 2.5rem;
                    vertical-align: top;
                }

                    #form .tac .form_btns > span:hover input {
                        background: #fff;
                        transition: all .4s;
                    }

                    #form .tac .form_btns > span:hover::after {
                        border-color: #ff9900;
                    }

            #form .tac .confirmBtn:hover input {
                color: #ff9900;
            }

            #form .tac .confirmBtn input[type="submit"] {
                width: 500px;
            }

            #form .tac .confirmBtn::after {
                content: "";
                transform: rotate(45deg);
                position: absolute;
                top: 50%;
                right: 30px;
                width: 10px;
                height: 10px;
                border-top: 2px solid #fff;
                border-right: 2px solid #fff;
                margin-top: -5px;
                transition: all .4s;
            }

            #form .tac .re_btn {
                display: inline-block;
                width: 400px;
                margin-right: 10px;
                font-size: 2.5rem;
            }

                #form .tac .re_btn:hover input {
                    background: #fff;
                    color: #999;
                }

                #form .tac .re_btn input {
                    background: #999;
                    color: #fff;
                    border: 1px solid #999;
                }

            #form .tac .send_btn {
                position: relative;
                display: inline-block;
                width: 400px;
                margin-left: 10px;
                font-size: 2.5rem;
            }

                #form .tac .send_btn:hover input {
                    background: #fff;
                    color: #ff9900;
                }

                #form .tac .send_btn::after {
                    content: "";
                    transform: rotate(45deg);
                    position: absolute;
                    top: 50%;
                    right: 30px;
                    width: 10px;
                    height: 10px;
                    border-top: 2px solid #fff;
                    border-right: 2px solid #fff;
                    margin-top: -5px;
                    transition: all .4s;
                }

                #form .tac .send_btn:hover::after {
                    border-color: #ff9900;
                }

                #form .tac .send_btn .ajax-loader {
                    display: none;
                }

            #form .tac .confirm_info_text {
                margin: 30px 0 20px;
                text-align: center;
            }

            #form .tac a {
                color: #176FA8;
                text-decoration: underline;
            }

                #form .tac a:hover {
                    text-decoration: none;
                }

        #form .confirm_info_text {
            margin-top: 10px;
        }

        #form input.wpcf7c-conf,
        #form select.wpcf7c-conf,
        #form textarea.wpcf7c-conf {
            border: 0;
            padding: 0;
            background: #fff;
        }

        #form select.wpcf7c-conf {
            -webkit-appearance: none;
            -moz-appearance: none;
            appearance: none;
        }

        #form input.wpcf7c-conf::placeholder, #form textarea::placeholder {
            color: #fff;
        }

    .premium_link_banner {
        background: url(../images/grid2.svg);
        padding: 30px 0;
        text-align: center;
    }

        .premium_link_banner a:hover {
            opacity: 0.7;
        }
}

@media screen and (max-width: 560px) {
    * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    html {
        font-family: 'Noto Sans JP', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
        font-size: 62.5%;
        line-height: 1.6;
    }

    body {
        font-weight: 400;
        font-size: 1.4rem;
        min-width: 320px;
        overflow-x: hidden;
        position: relative;
    }

    h1, h2, h3, h4, h5, h6 {
        line-height: 1;
    }

    img {
        width: auto;
        max-width: 100%;
    }

    ul li {
        list-style: none;
    }

    a {
        text-decoration: none;
        color: #000;
    }

    .premium-link {
        text-decoration: underline;
        color: #176FA8;
    }

    section h2 {
        text-align: center;
        color: #176FA8;
        font-size: 2.4rem;
        line-height: 1.2;
        margin-bottom: 18px;
    }

        section h2 .size_l {
            font-size: 4rem;
        }

        section h2 .size_s {
            font-size: 2rem;
        }

    .inner {
        padding: 0 20px;
    }

    .c_orange {
        color: #ff9900;
    }

    .forPC {
        display: none !important;
    }

    #wrapper {
        overflow-x: hidden;
    }

    .align_c {
        text-align: center;
    }

    .align_r {
        text-align: right;
    }

    .commonBox {
        background: url(../images/bg_comment.jpg) repeat center top;
        padding: 4px;
    }

        .commonBox .box_in {
            background: #fff;
            padding: 15px;
        }

            .commonBox .box_in p strong {
                color: #176FA8;
                display: block;
                font-size: 1.8rem;
                line-height: 1.4;
                margin-bottom: 5px;
                text-align: center;
            }

            .commonBox .box_in > .align_c {
                text-align: left;
            }

    .commonBt {
        color: #fff;
        background-color: #ff9900;
        border: 1px solid #ff9900;
        font-weight: bold;
        font-size: 2rem;
        display: block;
        margin: 0 20px;
        text-align: center;
        padding: 8px 10px;
        border-radius: 35px;
    }

    .fade {
        opacity: 0;
        transform: translateY(50px);
        transition: 1s;
    }

    .spFade {
        opacity: 0;
        transform: translateY(50px);
        transition: 1s;
    }

    header {
        background: #fff;
        width: 100%;
        position: absolute;
        top: 0;
        left: 0;
    }

        header .inner {
            padding: 10px 0 10px 20px;
        }

            header .inner > p {
                display: flex;
                align-items: center;
                height: 36px;
                font-size: 1.2rem;
                line-height: 1.4;
            }

                header .inner > p img {
                    width: 90px;
                    margin-right: 10px;
                }

            header .inner > a {
                background: #f90;
                color: #fff;
                display: inline-block;
                border: 1px solid #f90;
            }

        header.fixed {
            position: fixed;
            z-index: 20;
            border-bottom: 1px solid #176FA8;
        }

    #spNavBt {
        width: 60px;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
        background: #176FA8;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: all .4s;
        z-index: 10;
    }

        #spNavBt span {
            width: 25px;
            height: 2px;
            background: #fff;
            position: relative;
        }

            #spNavBt span::before {
                content: "";
                width: 25px;
                height: 2px;
                background: #fff;
                position: absolute;
                top: -10px;
                transition: all .4s;
            }

            #spNavBt span::after {
                content: "";
                width: 25px;
                height: 2px;
                background: #fff;
                position: absolute;
                bottom: -10px;
                transition: all .4s;
            }

        #spNavBt.on {
            background: #8FD0EF;
        }

            #spNavBt.on span {
                width: 25px;
                height: 2px;
                background: #8FD0EF;
                position: relative;
            }

                #spNavBt.on span::before {
                    content: "";
                    width: 25px;
                    height: 2px;
                    background: #fff;
                    position: absolute;
                    top: 0;
                    transform: rotate(-45deg);
                }

                #spNavBt.on span::after {
                    content: "";
                    width: 25px;
                    height: 2px;
                    background: #fff;
                    position: absolute;
                    top: 0;
                    transform: rotate(45deg);
                }

    #nav {
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        z-index: 9999;
        pointer-events: none;
        overflow: hidden;
        display: flex;
        justify-content: flex-end;
    }

    nav {
        width: 280px;
        transform: translateX(280px);
        transition: all .6s;
    }

        nav.active {
            transform: translateX(0);
        }

        nav ul {
            padding: 0 25px;
            pointer-events: auto;
            width: 280px;
            background: #fff;
            border: 1px solid #8FD0EF;
            border-bottom: none;
        }

            nav ul li {
                border-bottom: 1px dotted #176FA8;
                font-size: 1.5rem;
            }

                nav ul li a {
                    display: block;
                    padding: 15px 0;
                }

                nav ul li:hover {
                    position: relative;
                }

        nav .sp-navForm {
            background: #fff;
            padding: 20px 25px;
            border: 1px solid #8FD0EF;
            border-top: none;
            pointer-events: auto;
        }

            nav .sp-navForm a {
                color: #fff;
                background-color: #ff9900;
                border: 1px solid #ff9900;
                font-size: 1.5rem;
                display: block;
                text-align: center;
                padding: 12px 10px;
                border-radius: 25px;
            }

    main {
        overflow: hidden;
        padding-top: 56px;
    }

    footer {
        background: #e9f5fc;
    }

        footer .footer_head {
            padding: 20px 0;
        }

            footer .footer_head a {
                color: #000;
            }

            footer .footer_head p {
                display: none;
            }

            footer .footer_head ul {
                letter-spacing: -0.4em;
                text-align: center;
            }

                footer .footer_head ul li {
                    letter-spacing: normal;
                    display: inline-block;
                    line-height: 1.8;
                }

                    footer .footer_head ul li:last-of-type::after {
                        content: none;
                    }

                    footer .footer_head ul li::after {
                        color: #176FA8;
                        color: #000;
                        content: "|";
                        padding: 0 5px;
                        vertical-align: text-bottom;
                    }

        footer .footer_bottom {
            background: #176FA8;
            color: #fff;
        }

            footer .footer_bottom p {
                text-align: center;
                font-size: 1.1rem;
                padding: 5px;
            }
                footer .footer_bottom p a {
                    color: #fff;
                }

    #pageTop {
        border-radius: 50%;
        background: #176FA8;
        position: fixed;
        text-indent: -9999px;
        display: block;
        opacity: 0;
        transition: all .4s;
        z-index: 20;
        width: 45px;
        height: 45px;
        right: 15px;
    }

        #pageTop::after {
            content: "";
            position: absolute;
            top: 50%;
            left: 50%;
            transform: rotate(-45deg);
            width: 14px;
            height: 14px;
            border-top: 2px solid #fff;
            border-right: 2px solid #fff;
            margin: -4px 0 0 -8px;
        }

        #pageTop.show {
            opacity: 1;
        }

    .fv {
        width: 100%;
        height: 440px;
        position: relative;
        overflow: hidden;
    }

        .fv .inner {
            color: #fff;
            height: 100%;
            align-items: center;
            justify-content: center;
            display: flex;
        }

            .fv .inner #sp-slider {
                display: none;
            }

        .fv h1 {
            margin-top: 250px;
            line-height: 1.2;
            font-size: 2.4rem;
            text-align: center;
        }

            .fv h1 span {
                font-size: 1.8rem;
            }

        .fv #video {
            position: absolute;
            top: 0;
            left: 0;
            bottom: 0;
            right: 0;
            width: 100%;
            z-index: -1;
            display: flex;
            align-items: center;
            /*video{
            object-fit: cover;
            height: 100%;
            
            @if $type == pc{
                min-width: 100%;  
            }

            @if $type == sp{
                height: 100%;
            }
        }*/
        }

            .fv #video video {
                top: 0;
                object-fit: cover;
                width: 100%;
                height: 100%;
            }

            .fv #video::after {
                content: "";
                width: 100%;
                height: 100%;
                background: rgba(0, 0, 0, 0.4);
                position: absolute;
                top: 0;
                left: 0;
            }
    /* .fv {
    height: calc(100vh - 60px); }
    .fv .inner {
      color: #fff;
      height: 100%;
      padding: 0;
      position: relative;
      overflow: hidden; }
     .fv .inner #sp-slider {
        overflow-y: hidden;
        height: 100%; }
        .fv .inner #sp-slider img {
          display: inline; }
        .fv .inner #sp-slider .slick-list {
          min-height: 100%; }
          .fv .inner #sp-slider .slick-list > div {
            height: 100%; }
      .fv .inner .sp-slider_img img {
        width: 100%;
        height: 100%;
        object-fit: cover; }
      .fv .inner .sp-slider_img:nth-child(1) {
        background: url(../images/sp-main01.jpg) center top no-repeat;
        background-size: cover; }
      .fv .inner .sp-slider_img:nth-child(2) {
        background: url(../images/sp-main02.jpg) center top no-repeat;
        background-size: cover; }
      .fv .inner .sp-slider_img:nth-child(3) {
        background: url(../images/sp-main03.jpg) center top no-repeat;
        background-size: cover; }
      .fv .inner .sp-slider_img:nth-child(4) {
        background: url(../images/sp-main04.jpg) center top no-repeat;
        background-size: cover; }
      .fv .inner .sp-slider_img:nth-child(5) {
        background: url(../images/sp-main05.jpg) center top no-repeat;
        background-size: cover; }
      .fv .inner .sp-slider_img:nth-child(6) {
        background: url(../images/sp-main06.jpg) center top no-repeat;
        background-size: cover; }
    .fv h1 {
      line-height: 1.2;
      position: absolute;
      font-size: 2rem;
      width: 100%;
      height: 100%;
      text-align: center;
      z-index: 10;
      bottom: 0;
      left: 0;
      display: flex;
      flex-direction: column;
      padding: 0 0 100px;
      align-items: center;
      justify-content: flex-end; }
      .fv h1 span {
        font-size: 1.6rem; }
    .fv .spArrow {
      position: absolute;
      bottom: 60px;
      text-align: center;
      z-index: 10;
      width: 100%;
      animation: scroll 1s infinite alternate; }
      .fv .spArrow a {
        display: inline-block;
        width: 14px;
        height: 14px;
        border-right: 2px solid #fff;
        border-bottom: 2px solid #fff;
        transform: rotate(45deg); }
    .fv #video {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: -1;
      display: flex;
      display: none;
        video{
            object-fit: cover;
            height: 100%;
            
            @if $type == pc{
                min-width: 100%;  
            }

            @if $type == sp{
                height: 100%;
            }
        }*/
    .sec1 {
        padding-top: 30px;
    }

        .sec1 h2 > span:first-of-type {
            font-size: 2rem;
        }

        .sec1 .sec1_con ul {
            margin-bottom: calc(35px / 2);
        }

            .sec1 .sec1_con ul li {
                background: #176FA8;
                color: #fff;
                text-align: center;
                font-size: 1.6rem;
                position: relative;
                padding: 15px 0;
                margin-bottom: 10px;
                border-radius: 40px;
                line-height: 1.4;
            }

                .sec1 .sec1_con ul li span {
                    color: #ffff00;
                }

                .sec1 .sec1_con ul li:nth-child(1)::after, .sec1 .sec1_con ul li:nth-child(3)::after {
                    content: "";
                    position: absolute;
                    bottom: 0;
                    width: auto;
                    height: auto;
                    border: 16px solid transparent;
                    border-bottom-color: #176FA8;
                    right: 0;
                }

                .sec1 .sec1_con ul li:nth-child(2)::after, .sec1 .sec1_con ul li:nth-child(4)::after {
                    content: "";
                    position: absolute;
                    bottom: 0;
                    left: 0;
                    width: auto;
                    height: auto;
                    border: 16px solid transparent;
                    border-bottom-color: #176FA8;
                    left: 0;
                }

    .sec2 {
        background: #e9f5fc;
        padding: 35px 0 45px;
    }

        .sec2 ul {
            display: flex;
            justify-content: space-between;
            flex-wrap: wrap;
            margin-bottom: 20px;
        }

            .sec2 ul li {
                background: #fff;
                border-radius: 5px;
                flex-basis: 48%;
                padding: 15px;
                border: 1px solid #acdbf3;
            }

                .sec2 ul li:nth-child(1) {
                    margin-bottom: 10px;
                }

                    .sec2 ul li:nth-child(1) img {
                        padding: 0 7px;
                    }

                    .sec2 ul li:nth-child(1) dl dt {
                        margin-bottom: 9px;
                    }

                    .sec2 ul li:nth-child(1) dl span {
                        margin-top: 14px;
                    }

                .sec2 ul li:nth-child(2) {
                    margin-bottom: 10px;
                }

                    .sec2 ul li:nth-child(2) dl dt {
                        margin-bottom: 2px;
                    }

                    .sec2 ul li:nth-child(2) dl span {
                        margin-top: 7px;
                    }

                .sec2 ul li:nth-child(3) img {
                    padding: 0 10px;
                }

                .sec2 ul li:nth-child(3) dl dt {
                    margin-bottom: 15px;
                }

                .sec2 ul li:nth-child(3) dl dd span {
                    margin-top: 20px;
                }

                .sec2 ul li:nth-child(4) img {
                    padding: 0 12px;
                }

                .sec2 ul li:nth-child(4) dl dt {
                    margin-bottom: 10px;
                }

                .sec2 ul li:nth-child(4) dl dd span {
                    margin-top: 5px;
                }

                .sec2 ul li dl dt {
                    background: #176FA8;
                    text-align: center;
                    color: #fff;
                    font-weight: bold;
                    line-height: 1;
                    letter-spacing: .1em;
                    position: relative;
                    font-size: 1.5rem;
                    padding: 5px;
                    border-radius: 15px;
                }

                    .sec2 ul li dl dt::after {
                        content: "";
                        position: absolute;
                        top: 100%;
                        left: 50%;
                        width: auto;
                        height: auto;
                        border: 6px solid transparent;
                        border-top-color: #176FA8;
                        margin-left: -6px;
                    }

                .sec2 ul li dl dd {
                    text-align: center;
                    color: #176FA8;
                }

                    .sec2 ul li dl dd span {
                        font-weight: bold;
                        display: block;
                        line-height: 1.2;
                    }

    .sec3 {
        position: relative;
        z-index: 1;
        background: url(../images/sec08_bg-sp.jpg) no-repeat center top;
        background-size: cover;
        padding: 35px 0 40px;
    }

        .sec3 h2 {
            color: #fff;
        }

        .sec3 .sec_con {
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            margin-bottom: 20px;
        }

            .sec3 .sec_con section {
                flex-basis: 48%;
                background-color: #fff;
                border-radius: 5px;
                text-align: center;
                padding: 20px;
            }

                .sec3 .sec_con section h3 {
                    color: #2378B1;
                    text-align: center;
                    font-size: 1.5rem;
                    padding: 10px 0;
                }

                    .sec3 .sec_con section h3 span {
                        color: #ffff00;
                    }

                .sec3 .sec_con section .item {
                    border: 2px solid #b0ddf4;
                    border-top: none;
                    padding: 0 25px 10px;
                }

                    .sec3 .sec_con section .item > p {
                        color: #176FA8;
                    }

            .sec3 .sec_con .sec3_01, .sec3 .sec_con .sec3_02 {
                margin-bottom: 15px;
            }

        .sec3 .inner .read {
            background-color: #fff;
            border-radius: 5px;
            padding: 20px 0;
            text-align: center;
            margin-bottom: 20px;
        }

            .sec3 .inner .read .txt {
                font-size: 1.7rem;
                font-weight: bold;
                color: #2378B1;
                display: inline-block;
                background: linear-gradient(transparent 60%, #ff6 60%);
            }

    .sec4 {
        background: #e9f5fc;
        padding: 35px 0 40px;
    }

        .sec4 h2 {
            margin-bottom: 13px;
        }

        .sec4 .commonBt {
            margin: 20px 0 0;
        }

        .sec4 .premiumBt {
            margin: 0;
        }

        .sec4 .inner > section {
            background: #fff;
            border-radius: 4px;
            border: 2px solid #acdbf3;
            padding: 25px 20px;
            margin-bottom: 15px;
        }

            .sec4 .inner > section:last-of-type {
                margin-bottom: 0;
            }

            .sec4 .inner > section h3 {
                text-align: center;
                font-size: 1.8rem;
                margin-bottom: 15px;
            }

                .sec4 .inner > section h3 .point {
                    display: inline-block;
                    background: #176FA8;
                    color: #fff;
                    letter-spacing: .1em;
                    position: relative;
                    padding: 5px 40px;
                    font-size: 1.5rem;
                    border-radius: 15px;
                    margin-bottom: 10px;
                }

                    .sec4 .inner > section h3 .point::after {
                        content: "";
                        position: absolute;
                        top: 100%;
                        left: 50%;
                        width: auto;
                        height: auto;
                        border: 4px solid transparent;
                        border-top-color: #176FA8;
                        margin-left: -2px;
                    }

                .sec4 .inner > section h3 .txt {
                    color: #176FA8;
                    display: inline-block;
                    position: relative;
                    z-index: 1;
                    font-size: 2.7rem;
                }

                    .sec4 .inner > section h3 .txt::after {
                        content: "";
                        z-index: -1;
                        background: #ff0;
                        position: absolute;
                        bottom: -6px;
                        left: 0;
                        width: 100%;
                        height: 10px;
                        border-radius: 15px;
                    }

            .sec4 .inner > section .read {
                font-size: 1.5rem;
                margin-bottom: 15px;
                word-break: break-all;
            }

            .sec4 .inner > section .fukidashi {
                color: #176FA8;
                position: relative;
                font-weight: bold;
                text-align: center;
                display: inline-block;
                font-size: 1.8rem;
                padding: 0 17px;
            }

                .sec4 .inner > section .fukidashi::before {
                    content: "";
                    background: #176FA8;
                    position: absolute;
                    transform: rotate(-30deg);
                    width: 2px;
                    height: 15px;
                    left: 5px;
                    top: 7px;
                }

                .sec4 .inner > section .fukidashi::after {
                    content: "";
                    background: #176FA8;
                    position: absolute;
                    transform: rotate(30deg);
                    width: 2px;
                    height: 15px;
                    right: 5px;
                    top: 7px;
                }

        .sec4 .sec4_point1 .read + p img {
            padding: 0 45px 30px;
        }

        .sec4 .sec4_point1 .fukidashi {
            margin-bottom: 15px;
        }

        .sec4 .sec4_point1 .genreAll .genre {
            padding: 20px;
        }

            .sec4 .sec4_point1 .genreAll .genre dt {
                font-weight: bold;
                text-align: center;
                font-size: 1.7rem;
                margin-bottom: 10px;
            }

            .sec4 .sec4_point1 .genreAll .genre dd {
                font-size: 1.5rem;
            }

                .sec4 .sec4_point1 .genreAll .genre dd ul {
                    letter-spacing: -0.4em;
                }

                    .sec4 .sec4_point1 .genreAll .genre dd ul li {
                        letter-spacing: normal;
                        display: inline-block;
                        vertical-align: top;
                    }

                        .sec4 .sec4_point1 .genreAll .genre dd ul li::after {
                            content: "|";
                            color: #747a7e;
                            font-size: 1.3rem;
                            padding: 0 5px;
                            vertical-align: text-top;
                        }

                        .sec4 .sec4_point1 .genreAll .genre dd ul li:last-child::after {
                            content: none;
                            padding: 0;
                        }

        .sec4 .sec4_point1 .genreAll .genre_gakusyu {
            background: #e9f5fc;
            margin-bottom: 10px;
        }

            .sec4 .sec4_point1 .genreAll .genre_gakusyu dt {
                color: #2378B1;
            }

        .sec4 .sec4_point1 .genreAll .genre_sports {
            background: #f8f4d9;
            margin-bottom: 10px;
        }

            .sec4 .sec4_point1 .genreAll .genre_sports dt {
                color: #ff9900;
            }

        .sec4 .sec4_point1 .genreAll .genre_bunka {
            background: #fcf0f0;
        }

            .sec4 .sec4_point1 .genreAll .genre_bunka dt {
                color: #ff6699;
            }

        .sec4 .sec4_point2 .appealCon .items {
            text-align: center;
        }

            .sec4 .sec4_point2 .appealCon .items p {
                color: #176FA8;
                font-weight: bold;
                position: relative;
                font-size: 1.8rem;
                text-align: center;
                line-height: 1.2;
                margin-bottom: 15px;
                display: inline-block;
            }

                .sec4 .sec4_point2 .appealCon .items p::before {
                    position: absolute;
                    content: "";
                    background: url(../images/sec04_p2-iconl.jpg) no-repeat;
                    background-size: contain;
                    width: 30px;
                    height: 39px;
                    left: -35px;
                    top: 6px;
                }

                .sec4 .sec4_point2 .appealCon .items p::after {
                    position: absolute;
                    content: "";
                    background: url(../images/sec04_p2-iconr.jpg) no-repeat;
                    background-size: contain;
                    width: 30px;
                    height: 39px;
                    right: -30px;
                    top: 6px;
                }

                .sec4 .sec4_point2 .appealCon .items p span {
                    color: #ff9900;
                }

            .sec4 .sec4_point2 .appealCon .items .item_img {
                margin: 0 12px 20px;
            }

                .sec4 .sec4_point2 .appealCon .items .item_img img {
                    width: 100%;
                }

            .sec4 .sec4_point2 .appealCon .items .hide {
                display: none;
            }

        .sec4 .sec4_point2 .appealCon ul {
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
        }

            .sec4 .sec4_point2 .appealCon ul li {
                background: #fff;
                border-radius: 4px;
                border: 2px solid #b1def4;
                flex-basis: 49%;
            }

                .sec4 .sec4_point2 .appealCon ul li.on {
                    background: #176FA8;
                    border-color: #176FA8;
                    color: #fff;
                }

                    .sec4 .sec4_point2 .appealCon ul li.on dt {
                        color: #fff;
                    }

                    .sec4 .sec4_point2 .appealCon ul li.on::after {
                        border-color: #176FA8;
                        background: #176FA8;
                    }

                .sec4 .sec4_point2 .appealCon ul li::after {
                    content: "";
                    background: #fff;
                    border-top: 2px solid #b1def4;
                    border-right: 2px solid #b1def4;
                    position: absolute;
                }

                .sec4 .sec4_point2 .appealCon ul li:nth-child(1) {
                    margin-bottom: 2%;
                }

                .sec4 .sec4_point2 .appealCon ul li:nth-child(2) {
                    margin-bottom: 2%;
                }

                .sec4 .sec4_point2 .appealCon ul li dl {
                    padding: 13px;
                }

                    .sec4 .sec4_point2 .appealCon ul li dl dt {
                        color: #176FA8;
                        text-align: center;
                        font-weight: bold;
                        line-height: 1;
                        font-size: 1.7rem;
                        margin-bottom: 10px;
                    }

        .sec4 .inner > .sec4_point2 h3 .txt {
            font-size: 2.2rem;
        }

        .sec4 .sec4_point3 .fukidashi {
            line-height: 1.4;
        }

        .sec4 .sec4_point3 .price {
            position: relative;
            padding: 0 75px;
        }

            .sec4 .sec4_point3 .price + div {
                position: relative;
                z-index: 2;
                margin-top: -30px;
            }

    .sec5 {
        background: #FFFFCB;
        padding: 40px 0;
    }

        .sec5 h2 {
            font-size: 2.3rem;
        }

        .sec5 ul {
            margin-bottom: 20px;
        }

            .sec5 ul li {
                position: relative;
                margin-bottom: 20px;
            }

                .sec5 ul li:last-of-type {
                    margin-bottom: 0;
                }

                .sec5 ul li .box {
                    background: #fff;
                    border: 3px solid #B2D8ED;
                    padding: 22px;
                    border-radius: 5px;
                }

                    .sec5 ul li .box::after {
                        background: #fff;
                        position: absolute;
                    }

                .sec5 ul li p {
                    font-size: 1.5rem;
                    line-height: 1.6;
                    margin-bottom: 15px;
                }

                .sec5 ul li .teacher {
                    background: #E8F5FD;
                    position: relative;
                    padding: 12px 15px 8px;
                }

                .sec5 ul li .school {
                    color: #2378B1;
                    font-size: 1.2rem;
                    font-weight: bold;
                    margin-bottom: 3px;
                }

                .sec5 ul li .name {
                    font-size: 1.5rem;
                }

                .sec5 ul li .teacher img {
                    position: absolute;
                    bottom: 0;
                    right: -10px;
                }

        .sec5 + .premium_link_banner {
            border-bottom: 1px solid #ECECEC;
        }

    .sec6 {
        padding: 40px 0;
    }

        .sec6 ul {
            margin-bottom: 20px;
        }

            .sec6 ul li {
                border: 2px solid #acdbf3;
                margin-bottom: 15px;
                border-radius: 4px;
            }

                .sec6 ul li:last-of-type {
                    margin-bottom: 0;
                }

                .sec6 ul li dl {
                    padding: 15px;
                }

                    .sec6 ul li dl dt {
                        color: #176FA8;
                        position: relative;
                        font-size: 1.5rem;
                        padding-left: 30px;
                        line-height: 1.4;
                    }

                        .sec6 ul li dl dt::before {
                            content: "Q";
                            color: #fff;
                            position: absolute;
                            background: #176FA8;
                            border-radius: 50%;
                            text-align: center;
                            top: 0;
                            left: 0;
                            width: 25px;
                            height: 25px;
                        }

                    .sec6 ul li dl dd {
                        position: relative;
                        font-size: 1.5rem;
                        padding-left: 30px;
                        margin-top: 15px;
                    }

                        .sec6 ul li dl dd::after {
                            content: "A";
                            color: #fff;
                            position: absolute;
                            background: #ff9900;
                            border-radius: 50%;
                            text-align: center;
                            left: 0;
                            width: 25px;
                            height: 25px;
                            top: 0;
                        }

        .sec6 + .premium_link_banner {
            border-top: 1px solid #ECECEC;
        }
    /*add start 20220318アコーディオン*/
    .accordion {
        width: 100%;
        font-size: 1.5rem;
        margin-bottom: 30px;
    }

    .accordion-hidden {
        display: none;
    }

    .accordion-open {
        display: block;
        padding: 10px 80px 10px 10px;
        background: #176FA8;
        color: #fff;
        cursor: pointer;
        margin: 5px 0;
        position: relative;
    }

        .accordion-open::before,
        .accordion-open::after {
            content: '';
            width: 20px;
            height: 3px;
            background: #fff;
            position: absolute;
            top: 50%;
            right: 5%;
            transform: translateY(-50%);
        }

        .accordion-open::after {
            transform: translateY(-50%) rotate(90deg);
            transition: .5s;
        }

    .accordion-hidden:checked + .accordion-open:after {
        transform: translateY(-50%) rotate(0);
    }

    .accordion-inner {
        display: block;
        height: 0;
        overflow: hidden;
        padding: 0;
        opacity: 0;
        transition: 0.5s;
        /* 表示速度の設定 */
        cursor: pointer;
    }

    .accordion-hidden:checked + .accordion-open + .accordion-inner {
        height: auto;
        opacity: 1;
        padding: 10px;
    }

    .accordion_qa .Q,
    .accordion_qa .A {
        position: relative;
        display: inline-block;
        vertical-align: text-top;
    }

        .accordion_qa .Q::before,
        .accordion_qa .A::before {
            font-size: 1.2em;
            display: block;
            position: absolute;
            content: '';
            top: -.2em;
            left: -1.3em;
        }

        .accordion_qa .Q::before {
            content: 'Q.';
        }

        .accordion_qa .A::before {
            content: 'A.';
        }

    .accordion_qa .accordion-open {
        padding-left: 2.5em;
    }

    .accordion_qa .accordion-hidden:checked + .accordion-open + .accordion-inner {
        height: auto;
        opacity: 1;
        padding: 10px 10px 10px 2.5em;
    }
    /*add end 20220318アコーディオン*/


    .sec7 {
        background: #e9f5fc;
        padding: 40px 0;
    }

        .sec7 h2 {
            line-height: 1;
        }

        .sec7 ul {
            position: relative;
            margin: 0 20px 20px;
        }

            .sec7 ul li {
                background: #fff;
                border: 2px solid #acdbf3;
                border-radius: 5px;
                margin-bottom: 25px;
                padding-bottom: 36px;
            }

                .sec7 ul li:last-child {
                    margin-bottom: 0;
                }

                .sec7 ul li::after {
                    content: "";
                    position: absolute;
                    background: url(../images/dot.png) no-repeat;
                    background-size: cover;
                    width: 6px;
                    height: 14px;
                    margin: 7px 0 0 -7px;
                    top: 100%;
                    left: 50%;
                }

                .sec7 ul li:last-of-type::after {
                    content: none;
                }

                .sec7 ul li:nth-child(2) img {
                    padding: 0 10px;
                }

                .sec7 ul li dl {
                    text-align: center;
                    height: 100%;
                }

                    .sec7 ul li dl dt {
                        color: #176FA8;
                        font-weight: bold;
                        position: relative;
                        line-height: 1;
                        font-size: 2.2rem;
                        padding-top: 35px;
                    }

                        .sec7 ul li dl dt span {
                            color: #fff;
                            top: 0;
                            left: 0;
                            position: absolute;
                            z-index: 1;
                            padding: 15px 0 0 15px;
                        }

                            .sec7 ul li dl dt span::before {
                                content: "";
                                position: absolute;
                                top: -2px;
                                left: -2px;
                                width: auto;
                                height: auto;
                                z-index: -1;
                                border: 44px solid transparent;
                                border-top-color: #176FA8;
                                border-left-color: #176FA8;
                                border-radius: 5px 0 0 0;
                            }

                    .sec7 ul li dl dd {
                        font-size: 1.6rem;
                        text-align: center;
                        padding: 0 30px;
                        margin-top: 20px;
                    }

        .sec7 p {
            margin-bottom: 20px;
        }

        .sec7 .commonBt {
            margin: 0 20px;
        }

        .sec7 .sec7_p {
            font-size: 1.4rem;
            padding: 20px 0 0;
            margin-bottom: -15px;
        }

    .sec8 {
        position: relative;
        z-index: 1;
        background: url(../images/sec08_bg-sp.jpg) no-repeat center top;
        background-size: cover;
        padding: 43px 0 40px;
    }

        .sec8 .inner > a {
            background: #e65646;
            color: #fff;
            text-align: center;
            position: relative;
            font-weight: bold;
            width: calc(100% - 40px);
            margin: 0 auto;
            display: block;
            font-size: 1.5rem;
            padding: 13px;
            border-radius: 30px;
        }

            .sec8 .inner > a::after {
                content: "";
                transform: rotate(45deg);
                position: absolute;
                top: 50%;
                width: 8px;
                height: 8px;
                border-top: 2px solid #fff;
                border-right: 2px solid #fff;
                right: 14px;
                margin-top: -4px;
            }

        .sec8 h2 {
            color: #fff;
        }

        .sec8 .inner_left p {
            color: #fff;
            margin-bottom: 20px;
            text-align: center;
        }

        .sec8 .inner_right {
            background: #fff;
            border-radius: 4px;
            padding: 20px 10px 10px;
            margin-bottom: 20px;
        }

            .sec8 .inner_right .box_title {
                font-weight: bold;
                text-align: center;
                margin-bottom: 15px;
            }

            .sec8 .inner_right p img {
                padding: 0 40px;
                margin-bottom: 15px;
            }

            .sec8 .inner_right p:last-of-type {
                margin-bottom: 0;
            }

            .sec8 .inner_right .align_r {
                font-size: 1rem;
            }

    .sec9 {
        padding: 35px 0;
    }

        .sec9 .inner > p {
            margin-bottom: 10px;
        }

        .sec9 dl {
            border: 1px solid #abdbf3;
            border-bottom: none;
        }

            .sec9 dl:last-of-type {
                border-bottom: 1px solid #abdbf3;
            }

            .sec9 dl dt {
                position: relative;
                color: #000;
                padding: 10px 8px;
                background: #e6f4fb;
            }

                .sec9 dl dt span {
                    background: #f90;
                    color: #fff;
                    display: inline-block;
                    position: absolute;
                    top: 50%;
                    border-radius: 2px;
                    font-size: 1rem;
                    padding: 2px 8px;
                    right: 8px;
                    margin-top: -10px;
                }

                    .sec9 dl dt span.nini {
                        background: #176FA8;
                    }

            .sec9 dl dd {
                padding: 12px 8px;
            }

    #form {
        /*
    .custom-wpcf7c-confirmed{
        input,textarea,select{
            background: none;
            border: none;
        }
        
        input::placeholder, textarea::placeholder{
            color: #fff;
        }

        select{
            -webkit-appearance: none;
            -moz-appearance: none;
            appearance: none;
        }
        
        .confirmBtn::after{
            content: none;
        }
        
        .wpcf7c-conf{
            background: #fff;
        }
    }*/
    }

        #form form > p {
            text-align: center;
            margin-bottom: 15px;
        }

        #form input[type="text"], #form input[type="tel"], #form input[type="email"] {
            border: 1px solid #c6c6c6;
            width: 100%;
            padding: 14px 8px;
            border-radius: 2px;
        }

        #form input:-webkit-autofill {
            -webkit-box-shadow: 0 0 0 1000px white inset;
        }

        #form select {
            -webkit-appearance: none;
            -moz-appearance: none;
            appearance: none;
            border: 1px solid #c6c6c6;
            background: #fff;
            padding: 14px 8px;
            width: 100%;
            border-radius: 2px;
        }

        #form .selectbox:after {
            content: '';
            width: 8px;
            height: 8px;
            border: 0px;
            border-bottom: solid 2px #b4b3b3;
            border-right: solid 2px #b4b3b3;
            -ms-transform: rotate(45deg);
            -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
            position: absolute;
            right: 43px;
            margin-top: 20px;
        }

        #form textarea {
            border: 1px solid #c6c6c6;
            width: 100%;
            padding: 8px;
            border-radius: 2px;
        }

        #form .attention {
            margin-top: 10px;
            font-size: 1.2rem;
        }

        #form .name_box {
            margin-bottom: 10px;
        }

            #form .name_box:last-of-type {
                margin-bottom: 0;
            }

        #form .yubin + span input {
            width: calc(100% - 20px);
        }

        #form .zip_box {
            display: inline-block;
        }

        #form .zip_box {
            margin-bottom: 10px;
        }

            #form .zip_box + .zip_box {
                margin-bottom: 10px;
                width: 100%;
            }

        #form .online_br_pc {
            display: none;
        }

        #form .menu-649 select, #form .menu-172 select, #form .menu-genre3 select, #form .menu-genre4 select {
            margin-bottom: 10px;
        }

        #form .tac .form_btns {
            text-align: center;
            margin-top: 20px;
        }

            #form .tac .form_btns input {
                border: none;
                background: none;
                width: 100%;
                height: 100%;
                border-radius: 35px;
                height: 50px;
                line-height: 50px;
            }

                #form .tac .form_btns input[type="submit"] {
                    background: #ff9900;
                    color: #fff;
                    border: 1px solid #ff9900;
                }

            #form .tac .form_btns > span {
                position: relative;
                display: block;
                border-radius: 35px;
            }

        #form .tac .confirmBtn::after {
            content: "";
            transform: rotate(45deg);
            position: absolute;
            top: 50%;
            right: 30px;
            width: 8px;
            height: 8px;
            border-top: 2px solid #fff;
            border-right: 2px solid #fff;
            margin-top: -4px;
        }

        #form .tac .re_btn {
            position: relative;
            display: block;
        }

            #form .tac .re_btn input {
                background: #999;
                color: #fff;
                border: 1px solid #999;
            }

        #form .tac .send_btn {
            position: relative;
            display: block;
            margin-top: 10px;
        }

            #form .tac .send_btn::after {
                content: "";
                transform: rotate(45deg);
                position: absolute;
                top: 50%;
                right: 30px;
                width: 8px;
                height: 8px;
                border-top: 2px solid #fff;
                border-right: 2px solid #fff;
                margin-top: -4px;
            }

            #form .tac .send_btn .ajax-loader {
                display: none;
            }

        #form .tac .confirm_info_text {
            margin-top: 15px;
        }

        #form .tac a {
            color: #176FA8;
            text-decoration: underline;
        }

        #form .confirm_info_text {
            margin: 15px 0;
        }

        #form input.wpcf7c-conf,
        #form select.wpcf7c-conf,
        #form textarea.wpcf7c-conf {
            border: 0;
            padding: 0;
            background: #fff;
        }

        #form select.wpcf7c-conf {
            -webkit-appearance: none;
            -moz-appearance: none;
            appearance: none;
        }

        #form input.wpcf7c-conf::placeholder, #form textarea::placeholder {
            color: #fff;
        }

    .premium_link_banner {
        background: url(../images/grid2.svg);
        padding: 20px 0;
        text-align: center;
    }
}

.info_link {
    color: red;
    text-decoration: underline;
}
/* スライダー */
#main_slider {
    position: absolute;
    width: 100%;
    top: 0;
    z-index: -1;
}

    #main_slider li img {
        width: 100%;
        top: 0;
    }

.checkbox-kikkake .wpcf7-list-item {
	margin: 2px 10px 2px 0;
}

.checkbox-kikkake .wpcf7-list-item.has-free-text {
	display: flex;
	margin-right: 0;
}

.has-free-text label {
	width: 100px;
}

@media print, screen and (max-width: 560px) {
	.checkbox-kikkake .wpcf7-list-item {
		display: block;
		margin: 8px 10px 8px 0;
	}
}

.grecaptcha-badge {
	visibility: hidden;
}

.recapcha-text {
	font-size: 1.3rem !important;
	text-align: center;
	margin-top: 20px;
}

	.recapcha-text a {
		color: #0012B0;
		text-decoration: underline;
	}
