@charset "UTF-8";
/* color
***************************************************************/
/* font
***************************************************************/
/********************************

Page：common.scss

********************************/
html {
  scroll-behavior: smooth;
  scroll-padding: 140px;
}
@media (width < 893px) {
  html {
    scroll-padding: 80px;
  }
}

body {
  font-family: "Zen Old Mincho", serif;
  color: #3D372C;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

a {
  text-decoration: none;
  color: #3D372C;
}
a:visited {
  text-decoration: none;
}
a:active {
  text-decoration: none;
}

li {
  list-style: none;
}

img {
  width: 100%;
  max-width: 100%;
  vertical-align: bottom;
  -o-object-fit: cover;
     object-fit: cover;
}

.sm-block {
  display: none;
}
@media (width < 576px) {
  .sm-block {
    display: block;
  }
}

.xmd-block {
  display: none;
}
@media (width < ) {
  .xmd-block {
    display: block;
  }
}

.md-block {
  display: none;
}
@media (width < 893px) {
  .md-block {
    display: block;
  }
}

.lg-block {
  display: none;
}
@media (width < 1261px) {
  .lg-block {
    display: block;
  }
}

.sm-none {
  display: block;
}
@media (width < 576px) {
  .sm-none {
    display: none;
  }
}

.xmd-none {
  display: block;
}
@media (width < ) {
  .xmd-none {
    display: none;
  }
}

.md-none {
  display: block;
}
@media (width < 893px) {
  .md-none {
    display: none;
  }
}

.lg-none {
  display: block;
}
@media (width < 1261px) {
  .lg-none {
    display: none;
  }
}

.keep-all {
  word-break: keep-all;
}

.highlight {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(80%, #FFF367), to(transparent));
  background-image: linear-gradient(transparent 60%, #FFF367 80%, transparent 100%);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}

.white-space-nowrap {
  white-space: nowrap;
}

/*************************************

Component：parts.scss

***************************************/
/*

Component: c-inner

***************************************/
.c-inner {
  max-width: 75rem;
  margin: 0 auto;
}
@media (width < 1261px) {
  .c-inner {
    max-width: 86.214953271vw;
  }
}

.c-inner-s {
  max-width: 62.5rem;
  margin: 0 auto;
}
@media (width < 1261px) {
  .c-inner-s {
    max-width: 86.214953271vw;
  }
}

.c-inner-l {
  max-width: 86.25rem;
  margin: 0 auto;
}
@media (width < 1261px) {
  .c-inner-l {
    max-width: 86.214953271vw;
  }
}

/*

Component: c-kunoji

***************************************/
.c-kunoji {
  position: relative;
  padding-left: 0.4375rem;
}
.c-kunoji::before, .c-kunoji::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 0.375rem;
  height: 1px;
  background-color: #9D894A;
  -webkit-transform-origin: calc(100% - 0.5px) 50%;
          transform-origin: calc(100% - 0.5px) 50%;
  z-index: 1;
}
.c-kunoji::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.c-kunoji::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

/*

Component: c-section-title

***************************************/
.c-section-title {
  color: #9D894A;
  font-family: "Forum", serif;
  font-size: 1.625rem;
  font-weight: 400;
  line-height: 1.0769230769;
  position: relative;
}
.c-section-title::before {
  content: "";
  position: absolute;
  top: 2rem;
  left: 0;
  width: 1.875rem;
  height: 1px;
  background: #9D894A;
}
.c-section-title--center {
  text-align: center;
}
.c-section-title--center::before {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.c-section-title--black {
  color: #3D372C;
}
.c-section-title--black .c-section-title__sub {
  color: #3D372C;
}
.c-section-title--black::before {
  background-color: #3D372C;
}
.c-section-title__sub {
  display: block;
  color: #3D372C;
  font-family: "Zen Old Mincho", serif;
  font-weight: 400;
  letter-spacing: 0.1em;
  line-height: 1.4230769231;
  margin-top: 1.25rem;
}

/*

Component: c-bg-title

***************************************/
.c-bg-title {
  background-color: #9D894A;
  color: #fff;
  text-align: center;
  font-weight: bold;
  padding: 0.8125rem 0.5rem;
  font-size: 1.375rem;
  line-height: 1.4545454545;
  letter-spacing: 0.02em;
}

/*

Component: c-tag

***************************************/
.c-tag {
  color: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.875rem;
  letter-spacing: 0.02em;
  line-height: 1.4285714286;
  background-color: #B78681;
  padding: 0.25rem 0.9375rem;
}

/*

Component: c-arrow

***************************************/
.c-arrow {
  position: relative;
  display: inline-block;
  width: 1.318125rem;
  height: 1px;
  border-radius: 9999px;
  background-color: #3D372C;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media (width < 893px) {
  .c-arrow {
    width: 0.8125rem;
  }
}
.c-arrow::before, .c-arrow::after {
  content: "";
  position: absolute;
  top: calc(50% - 0.5px);
  right: -1px;
  width: 3px;
  height: 1px;
  border-radius: 9999px;
  background-color: inherit;
  -webkit-transform-origin: calc(100% - 0.5px) 50%;
          transform-origin: calc(100% - 0.5px) 50%;
}
@media (width < 893px) {
  .c-arrow::before, .c-arrow::after {
    width: 0.1875rem;
  }
}
.c-arrow::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.c-arrow::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

/*

Component: c-arrow-bottom

***************************************/
.c-arrow-bottom {
  display: block;
  width: 0.375rem;
  height: 0.375rem;
  border-left: 1px solid #9D894A;
  border-bottom: 1px solid #9D894A;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

/*

Component: c-btn-border

***************************************/
.c-btn-border {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  max-width: 17.5rem;
  padding: 1.1875rem 0.95rem 1.1875rem 1.875rem;
  border: 1px solid #3D372C;
  background-color: #fff;
  color: #3D372C;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.c-btn-border--opacity {
  background-color: rgba(255, 255, 255, 0);
}
.c-btn-border__text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  letter-spacing: 0.02em;
  line-height: 1.5;
}
@media (hover: hover) {
  .c-btn-border:hover {
    background-color: #3D372C;
    color: #fff;
  }
  .c-btn-border:hover .c-arrow {
    background-color: #fff;
  }
}
.c-btn-border:active {
  opacity: 0.7;
}

/*

Component: c-bg-radius

***************************************/
.c-bg-radius {
  background-color: #F7F4EA;
  border-radius: 300px 0 0 0;
}
@media (width < 893px) {
  .c-bg-radius {
    border-radius: 150px 0 0 0;
  }
}

/*

Component: c-visually-hidden

***************************************/
.c-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

/*************************************

Component：pagenavi.scss

***************************************/
.wp-pagenavi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.0625rem;
  margin-top: 8.125rem;
  padding-bottom: 9.375rem;
}
@media (width < 893px) {
  .wp-pagenavi {
    margin-top: 3.375rem;
  }
}
.wp-pagenavi a {
  border: none !important;
  color: #BAACAB !important;
  font-size: 0.875rem;
  letter-spacing: 0.02em;
  line-height: 1.4285714286;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  font-weight: 500;
  padding: 0 5px !important;
  margin: 0 !important;
}
.wp-pagenavi a:hover {
  opacity: 0.7;
}
.wp-pagenavi .current {
  color: #C27067;
  border: none;
  font-size: 0.875rem;
  line-height: 1.4285714286;
}
.wp-pagenavi .nextpostslink,
.wp-pagenavi .previouspostslink {
  position: relative;
  font-size: 0;
  width: 1rem;
  height: 1rem;
  border: none;
  background: none;
}
.wp-pagenavi .nextpostslink::before,
.wp-pagenavi .previouspostslink::before {
  content: "";
  position: absolute;
  top: 50%;
  width: 1rem;
  height: 0.125rem;
  background-color: #C27067;
}
.wp-pagenavi .nextpostslink::after,
.wp-pagenavi .previouspostslink::after {
  content: "";
  position: absolute;
  top: calc(50% - 4px);
  width: 0.5rem;
  height: 0.5rem;
  border-top: 2px solid #C27067;
  border-right: 2px solid #C27067;
}
.wp-pagenavi .nextpostslink {
  margin-left: 1.25rem !important;
}
.wp-pagenavi .nextpostslink::before {
  right: 0;
}
.wp-pagenavi .nextpostslink::after {
  top: calc(50% - 4px);
  right: 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.wp-pagenavi .nextpostslink:hover {
  -webkit-transform: translateX(0.25rem);
          transform: translateX(0.25rem);
}
.wp-pagenavi .previouspostslink {
  margin-right: 1.25rem !important;
}
.wp-pagenavi .previouspostslink::before {
  left: 0;
}
.wp-pagenavi .previouspostslink::after {
  top: calc(50% - 4px);
  left: 0;
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg);
}
.wp-pagenavi .previouspostslink:hover {
  -webkit-transform: translateX(-0.25rem);
          transform: translateX(-0.25rem);
}

/*************************************

Component：sub-common.scss

***************************************/
/*

sub-mv

***************************************/
.sub-mv {
  position: relative;
  padding-top: 7.5rem;
}
.sub-mv--voice {
  padding-top: 16.5rem;
}
.sub-mv__img-wrap {
  position: relative;
  max-width: 86.25rem;
  z-index: 1;
}
.sub-mv__img-wrap img {
  aspect-ratio: 1380/459;
}
.sub-mv__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
}
.sub-mv__content {
  position: absolute;
  top: 48%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  text-align: center;
  z-index: 1;
}
.sub-mv__content .c-section-title {
  color: #fff;
}
.sub-mv__content .c-section-title--black {
  color: #3D372C;
}
.sub-mv__content .c-section-title::before {
  background-color: #fff;
}
.sub-mv__content .c-section-title--black::before {
  background-color: #3D372C;
}
.sub-mv__content .c-section-title .c-section-title__sub {
  color: #fff;
  letter-spacing: 0.06em;
}
.sub-mv__content .c-section-title--black .c-section-title__sub {
  color: #3D372C;
}
.sub-mv__deco-img {
  position: relative;
  margin-top: -15.3125rem;
}
.sub-mv__deco-img--voice {
  margin-top: -25.3125rem;
}
@media (width < 893px) {
  .sub-mv__deco-img {
    margin-top: -10.5140186916vw;
  }
}

.breadcrumb {
  position: relative;
  z-index: 10;
  margin-top: -13.375rem;
}
.breadcrumb--voice {
  margin-top: -6.375rem;
}
.breadcrumb__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.3125rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.75rem;
}
.breadcrumb__list li {
  font-size: 0.875rem;
  line-height: 1.4285714286;
}
.breadcrumb__list li::after {
  content: "/";
  margin-left: 5px;
}
.breadcrumb__list li:last-child::after {
  display: none;
}
.breadcrumb__list li a {
  color: inherit;
}
.breadcrumb__list li a:hover {
  text-decoration: underline;
}

/*

sub-intro

***************************************/
.sub-intro {
  padding: 8.375rem 0 7.375rem;
  text-align: center;
}
.sub-intro__decor-wrapper {
  max-width: 3.125rem;
  margin: 0 auto;
}
.sub-intro__decor {
  aspect-ratio: 1/1;
}
.sub-intro__text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.0625rem;
  line-height: 2.1176470588;
  letter-spacing: 0.02em;
  margin-top: 1.75rem;
}
.sub-intro__text-sub {
  font-family: "Forum", serif;
  font-size: 0.8125rem;
  line-height: 1.7692307692;
  letter-spacing: 0.14em;
  margin-top: 1.875rem;
}

/*

sub-section-title

***************************************/
.sub-section-title {
  font-size: 1.625rem;
  font-weight: 500;
  line-height: 1.4230769231;
  letter-spacing: 0.1em;
  text-align: center;
  position: relative;
}
.sub-section-title::before {
  content: "";
  position: absolute;
  width: 1.875rem;
  height: 1px;
  background-color: #9D894A;
  top: 3.25rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.sub-section-title--center {
  text-align: center;
}
.sub-section-title--center::before {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

/*

Section : sub-menu-tabs

***************************************/
.sub-menu-tabs {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.3125rem;
  margin: 6.9375rem auto 0;
  max-width: 52.75rem;
  position: relative;
  z-index: 1;
}
.sub-menu-tabs--multi {
  grid-template-columns: repeat(4, 1fr);
  max-width: 70.5rem;
}
@media (width < 893px) {
  .sub-menu-tabs {
    grid-template-columns: repeat(2, 1fr);
  }
}
.sub-menu-tabs__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.4375rem;
  background-color: #6E6351;
  padding: 1.125rem 0.625rem 1.0625rem;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  height: 100%;
}
.sub-menu-tabs__link:hover {
  background-color: #9D894A;
}
.sub-menu-tabs__label {
  color: #fff;
  font-size: 0.875rem;
  line-height: 1.4285714286;
  letter-spacing: 0.02em;
  text-align: center;
}
.sub-menu-tabs__arrow {
  display: block;
  width: 0.375rem;
  height: 0.375rem;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

/*

sub-intro

***************************************/
.sub-about {
  padding: 9.375rem 0 10.25rem;
}
@media (width < 893px) {
  .sub-about {
    padding: 3.75rem 0;
  }
}
.sub-about__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3.125rem;
  margin-top: 6.625rem;
}
@media (width < 1261px) {
  .sub-about__container {
    gap: 2.5rem;
  }
}
@media (width < 893px) {
  .sub-about__container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.875rem;
    margin-top: 1.875rem;
  }
}
.sub-about__img-wrap {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
  max-width: 29.5rem;
}
@media (width < 893px) {
  .sub-about__img-wrap {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: 100%;
  }
}
.sub-about__img {
  aspect-ratio: 472/325;
}
.sub-about__content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.sub-about__lead {
  font-size: 1.375rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.4545454545;
}
@media (width < 893px) {
  .sub-about__lead {
    font-size: 1.125rem;
    margin-bottom: 0.9375rem;
  }
}
.sub-about__description {
  font-size: 1rem;
  letter-spacing: 0.02em;
  line-height: 1.875;
  margin-top: 2.625rem;
}
@media (width < 893px) {
  .sub-about__description {
    font-size: 0.875rem;
  }
}

