@charset "UTF-8";
/* CSS Document */


@media screen and (min-width: 768px) {
    /*--------------------------------------------------
      reset
    --------------------------------------------------*/

    html,
    body,
    div,
    span,
    applet,
    object,
    iframe,
    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    p,
    blockquote,
    pre,
    a,
    abbr,
    acronym,
    address,
    big,
    cite,
    code,
    del,
    dfn,
    em,
    img,
    ins,
    kbd,
    q,
    s,
    samp,
    small,
    strike,
    strong,
    sub,
    sup,
    tt,
    var,
    b,
    u,
    i,
    center,
    dl,
    dt,
    dd,
    ol,
    ul,
    li,
    fieldset,
    form,
    label,
    legend,
    table,
    caption,
    tbody,
    tfoot,
    thead,
    tr,
    th,
    td,
    article,
    aside,
    canvas,
    details,
    embed,
    figure,
    figcaption,
    footer,
    header,
    hgroup,
    menu,
    nav,
    output,
    ruby,
    section,
    summary,
    time,
    mark,
    audio,
    video {
        margin: 0;
        padding: 0;
        border: 0;
        font-size: 100%;
        font: inherit;
        font-weight: normal;
        /* Yutaka added */
        vertical-align: baseline;
        box-sizing: content-box;
    }

    body {
        margin: 0;
        width: 100%;
        font-size: 15px;
        color: #565656;
        line-height: 1.6;
        margin: 0 auto;
        padding: 0;
        padding: 0;
        font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    }

    ol,
    ul {
        list-style: none;
        margin: 0;
        padding: 0;
    }

    blockquote,
    q {
        quotes: none;
    }

    blockquote:before,
    blockquote:after,
    q:before,
    q:after {
        content: '';
        content: none;
    }

    table {
        border-collapse: collapse;
        border-spacing: 0;
    }

    table,
    tr,
    th,
    td,
    caption {
        vertical-align: middle;
        text-align: left;
    }

    img {
        vertical-align: bottom;
        font-size: 0;
        line-height: 0;
        margin: 0 !important;
        padding: 0 !important;
        width: auto;
        height: auto;
    }

    .clearfix:after {
        content: "";
        clear: both;
        display: block;
    }


    a:hover {
        opacity: 0.8;
    }

    img {
        vertical-align: middle;
        height: auto;
    }


    a img {
        border-top-style: none;
        border-right-style: none;
        border-bottom-style: none;
        border-left-style: none;
    }


    .text-hide {
        overflow: hidden;
        text-indent: 100%;
        white-space: nowrap;
        height: 0;
    }

    .bold {
        font-weight: bold;
    }

    /*--------------------------------------------------
     ここから
    --------------------------------------------------*/

    a {
        text-decoration: none;
    }

    img {
        margin: 0;
        padding: 0;
    }

    img, picture {
        max-width:100%;
        height:auto;
        display:block;
    }

    h2,
    h3,
    h4 {
        margin: 0;
        padding: 0;
    }

    /*--------------------------------------------------
    mv
    --------------------------------------------------*/
    .mv {
        max-width: 2000px;
        width: 100%;
        /* background: url(../img/fv-bg.jpg) center center no-repeat; */
        /* height: 1176px; */
        margin: 0 auto 70px;
        /* min-width: 1300px; */  /*20250424修正*/
    }

    .mv .inner {
        /* width: 100%; */
        /* height: 614px; */
        margin: 0 auto;
        position: relative;
        /* min-width: 1000px; */
    }

    .mv .megumi_banner {
        max-width: 2000px;
        width: 100%;
        margin: auto;
        position: relative;
    }

    .mv .megumi_banner img {
        position: absolute;
        z-index: 21;
        width: clamp(400px, 31.313131313131313vw, 450px);
        left: 0;
        top: 0;
    }

    .mv .inner .t-image01 {
        background: url(../img/fv-text01.png) center center no-repeat;
        width: 100%;
        height: 631px;
        z-index: 20;
        position: relative;
    }

    .mv .inner .t-image02 {
        background: url(../img/fv-text.png) center center no-repeat;
        width: 100%;
        height: 347px;
        z-index: 0;
        position: relative;
        margin-top: -220px;
    }

    /* .mv .inner {
        width: 100%;
        height: 1176px;
        margin: 0 auto;
        position: relative;
        z-index: 1;
    } */

    /* .mv .image {
        position: absolute;
        right: 0;
        top: 0;
        z-index: 5;
    } */
    
    /*--------------------------------------------------
    nav
    --------------------------------------------------*/
    nav {
        width: 100%;
        margin: 0 auto;
        min-width: 1300px;
        margin-bottom: 40px;
    }

    nav .inner {
        text-align: center;
        margin: 0 auto;
        width: 960px;
        margin-top: -70px;
        position: relative;
        z-index: 100;
    }

    nav .inner .nav01 {
        text-align: center;
        margin: 0 auto;
        display: inline-block;
    }



    /*--------------------------------------------------
    main
    --------------------------------------------------*/

    .sec {
        width: 100%;
        margin: 0 auto;
        /* min-width: 1300px; */    /*20250424修正*/
    }


    /*--------------------------------------------------
    offer
    --------------------------------------------------*/

    .offer {
        background: #fc5f75;
        width: 100%;
        /* max-width: 1300px; */ /*20250424修正*/
        margin: 0 auto;
        padding: 14px 0 14px 0;
        color: #fff;
        font-weight: bold;
        /* min-width: 1300px; */ /*20250424修正*/
    }

    .offer .inner {
        /* width: 960px; */     /*20250424修正*/
        width: 100%;            /*20250424修正*/
        max-width: 960px;       /*20250424修正*/
        box-sizing: border-box; /*20250424修正*/
        margin: 0 auto;
        position: relative;
        text-align: center;
    }


    .offer .inner .text {
        text-align: center;
        position: absolute;
        top: 5px;
        /* left: 65px; */           /*20250424修正*/
        /* width: 100%; */          /*20250424修正*/
        left: 130px;                /*20250424修正*/
        width: calc(100% - 130px);  /*20250424修正*/
        line-height: 1.2;
    }

    .offer .inner .text .tx01 {
        font-size: 22px;
        font-weight: bold;
        padding-bottom: 5px;
    }

    .offer .inner .text .tx02 {
        font-size: 22px;
        font-weight: bold;
    }

    /* .offer .inner .text img  */ /*20250424変更*/
    .offer .inner .text picture {
        width: 15px;
        display: inline-block;
        position: relative;
        top: -2px;
        left: 3px;
    }

    .offer .inner .link a {
        text-align: center;
        margin: 0 auto;
        display: inline-block;

    }

    .font-size01 {
        font-size: 29px;
    }

    .offer .inner .link {
        padding-top: 20px;
    }

    .offer-cs .inner .text .tx02 {
        font-size: 21px;
        font-weight: bold;
        line-height: 1.4;
        letter-spacing: -0.08em;
    }


    .offer-cs02 .inner .text .tx02 {
        font-size: 19px;
        font-weight: bold;
        line-height: 1.4;
        letter-spacing: -0.08em;
    }


    /* megumi */

    .megumi {
        background-color: #fee7e9;
        padding: 45px 0;
        /* margin-bottom: 77px; */
    }

    .megumi .megumi_img {
        /* width: clamp(1200px, 87.272727272727273vw, 1728px); */
        width: clamp(768px, 87.272727272727273vw, 1728px); /*20250424修正*/
        margin: auto;
    }

    .megumi img {
        width: 100%;
    }


    /*--------------------------------------------------
    sec01
    --------------------------------------------------*/
    .sec01 {
        margin-top: 80px;
    }

    .sec01 .inner {
        width: 100%;
    }

    .sec01 .inner .t-box {
        position: relative;
        background: #ffd0df;
        height: 474px;
        width: 100%;
        margin: 0 auto;
    }

    .sec01 .sub01 {
        background: url(../img/sec01-img01.png) center center no-repeat;
        height: 474px;
        width: 100%;
        margin: 0 auto;
        position: relative;
        z-index: 10;
    }

    .sec01 .image img {
        width: 2000px;
    }

    .sec01 .image {
        position: absolute;
        bottom: 0;
        right: 0;
    }

    /* 20250424変更 */
    .sec01 .sub02 {
        width: 100%;
        max-width: 1031px;
        margin: 0 auto;
        aspect-ratio: 1031 / 750;
        background: url(../img/sec01-img02.png) center center no-repeat;
        background-size: contain;
        margin-top: -140px;
        position: relative;
        z-index: 50;
    }
    /* 20250424変更 */
    .sec01 .sub03 {
        width: 100%;
        max-width: 1031px;
        aspect-ratio: 1031 / 327;
        background:
            url(../img/sec01-img03.png) center center no-repeat,
            url(../img/sec01-img03-bg.png) repeat-x;
        background-size: contain, auto;
        margin: 15px auto 0;
    }

    /*--------------------------------------------------
    sec02
    --------------------------------------------------*/
    .sec02 {
        margin-top: 130px;
        background: #fee7e9;
        padding-bottom: 90px;
    }

    .sec02 .sub01 {
        background: url(../img/sec02-img01.png) center center no-repeat;
        height: 271px;
        width: 100%;
        margin: 0 auto;
        position: relative;
        top: -50px;
    }
    /* 20250424変更 */
    .sec02 .point01 {
        background: #fff;
        width: 100%;
        max-width: 960px;
        margin: 0 auto;
        position: relative;
        margin-top: 15px;
        padding: 50px 60px 70px 60px;
        box-sizing: border-box;
    }
    /* 20250424変更 */
    .sec02 .point01 .pt01 {
        position: absolute;
        top: -1.5%;
        width: 40%;
        left: 0;
        right: 0;
        width: 307px;
        margin: 0 auto;
    }

    /* 20250424変更 */
    .sec02 .point01 .image-box {
        /* background: url(../img/sec02-img02.png) 0 0 no-repeat;
        height: 562px; */
        width: 100%;
        aspect-ratio: 854/562;
        height: 0;
        padding-top: 65.81%;
        background: url(../img/sec02-img02.png) center top no-repeat;
        background-size: contain;
        margin: 0 auto;
        margin-top: 15px;
    }

    .sec02 .point01 .sub-box {
        margin-top: 20px;
    }

    .sec02 .point01 .f-box {
        float: left;
        width: 50%;
    }


    .sec02 .point01 .f-box .tx {
        color: #fd809f;
        font-weight: bold;
        line-height: 1.2;
        font-size: 22px;
    }

    .sec02 .point01 .f-box .tx span {
        font-size: 31px;
        font-weight: bold;
    }


    .sec02 .point01 .f-box h5 {
        color: #fd809f;
        font-weight: bold;
        font-size: 34px;
        margin-bottom: 12px;
        background: linear-gradient(transparent 50%, #fffb99 50%);
        display: inline-block;
        line-height: 1.2;
    }

    .sec02 .point01 .f-box .image {
        position: relative;
        left: -24px;
    }

    .sec02 .point01 .f-box .text {
        width: 96%;
        margin-top: 10px;
        font-size: 18px;
    }



    .sec02 .point01 .slider-box {
        width: 100%;
        background: #fdf5f5;
        margin: 50px auto 0;
    }

    .sec02 .point01 .slider-box .slider {
        width: 60%;
        margin: 0 auto;
        padding: 40px 0;
    }



    .sec02 .point01 .slider-box .slider h5 {
        color: #ff8da9;
        font-size: 30px;
        margin: 10px 0 0 0;
        font-weight: bold;
    }

    .sec02 .point01 .slider-box .slider p {
        font-size: 20px;
    }

    /*--------------------------------------------------
    ポイント　共通
    --------------------------------------------------*/

    .h5-bg {
        background: #ffc1cf;
        text-align: center;
        width: 100%;
        font-weight: bold;
        font-size: 28px;
        margin-top: 25px;
        margin-bottom: 15px;
        line-height: 40px;
    }

    .sub-p {
        text-align: center;
        font-size: 20px;
    }


    .point01 .ttl,
    .point02 .ttl,
    .point03 .ttl {
        text-align: center;
        font-weight: bold;
        font-size: 32px;
        margin-top: 10px;
        line-height: 1.5;
    }

    .point01 .ttl h4,
    .point01 .ttl span,
    .point02 .ttl h4,
    .point02 .ttl span,
    .point03 .ttl h4,
    .point03 .ttl span {
        font-weight: bold;
    }

    .point01 .ttl .t-main,
    .point02 .ttl .t-main,
    .point03 .ttl .t-main {
        color: #ff8da9;
        display: inline-block;
        font-weight: bold;
    }

    .font-size02 {
        font-size: 50px;
    }

    /*--------------------------------------------------
    ページャー
    --------------------------------------------------*/

    button {
        margin: 0;
        padding: 0;
        background: none;
        border: none;
        border-radius: 0;
        outline: none;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
    }

    .slide-arrow01 {
        position: absolute;
        top: 38%;
        cursor: pointer;
        z-index: 1000;
    }

    .prev-arrow01 {
        width: 32px;
        height: 32px;
        border-top: solid 2px #ff8da9;
        border-right: solid 2px #ff8da9;
        -webkit-transform: rotate(-135deg);
        transform: rotate(-135deg);
        position: absolute;
        left: -54px;
        display: none;
        margin-top: -20px;
    }

    .next-arrow01 {
        width: 32px;
        height: 32px;
        border-top: solid 2px #ff8da9;
        border-right: solid 2px #ff8da9;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        position: absolute;
        right: -54px;
        display: none;
        margin-top: -20px;
    }


    .slide-arrow02 {
        position: absolute;
        top: 25%;
        cursor: pointer;
        z-index: 1000;
    }

    .prev-arrow02 {
        width: 26px;
        height: 26px;
        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
        -webkit-transform: rotate(-135deg);
        transform: rotate(-135deg);
        position: absolute;
        left: 4%;
        display: none;
        margin-top: -20px;
        filter: drop-shadow(5px 0px 5px rgba(0, 0, 0, 1));
    }

    .next-arrow02 {
        width: 26px;
        height: 26px;
        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        position: absolute;
        right: 4%;
        display: none;
        filter: drop-shadow(3px 0px 5px rgba(0, 0, 0, 2));
        margin-top: -20px;
    }

    .slide-arrow03 {
        position: absolute;
        top: 45%;
        cursor: pointer;
        z-index: 1000;
    }

    .prev-arrow03 {
        width: 22px;
        height: 22px;
        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
        -webkit-transform: rotate(-135deg);
        transform: rotate(-135deg);
        position: absolute;
        left: 0;
        display: none;
        margin-top: -20px;
        filter: drop-shadow(5px 0px 5px rgba(0, 0, 0, 1));
    }

    .next-arrow03 {
        width: 22px;
        height: 22px;
        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        position: absolute;
        right: 0;
        display: none;
        filter: drop-shadow(3px 0px 5px rgba(0, 0, 0, 2));
        margin-top: -20px;
    }





    /*--------------------------------------------------
    sec03
    --------------------------------------------------*/
    .sec03 {
        width: 100%;
        margin: 0 auto;
    }

    .sec03 .box {
        background: url(../img/sec03-bg.gif) center center no-repeat;
        background-size: cover;
        height: auto;
        width: 100%;
        margin: 0 auto;
        padding-bottom: 40px;
    }

    .sec03 .sub01 h3 {
        padding-top: 35px;
        padding-bottom: 35px;
        /* width: 960px; */     /*20250424修正*/
        width: 100%;            /*20250424修正*/
        max-width: 960px;       /*20250424修正*/
        margin: 0 auto;

    }

    .sec03 .sub01 p {
        /* width: 960px; */    /*20250424修正*/
        width: 100%;            /*20250424修正*/
        max-width: 960px;       /*20250424修正*/
        margin: 0 auto;
    }

    .sec03 .sub01 .tx {
        margin-top: 24px;
        font-size: 20px;
    }

    .sec03 .program {
        /* width: 960px; */     /*20250424修正*/
        width: 100%;            /*20250424修正*/
        max-width: 960px;       /*20250424修正*/
        margin: 35px auto;
    }

    .sec03 .program .image01 h4 {
        float: left;
        width: 42%;
    }

    .sec03 .program .image01 h4 img {
        width: 100%;
    }

    .sec03 .program .image01 {
        margin-bottom: 40px;
    }

    .sec03 .program .image01 .text {
        float: right;
        width: 54%;
    }

    .sec03 .program .image01 .text p {
        font-size: 18px;
    }


    .sec03 .program .image01 .text .ls-ttl img {
        width: 320px;
    }

    .sec03 .program .image01 .text .ls-ttl {
        margin: auto;
        width: 320px;
        margin-top: 20px;
        margin-bottom: 15px;
    }

    .sec03 .program .image01 .text li {
        float: left;
        width: 49%;
        margin-right: 2%;
        margin-bottom: 2%;
    }

    .sec03 .program .image01 .text li img {
        width: 100%;
    }

    .sec03 .program .image01 .text li:nth-child(even) {
        margin-right: 0;
    }

    /*--------------------------------------------------
    sec04
    --------------------------------------------------*/
    .sec04 {
        background: url(../img/sec04-bg.gif) 0 0 no-repeat;
        width: 100%;
        background-size: cover;
        height: 695px;
    }

    .sec04 .box {
        background: url(../img/sec04-img01.png) center 0 no-repeat;
        height: 695px;
        width: 100%;
        padding-top: 112.8%;
        margin: 0 auto;
    }


    /*--------------------------------------------------
    sec05
    --------------------------------------------------*/
    .sec05 {
        background: #fee7e9;
        padding-top: 75px;
    }

    /*20250424変更*/
    /* .sec05 .point02 {
        background: #fff;
        width: 840px;
        margin: 0 auto;
        position: relative;
        margin-top: 15px;
        padding: 50px 60px 70px 60px;
    } */
    .sec05 .point02 {
        background: #fff;
        width: 100%;
        max-width: 960px;
        margin: 0 auto;
        position: relative;
        margin-top: 15px;
        padding: 50px 60px 70px 60px;
        box-sizing: border-box;
    }

    .sec05 .point02 .pt01 {
        position: absolute;
        top: -1.5%;
        width: 40%;
        left: 0;
        right: 0;
        width: 307px;
        margin: 0 auto;
    }


    .sec05 .h5-bg {
        background: #ffc1cf;
        text-align: center;
        width: 100%;
        font-weight: bold;
        font-size: 28px;
        margin-top: 5px;
        margin-bottom: 10px;
    }

    .sec05 .text-img {
        margin-top: 12px;
        margin: 0 auto;
        margin-top: 20px;
        margin-bottom: 4px;
    }

    .sec05 .text-img img {
        width: 100%;
    }

    .sec05 .image-box01 {
        margin: 0 auto;
        width: 700px;
        text-align: center;
        margin-top: 30px;
        margin-bottom: 10px;
    }

    .sec05 .image-box01 .img01 img {
        width: 700px;
    }

    .sec05 .inner01 .tx {
        font-size: 20px;
    }

    .sec05 .mt {
        margin-top: 50px;
    }

    .sec05 .image-box02 {
        margin: 0 auto;
        width: 638px;
        text-align: center;
        margin-top: 30px;
    }

    .sec05 .image-box02 .img02 img {
        width: 638px;
    }



    .sec05 .accordionlist {
        margin: 0;
        padding: 0;
    }

    .sec05 .accordion,
    .accordionbox {
        margin: 0;
        padding: 0;
        margin-top: 40px;
    }

    .sec05 .accordionlist dt {
        display: block;
        margin: 0 auto;
        height: 80px;
        position: relative;
        font-weight: bold;
        background: #fff;
        width: 640px;
        padding: 0;
        margin-bottom: 20px;
        border: solid 1px #ff8da9;
        border-radius: 10px 10px 10px 10px;
        box-sizing: border-box;
        box-shadow: 0px 5px 0px 0px #ffbece;
    }


    .sec05 .accordionlist dt .title {
        margin: 0 auto;
        font-size: 26px;
        color: #fff;
        max-width: 100%;
        margin: 0 auto;
        position: relative;
        font-weight: bold;
    }

    .sec05 .accordionlist dt .title p {
        text-align: center;
        width: 100%;
        position: relative;
        line-height: 80px;
        color: #ff8da9;
        font-weight: bold;
    }



    .sec05 .accordionlist dd {
        display: none;
        background: #fff;
        padding: 0;
        font-size: 16px;
        max-width: 100%;
        margin: 0 auto;
        padding-top: 5px;
        position: relative;

    }

    .sec05 .graph {
        background: url(../img/sh-img01.gif) center 0 no-repeat;
        width: 840px;
        height: 514px;
        margin-top: 30px;
    }



    .sec05 .accordionlist .open {
        display: block;
    }


    .sec05 .accordion_icon,
    .sec05 .accordion_icon span {
        display: inline-block;
        transition: all .4s;
        box-sizing: border-box;
    }

    .sec05 .accordion_icon {
        position: absolute;
        width: 50px;
        height: 50px;
        right: 0;
        top: 31px;
    }


    .sec05 .accordion_icon span {
        position: absolute;
        left: 0;
        width: 54%;
        height: 4px;
        background-color: #ff8da9;
        border-radius: 0;
        -webkit-border-radius: 0;
        -ms-border-radius: 0;
        -moz-border-radius: 0;
        -o-border-radius: 0;
    }

    .accordion_icon span:nth-of-type(1) {
        top: 5px;
        transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        -o-transform: rotate(0deg);
    }

    .accordion_icon span:nth-of-type(2) {
        top: 5px;
        transform: rotate(90deg);
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
    }

    /*＋、－切り替え*/
    .accordion_icon.active span:nth-of-type(1) {
        display: none;
    }

    .accordion_icon.active span:nth-of-type(2) {
        top: 5px;
        transform: rotate(180deg);
        -webkit-transform: rotate(180deg);
        -moz-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
        -o-transform: rotate(180deg);
    }


    /*--------------------------------------------------
    sec06
    --------------------------------------------------*/

    .sec06 {
        background: #fee7e9;
        padding-top: 75px;
        padding-bottom: 90px;
    }

        /*20250424変更*/
        /* .sec06 .point03 {
        background: #fff;
        width: 840px;
        margin: 0 auto;
        position: relative;
        margin-top: 15px;
        padding: 50px 60px 40px 60px;
    } */
    .sec06 .point03 {
        background: #fff;
        width: 100%;
        max-width: 960px;
        margin: 0 auto;
        position: relative;
        margin-top: 15px;
        padding: 50px 60px 70px 60px;
        box-sizing: border-box;
    }

    .sec06 .point03 .pt01 {
        position: absolute;
        top: -1.5%;
        width: 40%;
        left: 0;
        right: 0;
        width: 307px;
        margin: 0 auto;
    }


    .sec06 .point03 .ttl .sub-t {
        text-align: center;
        font-size: 24px;
        font-weight: normal;
        margin-top: 12px;
    }

    .sec06 .point03 .f-box {
        margin-top: 40px;
    }

    .sec06 .point03 .f-box .image {
        width: 36%;
        float: left;
        position: relative;
        left: -16px;
    }

    .sec06 .point03 .f-box .image img {
        width: 100%;
    }

    .sec06 .point03 .f-box .text {
        width: 60%;
        float: right;
        margin-top: 0;
        font-weight: bold;
    }

    .sec06 .point03 .f-box .text img {
        width: 100%;
    }


    .sec06 .point03 .f-box02 .image {
        width: 36%;
        float: right;
        position: relative;
        z-index: 5;

    }

    .sec06 .point03 .f-box02 .text {
        width: 59%;
        float: left;
        margin-top: 0;
        font-weight: bold;
    }

    .sec06 .point03 .f-box02 {
        margin-top: 60px;
    }

    .sec06 .point03 .f-box .text p {
        font-weight: bold;
        font-size: 20px;
        margin-top: 12px;
    }

    .color01 {
        color: #ff8da9;
        font-weight: bold;
    }


    .sec06 .portfolio {
        position: relative;
        top: -30px;
        z-index: 1;
    }

    /*--------------------------------------------------
    sec07
    --------------------------------------------------*/
    .sec07 {
        background: #fee7e9;
        padding-top: 90px;
        padding-bottom: 100px;
    }

    .sec07 .inner {
        position: relative;
        background: #fff;
        width: 960px;
        border: solid 4px #fc5f75;
        margin: 0 auto;
        box-sizing: border-box;
    }

    .sec07 .box {
        position: relative;
        background: #fff;
        padding: 3% 6% 4% 6%;
        margin: 0 auto;
        box-sizing: border-box;
    }

    .sec07 .box .pick {
        position: absolute;
        top: -28px;
        margin: 0 auto;
        left: 0;
        right: 0;
        width: 154px;
    }

    .sec07 .box .pick img {
        width: 154px;
    }

    .sec07 .box h3 {
        text-align: center;
        font-size: 26px;
        font-weight: bold;
        margin-top: 10px;
        line-height: 1.4;
    }

    .sec07 .box h3 span {
        color: #fc5f75;
        font-size: 35px;
        font-weight: bold;
    }

    .sec07 .ch-logo {
        width: 420px;
        text-align: center;
        margin: 0 auto;
        margin: 14px auto 30px;
    }

    .sec07 .ch-logo img {
        width: 420px;
    }

    .sec07 .tv {}

    .sec07 .tv iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    .sec07 .tv-box {
        width: 43%;
        float: left;
    }

    .sec07 .text-box {
        float: right;
        width: 53%;
    }

    .sec07 .box h4 {
        text-align: center;
        font-size: 24px;
        font-weight: bold;
        line-height: 1.4;
    }

    .sec07 .box .sub01 {
        margin-top: 10px;
        float: left;
        width: 48%;
        margin-right: 4%;
    }

    .sec07 .box .sub01:last-child {
        margin-right: 0;
    }

    .sec07 .box .sub01 .bg02 {
        background: #fc5f75;
        color: #fff;
        text-align: center;
        position: relative;
        padding: 5px 0;
    }

    .sec07 .box .sub01 .bg02 p {
        font-weight: bold;
        font-size: 18px;
        font-style: oblique;
        line-height: 1.2;
    }

    .sec07 .box .sub01 .bg02:after {
        content: '';
        width: 0;
        height: 0;
        position: absolute;
        bottom: -10px;
        border-style: solid;
        border-width: 10px 0px 0 14px;
        border-color: #fc5f75 transparent transparent transparent;
    }

    .sec07 .box .sub01 .n-text {
        text-align: center;
        width: 100%;
        margin-top: 14px;
    }

    .sec07 .box .sub01 .text {
        display: inline-block;
        font-size: 14px;
        vertical-align: middle;

    }

    .sec07 .box .sub01 .name {
        display: inline-block;
        font-size: 30px;
        vertical-align: middle;
        color: #851b2a;
        font-weight: bold;
    }

    .sec07 .inner .f-text {
        background: url(../img/sec07-bg.gif) 0 0 no-repeat;
        background-size: cover;
        text-align: center;
        width: 100%;
    }

    .sec07 .inner .f-text p {
        font-size: 33px;
        font-weight: bold;
        padding: 20px 0;
        line-height: 1.3;
    }

    .sec07 .inner .f-text p .font-size03 {
        font-size: 50px;
        font-weight: bold;
    }

    .sec07 .inner .color02 {
        color: #fc5f75;
        font-weight: bold;
    }


    /*--------------------------------------------------
    sec08
    --------------------------------------------------*/

    .sec08 {
        margin-top: 120px;
        background: #fee7e9;
        padding-bottom: 100px;
    }

    .sec08 .sub01 {
        background: url(../img/sec08-img01.png) center center no-repeat;
        height: 245px;
        width: 100%;
        margin: 0 auto;
        position: relative;
        top: -23px;
    }

    .sec08 .t-text {
        /* width: 960px; */     /*20250424修正*/
        width: 100%;            /*20250424修正*/
        max-width: 960px;       /*20250424修正*/
        margin: 30px auto 0;
        font-size: 20px;
        text-align: center;
    }


    /*20250424変更*/
    /* .sec08 .f-box {
        width: 960px;
        margin: 0 auto;
        margin-top: 30px;
    } */

    /* .sec08 .f-box .image01 {
        border: solid 4px #ffc1cf;
        background: #fff;
        box-sizing: border-box;
        float: left;
        width: 470px;
        margin-right: 20px;
    } */
    .sec08 .f-box {
        display: flex;
        flex-wrap: nowrap;
        gap: 20px;          /* 画像同士の間隔 */
        max-width: 960px;
        width: 100%;
        margin: 0 auto;
        margin-top: 30px;
        /* floatは不要 */
    }
    
    .sec08 .f-box .image01 {
        flex: 1 1 0;
        min-width: 0;    /* はみ出し対策用 */
        background: #fff;
        border: solid 4px #ffc1cf;
        box-sizing: border-box;
        /* width: 470px; ←不要！ */
    }

    .sec08 .f-box .image01:last-child {
        margin-right: 0;
    }

    .sec08 .f-box .bg-img {
        width: 96px;
        text-align: center;
        margin: 0 auto;
    }

    .sec08 .f-box .bg-img img {
        width: 96px;
    }

    .sec08 .f-box .image01 h4 {
        /* width: 430px; */     /*20250424変更*/
        max-width: 430px;       /*20250424変更*/
        width: 90%;             /*20250424変更*/
        margin: 0 auto;
        padding: 16px 0 12px 0;
    }

    .sec08 .f-box .image01 h4 img {
        width: 430px;
    }

    .sec08 .f-box .image01 .image {
        /* width: 410px; */     /*20250424変更*/
        max-width: 410px;       /*20250424変更*/
        width: 90%;             /*20250424変更*/
        margin: 0 auto;
        text-align: center;
    }

    .sec08 .f-box .image01 .image img {
        width: 410px;
    }

    .sec08 .f-box .image01 p {
        /* width: 410px; */     /*20250424変更*/
        max-width: 410px;       /*20250424変更*/
        width: 90%;             /*20250424変更*/
        margin: 0 auto;
        padding: 12px 0 30px 0;
        font-size: 18px;
        line-height: 1.7;
    }



    /*--------------------------------------------------
    sec09
    --------------------------------------------------*/
    .sec09 {
        margin-top: 80px;
        background: url(../img/sec09-bg.gif) 0 0 no-repeat;
        background-size: cover;
        padding-bottom: 70px;
    }

    .sec09 .bg01 {
        background-image: linear-gradient(-45deg,
                #fff 25%,
                #f4ecf7 25%,
                #f4ecf7 50%,
                #fff 50%,
                #fff 75%,
                #f4ecf7 75%,
                #f4ecf7);
        background-size: 12px 12px;
        background-attachment: fixed;
        border-bottom: solid 4px #bc86cc;
        border-top: solid 4px #bc86cc;
        box-sizing: border-box;
        padding: 25px 0 20px 0;
    }

    .sec09 .sub01 {
        background: url(../img/sec09-img01.png) center center no-repeat;
        height: 118px;
        width: 100%;
        margin: 0 auto;
    }


    /*20250424変更*/
    /* .sec09 .m-box {
        width: 960px;
        margin: 0 auto;
        margin-top: 40px;
    }

    .sec09 .m-box .left {
        float: left;
        width: 450px;
        margin-top: 20px;
    }

    .sec09 .m-box .right {
        float: right;
        width: 450px;
        margin-top: 20px;
    } */

    .sec09 .m-box {
        display: flex;
        flex-wrap: nowrap;
        gap: 20px;
        max-width: 960px;
        width: 100%;
        margin: 0 auto;
        margin-top: 40px;
    }
    
    .sec09 .m-box .left,
    .sec09 .m-box .right {
        flex: 1 1 0;
        min-width: 0;
        margin-top: 20px;
    }

    .sec09 .f-box {
        /* width: 410px; */ /*20250424変更*/
        max-width: 410px;
        margin: 0 auto;
    }


    .sec09 .f-box .text {
        margin-top: 10px;
        font-weight: bold;
    }


    .sec09 .f-box .tx {
        font-size: 18px;
    }

    .sec09 .f-box .tx01 {
        text-shadow: 1px 1px 0 #cca8d7, -1px -1px 0 #cca8d7,
            -1px 1px 0 #cca8d7, 1px -1px 0 #cca8d7,
            0px 1px 0 #cca8d7, 0-1px 0 #cca8d7,
            -1px 0 0 #cca8d7, 1px 0 0 #cca8d7;
        color: #565656;
        font-size: 21px;
        line-height: 1.3;
        display: inline-block;
    }

    .sec09 .f-box .tx02 {
        color: #c58ed6;
        font-size: 35px;
        font-weight: bold;
        line-height: 1.4;
    }

    .sec09 .f-box .tx03 {
        font-size: 17px;
        margin-top: 10px;
        text-align: center;
    }

    .sec09 .f-box .tx04 {}

    .sec09 .accordionlist {
        margin: 0;
        padding: 0;
    }

    .sec09 .accordion,
    .accordionbox {
        margin: 0;
        padding: 0;
        margin-top: 15px;
    }

    .sec09 .accordionlist dt {
        display: block;
        margin: 0 auto;
        height: 60px;
        position: relative;
        background: #bc86cc;
        padding: 0;
        width: 100%;
        margin-bottom: 10px;
        box-sizing: border-box;
    }


    .sec09 .accordionlist dt .title {
        margin: 0 auto;
        font-size: 26px;
        color: #fff;
        max-width: 100%;
        margin: 0 auto;
        position: relative;
        font-weight: bold;
    }

    .sec09 .accordionlist dt .title p {
        text-align: center;
        width: 100%;
        position: relative;
        line-height: 60px;
        color: #fff;
    }



    .sec09 .accordionlist dd {
        display: none;
        padding: 0;
        font-size: 16px;
        max-width: 100%;
        margin: 0 auto;
        padding-top: 5px;
        line-height: 1.8;
        position: relative;

    }

    .sec09 .accordionlist .open {
        display: block;
    }


    .sec09 .accordion_icon,
    .sec09 .accordion_icon span {
        display: inline-block;
        transition: all .4s;
        box-sizing: border-box;
    }

    .sec09 .accordion_icon {
        position: absolute;
        width: 42px;
        height: 28px;
        right: 0;
        top: 23px;
    }


    .sec09 .accordion_icon span {
        position: absolute;
        left: 0;
        width: 45%;
        height: 2px;
        background-color: #fff;
        border-radius: 0;
        -webkit-border-radius: 0;
        -ms-border-radius: 0;
        -moz-border-radius: 0;
        -o-border-radius: 0;
    }


    /*--------------------------------------------------
    sec10
    --------------------------------------------------*/
    .sec10 {
        margin-top: 65px;
        padding-bottom: 70px;
    }

    .sec10 .sub01 {
        background: url(../img/sec10-img01.jpg) 0 0 no-repeat;
        height: 130px;
        width: 750px;
        margin: 0 auto;
    }

    .sec10 .tokyo,
    .sec10 .osaka,
    .sec10 .nagoya,
    .sec10 .fukuoka {
        /* width: 960px; */     /*20250424修正*/
        width: 100%;            /*20250424修正*/
        max-width: 960px;       /*20250424修正*/
        margin: 0 auto;
        margin-top: 40px;
    }

    /*.sec10 .osaka {
        margin-top: 60px;
    }*/

    .sec10 .area {
        margin: 0 auto;
        text-align: center;
        width: 600px;
        margin-top: 30px;
    }

    .sec10 .area img {
        width: 600px;
    }

    .sec10 .text {
        font-size: 16px;
        margin-top: 10px;
        border-bottom: 1px solid #48c2b5;
        padding-bottom: 16px;
        line-height: 1.8;
        text-align: center;
    }

    .sec10 .access {
        margin-top: 12px;
        text-align: center;
    }

    .sec10 .access p {
        font-size: 16px;
        margin-top: 12px;
        text-align: center;
    }

    .sec10 .a-box {
        background: #48c2b5;
        display: inline-block;
        color: #fff;
        font-size: 18px;
        font-weight: bold;
        padding: 0 8px;
        border-radius: 3px;
        /* CSS3草案 */
        -webkit-border-radius: 3px;
        /* Safari,Google Chrome用 */
        -moz-border-radius: 3px;
        /* Firefox用 */
    }

    .white.background {
        background-color: #ffffff;
    }

    /*--------------------------------------------------------------
    # our-vision
    --------------------------------------------------------------*/
    .our-vision-wrap {
        background-color: #fff;
        width: 100%;
        padding: 80px 0;
        display: flex;
        justify-content: center;
    }

    .our-vision-wrap.is-add-border {
        padding-top: 0;
        margin-top: 80px;
    }

    .our-vision-head {
        width: 140px;
        height: 40px;
    }

    .our-vision-wrap.is-add-border .our-vision {
        border-top: 1px solid #e5e5e5;
        padding-top: 80px;
    }

    .our-vision-body {
        display: flex;
        margin-top: 20px;
    }

    .our-vision-thum {
        margin-right: 60px;
    }

    .our-vision-text-area-heading {
        font-size: 25px;
        line-height: 1.4;
        text-align: left;
    }

    .our-vision-text-wrap {
        margin-top: 20px;
    }

    .our-vision-text-wrap>*+* {
        margin-top: 8px;
    }

    .our-vision-text {
        font-size: 14px;
        line-height: 2;
        text-align: left;
    }

    .nagoya_area {
        position: absolute;
        top: 420px;
        right: 150px;
        z-index: 100;
    }

    .nagoya_area img {
        /*	max-width: 75%;*/
        display: inline-block;
        width: 164px;
    }

    #fixed_btns {
        display: none;
    }

}

@media screen and (max-width: 767px) {

    /*--------------------------------------------------
  reset
--------------------------------------------------*/

    html,
    body,
    div,
    span,
    applet,
    object,
    iframe,
    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    p,
    blockquote,
    pre,
    a,
    abbr,
    acronym,
    address,
    big,
    cite,
    code,
    del,
    dfn,
    em,
    img,
    ins,
    kbd,
    q,
    s,
    samp,
    small,
    strike,
    strong,
    sub,
    sup,
    tt,
    var,
    b,
    u,
    i,
    center,
    dl,
    dt,
    dd,
    ol,
    ul,
    li,
    fieldset,
    form,
    label,
    legend,
    table,
    caption,
    tbody,
    tfoot,
    thead,
    tr,
    th,
    td,
    article,
    aside,
    canvas,
    details,
    embed,
    figure,
    figcaption,
    footer,
    header,
    hgroup,
    menu,
    nav,
    output,
    ruby,
    section,
    summary,
    time,
    mark,
    audio,
    video {
        margin: 0;
        padding: 0;
        border: 0;
        font-size: 100%;
        font: inherit;
        font-weight: normal;
        /* Yutaka added */
        vertical-align: baseline;
    }

    body {
        margin: 0;
        width: 100%;
        font-size: 15px;
        color: #565656;
        line-height: 1.6;
        margin: 0 auto;
        padding: 0;
        padding: 0;
        font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    }

    ol,
    ul {
        list-style: none;
        margin: 0;
        padding: 0;
    }

    blockquote,
    q {
        quotes: none;
    }

    blockquote:before,
    blockquote:after,
    q:before,
    q:after {
        content: '';
        content: none;
    }

    table {
        border-collapse: collapse;
        border-spacing: 0;
    }

    table,
    tr,
    th,
    td,
    caption {
        vertical-align: middle;
        text-align: left;
    }

    img {
        vertical-align: bottom;
        font-size: 0;
        line-height: 0;
        margin: 0 !important;
        padding: 0 !important
    }

    .clearfix:after {
        content: "";
        clear: both;
        display: block;
    }


    a:hover {
        opacity: 0.8;
    }

    img {
        vertical-align: middle;
        max-width: 100%;
        height: auto;
    }

    img:not([width]) {
        width: 100%;
        height: auto;
    }

    a img {
        border-top-style: none;
        border-right-style: none;
        border-bottom-style: none;
        border-left-style: none;
    }


    .text-hide {
        overflow: hidden;
        text-indent: 100%;
        white-space: nowrap;
        height: 0;
    }

    .bold {
        font-weight: bold;
    }


    /*--------------------------------------------------
 ここから
--------------------------------------------------*/

    a {
        text-decoration: none;
    }

    img {
        display: block;
    }

    img {
        width: 100%;
        margin: 0;
        padding: 0;
    }

    h2,
    h3,
    h4 {
        margin: 0;
        padding: 0;
    }

    #wrap ,
    .wrap {
        width: 100%;
        max-width: 750px;
        margin: 0 auto;
        overflow: hidden;
    }

    /*--------------------------------------------------
mv
--------------------------------------------------*/
    .mv {
        width: 100%;
        margin-bottom: -0.5%;
        height: auto;
    }


    /*--------------------------------------------------
nav
--------------------------------------------------*/
    nav {
        width: 100%;
        margin-top: 5%;
        margin-bottom: 5%;
    }

    nav .inner .nav01 {
        display: block;
        width: 92%;
        margin: 0 auto;
    }

    /*--------------------------------------------------
megumi
--------------------------------------------------*/
    .megumi {
        margin-top: 7%;
    }
    /*--------------------------------------------------
main
--------------------------------------------------*/

    .sec {
        width: 100%;
        margin: 0 auto;
    }


    /*--------------------------------------------------
offer
--------------------------------------------------*/

    .offer {
        background: #fc5f75;
        width: 100%;
        margin: 0 auto;
        padding: 3% 0 4% 0;
        color: #fff;
        font-weight: bold;
    }

    .offer .inner {
        width: 92%;
        margin: 0 auto;
        position: relative;
    }


    .offer .inner .text {
        text-align: center;
        position: absolute;
        top: 0;
        left: 30%;
        width: 70%;
        line-height: 1.2;
    }

    .offer .inner .text .tx01 {
        font-size: 20px;
        font-weight: bold;
        padding-bottom: 0.1em;
    }

    .offer .inner .text .tx02 {
        font-size: 30px;
        font-weight: bold;
    }

    .offer .inner .text img {
        width: 5%;
        display: inline-block;
        position: relative;
        top: -2px;
        left: 3px;
    }

    .font-size01 {
        font-size: 37px;
    }

    .offer .inner .link {
        padding-top: 3%;
    }

    /* .offer-cs .inner .text .tx02 {
	font-size: 3.6vw;
	font-weight: bold;
	line-height: 1.4;
} */

    @media (max-width: 750px) {
        .offer .inner .text .tx02 {
            font-size: calc(30 / 750 * 100vw);
        }

        .offer .inner .text .tx01 {
            font-size: calc(20 / 750 * 100vw);
        }

        .font-size01 {
            font-size: calc(37 / 750 * 100vw);
        }
    }

    /*--------------------------------------------------
sec01
--------------------------------------------------*/
    .sec01 {
        margin-top: 7%;
    }

    .sec01 .inner {
        width: 100%;
    }

    .sec01 .sub01 {
        background: url(../img/sp_sec01-img01.jpg) 0 0 no-repeat;
        background-size: 100% auto;
        height: 0;
        width: 100%;
        padding-top: 55.33%;
        margin: 0 auto;
    }

    .sec01 .sub02 {
        background: url(../img/sp_sec01-img02.jpg) 0 0 no-repeat;
        background-size: 100% auto;
        height: 0;
        width: 100%;
        padding-top: 143.46%;
        margin: 0 auto;
    }

    .sec01 .sub03 {
        background: url(../img/sp_sec01-img03.jpg) 0 0 no-repeat;
        background-size: 100% auto;
        height: 0;
        width: 100%;
        padding-top: 56.4%;
        margin: 0 auto;
    }


    /*--------------------------------------------------
sec02
--------------------------------------------------*/
    .sec02 {
        margin-top: 9%;
        background: #fee7e9;
        padding-bottom: 50px;
    }

    .sec02 .sub01 {
        background: url(../img/sp_sec02-img01.jpg) 0 0 no-repeat;
        background-size: 100% auto;
        height: 0;
        width: 100%;
        padding-top: 40.26%;
        margin: 0 auto;
    }

    .sec02 .point01 {
        background: #fff;
        width: 91%;
        margin: 0 auto;
        position: relative;
        margin-top: 7%;
        padding: 3% 4%;
    }

    .sec02 .point01 .pt01 {
        position: absolute;
        top: -1.5%;
        width: 40%;
        left: 0;
        right: 0;
        margin: 0 auto;
    }


    .sec02 .point01 .image-box {
        background: url(../img/sp_sec02-img02.png) 0 0 no-repeat;
        background-size: 100% auto;
        height: 0;
        width: 100%;
        padding-top: 77.33%;
        margin: 0 auto;
        margin-top: 15px;
    }


    .sec02 .point01 .f-box {
        margin-top: 14px;
    }

    .sec02 .point01 .f-box02 {
        margin-top: 20px;
    }

    .sec02 .point01 .f-box .tx {
        color: #fd809f;
        font-weight: bold;
        line-height: 1.2;
    }

    .sec02 .point01 .f-box .tx span {
        font-size: 18px;
        font-weight: bold;
    }


    .sec02 .point01 .f-box h5 {
        color: #fd809f;
        font-weight: bold;
        font-size: 18px;
        margin-bottom: 5px;
        background: linear-gradient(transparent 60%, #fffb99 60%);
        display: inline-block;
    }

    .sec02 .point01 .f-box .image {
        width: 37%;
        float: left;
    }

    .sec02 .point01 .f-box .text {
        width: 61%;
        float: right;
        margin-top: 3%;
    }

    .sec02 .point01 .f-box02 .image {
        width: 37%;
        float: right;
    }

    .sec02 .point01 .f-box02 .text {
        width: 61%;
        float: left;
        margin-top: 3%;
    }

    .sec02 .point01 .slider-box {
        width: 100%;
        background: #fceeee;
        margin: 30px auto;
    }

    .sec02 .point01 .slider-box .slider {
        width: 82%;
        margin: 0 auto;
        padding: 6% 0;
    }

    .sec02 .point01 .slider-box .slider h5 {
        color: #ff8da9;
        font-size: 20px;
        margin: 10px 0 5px 0;
        font-weight: bold;
    }


    /*--------------------------------------------------
ポイント　共通
--------------------------------------------------*/

    .h5-bg {
        background: #ffc1cf;
        text-align: center;
        width: 100%;
        font-weight: bold;
        font-size: 14px;
        margin-top: 15px;
        margin-bottom: 10px;
    }

    .point01 .ttl,
    .point02 .ttl,
    .point03 .ttl {
        text-align: center;
        font-weight: bold;
        font-size: 4.2vw;
        margin-top: 6%;
        line-height: 1.5;
    }

    .point01 .ttl h4,
    .point01 .ttl span,
    .point02 .ttl h4,
    .point02 .ttl span,
    .point03 .ttl h4,
    .point03 .ttl span {
        font-weight: bold;
    }

    .point01 .ttl .t-main,
    .point02 .ttl .t-main,
    .point03 .ttl .t-main {
        color: #ff8da9;
        display: inline-block;
        font-weight: bold;
    }

    .font-size02 {
        font-size: 6.7vw;
    }


    .point01 .ttl h4 {
        text-align: center;
        margin: 0 auto;
        margin-bottom: 7%;
    }

    .point02 .ttl h4 {
        text-align: center;
        margin: 0 auto;
        margin-bottom: 6%;
        margin-top: 8%;
    }


    .point03 .ttl h4 {
        text-align: center;
        margin: 0 auto;
        margin-bottom: 7%;
        margin-top: 8%;
    }


    /*--------------------------------------------------
ページャー
--------------------------------------------------*/

    button {
        margin: 0;
        padding: 0;
        background: none;
        border: none;
        border-radius: 0;
        outline: none;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
    }

    .slide-arrow01 {
        position: absolute;
        top: 45%;
        cursor: pointer;
        z-index: 1000;
    }

    .prev-arrow01 {
        width: 20px;
        height: 20px;
        border-top: solid 2px #ff8da9;
        border-right: solid 2px #ff8da9;
        -webkit-transform: rotate(-135deg);
        transform: rotate(-135deg);
        position: absolute;
        left: -24px;
        display: none;
        margin-top: -20px;
    }

    .next-arrow01 {
        width: 20px;
        height: 20px;
        border-top: solid 2px #ff8da9;
        border-right: solid 2px #ff8da9;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        position: absolute;
        right: -24px;
        display: none;
        margin-top: -20px;
    }


    .slide-arrow02 {
        position: absolute;
        top: 25%;
        cursor: pointer;
        z-index: 1000;
    }

    .prev-arrow02 {
        width: 26px;
        height: 26px;
        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
        -webkit-transform: rotate(-135deg);
        transform: rotate(-135deg);
        position: absolute;
        left: 4%;
        display: none;
        margin-top: -20px;
        filter: drop-shadow(5px 0px 5px rgba(0, 0, 0, 1));
    }

    .next-arrow02 {
        width: 26px;
        height: 26px;
        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        position: absolute;
        right: 4%;
        display: none;
        filter: drop-shadow(3px 0px 5px rgba(0, 0, 0, 2));
        margin-top: -20px;
    }

    .slide-arrow03 {
        position: absolute;
        top: 45%;
        cursor: pointer;
        z-index: 1000;
    }

    .prev-arrow03 {
        width: 22px;
        height: 22px;
        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
        -webkit-transform: rotate(-135deg);
        transform: rotate(-135deg);
        position: absolute;
        left: 0;
        display: none;
        margin-top: -20px;
        filter: drop-shadow(5px 0px 5px rgba(0, 0, 0, 1));
    }

    .next-arrow03 {
        width: 22px;
        height: 22px;
        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        position: absolute;
        right: 0;
        display: none;
        filter: drop-shadow(3px 0px 5px rgba(0, 0, 0, 2));
        margin-top: -20px;
    }

    /*--------------------------------------------------
sec03
--------------------------------------------------*/

    .sec03 .sub01 {
        background: url(../img/sp_sec03-bg.gif) 0 0 no-repeat;
        background-size: cover;
        height: auto;
        width: 100%;
        margin: 0 auto;
        padding-bottom: 90px;

    }

    .sec03 .sub01 h3 {
        padding-top: 4%;
        padding-bottom: 4%;
    }

    .sec03 .sub01 p {
        width: 94%;
        margin: 0 auto;
    }

    .sec03 .sub01 .tx {
        margin-top: 15px;
    }

    .sec03 .slider-box .bg01 {
        background: #efefef;
        position: absolute;
        height: 100%;
        width: 100%;
        top: 90px;
        z-index: -1;
    }

    .sec03 .slider-box {
        position: relative;
        margin-top: -75px;
        padding-bottom: 30px;
    }

    .sec03 .slider-box .slider02 {
        width: 100%;
        margin: 0 auto;
    }

    .sec03 .slider-box .slider02 .image01 {
        margin: 0 6px;
    }

    .sec03 .slider-box .slider02 .image01 h5 {
        margin-bottom: 10px;
    }

    .sec03 .slider-box .slider02 .image01 .ls-ttl {
        width: 80%;
        text-align: center;
        margin: 0 auto;
        margin-top: 18px;
        margin-bottom: 14px;
    }

    .sec03 .slider-box .slider02 .image01 li {
        float: left;
        width: 49%;
        margin-bottom: 2%;
    }

    .sec03 .slider-box .slider02 .image01 li:nth-child(even) {
        margin-left: 2%;
    }


    /*--------------------------------------------------
sec04
--------------------------------------------------*/
    .sec04 {
        background: url(../img/sec04-img01.jpg) 0 0 no-repeat;
        background-size: 100% auto;
        height: 0;
        width: 100%;
        padding-top: 112.8%;
        margin: 0 auto;
    }

    /*--------------------------------------------------
sec05
--------------------------------------------------*/
    .sec05 {
        background: #fee7e9;
        padding-top: 5%;
    }

    .sec05 .point02 {
        background: #fff;
        width: 91%;
        margin: 0 auto;
        position: relative;
        margin-top: 7%;
        padding: 3% 4%;
    }

    .sec05 .point02 .pt01 {
        position: absolute;
        top: -1.5%;
        width: 40%;
        left: 0;
        right: 0;
        margin: 0 auto;
    }

    .sec05 .h5-bg {
        background: #ffc1cf;
        text-align: center;
        width: 100%;
        font-weight: bold;
        font-size: 16px;
        margin-top: 5px;
        margin-bottom: 10px;
    }

    .sec05 .text-img {
        margin-top: 12px;
    }

    .sec05 .sh-img {
        margin: 25px 0;
    }

    .sec05 .accordionlist {
        margin: 0;
        padding: 0;
    }

    .sec05 .accordion,
    .accordionbox {
        margin: 0;
        padding: 0;
        margin-top: 20px;
    }

    .sec05 .accordionlist dt {
        display: block;
        margin: 0 auto;
        height: 45px;
        position: relative;
        font-weight: bold;
        background: #fff;
        padding: 0;
        margin-bottom: 20px;
        border: solid 1px #ff8da9;
        border-radius: 10px 10px 10px 10px;
        box-sizing: border-box;
        box-shadow: 0px 3px 0px 0px #ffbece;
    }


    .sec05 .accordionlist dt .title {
        margin: 0 auto;
        font-size: 14px;
        color: #fff;
        max-width: 100%;
        margin: 0 auto;
        position: relative;
        font-weight: bold;
    }

    .sec05 .accordionlist dt .title p {
        text-align: center;
        width: 100%;
        position: relative;
        line-height: 45px;
        color: #ff8da9;
        font-weight: bold;
    }

    .sec05 .accordionlist dd {
        display: none;
        background: #fff;
        padding: 0;
        font-size: 16px;
        max-width: 100%;
        margin: 0 auto;
        padding-top: 5px;
        position: relative;
        padding-bottom: 20px;

    }

    .sec05 .accordionlist .open {
        display: block;
    }

    .sec05 .accordion_icon,
    .sec05 .accordion_icon span {
        display: inline-block;
        transition: all .4s;
        box-sizing: border-box;
    }

    .sec05 .accordion_icon {
        position: absolute;
        width: 40px;
        height: 40px;
        right: 0;
        top: 16px;
    }

    .sec05 .accordion_icon span {
        position: absolute;
        left: 8px;
        width: 40%;
        height: 2px;
        background-color: #ff8da9;
        border-radius: 0;
        -webkit-border-radius: 0;
        -ms-border-radius: 0;
        -moz-border-radius: 0;
        -o-border-radius: 0;
    }

    .accordion_icon span:nth-of-type(1) {
        top: 5px;
        transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        -o-transform: rotate(0deg);
    }

    .accordion_icon span:nth-of-type(2) {
        top: 5px;
        transform: rotate(90deg);
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
    }

    /*＋、－切り替え*/
    .accordion_icon.active span:nth-of-type(1) {
        display: none;
    }

    .accordion_icon.active span:nth-of-type(2) {
        top: 5px;
        transform: rotate(180deg);
        -webkit-transform: rotate(180deg);
        -moz-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
        -o-transform: rotate(180deg);
    }

    /*--------------------------------------------------
sec06
--------------------------------------------------*/
    .sec06 {
        background: #fee7e9;
        padding-top: 8%;
        padding-bottom: 12%;
    }

    .sec06 .point03 {
        background: #fff;
        width: 91%;
        margin: 0 auto;
        position: relative;
        margin-top: 7%;
        padding: 3% 4% 8% 4%;
    }

    .sec06 .point03 .pt01 {
        position: absolute;
        top: -1.5%;
        width: 40%;
        left: 0;
        right: 0;
        margin: 0 auto;
    }

    .sec06 .point03 .ttl .sub-t {
        text-align: left;
        font-size: 15px;
        font-weight: normal;
        margin-top: 14px;
    }

    .sec06 .point03 .f-box {
        margin-top: 20px;
    }

    .sec06 .point03 .f-box .image {
        width: 40%;
        float: left;
    }

    .sec06 .point03 .f-box .text {
        width: 56%;
        float: right;
        margin-top: 0;
        font-weight: bold;
    }

    .sec06 .point03 .f-box02 .image {
        width: 40%;
        float: right;
    }

    .sec06 .point03 .f-box02 .text {
        width: 56%;
        float: left;
        margin-top: 0;
        font-weight: bold;
    }

    .sec06 .point03 .f-box02 {
        margin-top: 20px;
    }

    .sec06 .point03 .f-box .text p {
        font-weight: bold;
        font-size: 14px;
        margin-top: 12px;
    }

    .color01 {
        color: #ff8da9;
        font-weight: bold;
    }

    /*--------------------------------------------------
sec07
--------------------------------------------------*/
    .sec07 {
        background: #fee7e9;
        padding-top: 13%;
        padding-bottom: 12%;
    }

    .sec07 .inner {
        position: relative;
        background: #fff;
        width: 92%;
        border: solid 2px #fc5f75;
        margin: 0 auto;
        box-sizing: border-box;
    }

    .sec07 .box {
        position: relative;
        background: #fff;
        padding: 3% 4% 4% 4%;
        margin: 0 auto;
        box-sizing: border-box;
    }

    .sec07 .box .pick {
        position: absolute;
        top: 0;
        margin: 0 auto;
        left: 0;
        right: 0;
        width: 25%;
        transform: translate(0, -50%);
    }

    .sec07 .box h3 {
        text-align: center;
        font-size: 16px;
        font-weight: bold;
        margin-top: 12px;
        line-height: 1.4;
    }

    .sec07 .box h3 span {
        color: #fc5f75;
        font-size: 22px;
        font-weight: bold;
    }

    .sec07 .ch-logo {
        width: 78%;
        text-align: center;
        margin: 0 auto;
        margin: 12px auto 20px;
    }

    .sec07 .box h4 {
        text-align: center;
        font-size: 16px;
        font-weight: bold;
        margin-top: 16px;
        line-height: 1.4;
    }

    .sec07 .box .sub01 {
        margin-top: 14px;
    }

    .sec07 .box .sub01 .bg02 {
        background: #fc5f75;
        color: #fff;
        text-align: center;
        position: relative;
        padding: 2px 0;
    }

    .sec07 .box .sub01 .bg02 p {
        font-weight: bold;
        font-style: oblique;
        font-size: 13px;
    }

    .sec07 .box .sub01 .bg02:after {
        content: '';
        width: 0;
        height: 0;
        position: absolute;
        bottom: -10px;
        border-style: solid;
        border-width: 10px 0px 0 14px;
        border-color: #fc5f75 transparent transparent transparent;
    }

    .sec07 .box .sub01 .n-text {
        text-align: center;
        width: 100%;
        margin-top: 14px;
    }

    .sec07 .box .sub01 .text {
        display: inline-block;
        font-size: 12px;
        vertical-align: middle;
        text-align: left;

    }

    .sec07 .box .sub01 .name {
        display: inline-block;
        font-size: 18px;
        vertical-align: middle;
        color: #851b2a;
        font-weight: bold;
    }

    .sec07 .inner .f-text {
        background: url(../img/sp_sec07-bg.gif) 0 0 no-repeat;
        background-size: cover;
        text-align: center;
        width: 100%;
    }

    .sec07 .inner .f-text p {
        font-size: 15px;
        font-weight: bold;
        padding: 10px 0;
        line-height: 1.3;
        display: inline-block;
    }

    .sec07 .inner .f-text p .font-size03 {
        font-size: 20px;
        font-weight: bold;
        display: inline-block;
    }

    .sec07 .inner .color02 {
        color: #fc5f75;
        font-weight: bold;
    }

    /*--------------------------------------------------
sec08
--------------------------------------------------*/
    .sec08 {
        margin-top: 10%;
        background: #fee7e9;
        padding-bottom: 12%;
    }

    .sec08 .sub01 {
        background: url(../img/sp_sec08-img01.jpg) 0 0 no-repeat;
        background-size: 100% auto;
        height: 0;
        width: 100%;
        padding-top: 40.26%;
        margin: 0 auto;
    }

    .sec08 .t-text {
        width: 92%;
        margin: 10px auto 0;
        font-size: 14px;
    }

    .sec08 .slider-box {
        width: 94%;
        margin: 0 auto;
        margin-top: 20px;

    }

    .sec08 .slider-box .image01 {
        border: solid 2px #ffc1cf;
        background: #fff;
        box-sizing: border-box;
    }

    .sec08 .slider-box .bg-img {
        width: 20%;
        text-align: center;
        margin: 0 auto;
    }

    .sec08 .slider-box .image01 h4 {
        width: 92%;
        margin: 0 auto;
        padding: 12px 0 8px 0;
    }

    .sec08 .slider-box .image01 .image {
        width: 90%;
        margin: 0 auto;
    }

    .sec08 .slider-box .image01 p {
        width: 90%;
        margin: 0 auto;
        padding: 10px 0 25px 0;
        font-size: 14px;
    }

    /*--------------------------------------------------
sec09
--------------------------------------------------*/
    .sec09 {
        margin-top: 12%;
        background: url(../img/sp_sec09-bg.gif) 0 0 no-repeat;
        background-size: cover;
        padding-bottom: 10%;
    }

    .sec09 .sub01 {
        background: url(../img/sp_sec09-img01.jpg) 0 0 no-repeat;
        background-size: 100% auto;
        height: 0;
        width: 100%;
        padding-top: 23.2%;
        margin: 0 auto;
    }

    /*20250424変更*/
    /* .sec09 .m-box {
        width: 94%;
        margin: 0 auto;
        margin-top: 8%;
    } */
    
    .sec09 .m-box {
        flex-direction: column;
        gap: 20px;
    }
    .sec09 .m-box .left,
    .sec09 .m-box .right {
        width: 100%;
        margin: 0 0 20px 0;
    }

    .sec09 .f-box {
        margin-top: 20px;
    }

    .sec09 .f-box .image {
        width: 46%;
        float: left;
    }

    .sec09 .f-box .text {
        width: 50%;
        float: right;
        margin-top: 0;
        font-weight: bold;
    }

    .sec09 .f-box02 .image {
        width: 46%;
        float: right;
    }

    .sec09 .f-box02 .text {
        width: 50%;
        float: left;
        margin-top: 0;
        font-weight: bold;
    }

    .sec09 .f-box02 {
        margin-top: 30px;
    }

    .sec09 .f-box .tx {
        font-size: 13px;
        margin-bottom: 2px;
    }

    .sec09 .f-box .tx01 {
        width: 79%;
        margin-top: 5px;
    }

    .sec09 .f-box02 .tx01 {
        width: 91%;
        margin-top: 5px;
    }

    .sec09 .f-box .tx02 {
        color: #c58ed6;
        font-size: 20px;
        font-weight: bold;
        line-height: 1.4;
    }

    .sec09 .f-box .tx03 {
        font-size: 13px;
        margin-top: 12px;
    }

    .sec09 .accordionlist {
        margin: 0;
        padding: 0;
    }

    .sec09 .accordion,
    .accordionbox {
        margin: 0;
        padding: 0;
        margin-top: 15px;
    }

    .sec09 .accordionlist dt {
        display: block;
        margin: 0 auto;
        height: 40px;
        position: relative;
        background: #bc86cc;
        padding: 0;
        width: 80%;
        margin-bottom: 10px;
        box-sizing: border-box;
    }

    .sec09 .accordionlist dt .title {
        margin: 0 auto;
        font-size: 14px;
        color: #fff;
        max-width: 80%;
        margin: 0 auto;
        position: relative;
        font-weight: bold;
    }

    .sec09 .accordionlist dt .title p {
        text-align: center;
        width: 100%;
        position: relative;
        line-height: 40px;
        color: #fff;
        font-weight: bold;
    }

    .sec09 .accordionlist dd {
        display: none;
        padding: 0;
        font-size: 13px;
        max-width: 100%;
        margin: 0 auto;
        padding-top: 5px;
        line-height: 1.8;
        position: relative;
        padding-bottom: 20px;

    }

    .sec09 .accordionlist .open {
        display: block;
    }

    .sec09 .accordion_icon,
    .sec09 .accordion_icon span {
        display: inline-block;
        transition: all .4s;
        box-sizing: border-box;
    }

    .sec09 .accordion_icon {
        position: absolute;
        width: 38px;
        height: 28px;
        right: 0;
        top: 15px;
    }

    .sec09 .accordion_icon span {
        position: absolute;
        left: 8px;
        width: 40%;
        height: 1px;
        background-color: #fff;
        border-radius: 0;
        -webkit-border-radius: 0;
        -ms-border-radius: 0;
        -moz-border-radius: 0;
        -o-border-radius: 0;
    }

    /*--------------------------------------------------
sec10
--------------------------------------------------*/
    .sec10 {
        margin-top: 10%;
        padding-bottom: 10%;
    }

    .sec10 .sub01 {
        background: url(../img/sec10-img01.jpg) 0 0 no-repeat;
        background-size: 100% auto;
        height: 0;
        width: 100%;
        padding-top: 17.33%;
        margin: 0 auto;
    }

    .sec10 .tokyo,
    .sec10 .osaka,
    .sec10 .nagoya,
    .sec10 .fukuoka {
        width: 94%;
        margin: 0 auto;
        margin-top: 20px;
    }

    .sec10 .osaka,
    .sec10 .nagoya,
    .sec10 .fukuoka {
        margin-top: 40px;
    }

    .sec10 .area {
        margin-top: 15px;
    }

    .sec10 .text {
        font-size: 12px;
        margin-top: 4px;
        border-bottom: 1px solid #48c2b5;
        padding-bottom: 12px;
        line-height: 1.8;
    }

    .sec10 .access {
        margin-top: 12px;
    }

    .sec10 .access p {
        font-size: 12px;
        margin-top: 3px;
    }

    .sec10 .a-box {
        background: #48c2b5;
        display: inline-block;
        color: #fff;
        font-size: 12px;
        font-weight: bold;
        padding: 0 5px;
        border-radius: 3px;
        /* CSS3草案 */
        -webkit-border-radius: 3px;
        /* Safari,Google Chrome用 */
        -moz-border-radius: 3px;
        /* Firefox用 */
    }

    img[src^="https://f.msgs.jp/t/dummy.gif"] {
        display: none;
    }

    /* floating CTA btn */
    .cvbtn {
        width: 80%;
        font-size: 40px;
        font-weight: bold;
        line-height: 2em;
        text-align: center;
        display: block;
        background-color: #333;
        background-image: url(../img/sp_btn-arrow-bk.png);
        background-position: left 6% center;
        background-repeat: no-repeat;
        background-size: 4% 60%;
    }

    #fixed_btns {
        width: 100%;
        position: fixed;
        bottom: 0;
        left: 0;
        background-color: rgba(24, 23, 3, 0.7);
        z-index: 3;
    }

    .fixed_btns-inner {
        max-width: 750px;
        margin: 0 auto;
        padding: 1rem;
        display: flex;
        align-items: flex-start;
        justify-content: space-around;
    }

    .fixed_btns-inner-btn.cvbtn {
        color: #000;
        border-radius: 14px;
        background-color: #ffea00;
    }

    .fixed_btns-inner-btn-1-small {
        margin: 0 -0.4em;
        font-size: 30px;
    }

    @media (max-width: 750px) {
        .cvbtn {
            font-size: calc(40 / 750 * 100vw);
        }

        .fixed_btns-inner-btn-1-small {
            font-size: calc(30 / 750 * 100vw);
        }
    }

    /*---------------
バッジ追加>
2022.9.1
---------------*/
    .mv {
        position: relative;
        z-index: -1;
    }

    .nagoya_area {
        position: absolute;
        bottom: 15vw;
        left: 0vw;
        width: 100%;
        height: auto;
    }

    .nagoya_area img {
        display: inline-block;
        width: 34vw;
    }

    .nagoya_area img+img {
        margin-left: -3vw !important;
    }

    #vantan-header p img {
        display: inline;
    }

    #fixed_btns {
        opacity: 1;
        transition: .4s;
    }


    #fixed_btns.js-hide {
        opacity: 0;
        transition: .4s;
    }

}

