@charset "UTF-8";@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&family=Noto+Serif+JP:wght@100;300;400;500;700;900&family=Zen+Maru+Gothic:wght@400;500;700;900&family=EB+Garamond:ital,wght@0,400..800;1,400..800&display=swap);*,::after,::before {
    box-sizing: border-box
}

::after,::before {
    text-decoration: inherit;
    vertical-align: inherit
}

html {
    cursor: default;
    line-height: 1.5;
    -moz-tab-size: 4;
    tab-size: 4;
    -webkit-tap-highlight-color: transparent;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    word-break: break-word;
  text-size-adjust: 100%;
}

body {
    margin: 0;
      word-break: normal;
  overflow-wrap: normal;
  line-break: strict;
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

dl dl,dl ol,dl ul,ol dl,ul dl {
    margin: 0
}

ol ol,ol ul,ul ol,ul ul {
    margin: 0
}

hr {
    height: 0;
    overflow: visible
}

main {
    display: block
}

nav ol,nav ul {
    list-style: none;
    padding: 0
}

pre {
    font-family: monospace,monospace;
    font-size: 1em
}

a {
    background-color: transparent
}

abbr[title] {
    text-decoration: underline;
    text-decoration: underline dotted
}

b,strong {
    font-weight: bolder
}

code,kbd,samp {
    font-family: monospace,monospace;
    font-size: 1em
}

small {
    font-size: 80%
}

audio,canvas,iframe,img,svg,video {
    vertical-align: middle
}

audio,video {
    display: inline-block
}

audio:not([controls]) {
    display: none;
    height: 0
}

iframe {
    border-style: none
}

img {
    border-style: none
}

svg:not([fill]) {
    fill: currentColor
}

svg:not(:root) {
    overflow: hidden
}

table {
    border-collapse: collapse
}

button,input,select {
    margin: 0
}

button {
    overflow: visible;
    text-transform: none
}

[type=button],[type=reset],[type=submit],button {
    -webkit-appearance: button
}

fieldset {
    border: 1px solid #a0a0a0;
    padding: .35em .75em .625em
}

input {
    overflow: visible
}

legend {
    color: inherit;
    display: table;
    max-width: 100%;
    white-space: normal
}

progress {
    display: inline-block;
    vertical-align: baseline
}

select {
    text-transform: none
}

textarea {
    margin: 0;
    overflow: auto;
    resize: vertical
}

[type=checkbox],[type=radio] {
    padding: 0
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

::-webkit-inner-spin-button,::-webkit-outer-spin-button {
    height: auto
}

::-webkit-input-placeholder {
    color: inherit;
    opacity: .54
}

::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

::-moz-focus-inner {
    border-style: none;
    padding: 0
}

:-moz-focusring {
    outline: 1px dotted ButtonText
}

:-moz-ui-invalid {
    box-shadow: none
}

details {
    display: block
}

dialog {
    background-color: #fff;
    border: solid;
    color: #000;
    display: block;
    height: -moz-fit-content;
    height: -webkit-fit-content;
    height: fit-content;
    left: 0;
    margin: auto;
    padding: 1em;
    position: absolute;
    right: 0;
    width: -moz-fit-content;
    width: -webkit-fit-content;
    width: fit-content
}

dialog:not([open]) {
    display: none
}

summary {
    display: list-item
}

canvas {
    display: inline-block
}

template {
    display: none
}

[tabindex],a,area,button,input,label,select,summary,textarea {
    -ms-touch-action: manipulation;
    touch-action: manipulation
}

[hidden] {
    display: none
}

[aria-busy=true] {
    cursor: progress
}

[aria-controls] {
    cursor: pointer
}

[aria-disabled=true],[disabled] {
    cursor: not-allowed
}

[aria-hidden=false][hidden] {
    display: initial
}

[aria-hidden=false][hidden]:not(:focus) {
    clip: rect(0,0,0,0);
    position: absolute
}

body,html {
    height: 100%
}

body {
    line-height: 1.5;
    -webkit-font-smoothing: antialiased
}

canvas,img,picture,svg,video {
    display: block;
    max-width: 100%;
    height: auto
}

.css--reset * {
    margin: 0;
    padding: 0
}

.css--reset *,.css--reset ::after,.css--reset ::before {
    box-sizing: border-box
}

.css--reset h1,.css--reset h2,.css--reset h3,.css--reset h4,.css--reset h5,.css--reset h6,.css--reset p {
    overflow-wrap: break-word
}

.css--reset a {
    text-decoration: none
}

.css--reset ol,.css--reset ul {
    list-style-type: none
}

.css--reset button,.css--reset input,.css--reset select,.css--reset textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: 0 0;
    border: none;
    border-radius: 0;
    font: inherit;
    outline: 0
}

.css--reset textarea {
    resize: vertical
}

.css--reset input[type=checkbox],.css--reset input[type=radio] {
    display: none
}

.css--reset button,.css--reset input[type=button],.css--reset input[type=submit],.css--reset label,.css--reset select {
    cursor: pointer
}

.css--reset select::-ms-expand {
    display: none
}

:root {
    --font-default: "Hiragino Kaku Gothic ProN","Hiragino Sans","Hiragino Kaku Gothic StdN","Meiryo","Noto Sans JP",sans-serif;
    --header-height: 135px;
    --footer_menu-height: 80px;
    --font_family: 'Hiragino Kaku Gothic ProN','Hiragino Sans','Hiragino Kaku Gothic StdN','Meiryo','Noto Sans JP',sans-serif;
    --font_family-gothic: 'Noto Sans JP',sans-serif;
    --font_family-mincho: '游明朝体','Yu Mincho',YuMincho,'ヒラギノ明朝 Pro','Hiragino Mincho Pro','MS P明朝','MS PMincho',serif;
    --font_family-NotoSansJP: 'Noto Sans JP',sans-serif;
    --font_family-NotoSerifJP: 'Noto Serif JP',serif;
    --font_family-Zen_Kaku_Gothic_New: 'Zen Kaku Gothic New',sans-serif;
    --color_theme: #be9461;
    --color_theme_rgb: 190,148,97;
    --color_theme-light: #fdfaf3;
    --color_theme-light_rgb: 253,250,243;
    --color_theme-dark: #5c6863;
    --color_theme-dark_rgb: 92,104,99;
    --color_theme-darker: #262b29;
    --color_theme-darker_rgb: 38,43,41;
    --color_theme-r: #b11c3c;
    --color_theme-r_rgb: 177,28,60;
    --color_theme-chic_blue: #265d79;
    --color_theme-chic_blue_rgb: 38,93,121;
    --color_theme-chic_red: #9e2b40;
    --color_theme-chic_red_rgb: 158,43,64;
    --color_theme-chic_green: #244e20;
    --color_theme-chic_green_rgb: 36,78,32;
    --color_white: #ffffff;
    --color_white_rgb: 255,255,255;
    --color_white-siro: #e7eef3;
    --color_white-siro_rgb: 231,238,243;
    --color_black: #000000;
    --color_black_rgb: 0,0,0;
    --color_black-kuro: #222222;
    --color_black-kuro_rgb: 34,34,34;
    --color_gray: #9e9e9e;
    --color_gray_rgb: 158,158,158;
    --color_gray-light: #c9caca;
    --color_gray-light_rgb: 201,202,202;
    --color_gray-dark: #646464;
    --color_gray-dark_rgb: 100,100,100;
    --color_twitter: #1da1f2;
    --color_twitter_rgb: 29,161,242;
    --color_facebook: #1877f2;
    --color_facebook_rgb: 24,119,242;
    --color_pintarest: #bd081c;
    --color_pintarest_rgb: 189,8,28;
    --color_line: #00b900;
    --color_line_rgb: 0,185,0;
    --color_instagram: #cf2e92;
    --color_instagram_rgb: 207,46,146
}

body {
    position: relative;
    font-family: var(--font_family-NotoSansJP);
    font-size: 1rem;
    font-size: clamp(.875rem,.83rem + .23vw,1rem)
}

a {
    color: var(--color_black)
}

.wrapper {
    width: 90%;
    max-width: 1230px;
    margin: 0 auto
}

.header .wrapper {
    width: 95%
}

@media screen and (min-width: 480px) {
    .wrapper {
        width:90%
    }
}

@media screen and (min-width: 768px) {
    .wrapper {
        width:97%
    }
}

.view_sp {
    display: none;
}
.view_pc {
    display: block;
}
@media screen and (max-width: 767px) {
.view_sp {
    display: block;
}
.view_pc {
    display: none;
}
}



.header__height {
    padding-top: var(--header-height)
}

.chic__bg--blue {
    background-color: var(--color_theme-chic_blue)
}

.chic__bg--red {
    background-color: var(--color_theme-chic_red)
}

.chic__bg--green {
    background-color: var(--color_theme-chic_green)
}

.c_page__header {
    background-color: var(--color_theme);
    color: var(--color_white);
    padding-top: 60px;
    padding-top: clamp(32px,21.818px + 3.18vw,60px);
    padding-bottom: 60px;
    padding-bottom: clamp(32px,21.818px + 3.18vw,60px)
}

.c_page__header h1 {
    font-weight: 400;
    text-align: center;
    letter-spacing: .1em;
    font-size: 1.75rem;
    font-size: clamp(1.25rem,1.068rem + .91vw,1.75rem)
}

.c_content--title {
    padding-bottom: 1em;
    font-family: var(--font_family-NotoSerifJP);
    font-weight: 500;
    text-align: center;
    font-size: 2.6875rem;
    font-size: clamp(1.0625rem,.472rem + 2.95vw,2.6875rem)
}

.c_content--title.tal {
    text-align: left
}

.c_content--title .sub__title {
    color: var(--color_theme);
    font-size: 2.3125rem;
    font-size: clamp(1.0625rem,.608rem + 2.27vw,2.3125rem)
}

.c_content--title .sub__title+span {
    margin-top: 1em
}

.c_content--title>span {
    display: block
}

.c_content--title>span.white {
    color: var(--color_white)
}

.c_btn__tab {
    position: relative;
    display: flex;
    align-items: baseline;
    justify-content: center;
    overflow: hidden;
    width: 100%;
    max-width: 200px;
    margin: 0 auto;
    border-width: 1px 0;
    border-style: solid;
    border-color: var(--color_white);
    font-family: var(--font_family-NotoSerifJP);
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    transition: all .5s ease;
    padding-top: 24px;
    padding-top: clamp(14px,10.364px + 1.14vw,24px);
    padding-bottom: 24px;
    padding-bottom: clamp(14px,10.364px + 1.14vw,24px)
}

@media screen and (min-width: 768px) {
    .c_btn__tab {
        max-width:400px
    }
}

.c_btn__tab::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background-color: rgba(var(--color_white_rgb),.2);
    transition: all .5s ease;
    transform: translate(-50%,-50%) scale(0)
}

.c_btn__tab:hover::before {
    transform: translate(-50%,-50%) scale(1)
}

.c_btn__tab::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 10px;
    display: block;
    width: 1.2em;
    height: 1.2em;
    background-repeat: no-repeat;
    background-attachment: scroll;
    background-position: center center;
    background-size: contain;
    transform: translateY(-50%);
    flex: none;
    background-color: var(--color_white);
    mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25.99 25.99'%3E%3Cpath d='M12.99,0C5.83,0,0,5.83,0,12.99s5.83,12.99,12.99,12.99,12.99-5.83,12.99-12.99S20.16,0,12.99,0ZM12.99,24.81c-6.52,0-11.82-5.3-11.82-11.82S6.47,1.17,12.99,1.17s11.82,5.3,11.82,11.82-5.3,11.82-11.82,11.82ZM12.99,2.8C7.37,2.8,2.8,7.37,2.8,12.99s4.57,10.2,10.2,10.2,10.2-4.57,10.2-10.2S18.62,2.8,12.99,2.8ZM12.99,22.74c-5.38,0-9.75-4.37-9.75-9.75S7.62,3.24,12.99,3.24s9.75,4.37,9.75,9.75-4.37,9.75-9.75,9.75ZM13.38,12.74h5.18v.76h-5.18v5.18h-.76v-5.18h-5.19v-.76h5.19v-5.18h.76v5.18Z'/%3E%3C/svg%3E") no-repeat center center;
    -webkit-mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25.99 25.99'%3E%3Cpath d='M12.99,0C5.83,0,0,5.83,0,12.99s5.83,12.99,12.99,12.99,12.99-5.83,12.99-12.99S20.16,0,12.99,0ZM12.99,24.81c-6.52,0-11.82-5.3-11.82-11.82S6.47,1.17,12.99,1.17s11.82,5.3,11.82,11.82-5.3,11.82-11.82,11.82ZM12.99,2.8C7.37,2.8,2.8,7.37,2.8,12.99s4.57,10.2,10.2,10.2,10.2-4.57,10.2-10.2S18.62,2.8,12.99,2.8ZM12.99,22.74c-5.38,0-9.75-4.37-9.75-9.75S7.62,3.24,12.99,3.24s9.75,4.37,9.75,9.75-4.37,9.75-9.75,9.75ZM13.38,12.74h5.18v.76h-5.18v5.18h-.76v-5.18h-5.19v-.76h5.19v-5.18h.76v5.18Z'/%3E%3C/svg%3E") no-repeat center center
}

.c_btn__tab.is__active::after {
    background-color: var(--color_white);
    mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25.99 25.99'%3E%3Cpath d='M12.99,25.99C5.83,25.99,0,20.16,0,12.99S5.83,0,12.99,0s12.99,5.83,12.99,12.99-5.83,12.99-12.99,12.99ZM12.99,1.17C6.47,1.17,1.17,6.47,1.17,12.99s5.3,11.82,11.82,11.82,11.82-5.3,11.82-11.82S19.51,1.17,12.99,1.17ZM12.99,23.19c-5.62,0-10.2-4.57-10.2-10.2S7.37,2.8,12.99,2.8s10.2,4.57,10.2,10.2-4.57,10.2-10.2,10.2ZM12.99,3.24C7.62,3.24,3.25,7.62,3.25,12.99s4.37,9.75,9.75,9.75,9.75-4.37,9.75-9.75S18.37,3.24,12.99,3.24ZM18.56,12.74H7.43v.76h11.13v-.76Z'/%3E%3C/svg%3E") no-repeat center center;
    -webkit-mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25.99 25.99'%3E%3Cpath d='M12.99,25.99C5.83,25.99,0,20.16,0,12.99S5.83,0,12.99,0s12.99,5.83,12.99,12.99-5.83,12.99-12.99,12.99ZM12.99,1.17C6.47,1.17,1.17,6.47,1.17,12.99s5.3,11.82,11.82,11.82,11.82-5.3,11.82-11.82S19.51,1.17,12.99,1.17ZM12.99,23.19c-5.62,0-10.2-4.57-10.2-10.2S7.37,2.8,12.99,2.8s10.2,4.57,10.2,10.2-4.57,10.2-10.2,10.2ZM12.99,3.24C7.62,3.24,3.25,7.62,3.25,12.99s4.37,9.75,9.75,9.75,9.75-4.37,9.75-9.75S18.37,3.24,12.99,3.24ZM18.56,12.74H7.43v.76h11.13v-.76Z'/%3E%3C/svg%3E") no-repeat center center
}

@media screen and (min-width: 768px) {
    .c_btn__tab::after {
        width:2em;
        height: 2em
    }
}

.c_btn__tab img {
    height: 14px;
    height: clamp(8px,5.818px + .68vw,14px)
}

.c_btn__page {
    padding-top: 44px;
    padding-top: clamp(24px,16.727px + 2.27vw,44px)
}

.c_btn__page a {
    position: relative;
    display: flex;
    align-items: baseline;
    justify-content: center;
    width: 100%;
    max-width: 400px;
    margin: 0 auto;
    border-width: 1px 0;
    border-style: solid;
    border-color: var(--color_white);
    font-family: var(--font_family-NotoSerifJP);
    font-weight: 700;
    line-height: 1;
    transition: all .5s ease;
    padding-top: 24px;
    padding-top: clamp(24px,24px + 0,24px);
    padding-bottom: 24px;
    padding-bottom: clamp(24px,24px + 0,24px)
}

.c_btn__page a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 10px;
    display: block;
    width: 2em;
    height: 2em;
    background-repeat: no-repeat;
    background-attachment: scroll;
    background-position: center center;
    background-size: contain;
    transform: translateY(-50%);
    flex: none;
    background-color: var(--color_white);
    mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25.99 25.99'%3E%3Cpath d='M12.99,0C5.83,0,0,5.83,0,12.99s5.83,12.99,12.99,12.99,12.99-5.83,12.99-12.99S20.16,0,12.99,0ZM12.99,24.81c-6.52,0-11.82-5.3-11.82-11.82S6.47,1.17,12.99,1.17s11.82,5.3,11.82,11.82-5.3,11.82-11.82,11.82ZM12.99,2.8C7.37,2.8,2.8,7.37,2.8,12.99s4.57,10.2,10.2,10.2,10.2-4.57,10.2-10.2S18.62,2.8,12.99,2.8ZM12.99,22.74c-5.38,0-9.75-4.37-9.75-9.75S7.62,3.24,12.99,3.24s9.75,4.37,9.75,9.75-4.37,9.75-9.75,9.75ZM13.38,12.74h5.18v.76h-5.18v5.18h-.76v-5.18h-5.19v-.76h5.19v-5.18h.76v5.18Z'/%3E%3C/svg%3E") no-repeat center center;
    -webkit-mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25.99 25.99'%3E%3Cpath d='M12.99,0C5.83,0,0,5.83,0,12.99s5.83,12.99,12.99,12.99,12.99-5.83,12.99-12.99S20.16,0,12.99,0ZM12.99,24.81c-6.52,0-11.82-5.3-11.82-11.82S6.47,1.17,12.99,1.17s11.82,5.3,11.82,11.82-5.3,11.82-11.82,11.82ZM12.99,2.8C7.37,2.8,2.8,7.37,2.8,12.99s4.57,10.2,10.2,10.2,10.2-4.57,10.2-10.2S18.62,2.8,12.99,2.8ZM12.99,22.74c-5.38,0-9.75-4.37-9.75-9.75S7.62,3.24,12.99,3.24s9.75,4.37,9.75,9.75-4.37,9.75-9.75,9.75ZM13.38,12.74h5.18v.76h-5.18v5.18h-.76v-5.18h-5.19v-.76h5.19v-5.18h.76v5.18Z'/%3E%3C/svg%3E") no-repeat center center
}

