@charset "UTF-8";

/* ==== shadow ==== */
.shadow {
    box-shadow: 0 4px 4px 10px rgba(0, 0, 0, .2);
}

.text-shadow {
    text-shadow: 0 4px 4px rgba(0, 0, 0, .2);
}

.filte-shadow {
    filter: drop-shadow(5px 5px 10px rgba(0, 0, 0, .2));
}

/* ==== slider-dot-common ==== */
.slider-dot-common,
.slider-dot-common .slick-dotted.slick-slider {
    margin-bottom: 0 !important;
}

.slider-dot-common .slick-dots {
    margin-top: var(--size20px) !important;
    position: relative !important;
    inset: auto !important;
}

.slider-dot-common .slick-dots li {
    margin: 0 var(--size10px);
}

.slider-dot-common .slick-dots li button:before {
    width: var(--size15px) !important;
    height: var(--size15px) !important;
    opacity: 1 !important;
    background: #CFD7D7 !important;
    font-size: 0 !important;
    border-radius: 100% !important;
}

.slider-dot-common .slick-dots li.slick-active button:before {
    opacity: 1 !important;
    background: #5B6E6E !important;
}

.slider-dot-common .slick-dots li:only-child {
    display: none !important;
}

.slider-dot-common .slick-dots li button:before {
    opacity: 1 !important;
    color: transparent !important;
}

.slider-dot-common .slick-dotted.slick-slider {
    margin-bottom: 0 !important;
}

.slider-dot-common .slick-dots {
    margin-top: var(--size20px) !important;
    position: relative !important;
    inset: auto !important;
}

.slider-dot-common .slick-dots li {
    margin: 0 var(--size10px);
}

.slider-dot-common .slick-dots li button:before {
    width: var(--size15px) !important;
    height: var(--size15px) !important;
    opacity: 1 !important;
    background: #CFD7D7 !important;
    font-size: 0 !important;
    border-radius: 100% !important;
}

.slider-dot-common02 .slick-dots li.slick-active button:before {
    opacity: 1 !important;
    background: #E48028 !important;
}

.slider-dot-common02 .slick-dots li:only-child {
    display: none !important;
}

.slider-dot-common02 .slick-dots li button:before {
    opacity: 1 !important;
    color: transparent !important;
    background: #d3d3d3 !important;
}

/* @media(min-width: 768px) and (max-width:1024px) {} */
@media (max-width: 767px) {
    .slider-dot-common .slick-dots li {
        margin: 0 1vw;
    }

    .slider-dot-common .slick-dots li,
    .slider-dot-common .slick-dots li button:before {
        width: calc(10 / 395 * 100vw) !important;
        height: calc(10 / 395 * 100vw) !important;
    }
}

.slider-arrow .slick-prev,
.slider-arrow .slick-next,
.slider-arrow .slick-prev:hover,
.slider-arrow .slick-next:hover,
.slider-arrow .slick-prev:focus,
.slider-arrow .slick-next:focus {
    width: calc(98 / var(--break2));
    height: calc(98 / var(--break2));
    background: url(../img/common/arrow02.png)no-repeat center / cover;
    z-index: 1;
    top: 0;
    bottom: 0;
    margin: auto;
    transform: none;
}

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

.slider-arrow .slick-prev {
    left: calc(60 / var(--break5));
}

.slider-arrow .slick-next {
    right: calc(60 / var(--break5));
    transform: scaleX(-1) !important;
}

/* ==== btn-common ==== */
.btn-common {
    width: calc(320 / var(--break2));
    height: calc(60 / var(--break2));
    letter-spacing: .1em;
    font-weight: 400;
    font-size: calc(15 / var(--break2));
    border: 1px solid #505050;
    position: relative;
    z-index: 1;
}

/* .btn-common::after {
    content: "";
    width: calc(30 / var(--break2));
    height: 2px;
    margin: auto;
    background: #505050;
    position: absolute;
    top: 0;
    bottom: 0;
    right: calc(-15 / var(--break2));
    z-index: 1;
    transition: .5s all;
} */

.btn-common.inversion {
    color: #fff;
    background: #505050;
}

.btn-common.inversion::after {
    background: #fff;
}

@media(min-width: 1080px) {
    .btn-common:hover:after {
        right: calc(-20 / var(--break2));
        transition: .5s all;
    }
}

/* @media(min-width: 768px) and (max-width:1024px) {} */
@media (max-width: 767px) {
    .btn-common {
        max-width: 90%;
        width: calc(250 / 375 * 100vw);
        height: calc(50 / 375 * 100vw);
        letter-spacing: .2em;
        font-size: calc(13 / 395 * 100vw);
    }

    .btn-common::after {
        width: calc(20 / 395 * 100vw);
        height: 1px;
        right: calc(-10 / 395 * 100vw);
    }
}

