
.site-header{
    position: fixed;
    height: var(--site_header_height);
}
.site-body{
    padding-top: 0;
    & h2{
        font-size: 2.18rem;
        @media(max-width: 767px){
            font-size: 1.56rem;
        }
    }
}
.mv{
    background: url("../../imgs/common/bg.webp") center/cover;
    padding-top: var(--site_header_height);
}
.mv_inner{
    /*height: 55.55dvw;*/
    display: grid;
    grid-template-columns: 1fr 45%;
    align-items: center;
    position: relative;
}
@media(max-width: 767px){
    .mv_inner{
        display: block;
        /*background: url("../../imgs/front_page/mv_text_anime_1_sp.svg") right 6.5dvw/9.7dvw no-repeat ;*/
        padding-top: 90dvw;
    }
}
@keyframes mv_clipping-image {
    0%,100% {
        border-radius: 66% 34% 24% 76%/43% 42% 58% 57%
    }

    25% {
        border-radius: 34% 66% 68% 32%/31% 68% 32% 69%
    }

    50% {
        border-radius: 71% 29% 62% 38%/63% 27% 73% 37%
    }

    75% {
        border-radius: 36% 64% 32% 68%/28% 74% 26% 72%
    }
}
@keyframes mv_right {
    0%{
        opacity: 0;
    }
    100%{
        opacity: 1;
    }
}
.mv_right{
    /*position: absolute;
    width: 43.61dvw;
    right: 4.86dvw;
    top: 4.58dvw;*/
    position: relative;
    aspect-ratio: 1;
    opacity: 0;
    animation: mv_right 1s forwards .5s;
    margin-left: -5dvw;
}
@media(max-width: 767px){
    .mv_right{
        position: relative;
        width: 90.9dvw;
        margin-left: 0;
    }
}
.mv_clippingCircle{
    border: solid 1px #a4a3a3;
    border-radius: 50%;
    position: absolute;
    right: -1dvw;
    bottom: -1dvw;
    width: 100%;
    aspect-ratio: 1;
    animation: mv_clipping-image 16s infinite;
}
.mv_clippingImage{
    overflow: hidden;
    border-radius: 50%;
    width: 100%;
    & img {
        display: block;
        width: 100%;
    }
    animation: mv_clipping-image 16s infinite;
}
.mv_contents{
    order: -1;
    position: relative;
    z-index: 1;
    /*width: 34dvw;*/
    padding-top: max(4.58dvw,var(--site_header_height));
    padding-bottom: 5dvw;
    margin-right: 8cqw;
    /*margin-left: 11.25dvw;*/
    container-name: mv_contents;
    container-type: inline-size;
}
@media(max-width: 767px){
    .mv_contents{
        position: static;
        padding-top: 0;
        margin-right: 15px;
        width: auto;
        margin-left: 15px;
    }
}
.mv_text_anime_1_wrapper{
    position: relative;
    padding-top: 20cqw;
}
.mv_text_anime_1{
    display: block;
    width: 61%;
}
@media(max-width: 767px){
    .mv_text_anime_1_wrapper{
        position: absolute;
        top: 0;
        left: 0;
        padding-top: 40dvw;
    }
    .mv_text_anime_1{
        width: 80%;
        /*clip-path: inset(74% 0 0 0);*/
    }
}
@keyframes mv_person {
    0%{
        opacity: 0;
        translate: -5% 0;
    }
    100%{
        opacity: 1;
        translate: 0;
    }
}
#mv_person{
    position: absolute;
    aspect-ratio: 105/299;
    width: 12cqw;
    right: 5cqw;
    bottom: -5cqw;
    animation: mv_person .6s linear forwards 1.2s;
}
@media(max-width: 767px){
    #mv_person{
        width: 25dvw;
        top: 18dvw;
        right: -15px;
        /*clip-path: polygon(64% 28%,100% 26%,100% 100%,50% 100%,56% 40%,60% 32%);*/
    }
}
.mv_bubble_area {
    position: absolute;
    left: 0;
    right: -7cqw;
    top: 0;
    text-align: right;
    @media(max-width: 767px){
        right: 13dvw;
        top: 10dvw;
    }
}
.mv_bubble {
    display: inline-block;
    text-align: left;
    padding: 1.5em 1.5em 2.5em 2em;
    margin-top: -8cqw;
    place-content: center;
    background: url("../../imgs/front_page/mv_bubble.svg") right/100% 100% no-repeat;
    margin-right: 0;
    margin-left: auto;
    font-size: 5cqw;
    font-weight: bold;
    text-spacing-trim: trim-start;
    white-space: nowrap;
    & strong{
        font-size: 1.25em;
        color: var(--orange);
        font-weight: 900;
    }
}
.mv_large_text{
    display: grid;
    gap: .75rem;
    margin-top: 2rem;
    margin-bottom: 0;
    container-name: mv_large_text;
    container-type: inline-size;
    @media(max-width: 767px){
        padding-right: 0;
    }
    >span{
        line-height: 1.1;
        display: block;
        white-space: nowrap;
        text-spacing-trim: trim-start;
        margin-right: -.5em;/* 禁則処理による改行よけ */
    }
}
@keyframes mv_large_str{
    0%{
        opacity: 0;
        transform: translate(-10%, 10%);
    }
    100%{
        opacity: 1;
        transform: translate(0%, 0%);
    }
}
.mv_large_text_line1,.mv_large_text_line2{
    & span{
        display: inline-block;
        animation: mv_large_str .5s forwards;
    }
}
@keyframes text_from_left {
    0%{
        clip-path: inset(0 100% 0 0);
        opacity: 0;
        filter: blur(10px);
    }
    100%{
        clip-path: none;
        opacity: 1;
        filter: none;
    }
}
.mv .text_anime_2{
    font-size: 1.53dvw;
    font-weight: normal;
    line-height: 1.4;
    margin-top: 1em;
    margin-bottom: .9em;
    color: #717171;
    opacity: 0;
    animation: text_from_left 1s forwards .5s;
}
@media(max-width: 767px){
    .mv .text_anime_2{
        font-size: 3.73dvw;
        line-height: 1.5;
    }
}
.mv_features{
    display: flex;
    flex-wrap: wrap;
    gap: .9cqw;
    margin: 0;
    padding: 0;
    & li{
        height: 2.5em;
        border-radius: 1.25em;
        display: inline-grid;
        place-content: center;
        font-size: 3.2cqw;
        padding: 0 .75em;
        color: #fff;
        background: var(--orange);
        font-weight: bold;
        margin: 0;
        animation: text_from_left .6s forwards .5s;
        opacity: 0;
        &:nth-child(2){
            animation-delay: 0.6s;
        }
        &:nth-child(3){
            animation-delay: 0.8s;
        }
    }
}
@media(max-width: 767px){
    .mv_features{
        gap: 2.13dvw;
        display: grid;
        grid-template-columns: repeat(auto-fit,auto);
        & li{
            font-size: 1rem;
        }
    }
}
.mv_scroll{
    position: absolute;
    right: 5.55dvw;
    bottom: 3.47dvw;
    width: 6.25dvw;
}