.c_btn__page a:hover {
    background-color: var(--color_theme-r);
    color: var(--color_white)
}

.c_btn__page a img {
    height: 14px
}

.c_btn__big {
    display: flex;
    justify-content: center
}

.c_btn__big a {
    display: inline-block;
    width: 100%;
    margin: 0 auto;
    padding-top: 1em;
    padding-bottom: 1em;
    border-width: 1px;
    border-style: solid;
    background-color: var(--color_theme-r);
    box-shadow: 0 0 0 4px var(--color_theme-r) inset,0 0 0 6px var(--color_white) inset;
    font-family: var(--font_family-mincho);
    font-weight: 700;
    color: var(--color_white);
    text-align: center;
    transition: all .5s ease;
    padding-right: 100px;
    padding-right: clamp(0,-36.364px + 11.36vw,100px);
    padding-left: 100px;
    padding-left: clamp(0,-36.364px + 11.36vw,100px);
    font-size: 32px;
    font-size: clamp(20px,15.636px + 1.36vw,32px)
}

@media screen and (min-width: 480px) {
    .c_btn__big a {
        width:auto
    }
}

.c_btn__big a:hover {
    background-color: var(--color_theme-r);
    color: var(--color_white)
}

.yt__container {
    position: relative;
    width: 100%;
    aspect-ratio: 16/9
}

.yt__container iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%!important;
    height: 100%!important
}

.display--sp {
    display: block
}

@media screen and (min-width: 480px) {
    .display--sp {
        display:none
    }
}

.display--pc {
    display: none
}


#topSlider .swiper-pagination .swiper-pagination-bullet-active {
    background-color: var(--color_theme)
}

#topSlider .swiper-pagination .swiper-pagination-bullet {
    width: 20px;
    height: 10px;
    border-radius: 2px
}

#topPlanSlider {
    position: relative;
    overflow: hidden;
    padding-top: 64px;
    padding-top: clamp(32px,20.364px + 3.64vw,64px)
}

#topPlanSlider .swiper-button-next,#topPlanSlider .swiper-button-prev {
    top: 50%;
    color: var(--color_theme)
}

#topPlanSlider .swiper-button-next::after,#topPlanSlider .swiper-button-prev::after {
    font-size: 44px;
    font-size: clamp(24px,16.727px + 2.27vw,44px)
}

#topPlanSlider .swiper-slide figure img {
    margin: 0 auto;
    width: 75%
}

@media screen and (min-width: 480px) {
    #topPlanSlider .swiper-slide figure img {
        width:100%
    }
}

.button-more {
    display: block;
    max-width: 14em;
    margin: 10px auto 0;
    padding: 1em 1em;
    background-color: var(--color_theme);
    font-family: var(--font_family-mincho);
    font-weight: 700;
    color: var(--color_white);
    text-align: center;
    transition: all .5s ease;
    font-size: 16px;
    font-size: clamp(14px,13.273px + .23vw,16px)
}

.button-more:hover {
    opacity: .8
}

[data-content=location] .button-more {
    margin-top: 40px
}

[data-content=design] .button-more {
    margin-top: 40px
}

.image__photo {
    position: absolute;
    right: 10px;
    bottom: 10px;
    font-family: var(--font_family-mincho);
    color: var(--color_white);
    font-size: 16px;
    font-size: clamp(10px,7.818px + .68vw,16px)
}

.header {
    position: fixed;
    z-index: 100;
    top: 0;
    left: 0;
    width: 100%;
    border-width: 0 0 1px 0;
    border-style: solid;
    border-color: var(--color_theme);
    background-color: var(--color_white)
}

.header .header__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: row;
    flex-wrap: wrap;
    padding-top: 10px;
    padding-bottom: 10px
}

.header .header__bottom {
    display: none;
    padding-top: 10px;
    padding-bottom: 20px
}

@media screen and (min-width: 768px) {
    .header .header__bottom {
        display:block
    }
}

.header .header__logo a {
    display: flex;
    align-items: center;
    margin-top: 4px;
    color: var(--color_black)
}

.header .header__logo a img {
    width: auto;
    height: 20px
}

@media screen and (min-width: 768px) {
    .header .header__logo a img {
        width:auto;
        height: 45px
    }
}

.header .header__logo .header__logo--tagline {
    display: none;
    font-family: var(--font_family-NotoSerifJP);
    font-size: .625rem
}

@media screen and (min-width: 768px) {
    .header .header__logo .header__logo--tagline {
        display:block
    }
}

.header .header__logo .header__logo--title {
  width: 11em;
  margin-left: .5em;
  font-weight: 700;
  line-height: 1.2;
  font-size: clamp(.6875rem, .574rem + .57vw, 1rem);
}

@media screen and (max-width: 767px) {
  .header .header__logo .header__logo--title {
    width: 135px;
    font-size: clamp(10px, 2.8vw, 12px);
  }
}



@media screen and (min-width: 480px) {
    .header .header__logo .header__logo--title {
        margin-left:1em
    }
}

.header .header__side-menu {
    display: none
}

@media screen and (min-width: 768px) {
    .header .header__side-menu {
        display:flex;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0 5px
    }
}

.header .header__side-menu a {
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .5s ease
}

.header .header__side-menu a.nav__new {
    position: relative
}

.header .header__side-menu a.nav__new::before {
    content: "NEW";
    position: absolute;
    top: 0;
    left: 0;
    padding: 0 .4em;
    font-size: .625rem;
    color: var(--color_white);
    background: var(--color_theme-r);
    transform: scale(.6);
    transform-origin: top left;
    display: none;
}

.header .header__side-menu .btn__side-menu {
    min-height: 38px;
    padding: .25em 1em;
    border-width: 1px;
    border-style: solid;
    border-color: var(--color_theme);
    background-color: var(--color_theme);
    font-size: .9375rem;
    color: var(--color_white);
    letter-spacing: .1em;
    transition: all .5s ease
}

.header .header__side-menu .btn__side-menu:hover {
    background-color: var(--color_white);
    color: var(--color_theme)
}

.header .header__side-menu .btn__side-menu--ghost {
    min-height: 38px;
    padding: .25em 1em;
    border-width: 1px;
    border-style: solid;
    border-color: var(--color_theme);
    background-color: var(--color_white);
    font-size: .9375rem;
    color: var(--color_theme);
    letter-spacing: .1em;
    transition: all .5s ease
}

.header .header__side-menu .btn__side-menu--ghost:hover {
    background-color: var(--color_theme);
    color: var(--color_white)
}

.header .header__side-menu .icon--visit::after {
    content: "";
    display: block;
    width: 1em;
    height: 1em;
    margin-left: .5em;
    transition: all .5s ease;
    background-color: var(--color_white);
    mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50.81 51.66'%3E%3Cpath d='M13.68,6.52v-3.99c0-1.4,1.14-2.53,2.54-2.53s2.53,1.14,2.53,2.53v3.99c0,1.4-1.14,2.54-2.53,2.54s-2.54-1.13-2.54-2.54ZM34.91,9.06c1.4,0,2.53-1.13,2.53-2.54v-3.99c0-1.4-1.14-2.53-2.53-2.53s-2.54,1.14-2.54,2.53v3.99c0,1.4,1.14,2.54,2.54,2.54ZM50.81,10.73v33.8c0,3.93-3.19,7.12-7.12,7.12H7.12C3.19,51.66,0,48.47,0,44.54V10.73C0,6.8,3.19,3.61,7.12,3.61h4.33v2.91c0,2.63,2.14,4.76,4.76,4.76s4.76-2.14,4.76-4.76v-2.91h9.17v2.91c0,2.63,2.14,4.76,4.76,4.76s4.76-2.14,4.76-4.76v-2.91h4.02c3.93,0,7.12,3.19,7.12,7.12ZM47.35,15.23H3.46v29.3c0,2.02,1.64,3.66,3.66,3.66h36.57c2.02,0,3.66-1.64,3.66-3.66V15.23ZM17.23,45.01h6.42v-6.42h-6.42v6.42ZM17.23,35.06h6.42v-6.42h-6.42v6.42ZM7.29,45.01h6.41v-6.42h-6.41v6.42ZM7.29,35.06h6.41v-6.42h-6.41v6.42ZM37.11,25.12h6.41v-6.41h-6.41v6.41ZM27.17,25.12h6.42v-6.41h-6.42v6.41ZM34.89,29.58l-1.91-1.48-3.47,4.47-2.06-1.65-1.51,1.89,3.98,3.18,4.98-6.4ZM37.11,35.06h6.41v-6.42h-6.41v6.42ZM27.17,45.01h6.42v-6.42h-6.42v6.42ZM17.23,25.12h6.42v-6.41h-6.42v6.41Z'/%3E%3C/svg%3E") no-repeat center center;
    -webkit-mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50.81 51.66'%3E%3Cpath d='M13.68,6.52v-3.99c0-1.4,1.14-2.53,2.54-2.53s2.53,1.14,2.53,2.53v3.99c0,1.4-1.14,2.54-2.53,2.54s-2.54-1.13-2.54-2.54ZM34.91,9.06c1.4,0,2.53-1.13,2.53-2.54v-3.99c0-1.4-1.14-2.53-2.53-2.53s-2.54,1.14-2.54,2.53v3.99c0,1.4,1.14,2.54,2.54,2.54ZM50.81,10.73v33.8c0,3.93-3.19,7.12-7.12,7.12H7.12C3.19,51.66,0,48.47,0,44.54V10.73C0,6.8,3.19,3.61,7.12,3.61h4.33v2.91c0,2.63,2.14,4.76,4.76,4.76s4.76-2.14,4.76-4.76v-2.91h9.17v2.91c0,2.63,2.14,4.76,4.76,4.76s4.76-2.14,4.76-4.76v-2.91h4.02c3.93,0,7.12,3.19,7.12,7.12ZM47.35,15.23H3.46v29.3c0,2.02,1.64,3.66,3.66,3.66h36.57c2.02,0,3.66-1.64,3.66-3.66V15.23ZM17.23,45.01h6.42v-6.42h-6.42v6.42ZM17.23,35.06h6.42v-6.42h-6.42v6.42ZM7.29,45.01h6.41v-6.42h-6.41v6.42ZM7.29,35.06h6.41v-6.42h-6.41v6.42ZM37.11,25.12h6.41v-6.41h-6.41v6.41ZM27.17,25.12h6.42v-6.41h-6.42v6.41ZM34.89,29.58l-1.91-1.48-3.47,4.47-2.06-1.65-1.51,1.89,3.98,3.18,4.98-6.4ZM37.11,35.06h6.41v-6.42h-6.41v6.42ZM27.17,45.01h6.42v-6.42h-6.42v6.42ZM17.23,25.12h6.42v-6.41h-6.42v6.41Z'/%3E%3C/svg%3E") no-repeat center center
}

.header .header__side-menu .icon--visit:hover::after {
    background-color: var(--color_theme);
    mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 12.76'%3E%3Cpath d='m.75,12h14.29V3H.75v9Zm15,.76H0V2.25h15.75v10.5Zm2.25-2.63h-.75V.75H2.63v-.75h15.37v10.13Z'/%3E%3C/svg%3E") no-repeat center center;
    -webkit-mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 12.76'%3E%3Cpath d='m.75,12h14.29V3H.75v9Zm15,.76H0V2.25h15.75v10.5Zm2.25-2.63h-.75V.75H2.63v-.75h15.37v10.13Z'/%3E%3C/svg%3E") no-repeat center center
}

.header .header__side-menu .icon--openlink::after {
    content: "";
    display: block;
    width: 1em;
    height: 1em;
    margin-left: .5em;
    transition: all .5s ease;
    background-color: var(--color_white);
    mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 12.76'%3E%3Cpath d='m.75,12h14.29V3H.75v9Zm15,.76H0V2.25h15.75v10.5Zm2.25-2.63h-.75V.75H2.63v-.75h15.37v10.13Z'/%3E%3C/svg%3E") no-repeat center center;
    -webkit-mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 12.76'%3E%3Cpath d='m.75,12h14.29V3H.75v9Zm15,.76H0V2.25h15.75v10.5Zm2.25-2.63h-.75V.75H2.63v-.75h15.37v10.13Z'/%3E%3C/svg%3E") no-repeat center center
}

.header .header__side-menu .icon--openlink:hover::after {
    background-color: var(--color_theme);
    mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 12.76'%3E%3Cpath d='m.75,12h14.29V3H.75v9Zm15,.76H0V2.25h15.75v10.5Zm2.25-2.63h-.75V.75H2.63v-.75h15.37v10.13Z'/%3E%3C/svg%3E") no-repeat center center;
    -webkit-mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 12.76'%3E%3Cpath d='m.75,12h14.29V3H.75v9Zm15,.76H0V2.25h15.75v10.5Zm2.25-2.63h-.75V.75H2.63v-.75h15.37v10.13Z'/%3E%3C/svg%3E") no-repeat center center
}

.header .header__nav {
    display: none
}

@media screen and (min-width: 768px) {
    .header .header__nav {
        display:block
    }
}

.header .header__nav>ul {
    display: flex;
    justify-content: center;
}

.header .header__nav>ul>li {
    position: relative;
    display: flex;
    justify-content: center;
}

.header .header__nav>ul>li:first-of-type::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    width: 1px;
    height: 16px;
    margin-top: -8px;
    background-color: #a3a3a3
}

.header .header__nav>ul>li::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    display: block;
    width: 1px;
    height: 16px;
    margin-top: -8px;
    background-color: #a3a3a3
}

.header .header__nav>ul>li:hover>ul {
    pointer-events: auto;
    opacity: 1
}

.header .header__nav>ul>li>a,.header .header__nav>ul>li>span {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    width: 100%;
    padding: 0 .5em;
    /*font-size: .75rem;*/
    font-size: min(1vw, 12px);
    font-weight: 700;
    text-align: center;
    transition: all .3s ease
}

.header .header__nav>ul>li>a {
    width: 100%;
   padding:0 min(33px, 2vw);
}

.header .header__nav>ul>li>a.nav__new {
    position: relative;
}

.header .header__nav>ul>li>a.nav__new::before {
    content: "NEW";
    position: absolute;
    left: 0;
    bottom: 100%;
    padding: 0 .4em;
    background-color: var(--color_theme);
    font-size: .625rem;
    color: var(--color_white)
}

.header .header__nav>ul>li>a:hover {
    color: var(--color_theme)
}

.header .header__nav>ul>li>span {
    opacity: .3
}

.header .header__nav>ul>li>ul {
    position: absolute;
    top: 100%;
    left: 0;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    padding: 20px 10px 10px 10px;
    background-color: var(--color_white);
    pointer-events: none;
    opacity: 0;
    transition: all .5s ease;
    gap: 4px 4px
}

.header .header__nav>ul>li>ul>* {
    width: calc((100% - 4px * 0)/ 1)
}

.header .header__nav>ul>li>ul>li a {
    display: flex;
    align-items: center;
    font-size: .6875rem;
    font-weight: 700;
    transition: all .5s ease
}

.header .header__nav>ul>li>ul>li a::before {
    content: "";
    display: block;
    visibility: hidden;
    width: 1em;
    height: 1em;
    background-color: var(--color_black);
    mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9.66 14.28'%3E%3Cpath d='m0,0l9.66,7.12L0,14.28V0Z'/%3E%3C/svg%3E") no-repeat center center;
    -webkit-mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9.66 14.28'%3E%3Cpath d='m0,0l9.66,7.12L0,14.28V0Z'/%3E%3C/svg%3E") no-repeat center center
}

.header .header__nav>ul>li>ul>li a:hover::before {
    visibility: visible
}

.footer_info {
    display: none;
    text-align: center;
    font-family: var(--font_family-NotoSansJP);
    font-size: 1rem;
    font-size: min(1.8vw, 13px);
    color: red;
    padding-top: 15px;
    margin-top: 15px;
    border-top: 1px solid red;
    line-height: 180%
}

.footer_info span {
    display: block;
}

.footer_info .view_sp {
    display: none;
}

@media screen and (max-width: 767px) {

.footer {
    padding-bottom: var(--footer_menu-height)
}


    .footer_info {
        margin:0 auto;
        width: 100%;
       font-size: min(2.9vw, 12px);
    }

    .footer_info .view_sp {
        display: block
    }
}

.footer .footer__float {
    position: fixed;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    z-index: 100;
    background-color: var(--color_white)
}

@media screen and (min-width: 768px) {
    .footer .footer__float {
        display:none
    }
}

.footer .footer__float ul {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1px 1px
}

.footer .footer__float ul>* {
    width: calc((100% - 1px * 3)/ 4);
    height: auto;
}

.footer .footer__float.col3 ul {
    gap: 1px 1px;
     height: auto;
}

.footer .footer__float.col3 ul>* {
    width: calc((100% - 1px * 2)/ 3);
}

.footer .footer__float.col2 ul {
    gap: 1px 1px;
}

.footer .footer__float.col2 ul>* {
    width: calc((100% - 1px * 1)/ 2);
}

.footer .footer__float ul li img {
    width: 100%;
    max-width: inherit;
    height: auto;
}



.footer .footer__float ul li a {
    display: flex;
    align-items: center;
    flex-direction: column;
    background-color: var(--color_theme);
    color: var(--color_white);
    text-align: center;
    font-size: min(2.5vw, 11px);
    height: 100%;
     word-break: normal;
  overflow-wrap: break-word;
  line-break: strict;
}


@media screen and (max-width: 375px) {
.footer .footer__float ul li a {
    font-size: min(2.3vw, 11px);
}
}

.footer .footer__float ul li a span {
    line-height: 30px
}

.footer .footer__float ul li:first-child a {
    background-color: #265d79
}

