@charset "UTF-8";
:root {
/* ===== Brand Primary Colors ===== */
--brand-primary-dark: #2D1F06;
--brand-primary: #664C14;
--brand-primary-light: #A0790D;
/* ===== Brand Accent Colors ===== */
--brand-accent-red: #BF5B5C;
--brand-accent-gold: #DDB527;
--brand-accent-pink: #EDA9AA;
/* ===== Base Colors ===== */
--brand-base-bg: #FCFAF6;
--brand-base-text: #2D1F06;
/* ===== Sidebar ===== */
--sidebar-bg: var(--brand-primary-dark);
--sidebar-text: #fff;
/* ===== Header / KV ===== */
--kv-bg: var(--brand-primary-dark);
--kv-text: #fff;
/* ===== Fonts ===== */
--font-serif: "Libre Baskerville", serif;
--font-jp: "Noto Sans JP", sans-serif;
--font-en: "Montserrat", sans-serif;
}
:where( button:enabled, label[for], select:enabled, input:is( [type="button" i], [type="submit" i], [type="reset" i], [type="radio" i], [type="checkbox" i] ):enabled, [role="tab" i], [role="button" i], [role="option" i] ), :where(:enabled)::file-selector-button {
    cursor: pointer;
}
* {margin: 0;padding: 0;}
*, *:before, *:after {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}
/* Hide scrollbar for Chrome, Safari, Opera */
.no-scrollbar::-webkit-scrollbar {
  display: none;
}
/* Hide scrollbar for IE, Edge, Firefox */
.no-scrollbar {
  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none; /* Firefox */
}
body {
margin: 0;
padding: 0;
font-family: var(--font-jp);
color: var(--brand-base-text);
background-color: var(--brand-base-bg);
min-height: 100vh;
line-height: 1.75;
scrollbar-width: thin;
scrollbar-color: var(--brand-primary) var(--brand-base-bg);
}
a{text-decoration: none;}
button{
background-color: transparent;
border: none;
cursor: pointer;
outline: none;
padding: 0;
appearance: none;
}
:where(summary) {
list-style-type: "";
cursor: pointer;
}
:where(:root) {scrollbar-gutter: stable;}
:where(summary)::-webkit-details-marker {
display: none;
}
/* layout */
.sidebar--left {
background-color: var(--sidebar-bg);
color: var(--sidebar-text);
height: 100vh;
padding: 0 50px;
position: sticky;
top: 0;
display: none;
}
@media (width >= 980px) {
body.layout--sidebar {
display: grid;
grid-template-columns: 400px 1fr;
min-height: 100vh;
}
.sidebar--left {
display: block;
overflow-y: auto;
}
.sidebar--right {
background-color: var(--sidebar-bg);
color: var(--sidebar-text);
position: sticky;
top: 0;
height: 100vh;
}
}
/* End layout */
/* common */
.btn-primary{
color: #fff;
font-size: 16px;
font-weight: 300;
letter-spacing: 0.8px;
text-decoration: none;
border-radius: 25px;
background: linear-gradient(0deg, #B6880B 0%, #936E0A 50.48%, #715508 100%);
padding: 14px 0;
display: flex;
justify-content: center;
align-items: center;
line-height: 1;
}
.btn-outline{
color: var(--brand-accent-gold);
font-size: 16px;
font-weight: 300;
line-height: 1;
letter-spacing: 0.8px;
padding: 14px 0;
border-radius: 25px;
border: 1px solid var(--brand-accent-gold);
display: flex;
justify-content: center;
align-items: center;
}
.u-br--sp,
.u-br--pc {
display: none;
}
.section{
padding: 80px 30px;
position: relative;
}
.section.section--has-deco{
&::before{
content: '';
position: absolute;
background-image: url(/images/common/section_decoration.webp);
background-repeat: no-repeat;
background-size: cover;
width: 100%;
max-width: 940px;
aspect-ratio: 188/15;
top: 0;
left: 50%;
transform: translate(-50%, 0);
}
&::after{
content: '';
position: absolute;
background-image: url(/images/common/section_decoration.webp);
background-repeat: no-repeat;
background-size: cover;
width: 100%;
max-width: 940px;
aspect-ratio: 188/15;
bottom: 0;
left: 50%;
transform: translate(-50%, 0) rotate(180deg);
}
}
.section--has-dot{
position: absolute;
width: 10px;
aspect-ratio: 1 / 1;
background-color: var(--brand-primary-light);
border-radius: 50%;
top: 80px;
left: 45px;
}
.section--has-line{
position: absolute;
width: 1px;
height: 100%;
background-color: var(--brand-primary-light);
top: 0;
left: 49px;
}
.section__head{
padding: 0 0 45px 45px;
position: relative;
}
.section__label{
color: var(--brand-primary-light);
font-family: var(--font-serif);
font-size: 12px;
font-weight: 700;
letter-spacing: 2.4px;
line-height: 1;
}
.section__title{
color: var(--brand-base-text);
font-size: 20px;
font-weight: 300;
letter-spacing: 2px;
margin-top: 16px;
}
.section__lead{
color: var(--brand-primary-dark);
font-size: 14px;
font-weight: 400;
margin-top: 30px;
}
ul.annotation {
font-size: 10px;
list-style: inside;
}
ul.annotation li {
padding-left: 1em;
text-indent: -1em;
list-style: inside;
list-style-type: '※';
}
@media (width <= 979px) {
.u-br--sp {
display: inline;
}
}
@media (width >= 980px) {
.section{padding: 120px 30px;}
.section__inner{
max-width: 600px;
margin: auto;
padding-left: 30px;
}
.section__head{
padding: 0 0 50px 0;
}
.u-br--pc {
display: inline;
}
.section--has-dot{
top: 120px;
}

@media (width >= 1200px){
.section--has-dot{left: calc(30px + 7%);}
.section--has-line{left: calc(34px + 7%);}
}
}
@media (width >= 1800px){
.section--has-dot{left: 25%;}
.section--has-line{left: 25.4%;}
}
/* End common */
/* sidebar--left */
.sidebar__inner{
display: flex;
flex-direction: column;
justify-content: flex-start;
height: 100%;
padding: 250px 0 50px;
}
.brand-sidebar__catch{
color: var(--brand-accent-gold);
text-align: center;
font-size: 16px;
font-weight: 300;
margin-top: 25px;
}
.brand-sidebar__locations{
margin-top: 25px;
display: flex;
gap: 10px;
flex-wrap: wrap;
justify-content: center;
align-items: center;
}
.brand-sidebar__location{
color: var(--brand-accent-gold);
text-align: center;
font-family: var(--font-en);
font-size: 12px;
font-weight: 400;
letter-spacing: 1.2px;
border-radius: 10px;
border: 1px solid var(--brand-accent-gold);
padding: 4px 10px;
line-height: 1;
}
.brand-sidebar__actions{
margin-top: 80px;
}
.brand-sidebar__action{
& + .brand-sidebar__action{margin-top: 10px;}
}
.brand-sidebar__links{
display: grid;
grid-template-columns: 1fr;
justify-content: center;
gap: 1em;
margin-top: 117px;
}
.brand-sidebar__link{
color: #fff;
font-size: 12px;
font-weight: 400;
line-height: 1;
display: flex;
justify-content: center;
}
.brand-sidebar__copyright{
color: #fff;
font-family: var(--font-en);
font-size: 10px;
font-weight: 400;
letter-spacing: 1px;
margin-top: 30px;
text-align: center;
}
/* End sidebar--left */
/* sidebar--right */
#navSidebar{
position: fixed;
top: 0;
left: 0;
right: 0;
background-color: var(--sidebar-bg);
padding: 20px;
z-index: 900;
}
.nav-sidebar__inner{
display: grid;
grid-template-columns: auto 24px;
gap: 10px;
align-items: center;
}
.nav-sidebar__header{
display: flex;
justify-content: space-between;
}
.nav-sidebar__logo{
display: flex;
width: 38%;
max-width: 148px;
height: fit-content;
}
.nav-sidebar__logo img{
height: auto;
width: 100%;
}
.nav-sidebar__icons{
display: flex;
flex-wrap: wrap;
gap: 10px;
justify-content: flex-end;
align-items: center;
}
.nav-sidebar__icon{
width: 24px;
aspect-ratio: 1/1;
display: flex;
justify-content: center;
align-items: center;
}
.nav-sidebar__icon img {
width: 100%;
height: 100%;
object-fit: contain;
display: block;
}
.nav-sidebar__hamburger{
border: none;
background: transparent;
cursor: pointer;
}
.hamburger-lines{
position: relative;
width: 24px;
height: 24px;
padding: 6px 3px;
}
.hamburger-lines span{
position: absolute;
width: 18px;
height: 2px;
left: 50%;
background-color: #fff;
transition: all .6s;
border-radius: 30px;
transform: translateX(-50%);
}
.hamburger-lines span:nth-of-type(1) {
top: 25%;
}
.hamburger-lines span:nth-of-type(2) {
top: 50%;
}
.hamburger-lines span:nth-of-type(3) {
top: 75%;
}
.hamburger-lines.active span:nth-of-type(1) {
transform: translate(-50%, 6px) rotate(-30deg);
}
.hamburger-lines.active span:nth-of-type(2) {
}
.hamburger-lines.active span:nth-of-type(3) {
transform: translate(-50%, -6px) rotate(30deg);
}
.nav-overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100vh;
background-color: var(--brand-primary-dark);
visibility: hidden;
opacity: 0;
transition: all .6s;
z-index: 100;
}
.nav-overlay.active {
visibility: visible;
opacity: 1;
}
.nav-overlay__content {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 100%;
height: 100vh;
text-align: center;
overflow-y: auto;
padding: 150px 0;
display: grid;
grid-template-columns: 1fr;
&::-webkit-scrollbar{
display: none;
}
}
.nav-overlay__link {
display: inline-block;
font-size: 24px;
text-decoration: none;
transition: color .3s;
text-align: left;
position: relative;
& + .nav-overlay__link{
margin-top: 40px;
&::before{
position: absolute;
content: '';
width: 1px;
height: calc(100% + 40px);
background-color: var(--brand-primary-light);
top: -80px;
left: -21px;
}}
}
.nav-overlay__link:hover {
opacity: .8;
}
.nav-sidebar__menu-title{
color: var(--brand-primary-light);
font-family: var(--font-serif);
font-size: clamp(10px, 0.542rem + 0.34vw, 12px);
font-weight: 700;
letter-spacing: 2.4px;
position: relative;
}
.nav-sidebar__menu-sub{
color: #fff;
font-size: clamp(16px, 0.835rem + 0.68vw, 20px);
font-weight: 300;
letter-spacing: 2px;
}
.nav-overlay__list{
display: grid;
grid-template-columns: 1fr;
text-align: left;
width: fit-content;
margin: auto;
}
.nav-sidebar__menu-dot{
content: '';
position: absolute;
left: -25px;
top: 4px;
width: 10px;
aspect-ratio: 1/1;
background-color: var(--brand-primary-light);
border-radius: 50%;
}
@media (width >= 980px) {
#navSidebar{
/* display: sticky; */
display: none;
}
.nav-sidebar__inner{grid-template-columns: 1fr;gap: 30px;}
.nav-sidebar__logo{display: none;}
.nav-sidebar__header{order: 2;}
.nav-sidebar__icon{
width: 100%;
max-width: 40px;
}
.nav-sidebar__icons{justify-content: center;gap: 30px;}
.nav-sidebar__hamburger{
margin: auto;
width: 40px;
height: 40px;
padding: 10px 5px;
order: 1;
}
.hamburger-lines span{width: 30px;}
.hamburger-lines.active span:nth-of-type(1) {
transform: translate(-50%, 10px) rotate(-30deg);
}
.hamburger-lines.active span:nth-of-type(2) {
}
.hamburger-lines.active span:nth-of-type(3) {
transform: translate(-50%, -10px) rotate(30deg);
}}
/* End sidebar--right */
/* header */
header{
background:
radial-gradient(50% 50% at 50% 50%, rgba(0,0,0,0.90) 0%, rgba(50,34,3,0.90) 100%),
url(/images/common/gb_top_kv.webp);
background-size: cover;
background-repeat: no-repeat;
padding-top: clamp(190px, 10vw, 255px);
padding-bottom: clamp(45px, 8vw, 185px);
padding-left: 45px;
padding-right: 45px;
}
.kv__logo{
width: clamp(300px, 77%, 600px);
margin: auto;
display: block;
}
.kv__catch{
color: var(--brand-accent-gold);
text-align: center;
font-size: 16px;
font-weight: 300;
margin-top: 25px;
}
.kv__locations{
margin-top: 25px;
display: flex;
gap: 10px;
flex-wrap: wrap;
justify-content: center;
align-items: center;
}
.kv__location{
color: var(--brand-accent-gold);
text-align: center;
font-family: var(--font-en);
font-size: 12px;
font-weight: 400;
letter-spacing: 1.2px;
border-radius: 10px;
border: 1px solid var(--brand-accent-gold);
padding: 4px 10px;
line-height: 1;
}
.kv__lead{
color: #fff;
font-size: 14px;
font-weight: 300;
margin-top: 55px;
display: flex;
justify-content: center;
}
.kv__features{
display: flex;
align-items: center;
gap: 10px;
justify-content: center;
align-self: stretch;
flex-wrap: wrap;
margin-top: 25px;
}
.kv__feature{
color: var(--brand-primary);
font-size: 10px;
font-weight: 500;
line-height: 1;
border-radius: 10px;
background: #fff;
padding: 5px 10px;
}
.kv__actions{
margin-top: 92px;
}
.kv__action{
& + .kv__action {
margin-top: 10px;
}
}
@media (width >= 980px) {
.kv__locations{display: none;}
.kv__actions{display: none;}
.kv__catch{margin-top: 50px;}
.kv__features{
gap: 20px;
margin-top: 50px;
}
.kv__feature{
width: 120px;
aspect-ratio: 1 / 1;
border-radius: 50%;
display: flex;
justify-content: center;
align-items: center;
font-size: 0.88rem;
text-align: center;
line-height: 1.57;
}
}
/* End header */
/* venue */
.section.section--venue{background: #fff;}
.venue__scene-head .venue__title{
text-align: center;
font-size: 16px;
font-weight: 400;
margin-top: 30px;
}
.venue__buttons{
margin: 20px 0 0 45px;
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 15px;
}
.venue-btn{
color: var(--brand-primary-light);
text-align: center;
font-size: 12px;
font-weight: 700;
border-radius: 10px;
border: 1px solid var(--brand-accent-gold);
padding: 20px 0;
}
.venue__results-tags{
color: var(--brand-primary-light);
font-size: 12px;
font-weight: 400;
}
.venue__results{
margin-top: 30px;
}
.venue__results-wrap{
border: 1px solid var(--brand-primary-light);
border-radius: 10px;
padding: 30px;
}
.venue__results-list{
display: grid;
grid-template-columns: 1fr;
gap: 20px;
margin-top: 25px;
}
.venue-cards{
margin-top: 20px;
display: grid;
grid-template-columns: 1fr;
gap: 15px;
}
.venue-card{
border-radius: 10px;
background: #fff;
overflow: clip;
}
.venue-card__thumb{
display: block;
object-fit: cover;
width: 100%;
height: 120px;
}
.venue-card__desc{
  padding: 15px 15px 18px;
  background: var(--brand-base-bg);
}
.venue-card__meta{
color: var(--brand-primary-light);
font-size: 10px;
font-weight: 500;
margin-top: 15px;
}
.venue-card__name{
font-size: clamp(12px, 0.667rem + 0.34vw, 14px);
font-weight: 700;
}
.venue-card__name-room{
  white-space: nowrap;
}
.venue-card__text{
font-size: 10px;
font-weight: 400;
margin-top: 10px;
}
.venue-card__link{
display: block;
color: var(--brand-primary-light);
font-size: 10px;
font-weight: 500;
text-decoration-line: underline;
margin-top: 10px;
text-align: right;
}
.venue__form{margin-left: 45px;}
.venue__form .form_item label{
color: var(--brand-primary);
font-size: 10px;
font-weight: 500;
line-height: 20px;
}
.venue__form .form_item select,
.venue__form .form_item input#guestCount {
position: relative;
appearance: none;
-webkit-appearance: none;
-moz-appearance: none;
width: 100%;
padding: 13px;
border: 1px solid var(--brand-primary-light);
border-radius: 20px;
font-size: 14px;
color: rgba(45, 31, 6, 0.8);
line-height: 1;
background: url(/images/common/arrow_form.svg) no-repeat;
background-size: 12px 6px;
background-position: right 20px center;
margin-top: 8px;
}
.venue__form .form_item select.arrow_none,
.form_item input#guestCount.arrow_none{
  background: none;
}
/* Chrome, Safari, Edge (Webkit系) */
.form_item input#guestCount::-webkit-outer-spin-button,
.form_item input#guestCount::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
/* Firefox */
.form_item input#guestCount {
  -moz-appearance: textfield;
}
.btn-primary.venue__search-btn{
margin: 20px auto 0;
width: 100%;
max-width: 320px;
}
.btn-outline.venue__more-btn{
color: var(--brand-primary);
border: 1px solid var(--brand-primary);
width: 100%;
max-width: 320px;
margin: 25px auto 0;
}
.hidden {
display: none;
}
@media (width >= 980px) {
.venue__form{
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 15px 30px;
margin-left: 0;
}
.btn-primary.venue__search-btn{margin: 30px auto 0;}
.venue__buttons{gap: 20px 15px;margin: 20px auto 0;}
.venue__results-list{grid-template-columns: repeat(2, 1fr);margin-top: 30px;}
}
/* End venue */
/* reason */
.section--reason {
  background: rgba(234, 226, 210, 0.8) url(/images/common/section_bg_reason.webp) no-repeat center / cover;
}
.reason__item{
padding: 30px;
border-radius: 10px;
border: 1px solid var(--brand-accent-gold);
background: #fff;
box-shadow: 0px 5px 0px 0px rgba(221, 181, 39);
max-width: 270px;
}
.reason__number{
color: var(--brand-primary-light);
font-family: var(--font-serif);
font-size: 12px;
font-weight: 700;
letter-spacing: 2.4px;
}
.reason__name{
font-size: 16px;
font-weight: 400;
letter-spacing: 1.6px;
margin-top: 20px;
}
.reason__text{
font-size: 12px;
font-weight: 400;
margin-top: 30px;
}
#splide01 .splide__slide{
display: flex;
align-items: stretch;
padding-bottom: 5px;
}
.reason__actions {
margin: 40px auto 0;
width: 70%;
max-width: 320px;
}
.reason__guide{margin-top: 40px;margin-left: 45px;}
.reason__guide-title{
color: var(--brand-primary-light);
text-align: left;
font-size: clamp(14px, 0.792rem + 0.34vw, 16px);
font-weight: 700;
line-height: 1;
}
.reason__guide-text{
font-size: clamp(12px, 0.667rem + 0.34vw, 14px);
font-weight: 400;
line-height: 1.66;
margin-top: 15px;
}
.reason__guide-link.btn-outline{
margin: 15px auto 0;
width: 100%;
max-width: 320px;
color: var(--brand-primary);
border: 1px solid var(--brand-primary);
}
@media (width >= 980px) {
#splide01.splide{
max-width: 760px;
margin: auto;
visibility: visible;
}
#splide01 .splide__list{
display: grid;
grid-template-columns: repeat(3, 1fr);
justify-content: center;
gap: 10px;
}
.reason__guide{margin-top: 80px;margin-left: 0;}
.reason__guide-text{.reason__guide-text}
.reason__guide-link.btn-outline{margin: 30px auto 0;}
}
/* End reason */
/* foryou */
.foryou__grid{
display: grid;
grid-template-columns: 1fr;
gap: 25px;
margin-left: 45px;
}
.foryou-card{
border-radius: 10px;
border: 1px solid var(--brand-accent-gold);
background: #f7f4ef;
padding: 25px;
}
.foryou-card__title{
color: var(--brand-primary-light);
font-size: 14px;
font-weight: 700;
letter-spacing: 1.4px;
}
.foryou-card__text{
font-size: 10px;
font-weight: 400;
line-height: 16px;
margin-top: 15px;
}
.foryou-card__tags{
margin-top: 15px;
display: flex;
justify-content: flex-start;
gap: 5px;
flex-wrap: wrap;
}
.foryou-card__tags li{
border-radius: 10px;
border: 1px solid var(--brand-primary-light);
background: var(--brand-primary-light);
padding: 6px 13px;
color: #fff;
font-size: 10px;
font-weight: 500;
line-height: 1;
}
@media (width >= 980px) {
.foryou__grid{grid-template-columns: 1fr 1fr;gap: 30px;margin-left: 0;}
}
/* End foryou */
/* support */
.support__item{
padding: 30px;
border-radius: 10px;
border: 1px solid var(--brand-primary-light);
background: #fff;
box-shadow: 0px 5px 0px 0px rgba(160,121,13);
max-width: 270px;
}
.support__number{
color: var(--brand-accent-gold);
font-family: var(--font-serif);
font-size: 12px;
font-weight: 700;
letter-spacing: 2.4px;
}
.support__name{
font-size: 16px;
font-weight: 400;
letter-spacing: 1.6px;
margin-top: 20px;
}
.support__text{
font-size: 12px;
font-weight: 400;
margin-top: 30px;
}
#splide02 .splide__slide{
display: flex;
align-items: stretch;
padding-bottom: 5px;
}
.support__actions {
margin: 40px auto 0;
width: 70%;
max-width: 320px;
}
@media (width >= 980px) {
#splide02.splide{
max-width: 760px;
margin: auto;
visibility: visible;
}
#splide02 .splide__list{
display: grid;
grid-template-columns: repeat(3, 1fr);
justify-content: center;
gap: 10px;
}
}
/* End support */
/* scene */
.scene__list{
display: grid;
grid-template-columns: 1fr 1fr;
gap: 10px;
justify-content: flex-end;
margin-left: 45px;
}
.scene__item{
padding: 15px 18px;
border-radius: 10px;
border: 1px solid var(--brand-accent-gold);
}
.scene__number{
color: var(--brand-primary-light);
text-align: center;
font-family: var(--font-serif);
font-size: 10px;
font-weight: 700;
letter-spacing: 2px;
}
.scene__name{
text-align: center;
font-size: 12px;
font-weight: 700;
line-height: 1.5;
margin-top: 10px;
}
.scene__text{
font-size: 10px;
font-weight: 400;
line-height: 1.6;
margin-top: 10px;
text-align: center;
}
.scene__guide{
margin-top: 40px;
border-radius: 10px;
background: #f7f4ef;
padding: 30px;
position: relative;
}
.scene__guide-subtitle{
color: var(--brand-primary-light);
text-align: center;
font-family: var(--font-en);
font-size: 10px;
font-weight: 500;
line-height: 2;
}
.scene__guide-title{
text-align: center;
font-size: 14px;
font-weight: 400;
letter-spacing: 1.4px;
margin-top: 15px;
}
.scene__cards{
margin-top: 20px;
display: grid;
grid-template-columns: 1fr;
gap: 15px;
}
.scene-card{
border-radius: 10px;
border: 1px solid var(--brand-accent-gold);
background: #fff;
overflow: clip;
}
.scene-card__thumb{
display: block;
object-fit: cover;
width: 100%;
}
.scene-card__desc{
  padding: 15px 15px 18px;
}
.scene-card__meta{
color: var(--brand-primary-light);
font-size: 10px;
font-weight: 500;
margin-top: 15px;
}
.scene-card__name{
font-size: clamp(12px, 0.667rem + 0.34vw, 14px);
font-weight: 700;
}
.scene-card_info{width: 100%;margin-top: 15px;}
.scene-card_info tbody{
display: grid;
gap: 15px;
}
.scene-card_info th,
.scene-card_info td {
font-size: 12px;
}
.scene-card_info th {
position: relative;
display: block;
min-width: 100px;
padding: 5px 25px 5px 5px;
background: #715A2D;
color: #fff;
}
.scene-card__text{
font-size: 10px;
font-weight: 400;
margin-top: 10px;
}
.scene-card__link{
display: block;
color: var(--brand-primary-light);
font-size: 10px;
font-weight: 500;
text-decoration-line: underline;
margin-top: 10px;
text-align: right;
}
.scene__actions{margin-top: 20px;}
.scene__actions .scene__btn{
max-width: 320px;
margin: auto;
}
@media (width >= 980px) {
.scene__list{grid-template-columns: 1fr 1fr 1fr;gap: 15px;margin-left: 0;}
.scene__cards{
grid-template-columns: 1fr 1fr;
gap: 20px 30px;
}
}
/* End scene */
/* wedding */
.section--wedding{
background: url(/images/common/section_bg_wedding.webp) no-repeat;
background-size: cover;
}
.section--wedding .section__head{
&::before {
background-color: var(--brand-accent-red);
}
}
.section--wedding .section__label{color: var(--brand-accent-red);}
.wedding__actions{
margin: 50px auto 0;
width: 70%;
max-width: 320px;
}
.btn-primary.btn-primary-pink{
  background: var(--Linear, linear-gradient(0deg, #e07274 0%, #bf5b5c 100%));
}
.point__item{
padding: 30px;
border-radius: 10px;
border: 1px solid var(--brand-accent-pink);
background: #fff;
box-shadow: 0px 5px 0px 0px rgba(237, 169, 170);
max-width: 270px;
}
.point__number{
color: var(--brand-accent-red);
font-family: var(--font-serif);
font-size: 12px;
font-weight: 700;
letter-spacing: 2.4px;
}
.point__name{
font-size: 16px;
font-weight: 400;
letter-spacing: 1.6px;
margin-top: 20px;
}
.point__text{
font-size: 12px;
font-weight: 400;
margin-top: 30px;
}
#splide03 .splide__slide{
display: flex;
align-items: stretch;
padding-bottom: 5px;
}
@media (width >= 980px) {
#splide03.splide{
max-width: 760px;
margin: auto;
visibility: visible;
}
#splide03 .splide__list{
display: grid;
grid-template-columns: repeat(3, 1fr);
justify-content: center;
gap: 10px;
}
}
/* End wedding */
/* location */
.stores__tabs{
display: flex;
justify-content: center;
}
.stores__tab{
color: var(--brand-primary);
font-size: 12px;
font-weight: 700;
letter-spacing: 1.2px;
padding: 10px 0;
border: 1px solid #664D14;
border-radius: 30px;
width: 120px;
background: rgb(252,250,246);
&.is-active{
background: #664D14;
color: #fff;
}
}
.stores__tab:nth-of-type(1){
position: relative;
right: -30px;
z-index: 3;
}
.stores__tab:nth-of-type(2){
position: relative;
z-index: 2;
}
.stores__tab:nth-of-type(3){
position: relative;
left: -30px;
z-index: 1;
}
.stores__cards{
margin-top: 20px;
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 15px 10px;
position: relative;
}
.stores__card{
border-radius: 10px;
border: 1px solid var(--brand-accent-gold);
overflow: hidden;
}
.stores__thumb{
display: block;
object-fit: cover;
width: 100%;
}
.stores__desc{padding: 15px 15px 18px;background: #fff;}
.stores__name{
font-size: clamp(12px, 0.667rem + 0.34vw, 14px);
font-weight: 700;
}
.stores__meta{
color: var(--brand-primary-light);
font-size: 10px;
font-weight: 500;
margin-top: 15px;
}
.stores__text{
font-size: 10px;
font-weight: 400;
margin-top: 10px;
}
.stores__link{
display: block;
color: var(--brand-primary-light);
font-size: 10px;
font-weight: 500;
text-decoration-line: underline;
margin-top: 10px;
text-align: right;
}
.location__actions{
margin: 40px auto 0;
width: 70%;
max-width: 320px;
}
.location__guide{
margin-top: 40px;
margin-left: 45px;
padding: 30px;
border-radius: 10px;
background: #f7f4ef;
}
.location__guide-title{
color: var(--brand-primary-light);
font-size: 14px;
font-weight: 700;
}
.location__guide-text{
font-size: 12px;
font-weight: 400;
margin-top: 20px;
}
.location__guide-link{
margin: 20px auto 0;
max-width: 320px;
}
/* End location */
/* faq */
.section--faq{background: rgba(252, 250, 246, 0.80);}
.faq__item{
padding: 30px 30px 30px 15px;
border-top: 1px solid var(--brand-primary-light);
background: var(--brand-base-bg);
position: relative;
z-index: 1;
&:last-of-type{border-bottom: 1px solid var(--brand-primary-light);}
}
.faq__question,.faq__answer{
display: flex;
gap: 15px;
}
.faq__question{
position: relative;
&::before{
position: absolute;
content: '';
width: 12px;
height: 1px;
background: var(--brand-accent-gold);
right: -21px;
top: 6px;
}
&::after {
position: absolute;
content: '';
width: 1px;
height: 12px;
background: var(--brand-accent-gold);
right: -15px;
top: 0;
transition: .5s;
}
}
details.faq__item[open] summary.faq__question::after {transform: rotate(90deg);}
.faq__q,.faq__a{
color: var(--brand-primary-light);
font-family: var(--font-serif);
font-size: clamp(14px, 0.792rem + 0.34vw, 16px);
font-weight: 700;
letter-spacing: 2.8px;
}
.faq__answer{padding-top: 20px;}
.faq__question-text{
font-size: clamp(14px, 0.792rem + 0.34vw, 16px);
font-weight: 700;
line-height: 20px;
}
.faq__answer-text{
font-size: 12px;
font-weight: 400;
line-height: 20px;
}
details::details-content {
interpolate-size: allow-keywords;
transition: height 0.5s ease, content-visibility 0.5s ease allow-discrete;
height: 0;
overflow: clip;
}

details[open]::details-content {
height: auto;
}
/* End faq */
/* footer */
.footer{
background: var(--brand-primary);
color: #fff;
padding: 40px 0;
text-align: center;
}
.footer__logo{
width: 38%;
max-width: 246px;
display: inline-block;
}
.footer__logo img{
width: 100%;
height: auto;
}
.footer__links{
display: grid;
grid-template-columns: 1fr;
justify-content: center;
margin-top: 30px;
gap: 1em;
}
.footer__link{
text-decoration: none;
color: #fff;
font-size: 12px;
font-weight: 400;
line-height: 1;
}
.footer__copyright{
color: #fff;
font-family: var(--font-en);
font-size: 10px;
font-weight: 400;
letter-spacing: 1px;
margin-top: 30px;
}
@media (width >= 980px) {
.footer{padding: 60px 0;}
.footer__links{margin-top: 40px;}
.footer__copyright{margin-top: 40px;}
}
/* End footer */