.sctNews{
    margin-top: 103px;
    & .more_area{
        text-align: right;
        margin-top: 26px;
    }
}
@media(max-width: 767px){
    .sctNews{
        margin-top: 3.12rem;
    }
}
.sctNews-flexblock{
    display: grid;
    grid-template-columns: auto 1fr;
    padding-top: 36px;
    padding-bottom: 36px;
    border-style: solid;
    border-width: 1px 0;
    border-color: currentColor;
    & h2{
        margin-right: 53px;
        margin-bottom: 0;
        border-right: solid 1px currentColor;
        padding-right: 53px;
    }
    @container container (max-width: 800px) {
        grid-template-columns: 1fr;
        border-bottom: none;
        & h2{
            border-right: none;
            margin-bottom: 53px;
        }
    }
    @media(max-width: 767px){
        padding-top: 0;
        padding-bottom: 0;
        border-top: none;
        & h2{
            text-align: center;
            margin-right: 0;
            padding-right: 0;
            margin-bottom: 1em;
        }
    }
    & .items{
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(22em, 1fr));
        gap: 53px;
        @media(max-width: 767px){
            border-color: #a4a3a3;
            border-style: solid;
            border-width: 1px 0;
            padding: 20px 0;
            grid-template-columns: 1fr 1fr;
            gap: 26px;
        }
    }
    & .item{
        display: grid;
        grid-template-columns: auto 1fr;
        grid-template-rows: auto 1fr;
        @media(max-width: 767px){
            grid-template-columns: 1fr;
            grid-template-rows: auto auto 1fr;
        }
    }
    & h3{
        font-size: 1rem;
        margin: 0;
        line-height: 1.625;
    }
    & .img{
        aspect-ratio: 145/100;
        grid-row: 1/-1;
        margin-right: 24px;
        margin-bottom: 0;
        & img{
            display: block;
            width: 100%;
            height: 100%;
            object-fit: cover;
        }
        @media(max-width: 767px){
            width: 100%;
            grid-row: unset;
            margin-right: 0;
        }
    }
    .date{
        font-size: .875em;
        margin: 0;
    }
    & .item:hover{
        & h3{
            text-decoration: underline;
            text-decoration-style: dashed;
            text-decoration-color: var(--teal);
            text-decoration-thickness: 1px;
            text-underline-offset: .2em;
        }
    }
}