@media screen and (max-width: 767px) {
    .isSp {
        display: block;
    }

    .isPc {
        display: none;
    }
}

@media screen and (min-width: 768px) {
    /*20250424変更*/
    /* .isPc {
        display: block;
    }

    .isSp {
        display: none;
    } */

    .isSp { display: none !important; }
    .isPc { display: block !important; }
    /* 重要→ */
    .m-box.isSp { display: none !important; }
    .m-box.isPc { display: flex !important; }
}

/* 20250114追加 */
.weekcourse {
    background: #fee7e9;
    padding: 70px 0;
}

.weekcourse .inner {
    width: 90%;
    margin: 0 auto;
    max-width: 960px;
    margin-top: 15px;
    position: relative;
}

.weekcourse .weekcourse-box {
    background: #fff;
    padding: 60px 10%;
}

.weekcourse .weekcourse-deco {
    position: absolute;
    top: -30px;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
}

.weekcourse .weekcourse-deco img {
    width: 100%;
}

.weekcourse .weekcourse-ttl {
    font-size: 32px;
    font-weight: bold;
    text-align: center;
    line-height: 1.4;
    margin-bottom: 30px;
}

.weekcourse .weekcourse-ttl .txt-pink {
    color: #FF8DA9;
    font-weight: bold;
    font-size: 50px;
}