.footer .footer__float ul li:nth-child(2) a {
    background-color: #9e2b40
}

.footer .footer__float ul li:nth-child(4) a {
    background-color: #d5a66c
}

.footer .footer__float.col3 ul li a {
    justify-content: center;
    flex-direction: row
}

.footer .footer__float.col2 ul li a {
    justify-content: center;
    flex-direction: row
}

.footer .footer__float ul li a.nav__new {
    position: relative
}

.footer .footer__float ul li a.nav__new::after {
    content: "NEW";
    position: absolute;
    top: 0;
    right: 0;
    padding: 0 .4em;
    background-color: var(--color_theme-r);
    font-size: .625rem;
    color: var(--color_white)
}

.footer .footer__float ul li a.nav__new::after {
    background-color: #f1093b;
    display: none;
}

.footer .footer__float ul .menu__disable {
    pointer-events: none;
    opacity: .5
}



.footer .footer__cv {
    padding-top: 80px;
    padding-top: clamp(40px,25.455px + 4.55vw,80px);
    padding-bottom: 80px;
    padding-bottom: clamp(40px,25.455px + 4.55vw,80px)
}

#gallery .footer .footer__cv {
    background-color: var(--color_black)
}

.footer .footer__cv ul {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    flex-wrap: wrap;
    gap: 10px 10px
}

.footer .footer__cv ul>* {
    width: calc((100% - 10px * 0)/ 1)
}

@media screen and (min-width: 480px) {
    .footer .footer__cv ul {
        flex-direction:row;
        gap: 20px 20px
    }

    .footer .footer__cv ul>* {
        width: calc((100% - 20px * 1)/ 2)
    }
}

@media screen and (min-width: 768px) {
    .footer .footer__cv ul {
        gap:40px 40px
    }

    .footer .footer__cv ul>* {
        width: calc((100% - 40px * 1)/ 2)
    }
}

.footer .footer__cv a {
    position: relative;
    display: block;
    overflow: hidden;
    width: 100%;
    margin: 0 auto;
    padding: .5em;
    font-weight: 700;
    color: var(--color_white);
    text-align: center;
    letter-spacing: .2em;
    font-size: 1.875rem;
    font-size: clamp(.875rem,.511rem + 1.82vw,1.875rem)
}

@keyframes shiny {
    0% {
        opacity: 0;
        transform: scale(0) rotate(25deg)
    }

    50% {
        opacity: 1;
        transform: scale(1) rotate(25deg)
    }

    100% {
        opacity: 0;
        transform: scale(50) rotate(25deg)
    }
}

.footer .footer__cv a::after {
    content: "";
    position: absolute;
    top: -100px;
    left: -100px;
    width: 50px;
    height: 50px;
    background-image: linear-gradient(100deg,rgba(255,255,255,0) 10%,#fff 100%,rgba(255,255,255,0) 0);
    animation-name: shiny;
    animation-duration: 3s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite
}

.footer .footer__cv p {
    padding-bottom: 10px;
    font-weight: 700;
    text-align: center;
    font-size: 1.25rem;
    font-size: clamp(.875rem,.739rem + .68vw,1.25rem)
}

.footer .footer__cv p span {
    color: #e60012
}

#gallery .footer .footer__tel {
    background-color: var(--color_black);
    color: var(--color_white)
}

#gallery .footer .footer__tel a {
    color: var(--color_white)
}

.footer .footer__tel .footer__tel--inner {
    width: 100%;
    max-width: 560px;
    margin: 0 auto;
    padding-bottom: 80px;
    padding-bottom: clamp(40px,25.455px + 4.55vw,80px)
}

.footer .footer__tel .footer__tel--inner .footer__tel--top {
    margin-bottom: .5em;
    font-family: var(--font_family-mincho);
    font-size: 1rem;
    font-size: clamp(.875rem,.83rem + .23vw,1rem)
}

.footer .footer__tel .footer__tel--inner .footer__tel--under {
    margin-top: .5em;
    font-size: .875rem;
    font-size: clamp(.75rem,.705rem + .23vw,.875rem)
}

.footer .footer__note {
    padding: 30px 0;
    background-color: #f8f4ef
}

.footer .footer__note p {
    line-height: 1.6;
    font-size: .8125rem;
    font-size: clamp(.6875rem,.642rem + .23vw,.8125rem)
}

.footer .footer__group {
    background-color: var(--color_theme);
    padding-top: 60px;
    padding-top: clamp(30px,19.091px + 3.41vw,60px);
    padding-bottom: 60px;
    padding-bottom: clamp(30px,19.091px + 3.41vw,60px)
}

.footer .footer__group ul {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 20px 20px
}

.footer .footer__group ul>* {
    width: calc((100% - 20px * 0)/ 1)
}

@media screen and (min-width: 768px) {
    .footer .footer__group ul {
        gap:20px 20px
    }

    .footer .footer__group ul>* {
        width: calc((100% - 20px * 2)/ 3)
    }
}

.footer .footer__group ul li {
    text-align: center;
    font-size: .6875rem;
    font-size: clamp(.625rem,.602rem + .11vw,.6875rem)
}

.footer .footer__group ul li a {
    color: var(--color_white)
}

.footer .footer__group ul li span {
    display: block;
    margin-top: 1em
}

.footer .footer__copyright {
    background-color: var(--color_black)
}

.footer .footer__copyright p {
    padding: 1em 0;
    font-size: .875rem;
    color: var(--color_white);
    text-align: center;
    letter-spacing: .2em;
    font-size: 1rem;
    font-size: clamp(.875rem,.83rem + .23vw,1rem)
}

.footer .footer__seller {
    padding-top: 40px;
    padding-top: clamp(20px,12.727px + 2.27vw,40px);
    padding-bottom: 40px;
    padding-bottom: clamp(20px,12.727px + 2.27vw,40px)
}

.footer .footer__seller ul {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 40px
}

@media screen and (min-width: 768px) {
    .footer .footer__seller ul {
        justify-content:center
    }
}

.footer .footer__seller ul li span {
    font-weight: 700;
    font-size: .875rem;
    font-size: clamp(.75rem,.705rem + .23vw,.875rem)
}

.footer .footer__seller ul li a {
    display: block;
    margin-top: 10px
}

.footer .footer__seller ul li a img {
    width: auto;
    max-height: 32px
}

@media screen and (min-width: 480px) {
    .footer .footer__seller ul li a img {
        max-height:42px
    }
}

.footer .footer__area {
    padding-top: 40px;
    padding-top: clamp(20px,12.727px + 2.27vw,40px);
    padding-bottom: 40px;
    padding-bottom: clamp(20px,12.727px + 2.27vw,40px)
}

.footer .footer__area p {
    font-weight: 700;
    color: var(--color_theme-r);
    text-align: center;
    padding-bottom: 36px;
    padding-bottom: clamp(20px,14.182px + 1.82vw,36px);
    font-size: 1.5rem;
    font-size: clamp(1.25rem,1.159rem + .45vw,1.5rem)
}

.footer .footer__area p br {
    display: block
}

@media screen and (min-width: 900px) {
    .footer .footer__area p br {
        display:none
    }
}

.footer .footer__area ul {
    display: flex;
    justify-content: flex-start;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 12px 12px
}

.footer .footer__area ul>* {
    width: calc((100% - 12px * 0)/ 1)
}

@media screen and (min-width: 560px) {
    .footer .footer__area ul {
        gap:24px 16px
    }

    .footer .footer__area ul>* {
        width: calc((100% - 16px * 2)/ 3)
    }
}

@media screen and (min-width: 900px) {
    .footer .footer__area ul {
        gap:36px 50px
    }

    .footer .footer__area ul>* {
        width: calc((100% - 50px * 2)/ 3)
    }
}

.footer .footer__area ul li a figure figcaption {
    margin-top: 4px;
    font-family: var(--font_family-NotoSerifJP);
    font-size: .875rem;
    font-weight: 700;
    text-align: center;
    letter-spacing: .2em;
    font-size: 1.125rem;
    font-size: clamp(.875rem,.784rem + .45vw,1.125rem)
}

.footer .scroll__top {
    position: fixed;
    z-index: 3;
    right: 12px;
    bottom: calc(var(--footer_menu-height) + 12px);
    display: grid;
    border-radius: 13px;
    background-color: var(--color_gray);
    cursor: pointer;
    place-content: center;
    width: 60px;
    width: clamp(48px,43.636px + 1.36vw,60px);
    height: 60px;
    height: clamp(48px,43.636px + 1.36vw,60px)
}

@media screen and (min-width: 768px) {
    .footer .scroll__top {
        bottom:12px
    }
}

.footer .scroll__top .scroll__top--icon {
    display: block;
    width: 32px;
    width: clamp(24px,21.091px + .91vw,32px);
    height: 32px;
    height: clamp(24px,21.091px + .91vw,32px);
    background-color: var(--color_white);
    mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32.61 17.01'%3E%3Cpath d='m.71,17.01l-.71-.71L16.3,0l16.3,16.3-.71.71L16.3,1.41.71,17.01Z'/%3E%3C/svg%3E") no-repeat center center;
    -webkit-mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32.61 17.01'%3E%3Cpath d='m.71,17.01l-.71-.71L16.3,0l16.3,16.3-.71.71L16.3,1.41.71,17.01Z'/%3E%3C/svg%3E") no-repeat center center
}

.ham__body {
    position: fixed;
    z-index: 1001;
    top: 0;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: flex-end;
    flex-direction: row;
    flex-direction: row;
    flex-wrap: nowrap;
    overflow: hidden;
    width: 100%;
    height: 100svh;
    color: var(--color_white);
    pointer-events: none;
    opacity: 0;
    transition: all .5s .2s,transform .5s;
    transition-timing-function: ease
}

@media screen and (min-width: 768px) {
    .ham__body {
        display:none
    }
}

.is__active .ham__body {
    pointer-events: all;
    opacity: 1
}

.ham__bg {
    position: fixed;
    z-index: 1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(var(--color_black_rgb),.1);
    cursor: pointer;
    transition: opacity 1s .2s,transform .5s
}

.ham__main {
    position: relative;
    z-index: 2;
    width: 100%;
    background-color: var(--color_white);
    transition: all .5s ease;
    padding-top: var(--header-height)
}

.ham__main .ham__menu {
    font-size: 1rem;
    font-size: clamp(.875rem,.83rem + .23vw,1rem)
}

.ham__main .ham__menu ul.menu__main {
    display: flex;
    align-items: center;
    flex-direction: row;
    flex-wrap: wrap;
    position: relative;
    gap: 0 0;
    border-width: 1px 0 0 0;
    border-style: solid;
    border-color: var(--color_theme)
}

.ham__main .ham__menu ul.menu__main>* {
    width: calc((100% - 0px * 1)/ 2)
}

.ham__main .ham__menu ul.menu__main::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 0;
    width: 1px;
    height: 100%;
    background-color: var(--color_theme);
    display: block
}

.ham__main .ham__menu ul.menu__main li {
    border-width: 0 0 1px 0;
    border-style: solid;
    border-color: var(--color_theme)
}

.ham__main .ham__menu ul.menu__main li span {
    opacity: .5
}

.ham__main .ham__menu ul.menu__main li a,.ham__main .ham__menu ul.menu__main li span {
    font-weight: 600;
    display: block;
    text-align: center;
    padding: 22px 5px 20px 5px;
    color: var(--color_black);
    letter-spacing: .05em;
    transition: all .5s ease;
    font-size: 13px;
    letter-spacing: 0
}

.ham__main .ham__menu ul.menu__main li a.nav__new {
    position: relative
}

.ham__main .ham__menu ul.menu__main li a.nav__new::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "NEW";
    padding: 0 .4em;
    background-color: var(--color_theme);
    color: var(--color_white);
    font-size: .625rem
}

.ham__main .ham__menu ul.menu__main li .nav__current {
    background-color: rgba(var(--color_white_rgb),.1)
}

.ham__main .ham__menu ul.menu__main li .icon__mail {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 20px;
    border-width: 1px;
    border-style: solid;
    border-color: var(--color_white)
}

.ham__main .ham__menu ul.menu__main li .icon__mail::before {
    content: "";
    display: block;
    width: 1.4em;
    height: 1.4em;
    margin-right: .5em;
    background-repeat: no-repeat;
    background-attachment: scroll;
    background-position: center center;
    background-size: contain;
    background-color: #fff;
    mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 23.02 17.38'%3E%3Cpath d='m21.9,1.12C21.22.43,20.25,0,19.2,0H3.82C2.77,0,1.81.43,1.12,1.12.43,1.81,0,2.77,0,3.82v9.73c0,1.05.43,2.01,1.12,2.7.69.69,1.65,1.12,2.7,1.12h15.38c1.05,0,2.01-.43,2.7-1.12.69-.69,1.12-1.65,1.12-2.7V3.82c0-1.05-.43-2.01-1.12-2.7Zm-.62,12.43c0,.58-.23,1.09-.61,1.48-.38.38-.9.61-1.48.61H3.82c-.58,0-1.09-.23-1.48-.61-.38-.38-.61-.9-.61-1.48V3.82c0-.58.23-1.09.61-1.48.38-.38.9-.61,1.48-.61h15.38c.58,0,1.09.23,1.48.61.38.38.61.9.61,1.48v9.73Zm-2.19-10.83l-6.82,6.86c-.2.2-.48.32-.76.32-.29,0-.56-.11-.76-.32h0S3.93,2.72,3.93,2.72l-.74.74,6.82,6.86h0c.4.4.94.63,1.5.63.56,0,1.1-.22,1.5-.62h0s6.81-6.86,6.81-6.86l-.74-.74Zm-3.96,8.29l4.44,3.79.68-.79-4.44-3.79-.68.79Zm-12.36,3l.68.79,4.44-3.79-.68-.79-4.44,3.79Z'/%3E%3C/svg%3E") no-repeat center center;
    -webkit-mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 23.02 17.38'%3E%3Cpath d='m21.9,1.12C21.22.43,20.25,0,19.2,0H3.82C2.77,0,1.81.43,1.12,1.12.43,1.81,0,2.77,0,3.82v9.73c0,1.05.43,2.01,1.12,2.7.69.69,1.65,1.12,2.7,1.12h15.38c1.05,0,2.01-.43,2.7-1.12.69-.69,1.12-1.65,1.12-2.7V3.82c0-1.05-.43-2.01-1.12-2.7Zm-.62,12.43c0,.58-.23,1.09-.61,1.48-.38.38-.9.61-1.48.61H3.82c-.58,0-1.09-.23-1.48-.61-.38-.38-.61-.9-.61-1.48V3.82c0-.58.23-1.09.61-1.48.38-.38.9-.61,1.48-.61h15.38c.58,0,1.09.23,1.48.61.38.38.61.9.61,1.48v9.73Zm-2.19-10.83l-6.82,6.86c-.2.2-.48.32-.76.32-.29,0-.56-.11-.76-.32h0S3.93,2.72,3.93,2.72l-.74.74,6.82,6.86h0c.4.4.94.63,1.5.63.56,0,1.1-.22,1.5-.62h0s6.81-6.86,6.81-6.86l-.74-.74Zm-3.96,8.29l4.44,3.79.68-.79-4.44-3.79-.68.79Zm-12.36,3l.68.79,4.44-3.79-.68-.79-4.44,3.79Z'/%3E%3C/svg%3E") no-repeat center center
}

.ham__main .ham__menu .menu__sub--brand span {
    opacity: .5
}

.ham__main .ham__menu .menu__sub--brand a,.ham__main .ham__menu .menu__sub--brand span {
    display: block;
    text-align: center;
    padding: 22px 20px 20px 20px;
    font-weight: 600;
    color: var(--color_black);
    letter-spacing: .1em;
    transition: all .5s ease
}

.ham__main .ham__menu .menu__sub--brand a.nav__new {
    position: relative
}

.ham__main .ham__menu .menu__sub--brand a.nav__new::before {
    position: absolute;
    top: 0;
    right: 0;
    content: "NEW";
    padding: 0 .4em;
    background-color: var(--color_theme);
    color: var(--color_white);
    font-size: .625rem
}

.ham__main .ham__menu .menu__sub--btns {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin-top: 4px;
    gap: 1px 1px;
    display: none
}

.ham__main .ham__menu .menu__sub--btns>* {
    width: calc((100% - 1px * 3)/ 4)
}

.ham__main .ham__menu .menu__sub--btns.col3 {
    gap: 1px 1px
}

.ham__main .ham__menu .menu__sub--btns.col3>* {
    width: calc((100% - 1px * 2)/ 3)
}

.ham__main .ham__menu .menu__sub--btns.col2 {
    gap: 1px 1px
}

.ham__main .ham__menu .menu__sub--btns.col2>* {
    width: calc((100% - 1px * 1)/ 2)
}

.ham__main .ham__menu .menu__sub--btns li a {
    display: flex;
    align-items: center;
    flex-direction: column;
    background-color: var(--color_theme);
    color: var(--color_white);
    padding: 1.2em 0 .8em 0;
    font-size: .875rem;
    font-size: clamp(.75rem,.705rem + .23vw,.875rem)
}

.ham__main .ham__menu .menu__sub--btns li a.nav__new {
    position: relative
}

.ham__main .ham__menu .menu__sub--btns li a.nav__new::after {
    position: absolute;
    top: 0;
    right: 0;
    content: "NEW";
    padding: 0 .4em;
    background-color: var(--color_theme-r);
    color: var(--color_white);
    font-size: .625rem
}

.ham__main .ham__menu .menu__sub--btns.col3 li a {
    flex-direction: row;
    justify-content: center
}

.ham__main .ham__menu .menu__sub--btns.col2 li a {
    flex-direction: row;
    justify-content: center
}

.ham__main .ham__menu .menu__sub--btns .menu__disable {
    opacity: .5;
    pointer-events: none
}

.ham__main .ham__menu .menu__sub--btns .icon__map::before,.ham__main .ham__menu .menu__sub--btns .icon__outline::before,.ham__main .ham__menu .menu__sub--btns .icon__request::before,.ham__main .ham__menu .menu__sub--btns .icon__tel::before,.ham__main .ham__menu .menu__sub--btns .icon__visit::before {
    content: "";
    display: block;
    width: 2.6em;
    height: 2.2em;
    margin-bottom: .3em
}