/*

sub-menu

***************************************/
.sub-menu {
  padding: 7.5rem 0;
}
.sub-menu--epilation {
  padding-bottom: 4.6875rem;
}
.sub-menu--pilates {
  padding-bottom: 0;
}
.sub-menu__container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 4.875rem;
  margin-top: 11.1875rem;
}
.sub-menu__container--col3 {
  grid-template-columns: repeat(3, 1fr);
  gap: 3.75rem;
  margin-top: 6.125rem;
}
@media (width < 893px) {
  .sub-menu__container {
    grid-template-columns: 1fr;
  }
}
.sub-menu__card--col3 .sub-menu__head {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  gap: 1.25rem;
}
.sub-menu__card--col3 .sub-menu__desc {
  margin-top: 0.9375rem;
}
.sub-menu__card--col3 .sub-menu__info {
  grid-template-columns: 8.0625rem 1fr;
  margin-top: 1.75rem;
}
.sub-menu__card--col3 .sub-menu__info-value-wrapper {
  margin-top: 0.6875rem;
}
.sub-menu__card--col3 .sub-menu__info-time {
  margin-top: 0;
}
.sub-menu__card--col3 .sub-menu__info-item:nth-of-type(2) {
  padding-left: 2.125rem;
}
.sub-menu__card--col3 .sub-menu__head-img-wrap {
  max-width: 22.5rem;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.sub-menu__card--col3 .sub-menu__head-img {
  aspect-ratio: 360/238;
}
.sub-menu__card--col3 .sub-menu__price-unit {
  font-size: 0.75rem;
  line-height: 2.6666666667;
  letter-spacing: 0.045em;
}
.sub-menu__card--col3 .sub-menu__note {
  margin-top: 1.75rem;
}
.sub-menu__hero {
  background-color: #fff;
  padding: 0 1.5rem;
  max-width: 35rem;
}
.sub-menu__hero-img {
  aspect-ratio: 1/1;
}
.sub-menu__card--color-tanning .sub-menu__head {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
.sub-menu__card--color-tanning .sub-menu__head-img-wrap {
  max-width: 16.3125rem;
}
.sub-menu__card--color-tanning .sub-menu__head-img {
  aspect-ratio: 261/322;
}
.sub-menu__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.375rem;
}
.sub-menu__head-txt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.sub-menu__head-img-wrap {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 16.3125rem;
          flex: 0 0 16.3125rem;
}
.sub-menu__head-img {
  aspect-ratio: 261/213;
}
.sub-menu__name {
  font-size: 1.1875rem;
  font-weight: 600;
  line-height: 1.4210526316;
  letter-spacing: 0.02em;
}
.sub-menu__desc {
  font-size: 0.875rem;
  line-height: 1.8571428571;
  letter-spacing: 0.02em;
  margin-top: 1.0625rem;
}
.sub-menu__info {
  display: grid;
  grid-template-columns: 6.9375rem 1fr;
  margin-top: 2.625rem;
}
.sub-menu__info--header {
  margin-top: 4.6875rem;
}
.sub-menu__info-item:nth-of-type(2) {
  border-left: 1px solid #9D894A;
  padding-left: 1.8125rem;
}
.sub-menu__info-label {
  color: #9D894A;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
.sub-menu__info-value-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.0625rem;
  line-height: 1.4705882353;
  letter-spacing: 0.045em;
  margin-top: 0.875rem;
}
.sub-menu__info-time {
  font-size: 1.375rem;
  line-height: 1.4545454545;
  letter-spacing: 0.045em;
  margin-top: 0.3125rem;
}
.sub-menu__info-value {
  padding-left: 2.125rem;
}
.sub-menu__info-value:first-of-type {
  padding-left: 0;
}
.sub-menu__info-value--women {
  color: #C94B4B;
}
.sub-menu__info-value-gender {
  display: inline-block;
  font-size: 0.75rem;
  line-height: 1.4166666667;
  letter-spacing: 0.02em;
  vertical-align: text-top;
}
.sub-menu__info-value-number {
  font-size: 1.375rem;
  line-height: 1.4545454545;
  letter-spacing: 0.045em;
  margin-left: -2px;
}
.sub-menu__note {
  position: relative;
  background-color: #fff;
  padding: 2.25rem 1.25rem 1.625rem;
  border: 1px solid #E2DFD6;
  margin-top: 3rem;
}
.sub-menu__note--color-tanning {
  margin-top: 4.1875rem;
}
.sub-menu__note-tag {
  font-size: 0.75rem;
  line-height: 1.4166666667;
  padding: 0.25rem 0.625rem;
  position: absolute;
  top: 0;
  left: 0;
}
.sub-menu__note-list {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
.sub-menu__note-item {
  color: #9D894A;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: 0.02em;
  position: relative;
  padding-left: 0.625rem;
  margin-top: 0.625rem;
}
.sub-menu__note-item:first-of-type {
  margin-top: 0;
}
.sub-menu__note-item::before {
  content: "";
  position: absolute;
  top: 0.625rem;
  left: 0;
  width: 0.25rem;
  height: 0.25rem;
  border-radius: 50%;
  background-color: #9D894A;
}
.sub-menu__cancel-info {
  background-color: #fff;
  padding: 0.3125rem;
  margin-top: 4.6875rem;
}
.sub-menu__cancel-info-inner {
  border: 1px solid #B78681;
  padding: 1.4375rem 8px 1.5rem;
  text-align: center;
}
.sub-menu__cancel-info-ttl {
  color: #C27067;
  font-size: 1.1875rem;
  font-weight: 500;
  line-height: 1.4210526316;
  letter-spacing: 0.02em;
}
.sub-menu__cancel-info-text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.875rem;
  line-height: 1.4285714286;
  letter-spacing: 0.02em;
  margin-top: 1.125rem;
}
.sub-menu__cancel-info-text-highlight {
  color: #C27067;
}

/*
sub-menu pilates
***************************************/
.sub-menu__container--pilates {
  margin-top: 5.5rem;
}
.sub-menu__table {
  width: 100%;
}
.sub-menu__table tr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-bottom: 1px solid #9D894A;
  padding: 1.0625rem 3.125rem 0.75rem 2.1875rem;
}
.sub-menu__table tr:first-of-type {
  padding: 0;
}
.sub-menu__table-ttl {
  display: block;
  color: #9D894A;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
  padding-bottom: 0.625rem;
  text-align: left;
}
.sub-menu__table-name {
  position: relative;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: 0.02em;
  margin-top: 2px;
}
.sub-menu__table-name::before {
  content: "";
  position: absolute;
  top: 0.625rem;
  left: -1.0625rem;
  width: 0.25rem;
  height: 0.25rem;
  background-color: #9D894A;
  border-radius: 50%;
}
.sub-menu__table-price {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.0625rem;
  line-height: 1.8823529412;
  letter-spacing: 0.045em;
}
.sub-menu__table-price-num {
  font-size: 1.375rem;
  line-height: 1.4545454545;
}
.sub-menu__table-price-unit {
  font-size: 0.75rem;
  line-height: 2.6666666667;
}
.sub-menu__table-note {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  line-height: 1.875;
  letter-spacing: 0.02em;
  margin-top: 1rem;
}
.sub-menu__pay-info {
  background-color: #fff;
  padding: 1.625rem 0;
}
.sub-menu__pay-text {
  font-family: "Forum", serif;
  font-size: 1rem;
  line-height: 1.125;
  letter-spacing: 0.05em;
  text-align: center;
}

/*

sub-owner

***************************************/
.sub-owner {
  background-color: #F7F4EA;
}
.sub-owner--color-tanning {
  padding-bottom: 9.375rem;
}
.sub-owner--instructor {
  padding-top: 6.25rem;
  padding-bottom: 9.375rem;
}
.sub-owner--instructor .sub-owner__container {
  grid-template-columns: 1fr 16.25rem;
  gap: 3.125rem;
}
.sub-owner--instructor .sub-owner__text {
  margin-top: 1.125rem;
}
.sub-owner--instructor .sub-owner__img-wrap {
  max-width: 16.25rem;
}
.sub-owner--instructor .sub-owner__img {
  aspect-ratio: 260/298;
}
.sub-owner__card {
  border: 1px solid #9D894A;
  background-color: rgba(255, 255, 255, 0.4);
  padding: 2.75rem 6.1875rem;
}
@media (width < 1261px) {
  .sub-owner__card {
    padding: 2.5rem 1.875rem;
  }
}
@media (width < 893px) {
  .sub-owner__card {
    padding: 2.5rem 1.25rem;
  }
}
.sub-owner__container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 3.125rem;
}
@media (width < 893px) {
  .sub-owner__container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: 1.875rem;
  }
}
.sub-owner__label {
  color: #9D894A;
  font-family: "Forum", serif;
  font-size: 0.875rem;
  line-height: 1.0714285714;
  letter-spacing: 0.05em;
}
.sub-owner__title {
  font-size: 1.375rem;
  line-height: 1.7272727273;
  letter-spacing: 0.02em;
  margin-top: 0.5rem;
}
@media (width < 893px) {
  .sub-owner__title {
    font-size: 1.25rem;
  }
}
.sub-owner__sub-title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #9D894A;
  font-size: 1.1875rem;
  line-height: 1.4210526316;
  letter-spacing: 0.02em;
  margin-top: 2.5rem;
}
.sub-owner__text {
  font-size: 1rem;
  line-height: 1.875;
  letter-spacing: 0.02em;
  margin-top: 2.125rem;
}
@media (width < 893px) {
  .sub-owner__text {
    font-size: 0.875rem;
  }
}
.sub-owner__img-wrap {
  max-width: 29.5rem;
}
.sub-owner__img {
  aspect-ratio: 472/325;
}
.sub-owner__btn-wrap {
  margin-top: 3rem;
}
.sub-owner__btn-wrap .c-btn-border {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.sub-owner__btn-wrap .c-btn-border__text {
  margin-right: auto;
}

/* sub-solve
***************************************/
.sub-solve {
  background-color: #F7F4EA;
  padding: 9.3125rem 0;
}
.sub-solve__list {
  margin-top: 7rem;
}
.sub-solve__item {
  display: grid;
  grid-template-columns: 19.75rem 1fr;
  background-color: rgba(255, 255, 255, 0.4);
  border: 1px solid #C3B897;
  padding: 2.125rem 3.0625rem 2.125rem 2.4375rem;
  margin-top: 2.5rem;
}
@media (width < 893px) {
  .sub-solve__item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 20px;
  }
}
.sub-solve__item:first-of-type {
  margin-top: 0;
}
.sub-solve__left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-right: 1.3125rem;
}
.sub-solve__img-wrap {
  max-width: 5.125rem;
  margin: 0 auto;
}
.sub-solve__img {
  aspect-ratio: 1/1;
}
.sub-solve__problem {
  color: #9D894A;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.25rem;
  line-height: 1.45;
  letter-spacing: 0.02em;
  margin-top: 0.625rem;
  text-align: center;
}
.sub-solve__right {
  border-left: 1px solid #9D894A;
  padding-left: 2.4375rem;
}
.sub-solve__solution-main {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  line-height: 1.875;
  letter-spacing: 0.02em;
  padding-bottom: 1.6875rem;
}
.sub-solve__drawer-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
  background-color: #fff;
  padding: 0.8125rem 2rem;
  max-width: 18.375rem;
  cursor: pointer;
  position: relative;
}
.sub-solve__drawer-header::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 1.8625rem;
  width: 8px;
  height: 8px;
  border-top: 1px solid #333;
  border-right: 1px solid #333;
  -webkit-transform: translateY(-70%) rotate(135deg);
          transform: translateY(-70%) rotate(135deg);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
.sub-solve__drawer-header-text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.875rem;
  line-height: 1.4285714286;
  letter-spacing: 0.02em;
}
.sub-solve__drawer.is-open .sub-solve__drawer-header::after {
  -webkit-transform: translateY(-30%) rotate(-45deg);
          transform: translateY(-30%) rotate(-45deg);
}
.sub-solve__drawer-content {
  display: none;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  line-height: 1.875;
  letter-spacing: 0.02em;
  padding: 1.6875rem 1.8625rem 1.6875rem 2rem;
}

/* sub-mechanism
***************************************/
.sub-mechanism {
  background-color: #EDE7E1;
  padding-top: 9rem;
}
.sub-mechanism--epilation {
  padding-top: 7.375rem;
}
.sub-mechanism__card {
  background-color: #fff;
  padding: 3rem 6.25rem 3.125rem;
  margin-top: 5.25rem;
}
.sub-mechanism__card--epilation {
  margin-top: 5.25rem;
}
.sub-mechanism__card--epilation .sub-mechanism__item:not(:last-child)::after {
  right: calc(clamp(20px, 4vw, 43px) / -2);
  top: calc(50% - 2px);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  border-style: solid;
  border-width: 8px 0 8px 12px;
}
.sub-mechanism__card--epilation .sub-mechanism__item-step {
  font-size: 1.1875rem;
  line-height: 1.4210526316;
  letter-spacing: 0.02em;
}
.sub-mechanism__card--color-tanning {
  padding-top: 3.75rem;
}
.sub-mechanism__card--color-tanning .sub-mechanism__grid {
  margin-top: 0;
}
.sub-mechanism__card--color-tanning .sub-mechanism__item-ttl {
  color: #9D894A;
  font-size: 1.1875rem;
  line-height: 1.4210526316;
  letter-spacing: 0.02em;
  margin-top: 0.9375rem;
}
.sub-mechanism__card-ttl {
  text-align: center;
  font-size: 1.375rem;
  line-height: 1.7272727273;
  letter-spacing: 0.02em;
}
@media (width < 893px) {
  .sub-mechanism__card-ttl {
    font-size: 1.25rem;
  }
}
.sub-mechanism__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(20px, 4vw, 66px);
  margin-top: 3.625rem;
}
@media (width < 893px) {
  .sub-mechanism__grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
}
.sub-mechanism__grid--col4 {
  grid-template-columns: repeat(4, 1fr);
  gap: clamp(20px, 4vw, 43px);
}
.sub-mechanism__item {
  position: relative;
}
.sub-mechanism__item:not(:last-child)::after {
  content: "";
  position: absolute;
  right: calc(clamp(20px, 4vw, 66px) / -2);
  top: 20px;
  -webkit-transform: translateX(50%);
          transform: translateX(50%);
  border-style: solid;
  border-width: 8px 0 8px 10px;
  border-color: transparent transparent transparent #9D894A;
}
@media (width < 893px) {
  .sub-mechanism__item:not(:last-child)::after {
    display: none;
  }
}
.sub-mechanism__item-step {
  color: #9D894A;
  font-family: "Forum", serif;
  font-size: 1.25rem;
  line-height: 1.1;
  letter-spacing: 0.05em;
  border-bottom: 1px solid #E2DFD6;
  padding-bottom: 0.5rem;
}
.sub-mechanism__item-text {
  font-size: 0.875rem;
  line-height: 1.8571428571;
  letter-spacing: 0.02em;
  margin-top: 0.8125rem;
}
.sub-mechanism__note {
  background-color: #F7F4EA;
  padding: 1.875rem 3.4375rem;
  margin-top: 4.875rem;
}
.sub-mechanism__note-ttl {
  color: #9D894A;
  font-size: 1.1875rem;
  line-height: 1.4210526316;
  letter-spacing: 0.02em;
  text-align: center;
}
.sub-mechanism__note-text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.875rem;
  line-height: 1.8571428571;
  letter-spacing: 0.02em;
  margin-top: 1.125rem;
}

/* sub-effect
***************************************/
.sub-effect {
  background-color: #EDE7E1;
  padding-top: 9.25rem;
}
.sub-effect__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.625rem;
  margin: 5.25rem auto 0;
  max-width: 70.4375rem;
}
@media (width < 893px) {
  .sub-effect__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (width < 576px) {
  .sub-effect__grid {
    grid-template-columns: 1fr;
  }
}
.sub-effect__item {
  background-color: #7E6E55;
  padding: 0.8125rem 0.5rem 0.6875rem 1.6875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.125rem;
  min-height: 4.9375rem;
}
.sub-effect__img-wrap {
  max-width: 0.8125rem;
}
.sub-effect__img {
  aspect-ratio: 13 22;
}
.sub-effect__text-wrap {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.sub-effect__ttl {
  font-weight: 600;
  color: #9D894A;
  margin-bottom: 5px;
  font-size: 1rem;
}
.sub-effect__text {
  color: #fff;
  font-size: 1.1875rem;
  line-height: 1.4736842105;
  letter-spacing: 0.02em;
}

/* sub-note
***************************************/
.sub-note {
  background-color: #EDE7E1;
  padding: 7.5rem 0 9.375rem;
}
.sub-note--color-tanning {
  padding: 9.375rem 0 0;
}
.sub-note__content {
  background-color: #fff;
  padding-bottom: 2.375rem;
  margin-top: 3.75rem;
}
.sub-note__content:first-of-type {
  margin-top: 0;
}
.sub-note__title {
  background-color: #B78681;
  color: #fff;
  font-size: 1.375rem;
  font-weight: 500;
  line-height: 1.4545454545;
  letter-spacing: 0.02em;
  text-align: center;
  padding: 0.8125rem;
}
.sub-note__list {
  background-color: #fff;
}
.sub-note__block {
  background-color: #fff;
  padding: 3.125rem 0 3.875rem;
}
.sub-note__item {
  max-width: 62.5rem;
  margin: 0 auto;
}
.sub-note__item-caption {
  background-color: #F7F4EA;
  color: #9D894A;
  font-size: 1.1875rem;
  font-weight: 500;
  line-height: 1.4210526316;
  letter-spacing: 0.02em;
  padding: 0.5rem;
  max-width: 62.5rem;
  margin: 3.75rem auto 0;
  text-align: center;
}
.sub-note__item-caption:first-of-type {
  margin-top: 0rem;
}
.sub-note__item-body-text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  line-height: 1.7142857143;
  letter-spacing: 0.02em;
}
.sub-note__item-ttl {
  color: #9D894A;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: 0.02em;
  padding-left: 1rem;
  margin-top: 2rem;
  position: relative;
}
.sub-note__item-ttl--no-desc {
  margin-top: 0.8125rem;
}
.sub-note__item:first-child .sub-note__item-ttl {
  margin-top: 2rem;
}
.sub-note__item-ttl::before {
  content: "";
  position: absolute;
  top: 0.625rem;
  left: 0.5rem;
  width: 0.125rem;
  height: 0.125rem;
  border-radius: 50%;
  background-color: #9D894A;
}
.sub-note__item-body {
  padding-left: 1rem;
  margin-top: 0.625rem;
}
.sub-note__item-text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  line-height: 1.875;
  letter-spacing: 0.02em;
  max-width: 62.5rem;
  margin: 1.75rem auto 0;
}