.sctReview{
    margin-top: 90px;
    padding-bottom: 165px;
    @media(max-width: 767px){
        padding-bottom: 68.26dvw;
        position: relative;
        &:after {
            content: "";
            display: block;
            position: absolute;
            right: -15px;
            bottom: 9.6dvw;
            left: 0;
            height: 49dvw;
            background: url("../../imgs/front_page/sctReview-img02-sp.webp") right bottom/contain no-repeat;
        }
    }
    & h2{
        text-align: center;
        white-space: nowrap;
        @media(max-width: 767px){
            padding-bottom: 56dvw;
            position: relative;
            &:after {
                content: '';
                display: block;
                position: absolute;
                bottom: 0;
                left: -15px;
                right: 0;
                height: 48dvw;
                background: url("../../imgs/front_page/sctReview-img01-sp.webp") left bottom/contain no-repeat;
            }

        }
    }
    & h3{
        font-size: 1.56rem;
        line-height: 1.6;
        margin: 0;
        @media(max-width: 767px){
            font-size: 1.06rem;
        }
    }
    & h4{
        margin: 0;
    }
    & .features{
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(11em, 1fr));
        margin: 20px 0 0;
        padding: 0;
        list-style: none;
        gap: 1rem;
        font-size: 1.06rem;
        & li{
            margin: 0;
            padding: 0;
            background: var(--gray);
            color: #fff;
            font-weight: bold;
            display: grid;
            place-content: center;
            height: 46px;
            border-radius: 23px;
        }
        @media(max-width: 767px){
            grid-template-columns: 1fr 1fr 1fr;
            gap: .5rem;
            min-height: 3.75rem;
            & li{
                font-size: .93rem;
                white-space: nowrap;
                border-radius: .5rem;
                line-height: 1.4;
                height: 100%;
            }
        }
    }
    & .text{
        line-height: 1.88;
        margin-top: 1em;
        @media(max-width: 767px){
            font-size: .875rem;
            text-align: left;
        }
    }
    & .bg_box{
        background: var(--ivory);
        border-radius: 64px;
        max-width: min( 59dvw,850px );
        padding: 40px 1rem;
        display: grid;
        place-content: center;
        margin-left: auto;
        margin-right: auto;
        position: relative;
        & .inner{
            max-width: 650px;
            text-align: center;
        }
        @media(max-width: 767px){
            max-width: unset;
            margin-left: -15px;
            margin-right: -15px;
            border-radius: 0;
            padding-bottom: 20px;
        }
    }
}
.review_img1{
    position: absolute;
    right: calc(100% + 110px);
    top: -70px;
    width: 182px;
}
.review_img2{
    position: absolute;
    left: calc(100% - 45px);
    top: -70px;
    width: 344px;
}
.review_img3{
    position: absolute;
    right: calc(100% - 64px);
    bottom: 12px;
    width: 316px;
}
.review_img4{
    position: absolute;
    left: calc(100% + 40px);
    bottom: 0;
    width: 246px;
}
.review_info{
    background: url("../../imgs/front_page/review_bg.webp") center/cover;
    padding: 36px 0;
    margin-bottom: 36px;
    @media(max-width: 767px){
        margin-left: -15px;
        margin-right: -15px;
        margin-bottom: 20px;
        padding: 20px 0;
    }
    & .bg_white{
        background: rgba(225,225,225,.8);
        padding: 30px;
    }
    & .rateGroup{
        display: flex;
        justify-content: center;
        align-items: flex-end;
        font-weight: bold;
        font-size: 5.18rem;
        line-height: 1.1;
        margin: 0;
        @media(max-width: 767px){
            font-size: 3.625rem;
        }
    }
    & .avr_text{
        font-size: .36em;
        line-height: 2.4;
        color: #0073ad;
    }
    & .ratenum{
        display: inline-block;
        padding-left: .1em;
        padding-right: .1em;
        color: #0073ad;
    }
    & .count{
        font-size: .2em;
        line-height: 3.2;
        & .s{
            font-size: .7em;
        }
    }
    & .stars{
        width: 253px;
    }
    & .date{
        @media(max-width: 767px){
            font-size: .875rem;
        }
    }
}