/* ==== copy-common ==== */
.copy-common01 .en {
    display: inline-block;
    letter-spacing: .2em;
    font-family: "Playfair Display", serif;
    font-weight: 400;
    background-image: linear-gradient(to right, #8f9a9a, #5b6e6e);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

.copy-common01 .en.Hiragino {
    font-family:
        "Hiragino Sans",
        "Hiragino Kaku Gothic ProN",
        "Hiragino Kaku Gothic Pro",
        "Zen Kaku Gothic New",
        "Noto Sans JP",
        sans-serif;
}

.copy-common01 .jp {
    display: block;
    font-family: "Shippori Mincho", serif;
    font-weight: 400;
}

@media(min-width: 768px) and (max-width:1024px) {}

@media (max-width: 767px) {
    .copy-common01 .en {
        font-size: calc(32 / 375 * 100vw);
    }

    .copy-common01 .jp {
        font-size: calc(12 / 375 * 100vw);
    }
}

/* ==== copy-common02 ==== */
.copy-common02 {
    margin-bottom: calc(100 / var(--break2));
    text-align: center;
}

.copy-common02 .en {
    line-height: 1;
    letter-spacing: .2em;
    font-size: calc(42.5 / var(--break2));
    font-family: "Playfair Display", serif;
    font-weight: 400;

    position: relative;
    z-index: 1;
}

.copy-common02 .en::before {
    content: "";
    width: 100%;
    height: 1px;
    margin: auto;
    background: #5B6E6E;
    position: absolute;
    inset: 0;
    z-index: -2;
}

.copy-common02 .bg {
    position: relative;
    z-index: 1;
}

.copy-common02 .bg::before {
    content: "";
    width: calc(100% + 2em);
    height: 3px;
    margin: auto;
    background: #fff;
    position: absolute;
    inset: 0 -1em;
    z-index: -1;
}

.copy-common02 .grad {
    background-image: linear-gradient(to right, #8f9a9a, #5b6e6e);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

.copy-common02 .jp {
    display: block;
    font-size: calc(16.5 / var(--break2));
    font-family: "Shippori Mincho", serif;
    font-weight: 400;
}

@media(min-width: 768px) and (max-width:1024px) {}

@media (max-width: 767px) {
    .copy-common02 {
        margin-bottom: 8vw;
    }

    .copy-common02 .en {
        letter-spacing: .2em;
        font-size: calc(32 / 375 * 100vw);
    }

    .copy-common02 .jp {
        font-size: calc(12 / 375 * 100vw);
    }
}


/* ==== copy-common03 ==== */

.copy-common03 {
    text-align: center;
    position: relative;
    z-index: 1;
}

.copy-common03::before {
    content: "";
    width: 100%;
    height: 1px;
    margin: auto;
    background: #5B6E6E;
    position: absolute;
    inset: 0;
    z-index: 1;
}

.copy-common03 .bg {
    display: inline-block;
    padding: 0 2em;
    background: #fff;
    position: relative;
    z-index: 1;
}

@media (max-width: 767px) {
    .copy-common03 .bg {
        padding: 0 1em;
    }
}


/* ==== copy-common04 ==== */
.copy-common04 {
    padding-bottom: calc(20 / var(--break2));
    line-height: 1.5;
    position: relative;
    z-index: 1;
}

.copy-common04::before {
    content: "";
    width: calc(90 / var(--break2));
    height: 1px;
    margin: auto;
    background: #ABA091;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}

@media (max-width: 767px) {
    .copy-common04 {
        padding-bottom: 3vw;
    }

    .copy-common04::before {
        width: calc(80 / 375 * 100vw);
    }
}

/* ==== copy-common05 ==== */
.copy-common05 {
    padding: calc(20 / var(--break2));
    line-height: 1.5;
    text-align: center;
    font-size: calc(26 / var(--break2));
    color: #5b6e6e;
    background: #F6F6F6;
    border: 1px solid #A1B2B2;
    border-radius: calc(40 / var(--break2));
    position: relative;
    z-index: 1;
}

@media (max-width: 767px) {
    .copy-common05 {
        padding: 3vw;
        font-size: calc(16 / 375 * 100vw);
        border-radius: calc(30 / 375 * 100vw);
    }
}


/* ==== copy-common06 ==== */
.copy-common06 {
    padding: calc(20 / var(--break2)) calc(30 / var(--break2));
    line-height: 1.5;
    font-size: calc(26 / var(--break2));
    background: #ECF2F2;
    position: relative;
    z-index: 1;
}

@media (max-width: 767px) {
    .copy-common06 {
        padding: 3vw;
        text-align: center;
        font-size: calc(16 / 375 * 100vw);
    }
}

/* ==== bg-common ==== */

.bg-common {
    padding: calc(90 / var(--break2)) 0;
    position: relative;
    z-index: 1;
}

@media (max-width: 767px) {
    .bg-common {
        padding: 11vw 0 12.5vw;
    }
}

/* ==== header ==== */
.header {
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: calc(6 / var(--break4)) calc(120 / var(--break4)) calc(6 / var(--break4)) calc(40 / var(--break4));
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    transition: .5s all;
    z-index: 100000;
}

.header-logo {
    max-width: 260px;
    width: calc(290 / var(--break2));
}

.lower .header-logo {
    /* filter: brightness(0); */
}

.nav-header {
    width: calc(555 / var(--break2));
    padding-right: calc(15 / var(--break2));
}

.nav-header>a.a {
    width: 30%;
    padding: calc(10 / var(--break2));
    flex-grow: 1;
    line-height: 1.5;
    text-align: center;
    color: #5B6E6E;
}

.nav-header .jp {
    display: block;
    font-size: calc(17 / var(--break2));
}

.nav-header .en {
    display: block;
    font-size: calc(12 / var(--break2));
}

.nav-header>a.a {
    color: #fff;
    background: none;
}

/* 
.home .header-logo img {
    display: none;gnav
}

.home .header-logo a {
    display: block;
    width: 100%;
    height: 100%;
    background: url(../img/common/hader-logo-white.png)no-repeat center / contain;
} */

@media (min-width: 768px) {
    .header.is-hide {
        top: -100%;
        transition: .5s all;
    }

    .header.is-fixed {
        background: #fff !important;
        position: fixed;
        top: 0;
        transition: .5s all;
    }

    .header.is-fixed a.a,
    .archive .header a.a,
    .page-id-205 .header a.a,
    .page-id-136 .header a.a,
    .single-column .header a.a,
    .single-event .header a.a {
        color: #5B6E6E !important;
    }

    .header.is-fixed .header-logo a,
    .archive .header .header-logo a,
    .page-id-205 .header .header-logo a,
    .page-id-136 .header .header-logo a,
    .single-column .header .header-logo a,
    .single-event .header .header-logo a {
        display: block;
        width: calc(260 / var(--break2));
        height: calc(47 / var(--break2));
        background: url(../img/common/logo.png)no-repeat center / contain;
    }

    .header.is-fixed .header-logo .img,
    .archive .header .header-logo .img,
    .page-id-205 .header .header-logo .img,
    .page-id-136 .header .header-logo .img,
    .single-column .header .header-logo .img,
    .single-event .header .header-logo .img {
        display: none !important;
    }

    .header.is-fixed .cover_menu_header {
        height: 100%;
        right: 0;
    }

    .header.is-fixed .cover_gnav_hamburger {
        height: 100%;
    }

    .header.is-fixed #gnav-toggle {
        height: 100%;
        background: #9da7a7;
    }
}

@media (max-width: 767px) {
    .home .header {
        background: transparent;
    }

    .home .header .header-logo a {
        display: block;
        width: calc(182 / 350 * 100vw);
        height: calc(40 / 350 * 100vw);
        background: url(../img/common/logo-white.png)no-repeat center / contain;
    }

    .home .header .header-logo .img {
        display: none;
    }

    body.home {
        padding-top: 0 !important;
    }

    .header {
        padding: 2.75vw calc(60 / 395 * 100vw) 2.75vw 5vw;
        position: fixed !important;
        background: #F6F6F6;
    }

    .nav_header {
        display: none;
    }

    .header-logo {
        display: flex;
        align-items: center;
        width: calc(182 / 350 * 100vw);
        height: calc(40 / 350 * 100vw);
        position: relative;
    }

    .header.is-fixed .header-logo a {
        display: block;
        width: calc(182 / 350 * 100vw);
        height: calc(40 / 350 * 100vw);
        background: url(../img/common/logo.png)no-repeat center / contain;
    }

    .gnav_open .header-logo {
        position: relative;
        z-index: 999;
    }

    .nav-header {
        display: none;
    }

    .header.is-fixed,
    .header.is-hide {
        background: #F6F6F6 !important;
    }

    .header.is-fixed a.a,
    .header.is-hide a.a {
        color: #5B6E6E !important;
    }

    .header.is-fixed .header-logo a,
    .header.is-hide .header-logo a {
        display: block;
        width: calc(182 / 375 * 100vw);
        height: calc(40 / 375 * 100vw);
        background: url(../img/common/logo.png)no-repeat center / contain;
    }

    .header.is-fixed .header-logo img,
    .header.is-hide .header-logo img {
        display: none !important;
    }

    .header.is-fixed .cover_menu_header,
    .header.is-hide .cover_menu_header {
        height: 100%;
        right: 0;
    }

    .header.is-fixed .cover_gnav_hamburger,
    .header.is-hide .cover_gnav_hamburger {
        height: 100%;
    }

    .header.is-fixed #gnav-toggle,
    .header.is-hide #gnav-toggle {
        height: 100%;
        background: #9da7a7;
    }

}

/* ==== gnav ==== */
.cover_menu_header {
    width: calc(70 / var(--break2));
    height: calc(70 / var(--break2));
    position: absolute;
    top: 0;
    right: calc(10 / var(--break2));
    z-index: 1000;
}

#gnav-toggle {
    display: block;
    width: calc(70 / var(--break2));
    height: calc(70 / var(--break2));
    border: none;
    outline: none;
    position: relative;
    z-index: 10000;
}

#gnav-toggle.is_active,
.lower #gnav-toggle {
    background: #A1B2B2;
}

.lower .cover_menu_header,
.lower #gnav-toggle {
    width: calc(70 / var(--break2));
    height: calc(70 / var(--break2));
    right: 0;
}

