@charset "UTF-8";

.fade_Box {
    opacity: 0;
    transition: 1s;
}

.fade_Box.animated {
    opacity: 1;
}

/* body {
    overflow: hidden !important;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.body::-webkit-scrollbar {
    display: none;
}

.body::-webkit-scrollbar {
    display: none;
} */


/* main */
/* メインビジュアルのコンテナ設定 */
.main_visual {
    position: relative;
    width: 100vw;
    /* height: 85vh; */
    overflow: hidden;
}

.main_visual figcaption {
    border: 1px solid #c00;
}

/* 背景動画の共通スタイル */
.background-video {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    transition: opacity 1s ease-in-out;
    /* 透明度の変化を1秒かけて滑らかにする */
}

.background-video {
    transition: opacity 4s ease-in-out;
}

/* テキストのスタイル */
.text {
    font-size: 36px;
    color: #412514;
    letter-spacing: 10px;
    top: 50%;
    transform: translateY(-50%);
}

#text4 p.text4_1 {
    width: 100%;
    margin-bottom: 25px;
}

#text4 p.ani_logo {
    width: 40%;
    margin: 0 auto 0 auto;
    padding-right: 25px;
}


/* 要素のスタイル */
.element p {
    font-size: 22px;
    color: #412514;
    letter-spacing: 3px;
}

.element p.big {
    font-size: 36px;
}

.element ul.flex {
    width: 98%;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    margin: 20px auto 0;
}

.element ul.flex li {
    width: calc((100% - 40px) / 5);
    font-size: 16px;
    line-height: 1.3;
    /* font-size: 1.1vw; */
    color: #fff;
    letter-spacing: 3px;
    padding: 6px 4px 7px 4px;
}

.element ul.flex li:not(:last-of-type) {
    color: #fff;
    background: #412514;
}

.element ul.flex li:last-of-type {
    padding: 0;
}

/* MV内資料請求ボタン */
#element9 {
    bottom: 3%;
}

#element9.btnchangeline span {
    text-wrap: nowrap;
}

/* メインをスライド仕様に変更_20240610 */
.main {
    overflow: hidden;
    position: relative;
}

/* teiki */
.teiki {
    background-image: -moz-linear-gradient(0deg, rgb(171, 119, 69) 0%, rgb(171, 119, 69) 0%, rgb(200, 169, 103) 50%, rgb(171, 119, 69) 100%);
    background-image: -webkit-linear-gradient(0deg, rgb(171, 119, 69) 0%, rgb(171, 119, 69) 0%, rgb(200, 169, 103) 50%, rgb(171, 119, 69) 100%);
    background-image: -ms-linear-gradient(0deg, rgb(171, 119, 69) 0%, rgb(171, 119, 69) 0%, rgb(200, 169, 103) 50%, rgb(171, 119, 69) 100%);
    padding: 25px 0;
}

.teiki p {
    width: 90%;
    /*    max-width: 922px;*/
    max-width: 694px;
    margin: 0 auto;
}

.teiki a {
    display: block;
    max-width: 380px;
    font-size: 18px;
    margin: 0;
    line-height: 1;
    text-align: center;
    padding: 15px 0;
    margin: 28px auto 0;
    transition: unset;
}

.teiki a.btnchangeline:hover span {
    color: #fff;
}

.teiki .req_box {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 94%;
    /* max-width: 982px; */
    max-width: 1200px;
    margin: 28px auto 0;
}

.teiki .req_box .shine {
    width: 41.214750542299349%;
    max-width: 380px;
    margin: 0;
}

.teiki .req_box a {
    width: 100%;
    /* width: 41.214750542299349%; */
    margin: 0;
}

.teiki .req_box p {
    color: #fff;
    display: block;
    width: fit-content;
    letter-spacing: 2px;
    /*border-left: 1px solid #000;*/
    margin: 0 0 0 30px;
}

.teiki p.annai-bnr {
    max-width: 770px;
    margin: 40px auto 0;
}

/* point */
.point {
    background-image: -moz-linear-gradient(1deg, rgb(253, 253, 249) 0%, rgb(246, 238, 217) 100%);
    background-image: -webkit-linear-gradient(1deg, rgb(253, 253, 249) 0%, rgb(246, 238, 217) 100%);
    background-image: -ms-linear-gradient(1deg, rgb(253, 253, 249) 0%, rgb(246, 238, 217) 100%);
    padding: 20px 0 15px 0;
}


.point_img {
    display: block;
    width: 90%;
    max-width: 1192px;
    margin: 0 auto;
    transition: all .5s;
}

.point_img:hover {
    opacity: 0.7;
}

/* ancher-illust */
.ancher-illust {
    width: 100%;
    padding-bottom: 40px;
    margin: 100px auto 0;
}

#illust-ancher {
    width: 100%;
}

/* モーダル */
.modal {
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 9999;
}

.modal__bg {
    width: 100%;
    height: 100vh;
    background: rgba(0, 0, 0, 0.8);
    position: absolute;
}

.modal__illust {
    width: 90%;
    max-width: 1100px;
    padding: 0 40px;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.modal__illust figure {
    position: relative;
}

.modal__illust a {
    position: absolute;
    top: -55px;
    right: 40px;
    color: #878787;
    font-size: 25px;
    letter-spacing: 4px;
    background: #fff;
    padding: 10px 8px 10px 12px;
}

.modal__illust img {
    width: 100%;
}

.js-modal-close {
    cursor: pointer;
}

/* 資料請求ボタン */
a.request_list {
    display: block;
    width: 100%;
    max-width: 310px;
    color: #fff;
    letter-spacing: 3px;
    line-height: 1.3;
    text-align: center;
    padding: 10px 0 10px 0;
    margin: 20px auto 0;
    transition: all .5s;
}

a.request_list.btnchangeline::after {
    z-index: -1;
}

a.request_list.btnchangeline:hover {
    color: #040000;
    text-shadow: 0px 0px 7px rgba(255, 255, 255, 1), 0px 0px 7px rgba(255, 255, 255, 1), 0px 0px 7px rgba(255, 255, 255, 1), 0px 0px 7px rgba(255, 255, 255, 1);
}

/* concept */
.hidden_box {
    overflow-x: hidden;
}

.concept {
    background-image: url(../img/copy_bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    padding: 0 0 150px 0;
}

.concept_maincopy {
    width: 34%;
    margin: 35vw auto 4vw;
}

.concept .concept_ttl {
    font-size: 21px;
    letter-spacing: 2px;
    line-height: 2.5;
    text-align: center;
}

.concept .concept_txt {
    font-size: 14px;
    letter-spacing: 2px;
    line-height: 2;
    text-align: center;
    text-shadow: 2px 3px 12px rgba(255, 255, 255, 1), 2px 3px 12px rgba(255, 255, 255, .5);
}

/* NEW_cocnept仕様_20231123 */
.concept_img .ttl_yoko {
    display: inline-block;
    box-sizing: border-box;
    min-height: 30px;
    max-height: 50px;
}

.concept_img .ttl_yoko::after {
    display: block;
    content: "";
    width: 100%;
    height: 1px;
    background: #412514;
    position: absolute;
}

.concept_img .ttl_yoko::before {
    display: block;
    content: "";
    width: 55%;
    height: 6px;
    background: #412514;
    position: absolute;
}

.concept_img .ttl_tate {
    display: inline-block;
    box-sizing: border-box;
    min-width: 33px;
}

.concept_img .ttl_tate::after {
    display: block;
    content: "";
    width: 1px;
    height: 100%;
    background: #412514;
    position: absolute;
}

.concept_img .ttl_tate::before {
    display: block;
    content: "";
    width: 6px;
    height: 40%;
    background: #412514;
    position: absolute;
}

/* 日本語テキストも追加_20231129 */
.txt_yoko {
    width: 14.5vw;
    position: absolute;
}

.txt_tate {
    width: 1.1vw;
    position: absolute;
}

/* img01 */
.concept_img .img01 {
    width: 73.3%;
    margin: 0 auto 0 0;
    position: relative;
}

/* relax */
.concept_img .img01 .ttl_yoko.relax {
    display: inline-block;
    /* width: 30vw; */
    width: 21vw;
    padding-bottom: 20px;
    position: absolute;
    left: 0;
    bottom: -7vw;
}

.concept_img .img01 .ttl_yoko.relax::after {
    bottom: 0;
    left: 0;
    padding-right: 34vw;
}

.concept_img .img01 .ttl_yoko.relax::before {
    left: 0;
    bottom: -2px;
}

/* relax */
.txt_yoko.txt_relax {
    bottom: -9.5vw;
    left: 6vw;
}

/* img02 */
.concept_img .img02 {
    /* width: 50%; */
    width: 47.66%;
    margin: -23vw 5% 0 auto;
    position: relative;
    z-index: 6;
}

/* img03 */
.concept_img .img03 {
    width: 55%;
    margin: -9vw auto 0 0;
    position: relative;
    z-index: 5;
}

/* beautiful */
.concept_img .img03 .ttl_tate.beautiful {
    display: inline-block;
    /* width: 2.8vw; */
    width: 2.3vw;
    /* padding: 0vw 0 11vw 20px; */
    padding: 0vw 0 29vw 20px;
    position: absolute;
    left: 5vw;
    bottom: -1.5vw;
    position: absolute;
    z-index: 0;
}

.concept_img .img03 .ttl_tate.beautiful::after {
    bottom: 0;
    left: 0;
}

.concept_img .img03 .ttl_tate.beautiful::before {
    left: -2px;
    top: 0
}

.txt_tate.txt_beautiful {
    left: 2.5vw;
    bottom: 15.5vw;
}

/* img04 */
.concept_img .img04 {
    width: 49%;
    margin: -32vw 0 0 auto;
    position: relative;
    z-index: 4;
}

/* future */
.concept_img .img04 .ttl_tate.future {
    display: inline-block;
    width: 2.3vw;
    /* padding: 5.5vw 0 5.5vw 20px; */
    padding: 7.5vw 0 14.5vw 20px;
    position: absolute;
    right: 10vw;
    top: -36vw;
    z-index: -1;
}

.concept_img .img04 .ttl_tate.future::after {
    bottom: 0;
    left: 0;
}

.concept_img .img04 .ttl_tate.future::before {
    left: -2px;
    top: 0
}

.txt_tate.txt_future {
    top: -24.5vw;
    right: 14vw;
}

/* img05 */
.concept_img .img05 {
    /* width: 68%; */
    width: 67%;
    margin: 3.8vw auto 0 0;
    position: relative;
    z-index: 5;
}

/* smart */
.concept_img .img05 .ttl_tate.smart {
    display: inline-block;
    /* width: 2.8vw; */
    width: 2.3vw;
    padding: 25.2vw 0 0 20px;
    /* padding: 15.2vw 0 4.6vw 20px; */
    position: absolute;
    right: 5vw;
    top: -2vw;
    /* bottom: -0.8vw; */
    z-index: 0;
}

.concept_img .img05 .ttl_tate.smart::after {
    bottom: 0;
    left: 0;
}

.concept_img .img05 .ttl_tate.smart::before {
    left: -2px;
    top: 5vw;
}

.txt_tate.txt_smart {
    right: 9.5vw;
    top: 11vw;
}

/* img06 */
.concept_img .img06 {
    width: 32%;
    padding-right: 0%;
    margin: -24vw 0 0 auto;
    position: relative;
    z-index: 6;
}

/* comfort */
.concept_img .img06 .ttl_yoko.comfort {
    display: inline-block;
    /* width: 28vw; */
    width: 19vw;
    padding-bottom: 20px;
    position: absolute;
    right: 0;
    top: -15vw;
    z-index: 10;
}

.concept_img .img06 .ttl_yoko.comfort::after {
    bottom: 0;
    left: 0;
}

.concept_img .img06 .ttl_yoko.comfort::before {
    right: 0;
    bottom: -2px;
}

.txt_yoko.txt_comfort {
    right: 4vw;
    top: -11vw;
}


/* コンセプト用キャプション */
.concept_img .cap02 {
    right: 16.5vw;
    bottom: -5px;
}

.concept_img .cap03 {
    right: -2vw;
    bottom: -15px;
}

.concept_img .cap04 {
    right: 1vw;
    bottom: -15px;
}

.concept_img .cap05 {
    left: 1vw;
    bottom: 5.5vw;
}

.concept_img .cap06 {
    bottom: 0;
}

.fade_Left {
    opacity: 0;
    transform: translateX(-100px);
    transition: 3s ease;
}

.fade_Right {
    opacity: 0;
    transform: translateX(100px);
    transition: 3s ease;
}

/* スクロールで拡大 */
.effect img {
    opacity: 0;
    transform: scale(1);
    transition: opacity 1s ease, transform 1s ease;
}

.effect.active img {
    opacity: 1;
    transform: scale(1.1);
}

.effect.active img.life_02 {
    transform: scale(1.1) translateX(-50px);
}


/* lead_copy */
.bg_white {
    overflow: hidden;
}

.hidden_box {
    overflow-y: hidden;
}

/* under_bnr（pc用） */
.under_bnr_pc {
    padding: 0;
}

.under_bnr_sp {
    display: none;
}

.under_flex01 {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-wrap: wrap;
}

.under_flex02 {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    /* margin-top: 100px; */
    /* margin-top: 340px; */
    margin-top: 260px;
}

.under_item {
    position: relative;
}

.under_item .en {
    width: 6%;
    position: absolute;
}

.under_txt {
    color: #fff;
    letter-spacing: 3px;
    position: relative;
    z-index: 10;
}

.under_txt .sub {
    display: inline-block;
    /* font-size: 26px; */
    font-size: 1.6vw;
    letter-spacing: 4px;
    margin-bottom: 40px;
}

.under_txt .txt_flex {
    display: inline-flex;
    flex-direction: column;
}

.txt_flex .normal {
    align-self: flex-start;
    line-height: 2;
    letter-spacing: 2px;
}



/* location */
.under_item.location {
    width: 45.75%;
}

.under_item.location .en {
    top: 50px;
    right: -1vw;
}

.under_item.location .under_txt {
    margin-top: -90px;
    padding-left: 5vw;
}

.under_item.location .under_txt .sub {
    width: 100%;
}

.under_item.location .under_txt .normal {
    color: #040000;
}

/* access */
.under_item.access {
    width: 48%;
}

.under_item.access .en {
    top: 0;
    left: 7vw;
    z-index: 20;
}

.under_item.access .under_txt {
    display: flex;
    flex-direction: column;
    margin-bottom: -60px;
}

.under_item.access .under_txt .sub {
    align-self: flex-start;
    color: #040000;
    margin-left: 16vw;
}

.under_item.access .under_txt .normal {
    color: #040000;
    text-shadow: 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1);
}

.under_item.access .under_txt .txt_flex {
    align-self: flex-start;
    margin-left: 16vw;
}

.under_item.access figure {
    margin-bottom: -270px;
}


/* design */
.under_item.design {
    width: 40%;
    margin-top: -210px;
}

.under_item.design .under_txt {
    display: flex;
    flex-direction: column;
    margin-top: 50px;
}

.under_item.design .under_txt .sub {
    align-self: flex-start;
    color: #040000;
    margin-left: 10vw;
}

.under_item.design .under_txt .normal {
    color: #040000;
}

.under_item.design .under_txt .txt_flex {
    align-self: flex-start;
    margin-left: 10vw;
}

.under_item.design figure {
    margin-top: -60px;
    position: relative;
}

.under_item.design figure .en {
    top: 0;
    right: -3vw;
}

/* plan */
.under_item.plan {
    width: 43%;
    margin-bottom: -220px;
}

.under_item.plan .under_txt {
    margin-top: -100px;
}

.under_item.plan .en {
    top: 60px;
    right: 9.5vw
}

.under_item.plan .under_txt .sub {
    align-self: flex-start;
    color: #040000;
    text-shadow: 0px 0px 7px rgba(255, 255, 255, 1), 0px 0px 7px rgba(255, 255, 255, 1), 0px 0px 7px rgba(255, 255, 255, 1), 0px 0px 7px rgba(255, 255, 255, 1), 0px 0px 7px rgba(255, 255, 255, 1), 0px 0px 7px rgba(255, 255, 255, 1), 0px 0px 7px rgba(255, 255, 255, 1), 0px 0px 7px rgba(255, 255, 255, 1), 0px 0px 7px rgba(255, 255, 255, 1);
    margin-left: 16vw;
}

.under_item.plan .under_txt .normal {
    color: #040000;
    text-shadow: 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1);
}

