@charset "UTF-8";
/* リキッドレイアウト対応 */
.u-desktop {
  display: block;
}
@media screen and (max-width: 767px) {
  .u-desktop {
    display: none;
  }
}

.u-mobile {
  display: none;
}
@media screen and (max-width: 767px) {
  .u-mobile {
    display: block;
  }
}

html {
  -webkit-text-size-adjust: 100%;
  font-size: 16px;
}
@media (max-width: 1200px) {
  html {
    font-size: 1.3333333333vw;
  }
}
@media screen and (max-width: 767px) {
  html {
    font-size: 16px;
  }
}
@media (max-width: 428px) {
  html {
    font-size: 3.738317757vw;
  }
}

/* pcの電話番号発信対応 */
a[href^="tel:"] {
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  a[href^="tel:"] {
    pointer-events: auto;
  }
}

/* ホバー */
a {
  text-decoration: none;
  color: inherit;
}

body {
  -webkit-animation: fadeIn 2s ease 0s 1 normal;
          animation: fadeIn 2s ease 0s 1 normal;
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
body {
  color: #59503F;
  font-family: "Noto Sans JP", sans-serif;
  -webkit-font-smoothing: antialiased;
}
body::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url(../images/bg.webp) repeat center/100% auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
}

body.is-fixed {
  position: fixed;
  left: 0;
  width: 100%;
  overflow-y: scroll;
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* Remove default padding */
ul,
ol {
  padding: 0;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
h5,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

/* Remove list styles on ul, ol elements with a class attribute */
ul,
ol {
  list-style: none;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img {
  max-width: 100%;
  display: block;
  width: 100%;
  height: auto;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

button {
  color: inherit;
  padding: 0;
  background-color: transparent;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
}

:where(fieldset) {
  margin: 0;
  padding: 0;
  border: 0;
  min-inline-size: 0; /* 長いlegendで縮まずレイアウト崩れ防止（Firefox対策） */
}

:where(legend) {
  padding: 0;
  margin: 0;
}

select {
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  border-radius: 0;
}

select::-ms-expand {
  display: none;
}

.p-list-block {
  background-color: #fff;
  border-radius: 0.375rem;
  display: grid;
  grid-template-columns: minmax(0, 7.5rem) minmax(0, 37rem);
  gap: 40px;
  gap: 2.5rem;
  padding: 14px;
  padding: 0.875rem;
  margin-top: 30px;
  margin-top: 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-list-block {
    display: block;
  }
}
.p-list-block + .p-list-block {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.p-block-editor h4.p-list-block__title {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5625;
  letter-spacing: 0.02em;
  margin-top: 0;
}
@media screen and (max-width: 767px) {
  .p-block-editor h4.p-list-block__title {
    line-height: 2;
  }
}

.p-list-block__item {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  padding-left: 16px;
  padding-left: 1rem;
  position: relative;
}
.p-list-block__item::before {
  content: "";
  display: block;
  width: 6px;
  width: 0.375rem;
  height: 6px;
  height: 0.375rem;
  background-color: #59503F;
  border-radius: 50%;
  position: absolute;
  top: 11px;
  top: 0.6875rem;
  left: 0;
}
.p-list-block__item + li {
  margin-top: 8px;
  margin-top: 0.5rem;
}

.p-menu-intro {
  margin-top: 20px;
  margin-top: 1.25rem;
}
.p-menu-intro + .p-menu-intro {
  margin-top: 30px;
  margin-top: 1.875rem;
}

.p-menu-intro__section {
  background-color: rgba(89, 80, 63, .6);
  border-radius: 0.625rem;
  padding: 20px;
  padding: 1.25rem;
}

.p-block-editor h4.p-menu-intro__title {
  color: #fff;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: center;
  margin-top: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 30px;
  gap: 1.875rem;
}
.p-block-editor h4.p-menu-intro__title::before, .p-block-editor h4.p-menu-intro__title::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .p-block-editor h4.p-menu-intro__title::before, .p-block-editor h4.p-menu-intro__title::after {
    max-width: 100%;
    position: static;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.p-block-editor h4.p-menu-intro__title::before {
  left: 0;
}
.p-block-editor h4.p-menu-intro__title::after {
  right: 0;
}
.p-block-editor h4.p-menu-intro__title span {
  display: block;
  line-height: 1.5;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.p-menu-intro__text {
  color: #fff;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.p-menu-intro__images {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  gap: 1.25rem;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.p-menu-intro__content {
  background-color: #fff;
  border-radius: 0.375rem;
  display: grid;
  grid-template-columns: minmax(0, 7.5rem) minmax(0, 37rem);
  gap: 40px;
  gap: 2.5rem;
  padding: 14px;
  padding: 0.875rem;
  margin-top: 40px;
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-menu-intro__content {
    display: block;
  }
}
.p-menu-intro__content + .p-menu-intro__content {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.p-menu-intro__heading {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5625;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .p-menu-intro__heading {
    line-height: 2;
  }
}

.p-menu-intro__list-item {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  padding-left: 16px;
  padding-left: 1rem;
  position: relative;
}
.p-menu-intro__list-item::before {
  content: "";
  display: block;
  width: 6px;
  width: 0.375rem;
  height: 6px;
  height: 0.375rem;
  background-color: #59503F;
  border-radius: 50%;
  position: absolute;
  top: 11px;
  top: 0.6875rem;
  left: 0;
}
.p-menu-intro__list-item + li {
  margin-top: 8px;
  margin-top: 0.5rem;
}

.p-menu-select {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.p-menu-select__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px 80px;
  gap: 1.25rem 5rem;
}
@media screen and (max-width: 767px) {
  .p-menu-select__list {
    grid-template-columns: repeat(1, 1fr);
    gap: 1.25rem;
  }
}

.p-menu-select__item a {
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
  border-bottom: 1px solid rgba(89, 80, 63, .4);
  position: relative;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-menu-select__item a::before {
  content: "";
  display: block;
  width: 13px;
  width: 0.8125rem;
  height: 13px;
  height: 0.8125rem;
  -webkit-mask: url(../images/menu_select_arrow.svg) no-repeat center/contain;
          mask: url(../images/menu_select_arrow.svg) no-repeat center/contain;
  background-color: #59503F;
  position: absolute;
  top: 5.5px;
  top: 0.34375rem;
  right: 0px;
  right: 0rem;
}
@media (any-hover: hover) {
  .p-menu-select__item a:hover {
    opacity: 0.6;
  }
}

.c-accordion-icon {
  display: block;
  width: 30px;
  width: 1.875rem;
  height: 30px;
  height: 1.875rem;
  background-color: #59503F;
  border-radius: 6.25rem;
  position: relative;
  cursor: pointer;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  /* 横棒 */
  /* 縦棒（プラスのときだけ表示） */
}
.c-accordion-icon.--small {
  width: 20px;
  width: 1.25rem;
  height: 20px;
  height: 1.25rem;
}
.c-accordion-icon.--small::before {
  width: 8px;
  width: 0.5rem;
}
.c-accordion-icon.--small::after {
  height: 8px;
  height: 0.5rem;
}
.c-accordion-icon::before, .c-accordion-icon::after {
  content: "";
  position: absolute;
  background-color: #fff;
}
.c-accordion-icon::before {
  width: 12px;
  width: 0.75rem;
  height: 1px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.c-accordion-icon::after {
  width: 1px;
  height: 12px;
  height: 0.75rem;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.open .c-accordion-icon::after {
  -webkit-transform: translate(-50%, -50%) rotate(90deg);
          transform: translate(-50%, -50%) rotate(90deg);
}

.c-breadcrumb__lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
  gap: 1rem;
  white-space: nowrap;
  overflow-x: auto;
  overflow-y: hidden;
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
}

.c-breadcrumb__item a {
  display: block;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .c-breadcrumb__item a:hover {
    opacity: 0.5;
  }
}
.c-breadcrumb__item a span {
  text-decoration: underline;
  text-underline-offset: 2px;
}
.c-breadcrumb__item span {
  display: block;
  font-family: "Shippori Mincho B1", serif;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
.c-breadcrumb__item:not(:first-child) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
  gap: 1rem;
}
.c-breadcrumb__item:not(:first-child)::before {
  content: "";
  display: block;
  width: 6px;
  width: 0.375rem;
  height: 10px;
  height: 0.625rem;
  background: url(../images/breadcrumb_arrow.svg) no-repeat center/100% auto;
}

.c-btn-back {
  margin-top: 80px;
  margin-top: 5rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .c-btn-back {
    margin-top: 2.5rem;
  }
}
.c-btn-back a {
  display: inline-block;
  font-family: "Shippori Mincho B1", serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
  text-decoration: underline;
  text-underline-offset: 4px;
  text-underline-offset: 0.25rem;
  text-align: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .c-btn-back a:hover {
    opacity: 0.6;
  }
}

.c-btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 14px;
  gap: 0.875rem;
  width: 100%;
  max-width: 220px;
  max-width: 13.75rem;
  padding-block: 14px;
  padding-block: 0.875rem;
  border-bottom: 1px solid rgba(255, 255, 255, .4);
  font-family: "Shippori Mincho B1", serif;
  color: #fff;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.14em;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.c-btn::after {
  content: "";
  display: block;
  width: 30px;
  width: 1.875rem;
  height: 30px;
  height: 1.875rem;
  background: url(../images/circle_arrow_white.svg) no-repeat center/100% auto;
}
@media (any-hover: hover) {
  .c-btn:hover {
    opacity: 0.6;
  }
}
.c-btn.--brown {
  color: #59503F;
  border-bottom: 1px solid rgba(89, 80, 63, .4);
}
.c-btn.--brown::after {
  background: url(../images/circle_arrow_brown.svg) no-repeat center/100% auto;
}

.c-case-item {
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border-radius: 0.375rem;
  overflow: hidden;
}
.c-case-item a {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .c-case-item a:hover {
    opacity: 0.6;
  }
}

.c-case-item__thumbnail {
  position: relative;
}

.c-case-item__img {
  overflow: hidden;
}
.c-case-item__img img {
  aspect-ratio: 280/350;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.c-case-item__arrow {
  display: block;
  width: 56px;
  width: 3.5rem;
  height: 56px;
  height: 3.5rem;
  position: absolute;
  bottom: 8px;
  bottom: 0.5rem;
  right: 8px;
  right: 0.5rem;
}

.c-case-item__block {
  font-family: "Shippori Mincho B1", serif;
  background-color: #fff;
  padding: 30px 16px 10px;
  padding: 1.875rem 1rem 0.625rem;
}
.c-case-item__wrap {
  background-color: #fff;
}

.c-case-item__terms {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
  gap: 0.5rem;
}

.c-case-item__term {
  color: #59503F;
  border: 1px solid rgba(89, 80, 63, .4);
  border-radius: 0.125rem;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.04em;
  display: inline-block;
  padding: 2px 8px;
  padding: 0.125rem 0.5rem;
}

.c-case-item__title {
  color: #231815;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.04em;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.c-case-item__accordion {
  padding: 10px 16px 30px;
  padding: 0.625rem 1rem 1.875rem;
}
.c-case-item__accordion dt {
  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;
  gap: 10px;
  gap: 0.625rem;
  padding: 14px 0;
  padding: 0.875rem 0;
  cursor: pointer;
  border-top: 1px solid rgba(89, 80, 63, .4);
  border-bottom: 1px solid rgba(89, 80, 63, .4);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .c-case-item__accordion dt:hover {
    opacity: 0.6;
  }
}
.c-case-item__accordion dd {
  display: none;
  padding-block: 30px 0;
  padding-block: 1.875rem 0;
}

.c-case-item__accordion-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.04em;
}

.c-case-item__accordion-item + .c-case-item__accordion-item {
  margin-top: 16px;
  margin-top: 1rem;
}
.c-case-item__accordion-item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.c-case-item__accordion-item-title {
  background-color: #59503F;
  color: #fff;
  border-radius: 0.125rem;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 2;
  display: inline-block;
  padding-inline: 6px;
  padding-inline: 0.375rem;
  position: relative;
}
.c-case-item__accordion-item-title::before {
  content: "";
  display: block;
  width: 10px;
  width: 0.625rem;
  height: 8px;
  height: 0.5rem;
  background: url(../images/icon_accordion_triangle.png) no-repeat center/contain;
  position: absolute;
  top: 4.5px;
  top: 0.28125rem;
  left: 0;
}

.c-case-item__accordion-item-content {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  margin-top: 4px;
  margin-top: 0.25rem;
}

.c-case-item__accordion-item-text {
  color: rgba(89, 80, 63, .6);
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.5;
}

.c-coming-soon {
  color: inherit;
  font-family: "Sorts Mill Goudy", serif;
  font-size: 44px;
  font-size: 2.75rem;
  text-align: center;
  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;
  width: 100%;
  padding-block: 20px;
  padding-block: 1.25rem;
}
.c-coming-soon.--text-white {
  color: #fff;
}

.c-faq__wrap {
  background-color: #fff;
  border-radius: 0.25rem;
}
.c-faq__wrap + .c-faq__wrap {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.c-faq__title {
  padding: 20px;
  padding: 1.25rem;
  font-family: "Shippori Mincho B1", serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.02em;
  position: relative;
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .c-faq__title:hover {
    opacity: 0.5;
  }
}

.c-faq__title-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;
  gap: 30px;
  gap: 1.875rem;
  padding: 9px 0 9px 35px;
  padding: 0.5625rem 0 0.5625rem 2.1875rem;
  position: relative;
}
.c-faq__title-inner::before {
  content: "Q.";
  display: block;
  font-family: "Shippori Mincho B1", serif;
  color: rgba(89, 80, 63, .6);
  font-size: 26px;
  font-size: 1.625rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.02em;
  position: absolute;
  top: 0;
  left: 0;
}

.c-faq__description {
  display: none;
}
.c-faq__description span {
  display: block;
  margin-top: -6px;
  margin-top: -0.375rem;
  padding: 0 80px 20px 60px;
  padding: 0 5rem 1.25rem 3.75rem;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
}

.c-fixed-sns {
  position: fixed;
  bottom: 80px;
  bottom: 5rem;
  right: 0;
  z-index: 99;
}

.c-fixed-sns__list li {
  max-width: 75px;
  max-width: 4.6875rem;
  background-color: #fff;
  border-radius: 0.25rem 0 0 0.25rem;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .c-fixed-sns__list li {
    max-width: 3.125rem;
  }
}
.c-fixed-sns__list li a {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .c-fixed-sns__list li a:hover {
    opacity: 0.6;
  }
}
.c-fixed-sns__list li + li {
  margin-top: 12px;
  margin-top: 0.75rem;
}

@media screen and (max-width: 767px) {
  [data-device=iphone] .c-fixed-sp-btns {
    padding-bottom: calc(env(safe-area-inset-bottom) + 1.25rem);
  }
}

.c-fixed-sp-btns {
  display: none;
}
@media screen and (max-width: 767px) {
  .c-fixed-sp-btns {
    display: block;
    width: 100%;
    padding: 1.25rem 1.875rem;
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: 99;
  }
}

@media screen and (max-width: 767px) {
  .c-fixed-sp-btns__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.875rem;
    max-width: 23rem;
    margin-inline: auto;
  }
}

@media screen and (max-width: 767px) {
  .c-fixed-sp-btns__item a {
    display: inline-block;
    width: 100%;
    padding-block: 0.5625rem 0.625rem;
    border-radius: 3.125rem;
    font-family: "Shippori Mincho B1", serif;
    background-color: #7DAE65;
    border: 1px solid #7DAE65;
    color: #fff;
    font-size: 0.875rem;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.5;
    text-align: center;
    vertical-align: top;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
}
@media (any-hover: hover) {
  .c-fixed-sp-btns__item a:hover {
    background-color: #fff;
    color: #7DAE65;
  }
}

/* ハンバーガーボタン
------------------------------------------------ */
.c-hamburger {
  display: block;
  width: 36px;
  width: 2.25rem;
  height: 32px;
  height: 2rem;
  margin-left: 24px;
  margin-left: 1.5rem;
  padding: 0;
  position: relative;
  z-index: 20;
  cursor: pointer;
}

.c-hamburger__icon {
  position: relative;
  display: block;
  height: 1px;
  width: 100%;
  margin-left: auto;
  background-color: #59503F;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.c-hamburger__icon:nth-child(1) {
  width: 36px;
  width: 2.25rem;
  top: -3px;
  top: -0.1875rem;
}

.c-hamburger__icon:nth-child(2) {
  width: 24px;
  width: 1.5rem;
  top: 3px;
  top: 0.1875rem;
}

/* アーカイブページのページ送り */
.c-pagenation {
  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: 40px;
  gap: 2.5rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  min-width: -webkit-max-content;
  min-width: -moz-max-content;
  min-width: max-content;
  margin-inline: auto;
  padding-inline: 122px;
  padding-inline: 7.625rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .c-pagenation {
    padding-inline: 6.8125rem;
    gap: 1.875rem;
  }
}
.c-pagenation a {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .c-pagenation a:hover {
    opacity: 0.6;
  }
}
.c-pagenation .page-numbers {
  color: rgba(89, 80, 63, .4);
  font-family: "Shippori Mincho B1", serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
  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;
}
.c-pagenation .page-numbers.current {
  color: #59503F;
  padding: 4px 2px;
  padding: 0.25rem 0.125rem;
  border-bottom: 1px solid currentColor;
}
.c-pagenation .page-numbers.dots {
  padding: 4px 2px;
  padding: 0.25rem 0.125rem;
  border: 0;
}
.c-pagenation .page-numbers.prev, .c-pagenation .page-numbers.next {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  gap: 0.5rem;
  border: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  color: #59503F;
  font-family: "Shippori Mincho B1", serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
.c-pagenation .page-numbers.prev::before, .c-pagenation .page-numbers.next::before {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
.c-pagenation .page-numbers.prev {
  left: 0;
}
.c-pagenation .page-numbers.prev::before {
  content: "<";
  display: block;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.c-pagenation .page-numbers.next {
  right: 0;
}
.c-pagenation .page-numbers.next::after {
  content: ">";
  display: block;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.c-popup {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  max-width: 100%;
  height: 100%;
  padding: 48px 0;
  padding: 3rem 0;
  text-align: center;
  overflow-y: auto;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  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;
}
@media screen and (max-width: 767px) {
  .c-popup {
    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;
  }
}
.c-popup.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  z-index: 21;
}
.c-popup::before {
  content: "";
  background-color: rgba(55, 52, 50, .92);
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  pointer-events: none;
}

.c-popup__modal {
  max-width: min(85vw, 90vh);
  text-align: left;
}
@media screen and (max-width: 767px) {
  .c-popup__modal {
    width: 90.6542056075%;
  }
}

.c-popup__modal-inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 100%;
}
@media screen and (max-width: 767px) {
  .c-popup__modal-inner {
    width: 100%;
    max-width: 100%;
  }
}
.c-popup__modal-inner .swiper-horizontal > .swiper-pagination-bullets,
.c-popup__modal-inner .swiper-pagination-bullets.swiper-pagination-horizontal,
.c-popup__modal-inner .swiper-pagination-custom,
.c-popup__modal-inner .swiper-pagination-fraction {
  bottom: -24px;
  bottom: -1.5rem;
}
@media screen and (max-width: 767px) {
  .c-popup__modal-inner .swiper-horizontal > .swiper-pagination-bullets,
  .c-popup__modal-inner .swiper-pagination-bullets.swiper-pagination-horizontal,
  .c-popup__modal-inner .swiper-pagination-custom,
  .c-popup__modal-inner .swiper-pagination-fraction {
    bottom: -1.875rem;
  }
}
.c-popup__modal-inner .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.c-popup__modal-inner .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 8px;
}
.c-popup__modal-inner .swiper-pagination-bullet {
  background: #a6a09c;
  opacity: 1;
}
@media screen and (max-width: 767px) {
  .c-popup__modal-inner .swiper-pagination-bullet {
    width: 6px;
    height: 6px;
  }
}
.c-popup__modal-inner .swiper-pagination-bullet-active {
  opacity: 1;
  background: #f6efe0;
}
.c-popup__modal-inner .swiper-button-prev,
.c-popup__modal-inner .swiper-rtl .swiper-button-next {
  left: -66px;
  left: -4.125rem;
  right: auto;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
@media screen and (max-width: 767px) {
  .c-popup__modal-inner .swiper-button-prev,
  .c-popup__modal-inner .swiper-rtl .swiper-button-next {
    left: calc(50% - 5.625rem);
    -webkit-transform: scale(-1, 1) translateX(-50%);
            transform: scale(-1, 1) translateX(-50%);
  }
}
.c-popup__modal-inner .swiper-button-next,
.c-popup__modal-inner .swiper-rtl .swiper-button-prev {
  right: -66px;
  right: -4.125rem;
  left: auto;
}
@media screen and (max-width: 767px) {
  .c-popup__modal-inner .swiper-button-next,
  .c-popup__modal-inner .swiper-rtl .swiper-button-prev {
    right: auto;
    left: calc(50% + 2.5rem);
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
.c-popup__modal-inner .swiper-button-next,
.c-popup__modal-inner .swiper-button-prev {
  position: absolute;
  top: 50%;
  width: 50px;
  width: 3.125rem;
  height: 50px;
  height: 3.125rem;
  margin-top: calc(var(--swiper-navigation-size) / -2);
  z-index: 10;
  cursor: pointer;
  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;
  color: var(--swiper-theme-color);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .c-popup__modal-inner .swiper-button-next,
  .c-popup__modal-inner .swiper-button-prev {
    top: auto;
    bottom: -7.125rem;
  }
}
.c-popup__modal-inner .swiper-button-next::before, .c-popup__modal-inner .swiper-button-next::after,
.c-popup__modal-inner .swiper-button-prev::before,
.c-popup__modal-inner .swiper-button-prev::after {
  display: none;
}
@media (any-hover: hover) {
  .c-popup__modal-inner .swiper-button-next:hover,
  .c-popup__modal-inner .swiper-button-prev:hover {
    opacity: 0.7;
  }
}

.c-popup__close {
  position: absolute;
  top: -24px;
  top: -1.5rem;
  right: 0;
  border: none;
  background: transparent;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4px;
  gap: 0.25rem;
  color: #fff;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .c-popup__close {
    top: -1.75rem;
  }
}
.c-popup__close span {
  display: block;
  width: 12px;
  width: 0.75rem;
  height: 12px;
  height: 0.75rem;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
@media (any-hover: hover) {
  .c-popup__close:hover {
    opacity: 0.7;
  }
}

.c-popup__swiper .swiper-slide {
  padding: 16px;
  padding: 1rem;
  background-color: #f6efe0;
}
@media screen and (max-width: 767px) {
  .c-popup__swiper .swiper-slide {
    width: 90.6542056075%;
    height: auto;
    padding: 1.25rem;
  }
}
.c-popup__swiper .swiper-slide.--info {
  width: 100%;
  height: auto;
  max-height: 725px;
  max-height: 45.3125rem;
  padding: 56px 48px;
  padding: 3.5rem 3rem;
  overflow-y: auto;
}
@media screen and (max-width: 767px) {
  .c-popup__swiper .swiper-slide.--info {
    aspect-ratio: 388/423;
    max-height: 100%;
    padding: 1.25rem;
  }
}
.c-popup__caption {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.56;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.c-popup__swiper-info-title {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.56;
  padding-bottom: 16px;
  padding-bottom: 1rem;
  border-bottom: 1px solid #838383;
}

.c-popup__swiper-info-subtitle {
  display: block;
  margin-top: 12px;
  margin-top: 0.75rem;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
}

.c-popup__swiper-info-dl {
  margin-top: 32px;
  margin-top: 2rem;
}
.c-popup__swiper-info-dl dt {
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.4;
  padding-left: 14px;
  padding-left: 0.875rem;
  position: relative;
}
.c-popup__swiper-info-dl dt::before {
  content: "";
  display: block;
  width: 10px;
  width: 0.625rem;
  height: 8px;
  height: 0.5rem;
  background: url(../images/special/popup_info_title_icon.svg) no-repeat center/contain;
  position: absolute;
  top: 4.5px;
  top: 0.28125rem;
  left: 0;
}
.c-popup__swiper-info-dl dd {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.4;
  margin-top: 8px;
  margin-top: 0.5rem;
}
.c-popup__swiper-info-dl dd + dt {
  margin-top: 32px;
  margin-top: 2rem;
}
.c-popup__swiper-info-dl dd + dd {
  font-size: 12px;
  font-size: 0.75rem;
  margin-top: 8px;
  margin-top: 0.5rem;
}

/* シェアボタン */
.c-share {
  padding-block: 40px;
  padding-block: 2.5rem;
  border-bottom: 1px solid rgba(89, 80, 63, .4);
}

.c-share__text {
  font-family: "Shippori Mincho B1", serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.02em;
  text-align: center;
}

.c-share__sns {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.c-share__sns-wrap {
  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: 20px;
  gap: 1.25rem;
}

.c-share__link {
  color: inherit;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
  border-radius: 3.125rem;
  border: 1px solid #59503F;
  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: 8px;
  gap: 0.5rem;
  width: 100%;
  padding: 6px 20px;
  padding: 0.375rem 1.25rem;
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .c-share__link:hover {
    opacity: 0.6;
  }
}

.c-share__link::before {
  content: "";
  display: block;
  width: 18px;
  width: 1.125rem;
  height: 18px;
  height: 1.125rem;
  background: url(../images/icon_copy_link.svg) no-repeat center/contain;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.c-share__sns-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
  gap: 1rem;
}
.c-share__sns-item {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.c-share__sns-item:nth-child(1) a img {
  width: 30px;
  width: 1.875rem;
}
.c-share__sns-item:nth-child(2) a img {
  width: 30px;
  width: 1.875rem;
}
.c-share__sns-item:nth-child(3) a img {
  width: 24px;
  width: 1.5rem;
}
.c-share__sns-item a {
  display: block;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.c-share__sns-item a img {
  display: block;
}
@media (any-hover: hover) {
  .c-share__sns-item:hover {
    opacity: 0.6;
  }
}

/* URLコピー時のトースト表示 */
.copy-toast {
  position: fixed;
  bottom: 20px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background-color: #fff;
  border: 1px solid #59503F;
  padding: 10px 20px;
  border-radius: 0.125rem;
  z-index: 9999;
  font-size: 16px;
  font-size: 1rem;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}

.copy-toast.is-visible {
  opacity: 1;
}

.c-single-pagenation {
  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: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  padding-inline: 122px;
  padding-inline: 7.625rem;
  position: relative;
  margin-top: 80px;
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .c-single-pagenation {
    padding-inline: 8.25rem;
    margin-top: 3.75rem;
  }
}

.c-single-pagenation__prev,
.c-single-pagenation__next {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.c-single-pagenation__prev a,
.c-single-pagenation__next a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  gap: 0.5rem;
  font-family: "Shippori Mincho B1", serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
  text-transform: uppercase;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.c-single-pagenation__prev a::before, .c-single-pagenation__prev a::after,
.c-single-pagenation__next a::before,
.c-single-pagenation__next a::after {
  display: block;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media (any-hover: hover) {
  .c-single-pagenation__prev a:hover,
  .c-single-pagenation__next a:hover {
    opacity: 0.6;
  }
}

.c-single-pagenation__prev {
  left: 0;
}
.c-single-pagenation__prev a::before {
  content: "<";
}

.c-single-pagenation__next {
  right: 0;
}
.c-single-pagenation__next a::after {
  content: ">";
}

.c-single-pagenation__back a {
  font-family: "Shippori Mincho B1", serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
  text-align: center;
  border-bottom: 1px solid currentColor;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .c-single-pagenation__back a:hover {
    opacity: 0.6;
  }
}

.c-top-title span {
  display: block;
}
.c-top-title.--center {
  text-align: center;
}
.c-top-title.--text-white {
  color: #fff;
}

.c-top-title__en {
  font-family: "Sorts Mill Goudy", serif;
  font-size: 44px;
  font-size: 2.75rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
@media screen and (max-width: 767px) {
  .c-top-title__en {
    font-size: 2.125rem;
  }
}

.c-top-title__ja {
  font-family: "Shippori Mincho B1", serif;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  margin-top: 10px;
  margin-top: 0.625rem;
}

#toc_container {
  background-color: #fff;
  border-radius: 0.375rem;
  padding: 30px;
  padding: 1.875rem;
}

.toc_title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.toc_list {
  margin-top: 20px;
  margin-top: 1.25rem;
  counter-reset: step;
}
.toc_list li {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  padding-left: 26px;
  padding-left: 1.625rem;
  position: relative;
}
.toc_list li + li {
  margin-top: 8px;
  margin-top: 0.5rem;
}
.toc_list li::before {
  counter-increment: step;
  content: counter(step, decimal-leading-zero);
  display: block;
  color: rgba(89, 80, 63, .5);
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  position: absolute;
  top: 0;
  left: 0;
}
.toc_list li a {
  display: block;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .toc_list li a:hover {
    opacity: 0.6;
  }
}

.l-inner {
  width: 100%;
  max-width: 1250px;
  padding-right: 25px;
  padding-left: 25px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 767px) {
  .l-inner {
    max-width: 660px;
    padding-right: 30px;
    padding-left: 30px;
  }
}
.l-inner.--entry, .l-inner.--privacy, .l-inner.--404 {
  max-width: 850px;
}
@media screen and (max-width: 767px) {
  .l-inner.--entry, .l-inner.--privacy, .l-inner.--404 {
    max-width: 660px;
  }
}

.l-main {
  padding-block: 80px 60px;
  padding-block: 5rem 3.75rem;
}
@media screen and (max-width: 767px) {
  .l-main {
    padding-block: 3.75rem 6.25rem;
  }
}
.l-main.--top {
  padding-block: 0;
  margin-top: 130px;
  margin-top: 8.125rem;
}
@media screen and (max-width: 767px) {
  .l-main.--top {
    padding-block: 0;
    margin-top: 6.875rem;
  }
}
.l-main.--support, .l-main.--access {
  padding-block: 0 140px;
  padding-block: 0 8.75rem;
}
@media screen and (max-width: 767px) {
  .l-main.--support, .l-main.--access {
    padding-block: 0 6.25rem;
  }
}
.l-main.--doctor {
  padding-block: 0;
}
.l-main.--recruit {
  padding-bottom: 140px;
  padding-bottom: 8.75rem;
}
@media screen and (max-width: 767px) {
  .l-main.--recruit {
    padding-bottom: 6.25rem;
  }
}
.l-main.--entry, .l-main.--guide, .l-main.--about, .l-main.--news, .l-main.--menu, .l-main.--case, .l-main.--blog, .l-main.--faq, .l-main.--privacy, .l-main.--404 {
  padding-block: 80px 140px;
  padding-block: 5rem 8.75rem;
}
@media screen and (max-width: 767px) {
  .l-main.--entry, .l-main.--guide, .l-main.--about, .l-main.--news, .l-main.--menu, .l-main.--case, .l-main.--blog, .l-main.--faq, .l-main.--privacy, .l-main.--404 {
    padding-block: 3.75rem 6.25rem;
  }
}

.l-section {
  padding-block: 140px;
  padding-block: 8.75rem;
}
@media screen and (max-width: 767px) {
  .l-section {
    padding-block: 5rem;
  }
}

.l-sub-fv {
  margin-top: 130px;
  margin-top: 8.125rem;
  padding-block: 30px 80px;
  padding-block: 1.875rem 5rem;
  border-bottom: 1px solid rgba(89, 80, 63, .4);
}
@media screen and (max-width: 767px) {
  .l-sub-fv {
    margin-top: 6.875rem;
    padding-block: 1.875rem 3.75rem;
  }
}

.l-sub-fv__wrap {
  margin-top: 50px;
  margin-top: 3.125rem;
}

.l-sub-fv__title span {
  display: block;
}

.l-sub-fv__title-en {
  font-family: "Sorts Mill Goudy", serif;
  font-size: 80px;
  font-size: 5rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
@media screen and (max-width: 767px) {
  .l-sub-fv__title-en {
    font-size: 3.125rem;
  }
}

.l-sub-fv__title-ja {
  font-family: "Shippori Mincho B1", serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.l-sub-fv-case-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 40px;
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 767px) {
  .l-sub-fv-case-title {
    font-size: 1.875rem;
  }
}

.l-sub-fv__menu-category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
  gap: 1rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.l-sub-fv__menu-category span {
  font-family: "Shippori Mincho B1", serif;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  display: block;
  padding-bottom: 4px;
  padding-bottom: 0.25rem;
  border-bottom: 1px solid #7DAE65;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.l-sub-fv__menu-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 40px;
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  margin-top: 8px;
  margin-top: 0.5rem;
}
@media screen and (max-width: 767px) {
  .l-sub-fv__menu-title {
    font-size: 1.875rem;
  }
}

.l-sub-fv__news-time {
  font-family: "Shippori Mincho B1", serif;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
}

.l-sub-fv__news-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 40px;
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  margin-top: 10px;
  margin-top: 0.625rem;
}
@media screen and (max-width: 767px) {
  .l-sub-fv__news-title {
    font-size: 1.875rem;
  }
}

.l-sub-fv__blog-time {
  font-family: "Shippori Mincho B1", serif;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
}

.l-sub-fv__blog-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 40px;
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-top: 10px;
  margin-top: 0.625rem;
}
@media screen and (max-width: 767px) {
  .l-sub-fv__blog-title {
    font-size: 1.875rem;
  }
}

.l-sub-fv__blog-meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 20px;
  gap: 1.25rem;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.l-sub-fv__blog-category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px;
  gap: 0.625rem;
}
.l-sub-fv__blog-category span {
  display: inline-block;
  background-color: #59503F;
  border-radius: 0.375rem;
  color: #fff;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  padding-inline: 10px;
  padding-inline: 0.625rem;
}

.l-sub-fv__blog-keyword {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px;
  gap: 0.625rem;
}
.l-sub-fv__blog-keyword span {
  display: inline-block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
}

.l-sub-fv__entry-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 40px;
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 767px) {
  .l-sub-fv__entry-title {
    font-size: 1.875rem;
  }
}

.p-404__text {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-404__text {
    text-align: left;
  }
}

.p-404__back {
  margin-top: 48px;
  margin-top: 3rem;
  text-align: center;
}
.p-404__back a {
  display: inline-block;
  border: 1px solid #59503F;
  background-color: #59503F;
  color: #fff;
  border-radius: 3.125rem;
  width: 100%;
  max-width: 240px;
  max-width: 15rem;
  padding: 9px 19px 11px;
  padding: 0.5625rem 1.1875rem 0.6875rem;
  font-family: "Shippori Mincho B1", serif;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: center;
  position: relative;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-404__back a::before {
  content: "";
  display: block;
  width: 11px;
  width: 0.6875rem;
  height: 8px;
  height: 0.5rem;
  -webkit-mask: url(../images/top_back_arrow.svg) no-repeat center/100% auto;
          mask: url(../images/top_back_arrow.svg) no-repeat center/100% auto;
  background-color: #59503F;
  position: absolute;
  top: 50%;
  left: 24.5px;
  left: 1.53125rem;
  z-index: 1;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-404__back a::after {
  content: "";
  display: block;
  width: 20px;
  width: 1.25rem;
  height: 20px;
  height: 1.25rem;
  background-color: #fff;
  border-radius: 100%;
  position: absolute;
  top: 50%;
  left: 20px;
  left: 1.25rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-404__back a:hover {
    background-color: #fff;
    color: #59503F;
  }
  .p-404__back a:hover::before {
    background-color: #fff;
  }
  .p-404__back a:hover::after {
    background-color: #59503F;
  }
}

.p-access {
  overflow: hidden;
}

.p-access__info {
  color: #fff;
  background-color: #59503F;
  padding-block: 80px;
  padding-block: 5rem;
}
@media screen and (max-width: 767px) {
  .p-access__info {
    padding-block: 3.75rem;
  }
}

.p-access__inner {
  max-width: 1040px;
  max-width: 65rem;
  margin-inline: auto;
  padding-inline: 20px;
  padding-inline: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-access__inner {
    max-width: 41.25rem;
    padding-inline: 1.875rem;
  }
}

.p-access__info-wrap {
  display: grid;
  grid-template-columns: minmax(0, 31.25rem) minmax(0, 26.25rem);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 80px;
  gap: 5rem;
}
@media screen and (max-width: 767px) {
  .p-access__info-wrap {
    display: block;
  }
}

.p-access__map {
  aspect-ratio: 500/414;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-access__map {
    aspect-ratio: 368/304;
  }
}
.p-access__map iframe {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

@media screen and (max-width: 767px) {
  .p-access__block {
    margin-top: 2.5rem;
  }
}

.p-access__logo {
  max-width: 320px;
  max-width: 20rem;
}

.p-access__box {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.p-access__address {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
}

.p-access__link a {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  text-decoration: underline;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4px;
  gap: 0.25rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-access__link a::after {
  content: "";
  display: block;
  width: 16px;
  width: 1rem;
  height: 18px;
  height: 1.125rem;
  -webkit-mask: url(../images/icon_blank.svg) no-repeat center/cover;
          mask: url(../images/icon_blank.svg) no-repeat center/cover;
  background-color: currentColor;
}
@media (any-hover: hover) {
  .p-access__link a:hover {
    opacity: 0.5;
  }
}

.p-access__way {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  margin-top: 30px;
  margin-top: 1.875rem;
}
.p-access__way + .p-access__way {
  margin-top: 20px;
  margin-top: 1.25rem;
}
.p-access__way.--train {
  --way-icon: url(../images/access/icon_train.svg) no-repeat center/100% auto;
}
.p-access__way.--car {
  --way-icon: url(../images/access/icon_car.svg) no-repeat center/100% auto;
}

.p-access__way-text {
  padding-left: 30px;
  padding-left: 1.875rem;
  padding-bottom: 4px;
  padding-bottom: 0.25rem;
  border-bottom: 1px solid rgba(255, 255, 255, .4);
  position: relative;
}
.p-access__way-text::before {
  content: "";
  display: block;
  width: 24px;
  width: 1.5rem;
  height: 24px;
  height: 1.5rem;
  background: var(--way-icon);
  position: absolute;
  top: 0;
  left: 0;
}

.p-access__way-list {
  margin-top: 8px;
  margin-top: 0.5rem;
}

.p-access__way-item {
  padding-left: 16px;
  padding-left: 1rem;
  position: relative;
}
.p-access__way-item::before {
  content: "";
  display: block;
  width: 6px;
  width: 0.375rem;
  height: 6px;
  height: 0.375rem;
  background-color: currentColor;
  border-radius: 50%;
  position: absolute;
  top: 11px;
  top: 0.6875rem;
  left: 0;
}

.p-access__root {
  margin-top: 140px;
  margin-top: 8.75rem;
}
@media screen and (max-width: 767px) {
  .p-access__root {
    margin-top: 5rem;
  }
}

.p-access__root-title span {
  display: block;
}

.p-access__root-title-en {
  font-family: "Sorts Mill Goudy", serif;
  font-size: 44px;
  font-size: 2.75rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
@media screen and (max-width: 767px) {
  .p-access__root-title-en {
    font-size: 2.125rem;
  }
}

.p-access__root-title-ja {
  font-family: "Shippori Mincho B1", serif;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.p-access__sub-root {
  margin-top: 80px;
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .p-access__sub-root {
    margin-top: 2.5rem;
  }
}
.p-access__sub-root + .p-access__sub-root {
  margin-top: 120px;
  margin-top: 7.5rem;
}
@media screen and (max-width: 767px) {
  .p-access__sub-root + .p-access__sub-root {
    margin-top: 5rem;
  }
}

.p-access__sub-root-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.02em;
  padding-left: 20px;
  padding-left: 1.25rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-access__sub-root-title {
    font-size: 1.125rem;
  }
}
.p-access__sub-root-title::before {
  content: "";
  display: block;
  width: 10px;
  width: 0.625rem;
  height: 10px;
  height: 0.625rem;
  border-radius: 50%;
  background-color: rgba(89, 80, 63, .6);
  position: absolute;
  top: 15px;
  top: 0.9375rem;
  left: 0;
}
@media screen and (max-width: 767px) {
  .p-access__sub-root-title::before {
    top: 0.625rem;
  }
}

.p-access__root-slider {
  margin-top: 20px;
  margin-top: 1.25rem;
  position: relative;
  /* プログレスバーの位置を下に移動 */
  /* プログレスバーの高さ変更 */
  /* プログレスバーの背景色変更 */
  /* プログレスバーの色変更 */
}
.p-access__root-slider:has(.swiper-horizontal) {
  padding-bottom: 30px;
  padding-bottom: 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-access__root-slider:has(.swiper-horizontal) {
    padding-bottom: 1.5rem;
  }
}
.p-access__root-slider:has(.swiper-horizontal) .swiper-slide {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.p-access__root-slider .swiper {
  overflow: visible;
}
.p-access__root-slider .swiper.swiper-initialized .swiper-wrapper {
  gap: 0;
}
.p-access__root-slider .swiper-wrapper {
  gap: 32px;
  gap: 2rem;
}
.p-access__root-slider .swiper-slide {
  max-width: 276px;
  max-width: 17.25rem;
  -ms-flex-negative: 1;
      flex-shrink: 1;
}
.p-access__root-slider .swiper-horizontal > .swiper-pagination-progressbar,
.p-access__root-slider .swiper-pagination-progressbar.swiper-pagination-horizontal {
  bottom: 0;
  top: auto;
}
.p-access__root-slider .swiper-horizontal > .swiper-pagination-progressbar,
.p-access__root-slider .swiper-pagination-progressbar.swiper-pagination-horizontal {
  height: 4px;
  border-radius: 2px;
}
.p-access__root-slider .swiper-pagination-progressbar {
  background-color: rgba(89, 80, 63, .2);
  overflow: hidden;
}
.p-access__root-slider .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background-color: rgba(89, 80, 63, .6);
}

.p-access__root-slider-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0.375rem;
}

.p-access__root-slider-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 6px;
  gap: 0.375rem;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.p-access__root-slider-step {
  color: rgba(89, 80, 63, .6);
  font-family: "Shippori Mincho B1", serif;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.p-access__root-slider-text {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
}

.p-doctor__section {
  color: #fff;
  background: -webkit-gradient(linear, left top, left bottom, from(#59503f), color-stop(40%, rgba(89, 80, 63, .9)), color-stop(60%, rgba(89, 80, 63, .8)), color-stop(70%, rgba(89, 80, 63, .7)), color-stop(80%, rgba(89, 80, 63, .6)), color-stop(90%, rgba(89, 80, 63, .55)), color-stop(93%, rgba(89, 80, 63, .45)), to(rgba(89, 80, 63, 0)));
  background: linear-gradient(180deg, #59503f 0%, rgba(89, 80, 63, .9) 40%, rgba(89, 80, 63, .8) 60%, rgba(89, 80, 63, .7) 70%, rgba(89, 80, 63, .6) 80%, rgba(89, 80, 63, .55) 90%, rgba(89, 80, 63, .45) 93%, rgba(89, 80, 63, 0) 100%);
  padding-block: 80px 140px;
  padding-block: 5rem 8.75rem;
}
@media screen and (max-width: 767px) {
  .p-doctor__section {
    padding-block: 3.75rem 6.25rem;
  }
}
.p-doctor__section.--no-gradation {
  background: #59503F;
}

.p-doctor__section-wrap {
  display: grid;
  grid-template-columns: minmax(0, 33.75rem) minmax(0, 34.375rem);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 60px;
  gap: 3.75rem;
}
@media screen and (max-width: 767px) {
  .p-doctor__section-wrap {
    display: block;
  }
}

.p-doctor__section-img {
  border: 1px solid #b3b3b3;
  border-radius: 0.5rem;
  padding: 10px;
  padding: 0.625rem;
  overflow: hidden;
}
.p-doctor__section-img img {
  width: 100%;
  height: 100%;
  border-radius: 0.375rem;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-doctor__section-img .no-image {
  border: 1px solid #59503F;
}

@media screen and (max-width: 767px) {
  .p-doctor__section-content {
    margin-top: 2.5rem;
  }
}

.p-doctor__section-head {
  font-family: "Shippori Mincho B1", serif;
  line-height: 1;
}

.p-doctor__section-job {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.04em;
}

.p-doctor__section-head-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 20px 30px;
  gap: 1.25rem 1.875rem;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.p-doctor__section-name {
  font-size: 32px;
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 767px) {
  .p-doctor__section-name {
    font-size: 1.625rem;
  }
}

.p-doctor__section-en {
  font-family: "Sorts Mill Goudy", serif;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  padding-bottom: 5px;
  padding-bottom: 0.3125rem;
}

.p-doctor__section-sns {
  margin-top: 34px;
  margin-top: 2.125rem;
}
@media screen and (max-width: 767px) {
  .p-doctor__section-sns {
    margin-top: 1.25rem;
  }
}

.p-doctor__section-sns-list {
  display: grid;
  grid-template-columns: repeat(4, 2rem);
  gap: 12px;
  gap: 0.75rem;
}
@media screen and (max-width: 767px) {
  .p-doctor__section-sns-list {
    grid-template-columns: repeat(4, 2.375rem);
  }
}

.p-doctor__section-sns-item a {
  display: block;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-doctor__section-sns-item a:hover {
    opacity: 0.6;
  }
}

.p-doctor__section-text {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
  margin-top: 40px;
  margin-top: 2.5rem;
}

.p-doctor__section-block {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.p-doctor__section-block-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .p-doctor__section-block-title {
    font-size: 1rem;
  }
}

.p-doctor__section-list {
  margin-top: 12px;
  margin-top: 0.75rem;
}

.p-doctor__section-item {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  padding-left: 16px;
  padding-left: 1rem;
  position: relative;
}
.p-doctor__section-item::before {
  content: "";
  display: block;
  width: 6px;
  width: 0.375rem;
  height: 6px;
  height: 0.375rem;
  border-radius: 50%;
  background-color: currentColor;
  position: absolute;
  top: 11px;
  top: 0.6875rem;
  left: 0;
}
.p-doctor__section-item + .p-doctor__section-item {
  margin-top: 4px;
  margin-top: 0.25rem;
}

.p-doctor__section.--sub {
  color: #59503F;
  background: transparent;
  padding-block: 140px;
  padding-block: 8.75rem;
}
@media screen and (max-width: 767px) {
  .p-doctor__section.--sub {
    padding-block: 6.25rem;
  }
}
.p-doctor__section.--sub + .p-doctor__section {
  padding-top: 0;
}
.p-doctor__section.--sub .l-inner {
  max-width: 1050px;
  max-width: 65.625rem;
}
.p-doctor__section.--sub .p-doctor__section-wrap {
  grid-template-columns: minmax(0, 33.75rem) minmax(0, 25rem);
}
@media screen and (max-width: 767px) {
  .p-doctor__section.--sub .p-doctor__section-wrap {
    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: 0;
  }
}
.p-doctor__section.--sub .p-doctor__section-name {
  font-size: 30px;
  font-size: 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-doctor__section.--sub .p-doctor__section-name {
    font-size: 1.375rem;
  }
}
.p-doctor__section.--sub .p-doctor__section-list {
  margin-top: 20px;
  margin-top: 1.25rem;
}
.p-doctor__section.--sub .p-doctor__section-item::before {
  background-color: #231815;
}
@media screen and (max-width: 767px) {
  .p-doctor__section.--sub .p-doctor__section-img {
    width: 81.5217391304%;
    margin-inline: auto;
  }
}

.p-doctor__section-row {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px;
  gap: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-doctor__section-row {
    grid-template-columns: repeat(1, 1fr);
    gap: 0;
  }
}

/* -----------------------------------------------------------------
  ドロワーメニュー
----------------------------------------------------------------- */
.p-drawer {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100vh;
  z-index: 100;
  visibility: hidden;
  opacity: 0;
  background: url(../images/bg.webp) repeat center/100% auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 1024px) {
  .p-drawer {
    height: 100%;
  }
}
.p-drawer.open {
  visibility: visible;
  opacity: 1;
}

.p-drawer__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .p-drawer__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    overflow-y: scroll;
  }
}

.p-drawer__left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 40%;
  padding-block: 7.1527777778% 149px;
  padding-block: 7.1527777778% 9.3125rem;
}
@media screen and (max-width: 1024px) {
  .p-drawer__left {
    width: 100%;
    padding: 2.5rem 1.875rem;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}

@media screen and (max-width: 1024px) {
  .p-drawer__left-wrap {
    width: 100%;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}

.p-drawer__left-logo {
  max-width: 267px;
  max-width: 16.6875rem;
  margin-inline: auto;
}
@media screen and (max-width: 1024px) {
  .p-drawer__left-logo {
    max-width: 18.25rem;
  }
}
.p-drawer__left-logo svg path {
  fill: #59503F;
}

.p-drawer__left-address {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  letter-spacing: 0.02em;
  text-align: center;
  margin-top: 30px;
  margin-top: 1.875rem;
}
.p-drawer__left-address span {
  display: inline-block;
  text-align: left;
}
.p-drawer__left-address a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  gap: 0.5rem;
  text-decoration: underline;
  position: relative;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-drawer__left-address a::after {
  content: "";
  display: block;
  width: 16px;
  width: 1rem;
  height: 18px;
  height: 1.125rem;
  -webkit-mask: url(../images/icon_blank.svg) no-repeat center/cover;
          mask: url(../images/icon_blank.svg) no-repeat center/cover;
  background-color: #59503F;
}
@media (any-hover: hover) {
  .p-drawer__left-address a:hover {
    opacity: 0.6;
  }
}

.p-drawer__left-info {
  margin-top: 20px;
  margin-top: 1.25rem;
  text-align: center;
}

.p-drawer__left-info-tel a {
  display: block;
  font-size: 30px;
  font-size: 1.875rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.02em;
}

.p-drawer__left-info-time {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
}

.p-drawer__left-reserve {
  margin-top: 30px;
  margin-top: 1.875rem;
}

.p-drawer__left-reserve-item {
  text-align: center;
}
.p-drawer__left-reserve-item a {
  display: inline-block;
  width: 100%;
  max-width: 271px;
  max-width: 16.9375rem;
  padding-block: 10.5px 12.5px;
  padding-block: 0.65625rem 0.78125rem;
  border-radius: 3.125rem;
  font-family: "Shippori Mincho B1", serif;
  background-color: #7DAE65;
  border: 1px solid #7DAE65;
  color: #fff;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1.5;
  text-align: center;
  vertical-align: top;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 1024px) {
  .p-drawer__left-reserve-item a {
    max-width: 23rem;
  }
}
@media (any-hover: hover) {
  .p-drawer__left-reserve-item a:hover {
    background-color: #fff;
    color: #7DAE65;
  }
}
.p-drawer__left-reserve-item + .p-drawer__left-reserve-item {
  margin-top: 12px;
  margin-top: 0.75rem;
}

.p-drawer__right {
  background-color: #59503F;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 60%;
  padding-block: 5.2777777778% 120px;
  padding-block: 5.2777777778% 7.5rem;
}
@media screen and (max-width: 1024px) {
  .p-drawer__right {
    width: 100%;
    padding: 6.625rem 1.875rem 2.5rem;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}

.p-drawer__right-wrap {
  position: relative;
  width: 100%;
  max-width: 666px;
  max-width: 41.625rem;
}
@media screen and (max-width: 1024px) {
  .p-drawer__right-wrap {
    max-width: 100%;
    height: 100%;
  }
}

.p-drawer-nav__title {
  color: #fff;
  font-family: "Sorts Mill Goudy", serif;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
  border-bottom: 1px solid rgba(255, 255, 255, .4);
}
.p-drawer-nav__title span {
  display: inline-block;
  font-family: "Shippori Mincho B1", serif;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  vertical-align: top;
  margin-left: 10px;
  margin-left: 0.625rem;
}

.p-drawer-nav__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 30px 65px;
  gap: 1.875rem 4.0625rem;
  margin-top: 70px;
  margin-top: 4.375rem;
}
@media screen and (max-width: 767px) {
  .p-drawer-nav__list {
    grid-template-columns: repeat(1, 1fr);
    gap: 1.875rem 2.5rem;
    margin-top: 3.75rem;
  }
}
.p-drawer-nav__list.--menu {
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (max-width: 1024px) {
  .p-drawer-nav__list.--menu {
    gap: 1.25rem;
  }
}
.p-drawer-nav__list.--menu li a {
  background-color: #fff;
  font-family: "Shippori Mincho B1", serif;
  color: #59503F;
  font-weight: 600;
  line-height: 1.5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  padding: 11px 10px 12px 10px;
  padding: 0.6875rem 0.625rem 0.75rem 0.625rem;
  border-radius: 0.25rem;
}
.p-drawer-nav__list.--menu li a::before {
  content: "";
  display: block;
  width: 11px;
  width: 0.6875rem;
  height: 18px;
  height: 1.125rem;
  -webkit-mask: url(../images/link_arrow_large.svg) no-repeat center/cover;
          mask: url(../images/link_arrow_large.svg) no-repeat center/cover;
  background-color: currentColor;
  position: absolute;
  right: 10px;
  right: 0.625rem;
  inset-block: 0;
  margin-block: auto;
}
@media (any-hover: hover) {
  .p-drawer-nav__list.--menu li a:hover {
    opacity: 0.6;
  }
}
.p-drawer-nav__list li a {
  color: #fff;
  font-family: "Sorts Mill Goudy", serif;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  display: block;
  padding-block: 10px;
  padding-block: 0.625rem;
  border-bottom: 1px solid rgba(255, 255, 255, .4);
  position: relative;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-drawer-nav__list li a::before {
  content: "";
  display: block;
  width: 7px;
  width: 0.4375rem;
  height: 12px;
  height: 0.75rem;
  -webkit-mask: url(../images/link_arrow.svg) no-repeat center/cover;
          mask: url(../images/link_arrow.svg) no-repeat center/cover;
  background-color: #fff;
  position: absolute;
  top: 5px;
  top: 0.3125rem;
  right: 0;
}
@media (any-hover: hover) {
  .p-drawer-nav__list li a:hover {
    opacity: 0.6;
  }
}
.p-drawer-nav__list li a span {
  display: inline-block;
  font-family: "Shippori Mincho B1", serif;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  vertical-align: top;
  margin-left: 10px;
  margin-left: 0.625rem;
}

.p-drawer__right-sns {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.p-drawer__right-sns-list {
  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: 12px;
  gap: 0.75rem;
}
.p-drawer__right-sns-list li {
  width: 32px;
  width: 2rem;
  height: 32px;
  height: 2rem;
}
.p-drawer__right-sns-list li a {
  display: block;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-drawer__right-sns-list li a:hover {
    opacity: 0.6;
  }
}

.p-drawer__close {
  width: 24px;
  width: 1.5rem;
  height: 24px;
  height: 1.5rem;
  position: absolute;
  top: 40px;
  top: 2.5rem;
  right: 40px;
  right: 2.5rem;
  cursor: pointer;
}
@media screen and (max-width: 1024px) {
  .p-drawer__close {
    right: 1.25rem;
  }
}

.p-footer__reserve {
  background: url(../images/footer_reserve_bg.jpg) no-repeat center/cover;
  padding-block: 88px;
  padding-block: 5.5rem;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .p-footer__reserve {
    background: url(../images/footer_reserve_bg_sp.jpg) no-repeat center/cover;
    padding-block: 3.8125rem 3.375rem;
  }
}

.p-footer__reserve-inner {
  max-width: 500px;
  max-width: 31.25rem;
  margin-inline: auto;
  text-align: center;
}
.p-footer__reserve-title {
  font-family: "Sorts Mill Goudy", serif;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
}

.p-footer__reserve-info {
  margin-top: 30px;
  margin-top: 1.875rem;
}

.p-footer__reserve-tel {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-footer__reserve-tel {
    padding-left: 1.875rem;
  }
}
.p-footer__reserve-tel span {
  font-family: "Sorts Mill Goudy", serif;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  display: block;
  position: absolute;
  top: 25px;
  top: 1.5625rem;
  left: -40px;
  left: -2.5rem;
}
@media screen and (max-width: 767px) {
  .p-footer__reserve-tel span {
    top: 1.25rem;
    left: -0.625rem;
  }
}
.p-footer__reserve-tel a {
  font-family: "Shippori Mincho B1", serif;
  font-size: 60px;
  font-size: 3.75rem;
  font-weight: 400;
  line-height: 1;
  display: block;
}
@media screen and (max-width: 767px) {
  .p-footer__reserve-tel a {
    font-size: 3.125rem;
  }
}

.p-footer__reserve-time {
  font-family: "Shippori Mincho B1", serif;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.04em;
  display: block;
  margin-top: 16px;
  margin-top: 1rem;
}

.p-footer__reserve-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  gap: 1.25rem;
  margin-top: 30px;
  margin-top: 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-footer__reserve-list {
    max-width: 19.625rem;
    margin-inline: auto;
    grid-template-columns: repeat(1, 1fr);
    gap: 1rem;
  }
}

.p-footer__reserve-item a {
  display: inline-block;
  width: 100%;
  padding-block: 13px;
  padding-block: 0.8125rem;
  border-radius: 3.125rem;
  font-family: "Shippori Mincho B1", serif;
  background-color: #7DAE65;
  border: 1px solid #7DAE65;
  color: #fff;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1.5;
  text-align: center;
  vertical-align: top;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-footer__reserve-item a:hover {
    background-color: #fff;
    color: #7DAE65;
  }
}
@media screen and (max-width: 767px) {
  .p-footer__reserve-item + .p-drawer__left-reserve-item {
    margin-top: 0.75rem;
  }
}

.p-footer__main {
  color: #fff;
  background-color: #59503F;
  padding-block: 80px;
  padding-block: 5rem;
  margin-top: -1px;
}

.p-footer__main-info {
  display: grid;
  grid-template-columns: minmax(0, 32.8125rem) minmax(0, 37.5rem);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-bottom: 80px;
  padding-bottom: 5rem;
  border-bottom: 1px solid rgba(255, 255, 255, .4);
}
@media screen and (max-width: 767px) {
  .p-footer__main-info {
    display: block;
  }
}

.p-footer__main-info-block {
  padding-left: 75px;
  padding-left: 4.6875rem;
}
@media screen and (max-width: 767px) {
  .p-footer__main-info-block {
    padding-left: 0;
  }
}

.p-footer__main-info-logo {
  max-width: 320px;
  max-width: 20rem;
}
@media screen and (max-width: 767px) {
  .p-footer__main-info-logo {
    max-width: 20.8125rem;
    margin-inline: auto;
  }
}

.p-footer__main-info-address {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
  margin-top: 40px;
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-footer__main-info-address {
    text-align: center;
    margin-top: 1.875rem;
  }
}
.p-footer__main-info-address a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  gap: 0.5rem;
  text-decoration: underline;
  position: relative;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-footer__main-info-address a::after {
  content: "";
  display: block;
  width: 16px;
  width: 1rem;
  height: 18px;
  height: 1.125rem;
  -webkit-mask: url(../images/icon_blank.svg) no-repeat center/cover;
          mask: url(../images/icon_blank.svg) no-repeat center/cover;
  background-color: #fff;
}
@media (any-hover: hover) {
  .p-footer__main-info-address a:hover {
    opacity: 0.6;
  }
}

.p-footer__main-info-map {
  width: 100%;
  height: 100%;
  aspect-ratio: 600/300;
}
@media screen and (max-width: 767px) {
  .p-footer__main-info-map {
    aspect-ratio: 368/184;
    margin-top: 1.875rem;
  }
}
.p-footer__main-info-map iframe {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-footer__main-menu-category {
  margin-top: 60px;
  margin-top: 3.75rem;
}

.p-footer__main-menu-category-title a {
  font-family: "Shippori Mincho B1", serif;
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.02em;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  gap: 0.625rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-footer__main-menu-category-title a::after {
  content: "";
  display: block;
  width: 26px;
  width: 1.625rem;
  height: 26px;
  height: 1.625rem;
  background: url(../images/circle_arrow_white.svg) no-repeat center/100% auto;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media (any-hover: hover) {
  .p-footer__main-menu-category-title a:hover {
    opacity: 0.6;
  }
}

.p-footer__main-menu-category-child {
  margin-top: 30px;
  margin-top: 1.875rem;
}

.p-footer__main-menu-child-item + .p-footer__main-menu-child-item {
  margin-top: 30px;
  margin-top: 1.875rem;
}
.p-footer__main-menu-child-item span {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.02em;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 7px;
  gap: 0.4375rem;
}
.p-footer__main-menu-child-item span::before {
  content: "";
  display: block;
  width: 3px;
  width: 0.1875rem;
  height: 1lh;
  margin-top: 1px;
  background-color: #fff;
}

.p-footer__main-menu-post {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.p-footer__main-menu-post-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px 20px;
  gap: 0.625rem 1.25rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.p-footer__main-menu-post-item a {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
  text-decoration: underline;
  text-underline-offset: 2px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-footer__main-menu-post-item a:hover {
    opacity: 0.6;
  }
}

.p-footer__bottom {
  padding-block: 60px;
  padding-block: 3.75rem;
}

.p-footer__bottom-wrap {
  display: grid;
  grid-template-columns: minmax(0, 8.375rem) minmax(0, 57.5rem);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 113px;
  gap: 7.0625rem;
}
@media screen and (max-width: 767px) {
  .p-footer__bottom-wrap {
    display: block;
  }
}

.p-footer__bottom-logo {
  max-width: 134px;
  max-width: 8.375rem;
}

@media screen and (max-width: 767px) {
  .p-footer__bottom-block {
    margin-top: 2.5rem;
  }
}

.p-footer__bottom-nav-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 18px 36px;
  gap: 1.125rem 2.25rem;
}
@media screen and (max-width: 767px) {
  .p-footer__bottom-nav-list {
    display: grid;
    grid-template-columns: minmax(0, 10rem) minmax(0, 9.25rem);
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 1.25rem;
  }
}
.p-footer__bottom-nav-list li a {
  display: block;
  font-family: "Shippori Mincho B1", serif;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.5;
  position: relative;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-footer__bottom-nav-list li a::before {
  content: "";
  display: block;
  width: 1px;
  height: 17px;
  height: 1.0625rem;
  background-color: currentColor;
  position: absolute;
  top: 3.5px;
  top: 0.21875rem;
  right: -19px;
  right: -1.1875rem;
}
@media screen and (max-width: 767px) {
  .p-footer__bottom-nav-list li a::before {
    display: none;
  }
}
@media (any-hover: hover) {
  .p-footer__bottom-nav-list li a:hover {
    opacity: 0.6;
  }
}

.p-footer__bottom-other {
  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;
  margin-top: 30px;
  margin-top: 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-footer__bottom-other {
    display: block;
  }
}

.p-footer__bottom-privacy a {
  font-family: "Shippori Mincho B1", serif;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
  text-decoration: underline;
  text-underline-offset: 1px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-footer__bottom-privacy a:hover {
    opacity: 0.6;
  }
}

@media screen and (max-width: 767px) {
  .p-footer__bottom-copyright {
    margin-top: 1.25rem;
  }
}
.p-footer__bottom-copyright small {
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.5;
}

.p-guide__read {
  text-align: center;
  padding: 20px;
  padding: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-guide__read {
    padding: 1.25rem 0;
  }
}
.p-guide__read::after {
  content: "";
  display: block;
  width: 2px;
  height: 100px;
  height: 6.25rem;
  margin-inline: auto;
  margin-top: 60px;
  margin-top: 3.75rem;
  background: -webkit-gradient(linear, left top, left bottom, from(#59503f), color-stop(72.6%, rgba(89, 80, 63, .5)), to(rgba(89, 80, 63, 0)));
  background: linear-gradient(180deg, #59503f 0%, rgba(89, 80, 63, .5) 72.6%, rgba(89, 80, 63, 0) 100%);
}
@media screen and (max-width: 767px) {
  .p-guide__read::after {
    margin-top: 2.5rem;
  }
}
.p-guide__read span {
  display: block;
}

.p-guide__read-ja {
  font-family: "Shippori Mincho B1", serif;
  font-size: 30px;
  font-size: 1.875rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .p-guide__read-ja {
    font-size: 1.5rem;
  }
}

.p-guide__read-en {
  font-family: "Sorts Mill Goudy", serif;
  color: rgba(89, 80, 63, .4);
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  margin-top: 28px;
  margin-top: 1.75rem;
}
@media screen and (max-width: 767px) {
  .p-guide__read-en {
    font-size: 0.875rem;
    margin-top: 1.25rem;
  }
}

.p-guide__title span {
  display: block;
}

.p-guide__title-en {
  font-family: "Sorts Mill Goudy", serif;
  font-size: 44px;
  font-size: 2.75rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
@media screen and (max-width: 767px) {
  .p-guide__title-en {
    font-size: 2.125rem;
  }
}

.p-guide__title-ja {
  font-family: "Shippori Mincho B1", serif;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.p-guide__strength {
  padding-block: 50px 160px;
  padding-block: 3.125rem 10rem;
}
@media screen and (max-width: 767px) {
  .p-guide__strength {
    padding-block: 1.875rem 5rem;
  }
}

.p-guide__strength-title {
  text-align: center;
}

.p-guide__strength-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  gap: 1.25rem;
  margin-top: 30px;
  margin-top: 1.875rem;
}
@media screen and (max-width: 792px) {
  .p-guide__strength-list {
    grid-template-columns: repeat(1, 1fr);
    margin-top: 2.5rem;
  }
}

.p-guide__strength-item-icon {
  width: 100px;
  width: 6.25rem;
  height: 100px;
  height: 6.25rem;
  margin-inline: auto;
  padding: 20px;
  padding: 1.25rem;
  border-radius: 50%;
  background-color: #59503F;
}

.p-guide__strength-item-wrap {
  background-color: #59503F;
  border-radius: 0.375rem;
  min-height: 154px;
  min-height: 9.625rem;
  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;
  padding: 50px 20px 40px;
  padding: 3.125rem 1.25rem 2.5rem;
  margin-top: -50px;
  margin-top: -3.125rem;
}
.p-guide__strength-item-wrap .max-width-410 {
  display: none;
}
@media screen and (max-width: 410px) {
  .p-guide__strength-item-wrap .max-width-410 {
    display: block;
  }
}

.p-guide__strength-item-text {
  color: #fff;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-guide__strength-item-text {
    font-size: 1rem;
  }
}
.p-guide__strength-item-text span {
  font-weight: 700;
}

.p-guide__check-inner {
  width: 69.4444444444%;
  max-width: 1000px;
  max-width: 62.5rem;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .p-guide__check-inner {
    width: 100%;
    padding-inline: 1.875rem;
  }
}

.p-guide__check-wrap {
  background-color: #fff;
  padding: 80px 100px;
  padding: 5rem 6.25rem;
}
@media screen and (max-width: 767px) {
  .p-guide__check-wrap {
    padding: 3.75rem 1.25rem;
  }
}

.p-guide__check-title {
  text-align: center;
  position: relative;
}
.p-guide__check-title span {
  display: block;
}

.p-guide__check-title-en {
  color: rgba(89, 80, 63, .1);
  font-family: "Sorts Mill Goudy", serif;
  font-size: 124px;
  font-size: 7.75rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
@media screen and (max-width: 767px) {
  .p-guide__check-title-en {
    font-size: 4.375rem;
  }
}

.p-guide__check-title-ja {
  font-family: "Shippori Mincho B1", serif;
  font-size: 30px;
  font-size: 1.875rem;
  font-weight: 600;
  line-height: 1.5;
  width: 100%;
  position: absolute;
  top: 20px;
  top: 1.25rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (max-width: 767px) {
  .p-guide__check-title-ja {
    font-size: 1.5rem;
    top: 0.4375rem;
  }
}

.p-guide__check-text {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 2.6;
  letter-spacing: 0.02em;
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-guide__check-text {
    margin-top: 0.75rem;
  }
}

.p-guide__check-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 80px;
  gap: 5rem;
  max-width: 520px;
  max-width: 32.5rem;
  margin-inline: auto;
  margin-top: 80px;
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .p-guide__check-list {
    grid-template-columns: repeat(1, 1fr);
    gap: 1.25rem;
    max-width: 12.5rem;
    margin-top: 2.5rem;
  }
}

.p-guide__flow {
  padding-block: 140px;
  padding-block: 8.75rem;
}
@media screen and (max-width: 767px) {
  .p-guide__flow {
    padding-block: 6.25rem 5rem;
  }
}

.p-guide__flow-wrap {
  display: grid;
  grid-template-columns: minmax(0, 12.5rem) minmax(0, 50rem);
  gap: 200px;
  gap: 12.5rem;
}
@media screen and (max-width: 767px) {
  .p-guide__flow-wrap {
    display: block;
  }
}

.p-guide__flow-title {
  text-align: left;
}

.p-guide__flow-list {
  padding-left: 25px;
  padding-left: 1.5625rem;
  counter-reset: item;
}
@media screen and (max-width: 767px) {
  .p-guide__flow-list {
    margin-top: 2.5rem;
  }
}

.p-guide__flow-item {
  counter-increment: item;
  padding-left: 45px;
  padding-left: 2.8125rem;
  border-left: 1px solid #fff;
  position: relative;
}
.p-guide__flow-item::before {
  content: "";
  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: 50px;
  width: 3.125rem;
  height: 50px;
  height: 3.125rem;
  border-radius: 6.25rem;
  background-color: #fff;
  font-family: "Shippori Mincho B1", serif;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-align: center;
  position: absolute;
  top: 0;
  left: -26px;
  left: -1.625rem;
  content: counter(item, decimal-leading-zero);
}
.p-guide__flow-item:last-child {
  border-left: 0;
}
.p-guide__flow-item:not(:last-child) {
  padding-bottom: 60px;
  padding-bottom: 3.75rem;
}
@media screen and (max-width: 767px) {
  .p-guide__flow-item:not(:last-child) {
    padding-bottom: 2.5rem;
  }
}

.p-guide__flow-item-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.5;
  padding-block: 12px;
  padding-block: 0.75rem;
}

.p-guide__flow-item-text {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-guide__flow-item-text {
    margin-top: 0.625rem;
  }
}

.p-guide__flow-item-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  gap: 1rem;
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-guide__flow-item-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0.625rem;
    max-width: 18.75rem;
    margin-top: 0.875rem;
  }
}

.p-guide__flow-info span {
  display: block;
  text-align: center;
}

.p-guide__flow-tel {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
}

.p-guide__flow-time {
  font-size: 10px;
  font-size: 0.625rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.04em;
  margin-top: 6px;
  margin-top: 0.375rem;
}

.p-guide__flow-reserve {
  width: 100%;
  max-width: 270px;
  max-width: 16.875rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .p-guide__flow-reserve {
    max-width: 18.625rem;
  }
}

.p-guide__flow-reserve-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  gap: 0.625rem;
}

.p-guide__flow-reserve-item a {
  display: inline-block;
  width: 100%;
  max-width: 130px;
  max-width: 8.125rem;
  padding-block: 5px 6px;
  padding-block: 0.3125rem 0.375rem;
  border-radius: 3.125rem;
  border: 1px solid #7DAE65;
  font-family: "Shippori Mincho B1", serif;
  background-color: #7DAE65;
  color: #fff;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1.5;
  text-align: center;
  vertical-align: top;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .p-guide__flow-reserve-item a {
    max-width: 9rem;
    padding-block: 0.4375rem 0.5rem;
  }
}
@media (any-hover: hover) {
  .p-guide__flow-reserve-item a:hover {
    background-color: #fff;
    color: #7DAE65;
  }
}

.p-guide__column-wrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  border: 1px solid #59503F;
}
@media screen and (max-width: 767px) {
  .p-guide__column-wrap {
    display: block;
  }
}

.p-guide__minors {
  padding: 100px 60px;
  padding: 6.25rem 3.75rem;
}
@media screen and (max-width: 767px) {
  .p-guide__minors {
    padding: 3.75rem 1.25rem;
  }
}

.p-guide__minors-title {
  text-align: center;
}

.p-guide__minors-text {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  text-align: center;
  margin-top: 60px;
  margin-top: 3.75rem;
}
@media screen and (max-width: 767px) {
  .p-guide__minors-text {
    margin-top: 1.25rem;
    text-align: left;
  }
}

.p-guide__minors-download {
  text-align: center;
  margin-top: 40px;
  margin-top: 2.5rem;
}
.p-guide__minors-download a {
  border-radius: 3.125rem;
  border: 1px solid #59503F;
  background-color: #59503F;
  color: #fff;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  gap: 0.5rem;
  width: 100%;
  max-width: 300px;
  max-width: 18.75rem;
  padding: 9px 19px 11px;
  padding: 0.5625rem 1.1875rem 0.6875rem;
  font-family: "Shippori Mincho B1", serif;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-guide__minors-download a::after {
  content: "";
  display: block;
  width: 18px;
  width: 1.125rem;
  height: 18px;
  height: 1.125rem;
  -webkit-mask: url(../images/guide/download_icon.svg) no-repeat center/100% auto;
          mask: url(../images/guide/download_icon.svg) no-repeat center/100% auto;
  background-color: currentColor;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-guide__minors-download a:hover {
    color: #59503F;
    background-color: #fff;
  }
}

.p-guide__minors-annotation {
  color: rgba(89, 80, 63, .6);
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  text-align: center;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.p-guide__payment {
  padding: 100px 55px;
  padding: 6.25rem 3.4375rem;
  border-left: 1px solid #59503F;
}
@media screen and (max-width: 767px) {
  .p-guide__payment {
    border-left: 0;
    border-top: 1px solid #59503F;
    padding: 3.75rem 1.25rem;
  }
}

.p-guide__payment-title {
  text-align: center;
}

.p-guide__payment-text {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  text-align: center;
  margin-top: 60px;
  margin-top: 3.75rem;
}
@media screen and (max-width: 767px) {
  .p-guide__payment-text {
    margin-top: 1.25rem;
  }
}

.p-guide__payment-list {
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-guide__payment-list {
    margin-top: 0.625rem;
  }
}

.p-guide__payment-item {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  padding-left: 16px;
  padding-left: 1rem;
  position: relative;
}
.p-guide__payment-item::before {
  content: "";
  display: block;
  width: 6px;
  width: 0.375rem;
  height: 6px;
  height: 0.375rem;
  background-color: #59503F;
  border-radius: 50%;
  position: absolute;
  top: 10px;
  top: 0.625rem;
  left: 0;
}
.p-guide__payment-item + .p-guide__payment-item {
  margin-top: 8px;
  margin-top: 0.5rem;
}

.p-header {
  width: 100%;
  height: 130px;
  height: 8.125rem;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
@media screen and (max-width: 767px) {
  .p-header {
    height: 5.625rem;
  }
}
.p-header::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(1%, rgb(237, 234, 230)), color-stop(25%, rgba(237, 234, 230, .95)), color-stop(50%, rgba(237, 234, 230, .9)), color-stop(75%, rgba(237, 234, 230, .8)), to(rgba(237, 234, 230, 0)));
  background: linear-gradient(180deg, rgb(237, 234, 230) 1%, rgba(237, 234, 230, .95) 25%, rgba(237, 234, 230, .9) 50%, rgba(237, 234, 230, .8) 75%, rgba(237, 234, 230, 0) 100%);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  opacity: 0;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.p-header::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(1%, rgb(89, 80, 63)), color-stop(25%, rgba(89, 80, 63, .95)), color-stop(50%, rgba(89, 80, 63, .9)), color-stop(75%, rgba(89, 80, 63, .8)), to(rgba(89, 80, 63, 0)));
  background: linear-gradient(180deg, rgb(89, 80, 63) 1%, rgba(89, 80, 63, .95) 25%, rgba(89, 80, 63, .9) 50%, rgba(89, 80, 63, .8) 75%, rgba(89, 80, 63, 0) 100%);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  opacity: 0;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.p-header.is-gradation::before {
  opacity: 1;
}
.p-header.is-change .p-header__container {
  color: #fff;
}
.p-header.is-change .p-header__logo svg path {
  fill: #fff;
}
.p-header.is-change .c-hamburger__icon {
  background-color: #fff;
}
.p-header.is-change::before {
  opacity: 0;
}
.p-header.is-change::after {
  opacity: 1;
}

.p-header__inner {
  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;
  height: 100%;
  width: 100%;
  margin-inline: auto;
  padding-inline: 80px;
  padding-inline: 5rem;
}
@media screen and (max-width: 767px) {
  .p-header__inner {
    padding-inline: 1.25rem;
  }
}

.p-header__logo {
  width: 100%;
  max-width: 90px;
  max-width: 5.625rem;
  padding-top: 10px;
  padding-top: 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-header__logo {
    max-width: 3.5rem;
    padding-top: 0;
  }
}
.p-header__logo svg path {
  fill: #59503F;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.p-header__logo a {
  display: block;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-header__logo a:hover {
    opacity: 0.6;
  }
}

.p-header__wrap {
  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;
  width: 100%;
}

.p-header__info {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .p-header__info {
    display: none;
  }
}
.p-header__info span {
  display: block;
  text-align: center;
}

.p-header__tel {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
}

.p-header__time {
  font-size: 10px;
  font-size: 0.625rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.04em;
  margin-top: 6px;
  margin-top: 0.375rem;
}

.p-header__reserve {
  width: 100%;
  max-width: 270px;
  max-width: 16.875rem;
  margin-left: 16px;
  margin-left: 1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .p-header__reserve {
    display: none;
  }
}

.p-header__reserve-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  gap: 0.625rem;
}

.p-header__reserve-item a {
  display: inline-block;
  width: 100%;
  max-width: 130px;
  max-width: 8.125rem;
  padding-block: 5px 6px;
  padding-block: 0.3125rem 0.375rem;
  border-radius: 3.125rem;
  border: 1px solid #7DAE65;
  font-family: "Shippori Mincho B1", serif;
  background-color: #7DAE65;
  color: #fff;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1.5;
  text-align: center;
  vertical-align: top;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-header__reserve-item a:hover {
    background-color: #fff;
    color: #7DAE65;
  }
}

.p-header__nav {
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (max-width: 1390px) {
  .p-header__nav {
    display: none;
  }
}

.p-header__nav-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  gap: 1.25rem;
}
.p-header__nav-list li a {
  display: block;
  font-family: "Shippori Mincho B1", serif;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  position: relative;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-header__nav-list li a:hover {
    opacity: 0.6;
  }
}

.p-price {
  display: grid;
  grid-template-columns: minmax(0, 15rem) minmax(0, 55rem);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 80px;
  gap: 5rem;
}
@media screen and (max-width: 767px) {
  .p-price {
    display: block;
  }
}

.p-price__side {
  position: sticky;
  top: 130px;
  top: 8.125rem;
  left: 0;
}
@media screen and (max-width: 767px) {
  .p-price__side {
    position: static;
  }
}

.p-price__side-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.5;
}

.p-price__side-select {
  margin-top: 10px;
  margin-top: 0.625rem;
  position: relative;
}
.p-price__side-select::before {
  content: "";
  display: block;
  width: 14px;
  width: 0.875rem;
  height: 8px;
  height: 0.5rem;
  background: url(../images/price/select_arrow.svg) no-repeat center/100% auto;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 12px;
  right: 0.75rem;
  pointer-events: none;
}
.p-price__side-select select {
  color: #231815;
  width: 100%;
  padding: 12px 40px 12px 12px;
  padding: 0.75rem 2.5rem 0.75rem 0.75rem;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
  background-color: #fff;
  border-radius: 0.375rem;
  border: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: none;
  cursor: pointer;
}
.p-price__side-select + .p-price__side-title {
  margin-top: 20px;
  margin-top: 1.25rem;
}

@media screen and (max-width: 767px) {
  .p-price__tab {
    margin-top: 5rem;
  }
}

.p-price__tab-nav ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  padding-block: 6px;
  padding-block: 0.375rem;
  border-top: 1px solid rgba(89, 80, 63, .4);
  border-bottom: 1px solid rgba(89, 80, 63, .4);
}
.p-price__tab-nav li {
  border-radius: 0.25rem;
  font-family: "Shippori Mincho B1", serif;
  color: rgba(89, 80, 63, .6);
  font-size: 26px;
  font-size: 1.625rem;
  font-weight: 600;
  line-height: 1.5;
  text-align: center;
  padding-block: 12px 16px;
  padding-block: 0.75rem 1rem;
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .p-price__tab-nav li {
    font-size: 1.25rem;
  }
}
.p-price__tab-nav li.is_active {
  background-color: #59503F;
  color: #fff;
  pointer-events: none;
}
@media (any-hover: hover) {
  .p-price__tab-nav li.is_active:hover {
    opacity: 1;
  }
}
@media (any-hover: hover) {
  .p-price__tab-nav li:hover {
    color: #59503F;
  }
}

.p-price__tab-sub {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
  margin-top: 20px;
  margin-top: 1.25rem;
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
}
.p-price__tab-sub.--single {
  margin-top: 0;
}

.p-price__tab-content {
  display: none;
}
.p-price__tab-content.is_active {
  display: block;
}

.p-price__tab-list {
  margin-top: 80px;
  margin-top: 5rem;
}

.p-price__tab-wrap + .p-price__tab-wrap {
  margin-top: 80px;
  margin-top: 5rem;
}

.p-price__tab-term {
  font-family: "Shippori Mincho B1", serif;
  font-size: 26px;
  font-size: 1.625rem;
  font-weight: 600;
  line-height: 1.5;
  margin-top: 40px;
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-price__tab-term {
    font-size: 1.5rem;
  }
}

.p-price__tab-post-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.02em;
  padding-left: 20px;
  padding-left: 1.25rem;
  border-left: 4px solid #59503F;
  border-left: 0.25rem solid #59503F;
  margin-top: 40px;
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-price__tab-post-title {
    font-size: 1.125rem;
    margin-top: 1.875rem;
  }
}

.p-price__tab-table-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-block: 18px;
  padding-block: 1.125rem;
  border-bottom: 1px solid rgba(89, 80, 63, .4);
}
@media screen and (max-width: 767px) {
  .p-price__tab-table-row {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0.625rem;
  }
}
.p-price__tab-table-row:has(+ .un_empty) {
  padding-bottom: 0;
  border-bottom: none;
}
.p-price__tab-table-row + .p-price__tab-table-row.un_empty {
  padding-top: 0;
  border-bottom: 1px solid rgba(89, 80, 63, .4);
}
.p-price__tab-table-row.un_empty:has(+ .un_empty) {
  padding-block: 0;
  border-bottom: none;
}
.p-price__tab-table-row .p-price__tab-table-title {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 398px;
          flex: 1 1 398px;
  -ms-flex: 1 1 24.875rem;
      flex: 1 1 24.875rem;
  max-width: 398px;
  max-width: 24.875rem;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .p-price__tab-table-row .p-price__tab-table-title {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 100%;
            flex: 1 1 100%;
    max-width: 100%;
  }
}
.p-price__tab-table-row .p-price__tab-table-content {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
}
.p-price__tab-table-row .p-price__tab-table-content.--center {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 120px;
          flex: 1 1 120px;
  -ms-flex: 1 1 7.5rem;
      flex: 1 1 7.5rem;
  max-width: 120px;
  max-width: 7.5rem;
  margin-left: auto;
}
@media screen and (max-width: 767px) {
  .p-price__tab-table-row .p-price__tab-table-content.--center {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 6.125rem;
            flex: 1 1 6.125rem;
    max-width: 12.5rem;
    margin-left: 0;
  }
}
.p-price__tab-table-row .p-price__tab-table-content.--price_view {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 120px;
          flex: 1 1 120px;
  -ms-flex: 1 1 7.5rem;
      flex: 1 1 7.5rem;
  max-width: 120px;
  max-width: 7.5rem;
  margin-left: 16px;
  margin-left: 1rem;
}
@media screen and (max-width: 767px) {
  .p-price__tab-table-row .p-price__tab-table-content.--price_view {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 6.125rem;
            flex: 1 1 6.125rem;
    max-width: 12.5rem;
  }
}
.p-price__tab-table-row .p-price__tab-table-content.--right {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 120px;
          flex: 1 1 120px;
  -ms-flex: 1 1 7.5rem;
      flex: 1 1 7.5rem;
  max-width: 120px;
  max-width: 7.5rem;
  margin-left: 16px;
  margin-left: 1rem;
  text-align: right;
}
@media screen and (max-width: 767px) {
  .p-price__tab-table-row .p-price__tab-table-content.--right {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 6.125rem;
            flex: 1 1 6.125rem;
    max-width: 12.5rem;
    margin-left: auto;
  }
}

.p-price__tab-set-price {
  background-color: #fff;
  border-radius: 0.375rem;
  padding: 20px;
  padding: 1.25rem;
  margin-top: 30px;
  margin-top: 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-price__tab-set-price .p-price__tab-table-content.--center {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 4.875rem;
            flex: 1 1 4.875rem;
    max-width: 12.5rem;
  }
}
@media screen and (max-width: 767px) {
  .p-price__tab-set-price .p-price__tab-table-content.--price_view {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 4.875rem;
            flex: 1 1 4.875rem;
    max-width: 12.5rem;
  }
}
@media screen and (max-width: 767px) {
  .p-price__tab-set-price .p-price__tab-table-content.--right {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 4.875rem;
            flex: 1 1 4.875rem;
    max-width: 12.5rem;
  }
}

.p-price__tab-set-price-title {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  padding-left: 26px;
  padding-left: 1.625rem;
  position: relative;
}
.p-price__tab-set-price-title::before {
  content: "";
  display: block;
  width: 20px;
  width: 1.25rem;
  height: 20px;
  height: 1.25rem;
  background: url(../images/icon_seto_price.svg) no-repeat center/contain;
  position: absolute;
  top: 5px;
  top: 0.3125rem;
  left: 0;
}

.p-price__tab-info {
  color: rgba(89, 80, 63, .6);
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.p-privacy__text {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
}

.p-privacy__section-list {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.p-privacy__item + .p-privacy__item {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.p-privacy__item-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 26px;
  font-size: 1.625rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .p-privacy__item-title {
    font-size: 1.25rem;
  }
}
.p-privacy__item-title + * {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.p-privacy__item-list {
  padding-left: 1.5em;
  text-indent: -1.5em;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.p-privacy__item-item {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
}

.p-privacy__item-child {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  text-indent: 0;
  list-style-type: lower-alpha;
  margin-left: 40px;
  margin-left: 2.5rem;
}
.p-privacy__item-child ul {
  text-indent: 0;
}
.p-privacy__item-child ul li {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  list-style-type: upper-roman;
  margin-left: 20px;
  margin-left: 1.25rem;
}

.p-privacy__item-box {
  background-color: #fff;
  border-radius: 0.375rem;
  padding: 24px;
  padding: 1.5rem;
  margin-top: 20px;
  margin-top: 1.25rem;
}
.p-privacy__item-box ul li {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
}

.p-about__read {
  font-family: "Shippori Mincho B1", serif;
  font-size: 40px;
  font-size: 2.5rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .p-about__read {
    font-size: 1.5rem;
  }
}

.p-about__text {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.04em;
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-about__text {
    font-size: 1rem;
  }
}

.p-about__slider {
  margin-top: 80px;
  margin-top: 5rem;
  padding-bottom: 140px;
  padding-bottom: 8.75rem;
}
@media screen and (max-width: 767px) {
  .p-about__slider {
    margin-top: 2.5rem;
    padding-bottom: 5rem;
  }
}
.p-about__slider .swiper-wrapper {
  -webkit-transition-timing-function: linear !important;
          transition-timing-function: linear !important;
}
.p-about__slider .swiper-slide {
  max-width: 580px;
  max-width: 36.25rem;
}
@media screen and (max-width: 767px) {
  .p-about__slider .swiper-slide {
    max-width: 17.5rem;
  }
}
.p-about__slider .swiper-slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0.625rem;
}

.p-about__strength {
  padding-block: 40px;
  padding-block: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-about__strength {
    padding: 0;
  }
}

.p-about__strength-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 30px;
  font-size: 1.875rem;
  font-weight: 600;
  line-height: 1.8;
  letter-spacing: 0.05em;
  text-align: center;
  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: 20px;
  gap: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-about__strength-title {
    font-size: 1.25rem;
    gap: 1rem;
  }
}
.p-about__strength-title span {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.p-about__strength-title::before, .p-about__strength-title::after {
  content: "";
  display: block;
  width: 40px;
  width: 2.5rem;
  height: 1px;
  background-color: #59503F;
}

.p-about__strength-wrap {
  border-radius: 0.375rem;
  background-color: #59503F;
  padding: 48px 40px;
  padding: 3rem 2.5rem;
  margin-top: 40px;
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-about__strength-wrap {
    padding: 1.5rem 1.25rem;
  }
}

.p-about__strength-logo {
  max-width: 223px;
  max-width: 13.9375rem;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .p-about__strength-logo {
    max-width: 7rem;
  }
}

.p-about__strength-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  gap: 1.25rem;
  margin-top: 40px;
  margin-top: 2.5rem;
  counter-reset: item;
}
@media screen and (max-width: 767px) {
  .p-about__strength-list {
    grid-template-columns: repeat(1, 1fr);
    margin-top: 1.25rem;
  }
}

.p-about__strength-item {
  background-color: #fff;
  border-radius: 0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  min-height: 328px;
  min-height: 20.5rem;
  padding: 30px 20px;
  padding: 1.875rem 1.25rem;
  counter-increment: item;
}
@media screen and (max-width: 767px) {
  .p-about__strength-item {
    min-height: 0;
    padding: 1.875rem 0.5rem;
  }
}

.p-about__strength-item-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: center;
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
  border-bottom: 1px dashed rgba(89, 80, 63, .4);
}
@media screen and (max-width: 767px) {
  .p-about__strength-item-title {
    font-size: 1rem;
  }
}
.p-about__strength-item-title::before {
  content: "";
  display: block;
  margin-bottom: 10px;
  margin-bottom: 0.625rem;
  font-family: "Shippori Mincho B1", serif;
  font-size: 28px;
  font-size: 1.75rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.04em;
  text-align: center;
  content: counter(item, decimal-leading-zero);
}
.p-about__strength-item-title span {
  display: inline-block;
}

.p-about__strength-item-text {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  margin-top: 30px;
  margin-top: 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-about__strength-item-text {
    padding-inline: 1.375rem;
  }
}

.p-about__strength-item-more {
  text-align: center;
  margin-top: auto;
}
@media screen and (max-width: 767px) {
  .p-about__strength-item-more {
    margin-top: 1.875rem;
  }
}
.p-about__strength-item-more a {
  max-width: 225px;
  max-width: 14.0625rem;
  gap: 8px;
  gap: 0.5rem;
}

.p-about__info {
  padding-block: 140px;
  padding-block: 8.75rem;
}
@media screen and (max-width: 767px) {
  .p-about__info {
    padding-block: 5rem;
  }
}

.p-about__info-wrap {
  display: grid;
  grid-template-columns: minmax(0, 25rem) minmax(0, 37.5rem);
  gap: 200px;
  gap: 12.5rem;
}
@media screen and (max-width: 767px) {
  .p-about__info-wrap {
    display: block;
  }
}

.p-about__info-title span {
  display: block;
}

.p-about__info-title-en {
  font-family: "Sorts Mill Goudy", serif;
  font-size: 44px;
  font-size: 2.75rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
@media screen and (max-width: 767px) {
  .p-about__info-title-en {
    font-size: 2.125rem;
  }
}

.p-about__info-title-ja {
  font-family: "Shippori Mincho B1", serif;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  margin-top: 10px;
  margin-top: 0.625rem;
}

@media screen and (max-width: 767px) {
  .p-about__info-dl {
    margin-top: 2.5rem;
  }
}

.p-about__info-dl-wrap {
  border-bottom: 1px solid rgba(89, 80, 63, .4);
  display: grid;
  grid-template-columns: minmax(0, 9.375rem) minmax(0, 27.5rem);
  gap: 20px;
  gap: 1.25rem;
  padding-block: 24px;
  padding-block: 1.5rem;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .p-about__info-dl-wrap {
    grid-template-columns: minmax(0, 6.25rem) minmax(0, 16.125rem);
    gap: 0.625rem;
    font-size: 0.875rem;
  }
}
.p-about__info-dl-wrap:first-child {
  padding-top: 0;
}
.p-about__info-dl-wrap dt {
  font-weight: 500;
}
.p-about__info-dl-map {
  text-decoration: underline;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  gap: 0.5rem;
  margin-top: 8px;
  margin-top: 0.5rem;
  position: relative;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-about__info-dl-map::after {
  content: "";
  display: block;
  width: 16px;
  width: 1rem;
  height: 18px;
  height: 1.125rem;
  -webkit-mask: url(../images/icon_blank.svg) no-repeat center/cover;
          mask: url(../images/icon_blank.svg) no-repeat center/cover;
  background-color: currentColor;
}
@media (any-hover: hover) {
  .p-about__info-dl-map:hover {
    opacity: 0.6;
  }
}

.p-about__reserve {
  margin-top: 80px;
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .p-about__reserve {
    margin-top: 0;
  }
}

.p-about__reserve-wrap {
  border: 1px solid #59503F;
  border-radius: 0.375rem;
  padding: 40px;
  padding: 2.5rem;
  font-family: "Shippori Mincho B1", serif;
  text-align: center;
}

.p-about__reserve-title {
  font-size: 30px;
  font-size: 1.875rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .p-about__reserve-title {
    font-size: 1.5rem;
  }
}

.p-about__reserve-text {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.8;
  letter-spacing: 0.02em;
  margin-top: 32px;
  margin-top: 2rem;
}

.p-about__reserve-time {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-top: 32px;
  margin-top: 2rem;
}
.p-about__reserve-time > span {
  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: 6px;
  margin-top: 0.375rem;
}
.p-about__reserve-time .--text-medium {
  font-size: 22px;
  font-size: 1.375rem;
}
.p-about__reserve-time .--text-large {
  font-size: 24px;
  font-size: 1.5rem;
}

.p-block-editor > *:first-child,
.editor-styles-wrapper > *:first-child {
  margin-top: 0 !important;
}
.p-block-editor h2.wp-block-heading,
.p-block-editor h2:not([class]),
.editor-styles-wrapper h2.wp-block-heading,
.editor-styles-wrapper h2:not([class]) {
  background-color: #59503F;
  border-radius: 0.125rem;
  color: #fff;
  font-family: "Shippori Mincho B1", serif;
  font-size: 26px;
  font-size: 1.625rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.04em;
  padding: 10px 20px;
  padding: 0.625rem 1.25rem;
  margin-top: 60px;
  margin-top: 3.75rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-block-editor h2.wp-block-heading,
  .p-block-editor h2:not([class]),
  .editor-styles-wrapper h2.wp-block-heading,
  .editor-styles-wrapper h2:not([class]) {
    font-size: 1.25rem;
    margin-top: 2.5rem;
  }
}
.p-block-editor h3.wp-block-heading,
.p-block-editor h3:not([class]),
.editor-styles-wrapper h3.wp-block-heading,
.editor-styles-wrapper h3:not([class]) {
  font-family: "Shippori Mincho B1", serif;
  color: #59503F;
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  padding-block: 3.5px 10px;
  padding-block: 0.21875rem 0.625rem;
  border-bottom: 2px solid currentColor;
  border-bottom: 0.125rem solid currentColor;
  margin-top: 40px;
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-block-editor h3.wp-block-heading,
  .p-block-editor h3:not([class]),
  .editor-styles-wrapper h3.wp-block-heading,
  .editor-styles-wrapper h3:not([class]) {
    font-size: 1.125rem;
    padding-block: 0.40625rem 0.625rem;
  }
}
.p-block-editor h4.wp-block-heading,
.p-block-editor h4:not([class]),
.editor-styles-wrapper h4.wp-block-heading,
.editor-styles-wrapper h4:not([class]) {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.4;
  margin-top: 20px;
  margin-top: 1.25rem;
}
.p-block-editor p:not([class]),
.editor-styles-wrapper p:not([class]) {
  color: #59503F;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  margin-top: 10px;
  margin-top: 0.625rem;
}
.p-block-editor p:not([class]) a,
.editor-styles-wrapper p:not([class]) a {
  text-decoration: underline;
  text-underline-offset: 2px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-block-editor p:not([class]) a:hover,
  .editor-styles-wrapper p:not([class]) a:hover {
    opacity: 0.5;
  }
}
.p-block-editor p:not([class]) strong,
.editor-styles-wrapper p:not([class]) strong {
  font-weight: 700;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, rgba(125, 174, 101, .4)));
  background: linear-gradient(transparent 70%, rgba(125, 174, 101, .4) 70%);
}
.p-block-editor p.is-style-column-title,
.editor-styles-wrapper p.is-style-column-title {
  color: #59503F;
  font-family: "Shippori Mincho B1", serif;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.02em;
  padding-block: 9px 6px;
  padding-block: 0.5625rem 0.375rem;
}
.p-block-editor p.is-style-column-title + .wp-block-image,
.editor-styles-wrapper p.is-style-column-title + .wp-block-image {
  margin-top: 10px;
  margin-top: 0.625rem;
}
.p-block-editor .wp-block-list,
.editor-styles-wrapper .wp-block-list {
  list-style: none;
  margin-top: 20px;
  margin-top: 1.25rem;
}
.p-block-editor .wp-block-list li,
.editor-styles-wrapper .wp-block-list li {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  padding-left: 16px;
  padding-left: 1rem;
  position: relative;
}
.p-block-editor .wp-block-list li::before,
.editor-styles-wrapper .wp-block-list li::before {
  content: "";
  display: block;
  width: 6px;
  width: 0.375rem;
  height: 6px;
  height: 0.375rem;
  background-color: #59503F;
  border-radius: 50%;
  position: absolute;
  top: 11px;
  top: 0.6875rem;
  left: 0;
}
.p-block-editor .wp-block-list li + li,
.editor-styles-wrapper .wp-block-list li + li {
  margin-top: 8px;
  margin-top: 0.5rem;
}
.p-block-editor .wp-block-list.is-style-check-list,
.editor-styles-wrapper .wp-block-list.is-style-check-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px 60px;
  gap: 0.625rem 3.75rem;
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-block-editor .wp-block-list.is-style-check-list,
  .editor-styles-wrapper .wp-block-list.is-style-check-list {
    grid-template-columns: repeat(1, 1fr);
    gap: 0.625rem;
  }
}
.p-block-editor .wp-block-list.is-style-check-list li,
.editor-styles-wrapper .wp-block-list.is-style-check-list li {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  padding-left: 34px;
  padding-left: 2.125rem;
  margin: 0;
}
.p-block-editor .wp-block-list.is-style-check-list li::before,
.editor-styles-wrapper .wp-block-list.is-style-check-list li::before {
  width: 24px;
  width: 1.5rem;
  height: 24px;
  height: 1.5rem;
  background: url(../images/block-style/icon_check_list.svg) no-repeat center/100% auto;
  top: 0.5px;
  top: 0.03125rem;
}
.p-block-editor .wp-block-columns,
.editor-styles-wrapper .wp-block-columns {
  margin-top: 30px;
  margin-top: 1.875rem;
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .p-block-editor .wp-block-columns,
  .editor-styles-wrapper .wp-block-columns {
    margin-top: 1.25rem;
  }
}
.p-block-editor .wp-block-columns + .wp-block-columns,
.editor-styles-wrapper .wp-block-columns + .wp-block-columns {
  margin-top: 40px;
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-block-editor .wp-block-columns + .wp-block-columns,
  .editor-styles-wrapper .wp-block-columns + .wp-block-columns {
    margin-top: 1.25rem;
  }
}
.p-block-editor .wp-block-columns p:nth-child(1),
.editor-styles-wrapper .wp-block-columns p:nth-child(1) {
  margin-top: 0;
}
.p-block-editor .wp-block-image,
.editor-styles-wrapper .wp-block-image {
  margin-top: 24px;
  margin-top: 1.5rem;
}
.p-block-editor .wp-element-caption,
.editor-styles-wrapper .wp-element-caption {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
}
.p-block-editor .wp-block-image :where(figcaption),
.editor-styles-wrapper .wp-block-image :where(figcaption) {
  margin-top: 10px;
  margin-top: 0.625rem;
  margin-bottom: 0;
}
.p-block-editor .wp-block-buttons,
.editor-styles-wrapper .wp-block-buttons {
  margin-top: 30px;
  margin-top: 1.875rem;
}
.p-block-editor .wp-block-button,
.editor-styles-wrapper .wp-block-button {
  width: 100%;
  max-width: 240px;
  max-width: 15rem;
}
.p-block-editor .wp-block-button__link,
.editor-styles-wrapper .wp-block-button__link {
  background-color: #59503F;
  border-radius: 3.125rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 8px;
  gap: 0.5rem;
  width: 100%;
  padding: 10px 20px 12px;
  padding: 0.625rem 1.25rem 0.75rem;
  color: #fff;
  font-family: "Shippori Mincho B1", serif;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-block-editor .wp-block-button__link::after,
.editor-styles-wrapper .wp-block-button__link::after {
  content: "";
  display: block;
  width: 20px;
  width: 1.25rem;
  height: 20px;
  height: 1.25rem;
  background: url(../images/circle_arrow_white.svg) no-repeat center/100% auto;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media (any-hover: hover) {
  .p-block-editor .wp-block-button__link:hover,
  .editor-styles-wrapper .wp-block-button__link:hover {
    opacity: 0.6;
  }
}
.p-block-editor .wp-block-flexible-table-block-table,
.editor-styles-wrapper .wp-block-flexible-table-block-table {
  width: 100%;
  margin-top: 30px;
  margin-top: 1.875rem;
}
.p-block-editor .wp-block-flexible-table-block-table > table.has-fixed-layout,
.editor-styles-wrapper .wp-block-flexible-table-block-table > table.has-fixed-layout {
  table-layout: auto;
  border-spacing: 0;
  border: 1px solid rgba(89, 80, 63, .4);
}
.p-block-editor .wp-block-flexible-table-block-table > table thead tr th,
.editor-styles-wrapper .wp-block-flexible-table-block-table > table thead tr th {
  background-color: #59503F;
  border-bottom: 1px solid #fff;
  font-size: 14px;
  font-size: 0.875rem;
}
.p-block-editor .wp-block-flexible-table-block-table > table thead tr th:first-child,
.editor-styles-wrapper .wp-block-flexible-table-block-table > table thead tr th:first-child {
  background-color: rgba(89, 80, 63, .6);
  font-size: 16px;
  font-size: 1rem;
}
.p-block-editor .wp-block-flexible-table-block-table > table thead tr th:not(:first-child):not(:last-child),
.editor-styles-wrapper .wp-block-flexible-table-block-table > table thead tr th:not(:first-child):not(:last-child) {
  border-right: 1px solid #fff;
}
.p-block-editor .wp-block-flexible-table-block-table > table tr th, .p-block-editor .wp-block-flexible-table-block-table > table tr td,
.editor-styles-wrapper .wp-block-flexible-table-block-table > table tr th,
.editor-styles-wrapper .wp-block-flexible-table-block-table > table tr td {
  vertical-align: top;
  padding: 10px 20px;
  padding: 0.625rem 1.25rem;
  border: none;
}
.p-block-editor .wp-block-flexible-table-block-table > table tr th,
.editor-styles-wrapper .wp-block-flexible-table-block-table > table tr th {
  min-width: 180px;
  min-width: 11.25rem;
  font-family: "Shippori Mincho B1", serif;
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  background-color: rgba(89, 80, 63, .6);
}
@media screen and (max-width: 767px) {
  .p-block-editor .wp-block-flexible-table-block-table > table tr th,
  .editor-styles-wrapper .wp-block-flexible-table-block-table > table tr th {
    padding: 0.625rem 1.25rem 0.75rem;
  }
}
.p-block-editor .wp-block-flexible-table-block-table > table tr th:not(:last-child),
.editor-styles-wrapper .wp-block-flexible-table-block-table > table tr th:not(:last-child) {
  border-right: 1px solid #fff;
}
.p-block-editor .wp-block-flexible-table-block-table > table tr td,
.editor-styles-wrapper .wp-block-flexible-table-block-table > table tr td {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.8;
  background-color: #fff;
  border-bottom: 1px solid rgba(89, 80, 63, .4);
  border-left: 1px solid rgba(89, 80, 63, .4);
}
@media screen and (max-width: 767px) {
  .p-block-editor .wp-block-flexible-table-block-table > table tr td,
  .editor-styles-wrapper .wp-block-flexible-table-block-table > table tr td {
    padding: 0.625rem 1.25rem 0.75rem;
  }
}
.p-block-editor .wp-block-flexible-table-block-table > table tr:not(:last-child) th,
.editor-styles-wrapper .wp-block-flexible-table-block-table > table tr:not(:last-child) th {
  background-color: rgba(89, 80, 63, .6);
  border-bottom: 1px solid #fff;
}

@media (any-hover: hover) {
  .editor-styles-wrapper .wp-block-button__link:hover {
    opacity: 1;
  }
}

.p-blog-archive {
  display: grid;
  grid-template-columns: minmax(0, 18.75rem) minmax(0, 51.25rem);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 80px;
  gap: 5rem;
}
@media screen and (max-width: 767px) {
  .p-blog-archive {
    display: block;
  }
}

.p-blog__sidebar {
  position: sticky;
  top: 130px;
  top: 8.125rem;
  right: 0;
}
@media screen and (max-width: 767px) {
  .p-blog__sidebar {
    width: 100%;
    position: static;
  }
}

.p-blog__sidebar-section + .p-blog__sidebar-section {
  margin-top: 40px;
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-blog__sidebar-section + .p-blog__sidebar-section {
    margin-top: 1.25rem;
  }
}

.p-blog__sidebar-section-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
  border-bottom: 1px solid rgba(89, 80, 63, .4);
}
.p-blog__sidebar-section-title + * {
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-blog__sidebar-section-title + * {
    margin-top: 0.625rem;
  }
}

@media screen and (max-width: 767px) {
  .p-blog__sidebar-category-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0.5rem 1.25rem;
    padding-bottom: 0.625rem;
  }
}
.p-blog__sidebar-category-list li a {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.8;
  display: inline-block;
  padding-left: 16px;
  padding-left: 1rem;
  position: relative;
  opacity: 0.4;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .p-blog__sidebar-category-list li a {
    padding-left: 0;
  }
}
.p-blog__sidebar-category-list li a::before {
  content: "";
  display: none;
  width: 6px;
  width: 0.375rem;
  height: 6px;
  height: 0.375rem;
  border-radius: 50%;
  background-color: currentColor;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .p-blog__sidebar-category-list li a::before {
    display: none;
  }
}
@media (any-hover: hover) {
  .p-blog__sidebar-category-list li a:hover {
    opacity: 1;
  }
}
@media screen and (any-hover: hover) and (max-width: 767px) {
  .p-blog__sidebar-category-list li a:hover {
    text-decoration: underline;
    text-underline-offset: 0.125rem;
  }
}
.p-blog__sidebar-category-list li + li {
  margin-top: 10px;
  margin-top: 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-blog__sidebar-category-list li + li {
    margin-top: 0;
  }
}
.p-blog__sidebar-category-list li.is-active {
  pointer-events: none;
}
.p-blog__sidebar-category-list li.is-active a {
  opacity: 1;
}
@media screen and (max-width: 767px) {
  .p-blog__sidebar-category-list li.is-active a {
    text-decoration: underline;
    text-underline-offset: 0.125rem;
  }
}
.p-blog__sidebar-category-list li.is-active a::before {
  display: block;
}
@media screen and (max-width: 767px) {
  .p-blog__sidebar-category-list li.is-active a::before {
    display: none;
  }
}

.p-blog__sidebar-key-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4px 10px;
  gap: 0.25rem 0.625rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .p-blog__sidebar-key-list {
    gap: 0.5rem 1.25rem;
    padding-bottom: 0.625rem;
  }
}
.p-blog__sidebar-key-list li a {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.8;
  display: block;
  position: relative;
  opacity: 0.4;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-blog__sidebar-key-list li a:hover {
    opacity: 1;
  }
}
@media screen and (any-hover: hover) and (max-width: 767px) {
  .p-blog__sidebar-key-list li a:hover {
    text-decoration: underline;
    text-underline-offset: 0.125rem;
  }
}
.p-blog__sidebar-key-list li.is-active {
  pointer-events: none;
}
.p-blog__sidebar-key-list li.is-active a {
  opacity: 1;
}
@media screen and (max-width: 767px) {
  .p-blog__sidebar-key-list li.is-active a {
    text-decoration: underline;
    text-underline-offset: 0.125rem;
  }
}
.p-blog__sidebar-key-list li.is-active a::before {
  display: block;
}
@media screen and (max-width: 767px) {
  .p-blog__sidebar-key-list li.is-active a::before {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .p-blog-archive__content {
    margin-top: 2.5rem;
  }
}

.p-blog-archive__content-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px;
  gap: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-blog-archive__content-list {
    gap: 2.5rem 1.25rem;
  }
}

.p-blog-archive__content-item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-blog-archive__content-item a:hover {
    opacity: 0.6;
  }
}

.p-blog-archive__content-item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0.375rem;
  aspect-ratio: 390/220;
}
@media screen and (max-width: 767px) {
  .p-blog-archive__content-item-img img {
    aspect-ratio: 174/104;
  }
}

.p-blog-archive__content-item-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  margin-top: 16px;
  margin-top: 1rem;
}

.p-blog-archive__content-item-time {
  font-family: "Shippori Mincho B1", serif;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
}

.p-blog-archive__content-item-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.02em;
  margin-top: 8px;
  margin-top: 0.5rem;
}
@media screen and (max-width: 767px) {
  .p-blog-archive__content-item-title {
    font-size: 1rem;
  }
}

.p-blog-archive__content-item-meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px;
  gap: 0.625rem;
  margin-top: 8px;
  margin-top: 0.5rem;
}
@media screen and (max-width: 767px) {
  .p-blog-archive__content-item-meta {
    gap: 0.125rem 0.625rem;
  }
}

.p-blog-archive__content-item-category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
  gap: 0.5rem;
}
.p-blog-archive__content-item-category span {
  background-color: #59503F;
  color: #fff;
  border-radius: 0.125rem;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
  padding: 0 10px 2px;
  padding: 0 0.625rem 0.125rem;
}

.p-blog-archive__content-item-keyword {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  gap: 0.5rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.p-blog-archive__content-item-keyword span {
  display: block;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
}

.p-case-archive__pagination {
  margin-top: 80px;
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .p-case-archive__pagination {
    margin-top: 3.75rem;
  }
}

.p-blog-single {
  padding-block: 80px 140px;
  padding-block: 5rem 8.75rem;
}
@media screen and (max-width: 767px) {
  .p-blog-single {
    padding-block: 3.75rem 6.25rem;
  }
}
@media screen and (max-width: 767px) {
  .p-blog-single .p-block-editor table tr th:not(:last-child) {
    border-right: 0;
  }
}
@media screen and (max-width: 767px) {
  .p-blog-single .p-block-editor table tr td {
    border-left: 0;
    border-bottom: 0;
  }
}

.p-blog-single__layout {
  display: grid;
  grid-template-columns: minmax(0, 18.75rem) minmax(0, 51.25rem);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 80px;
  gap: 5rem;
}
@media screen and (max-width: 767px) {
  .p-blog-single__layout {
    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;
  }
}

.p-blog-single__supervisor {
  margin-bottom: 40px;
  margin-bottom: 2.5rem;
  padding: 30px 40px;
  padding: 1.875rem 2.5rem;
  border: 1px solid rgba(89, 80, 63, .4);
  border-radius: 0.375rem;
}

.p-blog-single__supervisor-wrap {
  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;
}
@media screen and (max-width: 767px) {
  .p-blog-single__supervisor-wrap {
    display: block;
  }
}

.p-blog-single__supervisor-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
  gap: 1.25rem;
}

.p-blog-single__supervisor-img {
  width: 80px;
  width: 5rem;
  height: 80px;
  height: 5rem;
  border-radius: 50%;
}
.p-blog-single__supervisor-img img {
  width: 80px;
  width: 5rem;
  height: 80px;
  height: 5rem;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 1/1;
  border-radius: 50%;
}

.p-blog-single__supervisor-meta span {
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
}

.p-blog-single__supervisor-meta-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1em;
}

.p-blog-single__supervisor-job,
.p-blog-single__supervisor-name {
  font-family: "Shippori Mincho B1", serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.02em;
}

.p-blog-single__supervisor-sns {
  padding-top: 10px;
  padding-top: 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-blog-single__supervisor-sns {
    padding-top: 0;
    margin-top: 1.25rem;
  }
}

.p-blog-single__supervisor-sns-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  gap: 0.75rem;
  max-width: 164px;
  max-width: 10.25rem;
}

.p-blog-single__supervisor-sns-item a {
  display: block;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-blog-single__supervisor-sns-item a:hover {
    opacity: 0.6;
  }
}

.p-blog-single__supervisor-text {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  margin-top: 10px;
  margin-top: 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-blog-single__supervisor-text {
    margin-top: 1.25rem;
  }
}

.p-blog-single__supervisor-history-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  gap: 1rem;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
}
.p-blog-single__supervisor-history-wrap + .p-blog-single__supervisor-history-wrap {
  margin-top: 4px;
  margin-top: 0.25rem;
}

.p-blog-single__supervisor-history-year {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 45px;
          flex: 1 0 45px;
  -ms-flex: 1 0 2.8125rem;
      flex: 1 0 2.8125rem;
  width: 100%;
}

.p-blog-single__supervisor-history-text {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 calc(100% - 3.8125rem);
          flex: 1 1 calc(100% - 3.8125rem);
}

.p-blog-single__toc {
  margin-bottom: 60px;
  margin-bottom: 3.75rem;
}
@media screen and (max-width: 767px) {
  .p-blog-single__toc {
    margin-bottom: 2.5rem;
  }
}

.p-blog-single__block-editor + .p-blog-single__supervisor {
  margin-bottom: 0;
  margin-top: 60px;
  margin-top: 3.75rem;
}
@media screen and (max-width: 767px) {
  .p-blog-single__block-editor + .p-blog-single__supervisor {
    margin-top: 2.5rem;
  }
}

.p-blog-single__thumbnail img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-blog-single__supervisor-section {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.p-blog-single__supervisor-section-title {
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.02em;
  border-bottom: 1px solid rgba(89, 80, 63, .4);
}

.p-blog-single__supervisor-section-list {
  margin-top: 4px;
  margin-top: 0.25rem;
}

.p-blog-single__supervisor-section-item {
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
  padding-left: 14px;
  padding-left: 0.875rem;
  position: relative;
}
.p-blog-single__supervisor-section-item::before {
  content: "";
  display: block;
  width: 4px;
  width: 0.25rem;
  height: 4px;
  height: 0.25rem;
  border-radius: 50%;
  background-color: currentColor;
  position: absolute;
  top: 11px;
  top: 0.6875rem;
  left: 0;
}

.p-case-archive {
  display: grid;
  grid-template-columns: minmax(0, 15rem) minmax(0, 55rem);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 80px;
  gap: 5rem;
}
@media screen and (max-width: 767px) {
  .p-case-archive {
    display: block;
  }
}

.p-case-archive__side {
  position: sticky;
  top: 130px;
  top: 8.125rem;
  left: 0;
}
@media screen and (max-width: 767px) {
  .p-case-archive__side {
    position: static;
  }
}

.p-case-archive__side-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.5;
}

.p-case-archive__side-select {
  margin-top: 10px;
  margin-top: 0.625rem;
  position: relative;
}
.p-case-archive__side-select::before {
  content: "";
  display: block;
  width: 14px;
  width: 0.875rem;
  height: 8px;
  height: 0.5rem;
  background: url(../images/price/select_arrow.svg) no-repeat center/100% auto;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 12px;
  right: 0.75rem;
  pointer-events: none;
}
.p-case-archive__side-select select {
  color: #231815;
  width: 100%;
  padding: 12px 40px 12px 12px;
  padding: 0.75rem 2.5rem 0.75rem 0.75rem;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
  background-color: #fff;
  border-radius: 0.375rem;
  border: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: none;
  cursor: pointer;
}
.p-case-archive__side-select + .p-case-archive__side-title {
  margin-top: 20px;
  margin-top: 1.25rem;
}

@media screen and (max-width: 767px) {
  .p-case-archive__posts {
    margin-top: 2.5rem;
  }
}
@media screen and (max-width: 767px) {
  .p-case-archive__posts .c-case-item__title {
    font-size: 0.875rem;
  }
}

.p-case-archive__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 30px 35px;
  gap: 1.875rem 2.1875rem;
}
@media screen and (max-width: 767px) {
  .p-case-archive__list {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem 0.625rem;
  }
}

.p-case-archive__pagination {
  margin-top: 80px;
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .p-case-archive__pagination {
    margin-top: 3.75rem;
  }
}

.p-case-single {
  padding-bottom: 140px;
  padding-bottom: 8.75rem;
}
@media screen and (max-width: 767px) {
  .p-case-single {
    padding-bottom: 6.25rem;
  }
}

.p-case-single__layout {
  display: grid;
  grid-template-columns: minmax(0, 33.75rem) minmax(0, 37.5rem);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 60px;
  gap: 3.75rem;
  max-width: 1240px;
  max-width: 77.5rem;
  padding-inline: 20px;
  padding-inline: 1.25rem;
  margin-inline: auto;
  margin-top: 80px;
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .p-case-single__layout {
    display: block;
    padding-inline: 1.875rem;
    margin-top: 3.75rem;
  }
}

.p-case-single__slider {
  position: sticky;
  top: 130px;
  top: 8.125rem;
  left: 0;
}
@media screen and (max-width: 767px) {
  .p-case-single__slider {
    position: static;
  }
}

.p-case-single__slider-wrap {
  padding-inline: 70px;
  padding-inline: 4.375rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-case-single__slider-wrap {
    padding-inline: 3.125rem;
  }
}
.p-case-single__slider-wrap .swiper-slide {
  border-radius: 0.375rem;
  overflow: hidden;
}
.p-case-single__slider-wrap .swiper-slide img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-case-single__slider-wrap .swiper-slide {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: auto !important;
}

.p-case-single__slider-img {
  aspect-ratio: 400/500;
}
.p-case-single__slider-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-case-single__slider-caption {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.swiper-btn-prev,
.swiper-btn-next {
  width: 50px;
  width: 3.125rem;
  height: 50px;
  height: 3.125rem;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: 0.3s;
  transition: 0.3s;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .swiper-btn-prev,
  .swiper-btn-next {
    width: 2.5rem;
    height: 2.5rem;
  }
}
.swiper-btn-prev.swiper-button-disabled,
.swiper-btn-next.swiper-button-disabled {
  opacity: 0.2;
  pointer-events: none;
}
@media (any-hover: hover) {
  .swiper-btn-prev:hover,
  .swiper-btn-next:hover {
    opacity: 0.6;
  }
}

.swiper-btn-prev {
  left: 0;
}

.swiper-btn-next {
  right: 0;
  -webkit-transform: translateY(-50%) scale(-1, 1);
          transform: translateY(-50%) scale(-1, 1);
}

.p-case-single__thumbs-wrap {
  max-width: 400px;
  max-width: 25rem;
  margin-inline: auto;
  margin-top: 40px;
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-case-single__thumbs-wrap {
    max-width: 16.75rem;
    margin-top: 1.25rem;
  }
}
.p-case-single__thumbs-wrap .swiper-slide {
  height: auto !important;
  border-radius: 0.375rem;
  overflow: hidden;
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-case-single__thumbs-wrap .swiper-slide:hover {
    opacity: 0.6;
  }
}
.p-case-single__thumbs-wrap .p-case-single__thumb-img {
  height: 100%;
}
.p-case-single__thumbs-wrap .p-case-single__thumb-img img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

@media screen and (max-width: 767px) {
  .p-case-single__content {
    margin-top: 1.25rem;
  }
}
.p-case-single__content .p-block-editor > *:first-child {
  margin-top: 0;
}

.p-case-single__table {
  width: 100%;
  border: 1px solid rgba(89, 80, 63, .4);
  border-spacing: 0;
  margin-top: 30px;
  margin-top: 1.875rem;
}
.p-case-single__table > table.has-fixed-layout {
  table-layout: auto;
}
.p-case-single__table tr:not(:first-child) th {
  border-top: 1px solid #fff;
  border-color: #fff;
}
.p-case-single__table tr:not(:first-child) td {
  border-top: 1px solid rgba(89, 80, 63, .4);
  border-color: rgba(89, 80, 63, .4);
}
.p-case-single__table th {
  min-width: 180px;
  min-width: 11.25rem;
  padding: 10px 20px 13px;
  padding: 0.625rem 1.25rem 0.8125rem;
  font-family: "Shippori Mincho B1", serif;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: left;
  vertical-align: top;
  color: #fff;
  background-color: rgba(89, 80, 63, .6);
}
@media screen and (max-width: 767px) {
  .p-case-single__table th {
    display: block;
    text-align: center;
  }
}
.p-case-single__table td {
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  background-color: #fff;
  padding: 10px 20px 12px;
  padding: 0.625rem 1.25rem 0.75rem;
}
@media screen and (max-width: 767px) {
  .p-case-single__table td {
    display: block;
  }
}
.p-case-single__table td span {
  display: block;
  color: rgba(89, 80, 63, .6);
}

.p-case-single__related {
  margin-top: 80px;
  margin-top: 5rem;
}

.p-case-single__related-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: center;
  border-top: 1px solid rgba(89, 80, 63, .4);
  padding-top: 80px;
  padding-top: 5rem;
}
@media screen and (max-width: 767px) {
  .p-case-single__related-title {
    padding-top: 2.5rem;
  }
}

.p-case-single__related-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 40px;
  gap: 2.5rem;
  max-width: 1000px;
  max-width: 62.5rem;
  margin-inline: auto;
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-case-single__related-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem 0.625rem;
  }
}
@media screen and (max-width: 767px) {
  .p-case-single__related-list .c-case-item__title {
    font-size: 0.875rem;
  }
}

.p-case-single__back {
  margin-top: 20px;
  margin-top: 1.25rem;
  text-align: center;
}
.p-case-single__back a {
  max-width: 186px;
  max-width: 11.625rem;
}

.wpcf7 form.sent .wpcf7-response-output {
  display: none;
}

.wpcf7-form-control.wpcf7-radio .wpcf7-list-item.first {
  margin-left: 0;
}
.wpcf7-form-control.wpcf7-radio .wpcf7-list-item {
  margin-left: 42px;
  margin-left: 2.625rem;
}

.wpcf7-form-control.wpcf7-checkbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 20px;
  gap: 1.25rem;
}
.wpcf7-form-control.wpcf7-checkbox .wpcf7-list-item.first {
  margin-left: 0;
}
.wpcf7-form-control.wpcf7-checkbox .wpcf7-list-item {
  margin-left: 0;
}

.wpcf7-form-control.wpcf7-checkbox.wpcf7-validates-as-required {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.wpcf7-form-control.wpcf7-submit.has-spinner {
  border: 1px solid #59503F;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  color: #fff;
  font-family: "Shippori Mincho B1", serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  background-color: #59503F;
  border-radius: 3.125rem;
  display: block;
  width: 240px;
  width: 15rem;
  padding: 14px 10px;
  padding: 0.875rem 0.625rem;
  margin-inline: auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  cursor: pointer;
}
@media (any-hover: hover) {
  .wpcf7-form-control.wpcf7-submit.has-spinner:hover {
    background-color: #fff;
    color: #59503F;
  }
}

.wpcf7-spinner {
  visibility: hidden;
  display: inline-block;
  background-color: #23282d;
  opacity: 0.75;
  width: 24px;
  height: 24px;
  border: none;
  border-radius: 100%;
  padding: 0;
  margin: 0 24px;
  position: absolute;
  top: 50%;
  right: -72px;
  right: -4.5rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.wpcf7-not-valid-tip {
  margin-top: 8px;
  margin-top: 0.5rem;
}

.wpcf7-form-control-wrap .wpcf7-not-valid-tip {
  display: none;
}

.wpcf7-form-control-wrap.is-show .wpcf7-not-valid-tip {
  display: block;
}

.p-complete__text {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-complete__text {
    text-align: left;
  }
}
.p-complete__text + .p-complete__text {
  margin-top: 1.5em;
}

.p-complete__back {
  margin-top: 40px;
  margin-top: 2.5rem;
  text-align: center;
}
.p-complete__back a {
  display: inline-block;
  border: 1px solid #59503F;
  background-color: #59503F;
  color: #fff;
  border-radius: 3.125rem;
  width: 100%;
  max-width: 240px;
  max-width: 15rem;
  padding: 9px 19px 11px;
  padding: 0.5625rem 1.1875rem 0.6875rem;
  font-family: "Shippori Mincho B1", serif;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: center;
  position: relative;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-complete__back a::before {
  content: "";
  display: block;
  width: 11px;
  width: 0.6875rem;
  height: 8px;
  height: 0.5rem;
  -webkit-mask: url(../images/top_back_arrow.svg) no-repeat center/100% auto;
          mask: url(../images/top_back_arrow.svg) no-repeat center/100% auto;
  background-color: #59503F;
  position: absolute;
  top: 50%;
  left: 24.5px;
  left: 1.53125rem;
  z-index: 1;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-complete__back a::after {
  content: "";
  display: block;
  width: 20px;
  width: 1.25rem;
  height: 20px;
  height: 1.25rem;
  background-color: #fff;
  border-radius: 100%;
  position: absolute;
  top: 50%;
  left: 20px;
  left: 1.25rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-complete__back a:hover {
    background-color: #fff;
    color: #59503F;
  }
  .p-complete__back a:hover::before {
    background-color: #fff;
  }
  .p-complete__back a:hover::after {
    background-color: #59503F;
  }
}

.p-entry__group + .p-entry__group {
  margin-top: 80px;
  margin-top: 5rem;
}

.p-entry__section-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.04em;
  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: 20px;
  gap: 1.25rem;
  width: 100%;
  position: relative;
}
.p-entry__section-title span {
  display: block;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.p-entry__section-title::before, .p-entry__section-title::after {
  content: "";
  display: block;
  width: 100%;
  max-width: 338px;
  max-width: 21.125rem;
  height: 1px;
  background-color: #59503F;
}
@media screen and (max-width: 767px) {
  .p-entry__section-title::before, .p-entry__section-title::after {
    max-width: 100%;
  }
}
.p-entry__section-title + .p-entry__wrap {
  margin-top: 40px;
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-entry__section-title + .p-entry__wrap {
    margin-top: 1.25rem;
  }
}

.p-entry__wrap {
  display: grid;
  grid-template-columns: minmax(0, 12.5rem) minmax(0, 35.625rem);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 30px;
  gap: 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-entry__wrap {
    display: block;
  }
}
.p-entry__wrap + .p-entry__wrap {
  margin-top: 30px;
  margin-top: 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-entry__wrap + .p-entry__wrap {
    margin-top: 1.25rem;
  }
}

.p-entry__head {
  display: grid;
  grid-template-columns: minmax(0, 9.375rem) minmax(0, 2.5rem);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  gap: 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-entry__head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.p-entry__label {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.02em;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .p-entry__label {
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}
.p-entry__label span {
  display: block;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  margin-top: -6px;
  margin-top: -0.375rem;
}
@media screen and (max-width: 767px) {
  .p-entry__label span {
    display: inline;
    margin-top: 0;
  }
}

.p-entry__required,
.p-entry__optional {
  width: 40px;
  width: 2.5rem;
  padding: 0 6px;
  padding: 0 0.375rem;
  border-radius: 0.125rem;
  color: #fff;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-entry__required,
  .p-entry__optional {
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}

.p-entry__required {
  background-color: #7DAE65;
}

.p-entry__optional {
  background-color: #aeaeae;
}

@media screen and (max-width: 767px) {
  .p-entry__field {
    margin-top: 0.625rem;
  }
}
.p-entry__field ::-webkit-input-placeholder {
  color: rgba(89, 80, 63, .4);
}
.p-entry__field ::-moz-placeholder {
  color: rgba(89, 80, 63, .4);
}
.p-entry__field ::-ms-input-placeholder {
  color: rgba(89, 80, 63, .4);
}
.p-entry__field ::placeholder {
  color: rgba(89, 80, 63, .4);
}
.p-entry__field input:-webkit-autofill,
.p-entry__field select:-webkit-autofill {
  -webkit-appearance: none;
          appearance: none;
  background-color: #fff !important;
  color: #000 !important;
  -webkit-transition: background-color 5000s ease-in-out 0s;
  transition: background-color 5000s ease-in-out 0s;
}
.p-entry__field input[type=text],
.p-entry__field input[type=tel],
.p-entry__field input[type=email],
.p-entry__field textarea {
  background-color: #fff;
  border: 1px solid rgba(89, 80, 63, .4);
  width: 100%;
  max-width: 100%;
  padding: 10px 20px;
  padding: 0.625rem 1.25rem;
  border-radius: 0.375rem;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .p-entry__field input[type=text],
  .p-entry__field input[type=tel],
  .p-entry__field input[type=email],
  .p-entry__field textarea {
    font-size: 1rem;
  }
}
.p-entry__field.--radio input[type=radio] {
  opacity: 0;
  position: absolute;
}
.p-entry__field.--radio input[type=radio] + span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px;
  gap: 0.75rem;
  position: relative;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.8;
  letter-spacing: 0.02em;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .p-entry__field.--radio input[type=radio] + span {
    font-size: 1rem;
  }
}
.p-entry__field.--radio input[type=radio] + span:before {
  content: "";
  width: 16px;
  width: 1rem;
  height: 16px;
  height: 1rem;
  border: 1px solid rgba(89, 80, 63, .6);
  border-radius: 50%;
  vertical-align: middle;
}
.p-entry__field.--radio input[type=radio] + span:after {
  content: "";
  display: none;
}
.p-entry__field.--radio input[type=radio]:checked + span:before {
  border-color: #59503F;
}
.p-entry__field.--radio input[type=radio]:checked + span:after {
  content: "";
  border-radius: 50%;
  background-color: #59503F;
  display: block;
  width: 8px;
  width: 0.5rem;
  height: 8px;
  height: 0.5rem;
  position: absolute;
  top: 50%;
  left: 4px;
  left: 0.25rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.p-entry__field.--check-box input[type=checkbox] {
  opacity: 0;
  position: absolute;
}
.p-entry__field.--check-box input[type=checkbox] + span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.8;
  letter-spacing: 0.02em;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .p-entry__field.--check-box input[type=checkbox] + span {
    font-size: 1rem;
  }
}
.p-entry__field.--check-box input[type=checkbox] + span:before {
  content: "";
  width: 18px;
  width: 1.125rem;
  height: 18px;
  height: 1.125rem;
  margin-right: 9px;
  margin-right: 0.5625rem;
  border: 1px solid #59503F;
  border-radius: 0.25rem;
}
.p-entry__field.--check-box input[type=checkbox] + span:after {
  content: "";
  display: none;
}
.p-entry__field.--check-box input[type=checkbox]:checked + span:before {
  content: "";
  background-color: #59503F;
}
.p-entry__field.--check-box input[type=checkbox]:checked + span:after {
  content: "";
  display: block;
  width: 10px;
  width: 0.625rem;
  height: 7px;
  height: 0.4375rem;
  margin-block: auto;
  position: absolute;
  inset-block: 0;
  left: 4px;
  left: 0.25rem;
  background: url(../images/check_icon.svg) no-repeat center/100% auto;
}
.p-entry__field.--file input[type=file] {
  width: 100%;
  max-width: 100%;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
}
.p-entry__field.--file input[type=file]::file-selector-button {
  background-color: #fff;
  border: 1px solid rgba(89, 80, 63, .4);
  width: 100%;
  max-width: 140px;
  max-width: 8.75rem;
  padding: 9px 20px 7px;
  padding: 0.5625rem 1.25rem 0.4375rem;
  margin-right: 10px;
  margin-right: 0.625rem;
  border-radius: 0.375rem;
  color: #59503F;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  cursor: pointer;
}

.p-entry__select {
  background-color: #fff;
  border: 1px solid rgba(89, 80, 63, .4);
  border-radius: 0.375rem;
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  max-width: 76px;
  max-width: 4.75rem;
}
.p-entry__select.--birth {
  max-width: 100px;
  max-width: 6.25rem;
}
.p-entry__select.--pref {
  max-width: 120px;
  max-width: 7.5rem;
}
.p-entry__select.--job {
  max-width: 100%;
}
.p-entry__select::after {
  content: "";
  display: block;
  width: 18px;
  width: 1.125rem;
  height: 8px;
  height: 0.5rem;
  background: url(../images/select_arrow.svg) no-repeat center/100% auto;
  position: absolute;
  top: 50%;
  right: 20px;
  right: 1.25rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  pointer-events: none;
}
.p-entry__select select {
  background-color: transparent;
  color: inherit;
  width: 100%;
  padding: 8px 20px;
  padding: 0.5rem 1.25rem;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .p-entry__select select {
    font-size: 1rem;
  }
}

.p-entry__field-wrap.--birth {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  gap: 0.625rem;
}
.p-entry__field-wrap.--post-code {
  display: grid;
  grid-template-columns: minmax(0, 7.8125rem) minmax(0, 5.625rem);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
  gap: 1.25rem;
}
.p-entry__field-wrap.--post-code input[type=button] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  background-color: #59503F;
  border-radius: 1.375rem;
  padding: 4px 20px;
  padding: 0.25rem 1.25rem;
  color: #fff;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
  text-align: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  cursor: pointer;
}
@media (any-hover: hover) {
  .p-entry__field-wrap.--post-code input[type=button]:hover {
    opacity: 0.6;
  }
}

.p-entry__policy {
  margin-top: 80px;
  margin-top: 5rem;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  text-align: center;
}
.p-entry__policy input[type=checkbox] {
  opacity: 0;
  position: absolute;
}
.p-entry__policy input[type=checkbox] + span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.8;
  letter-spacing: 0.02em;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .p-entry__policy input[type=checkbox] + span {
    font-size: 1rem;
  }
}
.p-entry__policy input[type=checkbox] + span:before {
  content: "";
  width: 18px;
  width: 1.125rem;
  height: 18px;
  height: 1.125rem;
  margin-right: 10px;
  margin-right: 0.625rem;
  border: 1px solid #59503F;
  border-radius: 0.25rem;
}
.p-entry__policy input[type=checkbox] + span:after {
  content: "";
  display: none;
}
.p-entry__policy input[type=checkbox]:checked + span:before {
  content: "";
  background-color: #59503F;
}
.p-entry__policy input[type=checkbox]:checked + span:after {
  content: "";
  display: block;
  width: 10px;
  width: 0.625rem;
  height: 7px;
  height: 0.4375rem;
  margin-block: auto;
  position: absolute;
  inset-block: 0;
  left: 4px;
  left: 0.25rem;
  background: url(../images/check_icon.svg) no-repeat center/100% auto;
}

.p-entry__policy-text a {
  display: inline-block;
  color: rgba(89, 80, 63, .8);
  text-decoration: underline;
  text-underline-offset: 2px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-entry__policy-text a:hover {
    opacity: 0.6;
  }
}
.p-entry__policy-text + .wpcf7-form-control-wrap {
  display: block;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.p-entry__send {
  display: block;
  width: 240px;
  width: 15rem;
  margin-inline: auto;
  margin-top: 40px;
  margin-top: 2.5rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-entry__send {
    margin-top: 1.25rem;
  }
}

.p-faq__section {
  display: grid;
  grid-template-columns: minmax(0, 18.75rem) minmax(0, 51.25rem);
  gap: 80px;
  gap: 5rem;
  padding-bottom: 80px;
  padding-bottom: 5rem;
  border-bottom: 1px solid rgba(89, 80, 63, .4);
}
@media screen and (max-width: 767px) {
  .p-faq__section {
    display: block;
    padding-bottom: 2.5rem;
  }
}
.p-faq__section + .p-faq__section {
  margin-top: 80px;
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .p-faq__section + .p-faq__section {
    margin-top: 2.5rem;
  }
}
.p-faq__section:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.p-faq__section-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 26px;
  font-size: 1.625rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .p-faq__section-title {
    font-size: 1.5rem;
  }
}

@media screen and (max-width: 767px) {
  .p-faq__section-dl {
    margin-top: 2.5rem;
  }
}
@media screen and (max-width: 767px) {
  .p-faq__section-dl .c-faq__title {
    font-size: 1rem;
  }
}

@media screen and (max-width: 767px) {
  .p-menu-single {
    overflow: hidden;
  }
}

.p-menu-single__warp {
  padding-block: 80px 140px;
  padding-block: 5rem 8.75rem;
}
@media screen and (max-width: 767px) {
  .p-menu-single__warp {
    padding-block: 3.75rem 6.25rem;
  }
}

.p-menu-single__content {
  display: grid;
  grid-template-columns: minmax(0, 18.75rem) minmax(0, 51.25rem);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 80px;
  gap: 5rem;
}
@media screen and (max-width: 767px) {
  .p-menu-single__content {
    display: block;
  }
}

.p-menu-single__content-sidebar {
  position: sticky;
  top: 130px;
  top: 8.125rem;
  left: 0;
}
@media screen and (max-width: 767px) {
  .p-menu-single__content-sidebar {
    position: static;
  }
}

@media screen and (max-width: 767px) {
  .p-menu-single__content-main {
    margin-top: 2.5rem;
  }
}

.p-menu-single__case-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 16px;
  gap: 1rem;
  margin-top: 32px;
  margin-top: 2rem;
}
@media screen and (max-width: 767px) {
  .p-menu-single__case-list {
    padding-right: 0.875rem;
    margin-right: calc(50% - 50vw);
    white-space: nowrap;
    overflow-x: auto;
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
  }
}

@media screen and (max-width: 767px) {
  .p-menu-single__case-item {
    min-width: 17.5rem;
  }
}
.p-menu-single__case-item a {
  display: block;
}
@media (any-hover: hover) {
  .p-menu-single__case-item a:hover .p-menu-single__case-item-img img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}

.p-menu-single__case-item-thumbnail {
  position: relative;
}

.p-menu-single__case-item-img {
  overflow: hidden;
}
.p-menu-single__case-item-img img {
  aspect-ratio: 1/1;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.p-menu-single__case-item-arrow {
  display: block;
  width: 56px;
  width: 3.5rem;
  height: 56px;
  height: 3.5rem;
  position: absolute;
  bottom: 8px;
  bottom: 0.5rem;
  right: 8px;
  right: 0.5rem;
}
@media screen and (max-width: 767px) {
  .p-menu-single__case-item-arrow {
    width: 2rem;
    height: 2rem;
    bottom: 0.25rem;
    right: 0.25rem;
  }
}

.p-menu-single__case-item-title {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.56;
  margin-top: 24px;
  margin-top: 1.5rem;
}
@media screen and (max-width: 767px) {
  .p-menu-single__case-item-title {
    margin-top: 1.25rem;
  }
}

.p-menu-single__case-item-theme {
  color: #7a7368;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  margin-top: 12px;
  margin-top: 0.75rem;
}

.p-menu-single__case-more {
  margin-top: 60px;
  margin-top: 3.75rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-menu-single__case-more {
    margin-top: 1.875rem;
  }
}

.p-menu-single__price-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.02em;
  padding-left: 16px;
  padding-left: 1rem;
  border-left: 4px solid currentColor;
  border-left: 0.25rem solid currentColor;
  margin-top: 30px;
  margin-top: 1.875rem;
}

.p-menu-single__price-note {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.p-menu-single__price-table-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-block: 18px;
  padding-block: 1.125rem;
  border-bottom: 1px solid rgba(89, 80, 63, .4);
}
@media screen and (max-width: 767px) {
  .p-menu-single__price-table-row {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0.625rem;
  }
}
.p-menu-single__price-table-row:has(+ .un_empty) {
  padding-bottom: 0;
  border-bottom: none;
}
.p-menu-single__price-table-row + .p-menu-single__price-table-row.un_empty {
  padding-top: 0;
  border-bottom: 1px solid rgba(89, 80, 63, .4);
}
.p-menu-single__price-table-row.un_empty:has(+ .un_empty) {
  padding-block: 0;
  border-bottom: none;
}
.p-menu-single__price-table-row .p-menu-single__price-table-title {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 398px;
          flex: 1 1 398px;
  -ms-flex: 1 1 24.875rem;
      flex: 1 1 24.875rem;
  max-width: 398px;
  max-width: 24.875rem;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .p-menu-single__price-table-row .p-menu-single__price-table-title {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 100%;
            flex: 1 1 100%;
    max-width: 100%;
  }
}
.p-menu-single__price-table-row .p-menu-single__price-table-content {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
}
.p-menu-single__price-table-row .p-menu-single__price-table-content.--center {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 120px;
          flex: 1 1 120px;
  -ms-flex: 1 1 7.5rem;
      flex: 1 1 7.5rem;
  max-width: 120px;
  max-width: 7.5rem;
  margin-left: auto;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .p-menu-single__price-table-row .p-menu-single__price-table-content.--center {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 6.125rem;
            flex: 1 1 6.125rem;
    max-width: 12.5rem;
  }
}
.p-menu-single__price-table-row .p-menu-single__price-table-content.--price_view {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 120px;
          flex: 1 1 120px;
  -ms-flex: 1 1 7.5rem;
      flex: 1 1 7.5rem;
  max-width: 120px;
  max-width: 7.5rem;
  margin-left: 16px;
  margin-left: 1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .p-menu-single__price-table-row .p-menu-single__price-table-content.--price_view {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 6.125rem;
            flex: 1 1 6.125rem;
    max-width: 12.5rem;
  }
}
.p-menu-single__price-table-row .p-menu-single__price-table-content.--right {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 120px;
          flex: 1 1 120px;
  -ms-flex: 1 1 7.5rem;
      flex: 1 1 7.5rem;
  max-width: 120px;
  max-width: 7.5rem;
  margin-left: 16px;
  margin-left: 1rem;
  text-align: right;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .p-menu-single__price-table-row .p-menu-single__price-table-content.--right {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 6.125rem;
            flex: 1 1 6.125rem;
    max-width: 12.5rem;
    margin-left: auto;
  }
}

.p-menu-single__set-price {
  background-color: #fff;
  border-radius: 0.375rem;
  padding: 20px;
  padding: 1.25rem;
  margin-top: 30px;
  margin-top: 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-menu-single__set-price .p-menu-single__price-table-content.--center {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 4.875rem;
            flex: 1 1 4.875rem;
    max-width: 12.5rem;
  }
}
@media screen and (max-width: 767px) {
  .p-menu-single__set-price .p-menu-single__price-table-content.--price_view {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 4.875rem;
            flex: 1 1 4.875rem;
    max-width: 12.5rem;
  }
}
@media screen and (max-width: 767px) {
  .p-menu-single__set-price .p-menu-single__price-table-content.--right {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 4.875rem;
            flex: 1 1 4.875rem;
    max-width: 12.5rem;
  }
}

.p-menu-single__set-price-title {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  padding-left: 26px;
  padding-left: 1.625rem;
  position: relative;
}
.p-menu-single__set-price-title::before {
  content: "";
  display: block;
  width: 20px;
  width: 1.25rem;
  height: 20px;
  height: 1.25rem;
  background: url(../images/icon_seto_price.svg) no-repeat center/contain;
  position: absolute;
  top: 5px;
  top: 0.3125rem;
  left: 0;
}

.p-menu-single__price-info {
  color: rgba(89, 80, 63, .6);
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.p-menu-single__faq {
  margin-top: 30px;
  margin-top: 1.875rem;
}

.p-menu-single__menu-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 30px;
  margin-top: 1.875rem;
  border: 1px solid rgba(89, 80, 63, .4);
}
.p-menu-single__menu-table tr:last-child th,
.p-menu-single__menu-table tr:last-child td {
  border-bottom: 0;
}
@media screen and (max-width: 767px) {
  .p-menu-single__menu-table th,
  .p-menu-single__menu-table td {
    display: block;
  }
}
.p-menu-single__menu-table th {
  background-color: rgba(89, 80, 63, .6);
  color: #fff;
  font-family: "Shippori Mincho B1", serif;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: left;
  vertical-align: top;
  min-width: 180px;
  min-width: 11.25rem;
  padding: 10px 20px 12px;
  padding: 0.625rem 1.25rem 0.75rem;
  border-bottom: 1px solid #fff;
}
@media screen and (max-width: 767px) {
  .p-menu-single__menu-table th {
    text-align: center;
  }
}
.p-menu-single__menu-table td {
  background-color: #fff;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  padding: 10px 20px 12px;
  padding: 0.625rem 1.25rem 0.75rem;
  border-bottom: 1px solid rgba(89, 80, 63, .4);
  vertical-align: top;
}
@media screen and (max-width: 767px) {
  .p-menu-single__menu-table td {
    display: block;
  }
}
.p-menu-single__menu-table td ul li {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  padding-left: 16px;
  padding-left: 1rem;
  position: relative;
}
.p-menu-single__menu-table td ul li::before {
  content: "";
  display: block;
  width: 6px;
  width: 0.375rem;
  height: 6px;
  height: 0.375rem;
  background-color: #59503F;
  border-radius: 50%;
  position: absolute;
  top: 11px;
  top: 0.6875rem;
  left: 0;
}
.p-menu-single__menu-table td ul li + li {
  margin-top: 8px;
  margin-top: 0.5rem;
}
.p-menu-single__menu-table td p:not([class]) {
  margin-top: 0;
}

.p-menu__tab-btn-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  padding-block: 6px;
  padding-block: 0.375rem;
  border-top: 1px solid rgba(89, 80, 63, .4);
  border-bottom: 1px solid rgba(89, 80, 63, .4);
}
.p-menu__tab-btn-item {
  border-radius: 0.25rem;
  font-family: "Shippori Mincho B1", serif;
  color: rgba(89, 80, 63, .6);
  font-size: 26px;
  font-size: 1.625rem;
  font-weight: 600;
  line-height: 1.5;
  text-align: center;
  padding-block: 12px 16px;
  padding-block: 0.75rem 1rem;
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .p-menu__tab-btn-item {
    font-size: 1.25rem;
  }
}
.p-menu__tab-btn-item.is_active {
  background-color: #59503F;
  color: #fff;
  pointer-events: none;
}
@media (any-hover: hover) {
  .p-menu__tab-btn-item.is_active:hover {
    opacity: 1;
  }
}
@media (any-hover: hover) {
  .p-menu__tab-btn-item:hover {
    color: #59503F;
  }
}

.p-menu__tab-content {
  margin-top: 60px;
  margin-top: 3.75rem;
  display: none;
}
@media screen and (max-width: 767px) {
  .p-menu__tab-content {
    margin-top: 2.5rem;
  }
}
.p-menu__tab-content.is_active {
  display: block;
}

.p-menu__child-term-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
  gap: 1.875rem;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (max-width: 767px) {
  .p-menu__child-term-list {
    grid-template-columns: repeat(1, 1fr);
    gap: 1.25rem;
  }
}

.p-menu__child-term-item {
  background-color: #fff;
  border-radius: 0.375rem;
}
.p-menu__child-term-item button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 14px;
  gap: 0.875rem;
  width: 100%;
  padding: 20px;
  padding: 1.25rem;
  font-family: "Shippori Mincho B1", serif;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: left;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .p-menu__child-term-item button {
    gap: 0.75rem;
    padding: 0.75rem;
    font-size: 1.125rem;
  }
}
@media (any-hover: hover) {
  .p-menu__child-term-item button:hover {
    opacity: 0.6;
  }
}

.p-menu__child-term-item-icon {
  width: 48px;
  width: 3rem;
}

.p-menu__child-term-item-name {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.p-menu__post {
  display: none;
  padding: 0 20px 20px;
  padding: 0 1.25rem 1.25rem;
}
.p-menu__post a {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-menu__post a:hover {
    opacity: 0.6;
  }
}

.p-menu__post-item > a {
  background-color: #59503F;
  color: #fff;
  display: block;
  padding: 10px 8px;
  padding: 0.625rem 0.5rem;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
  position: relative;
}
.p-menu__post-item > a::before {
  content: "";
  display: block;
  width: 16px;
  width: 1rem;
  height: 8px;
  height: 0.5rem;
  -webkit-mask: url(../images/straight_arrow.svg) no-repeat center/100% auto;
          mask: url(../images/straight_arrow.svg) no-repeat center/100% auto;
  background-color: currentColor;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 8px;
  right: 0.5rem;
}
.p-menu__post-item > a span {
  display: block;
  padding-right: 25px;
  padding-right: 1.5625rem;
}
.p-menu__post-item + .p-menu__post-item {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.p-menu__post-sublist {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.p-menu__post-subitem + .p-menu__post-subitem {
  margin-top: 20px;
  margin-top: 1.25rem;
}
.p-menu__post-subitem a {
  display: block;
  padding: 0 60px 10px 0;
  padding: 0 3.75rem 0.625rem 0;
  border-bottom: 1px solid rgba(89, 80, 63, .4);
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
  position: relative;
}
.p-menu__post-subitem a::before {
  content: "";
  display: block;
  width: 7px;
  width: 0.4375rem;
  height: 12px;
  height: 0.75rem;
  -webkit-mask: url(../images/link_arrow.svg) no-repeat center/cover;
          mask: url(../images/link_arrow.svg) no-repeat center/cover;
  background-color: currentColor;
  position: absolute;
  top: 4.5px;
  top: 0.28125rem;
  right: 0;
}

.p-menu__more {
  margin-top: 60px;
  margin-top: 3.75rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-menu__more {
    margin-top: 2.5rem;
  }
}

.p-news-archive {
  width: 100%;
  max-width: 840px;
  max-width: 52.5rem;
  margin-inline: auto;
  padding-inline: 20px;
  padding-inline: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-news-archive {
    padding-inline: 1.875rem;
  }
}

.p-news-archive__item {
  padding-left: 36px;
  padding-left: 2.25rem;
}
@media screen and (max-width: 767px) {
  .p-news-archive__item {
    padding-left: 1.5rem;
  }
}
.p-news-archive__item.is-news-picks {
  position: relative;
}
.p-news-archive__item.is-news-picks::before {
  content: "";
  display: block;
  width: 20px;
  width: 1.25rem;
  height: 20px;
  height: 1.25rem;
  background: url(../images/news/icon_pin.svg) no-repeat center/100% auto;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.p-news-archive__item a {
  display: grid;
  grid-template-columns: minmax(0, 4.375rem) minmax(0, 39.1875rem);
  gap: 37px;
  gap: 2.3125rem;
  padding-left: 30px;
  padding-left: 1.875rem;
  padding-block: 40px;
  padding-block: 2.5rem;
  border-bottom: 1px solid rgba(89, 80, 63, .4);
}
@media screen and (max-width: 767px) {
  .p-news-archive__item a {
    display: block;
    padding-block: 1.5rem;
  }
}
@media (any-hover: hover) {
  .p-news-archive__item a:hover .p-news-archive__item-title {
    opacity: 0.6;
  }
}

.p-news-archive__item-time {
  font-family: "Shippori Mincho B1", serif;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
}

.p-news-archive__item-title {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .p-news-archive__item-title {
    margin-top: 0.625rem;
  }
}

.p-news-archive__pagination {
  margin-top: 80px;
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .p-news-archive__pagination {
    margin-top: 3.75rem;
  }
}

.p-news-single {
  padding-block: 80px 140px;
  padding-block: 5rem 8.75rem;
}
@media screen and (max-width: 767px) {
  .p-news-single {
    padding: 3.75rem 1.875rem 6.25rem;
  }
}
@media screen and (max-width: 767px) {
  .p-news-single .p-block-editor table tr th:not(:last-child) {
    border-right: 0;
  }
}
@media screen and (max-width: 767px) {
  .p-news-single .p-block-editor table tr td {
    border-left: 0;
    border-bottom: 0;
  }
}

.p-news-single__content {
  max-width: 800px;
  max-width: 50rem;
  margin-inline: auto;
  padding-bottom: 80px;
  padding-bottom: 5rem;
  border-bottom: 1px solid rgba(89, 80, 63, .4);
}
@media screen and (max-width: 767px) {
  .p-news-single__content {
    max-width: 100%;
    padding-bottom: 2.5rem;
  }
}

.p-recruit__about {
  text-align: center;
}

.p-recruit__about-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 40px;
  font-size: 2.5rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .p-recruit__about-title {
    font-size: 1.5rem;
  }
}

.p-recruit__about-text {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.04em;
  margin-top: 30px;
  margin-top: 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-recruit__about-text {
    font-size: 0.875rem;
    text-align: left;
    margin-top: 1.25rem;
  }
}

.p-recruit__value {
  background-color: #59503F;
  border-radius: 0.375rem;
  padding: 40px;
  padding: 2.5rem;
  margin-top: 80px;
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .p-recruit__value {
    padding: 1.25rem;
  }
}

.p-recruit__value-title {
  color: #fff;
  font-family: "Shippori Mincho B1", serif;
  font-size: 26px;
  font-size: 1.625rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .p-recruit__value-title {
    font-size: 1.25rem;
  }
}

.p-recruit__value-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 30px;
  gap: 1.875rem;
  margin-top: 40px;
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-recruit__value-list {
    grid-template-columns: repeat(1, 1fr);
    gap: 1.25rem;
    margin-top: 1.25rem;
  }
}

.p-recruit__value-item {
  background-color: #fff;
  border-radius: 0.375rem;
  padding: 30px 20px;
  padding: 1.875rem 1.25rem;
}
.p-recruit__value-item:nth-child(1) .p-recruit__value-item-title::before {
  width: 55px;
  width: 3.4375rem;
  background: url(../images/recruit/icon_counseling.svg) no-repeat center/100% auto;
}
.p-recruit__value-item:nth-child(2) .p-recruit__value-item-title::before {
  width: 77px;
  width: 4.8125rem;
  background: url(../images/recruit/icon_trust.svg) no-repeat center/100% auto;
}

.p-recruit__value-item-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .p-recruit__value-item-title {
    font-size: 1.125rem;
  }
}
.p-recruit__value-item-title::before {
  content: "";
  display: block;
  height: 50px;
  height: 3.125rem;
  margin-bottom: 20px;
  margin-bottom: 1.25rem;
  margin-inline: auto;
}

.p-recruit__value-item-text {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.p-recruit__job {
  margin-top: 100px;
  margin-top: 6.25rem;
}
@media screen and (max-width: 767px) {
  .p-recruit__job {
    margin-top: 5rem;
  }
}

.p-recruit__job-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 30px;
  font-size: 1.875rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-recruit__job-title {
    font-size: 1.5rem;
  }
}

.p-recruit__job-section {
  border-radius: 0.375rem;
  background-color: #fff;
  margin-top: 40px;
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-recruit__job-section {
    margin-top: 1.25rem;
  }
}

.p-recruit__job-section-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 26px;
  font-size: 1.625rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .p-recruit__job-section-title {
    font-size: 1.25rem;
  }
}
.p-recruit__job-section-title button {
  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;
  width: 100%;
  padding: 20px 30px;
  padding: 1.25rem 1.875rem;
  text-align: left;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-recruit__job-section-title button:hover {
    opacity: 0.6;
  }
}

.p-recruit__job-section-content {
  display: none;
  padding: 0 30px 30px;
  padding: 0 1.875rem 1.875rem;
}

.p-recruit__job-section-dl {
  border-top: 1px solid rgba(89, 80, 63, .4);
}

.p-recruit__job-section-dl-wrap {
  margin-top: 20px;
  margin-top: 1.25rem;
}
.p-recruit__job-section-dl-wrap dt {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.02em;
  padding-left: 14px;
  padding-left: 0.875rem;
  position: relative;
}
.p-recruit__job-section-dl-wrap dt::before {
  content: "";
  display: block;
  width: 4px;
  width: 0.25rem;
  height: 16px;
  height: 1rem;
  background-color: rgba(89, 80, 63, .4);
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.p-recruit__job-section-dl-wrap dd {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  margin-top: 10px;
  margin-top: 0.625rem;
  padding-left: 14px;
  padding-left: 0.875rem;
}

.p-recruit__job-section-entry {
  text-align: center;
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-recruit__job-section-entry {
    margin-top: 1.875rem;
  }
}
.p-recruit__job-section-entry a {
  display: inline-block;
  width: 100%;
  max-width: 240px;
  max-width: 15rem;
  padding: 14px 10px;
  padding: 0.875rem 0.625rem;
  border-radius: 3.125rem;
  background-color: #59503F;
  color: #fff;
  font-family: "Shippori Mincho B1", serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .p-recruit__job-section-entry a {
    max-width: 19.25rem;
  }
}
@media (any-hover: hover) {
  .p-recruit__job-section-entry a:hover {
    opacity: 0.6;
  }
}

.p-support__about {
  background-color: #59503F;
  color: #fff;
  padding-block: 80px 100px;
  padding-block: 5rem 6.25rem;
}
@media screen and (max-width: 767px) {
  .p-support__about {
    padding-block: 3.75rem 5rem;
  }
}
.p-support__about + .p-support__contact {
  margin-top: 80px;
  margin-top: 5rem;
}

.p-support__about-title {
  text-align: center;
}

.p-support__about-text {
  font-family: "Shippori Mincho B1", serif;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-support__about-text {
    font-size: 1rem;
  }
}

.p-support__about-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  gap: 1.25rem;
  margin-top: 40px;
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-support__about-list {
    grid-template-columns: repeat(1, 1fr);
  }
}

.p-support__about-item {
  background-color: #fff;
  color: #59503F;
  border-radius: 0.375rem;
  padding: 30px 50px;
  padding: 1.875rem 3.125rem;
}
@media screen and (max-width: 767px) {
  .p-support__about-item {
    padding: 1.875rem;
    text-align: center;
  }
}
.p-support__about-item ul li {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  text-align: left;
  padding-left: 16px;
  padding-left: 1rem;
  position: relative;
}
.p-support__about-item ul li::before {
  content: "";
  display: block;
  width: 6px;
  width: 0.375rem;
  height: 6px;
  height: 0.375rem;
  background-color: #59503F;
  position: absolute;
  top: 10px;
  top: 0.625rem;
  left: 0;
  border-radius: 50%;
}
.p-support__about-item ul li + li {
  margin-top: 8px;
  margin-top: 0.5rem;
}
.p-support__about-item ul + p {
  margin-top: 10px;
  margin-top: 0.625rem;
}

.p-support__about-item-number {
  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: 28px;
  width: 1.75rem;
  height: 28px;
  height: 1.75rem;
  margin-inline: auto;
  border-radius: 50%;
  background-color: #59503F;
  color: #fff;
  font-family: "Shippori Mincho B1", serif;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.04em;
}

.p-support__about-item-title {
  text-align: center;
}
.p-support__about-item-title > span:not([class]) {
  font-family: "Shippori Mincho B1", serif;
  font-size: 26px;
  font-size: 1.625rem;
  font-weight: 600;
  display: inline-block;
  margin-top: 14px;
  margin-top: 0.875rem;
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
  border-bottom: 1px dashed rgba(89, 80, 63, .4);
}
@media screen and (max-width: 767px) {
  .p-support__about-item-title > span:not([class]) {
    font-size: 1.25rem;
  }
}
@media (max-width: 347px) {
  .p-support__about-item-title > span:not([class]) {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
  }
  .p-support__about-item-title > span:not([class]) .sp-br {
    display: block;
  }
}
.p-support__about-item-title > span:not([class]) > span:not([class]) {
  display: block;
  margin-bottom: 4px;
  margin-bottom: 0.25rem;
  font-size: 16px;
  font-size: 1rem;
}
@media screen and (max-width: 767px) {
  .p-support__about-item-title > span:not([class]) > span:not([class]) {
    font-size: 0.875rem;
  }
}

.p-support__about-item-text {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  margin-top: 30px;
  margin-top: 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-support__about-item-text {
    text-align: left;
    margin-top: 1.5rem;
  }
}
.p-support__about-item-text + .p-support__about-item-text {
  margin-top: 14px;
  margin-top: 0.875rem;
}
.p-support__about-item-text + ul {
  margin-top: 10px;
  margin-top: 0.625rem;
}
.p-support__about-item-text span {
  font-weight: 700;
}

.p-support__about-more {
  text-align: center;
  margin-top: 30px;
  margin-top: 1.875rem;
}

.p-support__contact {
  background-color: #fff;
  border-radius: 0.375rem;
  max-width: 1000px;
  max-width: 62.5rem;
  margin-inline: auto;
  padding: 60px 50px;
  padding: 3.75rem 3.125rem;
}
@media screen and (max-width: 767px) {
  .p-support__contact {
    width: 85.9813084112%;
    padding: 1.875rem;
  }
}

.p-support__contact-text {
  font-family: "Shippori Mincho B1", serif;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
  border-bottom: 1px dashed rgba(89, 80, 63, .4);
}
@media screen and (max-width: 767px) {
  .p-support__contact-text {
    font-size: 1rem;
  }
}

.p-support__contact-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  gap: 1.25rem;
  max-width: 800px;
  max-width: 50rem;
  margin-inline: auto;
  margin-top: 25px;
  margin-top: 1.5625rem;
}
@media screen and (max-width: 767px) {
  .p-support__contact-list {
    grid-template-columns: repeat(1, 1fr);
    margin-top: 1.25rem;
  }
}

.p-support__contact-item a {
  border: 1px solid #7DAE65;
  background-color: #7DAE65;
  border-radius: 3.125rem;
  display: block;
  padding-block: 19px;
  padding-block: 1.1875rem;
  color: #fff;
  font-family: "Shippori Mincho B1", serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-support__contact-item a:hover {
    background-color: #fff;
    color: #7DAE65;
  }
}

.p-support__section {
  max-width: 800px;
  max-width: 50rem;
  margin-inline: auto;
  margin-top: 80px;
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .p-support__section {
    width: 85.9813084112%;
    margin-top: 3.75rem;
  }
}
.p-support__section + .p-support__contact {
  margin-top: 140px;
  margin-top: 8.75rem;
}
@media screen and (max-width: 767px) {
  .p-support__section + .p-support__contact {
    margin-top: 5rem;
  }
}

.p-support__section-title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 30px;
  font-size: 1.875rem;
  font-weight: 600;
  line-height: 1.8;
  letter-spacing: 0.05em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
  gap: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-support__section-title {
    font-size: 1.25rem;
    text-align: center;
    gap: 0.625rem;
  }
}
.p-support__section-title span {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .p-support__section-title span .sp-hidden {
    display: none;
  }
}
.p-support__section-title::before, .p-support__section-title::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: currentColor;
}

.p-support__section-list {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.p-support__section-item + .p-support__section-item::before {
  content: "";
  display: block;
  width: 3px;
  width: 0.1875rem;
  height: 60px;
  height: 3.75rem;
  margin-inline: auto;
  background-color: #59503F;
}
@media screen and (max-width: 767px) {
  .p-support__section-item + .p-support__section-item::before {
    width: 0.0625rem;
  }
}
.p-support__section-item.--sub .p-support__section-item-wrap {
  padding: 20px 40px;
  padding: 1.25rem 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-support__section-item.--sub .p-support__section-item-wrap {
    padding: 1.25rem;
  }
}

.p-support__section-item-title {
  color: #fff;
  background-color: #59503F;
  border-radius: 0.375rem 0.375rem 0 0;
  padding: 20px;
  padding: 1.25rem;
  font-family: "Shippori Mincho B1", serif;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-support__section-item-title {
    font-size: 1rem;
  }
}
.p-support__section-item-title span {
  font-weight: 500;
  margin-left: 20px;
  margin-left: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-support__section-item-title span {
    display: block;
    margin-top: 0.25rem;
    margin-left: 0;
  }
}

.p-support__section-item-wrap {
  border: 1px solid #59503F;
  border-radius: 0 0 0.375rem 0.375rem;
  padding: 30px;
  padding: 1.875rem;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
}
.p-support__section-item-wrap > *:not(:first-child) {
  margin-top: 20px;
  margin-top: 1.25rem;
}
.p-support__section-item-wrap > *:not(:first-child) + .p-support__section-item-schedule {
  margin-top: 134px;
  margin-top: 8.375rem;
}
@media screen and (max-width: 767px) {
  .p-support__section-item-wrap > *:not(:first-child) + .p-support__section-item-schedule {
    margin-top: 2.5rem;
  }
}
.p-support__section-item-wrap > ul li {
  padding-left: 16px;
  padding-left: 1rem;
  position: relative;
}
.p-support__section-item-wrap > ul li + li {
  margin-top: 8px;
  margin-top: 0.5rem;
}
.p-support__section-item-wrap > ul li::before {
  content: "";
  display: block;
  width: 6px;
  width: 0.375rem;
  height: 6px;
  height: 0.375rem;
  border-radius: 50%;
  background-color: #59503F;
  position: absolute;
  top: 10px;
  top: 0.625rem;
  left: 0;
}

.p-support__section-item-annotation {
  color: rgba(89, 80, 63, .6);
  font-size: 14px;
  font-size: 0.875rem;
  display: block;
  padding-left: 1em;
  text-indent: -1em;
  margin-top: 8px !important;
  margin-top: 0.5rem !important;
}
@media screen and (max-width: 767px) {
  .p-support__section-item-annotation {
    font-size: 0.75rem;
  }
}
.p-support__section-item-annotation::before {
  content: "※";
}

.p-support__section-item-strong {
  display: block;
  font-weight: 700;
}

.p-support__section-item-block {
  background-color: #fff;
  border-radius: 0.25rem;
  padding: 20px;
  padding: 1.25rem;
  margin-top: 20px;
  margin-top: 1.25rem;
}
.p-support__section-item-block ul {
  list-style: decimal;
  margin-left: 1em;
}
.p-support__section-item-block ul li + li {
  margin-top: 8px;
  margin-top: 0.5rem;
}

.p-support__section-item-schedule {
  margin-top: 134px;
  margin-top: 8.375rem;
}
@media screen and (max-width: 767px) {
  .p-support__section-item-schedule {
    margin-top: 2.5rem;
  }
}

.p-support__section-item-schedule-title {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.02em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
  gap: 1.25rem;
}
.p-support__section-item-schedule-title span {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.p-support__section-item-schedule-title::before, .p-support__section-item-schedule-title::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: currentColor;
}

.p-support__section-item-schedule-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.p-support__section-item-schedule-btn {
  width: 30px;
  width: 1.875rem;
  height: 30px;
  height: 1.875rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-support__section-item-schedule-btn:hover {
    opacity: 0.6;
  }
}
.p-support__section-item-schedule-btn.--next {
  margin-left: 14px;
  margin-left: 0.875rem;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
.p-support__section-item-schedule-btn:disabled {
  pointer-events: none;
  opacity: 0.35;
}
@media (any-hover: hover) {
  .p-support__section-item-schedule-btn:disabled:hover {
    opacity: 1;
  }
}

.p-support__section-item-schedule-select {
  margin-left: 20px;
  margin-left: 1.25rem;
  background-color: #fff;
  border-radius: 0.375rem;
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  max-width: 200px;
  max-width: 12.5rem;
}
@media screen and (max-width: 767px) {
  .p-support__section-item-schedule-select {
    max-width: 11.25rem;
  }
}
.p-support__section-item-schedule-select::after {
  content: "";
  display: block;
  width: 12px;
  width: 0.75rem;
  height: 7px;
  height: 0.4375rem;
  background: url(../images/support/calendar_select_arrow.svg) no-repeat center/100% auto;
  position: absolute;
  top: 50%;
  right: 12px;
  right: 0.75rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  pointer-events: none;
}
.p-support__section-item-schedule-select select {
  background-color: transparent;
  color: inherit;
  width: 100%;
  padding: 6px 12px;
  padding: 0.375rem 0.75rem;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
  cursor: pointer;
}

.p-support__section-item-schedule-calendar {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.p-support__section-item-schedule-img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-top-about {
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(93, 83, 64, 0)), color-stop(14%, rgba(92, 82, 64, .5)), to(#59503f));
  background: linear-gradient(180deg, rgba(93, 83, 64, 0) 0%, rgba(92, 82, 64, .5) 14%, #59503f 100%);
}
@media screen and (max-width: 767px) {
  .p-top-about {
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(93, 83, 64, 0)), color-stop(6.25%, rgba(92, 82, 64, .5)), to(#59503f));
    background: linear-gradient(180deg, rgba(93, 83, 64, 0) 0%, rgba(92, 82, 64, .5) 6.25%, #59503f 100%);
    padding-bottom: 0;
  }
}

.p-top-about__title {
  position: relative;
  text-align: center;
}

.p-top-about__title__en {
  font-family: "Sorts Mill Goudy", serif;
  color: rgba(255, 255, 255, .1);
  font-size: 124px;
  font-size: 7.75rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .p-top-about__title__en {
    font-size: 3.75rem;
    margin-left: -0.1875rem;
  }
}

.p-top-about__title__ja {
  font-family: "Shippori Mincho B1", serif;
  color: #fff;
  font-size: 30px;
  font-size: 1.875rem;
  font-weight: 600;
  line-height: 1.5;
  width: 100%;
  position: absolute;
  top: 26px;
  top: 1.625rem;
  left: 0;
}
@media screen and (max-width: 767px) {
  .p-top-about__title__ja {
    font-size: 1.5rem;
    text-align: left;
    max-width: 19.625rem;
    top: -1rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

.p-top-about__wrap {
  display: grid;
  grid-template-columns: minmax(0, 25.5rem) minmax(0, 35rem);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 100px;
  gap: 6.25rem;
  max-width: 1068px;
  max-width: 66.75rem;
  margin-inline: auto;
  margin-top: 47px;
  margin-top: 2.9375rem;
}
@media screen and (max-width: 767px) {
  .p-top-about__wrap {
    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: 3.75rem;
    margin-top: 2.25rem;
  }
}

.p-top-about__img {
  border-radius: 0.375rem;
  overflow: hidden;
}
.p-top-about__img img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0.375rem;
}

.p-top-about__block {
  color: #fff;
}

.p-top-about__subtitle {
  font-family: "Shippori Mincho B1", serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.5;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-top-about__subtitle {
    font-size: 1rem;
  }
}

.p-top-about__list {
  background-color: #fff;
  border-radius: 0.375rem;
  padding: 20px;
  padding: 1.25rem;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.p-top-about__item {
  color: #231815;
  font-family: "Shippori Mincho B1", serif;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  padding-left: 26px;
  padding-left: 1.625rem;
  position: relative;
}
.p-top-about__item::before {
  content: "";
  display: block;
  width: 16px;
  width: 1rem;
  height: 16px;
  height: 1rem;
  background: url(../images/icon_check_green.svg) no-repeat center/100% auto;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.p-top-about__item + .p-top-about__item {
  margin-top: 10px;
  margin-top: 0.625rem;
}

.p-top-about__text {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 2.6;
  letter-spacing: 0.02em;
  margin-top: 40px;
  margin-top: 2.5rem;
}

.p-top-about__btn {
  margin-top: 60px;
  margin-top: 3.75rem;
}

.p-top-about__btn-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 80px;
  gap: 5rem;
  max-width: 520px;
  max-width: 32.5rem;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .p-top-about__btn-list {
    grid-template-columns: repeat(1, 1fr);
    gap: 1.25rem;
  }
}

@media screen and (max-width: 767px) {
  .p-top-about__btn-item {
    text-align: center;
  }
}

.p-top-case {
  background-color: #59503F;
  overflow: hidden;
}

.p-top-case__content {
  margin-top: 60px;
  margin-top: 3.75rem;
}
@media screen and (max-width: 767px) {
  .p-top-case__content {
    margin-top: 2.5rem;
  }
}
.p-top-case__content .swiper {
  overflow: visible;
}
.p-top-case__slider-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 14px;
  gap: 0.875rem;
  width: 100%;
  max-width: 178px;
  max-width: 11.125rem;
  position: absolute;
  top: -110px;
  top: -6.875rem;
  right: 0;
}
@media screen and (max-width: 767px) {
  .p-top-case__slider-wrap {
    max-width: 9.625rem;
    top: -5.125rem;
  }
}
.p-top-case__slider-wrap .swiper-button-next,
.p-top-case__slider-wrap .swiper-button-prev {
  width: 50px;
  width: 3.125rem;
  height: 50px;
  height: 3.125rem;
  margin-top: 0;
  z-index: 10;
  cursor: pointer;
  position: static;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .p-top-case__slider-wrap .swiper-button-next,
  .p-top-case__slider-wrap .swiper-button-prev {
    width: 2.625rem;
    height: 2.625rem;
  }
}
@media (any-hover: hover) {
  .p-top-case__slider-wrap .swiper-button-next:hover,
  .p-top-case__slider-wrap .swiper-button-prev:hover {
    opacity: 0.6;
  }
}
.p-top-case__slider-wrap .swiper-button-next {
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}

.p-top-case__slider-toggle {
  position: relative;
  cursor: pointer;
}
.p-top-case__slider-toggle.is-pause .p-top-case__slider-play {
  display: none;
}
.p-top-case__slider-toggle.is-pause .p-top-case__slider-pause {
  display: block;
}
.p-top-case__slider-toggle.is-play .p-top-case__slider-play {
  display: block;
}
.p-top-case__slider-toggle.is-play .p-top-case__slider-pause {
  display: none;
}

.p-top-case__slider-play,
.p-top-case__slider-pause {
  display: block;
  width: 50px;
  width: 3.125rem;
  height: 50px;
  height: 3.125rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .p-top-case__slider-play,
  .p-top-case__slider-pause {
    width: 2.625rem;
    height: 2.625rem;
  }
}
@media (any-hover: hover) {
  .p-top-case__slider-play:hover,
  .p-top-case__slider-pause:hover {
    opacity: 0.6;
  }
}

.p-top-case__slider-play {
  display: none;
}

.p-top-fv {
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .p-top-fv {
    padding-top: 1.25rem;
  }
}

.p-top-fv__slider {
  max-width: 920px;
  max-width: 57.5rem;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .p-top-fv__slider {
    max-width: 20.5rem;
  }
}
.p-top-fv__slider .swiper {
  overflow: visible;
}
.p-top-fv__slider .swiper-slide {
  height: auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-top-fv__slider .swiper-slide a {
  display: block;
  height: 100%;
  padding: 10px;
  padding: 0.625rem;
  border: 1px solid #b3b3b3;
  border-radius: 0.625rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-top-fv__slider .swiper-slide a:hover {
    opacity: 0.6;
  }
}
.p-top-fv__slider .swiper-slide img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0.625rem;
}
.p-top-fv__slider .swiper-slide.swiper-slide-prev, .p-top-fv__slider .swiper-slide.swiper-slide-next {
  pointer-events: none;
}
.p-top-fv__slider .swiper-button-prev-main,
.p-top-fv__slider .swiper-button-next-main {
  color: #59503F;
  font-family: "Sorts Mill Goudy", serif;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl; /* 縦書き（右から左） */
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .p-top-fv__slider .swiper-button-prev-main,
  .p-top-fv__slider .swiper-button-next-main {
    font-size: 0.75rem;
  }
}
@media (any-hover: hover) {
  .p-top-fv__slider .swiper-button-prev-main:hover,
  .p-top-fv__slider .swiper-button-next-main:hover {
    opacity: 0.6;
  }
}
.p-top-fv__slider .swiper-button-prev-main {
  left: -50px;
  left: -3.125rem;
}
@media (max-width: 901px) {
  .p-top-fv__slider .swiper-button-prev-main {
    left: -42px;
  }
}
@media screen and (max-width: 767px) {
  .p-top-fv__slider .swiper-button-prev-main {
    left: -2rem;
  }
}
.p-top-fv__slider .swiper-button-next-main {
  right: -47px;
  right: -2.9375rem;
}
@media (max-width: 901px) {
  .p-top-fv__slider .swiper-button-next-main {
    right: -39px;
  }
}
@media screen and (max-width: 767px) {
  .p-top-fv__slider .swiper-button-next-main {
    right: -1.8125rem;
  }
}
.p-top-fv__slider .p-top-fv__slider-nav {
  position: relative;
  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: 30px;
  gap: 1.875rem;
  margin-top: 30px;
  margin-top: 1.875rem;
}
.p-top-fv__slider .swiper-pagination {
  position: static;
}
.p-top-fv__slider .swiper-horizontal > .swiper-pagination-bullets,
.p-top-fv__slider .swiper-pagination-bullets.swiper-pagination-horizontal,
.p-top-fv__slider .swiper-pagination-custom,
.p-top-fv__slider .swiper-pagination-fraction {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  line-height: 1;
}
.p-top-fv__slider .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  background: #fff;
  opacity: 1;
}
@media screen and (max-width: 767px) {
  .p-top-fv__slider .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
  }
}
.p-top-fv__slider .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.p-top-fv__slider .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 10px;
}
.p-top-fv__slider .swiper-pagination-bullet-active {
  background: #59503F;
}
.p-top-fv__slider .swiper-button-prev-pagination,
.p-top-fv__slider .swiper-button-next-pagination {
  width: 8px;
  width: 0.5rem;
  height: 15px;
  height: 0.9375rem;
  margin-top: 2px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  position: static;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .p-top-fv__slider .swiper-button-prev-pagination,
  .p-top-fv__slider .swiper-button-next-pagination {
    width: 0.4375rem;
    height: 0.8125rem;
    margin-top: 4px;
  }
}
@media (any-hover: hover) {
  .p-top-fv__slider .swiper-button-prev-pagination:hover,
  .p-top-fv__slider .swiper-button-next-pagination:hover {
    opacity: 0.6;
  }
}
.p-top-fv__slider .swiper-button-prev-pagination {
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
.p-top-menu__title {
  text-align: center;
}

.p-top-menu__tab {
  margin-top: 60px;
  margin-top: 3.75rem;
}
@media screen and (max-width: 767px) {
  .p-top-menu__tab {
    margin-top: 2.5rem;
  }
}

.p-top-message {
  background-color: #59503F;
}

.p-top-message__title {
  text-align: center;
}

.p-top-message__wrap {
  display: grid;
  grid-template-columns: minmax(0, 33.75rem) minmax(0, 34.375rem);
  gap: 60px;
  gap: 3.75rem;
  margin-top: 60px;
  margin-top: 3.75rem;
}
@media screen and (max-width: 767px) {
  .p-top-message__wrap {
    display: block;
    margin-top: 2.5rem;
  }
}

.p-top-message__img {
  overflow: hidden;
  border-radius: 0.375rem;
}
.p-top-message__img img {
  border-radius: 0.375rem;
}

.p-top-message__block {
  color: #fff;
}
@media screen and (max-width: 767px) {
  .p-top-message__block {
    margin-top: 3.75rem;
  }
}

.p-top-message__positiion {
  font-family: "Shippori Mincho B1", serif;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.04em;
}

.p-top-message__name {
  font-family: "Shippori Mincho B1", serif;
  font-size: 30px;
  font-size: 1.875rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.04em;
  margin-top: 10px;
  margin-top: 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-top-message__name {
    font-size: 1.625rem;
  }
}
.p-top-message__name span {
  font-family: "Sorts Mill Goudy", serif;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  margin-left: 30px;
  margin-left: 1.875rem;
}

.p-top-message__text {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 2.6;
  letter-spacing: 0.02em;
  margin-top: 60px;
  margin-top: 3.75rem;
}
@media screen and (max-width: 767px) {
  .p-top-message__text {
    margin-top: 2.5rem;
  }
}

.p-top-message__more {
  margin-top: 60px;
  margin-top: 3.75rem;
}
@media screen and (max-width: 767px) {
  .p-top-message__more {
    text-align: center;
    margin-top: 2.5rem;
  }
}

.p-top-movie__title {
  text-align: center;
}

.p-top-movie__list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(10.875rem, 17.3125rem));
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 30px;
  gap: 1.875rem;
  margin-top: 60px;
  margin-top: 3.75rem;
}
@media screen and (max-width: 1024px) {
  .p-top-movie__list {
    max-width: 36.5rem;
    margin-inline: auto;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.875rem 1.25rem;
  }
}

.p-top-movie__item {
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-top-movie__item:hover {
    opacity: 0.6;
  }
}

.p-top-movie__item-thumbnail {
  border-radius: 0.25rem;
}
.p-top-movie__item-thumbnail img {
  border-radius: 0.25rem;
}

.p-top-movie__item-title {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
  margin-top: 18px;
  margin-top: 1.125rem;
}
@media screen and (max-width: 767px) {
  .p-top-movie__item-title {
    margin-top: 0.875rem;
  }
}

.p-top-movie__channel {
  margin-top: 60px;
  margin-top: 3.75rem;
}
@media screen and (max-width: 767px) {
  .p-top-movie__channel {
    margin-top: 2.5rem;
  }
}

.p-top-movie__channel-wrap {
  border-radius: 0.25rem;
  border: 1px solid rgba(89, 80, 63, .4);
  max-width: 800px;
  max-width: 50rem;
  margin-inline: auto;
  padding: 30px;
  padding: 1.875rem;
}

.p-top-movie__channel-text {
  font-family: "Shippori Mincho B1", serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.04em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-top-movie__channel-text {
    font-size: 0.875rem;
  }
}

.p-top-movie__channel-btn {
  text-align: center;
  margin-top: 20px;
  margin-top: 1.25rem;
}
.p-top-movie__channel-btn a {
  background-color: #59503F;
  border-radius: 1.875rem;
  border: 1px solid #59503F;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 10px;
  gap: 0.625rem;
  width: 100%;
  max-width: 200px;
  max-width: 12.5rem;
  padding-block: 15px 16px;
  padding-block: 0.9375rem 1rem;
  font-family: "Shippori Mincho B1", serif;
  color: #fff;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.04em;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .p-top-movie__channel-btn a {
    max-width: 16.25rem;
    padding-block: 0.78125rem 1.09375rem;
  }
}
.p-top-movie__channel-btn a::before {
  content: "";
  display: block;
  width: 20px;
  width: 1.25rem;
  height: 14px;
  height: 0.875rem;
  margin-top: 3px;
  margin-top: 0.1875rem;
  -webkit-mask: url(../images/icon_youtube.svg) no-repeat center/cover;
          mask: url(../images/icon_youtube.svg) no-repeat center/cover;
  background-color: #fff;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-top-movie__channel-btn a:hover {
    background-color: #fff;
    color: #59503F;
  }
  .p-top-movie__channel-btn a:hover::before {
    background-color: #59503F;
  }
}

.c-modal {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9999;
  background: rgba(0, 0, 0, .8);
}

.c-modal.is-active {
  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;
}

.c-modal__content {
  position: relative;
  width: 80%;
}
@media screen and (max-width: 767px) {
  .c-modal__content {
    width: 90%;
  }
}

.c-modal__iframe {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 16/9 !important;
}

.c-modal__iframe iframe {
  width: 100% !important;
  height: 100% !important;
}

.c-modal__close {
  position: absolute;
  top: -40px;
  right: 0;
}

.p-top-news__wrap {
  display: grid;
  grid-template-columns: minmax(0, 13.75rem) minmax(0, 52.5rem);
  gap: 140px;
  gap: 8.75rem;
}
@media screen and (max-width: 767px) {
  .p-top-news__wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2.5rem;
  }
}

@media screen and (max-width: 767px) {
  .p-top-news__head {
    display: contents;
  }
}

@media screen and (max-width: 767px) {
  .p-top-news__title {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}

.p-top-news__more {
  margin-top: 40px;
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-top-news__more {
    text-align: center;
    margin-top: 0;
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}

.p-top-news__list {
  border-top: 1px solid rgba(89, 80, 63, .4);
}
@media screen and (max-width: 767px) {
  .p-top-news__list {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}

.p-top-news__item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
  gap: 2.5rem;
  padding: 30px;
  padding: 1.875rem;
  border-bottom: 1px solid rgba(89, 80, 63, .4);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .p-top-news__item a {
    display: block;
    padding: 1.25rem 0;
  }
}
@media (any-hover: hover) {
  .p-top-news__item a:hover {
    opacity: 0.6;
  }
}
.p-top-news__item time {
  display: block;
  font-family: "Shippori Mincho B1", serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.1666666667;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .p-top-news__item time {
    font-size: 1rem;
    line-height: 1;
  }
}
.p-top-news__item h3 {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 calc(100% - 7.6875rem);
          flex: 1 1 calc(100% - 7.6875rem);
}
@media screen and (max-width: 767px) {
  .p-top-news__item h3 {
    margin-top: 0.625rem;
  }
}

.p-top-pick-up {
  overflow: hidden;
}
.p-top-pick-up .p-block-editor h3 {
  padding-block: 3.5px 10px;
  padding-block: 0.21875rem 0.625rem;
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-top-pick-up .p-block-editor table tr th:not(:last-child) {
    border-right: 0;
  }
}

.p-top-pick-up__slider {
  margin-top: 60px;
  margin-top: 3.75rem;
}
@media screen and (max-width: 767px) {
  .p-top-pick-up__slider {
    margin-top: 2.5rem;
  }
}
.p-top-pick-up__slider .swiper {
  overflow: visible;
}
.p-top-pick-up__slider .swiper-slide {
  height: auto;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .p-top-pick-up__slider .swiper-slide {
    max-width: 16.25rem;
  }
}
.p-top-pick-up__slider .swiper-slide::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, .6);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  opacity: 0;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .p-top-pick-up__slider .swiper-slide::before {
    display: none;
  }
}
.p-top-pick-up__slider .swiper-slide:not(.swiper-slide-visible) {
  position: relative;
}
.p-top-pick-up__slider .swiper-slide:not(.swiper-slide-visible)::before {
  opacity: 1;
}
.p-top-pick-up__slider .swiper-slide button {
  display: block;
  height: 100%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-top-pick-up__slider .swiper-slide button:hover {
    opacity: 0.6;
  }
}
.p-top-pick-up__slider .swiper-slide button img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-top-campaign__slider-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 14px;
  gap: 0.875rem;
  width: 100%;
  max-width: 114px;
  max-width: 7.125rem;
  position: absolute;
  top: -110px;
  top: -6.875rem;
  right: 0;
}
@media screen and (max-width: 767px) {
  .p-top-campaign__slider-wrap {
    max-width: 6.125rem;
    top: -5.125rem;
  }
}
.p-top-campaign__slider-wrap .swiper-button-next,
.p-top-campaign__slider-wrap .swiper-button-prev {
  width: 50px;
  width: 3.125rem;
  height: 50px;
  height: 3.125rem;
  margin-top: 0;
  z-index: 10;
  cursor: pointer;
  position: static;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .p-top-campaign__slider-wrap .swiper-button-next,
  .p-top-campaign__slider-wrap .swiper-button-prev {
    width: 2.625rem;
    height: 2.625rem;
  }
}
@media (any-hover: hover) {
  .p-top-campaign__slider-wrap .swiper-button-next:hover,
  .p-top-campaign__slider-wrap .swiper-button-prev:hover {
    opacity: 0.6;
  }
}
.p-top-campaign__slider-wrap .swiper-button-next {
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}

.p-top-pick-up__modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
  height: 100%;
  text-align: center;
}

.p-top-pick-up__modal-overlay {
  background-color: rgba(35, 24, 21, .7);
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
}

.p-top-pick-up__modal-inner {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 69.4444444444%;
  padding: 60px 50px;
  padding: 3.75rem 3.125rem;
  margin-top: 30px;
  margin-top: 1.875rem;
  background-color: #EAE8E3;
  border-radius: 0.625rem;
  text-align: left;
  max-height: 90vh;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .p-top-pick-up__modal-inner {
    width: 85.9813084112%;
    max-height: 100%;
    padding: 1.875rem 0.625rem;
    margin-top: 3.125rem;
  }
}

.p-top-pick-up__modal-content {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  overflow-y: auto;
  min-height: 0;
  margin-top: 40px;
  margin-top: 2.5rem;
  padding-inline: 10px;
  padding-inline: 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-top-pick-up__modal-content {
    padding-bottom: 15%;
  }
}

.p-top-pick-up__modal-close {
  display: block;
  width: 26px;
  width: 1.625rem;
  height: 26px;
  height: 1.625rem;
  margin-inline: auto 10px;
  margin-inline: auto 0.625rem;
}

.p-top-pick-up__modal-wrap {
  display: grid;
  grid-template-columns: minmax(0, 37.3725934315%) minmax(0, 53.5673839185%);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 80px;
  gap: 5rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-top-pick-up__modal-wrap {
    display: block;
  }
}

.p-top-pick-up__modal-thumbnail {
  position: sticky;
  top: 0;
  left: 0;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .p-top-pick-up__modal-thumbnail {
    position: static;
  }
}

@media screen and (max-width: 767px) {
  .p-top-pick-up__modal-block {
    margin-top: 2.5rem;
  }
}

.p-top-pick-up__modal-title {
  color: #231815;
  font-family: "Shippori Mincho B1", serif;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .p-top-pick-up__modal-title {
    font-size: 1.25rem;
  }
}
.p-top-pick-up__modal-title + .p-block-editor {
  margin-top: 40px;
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-top-pick-up__modal-title + .p-block-editor {
    margin-top: 1.25rem;
  }
}

.p-top-pick-up__modal-reserve {
  background-color: #fff;
  border-radius: 0.25rem;
  padding: 40px;
  padding: 2.5rem;
  margin-top: 80px;
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .p-top-pick-up__modal-reserve {
    margin-top: 2.5rem;
  }
}

.p-top-pick-up__modal-reserve__title {
  font-family: "Sorts Mill Goudy", serif;
  font-size: 30px;
  font-size: 1.875rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-align: center;
  text-transform: uppercase;
}

.p-top-pick-up__modal-reserve-wrap {
  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: 20px;
  margin-top: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-top-pick-up__modal-reserve-wrap {
    display: block;
  }
}

.p-top-pick-up__modal-reserve-info span {
  display: block;
  text-align: center;
}

.p-top-pick-up__modal-reserve-tel {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1;
}

.p-top-pick-up__modal-reserve-time {
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.04em;
  margin-top: 6px;
  margin-top: 0.375rem;
}

.p-top-pick-up__modal-reserve-btn {
  width: 100%;
  max-width: 380px;
  max-width: 23.75rem;
  margin-left: 20px;
  margin-left: 1.25rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .p-top-pick-up__modal-reserve-btn {
    max-width: 15.5rem;
    margin-inline: auto;
    margin-top: 1.25rem;
  }
}

.p-top-pick-up__modal-reserve-btn-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  gap: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-top-pick-up__modal-reserve-btn-list {
    grid-template-columns: repeat(1, 1fr);
    gap: 0.75rem;
  }
}

.p-top-pick-up__modal-reserve__reserve-item a {
  display: inline-block;
  width: 100%;
  max-width: 180px;
  max-width: 11.25rem;
  padding-block: 7px 9px;
  padding-block: 0.4375rem 0.5625rem;
  border: 1px solid #7DAE65;
  border-radius: 3.125rem;
  font-family: "Shippori Mincho B1", serif;
  background-color: #7DAE65;
  color: #fff;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1.5;
  text-align: center;
  vertical-align: top;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .p-top-pick-up__modal-reserve__reserve-item a {
    max-width: 100%;
    padding-block: 0.5rem 0.625rem;
  }
}
@media (any-hover: hover) {
  .p-top-pick-up__modal-reserve__reserve-item a:hover {
    background-color: #fff;
    color: #7DAE65;
  }
}

.p-top-support {
  background-color: #59503F;
  color: #fff;
}

.p-top-support__title {
  text-align: center;
}

.p-top-support__text {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.04em;
  text-align: center;
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-top-support__text {
    text-align: left;
  }
}

.p-top-support__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  gap: 1.25rem;
  margin-top: 60px;
  margin-top: 3.75rem;
}
@media screen and (max-width: 767px) {
  .p-top-support__list {
    grid-template-columns: repeat(1, 1fr);
    margin-top: 2.5rem;
  }
}

.p-top-support__item {
  background-color: #fff;
  color: #59503F;
  border-radius: 0.375rem;
  padding: 30px 50px;
  padding: 1.875rem 3.125rem;
}
@media screen and (max-width: 767px) {
  .p-top-support__item {
    padding: 1.875rem;
    text-align: center;
  }
}
.p-top-support__item ul li {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  text-align: left;
  padding-left: 16px;
  padding-left: 1rem;
  position: relative;
}
.p-top-support__item ul li::before {
  content: "";
  display: block;
  width: 6px;
  width: 0.375rem;
  height: 6px;
  height: 0.375rem;
  background-color: #59503F;
  position: absolute;
  top: 10px;
  top: 0.625rem;
  left: 0;
  border-radius: 50%;
}
.p-top-support__item ul li + li {
  margin-top: 8px;
  margin-top: 0.5rem;
}
.p-top-support__item ul + p {
  margin-top: 10px;
  margin-top: 0.625rem;
}

.p-top-support__item-number {
  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: 28px;
  width: 1.75rem;
  height: 28px;
  height: 1.75rem;
  margin-inline: auto;
  border-radius: 50%;
  background-color: #59503F;
  color: #fff;
  font-family: "Shippori Mincho B1", serif;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.04em;
}

.p-top-support__item-title {
  text-align: center;
}
.p-top-support__item-title > span:not([class]) {
  font-family: "Shippori Mincho B1", serif;
  font-size: 26px;
  font-size: 1.625rem;
  font-weight: 600;
  display: inline-block;
  margin-top: 14px;
  margin-top: 0.875rem;
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
  border-bottom: 1px dashed rgba(89, 80, 63, .4);
}
@media screen and (max-width: 767px) {
  .p-top-support__item-title > span:not([class]) {
    font-size: 1.25rem;
  }
}
@media (max-width: 347px) {
  .p-top-support__item-title > span:not([class]) {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
  }
  .p-top-support__item-title > span:not([class]) .sp-br {
    display: block;
  }
}
.p-top-support__item-title > span:not([class]) > span:not([class]) {
  display: block;
  margin-bottom: 4px;
  margin-bottom: 0.25rem;
  font-size: 16px;
  font-size: 1rem;
}
@media screen and (max-width: 767px) {
  .p-top-support__item-title > span:not([class]) > span:not([class]) {
    font-size: 0.875rem;
  }
}

.p-top-support__item-text {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
  margin-top: 30px;
  margin-top: 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-top-support__item-text {
    text-align: left;
    margin-top: 1.5rem;
  }
}
.p-top-support__item-text + .p-top-support__item-text {
  margin-top: 14px;
  margin-top: 0.875rem;
}
.p-top-support__item-text + ul {
  margin-top: 10px;
  margin-top: 0.625rem;
}
.p-top-support__item-text span {
  font-weight: 700;
}

.p-top-support__more {
  margin-top: 60px;
  margin-top: 3.75rem;
  text-align: center;
}

.block {
  display: block;
}

.inline-block {
  display: inline-block;
}
/*# sourceMappingURL=style.css.map */