.ham__main .ham__menu .menu__sub--btns.col3 .icon__map::before,.ham__main .ham__menu .menu__sub--btns.col3 .icon__outline::before,.ham__main .ham__menu .menu__sub--btns.col3 .icon__request::before,.ham__main .ham__menu .menu__sub--btns.col3 .icon__tel::before,.ham__main .ham__menu .menu__sub--btns.col3 .icon__visit::before {
    width: 2em;
    height: 1.8em;
    margin-bottom: 0;
    margin-right: .5em
}

.ham__main .ham__menu .menu__sub--btns.col2 .icon__map::before,.ham__main .ham__menu .menu__sub--btns.col2 .icon__outline::before,.ham__main .ham__menu .menu__sub--btns.col2 .icon__request::before,.ham__main .ham__menu .menu__sub--btns.col2 .icon__tel::before,.ham__main .ham__menu .menu__sub--btns.col2 .icon__visit::before {
    width: 2em;
    height: 1.8em;
    margin-bottom: 0;
    margin-right: .5em
}

.ham__main .ham__menu .menu__sub--btns .icon__tel::before {
    background-color: var(--color_white);
    mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 39.29 51.5'%3E%3Cpath d='m3.54,2.05C4.82,1.22,7.22.4,8.7.05c.68-.16,1.38.11,1.77.7l1.34,2.07,5.24,8.08c.39.6-1.11,2.61-2.26,3.46-1.01.74-2.6,1.16-3.6,1.36-.96.19-1.7,1-1.76,1.98-.04.61,0,1.36.02,2.31.03,2.7,2.1,6.65,4.11,9.96.02.03.04.06.06.1,2.2,3.18,4.96,6.68,7.42,7.81.86.4,1.53.75,2.1.96.92.35,1.95,0,2.52-.8.59-.83,1.62-2.12,2.71-2.73,1.24-.7,3.68-1.25,4.07-.65l5.24,8.08,1.34,2.07c.38.58.34,1.34-.08,1.89-.93,1.2-2.65,3.06-3.93,3.89-3.55,2.3-10.4,0-15.21-3.61-3.74-2.82-8.65-7.68-12.17-13.1C3.9,28.1,1.68,21.97.63,17.41-.71,11.55,0,4.35,3.54,2.05'/%3E%3C/svg%3E") no-repeat center center;
    -webkit-mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 39.29 51.5'%3E%3Cpath d='m3.54,2.05C4.82,1.22,7.22.4,8.7.05c.68-.16,1.38.11,1.77.7l1.34,2.07,5.24,8.08c.39.6-1.11,2.61-2.26,3.46-1.01.74-2.6,1.16-3.6,1.36-.96.19-1.7,1-1.76,1.98-.04.61,0,1.36.02,2.31.03,2.7,2.1,6.65,4.11,9.96.02.03.04.06.06.1,2.2,3.18,4.96,6.68,7.42,7.81.86.4,1.53.75,2.1.96.92.35,1.95,0,2.52-.8.59-.83,1.62-2.12,2.71-2.73,1.24-.7,3.68-1.25,4.07-.65l5.24,8.08,1.34,2.07c.38.58.34,1.34-.08,1.89-.93,1.2-2.65,3.06-3.93,3.89-3.55,2.3-10.4,0-15.21-3.61-3.74-2.82-8.65-7.68-12.17-13.1C3.9,28.1,1.68,21.97.63,17.41-.71,11.55,0,4.35,3.54,2.05'/%3E%3C/svg%3E") no-repeat center center
}

.ham__main .ham__menu .menu__sub--btns .icon__map::before {
    background-color: var(--color_white);
    mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 33.49 51.64'%3E%3Cpath d='m33.17,20.11s-.02-.04-.01-.07c.21-1.07.33-2.17.33-3.3C33.49,7.5,25.99,0,16.74,0S0,7.5,0,16.75c0,1.12.12,2.22.33,3.29,0,.02-.01.04,0,.05.01.03.02.06.03.09.32,1.53.9,2.94,1.61,4.29,4.47,10.63,11.82,20.08,14.19,26.76.2.55.97.55,1.17,0,2.51-6.99,10.7-18.15,14.52-27.37.49-1.03.88-2.11,1.15-3.24.05-.16.13-.34.17-.5m-16.43-9.81c3.56,0,6.44,2.88,6.44,6.44s-2.88,6.44-6.44,6.44-6.44-2.89-6.44-6.44,2.88-6.44,6.44-6.44'/%3E%3C/svg%3E") no-repeat center center;
    -webkit-mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 33.49 51.64'%3E%3Cpath d='m33.17,20.11s-.02-.04-.01-.07c.21-1.07.33-2.17.33-3.3C33.49,7.5,25.99,0,16.74,0S0,7.5,0,16.75c0,1.12.12,2.22.33,3.29,0,.02-.01.04,0,.05.01.03.02.06.03.09.32,1.53.9,2.94,1.61,4.29,4.47,10.63,11.82,20.08,14.19,26.76.2.55.97.55,1.17,0,2.51-6.99,10.7-18.15,14.52-27.37.49-1.03.88-2.11,1.15-3.24.05-.16.13-.34.17-.5m-16.43-9.81c3.56,0,6.44,2.88,6.44,6.44s-2.88,6.44-6.44,6.44-6.44-2.89-6.44-6.44,2.88-6.44,6.44-6.44'/%3E%3C/svg%3E") no-repeat center center
}

.ham__main .ham__menu .menu__sub--btns .icon__request::before {
    background-color: var(--color_white);
    mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 62.3 44.16'%3E%3Cpath d='m57.97,0H4.33C1.94,0,0,1.94,0,4.32v35.51c0,2.39,1.94,4.32,4.32,4.32h53.65c2.39,0,4.32-1.94,4.32-4.32V4.32c0-2.39-1.94-4.32-4.32-4.32m.27,39.54l-.2.23c-.33.4-.92.45-1.32.12l-18-14.69c-.37-.3-.9-.28-1.25.05l-2.4,2.28c-2.22,2.04-5.64,2.04-7.86,0l-2.4-2.28c-.34-.33-.88-.35-1.25-.05l-18,14.69c-.4.33-.98.27-1.32-.12l-.2-.23c-.33-.39-.29-.96.09-1.31l16.76-15.31c.41-.37.41-1.01.01-1.39L3.97,5.62c-.35-.33-.4-.87-.11-1.26.32-.42.91-.5,1.33-.18l25.39,19.24c.34.26.8.26,1.14,0L57.11,4.18c.42-.32,1.01-.23,1.33.18.29.39.25.93-.11,1.26l-16.94,15.92c-.4.38-.4,1.02.01,1.39l16.76,15.31c.37.34.41.92.09,1.31'/%3E%3C/svg%3E") no-repeat center center;
    -webkit-mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 62.3 44.16'%3E%3Cpath d='m57.97,0H4.33C1.94,0,0,1.94,0,4.32v35.51c0,2.39,1.94,4.32,4.32,4.32h53.65c2.39,0,4.32-1.94,4.32-4.32V4.32c0-2.39-1.94-4.32-4.32-4.32m.27,39.54l-.2.23c-.33.4-.92.45-1.32.12l-18-14.69c-.37-.3-.9-.28-1.25.05l-2.4,2.28c-2.22,2.04-5.64,2.04-7.86,0l-2.4-2.28c-.34-.33-.88-.35-1.25-.05l-18,14.69c-.4.33-.98.27-1.32-.12l-.2-.23c-.33-.39-.29-.96.09-1.31l16.76-15.31c.41-.37.41-1.01.01-1.39L3.97,5.62c-.35-.33-.4-.87-.11-1.26.32-.42.91-.5,1.33-.18l25.39,19.24c.34.26.8.26,1.14,0L57.11,4.18c.42-.32,1.01-.23,1.33.18.29.39.25.93-.11,1.26l-16.94,15.92c-.4.38-.4,1.02.01,1.39l16.76,15.31c.37.34.41.92.09,1.31'/%3E%3C/svg%3E") no-repeat center center
}

.ham__main .ham__menu .menu__sub--btns .icon__visit::before {
    background-color: var(--color_white);
    mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50.81 51.66'%3E%3Cpath d='M13.68,6.52v-3.99c0-1.4,1.14-2.53,2.54-2.53s2.53,1.14,2.53,2.53v3.99c0,1.4-1.14,2.54-2.53,2.54s-2.54-1.13-2.54-2.54ZM34.91,9.06c1.4,0,2.53-1.13,2.53-2.54v-3.99c0-1.4-1.14-2.53-2.53-2.53s-2.54,1.14-2.54,2.53v3.99c0,1.4,1.14,2.54,2.54,2.54ZM50.81,10.73v33.8c0,3.93-3.19,7.12-7.12,7.12H7.12C3.19,51.66,0,48.47,0,44.54V10.73C0,6.8,3.19,3.61,7.12,3.61h4.33v2.91c0,2.63,2.14,4.76,4.76,4.76s4.76-2.14,4.76-4.76v-2.91h9.17v2.91c0,2.63,2.14,4.76,4.76,4.76s4.76-2.14,4.76-4.76v-2.91h4.02c3.93,0,7.12,3.19,7.12,7.12ZM47.35,15.23H3.46v29.3c0,2.02,1.64,3.66,3.66,3.66h36.57c2.02,0,3.66-1.64,3.66-3.66V15.23ZM17.23,45.01h6.42v-6.42h-6.42v6.42ZM17.23,35.06h6.42v-6.42h-6.42v6.42ZM7.29,45.01h6.41v-6.42h-6.41v6.42ZM7.29,35.06h6.41v-6.42h-6.41v6.42ZM37.11,25.12h6.41v-6.41h-6.41v6.41ZM27.17,25.12h6.42v-6.41h-6.42v6.41ZM34.89,29.58l-1.91-1.48-3.47,4.47-2.06-1.65-1.51,1.89,3.98,3.18,4.98-6.4ZM37.11,35.06h6.41v-6.42h-6.41v6.42ZM27.17,45.01h6.42v-6.42h-6.42v6.42ZM17.23,25.12h6.42v-6.41h-6.42v6.41Z'/%3E%3C/svg%3E") no-repeat center center;
    -webkit-mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50.81 51.66'%3E%3Cpath d='M13.68,6.52v-3.99c0-1.4,1.14-2.53,2.54-2.53s2.53,1.14,2.53,2.53v3.99c0,1.4-1.14,2.54-2.53,2.54s-2.54-1.13-2.54-2.54ZM34.91,9.06c1.4,0,2.53-1.13,2.53-2.54v-3.99c0-1.4-1.14-2.53-2.53-2.53s-2.54,1.14-2.54,2.53v3.99c0,1.4,1.14,2.54,2.54,2.54ZM50.81,10.73v33.8c0,3.93-3.19,7.12-7.12,7.12H7.12C3.19,51.66,0,48.47,0,44.54V10.73C0,6.8,3.19,3.61,7.12,3.61h4.33v2.91c0,2.63,2.14,4.76,4.76,4.76s4.76-2.14,4.76-4.76v-2.91h9.17v2.91c0,2.63,2.14,4.76,4.76,4.76s4.76-2.14,4.76-4.76v-2.91h4.02c3.93,0,7.12,3.19,7.12,7.12ZM47.35,15.23H3.46v29.3c0,2.02,1.64,3.66,3.66,3.66h36.57c2.02,0,3.66-1.64,3.66-3.66V15.23ZM17.23,45.01h6.42v-6.42h-6.42v6.42ZM17.23,35.06h6.42v-6.42h-6.42v6.42ZM7.29,45.01h6.41v-6.42h-6.41v6.42ZM7.29,35.06h6.41v-6.42h-6.41v6.42ZM37.11,25.12h6.41v-6.41h-6.41v6.41ZM27.17,25.12h6.42v-6.41h-6.42v6.41ZM34.89,29.58l-1.91-1.48-3.47,4.47-2.06-1.65-1.51,1.89,3.98,3.18,4.98-6.4ZM37.11,35.06h6.41v-6.42h-6.41v6.42ZM27.17,45.01h6.42v-6.42h-6.42v6.42ZM17.23,25.12h6.42v-6.41h-6.42v6.41Z'/%3E%3C/svg%3E") no-repeat center center
}

.ham__main .ham__menu .menu__sub--btns .icon__outline::before {
    background-color: var(--color_white);
    mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 42.12 51.64'%3E%3Cpath d='m10.06,10.06H1.69L10.06,1.69v8.37ZM42.12,0v51.64H0V11.46h10.76c.39,0,.7-.31.7-.7V0h0s30.66,0,30.66,0Zm-7.58,39.43H7.58v1.8h26.97v-1.8Zm0-7.09H7.58v1.8h26.97v-1.8Zm0-7.09H7.58v1.8h26.97v-1.8Zm0-7.09H7.58v1.8h26.97v-1.8Zm0-7.13h-16.9v1.8h16.9v-1.8Z'/%3E%3C/svg%3E") no-repeat center center;
    -webkit-mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 42.12 51.64'%3E%3Cpath d='m10.06,10.06H1.69L10.06,1.69v8.37ZM42.12,0v51.64H0V11.46h10.76c.39,0,.7-.31.7-.7V0h0s30.66,0,30.66,0Zm-7.58,39.43H7.58v1.8h26.97v-1.8Zm0-7.09H7.58v1.8h26.97v-1.8Zm0-7.09H7.58v1.8h26.97v-1.8Zm0-7.09H7.58v1.8h26.97v-1.8Zm0-7.13h-16.9v1.8h16.9v-1.8Z'/%3E%3C/svg%3E") no-repeat center center
}

.ham__btn {
    position: relative;
    z-index: 1002;
    display: inline-block;
    vertical-align: middle;
    transition: all .5s ease;
    cursor: pointer
}

@media screen and (min-width: 768px) {
    .ham__btn {
        display:none
    }
}

.ham__btn .btn__inner {
    position: relative;
    margin: 0;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    width: 56px
}

.ham__btn .btn__inner .btn__icon {
    width: 56px;
    height: 17px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: column;
    flex-wrap: wrap
}

.ham__btn .btn__inner .btn__icon span {
    display: block;
    box-sizing: border-box;
    width: 100%;
    height: 1px;
    background-color: var(--color_theme);
    transition: .5s
}

.is__active .ham__btn .btn__inner .btn__icon span:nth-child(n) {
    width: 56px
}

.is__active .ham__btn .btn__inner .btn__icon span:nth-of-type(1) {
    transform: translateY(19.5px) rotate(-30deg);
    transform-origin: 10%
}

.is__active .ham__btn .btn__inner .btn__icon span:nth-of-type(2) {
    opacity: 0
}

.is__active .ham__btn .btn__inner .btn__icon span:nth-of-type(3) {
    transform: translateY(-19.5px) rotate(30deg);
    transform-origin: 10%
}

.ham__btn .btn__inner .btn__text {
    text-align: center;
    margin-top: .2em;
    font-weight: 700;
    color: var(--color_theme);
    font-family: var(--font_family-mincho);
    font-size: 16px;
    font-size: clamp(14px,13.273px + .23vw,16px)
}

.top__hero {
    position: relative
}

.top__hero .replay_bt {
    position: absolute;
    z-index: 3;
    top: 20px;
    right: 20px;
    background: #333;
    color: #fff;
    padding: 5px 15px;
    border-radius: 5px;
    cursor: pointer;
    transition: .5s;
    display: none;
    transition: .5s
}

.top__hero.finished .replay_bt {
    display: block
}

.top__hero.finished .replay_bt:hover {
    opacity: .7
}

@media screen and (max-width: 768px) {
    .top__hero .replay_bt {
        top:15px;
        right: auto;
        left: 5px;
        padding: 5px 10px;
        border-radius: 5px;
        cursor: pointer;
        transition: .5s;
        display: none;
        font-size: 13px
    }
}

.top__hero video {
    width: 100%;
    height: auto;
    display: inline-block;
    position: relative
}

.top__hero .top__hero--inner1 {
    resize: both;
    width: 100%;
    height: 100%;
    background-color: var(--color_theme);
    overflow: hidden
}

.top__hero .top__hero--inner1 video {
    object-fit: contain;
    height: 100%;
    width: 100%;
    display: inline-block
}

.top__hero .top__hero--inner2 {
    resize: both;
    width: 100%;
    height: 100%;
    background-color: var(--color_theme);
    overflow: hidden
}

.top__hero .top__hero--inner2 video {
    object-fit: cover;
    height: 100%;
    width: 100%;
    display: inline-block
}

.top__read {
    display: block;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--color_black);
    padding-top: 40px;
    padding-top: clamp(12px,1.818px + 3.18vw,40px);
    padding-bottom: 40px;
    padding-bottom: clamp(10px,-.909px + 3.41vw,40px)
}

.top__read p {
    font-family: var(--font_family-NotoSerifJP);
    font-weight: 700;
    color: var(--color_white);
    letter-spacing: .2em;
    font-size: 1.125rem;
    font-size: clamp(.625rem,.443rem + .91vw,1.125rem)
}

.top__read img {
    width: 90%
}

@media screen and (min-width: 768px) {
    .top__read img {
        width:100%
    }
}

.top__strong {
    background-color: var(--color_theme-r);
    font-family: var(--font_family-mincho);
    font-size: 16px;
    font-size: clamp(14px,13.273px + .23vw,16px);
    padding-top: 36px;
    padding-top: clamp(24px,19.636px + 1.36vw,36px);
    padding-bottom: 0;
    padding-bottom: 0;
    margin-bottom: 0
}

.top__strong .top_price {
    width: 100%;
    padding: 40px 0 50px;
    margin: 0 auto;
    background-image: url(../images/top/price_bg_pc.jpg);
    background-repeat: no-repeat;
    background-size: cover
}

.top__strong .top_price img {
    width: 90%;
    max-width: 1000px;
    margin: 0 auto 40px
}