.under_item.plan .under_txt .txt_flex {
    align-self: flex-start;
    margin-left: 16vw;
}

.under_item.plan figure {
    width: 82.5%;
}

/* brand */
.under_item.brand {
    width: 47.3%;
}

.under_item.brand .under_txt {
    display: flex;
    flex-direction: column;
    margin-top: 200px;
}

.under_item.brand .under_txt .sub {
    align-self: flex-start;
    color: #040000;
    margin-left: 2vw;
}

.under_item.brand .under_txt .normal {
    color: #040000;
}

.under_item.brand .under_txt .txt_flex {
    align-self: flex-start;
    margin-left: 2vw;
}

.under_item.brand figure {
    margin-top: -60px;
    position: relative;
}

.under_item.brand figure .en {
    top: 110px;
    left: -1.4vw;
}

/* ボタン位置ランダムから統一に変更_20231122 */
.under_item .link_box {
    position: relative;
}

.more_btn {
    display: inline-block;
    background: rgba(48, 24, 28, .8);
    border: 1px solid #fff;
    padding: 1px 15px 10px 15px;
    transition: all .5s;
    position: absolute;
    bottom: -60px;
    right: 2%;
    z-index: 20;
}

.more_btn:hover {
    opacity: 0.7;
}

.more_btn img {
    width: 131px;
}

/* location */
.under_item.location .under_txt {
    margin-top: 0;
    position: absolute;
    bottom: 0vw;
}

/* access */
.under_item.access .under_txt {
    margin-bottom: -10px;
}

/* plan */
.under_item.plan .under_txt {
    margin: 0;
    position: absolute;
    bottom: 1.5vw;
    left: 2vw;
}

.under_item.plan .under_txt .sub {
    margin: 0;
}

.under_item.plan .under_txt {
    display: inline-block;
}

.under_item.plan .more_btn {
    right: 19.5%;
}

/* brand */
.under_item.brand figure {
    margin-top: -10px;
}

.under_item.brand .image_link {
    position: relative;
}

.under_item.brand .image_link .en {
    top: 6vw;
    left: -1.5vw;
}

/* 画像ホバーでズーム */
.image_link {
    display: block;
    position: relative;
}

.image_link figure {
    overflow: hidden;
}

.image_link figure span img {
    transition: 0.4s all;
}

.image_link figure span:hover img {
    transform: scale(1.2, 1.2);
    transition: 0.4s all;
}

/* ホバーで光らせる */
.image_link figure span {
    display: block;
    width: 100%;
    height: 100%;
    background: #fff;
    overflow: hidden;
    position: relative;
}

.image_link figure span::before {
    position: absolute;
    top: 0;
    left: -75%;
    z-index: 2;
    display: block;
    content: '';
    width: 50%;
    height: 100%;
    background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .3) 100%);
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .3) 100%);
    -webkit-transform: skewX(-25deg);
    transform: skewX(-25deg);
}

.image_link figure span:hover::before {
    -webkit-animation: shine 1s;
    animation: shine 1s;
    animation-fill-mode: none;
}

@-webkit-keyframes shine {
    100% {
        left: 125%;
    }
}

@keyframes shine {
    100% {
        left: 125%;
    }
}

/* 休暇のお知らせ追加 */
.holiday {
    margin: 100px auto;

}

.holiday .flex {
    flex-wrap: wrap;
    justify-content: center;
}

.holiday .flex .ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 20%;
    font-size: 14px;
    color: #fff;
    border: 1px solid #710b0b;
    background: #710b0b;
    padding: 10px;
}

.holiday .flex .txt {
    width: 80%;
    font-size: 14px;
    border: 1px solid #710b0b;
    background: #fff;
    padding: 10px 10px 10px 20px;
}

/* 休暇のお知らせ追加パターン02 */
/* holiday02 */
.holiday02 {
    width: 90%;
    max-width: 1000px;
    border: 1px solid #870000;
    padding: 20px 20px;
    margin: 60px auto 80px;
}

.holiday02 p {
    letter-spacing: 2px;
    line-height: 1.5;
    text-align: center;
}

.h-ttl {
    font-size: 22px;
    color: #870000;
    margin-bottom: 15px;
}

.h-text {
    font-size: 17px;
    margin-bottom: 5px;
}

.h-small {
    font-size: 13px;
}


/* 緊急のアナウンス */
.attention {
    margin: 50px auto;

}

.attention .flex {
    flex-wrap: wrap;
    justify-content: center;
}

.attention .flex .ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    font-size: 14px;
    color: #fff;
    border: 1px solid #710b0b;
    background: #710b0b;
    padding: 10px;
}

.attention .flex .txt {
    width: 100%;
    font-size: 14px;
    text-align: center;
    border: 1px solid #710b0b;
    background: #fff;
    padding: 10px 10px 10px 20px;
}

/* トップのみの注釈マージン */
#indexP .notes {
    margin: 170px auto 0;
}

/* 20240116_メンテ */
.concept {
    /* padding: 150px 0 150px 0; */
    padding: 0 0 150px 0;
}

.concept_img {
    display: none;
}

.concept_maincopy {
    margin: 0 auto 20px;
}

/* 20240205_メンテ */
.illust_box {
    /* padding: 40px 0 50px; */
    padding: 0 0 50px;
}

.illust_box figure {
    position: relative;
}

.illust_box figure figcaption {
    bottom: 5%;
    right: 10px;
}