/*

sub-case

***************************************/
.sub-case {
  padding-top: 9.375rem;
}
.sub-case__wrapper {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.5rem;
  margin-top: 5.25rem;
}
@media (width < 893px) {
  .sub-case__wrapper {
    grid-template-columns: 1fr;
    gap: 1.875rem;
  }
}
.sub-case__wrapper--single {
  grid-template-columns: 1fr;
}
.sub-case__item {
  position: relative;
  border: 1px solid #9D894A;
  background-color: #fff;
  padding: 4.125rem 3.75rem 3.3125rem;
}
.sub-case__item--hyper-knife {
  max-width: 33.5rem;
  margin: 0 auto;
  width: 100%;
}
.sub-case__item--hyper-knife .sub-case__img-block {
  max-width: 11.8125rem;
}
.sub-case__item--hyper-knife .sub-case__img {
  aspect-ratio: 189/408;
}
.sub-case__item--color-tanning .sub-case__body {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.sub-case__item--color-tanning .sub-case__arrow {
  margin: 0.625rem 0.625rem 0;
}
.sub-case__item--color-tanning .sub-case__img-block {
  max-width: 11.8125rem;
}
.sub-case__item--color-tanning .sub-case__img {
  aspect-ratio: 189/408;
}
.sub-case__item--epilation {
  max-width: 70.75rem;
  margin: 0 auto;
  width: 100%;
}
.sub-case__item--epilation .sub-case__img-block {
  max-width: 30.375rem;
}
.sub-case__item--epilation .sub-case__img {
  aspect-ratio: 486/250;
}
.sub-case__item--empty {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 18.75rem;
}
.sub-case__tag {
  font-size: 1rem;
  line-height: 1.5;
  padding: 0.25rem 0.625rem;
  position: absolute;
  top: 0;
  left: 0;
}
.sub-case__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.sub-case__img-block {
  text-align: center;
}
.sub-case__label {
  display: block;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
.sub-case__img-wrap {
  margin-top: 0.375rem;
}
.sub-case__arrow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  width: 1.25rem;
  margin-top: 0.625rem;
}
.sub-case__arrow::before {
  content: "";
  position: absolute;
  width: 0.875rem;
  height: 1.5px;
  background-color: #9D894A;
  left: 0.1875rem;
}
.sub-case__arrow::after {
  content: "";
  position: absolute;
  right: 1px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.1875rem 0 0.1875rem 0.25rem;
  border-color: transparent transparent transparent #9D894A;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.sub-case__empty-text {
  color: #B3B3B3;
  font-size: 1rem;
  font-weight: 500;
  text-align: center;
}

/* sub-faq
***************************************/
.sub-faq {
  padding: 9.1875rem 0 9.3125rem;
}
.sub-faq__list {
  margin-top: 5.25rem;
}
.sub-faq__item {
  background-color: #F7F4EA;
  padding: 1.3125rem 3.125rem 1.4375rem;
  margin-top: 0.9375rem;
}
@media (width < 893px) {
  .sub-faq__item {
    padding: 1.25rem;
  }
}
.sub-faq__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1.25rem;
  border-top: 1px solid #DDD7C5;
  padding-top: 0.8125rem;
}
.sub-faq__row:first-of-type {
  border-top: none;
  padding-top: 0;
  padding-bottom: 0.8125rem;
}
.sub-faq__row--answer .sub-faq__text {
  font-weight: 400;
  letter-spacing: 0.02em;
}
.sub-faq__label {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
.sub-faq__text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.875;
  letter-spacing: 0.04em;
}
.sub-faq__btn {
  margin: 3.125rem auto 0;
}

/* sub-feature
***************************************/
.sub-feature {
  background-color: #EDE7E1;
  padding-top: 9.25rem;
}
.sub-feature__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.875rem;
  margin-top: 6.625rem;
}
@media (width < 893px) {
  .sub-feature__list {
    grid-template-columns: 1fr;
  }
}
.sub-feature__card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border: 1px solid #C3B897;
  height: 100%;
}
.sub-feature__head {
  background-color: rgba(255, 255, 255, 0.4);
  padding: 2.875rem 2.5rem 1.375rem;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  height: 100%;
}
.sub-feature__icon-wrap {
  max-width: 1.5625rem;
  margin: 0 auto;
}
.sub-feature__icon {
  aspect-ratio: 1/1;
}
.sub-feature__ttl {
  color: #9D894A;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.45;
  letter-spacing: 0.02em;
  margin-top: 0.9375rem;
  text-align: center;
}
.sub-feature__desc {
  font-size: 1rem;
  line-height: 1.875;
  letter-spacing: 0.02em;
  margin-top: 1.125rem;
}
.sub-feature {
  /* 中部：全幅金背景 */
}
.sub-feature__label {
  background-color: #9D894A;
  color: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.75rem;
  line-height: 1.4166666667;
  letter-spacing: 0.02em;
  padding: 0.25rem;
  text-align: center;
}
.sub-feature {
  /* 下部：白背景 */
}
.sub-feature__note {
  background-color: #fff;
  color: #9D894A;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  line-height: 1.75;
  letter-spacing: 0.02em;
  padding: 1.4375rem 0.5rem 1.3125rem 2.5rem;
}
.sub-feature__note-span {
  display: block;
  font-size: 0.875rem;
  line-height: 2;
  letter-spacing: 0.02em;
}

/* pilates sub-feature
***************************************/
.sub-feature__grid-container {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 1.875rem;
  margin-top: 5.25rem;
}
.sub-feature__grid-container .sub-feature__head {
  padding-bottom: 2.75rem;
}
.sub-feature__item {
  grid-column: span 2;
}
.sub-feature__item:nth-child(4) {
  grid-column: 2/4;
}
.sub-feature__item:nth-child(5) {
  grid-column: 4/6;
}
@media screen and (max-width: 768px) {
  .sub-feature__item {
    grid-column: span 3;
  }
  .sub-feature__item:nth-child(5) {
    grid-column: 2/5;
  }
}
@media screen and (max-width: 480px) {
  .sub-feature__item {
    grid-column: span 6;
  }
}

/* sub-toggle
***************************************/
.sub-toggle {
  background-color: #EDE7E1;
  padding: 13.5rem 0 9.375rem;
}
.sub-toggle__item {
  border-bottom: 1px solid #E2DFD6;
  margin-top: 2.5rem;
}
.sub-toggle__item:first-of-type {
  margin-top: 0;
}
.sub-toggle__item.is-active .sub-toggle__icon::after {
  -webkit-transform: translate(-50%, -50%) rotate(90deg);
          transform: translate(-50%, -50%) rotate(90deg);
  opacity: 0;
}
.sub-toggle__summary {
  position: relative;
  background-color: #9D894A;
  padding: 2.125rem 3.75rem 2rem 6.25rem;
  cursor: pointer;
}
.sub-toggle__summary-text {
  color: #fff;
  font-size: 1.375rem;
  line-height: 1.4545454545;
  letter-spacing: 0.02em;
}
.sub-toggle__icon {
  position: absolute;
  right: 3.75rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 40px;
  height: 40px;
  background-color: #fff;
  border-radius: 50%;
}
.sub-toggle__icon::before, .sub-toggle__icon::after {
  content: "";
  position: absolute;
  background-color: #9D894A;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.sub-toggle__icon::before {
  width: 13px;
  height: 2px;
}
.sub-toggle__icon::after {
  width: 2px;
  height: 13px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.sub-toggle__content {
  display: none;
  background-color: #fff;
  padding: 3.125rem 0 6.125rem;
}
.is-active .sub-toggle__content {
  display: block;
}
.sub-toggle__content-text {
  font-size: 1rem;
  line-height: 1.875;
  letter-spacing: 0.02em;
  margin-top: 1.875rem;
}
.sub-toggle__lead {
  font-size: 1.1875rem;
  font-weight: 500;
  line-height: 1.4210526316;
  letter-spacing: 0.02em;
}
.sub-toggle__head {
  background-color: #F8F5EE;
  color: #9D894A;
  font-size: 1.1875rem;
  font-weight: 500;
  line-height: 1.4210526316;
  letter-spacing: 0.02em;
  padding: 0.625rem;
  margin-top: 3.75rem;
  text-align: center;
}
.sub-toggle__lead + .sub-toggle__head {
  margin-top: 1.875rem;
}
.sub-toggle__caution {
  color: #C94B4B;
}
.sub-toggle__list {
  margin-top: 1.875rem;
}
.sub-toggle__list-item {
  position: relative;
  margin-top: 1.875rem;
}
.sub-toggle__list-item:first-of-type {
  margin-top: 0;
}
.sub-toggle__list-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.625rem;
  width: 0.125rem;
  height: 0.125rem;
  border-radius: 50%;
  background-color: #9D894A;
}
.sub-toggle__list-ttl {
  color: #9D894A;
  font-weight: 600;
  padding-left: 1rem;
  margin-bottom: 0.3125rem;
}
.sub-toggle__list-text {
  line-height: 1.75;
  letter-spacing: 0.02em;
  padding-left: 2rem;
}

/*************************************

Page：service.scss

***************************************/
/*

menu-list

***************************************/
.menu-list {
  padding: 12.8125rem 0 9.4375rem;
}
.menu-list__item:nth-of-type(2n) .menu-list__btn {
  margin-top: 4.125rem;
  -webkit-transform: translateX(-0.5rem);
          transform: translateX(-0.5rem);
}
.menu-list__container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 6.25rem 5rem;
}
.menu-list__img-wrap {
  max-width: 35rem;
}
.menu-list__img {
  aspect-ratio: 560/355;
}
.menu-list__target {
  color: #9D894A;
  font-family: "Forum", serif;
  font-size: 0.875rem;
  letter-spacing: 0.05em;
  line-height: 1.0714285714;
  margin-top: 1.25rem;
}
.menu-list__item-title {
  font-size: 1.375rem;
  font-weight: 600;
  line-height: 1.4545454545;
  letter-spacing: 0.02em;
  margin-top: 0.625rem;
}
.menu-list__category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.9375rem;
  max-width: 90%;
  margin-top: 1.25rem;
}
.menu-list__text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  line-height: 1.875;
  letter-spacing: 0.02em;
  margin-top: 1.0625rem;
}
.menu-list__btn {
  margin: 4.125rem auto 0;
}

/*

menu-price

***************************************/
.menu-price {
  padding: 7.375rem 0 9.375rem;
  background-color: #F7F4EA;
}
.menu-price .c-section-title__sub {
  -webkit-transform: translateX(-0.75rem);
          transform: translateX(-0.75rem);
}
.menu-price {
  /* ---------------- nav ---------------- */
}
.menu-price__nav {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.3125rem;
  max-width: 52.75rem;
  margin: 4.375rem auto 0;
}
@media (width < 893px) {
  .menu-price__nav {
    grid-template-columns: 1fr;
    gap: 2.3364485981vw;
  }
}
.menu-price__nav-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5625rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #fff;
  padding: 1.125rem 0.5rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (hover: hover) {
  .menu-price__nav-btn:hover {
    opacity: 0.8;
  }
}
.menu-price__nav-text {
  color: #9D894A;
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.4285714286;
}
.menu-price__nav-arrow {
  display: block;
  width: 0.4375rem;
  height: 0.4375rem;
  border-right: 1px solid #9D894A;
  border-bottom: 1px solid #9D894A;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.menu-price__content {
  max-width: 62.5rem;
  margin: 7.125rem auto 0;
}
.menu-price__content:first-of-type {
  margin-top: 7.5rem;
}
.menu-price__sub-title {
  font-size: 1.1875rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.4210526316;
  text-align: center;
}
.menu-price__table {
  width: 100%;
  margin-top: 3.625rem;
}
.menu-price__table-head {
  display: grid;
  grid-template-columns: 3.13fr 4.49fr 2.18fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-bottom: 0.5rem;
  padding-left: 1.25rem;
  border-bottom: 1px solid #9D894A;
  text-align: left;
}
@media (width < 893px) {
  .menu-price__table-head {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}
.menu-price__table-head th {
  color: #9D894A;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.5;
}
.menu-price__table-row {
  display: grid;
  grid-template-columns: 3.23fr 4.49fr 2.18fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1rem 3.0625rem 1rem 2.1875rem;
  border-bottom: 1px solid #9D894A;
  min-height: 7rem;
}
@media (width < 893px) {
  .menu-price__table-row {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}
.menu-price__table-row .menu-price__col-menu-text {
  position: relative;
  line-height: 1.875;
}
.menu-price__table-row .menu-price__col-menu-text::before {
  content: "";
  position: absolute;
  top: 0.8125rem;
  left: -0.9375rem;
  width: 4px;
  height: 4px;
  background-color: #3D372C;
  border-radius: 50%;
}
.menu-price__table-row .menu-price__col-price-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.375rem;
  line-height: 1.4545454545;
  letter-spacing: 0.045em;
}
.menu-price__table-row .menu-price__col-price-text--women {
  color: #C94B4B;
}
.menu-price__table-row .menu-price__col-content {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.875rem;
  line-height: 1.4285714286;
  letter-spacing: 0.02em;
}
.menu-price__col-price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
}
.menu-price__col-price--note {
  gap: 0.25rem;
}
.menu-price__col-price-sub {
  font-size: 0.75rem;
  line-height: 1.4166666667;
  letter-spacing: 0.02em;
  margin-right: 0.3125rem;
}
.menu-price__col-price-yen {
  font-size: 1.0625rem;
  line-height: 1.8823529412;
  margin-top: 2px;
}
.menu-price__col-price-note {
  font-size: 0.75rem;
  line-height: 1.4166666667;
  letter-spacing: 0.02em;
  padding-bottom: 6px;
  text-align: right;
}

/*************************************

Page：about.scss

***************************************/
/*

about-features

***************************************/
.about-features {
  background-color: #F7F4EA;
  padding: 7.375rem 0;
}
.about-features__list {
  margin-top: 6.5rem;
}
.about-features__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3.125rem;
  margin-top: 6.875rem;
}
@media (width < 893px) {
  .about-features__item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 7.0093457944vw;
  }
}
.about-features__item:first-of-type {
  margin-top: 0;
}
.about-features__img-wrap {
  -webkit-box-flex: 1.2;
      -ms-flex: 1.2;
          flex: 1.2;
  max-width: 29.5rem;
}
.about-features__img {
  aspect-ratio: 472/325;
  width: 100%;
}
.about-features__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.about-features__number {
  color: #9D894A;
  font-family: "Forum", serif;
  font-size: 0.875rem;
  letter-spacing: 0.05em;
  line-height: 1.0714285714;
}
.about-features__item-title {
  font-size: 1.375rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.4545454545;
  margin-top: 0.5rem;
}
.about-features__item-text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  line-height: 1.875;
  letter-spacing: 0.02em;
  margin-top: 2.5rem;
}
.about-features__btn-wrap {
  margin-top: auto;
}

