@charset "UTF-8";
/*
Theme Name: Theme name
Author: Author
Author URI:
*/
/* A Modern CSS Reset */
*,
*::before,
*::after {
  box-sizing: border-box;
}

body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
  font-weight: 400;
}

ul[role=list],
ol[role=list] {
  list-style: none;
}

html:focus-within {
  scroll-behavior: smooth;
}

body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

a:not([class]) {
  text-decoration-skip-ink: auto;
}

img,
picture {
  max-width: 100%; /*display:block*/
}

input,
button,
textarea,
select {
  font: inherit;
}

@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
html {
  scroll-behavior: smooth;
  scroll-padding: 8.75rem;
  font-size: calc(100vw / 1680 * 16);
}
@media (1680px < width) {
  html {
    font-size: 16px;
  }
}
@media (width <= 768px) {
  html {
    font-size: calc(100vw / 390 * 16);
  }
}

body {
  font-family: "Zen Old Mincho", serif;
  color: #241d14;
  background: url(../images/common/content-bg.png);
  line-height: 2;
  letter-spacing: 0.08em;
}
@media (width <= 768px) {
  body {
    font-size: 0.9375rem;
  }
}
body.is-map-open, body.is-menu-open {
  overflow: hidden;
}

@media (width <= 768px) {
  p {
    font-size: 0.9375rem;
  }
}
p:not(:last-of-type) {
  margin-bottom: 2em;
}

a {
  color: #241d14;
  text-decoration: none;
  transition: 0.3s;
}
a:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
}

svg,
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

svg {
  height: 100%;
}

pre {
  white-space: pre;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: normal;
}

ul li::marker {
  color: #a78f45;
}

/********************************************
* Layout
********************************************/
/* Header */
.l-header {
  padding: 0.625rem 2.5rem 1rem;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  transition: 0.5s;
  height: 8.125rem;
}
@media (width <= 768px) {
  .l-header {
    padding: 1.25rem;
    height: auto;
  }
}
body:not(.has-mv) .l-header svg,
body:not(.has-mv) .l-header a {
  color: #241d14;
}
.is-scrolled .l-header {
  background: hsla(0, 0%, 100%, 0.9);
}
.is-scrolled .l-header svg,
.is-scrolled .l-header a {
  color: #241d14;
}
.l-header__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.l-header__left {
  transform: translateY(1.875rem);
}
@media (width <= 768px) {
  .l-header__left {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1.25rem;
    transform: inherit;
  }
  body:not(.p-home) .l-header__left {
    display: block;
    flex-direction: column;
  }
}
.l-header__logo {
  width: 10.25rem;
}
@media (width <= 768px) {
  .l-header__logo {
    width: 9.1875rem;
  }
}
.l-header__logo svg {
  height: 2.5rem;
  fill: #fff;
}
@media (width <= 768px) {
  .l-header__logo svg {
    height: 2.25rem;
  }
}
body:not(.has-mv) .l-header__logo svg, .is-scrolled .l-header__logo svg {
  fill: #241d14;
}

@media (width <= 768px) {
  .l-gnav {
    display: none;
  }
}
.l-gnav__list {
  display: flex;
  gap: 1.625rem;
}
.l-gnav__link {
  color: #fff;
  font-size: 0.875rem;
}

.l-menu-trigger {
  width: 2rem;
  height: 1.75rem;
  cursor: pointer;
  position: fixed;
  top: 1.5rem;
  right: 1rem;
  z-index: 1000;
  color: #fff;
  text-align: center;
  display: none;
}
@media (width <= 768px) {
  .l-menu-trigger {
    display: block;
  }
}
.is-scrolled:not(.is-menu-open) .l-menu-trigger {
  color: #241d14;
}
.l-menu-trigger__bar {
  display: block;
  transition: all 0.3s;
  width: 2rem;
  height: 1px;
  position: absolute;
  left: calc(50% - 1rem);
  top: 0;
  display: inline-block;
  background: #fff;
}
.is-scrolled:not(.is-menu-open) .l-menu-trigger__bar {
  background: #241d14;
}
.is-menu-open .l-menu-trigger__bar:nth-of-type(1) {
  transform: translateY(0rem) rotate(45deg);
}
.l-menu-trigger__bar:nth-of-type(2) {
  transform: translateY(0.625rem);
}
.is-menu-open .l-menu-trigger__bar:nth-of-type(2) {
  transform: translateY(0rem) rotate(-45deg);
}
.l-menu-trigger__text {
  font-size: 0.75rem;
  line-height: 1;
  position: absolute;
  bottom: 0;
}

.l-article {
  min-height: 31.25rem;
}

/* Footer */
.l-footer {
  color: #fff;
  line-height: 1.6;
}
.l-footer__head {
  background: url(../images/common/footer_head_bg.jpg) no-repeat center;
  background-size: cover;
  padding: 7.8125rem 0 4.5625rem;
}
@media (width <= 768px) {
  .l-footer__head {
    padding: 5rem 1.75rem 5.625rem;
  }
}
.l-footer__headInner {
  max-width: 62.5rem;
  margin: 0 auto;
}
.l-footer__reservation {
  display: flex;
  justify-content: space-between;
  padding-bottom: 3rem;
  margin-bottom: 1.875rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}
@media (width <= 768px) {
  .l-footer__reservation {
    flex-direction: column;
    text-align: center;
    margin-bottom: 3.75rem;
  }
}
.l-footer__reservationTitle {
  font-size: 2.5rem;
}
@media (width <= 768px) {
  .l-footer__reservationTitle {
    font-size: 1.8125rem;
    margin-bottom: 3.125rem;
  }
}
.l-footer__contact {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1.75rem;
}
@media (width <= 768px) {
  .l-footer__contact {
    flex-direction: column;
  }
}
.l-footer__contactTitle {
  font-size: 1.5rem;
  margin-bottom: 0 !important;
}
@media (width <= 768px) {
  .l-footer__contactTitle {
    font-size: 1.3rem;
    text-align: left;
    width: 100%;
    margin-bottom: 1.25rem;
  }
}
.l-footer__contactBox {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  flex-wrap: wrap;
  justify-content: end;
  text-align: right;
}
@media (width <= 768px) {
  .l-footer__contactBox {
    text-align: center;
    justify-content: center;
  }
}
.l-footer__contactTel {
  font-size: 1rem;
}
@media (width <= 768px) {
  .l-footer__contactTel {
    font-size: 1.04rem;
  }
}
.l-footer__contactNo {
  font-size: 2.5rem;
}
@media (width <= 768px) {
  .l-footer__contactNo {
    font-size: 2.08rem;
  }
}
.l-footer__contactNo a {
  color: #fff;
  text-decoration: none;
}
.l-footer__contactText {
  font-size: 1rem;
  width: 100%;
}
.l-footer__buttons {
  display: flex;
  gap: 2.5rem;
  align-items: start;
}
@media (width <= 768px) {
  .l-footer__buttons {
    flex-direction: column;
    gap: 1.03125rem;
  }
}
.l-footer__button {
  width: 19rem;
  display: inline-block;
}
@media (width <= 768px) {
  .l-footer__button {
    width: 100%;
  }
}
.l-footer__body {
  background: linear-gradient(180deg, #373633, #1c1c1c);
  padding: 7.5rem 0 3.125rem;
}
@media (width <= 768px) {
  .l-footer__body {
    padding: 5.9375rem 1.75rem 3.75rem;
  }
}
.l-footer__bodyInner {
  max-width: 75rem;
  margin: 0 auto;
}
.l-footer__bodyContent {
  display: flex;
  justify-content: space-between;
  margin-bottom: 3.125rem;
}
@media (width <= 768px) {
  .l-footer__bodyContent {
    flex-direction: column;
    margin-bottom: 0;
  }
}
.l-footer__bodyLogo {
  width: 14.0625rem;
  margin-bottom: 1.125rem;
}
@media (width <= 768px) {
  .l-footer__bodyLogo {
    width: 13rem;
    margin: 0 auto 1.125rem;
  }
}
.l-footer__bodyLogo svg {
  fill: #fff;
  height: 3.4375rem;
}
.l-footer__bodyTitle {
  font-size: 1.325rem;
  margin-bottom: 1.875rem;
}
@media (width <= 768px) {
  .l-footer__bodyTitle {
    font-size: 1.425rem;
    text-align: center;
  }
}
.l-footer__bodyLink {
  color: #fff;
  font-size: 1rem;
  text-decoration: underline;
}
.l-footer__bodyAddress {
  font-size: 0.875rem;
  margin-bottom: 1.75rem;
}
@media (width <= 768px) {
  .l-footer__bodyAddress {
    font-size: 1.03125rem;
  }
}
@media (width <= 768px) {
  .l-footer__bodySns {
    margin-top: 3.75rem;
    margin-bottom: 4.6875rem;
  }
}
.l-footer__information {
  width: 25rem;
}
@media (width <= 768px) {
  .l-footer__information {
    width: 100%;
  }
}
.l-footer__navList.c-list {
  display: flex;
  flex-wrap: wrap;
  width: 44rem;
  padding-bottom: 2.5rem;
  gap: 1.25rem 2.1875rem;
}
@media (width <= 768px) {
  .l-footer__navList.c-list {
    width: 100%;
    gap: 0.625rem;
    padding-bottom: 1.875rem;
  }
}
@media (width <= 768px) {
  .l-footer__navItem {
    width: 100%;
  }
}
.l-footer__navItem--external .l-footer__navLink {
  background-image: url(../images/common/external-white.png);
  background-size: 0.75rem;
  background-repeat: no-repeat;
  background-position: right center;
}
.l-footer__navLink {
  font-size: 0.875rem;
  color: #fff;
}
.l-footer .l-footer__navLink[target=_blank]:after {
  background-image: url(../images/common/icon_blank_white.svg);
  background-size: cover;
  content: " ";
  display: inline-block;
  height: 0.715625rem;
  margin-left: 0.25rem;
  position: relative;
  top: 0.125rem;
  width: 0.715625rem;
}
@media (width <= 768px) {
  .l-footer .l-footer__navLink[target=_blank]:after {
    width: 1.0625rem;
    height: 1.0625rem;
  }
}
.l-footer__navSubList.c-list {
  display: flex;
  gap: 1.25rem;
}
.l-footer__navSubLink {
  color: #fff;
  font-size: 0.875rem;
  padding-left: 0.875rem;
  display: inline-block;
  position: relative;
}
.l-footer__navSubLink:before {
  content: "";
  width: 0.5rem;
  height: 0.125rem;
  background: #fff;
  position: absolute;
  left: 0;
  top: calc(50% - 0.0625rem);
}
.l-footer__banner {
  display: flex;
  justify-content: start;
  gap: 3rem;
}
@media (width <= 768px) {
  .l-footer__banner {
    flex-wrap: wrap;
    gap: 1.03125rem;
  }
}
.l-footer__bannerItem {
  width: 23rem;
  height: 8.125rem;
  position: relative;
}
@media (width <= 768px) {
  .l-footer__bannerItem {
    width: 100%;
    height: 7.625rem;
  }
}
.l-footer__bannerImage {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.l-footer__bannerLink {
  display: flex;
  justify-content: center;
  align-items: end;
  height: 100%;
  padding: 0.625rem;
}
.l-footer__bannerBox {
  color: #fff;
  position: relative;
  z-index: 1;
  line-height: 1;
}
.l-footer__bannerTitle {
  font-size: 1.25rem;
  margin-bottom: 0 !important;
}
@media (width <= 768px) {
  .l-footer__bannerTitle {
    font-size: 1.1rem;
  }
}
.l-footer__bannerText {
  font-size: 0.875rem;
  margin-top: 0.625rem;
  letter-spacing: 0.04em;
  line-height: 1.4;
}
@media (width <= 768px) {
  .l-footer__bannerText {
    font-size: 0.78125rem;
  }
}
.l-footer__foot {
  background: url(../images/common/footer_foot_bg.jpg) no-repeat center;
  background-size: cover;
  padding: 7.5rem 0 1.25rem;
}
@media (width <= 768px) {
  .l-footer__foot {
    padding: 5rem 0.78125rem 5rem;
  }
}
.l-footer__footInner {
  max-width: 75rem;
  margin: 0 auto;
}
.l-footer__footLogo {
  width: 16.375rem;
  margin: 0 auto 5rem;
}
@media (width <= 768px) {
  .l-footer__footLogo {
    width: 13rem;
  }
}
.l-footer__footLogo svg {
  fill: #fff;
  height: 4rem;
}
@media (width <= 768px) {
  .l-footer__footLogo svg {
    height: 3.1875rem;
  }
}
.l-footer__footLink {
  text-align: right;
}
@media (width <= 768px) {
  .l-footer__footLink {
    text-align: center;
    font-size: 0.90625rem;
  }
}
.l-footer__footNav {
  padding: 1.25rem 0;
}
@media (width <= 768px) {
  .l-footer__footNav {
    padding: 2.5rem 0 0;
  }
}
.l-footer__footNavInner {
  max-width: 75rem;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
@media (width <= 768px) {
  .l-footer__footNavInner {
    flex-direction: column;
    gap: 2.5rem;
  }
}
.l-footer__footNavList {
  display: flex;
  gap: 2.5rem;
}
@media (width <= 768px) {
  .l-footer__footNavList {
    order: 1;
    flex-wrap: wrap;
    gap: 0.9375rem;
  }
}
@media (width <= 768px) {
  .l-footer__footNavItem {
    width: 100%;
    text-align: center;
  }
}
.l-footer__footNavLink {
  color: #fff;
  font-size: 0.75rem;
}
@media (width <= 768px) {
  .l-footer__copyright {
    order: 2;
    text-align: center;
    font-size: 0.625rem;
  }
}

.l-main {
  overflow: clip;
}

/* Sidebar */
.l-aside__inner {
  position: sticky;
  top: 8.75rem;
}
@media (width <= 768px) {
  .l-aside__inner {
    top: 11.25rem;
  }
}
.l-aside__title {
  font-size: 1.5rem;
  padding-bottom: 0.625rem;
  line-height: 1;
  margin-bottom: 1.25rem;
}
@media (width <= 768px) {
  .l-aside__title {
    display: none;
  }
}

.l-aside-selector {
  display: none;
}
@media (width <= 768px) {
  .l-aside-selector {
    font-size: 0.875rem;
    display: block;
    border: 1px solid #cbc5b5;
    position: relative;
    padding: 0.625rem 1.875rem 0.625rem 1.25rem;
  }
  .l-aside-selector:after {
    width: 0.625rem;
    height: 0.491875rem;
    background: #a78f45;
    mask: url(../images/common/arrow-aside.svg) no-repeat center/contain;
    transform: rotate(90deg);
    content: "";
    position: relative;
    right: 1.25rem;
    top: calc(50% - 0.25rem);
    display: block;
    position: absolute;
  }
}

.l-aside-nav__list {
  font-size: 0.875rem;
  line-height: 1.18125rem;
}
@media (width <= 768px) {
  .l-aside-nav__list {
    transform: translateY(0rem);
    display: none;
    background: #fff;
    border: 1px solid #cbc5b5;
    color: #fff;
    position: absolute;
    width: calc(100% - 3.5rem);
    width: 100%;
  }
  .l-aside-nav__list.c-list {
    padding: 1.25rem 0.625rem;
    margin-top: -1px;
  }
}
@media (width <= 768px) {
  .has-side--left .l-aside-nav__list.c-list {
    display: block;
    padding: 0;
    margin: 0;
    background: inherit;
  }
  .has-side--left .l-aside-nav__list .l-aside-nav__item {
    background: inherit;
    padding: 0;
    line-height: 2.5rem;
    transition: 0.3s;
    opacity: 0;
    position: absolute;
    top: 0;
    padding-top: 0.625rem;
  }
}
@media (width <= 768px) and (width <= 768px) {
  .has-side--left .l-aside-nav__list .l-aside-nav__item:before {
    background: #a78f45;
    position: absolute;
    top: inherit;
    bottom: inherit;
    left: 1.125rem;
    top: 0;
    content: "";
    width: 0.491875rem;
    height: 0.625rem;
    transform: rotate(90deg);
    mask: url(../images/common/arrow-aside.svg) no-repeat center/contain;
  }
}
@media (width <= 768px) {
  .has-side--left .l-aside-nav__list .l-aside-nav__item--current {
    opacity: 1;
    display: block;
  }
  .has-side--left .l-aside-nav__list .l-aside-nav__item--current:before {
    background: #a78f45;
    position: absolute;
    top: inherit;
    bottom: inherit;
    left: 1.125rem;
    top: 0;
    content: "";
    width: 0.491875rem;
    height: 0.625rem;
    transform: rotate(90deg);
    mask: url(../images/common/arrow-aside.svg) no-repeat center/contain;
  }
}
.has-side--left .l-aside-nav__list .l-aside-nav__link {
  padding: 0.5625rem 0;
}
@media (width <= 768px) {
  .has-side--left .l-aside-nav__list .l-aside-nav__link {
    display: block;
    writing-mode: vertical-rl;
    font-size: 0.9375rem;
  }
}
.l-aside-nav__item {
  position: relative;
  padding-left: 1.25rem;
}
@media (width <= 768px) {
  .l-aside-nav__item {
    background: #fff;
  }
}
.l-aside-nav__item--current:before {
  background: #a78f45;
  position: absolute;
  left: 0;
  top: calc(50% - 0.125rem);
  content: "";
  width: 0.491875rem;
  height: 0.625rem;
  mask: url(../images/common/arrow-aside.svg) no-repeat center/contain;
}
.l-aside-nav__item--current .l-aside-nav__link {
  color: #a78f45;
}
.l-aside-nav__link {
  display: block;
  padding: 0.625rem 0;
}

@media (width <= 768px) {
  .has-side--left.c-inner {
    padding: 0;
    flex-direction: row;
  }
}
.has-side--left .has-side__main {
  order: 2;
  width: 75rem;
  margin-right: 5rem;
  display: block;
}
@media (width <= 768px) {
  .has-side--left .has-side__main {
    width: 21.875rem;
    margin-right: 0;
  }
}
.has-side--left .has-side__aside {
  order: 1;
  width: 10rem;
}
@media (width <= 768px) {
  .has-side--left .has-side__aside {
    width: 2.5rem;
  }
}
@media (width <= 768px) {
  .has-side--left .l-aside__inner {
    top: 8.75rem;
  }
}
.has-side__wrapper {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
@media (width <= 768px) {
  .has-side__wrapper {
    flex-direction: column;
  }
}
.has-side__title.c-title__h2 {
  width: 100%;
  font-size: 1.5rem;
  margin-bottom: 1.875rem;
}
@media (width <= 768px) {
  .has-side__title.c-title__h2 {
    order: 2;
    font-size: 1.3125rem;
    margin-bottom: 1.25rem;
  }
}
.has-side__content.c-section {
  padding: 0 0 10rem;
}
.has-side__main {
  width: 62.5rem;
}
@media (width <= 768px) {
  .has-side__main {
    display: contents;
    width: 100%;
    position: relative;
    z-index: 1;
  }
  .has-side__main > * {
    order: 4;
  }
}
@media (width <= 768px) {
  .has-side__main .c-activity-list {
    order: 3;
  }
}
.has-side__main .p-post__body h2 {
  font-size: 2rem;
  font-weight: 400;
  letter-spacing: 0.04em;
  padding-left: 1.75rem;
  line-height: 1.5;
  margin-bottom: 2.5rem;
  position: relative;
}
@media (width <= 768px) {
  .has-side__main .p-post__body h2 {
    font-size: 1.75rem;
    margin-bottom: 1.875rem;
  }
}
.has-side__main .p-post__body h2:not(:first-child) {
  margin-top: 5rem;
}
@media (width <= 768px) {
  .has-side__main .p-post__body h2:not(:first-child) {
    margin-top: 2.5rem;
  }
}
.has-side__main .p-post__body h2:after {
  height: 1px;
  left: -0.25rem;
  top: 1.5rem;
  width: 1.125rem;
  background-color: #9e7e3f;
  content: "";
  display: block;
  position: absolute;
  transform: rotate(-28deg);
}
.has-side__main .p-post__body h3 {
  font-size: 1.3125rem;
  margin: 1.875rem 0 0.9375rem;
}
.has-side__main .p-post__body table {
  margin-bottom: 2em;
  border-top: 1px solid #d8cbb2;
}
.has-side__main .p-post__body th {
  width: auto;
  min-width: 7.5rem;
  vertical-align: top;
  border-bottom: 1px solid #d8cbb2;
  padding: 0.9375rem 0;
  text-align: left;
}
@media (width <= 768px) {
  .has-side__main .p-post__body th {
    font-size: 0.9375rem;
    padding-bottom: 0.625rem;
    line-height: 2;
    display: block;
    border: none;
    padding-bottom: 0.625rem;
    width: 100%;
  }
}
.has-side__main .p-post__body td {
  padding: 0.9375rem 0;
  border-bottom: 1px solid #d8cbb2;
}
@media (width <= 768px) {
  .has-side__main .p-post__body td {
    line-height: 2;
    display: block;
    width: 100%;
    padding-top: 0;
  }
}
.has-side__main .p-post__body p {
  margin-bottom: 2em;
}
@media (width <= 768px) {
  .has-side__main .p-post__body p {
    margin-bottom: 2.5em;
    line-height: 2;
    font-size: 0.875rem;
  }
}
.has-side__main .p-post__body p:last-of-type {
  margin-bottom: 2em;
}
@media (width <= 768px) {
  .has-side__main .p-post__body p:last-of-type {
    margin-bottom: 2.5em;
  }
}
.has-side__main .p-post__body a {
  text-decoration: underline;
}
.has-side__main .p-post__body img {
  margin-bottom: 1em;
  display: inline;
}
.has-side__main .p-post__body ul,
.has-side__main .p-post__body ol {
  padding-left: 1.5em;
  margin: 0 0 2em;
}
.has-side__aside {
  width: 13.75rem;
  margin-right: -1.25rem;
}
@media (width <= 768px) {
  .has-side__aside {
    width: 100%;
    order: 2;
    position: relative;
    z-index: 2;
    margin-bottom: 3.75rem;
  }
}

.l-wedding {
  background-color: rgba(167, 143, 69, 0.08);
}
.l-wedding .l-header {
  height: auto;
  padding: 1.8125rem 2.5rem;
}
@media (width <= 768px) {
  .l-wedding .l-header {
    padding: 1.25rem;
  }
}
@media (width <= 768px) {
  .l-wedding .l-header__logo {
    width: 9.1875rem;
    position: relative;
    z-index: 10;
  }
}
.l-wedding.is-menu-open .l-header__logo svg {
  fill: #fff !important;
}
@media (width <= 768px) {
  .l-wedding.is-menu-open .l-gnav {
    left: 0;
  }
}
.l-wedding .l-header__left {
  transform: inherit;
}
@media (width <= 768px) {
  .l-wedding .l-gnav {
    display: block;
    position: fixed;
    left: 100%;
    top: 0;
    width: 100%;
    height: 100vh;
    background-color: #a78f45;
    overflow-y: scroll;
    transition: 0.3s;
  }
}
.l-wedding .l-gnav__list {
  gap: 2.5rem;
}
@media (width <= 768px) {
  .l-wedding .l-gnav__list {
    flex-direction: column;
    padding: 6.25rem 2.5rem;
  }
}
@media (width <= 768px) {
  .l-wedding .l-gnav__link {
    color: #fff !important;
    font-size: 1rem;
  }
}
.l-wedding .l-gnav__item--sp {
  display: none;
}
@media (width <= 768px) {
  .l-wedding .l-gnav__item--sp {
    display: block;
    border: 1px solid #fff;
    text-align: center;
    line-height: 1;
    padding: 1.1875rem 0;
  }
}
.l-wedding .l-footer__fair {
  background-image: url(../images/common-wedding/footer-bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  height: 36.375rem;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: #fff;
  position: relative;
  letter-spacing: 0.02em;
}
@media (width <= 768px) {
  .l-wedding .l-footer__fair {
    height: auto;
    padding: 2.5rem 1.75rem;
    margin-bottom: 0;
  }
}
.l-wedding .l-footer__fair:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 0;
}
.l-wedding .l-footer__fair-p {
  position: relative;
  z-index: 1;
  font-size: 1.125rem;
  margin-bottom: 3.75rem;
}
@media (width <= 768px) {
  .l-wedding .l-footer__fair-p {
    font-size: 0.9375rem;
    line-height: 1.8;
    margin-bottom: 2.1875rem;
  }
}
.l-wedding .l-footer__fair-inner {
  width: 100%;
}
.l-wedding .l-footer__fair-contact-inner {
  position: relative;
  z-index: 1;
  display: flex;
  border: 1px solid #fff;
  width: 71.25rem;
  margin: 0 auto;
  padding: 3.125rem 0;
}
@media (width <= 768px) {
  .l-wedding .l-footer__fair-contact-inner {
    width: 100%;
    flex-direction: column;
    padding: 1.25rem 0;
    gap: 1.25rem;
    width: 100%;
  }
}
.l-wedding .l-footer__fair-contact-tel {
  width: 50%;
}
@media (width <= 768px) {
  .l-wedding .l-footer__fair-contact-tel {
    width: 100%;
    line-height: 1.4;
    border-bottom: 1px solid #fff;
    padding-bottom: 1.25rem;
  }
}
.l-wedding .l-footer__fair-contact-num {
  font-size: 3rem;
  letter-spacing: -0.05em;
  color: #fff;
}
@media (width <= 768px) {
  .l-wedding .l-footer__fair-contact-num {
    font-size: 2rem;
  }
}
.l-wedding .l-footer__fair-contact-num a {
  color: #fff;
  text-decoration: none;
}
.l-wedding .l-footer__fair-contact-p {
  font-size: 1.3125rem;
}
@media (width <= 768px) {
  .l-wedding .l-footer__fair-contact-p {
    font-size: 1rem;
  }
}
.l-wedding .l-footer__fair-contact-web {
  width: 50%;
}
@media (width <= 768px) {
  .l-wedding .l-footer__fair-contact-web {
    width: 100%;
  }
}
.l-wedding .l-footer__fair-contact-web .l-footer__fair-contact-p {
  margin-bottom: 1.25rem;
}
.l-wedding .l-footer__fair-contact-web .c-btn {
  width: 20rem;
}
@media (width <= 768px) {
  .l-wedding .l-footer__fair-contact-web .c-btn {
    width: 13.375rem;
  }
}
.l-wedding .l-footer__maps {
  color: #241d14;
  letter-spacing: 0.02em;
  background-color: #f9f8f4;
  padding-top: 7.5rem;
}
@media (width <= 768px) {
  .l-wedding .l-footer__maps {
    padding-top: 3.75rem;
  }
}
@media (width <= 768px) {
  .l-wedding .l-footer__maps .c-inner {
    padding: 0 1.25rem;
  }
}
.l-wedding .l-footer__maps-logo {
  width: 23.875rem;
  margin-bottom: -0.625rem;
}
@media (width <= 768px) {
  .l-wedding .l-footer__maps-logo {
    width: 16.25rem;
  }
}
.l-wedding .l-footer__maps-item {
  display: flex;
  text-align: center;
  padding: 5rem 0;
}
@media (width <= 768px) {
  .l-wedding .l-footer__maps-item {
    flex-wrap: wrap;
    padding: 2.5rem 0;
  }
}
.l-wedding .l-footer__maps-item:nth-of-type(1) {
  border-bottom: 1px solid #cbc5b5;
}
.l-wedding .l-footer__maps-item:nth-of-type(2) .c-gmap {
  margin-bottom: 2.5rem;
}
.l-wedding .l-footer__maps-item:nth-of-type(2) .l-footer__maps-p {
  margin-bottom: 0.625rem;
}
.l-wedding .l-footer__maps-text {
  text-align: center;
  width: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
@media (width <= 768px) {
  .l-wedding .l-footer__maps-text {
    width: 100%;
    order: 2;
  }
}
.l-wedding .l-footer__maps-title {
  font-size: 1.5rem;
  margin-bottom: 2.5rem;
  position: relative;
  padding-top: 3.75rem;
}
@media (width <= 768px) {
  .l-wedding .l-footer__maps-title {
    font-size: 1.125rem;
    padding-top: 1.875rem;
    margin-bottom: 0.625rem;
  }
}
.l-wedding .l-footer__maps-title:before {
  position: absolute;
  content: "";
  width: 2rem;
  height: 1px;
  background-color: #241d14;
  top: 0;
  left: calc(50% - 1rem);
}
.l-wedding .l-footer__maps-title span {
  font-size: 1.6875rem;
}
@media (width <= 768px) {
  .l-wedding .l-footer__maps-title span {
    font-size: 1.375rem;
  }
}
.l-wedding .l-footer__maps-p {
  font-size: 0.875rem;
}
.l-wedding .l-footer__maps-map {
  width: 50%;
  height: 40rem;
}
@media (width <= 768px) {
  .l-wedding .l-footer__maps-map {
    width: 100%;
    height: 16.5rem;
    order: 1;
  }
}
.l-wedding .l-footer__nav {
  background-color: #c1b79d;
  text-align: center;
  letter-spacing: 0.02em;
  padding: 6.25rem 0 7.5rem;
}
@media (width <= 768px) {
  .l-wedding .l-footer__nav {
    padding: 5rem 0;
  }
}
.l-wedding .l-footer__nav-p {
  font-size: 0.9375rem;
  margin-bottom: -0.625rem;
}
@media (width <= 768px) {
  .l-wedding .l-footer__nav-p {
    font-size: 0.8125rem;
    letter-spacing: 0.04em;
    line-height: 1.3076923077;
    margin-bottom: 0.625rem;
  }
}
.l-wedding .l-footer__nav-title {
  font-size: 3.375rem;
  margin-bottom: 1.875rem;
}
@media (width <= 768px) {
  .l-wedding .l-footer__nav-title {
    font-size: 3.0625rem;
    line-height: 0.9387755102;
    margin-bottom: 2.5rem;
  }
}
.l-wedding .l-footer__nav-list {
  display: flex;
  justify-content: center;
  gap: 4.5rem;
  margin-bottom: 4rem;
}
@media (width <= 768px) {
  .l-wedding .l-footer__nav-list {
    flex-wrap: wrap;
    gap: 1.625rem 0;
    padding: 0 1.75rem;
    margin-bottom: 3.125rem;
  }
}
@media (width <= 768px) {
  .l-wedding .l-footer__nav-item {
    width: 50%;
  }
}
.l-wedding .l-footer__nav-link {
  color: #fff;
  font-size: 0.75rem;
  letter-spacing: 0.04em;
  line-height: 1;
}
.l-wedding .l-footer__nav-link span {
  font-size: 1.3125rem;
  display: block;
}
.l-wedding .l-footer__bnrs {
  display: flex;
  justify-content: center;
  gap: 1rem;
  max-width: 80rem;
  margin: 0 auto;
}
@media (width <= 768px) {
  .l-wedding .l-footer__bnrs {
    flex-wrap: wrap;
    padding: 0 1.25rem;
  }
}
.l-wedding .l-footer__others {
  background-color: #241d14;
  padding: 6.25rem 0;
}
@media (width <= 768px) {
  .l-wedding .l-footer__others {
    padding: 5rem 1.25rem;
  }
}
.l-wedding .l-footer__others-link {
  color: #fff;
}
.l-wedding .l-footer__others-title {
  font-size: 1.5rem;
  letter-spacing: 0.04em;
  font-weight: 500;
  text-align: center;
  margin-bottom: 1.875rem;
}
@media (width <= 768px) {
  .l-wedding .l-footer__others-title {
    font-size: 1.3125rem;
    margin-bottom: 1.5625rem;
  }
}
.l-wedding .l-footer__others-nav {
  height: 16.25rem;
}
@media (width <= 768px) {
  .l-wedding .l-footer__others-nav {
    height: auto;
  }
}
.l-wedding .l-footer__others-list {
  height: 100%;
  width: 78.125rem;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  gap: 1.25rem 4.375rem;
}
@media (width <= 768px) {
  .l-wedding .l-footer__others-list {
    width: 100%;
    height: auto;
    gap: 0.625rem 0;
  }
}
.l-wedding .l-footer__others-item {
  position: relative;
  padding-left: 4.0625rem;
  flex-shrink: 1;
  font-size: 0.9375rem;
}
@media (width <= 768px) {
  .l-wedding .l-footer__others-item {
    flex-direction: inherit;
    font-size: 0.875rem;
    line-height: 1.8714285714;
  }
}
.l-wedding .l-footer__others-place {
  width: 4.0625rem;
  position: absolute;
  top: 0;
  left: 0;
}
.l-wedding .l-footer__bottom {
  background-color: #241d14;
}
@media (width <= 768px) {
  .l-wedding .l-footer__bottom {
    padding: 0 1.25rem;
  }
}
.l-wedding .l-footer__bottom .c-inner {
  padding: 0.9375rem 0 10rem;
  border-top: 1px solid #fff;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (width <= 768px) {
  .l-wedding .l-footer__bottom .c-inner {
    justify-content: center;
    padding-bottom: 3.75rem;
  }
}
.l-wedding .l-footer__bottom-list {
  display: flex;
  gap: 2.5rem;
}
@media (width <= 768px) {
  .l-wedding .l-footer__bottom-list {
    display: none;
  }
}
.l-wedding .l-footer__bottom-link {
  color: #fff;
  font-size: 0.875rem;
  letter-spacing: 0;
}
.l-wedding .l-footer__copyrights {
  font-size: 0.8125rem;
  letter-spacing: 0;
}
@media (width <= 768px) {
  .l-wedding .l-footer__copyrights {
    font-size: 0.8125rem;
    letter-spacing: 0;
  }
}

.c-textLink {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  display: inline-block;
  justify-content: space-between;
}

@media (hover: hover) and (pointer: fine) {
  @media not all and (max-width: 768px) {
    .c-textLink:hover .c-textLink__icon,
    .c-textLink:hover svg {
      -webkit-animation: MOVE_ARROW 0.5s cubic-bezier(0.11, 0, 0.5, 0) forwards;
      animation: MOVE_ARROW 0.5s cubic-bezier(0.11, 0, 0.5, 0) forwards;
    }
  }
}
.c-textLink__inner {
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
}

.c-textLink__text {
  display: block;
  font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
  font-weight: 500;
  letter-spacing: 0.035rem;
  line-height: 1.75;
}

@media not all and (max-width: 768px) {
  .c-textLink__text {
    font-size: 0.875rem;
  }
}
@media screen and (max-width: 768px) {
  .c-textLink__text {
    font-size: 0.875rem;
  }
}
.c-textLink__icon {
  display: block;
  height: 0.75rem;
  margin-left: 0.5rem;
  overflow: hidden;
  width: 0.75rem;
  clip-path: polygon(0 0, 100% 50%, 0 100%, 10% 50%);
  background: #9e7d42;
}

.c-textLink__icon svg {
  fill: #9e7e3f;
  height: 100%;
  width: 100%;
}

.c-textLink--primary .c-textLink__text {
  color: #1c1c1c;
}

.c-textLink--secondary .c-textLink__text {
  color: #fff;
}

.c-textLink--underline {
  overflow: hidden;
  position: relative;
}

@media not all and (max-width: 768px) {
  .c-textLink--underline {
    padding: 0 0.5rem 0.25rem 0;
  }
}
@media screen and (max-width: 768px) {
  .c-textLink--underline {
    padding: 0 0.5rem 0.25rem 0;
  }
}
.c-textLink--underline:after,
.c-textLink--underline:before {
  background-color: #d8cbb2;
  bottom: 0;
  content: "";
  display: block;
  height: 1px;
  left: 0;
  position: absolute;
  width: 100%;
}

@media not all and (max-width: 768px) {
  .c-textLink--underline:after,
  .c-textLink--underline:before {
    -webkit-transition: all 0.1s cubic-bezier(0.11, 0, 0.5, 0);
    transition: all 0.1s cubic-bezier(0.11, 0, 0.5, 0);
  }
  .c-textLink--underline:after {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}
@media (hover: hover) and (pointer: fine) {
  @media not all and (max-width: 768px) {
    .c-textLink--underline:hover:before {
      -webkit-transform: translateX(100%);
      transform: translateX(100%);
      -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.11, 0, 0.5, 0);
      transition: -webkit-transform 0.3s cubic-bezier(0.11, 0, 0.5, 0);
      transition: transform 0.3s cubic-bezier(0.11, 0, 0.5, 0);
      transition: transform 0.3s cubic-bezier(0.11, 0, 0.5, 0), -webkit-transform 0.3s cubic-bezier(0.11, 0, 0.5, 0);
    }
    .c-textLink--underline:hover:after {
      -webkit-transform: translateX(0);
      transform: translateX(0);
      -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.11, 0, 0.5, 0) 0.2s;
      transition: -webkit-transform 0.3s cubic-bezier(0.11, 0, 0.5, 0) 0.2s;
      transition: transform 0.3s cubic-bezier(0.11, 0, 0.5, 0) 0.2s;
      transition: transform 0.3s cubic-bezier(0.11, 0, 0.5, 0) 0.2s, -webkit-transform 0.3s cubic-bezier(0.11, 0, 0.5, 0) 0.2s;
    }
  }
}
.c-textLink--underline svg {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

.c-textLink--underline .c-textLink__text {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

.c-textLink--underline .c-textLink__icon {
  margin: 0 0.5rem 0 0;
}

.c-textLink--underline .c-textLink__icon svg {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

.c-textLink--down .c-textLink__icon svg {
  display: block;
  rotate: 90deg;
}

.c-textLink--back .c-textLink__icon {
  -webkit-transform: scaleX(-1);
  transform: scaleX(-1);
}

@media not all and (max-width: 768px) {
  .c-textLink--back.c-textLink--underline:after {
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }
}
@media (hover: hover) and (pointer: fine) {
  @media not all and (max-width: 768px) {
    .c-textLink--back.c-textLink--underline:hover:before {
      -webkit-transform: translateX(-100%);
      transform: translateX(-100%);
    }
    .c-textLink--back.c-textLink--underline:hover:after {
      -webkit-transform: translateX(0);
      transform: translateX(0);
    }
  }
}
.p-index-mv__reservation {
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  align-items: center;
  background-color: rgba(28, 28, 28, 0.8);
  border-radius: 0.125rem;
  bottom: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  left: 1.5rem;
  padding: 0.5rem;
  position: absolute;
  z-index: 9;
}
@media (width <= 768px) {
  .p-index-mv__reservation {
    display: none;
  }
}

.p-reservation__label {
  background-color: #9e7e3f;
  border-radius: 0.125rem;
  color: #fff;
  font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 2.7rem;
  text-align: center;
  top: -3.5rem;
  width: 15.6rem;
}

.p-reservation__label,
.p-reservation__label:after {
  left: 0;
  margin-inline: auto;
  position: absolute;
  right: 0;
}

.p-reservation__label:after {
  border-color: #9e7e3f transparent transparent;
  border-style: solid;
  border-width: 0.5rem 0.6rem 0;
  bottom: -0.6rem;
  content: "";
  display: block;
  height: 0;
  width: 0;
}

.p-index-appeal__bg {
  display: flow-root;
  margin-inline: auto;
  position: relative;
}

@media not all and (max-width: 768px) {
  .p-index-appeal__bg {
    -webkit-clip-path: polygon(15% 0, 85% 0, 85% 100%, 15% 100%);
    clip-path: polygon(15% 0, 85% 0, 85% 100%, 15% 100%);
    height: 52.75rem;
    width: 100%;
  }
  .p-index-appeal__bg:before {
    background: no-repeat 50% 50%/cover;
    background-attachment: fixed;
    background-image: url(../images/home/appeal_bg.jpg);
    content: " ";
    display: block;
    height: 100%;
    inset: 0;
    position: fixed;
    width: 100%;
    z-index: -1;
  }
  .p-index-appeal__bg:after {
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#161616));
    background: linear-gradient(transparent, #161616);
    bottom: 0;
    content: "";
    display: block;
    height: 25.5625rem;
    left: 0;
    position: absolute;
    width: 100%;
  }
  .p-index-appeal__filter {
    background: #161616;
    height: 100%;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1;
  }
}
@media screen and (max-width: 768px) {
  .p-index-appeal__filter {
    display: none;
  }
  .p-index-appeal__box {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: no-repeat 0 50%/cover;
    background-image: url(../images/home/appeal_bg_sp.jpg);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 11.6875rem;
    padding: 0 1.5rem;
    position: relative;
  }
  .p-index-appeal__box:after {
    background-color: hsla(0, 0%, 9%, 0.8);
    content: "";
    display: block;
    height: 100%;
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1;
  }
}
.p-index-appeal__title {
  color: #fff;
}

@media not all and (max-width: 768px) {
  .p-index-appeal__title {
    font-size: 1.25rem;
    letter-spacing: 0.1875rem;
    line-height: 1.6;
    margin-bottom: 5.1875rem;
  }
}
@media screen and (max-width: 768px) {
  .p-index-appeal__title {
    margin-right: -0.625rem;
    font-size: 1rem;
    letter-spacing: 0;
    line-height: 1.7;
    position: relative;
    z-index: 2;
  }
}
@media not all and (max-width: 768px) {
  .p-index-appeal__inner {
    left: 50%;
    max-width: 75rem;
    padding-bottom: 6.5625rem;
    position: absolute;
    top: 8.75rem;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 83.3333333333vw;
    z-index: 2;
  }
}
.p-index-appeal__nav {
  position: relative;
}

@media not all and (max-width: 768px) {
  .p-index-appeal__navList {
    border-top: 1px solid hsla(0, 0%, 100%, 0.05);
  }
  .p-index-appeal__navItem {
    border-bottom: 1px solid hsla(0, 0%, 100%, 0.05);
  }
}
@media screen and (max-width: 768px) {
  .p-index-appeal__navItem {
    background: no-repeat 0 50%/cover;
    height: 16.25rem;
    padding: 3rem 1rem 0;
    position: relative;
  }
  .p-index-appeal__navItem:first-child {
    background-image: url(../images/home/appeal_01_sp.jpg);
  }
  .p-index-appeal__navItem:nth-child(2) {
    background-image: url(../images/home/appeal_02_sp.jpg);
  }
  .p-index-appeal__navItem:nth-child(3) {
    background-image: url(../images/home/appeal_03_sp.jpg);
  }
  .p-index-appeal__navItem:nth-child(4) {
    background-image: url(../images/home/appeal_04_sp.jpg);
  }
  .p-index-appeal__navItem:after {
    background-color: hsla(0, 0%, 9%, 0.8);
    content: "";
    display: block;
    height: 100%;
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1;
  }
}
@media not all and (max-width: 768px) {
  .p-index-appeal__navLink {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 2.0625rem 0;
    position: relative;
  }
}
@media screen and (max-width: 768px) {
  .p-index-appeal__navLink {
    display: block;
    position: relative;
    z-index: 2;
  }
}
.p-index-appeal__navLink:before {
  background: #9e7e3f;
  content: "";
}

@media not all and (max-width: 768px) {
  .p-index-appeal__navLink:before {
    display: block;
    height: 1px;
    margin-right: 1.875rem;
    -webkit-transition: all 0.4s cubic-bezier(0.11, 0, 0.5, 0) 0.1s;
    transition: all 0.4s cubic-bezier(0.11, 0, 0.5, 0) 0.1s;
    width: 0.625rem;
  }
}
@media screen and (max-width: 768px) {
  .p-index-appeal__navLink:before {
    display: inline-block;
    height: 1px;
    margin: 0 0.6875rem 0.6875rem 0;
    -webkit-transform: rotate(-26deg);
    transform: rotate(-26deg);
    width: 2rem;
  }
}
@media not all and (max-width: 768px) {
  .p-index-appeal__navLink.is-active:before {
    -webkit-transform: rotate(-26deg);
    transform: rotate(-26deg);
    -webkit-transition: all 0.4s cubic-bezier(0.11, 0, 0.5, 0);
    transition: all 0.4s cubic-bezier(0.11, 0, 0.5, 0);
    width: 3.0625rem;
  }
}
.p-index-appeal__navDiagonal {
  color: #9e7e3f;
}

@media not all and (max-width: 768px) {
  .p-index-appeal__navDiagonal {
    margin-right: 1.875rem;
  }
  .p-index-appeal__navDiagonal svg {
    height: 1.5625rem;
    width: 3.125rem;
  }
}
.p-index-appeal__navTitle {
  color: #fff;
}

@media not all and (max-width: 768px) {
  .p-index-appeal__navTitle {
    font-size: 2.125rem;
    line-height: 1.6;
    width: 20.125rem;
  }
}
@media screen and (max-width: 768px) {
  .p-index-appeal__navTitle {
    display: inline-block;
    font-size: 1.5rem;
    line-height: 1.5;
  }
}
@media not all and (max-width: 768px) {
  .p-index-appeal__navText {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: hsla(0, 0%, 100%, 0.5);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 0.875rem;
    height: 100%;
    left: 22.75rem;
    line-height: 1.6;
    position: absolute;
    top: 0;
    z-index: 3;
  }
}
@media screen and (max-width: 768px) {
  .p-index-appeal__navText {
    color: hsla(0, 0%, 100%, 0.75);
    display: block;
    font-size: 1rem;
    line-height: 1.7;
    margin-bottom: 0.375rem;
    margin-top: 1rem;
  }
  .p-index-appeal__navDetail {
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: flex-end;
    text-align: right;
  }
  .p-index-appeal__navDetail svg {
    fill: #9e7e3f;
    height: 1.5rem;
    margin-left: 0.5rem;
    width: 1.5rem;
  }
  .p-index-appeal__navDetailText {
    color: #fff;
    display: inline-block;
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 0.875rem;
    font-weight: 500;
    letter-spacing: 0.035rem;
    line-height: 1.75;
  }
}
.p-index-appeal__navImageList {
  overflow: hidden;
  pointer-events: none;
  position: absolute;
  z-index: 2;
}

@media not all and (max-width: 768px) {
  .p-index-appeal__navImageList {
    height: 37.6388888889vw;
    max-height: 3.3875rem;
    max-width: 2.44375rem;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 27.1527777778vw;
  }
}
@media screen and (max-width: 768px) {
  .p-index-appeal__navImageList {
    display: none;
  }
}
.p-index-appeal__navImageItem {
  bottom: 0;
  height: 100%;
  left: 0;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  -webkit-transition: opacity 0.4s cubic-bezier(0.11, 0, 0.5, 0) 0.1s;
  transition: opacity 0.4s cubic-bezier(0.11, 0, 0.5, 0) 0.1s;
  width: 100%;
  z-index: 1;
}

.p-index-appeal__navImageItem.is-active {
  opacity: 1;
  -webkit-transition: opacity 0.4s cubic-bezier(0.11, 0, 0.5, 0);
  transition: opacity 0.4s cubic-bezier(0.11, 0, 0.5, 0);
  z-index: 2;
}

.p-index-appeal__navImage {
  bottom: 0;
  left: 0;
  position: absolute;
}

@media not all and (max-width: 768px) {
  .p-index-appeal__navImage {
    height: 37.6388888889vw;
    max-height: 3.3875rem;
    max-width: 2.44375rem;
    width: 27.1527777778vw;
  }
}
.p-index-appeal__navImage img {
  height: 100%;
  width: 100%;
}

/***/
.l-cv {
  opacity: 0;
  pointer-events: none;
}

.l-cv {
  overflow: hidden;
  -webkit-transition: opacity 0.5s cubic-bezier(0.45, 0, 0.55, 1) 0.1s, width 0.1s cubic-bezier(0.45, 0, 0.55, 1);
  transition: opacity 0.5s cubic-bezier(0.45, 0, 0.55, 1) 0.1s, width 0.1s cubic-bezier(0.45, 0, 0.55, 1);
}

@media not all and (max-width: 768px) {
  .l-cv {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .l-cv {
    bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 3.75rem;
    left: 0;
    position: fixed;
    width: 11.875rem;
    z-index: 11;
  }
}
.l-cv.is-visible {
  opacity: 1;
  pointer-events: visible;
}

@media screen and (max-width: 768px) {
  .is-calender-open .l-cv {
    opacity: 0;
    pointer-events: none;
    -webkit-transition: none;
    transition: none;
  }
}
.is-menu-open .l-cv,
.is-menu-open .l-cv.is-visible {
  opacity: 0;
  pointer-events: none;
  -webkit-transition: none;
  transition: none;
  width: 0;
}

.l-cv__link {
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  align-items: center;
  background-color: #f2f2f2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  justify-content: center;
  width: 100%;
  border: none;
}

.l-cv__icon {
  height: 1.5rem;
  width: 1.5rem;
  display: flex;
}

.l-cv__icon svg {
  fill: #9e7e3f;
  height: 100%;
  width: 100%;
}

[aria-disabled=true] .l-cv__icon svg {
  fill: #1c1c1c;
}

.l-cv__text {
  color: #9e7e3f;
  font-size: 0.9375rem;
  font-style: normal;
  font-weight: 400;
  letter-spacing: -0.05em;
  line-height: 1.5rem;
  margin-left: 0.375rem;
}

[aria-disabled=true] .l-cv__text {
  color: #1c1c1c;
  font-size: 0.75rem;
  pointer-events: none;
}
/***/

@media not all and (max-width: 768px) {
  .l-menuSp {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .l-menuSp {
    bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 3.75rem;
    position: fixed;
    right: 0;
    -webkit-transition: opacity 0.5s cubic-bezier(0.45, 0, 0.55, 1) 0.1s;
    transition: opacity 0.5s cubic-bezier(0.45, 0, 0.55, 1) 0.1s;
    z-index: 1000;
  }
  .is-calender-open .l-menuSp {
    opacity: 0;
    pointer-events: none;
    -webkit-transition: none;
    transition: none;
  }
}
.l-menuSp__buttons {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  opacity: 0;
  order: 1;
  overflow: hidden;
  -webkit-transition: opacity 0.5s cubic-bezier(0.45, 0, 0.55, 1) 0.1s, width 0.1s cubic-bezier(0.45, 0, 0.55, 1);
  transition: opacity 0.5s cubic-bezier(0.45, 0, 0.55, 1) 0.1s, width 0.1s cubic-bezier(0.45, 0, 0.55, 1);
}

.l-menuSp__buttons.is-visible {
  opacity: 1;
  pointer-events: visible;
}

.is-calender-open .l-menuSp__buttons.is-visible {
  pointer-events: none;
}

.l-menuSp__reservation {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  background-color: #f2f2f2;
  display: none;
  justify-content: center;
  width: 10.9375rem;
}

.l-menuSp__reservation,
.l-menuSp__reservationInner {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.l-menuSp__reservationInner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-left: -0.125rem;
}

.l-menuSp__reservationInner svg {
  fill: #9e7e3f;
  height: 1.5rem;
  margin-right: 1px;
  width: 1.5625rem;
}

.l-menuSp__reservationText {
  color: #9e7e3f;
  font-size: 0.9375rem;
  letter-spacing: -0.046875rem;
}

.l-menuSp__search {
  background-color: #9e7e3f;
  color: #fff;
  height: 3.75rem;
  width: 8.75rem;
}

.l-menuSp__search,
.l-menuSp__searchBox {
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
}

.l-menuSp__searchBox {
  margin-bottom: 0.4375rem;
}

.l-menuSp__searchBox svg {
  fill: #fff;
  height: 1rem;
  margin-right: 1px;
  width: 1rem;
  transform: translateY(0.125rem);
}

.l-menuSp__searchText {
  display: block;
  font-size: 1rem;
  letter-spacing: 0.2rem;
  line-height: 1;
}

.l-menuSp__searchLabel {
  display: block;
  font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
  font-size: 0.625rem;
  font-weight: 500;
  letter-spacing: 0.0125rem;
  text-align: center;
}

.l-menuSp__menuButton {
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  align-items: center;
  background-color: #373633;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 3.75rem;
  justify-content: center;
  order: 2;
  -webkit-transition: background-color 0.8s cubic-bezier(0.83, 0, 0.17, 1);
  transition: background-color 0.8s cubic-bezier(0.83, 0, 0.17, 1);
  width: 3.75rem;
}

.l-menuSp__menuButton.is-open {
  background-color: #999;
}

.l-menuSp__menuButton.is-open + .l-menuSp__buttons {
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 0.5s cubic-bezier(0.45, 0, 0.55, 1) 0.2s, width 0.1s cubic-bezier(0.45, 0, 0.55, 1) 0.7s;
  transition: opacity 0.5s cubic-bezier(0.45, 0, 0.55, 1) 0.2s, width 0.1s cubic-bezier(0.45, 0, 0.55, 1) 0.7s;
  width: 0;
}

.reserve .l-menuSp__menuButton {
  display: none;
}

.l-menuSp__menuButtonContent span {
  background-color: #fff;
  display: block;
  height: 1px;
  -webkit-transition: all 0.3s cubic-bezier(0.45, 0, 0.55, 1);
  transition: all 0.3s cubic-bezier(0.45, 0, 0.55, 1);
  width: 1.75rem;
}

.l-menuSp__menuButtonContent span:first-child {
  margin-bottom: 0.3125rem;
}

.is-open .l-menuSp__menuButtonContent span:first-child {
  margin-bottom: -1px;
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg);
}

.is-open .l-menuSp__menuButtonContent span:last-child {
  -webkit-transform: rotate(-30deg);
  transform: rotate(-30deg);
}

.post-type-archive-activity .l-menuSp__reservation--activity,
.restaurant .l-menuSp__reservation--restaurant,
.single-activity .l-menuSp__reservation--activity {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media not all and (max-width: 768px) {
  .l-drawerSp {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .l-drawerSp {
    background-image: url(../images/common/drawer_bg.jpg);
    background-size: cover;
    height: 100lvh;
    left: 0;
    overflow-y: scroll;
    padding-bottom: env(safe-area-inset-bottom);
    pointer-events: none;
    position: fixed;
    top: 0;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
    -webkit-transition: -webkit-transform 1s cubic-bezier(0.83, 0, 0.17, 1);
    transition: -webkit-transform 1s cubic-bezier(0.83, 0, 0.17, 1);
    transition: transform 1s cubic-bezier(0.83, 0, 0.17, 1);
    transition: transform 1s cubic-bezier(0.83, 0, 0.17, 1), -webkit-transform 1s cubic-bezier(0.83, 0, 0.17, 1);
    width: 100%;
    z-index: 999;
  }
}
.l-drawerSp.is-open {
  pointer-events: visible;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.reserve .l-drawerSp {
  display: none;
}

.l-drawerSp__inner {
  padding: 1rem 1rem 5.625rem;
}

.l-drawerSp__content,
.l-drawerSp__content .l-drawerSp__access,
.l-drawerSp__content .l-drawerSp__button,
.l-drawerSp__content .l-drawerSp__sns,
.l-drawerSp__content .l-drawerSp__tel,
.l-drawerSp__content .l-nav__item {
  opacity: 0;
  -webkit-transform: translateX(-9.375rem);
  transform: translateX(-9.375rem);
  -webkit-transition: opacity 0.7s cubic-bezier(0.16, 1, 0.3, 1), -webkit-transform 0.1s cubic-bezier(0.16, 1, 0.3, 1) 0.7s;
  transition: opacity 0.7s cubic-bezier(0.16, 1, 0.3, 1), -webkit-transform 0.1s cubic-bezier(0.16, 1, 0.3, 1) 0.7s;
  transition: opacity 0.7s cubic-bezier(0.16, 1, 0.3, 1), transform 0.1s cubic-bezier(0.16, 1, 0.3, 1) 0.7s;
  transition: opacity 0.7s cubic-bezier(0.16, 1, 0.3, 1), transform 0.1s cubic-bezier(0.16, 1, 0.3, 1) 0.7s, -webkit-transform 0.1s cubic-bezier(0.16, 1, 0.3, 1) 0.7s;
}

.is-open .l-drawerSp__content {
  -webkit-transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 0.8s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.6s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 0.8s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.6s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 0.8s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.6s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 0.8s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.6s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.6s;
}

.is-open .l-drawerSp__content,
.is-open .l-drawerSp__content .l-nav__item {
  opacity: 1;
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

.is-open .l-drawerSp__content .l-nav__item:first-child {
  -webkit-transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 0.85s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.65s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 0.85s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.65s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 0.85s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.65s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 0.85s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.65s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.65s;
}

.is-open .l-drawerSp__content .l-nav__item:nth-child(2) {
  -webkit-transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 0.9s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.7s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 0.9s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.7s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 0.9s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.7s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 0.9s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.7s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.7s;
}

.is-open .l-drawerSp__content .l-nav__item:nth-child(3) {
  -webkit-transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 0.95s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.75s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 0.95s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.75s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 0.95s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.75s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 0.95s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.75s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.75s;
}

.is-open .l-drawerSp__content .l-nav__item:nth-child(4) {
  -webkit-transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.8s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.8s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.8s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.8s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.8s;
}

.is-open .l-drawerSp__content .l-nav__item:nth-child(5) {
  -webkit-transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.05s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.85s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.05s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.85s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.05s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.85s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.05s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.85s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.85s;
}

.is-open .l-drawerSp__content .l-nav__item:nth-child(6) {
  -webkit-transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.1s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.9s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.1s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.9s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.1s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.9s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.1s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.9s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.9s;
}

.is-open .l-drawerSp__content .l-nav__item:nth-child(7) {
  -webkit-transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.15s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.95s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.15s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.95s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.15s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.95s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.15s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.95s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.95s;
}

.is-open .l-drawerSp__content .l-nav__item:nth-child(8) {
  -webkit-transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.2s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.2s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.2s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.2s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1s;
}

.is-open .l-drawerSp__content .l-nav__item:nth-child(9) {
  -webkit-transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.25s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.05s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.25s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.05s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.25s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.05s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.25s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.05s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.05s;
}

.is-open .l-drawerSp__content .l-drawerSp__button {
  opacity: 1;
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

.is-open .l-drawerSp__content .l-drawerSp__button:first-child {
  -webkit-transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.3s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.1s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.3s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.1s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.3s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.1s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.3s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.1s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.1s;
}

.is-open .l-drawerSp__content .l-drawerSp__button:nth-child(2) {
  -webkit-transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.35s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.15s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.35s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.15s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.35s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.15s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.35s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.15s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.15s;
}

.is-open .l-drawerSp__content .l-drawerSp__button:nth-child(3) {
  -webkit-transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.4s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.2s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.4s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.2s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.4s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.2s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.4s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.2s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.2s;
}

.is-open .l-drawerSp__content .l-drawerSp__access,
.is-open .l-drawerSp__content .l-drawerSp__tel {
  opacity: 1;
  -webkit-transform: translateX(0);
  transform: translateX(0);
  -webkit-transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.45s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.25s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.45s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.25s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.45s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.25s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.45s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.25s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.25s;
}

.is-open .l-drawerSp__content .l-drawerSp__sns {
  opacity: 1;
  -webkit-transform: translateX(0);
  transform: translateX(0);
  -webkit-transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.5s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.3s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.5s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.3s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.5s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.3s;
  transition: opacity 3.5s cubic-bezier(0.16, 1, 0.3, 1) 1.5s, transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.3s, -webkit-transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 1.3s;
}

.l-drawerSp__header {
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
  margin-bottom: 3.75rem;
}

.l-drawerSp__header svg {
  fill: #fff;
  display: block;
  height: 2.25rem;
  width: 9.375rem;
}

.l-drawerSp__headerLink {
  display: block;
}

.l-drawerSp__headerText {
  color: #fff;
  font-size: 0.875rem;
  letter-spacing: 0.035rem;
  line-height: 1.5;
  text-align: right;
}

.l-drawerSp__buttons,
.l-drawerSp__nav,
.l-drawerSp__reservation {
  margin-bottom: 2.5rem;
}

.l-drawerSp__button {
  text-align: center;
}

.l-drawerSp__button:not(:last-child) {
  margin-bottom: 1rem;
}

.l-drawerSp__button .c-button--tertiary_04 {
  width: 18.75rem;
  padding: 0.9375rem 1rem 0.9375rem 1.125rem;
}
.l-drawerSp__button .c-button--tertiary_04 small {
  font-size: 0.6875rem;
}

.l-drawerSp__tel {
  color: #fff;
  margin-bottom: 2rem;
  padding: 0 1.5rem;
}

.l-drawerSp__telLabel {
  margin-bottom: 1.0625rem;
}

@media not all and (max-width: 768px) {
  .l-drawerSp__telLabel {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 0.875rem;
    font-weight: 400;
    letter-spacing: 0.025rem;
    line-height: 1.75;
  }
}
@media screen and (max-width: 768px) {
  .l-drawerSp__telLabel {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 0.875rem;
    font-weight: 400;
    letter-spacing: 0.025rem;
    line-height: 1.75;
  }
}
.l-drawerSp__telBox {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.l-drawerSp__telBoxLabel {
  display: block;
  font-size: 1rem;
  margin-right: 1rem;
}

.l-drawerSp__telBoxNumber {
  border-bottom: 1px solid #fff;
  display: block;
  font-size: 1.125rem;
  margin-right: 1rem;
  padding-bottom: 1px;
  color: #fff;
}

.l-drawerSp__telBoxTime {
  display: block;
  font-size: 0.875rem;
}

.l-drawerSp__access {
  color: #fff;
  margin-bottom: 3.75rem;
  padding: 0 1.5rem;
}

.l-drawerSp__accessLabel {
  margin-bottom: 0.5rem;
}

@media not all and (max-width: 768px) {
  .l-drawerSp__accessLabel {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 0.875rem;
    font-weight: 400;
    letter-spacing: 0.025rem;
    line-height: 1.75;
  }
}
@media screen and (max-width: 768px) {
  .l-drawerSp__accessLabel {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 0.875rem;
    font-weight: 400;
    letter-spacing: 0.025rem;
    line-height: 1.75;
  }
}
@media not all and (max-width: 768px) {
  .l-drawerSp__accessAdress {
    font-family: Zen Old Mincho, serif;
    font-size: 1.25rem;
    font-weight: 400;
    letter-spacing: 0.025rem;
    line-height: 1.5;
  }
}
@media screen and (max-width: 768px) {
  .l-drawerSp__accessAdress {
    font-family: Zen Old Mincho, serif;
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.025rem;
    line-height: 1.7;
  }
}
.l-drawerSp__sns .p-sns {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.l-drawerSp__sns .p-sns svg {
  height: 1.5rem;
  width: remrem(17);
}

.p-reservation {
  position: relative;
}

@media screen and (max-width: 768px) {
  .p-reservation {
    background-color: #fff;
    border-radius: 0.125rem;
    padding: 0.625rem 0.5rem;
    width: 100%;
  }
}
.p-reservation__label {
  background-color: #9e7e3f;
  border-radius: 0.125rem;
  color: #fff;
  font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
  font-size: 0.8125rem;
  letter-spacing: 0;
  font-weight: 500;
  line-height: 1.6875rem;
  text-align: center;
  top: -2.1875rem;
  width: 9.75rem;
}

.p-reservation__label,
.p-reservation__label:after {
  left: 0;
  margin-inline: auto;
  position: absolute;
  right: 0;
}

.p-reservation__label:after {
  border-color: #9e7e3f transparent transparent;
  border-style: solid;
  border-width: 0.5rem 0.375rem 0;
  bottom: -0.375rem;
  content: "";
  display: block;
  height: 0;
  width: 0;
}

.p-reservation__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
}

@media not all and (max-width: 768px) {
  .p-reservation__box {
    border-radius: 0.125rem;
    height: 2.6875rem;
  }
}
@media screen and (max-width: 768px) {
  .p-reservation__box {
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    align-items: center;
    border-radius: 0.125rem;
    height: 2.5rem;
    justify-content: space-between;
    width: 100%;
  }
}
.p-reservation__check {
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  align-items: center;
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
  font-weight: 500;
  justify-content: space-between;
}

@media not all and (max-width: 768px) {
  .p-reservation__check {
    padding: 0.375rem 1rem;
  }
}
@media screen and (max-width: 768px) {
  .p-reservation__check {
    display: contents;
  }
}
@media not all and (max-width: 768px) {
  .p-reservation__checkLabel {
    font-size: 0.75rem;
    letter-spacing: 0.075rem;
    margin-right: 0.5rem;
    color: #241d14;
  }
}
@media screen and (max-width: 768px) {
  .p-reservation__checkLabel {
    font-size: 0.75rem;
    letter-spacing: 0.075rem;
    color: #241d14;
  }
}
.p-reservation__checkDate {
  display: block;
}

@media not all and (max-width: 768px) {
  .p-reservation__checkDate {
    background-color: #f8f4ed;
    border-radius: 0.125rem;
    font-size: 1rem;
    letter-spacing: 0.05rem;
    line-height: 1.9375rem;
    padding: 0 0.625rem;
    -webkit-transition: opacity 0.3s cubic-bezier(0.11, 0, 0.5, 0);
    transition: opacity 0.3s cubic-bezier(0.11, 0, 0.5, 0);
  }
}
@media screen and (max-width: 768px) {
  .p-reservation__checkDate {
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    align-items: center;
    background-color: #f8f4ed;
    border-radius: 0.125rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 2.5rem;
    justify-content: center;
    width: 9.6875rem;
  }
  @media not all and (max-width: 768px) {
    .p-reservation__checkDate {
      font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
      font-size: 0.875rem;
      font-weight: 400;
      letter-spacing: 0.025rem;
      line-height: 1.75;
    }
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .p-reservation__checkDate {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 0.875rem;
    font-weight: 400;
    letter-spacing: 0.025rem;
    line-height: 1.75;
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-reservation__checkDate:hover {
    opacity: 0.7;
  }
}
.p-reservation__search {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #9e7e3f;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media not all and (max-width: 768px) {
  .p-reservation__search {
    padding: 0 1rem;
    -webkit-transition: background-color 0.3s cubic-bezier(0.11, 0, 0.5, 0);
    transition: background-color 0.3s cubic-bezier(0.11, 0, 0.5, 0);
  }
}
@media screen and (max-width: 768px) {
  .p-reservation__search {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    border-radius: 0.125rem;
    height: 2.5rem;
    justify-content: center;
    width: 5.75rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-reservation__search:hover {
    background-color: rgba(158, 126, 63, 0.8);
  }
}
.p-reservation__searchIcon {
  display: block;
  line-height: 1.3;
}

.p-reservation__searchIcon svg {
  fill: #fff;
  height: 1rem;
  margin-top: 0.125rem;
  width: 1rem;
}

.p-reservation__searchText {
  color: #fff;
  display: block;
  font-size: 0.875rem;
}

@media not all and (max-width: 768px) {
  .p-reservation__searchText {
    margin-left: 0.125rem;
  }
}
@media screen and (max-width: 768px) {
  .p-reservation__searchText {
    letter-spacing: 0.035rem;
    margin-left: 0.1875rem;
  }
}
@media not all and (max-width: 768px) {
  .p-reservation--large {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
@media screen and (max-width: 768px) {
  .p-reservation--large {
    background: none;
    padding: 0;
    text-align: center;
  }
}
.p-reservation--large .p-reservation__label {
  position: relative;
}

@media not all and (max-width: 768px) {
  .p-reservation--large .p-reservation__label {
    line-height: 2.1875rem;
    margin-right: 1.375rem;
    top: 0;
  }
}
@media screen and (max-width: 768px) {
  .p-reservation--large .p-reservation__label {
    border-radius: 0.125rem;
    display: inline-block;
    letter-spacing: 0.035rem;
    line-height: 2.0625rem;
    margin-bottom: 1rem;
    top: 0;
    width: 10.0625rem;
  }
}
.p-reservation--large .p-reservation__label:after {
  left: auto;
}

@media not all and (max-width: 768px) {
  .p-reservation--large .p-reservation__label:after {
    border-color: transparent transparent transparent #9e7e3f;
    border-width: 0.3125rem 0 0.3125rem 0.4375rem;
    bottom: 0.75rem;
    right: -0.375rem;
  }
}
@media screen and (max-width: 768px) {
  .p-reservation--large .p-reservation__label:after {
    border-width: 0.5rem 0.375rem 0;
    bottom: -0.375rem;
    left: 0;
    right: 0;
  }
}
@media not all and (max-width: 768px) {
  .p-reservation--large .p-reservation__box {
    border: 1px solid #9e7e3f;
    height: 3.75rem;
  }
}
@media screen and (max-width: 768px) {
  .p-reservation--large .p-reservation__box {
    background-color: #fff;
    display: block;
    height: auto;
    margin-inline: auto;
    padding: 1rem 0;
    width: 18.75rem;
  }
}
@media not all and (max-width: 768px) {
  .p-reservation--large .p-reservation__check {
    padding: 0.625rem 1.5rem;
    width: 21.1875rem;
  }
}
@media screen and (max-width: 768px) {
  .p-reservation--large .p-reservation__check {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 auto 0.5rem;
    padding: 0;
    width: 16.75rem;
  }
}
@media not all and (max-width: 768px) {
  .p-reservation--large .p-reservation__checkLabel {
    font-size: 0.875rem;
    margin-right: 0;
  }
}
@media screen and (max-width: 768px) {
  @media not all and (max-width: 768px) {
    .p-reservation--large .p-reservation__checkLabel {
      font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
      font-size: 0.75rem;
      font-weight: 400;
      letter-spacing: 0.025rem;
      line-height: 1.7;
    }
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .p-reservation--large .p-reservation__checkLabel {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 0.75rem;
    font-weight: 400;
    letter-spacing: 0.025rem;
    line-height: 1.7;
  }
}
@media not all and (max-width: 768px) {
  .p-reservation--large .p-reservation__checkDate {
    font-size: 1rem;
    line-height: 2.5rem;
    padding: 0 1rem;
  }
}
@media screen and (max-width: 768px) {
  .p-reservation--large .p-reservation__checkDate {
    height: 2.75rem;
    width: 11.75rem;
  }
  @media not all and (max-width: 768px) {
    .p-reservation--large .p-reservation__checkDate {
      font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
      font-size: 1rem;
      font-weight: 400;
      letter-spacing: 0.025rem;
      line-height: 1.7;
    }
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .p-reservation--large .p-reservation__checkDate {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.025rem;
    line-height: 1.7;
  }
}
@media not all and (max-width: 768px) {
  .p-reservation--large .p-reservation__search {
    padding: 0 2rem;
    color: #fff;
  }
}
@media screen and (max-width: 768px) {
  .p-reservation--large .p-reservation__search {
    color: #fff;
    border-radius: 0.125rem;
    height: 3.1875rem;
    margin-inline: auto;
    padding: 0.75rem 0;
    width: 16.75rem;
  }
}
@media not all and (max-width: 768px) {
  .p-reservation--large .p-reservation__searchIcon svg {
    height: 1.125rem;
    width: 1.125rem;
  }
  .p-reservation--large .p-reservation__searchText {
    font-size: 1rem;
  }
}
@media screen and (max-width: 768px) {
  @media not all and (max-width: 768px) {
    .p-reservation--large .p-reservation__searchText {
      font-family: Zen Old Mincho, serif;
      font-size: 1.25rem;
      font-weight: 400;
      letter-spacing: 0.025rem;
      line-height: 1.5;
    }
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .p-reservation--large .p-reservation__searchText {
    font-family: Zen Old Mincho, serif;
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.025rem;
    line-height: 1.7;
  }
}
.c-button {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  display: inline-block;
  justify-content: space-between;
}

@media not all and (max-width: 768px) {
  .c-button {
    border-radius: 0.125rem;
    min-width: 15rem;
    padding: 0.9375rem 1.5rem 0.9375rem 2rem;
    -webkit-transition: background-color 0.3s cubic-bezier(0.11, 0, 0.5, 0);
    transition: background-color 0.3s cubic-bezier(0.11, 0, 0.5, 0);
  }
}
@media screen and (max-width: 768px) {
  .c-button {
    border-radius: 0.125rem;
    min-width: 18rem;
    padding: 0.9375rem 1rem 0.9375rem 1.5rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  @media not all and (max-width: 768px) {
    .c-button:hover .c-button__icon svg {
      -webkit-animation: MOVE_ARROW 0.5s cubic-bezier(0.11, 0, 0.5, 0) forwards;
      animation: MOVE_ARROW 0.5s cubic-bezier(0.11, 0, 0.5, 0) forwards;
    }
  }
}
.c-button__inner {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.c-button__inner,
.c-button__text {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.c-button__text {
  font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
  font-weight: 500;
  letter-spacing: 0.035rem;
  line-height: 1.2;
}

@media not all and (max-width: 768px) {
  .c-button__text {
    font-size: 0.875rem;
  }
}
@media screen and (max-width: 768px) {
  .c-button__text {
    font-size: 0.875rem;
  }
}
.c-button__text small {
  letter-spacing: 0.009375rem;
}

@media not all and (max-width: 768px) {
  .c-button__text small {
    font-size: 0.75rem;
    margin-left: 0.25rem;
  }
}
@media screen and (max-width: 768px) {
  .c-button__text small {
    font-size: 0.75rem;
    margin-left: 0.5rem;
  }
}
.c-button__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 1.5rem;
  width: 1.5rem;
}

@media not all and (max-width: 768px) {
  .c-button__icon {
    margin-left: 2rem;
    overflow: hidden;
  }
}
@media screen and (max-width: 768px) {
  .c-button__icon {
    margin-left: 1rem;
  }
}
.c-button__icon svg {
  height: 100%;
  width: 100%;
}

.c-button--primary {
  background-color: #9e7e3f;
}

@media not all and (max-width: 768px) {
  .c-button--primary {
    border: 1px solid hsla(39, 33%, 77%, 0.3);
  }
}
@media screen and (max-width: 768px) {
  .c-button--primary {
    border: 1px solid hsla(39, 33%, 77%, 0.3);
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-button--primary:hover {
    background-color: rgba(158, 126, 63, 0.8);
  }
}
.c-button--primary .c-button__icon svg {
  fill: #fff;
}

.c-button--primary .c-button__text {
  color: #fff;
}

.c-button--secondary {
  background-color: #373633;
}

@media not all and (max-width: 768px) {
  .c-button--secondary {
    border: 1px solid hsla(39, 33%, 77%, 0.3);
  }
}
@media screen and (max-width: 768px) {
  .c-button--secondary {
    border: 1px solid hsla(39, 33%, 77%, 0.3);
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-button--secondary:hover {
    background-color: rgba(55, 54, 51, 0.8);
  }
}
.c-button--secondary .c-button__icon svg {
  fill: #fff;
}

.c-button--secondary .c-button__text {
  color: #fff;
}

.c-button--tertiary_01 {
  background-color: hsla(0, 0%, 100%, 0.6);
}

@media not all and (max-width: 768px) {
  .c-button--tertiary_01 {
    border: 1px solid rgba(158, 126, 63, 0.3);
  }
}
@media screen and (max-width: 768px) {
  .c-button--tertiary_01 {
    border: 1px solid rgba(158, 126, 63, 0.3);
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-button--tertiary_01:hover {
    background-color: hsla(0, 0%, 100%, 0.48);
  }
}
.c-button--tertiary_01 .c-button__icon svg {
  fill: #9e7e3f;
}

.c-button--tertiary_01 .c-button__text {
  color: #161616;
}

@media not all and (max-width: 768px) {
  .c-button--tertiary_02 {
    border: 1px solid #d8cbb2;
  }
}
@media screen and (max-width: 768px) {
  .c-button--tertiary_02 {
    border: 1px solid #d8cbb2;
  }
}
.c-button--tertiary_02 .c-button__icon svg {
  fill: #9e7e3f;
}

.c-button--tertiary_02 .c-button__text {
  color: #fff;
}

@media not all and (max-width: 768px) {
  .c-button--tertiary_03 {
    border: 1px solid rgba(158, 126, 63, 0.3);
  }
}
@media screen and (max-width: 768px) {
  .c-button--tertiary_03 {
    border: 1px solid rgba(158, 126, 63, 0.3);
  }
}
.c-button--tertiary_03 .c-button__icon svg {
  fill: #9e7e3f;
}

.c-button--tertiary_03 .c-button__text {
  color: #161616;
}

@media not all and (max-width: 768px) {
  .c-button--tertiary_03 .c-button__text {
    font-size: 1rem;
    letter-spacing: 0.04rem;
  }
}
.c-button--tertiary_04 {
  background-color: #fff;
}

@media not all and (max-width: 768px) {
  .c-button--tertiary_04 {
    border: 1px solid #9e7e3f;
    padding: 1.1875rem 1rem 1.1875rem 1.5rem;
  }
}
@media screen and (max-width: 768px) {
  .c-button--tertiary_04 {
    border: 1px solid #9e7e3f;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-button--tertiary_04:hover {
    background-color: hsla(0, 0%, 100%, 0.8);
  }
}
.c-button--tertiary_04 .c-button__icon {
  margin-left: 0;
}

.c-button--tertiary_04 .c-button__icon svg {
  fill: #9e7e3f;
}

.c-button--tertiary_04 .c-button__text {
  color: #9e7e3f;
  letter-spacing: 0.04rem;
}

@media not all and (max-width: 768px) {
  .c-button--tertiary_04 .c-button__text {
    font-size: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .c-button--tertiary_04 .c-button__text {
    font-size: 1rem;
  }
}
.c-button--tertiary_05 {
  border: 1px solid rgba(158, 126, 63, 0.4);
}

.c-button--tertiary_05 .c-button__icon svg {
  fill: #9e7e3f;
}

.c-button--tertiary_05 .c-button__text {
  color: #fff;
}

@media not all and (max-width: 768px) {
  .c-button--tertiary_05 .c-button__text {
    font-size: 1rem;
    letter-spacing: 0.04rem;
  }
}
.c-button[aria-disabled=true] {
  background-color: #c4c4c4;
  pointer-events: none;
}

.c-button--anchor .c-button__icon {
  rotate: 90deg;
}

@media not all and (max-width: 768px) {
  .l-footer__buttons {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
@media screen and (max-width: 768px) {
  .l-footer__button {
    text-align: center;
  }
  .l-footer__button:not(:last-child) {
    margin-bottom: 1rem;
  }
}
@media not all and (max-width: 768px) {
  .l-footer__button .c-button--tertiary_04 {
    width: 19rem;
  }
}
@media screen and (max-width: 768px) {
  .l-footer__button .c-button--tertiary_04 {
    width: 18.75rem;
  }
}
@media not all and (max-width: 768px) {
  .l-nav {
    right: 1.5rem;
    top: 1.5rem;
  }
  .l-nav,
  .l-nav__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .l-nav__list {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-column-gap: min(1.6666666667vw, 1.5rem);
    -moz-column-gap: min(1.6666666667vw, 1.5rem);
    column-gap: min(1.6666666667vw, 1.5rem);
  }
}
@media screen and (max-width: 768px) {
  .l-nav__item {
    border-top: 1px solid hsla(39, 33%, 77%, 0.3);
  }
}
@media not all and (max-width: 768px) {
  .l-nav__item:nth-last-child(2) {
    border-left: 1px solid #9e7e3f;
    padding-left: min(1.6666666667vw, 1.5rem);
  }
}
@media screen and (max-width: 768px) {
  .l-nav__item:nth-last-child(2) {
    border-bottom: 1px solid hsla(39, 33%, 77%, 0.3);
  }
}
@media not all and (max-width: 768px) {
  .is-type-transparent-white .l-nav__item:nth-last-child(2) {
    border-left: 1px solid #fff;
  }
}
.l-nav__link {
  display: block;
  -webkit-transition: color 0.2s linear;
  transition: color 0.2s linear;
}

@media not all and (max-width: 768px) {
  .l-nav__link {
    font-size: clamp(0.625rem, 0.92vw, 0.875rem);
    -webkit-transition: opacity 0.3s cubic-bezier(0.11, 0, 0.5, 0);
    transition: opacity 0.3s cubic-bezier(0.11, 0, 0.5, 0);
  }
}
@media screen and (max-width: 768px) {
  .l-nav__link {
    color: #fff;
    font-size: 1rem;
    line-height: 2.6;
    padding: 0.5rem 1.5rem;
    position: relative;
  }
}
@media (hover: hover) and (pointer: fine) {
  .l-nav__link:hover {
    opacity: 0.7;
  }
}
.is-type-transparent-white .l-nav__link {
  color: #fff;
}

@media screen and (max-width: 768px) {
  .l-nav__link:after {
    background-image: url(../images/common/icon_arrow_right.svg);
    background-size: cover;
    content: " ";
    display: block;
    height: 1rem;
    position: absolute;
    right: 1.5rem;
    top: 1.3125rem;
    width: 1rem;
  }
}
@media not all and (max-width: 768px) {
  .l-nav__contact {
    margin-left: min(1.5rem, 1.6666666667vw);
  }
}
@media screen and (max-width: 768px) {
  .l-nav__contact {
    display: none;
  }
}
.l-nav__contactButton {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  background-color: #fff;
  border: 1px solid #9e7e3f;
  border-radius: 0.125rem;
  color: #9e7e3f;
  display: inline-block;
  justify-content: space-between;
  padding: 0.625rem 1rem;
  -webkit-transition: background-color 0.3s cubic-bezier(0.11, 0, 0.5, 0);
  transition: background-color 0.3s cubic-bezier(0.11, 0, 0.5, 0);
}

@media (hover: hover) and (pointer: fine) {
  .l-nav__contactButton:hover {
    background-color: hsla(0, 0%, 100%, 0.8);
  }
}
@media not all and (max-width: 768px) {
  .l-nav__contactButtonText {
    display: block;
    font-size: clamp(0.625rem, 0.92vw, 0.875rem);
    line-height: 1;
    white-space: nowrap;
  }
}
@media screen and (max-width: 768px) {
  .l-nav__contactButtonText {
    display: block;
    font-size: 0.875rem;
    line-height: 1;
  }
}
.p-sliderSimpleNav,
.p-sns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
}

@media not all and (max-width: 768px) {
  .p-sns__item:not(:last-child) {
    margin-right: 1.125rem;
  }
}
@media screen and (max-width: 768px) {
  .p-sns__item:not(:last-child) {
    margin-right: 1.5rem;
  }
}
.p-sns__link {
  display: block;
}

@media not all and (max-width: 768px) {
  .p-sns__link {
    -webkit-transition: opacity 0.3s cubic-bezier(0.11, 0, 0.5, 0);
    transition: opacity 0.3s cubic-bezier(0.11, 0, 0.5, 0);
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-sns__link:hover {
    opacity: 0.7;
  }
}
.p-sns__link svg {
  fill: #9e7e3f;
}

@media not all and (max-width: 768px) {
  .p-sns__link svg {
    height: 1.5rem;
    width: 1.5rem;
  }
}
@media screen and (max-width: 768px) {
  .p-sns__link svg {
    height: 2rem;
    width: 2rem;
  }
}
.l-drawerSp__sns .p-sns {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.l-drawerSp__sns .p-sns svg {
  height: 1.5rem;
  width: 1.5rem;
}

.swiper-activities .swiper-wrapper {
  padding-bottom: 1.875rem;
  position: relative;
}
.swiper-activities .swiper-pagination {
  position: static;
  display: inline-block;
  width: auto;
  height: 0.5rem;
  display: flex;
  align-items: center;
  margin: 0;
  transform: translateY(-0.8125rem);
  gap: 0.625rem;
}
@media (width <= 768px) {
  .swiper-activities .swiper-pagination-bullet {
    width: 0.5rem;
    height: 0.5rem;
  }
}
.swiper-activities .swiper-pagination-bullet-active {
  background: #a78f45;
}
.swiper-activities .swiper-arrow {
  position: static;
  height: 0.5rem;
  color: #a78f45;
  margin-top: -1.5625rem;
}
.swiper-activities .swiper-arrow svg {
  height: 0.5rem;
  width: 1.3125rem;
  vertical-align: middle;
}
.swiper-activities .swiper-button-prev {
  transform: scale(-1, 1);
}

@media (width <= 768px) {
  .grid {
    margin-left: -1.75rem;
    margin-right: -1.75rem;
    width: 100vw;
  }
}

.grid-sizer,
.grid-item {
  float: left;
  width: 33.333%;
  padding: 0.1875rem;
  height: 19.3125rem;
  overflow: hidden;
}
@media (width <= 768px) {
  .grid-sizer,
  .grid-item {
    width: 50%;
    height: 6.8125rem;
  }
}
.grid-sizer--height2,
.grid-item--height2 {
  height: 38.625rem;
}
@media (width <= 768px) {
  .grid-sizer--height2,
  .grid-item--height2 {
    height: 13.625rem;
  }
}
.grid-sizer--width2,
.grid-item--width2 {
  width: 66.666%;
}
@media (width <= 768px) {
  .grid-sizer--width2,
  .grid-item--width2 {
    width: 100%;
  }
}
@media (width <= 768px) {
  .grid-sizer--sp-height2,
  .grid-item--sp-height2 {
    width: 50%;
  }
}

.l-bestrate ul {
  padding-left: 1.5em;
}

@media not all and (max-width: 768px) {
  .l-bestrate {
    margin-inline: auto;
    max-width: 109.6rem;
    padding-inline: 4.8rem;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate {
    margin-inline: auto;
  }
}
.l-bestrate__header {
  background: hsla(39, 33%, 77%, 0.35);
}

@media not all and (max-width: 768px) {
  .l-bestrate__header {
    padding: 2.5rem;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__header {
    padding: 1.25rem;
  }
}
.l-bestrate__haeaderTitle {
  position: relative;
}

@media not all and (max-width: 768px) {
  .l-bestrate__haeaderTitle {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 1.5rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.7;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__haeaderTitle {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 0.9375rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.75;
  }
}
@media not all and (max-width: 768px) {
  .l-bestrate__haeaderTitle {
    -webkit-column-gap: 1.6rem;
    -moz-column-gap: 1.6rem;
    column-gap: 1.6rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .l-bestrate__haeaderTitle span {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
  }
  .l-bestrate__haeaderTitle:after,
  .l-bestrate__haeaderTitle:before {
    background-color: #999;
    content: " ";
    display: block;
    height: 1px;
    margin: auto;
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__haeaderTitle {
    border-bottom: 1px solid #939393;
    padding-bottom: 1.6rem;
    text-align: center;
  }
}
.l-bestrate__haeaderCopy {
  text-align: center;
}

@media not all and (max-width: 768px) {
  .l-bestrate__haeaderCopy {
    font-family: Zen Old Mincho, serif;
    font-size: 2.875rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.5;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__haeaderCopy {
    font-family: Zen Old Mincho, serif;
    font-size: 1.375rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.7;
  }
}
@media not all and (max-width: 768px) {
  .l-bestrate__haeaderCopy {
    margin-top: 3.2rem;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__haeaderCopy {
    margin-top: 2.4rem;
  }
}
@media not all and (max-width: 768px) {
  .l-bestrate__haeaderCopy > :nth-child(n+2) {
    margin-top: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__haeaderCopy > :nth-child(n+2) {
    margin-top: 1.2rem;
  }
}
.l-bestrate__haeaderCopy b {
  color: #9e7e3f;
}

@media not all and (max-width: 768px) {
  .l-bestrate__haeaderCopy b {
    font-family: Zen Old Mincho, serif;
    font-size: 3.6rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.4;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__haeaderCopy b {
    display: block;
    font-family: Zen Old Mincho, serif;
    font-size: 2rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.5;
  }
}
.l-bestrate__haeaderCopy b span {
  display: inline-block;
  position: relative;
}

.l-bestrate__haeaderCopy b span:before {
  background-color: rgba(158, 126, 63, 0.5);
  border-radius: 50%;
  content: " ";
  display: block;
  inset-inline: 0;
  margin-inline: auto;
  position: absolute;
}

@media not all and (max-width: 768px) {
  .l-bestrate__haeaderCopy b span:before {
    height: 0.6rem;
    top: -0.5rem;
    width: 0.6rem;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__haeaderCopy b span:before {
    height: 0.35rem;
    top: -0.3rem;
    width: 0.35rem;
  }
}
@media not all and (max-width: 768px) {
  .l-bestrate__body > h2 {
    margin-bottom: 1.75rem;
    margin-top: 6.25rem;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__body > h2 {
    margin-bottom: 1.875rem;
    margin-top: 3rem;
  }
}
@media not all and (max-width: 768px) {
  .l-bestrate__body > h2 {
    font-family: Zen Old Mincho, serif;
    font-size: 2.125rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.5;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__body > h2 {
    font-family: Zen Old Mincho, serif;
    font-size: 1.5rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.5;
  }
}
@media not all and (max-width: 768px) {
  .l-bestrate__body > p {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.75;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__body > p {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.75;
  }
}
@media not all and (max-width: 768px) {
  .l-bestrate__body > p {
    margin-top: 3.2rem;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__body > p {
    margin-top: 1.5rem;
    font-size: 0.9375rem;
  }
}
.l-bestrate__accordion {
  margin-top: 4.8rem;
}

.l-bestrate__guaranteed > :first-child {
  margin-top: 0;
}

.l-bestrate__guaranteed > h3 {
  margin-bottom: 2.4rem;
  margin-top: 4.6rem;
}

@media not all and (max-width: 768px) {
  .l-bestrate__guaranteed > h3 {
    font-family: Zen Old Mincho, serif;
    font-size: 2rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.5;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__guaranteed > h3 {
    font-family: Zen Old Mincho, serif;
    font-size: 1.25rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.7;
    margin: 2.5rem 0 1.25rem;
  }
}
.l-bestrate__guaranteed > p {
  margin-top: 1.6rem;
}

@media not all and (max-width: 768px) {
  .l-bestrate__guaranteed > p {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.75;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__guaranteed > p {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 0.9375rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.75;
  }
}
.l-bestrate__guaranteed > ul {
  margin-top: 1.6rem;
}

.l-bestrate__guaranteed > small {
  display: block;
  margin-top: 1.6rem;
}

@media not all and (max-width: 768px) {
  .l-bestrate__guaranteed > small {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.7;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__guaranteed > small {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.7;
  }
}
.l-bestrate__guaranteed > .c-textLink {
  margin-top: 1.6rem;
}

@media not all and (max-width: 768px) {
  .l-bestrate__guaranteedAttention {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.7;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__guaranteedAttention {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 0.9375rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.7;
  }
}
@media not all and (max-width: 768px) {
  .l-bestrate__guaranteedAttention {
    margin-top: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__guaranteedAttention {
    margin-top: 1.6rem;
  }
}
.l-bestrate__guaranteedAttention li {
  position: relative;
}

@media not all and (max-width: 768px) {
  .l-bestrate__guaranteedAttention li {
    padding-left: 0;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__guaranteedAttention li {
    padding-left: 0;
  }
}
.l-bestrate__benefit {
  display: grid;
  row-gap: 5.6rem;
}

@media not all and (max-width: 768px) {
  .l-bestrate__benefit {
    -webkit-column-gap: 4rem;
    -moz-column-gap: 4rem;
    column-gap: 4rem;
    grid-template-columns: repeat(2, 1fr);
  }
}
.l-bestrate__supplement {
  margin-top: 3.2rem;
}

@media not all and (max-width: 768px) {
  .l-bestrate__supplement {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.7;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__supplement {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 1.2rem;
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.7;
  }
}
.l-bestrate__footer {
  background: rgba(158, 126, 63, 0.08);
  border: 1px solid hsla(39, 33%, 77%, 0.3);
  padding: 2.5rem;
  margin-bottom: 7.5rem;
}

@media not all and (max-width: 768px) {
  .l-bestrate__footer {
    margin-inline: auto;
    margin-top: 5rem;
    max-width: 79.3rem;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__footer {
    margin-top: 5rem;
    padding: 1.25rem;
    margin-bottom: 5rem;
  }
}
.l-bestrate__footerTitle {
  text-align: center;
}

@media not all and (max-width: 768px) {
  .l-bestrate__footerTitle {
    font-family: Zen Old Mincho, serif;
    font-size: 2.8rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.5;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__footerTitle {
    font-family: Zen Old Mincho, serif;
    font-size: 1.5rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.5;
  }
}
@media not all and (max-width: 768px) {
  .l-bestrate__links {
    -webkit-column-gap: 1.25rem;
    -moz-column-gap: 1.25rem;
    column-gap: 1.25rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 2.8rem;
    padding: 0 4.8rem;
    list-style: none;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__links {
    display: grid;
    margin-top: 1.8rem;
    row-gap: 1.3rem;
    list-style: none;
    padding-left: 0 !important;
  }
}
@media not all and (max-width: 768px) {
  .l-bestrate__links > li {
    width: 50%;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__links > li {
    width: 100%;
  }
}
.l-bestrate__links > li .c-button {
  width: 100%;
}

@media not all and (max-width: 768px) {
  .l-bestrate__contact {
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 3.2rem;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__contact {
    display: block;
    margin-top: 3.5rem;
    text-align: center;
  }
}
@media not all and (max-width: 768px) {
  .l-bestrate__contactTitle {
    font-family: Zen Old Mincho, serif;
    font-size: 2rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.5;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__contactTitle {
    font-family: Zen Old Mincho, serif;
    font-size: 1.125rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.7;
    margin-bottom: 0.8rem;
  }
}
@media not all and (max-width: 768px) {
  .l-bestrate__tel {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-column-gap: 1.6rem;
    -moz-column-gap: 1.6rem;
    column-gap: 1.6rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__tel {
    display: block;
  }
}
.l-bestrate__telNumber {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 1.4rem;
  -moz-column-gap: 1.4rem;
  column-gap: 1.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  line-height: 0;
}

@media not all and (max-width: 768px) {
  .l-bestrate__telNumber {
    font-family: Zen Old Mincho, serif;
    font-size: 2.8rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.5;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__telNumber {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    font-family: Zen Old Mincho, serif;
    font-size: 1.5rem;
    font-weight: 400;
    justify-content: center;
    letter-spacing: 0.04em;
    line-height: 1.5;
  }
}
.l-bestrate__telNumber span {
  font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 160%;
}

.l-bestrate__telNumber a {
  display: inline-block;
  padding-bottom: 0.4rem;
  position: relative;
}

.l-bestrate__telNumber a:before {
  background-color: #1c1c1c;
  bottom: 0.2rem;
  content: " ";
  display: block;
  height: 1px;
  left: 0;
  position: absolute;
  width: 100%;
}

@media (hover: hover) and (pointer: fine) {
  .l-bestrate__telNumber a {
    pointer-events: none;
  }
  .l-bestrate__telNumber a:before {
    display: none;
  }
}
@media not all and (max-width: 768px) {
  .l-bestrate__schedule {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.7;
  }
}
@media screen and (max-width: 768px) {
  .l-bestrate__schedule {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.7;
    margin-top: 0.8rem;
  }
}
@media not all and (max-width: 768px) {
  .c-accordion__button:before {
    right: 3.4rem;
  }
  .c-accordion__button:after {
    right: 4.2rem;
  }
}
@media screen and (max-width: 768px) {
  .c-accordion__button {
    padding-bottom: 2.6rem;
    padding-top: 2.6rem;
  }
  .c-accordion__button:before {
    top: 3.6rem;
  }
  .c-accordion__button:after {
    top: 2.8rem;
  }
}
@media not all and (max-width: 768px) {
  .c-accordion__contentInner {
    padding: 1.2rem 3.2rem 2.6rem;
    background-color: #fff;
  }
}
@media screen and (max-width: 768px) {
  .c-accordion__contentInner {
    padding: 1.2rem 1.6rem 1.8rem;
    background-color: #fff;
  }
}
.c-accordion__button {
  cursor: pointer;
  position: relative;
  width: 100%;
}

@media not all and (max-width: 768px) {
  .c-accordion__button {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.7;
  }
}
@media screen and (max-width: 768px) {
  .c-accordion__button {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.7;
  }
}
.c-accordion__button {
  padding: 1.25rem;
  text-align: left;
  background-color: #fff;
  border: 1px solid #9e7e3f;
}
@media (width <= 768px) {
  .c-accordion__button {
    font-size: 1rem;
    padding: 0.9375rem 1.25rem;
  }
}
.c-accordion__button:before {
  width: 1.5625rem;
  height: 0.125rem;
  background-color: #9e7e3f;
  content: "";
  position: absolute;
  top: 50%;
  right: 1.25rem;
}
@media (width <= 768px) {
  .c-accordion__button:before {
    width: 1.25rem;
  }
}
.c-accordion__button:after {
  width: 1.5625rem;
  height: 0.125rem;
  background-color: #9e7e3f;
  content: "";
  position: absolute;
  top: 50%;
  right: 1.25rem;
  transform: rotate(90deg);
  transition: 0.3s;
}
@media (width <= 768px) {
  .c-accordion__button:after {
    width: 1.25rem;
  }
}
.c-accordion__button.is-open:after {
  transform: rotate(0deg);
}

.c-accordion__content {
  display: none;
}

.l-bestrate__benefit {
  display: grid;
  row-gap: 5.6rem;
}
@media (width <= 768px) {
  .l-bestrate__benefit {
    row-gap: 2.5rem;
  }
}

@media not all and (max-width: 768px) {
  .l-bestrate__benefit {
    -webkit-column-gap: 4rem;
    -moz-column-gap: 4rem;
    column-gap: 4rem;
    grid-template-columns: repeat(2, 1fr);
  }
}
.p-benefitCard {
  position: relative;
}

.p-benefitCard__image {
  width: 100%;
}

.p-benefitCard {
  position: relative;
}

.p-benefitCard__image {
  width: 100%;
}

.p-benefitCard__title {
  border-bottom: 1px solid #d8cbb2;
  margin-top: 1.125rem;
  padding-bottom: 1.25rem;
  padding-left: 3.125rem;
  position: relative;
}

@media not all and (max-width: 768px) {
  .p-benefitCard__title {
    font-family: Zen Old Mincho, serif;
    font-size: 1.5rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.5;
  }
}
@media screen and (max-width: 768px) {
  .p-benefitCard__title {
    font-family: Zen Old Mincho, serif;
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.7;
  }
}
.p-benefitCard__number {
  left: 0;
  position: absolute;
  top: -0.5rem;
}

@media not all and (max-width: 768px) {
  .p-benefitCard__number {
    font-family: Zen Old Mincho, serif;
    font-size: 2.25rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.5;
  }
}
@media screen and (max-width: 768px) {
  .p-benefitCard__number {
    font-family: Zen Old Mincho, serif;
    font-size: 1.625rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.5;
  }
}
.p-benefitCard__description {
  margin-top: 1.25rem;
}

@media not all and (max-width: 768px) {
  .p-benefitCard__description {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.75;
  }
}
@media screen and (max-width: 768px) {
  .p-benefitCard__description {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 0.9375rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.75;
  }
}
.p-benefitCard__box {
  background-color: hsla(39, 33%, 77%, 0.2);
  margin-top: 1.6rem;
  padding: 0.8rem 1.6rem;
}

@media not all and (max-width: 768px) {
  .p-benefitCard__box {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.75;
  }
}
@media screen and (max-width: 768px) {
  .p-benefitCard__box {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.75;
  }
}
.p-benefitCard__supplement {
  display: block;
  margin-top: 1.6rem;
}

@media not all and (max-width: 768px) {
  .p-benefitCard__supplement {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.7;
  }
}
@media screen and (max-width: 768px) {
  .p-benefitCard__supplement {
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.7;
  }
}
/********************************************
* Wordpress
********************************************/
/* Media */
.size-auto,
.size-full,
.size-large,
.size-medium,
.size-thumbnail {
  max-width: 100%;
  height: auto;
}

.aligncenter {
  display: block;
  margin: 0 auto;
}

.alignright {
  float: right;
}

.alignleft {
  float: left;
}

/* Contact Form */
.wpcf7 .wpcf7-not-valid-tip {
  display: none;
}
.wpcf7 .wpcf7-not-valid {
  background: pink;
}
.wpcf7 .wpcf7-response-output {
  margin: 10px 0 0;
  padding: 8px 35px 8px 14px;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}
.wpcf7 .wpcf7-validation-errors {
  color: #b94a48;
  background-color: #f2dede;
  border: 1px solid #eed3d7;
}
.wpcf7 .wpcf7-mail-sent-ok {
  color: #3a87ad;
  background-color: #d9edf7;
  border: 1px solid #bce8f1;
}

/********************************************
* Component
********************************************/
.c-3thumbs {
  gap: 1.5rem; /* Concept */
}
@media (width <= 768px) {
  .c-3thumbs {
    gap: 0.75rem;
  }
}

.c-access-chart {
  display: flex;
  align-items: center;
}
@media (width <= 768px) {
  .c-access-chart {
    flex-direction: column;
  }
}
.c-access-chart:not(:last-of-type) {
  margin-bottom: 4.375rem;
}
@media (width <= 768px) {
  .c-access-chart:not(:last-of-type) {
    margin-bottom: 1.875rem;
  }
}
.c-access-chart__item {
  width: 4.6875rem;
  height: 9.125rem;
  writing-mode: vertical-rl;
  text-orientation: mixed;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #fff;
  border: 1px solid #cbc5b5;
}
@media (width <= 768px) {
  .c-access-chart__item {
    width: 100%;
    height: 3rem;
    writing-mode: horizontal-tb;
    text-orientation: initial;
    text-align: center;
    font-size: 0.875rem;
    line-height: 1.5;
  }
}
.c-access-chart__item span {
  writing-mode: horizontal-tb;
  line-height: 1;
}
.c-access-chart__item--arrow {
  border: none;
  background: none;
  writing-mode: horizontal-tb;
  text-orientation: initial;
  position: relative;
  background: linear-gradient(to bottom, transparent 0, transparent 50%, #a78f45 50%, #a78f45 calc(50% + 1px), transparent calc(50% + 1px), transparent 100%);
  padding-bottom: 1.875rem;
  font-size: 0.875rem;
}
@media (width <= 768px) {
  .c-access-chart__item--arrow {
    height: 3rem;
    background: linear-gradient(to right, transparent 0, transparent 50%, #a78f45 50%, #a78f45 calc(50% + 1px), transparent calc(50% + 1px), transparent 100%);
    margin: 0.5rem 0;
    padding-bottom: 0;
    padding-left: 60%;
    justify-content: start;
    line-height: 1.096875rem;
    font-size: 0.8125rem;
    text-align: left;
  }
}
.c-access-chart__item--arrow:before {
  content: "";
  position: absolute;
  right: 0;
  top: calc(50% - 0.375rem);
  width: 0.8125rem;
  height: 0.8125rem;
  border-top: 1px solid #cbc5b5;
  border-right: 1px solid #cbc5b5;
  transform: rotate(45deg);
}
@media (width <= 768px) {
  .c-access-chart__item--arrow:before {
    top: inherit;
    bottom: 1px;
    left: calc(50% - 0.34375rem);
    transform: rotate(135deg);
  }
}
.c-access-chart__item--front {
  color: #a78f45;
  background: rgba(167, 143, 69, 0.08);
  border: 1px solid #a78f45;
}
.c-access-chart__item--2row {
  padding-bottom: 3.75rem;
}
.c-access-chart__item--invisible {
  visibility: hidden;
}
.c-access-chart--high .c-access-chart__item {
  height: 15rem;
}
@media (width <= 768px) {
  .c-access-chart--high .c-access-chart__item {
    height: 3rem;
  }
}
@media (width <= 768px) {
  .c-access-chart--high .c-access-chart__item--arrow {
    height: 5rem;
  }
}
.c-access-chart--4 .c-access-chart__item--arrow {
  width: 14.5625rem;
}
@media (width <= 768px) {
  .c-access-chart--4 .c-access-chart__item--arrow {
    width: 100%;
  }
}
.c-access-chart--3 .c-access-chart__item--arrow {
  width: 24.1875rem;
}
@media (width <= 768px) {
  .c-access-chart--3 .c-access-chart__item--arrow {
    width: 100%;
  }
}
.c-access-chart--2 .c-access-chart__item--arrow {
  width: 53.125rem;
}
@media (width <= 768px) {
  .c-access-chart--2 .c-access-chart__item--arrow {
    width: 100%;
  }
}
.c-access-chart--type2 .c-access-chart__item:nth-of-type(1) {
  visibility: hidden;
}
.c-access-chart--type2 .c-access-chart__item--arrow {
  width: 42.9375rem;
  text-align: center;
}
@media (width <= 768px) {
  .c-access-chart--type2 .c-access-chart__item--arrow {
    width: 100%;
  }
}
.c-access-chart--type2 .c-access-chart__item--front {
  writing-mode: horizontal-tb;
  text-orientation: initial;
  width: 14.375rem;
  height: 4.1875rem;
}
@media (width <= 768px) {
  .c-access-chart--type2 .c-access-chart__item--front {
    width: 100%;
  }
}
.c-access-chart--type3 {
  margin-bottom: 2.5rem !important;
}
@media (width <= 768px) {
  .c-access-chart--type3 {
    margin-bottom: 0 !important;
  }
}
@media (width <= 768px) {
  .c-access-chart--type3 .c-access-chart__item--arrow {
    height: 6.5rem;
  }
}
.c-access-chart--horizonal {
  flex-direction: column;
  flex-wrap: wrap;
  align-items: start;
  margin-bottom: 0rem !important;
}
.c-access-chart--horizonal .c-access-chart__item {
  width: 100%;
  height: 4.5rem;
  writing-mode: horizontal-tb;
}
@media (width <= 768px) {
  .c-access-chart--horizonal .c-access-chart__item {
    padding: 0;
    height: 3rem;
  }
}
.c-access-chart--horizonal .c-access-chart__item--arrow {
  width: 100%;
  height: 4.5rem;
  writing-mode: horizontal-tb;
  background: linear-gradient(to right, transparent 0, transparent 50%, #a78f45 50%, #a78f45 calc(50% + 1px), transparent calc(50% + 1px), transparent 100%);
  margin: 0.5rem 0;
  padding-bottom: 0;
  padding-left: calc(50% + 0.9375rem);
  justify-content: start;
  line-height: 2.8571428571;
  font-size: 0.875rem;
  text-align: left;
}
@media (width <= 768px) {
  .c-access-chart--horizonal .c-access-chart__item--arrow {
    height: 5rem;
    background: linear-gradient(to right, transparent 0, transparent 15%, #a78f45 15%, #a78f45 calc(15% + 1px), transparent calc(15% + 1px), transparent 100%);
    padding-left: 25%;
    font-size: 0.8125rem;
    line-height: 1.35;
  }
}
.c-access-chart--horizonal .c-access-chart__item--arrow:before {
  top: inherit;
  bottom: 1px;
  left: calc(50% - 0.34375rem);
  transform: rotate(135deg);
}
@media (width <= 768px) {
  .c-access-chart--horizonal .c-access-chart__item--arrow:before {
    left: calc(15% - 0.34375rem);
  }
}
.c-access-chart .u-text--small {
  font-size: 0.75rem;
  display: block;
}

.c-activity-card {
  border-radius: 0.3125rem;
  border: 1px solid #cbc5b5;
  background: #fff;
}
.c-activity-card__text {
  padding: 2rem 2.1875rem 1.875rem;
  position: relative;
}
@media (width <= 768px) {
  .c-activity-card__text {
    padding: 1.25rem;
  }
}
.c-activity-card__title {
  font-size: 1.5625rem;
  line-height: 2.1rem;
}
@media (width <= 768px) {
  .c-activity-card__title {
    font-size: 1.3125rem;
    line-height: 1.6;
  }
}
.c-activity-card__date {
  font-size: 0.9375rem;
}
@media (width <= 768px) {
  .c-activity-card__date {
    font-size: 0.6875rem;
  }
}
.c-activity-card__thumb {
  height: 21.1875rem;
}
@media (width <= 768px) {
  .c-activity-card__thumb {
    height: 14.75rem;
  }
}
.c-activity-slider .c-activity-card__thumb {
  height: 22.5rem;
}
@media (width <= 768px) {
  .c-activity-slider .c-activity-card__thumb {
    height: 14.75rem;
  }
}
.c-activity-card__link {
  display: block;
}
.c-activity-card__link-more {
  font-size: 0.875rem;
  text-align: right;
  position: absolute;
  bottom: 1.875rem;
  right: 2.1875rem;
}
.c-activity-card__icon {
  vertical-align: middle;
  width: 1rem;
  height: 1rem;
  margin-left: 1.0625rem;
  transform: translateY(-0.125rem);
  display: inline-block;
  line-height: 1;
}
@media (width <= 768px) {
  .c-activity-card--slider .c-activity-card__text {
    padding-bottom: 3.125rem;
  }
}
.c-activity-card--slider .c-activity-card__link-more {
  bottom: 1.25rem;
}
@media (768px < width) {
  .c-activity-card--slider {
    display: flex;
  }
  .c-activity-card--slider .c-activity-card__text {
    width: 48%;
    padding: 3.75rem 0.625rem 1.875rem 3.75rem;
  }
}
@media (768px < width) and (width <= 768px) {
  .c-activity-card--slider .c-activity-card__text {
    padding-bottom: 3.125rem !important;
  }
}
@media (768px < width) {
  .c-activity-card--slider .c-activity-card__thumb {
    width: 52%;
  }
}

.c-activity-list {
  display: flex;
  gap: 4.375rem 2.5rem;
  flex-wrap: wrap;
}
@media (width <= 768px) {
  .c-activity-list {
    gap: 1.5rem;
  }
}
.c-activity-list__item {
  width: calc(50% - 1.25rem);
}
@media (width <= 768px) {
  .c-activity-list__item {
    width: 100%;
  }
}

.c-block {
  display: flex;
  align-items: center;
}
.c-block__text {
  width: 50%;
  padding-right: 5rem;
}
@media (width <= 768px) {
  .c-block__text {
    width: 100%;
    padding-right: 0;
  }
}
.c-block__title {
  font-size: 1.75rem;
}
@media (width <= 768px) {
  .c-block__title {
    text-align: center;
  }
}
.c-block__cap {
  font-size: 1.5rem;
}
@media (width <= 768px) {
  .c-block__cap {
    font-size: 0.9375rem;
    margin-bottom: 0.625rem;
  }
}
.c-block__thumb {
  width: 50%;
  padding-left: 3.75rem;
}
@media (width <= 768px) {
  .c-block__thumb {
    width: 100vw;
    margin-left: -1.75rem;
    margin-right: -1.75rem;
  }
}
.c-block__p {
  margin-bottom: 2em;
}
.c-block--ame .c-block__text {
  padding-right: 0;
}
.c-block--01.c-flex {
  gap: 7.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
.c-block--01 .c-block__text {
  padding-left: 10rem;
}
@media (width <= 768px) {
  .c-block--02 {
    flex-direction: column;
    gap: 1.25rem;
  }
}
.c-block--02 .c-block__text {
  padding-left: 10rem;
  padding-right: 5rem;
}
@media (width <= 768px) {
  .c-block--02 .c-block__text {
    padding: 0;
    font-size: 0.875rem;
    line-height: 2.2;
  }
}
.c-block--02 .c-title__h2 {
  font-size: 2.8125rem;
}
@media (width <= 768px) {
  .c-block--02 .c-title__h2 {
    font-size: 2rem;
  }
}
@media (width <= 768px) {
  .c-block--02 .c-block__thumb {
    margin-left: -1.75rem;
    width: calc(100% + 1.75rem);
  }
}
@media (width <= 768px) {
  .c-block--02.c-block--reverse .c-block__thumb {
    margin-left: 0;
    margin-right: -1.75rem;
    padding-left: 0rem;
  }
}
@media (width <= 768px) {
  .c-block--03 {
    flex-direction: column;
  }
}
.c-block--03 .c-block__text {
  padding-left: 10rem;
}
@media (width <= 768px) {
  .c-block--03 .c-block__text {
    padding-left: 0;
  }
}
.c-block--03 .c-block__thumb {
  padding-left: 0rem;
}
@media (width <= 768px) {
  .c-block--04 {
    flex-direction: column;
    gap: 1.25rem;
  }
}
.c-block--04 .c-block__text {
  padding-left: 5rem;
}
@media (width <= 768px) {
  .c-block--04 .c-block__text {
    padding-left: 0;
  }
}
.c-block--04 .c-block__thumb {
  height: 28.3125rem;
}
@media (width <= 768px) {
  .c-block--04 .c-block__thumb {
    height: 14.75rem;
  }
}
.c-block--reverse .c-block__text {
  order: 1;
}
@media (width <= 768px) {
  .c-block--reverse .c-block__text {
    order: 2;
  }
}
.c-block--reverse .c-block__thumb {
  order: 2;
}
@media (width <= 768px) {
  .c-block--reverse .c-block__thumb {
    order: 1;
  }
}
.c-block--reverse.c-block--04 .c-block__text {
  padding-left: 0;
}

.c-block01 {
  display: flex;
  align-items: end;
  gap: 5rem;
}
@media (width <= 768px) {
  .c-block01 {
    align-items: end;
    gap: 1.875rem;
    justify-content: space-between;
  }
}
.c-block01--reverse {
  flex-direction: row-reverse;
  padding-right: 10rem;
}
@media (width <= 768px) {
  .c-block01--reverse {
    padding-right: 0;
  }
}
.c-block01--reverse .c-block01__text {
  align-items: end;
}
.c-block01__text {
  display: flex;
  flex-direction: column;
  gap: 3.75rem;
}
@media (width <= 768px) {
  .c-block01__text {
    gap: 2.1875rem;
    width: 15.625rem;
  }
}
.c-block01__p {
  font-size: 1.125rem;
  line-height: 2.2;
  letter-spacing: 0.02em;
}
@media (width <= 768px) {
  .c-block01__p {
    font-size: 0.9375rem;
    line-height: 2.2;
  }
}
.c-block01 .c-btn {
  width: 15.375rem;
  padding-right: 3.125rem;
}
@media (width <= 768px) {
  .c-block01 .c-btn {
    width: 100%;
    max-width: 100%;
    font-size: 0.875rem;
    padding-right: 2.5rem;
  }
}

.c-block02 {
  display: flex;
}
@media (width <= 768px) {
  .c-block02 {
    flex-direction: column;
  }
}
.c-block02:not(:last-of-type) {
  margin-bottom: 7.5rem;
}
@media (width <= 768px) {
  .c-block02:not(:last-of-type) {
    margin-bottom: 4.0625rem;
  }
}
.c-block02--aic {
  align-items: center;
}
.c-block02__thumb {
  width: 50%;
}
@media (width <= 768px) {
  .c-block02__thumb {
    width: 100%;
    order: 1;
    margin-left: -1.75rem;
    width: calc(100% + 2.25rem);
    margin-bottom: 1.25rem;
  }
}
.c-block02__text {
  width: 50%;
  padding: 0 5rem 0 10rem;
}
@media (width <= 768px) {
  .c-block02__text {
    width: 100%;
    padding: 0;
    order: 2;
  }
}
@media (width <= 768px) {
  .c-block02__text p {
    font-size: 0.875rem;
  }
}
@media (width <= 768px) {
  .c-block02__title {
    font-size: 1.5rem;
    padding-bottom: 1.5625rem;
    margin-bottom: 1.25rem;
  }
}
.c-block02__title.c-title {
  position: relative;
  font-size: 1.75rem;
  padding-bottom: 0.625rem;
  margin-bottom: 1.875rem;
}
.c-block02__title--underline {
  border-bottom: 1px solid #cbc5b5;
  position: relative;
}
.c-block02__title--underline:before {
  content: "";
  position: absolute;
  width: 5rem;
  height: 1px;
  right: -5rem;
  bottom: -1px;
  background-color: #cbc5b5;
}
@media (width <= 768px) {
  .c-block02__title--underline:before {
    right: inherit;
    left: -5rem;
  }
}
.c-block02--reverse {
  flex-direction: row-reverse;
}
@media (width <= 768px) {
  .c-block02--reverse {
    flex-direction: column;
  }
}
.c-block02--reverse .c-block02__title--underline:before {
  right: inherit;
  left: -5rem;
}
.c-block02--reverse .c-block02__text {
  padding: 0 10rem 0 5rem;
}
@media (width <= 768px) {
  .c-block02--reverse .c-block02__text {
    padding: 0;
  }
}
.c-block02--feature .c-block02__title.c-title {
  padding-left: 0;
  font-size: 2rem;
  letter-spacing: 0.04em;
}
.c-block02--feature .c-block02__title.c-title:before {
  content: inherit;
}
.c-block02--feature .c-block02__text {
  padding-right: 0;
}
.c-block02--feature .c-block02__p {
  font-size: 1.125rem;
  line-height: 2.2;
}
.c-block02 .c-btn {
  margin-top: 3.125rem;
}
.c-block02--stay .c-block02__text {
  padding-left: 0;
}
.c-block02--stay.c-block02--reverse .c-block02__text {
  padding-left: 5rem;
  padding-right: 2.5rem;
}
@media (width <= 768px) {
  .c-block02--stay.c-block02--reverse .c-block02__text {
    padding: 0;
  }
}
@media (width <= 768px) {
  .c-block02--stay .c-block02__thumb {
    margin: 0 0 1.25rem;
    width: 100%;
  }
}
@media (width <= 768px) {
  .c-block02--stay .c-block02__thumb--left {
    margin-left: -1.75rem;
    width: calc(100% + 1.75rem);
  }
}
@media (width <= 768px) {
  .c-block02--stay .c-block02__thumb--right {
    margin-right: -1.75rem;
    width: calc(100% + 1.75rem);
  }
}
.c-block02--stay .c-block02__title {
  font-size: 1.3125rem;
  letter-spacing: 0.036em;
}

.c-block-list {
  display: flex;
  flex-wrap: wrap;
  gap: 3rem 2rem;
}
@media (width <= 768px) {
  .c-block-list {
    gap: 2.5rem 1.25rem;
    margin-left: -0.5rem;
    margin-right: -0.5rem;
    width: calc(100% + 1rem);
    position: relative;
    left: -0.5rem;
  }
}
.c-block-list__item {
  width: calc(33.33% - 1.33375rem);
}
@media (width <= 768px) {
  .c-block-list__item {
    width: calc(50% - 0.625rem);
  }
}
.c-block-list__thumb {
  margin-bottom: 1.25rem;
  height: 12.0625rem;
}
@media (width <= 768px) {
  .c-block-list__thumb {
    height: 6.375rem;
    margin-bottom: 0.3125rem;
  }
}
.c-block-list__cat {
  font-size: 0.9375rem;
  letter-spacing: 0.04em;
  margin-bottom: 0 !important;
}
@media (width <= 768px) {
  .c-block-list__cat {
    font-size: 0.6875rem;
  }
}
.c-block-list__title {
  font-size: 1.875rem;
}
@media (width <= 768px) {
  .c-block-list__title {
    font-size: 1.125rem;
  }
}
.c-block-list__address {
  font-size: 0.9375rem;
  letter-spacing: 0.04em;
}
@media (width <= 768px) {
  .c-block-list__address {
    font-size: 0.8125rem;
    line-height: 1.4769230769;
    margin-bottom: 0.625rem;
  }
}
.c-block-list .p-access__gmap {
  margin-left: 0;
}
@media (width <= 768px) {
  .c-block-list__memo {
    font-size: 0.75rem;
  }
}
.c-block-list--type1.c-block-list {
  gap: 4.0625rem 2.4375rem;
}
@media (width <= 768px) {
  .c-block-list--type1.c-block-list {
    gap: 2.5rem;
  }
}
.c-block-list--type1 .c-block-list__item {
  width: calc(33.3333% - 1.66625rem);
}
@media (width <= 768px) {
  .c-block-list--type1 .c-block-list__item {
    width: 100%;
  }
}
.c-block-list--type1 .c-block-list__thumb {
  height: 16.5rem;
  margin-bottom: 1.25rem;
}
@media (width <= 768px) {
  .c-block-list--type1 .c-block-list__thumb {
    height: 15.125rem;
    margin-bottom: 1.875rem;
  }
}
.c-block-list--type1 .c-block-list__title {
  margin-bottom: 0.3125rem;
  line-height: 1.2;
}
@media (width <= 768px) {
  .c-block-list--type1 .c-block-list__title {
    font-size: 1.75rem;
    margin-bottom: 0rem;
  }
}
.c-block-list--type1 .c-block-list__p {
  font-size: 1.125rem;
  margin-bottom: 1.25rem !important;
}
@media (width <= 768px) {
  .c-block-list--type1 .c-block-list__p {
    margin-bottom: 1.25rem !important;
    letter-spacing: 0.03em;
  }
}
.c-block-list--type1 .c-cat-list {
  padding-left: 0;
  margin-bottom: 0.625rem;
}
@media (width <= 768px) {
  .c-block-list--type1 .c-cat-list {
    gap: 0.625rem;
  }
}
.c-block-list--type1 .c-cat-list__item {
  background-color: rgba(203, 197, 181, 0.3);
  color: #241d14;
}
@media (width <= 768px) {
  .c-block-list--type1 .c-cat-list__item {
    padding: 0.375rem 0.625rem;
    font-size: 0.875rem;
  }
}

.c-block-slider {
  display: flex;
  align-items: center;
  width: 100%;
  gap: 3.75rem;
  padding: 3.75rem 0;
}
@media (width <= 768px) {
  .c-block-slider {
    flex-direction: column;
    gap: 1.875rem;
    padding: 2.5rem 0;
  }
}
.c-block-slider:first-of-type {
  padding-top: 0;
}
.c-block-slider:not(:last-of-type) {
  border-bottom: 1px solid #cbc5b5;
}
.c-block-slider .c-title__h2 {
  font-size: 1.75rem;
}
@media (width <= 768px) {
  .c-block-slider .c-title__h2 {
    font-size: 1.5rem;
  }
}
.c-block-slider__slider {
  width: 50%;
  padding-right: 3.75rem;
}
@media (width <= 768px) {
  .c-block-slider__slider {
    order: 2;
    width: 100%;
    padding-right: 0;
  }
}
.c-block-slider__alt {
  position: absolute;
  bottom: 0.3125rem;
  left: 0;
}
@media (width <= 768px) {
  .c-block-slider__alt {
    bottom: 1.875rem;
    width: 100%;
    text-align: center;
  }
}
.c-block-slider__bottom {
  position: absolute;
  bottom: -0.625rem;
  display: flex;
  justify-content: end;
  align-items: center;
  position: relative;
  gap: 1.25rem;
}
@media (width <= 768px) {
  .c-block-slider__bottom {
    justify-content: center;
  }
}
.c-activity-slider .c-block-slider__bottom {
  justify-content: center;
}
.c-block-slider__text {
  width: 50%;
  padding-left: 0;
  transform: translateY(-2.5rem);
}
@media (width <= 768px) {
  .c-block-slider__text {
    order: 1;
    width: 100%;
    transform: translateY(0);
  }
}
@media (width <= 768px) {
  .c-block-slider .c-text__h2 {
    font-size: 1.5rem;
  }
}
.c-block-slider__capacity {
  border: 1px solid #241d14;
  display: inline-block;
  font-size: 0.875rem;
  letter-spacing: 0.04em;
  font-family: "Zen Old Mincho", serif;
  line-height: 1;
  padding: 0.3125rem;
}
@media (width <= 768px) {
  .c-block-slider__capacity {
    font-size: 0.75rem;
  }
}
.c-block-slider__sub-title {
  font-size: 1.5rem;
  margin-bottom: 0.625rem;
  letter-spacing: 0.08em;
}
@media (width <= 768px) {
  .c-block-slider__sub-title {
    font-size: 1.125rem;
  }
}
.c-block-slider .c-btn {
  margin-top: 1.875rem;
}
@media (width <= 768px) {
  .c-block-slider .c-btn {
    margin-top: 1.5625rem;
  }
}
.c-block-slider__p {
  margin-bottom: 2em;
}
.c-block-slider--reverse .c-block-slider__slider {
  order: 2;
  padding-right: 0;
  padding-left: 3.75rem;
}
@media (width <= 768px) {
  .c-block-slider--reverse .c-block-slider__slider {
    padding-left: 0;
  }
}
.c-block-slider--reverse .c-block-slider__text {
  order: 1;
}

.c-bottom-bnr .c-inner {
  display: flex;
  gap: 8.125rem;
  justify-content: space-between;
}
@media (width <= 768px) {
  .c-bottom-bnr .c-inner {
    flex-direction: column;
    gap: 2.5rem;
    padding: 0.625rem 0 2.5rem;
    overflow: hidden;
  }
}
.c-bottom-bnr__title {
  writing-mode: vertical-rl;
  font-size: 2.5rem;
  line-height: 1.4;
  text-indent: -1.5em;
  position: relative;
  transform: translateY(4.375rem);
}
@media (width <= 768px) {
  .c-bottom-bnr__title {
    writing-mode: horizontal-tb;
    transform: translateX(3.75rem);
    text-indent: -1.1em;
    font-size: 1.75rem;
  }
}
.c-bottom-bnr__content {
  width: 70.375rem;
}
@media (width <= 768px) {
  .c-bottom-bnr__content {
    width: 100%;
  }
}
.c-bottom-bnr__link {
  position: relative;
  height: 15rem;
  display: flex;
  border-bottom: 1px solid #cbc5b5;
}
@media (width <= 768px) {
  .c-bottom-bnr__link {
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    height: 12.5rem;
    color: #fff;
  }
  .c-bottom-bnr__link:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.55);
    z-index: 1;
  }
}
.c-bottom-bnr__item--bg .c-bottom-bnr__link {
  color: #fff;
}
.c-bottom-bnr__item--bg .c-bottom-bnr__link:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.55);
  z-index: 0;
}
.c-bottom-bnr__item--bg {
  color: #fff;
}
.c-bottom-bnr__bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}
.c-bottom-bnr__item-sub-title {
  font-size: 1.0625rem;
  display: inline-block;
}
@media (width <= 768px) {
  .c-bottom-bnr__item-sub-title {
    font-size: 0.75rem;
  }
}
.c-bottom-bnr__item-title {
  z-index: 1;
  position: relative;
  width: 26.875rem;
  display: flex;
  align-items: center;
  justify-content: start;
  padding-left: 5rem;
  font-size: 2rem;
  line-height: 1.5;
}
@media (width <= 768px) {
  .c-bottom-bnr__item-title {
    width: 100%;
    max-width: 100%;
    font-size: 1.5rem;
    justify-content: start;
    padding-left: 1.5rem;
    z-index: 2;
    position: relative;
  }
}
.c-bottom-bnr__item-text {
  position: relative;
  z-index: 1;
  width: calc(100% - 25rem);
  display: flex;
  align-items: center;
  padding-left: 3.75rem;
}
@media (width <= 768px) {
  .c-bottom-bnr__item-text {
    width: 100%;
    font-size: 0.875rem;
    line-height: 1.75;
    justify-content: start;
    padding: 0 1.5rem;
    position: relative;
    z-index: 2;
    letter-spacing: 0.06em;
  }
}
.c-bottom-bnr .c-btn {
  margin-top: 2.5rem;
}

.c-box__p {
  line-height: 2.2;
  font-size: 1.125rem;
}
@media (width <= 768px) {
  .c-box__p {
    letter-spacing: 0;
    font-size: 0.9375rem;
  }
}
.c-box .c-btn {
  margin-top: 3.125rem;
}
@media (width <= 768px) {
  .c-box .c-btn {
    min-width: 13.75rem;
  }
}

.c-btn {
  border: 1px solid #9e7d42;
  display: inline-block;
  position: relative;
  padding: 1.125rem 4.8125rem 1.125rem 1.25rem;
  line-height: 1;
  min-width: 15.375rem;
  text-align: left;
}
@media (width <= 768px) {
  .c-btn {
    font-size: 0.875rem;
    padding: 1rem 3.75rem 1rem 1.25rem;
    min-width: inherit;
  }
}
.c-btn:after {
  position: absolute;
  right: 1.25rem;
  top: calc(50% - 0.1875rem);
  content: "";
  background: url(../images/common/arrow.png) no-repeat;
  background-size: cover;
  display: block;
  width: 1.3125rem;
  height: 0.4375rem;
}
@media (width <= 768px) {
  .c-btn:after {
    width: 1.1875rem;
    height: 0.446875rem;
  }
}
.c-btn--mat {
  background-color: #a78f45;
  color: #fff;
}
.c-btn--mat:after {
  background: url(../images/common/arrow-white.png) no-repeat;
  background-size: cover;
  width: 1.125rem;
  height: 0.425rem;
}
.c-btn--glass:after {
  background: url(../images/common/glass.png) no-repeat;
  background-size: cover;
  width: 1.125rem;
  height: 1.125rem;
}

.c-btns {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
}
@media (width <= 768px) {
  .c-btns {
    gap: 0.75rem;
  }
}

.c-cat-list {
  font-size: 0.875rem;
  line-height: 1;
  display: flex;
  gap: 0.75rem;
  flex-wrap: wrap;
  align-items: start;
}
.c-cat-list.c-list {
  margin-bottom: 0.9375rem;
}
@media (width <= 768px) {
  .c-cat-list.c-list {
    margin-bottom: 0.625rem;
  }
}
.c-cat-list__item {
  display: inline-block;
  background-color: rgba(203, 197, 181, 0.3);
  display: block;
  padding: 0.25rem 0.75rem;
  border-radius: 0.125rem;
}
@media (width <= 768px) {
  .c-cat-list__item {
    padding: 0.09375rem 0.5rem;
  }
}
.c-cat-list__link {
  display: block;
}

.c-conversion {
  background: hsla(0, 0%, 100%, 0.6);
  border-radius: 0 0.2rem 0 0;
  border-right: 0.1rem solid hsla(39, 33%, 77%, 0.3);
  border-top: 0.1rem solid hsla(39, 33%, 77%, 0.3);
  -webkit-column-gap: 0.8rem;
  -moz-column-gap: 0.8rem;
  column-gap: 0.8rem;
  padding: 0.625rem;
  position: fixed;
  bottom: 0;
  left: 0;
  display: none;
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
  z-index: 100;
  letter-spacing: 0;
}
.c-conversion, .c-conversion__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.c-conversion__button {
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  align-items: center;
  border: 0.1rem solid #9e7e3f;
  border-radius: 0.2rem;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  height: 4.0625rem;
  justify-content: space-between;
  justify-content: center;
}
.c-conversion__button--white {
  background-color: #fff;
  border: 1px solid #9e7e3f;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #9e7e3f;
  height: 4.0625rem;
}
.c-conversion__button--white .c-conversion__buttonBox {
  margin-bottom: 0;
}
.c-conversion__button--white .c-conversion__buttonText {
  letter-spacing: 0;
  padding: 0 1.25rem;
  line-height: 1;
}
.c-conversion__buttonSearch {
  background-color: #9e7e3f;
  color: #fff;
  padding: 0 1rem;
  -webkit-transition: background-color 0.3s cubic-bezier(0.11, 0, 0.5, 0);
  transition: background-color 0.3s cubic-bezier(0.11, 0, 0.5, 0);
}
@media (hover: hover) and (pointer: fine) {
  .c-conversion__buttonSearch:hover {
    background-color: rgba(158, 126, 63, 0.8);
  }
}
.c-conversion__buttonReservation {
  background-color: #fff;
  color: #9e7e3f;
  display: none;
  padding: 0 2.3rem;
  -webkit-transition: background-color 0.3s cubic-bezier(0.11, 0, 0.5, 0);
  transition: background-color 0.3s cubic-bezier(0.11, 0, 0.5, 0);
}
@media (hover: hover) and (pointer: fine) {
  .c-conversion__buttonReservation:hover {
    background-color: hsla(0, 0%, 100%, 0.8);
  }
}
.c-conversion__buttonBox, .restaurant .c-conversion__buttonReservation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.c-conversion__buttonBox {
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  align-items: center;
  justify-content: center;
  margin: -0.1rem 0 0.3rem;
}
.c-conversion__buttonIcon {
  display: block;
  margin: -0.625rem 0 0 0;
}
.c-conversion__buttonIcon svg {
  fill: #fff;
  height: 1rem;
  width: 1rem;
}
.c-conversion__buttonText {
  display: block;
  font-size: 1rem;
  letter-spacing: 0.32rem;
  line-height: 1;
}
.c-conversion__buttonTextReservation {
  display: block;
  font-size: 1.4rem;
  line-height: 1;
}
.c-conversion__buttonLabel {
  display: block;
  font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, Hiragino Kaku Gothic ProN, Hiragino Sans, sans-serif;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1;
}

.c-faq-list {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  width: 100%;
}
.c-faq-list.c-list:not(:last-of-type) {
  margin-bottom: 4.375rem;
}
@media (width <= 768px) {
  .c-faq-list.c-list:not(:last-of-type) {
    margin-bottom: 4.375rem;
  }
}
.c-faq-list.c-faq-list.c-faq-list--01 {
  margin-bottom: 2.5rem;
}
.c-faq-list__item {
  border: 1px solid #cbc5b5;
  background: #fff;
  border-radius: 0.3125rem;
  position: relative;
}
.c-faq-list__header {
  position: relative;
}
.c-faq-list__header:before {
  content: "";
  width: 1.25rem;
  height: 1px;
  background: #241d14;
  position: absolute;
  display: block;
  top: 2.5rem;
  right: 2.3125rem;
}
@media (width <= 768px) {
  .c-faq-list__header:before {
    width: 0.75rem;
    top: 1.25rem;
    right: 1rem;
  }
}
.c-faq-list__header:after {
  content: "";
  width: 1.25rem;
  height: 1px;
  background: #241d14;
  position: absolute;
  display: block;
  top: 2.5rem;
  right: 2.3125rem;
  transform: rotate(90deg);
  transition: 0.3s;
}
@media (width <= 768px) {
  .c-faq-list__header:after {
    width: 0.75rem;
    top: 1.25rem;
    right: 1rem;
  }
}
.c-faq-list__header.is-open:after {
  transform: rotate(0);
}
.c-faq-list__question {
  padding: 1.25rem 2.5rem 1.25rem 5rem;
  font-size: 1.125rem;
  position: relative;
  cursor: pointer;
}
@media (width <= 768px) {
  .c-faq-list__question {
    font-size: 0.875rem;
    letter-spacing: 0.04em;
    padding: 0.625rem 2.75rem 0.625rem 2.5rem;
    line-height: 1.18125rem;
  }
}
.c-faq-list__question:before {
  position: absolute;
  left: 1.875rem;
  top: 0.4375rem;
  content: "Q.";
  font-size: 1.75rem;
  color: #a78f45;
}
@media (width <= 768px) {
  .c-faq-list__question:before {
    font-size: 1.125rem;
    top: calc(50% - 0.75rem);
    left: 1rem;
  }
}
.c-faq-list__answer {
  display: none;
  padding-right: 3.125rem;
}
@media (width <= 768px) {
  .c-faq-list__answer {
    letter-spacing: 0.04em;
    padding-right: 0;
  }
}
.c-faq-list__answer .c-link {
  margin-top: 1.25rem;
}
.c-faq-list__p {
  padding: 0 2.5rem 1.875rem 5rem;
  position: relative;
}
@media (width <= 768px) {
  .c-faq-list__p {
    padding: 0 2.75rem 1.25rem 2.5rem;
    font-size: 0.8125rem;
    line-height: 1.3rem;
  }
}
.c-faq-list__p:before {
  position: absolute;
  left: 1.875rem;
  top: -0.625rem;
  content: "A.";
  font-size: 1.75rem;
  color: #a78f45;
}
@media (width <= 768px) {
  .c-faq-list__p:before {
    font-size: 1.125rem;
    top: 0rem;
    left: 1rem;
  }
}

.c-feature.c-section {
  padding: 7.9375rem 0 7.5rem;
}
@media (width <= 768px) {
  .c-feature.c-section {
    padding: 5rem 0 2.5rem;
  }
}
.c-feature .c-title__h2 {
  margin-bottom: 5rem;
  padding-left: 13.125rem;
  height: 25rem;
  background-image: url(../images/feature/feature-bg.jpg);
  background-repeat: no-repeat;
  background-size: 95rem;
  background-position: left top;
  color: #fff;
  font-size: 2rem;
  margin-left: -10rem;
  display: flex;
  align-items: center;
  position: relative;
}
@media (width <= 768px) {
  .c-feature .c-title__h2 {
    font-size: 1.3125rem;
    height: 9rem;
    margin-left: -1.75rem;
    margin-bottom: 1.875rem;
    line-height: 1.6;
    padding-left: 3.75rem;
    margin-bottom: 3.75rem;
  }
}
.c-feature .c-title__h2:before {
  content: "";
  height: 1px;
  width: 1.5rem;
  background: #fff;
  position: absolute;
  left: 10.625rem;
  top: 50%;
}
@media (width <= 768px) {
  .c-feature .c-title__h2:before {
    width: 1rem;
    top: calc(50% - 1.0625rem);
    left: 1.875rem;
  }
}
.c-feature__list {
  display: flex;
  justify-content: center;
  gap: 5rem;
}
@media (width <= 768px) {
  .c-feature__list {
    flex-direction: column;
    gap: 2.1875rem;
  }
}
.c-feature__thumb {
  margin-bottom: 1.875rem;
}
@media (width <= 768px) {
  .c-feature__thumb {
    margin-bottom: 0.9375rem;
  }
}
.c-feature__title {
  font-size: 1.3125rem;
  margin-bottom: 0.625rem;
}
@media (width <= 768px) {
  .c-feature__title {
    margin-bottom: 0rem;
  }
}
.c-feature__item {
  flex: 1;
  max-width: 25rem;
}
@media (width <= 768px) {
  .c-feature__p {
    font-size: 0.875rem;
  }
}
.c-feature__link--right {
  margin-top: 1.25rem;
  text-align: right;
}
.c-feature__concept {
  margin-bottom: 5rem;
}
@media (width <= 768px) {
  .c-feature__concept {
    margin-bottom: 2.8125rem;
  }
}
@media (width <= 768px) {
  .c-feature__concept .c-title__h2 {
    margin-left: 0;
    font-size: 1.5rem !important;
    letter-spacing: 0.04em;
    line-height: 1.6;
    margin-bottom: 0.625rem !important;
  }
}
@media (width <= 768px) {
  .c-feature__concept .c-title--eng02 {
    margin-bottom: 0.625rem;
  }
}
.c-feature__concept .c-block02__text {
  padding-right: 10rem;
}
@media (width <= 768px) {
  .c-feature__concept .c-block02__text {
    padding-right: 0;
    padding: 0 1.75rem;
  }
}
@media (width <= 768px) {
  .c-feature__concept .c-block02__thumb {
    margin-left: -1.75rem;
    width: calc(100vw - 1.25rem);
    margin-bottom: 2.5rem;
  }
}
@media (width <= 768px) {
  .c-feature__concept .c-block02__p {
    font-size: 0.9375rem;
  }
}

.c-fixed-menu {
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 10;
}
@media (width <= 768px) {
  .c-fixed-menu {
    width: 100%;
  }
}
.c-fixed-menu__list {
  display: flex;
}
.c-fixed-menu__item {
  background-color: #a78f45;
  width: 12.5rem;
  text-align: center;
}
@media (width <= 768px) {
  .c-fixed-menu__item {
    width: 50%;
  }
}
.c-fixed-menu__item:not(:last-of-type) {
  border-right: 1px solid #fff;
}
.c-fixed-menu__link {
  display: block;
  color: #fff;
  font-size: 0.8125rem;
  padding: 1.25rem 0;
  line-height: 1;
}
@media (width <= 768px) {
  .c-fixed-menu__link {
    padding: 1.125rem 0;
    font-size: 0.75rem;
  }
}

.c-flex {
  display: flex;
}
.c-flex--02 > *,
.c-flex--02 .c-flex__item {
  width: 50%;
}
.c-flex--03 > *,
.c-flex--03 .c-flex__item {
  width: 33.3%;
}
.c-flex--04 > *,
.c-flex--04 .c-flex__item {
  width: 25%;
}
.c-flex--05 > *,
.c-flex--05 .c-flex__item {
  width: 20%;
}
@media (width <= 768px) {
  .c-flex--sp01 {
    flex-direction: column !important;
  }
  .c-flex--sp01 .c-flex__item {
    width: 100%;
  }
}
.c-flex__item {
  width: 50%;
}
.c-flex--col-reverse {
  flex-direction: column-reverse;
}
.c-flex--row-reverse {
  flex-direction: row-reverse;
}
.c-flex--j-center {
  justify-content: center;
}
.c-flex--j-between {
  justify-content: space-between;
}
.c-flex--j-end {
  justify-content: flex-end;
}
.c-flex--a-center {
  align-items: center;
}
.c-flex--a-start {
  align-items: flex-start;
}
.c-flex--a-end {
  align-items: flex-end;
}
.c-flex--wrap {
  flex-wrap: wrap;
}
.c-flex--2 .c-flex__item {
  width: calc(50% - 1.25rem);
}
@media (width <= 768px) {
  .c-flex--2 .c-flex__item {
    width: 100%;
  }
}
.c-flex--3 .c-flex__item {
  width: calc(33.333% - 5rem / 3);
}
@media (width <= 768px) {
  .c-flex--3 .c-flex__item {
    width: 100%;
  }
}
.c-flex--4 .c-flex__item {
  width: calc(25% - 7.5rem / 4);
}
@media (width <= 768px) {
  .c-flex--4 .c-flex__item {
    width: 100%;
  }
}
.c-flex--friendly {
  gap: 2.5rem;
}
.c-flex--friendly .c-flex__item {
  width: calc(33.33% - 1.666875rem);
}

.c-gmap iframe {
  width: 100%;
  height: 100%;
}
.c-gmap--top {
  height: 37.5rem;
  margin-top: 5rem;
}
@media (width <= 768px) {
  .c-gmap--top {
    margin: 2.5rem -1.75rem 0;
    width: calc(100% + 3.5rem);
    height: 15rem;
  }
}
.c-gmap__link {
  display: inline-block;
  line-height: 1;
  border: 1px solid #cbc5b5;
  padding: 0.25rem 0.3125rem;
  font-size: 0.875rem;
  background-image: url(../images/common/marker.png);
  background-repeat: no-repeat;
  background-size: 0.625rem;
  background-position: 0.3125rem 50%;
  padding-left: 1.25rem;
}
@media (width <= 768px) {
  .c-gmap__link {
    margin-left: 0;
  }
}

.c-header {
  height: 45rem;
  position: relative;
  color: #fff;
  overflow: hidden;
}
@media (width <= 768px) {
  .c-header {
    height: 32.625rem;
  }
}
.c-header:after {
  content: "";
  background: rgba(0, 0, 0, 0.55);
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.c-header__bg {
  position: absolute;
  top: 0;
  left: 0;
}
.c-header .c-inner {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}
@media (width <= 768px) {
  .c-header .c-inner {
    flex-direction: column;
    justify-content: start;
    padding-top: 8.75rem;
  }
}
.c-header__head {
  width: 50%;
  letter-spacing: 0.04em;
}
@media (width <= 768px) {
  .c-header__head {
    width: 100%;
    padding-left: 0;
  }
}
.c-header__eng {
  font-size: 1.25rem;
  font-family: "Cormorant", serif;
}
@media (width <= 768px) {
  .c-header__eng {
    font-size: 1rem;
  }
}
.c-header__title {
  font-size: 2.8125rem;
  line-height: 1.05;
}
@media (width <= 768px) {
  .c-header__title {
    font-size: 2rem;
    margin-bottom: 1.625rem;
  }
}
.c-header__text {
  width: 50%;
  font-size: 1.125rem;
  line-height: 2.2;
}
@media (width <= 768px) {
  .c-header__text {
    width: 100%;
    font-size: 0.9375rem;
    line-height: 2;
  }
}
.c-header__bgFont {
  position: absolute;
  right: 0;
  bottom: 5rem;
  font-size: 13.75rem;
  line-height: 1;
  color: rgba(167, 143, 69, 0.07);
}
@media (width <= 768px) {
  .c-header__bgFont {
    font-size: 6.5rem;
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    bottom: inherit;
    right: -1.1875rem;
  }
}
.c-header--simple {
  color: #241d14;
  height: 35.4375rem;
}
@media (width <= 768px) {
  .c-header--simple {
    height: auto;
    display: block;
    min-height: 18.125rem;
  }
}
.c-header--simple .c-header__head {
  padding-left: 0;
}
.c-header--simple .c-header__text {
  padding-left: 0.625rem;
}
@media (width <= 768px) {
  .c-header--simple .c-header__text {
    padding-left: 0;
  }
}
.c-header--simple .c-inner {
  padding: 5.625rem 1.75rem 4.375rem 0;
  justify-content: start;
}
@media (width <= 768px) {
  .c-header--simple .c-inner {
    padding: 8.75rem 1.75rem 4.375rem;
  }
}
.c-header--simple:after {
  content: inherit;
}
.c-header--simple .c-header__eng {
  color: #a78f45;
}
.l-wedding .c-header:after {
  background: rgba(0, 0, 0, 0.3);
}
@media (width <= 768px) {
  .l-wedding .c-header .c-inner {
    padding-top: 11.25rem;
  }
}

.c-hr {
  width: 100%;
  height: 1px;
  background-color: #cbc5b5;
  margin: 5.3125rem 0;
}
@media (width <= 768px) {
  .c-hr {
    margin: 3.75rem 0;
  }
}

.c-inner {
  width: 100%;
  max-width: 85rem;
  margin: 0 auto;
}
@media (width <= 768px) {
  .c-inner {
    padding: 0 1.75rem;
  }
  body.p-home .c-inner {
    padding: 0 1.25rem;
  }
}
.c-inner--small {
  max-width: 80rem;
}
@media (width <= 768px) {
  .c-inner--small {
    max-width: 100%;
  }
}
.c-inner--medium {
  max-width: 85rem;
}
@media (width <= 768px) {
  .c-inner--medium {
    max-width: 100%;
  }
}
.c-inner--big {
  max-width: 95rem;
}
@media (width <= 768px) {
  .c-inner--big {
    max-width: 100%;
  }
}
.c-inner--full {
  max-width: 105rem;
}
@media (width <= 768px) {
  .c-inner--full {
    max-width: 100%;
  }
}
.c-inner--extend {
  max-width: 105rem;
  width: 100vw;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
.c-inner--news {
  max-width: 65rem;
}
@media (width <= 768px) {
  .c-inner--news {
    max-width: 100%;
  }
}

.c-lang-nav {
  margin: 0.625rem 0 0 1.25rem;
}
@media (width <= 768px) {
  .c-lang-nav {
    margin-top: 0;
  }
  body:not(.p-home) .c-lang-nav {
    margin-left: 0.625rem;
  }
}
.c-lang-nav__list {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 0.625rem;
}
.c-lang-nav__link {
  color: #fff;
  font-size: 0.875rem;
}
@media (width <= 768px) {
  .c-lang-nav__link {
    font-size: 0.8875rem;
    letter-spacing: 0.04em;
  }
}
.is-menu-clicked .c-lang-nav__link {
  color: #241d14;
}

.c-link {
  display: inline-block;
  border-bottom: 1px solid #cbc5b5;
  position: relative;
  padding-right: 2.5rem;
}
@media (width <= 768px) {
  .c-link {
    font-size: 0.8125rem;
  }
}
.c-link:after {
  content: "";
  position: absolute;
  right: 0;
  top: calc(50% - 0.5625rem);
  width: 1.125rem;
  height: 1.125rem;
  background-image: url(../images/common/rounded-arrow.png);
  background-repeat: no-repeat;
  background-size: cover;
}
.c-link--arrow {
  padding-right: 1.875rem;
}
.c-link--arrow:after {
  content: "";
  position: absolute;
  right: 0;
  top: calc(50% - 0.375rem);
  width: 1.463125rem;
  height: 0.550625rem;
  background-image: url(../images/common/arrow-slider.png);
  background-repeat: no-repeat;
  background-size: cover;
}
.c-link--arrow02 {
  padding: 0 0 0 1.875rem;
}
.c-link--arrow02:after {
  right: inherit;
  left: 0;
}
.c-link--external {
  padding-right: 1.5625rem;
}
.c-link--external:after {
  background-image: url(../images/common/external.png);
  background-repeat: no-repeat;
  background-size: 0.875rem;
  width: 0.875rem;
  height: 0.875rem;
  right: 0;
  top: calc(50% - 0.4375rem);
}
.c-link--no-bg {
  padding-right: 0;
}
.c-link--no-bg:after {
  content: inherit;
}

.c-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.c-list--upper-alphabet {
  list-style: upper-alpha;
}
.c-list--lower-alphabet {
  list-style: lower-alpha;
}
.c-list--upper-roman {
  list-style: upper-roman;
}
.c-list--lower-roman {
  list-style: lower-roman;
}
.c-list--none {
  list-style: none;
}
.c-list--circle {
  list-style: circle;
}
.c-list--circle2 .c-list__item {
  margin-left: 0.625rem;
  padding-left: 1.25rem;
  position: relative;
}
@media (width <= 768px) {
  .c-list--circle2 .c-list__item {
    padding-left: 0.9375rem;
  }
}
.c-list--circle2 .c-list__item:before {
  position: absolute;
  content: "";
  width: 0.375rem;
  height: 0.375rem;
  border-radius: 999px;
  background: #a78f45;
  left: 0;
  top: 0.9em;
}
@media (width <= 768px) {
  .c-list--circle2 .c-list__item:before {
    top: 0.85em;
  }
}
.c-list--square {
  list-style: square;
}
.c-list--decimal {
  list-style: decimal;
}
.c-list--decimal-leading-zero {
  list-style: decimal-leading-zero;
}

.c-new-block {
  display: flex;
}
@media (width <= 768px) {
  .c-new-block {
    flex-wrap: wrap;
  }
}
.c-new-block__thumb {
  width: 50%;
}
@media (width <= 768px) {
  .c-new-block__thumb {
    width: 100%;
  }
}
@media (width <= 768px) {
  .c-new-block__thumb--sp-left {
    margin-left: -1.75rem;
    width: calc(100vw - 1.75rem);
  }
}
@media (width <= 768px) {
  body.home .c-new-block__thumb--sp-left {
    margin-left: -1.25rem;
    width: calc(100vw - 1.25rem);
  }
}
@media (width <= 768px) {
  .c-new-block__thumb--sp-right {
    margin-right: -1.75rem;
    width: calc(100vw - 1.75rem);
  }
}
@media (width <= 768px) {
  body.home .c-new-block__thumb--sp-right {
    margin-right: -1.25rem;
    width: calc(100vw - 1.25rem);
  }
}
@media (width <= 768px) {
  .c-new-block__thumb--sp-full {
    margin-left: -1.75rem;
    margin-right: -1.75rem;
    width: 100vw;
  }
}
@media (width <= 768px) {
  body.home .c-new-block__thumb--sp-full {
    margin-left: -1.25rem;
    margin-right: -1.25rem;
    width: 100vw;
  }
}
.c-new-block__text {
  width: 50%;
}
@media (width <= 768px) {
  .c-new-block__text {
    width: 100%;
  }
}
.c-new-block__text--vertical {
  display: flex;
  justify-content: space-between;
}
.c-new-block__text--vertical .c-new-block__title {
  writing-mode: vertical-rl;
}
.c-new-block__text--aie {
  align-items: end;
}
.c-new-block__text-content {
  width: 21.875rem;
}
@media (width <= 768px) {
  .c-new-block__text-content {
    width: 100%;
  }
}
.c-new-block--reverse {
  flex-direction: row-reverse;
}
.c-new-block--aic {
  align-items: center;
}
.c-new-block--jcc {
  justify-content: center;
}
@media (width <= 768px) {
  .c-new-block--01 {
    flex-direction: column-reverse;
    margin-bottom: 2.5rem;
    gap: 3.125rem;
  }
}
@media (width <= 768px) {
  .c-new-block--01 .c-title__h2-top {
    margin-left: 0;
  }
}
.c-new-block--01 .c-new-block__text {
  padding: 0 7.5rem 0 10rem;
}
@media (width <= 768px) {
  .c-new-block--01 .c-new-block__text {
    padding: 0;
    align-items: center;
  }
}
.c-new-block--01 .c-new-block__text-header {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1.875rem;
  align-items: start;
}
.c-new-block--01 .c-new-block__text-header .c-title--eng {
  margin-right: 3.75rem;
}
.c-new-block--01 .c-new-block__text-header--right {
  align-items: end;
}
.c-new-block--01 .c-new-block__text-content {
  text-align: left;
}
@media (width <= 768px) {
  .c-new-block--01 .c-new-block__text-content {
    width: 14.5625rem;
  }
}
@media (width <= 768px) {
  .c-new-block--01 .c-new-block__title {
    padding-top: 0;
  }
}
.c-new-block--01 .c-new-block__p {
  font-size: 1.125rem;
  letter-spacing: 0.02em;
  line-height: 2.2;
  text-align: left;
}
@media (width <= 768px) {
  .c-new-block--01 .c-new-block__p {
    font-size: 0.9375rem;
    width: 100%;
  }
}
@media (width <= 768px) {
  .c-new-block--01.c-new-block--reverse .c-title--eng {
    margin-right: 0;
    transform: translateX(-1.25rem);
  }
}
.c-new-block--01.c-new-block--reverse .c-new-block__text {
  padding: 0 10rem 0 8.125rem;
}
@media (width <= 768px) {
  .c-new-block--01.c-new-block--reverse .c-new-block__text {
    padding: 0;
    align-items: start;
  }
}
.c-new-block--01.c-new-block--reverse .c-new-block__text-content {
  order: 1;
  text-align: right;
}
.c-new-block--01.c-new-block--reverse .c-new-block__text-header {
  order: 2;
}
.c-new-block--01 .c-btn {
  width: 15.375rem;
  padding-right: 0rem;
}
@media (width <= 768px) {
  .c-new-block--01 .c-btn {
    max-width: 100%;
  }
}
.c-new-block--02 {
  gap: 7.5rem;
}
@media (width <= 768px) {
  .c-new-block--02 {
    flex-wrap: wrap;
    gap: 2.5rem;
  }
}
.c-new-block--02 .c-new-block__item {
  width: calc(50% - 3.75rem);
}
@media (width <= 768px) {
  .c-new-block--02 .c-new-block__item {
    width: 100%;
  }
}
.c-new-block--02 .c-new-block__text {
  padding: 0;
  padding-left: 10rem;
}
@media (width <= 768px) {
  .c-new-block--02 .c-new-block__text {
    padding: 0;
  }
}
.c-new-block--02.c-new-block--reverse .c-new-block__text {
  padding-left: 0;
  padding-right: 10rem;
}
@media (width <= 768px) {
  .c-new-block--02.c-new-block--reverse .c-new-block__text {
    padding: 0;
  }
}
@media (width <= 768px) {
  .c-new-block--03 {
    gap: 0.3125rem;
  }
}
.c-new-block--03 .c-new-block__text {
  padding-left: 10rem;
  padding-right: 5rem;
}
@media (width <= 768px) {
  .c-new-block--03 .c-new-block__text {
    padding: 0;
  }
}
.c-new-block--03.c-new-block--reverse .c-new-block__text {
  padding-left: 5rem;
  padding-right: 10rem;
}
@media (width <= 768px) {
  .c-new-block--03.c-new-block--reverse .c-new-block__text {
    padding: 0;
  }
}
@media (width <= 768px) {
  .c-new-block--wedding.c-new-block {
    gap: 1.875rem;
    flex-direction: column-reverse;
  }
}
@media (width <= 768px) {
  .c-new-block--wedding .c-new-block__text-header {
    gap: 0;
  }
}
.c-new-block--wedding .c-title--eng {
  transform: translateX(-5rem) translateY(1.25rem);
}
@media (width <= 768px) {
  .c-new-block--wedding .c-title--eng {
    padding-right: 0;
    margin-right: 0 !important;
    transform: inherit;
  }
}
.c-new-block--wedding .c-title__h2-top {
  margin-bottom: 1.25rem;
}
@media (width <= 768px) {
  .c-new-block--wedding .c-title__h2-top {
    padding-top: 0;
    padding-left: 4.6875rem;
  }
}
.c-new-block--wedding .c-new-block__text {
  padding-left: 20rem;
}
@media (width <= 768px) {
  .c-new-block--wedding .c-new-block__text {
    padding: 0;
  }
}
.c-new-block--wedding .c-new-block__p {
  width: 24.125rem;
}
@media (width <= 768px) {
  .c-new-block--wedding .c-new-block__p {
    width: 100%;
  }
}
.c-new-block--wedding .c-btn {
  width: 13.75rem;
}
.c-new-block .c-btn:nth-of-type(1) {
  margin-top: 2.5rem;
}
.c-new-block .c-btn:not(:last-of-type) {
  margin-bottom: 1rem;
}

.c-news-card {
  display: flex;
  align-items: center;
  border: 1px solid #cbc5b5;
  background: #fff;
  border-radius: 0.3125rem;
}
@media (width <= 768px) {
  .c-news-card {
    flex-wrap: wrap;
  }
}
.c-news-card__thumb {
  width: 22.5rem;
  height: 100%;
}
@media (width <= 768px) {
  .c-news-card__thumb {
    width: 100%;
    height: 14.75rem;
  }
}
.c-news-card__text {
  width: calc(100% - 22.5rem);
  padding: 0 3.5rem;
}
@media (width <= 768px) {
  .c-news-card__text {
    width: 100%;
    padding: 1.5625rem;
  }
}
.c-news-card__header {
  display: flex;
  align-items: center;
  gap: 1.875rem;
}
.c-news-card__title {
  font-size: 0.9375rem;
  line-height: 1.6;
}
.c-news-card__date {
  font-size: 0.875rem;
  display: inline-block;
}
@media (width <= 768px) {
  .c-news-card__date {
    font-size: 0.6875rem;
  }
}
.c-news-card .c-cat-list {
  margin-bottom: 0;
}
.c-news-card .c-cat-list__item {
  font-size: 0.75rem;
  color: #fff;
  background: #a78f45;
  margin-bottom: 0;
}
@media (width <= 768px) {
  .c-news-card .c-cat-list__item {
    font-size: 0.625rem;
  }
}
.c-news-card__title {
  font-size: 1.125rem;
  line-height: 1.925rem;
  margin-bottom: 1.25rem;
}
@media (width <= 768px) {
  .c-news-card__title {
    font-size: 1rem;
    letter-spacing: 0.04em;
    line-height: 1.6;
    -webkit-line-clamp: inherit !important;
  }
}
.c-news-card__p {
  font-size: 0.875rem;
}
@media (width <= 768px) {
  .c-news-card__p {
    font-size: 0.8125rem;
    line-height: 1.6;
  }
}

.c-news-list {
  display: flex;
  flex-wrap: wrap;
  gap: 2.5rem;
  margin-bottom: 3.75rem;
}
@media (width <= 768px) {
  .c-news-list {
    margin-bottom: 2.5rem;
    gap: 1.5rem;
  }
}
.c-news-list__item {
  width: 100%;
  min-height: 17rem;
}

.c-notice {
  padding: 2.1875rem;
}
@media (width <= 768px) {
  .c-notice {
    width: 100vw;
    margin: 0 -1.75rem 4.375rem;
    padding: 3rem 1.75rem;
  }
}
.c-notice .c-btn {
  margin-top: 2.5rem;
  background-color: #fff;
}
@media (width <= 768px) {
  .c-notice .c-btn {
    margin-top: 2.1875rem;
  }
}
.c-notice__title {
  font-size: 1.5rem;
}
@media (width <= 768px) {
  .c-notice__title {
    font-size: 1.3125rem;
    line-height: 1.6;
    margin-bottom: 0.9375rem;
  }
}
.c-notice__p {
  font-size: 0.875rem;
  line-height: 2.2857142857;
}
@media (width <= 768px) {
  .c-notice__p {
    line-height: 2;
  }
}

.c-other-posts {
  display: flex;
  gap: 2.5rem;
  flex-wrap: wrap;
  margin-bottom: 4rem;
}
@media (width <= 768px) {
  .c-other-posts {
    gap: 1.5rem;
    margin-bottom: 2.5rem;
  }
}
.c-other-posts__item {
  width: calc(50% - 1.25rem);
}
@media (width <= 768px) {
  .c-other-posts__item {
    width: 100%;
    height: 11.0625rem;
  }
}
.c-other-posts__item .c-news-card {
  align-items: start;
}
@media (width <= 768px) {
  .c-other-posts__item .c-news-card {
    height: 100%;
  }
}
.c-other-posts__item .c-news-card__title {
  margin-bottom: 0;
  font-size: 1.3125rem;
  line-height: 1.6;
  text-align: left;
}
@media (width <= 768px) {
  .c-other-posts__item .c-news-card__title {
    font-size: 0.75rem;
    line-height: 1.6;
    letter-spacing: 0.04em;
    -webkit-line-clamp: 5 !important;
  }
}
.c-other-posts__item .c-news-card__thumb {
  width: 17.25rem;
  height: 12.1875rem;
}
@media (width <= 768px) {
  .c-other-posts__item .c-news-card__thumb {
    width: 8.9375rem;
    height: 100%;
  }
}
.c-other-posts__item .c-news-card__text {
  width: calc(100% - 17.25rem);
  padding: 2.1875rem 1.875rem 1.25rem;
}
@media (width <= 768px) {
  .c-other-posts__item .c-news-card__text {
    width: calc(100% - 8.96875rem);
    padding: 1.4375rem 1.4375rem 0;
  }
}
.c-other-posts__item .c-news-card__header {
  gap: 0.625rem;
  margin-bottom: 0.9375rem;
}
@media (width <= 768px) {
  .c-other-posts__item .c-news-card__header {
    display: block;
    text-align: left;
    margin-bottom: 0.625rem;
  }
}
.c-other-posts__item .c-news-card__date {
  font-size: 0.75rem;
}
@media (width <= 768px) {
  .c-other-posts__item .c-news-card__date {
    font-size: 0.6875rem;
    margin-left: 0;
  }
}
.c-other-posts__item .c-cat-list__item {
  font-size: 0.625rem;
}
.p-news-post .c-other-posts .c-news-card {
  height: 100%;
}
.p-news-post .c-other-posts .c-news-card__header {
  flex-wrap: wrap;
}
.p-news-post .c-other-posts .c-cat-list__item {
  font-size: 0.625rem;
}
.p-news-post .c-other-posts .c-news-card__text {
  padding: 0.9375rem 1.25rem;
  width: calc(100% - 14rem);
}
.p-news-post .c-other-posts .c-news-card__thumb {
  width: 14rem;
  height: 100%;
}
.p-news-post .c-other-posts .c-news-card__date {
  display: inline-block;
}

.c-pagenation {
  margin: 50px 0 0 0;
  text-align: center;
}
.c-pagenation:after, .c-pagenation__navul:after {
  clear: both;
  content: ".";
  display: block;
  height: 0;
  visibility: hidden;
}
.c-pagenation__nav {
  margin: 0;
}
.c-pagenation__item {
  float: left;
  list-style: none outside none;
  margin-left: 3px;
  margin-bottom: 3px;
}
.c-pagenation__item:first-child {
  margin-left: 0;
}
.c-pagenation__item--active {
  background-color: #333;
  border-radius: 3px;
  color: #ffffff;
  cursor: not-allowed;
  padding: 10px 20px;
}
.c-pagenation__link {
  background: none repeat scroll 0 0 #cccccc;
  border-radius: 3px;
  color: #ffffff;
  display: block;
  padding: 10px 20px;
  text-decoration: none;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
}
.c-pagenation__link:hover {
  background-color: #333;
  color: #ffffff;
  opacity: 0.8;
  transition-duration: 500ms;
  transition-property: all;
  transition-timing-function: ease;
}

.c-page-top {
  text-align: center;
}
.c-page-top.c-section {
  padding: 8.125rem 0 5rem;
}
@media (width <= 768px) {
  .c-page-top.c-section {
    padding: 3.125rem 0 3.125rem;
  }
}
.c-page-top__sub-title {
  font-size: 1.875rem;
}
@media (width <= 768px) {
  .c-page-top__sub-title {
    font-size: 1.125rem;
  }
}
.c-page-top__title {
  font-size: 2.625rem;
  margin-bottom: 2.5rem;
}
@media (width <= 768px) {
  .c-page-top__title {
    font-size: 1.75rem;
    margin-bottom: 0.625rem;
  }
}
.c-page-top__p {
  max-width: 65rem;
  margin-left: auto;
  margin-right: auto;
}
@media (width <= 768px) {
  .c-page-top__p {
    text-align: left;
  }
}
.c-page-top__p:not(:last-child) {
  margin-bottom: 2.875rem;
}
@media (width <= 768px) {
  .c-page-top__p:not(:last-child) {
    margin-bottom: 2.1875rem;
  }
}
.c-page-top .c-btn {
  min-width: 15.375rem;
}
@media (width <= 768px) {
  .c-page-top .c-btn {
    max-width: 12.5rem;
  }
}

.c-pager {
  display: flex;
  justify-content: center;
  gap: 1.875rem;
}
@media (width <= 768px) {
  .c-pager {
    width: 100%;
  }
}
.c-pager__arrow {
  width: 1.66125rem;
  height: 0.625rem;
  color: #a78f45;
}
.c-pager__prev {
  transform: scale(-1, 1);
}
.c-pager__dots {
  display: flex;
  gap: 1.875rem;
  font-size: 1.5rem;
  font-family: "Cormorant", serif;
}
@media (width <= 768px) {
  .c-pager__dots {
    font-size: 1.25rem;
  }
}
.c-pager__dot {
  display: inline-block;
  color: #cbc5b5;
}
.c-pager__dot--current {
  color: #a78f45;
}

.c-place__header {
  padding-top: 10.3125rem;
}
@media (width <= 768px) {
  .c-place__header {
    padding-top: 8.75rem;
  }
}
@media (width <= 768px) {
  .c-place__header .c-block02__thumb {
    margin-left: -1.75rem;
    width: 100vw;
  }
}
@media (width <= 768px) and (width <= 768px) {
  .c-place__header .c-block02__thumb {
    margin-bottom: 2.5rem;
  }
}
@media (width <= 768px) {
  .c-place__header .c-block02__img {
    max-width: 100%;
  }
}
.c-place__eng.c-title--eng02 {
  font-size: 1.25rem;
  letter-spacing: 0.04em;
}
@media (width <= 768px) {
  .c-place__eng.c-title--eng02 {
    font-size: 1.0625rem;
    margin-bottom: 0.625rem;
  }
}
.c-place__title.c-title {
  font-size: 3.125rem;
  letter-spacing: 0.04em;
  font-family: "Cormorant", "Zen Old Mincho", serif;
}
@media (width <= 768px) {
  .c-place__title.c-title {
    font-size: 2.5rem;
    margin-bottom: 0;
  }
}
.c-place__text {
  padding-top: 7.8125rem;
  padding-right: 7.5rem;
}
@media (width <= 768px) {
  .c-place__text {
    padding: 0;
  }
}
.c-place__p {
  font-size: 1.125rem;
  line-height: 2.2;
}
@media (width <= 768px) {
  .c-place__p {
    font-size: 0.9375rem !important;
    line-height: 2;
  }
}
.c-place__top.c-section {
  padding-bottom: 0;
}
.c-place__top .c-inner {
  margin-bottom: 4.0625rem;
}
.c-place__top .c-stay-others__block.c-block02:not(:last-of-type) {
  margin-bottom: 5rem;
}
@media (width <= 768px) {
  .c-place__top .c-stay-others__block.c-block02:not(:last-of-type) {
    margin-bottom: 5rem;
  }
}
.c-place__top .c-stay-others__block.c-block02--reverse .c-block02__thumb {
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateX(2.5rem) translateY(-1.875rem);
}
@media (width <= 768px) {
  .c-place__top .c-stay-others__block.c-block02--reverse .c-block02__thumb {
    transform: inherit;
    margin-left: 0;
    width: 100%;
  }
}
.c-place__top .c-stay-others__block.c-block02--reverse .c-block02__img {
  width: 32.5rem;
}
@media (width <= 768px) {
  .c-place__top .c-stay-others__block.c-block02--reverse .c-block02__img {
    width: 100%;
  }
}
.c-place__top .c-stay-others__block.c-block02--reverse .c-stay-others__text {
  padding: 0 16.875rem 0 0;
}
@media (width <= 768px) {
  .c-place__top .c-stay-others__block.c-block02--reverse .c-stay-others__text {
    padding: 0;
  }
}
.c-place__top .c-stay-others__block .c-stay-others__text {
  margin-top: -2.5rem;
  padding-right: 7.5rem;
}
@media (width <= 768px) {
  .c-place__top .c-stay-others__block .c-stay-others__text {
    margin-top: 0;
    padding-right: 0;
  }
}
@media (width <= 768px) {
  .c-place__top .c-stay-others__block .c-block02__thumb {
    margin-bottom: 1.875rem;
  }
}
.c-place__top .c-stay-others__block:nth-of-type(2) .c-block02__thumb {
  padding-right: 10rem;
}
@media (width <= 768px) {
  .c-place__top .c-stay-others__block:nth-of-type(2) .c-block02__thumb {
    padding-right: 0;
    margin-left: 0;
    width: 100%;
  }
}
.c-place__top .c-stay-others__title.c-title {
  font-size: 2.5rem;
}
@media (width <= 768px) {
  .c-place__top .c-stay-others__title.c-title {
    font-size: 1.75rem;
    margin-bottom: 1.25rem;
  }
}
@media (width <= 768px) {
  .c-place__top .c-stay-others__p {
    font-size: 0.9375rem;
  }
}
@media (width <= 768px) {
  .c-place__top .c-btn {
    margin-top: 1.875rem;
  }
}
.c-place__type.c-section {
  padding-top: 5rem;
}
.c-place__type .c-title__h2 {
  font-size: 2.5rem;
  text-align: center;
}
@media (width <= 768px) {
  .c-place__type .c-title__h2 {
    font-size: 1.75rem;
    letter-spacing: 0.04em;
    margin-bottom: 2.5rem;
  }
}
.c-place__type .c-inner {
  max-width: 65rem;
}
.c-place__type .c-search__wrapper {
  display: flex;
  gap: 1.25rem;
  align-items: center;
  margin-bottom: 0.9375rem;
}
@media (width <= 768px) {
  .c-place__type .c-search__wrapper {
    display: block;
  }
}
.c-place__type .c-search__wrapper .c-search__form-title {
  width: 12.5rem;
}
@media (width <= 768px) {
  .c-place__type .c-search__wrapper .c-search__form-title {
    width: auto;
  }
}
.c-place__type .c-search__form {
  padding: 2.8125rem 0 2.1875rem;
  border-bottom: 1px dashed #a78f45;
  margin-bottom: 2.5rem;
}
@media (width <= 768px) {
  .c-place__type .c-search__form {
    padding-top: 0rem;
    margin-bottom: 3.75rem;
  }
}
@media (width <= 768px) {
  .c-place__type .c-search__form-title {
    margin-top: 1.25rem;
  }
}
.c-place__type .c-search__form-title,
.c-place__type .c-search__form-checkboxes {
  margin-bottom: 0;
}
@media (width <= 768px) {
  .c-place__type .c-search__form-title,
  .c-place__type .c-search__form-checkboxes {
    margin-bottom: 0.625rem;
  }
}
.c-place__rent-all.c-section {
  padding: 5.625rem 0 2.5rem;
}
@media (width <= 768px) {
  .c-place__rent-all.c-section {
    padding: 5rem 0;
  }
}
.c-place__rent-all-header {
  display: flex;
  padding-bottom: 3.125rem;
}
@media (width <= 768px) {
  .c-place__rent-all-header {
    flex-direction: column;
    padding-bottom: 0.625rem;
  }
}
.c-place__rent-all-title {
  width: 30rem;
  font-size: 1.75rem;
}
@media (width <= 768px) {
  .c-place__rent-all-title {
    width: 100%;
    font-size: 1.3125rem;
    line-height: 1.6;
    margin-bottom: 0.625rem;
  }
}
.c-place__rent-all-p {
  width: calc(100% - 30rem);
}
@media (width <= 768px) {
  .c-place__rent-all-p {
    width: 100%;
    font-size: 0.9375rem;
  }
}
.c-place__rent-all-list {
  padding: 1.875rem 0;
  border-top: 1px solid #cbc5b5;
  border-bottom: 1px solid #cbc5b5;
  padding-left: 1.25rem;
}
.c-place__rent-all-item::marker {
  color: #a78f45;
}
.c-place__rent-all-bottom {
  text-align: center;
  padding: 2.5rem 0 3.125rem;
}
@media (width <= 768px) {
  .c-place__rent-all-bottom {
    padding: 1.25rem 0;
  }
}
@media (width <= 768px) {
  .c-place__rent-all-bottom .c-link {
    font-size: 0.875rem;
    margin-bottom: 0.625rem;
  }
}
.c-place__rent-all-bottom-p {
  margin-bottom: 1.25rem;
}
.c-place__rent-all-tel {
  font-size: 1.875rem;
  letter-spacing: 0.04em;
  margin: 0 0.625rem;
}
@media (width <= 768px) {
  .c-place__rent-all-tel {
    font-size: 1.75rem;
  }
}
.c-place__rent-all-bottom-time {
  font-size: 0.9375rem;
  letter-spacing: 0.04em;
}
.c-place .c-table {
  margin-bottom: 3.75rem;
}
@media (width <= 768px) {
  .c-place .c-table {
    margin-bottom: 1.875rem;
  }
}
.c-place__about.c-section {
  padding: 6.25rem 0;
}
@media (width <= 768px) {
  .c-place__about.c-section {
    padding: 5rem 0;
  }
}
.c-place__about-title {
  font-size: 1.75rem;
  margin-bottom: 1.875rem;
}
@media (width <= 768px) {
  .c-place__about-title {
    font-size: 1.3125rem;
    margin-bottom: 0.9375rem;
  }
}
.c-place__about-h3 {
  font-size: 1.125rem;
  line-height: 1.7777777778;
  padding-left: 1.25rem;
  position: relative;
  margin-bottom: 0.625rem;
  border-left: 0.1875rem solid #a78f45;
}
@media (width <= 768px) {
  .c-place__about-h3 {
    font-size: 1rem;
    padding-left: 0.9375rem;
  }
}
.c-place .c-bottom-bnr {
  justify-content: space-between;
}
@media (width <= 768px) {
  .c-place .c-bottom-bnr .u-text--right {
    text-align: center;
  }
}
.c-place .c-bottom-bnr .c-btn {
  width: 15rem;
}
.c-place .c-bottom-bnr__title {
  font-size: 2.5rem;
  letter-spacing: 0.1em;
  transform: translateX(3.125rem) translateY(4.0625rem);
}
@media (width <= 768px) {
  .c-place .c-bottom-bnr__title {
    transform: inherit;
    font-size: 1.75rem;
    text-indent: inherit;
    padding-left: 1.75rem;
  }
}

.c-place-slider .swiper-wrapper {
  transition-timing-function: linear;
}
.c-place-slider--pager {
  padding-bottom: 1.875rem;
}

.c-point-list {
  max-width: 85rem;
  margin: 0 auto;
  border-top: 1px solid #cbc5b5;
  border-bottom: 1px solid #cbc5b5;
}
.c-point-list__item {
  display: flex;
  align-items: center;
  padding: 3.75rem 3.75rem;
}
@media (width <= 768px) {
  .c-point-list__item {
    flex-direction: column;
    align-items: start;
    padding: 1.5625rem 0;
  }
}
.c-point-list__item:not(:last-child) {
  border-bottom: 1px solid #cbc5b5;
}
@media (width <= 768px) {
  .c-point-list__item .c-btn {
    order: 3;
    margin-top: 2.5rem;
    margin-left: 0;
  }
}
.c-point-list__header {
  width: 19.0625rem;
}
@media (width <= 768px) {
  .c-point-list__header {
    width: 100%;
    display: contents;
  }
}
.c-point-list__text {
  width: calc(100% - 19.0625rem);
}
@media (width <= 768px) {
  .c-point-list__text {
    width: 100%;
    order: 2;
  }
}
.c-point-list__title {
  font-size: 1.75rem;
}
@media (width <= 768px) {
  .c-point-list__title {
    order: 1;
    font-size: 1.125rem;
    text-align: left;
    width: 100%;
  }
}
@media (width <= 768px) {
  .c-point-list__p {
    font-size: 0.875rem;
    letter-spacing: 0.04em;
  }
}

.c-post__bottom {
  text-align: center;
}
.c-post__bottom .c-inner {
  padding: 0 0 5.625rem;
}
@media (width <= 768px) {
  .c-post__bottom .c-inner {
    padding: 0 1.75rem 3.75rem;
  }
}
.c-post__bottom .c-btn {
  text-align: left;
  margin-bottom: 5rem;
}
@media (width <= 768px) {
  .c-post__bottom .c-btn {
    margin-bottom: 3.75rem;
  }
}
.c-post__bottom .c-title__h2 {
  font-size: 2rem;
  margin-bottom: 2.1875rem;
  border-left: 0.1875rem solid #a78f45;
  padding-left: 1.25rem;
  text-align: left;
  line-height: 1.2;
}
@media (width <= 768px) {
  .c-post__bottom .c-title__h2 {
    font-size: 1.3125rem;
    margin-bottom: 1.25rem;
  }
}
.c-post__bottom .c-cat-list {
  overflow-x: scroll;
  display: flex;
  flex-wrap: nowrap;
}
@media (width <= 768px) {
  .c-post__bottom .c-cat-list__item {
    font-size: 0.625rem;
  }
}

.c-reservation-card {
  background-color: #fff;
  margin: 0 auto;
  border: 1px solid #a78f45;
  padding: 1.5rem 2.5rem;
  display: flex;
  align-items: center;
  gap: 4rem;
  max-width: 50rem;
  position: relative;
}
@media (width <= 768px) {
  .c-reservation-card {
    gap: 1.875rem;
    padding: 0 0 3rem;
    max-width: calc(100% - 3.5rem);
  }
}
.c-reservation-card__thumb {
  width: 24.125rem;
}
@media (width <= 768px) {
  .c-reservation-card__thumb {
    width: 8.4375rem;
    height: 7.5rem;
  }
}
.c-reservation-card__text {
  width: calc((100% - 28.125rem) / 16)rem;
}
@media (width <= 768px) {
  .c-reservation-card__text {
    height: 7.5rem;
    display: flex;
    flex-direction: column;
    align-items: start;
    justify-content: center;
    width: calc((100% - 28.125rem) / 16)rem;
  }
}
.c-reservation-card__title {
  font-size: 1.5rem;
  margin-bottom: 1.25rem;
}
@media (width <= 768px) {
  .c-reservation-card__title {
    margin-bottom: 0;
    font-size: 1.1875rem;
    line-height: 1.7368421053;
  }
}
@media (width <= 768px) {
  .c-reservation-card .c-btn {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 3rem;
  }
}

.c-room-selector {
  display: flex;
  gap: 0.75rem;
  justify-content: center;
  margin-bottom: 6.25rem;
}
@media (width <= 768px) {
  .c-room-selector {
    margin-bottom: 3.75rem;
  }
}
.c-room-selector__item {
  background-color: rgba(203, 197, 181, 0.3);
  width: 21.25rem;
  height: 5rem;
  font-size: 1.3125rem;
  line-height: 1.2;
  border-radius: 0.25rem;
  cursor: pointer;
}
@media (width <= 768px) {
  .c-room-selector__item {
    font-size: 0.8125rem;
    height: 3.5rem;
    line-height: 1.1538461538;
    letter-spacing: 0.04em;
  }
}
.c-room-selector__item .u-text--small {
  display: block;
  font-size: 1rem;
}
@media (width <= 768px) {
  .c-room-selector__item .u-text--small {
    font-size: 0.625rem;
  }
}
.c-room-selector__link {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 100%;
  height: 100%;
}

.c-room-slider {
  padding: 3.375rem 0 4rem;
  border-bottom: 1px solid #cbc5b5;
}
@media (width <= 768px) {
  .c-room-slider {
    padding: 4rem 0;
  }
}
.c-room-slider--first {
  padding-top: 0;
}
@media (width <= 768px) {
  .c-room-slider--first {
    padding-top: 0;
  }
}
.c-room-slider:last-of-type {
  border-bottom: none;
  padding-bottom: 0;
}
.c-room-slider__main {
  margin-bottom: 1.5rem;
}
@media (width <= 768px) {
  .c-room-slider__main {
    margin: 0 -1.75rem 0.625rem -1.75rem;
    width: 100vw;
  }
}
@media (width <= 768px) {
  .c-room-slider__thumb {
    margin: 0 -1.75rem;
    width: 100vw;
  }
}
@media (width <= 768px) {
  .c-room-slider__thumb .swiper-wrapper {
    justify-content: start;
  }
}
.c-room-slider__thumb .c-room-slider__item {
  width: 12.1875rem;
  opacity: 0.5;
}
@media (width <= 768px) {
  .c-room-slider__thumb .c-room-slider__item {
    width: 4.625rem;
  }
}
.c-room-slider__thumb .c-room-slider__item.swiper-slide-thumb-active {
  opacity: 1;
}
.c-room-slider__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 2.5rem;
}
@media (width <= 768px) {
  .c-room-slider__header {
    flex-direction: column;
    margin-bottom: 1.875rem;
  }
}
.c-room-slider__header-left {
  width: 20.3125rem;
}
@media (width <= 768px) {
  .c-room-slider__header-left {
    width: 100%;
    margin-bottom: 1.25rem;
  }
}
.c-room-slider__header-p {
  align-items: center;
  margin-bottom: 0.625rem;
}
@media (width <= 768px) {
  .c-room-slider__header-p {
    font-size: 0.9375rem;
  }
}
.c-room-slider__header-title {
  font-size: 2.8125rem;
  letter-spacing: 0.04em;
  line-height: 1.3;
}
@media (width <= 768px) {
  .c-room-slider__header-title {
    font-size: 2.5rem;
  }
}
.c-room-slider__p {
  width: calc(100% - 20.3125rem);
}
@media (width <= 768px) {
  .c-room-slider__p {
    width: 100%;
    font-size: 0.9375rem;
  }
}

.c-scaled-slider {
  margin-bottom: 2.5rem;
}
.c-scaled-slider--main {
  margin-bottom: 2.5rem;
  padding: 0 1.25rem;
}
.c-scaled-slider__thumbs {
  max-width: 73.125rem;
  margin: 0 auto;
  border-top: 1px solid #9e7d42;
  text-align: center;
  padding: 0 1.25rem;
}
.c-scaled-slider__thumbs .c-scaled-slider__item {
  color: rgba(36, 29, 20, 0.5);
  position: relative;
  cursor: pointer;
  padding-top: 0.625rem;
}
@media (width <= 768px) {
  .c-scaled-slider__thumbs .c-scaled-slider__item {
    color: #9e7d42;
    font-size: 0.875rem;
  }
}
.c-scaled-slider__thumbs .c-scaled-slider__item:after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 1px;
  height: 0.5rem;
  background-color: #9e7d42;
}
.c-scaled-slider__thumbs .c-scaled-slider__item:first-of-type:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 1px;
  height: 0.5rem;
  background-color: #9e7d42;
}
.c-scaled-slider__thumbs .c-scaled-slider__item.swiper-slide-thumb-active {
  color: #9e7d42;
}

.c-scroll {
  overflow-x: auto;
}
.c-scroll table {
  min-width: 640px;
  margin: 0 0 40px 0;
}

.c-scroll-bar {
  overflow-y: scroll;
}
.c-scroll-bar::-webkit-scrollbar {
  width: 0.25rem;
}
.c-scroll-bar::-webkit-scrollbar-thumb {
  background-color: hsla(39, 33%, 77%, 0.5);
  border-radius: 999px;
}
.c-scroll-bar::-webkit-scrollbar-track {
  background-color: inherit;
}

.c-scroll-text {
  overflow: hidden;
  display: flex;
  white-space: nowrap;
  line-height: 1;
}
.c-scroll-text__item {
  font-size: 8.5rem;
  color: #fff;
  line-height: 15.75rem;
  position: relative;
  color: rgba(167, 143, 69, 0.1);
}
@media (width <= 768px) {
  .c-scroll-text__item {
    line-height: 14.375rem;
    font-size: 5.5rem;
  }
}
.c-scroll-text__img {
  max-width: inherit;
}

.c-section {
  padding: 9.375rem 0;
}
@media (width <= 768px) {
  .c-section {
    padding: 5rem 0;
  }
}
.c-section--bg {
  background-color: rgba(167, 143, 69, 0.08);
}
.c-section--bg2 {
  background-color: rgba(167, 143, 69, 0.06);
}

.c-section-header {
  display: flex;
  align-items: center;
  gap: 5rem;
  margin-bottom: 3.75rem;
}
@media (width <= 768px) {
  .c-section-header {
    flex-direction: column;
    align-items: start;
    gap: 1.875rem;
    margin-bottom: 2.5rem;
  }
}
.c-section-header__title.c-title.c-section-header__title {
  font-size: 2.25rem;
  margin-bottom: 0;
  padding-left: 2.5rem;
  line-height: 1.35;
  position: relative;
}
@media (width <= 768px) {
  .c-section-header__title.c-title.c-section-header__title {
    padding-left: 2rem;
    font-size: 1.5rem;
    line-height: 1.6;
    margin-right: -1.25rem;
    width: calc(100% + 1.25rem);
  }
}
.c-section-header__title.c-title.c-section-header__title:after {
  content: "";
  position: absolute;
  width: 1.75rem;
  height: 1px;
  background-color: #a78f45;
  left: 0;
  top: 1.25rem;
  transform: rotate(-30deg);
}
@media (width <= 768px) {
  .c-section-header__p {
    font-size: 0.875rem;
  }
}
.c-section-header--type1 .c-section-header__title {
  width: 31.875rem;
}
@media (width <= 768px) {
  .c-section-header--type1 .c-section-header__title {
    width: 100%;
  }
}
.c-section-header--type1 .c-section-header__p {
  width: 45.5rem;
}
@media (width <= 768px) {
  .c-section-header--type1 .c-section-header__p {
    width: 100%;
  }
}

.c-search__form {
  border-top: 1px dashed #a78f45;
  padding: 1.875rem 0 0;
}
@media (width <= 768px) {
  .c-search__form {
    border-top: none;
    border-bottom: 1px dashed #a78f45;
  }
}
.c-search__form-title {
  font-size: 1.125rem;
  margin-bottom: 0.3125rem;
}
@media (width <= 768px) {
  .c-search__form-title {
    font-size: 0.9375rem;
    overflow: hidden;
    margin-bottom: 0.625rem;
  }
}
@media (width <= 768px) {
  .c-search__form-title span {
    position: relative;
  }
  .c-search__form-title span:after {
    content: "";
    display: block;
    position: absolute;
    left: calc(100% + 0.625rem);
    top: 50%;
    width: 100vw;
    height: 1px;
    background-color: #cbc5b5;
  }
}
.c-search__form-checkboxes {
  display: flex;
  gap: 0.75rem;
  flex-wrap: wrap;
  margin-bottom: 2.5rem;
}
@media (width <= 768px) {
  .c-search__form-checkboxes {
    gap: 0.625rem;
    margin-bottom: 1.875rem;
  }
}
.c-search .c-link {
  font-size: 0.875rem;
  margin-left: 1.125rem;
  transform: translateY(-0.1875rem);
}
@media (width <= 768px) {
  .c-search .c-link {
    margin-left: 0;
  }
}
.c-search__label,
.c-search label {
  display: inline-block;
  line-height: 1;
  padding: 0.3125rem 0.625rem;
  background-color: rgba(203, 197, 181, 0.3);
  border-radius: 0.1875rem;
  cursor: pointer;
  transition: all 0.3s ease;
  font-size: 0.875rem;
}
@media (width <= 768px) {
  .c-search__label,
  .c-search label {
    padding: 0.4375rem 0.5625rem;
  }
}
.c-search__label.is-active,
.c-search label.is-active {
  background-color: rgba(167, 143, 69, 0.5);
}
.c-search input[type=checkbox] {
  display: none;
}
.c-search input[type=checkbox]:checked + label {
  background-color: rgba(167, 143, 69, 0.5);
}
.c-search__switch {
  font-size: 0.875rem;
  position: relative;
  display: inline-block;
  margin-bottom: 1.875rem;
  cursor: pointer;
}
@media (width <= 768px) {
  .c-search__switch {
    display: none;
  }
}
.c-search__switch:before {
  content: "";
  position: absolute;
  display: block;
  top: 50%;
  left: calc(-100vw - 0.9375rem);
  width: 100vw;
  height: 1px;
  border-top: 1px dashed #a78f45;
}
.c-search__switch:after {
  content: "";
  position: absolute;
  display: block;
  top: 50%;
  right: calc(-100vw - 0.9375rem);
  width: 100vw;
  height: 1px;
  border-top: 1px dashed #a78f45;
}
.c-search__switch-wrapper {
  overflow: hidden;
  text-align: center;
}
.c-search__switch--sp {
  display: none;
}
@media (width <= 768px) {
  .c-search__switch--sp {
    padding-top: 1.25rem;
    border-top: 1px dashed #a78f45;
    display: flex;
    justify-content: space-between;
  }
  .c-search__switch--sp .c-search__arrow {
    width: 1.125rem;
    height: 1.125rem;
    transform: rotate(90deg) translateX(0.1875rem) !important;
  }
  .is-active .c-search__switch--sp .c-search__arrow {
    transform: rotate(-90deg) translateX(-0.1875rem) !important;
  }
}
.c-search__arrow {
  width: 0.875rem;
  vertical-align: middle;
  margin-left: 0.75rem;
  transform: rotate(90deg) translateX(-0.1875rem);
  display: inline-block;
}
.c-search__open {
  display: inline-block;
}
.c-search__close {
  display: none;
}
.c-search.is-active .c-search__arrow {
  transform: rotate(-90deg) translateX(0.1875rem);
}
.c-search.is-active .c-search__open {
  display: none;
}
.c-search.is-active .c-search__close {
  display: inline-block;
}

.c-slider-linear {
  margin: 5rem 0 0;
  position: relative;
  overflow: hidden;
  height: 22.5rem;
}
@media (width <= 768px) {
  .c-slider-linear {
    height: 14.125rem;
    margin: 0;
  }
}
.c-slider-linear__inner {
  display: flex;
  position: absolute;
}
.c-slider-linear img {
  max-width: inherit;
  width: 126.9375rem;
}
@media (width <= 768px) {
  .c-slider-linear img {
    width: 97.5625rem;
  }
}

.c-slider {
  position: relative;
  padding-bottom: 1.875rem;
}
.c-slider__controller {
  position: absolute;
  bottom: 0;
  display: flex;
  justify-content: end;
  gap: 1.5rem;
  align-items: center;
  width: 100%;
}
@media (width <= 768px) {
  .c-slider__controller {
    gap: 1rem;
  }
}
.c-slider__controller .swiper-pagination-bullet {
  width: 0.375rem;
  height: 0.375rem;
  border-radius: 999px;
}
.c-slider__controller .swiper-pagination-bullet-active {
  background-color: #9e7d42;
}
.c-slider__button {
  position: static;
  width: 1.875rem;
  height: 0.71rem;
  background-image: url(../images/common/arrow.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  cursor: pointer;
  transform: inherit;
  margin-top: 0;
}
@media (width <= 768px) {
  .c-slider__button {
    width: 1.32875rem;
    height: 0.5rem;
  }
}
.c-slider__button--prev {
  transform: rotate(180deg);
}
.c-slider__pagination {
  position: static;
  line-height: 0;
  display: flex;
  width: auto !important;
  align-items: start;
  justify-content: center;
  transform: inherit;
  gap: 0.625rem;
}
@media (width <= 768px) {
  .c-slider__pagination {
    gap: 0.1875rem;
  }
}

.c-slider02 .swiper-wrapper {
  transition-timing-function: linear;
}
.c-slider02__link {
  display: block;
  position: relative;
}
.c-slider02__inner {
  position: absolute;
  z-index: 1;
  color: #fff;
  left: 0;
  bottom: 0;
  padding: 2.5rem;
  width: 100%;
  background: linear-gradient(to bottom, transparent 0, #000 100%);
}
@media (width <= 768px) {
  .c-slider02__inner {
    padding: 1.25rem;
  }
}
.c-slider02__title {
  font-size: 1.5rem;
  letter-spacing: 0.04em;
  margin-bottom: 0.625rem;
}
@media (width <= 768px) {
  .c-slider02__title {
    font-size: 1rem;
    margin-bottom: 0;
  }
}

.c-slider03 {
  position: relative;
  padding-bottom: 1.875rem;
}

.c-slider04 {
  margin-bottom: 6.25rem;
}
@media (width <= 768px) {
  .c-slider04 {
    padding-bottom: 1.5625rem;
    margin-bottom: 5rem;
  }
}
.c-slider04 .c-slider__controller {
  padding-right: 15.625rem;
}
@media (width <= 768px) {
  .c-slider04 .c-slider__controller {
    padding-right: 1.25rem;
  }
}

.c-stay-list {
  display: flex;
  flex-direction: column;
}
.c-stay-list__item {
  display: flex;
  align-items: center;
  padding: 4rem 0;
  border-bottom: 1px solid #cbc5b5;
}
@media (width <= 768px) {
  .c-stay-list__item {
    flex-direction: column;
  }
}
.c-stay-list__item:first-of-type {
  padding-top: 0;
}
.c-stay-list__item:last-of-type {
  border-bottom: none;
}
@media (width <= 768px) {
  .c-stay-list__item:last-of-type {
    padding-bottom: 0;
  }
}
.c-stay-list__thumb {
  width: 45rem;
}
@media (width <= 768px) {
  .c-stay-list__thumb {
    width: calc(100% + 2.25rem);
    margin-left: -1.25rem;
    margin-bottom: 0.8125rem;
  }
}
.c-stay-list__text {
  width: calc(100% - 45rem);
  padding-left: 5rem;
}
@media (width <= 768px) {
  .c-stay-list__text {
    width: 100%;
    padding-left: 0;
  }
}
.c-stay-list__title {
  font-family: "cormorant", serif;
  font-size: 2.5rem;
  letter-spacing: 0.04em;
}
@media (width <= 768px) {
  .c-stay-list__title {
    font-size: 1.75rem;
  }
}
.c-stay-list__sub-title {
  font-size: 1.75rem;
  margin-bottom: 0.625rem;
}
@media (width <= 768px) {
  .c-stay-list__sub-title {
    font-size: 1.125rem;
    letter-spacing: 0.03em;
    margin-bottom: 0.9375rem;
  }
}
.c-stay-list__cat-list {
  display: flex;
  gap: 0.75rem;
  flex-wrap: wrap;
  margin-bottom: 0.3125rem;
}
.c-stay-list__cat-item {
  font-size: 0.875rem;
  padding: 0.3125rem 0.625rem;
  background-color: rgba(203, 197, 181, 0.3);
  border-radius: 0.1875rem;
  line-height: 1;
}
@media (width <= 768px) {
  .c-stay-list__p {
    font-size: 0.75rem;
    letter-spacing: 0.03em;
  }
}
.c-stay-list .c-btn {
  padding-right: 5.75rem;
}
.c-stay-list .c-btn:first-of-type {
  margin-top: 2.5rem;
}
.c-stay-list .c-btn:not(:last-of-type) {
  margin-bottom: 1rem;
}

.c-stay-others {
  padding-bottom: 2.5rem;
  margin-bottom: 0;
}
@media (width <= 768px) {
  .c-stay-others {
    padding: 6.25rem 0 6.5625rem;
  }
}
.c-stay-others__title.c-title {
  font-size: 2.8125rem;
}
@media (width <= 768px) {
  .c-stay-others__title.c-title {
    font-size: 2rem;
    margin-bottom: 0rem;
  }
}
@media (width <= 768px) {
  .c-stay-others__eng.c-title--eng02 {
    font-size: 0.9375rem;
    margin-bottom: 0.625rem;
  }
}
.c-stay-others .c-block02:not(:last-of-type) {
  margin-bottom: 7.5rem;
}
@media (width <= 768px) {
  .c-stay-others .c-block02:not(:last-of-type) {
    margin-bottom: 5rem;
  }
}
.c-stay-others .c-block02__text {
  padding-right: 7.5rem;
  padding-left: 12.5rem;
}
@media (width <= 768px) {
  .c-stay-others .c-block02__text {
    padding: 0;
  }
}
.c-stay-others .c-block02__text p {
  font-size: 1.125rem;
  line-height: 2.2;
}
@media (width <= 768px) {
  .c-stay-others .c-block02__text p {
    font-size: 0.9375rem; /* stay */
    line-height: 2.2; /* stay */
    letter-spacing: 0.04em;
  }
}
.c-stay-others .c-block02--reverse .c-block02__text {
  padding-left: 7.5rem;
  padding-right: 11.25rem;
}
@media (width <= 768px) {
  .c-stay-others .c-block02--reverse .c-block02__text {
    padding: 0;
  }
}
.c-stay-others .c-block02--reverse .c-block02__thumb {
  margin-left: -1.25rem;
}
@media (width <= 768px) {
  .c-stay-others .c-block02__thumb {
    margin-bottom: 1.875rem;
    margin-left: 1.1875rem;
  }
}
.c-stay-others .c-btn {
  margin-top: 1.875rem;
}
.c-stay-others .c-btns {
  margin-top: 1.875rem;
}
.c-stay-others .c-btns .c-btn {
  margin-top: 0;
}
.c-stay-others__block {
  margin-bottom: 7.5rem;
}
@media (width <= 768px) {
  .c-stay-others__block {
    margin-bottom: 0rem;
  }
}
.c-stay-others__block--last {
  border-top: 1px solid #cbc5b5;
  border-bottom: 1px solid #cbc5b5;
  border-top: 1px solid #cbc5b5;
  margin-top: 10.625rem;
  padding: 4.375rem 0 5rem;
}
@media (width <= 768px) {
  .c-stay-others__block--last {
    margin-top: 5rem;
    padding: 2.5rem 0 1.875rem;
  }
}
.c-stay-others__block--last .c-block02__text {
  padding-left: 0;
  padding-right: 5rem;
}
@media (width <= 768px) {
  .c-stay-others__block--last .c-block02__text {
    padding: 0;
  }
}
.c-stay-others__block--last .c-stay-others__title {
  font-size: 2rem;
  letter-spacing: 0.04em;
  margin-bottom: 0.625rem;
}
@media (width <= 768px) {
  .c-stay-others__block--last .c-stay-others__title {
    font-size: 1.3125rem;
    line-height: 1.6;
  }
}
@media (width <= 768px) {
  .c-stay-others__block--last .c-block02__thumb {
    width: 100%;
    margin: 0;
    margin-bottom: 1.875rem;
  }
}
.c-stay-others__block--last .c-btns {
  margin-bottom: 1.25rem;
}
@media (width <= 768px) {
  .c-stay-others__block--last .c-btns {
    margin-bottom: 0.75rem;
  }
}
@media (width <= 768px) {
  .c-stay-others__block--last .c-btns .c-btn {
    width: 15rem;
  }
}
.c-stay-others__sub-title {
  font-size: 1.5rem;
}
@media (width <= 768px) {
  .c-stay-others__sub-title {
    font-size: 1.125rem;
  }
}
.c-stay-others__link {
  text-decoration: underline;
}
@media (width <= 768px) {
  .c-stay-others__link {
    font-size: 0.875rem;
  }
}

.c-stroll-list__item {
  display: flex;
  gap: 5rem;
  justify-content: space-between;
  align-items: center;
  padding: 4.0625rem 0 2.5rem;
}
@media (width <= 768px) {
  .c-stroll-list__item {
    flex-direction: column;
    gap: 0.625rem;
    padding-top: 2.5rem;
  }
}
.c-stroll-list__item:nth-of-type(1) {
  padding-top: 0;
}
.c-stroll-list__item:not(:last-of-type) {
  border-bottom: 1px solid #cbc5b5;
}
.c-stroll-list__text {
  width: 31.25rem;
  order: 2;
}
@media (width <= 768px) {
  .c-stroll-list__text {
    width: 100%;
  }
}
.c-stroll-list__sub-title {
  margin-bottom: 0.625rem;
}
@media (width <= 768px) {
  .c-stroll-list__sub-title {
    font-size: 0.9375rem;
  }
}
.c-stroll-list__sub-title:after {
  content: "";
  width: 2rem;
  height: 1px;
  background-color: #a78f45;
  display: block;
  margin-top: 0.3125rem;
}
.c-stroll-list__title {
  font-size: 1.75rem;
  line-height: 1.65;
  margin-bottom: 1.875rem;
}
@media (width <= 768px) {
  .c-stroll-list__title {
    font-size: 1.5rem;
  }
}
.c-stroll-list__p {
  letter-spacing: 0.01em;
}
@media (width <= 768px) {
  .c-stroll-list__p {
    padding-right: 1.75rem;
  }
}
.c-stroll-list__p:not(:last-child) {
  margin-bottom: 2em;
}
.c-stroll-list__thumb {
  width: 38.75rem;
  order: 1;
}
@media (width <= 768px) {
  .c-stroll-list__thumb {
    width: 100%;
  }
}

.p-activities-post table,
.c-table {
  width: 100%;
  margin-bottom: 2.5rem;
  border-collapse: collapse;
}
@media (width <= 768px) {
  .p-activities-post table,
  .c-table {
    border-bottom: 1px solid #cbc5b5;
  }
}
.p-activities-post table th,
.c-table th {
  padding: 10px;
  width: 350px;
  border-top: 1px solid #cbc5b5;
  border-bottom: 1px solid #cbc5b5;
  vertical-align: middle;
  width: 15.3125rem;
  padding: 1.3125rem 0;
  text-align: left;
}
@media (width <= 768px) {
  .p-activities-post table th,
  .c-table th {
    width: 100%;
    display: block;
    font-size: 1rem;
    padding-bottom: 0;
    border-bottom: none;
  }
}
.p-activities-post table td,
.c-table td {
  padding: 1.3125rem 0;
  text-align: left;
  border-top: 1px solid #cbc5b5;
  border-bottom: 1px solid #cbc5b5;
  font-size: 0.875rem;
  line-height: 1.75;
}
@media (width <= 768px) {
  .p-activities-post table td,
  .c-table td {
    width: 100%;
    display: block;
    padding-top: 0;
    border: none;
  }
}

@media (width <= 768px) {
  .c-thumb--sp-left {
    margin-left: -1.75rem;
    width: calc(100vw - 1.75rem);
  }
}
@media (width <= 768px) {
  body.home .c-thumb--sp-left {
    margin-left: -1.25rem;
    width: calc(100vw - 1.25rem);
  }
}
@media (width <= 768px) {
  .c-thumb--sp-right {
    margin-right: -1.75rem;
    width: calc(100vw - 1.75rem);
  }
}
@media (width <= 768px) {
  body.home .c-thumb--sp-right {
    margin-right: -1.25rem;
    width: calc(100vw - 1.25rem);
  }
}
@media (width <= 768px) {
  .c-thumb--sp-full {
    margin-left: -1.75rem;
    margin-right: -1.75rem;
    width: 100vw;
  }
}
@media (width <= 768px) {
  body.home .c-thumb--sp-full {
    margin-left: -1.25rem;
    margin-right: -1.25rem;
    width: 100vw;
  }
}
@media (width <= 768px) {
  .c-thumb--sp-20 {
    margin-left: -0.5rem;
    margin-right: -0.5rem;
    width: calc(100% + 1rem);
  }
}

.c-title {
  font-weight: 400;
  letter-spacing: 0.2em;
}
.c-title__wrapper {
  position: relative;
}
.c-title__wrapper--horisonal .c-title__h2-top {
  writing-mode: horizontal-tb;
}
@media (width <= 768px) {
  .c-title__wrapper--horisonal .c-title__h2-top {
    padding-top: 0.625rem;
    padding-left: 3.75rem;
  }
}
.c-title__wrapper--horisonal .c-title--eng {
  top: -1.875rem;
  right: calc(100% - 0.625rem);
}
@media (width <= 768px) {
  .c-title__wrapper--horisonal .c-title--eng {
    right: inherit;
    top: 0;
    left: 0;
  }
}
.c-title__h2 {
  font-size: 2rem;
  letter-spacing: 0.08em;
  margin-bottom: 2.5rem;
  line-height: 1.8;
  font-weight: 400;
}
@media (width <= 768px) {
  .c-title__h2 {
    font-size: 1.75rem;
    line-height: 1.6;
    margin-bottom: 1.5625rem;
  }
}
.c-title__h2--underline {
  border-bottom: 1px solid #cbc5b5;
  padding-bottom: 0.625rem;
  margin-bottom: 1.875rem;
}
.c-title__h2-top {
  font-size: 2.8125rem;
  line-height: 1.3;
  letter-spacing: 0.13em;
  font-weight: 400;
}
@media (width <= 768px) {
  .c-title__h2-top {
    font-size: 2rem;
    line-height: 1.2;
    margin-bottom: 0;
    letter-spacing: 0.06em;
    margin-left: 1.25rem;
    padding-top: 3.125rem;
  }
}
.c-title--eng {
  font-family: "Cormorant", serif;
  color: #9e7d42;
  font-size: 0.9375rem;
  letter-spacing: 0.06em;
  padding-right: 0rem;
  display: inline-block;
  position: relative;
}
@media (width <= 768px) {
  .c-title--eng {
    font-size: 0.875rem;
    padding-right: 0.3125rem;
  }
}
.c-title--eng:after {
  content: "";
  position: absolute;
  right: 0;
  top: -0.3125rem;
  height: 4.375rem;
  width: 1px;
  background-color: #a78f45;
  transform: rotate(45deg);
}
@media (width <= 768px) {
  .c-title--eng:after {
    height: 2.5rem;
    top: 0.3125rem;
  }
}
.c-title--eng02 {
  color: #9e7d42;
  letter-spacing: 0.04em;
  font-size: 0.875rem;
  font-weight: 400;
  font-family: "cormorant", serif;
  line-height: 1;
}
.c-title--eng02-span {
  font-size: 1.5rem;
  font-weight: 300;
}
.c-title--eng03 {
  color: #9e7d42;
  font-family: "cormorant", serif;
  letter-spacing: 0.04em;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1;
  color: #a78f45;
}
@media (width <= 768px) {
  .c-title--eng03 {
    font-size: 0.8125rem;
    letter-spacing: 0;
  }
}
.c-title--eng03 span {
  font-size: 1.625rem;
  font-weight: 300;
}
@media (width <= 768px) {
  .c-title--eng03 span {
    font-size: 1.375rem;
  }
}
.c-title--eng04 {
  font-size: 1.3125rem;
  color: #a78f45;
  position: relative;
  display: flex;
  align-items: center;
  line-height: 1;
  margin-bottom: 1.875rem;
}
@media (width <= 768px) {
  .c-title--eng04 {
    font-size: 0.75rem;
    margin-bottom: 0.625rem;
  }
}
.c-title--eng04:after {
  content: "";
  display: inline-block;
  width: 5.1875rem;
  height: 1px;
  background-color: #a78f45;
  margin-left: 1.5rem;
}
@media (width <= 768px) {
  .c-title--eng04:after {
    width: 2rem;
  }
}
.c-title--eng05 {
  font-family: "cormorant", serif;
  font-size: 1.75rem;
  letter-spacing: 0.04em;
  line-height: 1;
  color: #a78f45;
}
@media (width <= 768px) {
  .c-title--eng05 {
    font-size: 1.125rem;
    letter-spacing: 0.08em;
  }
}
.c-title--mid-line {
  overflow: hidden;
}
.c-title--mid-line span {
  position: relative;
}
.c-title--mid-line span:after {
  width: 100vw;
  height: 1px;
  content: "";
  position: absolute;
  left: calc(100% + 1.25rem);
  top: 50%;
  background-color: #cbc5b5;
}
.c-title--eng-old {
  font-family: "Cormorant", serif;
  color: #9e7d42;
  font-size: 0.9375rem;
  letter-spacing: 0.06em;
  display: block;
  padding-right: 0rem;
  position: absolute;
  top: -3.125rem;
  right: calc(100% - 1.25rem);
}
@media (width <= 768px) {
  .c-title--eng-old {
    font-size: 0.875rem;
    right: inherit;
    left: 0;
    top: 0;
    padding-right: 0.3125rem;
  }
}
.c-title--eng-old:after {
  content: "";
  position: absolute;
  right: 0;
  top: -0.3125rem;
  height: 4.375rem;
  width: 1px;
  background-color: #a78f45;
  transform: rotate(45deg);
}
@media (width <= 768px) {
  .c-title--eng-old:after {
    height: 2.5rem;
    top: 0.3125rem;
  }
}
.c-title--underline {
  border-bottom: 1px solid #cbc5b5;
  padding-bottom: 1.25rem;
}
@media (width <= 768px) {
  .c-title--underline {
    padding-bottom: 1.5625rem;
    margin-bottom: 1.25rem;
  }
}
.c-new-block .c-title--underline {
  position: relative;
}
.c-new-block .c-title--underline:after {
  content: "";
  position: absolute;
  width: 12.5rem;
  height: 1px;
  background-color: #cbc5b5;
  left: inherit;
  right: -12.5rem;
  bottom: -1px;
}
.c-new-block--reverse .c-title--underline:after {
  position: absolute;
  right: inherit;
  left: -12.5rem;
}

.c-wedding-block .c-inner {
  display: flex;
  align-items: center;
  gap: 6.5rem;
  padding: 0 5rem;
  position: relative;
}
@media (width <= 768px) {
  .c-wedding-block .c-inner {
    flex-wrap: wrap;
    padding: 0 1.75rem;
    gap: 1.875rem;
  }
}
.c-wedding-block__title {
  font-size: 2.25rem;
  line-height: 1.3888888889;
  margin-bottom: 1.5625rem;
}
@media (width <= 768px) {
  .c-wedding-block__title {
    font-size: 1.3125rem;
    line-height: 1.1428571429;
    margin-bottom: 0.625rem;
  }
}
.c-wedding-block__p {
  font-size: 1.125rem;
  letter-spacing: 0.02em;
  margin-bottom: 2.8125rem;
}
@media (width <= 768px) {
  .c-wedding-block__p {
    font-size: 0.9375rem;
    margin-bottom: 1.875rem;
  }
}
.c-wedding-block__p--01 {
  letter-spacing: 0.006em;
}
@media (width <= 768px) {
  .c-wedding-block__p--01 {
    letter-spacing: 0.02em;
  }
}
.c-wedding-block__sub-title {
  position: absolute;
  writing-mode: sideways-lr;
  font-size: 7.125rem;
  line-height: 1;
  letter-spacing: 0;
  color: rgba(167, 143, 69, 0.15);
  line-height: 0.6em;
  right: 0;
  height: 100%;
  text-align: right;
}
@media (width <= 768px) {
  .c-wedding-block__sub-title {
    display: none;
  }
}
.c-wedding-block__thumb {
  width: 51.5rem;
}
@media (width <= 768px) {
  .c-wedding-block__thumb {
    margin-left: -1.75rem;
    margin-right: -0.5rem;
    width: calc(100% + 3rem);
  }
}
.c-wedding-block__text {
  width: 29.5rem;
}
.c-wedding-block--reverse .c-inner {
  justify-content: end;
}
.c-wedding-block--reverse .c-wedding-block__sub-title {
  writing-mode: vertical-rl;
  left: 0;
  right: inherit;
  text-align: left;
}
.c-wedding-block--reverse .c-wedding-block__thumb {
  order: 2;
}
@media (width <= 768px) {
  .c-wedding-block--reverse .c-wedding-block__thumb {
    order: 1;
    margin-left: -0.5rem;
    margin-right: -1.75rem;
    width: calc(100% + 2.5rem);
  }
}
.c-wedding-block--reverse .c-wedding-block__text {
  order: 1;
}
@media (width <= 768px) {
  .c-wedding-block--reverse .c-wedding-block__text {
    order: 2;
  }
}

.c-youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.c-youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

/********************************************
* Project
********************************************/
.p-home__mv {
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  max-height: 75rem;
}
@media (width <= 768px) {
  .p-home__mv {
    min-height: 52.75rem;
    overflow: visible;
  }
}
.p-home__mv:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 2;
}
.p-home__mv .swiper-wrapper {
  height: 100%;
}
.p-home__mv picture {
  height: 100%;
}
.p-home__mv-item {
  display: flex;
  height: 100%;
}
@media (width <= 768px) {
  .p-home__mv-item {
    flex-direction: column;
  }
}
.p-home__mv-item img {
  transform: scale(110%);
}
.p-home__mv-item.is-current img {
  animation: mv-slide 4s ease-in-out 0s 1 normal forwards;
}
@media (width <= 768px) {
  .p-home__mv-item.is-current picture {
    animation: mv-slide 4s ease-in-out 0s 1 normal forwards;
  }
}
@keyframes mv-slide {
  0% {
    transform: scale(110%);
  }
  100% {
    transform: scale(100%);
  }
}
.p-home__mv-thumb {
  overflow: hidden;
  width: 50%;
}
@media (width <= 768px) {
  .p-home__mv-thumb {
    width: 100%;
  }
}
.p-home__mv img.p-home__mv-map {
  position: absolute;
  width: 19.928125rem;
  height: auto;
  top: 6.98125rem;
  right: calc(50% - 45.625rem);
  z-index: 2;
}
@media (width <= 768px) {
  .p-home__mv img.p-home__mv-map {
    top: 3.875rem;
    right: 1.25rem;
    width: 8.0625rem;
  }
}
.p-home__mv-inner {
  position: absolute;
  z-index: 10;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 3.75rem;
}
@media (width <= 768px) {
  .p-home__mv-inner {
    flex-direction: column;
    gap: 3.125rem;
  }
}
.p-home__mv-title {
  width: 25rem;
  transform: translateX(-8.75rem) translateY(-1.875rem);
}
@media (width <= 768px) {
  .p-home__mv-title {
    margin-top: 5rem;
    width: 15.8125rem;
    transform: inherit;
  }
}
.p-home__mv-p {
  font-size: 1.125rem;
  color: #fff;
  writing-mode: vertical-rl;
  font-feature-settings: "vert";
  text-orientation: upright;
  letter-spacing: 0.2em;
  transform: translateX(0.625rem) translateY(-2.5rem);
  line-height: 2.5;
}
@media (width <= 768px) {
  .p-home__mv-p {
    font-size: 1rem;
    line-height: 2.7;
    transform: translateX(0) translateY(-2.5rem);
  }
}
.p-home__mv-sns-list {
  position: absolute;
  left: 2.5rem;
  bottom: 2.5rem;
  display: flex;
  gap: 1.625rem;
  z-index: 10;
}
@media (width <= 768px) {
  .p-home__mv-sns-list {
    left: 1rem;
    bottom: 1rem;
    gap: 0.75rem;
  }
}
.p-home__mv-sns-link svg {
  fill: #fff;
  width: 3.125rem;
  height: 3.125rem;
}
@media (width <= 768px) {
  .p-home__mv-sns-link svg {
    height: 1.5rem;
    width: 1.5rem;
  }
}
.p-home__mv-news-list {
  position: absolute;
  right: 0rem;
  bottom: 2.5rem;
  z-index: 10;
  background-color: rgba(0, 0, 0, 0.6);
  width: 31.5rem;
}
@media (width <= 768px) {
  .p-home__mv-news-list {
    display: block;
    bottom: -8.75rem;
    width: calc(100% - 2.5rem);
    left: 0rem;
    background-color: #fff;
  }
}
.p-home__mv-news-link {
  display: flex;
  color: #fff;
}
@media (width <= 768px) {
  .p-home__mv-news-link {
    color: #241d14;
  }
}
.p-home__mv-news-thumb {
  width: 7.875rem;
  height: 7.875rem;
}
@media (width <= 768px) {
  .p-home__mv-news-thumb {
    width: 6.25rem;
    height: 6.25rem;
  }
}
.p-home__mv-news-text {
  padding: 0.625rem 1.25rem;
  width: 23.625rem;
}
@media (width <= 768px) {
  .p-home__mv-news-text {
    width: calc(100% - 6.875rem);
    font-size: 0.8125rem;
    line-height: 1.6;
    padding: 0.9375rem 1.25rem 0.3125rem 0.9375rem;
  }
}
.p-home__mv-news-date {
  font-size: 0.8125rem;
}
@media (width <= 768px) {
  .p-home__mv-news-date {
    font-size: 0.75rem;
    margin-bottom: 0.3125rem;
  }
}
.p-home__mv-news-pagination.swiper-pagination {
  position: absolute;
  text-align: right;
  padding-right: 1.25rem;
}
@media (width <= 768px) {
  .p-home__mv-news-pagination.swiper-pagination {
    top: inherit;
    bottom: -0.3125rem;
    padding-right: 0.3125rem;
  }
}
.p-home__mv-news-pagination.swiper-pagination .swiper-pagination-bullet {
  width: 2.1875rem;
  height: 0.5rem;
  border-radius: 0;
  background: linear-gradient(to bottom, transparent 0%, transparent calc(50% - 1px), #9e7d42 calc(50% - 1px), #9e7d42 calc(50% + 1px), transparent calc(50% + 1px), transparent 100%);
  opacity: 0.4;
}
.p-home__mv-news-pagination.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  opacity: 1;
}
.p-home__top-bnrs {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2.5rem;
  padding: 3.75rem 0 5.9375rem;
}
@media (width <= 768px) {
  .p-home__top-bnrs {
    margin-bottom: 3.75rem;
    flex-direction: column;
    padding: 10.1875rem 1.25rem 2.8125rem;
  }
}
.p-home__top-bnrs .l-footer__banner {
  width: 80rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (width <= 768px) {
  .p-home__top-bnrs .l-footer__banner {
    width: 100%;
    gap: 1.625rem;
  }
}
.p-home__top-bnrs .l-footer__bannerItem {
  width: calc(33.3% - 0.8375rem);
}
@media (width <= 768px) {
  .p-home__top-bnrs .l-footer__bannerItem {
    width: 100%;
  }
}
.p-home .c-slider-linear {
  margin-bottom: 5rem;
}
@media (width <= 768px) {
  .p-home .c-slider-linear {
    margin-bottom: 2.5rem;
  }
}
.p-home__top-bnr {
  width: 60rem;
  margin: 0 auto 10rem;
}
@media (width <= 768px) {
  .p-home__top-bnr {
    width: 21.875rem;
    margin-bottom: 6.25rem;
  }
}
.p-home__room .c-title__h2-top {
  transform: translateY(-1.25rem);
}
.p-home__room .c-new-block__text-content {
  transform: translateX(1.875rem);
  width: 20rem;
}
@media (width <= 768px) {
  .p-home__room .c-new-block__text-content {
    width: 12.5rem;
    transform: inherit;
  }
}
.p-home__room .c-new-block__p {
  width: 20rem;
}
@media (width <= 768px) {
  .p-home__room .c-new-block__p {
    width: 100%;
  }
}
.p-home__restaurant {
  margin-bottom: 8.75rem;
}
@media (width <= 768px) {
  .p-home__restaurant {
    margin-bottom: 5rem;
  }
}
.p-home__restaurant .c-new-block {
  margin-bottom: 5rem;
}
@media (width <= 768px) {
  .p-home__restaurant .c-new-block {
    margin-bottom: 2.5rem;
  }
}
.p-home__restaurant .c-new-block__p {
  padding-top: 11.25rem;
}
@media (width <= 768px) {
  .p-home__restaurant .c-new-block__p {
    padding-top: 2em;
  }
}
@media (width <= 768px) {
  .p-home__restaurant-pix {
    overflow: hidden;
    white-space: nowrap;
    display: flex;
    gap: 1rem;
  }
}
.p-home__restaurant-pix-inner {
  display: flex;
  justify-content: center;
  gap: 5rem;
  position: relative;
}
@media (width <= 768px) {
  .p-home__restaurant-pix-inner {
    white-space: nowrap;
    gap: 1rem;
    width: 62.625rem;
    justify-content: inherit;
    flex-shrink: 1;
  }
}
.p-home__restaurant-img {
  width: 25rem;
}
@media (width <= 768px) {
  .p-home__restaurant-img {
    width: 20.1875rem;
    flex-shrink: 1;
  }
}
@media (width <= 768px) {
  .p-home__restaurant-photos-wrapper {
    position: relative;
    overflow: hidden;
    z-index: 1;
    margin-left: -1.25rem;
    margin-right: -1.25rem;
    width: calc(100% + 2.5rem);
  }
}
.p-home__restaurant-photos {
  position: relative;
}
.p-home__restaurant-photos.c-flex {
  gap: 5rem;
  margin-top: 5.625rem;
  justify-content: center;
}
@media (width <= 768px) {
  .p-home__restaurant-photos.c-flex {
    flex-direction: row;
    gap: 1rem;
    margin-top: 0;
    width: 100vw;
  }
}
.p-home__restaurant-photos .c-flex__item {
  width: 25rem;
  height: 15.4375rem;
}
@media (width <= 768px) {
  .p-home__restaurant-photos .c-flex__item {
    max-width: inherit;
    width: 20.1875rem;
    height: 12.5rem;
    flex-shrink: 0;
  }
}
.p-home__visit {
  padding-top: 4.375rem;
  margin-bottom: 10rem;
  background-image: url(../images/home/visit-bg.png);
  background-repeat: no-repeat;
  background-size: 26.60625rem;
  background-position: calc(50% - 18.125rem) top;
}
@media (width <= 768px) {
  .p-home__visit {
    background-size: 16.44875rem;
    background-position: 98% top;
    padding-top: 0rem;
    margin-bottom: 6.25rem;
  }
}
.p-home__visit .c-new-block {
  margin-top: -1.875rem;
}
@media (width <= 768px) {
  .p-home__visit .c-new-block {
    margin-top: 0;
    padding-top: 3.125rem;
    flex-direction: column;
  }
}
@media (width <= 768px) {
  .p-home__visit .c-new-block__text {
    align-items: end;
  }
}
@media (width <= 768px) {
  .p-home__visit .c-title--eng {
    margin-right: 1.25rem !important;
  }
}
.p-home__history-header {
  display: flex;
  justify-content: space-between;
  margin-bottom: 4.375rem;
}
@media (width <= 768px) {
  .p-home__history-header {
    flex-direction: column;
  }
}
.p-home__history-header-title {
  width: 31.875rem;
  position: relative;
  margin-top: 2.5rem;
  margin-left: 5rem;
}
@media (width <= 768px) {
  .p-home__history-header-title {
    width: 100%;
    margin: 0;
  }
}
@media (width <= 768px) {
  .p-home__history .c-title__h2-top {
    padding-top: 1.25rem;
    padding-left: 3.125rem;
    margin-bottom: 1.25rem;
    line-height: 1.44375;
  }
}
.p-home__history-header-text {
  width: 50%;
}
@media (width <= 768px) {
  .p-home__history-header-text {
    width: 100%;
  }
}
.p-home__history-header-p {
  font-size: 1.125rem;
  line-height: 2.2;
  margin-bottom: 2.5rem;
}
@media (width <= 768px) {
  .p-home__history-header-p {
    font-size: 0.9375rem;
    line-height: 2.2;
    letter-spacing: 0.04em;
  }
}
.p-home .c-place-slider {
  margin-bottom: 5rem;
}
.p-home .c-reservation-card {
  margin-bottom: 10rem;
}
@media (width <= 768px) {
  .p-home .c-reservation-card {
    margin-bottom: 7.5rem;
  }
}
.p-home__access {
  color: #241d14;
  padding: 7.5rem 0;
  margin-bottom: 7.5rem;
}
@media (width <= 768px) {
  .p-home__access {
    margin-bottom: 6.25rem;
    padding: 0 0 1.25rem;
  }
}
.p-home__access .c-inner {
  display: flex;
  align-items: center;
  padding: 0;
}
@media (width <= 768px) {
  .p-home__access .c-inner {
    flex-direction: column;
    gap: 2.5rem;
  }
}
.p-home__access .c-box {
  width: calc(100% - 64.25rem);
  padding: 0 7.25rem 0 12.5rem;
}
@media (width <= 768px) {
  .p-home__access .c-box {
    width: 100%;
    order: 2;
    padding: 0 0 3.75rem;
  }
}
.p-home__access .c-title__h2-top {
  margin-bottom: 1.25rem;
}
@media (width <= 768px) {
  .p-home__access .c-box__p {
    font-size: 0.9375rem;
    letter-spacing: 0.04em;
  }
}
.p-home__access .c-gmap {
  width: 64.25rem;
  height: 33.125rem;
}
@media (width <= 768px) {
  .p-home__access .c-gmap {
    width: 100%;
    order: 1;
    height: 17.5rem;
  }
}
.p-home__guide {
  margin-bottom: 7.5rem;
}
@media (width <= 768px) {
  .p-home__guide {
    margin-bottom: 6.5rem;
    padding: 0rem 1.75rem;
  }
}
.p-home__guide .c-inner {
  padding: 1.5rem 4rem 1.5rem 2.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  max-width: 60rem;
  border: 1px solid #a78f45;
  border-radius: 0.25rem;
}
@media (width <= 768px) {
  .p-home__guide .c-inner {
    flex-wrap: wrap;
    padding: 0 !important;
  }
}
.p-home__guide-eng {
  position: absolute;
  writing-mode: vertical-rl;
  left: -1.1875rem;
  font-size: 1.6875rem;
  letter-spacing: 0.04em;
  color: rgba(167, 143, 69, 0.3);
}
@media (width <= 768px) {
  .p-home__guide-eng {
    display: none;
  }
}
.p-home__guide-thumb {
  width: 22.25rem;
}
@media (width <= 768px) {
  .p-home__guide-thumb {
    width: 100%;
    height: 11.25rem;
  }
}
.p-home__guide-text {
  width: 28.25rem;
  text-align: right;
}
@media (width <= 768px) {
  .p-home__guide-text {
    width: 100%;
    padding: 2rem 1.5rem;
  }
}
.p-home__guide-title {
  text-align: left;
}
@media (width <= 768px) {
  .p-home__guide-title {
    font-size: 1.125rem;
  }
}
.p-home__guide-p {
  text-align: left;
}
@media (width <= 768px) {
  .p-home__guide-p {
    font-size: 0.875rem;
    line-height: 2.2857142857;
  }
}
.p-home__wedding {
  margin-bottom: 11.25rem;
}
@media (width <= 768px) {
  .p-home__wedding {
    margin-bottom: 6.25rem;
  }
}

.p-other {
  display: flex;
  flex-wrap: wrap;
  gap: 0 2.5rem;
}
@media (width <= 768px) {
  .p-other {
    gap: 0 1.25rem;
  }
}
.p-other__item {
  width: 16.875rem;
  margin-bottom: 2.125rem;
}
@media (width <= 768px) {
  .p-other__item {
    width: 10.625rem;
    margin-bottom: 0.75rem;
  }
}
.p-other__link {
  color: #fff;
}
.p-other__img {
  margin-bottom: 1.125rem;
}
@media (width <= 768px) {
  .p-other__img {
    margin-bottom: 0.625rem;
  }
}
.p-other__area {
  font-size: 1.25rem;
  margin-bottom: 0.375rem !important;
}
@media (width <= 768px) {
  .p-other__area {
    font-size: 1.03125rem;
    margin-bottom: 0.625rem !important;
  }
}
.p-other__title {
  font-size: 0.875rem;
  margin-bottom: 0.625rem;
  letter-spacing: 0.07em;
}
@media (width <= 768px) {
  .p-other__title {
    font-size: 0.78125rem;
  }
}
.p-other__tag {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
@media (width <= 768px) {
  .p-other__tag {
    gap: 0;
  }
}
.p-other__tagItem {
  display: flex;
  align-items: center;
}
.p-other__tagItem svg {
  height: 1.25rem;
  width: 1.25rem;
}
.p-other__tagText {
  font-size: 0.75rem;
  margin-left: 0.3125rem;
  letter-spacing: 0em;
}
@media (width <= 768px) {
  .p-other__tagText {
    font-size: 0.65625rem;
  }
}

@media (width <= 768px) {
  .p-stay .c-header__text {
    width: calc(100% + 0.625rem);
  }
}
.p-stay .c-page-top__p {
  text-align: left;
}
.p-stay__top {
  margin-bottom: 8.75rem;
}
@media (width <= 768px) {
  .p-stay__top {
    margin-bottom: 5.625rem;
  }
}
.p-stay__top-img {
  margin-bottom: 4.375rem;
}
@media (width <= 768px) {
  .p-stay__top-img {
    margin: 0 -1.75rem 2.5rem;
    width: 100vw;
    max-width: 100vw;
  }
}
.p-stay__top .c-point-list__p {
  letter-spacing: 0.04em;
}
.p-stay .c-place-slider {
  margin-bottom: 2.8125rem;
}
@media (width <= 768px) {
  .p-stay .c-place-slider {
    margin-bottom: 1.875rem;
  }
}
.p-stay__rooms {
  padding-bottom: 2.5rem;
}
@media (width <= 768px) {
  .p-stay__rooms {
    padding-bottom: 1.25rem;
  }
}
.p-stay__rooms-title {
  font-size: 2.5rem;
  text-align: center;
  margin-bottom: 2.5rem;
}
@media (width <= 768px) {
  .p-stay__rooms-title {
    font-size: 1.75rem;
  }
}
@media (width <= 768px) {
  .p-stay__rooms-inner {
    padding: 0 1.25rem;
  }
}
.p-stay__rooms-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 80rem;
  margin: 0 auto;
  flex-wrap: wrap;
}
@media (width <= 768px) {
  .p-stay__rooms-header {
    flex-direction: column;
  }
}
.p-stay__rooms-h2 {
  width: 20rem;
  font-size: 2.25rem;
  line-height: 1.2;
}
@media (width <= 768px) {
  .p-stay__rooms-h2 {
    width: 100%;
    font-size: 1.5rem;
    margin-bottom: 1.25rem;
  }
}
.p-stay__rooms-h2 .u-text--small {
  display: block;
  font-size: 1.3125rem;
}
@media (width <= 768px) {
  .p-stay__rooms-h2 .u-text--small {
    font-size: 1.125rem;
    display: inline-block;
  }
}
.p-stay__rooms-text {
  width: calc(100% - 21.25rem);
  letter-spacing: 0.072em;
}
@media (width <= 768px) {
  .p-stay__rooms-text {
    width: 100%;
  }
}
.p-stay__rooms-p {
  margin-bottom: 0 !important;
}
.p-stay__rooms .c-btns {
  width: 100%;
  margin: 2.5rem 0 7.5rem;
  padding-left: 17.5rem;
}
@media (width <= 768px) {
  .p-stay__rooms .c-btns {
    padding: 0;
    margin: 1.875rem 0 5rem;
  }
}
.p-stay__title {
  font-size: 4rem;
  letter-spacing: 0;
  color: #a78f45;
  margin-bottom: 0.625rem;
  margin-left: 5rem;
}
@media (width <= 768px) {
  .p-stay__title {
    font-size: 2rem;
    text-align: center;
    margin-left: 0;
    line-height: 1.4;
    margin-bottom: 1.875rem;
  }
}
.p-stay__title span {
  vertical-align: middle;
  font-size: 1.3125rem;
  letter-spacing: 0.08em;
  color: #241d14;
  margin-left: 2.5rem;
}
@media (width <= 768px) {
  .p-stay__title span {
    font-size: 0.875rem;
    display: block;
    margin-left: 0;
  }
}
.p-stay__gallery {
  padding: 6.25rem 0;
}
@media (width <= 768px) {
  .p-stay__gallery {
    padding: 4.375rem 0;
  }
}
.p-stay__work {
  padding-bottom: 7.5rem;
}
@media (width <= 768px) {
  .p-stay__work {
    padding-bottom: 5rem;
  }
}
.p-stay__work .c-flex {
  gap: 5rem;
  max-width: 85rem;
  margin: 0 auto;
}
@media (width <= 768px) {
  .p-stay__work .c-flex {
    gap: 3.75rem;
    flex-wrap: wrap;
  }
}
@media (width <= 768px) {
  .p-stay__work .c-flex__item {
    width: 100%;
  }
}
.p-stay__work-thumb {
  margin-bottom: 1.875rem;
}
@media (width <= 768px) {
  .p-stay__work-thumb {
    margin-left: -0.5rem;
    margin-right: -0.5rem;
    width: calc(100% + 1rem);
    margin-bottom: 1.25rem;
  }
}
.p-stay__work-title {
  font-size: 1.5rem;
  margin-bottom: 0.9375rem;
  letter-spacing: 1.3333333333;
}
@media (width <= 768px) {
  .p-stay__work-title {
    font-size: 1.125rem;
    letter-spacing: 0.072em;
  }
}
.p-stay__work-p {
  letter-spacing: 0.072em;
}
@media (width <= 768px) {
  .p-stay__work-p {
    font-size: 0.9375rem;
    letter-spacing: 0.072em;
  }
}
.p-stay__others {
  padding: 10rem 0;
}
@media (width <= 768px) {
  .p-stay__others {
    padding: 6.25rem 0 3.125rem;
  }
}
@media (width <= 768px) {
  .p-stay__others .c-new-block.c-new-block--01 {
    gap: 1.875rem;
  }
}
.p-stay__others .c-new-block.c-new-block--01:not(:last-of-type) {
  margin-bottom: 7.5rem;
}
@media (width <= 768px) {
  .p-stay__others .c-new-block.c-new-block--01:not(:last-of-type) {
    margin-bottom: 5rem;
  }
}
.p-stay__others .c-title--eng02 {
  font-size: 1.25rem;
  margin-bottom: 0.625rem;
}
@media (width <= 768px) {
  .p-stay__others .c-title--eng02 {
    font-size: 1rem;
    letter-spacing: 0.04em;
  }
}
.p-stay__others-title {
  font-size: 2.8125rem;
  line-height: 1.0266666667;
  margin-bottom: 2.5rem;
}
@media (width <= 768px) {
  .p-stay__others-title {
    font-size: 1.75rem;
    line-height: 1.65;
    margin-bottom: 0.625rem;
  }
}
.p-stay__others .c-new-block__text {
  padding-left: 12.5rem;
}
@media (width <= 768px) {
  .p-stay__others .c-new-block__text {
    padding-left: 0;
  }
}
.p-stay__others .c-new-block__p {
  letter-spacing: 0.08em;
}
@media (width <= 768px) {
  .p-stay__others .c-new-block__p {
    letter-spacing: 0.04em;
  }
}
.p-stay__others .c-btn {
  width: 20rem;
}
@media (width <= 768px) {
  .p-stay__others .c-btn {
    width: 18rem;
  }
}

.p-activity .has-side__content {
  margin-top: 7.5rem;
}
@media (width <= 768px) {
  .p-activity .has-side__content {
    padding-bottom: 3.75rem;
  }
}
@media (width <= 768px) {
  .p-activity .has-side__aside {
    margin-bottom: 0;
  }
}
@media (width <= 768px) {
  .p-activity__section .c-inner {
    padding: 0 1.25rem;
  }
}
.p-activity__form {
  display: flex;
  gap: 4.375rem;
  max-width: 65rem;
  padding: 3.125rem 0;
  margin: 0 auto 5rem;
  border-top: 1px dotted #a78f45;
  border-bottom: 1px dotted #a78f45;
}
@media (width <= 768px) {
  .p-activity__form {
    margin: 3.75rem auto 3.75rem;
    padding: 1.25rem 0;
    flex-wrap: wrap;
    gap: 0.625rem;
  }
}
.p-activity__form-title {
  font-size: 1.125rem;
}
@media (width <= 768px) {
  .p-activity__form-title {
    font-size: 1rem;
    width: 100%;
  }
}
.p-activity__form-input {
  display: flex;
  gap: 0.75rem;
  flex-wrap: wrap;
  align-items: center;
}
.p-activity__form label {
  display: inline-block;
  line-height: 1;
  padding: 0.3125rem 0.625rem;
  background-color: rgba(203, 197, 181, 0.3);
  border-radius: 0.1875rem;
  cursor: pointer;
  transition: all 0.3s ease;
  font-size: 0.875rem;
}
@media (width <= 768px) {
  .p-activity__form label {
    padding: 0.4375rem 0.5625rem;
  }
}
.p-activity__form label.is-active {
  background-color: rgba(167, 143, 69, 0.5);
}
.p-activity__form input[type=checkbox] {
  display: none;
}
.p-activity__form input[type=checkbox]:checked + label {
  background-color: rgba(167, 143, 69, 0.5);
}
.p-activity .c-activity-list {
  margin-bottom: 7.5rem;
}
@media (width <= 768px) {
  .p-activity .c-activity-list {
    margin-bottom: 5.625rem;
  }
}
.p-activity .c-reservation-card {
  margin-bottom: 10rem;
}
@media (width <= 768px) {
  .p-activity .c-reservation-card {
    margin-bottom: 6.25rem;
  }
}

.p-activity-post .p-post__section {
  margin-top: 0;
}
@media (width <= 768px) {
  .p-activity-post .c-header .c-inner {
    padding: 8.75rem 1.75rem 2.5rem;
  }
}
.p-activity-post .c-cat-list__item {
  font-size: 0.875rem;
  letter-spacing: 0.04em;
  padding: 0.25rem 0.75rem;
  line-height: 1;
}
.p-activity-post .c-header__head {
  padding-right: 5rem;
  letter-spacing: 0.08em;
}
@media (width <= 768px) {
  .p-activity-post .c-header__head {
    padding-right: 0;
  }
}
.p-activity-post .c-header__title {
  font-size: 2rem;
  line-height: 1.4;
}
@media (width <= 768px) {
  .p-activity-post .c-header__title {
    font-size: 1.3125rem;
    line-height: 1.6;
    margin-bottom: 0.625rem;
  }
}
.p-activity-post .c-header__text {
  padding-top: 3.75rem;
}
@media (width <= 768px) {
  .p-activity-post .c-header__text {
    padding-top: 0;
    letter-spacing: 0.04em;
    line-height: 1.7466666667;
  }
}
.p-activity-post .has-side__main {
  width: 55.3125rem;
  margin-left: 2.5rem;
}
.p-activity-post .has-side__aside {
  width: 19.625rem;
}
.p-activity-post__mv {
  padding-left: 12.5rem;
  margin: -6.125rem 0 4rem;
}
@media (width <= 768px) {
  .p-activity-post__mv {
    padding-left: 0;
    margin: 0 0 2.125rem;
    height: 15rem;
  }
}
@media (width <= 768px) {
  .p-activity-post__mv.c-inner {
    padding: 0;
  }
}
.p-activity-post .has-side__main {
  border-bottom: 1px solid #cbc5b5;
  padding-bottom: 3.125rem;
}
.p-activity-post .has-side__main h2 {
  font-size: 2rem;
  font-weight: 400;
  letter-spacing: 0.04em;
  padding-left: 1.75rem;
  line-height: 1.5;
  margin-bottom: 2.5rem;
  position: relative;
}
@media (width <= 768px) {
  .p-activity-post .has-side__main h2 {
    font-size: 1.75rem;
    margin-bottom: 1.875rem;
  }
}
.p-activity-post .has-side__main h2:not(:first-child) {
  margin-top: 5rem;
}
@media (width <= 768px) {
  .p-activity-post .has-side__main h2:not(:first-child) {
    margin-top: 2.5rem;
  }
}
.p-activity-post .has-side__main h2:after {
  height: 1px;
  left: -0.25rem;
  top: 1.5rem;
  width: 1.125rem;
  background-color: #9e7e3f;
  content: "";
  display: block;
  position: absolute;
  transform: rotate(-28deg);
}
.p-activity-post .has-side__main h3 {
  font-size: 1.3125rem;
  margin: 1.875rem 0 0.9375rem;
}
.p-activity-post .has-side__main table {
  margin-bottom: 2em;
  border-top: 1px solid #d8cbb2;
}
.p-activity-post .has-side__main th {
  width: auto;
  min-width: 7.5rem;
  vertical-align: top;
  border-bottom: 1px solid #d8cbb2;
  padding: 0.9375rem 0;
  text-align: left;
}
@media (width <= 768px) {
  .p-activity-post .has-side__main th {
    font-size: 0.9375rem;
    padding-bottom: 0.625rem;
    line-height: 2;
    display: block;
    border: none;
    padding-bottom: 0.625rem;
    width: 100%;
  }
}
.p-activity-post .has-side__main td {
  padding: 0.9375rem 0;
  border-bottom: 1px solid #d8cbb2;
}
@media (width <= 768px) {
  .p-activity-post .has-side__main td {
    line-height: 2;
    display: block;
    width: 100%;
    padding-top: 0;
  }
}
.p-activity-post .has-side__main p {
  margin-bottom: 2em;
}
@media (width <= 768px) {
  .p-activity-post .has-side__main p {
    margin-bottom: 2.5em;
    line-height: 2;
    font-size: 0.875rem;
  }
}
.p-activity-post .has-side__main p:last-of-type {
  margin-bottom: 2em;
}
@media (width <= 768px) {
  .p-activity-post .has-side__main p:last-of-type {
    margin-bottom: 2.5em;
  }
}
.p-activity-post .has-side__main a {
  text-decoration: underline;
}
.p-activity-post .has-side__main img {
  margin-bottom: 1em;
  display: inline;
}
.p-activity-post .has-side__main ul,
.p-activity-post .has-side__main ol {
  padding-left: 1.5em;
  margin: 0 0 2em;
}
@media (width <= 768px) {
  .p-activity-post .has-side__aside {
    display: none;
  }
}

@media (width <= 768px) {
  .p-restaurant__about {
    padding-top: 3.75rem;
  }
}
.p-restaurant__about .c-block {
  align-items: center;
}
@media (width <= 768px) {
  .p-restaurant__about .c-block {
    flex-direction: column-reverse;
    flex-wrap: wrap;
  }
}
.p-restaurant__about .c-block__text {
  padding-top: 3.75rem;
  padding-left: 10rem !important;
  padding-right: 6.25rem;
}
@media (width <= 768px) {
  .p-restaurant__about .c-block__text {
    padding: 0 !important;
  }
}
.p-restaurant__about .c-title__h2 {
  margin-bottom: 0.625rem;
}
.p-restaurant__about .c-block__thumb {
  height: auto;
  padding-left: 0;
}
.p-restaurant__about-logo {
  width: 22.0625rem;
}
@media (width <= 768px) {
  .p-restaurant__about-logo {
    width: 15.5625rem;
    max-width: inherit;
  }
}
.p-restaurant__about-name {
  font-size: 1.3125rem;
  margin-bottom: 3.75rem !important;
}
@media (width <= 768px) {
  .p-restaurant__about-name {
    font-size: 1.125rem;
    margin-bottom: 1.875rem !important;
  }
}
.p-restaurant__about-catch {
  font-size: 2.5rem;
  line-height: 1.6;
  margin-bottom: 3.125rem !important;
}
@media (width <= 768px) {
  .p-restaurant__about-catch {
    font-size: 1.75rem;
    line-height: 1.6;
    margin-bottom: 1.875rem !important;
  }
}
.p-restaurant__news {
  padding: 5rem 0 2.5rem;
  text-align: center;
}
@media (width <= 768px) {
  .p-restaurant__news {
    padding: 3.125rem 0 3.75rem;
  }
}
@media (width <= 768px) {
  .p-restaurant__news .c-btn {
    width: 17.5rem;
    margin-bottom: 0;
  }
}
.p-restaurant__news-title {
  text-align: left;
}
@media (width <= 768px) {
  .p-restaurant__news-title {
    text-align: center;
  }
}
.p-restaurant__news-list {
  text-align: left;
}
.p-restaurant__news-list .c-news-card__header {
  position: relative;
}
.p-restaurant__news-list .c-cat-list {
  padding-right: 6.25rem;
}
@media (width <= 768px) {
  .p-restaurant__news-list .c-cat-list {
    padding-right: 0rem;
  }
}
.p-restaurant__news-list .c-cat-list__item {
  font-size: 0.65rem;
}
@media (width <= 768px) {
  .p-restaurant__news-list .c-cat-list__item {
    padding: 0.25rem 0.3125rem;
    font-size: 0.625rem;
  }
}
.p-restaurant__news-list .c-news-card {
  height: 100%;
}
.p-restaurant__news-list .c-news-card__thumb {
  height: 100%;
}
@media (width <= 768px) {
  .p-restaurant__news-list .c-news-card__text {
    padding: 1.25rem 1rem;
  }
}
.p-restaurant__news-list .c-news-card__date {
  position: absolute;
  top: 0;
  right: 0;
}
@media (width <= 768px) {
  .p-restaurant__news-list .c-news-card__date {
    position: relative;
    font-size: 0.625rem;
  }
}
.p-restaurant__news-list .c-news-card__title {
  font-size: 1.125rem;
  line-height: 1.6;
}
@media (width <= 768px) {
  .p-restaurant__news-list .c-news-card__title {
    -webkit-line-clamp: 2 !important;
    line-clamp: 2 !important;
    font-size: 1rem;
    line-height: 1.35;
  }
}
.p-restaurant__news-title {
  font-size: 2.25rem;
  margin-bottom: 2.5rem;
}
@media (width <= 768px) {
  .p-restaurant__news-title {
    font-size: 1.5rem;
  }
}
.p-restaurant__section {
  padding-bottom: 1.25rem;
}
@media (width <= 768px) {
  .p-restaurant__section {
    padding: 5.625rem 0 1.25rem;
  }
}
@media (width <= 768px) {
  .p-restaurant__section-thumb {
    margin-left: -0.5rem;
  }
}
.p-restaurant__section .c-stay-others__title {
  font-size: 2.5rem;
  margin-bottom: 0.625rem;
}
@media (width <= 768px) {
  .p-restaurant__section .c-stay-others__title {
    font-size: 1.75rem;
    line-height: 1.6;
    margin-bottom: 1.25rem;
  }
}
.p-restaurant__section .c-block02--reverse .c-block02__text {
  padding-left: 6.25rem;
}
@media (width <= 768px) {
  .p-restaurant__section .c-block02--reverse .c-block02__text {
    padding-left: 0;
  }
}
@media (width <= 768px) {
  .p-restaurant__section .c-stay-others__block {
    flex-direction: column-reverse;
    flex-wrap: wrap;
    gap: 2.5rem;
    margin-bottom: 3.125rem;
  }
}
@media (width <= 768px) {
  .p-restaurant__section .c-stay-others__p {
    font-size: 0.9375rem;
  }
}
.p-restaurant__material .c-title__h2 {
  font-size: 2.25rem;
}
@media (width <= 768px) {
  .p-restaurant__material .c-title__h2 {
    font-size: 1.75rem;
    margin-bottom: 2.5rem;
  }
}
.p-restaurant__material .c-flex {
  gap: 2.5rem;
  margin-bottom: 3.75rem;
}
@media (width <= 768px) {
  .p-restaurant__material .c-flex {
    gap: 2.1875rem 1.5rem;
    flex-wrap: wrap;
  }
}
@media (width <= 768px) {
  .p-restaurant__material .c-flex__item {
    width: calc(50% - 0.75rem);
  }
}
.p-restaurant__material .c-flex__thumb {
  margin-bottom: 1.25rem;
}
@media (width <= 768px) {
  .p-restaurant__material .c-flex__thumb {
    margin-bottom: 0.625rem;
  }
}
.p-restaurant__material .c-title__h3 {
  font-size: 1.375rem;
}
@media (width <= 768px) {
  .p-restaurant__material .c-title__h3 {
    font-size: 1rem;
    letter-spacing: 0.01em;
    line-height: 1.35;
    margin-bottom: 0.625rem;
  }
}
.p-restaurant__material .c-flex__p {
  letter-spacing: 0.04em;
}
@media (width <= 768px) {
  .p-restaurant__material .c-flex__p {
    font-size: 0.875rem;
    line-height: 1.75;
  }
}
.p-restaurant__producer-list {
  display: flex;
  gap: 7.5rem;
  margin-bottom: 10rem;
}
@media (width <= 768px) {
  .p-restaurant__producer-list {
    gap: 2.5rem;
    flex-wrap: wrap;
    margin-bottom: 6.875rem;
  }
}
.p-restaurant__producer-item {
  width: calc(50% - 3.75rem);
  display: flex;
  justify-content: space-between;
}
@media (width <= 768px) {
  .p-restaurant__producer-item {
    width: 100%;
    flex-wrap: wrap;
  }
  .p-restaurant__producer-item:not(:last-of-type) {
    margin-bottom: 2.5rem;
  }
}
.p-restaurant__producer-thumb {
  width: 11.25rem;
}
@media (width <= 768px) {
  .p-restaurant__producer-thumb {
    width: 100%;
    text-align: center;
    margin-bottom: 0.625rem;
  }
}
.p-restaurant__producer-thumb img {
  width: 100%;
}
.p-restaurant__producer-text {
  width: calc(100% - 12.5rem);
}
@media (width <= 768px) {
  .p-restaurant__producer-text {
    width: 100%;
  }
}
.p-restaurant__producer-title {
  font-size: 1.375rem;
}
@media (width <= 768px) {
  .p-restaurant__producer-title {
    font-size: 1rem;
  }
}
.p-restaurant__producer-p {
  letter-spacing: 0.04em;
  line-height: 1.75;
}
@media (width <= 768px) {
  .p-restaurant__producer-p {
    font-size: 0.875rem;
    width: 100%;
  }
}
.p-restaurant .c-place-slider {
  margin-bottom: 5rem;
}
@media (width <= 768px) {
  .p-restaurant .c-place-slider {
    margin-bottom: 5rem;
  }
}
.p-restaurant .c-reservation-card {
  gap: 3rem;
  max-width: 51.875rem;
}
@media (width <= 768px) {
  .p-restaurant .c-reservation-card {
    max-width: 100%;
    gap: 1.875rem;
  }
}
.p-restaurant__plate .c-stay-others__block {
  margin-bottom: 10rem;
}
@media (width <= 768px) {
  .p-restaurant__plate .c-stay-others__block {
    margin-bottom: 6.25rem;
  }
}
.p-restaurant__plate .c-stay-others__title {
  font-size: 2rem;
}
@media (width <= 768px) {
  .p-restaurant__plate .c-stay-others__title {
    font-size: 1.5rem;
    margin-bottom: 0.625rem;
  }
}
.p-restaurant__plate .c-stay-others__text {
  padding-right: 1.875rem;
  letter-spacing: 0.04em;
}
@media (width <= 768px) {
  .p-restaurant__plate .c-stay-others__text {
    padding-right: 0;
  }
}
@media (width <= 768px) {
  .p-restaurant__plate .c-stay-others__thumb {
    margin: 0 0 1.875rem;
    width: 100%;
  }
}
@media (width <= 768px) {
  .p-restaurant__plate .c-stay-others__p {
    font-size: 0.9375rem;
    letter-spacing: 0.08em;
  }
}
@media (width <= 768px) {
  .p-restaurant__plate .c-btn {
    margin-top: 2.1875rem;
    width: 15rem;
  }
}
.p-restaurant__drink {
  margin-top: 10rem;
  padding: 7.5rem 0;
}
@media (width <= 768px) {
  .p-restaurant__drink {
    margin-top: 5rem;
    padding: 5rem 0;
  }
}
.p-restaurant__drink-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 4.375rem;
}
@media (width <= 768px) {
  .p-restaurant__drink-inner {
    flex-wrap: wrap;
    margin-bottom: 3.75rem;
  }
}
.p-restaurant__drink-thumb {
  width: 25rem;
}
@media (width <= 768px) {
  .p-restaurant__drink-thumb {
    width: 100%;
    margin-bottom: 1.25rem;
  }
}
.p-restaurant__drink-text {
  width: 50rem;
}
@media (width <= 768px) {
  .p-restaurant__drink-text {
    width: 100%;
  }
}
.p-restaurant__drink-title {
  letter-spacing: 0.08em;
  font-size: 2rem;
}
@media (width <= 768px) {
  .p-restaurant__drink-title {
    font-size: 1.5rem;
    line-height: 1.6;
    margin-bottom: 1.5625rem;
  }
}
@media (width <= 768px) {
  .p-restaurant__drink-p {
    font-size: 0.9375rem;
    letter-spacing: 0.04em;
  }
}
.p-restaurant__drink-h3 {
  font-size: 1.75rem;
  margin-bottom: 1.25rem;
}
@media (width <= 768px) {
  .p-restaurant__drink-h3 {
    font-size: 1.3125rem;
    margin-bottom: 0.9375rem;
  }
}
.p-restaurant__drink-h3 span {
  font-size: 1rem;
  letter-spacing: 0.04em;
  vertical-align: top;
  margin-left: 2.5rem;
}
@media (width <= 768px) {
  .p-restaurant__drink-h3 span {
    font-size: 0.875rem;
    display: block;
    margin-left: 0;
  }
}
.p-restaurant__drink-menu {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin-bottom: 3.125rem;
}
@media (width <= 768px) {
  .p-restaurant__drink-menu {
    gap: 2.5rem;
    margin-bottom: 1.25rem;
  }
}
.p-restaurant__drink-menu-item {
  width: 50%;
}
@media (width <= 768px) {
  .p-restaurant__drink-menu-item {
    width: 100%;
    margin-left: 0;
  }
}
.p-restaurant__drink-menu-drink {
  display: flex;
}
@media (width <= 768px) {
  .p-restaurant__drink-menu-drink {
    flex-wrap: wrap;
    gap: 0.625rem;
  }
}
.p-restaurant__drink-menu-drink:not(:last-of-type) {
  margin-bottom: 0.625rem;
}
@media (width <= 768px) {
  .p-restaurant__drink-menu-drink:not(:last-of-type) {
    margin-bottom: 1.25rem;
  }
}
.p-restaurant__drink-menu-drink--01 {
  flex-direction: column;
}
.p-restaurant__drink-menu-drink--01 .p-restaurant__drink-menu-title {
  width: 100%;
}
.p-restaurant__drink-menu-title {
  width: 6.25rem;
}
@media (width <= 768px) {
  .p-restaurant__drink-menu-title {
    width: 100%;
    font-size: 0.875rem;
    line-height: 1.35;
  }
}
.p-restaurant__drink-menu-title--01 {
  letter-spacing: 0;
}
.p-restaurant__drink-menu-p {
  width: calc(100% - 6.25rem);
  line-height: 2.2;
}
@media (width <= 768px) {
  .p-restaurant__drink-menu-p {
    width: 100%;
  }
}
.p-restaurant__time {
  padding: 1.875rem;
  text-align: center;
}
@media (width <= 768px) {
  .p-restaurant__time {
    font-size: 0.9375rem;
    padding: 1rem 0.75rem;
  }
}
.p-restaurant__time span {
  margin-right: 3.75rem;
}
@media (width <= 768px) {
  .p-restaurant__time span {
    margin: 0;
    display: block;
  }
}
.p-restaurant__plan {
  height: 30rem;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 10rem;
  position: relative;
}
@media (width <= 768px) {
  .p-restaurant__plan {
    height: 28.5625rem;
    margin-bottom: 6.25rem;
  }
}
.p-restaurant__plan--last {
  margin-bottom: 0;
}
.p-restaurant__plan:after {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  content: "";
  background-color: rgba(0, 0, 0, 0.4);
  z-index: 0;
}
.p-restaurant__plan-bg {
  position: absolute;
  top: 0;
  left: 0;
}
.p-restaurant__plan .c-inner {
  position: relative;
  z-index: 1;
  color: #fff;
  text-align: center;
}
.p-restaurant__plan-title {
  font-size: 1.75rem;
  line-height: 1.6;
  margin-bottom: 1.25rem;
}
@media (width <= 768px) {
  .p-restaurant__plan-title {
    font-size: 1.3125rem;
    line-height: 1.6;
  }
}
.p-restaurant__plan .c-btns {
  justify-content: center;
  gap: 2.5rem;
}
@media (width <= 768px) {
  .p-restaurant__plan .c-btns {
    gap: 1rem;
  }
}
@media (width <= 768px) {
  .p-restaurant__plan .c-btn {
    width: 15rem;
  }
}
.p-restaurant__plan--02 {
  margin-bottom: 0;
}
.p-restaurant__others {
  padding-bottom: 2.5rem;
}
@media (width <= 768px) {
  .p-restaurant__others {
    padding-bottom: 5rem;
  }
}
.p-restaurant__others-catch {
  font-size: 1.5rem;
  margin-bottom: 1.25rem;
}
@media (width <= 768px) {
  .p-restaurant__others-catch {
    font-size: 1.125rem;
    margin-bottom: 0;
  }
}
.p-restaurant__others .c-stay-others__title {
  font-size: 2rem;
  margin-bottom: 1.25rem;
}
@media (width <= 768px) {
  .p-restaurant__others .c-stay-others__title {
    font-size: 1.5rem;
    margin-bottom: 0.625rem;
  }
}
.p-restaurant__others-title.c-stay-others__title {
  font-size: 2.25rem;
}
@media (width <= 768px) {
  .p-restaurant__others-title.c-stay-others__title {
    font-size: 1.5rem;
  }
}
.p-restaurant__others .c-stay-others__p {
  margin-bottom: 2.5rem;
}
@media (width <= 768px) {
  .p-restaurant__others .c-stay-others__p {
    font-size: 0.9375rem;
    margin-bottom: 1.25rem;
  }
}
.p-restaurant__others .p-restaurant__time {
  text-align: left;
  padding: 1.5625rem;
  border-top: 1px solid #cbc5b5;
  border-bottom: 1px solid #cbc5b5;
}
@media (width <= 768px) {
  .p-restaurant__others .p-restaurant__time {
    font-size: 0.9375rem;
    padding: 1.0625rem 0;
  }
}
@media (width <= 768px) {
  .p-restaurant__others .p-restaurant__time span {
    display: inline-block;
    width: 8rem;
  }
}
@media (width <= 768px) {
  .p-restaurant__others .c-block02__thumb {
    margin-right: -3.5rem;
    width: calc(100% + 1.75rem);
  }
}
.p-restaurant__others .c-block02__text {
  padding-left: 12.5rem;
}
@media (width <= 768px) {
  .p-restaurant__others .c-block02__text {
    padding: 0;
  }
}
.p-restaurant__others .c-block02--reverse .c-block02__text {
  padding-left: 5rem;
  padding-right: 12.5rem;
}
@media (width <= 768px) {
  .p-restaurant__others .c-block02--reverse .c-block02__text {
    padding: 0;
    margin-bottom: 0.9375rem;
  }
}
@media (width <= 768px) {
  .p-restaurant__others .c-block02--reverse .c-block02__thumb {
    margin-right: 0rem;
    width: calc(100vw - 1.25rem);
  }
}
.p-restaurant__info {
  padding: 6.875rem 0 5.1875rem;
}
@media (width <= 768px) {
  .p-restaurant__info {
    padding: 4.375rem 0 5rem;
  }
}
.p-restaurant__info .c-inner {
  max-width: 65rem;
  margin: 0 auto;
}
.p-restaurant__info .c-title__h2 {
  font-size: 1.75rem;
  letter-spacing: 0.08em;
}
@media (width <= 768px) {
  .p-restaurant__info .c-title__h2 {
    font-size: 1.3125rem;
    line-height: 1.6;
  }
}
@media (width <= 768px) {
  .p-restaurant__info .c-table {
    margin-bottom: 0;
  }
}
.p-restaurant__info .c-table th {
  width: 11.25rem;
  padding: 1.125rem 0;
}
@media (width <= 768px) {
  .p-restaurant__info .c-table th {
    padding-bottom: 0;
    width: 100%;
    padding: 1.25rem 0 0;
  }
}
.p-restaurant__info .c-table td {
  letter-spacing: 0.08em;
  padding: 1.125rem 0;
}
@media (width <= 768px) {
  .p-restaurant__info .c-table td {
    padding: 0.625rem 0 1.25rem;
    font-size: 0.875rem;
    line-height: 1.75;
  }
}
.p-restaurant__info .c-table td .u-text--small {
  font-size: 0.8125rem;
}
@media (width <= 768px) {
  .p-restaurant__info .c-table .c-gmap__link {
    margin-top: 1.25rem;
  }
}

.p-cafe .c-header__title {
  font-size: 3.125rem;
  letter-spacing: 0.05em;
}
@media (width <= 768px) {
  .p-cafe .c-header__title {
    font-size: 2.125rem;
    letter-spacing: 0.04em;
    margin-top: 2.5rem;
  }
}
.p-cafe__top {
  margin-bottom: 7.5rem;
}
@media (width <= 768px) {
  .p-cafe__top {
    margin-bottom: 0;
  }
}
.p-cafe__top-header {
  margin: 8.75rem 0 4.375rem;
  display: flex;
  align-items: center;
  padding: 0 2.5rem;
}
@media (width <= 768px) {
  .p-cafe__top-header {
    margin: 3.125rem 0 0.625rem;
    padding: 0;
    flex-wrap: wrap;
  }
}
.p-cafe__top-title {
  width: 33.125rem;
  font-size: 2.625rem;
}
@media (width <= 768px) {
  .p-cafe__top-title {
    width: 100%;
    font-size: 1.75rem;
    text-align: center;
    margin-bottom: 0.625rem;
  }
}
.p-cafe__top-p {
  width: calc(100% - 33.125rem);
  letter-spacing: 0.072em;
}
@media (width <= 768px) {
  .p-cafe__top-p {
    width: 100%;
    font-size: 0.9375rem;
    margin-bottom: 1.875rem;
  }
}
@media (width <= 768px) {
  .p-cafe__top-img {
    display: block;
    width: calc(100% + 3.5rem);
    max-width: inherit;
    margin: 0 -1.75rem 5rem;
  }
}
.p-cafe__about {
  margin-bottom: 10rem;
}
@media (width <= 768px) {
  .p-cafe__about {
    margin-bottom: 6.25rem;
  }
}
.p-cafe__about-title {
  font-size: 2rem;
  line-height: 1.46875;
  margin-bottom: 2.5rem;
}
@media (width <= 768px) {
  .p-cafe__about-title {
    font-size: 1.5rem;
    line-height: 1.6;
    margin-bottom: 0.625rem;
  }
}
@media (width <= 768px) {
  .p-cafe__about .c-new-block {
    gap: 1.25rem;
  }
}
.p-cafe__about .c-new-block--01.c-new-block--reverse .c-new-block__text {
  padding-left: 6.25rem;
  padding-right: 11.875rem;
}
@media (width <= 768px) {
  .p-cafe__about .c-new-block--01.c-new-block--reverse .c-new-block__text {
    padding: 0;
  }
}
.p-cafe__about .c-new-block__text-content {
  width: 100%;
  text-align-last: left;
}
.p-cafe__about .c-new-block__p {
  font-size: 0.9375rem;
}
@media (width <= 768px) {
  .p-cafe__about .c-new-block__thumb {
    width: calc(100% + 2.25rem);
  }
}
.p-cafe__menu {
  padding: 6.25rem 0 7.5rem;
}
@media (width <= 768px) {
  .p-cafe__menu {
    padding: 3.75rem 0 5rem;
  }
}
.p-cafe__menu-title {
  font-size: 2.625rem;
  margin-bottom: 1.25rem;
  text-align: center;
}
@media (width <= 768px) {
  .p-cafe__menu-title {
    font-size: 1.75rem;
  }
}
.p-cafe__menu-p {
  margin-bottom: 3.125rem;
  text-align: center;
}
@media (width <= 768px) {
  .p-cafe__menu-p {
    text-align: left;
  }
}
.p-cafe__menu-sample {
  display: flex;
  gap: 4rem;
}
@media (width <= 768px) {
  .p-cafe__menu-sample {
    flex-wrap: wrap;
    gap: 2.8125rem;
  }
}
.p-cafe__menu-sample-item {
  width: 50%;
  flex-shrink: 1;
}
@media (width <= 768px) {
  .p-cafe__menu-sample-item {
    width: 100%;
  }
}
.p-cafe__menu-sample-thumb {
  margin-bottom: 1.875rem;
}
@media (width <= 768px) {
  .p-cafe__menu-sample-thumb {
    margin-bottom: 1.25rem;
  }
}
.p-cafe__menu-sample-title {
  font-size: 1.5rem;
  letter-spacing: 0.072em;
}
@media (width <= 768px) {
  .p-cafe__menu-sample-title {
    font-size: 1.3125rem;
    margin-bottom: 0.625rem;
  }
}
.p-cafe__menu-sample-p {
  letter-spacing: 0.072em;
}
.p-cafe__menu-h3 {
  font-size: 1.75rem;
  margin-bottom: 1.25rem;
}
@media (width <= 768px) {
  .p-cafe__menu-h3 {
    font-size: 1.5rem;
    margin-bottom: 0.625rem;
  }
}
.p-cafe__menu-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.3125rem 5rem;
  width: 100%;
  margin-bottom: 0.625rem;
}
@media (width <= 768px) {
  .p-cafe__menu-list {
    gap: 0rem;
    margin-bottom: 0.625rem;
  }
}
.p-cafe__menu-list-item.c-list__item {
  display: flex;
  justify-content: space-between;
  width: 46%;
}
@media (width <= 768px) {
  .p-cafe__menu-list-item.c-list__item {
    align-items: center;
    width: 100%;
    margin-left: 0;
  }
}
.p-cafe__menu-list-name {
  position: relative;
  overflow: hidden;
  width: 30.625rem;
}
@media (width <= 768px) {
  .p-cafe__menu-list-name {
    width: 15.625rem;
    font-size: 0.875rem;
    display: inline-block;
    letter-spacing: 0;
    line-height: 2.3571428571;
  }
}
.p-cafe__menu-list-name span {
  position: relative;
}
@media (width <= 768px) {
  .p-cafe__menu-list-name span {
    display: inline-block;
  }
}
@media (width <= 768px) {
  .p-cafe__menu-list-price {
    font-size: 0.875rem;
  }
}
@media (width <= 768px) {
  .p-cafe__menu-notice {
    font-size: 0.875rem;
  }
}
.p-cafe__info {
  padding-bottom: 6.875rem;
}
@media (width <= 768px) {
  .p-cafe__info {
    padding: 5.625rem 0 3.75rem;
  }
}
.p-cafe__info .c-inner {
  max-width: 65rem;
}
.p-cafe__info-title {
  font-size: 1.75rem;
  margin-bottom: 1.25rem;
}
@media (width <= 768px) {
  .p-cafe__info-title {
    font-size: 1.3125rem;
  }
}
.p-cafe__info .c-table th {
  width: 11.25rem;
}
@media (width <= 768px) {
  .p-cafe__info .c-table th {
    padding-bottom: 0.625rem;
    width: 100%;
  }
}
.p-cafe__info .c-table td {
  font-size: 0.875rem;
}

.p-concept__top {
  margin-top: 7.5rem;
}
@media (width <= 768px) {
  .p-concept__top {
    margin-top: 3.75rem;
  }
}
.p-concept__top .c-title {
  font-size: 2.25rem;
}
@media (width <= 768px) {
  .p-concept__top .c-title {
    font-size: 1.6875rem;
    line-height: 1.6;
    text-align: center;
    letter-spacing: 0.02em;
    margin-bottom: 1.25rem;
  }
}
.p-concept__top .c-new-block {
  margin-bottom: 3.75rem;
}
@media (width <= 768px) {
  .p-concept__top .c-new-block {
    margin-bottom: 2.1875rem;
  }
}
.p-concept__top .c-new-block:not(:last-of-type) {
  margin-bottom: 7.5rem;
}
@media (width <= 768px) {
  .p-concept__top .c-new-block:not(:last-of-type) {
    margin-bottom: 5rem;
  }
}
.p-concept__top .c-new-block__p {
  font-size: 1rem;
}
@media (width <= 768px) {
  .p-concept__top .c-new-block__p {
    font-size: 0.9375rem;
  }
}
.p-concept__top .c-point-list {
  max-width: 80rem;
  margin-bottom: 3.125rem;
  border-bottom: 1px solid #cbc5b5;
}
@media (width <= 768px) {
  .p-concept__top .c-point-list {
    margin-bottom: 0rem;
  }
}
@media (width <= 768px) {
  .p-concept__top .c-point-list__title {
    margin-bottom: 0.3125rem;
  }
}
.p-concept .c-scroll-text {
  margin-bottom: 1.25rem;
}
.p-concept__map-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 5rem;
}
@media (width <= 768px) {
  .p-concept__map-header {
    flex-wrap: wrap;
    margin-bottom: 2.5rem;
  }
}
.p-concept__map-header-title {
  font-size: 2.25rem;
  width: 23.125rem;
}
@media (width <= 768px) {
  .p-concept__map-header-title {
    width: 100%;
    text-align: center;
    font-size: 1.75rem;
  }
}
.p-concept__map-header-p {
  width: 55.9375rem;
}
@media (width <= 768px) {
  .p-concept__map-header-p {
    width: 100%;
    font-size: 0.9375rem;
  }
}
.p-concept__map-list {
  display: flex;
  gap: 4rem;
  margin-bottom: 7.5rem;
}
@media (width <= 768px) {
  .p-concept__map-list {
    flex-wrap: wrap;
    margin-bottom: 5rem;
  }
}
.p-concept__map-item {
  width: 50%;
  flex-shrink: 1;
  text-align: center;
}
@media (width <= 768px) {
  .p-concept__map-item {
    width: 100%;
  }
}
.p-concept__map-thumb {
  margin-bottom: 1.875rem;
}
.p-concept__map .c-btn {
  width: 12.5rem;
  min-width: inherit;
}
.p-concept__map-img {
  display: none;
  max-width: 75rem;
  min-width: 688px;
}
@media (width <= 768px) {
  .p-concept__map-img {
    position: relative;
    transform: translateX(1.25rem);
    width: 37.5rem;
    min-width: inherit;
    max-width: inherit;
    transform: translateX(-1.25rem);
    padding-right: 1.25rem;
  }
}
.p-concept__map-overlay {
  position: relative;
  padding: 2.5rem;
  overflow: scroll;
  position: fixed;
  visibility: hidden;
  opacity: 0;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  padding: 2.5rem;
  transition: 0.3s;
}
body.is-map-open .p-concept__map-overlay {
  visibility: visible;
  opacity: 1;
  z-index: 10000;
}
.p-concept__map-overlay-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100%;
}
@media (width <= 768px) {
  .p-concept__map-overlay-inner {
    justify-content: inherit;
  }
}
.p-concept__map-switch {
  right: 1.25rem;
  top: 1.25rem;
  width: 3.125rem;
  height: 3.125rem;
  background-color: #fff;
  border-radius: 999px;
  position: fixed;
  cursor: pointer;
}
.p-concept__map-switch-bar {
  width: 1.875rem;
  height: 0.25rem;
  background-color: #000;
  position: absolute;
  top: calc(50% - 0.125rem);
  left: calc(50% - 0.9375rem);
}
.p-concept__map-switch-bar:nth-of-type(1) {
  transform: rotate(45deg);
}
.p-concept__map-switch-bar:nth-of-type(2) {
  transform: rotate(-45deg);
}
.p-concept__map-bnr {
  width: 60rem;
  display: block;
  margin: 0 auto 8.75rem;
}
@media (width <= 768px) {
  .p-concept__map-bnr {
    margin-left: -0.5rem;
    margin-right: -0.5rem;
    width: calc(100% + 1rem);
    width: calc(100vw - 2.5rem);
    max-width: inherit;
    margin-bottom: 6.25rem;
  }
}

.p-citystroll__message {
  text-align: center;
  font-size: 1.125rem;
  margin: 8.75rem 0 5rem;
}
@media (width <= 768px) {
  .p-citystroll__message {
    text-align: left;
    padding: 0 1.75rem;
    font-size: 0.9375rem;
    margin: 3.4375rem 0 2.75rem;
  }
}
.p-citystroll .c-place-slider--pager {
  margin-bottom: 5rem;
}
@media (width <= 768px) {
  .p-citystroll .c-place-slider--pager {
    margin-bottom: 2.5rem;
  }
}
.p-citystroll .c-slider__controller {
  position: static;
  padding-top: 1.25rem;
  padding-right: 3.125rem;
}
@media (width <= 768px) {
  .p-citystroll .c-slider__controller {
    padding-right: 0;
  }
}
.p-citystroll__about {
  position: relative;
  height: 68.75rem;
  background-image: url(../images/citystroll/about01.jpg), url(../images/citystroll/about02.jpg);
  background-repeat: no-repeat, no-repeat;
  background-size: 65rem, 30rem;
  background-position: calc(50% + 20rem) top, calc(50% - 37.5rem) 31.875rem;
}
@media (width <= 768px) {
  .p-citystroll__about {
    height: 50.625rem;
    background-size: 100%, 12.1875rem;
    background-position: left 7.5rem, right bottom;
    margin-bottom: 6.25rem;
  }
}
.p-citystroll__about-title {
  font-size: 2.5rem;
  line-height: 1.75;
  position: absolute;
  top: 9.375rem;
  left: calc(50% - 42.5rem);
  letter-spacing: 0.12em;
}
@media (width <= 768px) {
  .p-citystroll__about-title {
    text-align: center;
    font-size: 1.75rem;
    line-height: 1.6;
    left: 3.4375rem;
    letter-spacing: 0.08em;
    top: 0;
  }
}
.p-citystroll__about-p {
  position: absolute;
  top: 50rem;
  width: 55rem;
  left: calc(50% - 12.5rem);
}
@media (width <= 768px) {
  .p-citystroll__about-p {
    top: 26.25rem;
    left: 1.75rem;
    width: calc(100% - 3.5rem);
    font-size: 0.875rem;
    letter-spacing: 0.036em;
  }
}
.p-citystroll__history {
  margin-bottom: 10rem;
}
@media (width <= 768px) {
  .p-citystroll__history {
    margin-bottom: 6.875rem;
  }
}
@media (width <= 768px) {
  .p-citystroll__history .c-new-block {
    flex-direction: column-reverse;
  }
}
.p-citystroll__history .c-new-block:not(:last-of-type) {
  margin-bottom: 6.25rem;
}
@media (width <= 768px) {
  .p-citystroll__history .c-new-block:not(:last-of-type) {
    margin-bottom: 3.75rem;
  }
}
.p-citystroll__history .c-title {
  font-size: 1.75rem;
  line-height: 1.65;
}
@media (width <= 768px) {
  .p-citystroll__history .c-title {
    font-size: 1.5rem;
    line-height: 1.6;
  }
}
@media (width <= 768px) {
  .p-citystroll__history .c-new-block__thumb {
    margin-bottom: 1.25rem;
  }
}
.p-citystroll__history .c-new-block__p {
  font-size: 1rem;
}
@media (width <= 768px) {
  .p-citystroll__history .c-new-block__p {
    font-size: 0.875rem;
  }
}

.p-post {
  /* 英語ページ */
}
.p-post__section {
  padding-top: 0;
  margin-top: -20.625rem;
  position: relative;
  z-index: 1;
  padding-bottom: 5rem;
}
@media (width <= 768px) {
  .p-post__section {
    padding-bottom: 3.75rem;
    margin-top: -9.375rem;
  }
}
.p-post .c-inner {
  max-width: 65rem;
}
.p-post__header {
  margin-bottom: 3.125rem;
}
.p-post__header .c-cat-list {
  padding-left: 0;
}
.p-post__header .c-cat-list__item {
  font-size: 1rem;
  background: #a78f45;
}
@media (width <= 768px) {
  .p-post__header .c-cat-list__item {
    font-size: 0.875rem;
  }
}
.p-post__header .c-cat-list__item--sub {
  background: rgba(167, 143, 69, 0.4);
}
.p-post__header .c-cat-list__item--sub .c-cat-list__link {
  color: #241d14;
}
.p-post__header .c-cat-list__link {
  color: #fff;
}
@media (width <= 768px) {
  .p-post__header .c-cat-list__link {
    padding: 0.25rem 0.75rem;
  }
}
.p-post__title {
  font-size: 1.5rem;
  line-height: 2.625rem;
  margin-bottom: 1.875rem;
  letter-spacing: 0.08em;
}
@media (width <= 768px) {
  .p-post__title {
    font-size: 1.3125rem;
    line-height: 2.1rem;
  }
}
.p-post__body {
  border-bottom: 1px solid #cbc5b5;
  padding-bottom: 5rem;
  margin-bottom: 5rem;
  position: relative;
}
@media (width <= 768px) {
  .p-post__body {
    margin-bottom: 3.75rem;
  }
}
.p-post__body p {
  margin-bottom: 2em;
}
.p-post__body > img {
  margin-bottom: 2em;
}
.p-post__body .c-flex {
  display: flex;
  flex-wrap: wrap;
  gap: 2.5rem;
}
.p-post__thumb {
  margin-bottom: 2em;
}
@media (width <= 768px) {
  .p-post__thumb {
    margin-left: -1.75rem;
    margin-right: -1.75rem;
    width: calc(100% + 3.5rem);
  }
}
.p-post__bottom {
  text-align: center;
}
.p-post__bottom .c-btn {
  text-align: left;
  margin-bottom: 5rem;
}
@media (width <= 768px) {
  .p-post__bottom .c-btn {
    margin-bottom: 3.75rem;
    width: 13.75rem;
  }
}
.p-post__bottom .c-title__h2 {
  font-size: 1.5rem;
  margin-bottom: 2.1875rem;
}
@media (width <= 768px) {
  .p-post__bottom .c-title__h2 {
    font-size: 1.3125rem;
    margin-bottom: 1.875rem;
  }
}
@media (width <= 768px) {
  .p-post__bottom .c-news-card__thumb {
    width: 50% !important;
  }
}
@media (width <= 768px) {
  .p-post__bottom .c-news-card__text {
    width: 50% !important;
  }
}
.p-post__en + .p-post__en {
  margin-top: 50px;
}
.p-post__en-section-title {
  font-size: 2rem;
  position: relative;
  padding-left: 30px;
}
.p-post__en-section-title::before {
  position: absolute;
  display: block;
  content: "";
  height: 1px;
  left: -0.4rem;
  top: 2.4rem;
  width: 1.8rem;
  background-color: #9e7e3f;
  transform: rotate(-28deg);
  z-index: 1;
}
@media (width <= 768px) {
  .p-post--large .c-header {
    position: absolute;
  }
}
@media (width <= 768px) {
  .p-post--large .has-side__content {
    margin-top: 8.75rem;
  }
}
.p-post--large .p-post__section {
  margin-top: 0;
  padding-bottom: 0;
}
.p-post--large .p-post__header {
  position: absolute;
  top: -18.75rem;
  margin-bottom: 8.75rem;
}
@media (width <= 768px) {
  .p-post--large .p-post__header {
    position: static;
    margin-bottom: 2.5rem;
  }
}
.p-post--large .p-post__body {
  padding-bottom: 2.5rem;
  margin-bottom: 0;
}
.p-post--large .c-inner {
  max-width: 80rem;
}
.p-post--large .has-side__main {
  width: 55rem;
}
@media (width <= 768px) {
  .p-post--large .has-side__main {
    width: 100%;
    order: 1;
    display: block;
  }
}
.p-post--large .has-side__aside {
  width: 23.75rem;
}
@media (width <= 768px) {
  .p-post--large .has-side__aside {
    width: 100%;
    order: 2;
    margin-top: 5rem;
  }
}
.p-post--large .c-activity-list {
  gap: 1.25rem;
}
.p-post--large .c-activity-list__item {
  width: 100%;
}
.p-post--large .c-activity-card__title {
  font-size: 1.25rem;
}
@media (width <= 768px) {
  .p-post--large .c-other-posts__item {
    height: auto;
  }
}
.p-post--large .c-other-posts__item .c-news-card__title {
  -webkit-line-clamp: 3 !important;
}
@media (width <= 768px) {
  .p-post--large .l-aside__title {
    display: block;
  }
}

.p-faq__title {
  font-size: 1.5rem;
  margin-bottom: 1.5625rem;
}
@media (width <= 768px) {
  .p-faq__title {
    font-size: 1.3125rem;
    line-height: 1.6;
  }
}
.p-faq__notice {
  padding: 3.9375rem 3.75rem;
  margin-bottom: 4.375rem;
}
@media (width <= 768px) {
  .p-faq__notice {
    width: 100vw;
    margin: 0 -1.75rem 4.375rem;
    padding: 3rem 1.75rem;
  }
}
.p-faq__notice .c-btn {
  margin-top: 2.5rem;
  background-color: #fff;
}
@media (width <= 768px) {
  .p-faq__notice .c-btn {
    margin-top: 2.1875rem;
  }
}
.p-faq__notice .c-link {
  margin-top: 2.5rem;
}
@media (width <= 768px) {
  .p-faq__notice .c-link {
    margin-top: 2.1875rem;
  }
}
.p-faq__notice-title {
  font-size: 1.5rem;
}
@media (width <= 768px) {
  .p-faq__notice-title {
    font-size: 1.3125rem;
    line-height: 1.6;
    margin-bottom: 0.9375rem;
  }
}
.p-faq__notice-p {
  font-size: 0.875rem;
  line-height: 2.2857142857;
}
@media (width <= 768px) {
  .p-faq__notice-p {
    line-height: 2;
  }
}
.p-faq__contact {
  display: flex;
  justify-content: center;
  width: 55rem;
  margin: 4.375rem auto 0;
}
@media (width <= 768px) {
  .p-faq__contact {
    flex-wrap: wrap;
    width: 100%;
  }
}
.p-faq__contact-text {
  width: 22.8125rem;
  padding-right: 3.4375rem;
  border-right: 1px solid #cbc5b5;
}
@media (width <= 768px) {
  .p-faq__contact-text {
    width: 100%;
    border: none;
    margin-bottom: 1.25rem;
  }
}
.p-faq__contact-title {
  font-size: 1.75rem;
}
@media (width <= 768px) {
  .p-faq__contact-title {
    font-size: 1.5rem;
    margin-bottom: 0.9375rem;
  }
}
.p-faq__contact-content {
  width: 31.875rem;
  padding-left: 4rem;
}
@media (width <= 768px) {
  .p-faq__contact-content {
    width: 100%;
    padding-left: 0;
  }
}
.p-faq__contact-tel {
  font-size: 2rem;
  letter-spacing: -0.04em;
}
@media (width <= 768px) {
  .p-faq__contact-tel {
    margin-top: 0.625rem;
  }
}
.p-faq__contact-tel span {
  font-size: 0.9375rem;
  margin-left: 0.625rem;
  letter-spacing: 0.01em;
}
@media (width <= 768px) {
  .p-faq__contact-tel span {
    display: block;
  }
}
.p-faq__faq-list {
  margin-bottom: 1.25rem !important;
}
.p-faq__link {
  margin-bottom: 4.375rem;
}

.p-stay-amenities__bath.c-section {
  padding: 0;
}
.p-stay-amenities__bath .c-block {
  margin-bottom: 3.75rem !important;
}
@media (width <= 768px) {
  .p-stay-amenities__bath .c-block {
    margin-bottom: 0.625rem !important;
  }
}
.p-stay-amenities__bath .c-title__h2 {
  font-size: 1.5rem;
  margin-bottom: 1.25rem;
}
@media (width <= 768px) {
  .p-stay-amenities__bath .c-title__h2 {
    font-size: 1.5rem;
    margin-bottom: 0rem;
  }
}
.p-stay-amenities .c-block {
  margin-bottom: 7.5rem;
}
@media (width <= 768px) {
  .p-stay-amenities .c-block {
    margin-bottom: 0;
  }
}
.p-stay-amenities .c-block .c-title__h2 {
  font-size: 1.75rem;
}
@media (width <= 768px) {
  .p-stay-amenities .c-block .c-title__h2 {
    font-size: 1.5rem;
  }
}
.p-stay-amenities .c-block__thumb {
  padding-left: 0;
}
@media (width <= 768px) {
  .p-stay-amenities .c-block__thumb {
    margin: 0 auto 0rem;
    width: 100%;
  }
}
@media (width <= 768px) {
  .p-stay-amenities .c-block__p {
    letter-spacing: 0.04em;
    font-size: 0.875rem;
  }
}
.p-stay-amenities .c-flex {
  gap: 3rem;
}
@media (width <= 768px) {
  .p-stay-amenities .c-flex {
    flex-wrap: wrap;
    gap: 2.3125rem 1.5rem;
  }
}
.p-stay-amenities .c-flex__item {
  width: 17.75rem;
}
@media (width <= 768px) {
  .p-stay-amenities .c-flex__item {
    width: 9.6875rem;
  }
}
.p-stay-amenities .c-flex__item .c-title__h3 {
  font-size: 1.3125rem;
}
@media (width <= 768px) {
  .p-stay-amenities .c-flex__item .c-title__h3 {
    font-size: 1rem;
  }
}
.p-stay-amenities .c-flex__item .c-title__h3 .u-text--small {
  font-size: 0.875rem;
  line-height: 1.2;
  display: block;
}
@media (width <= 768px) {
  .p-stay-amenities .c-flex__item .c-title__h3 .u-text--small {
    font-size: 0.75rem;
  }
}
.p-stay-amenities .c-flex__thumb {
  margin-bottom: 0.625rem;
}
@media (width <= 768px) {
  .p-stay-amenities .c-flex__p {
    font-size: 0.875rem;
    line-height: 1.53125rem;
  }
}
.p-stay-amenities__p {
  letter-spacing: 0.04em;
  margin-bottom: 0 !important;
}
.p-stay-amenities__p .u-text--small {
  font-size: 0.875rem;
}
@media (width <= 768px) {
  .p-stay-amenities__p .u-text--small {
    font-size: 0.75rem;
    line-height: 1.2rem;
  }
}
.p-stay-amenities .c-point-list {
  border-top: 1px solid #cbc5b5;
  border-bottom: 1px solid #cbc5b5;
  margin-bottom: 7.5rem;
}
@media (width <= 768px) {
  .p-stay-amenities .c-point-list {
    margin-bottom: 5rem;
  }
}
.p-stay-amenities .c-point-list__item {
  padding: 0.9375rem 0;
}
@media (width <= 768px) {
  .p-stay-amenities .c-point-list__item {
    padding: 1.5625rem 0;
  }
}
.p-stay-amenities .c-point-list__header {
  display: flex;
  justify-content: start;
  align-items: center;
  padding-left: 1.875rem;
  width: 12.0625rem;
}
@media (width <= 768px) {
  .p-stay-amenities .c-point-list__header {
    width: 100%;
    padding-left: 0;
  }
}
.p-stay-amenities .c-point-list__title {
  margin-bottom: 0;
  font-size: 1.125rem;
}
@media (width <= 768px) {
  .p-stay-amenities .c-point-list__title {
    font-size: 1rem;
  }
}
.p-stay-amenities .c-point-list__text {
  width: calc(100% - 13.9375rem);
}
@media (width <= 768px) {
  .p-stay-amenities .c-point-list__text {
    width: 100%;
  }
}
.p-stay-amenities .c-point-list__text p {
  margin-bottom: 0;
}
.p-stay-amenities__others.c-section {
  padding: 7.5rem 0 5rem;
}
@media (width <= 768px) {
  .p-stay-amenities__others.c-section {
    padding: 5rem 0 6.875rem;
  }
}
.p-stay-amenities__others .c-title__h2 {
  font-size: 1.5rem;
  margin-bottom: 2.1875rem;
}
@media (width <= 768px) {
  .p-stay-amenities__others .c-title__h2 {
    font-size: 1.125rem;
    margin-bottom: 1.25rem;
  }
}
@media (width <= 768px) {
  .p-stay-amenities__others .c-block:not(:last-of-type) {
    margin-bottom: 3.75rem;
  }
}
.p-stay-amenities__others .c-block .c-title__h2 {
  margin-bottom: 0.625rem;
}
@media (width <= 768px) {
  .p-stay-amenities__others .c-block__thumb {
    margin: 0 auto 0.625rem;
    width: 100%;
  }
}
.p-stay-amenities__others .c-block__p {
  line-height: 2.475;
}
@media (width <= 768px) {
  .p-stay-amenities__others .c-block__p {
    font-size: 0.875rem;
    line-height: 2;
    letter-spacing: 0.08em;
  }
}
@media (width <= 768px) {
  .p-stay-amenities__others .c-block__img {
    height: 15.6875rem;
  }
}
@media (width <= 768px) {
  .p-stay-amenities__others .c-btn {
    margin-top: 1.875rem;
  }
}

.p-access .l-aside-nav {
  width: calc(100% + 3.125rem);
}
@media (width <= 768px) {
  .p-access .l-aside-nav {
    width: 100%;
  }
}
.p-access .c-header__text {
  margin-right: -2.5rem;
  width: 52%;
}
@media (width <= 768px) {
  .p-access .c-header__text {
    margin-right: 0;
    width: 100%;
  }
}
.p-access__chart-wrapper {
  position: relative;
  width: 100%;
}
@media (width <= 768px) {
  .p-access__chart-wrapper .c-access-chart {
    margin: 1.25rem 0 3.75rem;
  }
}
.p-access__chart-wrapper--top {
  margin-bottom: 7.5rem;
  display: flex;
  position: relative;
  gap: 5rem;
}
@media (width <= 768px) {
  .p-access__chart-wrapper--top {
    gap: 0.75rem;
    margin-bottom: 3.75rem;
  }
}
.p-access__chart-wrapper--top .c-access-chart {
  width: 50%;
  flex-shrink: 1;
}
@media (width <= 768px) {
  .p-access__chart-wrapper--top .c-access-chart {
    margin: 0;
  }
}
.p-access__chart-wrapper--top .p-access__chart-front {
  position: absolute;
  top: inherit;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 4.5rem;
  writing-mode: horizontal-tb;
}
@media (width <= 768px) {
  .p-access__chart-wrapper--top .p-access__chart-front {
    height: 3rem;
  }
}
.p-access__chart-front {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
}
.p-access__title {
  border-bottom: 1px solid #cbc5b5;
  position: relative;
  font-size: 1.875rem;
  margin-bottom: 1.875rem;
}
@media (width <= 768px) {
  .p-access__title {
    font-size: 1.3125rem;
  }
}
.p-access__title:not(:first-of-type) {
  margin-top: 7.5rem;
}
@media (width <= 768px) {
  .p-access__title:not(:first-of-type) {
    margin-top: 2.5rem;
  }
}
.p-access__titleSpan {
  display: inline-block;
  position: relative;
  transform: translateY(1px);
  font-size: 1.75rem;
  vertical-align: bottom;
}
@media (width <= 768px) {
  .p-access__titleSpan {
    letter-spacing: 0.04em;
    font-size: 1.3125rem;
    line-height: 1.3476190476;
    padding-bottom: 0.3125rem;
  }
}
.p-access__titleSpan:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: #a78f45;
}
@media (width <= 768px) {
  .p-access__titleSpan--top {
    font-size: 1.625rem;
  }
}
.p-access__p {
  margin-bottom: 2em;
}
@media (width <= 768px) {
  .p-access__p {
    font-size: 0.875rem;
  }
}
.p-access__img {
  margin-bottom: 2.5rem;
}
@media (width <= 768px) {
  .p-access__img {
    margin-bottom: 1.25rem;
  }
}
.p-access__address {
  border-top: 1px solid #cbc5b5;
}
.p-access__address--01 {
  margin-bottom: 1.875rem;
}
.p-access__addressItem {
  display: flex;
  align-items: center;
  padding: 1.5625rem 1.25rem;
  border-bottom: 1px solid #cbc5b5;
}
@media (width <= 768px) {
  .p-access__addressItem {
    flex-direction: column;
    padding: 1.75rem 0;
  }
}
.p-access__addressTitle {
  width: 20.625rem;
}
@media (width <= 768px) {
  .p-access__addressTitle {
    width: 100%;
    font-size: 0.9375rem;
  }
}
.p-access__addressText {
  width: calc(100% - 20.625rem);
}
@media (width <= 768px) {
  .p-access__addressText {
    width: 100%;
    font-size: 0.875rem;
  }
}
@media (width <= 768px) {
  .p-access__addressText .c-list__item {
    margin-left: 0;
  }
}
.p-access .c-link--external {
  margin-bottom: 3.75rem;
}
.p-access__block {
  display: flex;
  justify-content: space-between;
}
@media (width <= 768px) {
  .p-access__block {
    flex-wrap: wrap;
  }
}
.p-access__block .c-gmap {
  width: 27.25rem;
  height: 30.9375rem;
}
@media (width <= 768px) {
  .p-access__block .c-gmap {
    width: 100%;
    margin-top: 2.5rem;
    width: 100%;
    height: 15rem;
  }
}
.p-access__block-text {
  width: 31.25rem;
  letter-spacing: 0.04em;
}
@media (width <= 768px) {
  .p-access__block-text {
    width: 100%;
  }
}
.p-access__block-list {
  left: 0;
  width: 100%;
}
.p-access .c-faq-list {
  margin-bottom: 2.5rem;
}
@media (width <= 768px) {
  .p-access .c-link {
    width: 7.5rem;
  }
}
@media (width <= 768px) {
  .p-access__link--01 {
    width: 7.5rem;
  }
}

.p-guide .l-article {
  overflow-x: hidden;
}
.p-guide .c-header {
  overflow: visible;
}
.p-guide__support {
  padding-bottom: 5rem;
  position: relative;
}
.p-guide__support:after {
  content: "";
  position: absolute;
  width: 72.125rem;
  height: 33rem;
  background: rgba(167, 143, 69, 0.08);
  bottom: 0;
  left: 0;
}
@media (width <= 768px) {
  .p-guide__support:after {
    width: 17.5rem;
    height: 46.75rem;
  }
}
.p-guide__support.c-section {
  padding: 0 0 3.75rem;
}
@media (width <= 768px) {
  .p-guide__support.c-section {
    padding-top: 1.875rem;
  }
}
.p-guide__support .c-inner {
  display: flex;
  justify-content: space-between;
  z-index: 1;
  position: relative;
}
@media (width <= 768px) {
  .p-guide__support .c-inner {
    flex-direction: column;
  }
}
.p-guide__support .c-title__h2 {
  font-size: 2rem;
  line-height: 3.2rem;
  margin-bottom: 1.875rem;
  letter-spacing: 0.08em;
}
@media (width <= 768px) {
  .p-guide__support .c-title__h2 {
    font-size: 1.75rem;
    line-height: 2.8rem;
    margin-bottom: 1.25rem;
  }
}
.p-guide__supportText {
  width: 31.875rem;
  margin-top: 15.625rem;
}
@media (width <= 768px) {
  .p-guide__supportText {
    margin-top: 0;
    width: 100%;
  }
}
.p-guide__supportThumb {
  width: 45.8125rem;
  display: flex;
  justify-content: space-between;
  align-items: start;
}
@media (width <= 768px) {
  .p-guide__supportThumb {
    width: 100%;
  }
}
.p-guide__supportImg {
  width: 13.9375rem;
}
@media (width <= 768px) {
  .p-guide__supportImg {
    width: 6.3125rem;
  }
}
.p-guide__supportImg:nth-of-type(2) {
  margin-top: 5.1875rem;
}
@media (width <= 768px) {
  .p-guide__supportImg:nth-of-type(2) {
    margin-top: 2.5rem;
  }
}
.p-guide__supportImg:nth-of-type(3) {
  margin-top: 2.5rem;
}
@media (width <= 768px) {
  .p-guide__supportImg:nth-of-type(3) {
    margin-top: 1.25rem;
  }
}
.p-guide__supportP {
  margin-bottom: 2em;
}
@media (width <= 768px) {
  .p-guide__supportP {
    font-size: 0.875rem;
    letter-spacing: 0.04em;
  }
}
.p-guide__experience.c-section {
  padding: 7.5rem 0 2.5rem;
}
@media (width <= 768px) {
  .p-guide__experience.c-section {
    padding: 2.5rem 0 0rem;
  }
}
.p-guide__experience .c-inner {
  display: flex;
  gap: 5.625rem;
}
@media (width <= 768px) {
  .p-guide__experience .c-inner {
    flex-direction: column;
    gap: 1.875rem;
  }
}
.p-guide__experience .c-block {
  margin-bottom: 5rem;
}
@media (width <= 768px) {
  .p-guide__experience .c-block {
    margin-bottom: 1.875rem;
  }
}
.p-guide__experience .c-block--reverse .c-block__text {
  padding-right: 5rem;
}
@media (width <= 768px) {
  .p-guide__experience .c-block--reverse .c-block__text {
    padding-right: 0;
  }
}
.p-guide__experience .c-block__title {
  font-size: 1.75rem;
  margin-bottom: 1.875rem !important;
  line-height: 2.8rem;
  margin-bottom: 0.625rem;
}
@media (width <= 768px) {
  .p-guide__experience .c-block__title {
    font-size: 1.5rem;
    text-align: left;
    margin-bottom: 0 !important;
  }
}
.p-guide__experience .c-block__text {
  padding: 0 0 0 3.75rem;
}
@media (width <= 768px) {
  .p-guide__experience .c-block__text {
    padding-left: 0;
  }
}
.p-guide__experience .c-block__thumb {
  height: 25.1875rem;
}
@media (width <= 768px) {
  .p-guide__experience .c-block__thumb {
    height: 14.0625rem;
    margin-left: 0;
    margin-right: 0;
    width: 100%;
  }
}
.p-guide__experience .c-block__p {
  letter-spacing: 0.04em;
}
.p-guide__experienceTitle {
  writing-mode: vertical-rl;
  text-orientation: upright;
  font-size: 2.25rem;
  letter-spacing: 0.24em;
}
@media (width <= 768px) {
  .p-guide__experienceTitle {
    writing-mode: horizontal-tb;
    text-orientation: initial;
    font-size: 1.75rem;
    letter-spacing: 0.08em;
  }
}
.p-guide__bottom {
  text-align: center;
}
.p-guide__bottom.c-section {
  padding-top: 7.5rem;
}
@media (width <= 768px) {
  .p-guide__bottom.c-section {
    padding: 3.75rem 0 5rem;
  }
}
.p-guide__bottomP {
  margin-bottom: 2em;
  letter-spacing: 0.04em;
}
@media (width <= 768px) {
  .p-guide__bottomP {
    font-size: 0.875rem;
  }
}
.p-guide__bottomCatch {
  font-size: 1.3125rem;
  margin: 3.125rem 0 5rem;
}
@media (width <= 768px) {
  .p-guide__bottomCatch {
    font-size: 1.0625rem;
    margin: 1.875rem 0 5rem;
    letter-spacing: 0.02em;
  }
}
.p-guide__bottomWrapper {
  background: rgba(167, 143, 69, 0.08);
  border: 1px solid #a78f45;
  max-width: 52.5rem;
  margin: 0 auto;
  padding: 4.375rem 0;
  border-radius: 0.3125rem;
}
@media (width <= 768px) {
  .p-guide__bottomWrapper {
    padding: 1.875rem 1.25rem;
  }
}
.p-guide__bottomTitle {
  font-size: 1.5rem;
  line-height: 2.625rem;
  margin-bottom: 1.25rem;
}
@media (width <= 768px) {
  .p-guide__bottomTitle {
    font-size: 1rem;
    letter-spacing: 0.04em;
    margin-bottom: 0;
  }
}
.p-guide__bottomInner {
  display: flex;
  justify-content: center;
  margin: 0 auto;
  gap: 3.75rem;
}
@media (width <= 768px) {
  .p-guide__bottomInner {
    flex-direction: column;
    gap: 0rem;
  }
}
.p-guide__bottomInnerHeader {
  font-size: 1.125rem;
  line-height: 1.6875rem;
}
@media (width <= 768px) {
  .p-guide__bottomInnerHeader {
    font-size: 1rem;
  }
}
.p-guide__bottomInnerHeader .u-text--small {
  font-size: 0.875rem;
}
@media (width <= 768px) {
  .p-guide__bottomInnerHeader .u-text--small {
    font-size: 0.8125rem;
  }
}
.p-guide__bottomInnerTel {
  font-size: 2.5rem;
  letter-spacing: -0.03em;
}
@media (width <= 768px) {
  .p-guide__bottomInnerTel {
    font-size: 2rem;
  }
}
.p-guide__bottomInnerTel .u-text--small {
  font-size: 1.125rem;
}
@media (width <= 768px) {
  .p-guide__bottomInnerTel .u-text--small {
    font-size: 1rem;
  }
}

.p-bestrate .c-header__head {
  width: 40%;
}
@media (width <= 768px) {
  .p-bestrate .c-header__head {
    width: 100%;
  }
}
.p-bestrate .c-header__text {
  width: 60%;
}
@media (width <= 768px) {
  .p-bestrate .c-header__text {
    width: 100%;
  }
}

@media (width <= 768px) {
  .p-wedding__btn {
    width: 10.4375rem;
    padding: 0.75rem 0.75rem 0.75rem 1.25rem;
  }
}
.p-wedding__mv {
  height: 100vh;
  width: 100%;
  position: relative;
  display: flex;
  align-items: center;
  margin-bottom: 7.5rem;
  max-height: 67.5rem;
}
@media (width <= 768px) {
  .p-wedding__mv {
    justify-content: center;
    align-items: end;
    margin-bottom: 5.3125rem;
  }
}
.p-wedding__mv:after {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.25);
}
.p-wedding__mv-bg {
  width: 100%;
  position: absolute;
  height: 100%;
}
.p-wedding__mv-inner {
  width: 50%;
  position: relative;
  z-index: 1;
  color: #fff;
  font-weight: 500;
  text-align: center;
  width: 20.625rem;
  text-align: center;
  left: calc(50% + 6.25rem);
}
@media (width <= 768px) {
  .p-wedding__mv-inner {
    left: inherit;
    margin-left: 0;
    padding-bottom: 12.5rem;
  }
}
.p-wedding__mv-span {
  display: block;
  font-size: 1.125rem;
  letter-spacing: 0.04em;
  line-height: 1.35;
  font-weight: 500;
  line-height: 1;
}
@media (width <= 768px) {
  .p-wedding__mv-span {
    font-size: 1rem;
    line-height: 1.35;
  }
}
.p-wedding__mv-title {
  font-size: 4.25rem;
  font-weight: 400;
  line-height: 1.3;
  margin-bottom: 2.5rem;
}
@media (width <= 768px) {
  .p-wedding__mv-title {
    font-size: 4rem;
  }
}
.p-wedding__mv-p {
  font-size: 1.3125rem;
}
@media (width <= 768px) {
  .p-wedding__mv-p {
    font-size: 1.125rem;
  }
}
.p-wedding__concept {
  position: relative;
  padding-left: 10rem;
  height: 47.5rem;
  margin-bottom: 7.5rem;
}
@media (width <= 768px) {
  .p-wedding__concept {
    padding-left: 0;
    height: 32.1875rem;
    margin-bottom: 4rem;
  }
}
@media (width <= 768px) {
  .p-wedding__concept .c-inner {
    padding: 0;
  }
}
.p-wedding__concept-bg {
  position: absolute;
  width: 95rem;
  top: 0;
  right: 0;
}
@media (width <= 768px) {
  .p-wedding__concept-bg {
    position: static;
    width: 100vw;
    left: 50%;
  }
}
.p-wedding__concept .c-wedding-block__sub-title {
  position: absolute;
  left: 0;
  right: inherit;
  writing-mode: vertical-rl;
  text-align: left;
}
.p-wedding__concept-text {
  background-color: #fff;
  position: absolute;
  left: 10rem;
  bottom: 0;
  width: 42.375rem;
  height: 30.625rem;
  padding: 5rem;
  z-index: 2;
}
@media (width <= 768px) {
  .p-wedding__concept-text {
    padding: 1.75rem;
    height: auto;
    left: 0;
    bottom: 0;
    width: calc(100% - 1.25rem);
  }
}
.p-wedding__facility {
  margin-bottom: 6.5rem;
}
@media (width <= 768px) {
  .p-wedding__facility {
    margin-bottom: 3.4375rem;
  }
}
.p-wedding__cuisine {
  margin-bottom: 6.5rem;
}
@media (width <= 768px) {
  .p-wedding__cuisine {
    margin-bottom: 3.4375rem;
  }
}
.p-wedding__all-plan {
  margin-bottom: 6.5rem;
}
@media (width <= 768px) {
  .p-wedding__all-plan {
    margin-bottom: 3.4375rem;
  }
}
.p-wedding__fair {
  margin-bottom: 6.5rem;
}
@media (width <= 768px) {
  .p-wedding__fair {
    margin-bottom: 3.4375rem;
  }
}
.p-wedding__staff {
  margin-bottom: 11.5625rem;
}
@media (width <= 768px) {
  .p-wedding__staff {
    margin-bottom: 6.875rem;
  }
}

.p-wedding-concept__top {
  text-align: center;
  padding: 8.125rem 0 3.75rem;
  background: linear-gradient(to bottom, transparent 0, transparent 50%, rgba(167, 143, 69, 0.06) 50%, rgba(167, 143, 69, 0.06) 100%);
}
@media (width <= 768px) {
  .p-wedding-concept__top {
    padding: 3.4375rem 0 0rem;
    background: none;
  }
}
.p-wedding-concept__top-title {
  font-size: 2.625rem;
  line-height: 1.8571428571;
  margin-bottom: 2.875rem;
}
@media (width <= 768px) {
  .p-wedding-concept__top-title {
    font-size: 1.75rem;
    line-height: 1.6;
    margin-bottom: 1.25rem;
  }
}
.p-wedding-concept__top-p {
  letter-spacing: 0.072em;
  margin-bottom: 5rem;
}
@media (width <= 768px) {
  .p-wedding-concept__top-p {
    font-size: 0.9375rem;
    text-align: left;
    margin-bottom: 2.8125rem;
  }
}
@media (width <= 768px) {
  .p-wedding-concept__top-thumb {
    width: 100vw;
    margin-left: -1.75rem;
  }
}
.p-wedding-concept .c-title--eng04 {
  font-size: 1.625rem;
}
@media (width <= 768px) {
  .p-wedding-concept .c-title--eng04 {
    font-size: 0.875rem;
  }
}
.p-wedding-concept .c-title {
  font-size: 2.25rem;
  line-height: 1.6;
}
@media (width <= 768px) {
  .p-wedding-concept .c-title {
    font-size: 1.25rem;
    line-height: 1.6;
    margin-bottom: 0.625rem;
  }
}
@media (width <= 768px) {
  .p-wedding-concept .c-new-block {
    flex-direction: column-reverse;
  }
}
.p-wedding-concept .c-new-block__p {
  line-height: 2.25;
}
@media (width <= 768px) {
  .p-wedding-concept .c-new-block__p {
    font-size: 0.875rem;
    line-height: 2.1428571429;
    letter-spacing: 0.02em;
  }
}
.p-wedding-concept__location {
  padding: 3.75rem 0;
}
@media (width <= 768px) {
  .p-wedding-concept__location {
    padding: 3.75rem 0 0;
  }
}
.p-wedding-concept__location-title--01 {
  letter-spacing: 0.04em;
}
.p-wedding-concept__venue {
  padding: 3.75rem 0;
}
@media (width <= 768px) {
  .p-wedding-concept__venue {
    padding: 3.75rem 0 0;
  }
}
.p-wedding-concept__cuisine {
  padding: 3.75rem 0 10rem;
  margin-bottom: 10rem;
}
@media (width <= 768px) {
  .p-wedding-concept__cuisine {
    padding-bottom: 5.3125rem;
    margin-bottom: 5rem;
  }
}
.p-wedding-concept__bottom {
  text-align: center;
  margin-bottom: 8.75rem;
}
@media (width <= 768px) {
  .p-wedding-concept__bottom {
    margin-bottom: 5.9375rem;
  }
}
.p-wedding-concept__bottom-thumb {
  margin-bottom: 5.625rem;
  display: block;
  padding-right: 2.5rem;
}
@media (width <= 768px) {
  .p-wedding-concept__bottom-thumb {
    padding-right: 0;
    margin-left: -1.25rem;
    margin-right: -1.25rem;
    width: calc(100% + 2.5rem);
    margin-bottom: 3.125rem;
  }
}
.p-wedding-concept__bottom-title {
  font-size: 1.75rem;
  margin-bottom: 1.875rem;
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 1.25rem;
}
@media (width <= 768px) {
  .p-wedding-concept__bottom-title {
    font-size: 1.25rem;
    margin-bottom: 0.9375rem;
  }
}
.p-wedding-concept__bottom-title:after {
  display: block;
  content: "";
  width: 1px;
  height: 1.75rem;
  background-color: #241d14;
}
.p-wedding-concept__bottom-p {
  font-size: 1rem;
  line-height: 2.8;
}
@media (width <= 768px) {
  .p-wedding-concept__bottom-p {
    font-size: 0.875rem;
    line-height: 2.8;
  }
}

.p-facility .c-title {
  font-size: 2.5rem;
}
@media (width <= 768px) {
  .p-facility .c-title {
    font-size: 1.75rem;
  }
}
.p-facility__reception {
  margin: 7.5rem 0 0;
  padding-bottom: 10rem;
}
@media (width <= 768px) {
  .p-facility__reception {
    margin: 3.75rem 0 0;
    text-align: center;
    padding-bottom: 4.375rem;
  }
}
@media (width <= 768px) {
  .p-facility__reception .c-title--eng05 {
    order: 1;
    width: 100%;
  }
}
@media (width <= 768px) {
  .p-facility__reception .c-title {
    order: 2;
    margin-bottom: 1.875rem;
  }
}
.p-facility__reception .c-new-block {
  margin-bottom: 5rem;
}
@media (width <= 768px) {
  .p-facility__reception .c-new-block {
    justify-content: center;
    gap: 0;
    margin-bottom: 2.5rem;
  }
}
.p-facility__reception .c-new-block__text {
  transform: translateY(-1.875rem);
}
@media (width <= 768px) {
  .p-facility__reception .c-new-block__text {
    display: contents;
  }
}
.p-facility__reception .c-new-block__p {
  font-size: 1.125rem;
}
@media (width <= 768px) {
  .p-facility__reception .c-new-block__p {
    font-size: 0.875rem;
    text-align: left;
    order: 4;
    letter-spacing: 0.02em;
  }
}
@media (width <= 768px) {
  .p-facility__reception .c-new-block__thumb {
    order: 3;
    margin-bottom: 1.875rem;
  }
}
.p-facility__ceremony {
  padding: 10rem 0;
  text-align: center;
}
@media (width <= 768px) {
  .p-facility__ceremony {
    padding: 5rem 0;
  }
}
.p-facility__ceremony .c-title--eng05 {
  margin-bottom: 1.25rem;
}
@media (width <= 768px) {
  .p-facility__ceremony .c-title--eng05 {
    margin-bottom: 0rem;
  }
}
.p-facility__ceremony .c-title {
  margin-bottom: 1.25rem;
}
.p-facility__ceremony-title {
  font-size: 2.5rem;
  margin-bottom: 0.625rem;
}
@media (width <= 768px) {
  .p-facility__ceremony-title {
    font-size: 1.75rem;
  }
}
.p-facility__ceremony-p {
  font-size: 1.125rem;
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 5rem;
  margin-bottom: 7.5rem;
}
@media (width <= 768px) {
  .p-facility__ceremony-p {
    font-size: 0.875rem;
    text-align: left;
    letter-spacing: 0.02em;
    gap: 2.5rem;
    margin-bottom: 2.5rem;
  }
}
.p-facility__ceremony-p:after {
  content: "";
  width: 2.5rem;
  height: 1px;
  background-color: #241d14;
}
.p-facility__ceremony .c-new-block {
  gap: 5rem;
  margin-bottom: 5rem;
}
@media (width <= 768px) {
  .p-facility__ceremony .c-new-block {
    gap: 1.25rem;
    margin-bottom: 2.5rem;
  }
}
.p-facility__ceremony .c-title {
  text-align: left;
  font-size: 2rem;
}
@media (width <= 768px) {
  .p-facility__ceremony .c-title {
    font-size: 1.3125rem;
    margin-bottom: 0.3125rem;
  }
}
.p-facility__ceremony .c-title span {
  color: #a78f45;
  margin-right: 0.625rem;
}
.p-facility__ceremony .c-new-block__text {
  padding-left: 0;
  text-align: left;
}
@media (width <= 768px) {
  .p-facility__ceremony .c-new-block__text {
    order: 2;
  }
}
@media (width <= 768px) {
  .p-facility__ceremony .c-new-block__p {
    font-size: 0.875rem;
    letter-spacing: 0.02em;
  }
}
@media (width <= 768px) {
  .p-facility__ceremony .c-new-block__thumb {
    order: 1;
  }
}
.p-facility__ceremony .c-place-slider {
  margin-bottom: 7.5rem;
}
@media (width <= 768px) {
  .p-facility__ceremony .c-place-slider {
    margin-bottom: 5rem;
  }
}
.p-facility__ceremony .c-place-slider:last-of-type {
  margin-bottom: 0;
}
.p-facility__interior {
  padding: 10.625rem 0 10rem;
}
@media (width <= 768px) {
  .p-facility__interior {
    padding: 5rem 0 5rem;
    text-align: center;
  }
}
.p-facility__interior .c-new-block {
  margin-bottom: 5rem;
}
@media (width <= 768px) {
  .p-facility__interior .c-new-block {
    gap: 0;
    justify-content: center;
    margin-bottom: 2.5rem;
  }
}
@media (width <= 768px) {
  .p-facility__interior .c-title--eng05 {
    order: 1;
    width: 100%;
  }
}
@media (width <= 768px) {
  .p-facility__interior .c-title {
    order: 2;
    margin-bottom: 1.875rem;
  }
}
@media (width <= 768px) {
  .p-facility__interior .c-new-block__text {
    display: contents;
  }
}
@media (width <= 768px) {
  .p-facility__interior .c-new-block__thumb {
    order: 3;
    margin-bottom: 1.875rem;
  }
}
@media (width <= 768px) {
  .p-facility__interior .c-new-block__p {
    order: 4;
    text-align: left;
    font-size: 0.875rem;
    letter-spacing: 0.02em;
  }
}
.p-facility__wedding {
  padding: 10rem 0 11.875rem;
}
@media (width <= 768px) {
  .p-facility__wedding {
    padding: 5rem 0 3.75rem;
    text-align: center;
  }
}
@media (width <= 768px) {
  .p-facility__wedding .c-new-block {
    gap: 0;
    justify-content: center;
    margin-bottom: 2.5rem;
  }
}
@media (width <= 768px) {
  .p-facility__wedding .c-title--eng05 {
    order: 1;
    width: 100%;
  }
}
@media (width <= 768px) {
  .p-facility__wedding .c-title {
    order: 2;
    margin-bottom: 1.875rem;
  }
}
@media (width <= 768px) {
  .p-facility__wedding .c-new-block__text {
    display: contents;
  }
}
@media (width <= 768px) {
  .p-facility__wedding .c-new-block__thumb {
    order: 3;
    margin-bottom: 1.875rem;
  }
}
.p-facility__wedding .c-new-block__p {
  font-size: 1.125rem;
}
@media (width <= 768px) {
  .p-facility__wedding .c-new-block__p {
    order: 4;
    text-align: left;
    font-size: 0.875rem;
    letter-spacing: 0.02em;
  }
}
.p-facility__wedding .c-btn {
  width: 12.5rem;
  min-width: inherit;
}
@media (width <= 768px) {
  .p-facility__wedding .c-btn {
    order: 5;
    width: 10.4375rem;
    padding: 0.75rem 0.75rem 0.75rem 1.25rem;
    margin-top: 1.875rem !important;
    position: relative;
    left: -5rem;
  }
}

.p-cuisine .c-title {
  font-size: 2.5rem;
  line-height: 1.44;
}
@media (width <= 768px) {
  .p-cuisine .c-title {
    font-size: 1.75rem;
    line-height: 1.35;
    text-align: center;
  }
}
.p-cuisine .c-title--eng05 {
  margin-bottom: 0rem;
}
@media (width <= 768px) {
  .p-cuisine .c-title--eng05 {
    margin-bottom: 0.625rem;
  }
}
.p-cuisine__concept {
  padding: 7.5rem 0 10rem;
}
@media (width <= 768px) {
  .p-cuisine__concept {
    padding: 3.75rem 0 5rem;
    text-align: center;
  }
}
.p-cuisine__concept .c-title {
  margin-bottom: 3.125rem;
}
@media (width <= 768px) {
  .p-cuisine__concept .c-title {
    margin-bottom: 1.5625rem;
  }
}
.p-cuisine__concept .c-new-block__p {
  font-size: 1.125rem;
}
@media (width <= 768px) {
  .p-cuisine__concept .c-new-block__p {
    font-size: 0.875rem;
    text-align: left;
    letter-spacing: 0.02em;
  }
}
.p-cuisine__value {
  padding: 10rem 0;
  text-align: center;
}
@media (width <= 768px) {
  .p-cuisine__value {
    padding: 5rem 0 5rem;
  }
}
.p-cuisine__value .c-title--eng05 {
  margin-bottom: 1.875rem;
}
@media (width <= 768px) {
  .p-cuisine__value .c-title--eng05 {
    margin-bottom: 0.625rem;
  }
}
.p-cuisine__value .c-title {
  margin-bottom: 5rem;
}
@media (width <= 768px) {
  .p-cuisine__value .c-title {
    margin-bottom: 2.8125rem;
  }
}
.p-cuisine__value-list {
  display: flex;
  flex-wrap: wrap;
  gap: 5rem;
  text-align: left;
}
@media (width <= 768px) {
  .p-cuisine__value-list {
    gap: 3.125rem;
  }
}
.p-cuisine__value-item {
  width: 40rem;
}
.p-cuisine__value-thumb {
  margin-bottom: 1.25rem;
}
.p-cuisine__value-title {
  font-size: 2rem;
  margin-bottom: 0.9375rem;
}
@media (width <= 768px) {
  .p-cuisine__value-title {
    font-size: 1.3125rem;
    margin-bottom: 0rem;
  }
}
.p-cuisine__value-title span {
  color: #a78f45;
  margin-right: 0.625rem;
}
@media (width <= 768px) {
  .p-cuisine__value-p {
    font-size: 0.875rem;
    letter-spacing: 0.02em;
  }
}
.p-cuisine__chef {
  padding: 10rem 0;
}
@media (width <= 768px) {
  .p-cuisine__chef {
    padding: 5rem 0 5rem;
    text-align: center;
  }
}
@media (width <= 768px) {
  .p-cuisine__chef .c-title {
    letter-spacing: 0.04em;
    margin-left: -0.5rem;
    width: calc(100% + 1rem);
  }
}
.p-cuisine__chef .c-new-block__p {
  font-size: 1.125rem;
}
@media (width <= 768px) {
  .p-cuisine__chef .c-new-block__p {
    font-size: 0.875rem;
    letter-spacing: 0.02em;
    text-align: left;
  }
}
.p-cuisine__order {
  padding: 10rem 0 11.5rem;
}
@media (width <= 768px) {
  .p-cuisine__order {
    text-align: center;
    padding: 5rem 0 6.875rem;
  }
}
.p-cuisine__order .c-new-block__p {
  text-align: left;
  font-size: 1.125rem;
}
@media (width <= 768px) {
  .p-cuisine__order .c-new-block__p {
    letter-spacing: 0.02em;
    font-size: 0.875rem;
  }
}
.p-cuisine__order .c-place-slider {
  margin: 5rem 0 7.5rem;
}
@media (width <= 768px) {
  .p-cuisine__order .c-place-slider {
    margin: 2.5rem 0 3.75rem;
  }
}
.p-cuisine__bnr {
  display: block;
  width: 65rem;
  margin: 0 auto;
}
@media (width <= 768px) {
  .p-cuisine__bnr {
    width: 23.125rem;
  }
}

.p-staff__nav {
  padding: 7.5rem 0 10rem;
}
@media (width <= 768px) {
  .p-staff__nav {
    padding: 2.5rem 0;
  }
}
@media (width <= 768px) {
  .p-staff__nav .c-inner {
    padding: 0 0.625rem;
  }
}
.p-staff__nav-list {
  display: flex;
  flex-wrap: wrap;
  gap: 2.5rem;
}
@media (width <= 768px) {
  .p-staff__nav-list {
    gap: 0.625rem;
  }
}
.p-staff__nav-item {
  width: 41.25rem;
  height: 23.8475rem;
  position: relative;
}
@media (width <= 768px) {
  .p-staff__nav-item {
    width: 11.25rem;
    height: 11.25rem;
  }
}
.p-staff__nav-item:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
}
.p-staff__nav-item:hover .p-staff__nav-thumb {
  opacity: 0.8;
}
.p-staff__nav-link {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  position: relative;
  z-index: 1;
  color: #fff;
  width: 100%;
  height: 100%;
  text-align: center;
}
.p-staff__nav-link span {
  display: block;
}
.p-staff__nav-thumb {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  transition: 0.3s;
}
.p-staff__nav-text {
  font-size: 2rem;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media (width <= 768px) {
  .p-staff__nav-text {
    font-size: 1.3125rem;
    line-height: 1.3476190476;
  }
}
.p-staff__nav-text span {
  font-size: 1.125rem;
  font-family: "Cormorant", serif;
  letter-spacing: 0.04em;
}
@media (width <= 768px) {
  .p-staff__nav-text span {
    font-size: 0.8125rem;
  }
}
.p-staff__nav-text:after {
  content: "";
  width: 0.9375rem;
  height: 0.6875rem;
  background-color: #fff;
  clip-path: polygon(0 0, 50% 0.25rem, 100% 0, 50% 100%);
  display: block;
  transform: translateY(1.25rem);
}
.p-staff__section {
  padding: 10rem 0 5rem;
}
@media (width <= 768px) {
  .p-staff__section {
    padding: 5rem 0 2.5rem;
  }
}
.p-staff__section .c-title {
  font-size: 2.5rem;
  line-height: 1.44;
}
@media (width <= 768px) {
  .p-staff__section .c-title {
    font-size: 1.75rem;
    line-height: 1.35;
    margin-bottom: 1.875rem;
  }
}
.p-staff__section .c-title span {
  letter-spacing: -0.6em;
}
.p-staff__section .c-new-block {
  margin-left: 10rem;
  border-bottom: 1px solid #cbc5b5;
  padding: 6.5rem 0;
  gap: 3.75rem;
}
@media (width <= 768px) {
  .p-staff__section .c-new-block {
    margin-left: 0;
    gap: 2.5rem;
    padding: 3.75rem 0;
  }
}
.p-staff__section .c-new-block:first-of-type {
  padding-top: 0rem;
}
.p-staff__section .c-new-block:last-of-type {
  border-bottom: none;
}
.p-staff__section .c-new-block__thumb {
  width: 52.5rem;
}
.p-staff__section .c-new-block__text {
  padding: 0 0.625rem 0 0;
  width: calc(100% - 56.3125rem);
}
@media (width <= 768px) {
  .p-staff__section .c-new-block__text {
    width: 100%;
    text-align: center;
    padding: 0;
  }
}
.p-staff__section .c-new-block__p {
  font-size: 1.125rem;
}
@media (width <= 768px) {
  .p-staff__section .c-new-block__p {
    font-size: 0.875rem;
    text-align: left;
    letter-spacing: 0.02em;
  }
}
@media (width <= 768px) {
  .p-staff__section-title--01 {
    letter-spacing: 0.02em;
  }
}

@media (width <= 768px) {
  .p-news .has-side__content.c-section {
    padding-bottom: 6.25rem;
  }
}

/* Utilities */
.u-text--default {
  font-family: "Zen Old Mincho", serif;
}
.u-text--cormorant {
  font-family: "Cormorant", serif;
}
.u-text--center {
  text-align: center;
}
.u-text--left {
  text-align: left;
}
.u-text--right {
  text-align: right;
}
.u-text--thin {
  font-weight: 100;
}
.u-text--extra-light {
  font-weight: 200;
}
.u-text--light {
  font-weight: 300;
}
.u-text--regular {
  font-weight: 400;
}
.u-text--medium {
  font-weight: 500;
}
.u-text--semi-bold {
  font-weight: 600;
}
.u-text--bold {
  font-weight: 700;
}
.u-text--extra-bold {
  font-weight: 800;
}
.u-text--black {
  font-weight: 900;
}
.u-text--big {
  font-size: 1.4em;
}
.u-text--regular {
  font-size: 1em;
}
.u-text--small {
  font-size: 0.8em;
}

.u-pc {
  display: block;
}
@media (width <= 768px) {
  .u-pc {
    display: none;
  }
}
.u-pc--inline {
  display: inline;
}
@media (width <= 768px) {
  .u-pc--inline {
    display: none;
  }
}
.u-pc--iblock {
  display: inline-block;
}
@media (width <= 768px) {
  .u-pc--iblock {
    display: none;
  }
}
.u-pc--flex {
  display: flex;
}
@media (width <= 768px) {
  .u-pc--flex {
    display: none;
  }
}
.u-pc--table {
  display: table;
}
@media (width <= 768px) {
  .u-pc--table {
    display: none;
  }
}

.u-sp {
  display: none;
}
@media (width <= 768px) {
  .u-sp {
    display: block;
  }
}
.u-sp--inline {
  display: none;
}
@media (width <= 768px) {
  .u-sp--inline {
    display: inline;
  }
}
.u-sp--iblock {
  display: none;
}
@media (width <= 768px) {
  .u-sp--iblock {
    display: inline-block;
  }
}
.u-sp--flex {
  display: none;
}
@media (width <= 768px) {
  .u-sp--flex {
    display: flex;
  }
}
.u-sp--table {
  display: none;
}
@media (width <= 768px) {
  .u-sp--table {
    display: table;
  }
}

.u-ofit img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.u-pos--absolute {
  position: absolute;
}
.u-pos--fixed {
  position: fixed;
}
.u-pos--relative {
  position: relative;
}

.u-ellipsis {
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
}
.u-ellipsis--2 {
  -webkit-line-clamp: 2;
  line-clamp: 2;
}
.u-ellipsis--3 {
  -webkit-line-clamp: 3;
  line-clamp: 3;
}
.u-ellipsis--4 {
  -webkit-line-clamp: 4;
  line-clamp: 4;
}
.u-ellipsis--5 {
  -webkit-line-clamp: 5;
  line-clamp: 5;
}

.u-color__yellow {
  color: yellow;
}

.u-fade-in {
  opacity: 0;
  transform: translateY(1.875rem);
  transition: 0.8s;
}
@media (width <= 768px) {
  .u-fade-in {
    transform: translateY(1.875rem);
  }
}
.u-fade-in.is-visible {
  opacity: 1;
  transform: translateY(0);
}