/* 20240208＿トップ大幅改修 */
.concept {
    padding: 0 0 75px 0;
}

.new_secttl {
    display: flex;
    align-items: center;
    font-size: 20px;
    letter-spacing: 1.5px;
    text-align: center;
    margin-bottom: 40px;
}

.new_secttl .line01 {
    display: block;
    content: "";
    flex: 1;
    height: 1px;
    background: #000;
    margin-right: 30px;
}

.new_secttl .line02 {
    display: block;
    content: "";
    flex: 1;
    height: 1px;
    background: #000;
    margin-left: 30px;
}


.inner_1352 {
    width: 90%;
    max-width: 1352px;
    margin: 0 auto;
}

/* 特集＆キャンペーンここから */
.special_bnr {
    /* padding: 75px 0 0 0; */
    padding: 150px 0 0 0;
}

.special_bnr .new_secttl {
    width: 90%;
    max-width: 1352px;
    margin: 0 auto 40px;
}

.slick01 {
    width: 100%;
    /* max-width: 1352px; */
    margin: 0 auto;
    position: relative;
}

.slider_item01 a {
    display: block;
    margin: 0 15px;
    position: relative;
}

.slider_item01.icon_new {
    position: relative;
}

.slider_item01.icon_new::before {
    display: block;
    content: "NEW";
    font-size: 16px;
    letter-spacing: 1px;
    color: #fff;
    background: #710b0b;
    padding: 5px 10px;
    position: absolute;
    top: 0;
    left: 15px;
    z-index: 99;
}

/* 特集スライドの矢印カスタマイズ */
/* .slick01 .slick-prev:hover,
.slick01 .slick-prev:focus,
.slick01 .slick-next:hover,
.slick01 .slick-next:focus {
    background-color: rgba(59, 59, 65, 0.9);
    background-color: rgba(255, 255, 255, .9);
} */

/*表示する文字周りの設定*/
.slick01 .slick-prev:before {
    content: '〈';
    /* color: #fff; */
    color: #000;
    opacity: 1;
    font-size: 28px;
}

.slick01 .slick-next:before {
    content: '〉';
    /* color: #fff; */
    color: #000;
    opacity: 1;
    font-size: 28px;
}

/*背景や位置の調整*/
.slick01 .slick-prev {
    left: 30%;
    bottom: -20%;
    top: initial;
    transform: initial;
    z-index: 99;
    width: auto;
    height: auto;
    padding: 10px;
    color: #fff;
    /* background-color: rgba(59, 59, 65, 0.9); */
    transition: .4s;
}

.slick01 .slick-next {
    right: 30%;
    bottom: -20%;
    top: initial;
    transform: initial;
    z-index: 99;
    width: auto;
    height: auto;
    padding: 10px;
    /* background-color: rgba(59, 59, 65, 0.9); */
    transition: .4s;
}

.slick01 .slick-prev:hover,
.slick01 .slick-next:hover {
    opacity: 0.7;
}


/* 特集スライドのドットカスタマイズ */
.slick01 .slick-dots {
    bottom: -16%;
}

.slick01 .slick-dots li {
    margin: 0 4px;
    width: 70px;
    height: 5px;
}

.slick01 .slick-dots li button:before {
    content: '';
    width: 70px;
    height: 5px;
    background: #E0E0E0;
    opacity: 1;
}

.slick01 .slick-dots li.slick-active button:before {
    background: #402414;
}

/* 物件の魅力ここから */
.charm_bnr {
    margin: 200px auto 0;
}

.slider_item02 div.pos {
    display: block;
    position: relative;
}

.slider_item02.icon_new {
    position: relative;
}

.slider_item02.icon_new::before {
    display: block;
    content: "NEW";
    font-size: 20px;
    letter-spacing: 1px;
    color: #fff;
    background: #710b0b;
    padding: 5px 10px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 99;
}

/* シャドウ */
.slider_item02 div.pos::before {
    display: block;
    content: "";
    width: 100%;
    height: 30%;
    background: -moz-linear-gradient(top, rgba(30, 87, 153, 0) 0%, rgba(0, 0, 0, 0.8) 100%);
    background: -webkit-linear-gradient(top, rgba(30, 87, 153, 0) 0%, rgba(0, 0, 0, 0.8) 100%);
    background: linear-gradient(to bottom, rgba(30, 87, 153, 0) 0%, rgba(0, 0, 0, 0.8) 100%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 5;
}

.slider_item02 div.pos .text_link {
    background: rgba(65, 37, 20, 0.85);
    padding: 30px;
    position: absolute;
    top: 9%;
    left: 5%;
}

.slider_item02 div.pos .text_link .bigttl {
    font-size: 32px;
    color: #fff;
    letter-spacing: 1.5px;
}

.slider_item02 div.pos .text_link .more_view {
    display: block;
    border: 1px solid #fff;
    padding: 0;
    position: relative;
}

.slider_item02 div.pos .text_link .more_view img {
    display: block;
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: .4s ease-in-out;
    transition: .4s ease-in-out;
}

.slider_item02 div.pos .text_link .more_view img.black {
    opacity: 0;
}

.slider_item02 div.pos .text_link:hover {
    background: rgba(255, 255, 255, 0.85);
}

.slider_item02 div.pos .text_link:hover .bigttl {
    color: #412514;
}

.slider_item02 div.pos .text_link:hover .more_view {
    border: 1px solid #412514;
}

.slider_item02 div.pos .text_link:hover .more_view img.white {
    opacity: 0;
}

.slider_item02 div.pos .text_link:hover .more_view img.black {
    opacity: 1;
}

/* 物件の魅力矢印カスタマイズ */
.slick02 .slick-prev:hover,
.slick02 .slick-prev:focus,
.slick02 .slick-next:hover,
.slick02 .slick-next:focus {
    background-color: rgba(59, 59, 65, 0.9);
    background-color: rgba(255, 255, 255, .9);
}

/*表示する文字周りの設定*/
.slick02 .slick-prev:before {
    content: '〈';
    /* color: #fff; */
    color: #000;
    opacity: 1;
    font-size: 28px;
}

.slick02 .slick-next:before {
    content: '〉';
    /* color: #fff; */
    color: #000;
    opacity: 1;
    font-size: 28px;
}

/*背景や位置の調整*/
.slick02 .slick-prev {
    left: 25px;
    z-index: 99;
    width: auto;
    height: auto;
    padding: 10px;
    color: #fff;
    /* background-color: rgba(59, 59, 65, 0.9); */
    background-color: rgba(255, 255, 255, .9);
    transition: .4s;
}

.slick02 .slick-next {
    right: 25px;
    z-index: 99;
    width: auto;
    height: auto;
    padding: 10px;
    /* background-color: rgba(59, 59, 65, 0.9); */
    background-color: rgba(255, 255, 255, .9);
    transition: .4s;
}


/* 物件の魅力ドットカスタマイズ */
.slick02 .slick-dots li {
    margin: 0 4px;
    /* width: 70px; */
    width: 100%;
    height: auto;
    /* height: 5px; */
}

.slick02 .slick-dots li button:before {
    content: '';
    /* width: 70px; */
    width: 100%;
    height: 5px;
    background: #E0E0E0;
    opacity: 1;
}

.slick02 .slick-dots li.slick-active button:before {
    /* background: #348455; */
    background-image: -moz-linear-gradient(0deg, rgb(230, 224, 180) 0%, rgb(202, 189, 129) 100%);
    background-image: -webkit-linear-gradient(0deg, rgb(230, 224, 180) 0%, rgb(202, 189, 129) 100%);
    background-image: -ms-linear-gradient(0deg, rgb(230, 224, 180) 0%, rgb(202, 189, 129) 100%);
}

.slick02 .slick-dots {
    display: flex;
    justify-content: space-between;
    width: 90%;
    bottom: 4%;
    left: 50%;
    transform: translateX(-50%);
}

.slick02 .slick-dots li {
    width: 24%;
}

.slick02 .slick-dots li button {
    width: 100%;
    position: relative;
}

.slick02 .slick-dots li p {
    box-sizing: border-box;
    height: 100%;
    font-size: 13px;
    line-height: 1.5;
    text-align: left;
    color: #fff;
    padding-bottom: 12px;
    border-bottom: #fff solid 4px;
}

.slick02 .slick-dots li.slick-active p {
    border-bottom-color: rgb(230, 224, 180);
}

/* 紹介動画 */
.movie_bnr {
    /* margin: 150px auto 0; */
    margin: 75px auto 0;
}

.movie_bnr .new_secttl {
    margin-bottom: 10px;
}

.movie_bnr .f-130 {
    font-size: 28px;
    letter-spacing: 2px;
    text-align: center;
    margin-top: -25px;
    margin-bottom: 10px;
}

.cap_bnr {
    font-size: 12px;
}

.movie {
    margin: 20px auto 0;
    position: relative;
}

.modal {
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 9999;
}

.modal__bg {
    background: rgba(0, 0, 0, 1);
    height: 100vh;
    position: absolute;
    width: 100%;
}

.modal__content {
    left: 50%;
    padding: 0 40px;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 70%;
}

.modal__content a {
    box-sizing: border-box;
    font-size: 15px;
    color: #000;
    letter-spacing: 4px;
    background-color: #fff;
    padding: 10px 30px;
    margin: 10px auto 0;
    position: absolute;
    top: 105%;
    left: 50%;
    transform: translateX(-50%);
    cursor: pointer;
}

.modal__content video {
    width: 100%;
}

/* 間取り */
.madori_bnr {
    margin: 150px auto 0;
}

.madoribnr_list {
    flex-wrap: wrap;
    justify-content: center;
}

.madoribnr_list li {
    box-sizing: border-box;
    width: 32%;
    margin-right: 2%;
}

.madoribnr_list li:nth-of-type(3n) {
    margin-right: 0;
}

.madoribnr_list li:nth-of-type(n+4) {
    margin-top: 2%;
}



.madoribnr_list li a {
    display: block;
    box-shadow: 0px 3px 15px 0px rgba(0, 0, 0, 0.15);
    transition: .3s ease-in-out;
}

.madoribnr_list li a:hover {
    box-shadow: 0px 6px 26px 0px rgba(0, 0, 0, 0.15);
    transform: translateY(-4px);
    opacity: 0.7;
}

.other_plan {
    display: block;
    text-align: center;
    width: 250px;
    border: 1px solid #463220;
    padding: 10px 0;
    margin: 50px auto 0;
    position: relative;
    transition: all .5s;
}

/* .other_plan::after {
    content: '';
    width: 8px;
    height: 8px;
    margin-top: -5px;
    border-top: solid 1px #463220;
    border-right: solid 1px #463220;
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 10px;
} */

.other_plan:hover {
    color: #fff;
    background: #463220;
    border: 1px solid #463220;
}

/* .other_plan:hover::after {
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
} */

/* 下層コンテンツ */
.content_bnr {
    margin: 150px auto 0;
}

.conbnr_list {
    flex-wrap: wrap;
    justify-content: space-between;
}

.conbnr_list li {
    width: 48.5%;
}

.conbnr_list li:nth-of-type(n+3) {
    margin-top: 3%;
}

.conbnr_list li a {
    display: block;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 26% 0;
    position: relative;
    transition: all .5s;
}

.conbnr_list li a:hover {
    opacity: 0.7;
}

.conbnr_list li a .text_box {
    position: absolute;
    left: 5%;
    bottom: 8%;
}

.conbnr_list li a .text_box .con_ttl {
    width: 74%;
    margin-bottom: 15px;
}

.conbnr_list li a .text_box .con_txt {
    font-size: 16px;
    color: #fff;
    letter-spacing: 1.2px;
    line-height: 1.7;
}

.more_view {
    display: inline-block;
    width: 180px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    border: 1px solid #fff;
    /* padding: 12px 15px 10px 15px; */
    margin-top: 20px;
}

.more_view img {
    max-width: 131px;
    vertical-align: baseline;
}

/* location */
.conbnr_list li.location_bnr a {
    background-image: url(../img/content_bnr01.jpg);
}

/* access */
.conbnr_list li.access_bnr a {
    background-image: url(../img/content_bnr02.jpg);
}

/* plan */
.conbnr_list li.plan_bnr a {
    background-image: url(../img/content_bnr03.jpg);
}

/* brand */
.conbnr_list li.brand_bnr a {
    background-image: url(../img/content_bnr04.jpg);
}

/* design */
.conbnr_list li.design_bnr a {
    background-image: url(../img/content_bnr05.jpg);
}

/* design */
.conbnr_list li.model_bnr a {
    background-image: url(../img/content_bnr06.jpg);
}

/* information追加 */
.information {
    margin: 70px auto;
}

.info_box {
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    width: 90%;
    max-width: 800px;
    margin: 0 auto;
}

.info_box p {
    display: flex;
    align-items: center;
    align-self: stretch;
    letter-spacing: 1.5px;
    border-left: 1px solid #000;
    border-right: 1px solid #000;
    padding: 0 50px;
}

.info_list {
    flex: 1;
    padding-left: 50px;
}

.info_list dl {
    display: flex;
    flex-wrap: nowrap;
    /* flex-wrap: wrap; */
}

.info_list dl:not(:first-of-type) {
    margin-top: 12px;
}

.info_list dt {
    font-weight: normal;
    font-size: 14px;
    letter-spacing: 2px;
}

.info_list dd {
    font-size: 14px;
    line-height: 1.3;
    padding-left: 25px;
}

.info_list dd a {
    line-height: 1.5;
    text-decoration: underline;
}

.info_list dd.new_flex {
    display: flex;
    align-items: center;
}

.info_new {
    display: inline-block;
    font-size: 10px;
    color: #fff;
    background-color: #b10d0d;
    padding: 2px 4px;
    position: relative;
    overflow: hidden;
    transition: 1000ms;
}

.info_new::before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #b5e7ff;
    transition: 1000ms;
    animation: shinyshiny 2.5s ease-in-out infinite;
}