.sctPickup{
    text-align: center;
    padding-top: 80px;
    padding-bottom: 164px;
    background: url("../../imgs/common/bg.webp") center/cover;
    @media(max-width: 767px){
        padding-top: 40px;
        padding-bottom: 80px;
    }
}
.splide_pickup{
    & .splide__slide{
        width: min(800px,59dvw);
    }
    & .slide_inner{
        display: grid;
        height: 100%;
        place-items: center;
        & a{
            display: block;
            width: 100%;
        }
    }
    & .img{
        width: 100%;
        display: block;
        img{
            display: block;
            width: 100%;
            max-width: none;
        }
    }
    .splide__slide.is-active{
        width: min(1000px,69dvw);
    }
    .splide__arrows{
        position: absolute;
        margin-left: auto;
        margin-right: auto;
        width: min(1000px,69dvw);
        height: 0;
        max-width: 1000px;
        left: 50%;
        top: 50%;
        translate: -50%;
    }
    .splide__arrow{
        width: 42px;
        height: 42px;
        background: url("../../imgs/common/slide-next.svg") center/contain no-repeat;
        font-size: 0%;
        border-radius: 0;
    }
    .splide__arrow--next{
        right: -51px;
    }
    .splide__arrow--prev{
        transform: scaleX(-1) translateY(-50%);
        left: -51px;
    }
    .splide__pagination{
        justify-content: center;
        bottom: -34px;
        gap: 12px;
    }
    .splide__pagination__page{
        width: 61px;
        height: 3px;
        background: #d8d8d8;
        border-radius: 0;
        &.is-active{
            background: #1e1e1e;
            transform: none;
        }

    }
}

.sctGallery{
    padding-top: 146px;
    padding-bottom: 146px;
    @media(max-width: 767px){
        padding-top: 50px;
        padding-bottom: 80px;
    }
    & .container1{
        text-align: center;
        display: grid;
        grid-template-columns: 1fr auto 1fr;
        align-items: center;
        @media(max-width: 767px){
            grid-template-columns: 1fr;
        }
        & .img{
            text-align: right;
            @media(max-width: 767px){
                grid-row: 2/3;
                text-align: center;
                & img{
                    width: 11.81rem;
                    margin-left: auto;
                    margin-right: auto;
                }
            }
        }
    }
    & .buttonArea{
        text-align: center;
        margin-top: 60px;
        @media(max-width: 767px){
            margin-top: 28px;
        }
    }
}
.gallery_person{
    width: 249px;
}
.splide_gallery{
    margin-top: 40px;
    & .splide__slide{
        width: 420px;
        @media(max-width: 767px){
            width: calc(100% - 90px);
        }
    }
}