.cover_menu_header .gnav_icon {
    width: calc(40 / var(--break2));
    height: calc(2 / var(--break2));
    margin: auto;
    background: #fff;
    position: absolute;
    inset: 0;
    transition: transform .3s ease-in-out;
}

.cover_menu_header .gnav_icon:before,
.cover_menu_header .gnav_icon:after {
    content: "";
    width: 100%;
    height: calc(2 / var(--break2));
    background: #fff;
    position: absolute;
    left: 0;
    right: 0;
    transition: transform .3s ease-in-out;
}

.cover_menu_header .gnav_icon:before {
    top: calc(-11 / var(--break3));
    left: calc(2.5 / var(--break3));
}

.cover_menu_header .gnav_icon:after {
    bottom: calc(-11 / var(--break3));
    left: calc(-2.5 / var(--break3));
}

.gnav_open .cover_menu_header {
    right: 0;
}

.is_active .gnav_icon:before {
    transform: rotate(45deg);
    top: 0 !important;
}

.is_active .gnav_icon:after {
    transform: rotate(-45deg);
    bottom: 0 !important;
}

.is_active .gnav_icon {
    width: calc(40 / var(--break3));
    background: none !important;
}

.gnav_hamburger.is_active .gnav_icon:before,
.gnav_hamburger.is_active .gnav_icon:after {
    left: 0;
}

.is_active .gnav_icon:before,
.is_active .gnav_icon:after {
    transition: transform .3s ease-in-out;
}

.cover_menu_header .gnav {
    max-width: 900px;
    width: calc(980 / var(--break2));
    padding: calc(80 / var(--break3)) 0 calc(100 / var(--break3));
    line-height: 1.45;
    color: #fff;
    background: #5B6E6E;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 9999;
    visibility: hidden;
    opacity: 0;
    transition: opacity .6s ease, visibility .6s ease;
    overflow-y: auto;
    overflow-x: hidden;
    overflow-y: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.cover_menu_header .wrap-nav {
    max-width: 700px;
    width: 96%;
    margin: auto;
}

.cover_menu_header .cover-nav {
    margin-bottom: calc(45 / var(--break2));
}

.cover_menu_header .cover-nav .banner-nav {
    width: 24%;
}

.cover_menu_header .cover-nav02 {
    width: 92%;
    margin: 0 auto;
}

.cover_menu_header .cover-nav02>.col01 {
    max-width: 280px;
    width: 40%;
    padding-top: calc(8 / var(--break2));
}

.cover_menu_header .cover-nav02>.col02 {
    width: 44%;
}

.cover_menu_header .in-cover-nav02 {
    margin-top: calc(15 / var(--break2));
}

.cover_menu_header .in-cover-nav02>.col {
    width: 50%;
}

.cover_menu_header .cover-nav02>.banner-nav:hover {
    opacity: .8;
    transform: .5s;
    background: #fff;
}

.cover_menu_header .gnav .copy {
    margin-bottom: calc(6 / var(--break2));
    padding-bottom: calc(15 / var(--break2));
    font-size: calc(19 / var(--break2));
    border-bottom: 1px solid #fff;
}

.cover_menu_header .gnav .btn-tel-nav {
    display: block;
    margin-bottom: calc(15 / var(--break2));
}

.cover_menu_header .in-cover-nav02-2 {
    margin-top: calc(25 / var(--break2));
    align-items: center;
}

.cover_menu_header .in-cover-nav02-2 .logo-nav {
    width: 68%;
}

.cover_menu_header .in-cover-nav02-2 .icon {
    width: 15.5%;
}

.gnav_open .cover_menu_header .gnav {
    visibility: visible;
    opacity: 1;
}

.gnav_open a.link {
    display: block;
    padding: calc(8 / var(--break2)) 0;
    padding-left: calc(20 / var(--break2));
    font-size: calc(16 / var(--break2));
    position: relative;
    z-index: 1;
}

.gnav_open a.link::before {
    content: "";
    width: 0;
    height: 0;
    margin: auto;
    border-left: calc(8 / var(--break2)) solid #A1B2B2;
    border-top: calc(6 / var(--break2)) solid transparent;
    border-bottom: calc(6 / var(--break2)) solid transparent;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
}

.gnav_open a.link02 {
    display: block;
    padding: calc(12 / var(--break2)) calc(5 / var(--break2));
    font-size: calc(18 / var(--break2));
    border-bottom: 1px solid #fff;
    font-family: "Shippori Mincho", serif;
    font-weight: 400;
    position: relative;
    z-index: 1;
}

.gnav_open a.link02::before {
    content: "";
    width: 0;
    height: 0;
    margin: auto;
    border-left: calc(10 / var(--break2)) solid #A1B2B2;
    border-top: calc(8.5 / var(--break2)) solid transparent;
    border-bottom: calc(8.5 / var(--break2)) solid transparent;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
}

.gnav_open header,
.gnav_open header.is-hide {
    position: fixed !important;
    top: 0 !important;
}

@media(min-width: 768px) and (max-width:1024px) {}

@media(max-width: 767px) {
    .cover_menu_header {
        width: calc(60 / 375 * 100vw);
        height: calc(60 / 375 * 100vw);
        top: 0;
        right: 0;
    }

    #gnav-toggle {
        width: calc(60 / 375 * 100vw);
        height: calc(60 / 375 * 100vw);
    }

    #gnav-toggle.is_active {
        background: #A1B2B2;
    }

    .cover_menu_header .gnav_icon {
        width: calc(38 / 375 * 100vw);
        height: 2px;
    }

    .cover_menu_header .gnav_icon:before,
    .cover_menu_header .gnav_icon:after {
        height: 2px;
    }

    .gnav_hamburger .gnav_icon:before {
        top: -2vw;
        left: .5vw;
    }

    .gnav_hamburger .gnav_icon:after {
        bottom: -2vw;
        left: -.5vw;
    }

    .gnav_hamburger.is_active .gnav_icon {
        width: calc(30 / 375 * 100vw);
    }

    .gnav_hamburger.is_active .gnav_icon:before,
    .gnav_hamburger.is_active .gnav_icon:after {
        left: 0;
    }

    .lower .cover_menu_header,
    .lower #gnav-toggle {
        width: calc(62 / 375 * 100vw);
        height: calc(62 / 375 * 100vw);
    }

    .cover_menu_header .gnav {
        max-width: 100%;
        width: 100%;
        height: 100%;
        padding: calc(100 / 375 * 100vw) 0 20vw;
        line-height: 1.45;
        position: fixed;
        top: 0;
        right: 0;
        z-index: 9999;
        overflow-y: auto;
        overflow-x: hidden;
        visibility: hidden;
        opacity: 0;
        transition: opacity .6s ease, visibility .6s ease;
    }

    .cover_menu_header .cover-nav {
        margin-bottom: 6vw;
    }

    .cover_menu_header .cover-nav .btn-tel-nav {
        margin-top: 6vw;
    }

    .cover_menu_header .cover-nav .banner-nav {
        width: 48%;
    }

    .cover_menu_header .banner-nav:nth-of-type(n + 3) {
        margin-top: 3vw;
    }

    .cover_menu_header .gnav>.wrap-nav {
        width: calc(290 / 375 * 100vw);
        margin: 0 auto;
    }

    .cover_menu_header .cover-nav02 {
        width: 100%;
        margin: 0 auto;
    }

    .cover_menu_header .cover-nav02>.col01 {
        max-width: 100%;
        width: 100%;
    }

    .cover_menu_header .cover-nav02>.col02 {
        width: 100%;
        margin-top: 4vw;
    }

    .cover_menu_header .wrap-nav {
        width: 100%;
    }

    .cover_menu_header .gnav .copy {
        margin-bottom: 2.5vw;
        padding-bottom: 2.75vw;
        font-size: calc(17 / 375 * 100vw);
        border-bottom-width: .25px;
    }

    .cover_menu_header .in-cover-nav02 {
        margin-top: 3.75vw;
    }

    .cover_menu_header .in-cover-nav02>.col {
        width: 50%;
    }

    .cover_menu_header .in-cover-nav02-2 {
        margin-top: 4vw;
    }

    .cover_menu_header .in-cover-nav02-2 .logo-nav {
        width: 68%;
    }

    .cover_menu_header .in-cover-nav02-2 .icon {
        width: 15.5%;
    }

    .gnav_open a.link {
        padding: 2vw 0;
        padding-left: 3.5vw;
        font-size: calc(14 / 375 * 100vw);
    }

    .gnav_open a.link::before {
        border-left: calc(6 / 375 * 100vw) solid #A1B2B2;
        border-top: calc(4 / 375 * 100vw) solid transparent;
        border-bottom: calc(4 / 375 * 100vw) solid transparent;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
    }

    .gnav_open a.link02 {
        display: block;
        padding: 2vw 1vw;
        font-size: calc(16 / 375 * 100vw);
        border-bottom-width: .25px;
    }

    .gnav_open a.link02::before {
        border-left: calc(8 / 375 * 100vw) solid #A1B2B2;
        border-top: calc(6 / 375 * 100vw) solid transparent;
        border-bottom: calc(6 / 375 * 100vw) solid transparent;
    }

    .gnav_open .nav-close {
        display: block;
        margin-top: 8vw;
    }
}