@-webkit-keyframes shinyshiny {
    0% {
        -webkit-transform: scale(0) rotate(45deg);
        opacity: 0;
    }

    80% {
        -webkit-transform: scale(0) rotate(45deg);
        opacity: 0.5;
    }

    81% {
        -webkit-transform: scale(4) rotate(45deg);
        opacity: 1;
    }

    100% {
        -webkit-transform: scale(50) rotate(45deg);
        opacity: 0;
    }
}


/*SP時スライドバナー追加*/
.sp_slide_wrap {
    width: 100%;
    /* background: #eaebf5; */
    background: #fdf1e8;
    padding: 30px 0;
    /* padding: 50px 0 36px 0; */
}

.sp_slide_wrap h3 {
    font-size: 30px;
    letter-spacing: 0.1em;
    margin-bottom: 30px;
    text-align: center;
    color: #c1906b;
    font-weight: 600;
}

.sp_slide_wrap h3 {
    width: 90%;
    max-width: 656px;
    margin: 0 auto 40px;
}

.sp_slide {
    width: 1000px;
    max-width: 90%;
    margin: 0 auto;
    display: flex;
    justify-content: center;
}

.sp_slide a {
    display: block;
    width: 30%;
    margin: 0 auto;
    filter: drop-shadow(2px 2px 5px rgba(0, 0, 0, 0.3));
    transition: 0.5s;
    position: relative;
}

/* .sp_slide a img {
    border-radius: 8px;
} */
.sp_slide a:hover {
    filter: drop-shadow(1px 1px 2px rgba(0, 0, 0, 0.3));
    transform: translate(1px, 1px);
    opacity: 0.7;
}

.sp_slide a.pre:before {
    content: "プレミアム仕様";
    position: absolute;
    left: -0.5em;
    top: -1em;
    width: fit-content;
    /* background: #b29e5b; */
    background: #c1906b;
    border: 1px solid #fff;
    color: #fff;
    border-radius: 50px;
    padding: 7px 15px;
    font-size: 13px;
}

.sp_slide a.ten:before {
    content: "天井高 約2.6m";
    position: absolute;
    left: -0.5em;
    top: -1em;
    width: fit-content;
    /* background: #b29e5b; */
    background: #c1906b;
    border: 1px solid #fff;
    color: #fff;
    border-radius: 50px;
    padding: 7px 15px;
    font-size: 13px;
    letter-spacing: 0.1em;
}

.sp_slide a.tyumoku:before {
    content: "注目!";
    position: absolute;
    left: -0.5em;
    top: -1em;
    width: fit-content;
    /* background: #b29e5b; */
background-image: -moz-linear-gradient(0deg, rgb(147, 31, 31) 0%, rgb(142, 36, 36) 100%);
    background-image: -webkit-linear-gradient(0deg, rgb(147, 31, 31) 0%, rgb(142, 36, 36) 100%);
    background-image: -ms-linear-gradient(0deg, rgb(147, 31, 31) 0%, rgb(142, 36, 36) 100%);
    border: 1px solid #fff;
    color: #fff;
    border-radius: 50px;
    padding: 7px 15px;
    font-size: 13px;
    letter-spacing: 0.1em;
}

.other-link {
    display: block;
    width: 320px;
    max-width: 90%;
    letter-spacing: 1px;
    text-align: center;
    color: #fff;
    background: #c1906b;
    padding: 15px 0;
    margin: 40px auto 0;
    position: relative;
    transition: all .5s;
}

.other-link::after {
    content: '';
    border: 0;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    display: inline-block;
    width: 10px;
    height: 10px;
    position: absolute;
    top: 50%;
    right: 8%;
    transform: translateY(-50%) rotate(45deg);
}

.other-link:hover {
    opacity: 0.7;
}

/* 告知追加 */
.kokuchi {
    margin: 60px auto 0;

}

.kokuchi p {
    width: 90%;
    max-width: 656px;
    border-top: 1px solid #E0CEBB;
    border-bottom: 1px solid #E0CEBB;
    padding: 30px 0 30px 0;
    margin: 0 auto 0;
}

/* 価格追加 */
.price {
    margin: 60px auto;
}

.price p {
    width: 90%;
    max-width: 1225px;
    /* max-width: 720px; */
    margin: 0 auto;
}

.price p a {
    display: block;
    transition: all .5s;
}

.price p a:hover {
    opacity: 0.7;
}

.br_tab {
    display: none;
}

.br_960 {
    display: none;
}

.bnr_area {
    display: block;
    width: 90%;
    max-width: 800px;
    margin: 40px auto 0;
}

.bnr_area div {
    width: 100%;
    margin: 0 auto;
}

.bnr_area div:not(:first-of-type) {
    margin: 30px auto 0;
}

.bnr_area a {
    transition: all .5s;
}

.bnr_area a:hover {
    opacity: 0.7;
}

/*来場予約バナー*/
.bnr_area_1000 {
    width: 90%;
    max-width: 1000px;
    margin: 60px auto 0;
}

.bnr_area_1000 .req_box {
    display: flex;
    justify-content: space-between;
    background: linear-gradient(to right, rgb(19 41 60) 0%, rgb(25 58 83) 50%, rgb(19 41 60) 100%);
    padding: 20px 20px 20px 24px;
}

.bnr_area_1000 .req_box .text_area {
    width: 57%;
    margin: 0;
}

.bnr_area_1000 .req_box .text_area h4 {
    display: flex;
    align-items: center;
    text-align: center;
    color: #cca872;
    font-size: clamp(20px, 1.714285714285714vw, 24px);
    letter-spacing: 0.15em;
    font-weight: 500;
}

.bnr_area_1000 .req_box .text_area h4:before {
    content: "";
    flex-grow: 1;
    height: 1px;
    background: #cca872;
    margin: 0 .75em 0 0;
}

.bnr_area_1000 .req_box .text_area h4:after {
    content: "";
    flex-grow: 1;
    height: 1px;
    background: #cca872;
    margin: 0 0 0 .75em;
}

/*
.bnr_area_1000 .req_box .text_area h4::before{
content: "";
position: absolute;
top: 100%;
display: block;
width: 100%;
height: 1px;
background: #a58b6a;
}
*/

.bnr_area_1000 .req_box .text_area p {
    color: #fff;
    font-size: clamp(14px, 1.142857142857143vw, 16px);
    letter-spacing: 0.08em;
    line-height: 1.8;
    margin: 1em 0;
    padding: 0 1em;
}

/*
.bnr_area_1000 .req_box .text_area .btnchangeline::before {
border-top: 1px solid #c2a270;
border-bottom: 1px solid #c2a270;
}
.bnr_area_1000 .req_box .text_area .btnchangeline::after {
    background-color: #ba9359;
}
*/
.bnr_area_1000 .req_box .text_area .btnchangeline:hover span {
    color: #fff;
    letter-spacing: 3px;
}

.bnr_area_1000 .req_box .text_area .free_tel {
    display: none;
}

.bnr_area_1000 .req_box .text_area .shine {
    height: 43px;
}

.bnr_area_1000 .req_box .text_area .request_btn {
    text-align: center;
    width: 100%;
}

.bnr_area_1000 .req_box figure {
    position: relative;
    width: 40.167364016736402%;
}

/* バナーエリア */
.bnr-box {
    margin: 0 auto 60px;
}

.bnr-box a {
    display: block;
    width: 90%;
    max-width: 800px;
    margin: 0 auto;
    transition: all .5s;
}

.bnr-box a.bnr-new {
    position: relative;
}

.bnr-box a.bnr-new::before {
    content: "NEW";
    display: block;
    font-size: 13px;
    letter-spacing: 1px;
    color: #fff;
    /* background: #8e2424; */
    background-image: -moz-linear-gradient(0deg, rgb(147, 31, 31) 0%, rgb(142, 36, 36) 100%);
    background-image: -webkit-linear-gradient(0deg, rgb(147, 31, 31) 0%, rgb(142, 36, 36) 100%);
    background-image: -ms-linear-gradient(0deg, rgb(147, 31, 31) 0%, rgb(142, 36, 36) 100%);
    padding: 5px 10px 6px 10px;
    position: absolute;
    top: 10px;
    right: 10px;
}