.sctPlans{
    background: url("../../imgs/common/bg.webp") center/cover no-repeat;
    padding-top: 106px;
    padding-bottom: 140px;
    @media(max-width: 767px){
        padding-top: 40px;
        padding-bottom: 55px;
    }
    & h2{
        @media(max-width: 767px){
            font-size: 1.56rem;
        }
        & .line1{
            font-size: .83em;
            color: var(--orange);
            display: flex;
            justify-content: center;
            align-items: center;
            line-height: 1.1;
            &:before,&:after{
                content: '';
                display: inline-block;
                width: 1px;
                height: 1.1em;
                background: currentColor;
            }
            &:before{
                transform: translateX(-.5em) rotate(-30deg);
            }
            &:after{
                transform: translateX(.5em) rotate(30deg);
            }
        }
    }
    & .flex1{
        display: grid;
        grid-template-columns: 1fr auto 1fr;
        gap: 20px;
        justify-content: center;
        align-items: center;
        margin-bottom: 36px;
        text-align: center;
        & .img{
            text-align: right;
        }
        & .text{
            font-size: 1.06rem;
            line-height: 1.76;
            margin: 0;
        }
    }
    & .plan_person{
        width: 248px;
    }
    @container container (max-width: 800px) {
        & .flex1{
            position: relative;
            & .img{
                & img{
                    position: absolute;
                    left: 0;
                    top: -10%;
                    width: 20%;
                }
            }
            & p{
                white-space: nowrap;
            }
        }
    }
    @media(max-width: 767px){
        & .flex1{
            display: block;
            padding-bottom: 146px;
            margin-bottom: 0;
            & .img{
                position: absolute;
                bottom: 10px;
                left: 0;
                width: 100%;
                height: 35.2dvw;
                & img{
                    display: block;
                    width: 100%;
                    height: 100%;
                    object-fit: contain;
                }
            }
            & p{
                font-size: .85rem;
            }
        }
    }
}

/*
.parallax_frame {
    height: 48.61dvw;
    border: solid 1px #dddddd;
    clip-path: inset(0);
}
*/


@keyframes carousel {
    0%{
        translate: 0 0;
    }
    100%{
        translate: -50% 0;
    }
}