/* ==== hero ==== */
.hero {
    position: relative;
    width: 100%;
    height: 100vh;
    max-height: calc(900 / var(--break2));
    min-height: calc(600 / var(--break2));
    overflow: hidden;
    color: #fff;
}

.hero-video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero-content {
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    position: absolute;
    inset: calc(-80 / var(--break2)) 0 0 calc(80 / var(--break2));
    z-index: 2;
}

.hero-content-text .jp {
    line-height: 1.5;
    letter-spacing: .2em;
    font-size: calc(32 / var(--break2));
}

.hero-content-text .en {
    line-height: 1;
    letter-spacing: .2em;
    font-size: calc(16.5 / var(--break2));
}

.hero-scroll {
    display: block;
    width: calc(40 / var(--break2));
    height: calc(350 / var(--break2));
    position: absolute;
    bottom: 0;
    left: calc(80 / var(--break2));
}

.hero-scroll img {
    width: 100%;
}

.hero-scroll::before {
    content: "";
    width: 1px;
    height: calc(130 / var(--break2));
    margin: auto;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    animation: scroll 2s infinite;
    background-color: #fff;
}

@keyframes scroll {
    0% {
        transform: scale(1, 0);
        transform-origin: 0 0;
    }

    50% {
        transform: scale(1, 1);
        transform-origin: 0 0;
    }

    51% {
        transform: scale(1, 1);
        transform-origin: 0 100%;
    }

    100% {
        transform: scale(1, 0);
        transform-origin: 0 100%;
    }
}

@media (max-width: 768px) {
    .hero {
        max-height: none;
        min-height: none;
        height: calc(610 / 375 * 100vw);
    }

    .hero-content {
        inset: 10vw 0 0 10vw;
    }

    .hero-content-text .jp {
        line-height: 1.1;
        font-size: calc(18 / 375 * 100vw);
    }

    .hero-content-text .en {
        font-size: calc(8 / 375 * 100vw);
    }

    .hero-scroll {
        width: calc(61 / 750 * 100vw);
        height: calc(430 / 750 * 100vw);
        left: 8vw;
    }

    .hero-scroll::before {
        height: calc(80 / 375 * 100vw);
    }
}


/* ===== .top-feature ===== */
.top-feature {
    padding: calc(140 / var(--break2)) 0 calc(210 / var(--break2));
    background: url(../img/front-page/bg-feature.jpg)no-repeat center / cover;
    overflow: hidden;
    position: relative;
    z-index: 1;
}