.bnr-box a:hover {
    opacity: 0.7;
}

.bnr-box a.bnr-new.new-white::before {
    font-weight: 600;
    background: #fff;
    color: #8f2323;
}

/* メリットエリア */
.merit-area,
.merit-area02 {
    width: 90%;
    max-width: 1068px;
    background: linear-gradient(to right, rgb(19 41 60) 0%, rgb(25 58 83) 50%, rgb(19 41 60) 100%);
    padding: 30px 30px;
    margin: 0 auto;
}

.merit-area h4,
.merit-area02 h4 {
    display: flex;
    align-items: center;
    font-size: 30px;
    letter-spacing: 0.15em;
    font-weight: 500;
    color: #e0bb83;
    text-align: center;
    margin-bottom: 40px;
}

.merit-area h4:before,
.merit-area02 h4:before {
    content: "";
    flex-grow: 1;
    height: 1px;
    background: #e0bb83;
    margin: 0 .75em 0 0;
}

.merit-area h4:after,
.merit-area02 h4:after {
    content: "";
    flex-grow: 1;
    height: 1px;
    background: #e0bb83;
    margin: 0 0 0 .75em;
}

.merit-flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.merit-flex .merit-list {
    width: 56%;
}

.merit-flex figure {
    width: 42%;
}

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

.merit-list li {
    display: flex;
    width: 48%;
    font-size: 14px;
    color: #fff;
}

.merit-list li:nth-of-type(n+3) {
    margin-top: 20px;
}

.merit-list li p.num {
    display: inline-block;
    align-self: flex-start;
    font-size: 19px;
    font-family: "EB Garamond", serif;
    font-optical-sizing: auto;
    font-weight: normal;
    font-style: normal;
    color: #fff;
    /* border-bottom: 1px solid #b28f59; */
    /* background: #b28f59; */
    background-image: -moz-linear-gradient(142deg, rgb(197, 164, 113) 0%, rgb(178, 143, 89) 100%);
    background-image: -webkit-linear-gradient(142deg, rgb(197, 164, 113) 0%, rgb(178, 143, 89) 100%);
    background-image: -ms-linear-gradient(142deg, rgb(197, 164, 113) 0%, rgb(178, 143, 89) 100%);
    text-align: center;
    padding: 5px 10px;
    margin-bottom: 10px;
    margin-right: 15px;
}

.merit-list li p.merit-text {
    font-size: 15px;
    letter-spacing: 1px;
    line-height: 1.6;
    text-align: left;
    margin-top: -5px;
}

.merit-area figure {
    align-self: flex-start;
    margin: 0 0 0 0;
    position: relative;
}

.merit-area .shine,
.merit-area02 .shine {
    width: 90%;
    max-width: 520px;
    margin: 30px auto 0;
}

.merit-area .shine a,
.merit-area02 .shine a {
    width: 100%;
    text-align: center;
}

.merit-area .shine a:hover span,
.merit-area02 .shine a:hover span {
    color: #fff
}

/* メリットエリア02固有 */
.merit-area02 h4 {
    margin-bottom: 30px;
}

.merit-list02 {
    flex-wrap: wrap;
    justify-content: space-between;
}

.merit-list02 li {
    width: 23%;
}

.merit-list02 li .num01 {
    /* display: inline-block;
    align-self: flex-start; */
    /* font-size: 19px; */
    font-size: 30px;
    font-family: "EB Garamond", serif;
    font-optical-sizing: auto;
    font-weight: normal;
    font-style: normal;
    color: #fff;
    line-height: 1;
    /* background-image: -moz-linear-gradient(142deg, rgb(197, 164, 113) 0%, rgb(178, 143, 89) 100%);
    background-image: -webkit-linear-gradient(142deg, rgb(197, 164, 113) 0%, rgb(178, 143, 89) 100%);
    background-image: -ms-linear-gradient(142deg, rgb(197, 164, 113) 0%, rgb(178, 143, 89) 100%); */
    text-align: left;
    /* padding: 5px 10px; */
    margin-bottom: 10px;
    margin-right: 15px;
    position: relative;
}

.merit-list02 li .num01::after {
    content: "";
    display: block;
    width: 100%;
    border-bottom: 1px solid rgba(255, 255, 255, .7);
    position: absolute;
    bottom: 3px;
    left: 0;
}

.merit-list02 li .merit-text02 {
    font-size: 15px;
    color: #fff;
    letter-spacing: 0.6px;
    line-height: 1.6;
    text-align: left;
    /* text-align: center; */
}

.merit-list02 li figure {
    margin-top: 20px;
}

/* 資料請求バナー */
.bnr_area_1000 .request_box {
    text-align: center;
}

.bnr_area_1000 .request_box h4 {
    /* color: #cca872; */
    font-size: clamp(22px, 2.86458333333333vw, 28px);
    letter-spacing: 0.15em;
    font-weight: 500;
    margin-bottom: 20px;
}

.bnr_area_1000 .request_box p {
    font-size: clamp(16px, 2.083333333333333vw, 18px);
    letter-spacing: 0.08em;
    line-height: 1.8;
    margin-bottom: 20px;
}

.bnr_area_1000 .request_box ul {
    padding: 20px 20px;
    border: 1px solid #CCC;
    width: 80%;
    margin: 0 auto;
}

.bnr_area_1000 .request_box ul li {
    /* font-size: clamp(16px, 2.083333333333333vw, 18px); */
    font-size: 16px;
    letter-spacing: 0.08em;
    line-height: 1.8;
    text-align: left;
    padding-left: 1.5em;
    position: relative;
}

.bnr_area_1000 .request_box ul li::before {
    content: "◆";
    color: #348455;
    position: absolute;
    top: 0.01em;
    left: 0.1em;
    ;
}

.bnr_area_1000 .request_linkbtn {
    padding: 30px 0;
}

.bnr_area_1000 .request_linkbtn a {
    display: block;
    border: 1px solid #348455;
    background: #348455;
    color: #FFF;
    font-size: clamp(16px, 2.083333333333333vw, 18px);
    letter-spacing: 0.08em;
    text-align: center;
    padding: 20px 0;
    border-radius: 50px 50px;
    width: 55%;
    margin: 0 auto;
    position: relative;
    transition: .3s;
}

.bnr_area_1000 .request_linkbtn a::after {
    content: '';
    border: 0;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    display: inline-block;
    width: 10px;
    height: 10px;

    position: absolute;
    top: 50%;
    right: 8%;
    transform: translateY(-50%) rotate(45deg);
}

.bnr_area_1000 .request_linkbtn a:hover {
    transition: .3s;
    background: #FFF;
    color: #348455;
    border: 1px solid #348455;
}


/*---------------------------
　　　モーダル／modal
---------------------------*/
.modal_area {
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    width: 100%;
    z-index: 1000;
    display: none;
}

.modal-bg {
    position: absolute;
    height: 100vh;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 1000;
}

/* Modal Content */
.modal-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 114vh;
    max-width: 890px;
    width: 60%;
    z-index: 1001;
}

.modal-inner {
    position: relative;
    background: none;
    width: 100%;
    min-height: 100%;
    max-height: calc(114vh - 3em);
    overflow-x: hidden;
    overflow-y: auto;
    background: #000;
}

.closeBtn {
    display: block;
    position: absolute;
    top: -2.7em;
    right: 0;
    width: 2em;
    /*同じ数値*/
    height: 2em;
    /*同じ数値*/
    cursor: pointer;
}

.closeBtn::before,
.closeBtn::after {
    /* 共通設定 */
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 3px;
    /* 棒の幅（太さ） */
    height: 2em;
    /* 棒の高さ */
    background: #fff;
}

.closeBtn::before {
    transform: translate(-50%, -50%) rotate(45deg);
}

.closeBtn::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.modal-inner a {
    display: block;
    transition: .3s;
    /*    pointer-events: none;*/
}

.modal-inner a:hover {
    opacity: 0.7;
}



/* .modal_area {
display: none;
width: 100%;
height: 100%;
background: rgba(0,0,0,0.6);
position: fixed;
z-index: 1000;
}
.modal-content {
width: 400px;
height: 250px;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
background: #fff;
text-align: center;
z-index: 2
}
.modal-content .ttl {
font-weight: bold
}
.modal-content p {
padding: 15px
} */
/* .btn_area button {
display: block;
margin: 0 auto;
background: #333;
color: #fff;
padding: 20px 40px;
border: none
}
.btn_area button:hover {
background: #777
} */



/* フロートバナー */
.float_bnr {
    position: fixed;
    z-index: 999;
}

.float_bnr.float01 {
    width: 50%;
    max-width: 424px;
    right: 20px;
    bottom: 5%;
}

.float_bnr.float02 {
    width: 70%;
    max-width: 778px;
    right: 20px;
    bottom: 5%;
}

.float_bnr.float03 {
    width: 260px;
    max-width: 90%;
    letter-spacing: 2px;
    /* background: #348455; */
    background: #fff;
    border-radius: 20px;
    right: 20px;
    bottom: 5%;
}

.float_bnr.float03 a {
    background: #348455;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
    padding-bottom: 20px;
}

.float_bnr.float03 figure img {
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    vertical-align: top;
}

.float_bnr.float03 .float-text {
    font-size: 24px;
    color: #fff;
    text-align: center;
    padding-top: 20px;
}

.float_bnr.float03 .detail-text {
    display: block;
    width: 70%;
    max-width: 200px;
    font-size: 13px;
    color: #fff;
    text-align: center;
    border-radius: 100px;
    border: 1px solid #fff;
    background: #ffffff59;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    padding: 8px 0;
    margin: 20px auto 0;
    transition: all .5s;
}

.float_bnr.float03 a:hover {
    opacity: 0.6;
}

.float_bnr.float04 {
    width: 260px;
    max-width: 90%;
    letter-spacing: 2px;
    /* background: #348455; */

    border-radius: 20px;
    right: 20px;
    bottom: 5%;
}

.float_bnr.float04 a {
    background: #348455;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
    padding-bottom: 20px;
}

.float_bnr.float04 figure img {
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    vertical-align: top;
}

.float_bnr.float04 .float-text {
    font-size: 20px;
    line-height: 1.2;
    letter-spacing: 0.07em;
    color: #fff;
    /* display: block;
    background: linear-gradient(270deg, #e1c662 0%, #fff2c3 40%, #e1c662 80%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent; */
    text-align: center;
    padding-top: 15px;
}

.float_bnr.float04 .float-text span.font_S {
    font-size: 70%;
}

.float_bnr.float04 .float-text span.font_L {
    font-size: 200%;
}

.float_bnr.float04 .detail-text {
    display: block;
    width: 70%;
    max-width: 200px;
    font-size: 13px;
    color: #fff;
    text-align: center;
    border-radius: 100px;
    border: 1px solid #fff;
    background: #ffffff59;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    padding: 8px 0;
    margin: 10px auto 0;
    transition: all .5s;
}

