body {
    font-family: "yu-mincho-pr6n", sans-serif;
}

/* SPレスポンシブ */

.yazi {
    font-size: 16px;
    text-align: center;
    margin: auto;

}

@media screen and (max-width: 1200px) {

    .pc {
        display: none;
    }

    .fv img {
        width: 100%;
        height: auto;
        object-fit: cover;
        object-position: center;
        position: relative;
    }

    .max-width {
        max-width: 95%;
        margin: auto;
        position: relative;
        z-index: 10;
        color: white;
    }

    .scroll-scene {
        position: relative;
        height: 200vh;
        /* 100vhでimage1 → image2切替、さらに100vhで次のセクションへ */
    }

    .scene-image {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        background-size: cover;
        background-position: center;
        opacity: 0;
        transition: opacity 1s ease;
        z-index: 1;
    }

    #image1 {
        background-image: url('../img/fvpc.jpg');
        z-index: 2;
        opacity: 1;
    }

    #image2 {
        background-image: url('../img/fvpc2.jpg');
        z-index: 1;
        opacity: 0;
    }

    .scene-image.static {
        position: relative;
        z-index: 0;
        /* 背景として最下層 */
        opacity: 1 !important;
        transition: none;
    }

    .footerlogo {
        text-align: center;
        margin-bottom: 25px;
    }

    .footerlogo img {
        padding-top: 20px;
        width: 98px;
        text-align: center;
    }

    .footertext {
        font-size: 13px;
        line-height: 1;
        text-align: center;
        padding-bottom: 24px;
    }

    .footertext+.footertext {
        padding-bottom: 15px;
    }

    .whitebar {
        width: 250px;
        height: 1.5px;
        /* ご指定 */
        background: #fff;
        margin: auto;
        margin-bottom: 20px;
    }

    .listTab {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 10px;
        max-width: 95%;
        margin: 0 auto;
        padding-top: 10px;
    }

    /* 1行3個になる幅を固定 */
    .listTab li {
        list-style: none;
        flex: 0 1 calc((100% - 20px) / 3);
        /* gap10px×2=20px を引いて3等分 */
        background-color: #333333;
        border: 2px solid #fff;
        box-sizing: border-box;
        text-align: center;
    }

    /* aのmarginで幅が崩れてたので padding に寄せる */
    .listTab li a {
        display: block;
        padding: 6px 0;
        margin: 0;
        font-size: 16px;
        text-decoration: none;
        transition: all 0.3s ease;
        color: #fff !important;
    }

    /* active（背景はliに、文字色はaに） */
    .listTab li.active {
        background: #fff;
    }

    .listTab li.active a {
        color: #333333 !important;
    }

    .listTab li a:hover {
        color: #fff;
    }


    .inner {
        position: relative;
    }

    .tabbox {
        display: none;
        /* 最初は全て非表示 */
    }

    .tabbox.active {
        display: block;
        /* アクティブなタブのみ表示 */
    }

    .slider {
        /*横幅94%で左右に余白を持たせて中央寄せ*/
        width: 100%;
        margin: 0 auto;
    }

    .slider img {
        width: 100%;
        /*スライダー内の画像を横幅100%に*/
        height: auto;
    }

    /*slickのJSで書かれるタグ内、スライド左右の余白調整*/

    .slider .slick-slide {
        margin: 0 10px;
    }

    /*矢印の設定*/

    /*戻る、次へ矢印の位置*/
    .slick-prev,
    .slick-next {
        position: absolute;
        /*絶対配置にする*/
        top: 42%;
        cursor: pointer;
        /*マウスカーソルを指マークに*/
        outline: none;
        /*クリックをしたら出てくる枠線を消す*/
        border-top: 2px solid #666;
        /*矢印の色*/
        border-right: 2px solid #666;
        /*矢印の色*/
        height: 15px;
        width: 15px;
        display: none !important;

    }

    .slick-prev {
        /*戻る矢印の位置と形状*/
        left: -1.5%;
        transform: rotate(-135deg);
    }

    .slick-next {
        /*次へ矢印の位置と形状*/
        right: -1.5%;
        transform: rotate(45deg);
    }

    /*ドットナビゲーションの設定*/


    .slick-dots li {
        display: none;
        margin: 0 5px;
    }

    /* .slick-dots button {
    color: transparent;
    outline: none;
    width: 8px;
    height: 8px;
    display: block;
    border-radius: 50%;
    background: #ccc;
} */

    .slick-dots .slick-active button {
        background: white;
        color: white
    }

    .scroll-scene {
        position: relative;
        height: 200vh;
        /* 100vhでimage1 → image2切替、さらに100vhで次のセクションへ */
    }

    .scene-image {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        background-size: cover;
        background-position: center;
        opacity: 0;
        transition: opacity 1s ease;
        z-index: 1;
    }

    #image1 {
        background-image: url('../img/fvpc.jpg');
        z-index: 2;
        opacity: 1;
    }

    #image2 {
        background-image: url('../img/fvpc2.jpg');
        z-index: 1;
        opacity: 0;
    }

    .scene-image.static {
        position: relative;
        z-index: 0;
        /* 背景として最下層 */
        opacity: 1 !important;
        transition: none;
    }

    .bg-block {
        background-image: url(../img/bg_block.jpg);
        background-size: 100% auto;
        /* 横は100%固定、縦は比率 */
        background-position: center top;
        position: relative;
        z-index: 10;
        /* image2より前面に出す */
    }

    .concepttitle {
        font-size: 28px;
        line-height: 1;
        padding-top: 20px;
        padding-bottom: 20px;
    }

    .conceptsubtitle {
        font-size: 18px;
        line-height: 1.8;
        padding-bottom: 20px;
    }

    .concepttext {
        font-size: 14px;
        padding-bottom: 20px;
    }

    .conceptflex {
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 必要なら縦位置調整 */
        column-gap: 10%;
        /* ← ここがポイント：間だけ10% */
    }

    .conceptleft {
        flex: 0 0 40%;
        /* 幅をきっちり固定（縮まない） */
    }

    .conceptimage img {
        width: 100%;
        height: auto;
        display: block;
        /* 画像下の余白対策 */
    }

    .conceptimage {
        flex: 0 0 50%;
        padding-bottom: 20px;
    }

    .gallerytitle {
        font-size: 28px;
        text-align: center;
        padding-top: 20px;
        padding-bottom: 20px;
    }

    .gallerysubtitle {
        font-size: 16px;
        text-align: center;
    }

    .gallerytext {
        max-width: 95%;
        margin: auto;
        font-size: 16px;
        text-align: left;
        margin-top: 20px;
        margin-bottom: 20px;
    }

    .bg-wall {
        background-image: url(../img/bg_wall.jpg);
        background-size: 100% auto;
        /* 横は100%固定、縦は比率 */
        background-position: center top;
        position: relative;
        z-index: 10;
        /* image2より前面に出す */
        overflow: hidden;
    }

    .bg-wood {
        background-color: #f5edde;
        color: #4d4d4d;
    }

    .modelflex {
        color: #4d4d4d;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 必要なら縦位置調整 */
        column-gap: 10%;
        /* ← ここがポイント：間だけ10% */
        /* row-gap: 20px;         複数行に折れる可能性があるなら行間も */
        /* justify-content:flex-start; デフォでOK。space-betweenは不要 */
        padding-bottom: 40px;
    }

    .modelleft {
        flex: 0 0 40%;
        /* 幅をきっちり固定（縮まない） */
    }

    .modelleft img {
        width: 100%;
        height: auto;
        display: block;
        /* 画像下の余白対策 */
    }

    .modelright {
        flex: 0 0 50%;
    }

    .modelplan {
        font-size: 28px;
        text-align: center;
        color: #a67c52;
        padding-top: 20px;
        padding-bottom: 20px;
    }

    .modelplantitle {
        font-size: 22px;
        margin-bottom: 20px;

        margin-bottom: 20px;
        text-align: center;
    }

    .modelplansubtitle {
        font-size: 18px;
        margin-bottom: 20px;
        text-align: center;
    }

    .modelplantext {
        font-size: 16px;
        margin-bottom: 20px;
    }

    .infoimg {
        width: 100%;
    }

    .infoimg img {
        width: 100%;
    }


    .gmap-wrap {
        position: relative;
        aspect-ratio: 5 / 4;
        overflow: hidden;
        background: #f7f7f7;
    }

    .footerlogo img {
        padding-top: 48px;
        width: 98px;
    }

    .footertext {
        font-size: 13px;
        line-height: 1;
        padding-bottom: 15px;
    }

    .whitebar {
        width: 250px;
        height: 1.5px;
        /* ご指定 */
        background: black;
        margin: 13px 0;
        /* 余白はお好みで */
    }

    .location {
        font-size: 36px;
        text-align: center;
        color: #4d4d4d;
        padding-top: 20px;
        padding-bottom: 20px;
    }

}