.top-feature::before {
    content: "";
    width: 100%;
    height: 100%;
    margin: auto;
    background: url(../img/front-page/deco-bg-feature.png)no-repeat center / cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.top-feature .bg-video-feature {
    max-width: none;
    width: 200%;
    height: 200%;
    margin: auto;
    text-align: right;
    opacity: .2;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.list-target-feature01 li:not(:last-child) {
    margin-bottom: calc(20 / var(--break1));
}

.list-target-feature01 a {
    display: block;
    width: 100%;
    letter-spacing: .2em;
    padding: calc(20 / var(--break1)) 0;
    font-size: calc(26 / var(--break1));
    color: #fff;
    border-bottom: 1px solid #fff;
    position: relative;
    z-index: 1;
}

.list-target-feature01 a::before {
    content: "";
    width: calc(8 / var(--break1));
    height: calc(10 / var(--break1));
    margin: auto;
    background: #fff;
    clip-path: polygon(0 0, 0% 100%, 100% 50%);
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
}

@media(min-width: 768px) {
    .cover-feature .col02 {
        padding-top: calc(30 / var(--break2));
    }
}

@media (max-width: 768px) {
    .top-feature {
        padding: 10vw 0 6vw;
        background: url(../img/front-page/bg-feature-sp.png)no-repeat center / cover;
    }

    .top-feature::after {
        content: "";
        width: calc(375 / 375 * 100vw);
        height: calc(328 / 375 * 100vw);
        margin: auto;
        background: url(../img/front-page/bg-feature-sp-bottom.png)no-repeat center / cover;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: -1;
    }

    .top-feature::before {
        content: none;
    }

    .top-feature .copy-feature01 {
        font-size: calc(18 / 375 * 100vw);
    }

    .top-feature .bg-video-feature {
        width: calc(505 / 375 * 100vw);
        height: calc(945 / 375 * 100vw);
        top: auto;
        bottom: 0;
    }

    .list-target-feature01 li:not(:last-child) {
        margin-bottom: 2vw;
    }

    .list-target-feature01 li:last-child a {
        border-bottom: 0;
    }

    .list-target-feature01 a {
        letter-spacing: .2em;
        padding: 5vw 0;
        font-size: calc(16 / 375 * 100vw);
    }

    .list-target-feature01 a::before {
        width: calc(7 / 375 * 100vw);
        height: calc(8 / 375 * 100vw);
    }

    .cover-feature .col01 {
        margin-bottom: 10vw;
    }
}

/* ==== event ==== */
.top-event {
    padding: calc(80 / var(--break2)) 0 calc(80 / var(--break2));
    background: #F6F6F6;
    position: relative;
    z-index: 100;
}

/* @media(min-width: 768px) and (max-width:1024px) {} */
@media (max-width: 767px) {
    .top-event {
        padding: 15vw 0;
    }
}

/* ==== sliderEvente ==== */
.sliderEvent .slider {
    width: calc(400 / var(--break3));
    height: 100%;
    margin: 0 calc(16 / var(--break3));
    position: relative;
    z-index: 1;
}

.sliderEvent .imageEvent {
    position: relative;
    z-index: 1;
}

.sliderEvent .off .imageEvent::before {
    content: "";
    width: 100%;
    height: 100%;
    margin: auto;
    background: rgba(0, 0, 0, .4);
    position: absolute;
    inset: 0;
    z-index: 9999;
}

.heldEvent {
    text-align: center;
    font-size: calc(13 / var(--break2));
    color: #fff;
    background: #212529;
}

.on .heldEvent {
    background: #87b2b2;
}

.sliderEvent .areaText {
    width: 100%;
    padding: calc(16 / var(--break3)) 0 0;
    position: relative;
    z-index: 1;
}

.hdgEvent {
    padding-bottom: calc(8 / var(--break3));
    margin-bottom: calc(18 / var(--break3));
    font-size: calc(17.5 / var(--break2));
    border-bottom: #A1B2B2 1px solid;
    white-space: nowrap;
    overflow: hidden;
}

.descriptionEvent {
    display: flex;
    align-items: center;
    margin: calc(10 / var(--break3)) 0;
    font-size: calc(14 / var(--break2));
    color: #5b6e6e;
    position: relative;
    z-index: 1;
}

.v2.descriptionEvent {
    padding-left: calc(30 / var(--break2));
    background: url(../img/common/clock.svg)no-repeat left top calc(6 / var(--break2)) / calc(18 / var(--break2));
}

.descriptionEvent.location {
    background: url(../img/common/location.svg)no-repeat left top calc(6 / var(--break2)) / calc(18 / var(--break2));
}

.sliderEvent .tag {
    display: inline-block;
    line-height: 1.6;
    margin: 0 calc(4 / var(--break3)) calc(18 / var(--break3));
    padding: 0 calc(28 / var(--break3));
    color: #fff;
    border: 1px solid #A1B2B2;
}

.sliderEvent .tag:nth-of-type(2n) {
    color: #616161;
    background: transparent;
    border: 1px solid #A1B2B2;
}

.sliderEvent .coverTagEvent {
    margin-bottom: calc(6 / var(--break3));
    justify-content: start;
}

.sliderEvent .tagEvent {
    display: inline-block;
    align-items: center;
    justify-content: center;
    min-width: calc(110 / var(--break2));
    padding: 0 calc(20 / var(--break2));
    font-size: calc(13 / var(--break3));
    color: #5B6E6E;
    border: 1px solid #A1B2B2;
}

.sliderEvent .tagEvent.tag02 {
    margin-right: calc(5 / var(--break2));
}

/* @media(min-width: 768px) and (max-width:1024px) {} */
@media (max-width: 767px) {
    .sliderEvent .slider {
        width: calc(270 / 375 * 100vw);
        margin: 0 1vw 2vw;
        padding-bottom: 2vw;
        background: #fff;
        overflow: inherit;
    }

    .sliderEvent .slider::after {
        width: calc(68 / 375 * 100vw);
        height: calc(68 / 375 * 100vw);
    }

    .heldEvent {
        padding: 1vw 0;
        font-size: calc(12 / 375 * 100vw);
    }

    .sliderEvent .areaText {
        padding: 3vw 4vw 3vw;
    }

    .hdgEvent {
        padding-bottom: 1vw;
        margin-bottom: 3vw;
        font-size: calc(13 / 375 * 100vw);
    }

    .descriptionEvent {
        margin: 1vw 0;
        font-size: calc(12 / 375 * 100vw);
    }

    .v2.descriptionEvent {
        padding-left: calc(15 / 375 * 100vw);
        background: url(../img/common/clock.svg)no-repeat left top calc(6 / 375 * 100vw) / calc(10 / 375 * 100vw);
    }

    .descriptionEvent.location {
        background: url(../img/common/location.svg)no-repeat left top calc(6 / 375 * 100vw) / calc(10 / 375 * 100vw);
    }

    .sliderEvent .tagEvent {
        min-width: calc(110 / var(--break2));
        padding: 0 calc(10 / 375 * 100vw);
        font-size: calc(10 / 375 * 100vw);
    }

    .sliderEvent .tagEvent.tag02 {
        margin-right: 1vw;
    }
}

/* ==== Works ==== */
.top-works {
    padding: calc(120 / var(--break2)) 0 calc(160 / var(--break2));
    position: relative;
    z-index: 100;
}

/* @media(min-width: 768px) and (max-width:1024px) {} */
@media (max-width: 767px) {
    .top-works {
        padding: 14vw 0;
    }
}

/* ==== sliderEvente ==== */
.coverWorks .imageWorks {
    margin-bottom: calc(15 / var(--break2));
}

.coverWorks .hdgWorks {
    letter-spacing: .2em;
    font-size: calc(17.5 / var(--break2));
    font-family: "Shippori Mincho", serif;
    font-weight: 400;
    font-weight: 500;
}

.coverWorks .cover-wrok-tag {
    display: inline-flex;
    width: 100%;
    line-height: 1.5;
    justify-content: start;
    font-size: calc(12 / var(--break2));
    color: #5b6e6e;
}

.coverWorks .tagWorks {
    display: inline-flex;
    line-height: 1;
    font-size: calc(12 / var(--break2));
    color: #5b6e6e;
}

.sliderWorks .slider {
    width: calc(590 / var(--break2));
    margin: 0 calc(10 / var(--break2));
}

.coverWorks .cover-wrok-tag .col:not(:last-child) {
    padding-right: 1em;
}


.coverWorks .tagWorks .tag:not(:last-child) {
    padding-right: 1em;
}

@media(min-width: 768px) {
    .sliderWorks {
        justify-content: start !important;
    }
}

@media (max-width: 767px) {
    .sliderWorks {
        margin-bottom: 5.75vw !important;
        padding-left: 6.75vw;
    }

    .sliderWorks .slider {
        width: calc(330 / 375 * 100vw);
        height: 100%;
        margin: 0 0 0 1vw;
    }

    .sliderWorks .slick-dots {
        margin-left: -2.75vw;
    }

    .coverWorks .areaText {
        padding: 4vw 0;
    }

    .coverWorks .hdgWorks {
        margin-bottom: 1vw;
        letter-spacing: 0;
        font-size: calc(14 / 375 * 100vw);
    }

    .coverWorks .labelWorks {
        margin-bottom: 0;
        font-size: calc(12 / 375 * 100vw);
    }

    .coverWorks .tagWorks {
        padding: 0;
        font-size: calc(10 / 375 * 100vw);
    }


    .coverWorks .cover-wrok-tag {
        margin-bottom: 0;
        font-size: calc(11 / 375 * 100vw);

    }

    .coverWorks .cover-wrok-tag .col {
        width: auto;
    }

    .coverWorks .imageWorks {
        margin-bottom: 2.5vw;
    }
}

@media (max-width: 767px) {}

/* ==== top-concept ==== */
.bg-concept-common {
    padding: calc(40 / var(--break2)) 0 calc(80 / var(--break2));
    background: url(../img/concept/bg-concept.jpg)no-repeat center top / 100%;
    position: relative;
    z-index: 1;
}

.bg-concept-common::before {
    content: "";
    width: 1px;
    height: calc(180 / var(--break2));
    margin: auto;
    background: #212529;
    position: absolute;
    bottom: calc(-90 / var(--break2));
    left: 0;
    right: 0;
    z-index: 2;
}

.title-concept-common {
    width: calc(1220 / var(--break2));
    margin: 0 auto calc(260 / var(--break2));
}

@media (max-width: 767px) {
    .bg-concept-common {
        padding: 0 0 14vw;
        background: url(../img/concept/bg-concept-sp.png)no-repeat center top / 100%;
    }

    .bg-concept-common::before {
        height: calc(110 / 375 * 100vw);
        bottom: calc(-45 / 375 * 100vw);
    }

    .title-concept-common {
        width: 100%;
        margin: 0 0 58vw;
    }

    .bg-concept-common .title-concept02 {
        font-size: calc(13 / 375 * 100vw);
    }
}

/* ==== bg-concept02 ==== */
.bg-concept02 {
    padding: calc(100 / var(--break2)) 0;
    background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0) 20%, rgba(199, 219, 202, .8) 80%);
    overflow: hidden;
    position: relative;
    z-index: 1;
}