.float_bnr.float04 a:hover {
    opacity: 0.6;
}

.float_bnr a {
    display: block;
    transition: all .5s;
    /* pointer-events: none; */
}

.float_bnr .btn_close {
    position: absolute;
    top: -10px;
    right: -5px;
    width: 30px;
    cursor: pointer;
}

.float_bnr.float05 {
    width: 300px;
    max-width: 90%;
    letter-spacing: 2px;
    border-radius: 20px;
    right: 20px;
    bottom: 5%;
}

.float_bnr.float05 a {
    transition: all .5s;
}

.float_bnr.float05 a:hover {
    opacity: 0.7;
}

#loan-ancher {
    list-style-type: none;
}

.pc_only {
    display: block;
}

.br_1180 {
    display: none;
}

.pc_sp {
    display: block;
}

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

    /* main */
    .element ul.flex li {
        font-size: 15px;
    }

    /* under_bnr */
    .under_txt .sub {
        font-size: 24px;
    }

    /* access */
    .under_item.access .en {
        top: 70px;
        left: 30px;
    }

    .under_item.access .under_txt .sub {
        margin-left: 80px;
    }

    .under_item.access .under_txt .txt_flex {
        margin-left: 80px;
    }

    /* plan */
    .under_item.plan .under_txt .sub,
    .under_item.plan .under_txt .txt_flex {
        margin-left: 10vw;
    }
}

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

    /* main */
    .element ul.flex li {
        letter-spacing: 1.5px;
    }

    /* under_bnr */
    /* plan */
    .under_item.plan {
        margin-bottom: -160px;
    }

    .under_item.plan .under_txt {
        margin-top: -80px;
    }

    /* brand */
    .under_item.brand {
        margin-top: -50px;
    }
}

/*===================
tab
===================*/
@media only screen and (max-width: 1180px) {

    .pc_only {
        display: none;
    }

    .pc_sp {
        display: none;
    }

    .br_tab {
        display: block;
    }

    .br_1180 {
        display: block;
    }

    /* main */
    .text {
        font-size: 26px;
    }

    .element ul.flex li {
        display: flex;
        align-items: center;
        justify-content: center;
        /* align-self: stretch; */
        font-size: 14px;
        padding: 10px 4px 10px 4px;
    }

    .element ul.flex li:nth-of-type(3) {
        align-self: stretch;
    }

    .element ul.flex li:last-of-type {
        align-self: initial;
        padding: 0;
    }

    /* concept */
    .concept_img .img01 .ttl_yoko.relax {
        width: 26vw;
        min-height: initial;
        max-height: initial;
    }

    .concept_img .img05 .ttl_tate.smart {
        right: 6vw;
    }

    .concept_img .img06 .ttl_yoko.comfort {
        width: 24vw;
        min-height: initial;
        max-height: initial;
    }

    /* 日本語追加_20231130 */
    .txt_tate.txt_smart {
        right: 10.5vw;
    }

    .txt_tate.txt_future {
        right: 15vw;
    }

    .txt_tate.txt_beautiful {
        left: 1.5vw;
    }

    .bnr-box a.bnr-new::before {
        font-size: 12px;
        padding: 4px 8px 5px 8px;
        top: 10px;
        right: 10px;
    }

    /* under_bnr */
    .under_txt .sub {
        /* font-size: 20px; */
        font-size: 17px;
    }

    /* access */
    .under_item.access .under_txt .sub {
        margin-left: 50px;
    }

    .under_item.access .under_txt .txt_flex {
        margin-left: 50px;
    }

    .under_item.access .en {
        top: 150px;
        left: 10px;
    }

    /* design */
    .under_item.design .under_txt .sub {
        margin-left: 30px;
    }

    .under_item.design .under_txt .txt_flex {
        margin-left: 30px;
    }

    /* plan */
    .under_item.plan .under_txt .sub {
        margin-left: 70px;
    }

    .under_item.plan .under_txt .txt_flex {
        margin-left: 70px;
    }

    .under_item.plan .en {
        top: 20px;
    }

    .slick01 .slick-dots {
        bottom: -20%;
    }

    .slick01 .slick-prev {
        left: 28%;
        bottom: -24%;
    }

    .slick01 .slick-next {
        right: 28%;
        bottom: -24%;
    }

    .modal__content {
        width: 94%;
    }

    .modal-content {
        width: 94%;
    }

    .modal__illust {
        width: 100%;
    }

    /* メリットエリア */
    .merit-area h4 {
        font-size: 28px;
    }

    .merit-flex .merit-list {
        width: 62%;
    }

    .merit-flex figure {
        width: 38%;
    }

    .merit-list li p.num {
        font-size: 17px;
        margin-right: 10px;
    }

    .merit-list li p.merit-text {
        font-size: 15px;
        letter-spacing: 0.5px;
    }

    /* メリットエリア02固有 */
    .merit-area h4,
    .merit-area02 h4 {
        font-size: 24px;
    }

    .merit-list02 li .merit-text02 {
        font-size: 13.5px;
        letter-spacing: 0.5px;
    }

}

@media only screen and (max-width: 1024px) {
    .txt_yoko {
        width: 19.2vw;
    }

    .txt_tate {
        width: 1.32vw;
    }

    .txt_yoko.txt_comfort {
        top: -9vw;
    }

    .txt_tate.txt_smart {
        right: 12.5vw;
    }

    .slick01 .slick-prev {
        left: 20%;
    }

    .slick01 .slick-next {
        right: 20%;
    }

    /* メリットエリア */
    .merit-list li p.merit-text {
        font-size: 12px;
        letter-spacing: 0.5px;
    }

    /* メリットエリア02 */
    .merit-area,
    .merit-area02 {
        padding: 20px 20px;
    }

    .merit-list02 li {
        width: 24%;
    }

    .merit-list02 li .merit-text02 {
        font-size: 12px;
        letter-spacing: 0;
    }


}

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

    /* main */
    .text {
        font-size: 22px;
    }

    .element ul.flex li {
        font-size: 13px;
    }

    #scene_1 #img01_09 p,
    #scene_1 #img01_10 p {
        font-size: 2vw;
    }

    a.request_list {
        font-size: 14px;
        padding: 5px 0 5px 0;
    }

    .br_960 {
        display: block;
    }

    .merit-area {
        padding: 20px 20px;
    }

    .merit-list li p.merit-text {
        font-size: 11.5px;
        letter-spacing: 0;
    }
}