.about-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 7.5rem auto 5.9375rem;
}

.faq-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
  background-color: #fff;
  border: 1px solid #9D894A;
  padding: 2.5rem 5rem;
  text-decoration: none;
  width: 100%;
  max-width: 45.3125rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.faq-btn:hover {
  background-color: #9D894A;
}
.faq-btn:hover .faq-btn__text,
.faq-btn:hover .faq-btn__arrow {
  color: #fff;
}
.faq-btn:hover .faq-btn__icon {
  background-color: #fff;
  color: #9D894A;
}
.faq-btn__icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 53px;
  height: 53px;
  background-color: #9D894A;
  color: #fff;
  border-radius: 50%;
  font-weight: bold;
  margin-right: 1.25rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.faq-btn__text {
  color: #9D894A;
  font-size: 1.375rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.4545454545;
  margin-right: 9.36875rem;
}
.faq-btn .c-arrow {
  width: 1.318125rem;
  height: 1px;
  background-color: #9D894A;
}

/*************************************

Page：about-owner.scss

***************************************/
/*

history

***************************************/
.history {
  padding: 8.375rem 0 6.875rem;
  overflow-x: auto;
}
.history__title {
  margin-top: 1.875rem;
}
.history__container {
  padding: 9.375rem 0;
  margin-top: 2.5rem;
}
.history__line {
  position: relative;
  width: 100%;
  height: 1px;
  background-color: #9D894A;
}
.history__item {
  position: absolute;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
.history__item:nth-of-type(1) {
  left: 4vw;
}
.history__item:nth-of-type(2) {
  left: 22.2666666667vw;
}
.history__item:nth-of-type(3) {
  left: 38.6666666667vw;
}
.history__item:nth-of-type(4) {
  left: 55.1333333333vw;
}
.history__item:nth-of-type(5) {
  left: 69.2vw;
}
.history__item:nth-of-type(6) {
  left: 79.8666666667vw;
}
.history__item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 9px;
  height: 9px;
  background-color: #9D894A;
  border-radius: 50%;
  z-index: 2;
}
.history__item::after {
  content: "";
  position: absolute;
  left: 4px;
  width: 1px;
  height: 2.1875rem;
  background-color: #E3DABC;
}
.history__item--up {
  bottom: 0;
  padding-bottom: 2.625rem;
}
.history__item--up::before {
  top: auto;
  bottom: -9px;
}
.history__item--up::after {
  bottom: 0;
}
.history__item--down {
  top: 0;
  padding-top: 2.625rem;
}
.history__item--down::before {
  top: 0;
  bottom: auto;
}
.history__item--down::after {
  top: 0;
}
.history__label {
  color: #9D894A;
  font-family: "Forum", serif;
  font-size: 0.875rem;
  letter-spacing: 0.05em;
  line-height: 1.0714285714;
  margin-left: 6px;
}
.history__text {
  color: #9D894A;
  font-size: 1.0625rem;
  letter-spacing: 0.02em;
  line-height: 1.4705882353;
  margin-top: 5px;
  margin-left: 5px;
}
.history__next {
  position: absolute;
  top: 50%;
  right: 1.1875rem;
  -webkit-transform: translateY(calc(-50% - 17px));
          transform: translateY(calc(-50% - 17px));
}
.history__next-text {
  font-family: "Forum", serif;
  font-size: 0.875rem;
  color: #9D894A;
  letter-spacing: 0.05em;
  line-height: 1.0714285714;
}

/*

story-section

***************************************/
.story-section {
  padding: 9.6875rem 0 6rem;
}
.story-section:nth-child(1 of .story-section) {
  background: url("../img/layout/about-owner/story-bg.png") no-repeat center center/cover;
  padding-top: 14.125rem;
  position: relative;
}
.story-section:nth-child(1 of .story-section)::before {
  content: "";
  position: absolute;
  width: 100%;
  padding-top: 5.7366666667%;
  top: 0;
  left: 0;
  background: url("../img/layout/about-owner/story-bg-over.png") no-repeat center center/contain;
  background-size: contain;
  background-repeat: no-repeat;
}
.story-section:nth-child(2 of .story-section) {
  background-color: #F7F4EA;
}
.story-section:nth-child(2 of .story-section) .story-section__item:nth-of-type(2) {
  margin-top: 9.375rem;
}
.story-section:nth-child(3 of .story-section) {
  background-color: #EDE7E1;
  padding-bottom: 7.5rem;
}
.story-section:nth-child(3 of .story-section) .story-section__item:nth-of-type(1) .story-section__img {
  aspect-ratio: 493/329;
}
.story-section:nth-child(3 of .story-section) .story-section__item:nth-of-type(2) {
  margin-top: 9.375rem;
}
@media (width < 893px) {
  .story-section {
    padding: 14.0186915888vw 0;
  }
}
.story-section__item {
  margin-top: 7.6875rem;
}
.story-section__item:first-of-type {
  margin-top: 0;
}
.story-section__item:nth-of-type(2) .story-section__img {
  aspect-ratio: 493/329;
}
.story-section__title {
  text-align: center;
  position: relative;
}
.story-section__title::before {
  content: "";
  position: absolute;
  top: -5.3125rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 1px;
  height: 4.0625rem;
  background-color: #9D894A;
}
.story-section__title-num {
  display: block;
  color: #9D894A;
  font-family: "Forum", serif;
  font-size: 0.875rem;
  letter-spacing: 0.05em;
  line-height: 1.0714285714;
}
.story-section__title-main {
  display: block;
  font-size: 1.375rem;
  letter-spacing: 0.02em;
  line-height: 1.4545454545;
  margin-top: 0.625rem;
}
.story-section__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 3.125rem;
  margin-top: 2.375rem;
}
@media (width < 893px) {
  .story-section__content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 7.0093457944vw;
    margin-bottom: 18.691588785vw;
  }
}
.story-section__text-wrap {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.story-section__text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  letter-spacing: 0.02em;
  line-height: 1.875;
}
.story-section__img-wrap {
  max-width: 30.8125rem;
}
.story-section__img {
  aspect-ratio: 493/347;
}

/*

about-award

***************************************/
.about-award {
  background-color: #EDE7E1;
  padding-bottom: 9.375rem;
}
.about-award__title {
  font-size: 1.375rem;
  letter-spacing: 0.02em;
  line-height: 1.4545454545;
  border-top: 1px solid #9D894A;
  border-bottom: 1px solid #9D894A;
  padding: 1.25rem 0;
  text-align: center;
}
@media (width < 893px) {
  .about-award__title {
    font-size: 4.6728971963vw;
  }
}
.about-award__group {
  margin-top: 3.625rem;
}
.about-award__group:first-of-type {
  margin-top: 1.8125rem;
}
.about-award__year {
  color: #9D894A;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.25rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.45;
}
.about-award__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem 0;
  margin-top: 0.5rem;
}
@media (width < 893px) {
  .about-award__list {
    grid-template-columns: 1fr;
    gap: 7.0093457944vw;
  }
}
.about-award__item {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  letter-spacing: 0.02em;
  line-height: 1.875;
  position: relative;
  padding-left: 0.9375rem;
}
.about-award__item::before {
  content: "";
  position: absolute;
  top: 0.8125rem;
  left: 0;
  width: 4px;
  height: 4px;
  background-color: #9D894A;
  border-radius: 50%;
}
.about-award__extra {
  max-width: 62.5rem;
  margin: 4.875rem auto 0;
}

.award-box {
  background-color: #fff;
  padding: 0.3125rem;
}
.award-box__inner {
  border: 1px solid #9D894A;
  padding: 2.625rem 0 4rem;
  text-align: center;
}
@media (width < 893px) {
  .award-box__inner {
    padding: 9.3457943925vw 4.6728971963vw;
  }
}
.award-box__title {
  font-size: 1.375rem;
  letter-spacing: 0.02em;
  line-height: 1.4545454545;
}
.award-box__text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  letter-spacing: 0.02em;
  line-height: 1.5;
  margin-top: 0.9375rem;
}
.award-box__btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2.5rem;
  margin-top: 2.4375rem;
}
@media (width < 893px) {
  .award-box__btns {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 9.3457943925vw;
  }
}

/*************************************

Page：about-k3.scss

***************************************/
/*

sub-flow

***************************************/
.sub-flow {
  padding-top: 13.125rem;
}
.sub-flow__list {
  margin-top: 5.3rem;
}
.sub-flow__item {
  padding: 2.4375rem 1.5rem 2.3125rem 2.5rem;
  border-bottom: 1px solid #9D894A;
  position: relative;
}
.sub-flow__item:first-of-type {
  padding-top: 0;
  padding-bottom: 3.125rem;
}
.sub-flow__item:nth-of-type(2) {
  padding-top: 1.875rem;
}
.sub-flow__item:last-of-type {
  border-bottom: none;
  padding-bottom: 0;
}
.sub-flow__item:last-of-type::before {
  display: none;
}
.sub-flow__item::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 100%);
          transform: translate(-50%, 100%);
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 8px solid #9D894A;
}
.sub-flow__number {
  color: #9D894A;
  font-family: "Forum", serif;
  font-size: 0.875rem;
  letter-spacing: 0.05em;
  line-height: 1.0714285714;
}
.sub-flow__item-title {
  font-size: 1.375rem;
  letter-spacing: 0.02em;
  line-height: 1.4545454545;
  margin-top: 0.625rem;
}
.sub-flow__item-sub {
  color: #9D894A;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.25rem;
  letter-spacing: 0.02em;
  line-height: 1.45;
  margin-top: 0.9375rem;
}
.sub-flow__item-text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.875rem;
  line-height: 1.8571428571;
  letter-spacing: 0.02em;
  margin-top: 0.7rem;
}
.sub-flow__btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.5rem;
  margin-top: 1.25rem;
}
@media (width < 893px) {
  .sub-flow__btns {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.sub-flow__note {
  background-color: #F7F4EA;
  padding: 1.625rem 0.625rem;
  margin-top: 1.7625rem;
  max-width: 57.5rem;
  text-align: center;
}
.sub-flow__note-text {
  font-family: "Forum", serif;
  font-size: 1rem;
  letter-spacing: 0.05em;
  line-height: 1.125;
}

.flow-btn-cta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #A1473D;
  max-width: 28.4375rem;
  padding: 3.0625rem 1.11875rem 3.0625rem 1.25rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  width: 100%;
}
@media (width < 893px) {
  .flow-btn-cta {
    padding: 4px;
    max-width: 100%;
  }
}
.flow-btn-cta__icon-circle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  background-color: #C27067;
  border-radius: 50%;
  width: 3.3125rem;
  height: 3.3125rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (width < 893px) {
  .flow-btn-cta__icon-circle {
    width: 2.75rem;
    height: 2.75rem;
  }
}
.flow-btn-cta__icon-svg {
  fill: #fff;
}
.flow-btn-cta__content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-left: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.75rem;
}
@media (width < 893px) {
  .flow-btn-cta__content {
    gap: 0.625rem;
    margin-left: 0.8125rem;
  }
}
.flow-btn-cta__main-text {
  color: #A1473D;
  font-size: 1.375rem;
  letter-spacing: 0.02em;
  line-height: 1.4545454545;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (width < 893px) {
  .flow-btn-cta__main-text {
    font-size: 1rem;
  }
}
.flow-btn-cta__badge {
  display: inline-block;
  color: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  letter-spacing: 0.02em;
  line-height: 1.5;
  background-color: #C27067;
  border-radius: 1.0625rem;
  padding: 0.25rem 1rem 0.3125rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (width < 893px) {
  .flow-btn-cta__badge {
    font-size: 0.625rem;
  }
}
.flow-btn-cta .c-arrow {
  background-color: #A1473D;
}
.flow-btn-cta .c-arrow::before, .flow-btn-cta .c-arrow::after {
  background-color: #A1473D;
}
.flow-btn-cta:hover {
  background-color: #A1473D;
}
.flow-btn-cta:hover .flow-btn-cta__main-text,
.flow-btn-cta:hover .flow-btn-cta__badge {
  color: #fff;
}
.flow-btn-cta:hover .flow-btn-cta__badge {
  background-color: #fff;
  color: #A1473D;
}
.flow-btn-cta:hover .flow-btn-cta__icon-circle {
  background-color: #fff;
}
.flow-btn-cta:hover .flow-btn-cta__icon-circle svg {
  fill: #A1473D;
}
.flow-btn-cta:hover .c-arrow {
  background-color: #fff;
}
.flow-btn-cta:hover .c-arrow::before, .flow-btn-cta:hover .c-arrow::after {
  background-color: #fff;
}

.flow-btn-sns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #818181;
  padding: 1.75rem 1.1875rem 1.5rem 1.25rem;
  max-width: 28.4375rem;
  width: 100%;
}
.flow-btn-sns__icon {
  width: 3.3125rem;
  height: 3.3125rem;
  background: #6E6351;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.flow-btn-sns__content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-left: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.3125rem;
}
.flow-btn-sns__main {
  color: #6e6351;
  font-size: 1.375rem;
  letter-spacing: 0.02em;
  line-height: 1.4545454545;
}
.flow-btn-sns__sub {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.875rem;
  letter-spacing: 0.02em;
  line-height: 1.8571428571;
}
.flow-btn-sns__qr {
  max-width: 6.0625rem;
  margin-left: 1.0625rem;
}
.flow-btn-sns__qr-img {
  aspect-ratio: 1/1;
}

/*

Section ： staff

***************************************/
.staff {
  padding: 10.5rem 0 6.25rem;
}
.staff__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 4.875rem;
  margin-top: 5.375rem;
}
@media (width < 893px) {
  .staff__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.staff__note {
  background-color: #B78681;
  padding: 4px;
  margin-top: 3.4375rem;
}
.staff__note-inner {
  border: 1px solid #fff;
  padding: 1.8125rem 0.625rem;
  text-align: center;
}
.staff__note-text {
  color: #fff;
  font-size: 1.1875rem;
  letter-spacing: 0.03em;
  line-height: 1.7368421053;
}

/*
staff-card
***************************************/
.staff-card {
  max-width: 16.25rem;
}
.staff-card__img {
  aspect-ratio: 260/230;
}
.staff-card__name {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  color: #9D894A;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.1875rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.4210526316;
  margin-top: 1.25rem;
}
.staff-card__post {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.75rem;
  letter-spacing: 0.02em;
  line-height: 2.25;
  margin-left: 0.3125rem;
}
.staff-card__text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.875rem;
  letter-spacing: 0.02em;
  line-height: 1.8571428571;
  margin-top: 0.4375rem;
}

/*

Section ： shop-info

***************************************/
.shop-info {
  padding-top: 6.25rem;
}
.shop-info__container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.5rem;
  margin-top: 5.375rem;
  padding-left: 2.34375rem;
}
@media (width < 893px) {
  .shop-info__container {
    grid-template-columns: 1fr;
    gap: 1.875rem;
  }
}
.shop-info__img-wrap {
  max-width: 31.25rem;
  margin-left: auto;
}
@media (width < 893px) {
  .shop-info__img-wrap {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: 100%;
  }
}
.shop-info__img {
  aspect-ratio: 500/334;
}
.shop-info__item {
  display: grid;
  grid-template-columns: 5.5625rem 1fr;
  padding: 1.25rem 0.5rem 1.1875rem 1.875rem;
  border-bottom: 1px solid #E2DFD6;
}
.shop-info__item:first-of-type {
  border-top: 1px solid #E2DFD6;
}
@media (width < 893px) {
  .shop-info__item {
    grid-template-columns: 1fr;
    gap: 0.625rem;
  }
}
.shop-info__label {
  color: #9D894A;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-size: 0.875rem;
  letter-spacing: 0.02em;
  line-height: 1.4285714286;
}
.shop-info__text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.875rem;
  letter-spacing: 0.02em;
  line-height: 1.4285714286;
}