.top__strong .top_price .c_btn__big a {
    padding: 15px 30px;
    width: 80%;
    max-width: 460px;
    font-weight: 400;
    background-color: #85051d;
    box-shadow: none;
    border: none;
    transition: all .5s ease;
    position: relative
}

.top__strong .top_price .c_btn__big a:hover {
    opacity: .8
}

.top__strong .top_price .c_btn__big a::before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 15px solid #fff;
    border-right: 0;
    position: absolute;
    top: 43%;
    right: 10%;
    transition: all .5s ease
}

.top__strong .top_price .c_btn__big a:hover::before {
    right: 8%
}

@media screen and (max-width: 768px) {
    .top__strong .top_price {
        width:100%;
        background-image: url(../images/top/price_bg_sp.jpg);
        margin: 0 auto
    }
}

.top_cp_wrapp {
    width: 90%;
    max-width: 900px;
    margin: 0 auto;
}


.top__cando--inner .c_btn__big a {
    padding: 15px 30px;
    width: 80%;
    max-width: 460px;
    font-weight: 400;
    background-color: #85051d;
    box-shadow: none;
    border: none;
    transition: all .5s ease;
    position: relative
}

.top__cando--inner .c_btn__big a:hover {
    opacity: .8
}

.top__cando--inner .c_btn__big a::before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 15px solid #fff;
    border-right: 0;
    position: absolute;
    top: 43%;
    right: 10%;
    transition: all .5s ease
}

.top__cando--inner .c_btn__big a:hover::before {
    right: 8%
}

.top__strong ul {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    flex-wrap: wrap;
    gap: 20px 20px;
    margin-bottom: 40px
}

.top__strong ul>* {
    width: calc((100% - 20px * 0)/ 1)
}

@media screen and (min-width: 768px) {
    .top__strong ul {
        flex-direction:row;
        gap: 20px 20px
    }

    .top__strong ul>* {
        width: calc((100% - 30px* 2)/ 4)
    }
}

.top__strong ul li {
    background-color: var(--color_white);
    box-shadow: 0 0 0 4px var(--color_white) inset,0 0 0 5px var(--color_theme-r) inset;
    text-align: center;
    padding-top: 24px;
    padding-top: clamp(16px,13.091px + .91vw,24px);
    padding-bottom: 24px;
    padding-bottom: clamp(16px,13.091px + .91vw,24px);
    font-size: min(1.5vw,16px)
}

.top__strong ul li span {
    display: block;
    font-weight: 700;
    color: var(--color_theme-r);
    font-size: 21px;
    font-size: min(1.5vw,21px);
    font-family: var(--font_family-NotoSerifJP);
    text-align: center
}

@media screen and (max-width: 767px) {
    .top__strong ul li {
        font-size:16px;
        font-size: clamp(14px,13.273px +.23vw,16px)
    }

    .top__strong ul li span {
        font-size: 21px;
        font-size: clamp(21px,22.545px +.45vw,21px)
    }
}

.top__action {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--color_theme-r);
    padding-top: 32px;
    padding-top: clamp(14px,7.455px + 2.05vw,32px);
    padding-bottom: 32px;
    padding-bottom: clamp(14px,7.455px + 2.05vw,32px)
}

.top__action p {
    font-family: var(--font_family-NotoSerifJP);
    font-weight: 700;
    color: var(--color_white);
    text-align: center;
    letter-spacing: .2em;
    font-size: 1.625rem;
    font-size: clamp(.625rem,.261rem + 1.82vw,1.625rem)
}

.top__action p span {
    display: inline-block;
    font-size: 2rem;
    font-size: clamp(1.125rem,.807rem + 1.59vw,2rem)
}

.top__info {
    font-family: var(--font_family-NotoSerifJP);
    padding-top: 60px;
    padding-top: clamp(20px,5.455px + 4.55vw,60px)
}

.top__info .top__info--header h2 {
    font-weight: 500;
    font-size: 1rem;
    font-size: clamp(.875rem,.83rem + .23vw,1rem)
}

.top__info .top__info--content h3 {
    font-weight: 500;
    font-size: 1.5rem;
    font-size: clamp(1rem,.818rem + .91vw,1.5rem)
}

.top__info .top__info--content .text--request {
    margin-top: .2em;
    font-weight: 500;
    letter-spacing: .5em;
    font-size: 3rem;
    font-size: clamp(1.5rem,.955rem + 2.73vw,3rem)
}

.top__info .top__info--content .text--visit {
    font-size: 1.625rem;
    font-size: clamp(1rem,.773rem + 1.14vw,1.625rem)
}

.top__info .top__info--content .text--visit a {
    text-decoration: underline
}

.top__info .top__info--content .text--tokuten {
    color: var(--color_theme-r);
    font-size: 1.625rem;
    font-size: clamp(.8125rem,.517rem + 1.48vw,1.625rem)
}

.top__info .top__info--content p {
    margin-top: .5em;
    font-weight: 500;
    font-size: 1.625rem;
    font-size: clamp(1rem,.773rem + 1.14vw,1.625rem)
}

.top__info .top__info--content p span {
    display: inline-block;
    padding: .2em .1em
}

.top__info .top__info--content p span>span {
    padding: 0
}

.top__info .top__info--content p a {
    color: var(--color_theme-r);
    text-decoration: underline
}

.top__info .top__info--content ul li {
    padding-left: 1em;
    text-indent: -1em;
    font-size: 1.5rem;
    font-size: clamp(.75rem,.477rem + 1.36vw,1.5rem)
}

.top__info .top__info--content ul li::before {
    content: "●";
    color: var(--color_theme-r)
}

.top__info .top__info--content .bg--red {
    background-color: #e60012;
    color: #fff
}

.top__info .top__info--content .color--y {
    color: #ff0
}

.top__info--second {
    padding-top: 80px;
    padding-top: clamp(40px,25.455px + 4.55vw,80px);
    padding-bottom: 40px;
    padding-bottom: clamp(20px,12.727px + 2.27vw,40px)
}

.top__info--second h2 {
    font-family: var(--font_family-mincho);
    font-weight: 700;
    color: var(--color_theme);
    text-align: center;
    font-size: 40px;
    font-size: clamp(18px,10px + 2.5vw,40px)
}

.top_cp_bunner {
    width: 96%;
    max-width: 856px;
    margin: 0 auto 20px;
    background: #fff
}

.top__strong .top_price .top_cp_bunner img {
    width: 100%;
    height: auto;
    margin: 0;
    transition: all .5s ease
}

.top_cp_bunner:hover img {
    opacity: .8
}

.top__kosodate_bunner {
    width: 100%;
    max-width: 900px;
    margin: 0 auto 60px
}

.top__facade_image {
    width: 100%;
    margin: 0 auto;
    position: relative
}

.top__facade_image .cap {
    font-family: var(--font_family-NotoSerifJP);
    font-size: 12px;
    position: absolute;
    color: #000;
    right: 7%;
    bottom: 15px
}

@media screen and (max-width: 768px) {
    .top__facade_image .cap {
        font-size:12px;
        position: absolute;
        color: #fff;
        right: 4%;
        bottom: 5px
    }
}

.top_facade img {
    width: 100%
}

.top__cando {
    background-color: var(--color_theme-light)
}

@media screen and (min-width: 480px) {
    .top__cando {
        background-color:var(--color_theme-light)
    }
}

.top__cando .top__cando--inner {
    padding-top: 60px;
    padding-top: clamp(40px,32.727px + 2.27vw,60px);
    padding-bottom: 60px;
    padding-bottom: clamp(40px,32.727px + 2.27vw,60px)
}

@media screen and (min-width: 480px) {
    .top__cando .top__cando--inner {
        background-color:var(--color_theme-light)
    }
}

.top__cando .top__cando--header h2 {
    font-family: var(--font_family-mincho);
    font-weight: 700;
    text-align: center;
    font-size: 40px;
    font-size: clamp(14px,4.545px + 2.95vw,40px)
}

.top__cando .top__cando--header p {
    margin-top: 1em;
    font-family: var(--font_family-mincho);
    font-weight: 500;
    line-height: 2;
    text-align: center;
    font-size: 18px;
    font-size: clamp(12px,9.818px + .68vw,18px)
}

.top__cando .top__cando--content {
    padding: 0 5%
}

.top__cando .top__cando--content .cando__content--list {
    display: flex;
    justify-content: center;
    flex-direction: column;
    flex-wrap: wrap;
    padding-top: 40px;
    padding-top: clamp(20px,12.727px + 2.27vw,40px);
    gap: 10px 10px;
    margin-bottom: 50px
}

.top__cando .top__cando--content .cando__content--list>* {
    width: calc((100% - 10px * 0)/ 1)
}

@media screen and (min-width: 768px) {
    .top__cando .top__cando--content .cando__content--list {
        flex-direction:row;
        gap: 10px 10px
    }

    .top__cando .top__cando--content .cando__content--list>* {
        width: calc((100% - 10px * 2)/ 3)
    }
}

.top__cando .top__cando--content .cando__content--list p {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    flex-wrap: wrap;
    overflow: hidden;
    border-radius: 10px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    color: var(--color_white);
    text-align: center;
    padding-top: 60px;
    padding-top: clamp(40px,32.727px + 2.27vw,60px);
    padding-bottom: 60px;
    padding-bottom: clamp(40px,32.727px + 2.27vw,60px)
}

.top__cando .top__cando--content .cando__content--list p::after {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0,0,0,.7)
}

.top__cando .top__cando--content .cando__content--list p::before {
    content: "image photo";
    position: absolute;
    z-index: 1;
    right: .4em;
    bottom: .2em;
    font-family: var(--font_family-mincho);
    font-size: 14px;
    font-size: clamp(12px,11.273px + .23vw,14px)
}

.top__cando .top__cando--content .cando__content--list p:nth-child(1) {
    background-image: url(../images/top/cando1.png)
}

.top__cando .top__cando--content .cando__content--list p:nth-child(2) {
    background-image: url(../images/top/cando2.png)
}

.top__cando .top__cando--content .cando__content--list p:nth-child(3) {
    background-image: url(../images/top/cando3.png)
}

.top__cando .top__cando--content .cando__content--list .content__number img {
    height: 20px;
    height: clamp(19px,18.636px + .11vw,20px)
}

.top__cando .top__cando--content .cando__content--list .content__text {
    display: block;
    margin-top: 1em;
    font-family: var(--font_family-mincho);
    font-weight: 700;
    font-size: 20px;
    font-size: clamp(16px,14.545px + .45vw,20px)
}

.top__bigbutton {
    padding-top: 60px;
    padding-top: clamp(40px,32.727px + 2.27vw,60px);
    padding-bottom: 60px;
    padding-bottom: clamp(40px,32.727px + 2.27vw,60px)
}

.top__concept {
    padding-top: 64px;
    padding-top: clamp(32px,20.364px + 3.64vw,64px);
    padding-bottom: 64px;
    padding-bottom: clamp(32px,20.364px + 3.64vw,64px)
}

.top__concept .btn__concept--movie {
    padding-top: 64px;
    padding-top: clamp(32px,20.364px + 3.64vw,64px)
}

.top__concept .btn__concept--movie a {
    display: flex;
    align-items: baseline;
    justify-content: center;
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
    max-width: 360px;
    margin: 0 auto;
    padding: 1em;
    background-color: var(--color_theme-r);
    font-family: var(--font_family-NotoSerifJP);
    line-height: 1;
    color: var(--color_white);
    transition: all .5s ease
}

.top__concept .btn__concept--movie a:hover {
    opacity: .5
}

.top__concept .btn__concept--movie a::after {
    content: "";
    display: block;
    width: .9em;
    height: .9em;
    background-color: var(--color_white);
    mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10.62 30.56'%3E%3Cpath d='m1.1,30.56l-1.1-.63,9.14-14.65L0,.63l1.1-.63,9.52,15.28L1.1,30.56Z'/%3E%3C/svg%3E") no-repeat center center;
    -webkit-mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10.62 30.56'%3E%3Cpath d='m1.1,30.56l-1.1-.63,9.14-14.65L0,.63l1.1-.63,9.52,15.28L1.1,30.56Z'/%3E%3C/svg%3E") no-repeat center center
}

.top__concept .concept--movie {
    padding-top: 64px;
    padding-top: clamp(32px,20.364px + 3.64vw,64px)
}

.top__content {
    position: relative;
    background-color: var(--color_theme-light);
    background-image: url(../images/top/section-bg1.jpg);
    padding-top: 100px;
    padding-top: clamp(40px,18.182px + 6.82vw,100px);
    padding-bottom: 100px;
    padding-bottom: clamp(40px,18.182px + 6.82vw,100px);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover
}

.top__content.top__content--plan {
    background-image: url(../images/top/section-bg2.jpg)
}

.top__content.top__content--design {
    background-image: url(../images/top/section-bg3.jpg)
}

.top__content .tab__content {
    display: none;
    margin-top: 64px;
    margin-top: clamp(32px,20.364px + 3.64vw,64px);
    padding-top: 64px;
    padding-top: clamp(32px,20.364px + 3.64vw,64px);
    padding-bottom: 64px;
    padding-bottom: clamp(32px,20.364px + 3.64vw,64px);
    padding-right: 64px;
    padding-right: clamp(16px,-1.455px + 5.45vw,64px);
    padding-left: 64px;
    padding-left: clamp(16px,-1.455px + 5.45vw,64px);
    background-color: var(--color_white)
}

.top__content .tab__content.top_location {
    display: none;
    margin-top: 64px;
    margin-top: clamp(32px,20.364px + 3.64vw,64px);
    padding-top: 64px;
    padding: 0;
    background-color: var(--color_white)
}

.top__content .tab__content .c_btn__tab_inner {
    padding-top: 64px;
    padding-top: clamp(32px,20.364px + 3.64vw,64px);
    padding-bottom: 64px;
    padding-bottom: clamp(32px,20.364px + 3.64vw,64px);
    padding-right: 64px;
    padding-right: clamp(16px,-1.455px + 5.45vw,64px);
    padding-left: 64px;
    padding-left: clamp(16px,-1.455px + 5.45vw,64px)
}

.top__content .tab__content .content__list--header h3 {
    text-align: center;
    font-family: var(--font_family-mincho);
    font-weight: 700;
    color: var(--color_theme);
    font-size: 1.75rem;
    font-size: clamp(.875rem,.557rem + 1.59vw,1.75rem)
}

.top__content .tab__content .content__list--header p {
    text-align: center;
    font-family: var(--font_family-mincho);
    font-weight: 700;
    margin-top: 1em;
    line-height: 2;
    font-size: .875rem;
    font-size: clamp(.75rem,.705rem + .23vw,.875rem)
}

.top__content .tab__content .content__list--item figcaption {
    margin-top: .5em;
    font-family: var(--font_family-mincho);
    font-weight: 700;
    font-size: 14px;
    font-size: clamp(10px,8.545px + .45vw,14px)
}

.top__content .tab__content .content__list--item figcaption.aline--right {
    text-align: right
}

.top__content .tab__content .top_location_map {
    width: 100%;
    margin: 0 auto 0;
    padding: 10px
}

.top__content .tab__content .top_location_map img {
    max-width: inherit;
    width: 100%
}

.top__content .tab__content .content__list--primary {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    gap: 10px 10px;
    padding-top: 40px;
    padding-top: clamp(20px,12.727px + 2.27vw,40px)
}

.top__content .tab__content .content__list--primary>* {
    width: calc((100% - 10px * 0)/ 1)
}

@media screen and (min-width: 768px) {
    .top__content .tab__content .content__list--primary {
        flex-direction:row;
        gap: 20px 20px
    }

    .top__content .tab__content .content__list--primary>:nth-child(2n-1) {
        width: calc((100% - 20px * 1) * 5.15 / 10)
    }

    .top__content .tab__content .content__list--primary>:nth-child(2n) {
        width: calc((100% - 20px * 1) * 4.85 / 10)
    }
}

.top__content.top__content--design .tab__content .content__list--primary {
    flex-direction: column;
    gap: 20px 20px
}

.top__content.top__content--design .tab__content .content__list--primary>* {
    width: calc((100% - 20px * 0)/ 1)
}

.top__content .tab__content .content__list--secondary {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 10px 10px
}

.top__content .tab__content .content__list--secondary>* {
    width: calc((100% - 10px * 1)/ 2)
}

@media screen and (min-width: 768px) {
    .top__content .tab__content .content__list--secondary {
        gap:20px 20px
    }

    .top__content .tab__content .content__list--secondary>* {
        width: calc((100% - 20px * 1)/ 2)
    }
}

.top__content.top__content--design .tab__content .content__list--secondary {
    gap: 10px 10px
}

.top__content.top__content--design .tab__content .content__list--secondary>* {
    width: calc((100% - 10px * 1)/ 2)
}

@media screen and (min-width: 768px) {
    .top__content.top__content--design .tab__content .content__list--secondary {
        gap:20px 20px
    }

    .top__content.top__content--design .tab__content .content__list--secondary>* {
        width: calc((100% - 20px * 3)/ 4)
    }
}

.top__design {
    padding-top: 64px;
    padding-top: clamp(32px,20.364px + 3.64vw,64px);
    padding-bottom: 64px;
    padding-bottom: clamp(32px,20.364px + 3.64vw,64px)
}

.top__design .top__design--content {
    font-family: var(--font_family-NotoSerifJP)
}

.top__design .top__design--content h3 {
    padding-bottom: .7em;
    font-weight: 700;
    color: var(--color_theme-r);
    font-size: 2.25rem;
    font-size: clamp(1.5rem,1.227rem + 1.36vw,2.25rem)
}

.top__design .top__design--content p {
    font-size: .875rem;
    font-size: clamp(.75rem,.705rem + .23vw,.875rem)
}

.top__design .top__design--shikichihaichi {
    padding-top: 32px;
    padding-top: clamp(20px,15.636px + 1.36vw,32px)
}

.top__plan {
    padding-top: 64px;
    padding-top: clamp(32px,20.364px + 3.64vw,64px);
    padding-bottom: 64px;
    padding-bottom: clamp(32px,20.364px + 3.64vw,64px)
}