/*===================
sp
===================*/
@media only screen and (max-width: 820px) {
    .br_tab {
        display: block;
    }

    .br_1180 {
        display: none;
    }

    .pc_sp {
        display: block;
    }

    /* main */
    .main_visual {
        /* height: 70vh; */
    }

    .element p {
        font-size: 16px;
    }

    .element p.big {
        font-size: 18px;
        letter-spacing: 1px;
        margin-top: 10px;
    }

    #text4 p.ani_logo {
        width: 60%;
    }

    .element ul.flex {
        width: 94%;
        margin: 5px auto 0;
    }

    .element ul.flex li {
        width: calc((100% - 10px) / 2);
        /* font-size: 13px; */
        line-height: 1.2;
    }


    .element ul.flex li:nth-of-type(n+3) {
        margin-top: 10px;
    }

    .text {
        font-size: 22px;
        letter-spacing: 4px;
        top: 35%;
    }

    .text p .mark {
        display: block;
    }

    /* 資料請求ボタン */
    a.request_list {
        padding: 10px 0 10px 0;
        margin: 20px auto 0;
    }

    .teiki {
        padding: 15px 0;
    }

    .teiki p {
        width: 82%;
    }

    .teiki a {
        width: 66%;
        max-width: 250px;
        font-size: 16px;
        padding: 15px 0;
        margin: 15px auto 0;
    }

    /* point */
    .point {
        padding: 20px 0 15px 0;
    }

    .point_img {
        width: 90%;
    }

    .point ul.flex {
        width: 94%;
        margin: 5px auto 0;
    }

    .point ul.flex li {
        width: calc((100% - 10px) / 2);
        /* font-size: 13px; */
        line-height: 1.2;
    }

    .ancher-illust {
        padding-bottom: 25px;
        margin: 50px auto 0;
    }

    .illust-btn {
        box-sizing: border-box;
        display: block;
        width: 260px;
        font-size: 14px;
        text-align: center;
        padding: 12px 10px;
        border: 1px solid #231815;
        margin: 30px auto 0;
    }

    /* メリットエリア */
    .merit-area,
    .merit-area02 {
        padding: 20px 20px;
        margin-top: 40px;
    }

    .merit-area h4,
    .merit-area02 h4 {
        font-size: 23px;
        letter-spacing: 1px;
        margin-bottom: 25px;
    }

    .merit-flex .merit-list {
        width: 100%;
    }

    .merit-list li {
        display: flex;
        align-items: flex-start;
        width: 100%;
    }

    .merit-list li:nth-of-type(n+2) {
        margin-top: 15px;
    }

    .merit-list li p.num {
        font-size: 17px;
        border-bottom: none;
        margin-right: 10px;
    }

    .merit-list li p.merit-text {
        font-size: 14px;
        line-height: 1.4;
        letter-spacing: 1px;
        text-align: left;
        margin-top: -3px;
    }

    .merit-area figure {
        width: 100%;
        margin: 20px auto 0;
    }

    .merit-area .shine {
        width: 100%;
        margin: 15px 0 0 0;
    }

    /* メリットエリア02 */
    .merit-list02 li {
        width: 48%;
    }

    .merit-list02 li:nth-of-type(n+3) {
        margin-top: 25px;
    }

    .merit-list02 li .num01 {
        font-size: 24px;
    }

    .merit-list02 li .merit-text02 {
        font-size: 13px;
        text-align: left;
    }

    .merit-list02 li figure {
        margin-top: 10px;
    }

    /* モーダル */
    .modal {
        display: none;
        height: 100vh;
        position: fixed;
        top: 0;
        width: 100%;
        z-index: 9999;
    }

    .modal__bg {
        width: 100%;
        height: 100vh;
        background: rgba(0, 0, 0, 0.8);
        position: absolute;
    }

    .modal__illust {
        width: 96%;
        padding: 0 0;
        margin: 0 auto;
    }

    .modal__illust a {
        /* top: -25px; */
        top: -36px;
        left: auto;
        right: 0;
        color: #878787;
        font-size: 25px;
        border: none;
        padding: 0 0 0 5px;
        transform: none;
    }


    /* concept */
    .concept {
        padding: 0 0 60px 0;
    }

    .concept .concept_ttl {
        font-size: 16px;
        line-height: 1.8;
    }

    .concept .concept_txt {
        width: 90%;
        font-size: 14px;
        letter-spacing: 1.4px;
        line-height: 1.8;
        text-align: center;
        margin: 0 auto;
    }

    /* NEW_cocnept仕様_20231123 */
    .concept_img .ttl_yoko {
        width: 30vw;
    }

    .concept_img .ttl_yoko::before {
        height: 3px;
    }

    .concept_img .img01 {
        width: 100%;
        margin: 0;
    }

    .concept_img .img01 .ttl_yoko.relax {
        width: 30vw;
        bottom: -11vw;
        padding-bottom: 10px;
    }

    .concept_img .img01 .ttl_yoko.relax::before {
        left: 50%;
        bottom: -1px;
        transform: translateX(-50%);
    }

    .concept_img .img02 {
        width: 58%;
        margin: -13vw 0 0 auto;
    }

    .concept_img .img02 .ttl_yoko {
        width: 30vw;
        padding-bottom: 10px;
        position: absolute;
        right: 0;
        bottom: -11vw;
    }

    .concept_img .img02 .ttl_yoko::after {
        width: 120%;
        bottom: 0;
        right: 0;
    }

    .concept_img .img02 .ttl_yoko::before {
        bottom: -1px;
        left: 50%;
        transform: translateX(-50%);
    }

    .concept_img .img03 {
        width: 52%;
        margin: -14vw auto 0 0vw;
    }

    .concept_img .img03 .ttl_yoko {
        padding-bottom: 10px;
        position: absolute;
        bottom: -12vw;
        left: 3vw;
    }

    .concept_img .img03 .ttl_yoko::after {
        bottom: 0;
    }

    .concept_img .img03 .ttl_yoko::before {
        bottom: -1px;
        left: 50%;
        transform: translateX(-50%);
    }

    .concept_img .img04 {
        width: 75%;
        margin: 30vw 0 0 auto;
        position: relative;
        z-index: 4;
    }

    .concept_img .img04 .ttl_yoko {
        position: absolute;
        right: 3vw;
        bottom: -10vw;
    }

    .concept_img .img04 .ttl_yoko::after {
        bottom: 0;
    }

    .concept_img .img04 .ttl_yoko::before {
        bottom: -1px;
        left: 50%;
        transform: translateX(-50%);
    }

    .concept_img .img05 {
        /* margin: 60vw 0 0 auto; */
        margin: 29vw auto 0 0;
    }

    .concept_img .img05 .ttl_yoko {
        padding-bottom: 10px;
        position: absolute;
        bottom: -10vw;
        left: 3vw;
        /* right: 0; */
    }

    .concept_img .img05 .ttl_yoko::after {
        bottom: 0;
    }

    .concept_img .img05 .ttl_yoko::before {
        bottom: -1px;
        left: 50%;
        transform: translateX(-50%);
    }

    /* 日本語追加_20231130 */
    .txt_yoko {
        width: 32vw;
    }

    /* relax */
    .txt_yoko.txt_relax {
        bottom: -15.5vw;
        left: 3vw;
    }

    /* comfort */
    .txt_yoko.txt_comfort {
        top: -43vw;
    }

    /* future */
    .txt_yoko.txt_future {
        right: 2vw;
        bottom: -16vw;
    }

    /* beautiful */
    .txt_yoko.txt_beautiful {
        left: 2vw;
        bottom: -17vw;
    }

    /* smart */
    .txt_yoko.txt_smart {
        width: 34vw;
        left: 3vw;
        bottom: -16vw;
    }

    /* concept_caption */
    .concept_img .cap02 {
        right: 21.5vw;
        bottom: 3px;
    }

    .concept_img .cap03 {
        right: initial;
        left: 2vw;
        bottom: -10px;
    }

    .concept_img .cap04 {
        bottom: -2px;
    }

    .concept_img .cap05 {
        left: -1vw;
        bottom: 0;
    }

    /* 画像別の設定 */
    .effect.active img.life_02_sp {
        transform: scale(1.1) translateX(-20px);
    }

    .effect.active img.life_11_sp {
        transform: scale(1.1) translateY(20px);
    }

    .pc_space {
        display: none;
    }


    /* under_bnr(sp用) */
    .under_bnr_pc {
        display: none;
    }

    .under_bnr_sp {
        display: block;
        padding: 40px 0;
        overflow-x: hidden;
    }

    .under_item_sp:not(:first-of-type) {
        margin-top: 60px;
    }

    .under_item_sp .sub,
    .under_item_sp .normal {
        color: #040000;
    }

    .under_item_sp .sub {
        display: inline-block;
        /* font-size: 18px; */
        font-size: 15px;
        letter-spacing: 2px;
    }

    .under_item_sp .postion_box {
        position: relative;
    }

    .under_item_sp .postion_box figure {
        width: 76%;
        margin: 20px 0 20px 0;
    }

    .under_item_sp .postion_box .en {
        width: 4%;
        position: absolute;
    }

    .under_item_sp .normal {
        display: inline-block;
        font-size: 14px;
        letter-spacing: 2px;
        margin: 10px 0 0 50px;
    }

    .more_plus {
        display: block;
        width: 40px;
        height: 40px;
        position: absolute;
    }

    /* location */
    .under_item_sp.location .postion_box .en {
        top: 60px;
        right: 10vw;
    }

    .under_item_sp.location .postion_box .more_plus {
        bottom: -20px;
        right: 30vw;
    }

    .under_item_sp.location .sub {
        margin-left: 40px;
    }

    /* access */
    .under_item_sp.access .postion_box figure {
        margin: 20px 0 20px auto;
    }

    .under_item_sp.access .postion_box .en {
        top: 60px;
        left: 10vw;
    }

    .under_item_sp.access .postion_box .more_plus {
        bottom: -20px;
        left: 28vw;
    }

    .under_item_sp.access .sub {
        margin: 20px 0 0 100px;
    }

    .under_item_sp.access .normal {
        margin-left: 100px;
    }


    /* design */
    .under_item_sp.design .postion_box .en {
        top: 60px;
        right: 10vw;
    }

    .under_item_sp.design .postion_box .more_plus {
        bottom: -20px;
        right: 30vw;
    }

    .under_item_sp.design .sub {
        margin-left: 40px;
    }

    /* plan */
    .under_item_sp.plan .postion_box .en {
        top: 60px;
        right: 10vw;
    }

    .under_item_sp.plan .postion_box .more_plus {
        bottom: -20px;
        right: 30vw;
    }

    .under_item_sp.plan .sub {
        margin-left: 40px;
    }

    /* brand */
    .under_item_sp.brand .postion_box figure {
        margin: 20px 0 20px auto;
    }

    .under_item_sp.brand .postion_box .en {
        top: 60px;
        bottom: initial;
        left: 10vw;
    }

    .under_item_sp.brand .postion_box .more_plus {
        bottom: -20px;
        left: 28vw;
    }

    .under_item_sp.brand .sub {
        margin: 20px 0 0 100px;
    }

    .under_item_sp.brand .normal {
        margin-left: 100px;
    }

    /* 休暇のお知らせ */
    .holiday {
        margin: 50px auto;
    }

    .holiday .flex .ttl,
    .holiday .flex .txt {
        width: 100%;
    }

    .holiday .flex .txt {
        padding: 10px 14px;
    }

    /* 休暇のお知らせ追加パターン02 */
    /* holiday02 */
    .holiday-space {
        padding-top: 50px;
    }

    .holiday02 {
        padding: 12px 12px;
        margin: 0 auto 0;
    }

    .holiday02 p {
        text-align: left;
    }

    .h-ttl {
        font-size: 18px;
        text-align: center !important;
        margin-bottom: 8px;
    }

    .h-text {
        font-size: 14px;
    }

    .h-small {
        font-size: 12px;
    }

    /* 緊急のお知らせ */
    .attention {
        margin: 30px auto;
    }

    .attention .flex .txt {
        text-align: left;
    }

    .bnr_area_1000 {
        margin: 30px auto 0;
    }

    .teiki .req_box {
        flex-wrap: wrap;
        margin: 20px auto 0;
    }

    .teiki .req_box .shine {
        width: 90%;
        max-width: 250px;
    }

    /* .teiki .req_box a {
        width: 90%;
    } */

    .teiki .req_box p {
        display: block;
        width: fit-content;
        font-size: 14px;
        margin: 16px 0 0 0;
    }

    .teiki p.annai-bnr {
        width: 90%;
        margin: 20px auto 10px;
    }

    /*バナーエリア来場予約*/
    .bnr_area_1000 .req_box {
        flex-wrap: wrap;
        padding: 16px;
        margin: 40px auto 0;
    }

    .bnr_area_1000 .req_box .text_area {
        width: 100%;
        margin-bottom: 20px;
    }

    .bnr_area_1000 .req_box .text_area h4 {
        justify-content: center;
    }

    .bnr_area_1000 .req_box .text_area h4:before {
        display: none;
    }

    .bnr_area_1000 .req_box .text_area h4:after {
        display: none;
    }

    .bnr_area_1000 .req_box .text_area p {
        letter-spacing: 0.14em;
        padding: 0;
    }

    .bnr_area_1000 .req_box .text_area .free_tel {
        display: block;
        text-align: center;
        margin: 0 auto 1em;
        padding-bottom: 0;
    }

    .bnr_area_1000 .req_box figure {
        width: 100%;
    }

    .bnr-box {
        margin: 40px auto 20px;
    }

    /* 資料請求バナー */
    .bnr_area_1000 .request_box h4 {
        margin-bottom: 20px;
    }

    .bnr_area_1000 .request_box p {
        margin-bottom: 20px;
    }

    .bnr_area_1000 .request_box ul {
        padding: 10px 10px;
        width: 100%;
    }

    .bnr_area_1000 .request_box ul li {
        font-size: 13px;
    }

    .bnr_area_1000 .request_linkbtn {
        padding: 20px 0;
    }

    .bnr_area_1000 .request_linkbtn a {
        padding: 12px 0;
        width: 100%;
        position: relative;
    }

    .bnr_area_1000 .request_linkbtn a::after {
        content: '';
        border: 0;
        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
        display: inline-block;
        width: 10px;
        height: 10px;

        position: absolute;
        top: 50%;
        right: 8%;
        transform: translateY(-50%) rotate(45deg);
    }
}


@media only screen and (max-width: 920px) {
    .conbnr_list li a {
        padding: 30% 0;
    }

    .conbnr_list li a .text_box {
        bottom: 10%;
    }

    .conbnr_list li a .text_box .con_txt {
        font-size: 14px;
    }
}