.sctAbout{
    background: url("../../imgs/common/bg.webp") center/cover no-repeat;
    padding-top: 145px;
    padding-bottom: 143px;
    margin-top: 145px;
    @media(max-width: 767px) {
        padding-top: 60px;
        padding-bottom: 80px;
        margin-top: 0;
    }
    & .container1{
        display: grid;
        grid-template-columns: auto 1fr;
        gap: 60px;
        @media(max-width: 767px){
            display: block;
        }
        & .rightbox{
            display: grid;
            justify-items: center;
            @media(max-width: 767px){
                display: block;
            }
        }
    }
    & h3{
        font-size: 2.18rem;
        line-height: 1.6;
        margin-top: 1em;
        margin-bottom: .5em;
        @media(max-width: 767px){
            font-size: 4.2dvw;
        }
        & span{
            display: inline-block;
        }
    }
    & .text{
        font-size: 1.25rem;
        line-height: 1.75;
        @media(max-width: 767px){
            font-size: .875rem;
        }
    }
    & .features{
        margin: 0 0 0 auto;
        padding: 0;
        height: 100%;
        display: grid;
        grid-template-columns: repeat(4,1fr);
        border-right: solid 1px currentColor;
        @media(max-width: 767px){
            display: block;
            border-right: none;
            border-top: solid 1px currentColor;
            margin-top: 2em;
            margin-left: 0;
            width: 100%;
        }
        & li{
            margin: 0;
            padding: 0 .5em;
            line-height: 1.1;
            list-style: none;
            writing-mode: vertical-rl;
            border-left: solid 1px currentColor;
            font-size: 1.56rem;
            font-weight: bold;
            padding-top: 1em;
            background: url("../../imgs/front_page/logo_icon.svg") center top/.76em no-repeat;
            @media(max-width: 767px){
                writing-mode: lr;
                background-position: left center;
                background-size: .9em;
                border-left: none;
                border-bottom: solid 1px currentColor;
                padding: .75em 0 .75em 1.25em;
                font-size: 1.25rem;
            }
        }
    }
    & .carousel{
        margin-top: 70px;
        width: 100%;
        overflow: hidden;
        margin-bottom: 230px;
        @media(max-width: 767px){
            margin-top: 50px;
            margin-bottom: 85px;
        }
        & .inner{
            /*width: 208%;*/
            width: 416%;
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap:0;
            animation: carousel 32s linear infinite;
            @media(max-width: 767px){
                /*width: 524dvw;*/
                width: 1048dvw;
            }
        }
    }
    .group{
        position: relative;
        margin-bottom: 130px;
        &:last-child{
            margin-bottom: 0;
        }
        h3{
            font-size: 1.25rem;
            & .num{
                display: block;
                width: 1.9em;
                line-height: 1.1;
                text-align: center;
                border-color: currentColor;
                border-style: solid;
                border-width: 0 1px;
                margin-bottom: .5em;
                font-weight: normal;
                letter-spacing: .08em;
            }
            & .sub{
                font-weight: normal;
            }
            & .has_line{
                font-size: 1.5em;
                line-height: 2.13;
                background-repeat: repeat-y;
                background-image: linear-gradient(to bottom,currentColor,currentColor 1px,transparent 1px);
                background-size: auto 2.13em;
                background-position: bottom .1em left 0;
                border-top: solid 1px currentColor;
                margin-top: .2em;
            }
        }
        & .box_image{
            position: absolute;
            bottom: 0;
            aspect-ratio: 720/445;
            width: 50%;
            overflow: hidden;
            &:has(.splide){
                overflow: unset;
            }
        }
        & .box_text{
            @container container (min-width: 1001px) {
                min-height: 30.90dvw;
            }
        }
        & .box_text__text{
            line-height: 2;
            @media(max-width: 767px){
                margin-top: 1.5em;
            }
        }
        & .button_area{
            margin-top: 40px;
            min-height: 1px;
            @media(max-width: 767px){
                margin-top: 0;
                text-align: center;
            }
        }
        & .button_simple{
            width: 100%;
            @media(max-width: 767px){
                margin-top: 1.25rem;
                width: auto;
                min-width: 70.13dvw;
                margin-left: auto;
                margin-right: auto;
            }
        }
        &:nth-of-type(odd){
            & .box_text{
                padding-left: calc(50% + 90px);
            }
            & .box_image{
                left: 0;
                border-radius: 0 20px 20px 0;
            }
        }
        &:nth-of-type(even){
            & .box_text{
                padding-right: calc(50% + 90px);
            }
            & .box_image{
                right: 0;
                border-radius: 20px 0 0 20px;
            }
        }
    }
}

@container container (max-width: 1000px) {
    .sctAbout{
        & .group{
            .box_image{
                position: static;
                width: 75%;
                margin-top: 60px;
            }
            &:nth-child(n){
                .box_text{
                    padding-right: 0;
                    padding-left: 0;
                }
            }
            &:nth-child(2n){
                .box_image{
                    margin-left: auto;
                }
            }
        }
    }
}
@media(max-width: 767px){
    .sctAbout{
        & .group{
            display: flex;
            flex-direction: column-reverse;
            margin-bottom: 3.12rem;
            & .box_image{
                width: calc(100% - 30px);
            }
        }
    }
}