.top__plan .top__design--plan-menu ul {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 10px 10px
}

.top__plan .top__design--plan-menu ul>* {
    width: calc((100% - 10px * 3)/ 4)
}

@media screen and (min-width: 480px) {
    .top__plan .top__design--plan-menu ul {
        gap:10px 10px
    }

    .top__plan .top__design--plan-menu ul>* {
        width: calc((100% - 10px * 3)/ 4)
    }
}

@media screen and (min-width: 768px) {
    .top__plan .top__design--plan-menu ul {
        gap:20px 20px
    }

    .top__plan .top__design--plan-menu ul>* {
        width: calc((100% - 20px * 3)/ 4)
    }
}

.top__plan .top__design--plan-menu ul li:nth-child(8n-7) {
    order: 1
}

.top__plan .top__design--plan-menu ul li:nth-child(8n-6) {
    order: 5
}

.top__plan .top__design--plan-menu ul li:nth-child(8n-5) {
    order: 2
}

.top__plan .top__design--plan-menu ul li:nth-child(8n-4) {
    order: 6
}

.top__plan .top__design--plan-menu ul li:nth-child(8n-3) {
    order: 3
}

.top__plan .top__design--plan-menu ul li:nth-child(8n-2) {
    order: 7
}

.top__plan .top__design--plan-menu ul li:nth-child(8n-1) {
    order: 4
}

.top__plan .top__design--plan-menu ul li:nth-child(8n) {
    order: 8
}

.top__plan .top__design--plan-menu ul li a {
    display: block;
    background-color: var(--color_theme-r)
}

.top__plan .top__design--plan-menu ul li .menu__disable {
    background-color: var(--color_gray-light);
    pointer-events: none
}

.top__cm {
    padding-top: 64px;
    padding-top: clamp(32px,20.364px + 3.64vw,64px);
    padding-bottom: 64px;
    padding-bottom: clamp(32px,20.364px + 3.64vw,64px)
}

.top__brand {
    background-color: #fff;
    padding-top: 64px;
    padding-top: clamp(32px,20.364px + 3.64vw,64px);
    padding-bottom: 64px;
    padding-bottom: clamp(32px,20.364px + 3.64vw,64px);
    padding-left: 30px;
    padding-right: 30px;
    margin-bottom: 50px
}

.top__brand .top__brand--content {
    font-family: var(--font_family-NotoSerifJP)
}

.top__brand .top__brand--content .top__brand--content--section+.top__brand--content--section {
    margin-top: 48px;
    margin-top: clamp(24px,15.273px + 2.73vw,48px)
}

.top__brand .top__brand--content h3 {
    padding-bottom: .5em;
    font-weight: 700;
    font-size: 1.875rem;
    font-size: clamp(1.5rem,1.364rem + .68vw,1.875rem)
}

.top__brand .top__brand--content p {
    font-size: .875rem;
    font-size: clamp(.75rem,.705rem + .23vw,.875rem)
}

.top__brand .top__brand--content .top__brand--content--img {
    display: flex;
    justify-content: space-between;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 20px 20px
}

.top__brand .top__brand--content .top__brand--content--img>* {
    width: calc((100% - 20px * 0)/ 1)
}

@media screen and (min-width: 768px) {
    .top__brand .top__brand--content .top__brand--content--img {
        gap:20px 20px
    }

    .top__brand .top__brand--content .top__brand--content--img>:nth-child(2n-1) {
        width: calc((100% - 20px * 1) * 7.4 / 10)
    }

    .top__brand .top__brand--content .top__brand--content--img>:nth-child(2n) {
        width: calc((100% - 20px * 1) * 2.6 / 10)
    }
}

.top__brand .top__brand--content .top__brand--content--img img {
    width: 100%;
    max-width: 320px;
    margin: 0 auto
}

.top__hensai {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid #333
}

.page__plan .content__plan {
    padding-top: 80px;
    padding-top: clamp(40px,25.455px + 4.55vw,80px)
}

.page__plan .content__plan .plan__header {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    gap: 10px 10px
}

.page__plan .content__plan .plan__header>* {
    width: calc((100% - 10px * 0)/ 1)
}

@media screen and (min-width: 768px) {
    .page__plan .content__plan .plan__header .plan__nav {
        order:1
    }
}

@media screen and (min-width: 768px) {
    .page__plan .content__plan .plan__header .plan__request {
        order:2
    }
}

.page__plan .content__plan .plan__nav.plan__index {
    max-width: 1200px;
    margin: 0 auto 40px;
    width: 100%;
}

.page__plan .content__plan .plan__nav h2 {
    padding: 10px 0;
    background-color: var(--color_gray-light);
    font-family: var(--font_family-mincho);
    font-weight: 700;
    color: var(--color_white);
    text-align: center;
    font-size: 1.5rem;
    font-size: clamp(1.25rem,1.159rem + .45vw,1.5rem)
}

.page__plan .content__plan .plan__nav nav+h2 {
    margin-top: 40px;
    margin-top: clamp(20px,12.727px + 2.27vw,40px)
}

.page__plan .content__plan .plan__nav ul {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin-top: 20px;
    margin-top: clamp(10px,6.364px + 1.14vw,20px);
    gap: 4px 4px
}

.page__plan .content__plan .plan__nav ul>* {
    width: calc((100% - 4px * 1)/ 2)
}

.page__plan .content__plan .plan__nav.plan__index ul {
    gap: 10px 10px;
        margin-bottom: 50px;
}

.page__plan .content__plan .plan__nav.plan__index ul>* {
    width: calc((100% - 10px * 3)/ 4)
}

@media screen and (min-width: 480px) {
    .page__plan .content__plan .plan__nav ul {
        gap:4px 4px
    }

    .page__plan .content__plan .plan__nav ul>* {
        width: calc((100% - 4px * 1)/ 2)
    }

    .page__plan .content__plan .plan__nav.plan__index ul {
        gap: 16px 16px
    }

    .page__plan .content__plan .plan__nav.plan__index ul>* {
        width: calc((100% - 16px * 3)/ 4)
    }
}

@media screen and (min-width: 768px) {
    
.page__plan .content__plan .plan__nav.plan__index {
    margin: 0 auto 80px;
    width: 94%;
}
    
    
    .page__plan .content__plan .plan__nav ul {
        gap:4px 4px
    }

    .page__plan .content__plan .plan__nav ul>* {
        width: calc((100% - 4px * 3)/ 4)
    }

    .page__plan .content__plan .plan__nav.plan__index ul {
        gap: 48px 18px
    }

    .page__plan .content__plan .plan__nav.plan__index ul>* {
        width: calc((100% - 18px * 3)/ 4)
    }
}

@media screen and (min-width: 768px) {
    .page__plan .content__plan .plan__nav ul li:nth-child(8n-7) {
        order:1
    }

    .page__plan .content__plan .plan__nav ul li:nth-child(8n-6) {
        order: 5
    }

    .page__plan .content__plan .plan__nav ul li:nth-child(8n-5) {
        order: 2
    }

    .page__plan .content__plan .plan__nav ul li:nth-child(8n-4) {
        order: 6
    }

    .page__plan .content__plan .plan__nav ul li:nth-child(8n-3) {
        order: 3
    }

    .page__plan .content__plan .plan__nav ul li:nth-child(8n-2) {
        order: 7
    }

    .page__plan .content__plan .plan__nav ul li:nth-child(8n-1) {
        order: 4
    }

    .page__plan .content__plan .plan__nav ul li:nth-child(8n) {
        order: 8
    }
}

.page__plan .content__plan .plan__nav.plan__index ul li:nth-child(8n-7) {
    order: 1
}

.page__plan .content__plan .plan__nav.plan__index ul li:nth-child(8n-6) {
    order: 2
}

.page__plan .content__plan .plan__nav.plan__index ul li:nth-child(8n-5) {
    order: 3
}

.page__plan .content__plan .plan__nav.plan__index ul li:nth-child(8n-4) {
    order: 4
}

.page__plan .content__plan .plan__nav.plan__index ul li:nth-child(8n-3) {
    order: 5
}

.page__plan .content__plan .plan__nav.plan__index ul li:nth-child(8n-2) {
    order: 6
}

.page__plan .content__plan .plan__nav.plan__index ul li:nth-child(8n-1) {
    order: 7
}

.page__plan .content__plan .plan__nav.plan__index ul li:nth-child(8n) {
    order: 8
}

.page__plan .content__plan .plan__nav ul li a {
    display: block;
    background-color: rgba(var(--color_theme-r_rgb),.5);
    transition: all .5s ease;
    position: relative;
}

.page__plan .content__plan .plan__nav ul li a .price {
    display: block;
    background: #ba9061;
    color: #fff;
    text-align: center;
    padding: 10px 0;
    font-size: min(2.8vw, 33px);
    font-family: "EB Garamond","Noto Serif JP", serif;
    font-feature-settings: "palt";
    font-variant-east-asian: proportional-width;
        line-height: 1.1;
}
.page__plan .content__plan .plan__nav ul li a .price small {
    font-size: 50%;
    display: block;
}
.page__plan .content__plan .plan__nav ul li a .price small.jp {
    font-size: 70%;
    display: inline;
}


.page__plan .content__plan .plan__nav ul li.wappen a .wp {
position: absolute;
    right: -15px;
    top: -40px;
    width: 26%;
}
.page__plan .content__plan .plan__nav ul li.solod {
position: relative;
}
.page__plan .content__plan .plan__nav ul li.solod::before {
content: "";
    width: 100%;
    height: 100%;
    background: #333;
    opacity: 0.9;
    position: absolute;
    top: 0;
    left: 0;
}
.page__plan .content__plan .plan__nav ul li.solod::after {
    content: "完売御礼";
    background-color: #c82923;
    color: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: 'Noto Serif JP', serif;
    font-weight: 500;
    font-size: min(3.5vw, 25px);
    letter-spacing: 0.15em;
    padding: 10px 10px 15px;
    width: 74%;
    text-align: center;
}




@media screen and (max-width: 767px) {
.page__plan .content__plan .plan__nav ul li.wappen a .wp {
    position: absolute;
        right: -15px;
        top: -16px;
        width: 21%;
}
}


.page__plan .content__plan .plan__nav.plan__index ul li a {
    background-color: #fff;
}

.page__plan .content__plan .plan__nav ul li a:hover {
    opacity: .7
}

.page__plan .content__plan .plan__nav ul li a.menu__current {
    background-color: var(--color_theme-r)
}

.page__plan .content__plan .plan__nav ul li a.menu__disable {
    background-color: var(--color_gray-light);
    pointer-events: none
}

.page__plan .content__plan .plan__nav.plan__index ul li a.menu__disable::before {
    border-color: var(--color_gray-light) var(--color_white) var(--color_white) var(--color_white)
}

.page__plan .content__plan .plan__request p {
    padding: 10px 0;
    background-color: #e60012;
    font-weight: 700;
    color: var(--color_white);
    text-align: center;
    font-size: 1.125rem;
    font-size: clamp(.8125rem,.699rem + .57vw,1.125rem)
}

.page__plan .content__plan .plan__request p span {
    color: #ff0
}

@media screen and (min-width: 768px) {
    .page__plan .content__plan .plan__request p br {
        display:none
    }
}

.page__plan .content__plan .plan__detail {
    display: flex;
    flex-direction: row;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 72px;
    margin-top: clamp(36px,22.909px + 4.09vw,72px);
    gap: 0 0
}

.page__plan .content__plan .plan__detail>* {
    width: calc((100% - 0px * 0)/ 1)
}

@media screen and (min-width: 768px) {
    .page__plan .content__plan .plan__detail {
        gap:5% 5%
    }

    .page__plan .content__plan .plan__detail>:nth-child(2n-1) {
        width: calc((100% - 5% * 1) * 2.8 / 10)
    }

    .page__plan .content__plan .plan__detail>:nth-child(2n) {
        width: calc((100% - 5% * 1) * 7.2 / 10)
    }
}

.page__plan .content__plan .plan__detail .plan__display--pc {
    display: none
}

@media screen and (min-width: 768px) {
    .page__plan .content__plan .plan__detail .plan__display--pc {
        display:block
    }
}

.page__plan .content__plan .plan__detail .plan__display--sp {
    display: block
}

@media screen and (min-width: 768px) {
    .page__plan .content__plan .plan__detail .plan__display--sp {
        display:none
    }
}

.page__plan .content__plan .plan__detail .plan__detail--l1 {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 10px
}

.page__plan .content__plan .plan__detail .plan__detail--l1>* {
    width: calc((100% - 10px * 1)/ 2);
    position: relative;
}

.page__plan .content__plan .plan__detail .wp {
    position: absolute;
    left: -30px;
    top: 0px;
    width: 35%;
}


@media screen and (min-width: 768px) {
    .page__plan .content__plan .plan__detail .plan__detail--l1 {
        gap:0 0
    }

    .page__plan .content__plan .plan__detail .plan__detail--l1>* {
        width: calc((100% - 0px * 0)/ 1)
    }
    
.page__plan .content__plan .plan__detail .wp {
    position: absolute;
    left: -50px;
    top: 0px;
    width: 35%;
}
    
}




.page__plan .content__plan .plan__detail .plan__name figure {
    width: 90%
}

@media screen and (min-width: 768px) {
    .page__plan .content__plan .plan__detail .plan__name figure {
        width:auto
    }
}

.page__plan .content__plan .plan__detail .plan__spec {
    margin-top: 0
}

@media screen and (min-width: 768px) {
    .page__plan .content__plan .plan__detail .plan__spec {
        margin-top:40px
    }
}

.page__plan .content__plan .plan__detail .plan__torikago {
    margin-top: 36px
}

@media screen and (min-width: 768px) {
    .page__plan .content__plan .plan__detail .plan__torikago {
        margin-top:320px
    }
}

.page__plan .content__plan .plan__detail .plan__feature {
    margin-top: 20px
}

@media screen and (min-width: 768px) {
    .page__plan .content__plan .plan__detail .plan__feature {
        margin-top:0;
        padding-left: 5%
    }
}

.page__plan .content__plan .plan__detail .plan__feature li {
    font-family: var(--font_family-mincho);
    font-weight: 700;
    font-size: 1.125rem;
    font-size: clamp(.625rem,.398rem + .97vw,1.125rem);
    text-indent: -1em;
    padding-left: 1em
}

.page__plan .content__plan .plan__detail .plan__feature li::before {
    content: "■";
    color: var(--color_theme-r)
}

.page__plan .content__plan .plan__detail .plan__feature li br {
    display: none
}

@media screen and (min-width: 768px) {
    .page__plan .content__plan .plan__detail .plan__feature li br {
        display:block
    }
}

.page__plan .content__plan .plan__detail .plan__madori {
    margin-top: 24px;
    margin-top: clamp(12px,7.636px + 1.36vw,24px)
}

.page__plan .content__plan .plan__detail .top__design--plan-menu {
    margin-top: 72px;
    margin-top: clamp(36px,22.909px + 4.09vw,72px)
}

.page__plan .content__plan .plan__detail .top__design--plan-menu ul {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 10px 10px
}

.page__plan .content__plan .plan__detail .top__design--plan-menu ul>* {
    width: calc((100% - 10px * 1)/ 2)
}

@media screen and (min-width: 480px) {
    .page__plan .content__plan .plan__detail .top__design--plan-menu ul {
        gap:10px 10px
    }

    .page__plan .content__plan .plan__detail .top__design--plan-menu ul>* {
        width: calc((100% - 10px * 3)/ 4)
    }
}

@media screen and (min-width: 768px) {
    .page__plan .content__plan .plan__detail .top__design--plan-menu ul {
        gap:48px 48px
    }

    .page__plan .content__plan .plan__detail .top__design--plan-menu ul>* {
        width: calc((100% - 48px * 3)/ 4)
    }
}

@media screen and (min-width: 480px) {
    .page__plan .content__plan .plan__detail .top__design--plan-menu ul li:nth-child(8n-7) {
        order:1
    }

    .page__plan .content__plan .plan__detail .top__design--plan-menu ul li:nth-child(8n-6) {
        order: 5
    }

    .page__plan .content__plan .plan__detail .top__design--plan-menu ul li:nth-child(8n-5) {
        order: 2
    }

    .page__plan .content__plan .plan__detail .top__design--plan-menu ul li:nth-child(8n-4) {
        order: 6
    }

    .page__plan .content__plan .plan__detail .top__design--plan-menu ul li:nth-child(8n-3) {
        order: 3
    }

    .page__plan .content__plan .plan__detail .top__design--plan-menu ul li:nth-child(8n-2) {
        order: 7
    }

    .page__plan .content__plan .plan__detail .top__design--plan-menu ul li:nth-child(8n-1) {
        order: 4
    }

    .page__plan .content__plan .plan__detail .top__design--plan-menu ul li:nth-child(8n) {
        order: 8
    }
}

.page__plan .content__plan .plan__detail .top__design--plan-menu ul li a {
    display: block;
    background-color: var(--color_theme-r)
}

.page__plan .content__plan .plan__detail .top__design--plan-menu ul li .menu__disable {
    background-color: var(--color_gray-light);
    pointer-events: none
}

.page__location .location__layer {
    background-color: var(--color_theme-light);
    padding-top: 64px;
    padding-top: clamp(32px,20.364px + 3.64vw,64px);
    padding-bottom: 64px;
    padding-bottom: clamp(32px,20.364px + 3.64vw,64px)
}

.page__location .location__header h2 {
    font-family: var(--font_family-NotoSerifJP);
    font-weight: 700;
    color: var(--color_theme-r);
    font-size: 2.25rem;
    font-size: clamp(1.5rem,1.227rem + 1.36vw,2.25rem);
    padding-bottom: .7em
}

.page__location .location__spot .location__spot--layout1 {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 10px 10px
}

.page__location .location__spot .location__spot--layout1>* {
    width: calc((100% - 10px * 0)/ 1)
}

@media screen and (min-width: 480px) {
    .page__location .location__spot .location__spot--layout1 {
        gap:10px 10px
    }

    .page__location .location__spot .location__spot--layout1>* {
        width: calc((100% - 10px * 1)/ 2)
    }
}