@media only screen and (max-width: 820px) {
    #indexP .notes {
        margin: 50px auto 0;
    }

    .concept {
        padding: 0 0 60px 0;
    }

    .under_item_sp.location .postion_box .more_plus {
        display: inline-block;
        width: 30%;
        background: rgba(48, 24, 28, .8);
        border: 1px solid #fff;
        padding: 1px 15px 10px 15px;

    }

    .under_item_sp.access .postion_box .more_plus {
        display: inline-block;
        width: 30%;
        background: rgba(48, 24, 28, .8);
        border: 1px solid #fff;
        padding: 1px 15px 10px 15px;

    }

    .under_item_sp.plan .postion_box .more_plus {
        display: inline-block;
        width: 30%;
        background: rgba(48, 24, 28, .8);
        border: 1px solid #fff;
        padding: 1px 15px 10px 15px;

    }

    .under_item_sp.brand .postion_box .more_plus {
        display: inline-block;
        width: 30%;
        background: rgba(48, 24, 28, .8);
        border: 1px solid #fff;
        padding: 1px 15px 10px 15px;
    }

    .illust_box {
        /* padding: 30px 0 30px 0; */
        padding: 0 0 30px 0;
    }

    .illust_box figure figcaption {
        bottom: 0;
        right: 10px;
    }

    .concept {
        padding: 0 0 35px 0;
    }

    .concept_maincopy {
        width: 90%;
    }

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

    .new_secttl .line {
        margin-left: 15px;
    }

    .special_bnr {
        /* padding: 35px 0 0 0; */
        padding: 80px 0 0 0;
    }

    .special_bnr .new_secttl {
        margin: 0 auto 20px;
    }

    .slider_box01 .slick-dotted.slick-slider {
        margin-bottom: 120px;
    }

    .slider_item01.icon_new::before {
        font-size: 12px;
        left: 5px;
    }

    .slider_item01 a {
        margin: 0 5px;
    }

    .slick01 .slick-dots {
        bottom: -16%;
    }

    .slick01 .slick-prev {
        left: 0%;
        bottom: -20%;
    }

    .slick01 .slick-next {
        right: 0%;
        bottom: -20%;
    }

    .charm_bnr {
        margin: 80px auto 0;
    }

    .slider_item02.icon_new::before {
        font-size: 14px;
    }

    .slider_item02 div.pos::before {
        content: none;
    }

    .slider_item02 div.pos .text_link {
        width: 86%;
        padding: 15px;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .slider_item02 div.pos .text_link .bigttl {
        font-size: 15px;
        letter-spacing: 0.5px;
        text-align: center;
    }

    .slider_item02 div.pos .text_link .more_view {
        margin: 10px auto 0;
    }

    .slick02 .slick-dots {
        bottom: -18%;
    }

    .slick02 .slick-dots li p {
        display: none;
    }

    .movie_bnr {
        /* margin: 80px auto 0; */
        margin: 35px auto 0;
    }

    .movie_bnr .f-130 {
        font-size: 22px;
        margin-top: -15px;
    }

    .modal__content {
        padding: 0 0;
        width: 100%;
    }

    .modal__content video {
        width: 100%;
        height: auto;
    }

    .modal__content a {
        font-size: 50px;
        color: #fff;
        background: none;
        border: none;
        padding: 0;
        margin: 0;
        top: -55px;
        left: auto;
        right: 0;
        transform: none;
    }

    .madori_bnr {
        margin: 80px auto 0;
    }

    .madoribnr_list li {
        width: 100%;
    }

    .madoribnr_list li:nth-of-type(n+2) {
        margin-top: 30px;
    }

    .madoribnr_list li.view-image {
        order: 1;
        margin-top: 0;
    }

    .madoribnr_list li:nth-of-type(1) {
        order: 2;
        margin-top: 30px;
    }

    .madoribnr_list li:nth-of-type(3) {
        order: 3;
    }

    .madoribnr_list li:nth-of-type(4) {
        order: 4;
    }

    .madoribnr_list li:nth-of-type(5) {
        order: 5;
    }

    .madoribnr_list li:nth-of-type(6) {
        order: 5;
    }

    .content_bnr {
        margin: 80px auto 0;
    }

    .conbnr_list li {
        width: 100%;
    }

    .conbnr_list li:nth-of-type(n+2) {
        margin-top: 30px;
    }

    /* .conbnr_list li a {
        padding: 30% 0;
    } */

    .conbnr_list li a .text_box {
        width: 100%;
        top: 50%;
        left: 50%;
        bottom: initial;
        transform: translate(-50%, -50%);
    }

    .conbnr_list li a .text_box .con_ttl {
        width: 80%;
        text-align: center;
        margin: 0 auto 15px;
    }

    .conbnr_list li a .text_box .con_txt {
        font-size: 16px;
        text-align: center;
    }

    .more_view {
        display: block;
        width: 140px;
        height: 30px;
        line-height: 26px;
        margin: 20px auto 0;
    }

    .more_view img {
        max-width: 85px;
    }

    /* information追加 */
    .information {
        margin: 30px auto;
    }

    .info_box p {
        width: 100%;
        justify-content: center;
        border-left: none;
        border-right: none;
        margin-bottom: 20px;
    }

    .info_list {
        flex: initial;
        width: 100%;
        padding-left: 0;
    }

    .info_list dd.new_flex {
        align-items: flex-start;
    }

    .info_list dd {
        padding-left: 15px;
    }

    .sp_slide_wrap {
        padding-top: 50px;
        padding-bottom: 20px;
    }

    .sp_slide_wrap h3 {
        font-size: 22px;
        margin-bottom: 12px;
    }

    .sp_slide {
        max-width: 90%;
    }

    .sp_slide a {
        padding: 10px;
    }

    /* .sp_slide a img {
        border-radius: 8px;
    } */
    .sp_slide .slick-prev,
    .sp_slide .slick-next {
        width: 30px;
        height: 30px;
    }

    .sp_slide .slick-prev {
        left: -10px;
        filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.5));
        z-index: 1;
    }

    .sp_slide .slick-next {
        right: -10px;
        filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.5));
        z-index: 1;
    }

    .sp_slide .slick-prev:before,
    .sp_slide .slick-next:before {
        display: none;
    }

    .sp_slide a.pre:before,
    .sp_slide a.ten:before,
      .sp_slide a.tyumoku:before {
        left: 0;
        top: 0;
    }

    .other-link {
        margin: 20px auto 0;
    }

    .kokuchi {
        margin: 30px auto 20px;
    }

    .kokuchi p {
        padding: 20px 0;
    }

    /* .kokuchi-sp {
        margin: 20px auto 0;
    }

    .kokuchi-sp p {
        width: 90%;
        border-top: 1px solid #E0CEBB;
        border-bottom: 1px solid #E0CEBB;    
        padding: 20px 0;
        margin: 0 auto 30px;
    } */

    .price-sp-only {
        width: 92%;
        padding: 10px 0 8px 0;
        margin: 0 auto;
    }

    .price {
        margin: 0 auto;
    }

    .price p {
        width: 90%;
        max-width: 100%;
        margin: 0 auto;
        padding: 50px 0 0;
    }

    .price02 {
        margin: 0 auto;
    }

    .price02 p {
        width: 90%;
        max-width: 100%;
        margin: 0 auto;
        padding: 0 0;
    }

    .modal-content {
        top: 50%;
        width: 94%;
    }

    .modal-content {
        top: 50%;
    }

    .closeBtn {
        top: -3.5em;
        right: 0;
        width: 3em;
        /*同じ数値*/
        height: 3em;
        /*同じ数値*/
    }

    .closeBtn::before,
    .closeBtn::after {
        /* 共通設定 */
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        width: 3px;
        /* 棒の幅（太さ） */
        height: 3em;
        /* 棒の高さ */
    }

    .js-scrollable {
        padding-top: 30px;
        overflow-y: hidden !important;
    }

    .js-scrollable img {
        width: 1170px;
        max-width: initial;
        height: auto;
    }

    /* floatバナー */
    .float_bnr.float01 {
        width: 90%;
        left: 50%;
        transform: translateX(-50%);
    }

    .float_bnr.float02 {
        width: 90%;
        left: 50%;
        transform: translateX(-50%);
    }

    .float_bnr.float01 {
        bottom: 10%;
    }

    .float_bnr.float02 {
        bottom: 10%;
    }

    .float_bnr.float03 {
        width: 100%;
        max-width: 100%;
        border-radius: 0;
        right: 0;
        bottom: 0;
        padding-top: 0;
        padding-bottom: 0;
    }

    .float_bnr.float03 .float-cv {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        margin: 0 auto;
    }

    .float_bnr.float03 figure {
        display: none;
    }

    .float03 a {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        font-size: 11px;
        margin-top: 0;
    }

    .float_bnr.float03 .float-text {
        max-width: initial;
        font-size: 17px;
        padding-top: 0;
        margin: 10px 0 0 auto;
    }

    .float_bnr.float03 .detail-text {
        display: block;
        width: 48%;
        max-width: initial;
        font-size: 14px;
        margin: 10px auto 0;
    }

    .float_bnr.float03 .btn_close {
        right: 7px;
    }

    .float_bnr .btn_close {
        right: -7px;
        width: 20px;
    }

    .float_bnr.float03 a {
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
        padding-bottom: 10px;
    }


    .float_bnr.float04 {
        margin: 0 auto;
        max-width: 100%;
        width: 100%;
        letter-spacing: 2px;
        right: initial;
        left: 0;
        bottom: 0;
    }

    .float_bnr.float04 .float-cv figure {
        display: none;
    }

    .float_bnr.float04 a {
        display: flex;
        justify-content: center;
        border-bottom-left-radius: 0px;
        border-bottom-right-radius: 0px;
        padding-bottom: 10px;
    }

    .float_bnr.float04 .float-text {
        font-size: 17px;
        margin-left: 10px;
    }

    .float_bnr.float04 .detail-text {
        font-size: 14px;
        margin-right: 10px;
        margin-left: 10px;
    }

    .float_bnr.float04 .btn_close {
        right: 3px;
        display: none;
    }

    .float_bnr.float05 {
        /* max-width: 80%; */
        max-width: 55%;
        /* left: 50%; */
        left: initial;
        bottom: 23vw;
        right: 20px;
        /* transform: translateX(-50%); */
    }

    .float_bnr.float05 a {
        opacity: 1;
    }

    .float_bnr.float05 a:hover {
        opacity: 1;
    }


    /* copyright */
    .copyright {
        /* margin-bottom: 50px; */
        margin-bottom: 0;
    }

    .header__triger {
        bottom: 60px;
        /* bottom: 10px; */
    }

    .header__trigerLeft,
    .header__trigerRight {
        bottom: 65px;
        /* bottom: 15px; */
    }
}

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

    /* main */
    .main_visual {
        /* height: 88vh; */
    }

    .slick01 .slick-dots {
        /* bottom: -22%; */
        bottom: -35%;
    }

    .slick01 .slick-prev {
        left: 0;
        bottom: -48px;
    }

    .slick01 .slick-next {
        right: 0;
        bottom: -48px;
    }

    .slick02 .slick-prev {
        padding: 10px 6px 10px 4px;
        left: 0;
    }

    .slick02 .slick-next {
        padding: 10px 4px 10px 6px;
        right: 0;
    }

    .slick02 .slick-prev::before {
        font-size: 18px;
        left: 0;
    }

    .slick02 .slick-next:before {
        font-size: 18px;
        right: 0;
    }
}

/* 特集キャンーペーンバナー非表示 */
.special_bnr {
    display: none;
}

.charm_bnr {
    margin: 150px auto 0;
}

@media only screen and (max-width: 820px) {
    .charm_bnr {
        margin: 75px auto 0;
    }
}