.bg-concept02 .bg-video-concept {
    max-width: none;
    width: 200%;
    height: 200%;
    opacity: .2;
    position: absolute;
    top: 50%;
    left: 50%;
    object-fit: cover;
    transform: translate(-50%, -50%);
    z-index: -2;
}

.cover-concept>.col {
    width: 19%;
}

@media (max-width: 767px) {
    .bg-concept02 {
        padding: 15vw 0 12.5vw;
    }

    .bg-concept02 .copy-common01 {
        font-size: calc(18 / 375 * 100vw);
    }

    .cover-concept>.col {
        max-width: calc(328 / 375 * 100vw);
        width: 100%;
        margin: 0 auto 2.5vw;
    }

    .cover-concept>.col:last-child {
        margin-bottom: 0;
    }
}

/* ==== top-model-house ==== */
.top-model-house {
    padding: calc(120 / var(--break2)) 0;
    background: #F2F2F2;
}

.cover-model-house .col_txt>.wrap {
    max-width: 424px;
    margin: auto;
}

.copy-model-house {
    margin-bottom: calc(30 / var(--break2));
    padding-bottom: calc(8 / var(--break2));
    letter-spacing: .2em;
    border-bottom: 1px solid #a1b2b2
}

.slid-model-house .slid {
    width: calc(1500 / var(--break2));
    margin: 0 calc(10 / var(--break2));
}

/* @media(min-width: 768px) and (max-width:1024px) {} */
@media (max-width: 767px) {
    .top-model-house {
        padding: 12.5vw 0 18vw;
    }

    .cover-model-house .col_txt {
        max-width: calc(338 / 375 * 100vw);
        margin: auto;
        padding-top: 10vw;
    }

    .cover-model-house .copy-model-house {
        margin-bottom: 7.5vw;
        padding-bottom: 5vw;
        font-size: calc(15 / 375 * 100vw);
        text-align: center;
    }

    .cover-model-house .copy-model-house02 {
        text-align: center;
        font-size: calc(13 / 375 * 100vw);
    }

    .cover-model-house .btn-common {
        margin-left: auto;
        margin-right: auto;
    }

    .slid-model-house .slid {
        width: calc(2000 / var(--break2));
        margin: 0 calc(18 / var(--break2));
    }
}


/* ==== top-line-up ==== */
.top-line-up {
    padding: calc(80 / var(--break2)) 0;
}

.cover-line-up .img {
    margin-bottom: calc(10 / var(--break2));
}

.cover-line-up .text {
    font-size: calc(15 / var(--break2));
}

.cover-line-up .btn-common {
    margin-left: auto;
    margin-right: auto;
}

@media(min-width: 768px) and (max-width:1024px) {}

@media (max-width: 767px) {
    .top-line-up {
        padding: 11vw 0;
    }

    .cover-line-up .slick-slide {
        width: calc(328 / 375 * 100vw);
        margin-right: 3vw;
        padding-bottom: 1.5vw;
    }

    .cover-line-up .img {
        margin-bottom: 3vw;
    }

    .cover-line-up .copy {
        margin-bottom: 2vw;
        font-size: calc(16 / 375 * 100vw);
    }

    .cover-line-up .text {
        font-size: calc(13 / 375 * 100vw);
    }

    .cover-line-up .text .fz14 {
        display: block;
        font-size: calc(10 / 375 * 100vw);
    }

    .cover-line-up .btn-common {
        margin-left: auto;
        margin-right: auto;
    }
}