@media screen and (min-width: 768px) {
    .page__location .location__spot .location__spot--layout1 {
        gap:30px 30px
    }

    .page__location .location__spot .location__spot--layout1>* {
        width: calc((100% - 30px * 1)/ 2)
    }
}

.page__location .location__spot .location__spot--layout2 {
    display: flex;
    flex-direction: row;
    margin-top: 30px;
    flex-wrap: wrap;
    gap: 10px 20px
}

.page__location .location__spot .location__spot--layout2>* {
    width: calc((100% - 20px * 1)/ 2)
}

@media screen and (min-width: 480px) {
    .page__location .location__spot .location__spot--layout2 {
        gap:10px 10px
    }

    .page__location .location__spot .location__spot--layout2>* {
        width: calc((100% - 10px * 3)/ 4)
    }
}

@media screen and (min-width: 768px) {
    .page__location .location__spot .location__spot--layout2 {
        gap:30px 30px
    }

    .page__location .location__spot .location__spot--layout2>* {
        width: calc((100% - 30px * 3)/ 4)
    }
}

.page__location .location__spot .item__spot figure figcaption {
    margin-top: .5em;
    font-size: .875rem;
    font-size: clamp(.75rem,.705rem + .23vw,.875rem)
}

.page__location .location__spot .location__copy {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row;
    margin-bottom: 10px;
    flex-wrap: wrap;
    gap: 10px 10px
}

.page__location .location__spot .location__copy>:nth-child(2n-1) {
    width: calc((100% - 10px * 1) * 3 / 10)
}

.page__location .location__spot .location__copy>:nth-child(2n) {
    width: calc((100% - 10px * 1) * 7 / 10)
}

@media screen and (min-width: 768px) {
    .page__location .location__spot .location__copy {
        gap:30px 30px
    }

    .page__location .location__spot .location__copy>:nth-child(2n-1) {
        width: calc((100% - 30px * 1) * 3 / 10)
    }

    .page__location .location__spot .location__copy>:nth-child(2n) {
        width: calc((100% - 30px * 1) * 7 / 10)
    }
}

.page__location .location__spot .location__copy p {
    font-family: var(--font_family-NotoSerifJP);
    font-size: .625rem
}

@media screen and (min-width: 480px) {
    .page__location .location__spot .location__copy p {
        font-size:.625rem
    }
}

@media screen and (min-width: 768px) {
    .page__location .location__spot .location__copy p {
        font-size:1.0625rem
    }
}

.page__location .location__spot .location__spot--uni1 {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 20px 20px
}

.page__location .location__spot .location__spot--uni1>* {
    width: calc((100% - 20px * 1)/ 2)
}

@media screen and (min-width: 480px) {
    .page__location .location__spot .location__spot--uni1 {
        gap:0 0
    }

    .page__location .location__spot .location__spot--uni1>* {
        width: calc((100% - 0px * 1)/ 2)
    }
}

.page__location .location__spot .location__spot--uni2 {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 20px 20px
}

.page__location .location__spot .location__spot--uni2>* {
    width: calc((100% - 20px * 1)/ 2)
}

@media screen and (min-width: 480px) {
    .page__location .location__spot .location__spot--uni2 {
        gap:10px 10px
    }

    .page__location .location__spot .location__spot--uni2>* {
        width: calc((100% - 10px * 1)/ 2)
    }
}

@media screen and (min-width: 768px) {
    .page__location .location__spot .location__spot--uni2 {
        gap:10px 30px
    }

    .page__location .location__spot .location__spot--uni2>* {
        width: calc((100% - 30px * 1)/ 2)
    }
}

.page__location .location__map {
    padding-top: 64px;
    padding-top: clamp(32px,20.364px + 3.64vw,64px)
}

.page__location .location__lifeinformation {
    padding-top: 64px;
    padding-top: clamp(32px,20.364px + 3.64vw,64px)
}

.page__location .location__lifeinformation h2 img {
    width: auto;
    height: 28px;
    height: clamp(16px,11.636px + 1.36vw,28px)
}

.page__location .location__lifeinformation .location__lifeinformation--list {
    padding-top: 32px;
    padding-top: clamp(20px,15.636px + 1.36vw,32px);
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0 0
}

.page__location .location__lifeinformation .location__lifeinformation--list>* {
    width: calc((100% - 0px * 0)/ 1)
}

@media screen and (min-width: 768px) {
    .page__location .location__lifeinformation .location__lifeinformation--list {
        gap:4% 4%
    }

    .page__location .location__lifeinformation .location__lifeinformation--list>* {
        width: calc((100% - 4% * 1)/ 2)
    }
}

.page__location .location__lifeinformation .location__lifeinformation--list__group h3 {
    font-size: 1.125rem;
    font-size: clamp(.75rem,.614rem + .68vw,1.125rem);
    font-weight: 400;
    background-color: var(--color_theme-r);
    color: var(--color_white);
    padding: .2em 0 .2em .5em
}

.page__location .location__lifeinformation .location__lifeinformation--list__group dl {
    font-size: 1.125rem;
    font-size: clamp(.75rem,.614rem + .68vw,1.125rem);
    display: flex;
    justify-content: space-between;
    flex-direction: row;
    flex-wrap: wrap;
    padding: .2em 0 .2em .5em
}

.page__location .location__lifeinformation .location__lifeinformation--list__group dl:nth-child(even) {
    background-color: rgba(var(--color_theme-r_rgb),.15)
}

.page__location .location__lifeinformation .location__lifeinformation--list__group dl dt {
    width: calc(100% - 14em)
}

.page__location .location__lifeinformation .location__lifeinformation--list__group dl dd {
    width: 14em;
    text-align: right
}

.page__location .location__lifeinformation .location__lifeinformation--list__group dl dd span {
    display: inline-block
}

.page__location .location__lifeinformation .location__lifeinformation--list__group dl .text--about {
    width: 1em
}

.page__location .location__lifeinformation .location__lifeinformation--list__group dl .text--distansce {
    width: 4em
}

.page__location .location__lifeinformation .location__lifeinformation--list__group dl .text--transpot {
    width: 4em;
    text-align: left
}

.page__location .location__lifeinformation .location__lifeinformation--list__group dl .text--time {
    width: 3.6em
}

.page__location .location__lifeinformation .location__lifeinformation--note {
    padding-top: 32px;
    padding-top: clamp(20px,15.636px + 1.36vw,32px)
}

.page__location .location__lifeinformation .location__lifeinformation--note p {
    font-size: .875rem;
    font-size: clamp(.75rem,.705rem + .23vw,.875rem)
}

.page__concept .content__concept .pano__item {
    overflow: hidden;
    position: relative
}

.page__concept .content__concept .pano__item .pano__item__title {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-25%);
    z-index: 2;
    width: 90%;
    height: auto;
    pointer-events: none
}

@media screen and (min-width: 480px) {
    .page__concept .content__concept .pano__item .pano__item__title {
        max-width:1000px
    }
}

.page__concept .content__concept .pano__item .swiper-wrapper {
    transition-timing-function: linear
}

.page__concept .content__concept .pano__item .swiper-slide {
    width: 100%;
    margin-top: -1px
}

.page__concept .content__concept .pano__item .swiper-slide img {
    display: block;
    width: 100%;
    height: auto
}

.page__outline .outline__detail {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
    padding-top: 64px;
    padding-top: clamp(32px,20.364px + 3.64vw,64px)
}

.page__outline .outline__detail .detail__title h2 {
    text-align: center;
    font-family: var(--font_family-NotoSerifJP);
    font-weight: 700;
    letter-spacing: .2em;
    font-size: .875rem;
    font-size: 1.5rem;
    font-size: clamp(1.25rem,1.159rem + .45vw,1.5rem)
}

.page__outline .outline__detail .detail__title h2 br {
    display: block
}

@media screen and (min-width: 480px) {
    .page__outline .outline__detail .detail__title h2 br {
        display:none
    }
}

.page__outline .outline__detail .detail__list {
    padding-top: 36px;
    padding-top: clamp(16px,8.727px + 2.27vw,36px);
    font-family: var(--font_family-NotoSerifJP)
}

.page__outline .outline__detail .detail__list .detail__list--item {
    border-width: 1px 0 0 1px;
    border-style: solid;
    border-color: var(--color_gray-light)
}

@media screen and (min-width: 768px) {
    .page__outline .outline__detail .detail__list .detail__list--item dl {
        display:flex;
        flex-direction: row
    }
}

.page__outline .outline__detail .detail__list .detail__list--item dl dd,.page__outline .outline__detail .detail__list .detail__list--item dl dt {
    border-width: 0 1px 1px 0;
    border-style: solid;
    border-color: var(--color_gray-light);
    font-weight: 400;
    padding: .5em 1em;
    font-size: .875rem;
    font-size: clamp(.75rem,.705rem + .23vw,.875rem)
}

@media screen and (min-width: 768px) {
    .page__outline .outline__detail .detail__list .detail__list--item dl dd,.page__outline .outline__detail .detail__list .detail__list--item dl dt {
        padding:1em 2em
    }
}

.page__outline .outline__detail .detail__list .detail__list--item dl dt {
    flex: none;
    background-color: #fef5f8;
    white-space: nowrap
}

@media screen and (min-width: 768px) {
    .page__outline .outline__detail .detail__list .detail__list--item dl dt {
        text-align-last:justify;
        width: 20em
    }
}

.page__outline .outline__detail .detail__list .detail__list--item dl dd {
    flex-basis: 100%
}

.page__outline .outline__detail .detail__note {
    margin-top: 32px;
    margin-top: clamp(24px,21.091px + .91vw,32px)
}

.page__outline .outline__detail .detail__note p {
    font-size: .875rem;
    font-size: clamp(.6875rem,.619rem + .34vw,.875rem)
}

.page__outline .outline__detail .detail__note p.mb40 {
    margin-bottom: 40px
}

.page__outline .koushin {
    font-size: .875rem;
    font-size: clamp(.6875rem,.619rem + .34vw,.875rem);
    margin-bottom: 30px;
    padding: 25px 0 25px;
    text-align: left;
    border-top: 1px solid #ccc
}

.page__outline .koushin span {
    padding-right: 20px;
    margin-right: 20px;
    border-right: 1px dotted #ccc
}

@media screen and (max-width: 768px) {
    .page__outline .koushin span {
        display:block;
        padding-right: 0;
        margin-right: 0;
        margin-bottom: 20px;
        padding-bottom: 20px;
        border-right: none;
        border-bottom: 1px solid #ccc
    }
}

.page__brand {
    font-family: var(--font_family-NotoSerifJP)
}

.page__brand .pc {
    display: none
}

@media screen and (min-width: 768px) {
    .page__brand .pc {
        display:block
    }
}

.page__brand .sp {
    display: block
}

@media screen and (min-width: 768px) {
    .page__brand .sp {
        display:none
    }
}

.page__brand .top-about {
    text-align: center;
    padding: 110px 0 50px 0
}

.page__brand .top-about .wrapper {
    max-width: 1000px
}

.page__brand .logo {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column
}

.page__brand .top-about .catch_ttl {
    font-weight: 600;
    letter-spacing: .06em;
    text-align: center;
    color: #211815;
    margin-bottom: 95px;
    font-size: 2.1875rem;
    font-size: clamp(1.0625rem,.653rem + 2.05vw,2.1875rem)
}

.page__brand .top-about .catch_txt {
    line-height: 2;
    text-align: center;
    color: #000;
    font-size: 1rem;
    font-size: clamp(.875rem,.83rem + .23vw,1rem)
}

.page__brand .top-about .catch_txt+.ttl {
    margin-top: 130px
}

.page__brand .top-about .catch_txt.ta-l {
    text-align: left
}

.page__brand .top-about .ttl {
    font-size: 2.8rem;
    font-weight: 600;
    text-align: center;
    font-size: 1.75rem;
    font-size: clamp(1.0625rem,.813rem + 1.25vw,1.75rem)
}

.page__brand .top-about .ttl.ta-l {
    text-align: left
}

.page__brand .ta-l {
    text-align: left
}

.page__brand .top-about .ttl+.ttl {
    margin-top: 55px
}

.page__brand .top-about .logo {
    margin: 2px 0 40px 0
}

.page__brand .top-about .logo>span {
    padding: 20px 0 0 0;
    display: block
}

.page__brand .top-about .logo p {
    padding: 15px 0 0 0;
    display: block
}

.page__brand .top-about .txt {
    max-width: 730px;
    font-weight: 400;
    line-height: 1.7;
    text-align: left;
    margin: 50px auto 0 auto;
    font-size: .875rem;
    font-size: clamp(.875rem,.875rem + 0,.875rem)
}

.page__brand .hitoto {
    margin-top: 90px;
    margin-bottom: 120px
}

.page__brand .bland_series_sec01 {
    margin-bottom: 155px
}

.page__brand .bland_series_sec01 .ttl,.page__brand .bland_series_sec02 .ttl {
    margin-bottom: 35px;
    letter-spacing: .07em
}

.page__brand .bland_series_sec01 p,.page__brand .bland_series_sec02 p {
    line-height: 2
}

.page__brand .bland_series_sec02 {
    margin-bottom: 50px
}

.page__brand .bland_series_sec03 {
    margin-bottom: 75px
}

.page__brand .bland_series_sec03 .predear_img+.predear_img {
    margin-left: 40px
}

.page__brand .bnr01 {
    margin-top: 50px
}

.page__brand .bland_flex {
    display: flex;
    justify-content: space-between
}

.page__brand .bland_flex.a_center {
    align-items: center
}

.page__brand .bland_flex.center {
    justify-content: center
}

.page__brand .bland_flex.wrap {
    flex-wrap: wrap
}

.page__brand .bland_flex .flex_txt {
    text-align: left;
    max-width: 465px;
    width: 100%
}

.page__brand .bland_flex .flex_txt .flex.column {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%
}

.page__brand .bland_link {
    padding-bottom: 5px;
    border-bottom: .5px solid #211815;
    width: max-content;
    margin-bottom: 15px
}

.page__brand .bland_link a {
    font-family: "Noto Sans JP",sans-serif;
    color: #211815;
    text-decoration: none;
    font-size: 1.0625rem;
    font-size: clamp(.875rem,.807rem + .34vw,1.0625rem)
}

.page__brand .bland_link span {
    color: #bd9360
}

.page__brand .brand_detail {
    line-height: 2;
    margin-top: -8px
}

.page__brand .bland_flex .flex_img01 {
    max-width: 465px;
    width: 100%;
    margin-left: 40px
}

.page__brand .bland_flex .flex_img02 {
    max-width: 430px;
    width: 100%;
    margin-left: 0;
    margin-right: 40px
}

.page__brand .achievement_title {
    background: #0164ac
}

.page__brand .bland_flex.wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 20px
}

.page__brand .bland_flex.wrap>* {
    width: calc((100% - 20px * 1)/ 2)
}

@media screen and (min-width: 768px) {
    .page__brand .bland_flex.wrap {
        gap:60px 40px
    }

    .page__brand .bland_flex.wrap>* {
        width: calc((100% - 40px * 2)/ 3)
    }
}

.page__brand .achievement_title p {
    line-height: 1;
    text-align: center;
    color: #fff;
    padding: 15px;
    margin-bottom: 45px;
    font-size: 1.875rem;
    font-size: clamp(.875rem,.511rem + 1.82vw,1.875rem)
}

.page__brand .achievement_txt {
    font-size: 1rem;
    font-size: clamp(.625rem,.489rem + .68vw,1rem)
}

.page__brand .achievement_img {
    border: 1px solid #888;
    box-sizing: border-box;
    margin-bottom: 15px
}

@media screen and (max-width: 767px) {
    .page__brand .top-about {
        padding:40px 0 0
    }

    .page__brand .top-about .ttl+.ttl {
        margin-top: 15px
    }

    .page__brand .top-about .logo {
        margin: 10px 0 0
    }

    .page__brand .top-about .logo>span {
        margin: 0 auto;
        padding: 0 0 5px
    }

    .page__brand .top-about .logo>span:nth-of-type(1) {
        width: 40%
    }

    .page__brand .top-about .logo>span:nth-of-type(2) {
        width: 70%
    }

    .page__brand .top-about .txt {
        max-width: 100%;
        line-height: 2;
        margin: 5.8vw 0 0 0
    }

    .page__brand .top-about .catch_ttl {
        margin-bottom: 30px
    }

    .page__brand .top-about .catch_txt {
        line-height: 1.5;
        margin-top: 8px
    }

    .page__brand .top-about .catch_txt+.ttl {
        margin-top: 25px
    }

    .page__brand .bland_flex.hitoto {
        display: flex;
        flex-direction: column-reverse;
        margin-top: 30px;
        margin-bottom: 50px
    }

    .page__brand .bland_flex .flex_img01 {
        max-width: 60%;
        margin: 0 auto
    }

    .page__brand .brand_detail {
        margin-top: 25px;
        line-height: 1.5
    }

    .page__brand .bland_link {
        margin: 20px 0 0 auto
    }

    .page__brand .bland_flex.sp_block {
        display: block
    }

    .page__brand .bland_series_sec01 {
        margin-bottom: 0
    }

    .page__brand .bland_series_sec02 {
        margin-bottom: 25px
    }

    .page__brand .bland_series_sec03 {
        margin-bottom: 25px
    }

    .page__brand .bland_series_sec01 .ttl,.page__brand .bland_series_sec02 .ttl {
        margin-bottom: 10px
    }

    .page__brand .bland_series_sec01 p,.page__brand .bland_series_sec02 p {
        line-height: 1.5
    }

    .page__brand .bnr01 {
        margin-top: 25px
    }

    .page__brand .bland_flex .flex_img02 {
        max-width: 65%;
        width: 100%;
        margin: 30px auto 50px
    }

    .page__brand .bland_series_sec03 .predear_img+.predear_img {
        margin-left: 20px
    }

    .page__brand .achievement_title p {
        padding: 5px;
        margin-bottom: 15px
    }
}

.page__map .map__detail {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
    padding-top: 64px;
    padding-top: clamp(32px,20.364px + 3.64vw,64px)
}