/*

Section ： gallery

***************************************/
.gallery {
  background-color: #F7F4EA;
  padding: 9.0625rem 0 9.375rem;
}
.gallery__lead {
  color: #9D894A;
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.45;
  margin-top: 4.125rem;
  text-align: center;
}
.gallery__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.5rem 1.875rem;
  margin-top: 3.125rem;
}
@media (width < 1261px) {
  .gallery__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (width < 893px) {
  .gallery__list {
    grid-template-columns: 1fr;
    gap: 7.0093457944vw;
  }
}
.gallery__img-wrap {
  max-width: 23.75rem;
}
.gallery__img {
  aspect-ratio: 380/288;
}
.gallery__item-text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.875rem;
  letter-spacing: 0.02em;
  line-height: 1.4285714286;
  margin-top: 0.5rem;
}

/*

Page : voice.scss

***************************************/
/*

archive-list

***************************************/
.archive-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3.75rem 4.6875rem;
  max-width: 75rem;
  margin: 13.625rem auto 0;
  -webkit-transform: translateX(1rem);
          transform: translateX(1rem);
}
@media (width < 1261px) {
  .archive-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (width < 893px) {
  .archive-list {
    grid-template-columns: 1fr;
  }
}

/*

archive-card

***************************************/
.archive-card {
  border: 1px solid #9D894A;
  padding: 2.4375rem 1.6875rem 2.3125rem;
  height: 100%;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.archive-card:hover {
  opacity: 0.8;
}
.archive-card__img-wrap {
  max-width: 18.375rem;
}
.archive-card__img {
  aspect-ratio: 294/220;
  max-height: 13.75rem;
}
.archive-card__tag {
  display: inline-block;
  font-size: 0.75rem;
  line-height: 1.4166666667;
  padding: 0.25rem 0.625rem;
  margin-top: 1.25rem;
}
.archive-card__title {
  font-size: 1.1875rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.4210526316;
  border-bottom: 1px solid #E2DFD6;
  padding-bottom: 0.75rem;
  margin-top: 0.625rem;
}
.archive-card__text {
  font-size: 0.875rem;
  letter-spacing: 0.02em;
  line-height: 1.8571428571;
  margin-top: 1.4375rem;
}
.archive-card__meta {
  font-size: 0.875rem;
  line-height: 1.4285714286;
  letter-spacing: 0.02em;
  margin-top: 1.3125rem;
}
.archive-card__meta.is-female {
  color: #C27067;
}
.archive-card__meta.is-male {
  color: #3D372C;
}

/*

voice詳細ページ

***************************************/
.voice-content {
  margin-top: 3.75rem;
}
.voice-content__info {
  padding-top: 6.25rem;
}
.voice-content__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.25rem;
  padding-bottom: 0.9375rem;
  border-bottom: 1px solid #E2DFD6;
}
.voice-content__title {
  font-size: 1.1875rem;
  line-height: 1.4210526316;
  letter-spacing: 0.02em;
  font-weight: 500;
}
.voice-content__profile {
  font-size: 0.875rem;
  line-height: 1.4285714286;
  letter-spacing: 0.02em;
  margin-top: 0.5rem;
}
.voice-content__profile-text.is-female {
  color: #C27067;
}
.voice-content__profile-text.is-male {
  color: #3D372C;
}
.voice-content__thumb {
  max-width: 46.25rem;
  margin: 3.75rem auto 0;
}
.voice-content__thumb img {
  aspect-ratio: 750/430;
  max-height: 26.875rem;
}
.voice-content__btn {
  margin: 9.25rem auto 0;
}
.voice-content__container {
  padding-top: 3rem;
  padding-bottom: 9.375rem;
}
.voice-content__container h2 {
  font-size: 1.1875rem;
  line-height: 1.4210526316;
  letter-spacing: 0.02em;
  font-weight: 500;
  padding: 1.125rem 0;
  background-color: #F7F4EA;
  text-align: center;
}
.voice-content__container h2 + h3 {
  margin-top: 2.5rem;
}
.voice-content__container h3 {
  color: #9D894A;
  font-size: 1.125rem;
  line-height: 1.4444444444;
  letter-spacing: 0.02em;
  font-weight: 400;
  position: relative;
  padding-left: 0.875rem;
  margin-top: 3.75rem;
}
.voice-content__container h3::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.625rem;
  width: 0.25rem;
  height: 0.25rem;
  background-color: #9D894A;
  border-radius: 50%;
}
.voice-content__container p {
  font-size: 1rem;
  line-height: 1.875;
  letter-spacing: 0.02em;
  margin-top: 0.8125rem;
}

.voice-comparison {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.5rem;
  max-width: 47.375rem;
  margin: 2.5rem auto 0;
}
.voice-comparison__item {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  text-align: center;
}
.voice-comparison__label {
  font-weight: bold;
  font-family: var(--font-en);
  font-size: 0.875rem;
  color: #666;
}

/*

Page : hyper-knife.scss

***************************************/
/*

sub-mv

***************************************/
.sub-mv__content--hyper-knife {
  -webkit-transform: translate(-50%, calc(-50% + 0.625rem));
          transform: translate(-50%, calc(-50% + 0.625rem));
}
.sub-mv__content--hyper-knife .c-section-title__sub {
  line-height: 1.5384615385;
}

/*

category-nav

***************************************/
.category-nav {
  margin-top: 6.25rem;
}

/*

owner-hyper-knife

***************************************/
/*

Page : contact.scss

***************************************/
/*

contact
***************************************/
.sub-contact {
  padding-top: 6.3125rem;
}
.sub-contact__container {
  padding: 4.25rem 0 9.375rem;
  margin-top: 2.875rem;
}
.sub-contact__text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: 0.02em;
  text-align: center;
}
.sub-contact__wrapper {
  background-color: #fff;
  padding: 3.6875rem 0 11.625rem;
  margin-top: 2.125rem;
}
.sub-contact__form-container {
  max-width: 53.125rem;
  margin: 0 auto;
}
.sub-contact__row {
  margin-top: 1.75rem;
}
.sub-contact__row:first-of-type {
  margin-top: 0;
}
.sub-contact__label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.125rem;
  line-height: 1.4444444444;
  letter-spacing: 0.08em;
}
.sub-contact__required {
  background-color: #C94B4B;
  color: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.875rem;
  line-height: 1.4285714286;
  letter-spacing: 0.02em;
  padding: 0.125rem 0.625rem;
  border-radius: 0.1875rem;
}
.sub-contact__radio-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.0625rem;
  margin-top: 0.9375rem;
}
.sub-contact__input-wrap {
  margin-top: 1.0625rem;
}
.sub-contact__input-wrap--calendar {
  width: 100%;
  margin-left: auto;
}
.sub-contact__input {
  background-color: #fff;
  border: 1px solid #D9D9D9;
  padding: 1.375rem 2.25rem;
  margin-top: 0.9375rem;
  width: 100%;
  cursor: pointer;
}
.sub-contact__input--date {
  font-size: 1.125rem;
  line-height: 1.4444444444;
  letter-spacing: 0.08em;
  font-family: "Zen Kaku Gothic New", sans-serif;
  max-width: 41.1875rem;
  position: relative;
  padding-left: 4.125rem;
  color: #BEBEBE;
}
.sub-contact__input--date.is-active {
  color: #383434;
}
.sub-contact__input--date:first-of-type {
  margin-top: 0;
}
.sub-contact__input::-webkit-input-placeholder {
  color: #BEBEBE;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.125rem;
  line-height: 1.4444444444;
  letter-spacing: 0.08em;
}
.sub-contact__input::-moz-placeholder {
  color: #BEBEBE;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.125rem;
  line-height: 1.4444444444;
  letter-spacing: 0.08em;
}
.sub-contact__input:-ms-input-placeholder {
  color: #BEBEBE;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.125rem;
  line-height: 1.4444444444;
  letter-spacing: 0.08em;
}
.sub-contact__input::-ms-input-placeholder {
  color: #BEBEBE;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.125rem;
  line-height: 1.4444444444;
  letter-spacing: 0.08em;
}
.sub-contact__input::placeholder {
  color: #BEBEBE;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.125rem;
  line-height: 1.4444444444;
  letter-spacing: 0.08em;
}
.sub-contact__date-item-wrap {
  position: relative;
  width: 100%;
}
.sub-contact__date-item-icon {
  position: absolute;
  top: 50%;
  left: 13.75rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.sub-contact__date-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 15px;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.sub-contact__date-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 1.75rem;
  width: 100%;
}
.sub-contact__date-item .wpcf7-form-control-wrap {
  width: 100%;
  max-width: 41.1875rem;
}
.sub-contact__date-label {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: 0.04em;
  white-space: nowrap;
}
.sub-contact__textarea {
  background-color: #fff;
  border: 1px solid #D9D9D9;
  padding: 1.3125rem 2.25rem;
  width: 100%;
  min-height: 11.3125rem;
  vertical-align: bottom;
}
.sub-contact__textarea::-webkit-input-placeholder {
  color: #BEBEBE;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.125rem;
  line-height: 1.4444444444;
  letter-spacing: 0.08em;
}
.sub-contact__textarea::-moz-placeholder {
  color: #BEBEBE;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.125rem;
  line-height: 1.4444444444;
  letter-spacing: 0.08em;
}
.sub-contact__textarea:-ms-input-placeholder {
  color: #BEBEBE;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.125rem;
  line-height: 1.4444444444;
  letter-spacing: 0.08em;
}
.sub-contact__textarea::-ms-input-placeholder {
  color: #BEBEBE;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.125rem;
  line-height: 1.4444444444;
  letter-spacing: 0.08em;
}
.sub-contact__textarea::placeholder {
  color: #BEBEBE;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.125rem;
  line-height: 1.4444444444;
  letter-spacing: 0.08em;
}
.sub-contact__acceptance-check {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1rem;
  letter-spacing: 0.08em;
  line-height: 1;
  position: relative;
  cursor: pointer;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
.sub-contact__check-input[type=checkbox] {
  position: absolute;
  white-space: nowrap;
  width: 1px;
  height: 1px;
  overflow: hidden;
  border: 0;
  padding: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  margin: -1px;
}
.sub-contact__check-input[type=checkbox]:checked + .sub-contact__check::after {
  content: "";
  display: block;
  background-color: #9D894A;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  position: absolute;
  top: 0.46875rem;
  left: 0.46875rem;
}
.sub-contact__check {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: 0.08em;
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 6.1875rem auto 0;
}
.sub-contact__check::before {
  content: "";
  display: inline-block;
  width: 1.9375rem;
  height: 1.9375rem;
  background-color: #fff;
  border: 1px solid #D9D9D9;
  border-radius: 50%;
  margin-right: 1.5rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.sub-contact__check-link {
  color: #9D894A;
  text-decoration: underline;
  text-underline-offset: 1px;
  text-decoration-thickness: 1px;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.sub-contact__check-link:hover {
  opacity: 0.5;
}
.sub-contact__submit {
  display: block;
  margin: 2.75rem auto 0;
  max-width: 23.3125rem;
  width: 100%;
  padding: 1.5rem 0;
  cursor: pointer;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.125rem;
  line-height: 1.4444444444;
  letter-spacing: 0.06em;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  border: 1px solid #9D894A;
  border-radius: 0.1875rem;
  background-color: #9D894A;
  color: #fff;
}
.sub-contact__submit:hover {
  opacity: 0.8;
}
.sub-contact__submit.disabled {
  background-color: #fff;
  border-color: #CBCBCB;
  color: #E5E5E5;
  cursor: not-allowed;
  pointer-events: none;
}

.wpcf7-submit {
  display: block;
  margin: 2.75rem auto 0;
  max-width: 23.3125rem;
  width: 100%;
  padding: 1.5rem 0;
  cursor: pointer;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.125rem;
  line-height: 1.4444444444;
  letter-spacing: 0.06em;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  border: 1px solid #9D894A;
  border-radius: 0.1875rem;
  background-color: #9D894A;
  color: #fff;
}
.wpcf7-submit:hover {
  opacity: 0.8;
}
.wpcf7-submit:disabled {
  background-color: #fff;
  border-color: #CBCBCB;
  color: #E5E5E5;
  cursor: not-allowed;
  pointer-events: none;
}

input[type=radio] {
  display: none;
}

input[type=date]::-webkit-calendar-picker-indicator {
  cursor: pointer;
}

.sub-contact__input--date::-webkit-inner-spin-button {
  -webkit-appearance: none;
}
.sub-contact__input--date::-webkit-clear-button {
  -webkit-appearance: none;
}
.sub-contact__input--date::-webkit-calendar-picker-indicator {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}

.wpcf7-list-item label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
  background-color: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: 0.04em;
  position: relative;
  padding: 1.1875rem;
  border: 1px solid #D9D9D9;
}
.wpcf7-list-item label::before {
  content: "";
  display: inline-block;
  width: 1.875rem;
  height: 1.875rem;
  border: 1px solid #D9D9D9;
  border-radius: 50%;
  background: #fff;
  margin-right: 0.9375rem;
}
.wpcf7-list-item label:has(input[type=radio]:checked)::after {
  content: "";
  display: block;
  width: 1rem;
  height: 1rem;
  background-color: #9D894A;
  border-radius: 50%;
  position: absolute;
  top: 1.625rem;
  left: 1.625rem;
}

/*

Section: thanks-mv

***************************************/
.contact-mv {
  text-align: center;
  padding-bottom: 6.25rem;
}
.contact-mv__desc {
  font-size: 1.125rem;
  font-weight: 300;
  letter-spacing: 0.01em;
  line-height: 2.1111111111;
  margin-top: 1.75rem;
  text-align: center;
  margin-top: 1.25rem;
}
.contact-mv__lv1-heading-svg {
  width: 45.0073125rem;
  height: auto;
}
@media (width < 893px) {
  .contact-mv__lv1-heading-svg {
    width: 18.728125rem;
  }
}
.contact-mv__link-thanks {
  display: block;
  background-color: #9D894A;
  color: #fff;
  font-size: 1.125rem;
  letter-spacing: 0.07em;
  border-radius: 1.4375rem;
  line-height: 1.4444444444;
  padding: 0.625rem 2.625rem;
  margin: 5rem auto 0;
  max-width: 12.5rem;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  text-align: center;
}
@media (width < 893px) {
  .contact-mv__link-thanks {
    font-size: 1.25rem;
    line-height: 1.45;
    margin-top: 4rem;
    max-width: 13.75rem;
  }
}
.contact-mv__link-thanks:hover {
  opacity: 0.7;
}

/*************************************

Page: faq.scss

***************************************/
.faq-page {
  padding-top: 7.375rem;
}
.faq-page + .faq-page {
  padding-top: 9.25rem;
}
.faq-page:last-of-type {
  padding-bottom: 9.25rem;
}
.faq-page__list {
  margin: 3.75rem auto 0;
  max-width: 62.5rem;
}
.faq-page__btn-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.5rem;
  margin-top: 1.25rem;
}
.faq-page__btn-wrapper .c-btn-border {
  gap: 1.75rem;
}
.faq-page__btn-wrapper .c-btn-border__text {
  white-space: nowrap;
}
.faq-page__btn-hotpepper {
  max-width: 24.25rem;
}

/*************************************

Page：privacy-policy.scss

***************************************/
/*

Section: privacy-policy-mv

***************************************/
/*

Section: privacy-policy

***************************************/
.privacy-policy {
  padding-bottom: 7.5rem;
}
@media (width < 893px) {
  .privacy-policy {
    padding-bottom: 5.625rem;
  }
}

.privacy-policy__inner {
  max-width: 56.28125rem;
  margin: 0 auto;
}
@media (width < 1261px) {
  .privacy-policy__inner {
    max-width: 90%;
  }
}
@media (width < 576px) {
  .privacy-policy__inner {
    max-width: 85.2417302799%;
  }
}

.privacy-policy__ttl {
  color: #9D894A;
  font-size: 1.125rem;
  letter-spacing: 0.08em;
  line-height: 2;
  margin-top: 1.5rem;
  padding-bottom: 0.625rem;
  border-bottom: 1px solid #9D894A;
}

.privacy-policy__text {
  color: #3D372C;
  font-size: 1rem;
  font-weight: 300;
  letter-spacing: 0.06em;
  line-height: 1.75;
  margin-top: 0.625rem;
  font-weight: 300;
  overflow-wrap: break-word;
}
.privacy-policy__text:nth-of-type(1) {
  margin-top: 0;
}

.news-list-container {
  max-width: 56.25rem;
  margin: 0 auto 5rem;
}

.news-list__list {
  margin-bottom: 5rem;
}

.news-list__item {
  background-color: #F2F2F2;
  margin-top: 1.25rem;
}
.news-list__item:first-of-type {
  margin-top: 0;
}

.news-list__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.5rem;
  padding: 1.1875rem 1.875rem;
}