/* ==== top-room-tour ==== */
.top-room-tour {
    padding: calc(80 / var(--break2)) 0;
    background-image: linear-gradient(to bottom, rgba(229, 225, 220, .3) 15%, #e5e1dc 80%);
}

.cover-room-tour .video_common {
    margin-bottom: calc(20 / var(--break2));
}

@media(min-width: 768px) and (max-width:1024px) {}

@media (max-width: 767px) {
    .top-room-tour {
        padding: 10vw 0;
    }

    .cover-room-tour .slick-slide {
        width: calc(328 / 375 * 100vw);
        margin-right: 3vw;
        padding-bottom: 1.5vw;
    }

    .cover-room-tour .video_common {
        margin-bottom: calc(20 / var(--break2));
    }

    .cover-room-tour .copy {
        margin-bottom: 3vw;
        font-size: calc(14 / 375 * 100vw);
    }

    .cover-room-tour .text {
        font-size: calc(10 / 375 * 100vw);
    }
}

/* ==== set-btn-common02 ==== */
.set-btn-common02 {
    position: relative;
    z-index: 1;
}

.set-btn-common02 .btn-common02 {
    width: calc(310 / var(--break2));
    border-bottom: 1px solid #a1b2b2;
    font-size: calc(16 / var(--break2));
    font-weight: 400;
    position: absolute;
    top: calc(100/ var(--break2));
    right: 0;
    z-index: 1;
}

.set-btn-common02 .btn-common02 a {
    display: block;
    width: 100%;
    padding-left: calc(20 / var(--break2));
}

.set-btn-common02 .btn-common02 .arw {
    display: inline-block;
    padding-right: calc(20 / var(--break2));
    position: relative;
    z-index: 1;
}

.set-btn-common02 .btn-common02 .arw::before {
    content: "";
    width: calc(10 / var(--break2));
    height: calc(10 / var(--break2));
    margin: auto;
    background: #a1b2b280;
    clip-path: polygon(0 0, 0% 100%, 100% 50%);
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
}

@media (max-width: 767px) {
    .set-btn-common02 .btn-common02 {
        width: calc(125 / 375 * 100vw);
        font-size: calc(13 / 375 * 100vw);
        top: calc(75 / 375 * 100vw);
    }

    .set-btn-common02 .btn-common02 a {
        padding-left: 4vw;
        padding-bottom: 2vw;
    }

    .set-btn-common02 .btn-common02 .arw {
        padding-right: 6vw;
    }

    .set-btn-common02 .btn-common02 .arw::before {
        width: calc(11 / 375 * 100vw);
        height: calc(11 / 375 * 100vw);
    }

    .set-btn-common02 .copy-common01 {
        padding-left: 2vw;
    }

    .set-btn-common02 .copy-common01 .en {
        font-size: calc(26 / 375 * 100vw);
    }
}

/* ==== top-news ==== */
.top-column {
    padding: calc(80 / var(--break2)) 0;
}

.wrap-column {
    padding-left: calc(100 / 1920 * 100vw);
}

.sliderNews .slider {
    width: calc(420 / var(--break2));
    margin: 0 calc(20 / var(--break2));
}

.coverNews .imageNews {
    margin-bottom: calc(20 / var(--break2));
}

.cover-new-category {
    justify-content: start !important;
    align-items: center !important;
    margin-bottom: calc(16 / var(--break2));
    font-size: calc(13 / var(--break2));
}

.cover-new-category .category {
    display: inline-block;
    margin-right: calc(12 / var(--break2));
    padding: calc(10 / var(--break2)) calc(25 / var(--break2));
    line-height: 1;
    letter-spacing: .1em;
    color: #5B6E6E;
    border: 1px solid #A1B2B2;
}

.cover-new-tags {
    justify-content: start;
    font-size: calc(12 / var(--break2));
    color: #5B6E6E;
}

.cover-new-tags .tag {
    padding-right: calc(10 / var(--break2));
}

.dateColumn {
    margin-bottom: calc(10 / var(--break2));
    font-size: calc(14 / var(--break2));
    color: #5B6E6E;
}

.coverNews .hdgNews {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: calc(19 / var(--break2));
}

@media (max-width: 767px) {
    .top-column {
        padding: 12.5vw 0 15vw;
    }

    .wrap-column {
        padding-left: 5.75vw;
    }

    .top-column .sliderNews {
        margin-left: 0;
    }

    .sliderNews .slider {
        width: calc(268 / 375 * 100vw);
        margin: 0 2.5vw 0 0;
    }

    .coverNews .imageNews {
        margin-bottom: 2vw;
    }

    .cover-new-category {
        margin-bottom: 2.5vw;
        font-size: calc(10 / 375 * 100vw);
    }

    .cover-new-category .category {
        margin-right: 1vw;
        padding: 1.5vw 3.5vw;
        letter-spacing: 0;
    }

    .cover-new-tags {
        font-size: calc(10 / 375 * 100vw);
    }

    .cover-new-tags .tag {
        padding-right: 1vw;
    }

    .coverNews .hdgNews {
        font-size: calc(14 / 395 * 100vw);
    }

    /* .sliderNews .slick-dots li {
        width: 19%;
        height: 1px;
    } */
    /* 
    .sliderNews .slick-dots li button:before {
        content: "" !important;
    } */

    /* .sliderNews .slick-dots li button,
    .sliderNews .slick-dots li button:before {
        width: 100%;
        height: 2px;
        padding: 0;
        background: #000;
        opacity: .1;
    }

    .sliderNews .slick-dots li.slick-active button,
    .sliderNews .slick-dots li.slick-active button:before {
        opacity: 1 !important;
        background: #000000 !important;
    } */

    .dateColumn {
        margin-bottom: 1vw;
        font-size: calc(11 / 375 * 100vw);
    }
}

/* ==== top-instagram ==== */
.top-instagram {
    padding: calc(100 / var(--break2)) 0 calc(120 / var(--break2));
    background: #F6F6F6;
}

.sliderInstagram {
    overflow: hidden;
    width: 100%;
    position: relative;
}

.sliderInstagram #sbi_slider {
    display: flex;
    align-items: center;
}

.sliderInstagram #sbi_slider li {
    width: auto !important;
    max-width: min(260px, calc(320 / var(--break3))) !important;
    list-style: none;
    float: left;
    margin: 0 min(4px, calc(8 / var(--break3)));
    position: relative;
    z-index: 1;
}

.sliderInstagram .sbi_item {
    width: calc(226 / var(--break2)) !important;
    max-width: calc(226 / var(--break2)) !important;
}

.sliderInstagram .sbi_photo_wrap,
.sliderInstagram .sbi_photo_wrap img {
    width: 100%;
    height: calc(320 / var(--break2)) !important;
    display: block;
    object-fit: cover;
}

.sliderInstagram .bx-wrapper {
    box-shadow: none;
    border: none;
    background: none;
    margin-bottom: 0;
}

/* 自動スクロール用なのでナビゲーション非表示 */
.sliderInstagram .bx-controls-direction,
.sliderInstagram .bx-pager {
    display: none !important;
}

/* スライダー全体 */
.sliderInstagram #sbi_slider {
    display: flex;
    align-items: center;
}

@media (max-width: 767px) {
    .top-instagram {
        padding: 10vw 0 12.5vw;
    }

    .sliderInstagram #sbi_slider li {
        max-width: calc(226 / 375 * 100vw) !important;
        margin: 0 1vw;
    }

    .sliderInstagram #sbi_slider li::before {
        width: calc(100% - 6 / 395 * 100vw);
        height: calc(6 / 395 * 100vw);
        left: calc(6 / 395 * 100vw);
    }

    .sliderInstagram .sbi_item {
        width: calc(226 / 375 * 100vw) !important;
        max-width: calc(226 / 375 * 100vw) !important;
    }

    /* 写真部分の表示 */
    .sliderInstagram .sbi_photo_wrap,
    .sliderInstagram .sbi_photo_wrap img {
        height: calc(302 / 375 * 100vw) !important;
    }
}

/* ==== footer ==== */
.footer_contact {
    padding: calc(120 / var(--break2)) 0 calc(120 / var(--break2));
    background: url(../img/common/bg-contact-footer.png) no-repeat center top / cover;
}

.banner-catalog-footer {
    display: block;
    margin-bottom: calc(60 / var(--break2));
}

.footer_contact_nav>.col {
    width: 32%;
}

.footer_contact_nav>.col04 {
    width: 100%;
    margin-top: calc(40 / var(--break3));
}

