@charset "utf-8";

/*

 - すらるみー移植用マージCSS

 */

.pc-only-block {
    display: block;
}

.pc-only-inline {
    display: inline;
}

.sp-only-block {
    display: none;
}

.sp-only-inline {
    display: none;
}

@media screen and (max-width:1024px) {
    .pc-only-block {
        display: none;
    }

    .pc-only-inline {
        display: none;
    }

    .sp-only-block {
        display: block;
    }

    .sp-only-inline {
        display: inline;
    }
}

.sralme-style {

    position: relative;

    & a:not(.wp-block-button__link) {
        color: #333;
        text-decoration: underline;
    }

    /* object-fit
    --------------------------------------------------------------- */

    .ofi-block {
        width: 400px;
        height: 400px;
        margin: 0 auto;
    }

    .ofi {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center center;
        font-family: "object-fit:cover;";
    }


    /* 各種パーツ - 見出し
    --------------------------------------------------------------- */

    .h-type1 {
        font-weight: 700;
        font-size: 39px;
        text-align: center;
        margin-bottom: 3.5em;
        line-height: 1.2;
    }

    .h-type1.mb-n {
        margin-bottom: 1.5em;
    }


    /* 各種パーツ - ボタン
    --------------------------------------------------------------- */

    .btn-type1 {
        display: inline-block;
        color: #fff !important;
        text-decoration: none !important;
        background: #264F9E url(../img/common/ico_arrow_circle_right.svg) right 20px center / 17px auto no-repeat;
        border-radius: 10px;
        padding: .7em 3em .7em 1.5em;
        line-height: 1;
    }

    .block-btn {
        text-align: center;
    }

    .block-btn.is-large .btn-type1 {
        font-size: 28px;
        font-weight: 700;
        padding: 1.3em 3em 1.3em 1.5em;
        background-size: 22px auto;
    }


    /* 共通ブロック
    --------------------------------------------------------------- */

    .content-inr {
        box-sizing: content-box;
        max-width: 1200px;
        padding: 0 20px;
        margin: 0 auto;
    }

    .content-wrapper {
        padding: 115px 0;
    }


    /* トップページ - イメージスライダー
    --------------------------------------------------------------- */

    .sralme-mv-wrapper {
        position: relative;
        line-height: 1;

        & img {
            width: 100%;
        }

        .ofi {
            width: 100%;
            height: 790px;
        }

        .block-slide {
            display: block !important;
        }

        .chara-pos {
            position: absolute;
            left: calc(50% - 820px);
            bottom: -157px;
        }

        .chara-pos figcaption {
            position: absolute;
            left: 160px;
            right: 0;
            bottom: 70px;
            line-height: 1.2;
        }

        .chara-pos figcaption .cap {
            display: block;
            font-size: .77em;
        }

    }


    /* トップページ - トレーラーハウス「Sral Me」
    --------------------------------------------------------------- */

    .block-top-strongpoint {
        position: relative;
        padding: 100px 0;
        overflow: hidden;
    }

    .block-top-strongpoint .txt-note {
        position: absolute;
        right: calc(50% - 600px);
        bottom: 155px;
        text-align: right;
    }

    .sralme-title-1 {
        font-weight: 700;
        text-align: center;
        margin-bottom: .5em;
    }

    .block-top-strongpoint .ttl {
        font-weight: 700;
        font-size: 39px;
        text-align: center;
        margin-bottom: 2em;
    }

    .block-top-strongpoint .ttl em {
        font-size: 1.33em;
    }

    .block-strongpoint {
        position: relative;
    }

    .block-strongpoint .txt {
        position: absolute;
        font-size: 1.26vw;
        line-height: 1.33;
    }

    .block-strongpoint .txt h3 {
        font-size: 3.15vw;
        line-height: 1.08;
        margin-bottom: .3em;
    }

    .block-strongpoint .txt .more {
        margin-top: .8em;
    }

    .block-strongpoint .txt a {
        display: block;
        text-decoration: none;
    }

    .block-strongpoint figure {
        position: absolute;
        width: 50.87vw;
    }

    .block-strongpoint figure img {
        width: 100%;
    }

    .block-strongpoint figcaption .cap {
        position: absolute;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        text-align: center;
        width: 8.41vw;
        height: 8.41vw;
        border-radius: 4.2vw;
        font-weight: 700;
        font-size: 1.25vw;
        line-height: 1.26;
        background: #FFCC00;
    }

    /* - 用途 */

    .block-strongpoint.is-use {
        height: 39.41vw;
        background: url(../img/top/bg_s_b.svg) center center / contain no-repeat;
        z-index: 1;
    }

    .block-strongpoint.is-use>.inr {
        position: relative;
        width: 71.51vw;
        height: 100%;
        margin: 0 auto;
    }

    .block-strongpoint.is-use .txt {
        color: #fff;
        top: 7.62vw;
        left: 0;
    }

    .block-strongpoint.is-use .txt h3 {
        color: #FFCC00;
    }

    .block-strongpoint.is-use .txt a {
        color: #fff;
    }

    .block-strongpoint.is-use figure {
        position: absolute;
        top: 4.73vw;
        right: 0;
    }

    .block-strongpoint.is-use figcaption .cap.is-1 {
        top: 1.89vw;
        right: 23.12vw;
    }

    .block-strongpoint.is-use figcaption .cap.is-2 {
        top: -1vw;
        right: -1.94vw;
    }

    .block-strongpoint.is-use>.inr:after {
        content: "";
        position: absolute;
        right: -8.41vw;
        bottom: 2.1vw;
        width: 23.96vw;
        height: 17.76vw;
        background: url(../img/common/sralme_chan2.png) center center / contain no-repeat;
    }

    /* - メリット */

    .block-strongpoint.is-merit {
        height: 39.41vw;
        background: url(../img/top/bg_s_y.svg) center center / contain no-repeat;
        margin-top: -11.51vw;
        z-index: 0;
    }

    .block-strongpoint.is-merit>.inr {
        position: relative;
        width: 75.30vw;
        height: 100%;
        margin: 0 auto;
    }

    .block-strongpoint.is-merit .txt {
        color: #333;
        top: 12.35vw;
        right: 0;
    }

    .block-strongpoint.is-merit .txt h3 {
        color: #333;
    }

    .block-strongpoint.is-merit .txt a {
        color: #333;
    }

    .block-strongpoint.is-merit figure {
        position: absolute;
        top: 4.68vw;
        left: 0;
    }

    .block-strongpoint.is-merit figcaption .cap.is-1 {
        top: -1.37vw;
        left: -2.63vw;
        color: #fff;
        background: #004896;
    }

    .block-strongpoint.is-merit figcaption .cap.is-2 {
        top: 1.94vw;
        left: 23.54vw;
        color: #fff;
        background: #004896;
    }

    .block-strongpoint.is-merit>.inr:after {
        content: "";
        position: absolute;
        left: -6.73vw;
        bottom: -4.6vw;
        width: 20.07vw;
        height: 24.91vw;
        background: url(../img/common/sralme_chan3.png) center center / contain no-repeat;
    }


    /* トップページ - 商品情報
    --------------------------------------------------------------- */

    .block-top-lineup .ttl,
    .block-top-lineup .ttl+h3 {
        text-align: center;
        font-weight: 700;
        line-height: 1.4;
    }

    .block-top-lineup .ttl {
        font-size: 32px;
        margin-bottom: 1.8em
    }

    .block-top-lineup .ttl+h3 {
        font-size: 46px;
        margin-bottom: 1.5em
    }

    .list-lineup {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        line-height: 1;
        margin-bottom: -60px;
    }

    .list-lineup>li {
        width: 48.33%;
        margin-bottom: 60px;
    }

    .list-lineup a {
        display: block;
        color: #fff;
        font-weight: 700;
        text-decoration: none;
        background: #264F9E;
    }

    .list-lineup a.type-c {
        background: #FFCC00;
        color: #111;
    }


    .list-lineup img {
        width: 100%;
        height: 428px;
    }

    .list-lineup h3 {
        font-size: 28px;
        font-weight: 700;
        text-align: center;
        padding: .5em 1em;
    }

    .list-lineup figcaption {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
        padding: 1.5em 2.5em;
    }


    .list-lineup .type {
        font-size: 28px;
    }

    .list-lineup .more {
        font-size: 20px;
        text-align: right;
        background: url(../img/common/ico_arrow_circle_right.svg) right center / contain no-repeat;
        padding-right: 30px;
    }

    .list-lineup a.type-c .more {
        background: url(../img/common/ico_arrow_circle_right_b.svg) right center / contain no-repeat;
    }

    .list-lineup .type>span {
        font-size: 1.57em;
    }

    .block-lineup-msg {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
        width: 965px;
        margin: 110px auto 0;
        line-height: 1.43;
    }

    .block-lineup-msg h4 {
        width: calc(100% - 426px);
        font-weight: 700;
        font-size: 46px;
        white-space: nowrap
    }


    /* トップページ - 展示場
    --------------------------------------------------------------- */

    .block-top-showroom {
        padding: 90px 0 150px;
        text-align: center;
        background: #FFFAE4;
        line-height: 1.2;
    }

    .block-top-showroom h2 {
        font-size: 46px;
        font-weight: 700;
        margin-bottom: 2.5em;
    }

    .block-top-showroom h3 {
        font-size: 36px;
        margin-bottom: .8em;
    }

    .block-top-showroom .gmap iframe {
        width: 100%;
        height: 500px;
    }

    .block-top-showroom .cap {
        font-size: 22px;
        margin-top: 1em;
    }


    /* トップページ - 目的に合わせて
    --------------------------------------------------------------- */

    .block-top-em {
        color: #fff;
        font-size: 20px;
        background: #000;
        line-height: 1.4;
        padding: 60px 0;
    }

    .block-top-em h2 {
        font-weight: 700;
        font-size: 1.6em;
        text-align: center;
        margin-bottom: .5em;
        line-height: 1.18;
    }


    /* トップページ - ムービーバナー
    --------------------------------------------------------------- */

    .content-inr.is-bnr-movie {
        position: relative;
        max-width: 100%;
        width: 100%;
        box-sizing: border-box;
    }

    .bnr-movie {
        position: absolute;
        top: 50px;
        right: 30px;
        width: 316px;
        z-index: 2;
    }

    .bnr-movie a {
        display: block;
        text-decoration: none;
    }

    .bnr-movie a:hover {
        opacity: 1;
        transition: 0;
    }

    @media print,
    screen and (min-width:1024px) {

        .bnr-movie a {
            transition: .6s;
            transform: translate(0, 0);
        }

        .bnr-movie a:hover {
            transform: translate(0, -40px);
        }

    }


    /* 下層ページ - 特徴とメリット
    --------------------------------------------------------------- */

    .block-visual {
        position: relative;
    }

    .block-visual .ofi {
        height: 570px;
    }

    .block-visual .pos-character {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        margin: auto;
        text-align: center;
    }


    /* - 特徴とメリット */

    .section-merit {
        padding: 115px 0 0;
    }

    .section-merit .h-type1 {
        margin-bottom: 1.5em;
    }

    .block-merit-ol {
        position: relative;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        background: #FFCC00;
        padding: 80px 0;
        line-height: 1;
    }

    .block-merit-ol ol {
        font-size: 42px;
        color: #000;
        list-style: none;
        padding-left: 310px;
    }

    .block-merit-ol ol>li:not(:last-child) {
        margin-bottom: .8em;
    }

    .block-merit-ol .pos-character {
        position: absolute;
        top: calc(50% - 200px);
        left: calc(50% - 500px);
    }

    .section-3merit {
        position: relative;
        padding: 130px 0 250px;
        overflow: hidden;
    }

    .section-3merit ol>li {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
        font-size: 22px;
    }

    .section-3merit ol>li:not(:last-child) {
        margin-bottom: 65px;
    }

    .section-3merit ol>li:last-child .txt {
        padding-right: 300px;
    }

    .section-3merit .ico {
        width: 230px;
    }

    .section-3merit .txt {
        box-sizing: border-box;
        width: calc(100% - 230px - 45px);
    }

    .section-3merit .txt h3 {
        font-size: 42px;
        color: #FF7F00;
    }

    .txt-note-lifeline {
        text-indent: -3em;
        padding-left: 3em;
        font-size: 16px;
    }

    .section-3merit .pos-character {
        position: absolute;
        right: calc(50% - 700px);
        bottom: -102px;
        z-index: 2;
    }


    /* - 写光レンタル販売のトレーラーハウスは */

    .section-about-th {
        position: relative;
        font-size: 22px;
        background: #E6E9F3;
        padding: 100px 0;
    }

    .section-about-th .h-type1 {
        margin-bottom: 2em;
    }

    .section-about-th .figure {
        text-align: center;
        margin: 80px 0 90px;
    }

    .section-about-th .figure img {
        width: 1100px;
    }

    .section-about-th dl {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
    }

    .section-about-th dt {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        width: 200px;
        height: 100px;
        font-weight: 700;
        font-size: 29px;
        text-align: center;
        color: #fff;
        background: #264F9E;
        line-height: 1;
        border-radius: 10px;
    }

    .section-about-th dt+dd {
        width: calc(100% - 200px - 1em);
    }


    /* - ユニットハウスとの違い */

    .section-difference {
        position: relative;
        font-size: 22px;
        background: #FFFAE4;
        padding: 95px 0 115px;
    }

    .section-difference .content-inr {
        position: relative;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
    }

    .section-difference .txt {
        order: 2;
        width: calc(100% - 288px - 2em);
    }

    .section-difference .txt .h-type1 {
        text-align: left;
        margin-bottom: 1em;
    }

    .section-difference .txt .txt-note {
        text-indent: -3em;
        padding-left: 3em;
        font-size: 16px;
    }

    .section-difference .pos-character {
        order: 1;
        width: 288px;
    }


    /* 下層ページ - 製品情報
    --------------------------------------------------------------- */

    /* - モデルリスト */

    .block-model-list {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .block-model-list h3 {
        font-size: 28px;
        font-weight: 700;
        text-align: center;
        line-height: 1;
        margin-bottom: 1em;
    }

    .block-model-list .box-model-list {
        box-sizing: border-box;
        padding: 25px 25px 0;
    }

    .block-model-list>.is-business {
        width: 779px;
        color: #fff;
        background: #264f9e;
    }

    .block-model-list>.is-customer {
        width: 404px;
        color: #fff;
        /*background: #ffcc00;*/
        background: #264f9e;
    }

    .block-model-list .box-model-list ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .block-model-list .box-model-list li {
        width: 354px;
    }

    .block-model-list .box-model-list li a {
        position: relative;
        display: block;
        text-align: center;
        text-decoration: none;
        font-size: 38px;
        font-weight: 700;
        padding: 40px 0 15px;
        border-radius: 10px 10px 0 0;
        line-height: 1;
    }

    .block-model-list .box-model-list li a:after {
        content: "";
        position: absolute;
        top: 10px;
        left: 0;
        right: 0;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 13px 7.5px 0 7.5px;
        border-color: #000000 transparent transparent transparent;
        margin: auto;
    }


    .block-model-list .box-model-list.is-business li a {
        background-color: #87c1e2;
    }

    .block-model-list .box-model-list.is-customer li a {
        /*background-color: #feec99;*/
        background-color: #87c1e2;
    }

    .block-model-list .box-model-list.is-business li a:hover,
    .block-model-list .box-model-list.is-business li a.on {
        opacity: 1;
        background-color: #392358;
        color: #fff;
    }

    .block-model-list .box-model-list.is-customer li a:hover,
    .block-model-list .box-model-list.is-customer li a.on {
        opacity: 1;
        /*background-color: #845e00;*/
        background-color: #392358;
        color: #fff;
    }

    .block-model-list .box-model-list li a:hover:after,
    .block-model-list .box-model-list li a.on:after {
        border-color: #fff transparent transparent transparent;
    }


    /* - モデル詳細 - タイトル */

    .item-header {
        position: relative;
        height: 250px;
        margin: 50px 0 0;
    }

    .item-name {
        box-sizing: border-box;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        width: 174px;
        height: 174px;
        border-radius: 87px;
        font-size: 52px;
        font-weight: 700;
        color: #fff;
        background: #264f9e;
        line-height: 1;
        margin: 0 auto 70px;
    }

    /*
    .block-spec.type-c .item-name {
        background: #ffcc00;
        color: #111;
    }
        */

    .item-name>span {
        font-size: .8em;
    }

    .item-header .pos-character {
        position: absolute;
        left: 20px;
        bottom: 0;
        margin: 0;
    }

    .block-spec {
        position: relative;
        background: #e2f0f8;
        padding: 40px;

        &.is-other-color {
            background-color: #eee;

            & h2 {
                color: #333;
            }
        }
    }

    /*
    .block-spec.type-c {
        background: #FFFAE4;
    }
        */

    .block-spec:not(:last-child) {
        margin-bottom: 60px;
    }

    .block-spec h2 {
        font-size: 32px;
        font-weight: 700;
        color: #264f9e;
        line-height: 1.4;
        margin-bottom: .8em;
    }

    .block-spec h3 {
        margin-bottom: 60px;
    }

    .block-spec h3 span {
        display: inline-block;
        color: #fff;
        font-size: 22px;
        padding: .5em .8em .3em;
        background: #264f9e;
        line-height: 1;
    }

    .block-spec.type-c h3 span {
        /*background: #ffcc00;*/
        background: #264f9e;
        color: #111;
    }

    .block-spec table {
        width: 100%;
        border-collapse: separate;
        border-spacing: 1px;
    }

    .block-spec th,
    .block-spec td {
        font-size: 14px;
        padding: .6em .8em;
        background: #fff;
    }

    .block-spec th {
        box-sizing: border-box;
        width: 130px;
        color: #fff;
        background-color: #264f9e;
    }


    .block-spec.type-c th {
        /*background: #ffcc00;*/
        background-color: #264f9e;
        color: #111;
    }

    .block-price {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
        align-items: center;
        font-weight: 700;
        margin-bottom: 90px;
    }

    .block-price dt {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        width: 60px;
        height: 60px;
        border-radius: 30px;
        font-size: 18px;
        color: #000;
        background: #ffcc00;
        margin-right: 1em;
    }

    .block-price dd {
        font-size: 48px;
    }

    .block-price dd span {
        font-size: .5em;
    }

    .list-option {
        position: relative;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin-bottom: -35px;
    }

    .list-option:after {
        content: "";
        width: 30.97%;
    }

    .list-option>li {
        width: 30.97%;
        text-align: center;
        line-height: 1.4;
        margin-bottom: 35px;
    }

    .list-option figcaption {
        margin-top: 1em;
    }

    .list-option figcaption .cap {
        font-size: .77em;
    }

    .list-spec {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin-bottom: -110px;
    }

    .list-spec>li {
        width: calc(50% - 15px);
        margin-bottom: 110px;
    }

    .list-spec li.is-plan figure {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
    }

    .list-spec li.is-plan figure img {
        width: auto;
        height: 334px;
    }

    .list-spec li.is-table {
        width: 100%;
    }

    .list-spec li.is-table .is-flex {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .list-spec li.is-table .is-flex table {
        width: calc(50% - 15px);
    }


    /* 下層ページ - 製品情報 - アイテムスライダー
    --------------------------------------------------------------- */

    .block-item-slider {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        margin-bottom: 35px;
    }

    #item-slider-main {
        width: 694px;
        height: 520px;
        background: #84a0b0;
        overflow: hidden;
    }

    #item-slider-main img {
        display: block;
        width: 694px;
        height: 520px;
        object-fit: contain;
        margin: 0 auto;
    }

    #item-slider-thumbnail {
        width: 406px;
        height: 520px;
        display: flex;
        flex-wrap: wrap;
        align-content: flex-start;
    }

    #item-slider-thumbnail .thumbnail-slide {
        opacity: .3;
        width: 125px;
        height: 125px;
        overflow: hidden;
        margin: 0 0 10px 10px;
        cursor: pointer;
    }

    #item-slider-thumbnail .thumbnail-slide:last-child {
        margin-bottom: 0;
    }

    #item-slider-thumbnail .thumbnail-slide.thumbnail-current {
        opacity: 1;
    }

    #item-slider-thumbnail .thumbnail-slide img {
        image-rendering: auto !important;
    }


    #item-slider-thumbnail h3 {
        width: 100%;
        margin: 81px 0 10px 10px;
        font-weight: bold;
    }


    /* 新規追加 - すらるみーメニュー - トップ
    --------------------------------------------------------------- */

    .sralme-top-menu {
        --transition-speed: .3s;

        position: absolute;
        top: 40px;
        left: 0;
        right: 0;
        width: fit-content;
        margin-inline: auto;

        display: grid;
        grid-template-columns: minmax(0, 1fr);
        justify-content: center;
        align-items: center;
        gap: 2em;
        z-index: 2;

        & h2,
        .sralme-logo {
            width: 300px;
            padding: 0;
            margin: 0 auto;
            background: none;
            border: 0;
            line-height: 1;
        }

        & img {
            width: 100%;
            height: auto;
        }

        .stm__menu {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            align-items: center;
            gap: 3em;
        }

        & a {
            font-size: 20px;
            font-weight: 700;
            text-decoration: none;
        }

        .menu-item {
            position: relative;
        }

        .menu-item-has-children {

            &:hover .sub-menu,
            &:focus-within .sub-menu {
                visibility: visible;
                opacity: 1;
                transition-delay: 0s;
            }

        }

        .sub-menu {
            visibility: hidden;
            opacity: 0;
            transition: opacity var(--transition-speed), visibility 0s var(--transition-speed);

            box-sizing: border-box;
            position: absolute;
            top: calc(100% - 1px);
            left: 50%;
            transform: translateX(-50%);
            display: grid;
            grid-template-columns: minmax(0, 1fr);
            min-width: 15em;
            padding: 10px;
            background: #fff;
            border: 1px solid #eee;
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.08);
            border-radius: 10px;
            z-index: 1;

            .menu-item:not(:last-child) {
                border-bottom: 1px dotted #999;
            }

            & a {
                display: block;
                width: auto;
                height: auto;
                color: #333;
                font-size: .9em;
                text-align: left;
                padding: .5em;
            }
        }


        @media print,
        screen and (min-width:900px) {
            &.is-low {
                position: relative;
                top: auto;
                left: auto;
                right: auto;

                grid-template-columns: auto minmax(0, 1fr);
                gap: 3em;

                padding: 30px;

                .stm__menu {
                    gap: 1.5em;
                }

            }
        }

    }



    /*

    - 以下、SP用

    */
    @media screen and (max-width:1023px) {

        font-size: 14px;
        border-top: 1px solid #ccc;

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

        /* SP 各種パーツ - 見出し
        --------------------------------------------------------------- */

        .h-type1 {
            font-size: 25.6px;
            margin-bottom: 3.5em;
        }


        /* SP 各種パーツ - ボタン
        --------------------------------------------------------------- */

        .btn-type1 {
            background-position: right 10px center;
            border-radius: 7px;
            padding: .7em 3em .7em 1.5em;
        }

        .block-btn.is-large .btn-type1 {
            display: block;
            font-size: 20.4px;
            padding: 1.3em 1.5em 1.3em 1.5em;
            background-size: 22px auto;
        }


        /* SP 共通ブロック
        --------------------------------------------------------------- */

        .content-inr {
            max-width: none;
            padding: 0 20px;
        }

        .content-wrapper {
            padding: 30px 0;
        }


        /* SP トップページ - イメージスライダー
        --------------------------------------------------------------- */

        .sralme-mv-wrapper {
            position: relative;
            line-height: 1;

            .ofi {
                height: 90vw;
            }

            .block-slide {}

            .chara-pos {
                box-sizing: border-box;
                width: 100%;
                left: 0;
                padding-left: 2.66vw;
                margin: auto;
                bottom: -30vw;
            }

            .chara-pos img {
                width: 50%;
            }

            .chara-pos figcaption {
                position: absolute;
                left: auto;
                right: 2.42vw;
                width: 48.79vw;
                bottom: 14.49vw;
                font-size: 3.38vw;
                text-align: center;
                line-height: 1.4;
            }

        }


        /* SP トップページ - トレーラーハウス「Sral Me」
        --------------------------------------------------------------- */

        .block-top-strongpoint {
            padding: 24.15vw 0 9.66vw;
            overflow: inherit;
            margin-bottom: 55.56vw;
        }

        .block-top-strongpoint .txt-note {
            position: absolute;
            right: 0;
            bottom: -47vw;
            text-align: right;
        }

        .block-top-strongpoint .ttl {
            font-size: 6.28vw;
            text-align: center;
            margin-bottom: 3em;
            line-height: 1.4;
        }

        .block-top-strongpoint .ttl em {
            display: block;
            font-size: 1.33em;
        }

        .block-strongpoint {
            position: relative;
        }

        .block-strongpoint .txt {
            position: relative;
            font-size: 3.62vw;
            line-height: 1.33;
        }

        .block-strongpoint .txt h3 {
            font-size: 6.28vw;
            line-height: 1.08;
            margin-bottom: .3em;
        }

        .block-strongpoint .txt .more {
            margin-top: .8em;
        }

        .block-strongpoint .txt a {
            text-decoration: none;
        }

        .block-strongpoint figure {
            position: absolute;
            bottom: -60vw;
            width: 100%;
        }

        .block-strongpoint figure img {
            width: 100%;
        }

        .block-strongpoint figcaption .cap {
            width: 16vw;
            height: 16vw;
            border-radius: 8vw;
            font-size: 3.6vw;
        }

        /* - 用途 */

        .block-strongpoint.is-use {
            height: auto;
            background: none;
            z-index: 1;
            /*margin-bottom: 60vw;*/
            margin-bottom: 80vw;
        }

        .block-strongpoint.is-use:before {
            position: absolute;
            top: 0;
            left: 0;
            bottom: 0;
            margin: auto;
            content: "";
            width: 100%;
            height: calc(51.44vw + 9.66vw);
            background: #264F9E;
            z-index: -1;
            clip-path: polygon(0 0, 100% 20%, 100% 100%, 0 80%);
        }

        .block-strongpoint.is-use>.inr {
            box-sizing: border-box;
            width: 100%;
            padding: 0 4.83vw;
        }

        .block-strongpoint.is-use .txt {
            top: auto;
            left: auto;
        }

        .block-strongpoint.is-use figure {
            position: absolute;
            top: 35vw;
            right: 0;
        }

        .block-strongpoint.is-use figcaption .cap.is-1 {
            top: 0;
            right: 52.66vw;
        }

        .block-strongpoint.is-use figcaption .cap.is-2 {
            top: -5vw;
            right: 2.66vw;
        }

        .block-strongpoint.is-use>.inr:after {
            content: none;
        }

        /* - メリット */

        .block-strongpoint.is-merit {
            height: auto;
            background: none;
            margin-top: 0;
        }

        .block-strongpoint.is-merit:before {
            position: absolute;
            top: 0;
            left: 0;
            bottom: 0;
            margin: auto;
            content: "";
            width: 100%;
            height: calc(51.44vw + 9.66vw);
            background: #FFCC00;
            z-index: -1;
            clip-path: polygon(0 0, 100% 20%, 100% 100%, 0 80%);
        }

        .block-strongpoint.is-merit>.inr {
            box-sizing: border-box;
            width: 100%;
            padding: 0 20px;
        }

        .block-strongpoint.is-merit .txt {
            top: auto;
            left: auto;
        }

        .block-strongpoint.is-merit figure {
            position: absolute;
            top: 35vw;
            right: 0;
        }

        .block-strongpoint.is-merit figcaption .cap.is-1 {
            top: 0;
            left: auto;
            right: 52.66vw;
        }

        .block-strongpoint.is-merit figcaption .cap.is-2 {
            top: -5vw;
            left: auto;
            right: 2.66vw;
        }

        .block-strongpoint.is-merit>.inr:after {
            content: none;
        }


        /* SP トップページ - 商品情報
        --------------------------------------------------------------- */

        .block-top-lineup .ttl,
        .block-top-lineup .ttl+h3 {}

        .block-top-lineup .ttl {
            font-size: 25.6px;
            margin-bottom: 1.8em;
        }

        .block-top-lineup .ttl+h3 {
            font-size: 25.6px;
            line-height: 1.4;
            margin-bottom: 1em
        }

        .list-lineup {
            display: block;
            margin-bottom: 0;
        }

        .list-lineup>li {
            width: 100%;
            margin-bottom: 3em;
        }

        .list-lineup a {}

        .list-lineup img {
            height: 89.3vw;
        }

        .list-lineup h3 {
            font-size: 22.4px;
            line-height: 1.2;
            padding: .5em 1em;
        }

        .list-lineup figcaption {
            padding: 1.5em 2em;
        }


        .list-lineup .type {
            font-size: 22.4px;
        }

        .list-lineup .more {
            font-size: 16px;
            padding-right: 30px;
        }

        .list-lineup .type>span {}

        .block-lineup-msg {
            display: block;
            width: 100%;
            margin: 40px auto 0;
            line-height: 1.43;
        }

        .block-lineup-msg h4 {
            width: 100%;
            font-size: 28.9px;
            text-align: center;
            white-space: normal;
            margin-bottom: 1em;
        }

        .block-lineup-msg img {
            display: block;
            width: 70%;
            margin: 0 auto;
        }


        /* SP トップページ - 展示場
        --------------------------------------------------------------- */

        .block-top-showroom {
            padding: 40px 0 60px;
            line-height: 1.2;
        }

        .block-top-showroom h2 {
            font-size: 25.6px;
            font-weight: 700;
            margin-bottom: 1em;
        }

        .block-top-showroom h3 {
            font-size: 20px;
            margin-bottom: .8em;
        }

        .block-top-showroom .gmap iframe {
            height: 300px;
        }

        .block-top-showroom .cap {
            font-size: 17.6px;
            margin-top: 1em;
        }


        /* SP トップページ - 目的に合わせて
        --------------------------------------------------------------- */

        .block-top-em {
            font-size: 15px;
            padding: 30px 0;
            line-height: 1.8;
        }

        .block-top-em h2 {
            font-size: 1.5em;
            margin-bottom: .5em;
            line-height: 1.4;
        }


        /* SP トップページ - ムービーバナー
        --------------------------------------------------------------- */

        .content-inr.is-bnr-movie {
            padding: 8vw 0;
            width: 100%;
        }

        .bnr-movie {
            top: -22vw;
            right: 5%;
            width: 30%;
            margin: 0;
        }

        .content-inr.is-bnr-movie+.block-top-strongpoint {
            padding-top: 12vw;
        }


        /* SP 下層ページ - 特徴とメリット
        --------------------------------------------------------------- */

        .block-visual {}

        .block-visual .ofi {
            height: auto;
        }

        .block-visual .pos-character {
            width: 40%;
        }


        /* - SP 特徴とメリット */

        .section-merit {
            padding: 30px 0 0;
        }

        .section-merit .h-type1 {
            margin-bottom: 1em;
        }

        .block-merit-ol {
            padding: 40px 0;
        }

        .block-merit-ol ol {
            font-size: 18px;
            padding: 0 1em;
        }

        .block-merit-ol ol>li:not(:last-child) {
            margin-bottom: .8em;
        }

        .block-merit-ol .pos-character {
            display: none;
        }

        .section-3merit {
            padding: 30px 0;
        }

        .section-3merit ol {
            padding: 0;
        }

        .section-3merit ol>li {
            font-size: 15px;
            align-items: flex-start;
        }

        .section-3merit ol>li:not(:last-child) {
            margin-bottom: 2em;
        }

        .section-3merit ol>li:last-child .txt {
            padding-right: 0;
        }

        .section-3merit .ico {
            width: 15%;
        }

        .section-3merit .txt {
            width: 80%;
        }

        .section-3merit .txt h3 {
            font-size: 18px;
            font-weight: 700;
            color: #FF7F00;
        }

        .txt-note-lifeline {
            font-size: .8em;
            margin-top: 1em;
        }

        .section-3merit .pos-character {
            position: relative;
            right: auto;
            bottom: auto;
            width: 50%;
            margin: 1em 10px -20px auto;
        }


        /* - SP 写光レンタル販売のトレーラーハウスは */

        .section-about-th {
            font-size: 15px;
            padding: 40px 0;
        }

        .section-about-th .h-type1 {
            margin-bottom: 1em;
        }

        .section-about-th .figure {
            width: 50%;
            margin: 1.5em auto;
        }

        .section-about-th .figure img {
            width: 100%;
        }

        .section-about-th dl {
            display: block;
        }

        .section-about-th dt {
            width: auto;
            height: auto;
            font-size: 25.6px;
            padding: .5em;
            border-radius: 10px;
            margin-bottom: .5em;
        }

        .section-about-th dt+dd {
            width: 100%;
        }


        /* - ユニットハウスとの違い */

        .section-difference {
            font-size: 15px;
            padding: 40px 0;
        }

        .section-difference .content-inr {
            display: block;
        }

        .section-difference .txt {
            width: 100%
        }

        .section-difference .txt .h-type1 {
            text-align: center;
            margin-bottom: 1em;
        }

        .section-difference .txt .txt-note {
            font-size: .8em;
        }

        .section-difference .pos-character {
            width: 50%;
            margin: 2em auto 0;
        }


        /* SP 下層ページ - 製品情報
        --------------------------------------------------------------- */

        .tpl-product .h-type1 {
            margin-bottom: 1.5em;
        }

        .section-model .h-type1 {
            font-size: 20.4px;
        }

        /* - SP モデルリスト */

        .block-model-list {
            display: block;
        }

        .block-model-list h3 {
            font-size: 17px;
            line-height: 1.4;
            margin-bottom: 1em;
        }

        .block-model-list .box-model-list {
            padding: 15px;
        }

        .block-model-list>.is-business {
            width: 100%;
        }

        .block-model-list>.is-customer {
            width: 100%;
        }

        .block-model-list .box-model-list ul {}

        .block-model-list .box-model-list li {
            width: calc(50% - 10px);
        }

        .block-model-list .box-model-list li a {
            font-size: 20.4px;
            padding: 25px 0 10px;
            border-radius: 8px;
        }

        .block-model-list .box-model-list li a:after {
            top: 8px;
            border-width: 8px 5px 0 5px;
        }

        .block-model-list .box-model-list.is-customer li {
            width: 100%;
        }


        /* - SP モデル詳細 - タイトル */

        .item-header {
            height: auto;
            margin: 0;
        }

        .item-name {
            width: 140px;
            height: 140px;
            border-radius: 70px;
            font-size: 41.6px;
            margin: 0 auto 40px;
        }

        .item-name>span {
            font-size: .8em;
        }

        .item-header .pos-character {
            display: none;
        }

        .block-spec {
            position: relative;
            background: #e2f0f8;
            padding: 30px 20px;
        }

        .block-spec:not(:last-child) {
            margin-bottom: 40px;
        }

        .block-spec h2 {
            font-size: 25.6px;
            margin-bottom: .8em;
        }

        .block-spec h3 {
            margin-bottom: 40px;
        }

        .block-spec h3 span {
            font-size: 17.6px;
        }

        .block-spec th,
        .block-spec td {
            font-size: 14px;
            padding: .6em .8em;
        }

        .block-spec th {
            width: 110px;
        }

        .block-price {
            justify-content: center;
            margin-bottom: 3em;
        }

        .block-price dt {
            width: 48px;
            height: 48px;
            border-radius: 24px;
            font-size: 14.4px;
        }

        .block-price dd {
            font-size: 30px;
        }

        .block-price dd span {
            font-size: .5em;
        }

        .list-option {
            margin-bottom: -30px;
        }

        .list-option:after {
            content: none;
        }

        .list-option>li {
            width: calc(50% - 5px);
            margin-bottom: 30px;
        }

        .list-option figcaption {
            margin-top: .5em;
        }


        .list-spec {
            display: block;
            margin-bottom: -40px;
        }

        .list-spec>li {
            width: 100%;
            margin-bottom: 40px;
        }

        .list-spec li.is-plan figure {
            display: block;
        }

        .list-spec li.is-plan figure img {
            width: auto;
            height: auto;
        }

        .list-spec li.is-table {
            width: 100%;
        }

        .list-spec li.is-table .is-flex {
            display: block;
        }

        .list-spec li.is-table .is-flex table {
            width: 100%;
        }


        /* SP 下層ページ - 製品情報 - アイテムスライダー
        --------------------------------------------------------------- */

        .block-item-slider {
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            align-items: flex-start;
            margin-bottom: 35px;
        }

        #item-slider-main {
            width: 100%;
            height: 52vw;
            margin-bottom: 10px;
        }

        #item-slider-main img {
            display: block;
            width: auto;
            height: 52vw;
            margin: 0 auto;
        }

        #item-slider-thumbnail {
            position: relative;
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            width: 100%;
            height: auto;
        }

        #item-slider-thumbnail:after {
            content: "";
            width: calc(25% - 5px);
        }

        #item-slider-thumbnail .thumbnail-slide {
            width: calc(25% - 5px);
            height: 18.4vw;
            margin: 0;
        }

        #item-slider-thumbnail .thumbnail-slide:last-child {
            margin-bottom: 0;
        }

        #item-slider-thumbnail .thumbnail-slide.thumbnail-current {
            opacity: 1;
        }

        #item-slider-thumbnail h3 {
            margin: 20px 0 10px 0px;
        }


        /* SP 新規追加 - すらるみーメニュー - トップ
        --------------------------------------------------------------- */

        .sralme-top-menu {
            position: relative;
            top: auto;
            left: auto;
            right: auto;
            gap: 10px;
            padding: 15px 5px;

            & h2,
            .sralme-logo {
                width: 140px;
            }

            .stm__menu {
                display: flex;
                flex-wrap: wrap;
                justify-content: center;
                align-items: center;
                gap: 1.1em;
            }

            & a {
                font-size: 14px;
            }

            .menu-item-has-children>a {
                pointer-events: none;
            }

        }



    }


}