.news-list__time {
  font-size: 1.125rem;
  letter-spacing: 0.04em;
  line-height: 1.4444444444;
  font-weight: 300;
}

.news-list__text {
  font-size: 1rem;
  letter-spacing: 0.04em;
  line-height: 1.5;
  font-weight: 400;
}

.news-pagination {
  margin: 5rem 0;
  text-align: center;
}

.news-pagination__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 3.125rem;
}

.news-pagination__all {
  color: #9D894A;
  font-size: 1.25rem;
  letter-spacing: 0.08em;
  line-height: 1.5;
  font-weight: 500;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.news-pagination__all:hover {
  opacity: 0.7;
}

.news-pagination__arrow {
  position: relative;
  display: inline-block;
  width: 1.171875rem;
  height: 1.5px;
  border-radius: 9999px;
  background-color: #9D894A;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.news-pagination__arrow::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2.5rem;
  height: 2.5rem;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background: transparent;
  cursor: pointer;
}
.news-pagination__arrow .news-pagination__arrow-line {
  width: 1.25rem;
  height: 1.5px;
  border-radius: 9999px;
  background-color: #9D894A;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.news-pagination__arrow .news-pagination__arrow-line::before, .news-pagination__arrow .news-pagination__arrow-line::after {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  right: 0;
  width: 10px;
  height: 1.5px;
  border-radius: 9999px;
  background-color: inherit;
  -webkit-transform-origin: calc(100% - 1px) 50%;
          transform-origin: calc(100% - 1px) 50%;
}
.news-pagination__arrow .news-pagination__arrow-line::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.news-pagination__arrow .news-pagination__arrow-line::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.news-pagination__arrow:hover {
  opacity: 0.7;
}

.news-pagination__arrow--prev {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

/*************************************

Page：404.scss

***************************************/
.error404 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  padding: 14.5rem 1.25rem 8rem;
}
.error404__inner {
  max-width: 600px;
  margin: 0 auto;
}
.error404__ttl {
  font-size: 3rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  color: #9D894A;
  margin-bottom: 1.5rem;
  line-height: 1.2;
  position: relative;
}
.error404__ttl::after {
  content: "";
  display: block;
  width: 60px;
  height: 2px;
  background-color: #333;
  margin: 1.25rem auto 0;
}
.error404__text {
  font-size: 1.125rem;
  color: #555;
  line-height: 1.8;
  margin-bottom: 2.5rem;
}

/********************************

Page：top-page.scss

********************************/
/*

Section : mv

***************************************/
:root {
  --main-copy-overlap: 149;
  --bg-decoration-overlap: 94;
}
@media (width < 1261px) {
  :root {
    --main-copy-overlap: 120;
    --bg-decoration-overlap: 40;
  }
}

.mv {
  padding-top: 7.5625rem;
  width: 100%;
}
@media (width < 1261px) {
  .mv {
    padding-top: 2.5rem;
  }
}
.mv__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
  position: relative;
}
.mv__sidebar {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 10%;
          flex: 0 0 10%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 8.8vw;
  margin-bottom: auto;
}
@media (width < 1261px) {
  .mv__sidebar {
    margin-top: 6.8vw;
  }
}
@media (width < 893px) {
  .mv__sidebar {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 20%;
            flex: 0 0 20%;
    margin-top: 12vw;
  }
}
.mv__vertical-text {
  color: #9D894A;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  font-family: "Forum", serif;
  font-size: 0.8125rem;
  letter-spacing: 0.14em;
  line-height: 1.0769230769;
  margin-left: -1rem;
}
.mv__vertical-text span {
  display: block;
  margin-bottom: 1.25rem;
}
.mv__slider-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 90%;
  position: relative;
}
@media (width < 893px) {
  .mv__slider-container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 80%;
  }
}
.mv__slider {
  width: 50%;
}
@media (width < 893px) {
  .mv__slider {
    width: 100%;
  }
}
.mv__slide-item {
  width: 100%;
  overflow: hidden;
  position: relative;
}
.mv__slide-item::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(61, 55, 44, 0.3);
  pointer-events: none;
  z-index: 5;
}
.mv__slide-item img {
  aspect-ratio: 675/618;
  width: 100%;
  height: 100%;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: -webkit-transform 4.5s linear;
  transition: -webkit-transform 4.5s linear;
  transition: transform 4.5s linear;
  transition: transform 4.5s linear, -webkit-transform 4.5s linear;
}
.mv__main-copy {
  color: #fff;
  position: relative;
  z-index: 10;
  margin-top: calc(var(--main-copy-overlap) / 16 * 1rem * -1);
  margin-left: 14vw;
}
@media (width < 1261px) {
  .mv__main-copy {
    margin-left: 12vw;
  }
}
@media (width < 893px) {
  .mv__main-copy {
    color: #3D372C;
    padding-right: 0.5rem;
    margin-top: 1.1875rem;
    margin-left: 23vw;
  }
}
.mv__title {
  font-size: 3.4vw;
  font-weight: 400;
  line-height: 1.4509803922;
}
@media (width < 893px) {
  .mv__title {
    font-size: 1.8125rem;
    line-height: 1.4482758621;
  }
}
@media (width < 576px) {
  .mv__title {
    font-size: clamp(1.25rem, 3.8vw, 1.8125rem);
  }
}
.mv__title-quote {
  font-size: 2.466vw;
  line-height: 1.4594594595;
  vertical-align: top;
}
@media (width < 893px) {
  .mv__title-quote {
    font-size: 1.375rem;
    line-height: 1.4545454545;
  }
}
@media (width < 893px) {
  .mv__title-quote:first-of-type {
    margin-left: -1.375rem;
  }
}
@media (width < 576px) {
  .mv__title-quote:first-of-type {
    margin-left: -1.1875rem;
  }
}
.mv__title-main {
  margin-left: -0.875rem;
}
@media (width < 893px) {
  .mv__title-main {
    margin-left: 0;
  }
}
.mv__title-suffix {
  margin-left: -3px;
}
.mv__lead {
  font-size: 1.375rem;
  font-weight: 300;
  letter-spacing: 0.06em;
  line-height: 1.4545454545;
  padding-left: 1.4vw;
  margin-top: 4px;
}
@media (width < 1261px) {
  .mv__lead {
    padding-left: 0.4vw;
  }
}
@media (width < 893px) {
  .mv__lead {
    font-size: 1.0625rem;
    line-height: 1.6470588235;
    margin-top: 0.8125rem;
  }
}
@media (width < 576px) {
  .mv__lead {
    padding-left: 0;
  }
}
.mv__badge {
  position: absolute;
  right: 2.66vw;
  bottom: -6.8125rem;
  z-index: 10;
  max-width: 10rem;
}
@media (width < 1261px) {
  .mv__badge {
    max-width: 6.25rem;
    right: 1.66vw;
    bottom: -4.9375rem;
  }
}
@media (width < 893px) {
  .mv__badge {
    display: none;
  }
}
.mv__badge img {
  aspect-ratio: 1/1;
}
.mv__bg-decoration {
  margin-top: calc(var(--bg-decoration-overlap) / 16 * 1rem * -1);
}
.mv__bg-decoration img {
  aspect-ratio: 1500/468;
}

@-webkit-keyframes zoomUp {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.15);
            transform: scale(1.15);
  }
}

@keyframes zoomUp {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.15);
            transform: scale(1.15);
  }
}
.add-animation {
  -webkit-animation: zoomUp 10s linear 0s normal both;
          animation: zoomUp 10s linear 0s normal both;
}

/*

Section : concept

***************************************/
.concept__decor-wrapper {
  padding-top: 0.375rem;
  max-width: 3.125rem;
  margin: 0 auto;
}
.concept__decor {
  aspect-ratio: 1/1;
}
.concept__container {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 11.8vw;
  margin-top: 1.9375rem;
}
@media (width < 1261px) {
  .concept__container {
    grid-template-columns: 6.59fr 6.64fr;
    gap: 6.25cqi;
  }
}
@media (width < 893px) {
  .concept__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: 4.375rem;
  }
}
.concept__visual-group {
  display: grid;
  grid-template-columns: auto auto;
  grid-template-rows: auto auto;
  gap: 1.5625rem 1.3125rem;
}
.concept__img-item--top {
  grid-column: 1/3;
  max-width: 29.5625rem;
  margin: 0 auto;
  -webkit-transform: translateX(-7px);
          transform: translateX(-7px);
}
@media (width < 893px) {
  .concept__img-item--top {
    max-width: 71.7289719626vw;
  }
}
.concept__img-item--top .concept__img {
  aspect-ratio: 473/305;
}
.concept__img-item--left-bottom {
  grid-column: 2/1;
  grid-row: 2/3;
  max-width: 21.625rem;
  margin-top: 2.625rem;
}
@media (width < 893px) {
  .concept__img-item--left-bottom {
    max-width: 44.8598130841vw;
  }
}
.concept__img-item--left-bottom .concept__img {
  aspect-ratio: 346/515;
}
.concept__img-item--right-bottom {
  grid-column: 2/3;
  grid-row: 2/3;
  max-width: 18.25rem;
}
@media (width < 893px) {
  .concept__img-item--right-bottom {
    max-width: 52.1028037383vw;
  }
}
.concept__img-item--right-bottom .concept__img {
  aspect-ratio: 292/225;
}
.concept__small-text {
  color: #766F69;
  font-family: "Forum", serif;
  font-size: 0.8125rem;
  letter-spacing: 0.14em;
  line-height: 1.7692307692;
  margin-top: 1.25rem;
  text-align: right;
}
.concept__content-group {
  padding-top: 3.5625rem;
}
@media (width < 1261px) {
  .concept__content-group {
    padding-top: 1.75rem;
    padding-right: 8px;
  }
}
@media (width < 893px) {
  .concept__content-group {
    padding-right: 0;
    max-width: 43.75rem;
    margin: 0 auto;
  }
}
@media (width < 576px) {
  .concept__content-group {
    max-width: none;
    padding: 3.5625rem 1.875rem 0;
  }
}
.concept__text-group {
  margin-top: 3.5rem;
}
@media (width < 1261px) {
  .concept__text-group {
    margin-top: 1.875rem;
  }
}
.concept__text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.0625rem;
  line-height: 2.1176470588;
  letter-spacing: 0.02em;
  margin-top: 2.25rem;
}
@media (width < 1261px) {
  .concept__text {
    margin-top: 1.25rem;
  }
}
.concept__text:first-of-type {
  margin-top: 0;
}
.concept__btn-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.75rem;
  margin-top: 3.9375rem;
}
@media (width < 1261px) {
  .concept__btn-wrapper {
    gap: 1.25rem;
    margin-top: 1.875rem;
  }
}
@media (width < 576px) {
  .concept__btn {
    margin: 0 auto;
  }
}

/*

Section : menu

***************************************/
:root {
  --menu-overlap: 98;
}
@media (width < 1261px) {
  :root {
    --menu-overlap: 60;
  }
}
@media (width < 893px) {
  :root {
    --menu-overlap: -36;
  }
}

.menu {
  background-color: #F7F4EA;
  margin-top: calc(var(--menu-overlap) / 16 * 1rem * -1);
  padding-top: 7.5rem;
}
@media (width < 893px) {
  .menu {
    padding-top: 10.5625rem;
  }
}
@media (width < 576px) {
  .menu {
    padding-top: 10.5625rem;
  }
}
.menu__inner {
  border-bottom: 1px solid #9D894A;
  padding-bottom: 6.125rem;
}
@media (width < 893px) {
  .menu__inner {
    padding-bottom: 22.8971962617vw;
    max-width: 81.7757009346vw;
  }
}
.menu__category {
  padding: 0.125rem 0.625rem;
}
.menu__title {
  text-align: center;
}
.menu__title::before {
  content: "";
  top: 2.1875rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.menu__title-sub {
  margin-top: 1.5625rem;
}
.menu__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4.6875rem;
  margin-top: 3.75rem;
}
@media (width < 1261px) {
  .menu__list {
    gap: 3.25cqi;
  }
}
@media (width < 893px) {
  .menu__list {
    grid-template-columns: repeat(1, 1fr);
    margin-top: 13.785046729vw;
    gap: 10.046728972vw;
  }
}
@media (width < 576px) {
  .menu__list {
    gap: 2.6875rem;
    margin-top: 3.6875rem;
  }
}
.menu__item {
  max-width: 21.875rem;
}
@media (width < 893px) {
  .menu__item {
    max-width: 81.7757009346vw;
    margin: 0 auto;
  }
}
@media (width < 576px) {
  .menu__item {
    max-width: 21.875rem;
  }
}
.menu__item-img {
  aspect-ratio: 350/258;
}
.menu__item-body {
  margin-top: 1.125rem;
}
.menu__item-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.menu__item-title {
  font-size: 1.1875rem;
  font-weight: 600;
  line-height: 1.4210526316;
  letter-spacing: 0.02em;
  margin-top: 1.125rem;
}
.menu__item-text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.875rem;
  line-height: 1.8571428571;
  letter-spacing: 0.02em;
  margin-top: 0.9375rem;
}
.menu__category {
  color: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.875rem;
  letter-spacing: 0.02em;
  line-height: 1.4285714286;
  background-color: #B78681;
  padding: 0.25rem 0.625rem;
}
.menu__category--men {
  background-color: #6C6559;
}
.menu__target {
  color: #B78681;
  font-family: "Forum", serif;
  font-size: 0.875rem;
  letter-spacing: 0.03em;
  line-height: 1.0714285714;
}
.menu__target--men {
  color: #69645C;
}