.footer_sitemap {
    padding: calc(60 / var(--break3)) 0 calc(40 / var(--break3));
    position: relative;
    z-index: 1;
}

.footer_sitemap .innerx2 {
    position: relative;
    z-index: 1;
}

.footer_nav {
    margin-bottom: calc(80 / var(--break3));
    justify-content: start !important;
}

.footer_nav>.col02 {
    margin-right: 6%;
}

.footer_nav>.col03 {
    margin-right: 4%;
}

.footer_logo {
    width: calc(280 / var(--break2));
}

.icon_tel_footer {
    display: block;
    width: calc(260 / var(--break2));
}

.list_footer a {
    display: block;
    margin-bottom: calc(10 / var(--break2));
    padding: calc(10 / var(--break2)) 0;
    letter-spacing: .15em;
    font-size: calc(16 / var(--break2));
    border-bottom: 1px solid #A1B2B2;
    position: relative;
    z-index: 1;
}

.list_footer a::before {
    content: "";
    width: 0;
    height: 0;
    margin: auto;
    border-left: calc(8 / var(--break2)) solid #A1B2B2;
    border-top: calc(6 / var(--break2)) solid transparent;
    border-bottom: calc(6 / var(--break2)) solid transparent;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
}

.list_footer02 li {
    display: block;
    padding: calc(5 / var(--break2)) 0;
    padding-left: calc(18 / var(--break2));
    letter-spacing: .15em;
    font-size: calc(13 / var(--break2));
    color: #5B6E6E;
    position: relative;
    z-index: 1;
}

.list_footer02 li::before {
    content: "";
    width: calc(5 / var(--break2));
    height: calc(5 / var(--break2));
    margin: auto;
    background: #a1b2b2;
    border-radius: 100%;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
}

.footer_brand {
    width: calc(80 / var(--break1));
    position: absolute;
    right: 0;
    bottom: 0;
}

.footer_brand a {
    display: block;
    width: calc(38 / var(--break1));
}

.footer_bottom .footer_sns>a {
    display: inline-block;
    padding: calc(8 / var(--break2));
}

.footer_copyright {
    opacity: .6;
}

@media(min-width: 768px) {
    .footer_sitemap>.innerx2 {
        display: block;
    }
}

@media(min-width: 768px) and (max-width:1024px) {}

@media (max-width: 767px) {
    .footer_contact {
        padding-top: 8.5vw;
        /* background: url(../img/common/bg-contact-footer.png) no-repeat center top / cover; */
    }

    .footer_contact_nav {
        width: calc(330 / 380 * 100vw);
        margin: 0 auto;
    }

    .footer_contact_nav>.col {
        order: 2;
        max-width: calc(158 / 380 * 100vw);
        width: 48%;
    }

    .footer_contact_nav>.col02 {
        margin-top: 4vw;
        order: 3;
    }

    .footer_contact_nav>.col03 {
        margin-top: 4vw;
        order: 4;
    }

    .footer_contact_nav>.col04 {
        order: 0;
        width: 48%;
        margin-top: 0;
    }

    .footer_sitemap .cover_footer_logo_sp {
        width: calc(340 / 380 * 100vw);
        margin: 0 auto 4vw;
        position: relative;
        z-index: 1;
    }

    .footer_sitemap .footer_logo {
        width: calc(250 / 380 * 100vw);
        margin-left: 0;
    }

    .footer_sitemap .footer_sns_sp {
        /* w */
        display: flex;
        width: calc(78 / 380 * 100vw);
        position: absolute;
        top: 1vw;
        right: 0;
    }

    .footer_sns_sp>a {
        display: block;
        width: calc(36 / 380 * 100vw);
    }

    .footer_sitemap .copy_footer {
        width: calc(240 / 380 * 100vw);
        margin: auto;
        font-size: calc(16 / 380 * 100vw);
    }

    .footer_sitemap .text_address_footer {
        width: calc(240 / 380 * 100vw);
        margin: 0 auto 4vw;
        font-size: calc(14 / 380 * 100vw);
    }

    .footer_sitemap .text_hours_footer {
        width: calc(240 / 380 * 100vw);
        margin: 0 auto 6vw;
        font-size: calc(12 / 380 * 100vw);
    }

    .footer_sitemap {
        padding: 10vw 0 25vw;
        background: url(../img/common/bg_footer_sp.png)no-repeat center / cover;
        position: relative;
        z-index: 1;
    }

    .icon_tel_footer {
        display: none;
    }

    .footer_nav {
        order: 1;
        margin-bottom: calc(80 / var(--break3));
        justify-content: start !important;
    }

    .footer_bottom {
        order: 0;
    }

    .footer_nav .col {
        width: 100%;
    }

    .footer_nav .col02 {
        width: calc(310 / 380 * 100vw);
        margin: 0 auto 5vw;
    }

    .list_footer a {
        margin-bottom: calc(10 / 380 * 100vw);
        padding: calc(10 / 380 * 100vw) 0;
        letter-spacing: .1em;
        font-size: calc(16 / 380 * 100vw);
    }

    .list_footer a::before {
        border-left-width: calc(8 / 380 * 100vw);
        border-top-width: calc(6 / 380 * 100vw);
        border-bottom-width: calc(6 / 380 * 100vw);
        top: 0;
        bottom: 0;
    }

    .list_footer02 li {
        display: block;
        padding: calc(5 / 380 * 100vw) 0;
        padding-left: calc(18 / 380 * 100vw);
        letter-spacing: .1em;
        font-size: calc(12 / 380 * 100vw);
    }

    .list_footer02 li::before {
        width: calc(5 / 380 * 100vw);
        height: calc(5 / 380 * 100vw);
    }


    .footer_nav {
        margin-bottom: 15vw;
    }

    .footer_nav .col03 {
        width: calc(310 / 380 * 100vw);
        margin: 0 auto 5vw;
    }

    .footer_nav .col04 {
        width: calc(310 / 380 * 100vw);
        margin: 0 auto;
    }

    .footer_sitemap .col03 .copy_footer {
        width: 100%;
    }

    .footer_sitemap .col04 .copy_footer {
        width: 100%;
    }

    .footer_brand {
        width: calc(70 / 375 * 100vw);
        bottom: auto;
        top: 0;
    }

    .footer_brand a {
        width: calc(34 / 375 * 100vw);
    }

    .footer_copyright {
        text-align: center;
        font-size: calc(8 / 375 * 100vw) !important;
    }

}

/* ==== fix ==== */

@media(min-width: 768px) and (max-width:1024px) {}

@media (max-width: 767px) {
    .fix {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 9999;
    }

    .fix>a {
        border-right: 1px solid #ECECEC;
        background: #fff;
    }

    .fix>a:last-child {
        border-right: 0;
        background: #87B2B2;
    }

    .fix>a.opacity {
        opacity: .8;
    }
}

/*  */
.footer_tel {
    margin-bottom: calc(10 / var(--break2));
    display: none;
}

/* 
page-id-136 contact
page-id-445 thanks
*/

.page-id-445 .footer_tel {
    display: block;
}

.page-id-136 .footer_contact,
.page-id-445 .footer_contact {
    display: none;
}