@media screen and (max-width: 680px) {
    @font-face {
    font-family: 'Yu Gothic';
    src: url('fonts/yu-gothic-light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
    }
    
    @font-face {
    font-family: 'Yu Gothic';
    src: url('fonts/yu-gothic-regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
    }
    
    @font-face {
    font-family: 'Yu Gothic';
    src: url('fonts/yu-gothic-medium.otf') format('opentype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
    }
    
    @font-face {
    font-family: 'Yu Gothic';
    src: url('fonts/yu-gothic-bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
    }
    
    :root {
    --gap_s: 4%;
    --gap_m: 10%;
    --gap_l: 16%;
    --gap_xl: 20%;
    --1.471vw: 59%;
    }
    
    html,
    body {
    margin: 0;
    padding: 0;
    }
    
    body * {
    box-sizing: border-box;
    }
    
    img {
    max-width: 100%;
    vertical-align: bottom;
    display: block;
    height: auto;
    }
    
    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    p {
    margin: 0;
    }
    
    body {
    font-size: 2.353vw;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3″", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
    font-weight: 400;
    font-style: normal;
    line-height: 1.375;
    color: #3a4044;
    max-width: 100VW;
    overflow-x: hidden;
    }
    
    a {
    transition: opacity 0.3s ease;
    }
    
    a:hover {
    opacity: 0.7;
    }
    
    body .mb0 {
    margin-bottom: 0;
    }
    
    body .mb10 {
    margin-bottom: 1.471vw;
    }
    
    body .mb20 {
    margin-bottom: 2.941vw;
    }
    
    body .mb30 {
    margin-bottom: 4.412vw;
    }
    
    body .mb40 {
    margin-bottom: 5.882vw;
    }
    
    .font-mont {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
    }
    
    .fs32 {
    font-size: 4.706vw;
    }
    
    .wrap {
    background: url(image/bg-body.webp) no-repeat center bottom;
    background-size: cover;
    background-attachment: fixed;
    }
    
    .wrap article {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 100vw;
    margin: 0 auto;
    background: white;
    }
    
    .section_content {
        position:relative;
        container-type: inline-size;
    }
    .mv{
        position:relative;
    
        h1{
            display:flex;
            align-items:flex-start;
            position:absolute;
            top:6.618vw;
            right:1.471vw;
            font-weight:400;
            
            .yoko{
                margin-right:-2.206vw;
                font-size:5.882vw;
            }
            .tate{
                font-size:17.647vw;
                -webkit-writing-mode: vertical-rl;
                -ms-writing-mode: tb-rl;
                writing-mode: vertical-rl;
                letter-spacing:0.735vw;
    
                .sm{
                    font-size:11.765vw;
                }
            }
        }
        h2{
            position:absolute;
            bottom:30.882vw;
            left:0;
            width:100%;
            font-size:3.824vw;
            font-weight:400;
            text-align:center;
            color:#555e63;
        }
        p{
            position:absolute;
            bottom:2.941vw;
            right:4.412vw;
            font-size:1.765vw;
            font-weight:400;
            color:#555e63;
        }
    }
    
    .section.section_hero {
    position: relative;
    }
    
    .section.section_cta {
        position: relative;
        padding:10.294vw 5.882vw;
        background-image:url('image/cta_content_back.png');
        background-position:center;
        background-repeat:no-repeat;
        background-size:cover;
    }
    .cta_content{
        padding:1.176vw;
        background:rgba(255,255,255,0.5);
        border:0.735vw solid #f9f9f9;
        box-shadow:0 0 1.471vw #dddddd,
            0 0 1.471vw #dddddd,
            0 0 1.471vw #dddddd,
            0 0 1.471vw #dddddd;
    
        .item_area{
            margin-bottom:14.706vw;
    
            .headline{
                margin-bottom:7.353vw;
                background-image:url('image/item_area_head.png');
                background-position:center;
                background-repeat:no-repeat;
                background-size:cover;
    
                h2{
                    padding:4.412vw 0;
                    font-size:4.412vw;
                    text-align:center;
                    color:#ffffff;
                }
            }
            .container{
                .item_box{
                    display:grid;
                    grid-template-columns:22.059vw 1fr;
                    gap:7.353vw;
    
                    .img{
                        max-height:39.706vw;
                        padding-left:7.353vw;
    
                        img{
                            width:100%;
                            height:100%;
                            object-fit:contain;
                        }
                    }
                    .text{
                        h3{
                            margin-bottom:4.412vw;
                            font-size:5vw;
                            font-weight:400;
    
                            .back{
                                display:inline-block;
                                margin-bottom:0.735vw;
                                padding:0.294vw 1.176vw;
                                background: linear-gradient(#f5f7fa, #c3cfe2);
                            }
                            .sm{
                                font-size:2.353vw;
                                vertical-align:super;
                            }
                        }
                        p{
                            margin-bottom:4.412vw;
                            font-size:4.118vw;
                            font-weight:700;
                        }
                        .note{
                            font-size:2.059vw;
                            text-align:right;
                        }
                    }
                }
                .slash{
                    margin:8.824vw 0;
                    padding:0 2.941vw;
                }
            }
        }
        .select_area{
            background-image:url('image/select_area_back.png');
            background-position:center;
            background-repeat:no-repeat;
            background-size:cover;
            border:0.441vw solid #f3a7a3;
            border-top-left-radius:1.471vw;
            border-top-right-radius:1.471vw;
            overflow:hidden;
            
            .headline{
                margin-bottom:7.353vw;
                background-image:url('image/select_area_head.png');
                background-position:center;
                background-repeat:no-repeat;
                background-size:cover;
    
                h2{
                    padding:4.412vw 0;
                    font-size:5.882vw;
                    text-align:center;
                    color:#ffffff;
                    letter-spacing:0.735vw;
    
                    .lg{
                        font-size:7.353vw;
                    }
                }
            }
            .container{
                .box{
                    position:relative;
                    padding-bottom:2.941vw;
    
                    .price{
                        display:flex;
                        align-items:center;
                        gap:0.735vw;
                        padding-left:7.353vw;
    
                        p{
                            display:flex;
                            align-items:baseline;
                            font-size:10.294vw;
                            font-weight:700;
    
                            .sm{
                                font-size:7.353vw;
                            }
                            .tate{
                                transform:translateY(2.059vw);
                                font-size:2.353vw;
                                -webkit-writing-mode: vertical-rl;
                                -ms-writing-mode: tb-rl;
                                writing-mode: vertical-rl;
                            }
                        }
                        .free{
                            width:10vw;
                        }
                    }
                    .item{
                        position:absolute;
                        bottom:-1.471vw;
                        right:2.941vw;
                        width:17.647vw;
                    }
                }
                .link{
                    display:grid;
                    grid-template-columns:repeat(2, 1fr);
                    gap:1.471vw;
                    padding:0 2.941vw 4.412vw;
    
                    a{
                        img{
                            width:100%;
                        }
                        &.is-disabled{
                            pointer-events: none;
                            filter: grayscale(100%);
                            opacity: 0.5;
                        }
                    }
                    .lg{
                        grid-column:1/3;
                    }
                }
            }
        }
    }
    
    .section.section_cta .btn_area {
    position: absolute;
    left: 50%;
    bottom: 8%;
    transform: translateX(-50%);
    width: 80%;
    }
    
    .section.section_cta .btn_area .btn_mini {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
    margin-top: 2%;
    gap: 1%;
    }
    
    .section.section_cta .btn_area .btn_mini a.is-disabled {
    pointer-events: none;
    filter: grayscale(100%);
    opacity: 0.5;
    }
    
    .section.section_cta .btn_area .btn_mini li {
    display: block;
    width: 49%;
    padding: 0 1%;
    }
    
    .fix_cta {
    /* min-height: 28.529vw;
    container-type: inline-size; */
    }
    
    .fix_cta a {
    position: fixed;
    width: 100%;
    max-width: 100vw;
    bottom: -29.412vw;
    transition: 0.2s all;
    z-index: 100;
    display: block;
    font-size: clamp(3.529vw, 6.6cqw, 6.618vw);
    color: white;
    font-weight: 700;
    text-align: center;
    padding: 8.824vw 14.706vw;
    background: url(image/btn-fixed-bg.webp) no-repeat center;
    background-size: contain;
    min-height: 28.529vw;
    text-decoration: none;
    opacity: 1;
    }
    
    .fix_cta.fixed a {
    position: fixed;
    bottom: 0;
    }
    
    
    .section_staff {
    background: url(image/staff-section-bg.png) no-repeat center;
    background-size: cover;
    padding: 6.618vw 0 8.088vw;
    }
    
    .section_staff h3 {
    font-size: 2.794vw;
    color: #d8c5b4;
    margin-bottom: 1.765vw;
    text-align: center;
    font-weight: 300;
    }
    
    .section_staff h4 {
    font-size: 5.294vw;
    color: #43484c;
    text-align: center;
    margin-bottom: 5.147vw;
    font-weight: 700;
    }
    
    .section_staff .voice-1 {
    font-size: clamp(1.765vw, 3.38cqw, 20.441vw);
    color: #555e63;
    padding: 5.882vw 8.824vw 5.882vw 32.353vw;
    background: url(image/voice-1-bg.png) no-repeat left;
    background-size: 100%;
    margin: 0 0 2.941vw;
    min-height: 27.941vw;
    }
    
    .section_staff .voice-2 {
    font-size: clamp(1.765vw, 3.38cqw, 20.441vw);
    color: #555e63;
    padding: 3.676vw 25.735vw 3.676vw 8.824vw;
    background: url(image/voice-2-bg.png) no-repeat right 1.471vw center;
    background-size: contain;
    margin: 0 0 1.471vw;
    min-height: 29.412vw;
    letter-spacing: -0.294vw;
    }
    
    .voice-1 u,
    .voice-2 u {
    color: #ed8792;
    font-weight: 700;
    }
    
    .section .note {
    font-size: 1.912vw;
    text-align: right;
    padding: 0 1.471vw;
    }
    
    .section_product .product-color {
    display: flex;
    flex-wrap: nowrap;
    }
    
    .product-color .color-item {
    flex: 1;
    position: relative;
    }
    
    .product-color .color-item h3 {
    font-size: 3.382vw;
    text-align: center;
    margin: 0;
    position: absolute;
    bottom: 11.029vw;
    left: 0;
    right: 0;
    }
    
    .product-color .color-item.blue h3 {
    color: #3d7b92;
    }
    
    .product-color .color-item.pink h3 {
    color: #b75d77;
    }
    
    .product-color .color-item.white h3 {
    color: #484848;
    }
    
    .section_point {
    background: url(image/point-bg.webp) no-repeat center;
    background-size: cover;
    padding: 10.294vw 1.471vw 7.353vw;
    }
    
    .section_point .note {
    font-size: 2.353vw;
    }
    
    .point-title-4 {
    max-width: 66%;
    margin: 0 auto;
    }
    
    .point-btn-wrap {
    display: flex;
    flex-wrap: wrap;
    }
    
    .point-btn-wrap .point-btn {
        position:relative;
        width: 50%;
    
        p{
            position:absolute;
            bottom:6.618vw;
            left:0;
            width:100%;
            font-size:4.412vw;
            font-weight:700;
            text-align:center;
            color:#61666d;
            z-index:1;
    
            .sm{
                display:inline-block;
                font-size:3.529vw;
                font-weight:400;
            }
            .kome{
                display:inline-block;
                font-size:2.941vw;
                font-weight:400;
                transform:translateY(-0.735vw);
            }
        }
    }
    
    .point-btn img {
    max-width: calc(100% + 2.941vw);
    transform: translateX(-0.735vw);
    }
    
    .point-btn:nth-child(even) img {
    transform: translateX(-1.471vw);
    }
    
    .section_point01,
    .section_point02,
    .section_point03,
    .section_point04 {
    background: url(image/point-bg-2.png);
    background-size: cover;
    padding: 0 3.676vw 11.029vw;
    }
    
    .section_point01 {
    padding: 3.676vw 3.676vw 11.029vw;
    }
    
    .section_point01 .section_content,
    .section_point02 .section_content,
    .section_point03 .section_content,
    .section_point04 .section_content {
    background: white;
    padding-bottom: 11.765vw;
    }
    
    .point-title {
    background: url(image/point-title-bg.png) right top no-repeat;
    background-size: 100% 100%;
    padding: 1.176vw 2.206vw;
    display: flex;
    align-items: center;
    gap: 4.412vw;
    color: white;
    position: relative;
    margin-bottom: 4.412vw;
    }
    
    .point-title img {
    max-width: 20%;
    }
    
    .point-title h2 {
        font-size: 5.588vw;
    
        .sm{
            display:inline-block;
            font-size:2.353vw;
            font-weight:400;
            transform:translateY(-2.647vw);
        }
    }
    
    .point-title p {
    font-size: 2.206vw;
    position: absolute;
    bottom: 1.176vw;
    right: 10.294vw;
    }
    
    .title-red {
    font-size: 4.412vw;
    text-align: center;
    color: #484848;
    font-weight: 400;
    margin-bottom: 2.941vw;
    
    }
    
    .title-red b {
    font-weight: 700;
    }
    
    .title-red span {
    font-size: 6.029vw;
    font-weight: 700;
    color: white;
    background: linear-gradient(-53deg, #f17a88, #f19a9c);
    display: inline-block;
    line-height: 1.2;
    padding: 0 1.176vw;
    }
    
    .title-red span.red {
    color: #f47282;
    background: none;
    padding: 0;
    }
    
    .point-image {
    max-width: calc(100% - 8.824vw);
    margin: 0 auto 12.353vw;
    }
    
    .tips-box {
    background: url(image/point-tip-bg-content.png) no-repeat top;
    background-size: 100% 100%;
    padding: 5.882vw 4.412vw 0.735vw;
    min-height: 81.618vw;
    max-width: calc(100% - 8.824vw);
    margin: 0 auto 1.471vw;
    position: relative;
    }
    
    .tips-box h4 {
    background: url(image/point-tip-bg.png) no-repeat right;
    background-size: contain;
    color: white;
    font-size: 2.794vw;
    font-weight: 400;
    position: absolute;
    left: -4.412vw;
    top: -2.647vw;
    min-width: 20vw;
    height: 6.029vw;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    }
    
    .tips-box h3 {
    font-size: 5vw;
    font-weight: 400;
    text-align: center;
    margin-bottom: 2.206vw;
    }
    
    .tips-box h3 b {
    font-weight: 700;
    color: #94b9c8;
    }
    
    .tips-box h3 span {
    font-size: 4.265vw;
    }
    
    .tips-box .tips-text {
    width: 55.882vw;
    margin: 0 auto;
    }
    
    .tips-box .text{
        font-size:4.412vw;
        text-align:center;
    
        .back{
            display:inline-block;
            margin-bottom:0.735vw;
            border-bottom:0.294vw dotted #94b9c8;
        }
        .blue{
            color:#94b9c8;
        }
        .sm{
            display:inline-block;
            font-size:2.941vw;
            transform:translateY(-1.471vw);
        }
        .maru{
            letter-spacing:-2.941vw;
        }
    }
    
    .tips-box2{
        position:relative;
    
        .text{
            display:flex;
            flex-direction:column;
            align-items:flex-start;
            position:absolute;
            top:11.029vw;
            left:8.824vw;
    
            h4{
                margin-bottom: 2.941vw;
                font-size: 5vw;
                font-weight: 400;
            }
            p{
                font-size:2.647vw;
    
                span{
                    display:block;
                    margin-bottom:0.735vw;
                    border-bottom:0.294vw dotted #94b9c8;
                }
            }
        }
    }
    
    .section_point01 .note {
    font-size: 2.059vw;
    padding: 0 5.882vw;
    }
    
    .tips-img2 {
    padding-right: 2.647vw;
    }
    
    .p4img2 {
    width: 63.235vw;
    margin: 0 auto;
    }
    
    .section_use {
    padding-top: 6.618vw;
    padding-bottom: 29.412vw;
    }
    
    .use-title {
        margin-bottom: 11.765vw;
    }
    
    .video_area{
        position:relative;
        padding:0 0.735vw;
        background-image:url('image/video_back.png');
        background-position:center;
        background-repeat:no-repeat;
        background-size:cover;
    }
    .video_frame{
        width: 80%;
        margin:11.765vw auto 0;
        aspect-ratio: 9 / 16;
        overflow: hidden;
    
        iframe{
            aspect-ratio: 9 / 16 !important;
            width: auto !important;
            height: auto !important;
            max-inline-size: 100%;
            max-block-size: 100%;
        }
    }
    
    .section_price {
    background: url(image/lp10-bg.webp) no-repeat center;
    background-size: cover;
    padding: 5.882vw 5.147vw 7.353vw;
    }
    
    .osusume_area{
        .title{
            text-align:center;
    
            p{
                display:inline-block;
                padding-bottom:0.294vw;
                margin-bottom:1.176vw;
                font-size:2.941vw;
                color:#535353;
                border-bottom:0.294vw dotted #e9b8c2;
            }
            h2{
                font-size:4.412vw;
            }
        }
        .box{
            position:relative;
    
            > img{
                width:100%;
            }
            .text{
                position:absolute;
                top:25%;
                left:40%;
                color:#484848;
    
                h3{
                    margin-bottom:5.882vw;
                    font-size:4.412vw;
    
                    &:before{
                        content:'『';
                        color:#ca698d;
                        margin-left: -5.147vw;
                        letter-spacing: -0.735vw;
                    }
                    &:after{
                        content:'』';
                        color:#ca698d;
                    }
                    .sm{
                        display:inline-block;
                        font-size:2.941vw;
                        transform:translateY(-1.471vw);
                    }
                }
                > p{
                    margin-bottom:2.941vw;
                    font-size:3.529vw;
                }
                .price{
                    position:relative;
    
                    p{
                        font-size:3.529vw;
                    }
                    .kakaku{
                        font-size:4.412vw;
                        font-weight:700;
    
                        .sm{
                            font-size:2.941vw;
                        }
                    }
                    .note{
                        position:absolute;
                        bottom:1.176vw;
                        right:0;
                        font-size:2.353vw;
                    }
                }
            }
        }
    }
    
    .lp10-title {
    width: 66.765vw;
    margin: 0 auto;
    }
    
    .lp10-title2 {
    width: 70.588vw;
    margin: 0 auto 2.353vw;
    }
    
    .lp10-btn-wrap {
    padding: 0 2.647vw;
    }
    
    .lp10-btn-wrap a {
    display: block;
    margin-bottom: 2.353vw;
    }
    
    .section.faq {
    background: #f2f3f5;
    padding: 11.765vw 3.529vw 0;
    }
    
    .faq-item {
    border-bottom: 0.147vw solid #616a6e;
    background: #fcfdfd;
    border-radius: 0.735vw 0.735vw 0 0;
    overflow: hidden;
    transition: all 0.3s ease;
    max-height: 15.294vw;
    }
    
    .faq-item.active {
    max-height: min-content;
    }
    
    .faq-toggle {
    width: 100%;
    border: none;
    background: url(image/Q&A_title.png) no-repeat left top / 32%, white;
    padding: 3.529vw 2.059vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    }
    
    .faq-title {
    font-size: 4.265vw;
    }
    
    .faq-icon {
    width: 8.235vw;
    height: 8.235vw;
    background: url("image/plus.png") no-repeat center / contain;
    }
    
    .faq-item.active .faq-icon {
    background: url("image/minus.png") no-repeat center / contain;
    }
    
    .faq-content {
    overflow: hidden;
    background: #fff;
    box-sizing: border-box;
    padding: 0.735vw 2.059vw 8.824vw;
    }
    
    .qa {
    margin-bottom: 2.941vw;
    }
    
    .qa-q,
    .qa-a {
    display: flex;
    gap: 2.353vw;
    align-items: flex-start;
    padding: 1.471vw 2.941vw;
    }
    
    .qa-q,
    .info-text h4 {
    background: linear-gradient(to bottom, #fafafa, #e5ecf2);
    border-radius: 5.882vw 0 0 5.882vw;
    font-size: 3.676vw;
    font-weight: 700;
    color: #3a4044;
    align-items: center;
    min-height: 10.294vw;
    }
    
    .info-text h4 {
    padding: 1.471vw 5.147vw;
    display: flex;
    align-items: center;
    }
    
    .qa-a {
    font-size: 3.382vw;
    }
    
    .icon-q {
    width: 4.118vw;
    height: 4.118vw;
    background: url("image/Q.png") no-repeat center / contain;
    flex-shrink: 0;
    }
    
    .icon-a {
    width: 4.118vw;
    height: 4.118vw;
    background: url("image/A.png") no-repeat center / contain;
    flex-shrink: 0;
    }
    
    
    .spec .faq-toggle {
    background: url(image/SPEC.png) no-repeat left top / 32%, white;
    }
    
    .warning .faq-toggle {
    background: url(image/WARNINGS.png) no-repeat left top / 67%, white;
    }
    
    .info-content {
    padding: 2.941vw 5.882vw 0;
    }
    
    .info-content.spec-list {
    padding: 2.059vw;
    margin-bottom: 7.353vw;
    }
    
    .spec-list dl {
    margin: 0;
    }
    
    .spec-item {
    display: flex;
    border-bottom: 0.147vw solid #eaeff4;
    font-weight: 700;
    }
    
    .spec-item dt {
    width: 27%;
    padding: 1.765vw;
    }
    
    .spec-item dd {
    width: 73%;
    padding: 1.765vw;
    margin: 0;
    }
    
    .spec-item small {
    display: block;
    font-size: 2.5vw;
    font-weight: 400;
    }
    
    .section.warning {
    padding-bottom: 17.647vw;
    }
    
    .warning .info-text h4 {
    font-size: 3.529vw;
    }
    
    .warning .faq-content .info-text:not(:last-child) {
    margin-bottom: 5.882vw;
    }
    
    .warning .faq-content .info-text p:not(:last-child) {
    margin-bottom: 2.941vw;
    }
    
    .wrapper {
    max-width: 97.059vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    }
    
    #guide,
    #footer {
    font-family: "ヒラギノ角ゴ ProN W3″", "Hiragino Kaku Gothic ProN", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "メイリオ", Meiryo, sans-serif;
    }
    
    .guide-link {
    text-align: center;
    }
    
    a.guide-link__page {
    color: #96070b;
    font-size: 1.5rem;
    text-decoration: underline;
    text-underline-offset: 0.882vw;
    }
    
    #guide.container {
    padding: var(--gap_m) 4.412vw 4.412vw;
    background: #FFF;
    color: #333;
    }
    
    #guide h2 {
    font-size: min(7.7vw, 212%);
    text-align: center;
    line-height: 0.8;
    margin-bottom: 4.412vw;
    font-weight: 500;
    }
    
    #guide h2 span {
    font-size: 2.353vw;
    letter-spacing: 0.294vw;
    }
    
    #guide h3 {
    font-size: min(3.6vw, 118%);
    border: 0.147vw solid #333;
    border-radius: 0.735vw;
    margin-top: 2.941vw;
    padding: 0.735vw;
    min-height: 10.294vw;
    line-height: 1.5;
    text-align: center;
    font-weight: 500;
    box-sizing: border-box;
    position: relative;
    }
    
    #guide h3.one-line {
    display: flex;
    align-items: center;
    justify-content: center;
    }
    
    #guide h3.link::after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    transform: translateY(-48%);
    width: 3.676vw;
    height: 3.676vw;
    right: 2.206vw;
    background: url(image/external_link-icon.png);
    background-size: cover;
    }
    
    #guide h3 a {
    color: #333;
    }
    
    #guide p {
    font-size: 100%;
    padding: 0.735vw 0;
    }
    
    #guide .link_underline {
    text-decoration: underline;
    }
    
    #footer {
    font-size: min(3.2vw, 94%);
    background: #fff;
    padding: 0 2.206vw;
    }
    
    #footer .footer_menu {
    padding: 2.206vw 0;
    border-top: 0.294vw solid #ccc;
    border-bottom: 0.294vw solid #ccc;
    text-align: center;
    }
    
    #footer .footer_menu a {
    display: inline-block;
    padding: 0.441vw 0;
    vertical-align: middle;
    color: #333;
    text-decoration: none;
    }
    
    #footer .footer_menu a:after {
    content: "";
    display: inline-block;
    margin: 0 0.735vw 0 1.471vw;
    width: 0.147vw;
    height: 2.206vw;
    background: #333;
    transform: translateY(0.294vw);
    }
    
    #footer .footer_menu a:last-child:after {
    display: none;
    }
    
    #footer .copyright {
    font-size: 90%;
    color: #333;
    }
    
    .copyright .wrapper {
    padding: 5% 0;
    }
    
    .fix_contents {
    display: flex;
    justify-content: space-between;
    position: fixed;
    align-items: flex-end;
    z-index: 1;
    bottom: 5%;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    max-width: 211.765vw;
    }
    
    .section_fixleft {
        display: none;
    width: 61.765vw;
    padding-right: 6.9%;
    font-size: min(3vw, 20.147vw);
    color: #3e4448;
    container-type: inline-size;
    }
    
    .section_fixleft .media_item {
    text-align: center;
    margin-bottom: 7.353vw;
    color: #555e63;
    }
    
    .section_fixleft .media_item h3 {
    font-size: clamp(10.441vw, 6cqw, 2.941vw);
    margin-bottom: 2.059vw;
    }
    
    .section_fixleft .media_item h3 small {
    font-size: 1.324vw;
    letter-spacing: -0.265vw;
    position: relative;
    bottom: 1.471vw;
    font-family: "ヒラギノ角ゴ ProN W3″", "Hiragino Kaku Gothic ProN", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "メイリオ", Meiryo, sans-serif;
    }
    
    .section_fixleft .media_item h2 {
    font-size: clamp(10.735vw, 7cqw, 20.441vw);
    margin-bottom: 2.353vw;
    letter-spacing: -0.147vw;
    }
    
    .section_fixleft .media_item p {
    font-size: 1.471vw;
    color: black;
    }
    
    .media_item img {
    display: inline-block;
    }
    
    .section_fixleft h2 {
    color: #555e63;
    font-size: min(3vw, 2.941vw);
    }
    
    .section_subheadline {
    font-weight: 500;
    }
    
    .section_fixleft .fix_menulists {
    list-style: none;
    padding: 0;
    margin: 2.353vw 0 0;
    }
    
    .section_fixleft .fix_menulists li {
    margin-top: 0.735vw;
    }
    
    .section_fixleft .fix_menulists li a {
    padding: 0.425em;
    border: 0.441vw solid #fff;
    background-color: rgba(255, 244, 246, .5);
    display: block;
    font-weight: 700;
    color: #555e63;
    text-decoration: none;
    }
    
    .section_fixright {
        display: none;
    width: 61.765vw;
    padding-left: 6.9%;
    container-type: inline-size;
    }
    
    .section_fixright img {
    height: auto;
    }
    
    .section_fixright>img,
    .section_fixright a img {
    margin-top: var(--gap_s);
    }
    
    .section_fixright .media_qr {
    /* width: -moz-max-content;
    width: max-content;
    border: 0.147vw solid #3e4448; */
    margin-top: var(--gap_s);
    }
    
    .right-btn-1 {
    margin-bottom: 8.088vw;
    display: block;
    }
    
    .mobile-title {
    display: flex;
    align-items: center;
    gap: 1.765vw
    }
    
    .mobile-title h3 {
    font-size: clamp(2.941vw, 9.7cqw, 30.147vw);
    font-weight: 400;
    font-family: "ヒラギノ角ゴ ProN W3″", "Hiragino Kaku Gothic ProN", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "メイリオ", Meiryo, sans-serif;
    letter-spacing: -0.441vw;
    color: #555e63;
    }
}