/*

all-menu

***************************************/
.all-menu {
  background-color: #F7F4EA;
  padding: 7.375rem 0 9.375rem;
}
@media (width < 893px) {
  .all-menu__inner {
    max-width: 92.9906542056vw;
  }
}
.all-menu__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 5.875rem 5rem;
  margin-top: 4.3125rem;
}
@media (width < 1261px) {
  .all-menu__grid {
    grid-template-columns: 1fr;
    gap: 3.6875rem;
  }
}
@media (width < 893px) {
  .all-menu__grid {
    margin-top: 3.625rem;
  }
}
.all-menu__block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.5625rem;
}
@media (width < 893px) {
  .all-menu__block {
    gap: 6.5420560748vw;
  }
}
.all-menu__block:nth-of-type(2) .all-menu__item-title, .all-menu__block:nth-of-type(4) .all-menu__item-title {
  margin-top: 0.9375rem;
}
.all-menu__content {
  display: grid;
  grid-template-columns: 3.28fr 2.09fr;
  gap: 1.4375rem;
}
.all-menu__img-wrap {
  margin-top: auto;
}
.all-menu__img {
  aspect-ratio: 209/213;
}
@media (width < 893px) {
  .all-menu__img {
    aspect-ratio: 179/182;
  }
}
.all-menu__target {
  color: #B78681;
  font-family: "Forum", serif;
  font-size: 0.875rem;
  letter-spacing: 0.05em;
  line-height: 1.0714285714;
}
.all-menu__category-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.625rem 0.9375rem;
  margin-top: 1.25rem;
}
.all-menu__category {
  background-color: #B78681;
  color: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.875rem;
  padding: 0.25rem 0.625rem;
  letter-spacing: 0.02em;
}
.all-menu__item-title {
  font-size: 1.1875rem;
  font-weight: 600;
  line-height: 1.4210526316;
  letter-spacing: 0.02em;
  margin-top: 0.625rem;
  color: #9D894A;
}
@media (width < 893px) {
  .all-menu__item-title {
    margin-top: 1.125rem;
  }
}
.all-menu__item-text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.875rem;
  line-height: 1.8571428571;
  letter-spacing: 0.02em;
  margin-top: 0.9375rem;
  color: #9D894A;
}
.all-menu__btn-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.5rem;
  width: 100%;
}
@media (width < 893px) {
  .all-menu__btn-wrapper {
    gap: 0.3125rem;
  }
}
.all-menu__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  font-size: 0.875rem;
  letter-spacing: 0.02em;
  line-height: 1.4285714286;
  background-color: #fff;
  padding: 1.09375rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (width < 893px) {
  .all-menu__btn {
    padding: 1.40625rem 0.5rem;
  }
}
.all-menu__btn-text {
  color: #9D894A;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.875rem;
  letter-spacing: 0.02em;
  margin-left: 0.9375rem;
}
.all-menu__btn:hover {
  background-color: #9D894A;
}
.all-menu__btn:hover .c-kunoji::before, .all-menu__btn:hover .c-kunoji::after {
  background-color: #fff;
}
.all-menu__btn:hover .all-menu__btn-text {
  color: #fff;
  border-color: #fff;
}

/*

voice

***************************************/
.voice {
  background: url(../img/layout/top-page/bg-voice.jpg) no-repeat center center/cover;
  padding: 9rem 0 32.0625rem;
}
@media (width < 893px) {
  .voice {
    padding: 7.375rem 0 18.75rem;
  }
}
@media (width < 576px) {
  .voice {
    padding: 27.5700934579vw 0 70.0934579439vw;
  }
}
.voice__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3.4375rem;
  margin-top: 4.875rem;
}
@media (width < 1261px) {
  .voice__grid {
    grid-template-columns: 1fr;
  }
}
@media (width < 893px) {
  .voice__grid {
    margin-top: 3.75rem;
  }
}
@media (width < 576px) {
  .voice__grid {
    margin-top: 14.0186915888vw;
    gap: 11.9158878505vw;
  }
}
.voice__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.8125rem;
  background-color: rgba(255, 255, 255, 0.4);
  border: 1px solid #C3B897;
  padding: 3.375rem 1.8125rem;
}
@media (width < 893px) {
  .voice__box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 4.6728971963vw;
  }
}
.voice__content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.voice__category {
  display: inline-block;
  background-color: #B78681;
  color: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.75rem;
  padding: 0.25rem 0.625rem;
  letter-spacing: 0.02em;
}
.voice__item-title {
  font-size: 1.1875rem;
  font-weight: 500;
  line-height: 1.4210526316;
  letter-spacing: 0.02em;
  border-bottom: 1px solid #E2DFD6;
  padding-bottom: 0.75rem;
  margin-top: 0.5625rem;
}
.voice__item-text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.875rem;
  line-height: 1.8571428571;
  letter-spacing: 0.02em;
  margin-top: 1.3125rem;
}
.voice__item-meta {
  color: #A1473D;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.875rem;
  line-height: 1.8571428571;
  letter-spacing: 0.02em;
  margin-top: 1.125rem;
}
.voice__img-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 0.1875rem;
}
@media (width < 893px) {
  .voice__img-container {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.voice__img-unit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.3125rem;
}
.voice__img-label {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.875rem;
  line-height: 1.4285714286;
  color: #9D894A;
  font-weight: 300;
  letter-spacing: 0.02em;
}
.voice__img-wrap {
  max-width: 7.8125rem;
}
.voice__img {
  aspect-ratio: 125/271;
}
.voice__img-arrow {
  position: relative;
  width: 1.25rem;
  height: 16.9375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.voice__img-arrow::before {
  content: "";
  position: absolute;
  width: 0.75rem;
  height: 1.5px;
  background-color: #9D894A;
  left: 0.25rem;
}
.voice__img-arrow::after {
  content: "";
  position: absolute;
  right: 1px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.1875rem 0 0.1875rem 0.25rem;
  border-color: transparent transparent transparent #9D894A;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media (width < 893px) {
  .voice__img-arrow {
    width: 1.25rem;
    height: 100%;
  }
}
.voice__btn {
  margin: 4.375rem auto 0;
}

/*

Section : trouble

***************************************/
:root {
  --trouble-overlap: 344;
}

.trouble {
  background-color: #F7F4EA;
  padding: 7.5rem 0 9.375rem;
  margin-top: calc(var(--trouble-overlap) / 16 * -1rem);
}
@media (width < 1261px) {
  .trouble {
    padding-top: 9.375rem;
    border-radius: 150px 0 0 0;
  }
}
@media (width < 893px) {
  .trouble {
    padding: 7.5rem 0 10.8125rem;
    margin-top: -7.5rem;
  }
}
@media (width < 576px) {
  .trouble {
    padding-top: 28.0373831776vw;
    margin-top: -39.7196261682vw;
  }
}
.trouble__inner {
  display: grid;
  grid-template-columns: 25.2666666667vw auto;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 5.6666666667vw;
  padding-right: 0.5rem;
}
@media (width < 1261px) {
  .trouble__inner {
    grid-template-columns: 1fr;
    gap: 0;
    padding: 0 1.8691588785vw;
    max-width: 55.375rem;
    margin: 0 auto;
  }
}
@media (width < 893px) {
  .trouble__inner {
    padding: 0 1.5625rem;
  }
}
@media (width < 576px) {
  .trouble__inner {
    padding: 0 5.8411214953vw;
  }
}
.trouble__main-img-wrap {
  max-width: 23.6875rem;
}
@media (width < 1261px) {
  .trouble__main-img-wrap {
    display: none;
  }
}
.trouble__main-img {
  aspect-ratio: 379/511;
}
@media (width < 893px) {
  .trouble__title {
    text-align: center;
  }
  .trouble__title::before {
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
.trouble__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.8125rem 1.25rem;
  margin-top: 4.4375rem;
  max-width: 55.375rem;
}
@media (width < 893px) {
  .trouble__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 3.125rem 2.4375rem;
    margin-top: 8.1775700935vw;
  }
}
@media (width < 576px) {
  .trouble__grid {
    gap: 11.6822429907vw 9.1121495327vw;
  }
}
.trouble__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media (width < 893px) {
  .trouble__item:nth-of-type(2n) {
    position: relative;
  }
  .trouble__item:nth-of-type(2n)::before {
    content: "";
    position: absolute;
    top: -1.375rem;
    left: -1.15625rem;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 1px;
    height: 19.875rem;
    background-color: #E2DFD6;
  }
}
.trouble__item-name {
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.4444444444;
  letter-spacing: 0.02em;
  text-align: center;
  margin-top: 1.3125rem;
}
.trouble__img-wrap {
  max-width: 5.125rem;
}
.trouble__img {
  aspect-ratio: 1/1;
}
.trouble__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  background-color: #fff;
  padding: 1.09375rem 0.5rem 1.09375rem 13.309352518%;
  margin-top: 2px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.trouble__btn:first-of-type {
  margin-top: 1.0625rem;
}
.trouble__btn-text {
  color: #9D894A;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  letter-spacing: 0.02em;
  line-height: 1.5;
  margin-left: 0.9375rem;
}
.trouble__btn-icon {
  width: 0.375rem;
  height: 0.375rem;
  border-top: 1px solid #9D894A;
  border-right: 1px solid #9D894A;
  -webkit-transform: rotate(40deg);
          transform: rotate(40deg);
}
.trouble__btn:hover {
  background-color: #9D894A;
}
.trouble__btn:hover .trouble__btn-text,
.trouble__btn:hover .trouble__btn-icon {
  color: #fff;
  border-color: #fff;
}

/*

about

***************************************/
.about {
  background: url(../img/layout/top-page/bg-about.jpg) no-repeat center center/cover;
  padding: 7.5rem 0 9.6875rem;
}
@media (width < 576px) {
  .about {
    padding: 28.0373831776vw 0 10.7476635514vw;
  }
}
.about__inner {
  max-width: 66.25rem;
  margin: 0 auto;
}
@media (width < 1261px) {
  .about__inner {
    max-width: 90%;
  }
}
@media (width < 893px) {
  .about__inner {
    max-width: 77.1028037383vw;
  }
}
.about__lead {
  text-align: center;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  line-height: 1.875;
  letter-spacing: 0.02em;
  margin-top: 3.625rem;
}
@media (width < 893px) {
  .about__lead {
    text-align: left;
    font-size: 1.0625rem;
    line-height: 2.1176470588;
    margin-top: 3.75rem;
  }
}
@media (width < 576px) {
  .about__lead {
    margin-top: 7.0093457944vw;
  }
}
.about__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.875rem;
  margin-top: 2.8125rem;
}
@media (width < 893px) {
  .about__grid {
    grid-template-columns: 1fr;
    gap: 4.6728971963vw;
    margin-top: 9.3457943925vw;
  }
}
.about__card {
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.about__card:hover {
  opacity: 0.8;
}
.about__card:hover .about__card-btn {
  background-color: #9D894A;
  color: #fff;
}
.about__card:hover .about__card-btn .c-arrow {
  background-color: #fff;
}
.about__card:hover .about__card-btn .c-arrow::before, .about__card:hover .about__card-btn .c-arrow::after {
  background-color: #fff;
}
.about__card-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border: 1px solid #9D894A;
  border-top: none;
}
.about__card-img {
  width: 100%;
  aspect-ratio: 333/230;
  overflow: hidden;
}
.about__card-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
.about__card-btn {
  color: #9D894A;
  border: none;
  padding: 1.25rem 1.84375rem 1.1875rem 1.8125rem;
  max-width: 100%;
}
.about__card-btn .c-arrow {
  background-color: #9D894A;
}
.about__card-btn .c-arrow::before, .about__card-btn .c-arrow::after {
  background-color: #9D894A;
}

/*

section : news

***************************************/
.news {
  padding: 6.875rem 0 9.875rem;
  background-color: #fff;
}
@media (width < 893px) {
  .news {
    padding: 23.8317757009vw 0 35.046728972vw;
  }
}
.news__container {
  display: grid;
  grid-template-columns: 17.5rem auto;
  gap: 11.3333333333vw;
}
@media (width < 1261px) {
  .news__container {
    gap: 2.5rem;
  }
}
@media (width < 893px) {
  .news__container {
    display: block;
  }
}
.news__btn {
  margin: 4.625rem auto 0;
  max-width: 17.5rem;
}
@media (width < 893px) {
  .news__btn {
    display: none;
  }
}
.news__btn--mobile {
  display: none;
}
@media (width < 893px) {
  .news__btn--mobile {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 16.1214953271vw auto 0;
  }
}
.news__list {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media (width < 893px) {
  .news__list {
    margin-top: 13.785046729vw;
  }
}
.news__item-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 1.125rem 1.03125rem 1.125rem 0.8125rem;
  border-bottom: 1px solid #9D894A;
}
.news__item-link:hover .news__item-date {
  opacity: 0.5;
}
.news__item-link:hover .news__item-text {
  opacity: 0.5;
}
.news__item-link:hover .news__item-arrow {
  -webkit-transform: translateX(0.625rem);
          transform: translateX(0.625rem);
}
.news__item:first-of-type .news__item-link {
  padding-top: 0;
}
.news__item-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.3125rem;
}
.news__item-date {
  color: #ACA9A2;
  font-family: "ryo-gothic-plusn", sans-serif;
  font-size: 0.875rem;
  line-height: 1;
  letter-spacing: 0.02em;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.news__item-text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: 0.02em;
  padding-right: 0.625rem;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.news__item-arrow {
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
.news__item-arrow .c-arrow {
  background-color: #9D894A;
}
.news__item-arrow .c-arrow::before, .news__item-arrow .c-arrow::after {
  background-color: #9D894A;
}

/*

reserve

***************************************/
.reserve {
  position: relative;
  background-color: #69645C;
  padding: 6.25rem 0 9.375rem;
  z-index: 1;
  overflow: hidden;
}
@media (width < 893px) {
  .reserve {
    max-width: 100%;
  }
}
.reserve::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 28.75rem;
  height: auto;
  aspect-ratio: 460/421;
  background: url(../img/layout/top-page/reserve-bg.png) no-repeat center center/cover;
  z-index: -1;
}
@media (width < 893px) {
  .reserve::before {
    width: 48.8317757009vw;
  }
}
@media (width < 1261px) {
  .reserve__inner {
    max-width: 97%;
  }
}
@media (width < 893px) {
  .reserve__inner {
    max-width: 85.9813084112vw;
  }
}
.reserve__title {
  color: #fff;
}
.reserve__title::before {
  background: #fff;
}
.reserve__title-sub {
  color: #fff;
  letter-spacing: 0.06em;
}
.reserve__btn-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 3.75rem;
  margin-top: 3.625rem;
}
@media (width < 1261px) {
  .reserve__btn-wrapper {
    gap: 1.875rem;
  }
}
@media (width < 893px) {
  .reserve__btn-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.875rem;
    margin-top: 13.2242990654vw;
  }
}
.reserve__btn {
  display: block;
  width: 100%;
  max-width: 28.4375rem;
  background-color: #fff;
  padding: 5px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (width < 893px) {
  .reserve__btn {
    padding: 4px;
  }
}
.reserve__btn-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 2.5625rem 1.125rem;
  border: 1px solid #9D894A;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (width < 893px) {
  .reserve__btn-inner {
    padding: 1.96875rem 0.9375rem;
  }
}
.reserve__btn-icon-circle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  background-color: #9D894A;
  border-radius: 50%;
  width: 3.3125rem;
  height: 3.3125rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (width < 893px) {
  .reserve__btn-icon-circle {
    width: 2.795625rem;
    height: 2.795625rem;
  }
}
.reserve__btn-icon-circle svg {
  fill: #fff;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.reserve__btn-content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-left: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.75rem;
}
@media (width < 893px) {
  .reserve__btn-content {
    gap: 0.83125rem;
    margin-left: 0.8125rem;
  }
}
.reserve__btn-main-text {
  color: #9D894A;
  font-size: 1.375rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.4545454545;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.reserve__btn-badge {
  display: inline-block;
  color: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  letter-spacing: 0.02em;
  line-height: 1.5;
  background-color: #9D894A;
  border-radius: 1.0625rem;
  padding: 0.25rem 1rem 0.3125rem;
  margin: auto 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (width < 893px) {
  .reserve__btn-badge {
    font-size: 0.8125rem;
    line-height: 1.4615384615;
  }
}
.reserve__btn .c-arrow {
  margin-left: auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (width < 893px) {
  .reserve__btn .c-arrow {
    width: 1.1125rem;
  }
}
.reserve__btn:hover {
  opacity: 0.9;
}
.reserve__btn:hover .reserve__btn-inner {
  background-color: #9D894A;
}
.reserve__btn:hover .reserve__btn-main-text,
.reserve__btn:hover .reserve__btn-badge {
  color: #fff;
}
.reserve__btn:hover .reserve__btn-badge {
  background-color: #fff;
  color: #9D894A;
}
.reserve__btn:hover .reserve__btn-icon-circle {
  background-color: #fff;
}
.reserve__btn:hover .reserve__btn-icon-circle svg {
  fill: #9D894A;
}
.reserve__btn:hover .c-arrow {
  background-color: #fff;
}
.reserve__btn:nth-of-type(1) .reserve__btn-inner {
  border-color: #A1473D;
}
.reserve__btn:nth-of-type(1) .reserve__btn-icon-circle {
  background-color: #C27067;
}
.reserve__btn:nth-of-type(1) .reserve__btn-main-text {
  color: #A1473D;
}
.reserve__btn:nth-of-type(1) .reserve__btn-badge {
  background-color: #C27067;
}
.reserve__btn:nth-of-type(1) .c-arrow {
  background-color: #A1473D;
}
.reserve__btn:nth-of-type(1) .c-arrow::before, .reserve__btn:nth-of-type(1) .c-arrow::after {
  background-color: #A1473D;
}
.reserve__btn:nth-of-type(1):hover .reserve__btn-inner {
  background-color: #A1473D;
}
.reserve__btn:nth-of-type(1):hover .reserve__btn-main-text,
.reserve__btn:nth-of-type(1):hover .reserve__btn-badge {
  color: #fff;
}
.reserve__btn:nth-of-type(1):hover .reserve__btn-badge {
  background-color: #fff;
  color: #A1473D;
}
.reserve__btn:nth-of-type(1):hover .reserve__btn-icon-circle {
  background-color: #fff;
}
.reserve__btn:nth-of-type(1):hover .reserve__btn-icon-circle svg {
  fill: #A1473D;
}
.reserve__btn:nth-of-type(1):hover .c-arrow {
  background: #fff;
}
.reserve__btn:nth-of-type(1):hover .c-arrow::before, .reserve__btn:nth-of-type(1):hover .c-arrow::after {
  background: #fff;
}

/*

access

***************************************/
.access {
  background-color: #F7F4EA;
  padding: 6.25rem 0 6.9375rem;
}
@media (width < 893px) {
  .access {
    padding: 27.5700934579vw 0 35.046728972vw;
  }
}
.access__container {
  display: grid;
  grid-template-columns: 7.51fr 4.29fr;
  gap: 1.25rem;
  margin-top: 4.125rem;
}
@media (width < 1261px) {
  .access__container {
    grid-template-columns: 1fr;
    gap: 0.625rem;
    margin-top: 4.125rem;
  }
}
@media (width < 893px) {
  .access__container {
    margin-top: 3.625rem;
  }
}
.access__info-block {
  background-color: #fff;
  padding: 2.625rem 3.125rem 2.375rem;
}
@media (width < 893px) {
  .access__info-block {
    padding: 9.8130841121vw 8.1775700935vw 7.0093457944vw;
  }
}
.access__sns-block {
  background-color: #fff;
  padding: 2.5rem;
}
@media (width < 893px) {
  .access__sns-block {
    padding: 9.3457943925vw 8.1775700935vw 10.5841121495vw;
  }
}
.access__address {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.02em;
  margin-top: 0.25rem;
}
.access__address:first-of-type {
  margin-top: 0;
}
.access__route {
  margin-top: 1.875rem;
}
@media (width < 893px) {
  .access__route {
    margin-top: 1.25rem;
  }
}
.access__route:nth-of-type(2) .access__text {
  line-height: 1.8571428571;
}
.access__label {
  display: inline-block;
  background-color: #69645C;
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #fff;
  font-size: 0.875rem;
  line-height: 1.4285714286;
  padding: 4px 10px;
  letter-spacing: 0.02em;
}
.access__text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.875rem;
  line-height: 1.4285714286;
  letter-spacing: 0.02em;
  margin-top: 0.5rem;
}
.access__map-wrap {
  margin-top: 1.875rem;
  width: 100%;
  aspect-ratio: 6.51/3.78;
}
@media (width < 893px) {
  .access__map-wrap {
    margin-top: 1.25rem;
  }
}
.access__map-wrap iframe {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (width < 893px) {
  .access__map-wrap {
    margin-top: 4.6728971963vw;
  }
}
.access__insta-video {
  width: 100%;
  height: 37.5rem;
  max-width: 23.25rem;
  margin: 0 auto;
  overflow: hidden;
}
@media (width < 893px) {
  .access__insta-video {
    max-width: 69.8598130841vw;
  }
}
.access__insta-video iframe {
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  height: 30.305rem !important;
  margin: 0 !important;
  padding: 0 !important;
}
.access__insta-video .instagram-media {
  width: 100% !important;
  min-width: 100% !important;
  margin: 0 !important;
}

/********************************

Page：header.scss

********************************/
.l-header {
  background-color: #fff;
  position: relative;
  z-index: 100;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
}
.l-header__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-left: 1.875rem;
}
@media (width < 1261px) {
  .l-header__inner {
    padding: 0 1.875rem;
  }
}
@media (width < 576px) {
  .l-header__inner {
    padding: 0 0.9375rem;
  }
}
.l-header__logo {
  -ms-flex-negative: 1;
      flex-shrink: 1;
  min-width: 0;
}
.l-header__logo-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-decoration: none;
  margin-top: 5px;
  margin-bottom: 9px;
}
.l-header__logo-img {
  aspect-ratio: 94/56;
  max-width: 5.875rem;
  -ms-flex-negative: 1;
      flex-shrink: 1;
  min-width: 0;
}
.l-header__logo-text {
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1.5;
  margin-top: 2px;
  margin-left: 1.25rem;
  white-space: nowrap;
}
.l-header__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (width < 1261px) {
  .l-header__nav {
    display: none;
  }
}
.l-header__nav-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 4px;
}
.l-header__nav-item {
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.5;
  position: relative;
  padding-bottom: 0.75rem;
  margin-left: 2.06vw;
}
.l-header__nav-item a {
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  white-space: nowrap;
}
.l-header__nav-item a:hover {
  opacity: 0.7;
}
.l-header__nav-item:hover .l-header__sub-nav {
  opacity: 1;
  visibility: visible;
}
.l-header__nav-item:hover .l-header__nav-dot {
  background-color: #E0D09A;
}
.l-header__nav-dot {
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 0.25rem;
  height: 0.25rem;
  background-color: #9D894A;
  border-radius: 50%;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.l-header__sub-nav {
  position: absolute;
  top: 4.0625rem;
  left: 0;
  background-color: #fff;
  border: 1px solid #E2DFD6;
  padding: 1.3125rem 1.8125rem;
  z-index: 10;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.l-header__sub-nav::before {
  content: "";
  position: absolute;
  top: -2.1875rem;
  left: 0;
  width: 100%;
  height: 2.1875rem;
  background: transparent;
}
.l-header__sub-item {
  margin-top: 1.25rem;
}
.l-header__sub-item:first-of-type {
  margin-top: 0;
}
.l-header__sub-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #9D894A;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.5;
  padding-left: 1.25rem;
  position: relative;
  white-space: nowrap;
}
.l-header__sub-link--about-us {
  text-transform: uppercase;
}
.l-header__sub-link::before, .l-header__sub-link::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 6px;
  height: 1px;
  background-color: #9D894A;
  -webkit-transform-origin: calc(100% - 0.5px) 50%;
          transform-origin: calc(100% - 0.5px) 50%;
}
.l-header__sub-link::before {
  -webkit-transform: rotate(40deg);
          transform: rotate(40deg);
}
.l-header__sub-link::after {
  -webkit-transform: rotate(-40deg);
          transform: rotate(-40deg);
}
.l-header__cta {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-left: 2.6666666667vw;
}
.l-header__cta-link {
  display: inline-block;
  padding: 0 0.6875rem;
  background-color: #C27067;
}
.l-header__cta-img {
  aspect-ratio: 100/70;
  max-width: 6.25rem;
}