.page__map .map__detail .detail__title h2 {
    text-align: center;
    font-family: var(--font_family-NotoSerifJP);
    font-weight: 700;
    letter-spacing: .2em;
    font-size: .875rem;
    font-size: 1.5rem;
    font-size: clamp(1.25rem,1.159rem + .45vw,1.5rem)
}

.page__map .map__detail .detail__title h2 br {
    display: block
}

@media screen and (min-width: 480px) {
    .page__map .map__detail .detail__title h2 br {
        display:none
    }
}

.page__map .map__detail .map__img {
    padding-top: 40px;
    padding-top: clamp(24px,18.182px + 1.82vw,40px)
}

.page__map .map__detail .map__img.genchi {
   padding: 0;
   margin-top: 40px;
}

.page__map .map__detail .map__img.mb40 {
    margin-bottom: 40px;
}

.page__map .map__map_bt {
    width: 80%;
    max-width: 540px;
    margin: 0 auto;
}

.page__map .map__map_bt a {
    position: relative;
    display: block;
    overflow: hidden;
    width: 100%;
    margin: 0 auto 60px;
    padding: 20px .5em;
    font-weight: 700;
    color: #fff;
    text-align: center;
    letter-spacing: .1em;
    font-size: 1.575rem;
    font-size: clamp(1.25rem,1.159rem + .45vw,1.5rem);
    background: #4d4d4d;
    font-family: var(--font_family-NotoSansJP);
    transition: all .5s ease
}
.page__map .map__map_bt.color_on a {
    background:#005eae;
}


.page__map .map__map_bt a:hover {
    opacity: .7
}

@media screen and (max-width: 768px) {
    .c_page__header h1.map {
        letter-spacing:0;
        font-size: clamp(1.2rem,1.038rem + .91vw,1.45rem)
    }

    .page__map .map__img iframe {
        height: 400px!important
    }

    .page__map .map__map_bt {
        width: 100%;
        max-width: 100%;
        margin: 0 auto
    }

    .page__map .map__map_bt a {
        width: 100%;
        margin: 0 auto 60px;
        padding: 20px .5em;
        letter-spacing: .1em;
        font-size: 1rem
    }
}

.page__map .map__detail .map__note {
    text-align: center;
    letter-spacing: .2em;
    font-size: 1.5rem;
    font-size: clamp(.875rem,.648rem + 1.14vw,1.3rem);
    margin-top: 30px;
    margin-top: clamp(20px,16.364px + 1.14vw,30px);
    margin-bottom:  clamp(20px,16.364px + 1.14vw,30px);
}

.page__map .map__detail .map__note span {
    font-size: 1rem;
    font-size: clamp(.625rem,.489rem + .68vw,1rem)
}

@media screen and (max-width: 480px) {
    .gallery__section1 .wrapper {
        width:100%
    }
}

@media screen and (max-width: 480px) {
    .gallery__section3 .wrapper {
        width:100%
    }
}

.page__gallery {
    background-color: var(--color_black)
}

.page__gallery .gallery__content {
    padding-top: 64px;
    padding-top: clamp(0,-42.667px + 8.89vw,64px);
    padding-bottom: 64px;
    padding-bottom: clamp(32px,20.364px + 3.64vw,64px)
}

.page__gallery .gallery__section2 {
    margin-top: 30px
}

@media screen and (min-width: 480px) {
    .page__gallery .gallery__section2 {
        margin-top:40px
    }
}

.page__gallery .gallery__section2 .main__layout {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 16px 16px
}

.page__gallery .gallery__section2 .main__layout>:nth-child(3n-2) {
    width: calc((100% - 16px * 1) * 4.95 / 10)
}

.page__gallery .gallery__section2 .main__layout>:nth-child(3n-1) {
    width: calc((100% - 16px * 1) * 5.05 / 10)
}

.page__gallery .gallery__section2 .main__layout>:nth-child(3n) {
    width: calc((100% - 16px * 0) * 20 / 10)
}

@media screen and (min-width: 480px) {
    .page__gallery .gallery__section2 .main__layout {
        gap:40px 30px
    }

    .page__gallery .gallery__section2 .main__layout>:nth-child(3n-2) {
        width: calc((100% - 30px * 1) * 4.99 / 10)
    }

    .page__gallery .gallery__section2 .main__layout>:nth-child(3n-1) {
        width: calc((100% - 30px * 1) * 5.01 / 10)
    }

    .page__gallery .gallery__section2 .main__layout>:nth-child(3n) {
        width: calc((100% - 30px * 0) * 20 / 10)
    }
}

.page__gallery .gallery__section3 {
    margin-top: 20px
}

.page__gallery .gallery__section3 .main__layout {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 20px 20px
}

.page__gallery .gallery__section3 .main__layout>* {
    width: calc((100% - 20px * 1)/ 2)
}

.page__design p {
    font-family: var(--font_family-NotoSerifJP);
    font-size: 1.5rem;
    font-size: clamp(.75rem,.477rem + 1.36vw,1.5rem)
}

.page__design .design__appearance>.wrapper {
    max-width: 1700px;
    width: 100%;
    display: flex;
    flex-direction: column-reverse;
    flex-wrap: wrap
}

@media screen and (min-width: 480px) {
    .page__design .design__appearance>.wrapper {
        flex-direction:column
    }
}

.page__design .design__appearance .design__appearance--text {
    margin-top: 36px;
    margin-top: clamp(20px,14.182px + 1.82vw,36px)
}

@media screen and (min-width: 480px) {
    .page__design .design__appearance .design__appearance--text {
        margin-top:0
    }
}

.page__design .design__appearance .design__appearance--text>.wrapper {
    position: relative
}

@media screen and (min-width: 480px) {
    .page__design .design__appearance .design__appearance--text>.wrapper div {
        position:absolute;
        top: 0;
        left: 0;
        padding-top: 80px;
        padding-top: clamp(20px,-20px + 8.33vw,80px)
    }
}

.page__design .design__appearance .design__appearance--text .design__appearance--title {
    margin-bottom: 20px;
    display: none
}

@media screen and (min-width: 480px) {
    .page__design .design__appearance .design__appearance--text .design__appearance--title {
        display:block
    }
}

.page__design .design__appearance .design__appearance--text .design__appearance--title img {
    height: 244px;
    width: auto;
    height: 244px;
    height: clamp(80px,-29.333px + 22.78vw,244px)
}

@media screen and (min-width: 480px) {
    .page__design .design__appearance .design__appearance--text .c_content--title {
        font-size:2.6875rem;
        font-size: clamp(.625rem,-.75rem + 4.58vw,2.6875rem)
    }
}

@media screen and (min-width: 480px) {
    .page__design .design__appearance .design__appearance--text p {
        font-size:1.5rem;
        font-size: clamp(.625rem,-.375rem + 2.5vw,1.5rem)
    }
}

@media screen and (min-width: 480px) {
    .page__design .design__appearance .design__appearance--layout {
        display:flex;
        flex-wrap: wrap;
        gap: 0 0;
        flex-direction: row-reverse
    }

    .page__design .design__appearance .design__appearance--layout>:nth-child(2n-1) {
        width: calc((100% - 0px * 1) * 7 / 10)
    }

    .page__design .design__appearance .design__appearance--layout>:nth-child(2n) {
        width: calc((100% - 0px * 1) * 1 / 10)
    }
}

.page__design .design__appearance .design__appearance--layout>div {
    position: relative
}

.page__design .design__appearance .appearance__hero {
    display: block
}

.page__design .design__entrance {
    margin-top: 120px;
    margin-top: clamp(20px,-16.364px + 11.36vw,120px)
}

.page__design .design__entrance .c_content--title {
    margin-top: 36px;
    margin-top: clamp(20px,14.182px + 1.82vw,36px)
}

.page__design .design__entrance .design__entrance--title {
    margin-bottom: 36px;
    margin-bottom: clamp(20px,14.182px + 1.82vw,36px);
    display: none
}

@media screen and (min-width: 480px) {
    .page__design .design__entrance .design__entrance--title {
        display:block
    }
}

.page__design .design__entrance .design__entrance--title img {
    height: 32px;
    height: clamp(16px,10.182px + 1.82vw,32px);
    width: auto
}

.page__quality .quality__menu {
    margin-top: 60px;
    margin-top: clamp(30px,19.091px + 3.41vw,60px)
}

.page__quality .quality__menu ul {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 10px 10px
}

.page__quality .quality__menu ul>* {
    width: calc((100% - 10px * 1)/ 2)
}

@media screen and (min-width: 480px) {
    .page__quality .quality__menu ul {
        gap:20px 20px
    }

    .page__quality .quality__menu ul>* {
        width: calc((100% - 20px * 3)/ 4)
    }
}

.page__quality .quality__menu ul li a {
    font-family: var(--font_family-mincho);
    font-weight: 700;
    color: #fff;
    display: block;
    padding: .5em 0;
    text-align: center;
    background-image: linear-gradient(to bottom,#b01c3c 0,#850a29 90%);
    border-radius: 5px;
    position: relative;
    opacity: .5;
    transition: all .5s ease;
    font-size: 24px;
    font-size: clamp(14px,10.364px + 1.14vw,24px)
}

.page__quality .quality__menu ul li a.nav__current,.page__quality .quality__menu ul li a:hover {
    opacity: 1
}

.page__quality .quality__menu ul li a::after {
    pointer-events: none;
    position: absolute;
    top: 50%;
    left: 50%;
    content: "";
    width: calc(100% - 10px);
    height: calc(100% - 10px);
    display: block;
    border-width: 1px;
    border-style: solid;
    border-color: #fff;
    transform: translate(-50%,-50%)
}

.page__quality .quality__menu--child {
    margin-top: 40px;
    margin-top: clamp(20px,12.727px + 2.27vw,40px);
    padding-top: 40px;
    padding-top: clamp(20px,12.727px + 2.27vw,40px);
    border-width: 2px 0 0 0;
    border-style: solid;
    border-color: #000
}

.page__quality .quality__menu--child ul {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 10px 10px
}

.page__quality .quality__menu--child ul>* {
    width: calc((100% - 10px * 1)/ 2)
}

@media screen and (min-width: 480px) {
    .page__quality .quality__menu--child ul {
        gap:20px 20px
    }

    .page__quality .quality__menu--child ul>* {
        width: calc((100% - 20px * 3)/ 4)
    }
}

.page__quality .quality__menu--child ul li {
    font-weight: 700;
    color: #c9caca;
    display: block;
    padding: .3em 0;
    text-align: center;
    position: relative;
    opacity: .5;
    transition: all .5s ease;
    font-size: 24px;
    font-size: clamp(14px,10.364px + 1.14vw,24px);
    border-width: 2px;
    border-style: solid;
    border-color: #ce0e2d
}

.page__quality .quality__menu--child ul li.is__active,.page__quality .quality__menu--child ul li:hover {
    opacity: 1;
    background-color: #ce0e2d;
    color: #fff
}

.page__quality .quality__content {
    padding-top: 64px;
    padding-top: clamp(32px,10.667px + 4.44vw,64px);
    padding-bottom: 64px;
    padding-bottom: clamp(32px,20.364px + 3.64vw,64px)
}

.page__quality .quality__content #bathroom,.page__quality .quality__content #kitchen,.page__quality .quality__content #others,.page__quality .quality__content #sanitary {
    display: none
}

.page__quality .quality__content #bathroom.is__active,.page__quality .quality__content #kitchen.is__active,.page__quality .quality__content #others.is__active,.page__quality .quality__content #sanitary.is__active {
    display: block
}


.page__quality .shikihai {
width: 100%;
margin:  30px auto 0;
}

@media screen and (min-width: 480px) {
.page__quality .shikihai {
width: 80%;
margin:  60px auto 0;
}
}


/***フロートバナー***/

.visitorBnr {
    position: fixed;
    z-index: 95;
    right: 15px;
    bottom: 60px;
    width: 200px;
    height: auto;
    padding: 5px;
    filter: drop-shadow(.1em 0 .5em rgb(0, 0, 0, .7));
}
.visitorBnr .like_bunner {
    animation:up_small 2s linear infinite;
}


.visitorBnr img {
        transition: all .8s ease;
}
.visitorBnr:hover img {
       opacity: 0.8;
           transform: scale(1);
}


@keyframes up_small {

  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }

}

@media screen and (max-width: 798px) {
    .visitorBnr {
        right: 0%;
        bottom: 65px;
        width: 30%;
        height: auto;
    }
    }


.visitorBnr.hidden {
    display: none
}

.visitorBnr .bnrClose {
    position: absolute;
    z-index: 3;
    right: 0px;
    top: -10px;
    width: 30px;
    height: 30px;
    border-radius: 30px;
    background: #000;
    color: #fff;
    cursor: pointer;
    line-height: 30px;
    text-align: center;
}
@media screen and (max-width: 798px) {
    .visitorBnr .bnrClose {
        right: 0px;
        top: -10px;
    }
}
.visitorBnr .bnrClose span {
    position: relative;
    display: block;
    width: 100%;
    height: 100%
}
.visitorBnr .bnrClose span:after,.visitorBnr .bnrClose span:before {
    content: "";
    width: 50%;
    height: 2px;
    background: #fff;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto
}
.visitorBnr .bnrClose span:before {
    transform: rotate(-45deg)
}

.visitorBnr .bnrClose span:after {
    transform: rotate(45deg)
}
.visitorBnr a {
    position: relative;
    display: block;
    z-index: 2
}
.visitorBnr a:before {
   display: none;
}


/***動画バナー***/

.movieBnr {
    position: fixed;
    z-index: 95;
    right: 10px;
    bottom: 10px;
     width: 180px;
    padding: 5px;
    filter: drop-shadow(0.1em 0 0.5em rgb(0, 0, 0, 0.7));
}

.movieBnr button {
    position: relative;
}

.movieBnr .bunner_title {
    background: #004d97;
    color: #fff;
    text-align: center;
    padding: 10px 3px;
    /*position: absolute;
    top: 0;
    left: 3%;
    z-index: 2;
    width: 94%;*/
}

.movieBnr__video {
  position: relative;
  width: 100%;
  aspect-ratio: 9 / 16;
  overflow: hidden;
  background: #fff;
}

.movieBnr__video iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  pointer-events: none;
}

.movie_bt {
    position: absolute;
    width: 33%;
    z-index: 2;
    top: 40%;
    left: 33%;
}

/* 読み込み中画像 */
.movieBnr__poster {
  position: absolute;
  inset: 0;
  z-index: 2;

  width: 100%;
  height: 100%;
  object-fit: cover;

  opacity: 1;
  transition: opacity 0.4s ease;
  pointer-events: none;
}

/* 動画再生開始後 */
.movieBnr__video.is-ready .movieBnr__poster {
  opacity: 0;
}



.visitorMovieOpen {
  display: block;
  width: 100%;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
}


.movieBnr .like_bunner {
    animation:up_small 2s linear infinite;
}


.movieBnr img {
        transition: all .8s ease;
}
.movieBnr:hover img {
       opacity: 0.8;
           transform: scale(1);
}


@keyframes up_small {

  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }

}

@media screen and (max-width: 798px) {
.movieBnr {
        right: 0%;
        bottom: 85px;
        width: 30%;
        height: auto;
    }
.movieBnr .bunner_title {
font-size: min(2.5vw, 14px);
}

    }


.movieBnr.hidden {
    display: none
}

.movieBnr .bnrClose {
    position: absolute;
    z-index: 3;
    right: 0px;
    top: -10px;
    width: 30px;
    height: 30px;
    border-radius: 30px;
    background: #000;
    color: #fff;
    cursor: pointer;
    line-height: 30px;
    text-align: center;
}
@media screen and (max-width: 798px) {
    .movieBnr .bnrClose {
        right: 0px;
        top: -10px;
    }
}
.movieBnr .bnrClose span {
    position: relative;
    display: block;
    width: 100%;
    height: 100%
}
.movieBnr .bnrClose span:after,.movieBnr .bnrClose span:before {
    content: "";
    width: 50%;
    height: 2px;
    background: #fff;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto
}
.movieBnr.bnrClose span:before {
    transform: rotate(-45deg)
}

.movieBnr .bnrClose span:after {
    transform: rotate(45deg)
}
.movieBnr a {
    position: relative;
    display: block;
    z-index: 2
}
.movieBnr a:before {
   display: none;
}



/******モデルルームモーダル*****/

.youtubeModal {
  position: fixed;
  inset: 0;
  z-index: 99999;

  display: flex;
  align-items: center;
  justify-content: center;

  visibility: hidden;
  opacity: 0;

  transition:
    opacity 0.4s ease,
    visibility 0.4s ease;
}

.youtubeModal.is-open {
  visibility: visible;
  opacity: 1;
}


.youtubeModal__bg {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.85);
}


.youtubeModal__inner {
  position: relative;
  z-index: 2;
  /*width: min(90%, 1000px);*/
    width: auto;
    height: min(85vh, 850px);
}


.youtubeModal__movie {
  position: relative;
      width: auto;
    height: 100%;
  /*aspect-ratio: 16 / 9;*/
  aspect-ratio: 9 / 16;
  background: #000;
}


.youtubeModal__iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: none;
}


.youtubeModal__close {
  position: absolute;
  top: -10px;
  right: -50px;
  width: 40px;
  height: 40px;
  padding: 0;
  border: none;
  background: none;
  color: #fff;
  font-size: 40px !important;
  line-height: 1;
  cursor: pointer;
}


@media screen and (max-width: 767px) {

  .youtubeModal__inner {
    height: 80vh;
  }

  .youtubeModal__close {
    top: -45px;
    right: 0;
    font-size: 36px;
  }

}



.good_bunner_wrapp {
    width: 90%;
    max-width: 800px;
    margin: 60px auto 0;
}

.good_bunner_wrapp a {
    transition: all .5s ease;
}
.good_bunner_wrapp a:hover {
    opacity: 0.7;
}

@media screen and (max-width: 798px) {
    .good_bunner_wrapp {
    width: 90%;
    margin: 30px auto 0;
}
}