.weekcourse .weekcourse-img {
    text-align: center;
    margin-bottom: 20px;
}

.weekcourse .weekcourse-img img {
    width: 100%;
}

.weekcourse .tx {
    font-size: 20px;
    margin-bottom: 40px;
}

.weekcourse .weekcourse-recommend {
    background: #fee7e9;
    padding: 40px;
}

.weekcourse h5 {
    color: #FF8DA9;
    text-align: center;
    margin-bottom: 20px;
}

.weekcourse h5 span {
    font-size: 30px;
    font-weight: bold;
    background: linear-gradient(transparent 60%, #FFFB99 60%);
}

.weekcourse .weekcourse-recommend-list {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 30px;
}

.weekcourse .weekcourse-recommend-list li {
    text-align: center;
}

.weekcourse .weekcourse-recommend-img {
    margin-bottom: 10px;
}

.weekcourse .weekcourse-recommend-tx {
    font-size: 23px;
}

@media screen and (max-width: 767px) {
    .weekcourse {
        background: #fee7e9;
        padding: 40px 0;
    }
    
    .weekcourse .inner {
        width: 90%;
        margin: 0 auto;
        max-width: 90%;
        margin-top: 15px;
    }
    
    .weekcourse .weekcourse-box {
        background: #fff;
        padding: 30px 5% 20px;
    }
    
    .weekcourse .weekcourse-deco {
        /* position: absolute; */
        top: -20px;
        /* left: 50%; */
        /* transform: translateX(-50%); */
        /* text-align: center; */
        width: 250px;
    }
    
    .weekcourse .weekcourse-ttl {
        font-size: 18px;
        margin-bottom: 20px;
    }
    
    .weekcourse .weekcourse-ttl .txt-pink {
        font-size: 25px;
    }
    
    .weekcourse .weekcourse-img {
        text-align: center;
        margin-bottom: 10px;
    }
    
    .weekcourse .tx {
        font-size: 14px;
        margin-bottom: 20px;
    }
    
    .weekcourse .weekcourse-recommend {
        background: #fee7e9;
        padding: 20px 15px;
    }
    
    .weekcourse h5 {
        margin-bottom: 15px;
    }
    
    .weekcourse h5 span {
        font-size: 18px;
    }
    
    .weekcourse .weekcourse-recommend-list {
        display: grid;
        grid-template-columns: repeat(3,1fr);
        gap: 10px;
    }
    
    .weekcourse .weekcourse-recommend-list li {
        text-align: center;
    }
    
    .weekcourse .weekcourse-recommend-img {
        margin-bottom: 10px;
    }
    
    .weekcourse .weekcourse-recommend-tx {
        font-size: 12px;
        line-height: 1.3;
    }
}

/* 20250415追加ここから */
section.collaborate img {
    width: 100%;
}

@media screen and (min-width: 768px) {
    .mv .inner .fvPC img {
        width: 100%;
    }
    
    section.mv .inner .collab_banner {
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 5;
        max-width: 1670px;
        margin: 0 auto;
    }
    section.mv .inner .collab_banner img {
        width: 100%;
    }

    section.collaborate {
        background: url(../img/collab_bg.png);
        margin: 0 auto 60px;
        padding: 100px 0;
    }
    section.collaborate .image {
        max-width: 1680px;
        width: 84%;
        margin: 0 auto;
    }
}

@media screen and (max-width: 767px) {
    section.collaborate {
        background: url(../img/collab_bg_sp.png);
        margin: 0 auto 30px ;
    }
}
/* 20250415追加ここまで */
/* 20250424追加ここから */
@media (max-width: 1300px){
    .mv, .sec, .offer, nav {
        max-width: 100%;
    }
}

@media screen and (max-width: 960px) {
    .sec02 .point01,
    .sec05 .point02,
    .sec06 .point03 {
        padding-left: 5vw;
        padding-right: 5vw;  /* 横幅が狭まる */
        padding-top: 40px;
        padding-bottom: 40px;
    }

    .sec08 .f-box {
        max-width: 98vw;
        gap: 12px;
    }
}

@media screen and (max-width: 767px) {
    .sec02 .point01,
    .sec05 .point02,
    .sec06 .point03 {
        padding-left: 3vw;
        padding-right: 3vw;
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .sec08 .f-box {
        flex-direction: column;
        gap: 20px;
    }
}

@media screen and (max-width: 900px) {
    .sec09 .m-box {
        max-width: 100%;
        gap: 15px;
    }
}
/* 20250424追加ここまで */