/*

hamburger-btn

***************************************/
.hamburger-btn {
  display: none;
}
@media (width < 1261px) {
  .hamburger-btn {
    display: block;
    position: relative;
    width: 1.5625rem;
    height: 1.25rem;
    cursor: pointer;
    z-index: 100;
  }
}
.hamburger-btn__line {
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: transparent;
}
.hamburger-btn__line::before, .hamburger-btn__line::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #292929;
  -webkit-transition: top 0.3s 0.4s, -webkit-transform 0.3s;
  transition: top 0.3s 0.4s, -webkit-transform 0.3s;
  transition: transform 0.3s, top 0.3s 0.4s;
  transition: transform 0.3s, top 0.3s 0.4s, -webkit-transform 0.3s;
}
.hamburger-btn__line::before {
  top: -0.28125rem;
}
.hamburger-btn__line::after {
  top: 0.28125rem;
}

/*

hamburger-btn[aria-expanded="true"]

***************************************/
.hamburger-btn[aria-expanded=true] .hamburger-btn__line::before, .hamburger-btn[aria-expanded=true] .hamburger-btn__line::after {
  top: 0;
  -webkit-transition: top 0.3s, -webkit-transform 0.3s 0.3s;
  transition: top 0.3s, -webkit-transform 0.3s 0.3s;
  transition: top 0.3s, transform 0.3s 0.3s;
  transition: top 0.3s, transform 0.3s 0.3s, -webkit-transform 0.3s 0.3s;
}
.hamburger-btn[aria-expanded=true] .hamburger-btn__line::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.hamburger-btn[aria-expanded=true] .hamburger-btn__line::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

/*

l-global-menu

***************************************/
.l-global-menu {
  position: fixed;
  top: 4.375rem;
  left: 0;
  background: rgba(0, 0, 0, 0.25);
  padding: 0.8125rem 0.9375rem 10rem;
  width: 100vw;
  height: 100vh;
  opacity: 0;
  visibility: hidden;
  overflow-y: auto;
  z-index: 90;
  -webkit-transform: translateY(-1.25rem);
          transform: translateY(-1.25rem);
  -webkit-transition: opacity 0.4s ease, visibility 0.4s ease, -webkit-transform 0.4s ease;
  transition: opacity 0.4s ease, visibility 0.4s ease, -webkit-transform 0.4s ease;
  transition: opacity 0.4s ease, visibility 0.4s ease, transform 0.4s ease;
  transition: opacity 0.4s ease, visibility 0.4s ease, transform 0.4s ease, -webkit-transform 0.4s ease;
}
.l-global-menu__inner {
  background-color: #fff;
  padding: 1.6875rem 1.75rem 6.4375rem 1.25rem;
}
.l-global-menu__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.l-global-menu__item {
  border-bottom: 1px solid #E2DFD6;
  padding: 1.5rem 0;
}
.l-global-menu__item-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.1875rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.4210526316;
  position: relative;
}
.l-global-menu__item-link.has-sub::before, .l-global-menu__item-link.has-sub::after {
  content: "";
  position: absolute;
  top: calc(50% + 1px);
  right: 0.1875rem;
  width: 0.8125rem;
  height: 1px;
  background-color: #9D894A;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
.l-global-menu__item-link.has-sub::before {
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.l-global-menu__item-link.has-sub::after {
  -webkit-transform: translateY(-50%) rotate(90deg);
          transform: translateY(-50%) rotate(90deg);
}
.l-global-menu__item.is-active .l-global-menu__item-link::after {
  -webkit-transform: translateY(-50%) rotate(0deg);
          transform: translateY(-50%) rotate(0deg);
}
.l-global-menu__sub-list {
  display: none;
  padding: 1.15625rem 0 0 1.625rem;
}
.l-global-menu__sub-list-item {
  margin-top: 1.5625rem;
}
.l-global-menu__sub-list-item:first-of-type {
  margin-top: 0;
}
.l-global-menu__sub-link {
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #9D894A;
  font-size: 1.0625rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.4705882353;
  padding-left: 1.25rem;
  position: relative;
  display: block;
}
.l-global-menu__sub-link::before, .l-global-menu__sub-link::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 0.375rem;
  height: 1px;
  background-color: #9D894A;
  -webkit-transform-origin: calc(100% - 0.5px) 50%;
          transform-origin: calc(100% - 0.5px) 50%;
  z-index: 1;
}
.l-global-menu__sub-link::before {
  -webkit-transform: translateY(-50%) rotate(40deg);
          transform: translateY(-50%) rotate(40deg);
}
.l-global-menu__sub-link::after {
  -webkit-transform: translateY(-50%) rotate(-40deg);
          transform: translateY(-50%) rotate(-40deg);
}
.l-global-menu__sub-link--about-us {
  text-transform: uppercase;
}

/*

is-open .l-global-menu

***************************************/
.is-open .l-global-menu {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.is-open {
  overflow: hidden;
}

/********************************

c-fixed-banner

***************************************/
.c-fixed-banner {
  position: fixed;
  right: 0;
  bottom: 5rem;
  z-index: 1000;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.c-fixed-banner.is-show {
  opacity: 1;
  visibility: visible;
}
.c-fixed-banner:hover {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
  opacity: 0.9;
}
.c-fixed-banner__link {
  display: inline-block;
  max-width: 5rem;
}
.c-fixed-banner__img {
  aspect-ratio: 80/75;
}

/*************************************

Page：footer.scss

***************************************/
/*

f-cta

***************************************/
.f-cta {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  background-color: #C27067;
  width: 100%;
  z-index: 99;
  visibility: hidden;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  -webkit-transition: 0.4s ease;
  transition: 0.4s ease;
}
@media (width < 893px) {
  .f-cta {
    display: block;
  }
}
.f-cta.is-show {
  visibility: visible;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.f-cta__link {
  display: block;
  width: 100%;
  padding: 1.25rem 0.625rem;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.f-cta__img-wrap {
  max-width: 12.53125rem;
  margin: 0 auto;
}
.f-cta__img {
  aspect-ratio: 200.5/25;
}

/*

footer

***************************************/
.footer {
  padding-top: 4.5rem;
}
@media (width < 893px) {
  .footer {
    padding-bottom: 4.0625rem;
  }
}
.footer__brand {
  text-align: center;
}
.footer__logo {
  margin: 0 auto;
  max-width: 12rem;
}
.footer__logo-img {
  aspect-ratio: 192/114;
}
.footer__brand-name {
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  margin-top: 1.4375rem;
}
.footer__address-wrap {
  margin-top: 2.9375rem;
}
.footer__address {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.875rem;
  line-height: 1.4285714286;
  letter-spacing: 0.02em;
  margin-top: 0.25rem;
}
.footer__address:first-of-type {
  margin-top: 0;
}
.footer__sns-link {
  display: inline-block;
  margin-top: 1.9375rem;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.footer__sns-link:hover {
  opacity: 0.7;
}
.footer__nav {
  margin-top: 2.8125rem;
}
.footer__nav-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 5.625rem;
}
@media (width < 1261px) {
  .footer__nav-list {
    gap: 6vw;
  }
}
@media (width < 893px) {
  .footer__nav-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2.5rem 7.5rem;
    max-width: 28.75rem;
    margin: 0 auto;
  }
}
@media (width < 576px) {
  .footer__nav-list {
    max-width: 85.9813084112vw;
    gap: 9.3457943925vw 21.0280373832vw;
  }
}
@media (width < 893px) {
  .footer__nav-item:first-child {
    grid-column: 1/-1;
  }
}
.footer__nav-link {
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1.5;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}
.footer__nav-link:hover {
  color: #9D894A;
}
.footer__nav-sub-list {
  margin-top: 0.8125rem;
}
@media (width < 893px) {
  .footer__nav-item:first-child .footer__nav-sub-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.3125rem 16.3551401869vw;
  }
}
.footer__nav-sub-link {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 0.875rem;
  line-height: 1.8571428571;
  letter-spacing: 0.02em;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
  text-transform: uppercase;
}
@media (width < 893px) {
  .footer__nav-sub-link {
    margin-left: 1.25rem;
  }
}
.footer__nav-sub-link:hover {
  color: #9D894A;
}
.footer__privacy-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding: 2rem 0 0.875rem;
}
.footer__privacy {
  color: #676767;
  font-family: "ryo-gothic-plusn", sans-serif;
  font-size: 0.75rem;
  letter-spacing: 0.02em;
  line-height: 1;
}
.footer__copyright {
  background-color: #69645C;
  padding: 0.375rem 0 0.5625rem;
  text-align: right;
}
.footer__copyright-text {
  color: #fff;
  font-family: "ryo-gothic-plusn", sans-serif;
  font-size: 0.75rem;
  letter-spacing: 0.03em;
  line-height: 1.25;
}