.splide_about{
    padding-bottom: 28px;
    & .splide__slide{
        /*aspect-ratio: 720/445;*/
        border-radius: 0 20px 20px 0;
        overflow: hidden;
        & .slide_image{
            width: 100%;
            aspect-ratio: 720/445;
        }
        & img{
            display: block;
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: left top;
        }
    }
    & .splide__pagination{
        bottom: 0;
    }
    & .splide__pagination__page{
        width: 8px;
        height: 8px;
        opacity: 1;
        border: solid 1px currentColor;
        background: none;
        transform: none;
        margin-top: 0;
        margin-bottom: 0;
        &.is-active{
            background: currentColor;
        }
    }
}

@keyframes showroom_fade_img {
    0%{
        opacity: 1;
        z-index: 0;
    }
    24.99%{
        z-index: 0;
    }
    25%{
        opacity: 1;
        z-index: 1;
    }
    45%{
        opacity: 1;
        z-index: 1;
    }
    50%{
        opacity: 0;
    }
    99%{
        z-index: -1;
        opacity: 0;
    }
    100%{
        z-index: -1;
        opacity: 0;
    }
}
.sctShowroom{
    margin-top: 146px;
    /*
    background-image: linear-gradient(to right,var(--gray) 70%,transparent 70%);
    */
    background: url("../../imgs/common/bg.webp") center/cover no-repeat;");
    @media(max-width: 767px){
        margin-top: 0;
        background: var(--gray);
    }
    & .container{
        display: grid;
        grid-template-columns: auto 1fr;
        grid-template-rows: auto 1fr;
        grid-auto-flow: column;
        gap: 0 50px;
        @media(max-width: 767px){
            grid-template-columns: 1fr;
            grid-auto-flow: row;
        }
    }
    & .leftbox1{
        max-width: 364px;
        /*
        color: #fff;
        */
        padding: 50px 0 0;
        @media(max-width: 767px){
            max-width: unset;
            text-align: center;
        }
        & p{
            margin: 0 0 20px;
            max-width: 20em;
            line-height: 1.875;
        }
    }
    & .leftbox2{
        margin-top: 2rem;
        padding-bottom: 22px;
        @media(max-width: 767px){
            order: 1;
            text-align: center;
        }
        & img{
            width: 271px;
            @media(max-width: 767px){
                width: 59.2dvw;
            }
        }

    }
    & .rightbox{
        border-radius: 0 60px 60px 0;
        overflow: hidden;
        grid-row: 1 / -1;
        position: relative;
        @media(max-width: 767px){
            grid-row: unset;
            margin-left: -15px;
            margin-top: 2rem;
            aspect-ratio: 325/305;
        }
        & .img{
            position: absolute;
            left: 0;
            top: 0;
            width: 100%;
            height: 100%;
            animation: showroom_fade_img 8s infinite;
            z-index: -1;
            &:nth-child(3){
                animation-delay: 2s;
            }
            &:nth-child(2){
                animation-delay: 4s;
            }
            &:nth-child(1){
                animation-delay: 6s;
            }
        }
        & img{
            width: 100%;
            height: 100%;
            object-fit: cover;
        }
    }
    & h3{
        font-size: 1.25rem;
        line-height: 1.75;
        margin-bottom: .5em;
    }
    & .buttons{
        display: grid;
        gap: 1rem;
        margin-bottom: 1rem;
    }
}

.sctManga{
    margin-top: 120px;
    & h2{
        margin-bottom: 45px;
        @media(max-width: 767px) {
            margin-bottom: 2.5rem;
            & img {
                width: 56.26dvw;
                display: block;
                margin-left: auto;
                margin-right: auto;
            }
        }
    }
    .button_area{
        text-align: right;
        margin-top: 30px;
    }
}

.loop-manga{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 46px;
}

.aside_large_banners{
    margin-top: 110px;
}

.aside_contact_banners{
    margin-top: 120px;
    padding-bottom: 90px;
    @media(max-width: 767px){
        padding-bottom: 0;
        margin-left: -15px;
        margin-right: -15px;
    }
}
.site-footer_bg_gray{
    @media(max-width: 767px){
        margin-top: .25rem;
    }
}