@charset "UTF-8";
html {
  color: #000;
  background: #fff;
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
textarea,
p,
blockquote,
th,
td,
figure {
  margin: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}

fieldset,
img {
  border: 0;
}

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
  font-style: normal;
  font-weight: normal;
}

ol,
ul {
  list-style: none;
}

caption,
th {
  text-align: left;
}

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

q:before,
q:after {
  content: "";
}

abbr,
acronym {
  border: 0;
  font-variant: normal;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input,
textarea,
select,
button {
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  border-radius: 0;
  border: none;
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  background-color: inherit;
}

input,
textarea,
select {
  font-size: 16px;
}

textarea {
  resize: vertical;
  display: block;
}

button {
  padding: 0;
  cursor: pointer;
}

legend {
  color: #000;
}

main {
  display: block;
}

a {
  text-decoration: none;
  color: inherit;
}

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

svg {
  display: block;
}

* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

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

/* foundation > base
--------------------------------------------- */
body {
  font-family: "Noto Serif JP", serif;
  color: #2B080B;
}
body.js-no-scroll {
  overflow-y: hidden;
}

@media (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none;
    cursor: default;
  }
}

/* layout > main
--------------------------------------------- */
.l-main.l-main--home, .l-main.l-main--single, .l-main.l-main--type02 {
  position: relative;
}
.l-main.l-main--home::before, .l-main.l-main--single::before, .l-main.l-main--type02::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 462px;
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(232, 220, 219, 0)), to(#E8DCDB));
  background: linear-gradient(0deg, rgba(232, 220, 219, 0) 0%, #E8DCDB 100%);
  z-index: -1;
}
.l-main.l-main--single-column::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 462px;
  background: #F3EDED;
  z-index: -1;
}
.l-main.l-main--type03::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 462px;
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(255, 255, 255, 0)), to(#DDF8D3));
  background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, #DDF8D3 100%);
  z-index: -1;
}
@media screen and (max-width: 750px) {
  .l-main.l-main--type03::before {
    height: 231px;
  }
}

/* object > component > button
--------------------------------------------- */
/* object > component > heading
--------------------------------------------- */
/* セクションタイトル */
.c-section-heading {
  position: relative;
  padding: 80px 0 0 53px;
}
@media screen and (max-width: 600px) {
  .c-section-heading {
    padding: 44px 4px 6px 5px;
  }
}
.c-section-heading .jp {
  font-size: 40px;
  font-weight: 600;
  line-height: 1.425;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 600px) {
  .c-section-heading .jp {
    font-size: 20px;
    line-height: 1.2;
  }
}
.c-section-heading .en {
  position: absolute;
  top: 0;
  left: 0;
  color: #FFF9F9;
  font-family: "Libre Caslon Text", serif;
  font-size: 128px;
  font-weight: 400;
  line-height: 1;
}
@media screen and (max-width: 600px) {
  .c-section-heading .en {
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    font-size: 64px;
    top: initial;
    bottom: 6px;
  }
}
.c-section-heading.--pink .en {
  color: #F5D5D3;
}

/* 下層：セクションタイトル */
.c-section-title {
  text-align: center;
  font-size: 40px;
  line-height: 1.425;
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  .c-section-title {
    font-size: 30px;
  }
}
@media screen and (max-width: 500px) {
  .c-section-title {
    font-size: 20px;
    line-height: 1.2;
  }
}
.c-section-title .sm {
  font-size: 32px;
}
@media screen and (max-width: 750px) {
  .c-section-title .sm {
    font-size: 12px;
  }
}

/* 下層：セクションタイトル01 */
.c-section-title02 {
  font-size: 28px;
  font-weight: 600;
  line-height: 1.2142857143;
  padding-bottom: 12px;
  border-bottom: 1px solid #C5B2B4;
}
@media screen and (max-width: 750px) {
  .c-section-title02 {
    font-size: 18px;
    line-height: 1.1944444444;
    padding-bottom: 8px;
  }
}

/* object > component > header
--------------------------------------------- */
.p-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 118px;
  background: -webkit-gradient(linear, left top, left bottom, from(#FFF), to(rgba(255, 255, 255, 0.6)));
  background: linear-gradient(180deg, #FFF 0%, rgba(255, 255, 255, 0.6) 100%);
  z-index: 1001;
}
@media screen and (max-width: 1040px) {
  .p-header {
    height: 54px;
  }
}

.p-header__inner {
  height: 100%;
  max-width: 1446px;
  margin-inline: auto;
  padding: 0 0 0 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (max-width: 1040px) {
  .p-header__inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 15px;
  }
}

.p-header__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 1040px) {
  .p-header__top {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
  }
}

@media screen and (max-width: 1040px) {
  .p-header__bottom {
    display: none;
  }
}

.p-header__right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 16px;
     -moz-column-gap: 16px;
          column-gap: 16px;
}
@media screen and (max-width: 1040px) {
  .p-header__right {
    display: none;
  }
}

/* 電話番号 */
.p-header__tel-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 6px;
     -moz-column-gap: 6px;
          column-gap: 6px;
}
.p-header__tel-link img {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 22px;
          flex: 0 0 22px;
  width: 22px;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-header__tel-text {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  font-size: 28px;
  font-weight: 400;
  line-height: 1.2142857143;
  white-space: nowrap;
}

/* LINEリンク */
.p-header__line {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 229px;
          flex: 0 0 229px;
  width: 229px;
  -ms-flex-item-align: start;
      align-self: start;
}

.p-header__line-link {
  display: block;
  background-color: #59A40F;
  padding: 19px 10px;
  color: #FFF;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.2;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
@media (any-hover: hover) {
  .p-header__line-link:hover {
    opacity: 0.6;
  }
}

.p-header__tel {
  margin-bottom: 18px;
  margin-right: 10px;
}

/* ハンバーガーボタン */
.p-header__hamburger {
  display: none;
}
@media screen and (max-width: 1040px) {
  .p-header__hamburger {
    display: block;
  }
}
.p-header__hamburger.is-open .p-header__hamburger-line:nth-of-type(1) {
  top: 50%;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.p-header__hamburger.is-open .p-header__hamburger-line:nth-of-type(2) {
  opacity: 0;
}
.p-header__hamburger.is-open .p-header__hamburger-line:nth-of-type(3) {
  top: 50%;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.p-header__hamburger-wrap {
  width: 31.5px;
  height: 15px;
  position: relative;
}
.p-header__hamburger-wrap.is-open .p-header__hamburger-line:nth-of-type(1) {
  top: 50%;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.p-header__hamburger-wrap.is-open .p-header__hamburger-line:nth-of-type(2) {
  opacity: 0;
}
.p-header__hamburger-wrap.is-open .p-header__hamburger-line:nth-of-type(3) {
  top: 50%;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.p-header__hamburger-line {
  display: inline-block;
  position: absolute;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #2B080B;
  -webkit-transition: opacity 0.4s ease, -webkit-transform 0.4s ease;
  transition: opacity 0.4s ease, -webkit-transform 0.4s ease;
  transition: opacity 0.4s ease, transform 0.4s ease;
  transition: opacity 0.4s ease, transform 0.4s ease, -webkit-transform 0.4s ease;
}
.p-header__hamburger-line:nth-of-type(1) {
  top: 0;
}
.p-header__hamburger-line:nth-of-type(2) {
  top: 50%;
}
.p-header__hamburger-line:nth-of-type(3) {
  top: 100%;
}

/* ロゴ */
.p-header__logo {
  padding-top: 18px;
}
@media screen and (max-width: 1040px) {
  .p-header__logo {
    padding-top: 0;
  }
}

.p-header__logo-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 24px;
     -moz-column-gap: 24px;
          column-gap: 24px;
}
@media screen and (max-width: 1040px) {
  .p-header__logo-link {
    -webkit-column-gap: 16px;
       -moz-column-gap: 16px;
            column-gap: 16px;
  }
}

.p-header__logo-img {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 101px;
          flex: 0 0 101px;
  width: 101px;
}
@media screen and (max-width: 1040px) {
  .p-header__logo-img {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 57.5px;
            flex: 0 0 57.5px;
    width: 57.5px;
  }
}
.p-header__logo-img img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-header__logo-text-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 17px;
     -moz-column-gap: 17px;
          column-gap: 17px;
}
@media screen and (max-width: 1040px) {
  .p-header__logo-text-wrap {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-rows: repeat(2, auto);
    -webkit-column-gap: 8px;
       -moz-column-gap: 8px;
            column-gap: 8px;
  }
}
@media screen and (max-width: 1040px) {
  .p-header__logo-text-wrap .inner {
    display: contents;
  }
}
.p-header__logo-text-wrap .upper-text {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4285714286;
}
@media screen and (max-width: 1040px) {
  .p-header__logo-text-wrap .upper-text {
    grid-column: 1/3;
    grid-row: 1/2;
    font-size: 13px;
    line-height: 1.6923076923;
  }
}
.p-header__logo-text-wrap .lower-text {
  font-family: "Libre Caslon Text", serif;
  font-size: 10px;
  font-weight: 400;
  line-height: 1.2;
}
@media screen and (max-width: 1040px) {
  .p-header__logo-text-wrap .lower-text {
    grid-column: 1/2;
    grid-row: 2/3;
    font-size: 12px;
    text-align: right;
    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;
  }
}
.p-header__logo-text-wrap .site-text {
  font-size: 26px;
  font-weight: 600;
  line-height: 1.4230769231;
}
@media screen and (max-width: 1040px) {
  .p-header__logo-text-wrap .site-text {
    grid-column: 2/3;
    grid-row: 2/3;
    font-size: 13px;
    line-height: 1.6923076923;
  }
}

/* PCナビ */
.p-header__nav-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;
  -webkit-column-gap: 24px;
     -moz-column-gap: 24px;
          column-gap: 24px;
}

.p-header__nav-item {
  position: relative;
}
.p-header__nav-item.--mega {
  padding-right: 14px;
}
.p-header__nav-item.--mega::after {
  content: "";
  position: absolute;
  top: 54%;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-image: url(../img/common/icon-triangle-right.webp);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  display: inline-block;
  width: 7px;
  height: 7px;
  -webkit-transition: -webkit-transform 0.4s ease;
  transition: -webkit-transform 0.4s ease;
  transition: transform 0.4s ease;
  transition: transform 0.4s ease, -webkit-transform 0.4s ease;
}
@media (any-hover: hover) {
  .p-header__nav-item.--mega:hover::after {
    -webkit-transform: translateY(-50%) rotate(90deg);
            transform: translateY(-50%) rotate(90deg);
  }
  .p-header__nav-item.--mega:hover .p-header__nav-sub-wrap {
    opacity: 1;
    visibility: visible;
  }
}

.p-header__nav-sub-wrap {
  position: fixed;
  top: 118px;
  left: 0;
  width: 100%;
  background: rgba(255, 255, 255, 0.6);
  -webkit-box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.1);
          box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.1);
  padding: 24px 0 24px;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.4s ease, visibility 0.4s ease;
  transition: opacity 0.4s ease, visibility 0.4s ease;
}

.p-header__nav-link,
.p-header__nav-link-text {
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.1875;
  cursor: pointer;
}

.p-header__nav-link {
  position: relative;
}
.p-header__nav-link::after {
  position: absolute;
  left: 0;
  content: "";
  width: 100%;
  height: 1px;
  background: #84204D;
  bottom: -9px;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: right top;
          transform-origin: right top;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
@media (any-hover: hover) {
  .p-header__nav-link:hover::after {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: left top;
            transform-origin: left top;
  }
}

.p-header__sub-nav-list {
  display: grid;
  -webkit-column-gap: 24px;
     -moz-column-gap: 24px;
          column-gap: 24px;
  row-gap: 16px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.p-header__sub-nav-list.--col4 {
  grid-template-columns: repeat(4, 210px);
}

.p-header__sub-nav-link {
  display: block;
  position: relative;
}
.p-header__sub-nav-link::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(75, 50, 49, 0.6);
  opacity: 0;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
@media (any-hover: hover) {
  .p-header__sub-nav-link:hover::before {
    opacity: 1;
  }
}

.p-header__sub-nav-photo img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-header__sub-nav-body {
  background-color: #FFF;
  padding: 4px 4px;
}

.p-header__sub-nav-title {
  text-align: center;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.2307692308;
  letter-spacing: 0.5px;
}

/* object > component > footer
--------------------------------------------- */
.p-footer {
  padding: 62px 0 22px;
  background-color: #F3EDED;
  position: relative;
}
@media screen and (max-width: 900px) {
  .p-footer {
    padding: 80px 0 24px;
  }
}
@media screen and (max-width: 750px) {
  .p-footer {
    padding: 80px 0 84px;
  }
}
.p-footer::after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  display: inline-block;
  background-image: url(../img/common/footer-img02.webp);
  width: 226px;
  height: 251px;
  bottom: 0;
  right: 0;
}
@media screen and (max-width: 1440px) {
  .p-footer::after {
    width: 113px;
    height: 125px;
  }
}
@media screen and (max-width: 1240px) {
  .p-footer::after {
    width: 93px;
    height: 105px;
  }
}
@media screen and (max-width: 900px) {
  .p-footer::after {
    background-image: url(../img/common/footer-img02-sp.webp);
    width: 113px;
    height: 125px;
  }
}

.p-footer__inner {
  max-width: 988px;
  padding: 0 15px;
  margin-inline: auto;
  position: relative;
}
@media screen and (max-width: 900px) {
  .p-footer__inner {
    padding: 0;
  }
}
.p-footer__inner::before {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  display: inline-block;
  background-image: url(../img/common/footer-img01.webp);
  width: 362px;
  height: 238px;
  top: -62px;
  left: 190px;
}
@media screen and (max-width: 1040px) {
  .p-footer__inner::before {
    width: 271px;
    height: 169px;
    left: 230px;
  }
}
@media screen and (max-width: 900px) {
  .p-footer__inner::before {
    background-image: url(../img/common/footer-img01-sp.webp);
    width: 114px;
    height: 130px;
    left: 0;
    top: -80px;
  }
}

/* ロゴ */
.p-footer__logo-link {
  display: block;
  width: 154px;
}
@media screen and (max-width: 900px) {
  .p-footer__logo-link {
    width: 116px;
    margin-inline: auto;
  }
}
.p-footer__logo-link img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* PC:アスセスリンク */
.p-footer__access-pc {
  position: absolute;
  top: 14px;
  right: 0;
  max-width: 246px;
  width: 100%;
  display: inline-block;
  text-align: right;
  gap: 8px;
  border-radius: 8px;
  border: 2px solid #84204D;
  background-color: transparent;
  padding: 16px 30px 16px 10px;
  color: #84204D;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 600;
  -webkit-transition: background-color 0.4s ease, color 0.4s ease;
  transition: background-color 0.4s ease, color 0.4s ease;
}
@media screen and (max-width: 1040px) {
  .p-footer__access-pc {
    right: 15px;
  }
}
@media screen and (max-width: 900px) {
  .p-footer__access-pc {
    display: none;
  }
}
.p-footer__access-pc::before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 30px;
  background-image: url(../img/common/icon-map-before.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  display: inline-block;
  width: 17px;
  height: 22px;
  -webkit-transition: background-image 0.4s ease;
  transition: background-image 0.4s ease;
}
@media (any-hover: hover) {
  .p-footer__access-pc:hover {
    background-color: #84204D;
    color: #FFF;
  }
  .p-footer__access-pc:hover::before {
    background-image: url(../img/common/icon-map-footer.png);
  }
}

/* middle */
.p-footer__middle {
  margin-top: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-right: 8px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 900px) {
  .p-footer__middle {
    padding-right: 0;
    margin-top: 34px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

/* info */
@media screen and (max-width: 900px) {
  .p-footer__info {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
  }
}

.p-footer__info-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 14px;
}

.p-footer__info-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.p-footer__info-term {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 120px;
          flex: 0 0 120px;
  font-size: 16px;
  font-weight: 400;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.5;
}
@media screen and (max-width: 900px) {
  .p-footer__info-term {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 90.5px;
            flex: 0 0 90.5px;
    font-size: 14px;
    line-height: 1.2857142857;
  }
}

.p-footer__info-desc {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  font-size: 16px;
  font-weight: 400;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.5;
}
@media screen and (max-width: 900px) {
  .p-footer__info-desc {
    font-size: 14px;
    line-height: 1.2857142857;
  }
}

/* SP:access */
.p-footer__sp-access {
  display: none;
}
@media screen and (max-width: 900px) {
  .p-footer__sp-access {
    margin-top: 13.5px;
    display: block;
    text-align: center;
  }
}

.p-footer__sp-access-link {
  display: inline-block;
  max-width: 291px;
  width: 100%;
  border-radius: 4px;
  border: 1px solid #84204D;
  background-color: transparent;
  padding: 10.5px 68px 10.5px 10px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 600;
  text-align: right;
  position: relative;
  -webkit-transition: background-color 0.4s ease, color 0.4s ease;
  transition: background-color 0.4s ease, color 0.4s ease;
}
@media screen and (max-width: 750px) {
  .p-footer__sp-access-link {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 4px;
  }
}
.p-footer__sp-access-link::before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 68px;
  background-image: url(../img/common/icon-map-before.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  display: inline-block;
  width: 11px;
  height: 14px;
  -webkit-transition: background-image 0.4s ease;
  transition: background-image 0.4s ease;
}
@media screen and (max-width: 750px) {
  .p-footer__sp-access-link::before {
    position: static;
    top: initial;
    -webkit-transform: none;
            transform: none;
    left: initial;
  }
}
@media (any-hover: hover) {
  .p-footer__sp-access-link:hover {
    background-color: #84204D;
    color: #FFF;
  }
  .p-footer__sp-access-link:hover::before {
    background-image: url(../img/common/icon-map-footer.png);
  }
}

/* nav */
.p-footer__nav {
  padding-left: 39px;
  border-left: 1px solid #C2C2C2;
  display: grid;
  grid-template-columns: repeat(3, auto);
}
@media screen and (max-width: 900px) {
  .p-footer__nav {
    margin-top: 31px;
    grid-template-columns: repeat(2, auto);
    grid-template-rows: repeat(2, auto);
    -webkit-column-gap: 22.5px;
       -moz-column-gap: 22.5px;
            column-gap: 22.5px;
    row-gap: 8px;
    padding-left: 0;
    border-left: none;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.p-footer__nav01 {
  margin-top: -4px;
}
@media screen and (max-width: 900px) {
  .p-footer__nav01 {
    margin-top: 0;
    grid-column: 1/2;
    grid-row: 1/2;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}

.p-footer__nav02 {
  margin-left: 15px;
}
@media screen and (max-width: 900px) {
  .p-footer__nav02 {
    grid-column: 2/3;
    grid-row: 1/2;
    margin-top: 2px;
    margin-left: 0;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}

.p-footer__nav03 {
  margin-top: -4px;
  margin-left: 40px;
}
@media screen and (max-width: 900px) {
  .p-footer__nav03 {
    margin-top: 0;
    grid-column: 1/3;
    grid-row: 2/3;
    margin-left: 0;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}

.p-footer__nav-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 16px;
}
@media screen and (max-width: 900px) {
  .p-footer__nav-list {
    gap: 8px;
  }
}
.p-footer__nav-list.--sub {
  margin-top: 8px;
  gap: 8px;
}
.p-footer__nav-list.--sub .p-footer__nav-item {
  padding-left: 10px;
  position: relative;
}
@media screen and (max-width: 900px) {
  .p-footer__nav-list.--sub .p-footer__nav-item {
    line-height: 1;
  }
}
.p-footer__nav-list.--sub .p-footer__nav-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 60%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  display: inline-block;
  background-image: url(../img/common/before-link-line.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  width: 6px;
  height: 2px;
}
.p-footer__nav-list.--sub .p-footer__nav-link {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.1666666667;
}
@media screen and (max-width: 900px) {
  .p-footer__nav-list.--sub .p-footer__nav-link {
    font-size: 11px;
    line-height: 1;
  }
}
@media screen and (max-width: 900px) {
  .p-footer__nav-list.--03 {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 42.5px;
  }
}

.p-footer__nav-title,
.p-footer__nav-link {
  font-size: 14px;
  font-weight: 500;
  color: #000;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.2142857143;
}
@media screen and (max-width: 900px) {
  .p-footer__nav-title,
  .p-footer__nav-link {
    font-size: 13px;
    line-height: 1.3846153846;
  }
}

.p-footer__nav-link {
  -webkit-transition: color 0.4s ease;
  transition: color 0.4s ease;
}
@media (any-hover: hover) {
  .p-footer__nav-link:hover {
    color: #2B080B;
  }
}

.p-footer__nav-container {
  display: contents;
}
@media screen and (max-width: 900px) {
  .p-footer__nav-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 8px;
  }
}

/* bottom */
.p-footer__bottom {
  margin-top: 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 38px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 900px) {
  .p-footer__bottom {
    margin-top: 12px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 8px;
  }
}

.p-footer__privacy {
  font-size: 14px;
  font-weight: 400;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.2142857143;
}
@media screen and (max-width: 900px) {
  .p-footer__privacy {
    font-size: 12px;
    line-height: 1.0833333333;
  }
}

.p-footer__copyright {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.2307692308;
}
@media screen and (max-width: 900px) {
  .p-footer__copyright {
    font-size: 12px;
    line-height: 1.0833333333;
  }
}

/* object > component > breadcrumb
--------------------------------------------- */
.p-breadcrumb {
  max-width: 990px;
  margin-inline: auto;
  padding: 16px 15px 0;
  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;
}
@media screen and (max-width: 750px) {
  .p-breadcrumb {
    padding: 8px 15px 0;
  }
}
.p-breadcrumb a,
.p-breadcrumb span {
  color: #333;
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
  font-family: "Noto Sans JP", sans-serif;
}
.p-breadcrumb a {
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
@media (any-hover: hover) {
  .p-breadcrumb a:hover {
    opacity: 0.7;
  }
}
.p-breadcrumb li:not(:first-of-type)::before {
  content: "";
  display: inline-block;
  margin: 0 11px;
  background-image: url(../img/common/breadcrumb-triangle.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  width: 8px;
  height: 8px;
  margin: 0 10px;
}
@media screen and (max-width: 750px) {
  .p-breadcrumb li:not(:first-of-type)::before {
    margin: 0 5.5px;
    width: 5px;
    height: 5px;
    position: relative;
    -webkit-transform: translateY(-1px);
            transform: translateY(-1px);
  }
}

/* object > component > drawer
--------------------------------------------- */
.p-drawer {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: #F3EDED;
  z-index: 1000;
  -webkit-transition: opacity 0.4s ease, visibility 0.4s ease;
  transition: opacity 0.4s ease, visibility 0.4s ease;
  opacity: 0;
  visibility: hidden;
}
.p-drawer.is-open {
  opacity: 1;
  visibility: visible;
}

.p-drawer__inner {
  padding: 74px 15px 12px;
  overflow-y: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
  max-width: 375px;
  margin-inline: auto;
}
.p-drawer__inner::-webkit-scrollbar {
  display: none;
}

.p-drawer__container {
  /* 仮 */
  height: 800px;
}
@media screen and (max-width: 500px) {
  .p-drawer__container {
    height: 550px;
  }
}

.p-drawer__nav-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 18px;
}

.p-drawer__sub-list {
  display: none;
}

.p-drawer__sub-list-inner {
  margin-top: 12px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -webkit-column-gap: 15px;
     -moz-column-gap: 15px;
          column-gap: 15px;
  row-gap: 14px;
}

.p-drawer__sub-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  background: rgba(255, 255, 255, 0.9);
  -webkit-box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.1);
          box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.1);
}

.p-drawer__sub-photo img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-drawer__sub-body {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  padding: 2.5px 0 2px;
}

.p-drawer__sub-title {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 500;
  text-align: center;
  line-height: 1.4583333333;
}

.p-drawer__nav-text,
.p-drawer__nav-link {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 16px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  line-height: 1.4375;
}

.p-drawer__nav-text {
  padding-right: 12px;
  position: relative;
}
.p-drawer__nav-text::after {
  content: "";
  position: absolute;
  top: 54%;
  right: 0;
  -webkit-transform: translateY(-50%) rotate(-90deg);
          transform: translateY(-50%) rotate(-90deg);
  background-image: url(../img/common/icon-triangle-down-brown.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  display: inline-block;
  width: 7px;
  height: 7px;
  -webkit-transition: -webkit-transform 0.4s ease;
  transition: -webkit-transform 0.4s ease;
  transition: transform 0.4s ease;
  transition: transform 0.4s ease, -webkit-transform 0.4s ease;
}
.p-drawer__nav-text.is-open::after {
  -webkit-transform: translateY(-50%) rotate(0deg);
          transform: translateY(-50%) rotate(0deg);
}

.p-drawer__info {
  margin-top: 19.5px;
}

.p-drawer__tel-notice {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.4285714286;
}
.p-drawer__tel-notice .md {
  font-size: 18px;
  font-weight: 400;
}
.p-drawer__tel-notice .sm {
  font-size: 13px;
  font-weight: 400;
}

.p-drawer__buttons {
  margin-top: 7.5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}

.p-drawer__button {
  width: 100%;
}

.p-drawer__tel-button,
.p-drawer__line-button {
  width: 100%;
  color: #FFF;
  text-align: center;
}

.p-drawer__tel-button {
  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;
  border-radius: 4px;
  padding: 12.5px 10px 12px;
  background-color: #84204D;
}
.p-drawer__tel-button img {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 22.5px;
          flex: 0 0 22.5px;
  width: 22.5px;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-drawer__tel-button .text {
  font-size: 21px;
  font-family: "Libre Caslon Text", serif;
  font-weight: 400;
  line-height: 1.2380952381;
}

.p-drawer__line-button {
  display: inline-block;
  border-radius: 4.5px;
  padding: 13.75px 10px 13.75px;
  background-color: #59A40F;
  font-size: 16px;
  line-height: 1.4375;
  font-weight: 700;
  font-family: "Noto Sans JP", sans-serif;
}

.p-drawer__info-textarea {
  margin-top: 24px;
  text-align: center;
}

.p-drawer__info-text {
  font-size: 13px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
}

.p-drawer__site-title {
  margin-top: 10px;
  text-align: center;
  font-size: 16px;
  line-height: 1.4375;
}

/* object > component > cta
--------------------------------------------- */
.p-cta {
  padding: 90px 15px;
  background-image: url(../img/common/cta-bg.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-cta {
    padding: 40px 0 41.5px;
    background-image: url(../img/common/cta-bg-sp.webp);
  }
}
.p-cta::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(45, 16, 16, 0.46);
}

.p-cta__inner {
  position: relative;
  z-index: 2;
}

.p-cta__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-cta__heading-en {
  font-family: "Libre Caslon Text", serif;
  color: #FFF;
  font-size: 80px;
  font-weight: 400;
  line-height: 1.225;
}
@media screen and (max-width: 750px) {
  .p-cta__heading-en {
    font-size: 32px;
    line-height: 1.28125;
  }
}

.p-cta__heading-jp {
  color: #FFF;
  font-size: 25px;
  font-weight: 600;
  line-height: 1.44;
}
@media screen and (max-width: 750px) {
  .p-cta__heading-jp {
    font-size: 16px;
    line-height: 1.1875;
  }
}

.p-cta__btn-wrap {
  margin-top: 11px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 63px;
}
@media screen and (max-width: 750px) {
  .p-cta__btn-wrap {
    margin-top: 23px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 16px;
  }
}

.p-cta__tel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  max-width: 390px;
  width: 100%;
}
@media screen and (max-width: 750px) {
  .p-cta__tel {
    max-width: 291px;
  }
}

.p-cta__tel-button {
  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: 6px;
  max-width: 390px;
  width: 100%;
  background-color: #FFF;
  color: #84204D;
  padding: 22px 10px 23px 10px;
  border-radius: 8px;
  font-size: 32px;
  font-family: "Libre Caslon Text", serif;
  font-weight: 400;
  line-height: 1.2258064516;
  -webkit-transition: background-color 0.4s ease, color 0.4s ease;
  transition: background-color 0.4s ease, color 0.4s ease;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-cta__tel-button {
    padding: 9.5px 10px 10px;
    font-size: 18px;
    line-height: 1.2222222222;
    gap: 3px;
  }
}
.p-cta__tel-button .icon {
  display: inline-block;
  width: 24px;
  height: 24px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-cta__tel-button .icon {
    width: 16px;
    height: 16px;
    -webkit-transform: translateY(-1px);
            transform: translateY(-1px);
  }
}
.p-cta__tel-button .icon::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  background-image: url(../img/common/icon-tel-main.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  width: 24px;
  height: 24px;
  -webkit-transition: background-image 0.4s ease;
  transition: background-image 0.4s ease;
}
@media screen and (max-width: 750px) {
  .p-cta__tel-button .icon::before {
    width: 16px;
    height: 16px;
  }
}
@media (any-hover: hover) {
  .p-cta__tel-button:hover {
    background-color: #84204D;
    color: #FFF;
  }
  .p-cta__tel-button:hover .icon::before {
    background-image: url(../img/common/icon-tel-white.png);
  }
}

.p-cta__tel-text {
  font-family: "Noto Sans JP", sans-serif;
  color: #FFF;
  font-size: 14px;
  line-height: 1.4285714286;
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .p-cta__tel-text {
    display: none;
  }
}

.p-cta__line {
  max-width: 391px;
  width: 100%;
}
@media screen and (max-width: 750px) {
  .p-cta__line {
    max-width: 291px;
  }
}

.p-cta__line-button {
  display: inline-block;
  width: 100%;
  background-color: #59A40F;
  color: #FFF;
  text-align: center;
  padding: 27px 10px;
  border-radius: 8px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.45;
  -webkit-transition: background-color 0.4s ease, color 0.4s ease;
  transition: background-color 0.4s ease, color 0.4s ease;
}
@media screen and (max-width: 750px) {
  .p-cta__line-button {
    padding: 11px 10px 11px;
    font-size: 14px;
    line-height: 1.2142857143;
  }
}
@media (any-hover: hover) {
  .p-cta__line-button:hover {
    background-color: #FFF;
    color: #59A40F;
  }
}

.p-cta__sp-info {
  display: none;
}
@media screen and (max-width: 750px) {
  .p-cta__sp-info {
    margin-top: 5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 4px;
  }
}

.p-cta__sp-info-text {
  color: #FFF;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 1.04px;
  line-height: 1.6;
}

.p-cta__sp-info-notice {
  font-family: "Noto Sans JP", sans-serif;
  color: #FFF;
  font-size: 13px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 1.04px;
}

/* object > component > fv
--------------------------------------------- */
.p-fv {
  height: 800px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-fv {
    height: auto;
  }
}

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

.p-fv__box {
  position: absolute;
  top: 142px;
  left: 0;
  z-index: 2;
}
@media screen and (max-width: 750px) {
  .p-fv__box {
    top: 84px;
  }
}

.p-fv__box-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 16px;
}
@media screen and (max-width: 500px) {
  .p-fv__box-inner {
    gap: 8px;
  }
}

.p-fv__box-sub {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 4px 24px;
  background: rgba(75, 50, 49, 0.8);
  color: #FFF;
  font-size: 24px;
  text-shadow: 0px 0px 12px rgba(0, 0, 0, 0.25);
  line-height: 1.8333333333;
  font-weight: 400;
}
@media screen and (max-width: 500px) {
  .p-fv__box-sub {
    padding: 4px 16px;
    font-size: 14px;
    line-height: 1.5714285714;
  }
}

.p-fv__box-main {
  padding: 16px 24px;
  background: rgba(75, 50, 49, 0.8);
  text-shadow: 0px 0px 12px rgba(0, 0, 0, 0.25);
  color: #FFF;
  font-size: 36px;
  font-weight: 400;
  line-height: 1.4444444444;
}
@media screen and (max-width: 500px) {
  .p-fv__box-main {
    padding: 5px 16px;
    font-size: 24px;
    line-height: 1.3333333333;
  }
}

/* object > component > page fv
--------------------------------------------- */
.p-page-fv {
  height: 462px;
  background: -webkit-gradient(linear, left top, left bottom, from(#E8DCDB), to(rgba(232, 220, 219, 0)));
  background: linear-gradient(180deg, #E8DCDB 0%, rgba(232, 220, 219, 0) 100%);
  overflow-x: hidden;
}
@media screen and (max-width: 750px) {
  .p-page-fv {
    height: auto;
  }
}
.p-page-fv.has-bg-color {
  background: -webkit-gradient(linear, left top, left bottom, from(#E8DCDB), to(rgba(232, 220, 219, 0))), #F3EDED;
  background: linear-gradient(180deg, #E8DCDB 0%, rgba(232, 220, 219, 0) 100%), #F3EDED;
}
.p-page-fv.p-page-fv__about .p-page-fv__title {
  bottom: 34px;
}
@media screen and (max-width: 750px) {
  .p-page-fv.p-page-fv__about .p-page-fv__title {
    bottom: 24px;
  }
}
.p-page-fv.p-page-fv__beauty .p-page-fv__title {
  left: -194px;
}
@media (max-width: 1340px) {
  .p-page-fv.p-page-fv__beauty .p-page-fv__title {
    left: -1px;
  }
}
@media screen and (max-width: 750px) {
  .p-page-fv.p-page-fv__beauty .p-page-fv__title {
    bottom: 24px;
  }
}
.p-page-fv.p-page-fv__medical .p-page-fv__title {
  left: -53px;
  bottom: 38px;
}
@media screen and (max-width: 1240px) {
  .p-page-fv.p-page-fv__medical .p-page-fv__title {
    left: 0;
    bottom: 76px;
  }
}
@media screen and (max-width: 750px) {
  .p-page-fv.p-page-fv__medical .p-page-fv__title {
    bottom: 51px;
  }
}
.p-page-fv.p-page-fv__menu .p-page-fv__title {
  left: -190px;
  bottom: 45px;
}
@media (max-width: 1320px) {
  .p-page-fv.p-page-fv__menu .p-page-fv__title {
    left: -129px;
  }
}
@media screen and (max-width: 1240px) {
  .p-page-fv.p-page-fv__menu .p-page-fv__title {
    left: -1px;
  }
}
@media screen and (max-width: 750px) {
  .p-page-fv.p-page-fv__menu .p-page-fv__title {
    bottom: 48px;
  }
}
.p-page-fv.p-page-fv__reservation .p-page-fv__title {
  left: -190px;
  bottom: 45px;
}
@media (max-width: 1320px) {
  .p-page-fv.p-page-fv__reservation .p-page-fv__title {
    left: -129px;
  }
}
@media screen and (max-width: 1240px) {
  .p-page-fv.p-page-fv__reservation .p-page-fv__title {
    left: -1px;
  }
}
@media screen and (max-width: 750px) {
  .p-page-fv.p-page-fv__reservation .p-page-fv__title {
    bottom: 48px;
  }
}
.p-page-fv.p-page-fv__faq .p-page-fv__title {
  bottom: 45px;
  left: -190px;
}
@media screen and (max-width: 1240px) {
  .p-page-fv.p-page-fv__faq .p-page-fv__title {
    left: -1px;
  }
}
@media screen and (max-width: 750px) {
  .p-page-fv.p-page-fv__faq .p-page-fv__title {
    bottom: 48px;
  }
}
.p-page-fv.p-page-fv__access .p-page-fv__title {
  bottom: 45px;
  left: -110px;
}
@media screen and (max-width: 1240px) {
  .p-page-fv.p-page-fv__access .p-page-fv__title {
    left: -1px;
  }
}
@media screen and (max-width: 750px) {
  .p-page-fv.p-page-fv__access .p-page-fv__title {
    bottom: 28px;
  }
}
.p-page-fv.p-page-fv__column .p-page-fv__title {
  bottom: 45px;
  left: -111px;
}
@media screen and (max-width: 1240px) {
  .p-page-fv.p-page-fv__column .p-page-fv__title {
    left: -1px;
  }
}
@media screen and (max-width: 750px) {
  .p-page-fv.p-page-fv__column .p-page-fv__title {
    bottom: 35px;
  }
}

.p-page-fv__inner {
  max-width: 1052px;
  margin-left: auto;
  height: 100%;
  position: relative;
}

.p-page-fv__photo {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-page-fv__photo {
    height: auto;
  }
}

.p-page-fv__title {
  position: absolute;
  bottom: 57px;
  left: -258px;
  background-color: #FFF;
  padding: 12px 36px;
  font-size: 48px;
  font-weight: 600;
  line-height: 1.4375;
}
@media (max-width: 1320px) {
  .p-page-fv__title {
    left: -129px;
  }
}
@media screen and (max-width: 1240px) {
  .p-page-fv__title {
    left: -64px;
  }
}
@media (max-width: 1140px) {
  .p-page-fv__title {
    left: 0;
  }
}
@media screen and (max-width: 750px) {
  .p-page-fv__title {
    bottom: 24px;
    font-size: 20px;
    padding: 6px 19px;
    line-height: 1.425;
  }
}

.p-page-fv__sub-text {
  position: absolute;
  right: 0;
  bottom: 40px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 400;
  padding: 4px 8px;
  background-color: #FFF;
}
@media screen and (max-width: 1040px) {
  .p-page-fv__sub-text {
    bottom: 13.5px;
  }
}
@media screen and (max-width: 750px) {
  .p-page-fv__sub-text {
    text-align: right;
    bottom: 10px;
    font-size: 10px;
    line-height: 1.4;
  }
}

/* object > component > sticky nav
--------------------------------------------- */
.p-sticky-nav {
  display: none;
}
@media screen and (max-width: 750px) {
  .p-sticky-nav {
    display: block;
    position: fixed;
    z-index: 999;
    left: 0;
    bottom: 0;
    width: 100%;
    background-color: #4B3231;
  }
}

.p-sticky-nav__inner {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.p-sticky-nav__link {
  display: grid;
  place-items: center;
  padding: 11px 0 13px;
}
.p-sticky-nav__link:not(:last-of-type) {
  border-right: 1px solid #FFF;
}
.p-sticky-nav__link .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 3px;
}
.p-sticky-nav__link .icon {
  -o-object-fit: cover;
     object-fit: cover;
}
.p-sticky-nav__link .icon.--01 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 20px;
          flex: 0 0 20px;
  width: 20px;
}
.p-sticky-nav__link .icon.--02 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 16px;
          flex: 0 0 16px;
  width: 16px;
}
.p-sticky-nav__link .icon.--03 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 20px;
          flex: 0 0 20px;
  width: 20px;
}
.p-sticky-nav__link .icon.--04 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 20px;
          flex: 0 0 20px;
  width: 20px;
}
.p-sticky-nav__link .text {
  font-family: "Noto Sans JP", sans-serif;
  color: #FFF;
  font-size: 11px;
  text-align: center;
  font-weight: 400;
  line-height: 1.1818181818;
}

/* object > component > modal
--------------------------------------------- */
.p-gift-modal {
  position: fixed;
  top: 50%;
  left: 50%;
  width: 80%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  min-width: 1173px;
  z-index: 1003;
  -webkit-transition: opacity 0.4s ease, visibility 0.4s ease;
  transition: opacity 0.4s ease, visibility 0.4s ease;
  opacity: 0;
  visibility: hidden;
}
@media screen and (max-width: 1240px) {
  .p-gift-modal {
    min-width: initial;
    width: 92%;
  }
}
@media screen and (max-width: 750px) {
  .p-gift-modal {
    top: 56px;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    height: 75%;
  }
}
.p-gift-modal.is-open {
  opacity: 1;
  visibility: visible;
}

.p-gift-modal__inner {
  margin-inline: auto;
  height: 100%;
  padding: 66px 15px 66px;
  background-color: #FAF3EB;
  border: 16px solid #84204D;
  outline: 1px solid #84204D;
  outline-offset: -24px;
  position: relative;
}
@media screen and (max-width: 1240px) {
  .p-gift-modal__inner {
    padding: 37.5px 18px 20px;
    border: 7.5px solid #84204D;
    outline-offset: -11px;
  }
}

.p-gift-modal__content {
  background-color: #FAF3EB;
  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: 18px;
}
@media screen and (max-width: 1240px) {
  .p-gift-modal__content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.p-gift-modal__overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.51);
  z-index: 1002;
  -webkit-transition: opacity 0.4s ease, visibility 0.4s ease;
  transition: opacity 0.4s ease, visibility 0.4s ease;
  opacity: 0;
  visibility: hidden;
}
.p-gift-modal__overlay.is-open {
  opacity: 1;
  visibility: visible;
}

.p-gift-modal__close {
  position: fixed;
  top: -14px;
  right: -58px;
  width: 28px;
  height: 28px;
  cursor: pointer;
  z-index: 1003;
}
@media (max-width: 1300px) {
  .p-gift-modal__close {
    right: -14px;
    top: -20px;
  }
}
@media screen and (max-width: 1240px) {
  .p-gift-modal__close {
    top: -19.5px;
    right: -8px;
  }
}

.p-gift-modal__close-line {
  position: absolute;
  display: inline-block;
  width: 100%;
  height: 1px;
  background-color: #FFF;
}
.p-gift-modal__close-line:nth-of-type(1) {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.p-gift-modal__close-line:nth-of-type(2) {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.p-gift-modal__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
}
.p-gift-modal__title::before, .p-gift-modal__title::after {
  content: "";
  position: absolute;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: cover;
}
.p-gift-modal__title::before {
  bottom: 15px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 390px;
  height: 2px;
  background-color: #84204D;
}
@media screen and (max-width: 1240px) {
  .p-gift-modal__title::before {
    bottom: -5px;
  }
}
@media screen and (max-width: 500px) {
  .p-gift-modal__title::before {
    width: 227px;
  }
}
.p-gift-modal__title::after {
  bottom: 24px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 390px;
  height: 1px;
  background-color: #84204D;
}
@media screen and (max-width: 1240px) {
  .p-gift-modal__title::after {
    bottom: 0;
  }
}
@media screen and (max-width: 500px) {
  .p-gift-modal__title::after {
    width: 227px;
  }
}
.p-gift-modal__title .text {
  font-family: "Cormorant", serif;
  color: #84204D;
  font-style: italic;
  font-size: 90px;
  font-weight: 600;
  line-height: 1.2111111111;
}
@media screen and (max-width: 750px) {
  .p-gift-modal__title .text {
    font-size: 60px;
  }
}
@media screen and (max-width: 500px) {
  .p-gift-modal__title .text {
    font-size: 36.5px;
  }
}
.p-gift-modal__title img {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 74px;
          flex: 0 0 74px;
  width: 74px;
}
@media screen and (max-width: 500px) {
  .p-gift-modal__title img {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 34px;
            flex: 0 0 34px;
    width: 34px;
  }
}

.p-gift-modal__photo {
  margin-top: 39px;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 434px;
          flex: 0 0 434px;
}
@media screen and (max-width: 1240px) {
  .p-gift-modal__photo {
    margin-top: 0;
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
    width: 301px;
    height: 200px;
  }
}
.p-gift-modal__photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-gift-modal__message {
  text-align: center;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.5555555556;
}
@media screen and (max-width: 1240px) {
  .p-gift-modal__message {
    margin-top: 12px;
  }
}
@media screen and (max-width: 750px) {
  .p-gift-modal__message {
    font-size: 13px;
    line-height: 1.1923076923;
    font-weight: 400;
  }
}

.p-gift-modal__list {
  margin-top: 16px;
}
@media screen and (max-width: 750px) {
  .p-gift-modal__list {
    margin-top: 12px;
  }
}

.p-gift-modal__list-item {
  font-size: 16px;
  line-height: 1.75;
  font-weight: 400;
}
@media screen and (max-width: 750px) {
  .p-gift-modal__list-item {
    font-size: 12px;
    line-height: 1.3333333333;
  }
}

/* object > component > banner
--------------------------------------------- */
/* Set Course */
/* object > component > pagination
--------------------------------------------- */
.p-pagination a {
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
@media (any-hover: hover) {
  .p-pagination a:hover {
    opacity: 0.7;
  }
}
.p-pagination .page-numbers {
  display: inline-block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.9;
  width: 50px;
  height: 50px;
  display: grid;
  place-items: center;
}
@media screen and (max-width: 750px) {
  .p-pagination .page-numbers {
    font-size: 14px;
    line-height: 1.3571428571;
    width: 30px;
    height: 35px;
  }
}
.p-pagination .page-numbers.current {
  margin: 0;
  background-color: #2B080B;
  color: #FFF;
}

.p-pagination__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: 8px;
}
@media screen and (max-width: 750px) {
  .p-pagination__list {
    gap: 14px;
  }
}

/* object > component > menus
--------------------------------------------- */
/* 見出し */
.p-menus-heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 17px;
     -moz-column-gap: 17px;
          column-gap: 17px;
  line-height: 1.4375;
}
@media screen and (max-width: 750px) {
  .p-menus-heading {
    -webkit-column-gap: 8px;
       -moz-column-gap: 8px;
            column-gap: 8px;
  }
}
.p-menus-heading .text {
  font-size: 32px;
  font-weight: 600;
  letter-spacing: 1.28px;
}
@media screen and (max-width: 750px) {
  .p-menus-heading .text {
    font-size: 18px;
    letter-spacing: 0.72px;
  }
}
.p-menus-heading .text .sm {
  display: inline-block;
  margin-right: 0.25em;
  font-size: 20px;
  letter-spacing: 0.8px;
}
@media screen and (max-width: 750px) {
  .p-menus-heading .text .sm {
    font-size: 12px;
    letter-spacing: 0.72px;
  }
}
.p-menus-heading .line {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  display: inline-block;
  height: 1px;
  background-color: #2B080B;
}

/* セクション */
.p-menus-section {
  scroll-margin-top: 118px;
  padding-top: 80px;
}
@media screen and (max-width: 750px) {
  .p-menus-section {
    scroll-margin-top: 54px;
    padding-top: 40px;
  }
}

/* 写真 + 説明 */
.p-menus-item {
  max-width: 840px;
  margin: 32px auto 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 24px;
     -moz-column-gap: 24px;
          column-gap: 24px;
}
@media screen and (max-width: 750px) {
  .p-menus-item {
    margin-top: 12px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: 12px;
  }
}

.p-menus-item__body {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
@media screen and (max-width: 750px) {
  .p-menus-item__body {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
  }
}
.p-menus-item__body .section + .section {
  margin-top: 1em;
}
.p-menus-item__body .title {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.36px;
}
@media screen and (max-width: 750px) {
  .p-menus-item__body .title {
    font-size: 16px;
    letter-spacing: 0.32px;
  }
}
.p-menus-item__body .notice {
  margin-top: 1em;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.32px;
}
@media screen and (max-width: 750px) {
  .p-menus-item__body .notice {
    font-size: 14px;
    letter-spacing: 0.28px;
  }
}

.p-menus-item__text {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.32px;
}
@media screen and (max-width: 750px) {
  .p-menus-item__text {
    font-size: 14px;
    letter-spacing: 0.56px;
  }
}
.p-menus-item__text + .p-menus-item__text {
  margin-top: 1em;
}
.p-menus-item__text + .p-menus-item__title-lg {
  margin-top: 8px;
}
.p-menus-item__text .bold {
  font-weight: 700;
}

.p-menus-item__title-lg {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.44px;
}
@media screen and (max-width: 750px) {
  .p-menus-item__title-lg {
    font-size: 16px;
    letter-spacing: 0.32px;
    text-align: center;
  }
}

.p-menus-item__box {
  margin-top: 8px;
  padding: 16px 16px;
  background-color: #F3EDED;
}
@media screen and (max-width: 750px) {
  .p-menus-item__box {
    padding: 12px 12px;
  }
}
.p-menus-item__box ol {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
.p-menus-item__box ol li {
  font-size: 15px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.3px;
}
@media screen and (max-width: 750px) {
  .p-menus-item__box ol li {
    font-size: 14px;
    letter-spacing: 0.28px;
  }
}
.p-menus-item__box + .p-menus-item__text {
  margin-top: 8px;
}
.p-menus-item__box .p-menus-item__desc {
  margin-top: 8px;
  text-align: center;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.28px;
}
@media screen and (max-width: 750px) {
  .p-menus-item__box .p-menus-item__desc {
    font-size: 13px;
    letter-spacing: 0.26px;
    margin-top: 2px;
  }
}

.p-menus-item__photo {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 408px;
          flex: 0 0 408px;
}
@media screen and (max-width: 750px) {
  .p-menus-item__photo {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
  }
}
.p-menus-item__photo img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* メニュー表 */
.p-menus-list {
  max-width: 500px;
  margin: 40px auto 0;
  border: 1px solid #83204E;
  background-color: transparent;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-menus-list {
    max-width: 290px;
    margin: 30px auto 0;
  }
}
.p-menus-list .notice {
  position: absolute;
  left: 95px;
  bottom: 16px;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.24px;
}
@media screen and (max-width: 750px) {
  .p-menus-list .notice {
    left: 64px;
    bottom: 12px;
    font-size: 12px;
    letter-spacing: 0.24px;
  }
}
.p-menus-list.lg {
  max-width: 690px;
}
.p-menus-list.--thai {
  margin: 91px auto 0;
}
@media screen and (max-width: 750px) {
  .p-menus-list.--thai {
    margin: 30px auto 0;
  }
}
.p-menus-list.p-yomogi__list {
  margin: 43px auto 0;
  border: 1px solid #085835;
}
@media screen and (max-width: 750px) {
  .p-menus-list.p-yomogi__list {
    width: 100%;
    max-width: initial;
    margin: 30px auto 0;
  }
}

.p-menus-list__title {
  max-width: 140px;
  width: 100%;
  margin-inline: auto;
  text-align: center;
  padding: 5px 5px;
  background-color: #84204D;
  border-radius: 3px;
  color: #FFF;
  line-height: 1.2;
  position: relative;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 750px) {
  .p-menus-list__title {
    max-width: 138px;
    padding: 4px 5px;
  }
}
.p-menus-list__title.--yomogi {
  background-color: #085835;
}
.p-menus-list__title .md {
  font-size: 20px;
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  .p-menus-list__title .md {
    font-size: 16px;
  }
}
.p-menus-list__title .sm {
  font-size: 14px;
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  .p-menus-list__title .sm {
    font-size: 12px;
  }
}

.p-menus-list__list {
  padding: 0 0 16px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 4px;
}
@media screen and (max-width: 750px) {
  .p-menus-list__list {
    row-gap: 2px;
    padding: 0 0 12px;
  }
}
.p-menus-list__list.--yomogi {
  padding: 0 0 39px;
}
@media screen and (max-width: 750px) {
  .p-menus-list__list.--yomogi {
    padding: 0 0 30px;
  }
}
@media screen and (max-width: 750px) {
  .p-menus-list__list.--type02 {
    margin-inline: initial;
    padding-right: auto;
    padding: 0 0 12px 27px;
  }
  .p-menus-list__list.--type02 .p-menus-list__list-item {
    gap: 14px;
  }
  .p-menus-list__list.--type02 .p-menus-list__list-item .time {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 35px;
            flex: 0 0 35px;
  }
  .p-menus-list__list.--type02 .p-menus-list__list-item .price span {
    font-size: 10px;
  }
}
@media screen and (max-width: 750px) {
  .p-menus-list__list.--type03 {
    margin-inline: initial;
    padding-right: auto;
    padding: 0 0 12px 24px;
  }
  .p-menus-list__list.--type03 .p-menus-list__list-item {
    gap: 14px;
  }
  .p-menus-list__list.--type03 .p-menus-list__list-item .time {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 35px;
            flex: 0 0 35px;
  }
  .p-menus-list__list.--type03 .p-menus-list__list-item .price span {
    font-size: 10px;
  }
}

.p-menus-list__list-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 750px) {
  .p-menus-list__list-item {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
.p-menus-list__list-item .time {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50px;
          flex: 0 0 50px;
  text-align: right;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: 0.32px;
}
@media screen and (max-width: 750px) {
  .p-menus-list__list-item .time {
    font-size: 14px;
  }
}
.p-menus-list__list-item .time.--yomogi {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 124px;
          flex: 0 0 124px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  white-space: nowrap;
}
@media screen and (max-width: 750px) {
  .p-menus-list__list-item .time.--yomogi {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 108px;
            flex: 0 0 108px;
  }
}
.p-menus-list__list-item .price {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: 0.32px;
  white-space: nowrap;
}
@media screen and (max-width: 750px) {
  .p-menus-list__list-item .price {
    font-size: 14px;
    white-space: nowrap;
  }
}
.p-menus-list__list-item .price.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 4px;
}
@media screen and (max-width: 750px) {
  .p-menus-list__list-item .price.--yomogi {
    text-align: right;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.p-menus-list__list-item .price.--yomogi .sm {
  font-size: 12px;
  display: inline-block;
  position: relative;
  -webkit-transform: translateX(12px);
          transform: translateX(12px);
}
.p-menus-list__list-item .price .sm {
  font-size: 14px;
  letter-spacing: 0.28px;
}
@media screen and (max-width: 750px) {
  .p-menus-list__list-item .price .sm {
    font-size: 10px;
  }
}
.p-menus-list__list-item.gap16 {
  gap: 16px;
}
@media screen and (max-width: 750px) {
  .p-menus-list__list-item.gap16 {
    gap: 8px;
  }
}
.p-menus-list__list-item.gap18 {
  gap: 18px;
}
@media screen and (max-width: 750px) {
  .p-menus-list__list-item.gap18 {
    gap: 8px;
  }
}
.p-menus-list__list-item.gap22 {
  gap: 22px;
}
.p-menus-list__list-item.gap24 {
  gap: 24px;
}
@media screen and (max-width: 750px) {
  .p-menus-list__list-item.gap24 {
    gap: 14px;
  }
}
.p-menus-list__list-item.gap32 {
  gap: 32px;
}
@media screen and (max-width: 750px) {
  .p-menus-list__list-item.gap32 {
    gap: 15px;
  }
}

.p-menus-list__sub-text {
  text-align: center;
  margin-top: 4px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.28px;
}
@media screen and (max-width: 750px) {
  .p-menus-list__sub-text {
    margin-top: 5px;
    font-size: 12px;
    letter-spacing: 0.24px;
  }
}

/* 料金表 */
.p-menus-price {
  max-width: 678px;
  width: 100%;
  margin-inline: auto;
}
.p-menus-price.mt41 {
  margin-top: 41px;
}
@media screen and (max-width: 750px) {
  .p-menus-price.mt41 {
    margin-top: 28.5px;
  }
}
.p-menus-price.mt33 {
  margin-top: 33px;
}
@media screen and (max-width: 750px) {
  .p-menus-price.mt33 {
    margin-top: 23px;
  }
}

.p-menus-price__container {
  border: 1px solid #84204D;
  padding: 0 22px 24px;
}
@media screen and (max-width: 750px) {
  .p-menus-price__container {
    padding: 0 12px 12px;
  }
}
.p-menus-price__container.has-option {
  padding: 0 22px 40px;
}
@media screen and (max-width: 750px) {
  .p-menus-price__container.has-option {
    padding: 0 12px 12px;
  }
}

.p-menus-price__title {
  background-color: #84204D;
  color: #FFF;
  padding: 1px 10px;
  border-radius: 3px;
  text-align: center;
  max-width: 160px;
  width: 100%;
  margin: -17px auto 0;
  font-size: 20px;
  font-weight: 600;
  letter-spacing: 0.4px;
  line-height: 1.6;
}
@media screen and (max-width: 750px) {
  .p-menus-price__title {
    padding: 2px 10px;
    max-width: 138px;
    font-size: 16px;
    letter-spacing: 0.32px;
  }
}
.p-menus-price__title .sm {
  font-size: 14px;
  letter-spacing: 0.28px;
}
@media screen and (max-width: 750px) {
  .p-menus-price__title .sm {
    font-size: 12px;
    letter-spacing: 0.24px;
  }
}

.p-menus-price__item {
  max-width: 590px;
  margin: 16px auto 0;
}
@media screen and (max-width: 750px) {
  .p-menus-price__item {
    margin: 24px auto 0;
  }
}
.p-menus-price__item:not(:first-of-type) {
  margin-top: 32px;
}
@media screen and (max-width: 750px) {
  .p-menus-price__item:not(:first-of-type) {
    margin-top: 16px;
  }
}
.p-menus-price__item .price {
  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;
  -webkit-column-gap: 25px;
     -moz-column-gap: 25px;
          column-gap: 25px;
}
@media screen and (max-width: 750px) {
  .p-menus-price__item .price {
    -webkit-column-gap: 13px;
       -moz-column-gap: 13px;
            column-gap: 13px;
  }
}
.p-menus-price__item .price .time,
.p-menus-price__item .price .number {
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.32px;
  line-height: 1.6;
}
@media screen and (max-width: 750px) {
  .p-menus-price__item .price .time,
  .p-menus-price__item .price .number {
    font-size: 14px;
    letter-spacing: 0.28px;
    line-height: 1.6;
  }
}
.p-menus-price__item .price-notice {
  text-align: center;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.24px;
  line-height: 1.6;
}
@media screen and (max-width: 750px) {
  .p-menus-price__item .price-notice {
    font-size: 10px;
    line-height: 1.6;
    letter-spacing: 0.2px;
  }
}
.p-menus-price__item .list-wrap {
  margin-top: 8px;
  background-color: #F3EDED;
  padding: 24px 10px;
}
@media screen and (max-width: 750px) {
  .p-menus-price__item .list-wrap {
    padding: 12px 10px;
  }
}
.p-menus-price__item .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 29px;
}
@media screen and (max-width: 750px) {
  .p-menus-price__item .list {
    gap: 10.5px;
  }
}
@media screen and (max-width: 750px) {
  .p-menus-price__item .list.--col2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.p-menus-price__item .list-inner {
  display: contents;
}
@media screen and (max-width: 750px) {
  .p-menus-price__item .list-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 29px;
  }
}
@media screen and (max-width: 750px) and (max-width: 750px) {
  .p-menus-price__item .list-inner {
    gap: 10.5px;
  }
}
.p-menus-price__item .list-item {
  background-color: #FFF;
  padding: 6px 8px;
  height: 125px;
  position: relative;
  min-width: 0;
  min-height: 0;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
}
@media screen and (max-width: 750px) {
  .p-menus-price__item .list-item {
    padding: 4px 4px 2px;
  }
}
.p-menus-price__item .list-item:not(:has(.multi)) .list-text {
  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;
}
.p-menus-price__item .list-item:not(:first-of-type)::before, .p-menus-price__item .list-item.has-arrow::before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: -21px;
  background-image: url(../img/common/menu-triangle-right.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  display: inline-block;
  width: 13px;
  height: 13px;
}
@media screen and (max-width: 750px) {
  .p-menus-price__item .list-item:not(:first-of-type)::before, .p-menus-price__item .list-item.has-arrow::before {
    left: -8.5px;
    width: 6.5px;
    height: 6.5px;
  }
}
.p-menus-price__item .list-text {
  height: 125px;
  display: block;
  color: #84204D;
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
  text-orientation: upright;
}
.p-menus-price__item .list-text.translate {
  position: relative;
  -webkit-transform: translateY(-4px);
          transform: translateY(-4px);
}
.p-menus-price__item .list-text.multi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2px;
}
.p-menus-price__item .list-text.multi .second,
.p-menus-price__item .list-text.multi .third {
  -ms-flex-item-align: end;
      align-self: end;
  position: relative;
  -webkit-transform: translateY(-1em);
          transform: translateY(-1em);
}
.p-menus-price__item .list-text.multi .second.translate {
  -webkit-transform: translateY(0.1em);
          transform: translateY(0.1em);
}
.p-menus-price__item .list-text.multi .second.translate02 {
  -webkit-transform: translateY(-2em);
          transform: translateY(-2em);
}
.p-menus-price__item .list-text .combine {
  text-combine-upright: all;
  -ms-text-combine-horizontal: all;
  display: inline-block;
  position: relative;
  -webkit-transform: translateX(-1px);
          transform: translateX(-1px);
}

/* コース表 */
.p-menus-course__item:not(:first-of-type) {
  margin-top: 56px;
}
@media screen and (max-width: 750px) {
  .p-menus-course__item:not(:first-of-type) {
    margin-top: 28px;
  }
}

.p-menus-course__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-column-gap: 16px;
     -moz-column-gap: 16px;
          column-gap: 16px;
  background-color: #84204D;
  padding: 12px 10px 14px;
  color: #FFF;
}
@media screen and (max-width: 750px) {
  .p-menus-course__title {
    margin-left: -15px;
    margin-right: -15px;
    padding: 9px 10px 9px;
    -webkit-column-gap: 8px;
       -moz-column-gap: 8px;
            column-gap: 8px;
  }
}
.p-menus-course__title .number-wrap .en {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.64px;
  line-height: 1.4375;
}
@media screen and (max-width: 750px) {
  .p-menus-course__title .number-wrap .en {
    font-size: 11px;
    letter-spacing: 0.44px;
    line-height: 1.4545454545;
  }
}
.p-menus-course__title .number-wrap .number {
  display: inline-block;
  font-family: "Libre Caslon Text", serif;
  font-size: 49px;
  letter-spacing: 1.96px;
  font-weight: 400;
  line-height: 1.2244897959;
}
@media screen and (max-width: 750px) {
  .p-menus-course__title .number-wrap .number {
    font-size: 38.5px;
    letter-spacing: 1.54px;
    line-height: 1.2337662338;
    position: relative;
    -webkit-transform: translateY(4px);
            transform: translateY(4px);
  }
}
.p-menus-course__title .title-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1.4285714286;
}
.p-menus-course__title .title-wrap .lg {
  font-size: 28px;
  font-weight: 600;
  letter-spacing: 1.12px;
}
@media screen and (max-width: 750px) {
  .p-menus-course__title .title-wrap .lg {
    font-size: 15px;
    letter-spacing: 0.06px;
  }
}
.p-menus-course__title .title-wrap .sm {
  font-size: 20px;
  font-weight: 600;
  letter-spacing: 0.8px;
}
@media screen and (max-width: 750px) {
  .p-menus-course__title .title-wrap .sm {
    font-size: 12px;
    letter-spacing: 0.48px;
  }
}

.p-menus-course__lead {
  margin-top: 32px;
}
@media screen and (max-width: 750px) {
  .p-menus-course__lead {
    margin-top: 12px;
  }
}

.p-menus-course__lead-text {
  text-align: center;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.32px;
}
@media screen and (max-width: 750px) {
  .p-menus-course__lead-text {
    font-size: 14px;
    letter-spacing: 0.28px;
  }
}

/* オプション */
.p-menus-option__title {
  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;
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
}
@media screen and (max-width: 750px) {
  .p-menus-option__title {
    -webkit-column-gap: 10px;
       -moz-column-gap: 10px;
            column-gap: 10px;
  }
}
.p-menus-option__title .line {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  display: inline-block;
  height: 1px;
  background-color: #2B080B;
}
.p-menus-option__title .text {
  font-size: 32px;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: 0.64px;
}
@media screen and (max-width: 750px) {
  .p-menus-option__title .text {
    font-size: 16px;
    letter-spacing: 0.32px;
  }
}

.p-menus-option__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 11px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 18px auto 0;
}
@media screen and (max-width: 750px) {
  .p-menus-option__list {
    margin: 8px auto 0;
  }
}

.p-menus-option__list-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 8px;
     -moz-column-gap: 8px;
          column-gap: 8px;
}
@media screen and (max-width: 750px) {
  .p-menus-option__list-item {
    -webkit-column-gap: 6.5px;
       -moz-column-gap: 6.5px;
            column-gap: 6.5px;
  }
}
.p-menus-option__list-item .number {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 31px;
          flex: 0 0 31px;
  width: 31px;
  height: 31px;
  display: grid;
  place-items: center;
  background-color: #84204D;
  border-radius: 50%;
  font-family: "Libre Caslon Text", serif;
  color: #FFF;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.32px;
}
@media screen and (max-width: 750px) {
  .p-menus-option__list-item .number {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 21.5px;
            flex: 0 0 21.5px;
    width: 21.5px;
    height: 21.5px;
    font-size: 12px;
    letter-spacing: 0.24px;
  }
}
.p-menus-option__list-item .text {
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.32px;
}
@media screen and (max-width: 750px) {
  .p-menus-option__list-item .text {
    font-size: 14px;
    letter-spacing: 0.28px;
  }
}

/* おすすめリスト */
.p-menus-recommend__inner {
  max-width: 872px;
  margin-inline: auto;
  padding: 0 15px;
}
.p-menus-recommend__inner.--yomogi {
  max-width: 995px;
}

.p-menus-recommend__title {
  padding: 5px 10px;
  background-color: #84204D;
  color: #FFF;
  text-align: center;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.4166666667;
}
@media screen and (max-width: 750px) {
  .p-menus-recommend__title {
    padding: 3.4px 10px;
    font-size: 14px;
    line-height: 1.4285714286;
  }
}
.p-menus-recommend__title.--yomogi {
  background-color: #085835;
}

.p-menus-recommend__body {
  background-color: #F3EDED;
  padding: 24px 10px 26px 36px;
}
@media screen and (max-width: 750px) {
  .p-menus-recommend__body {
    padding: 16px 10px 16px 16px;
  }
}
.p-menus-recommend__body.--yomogi {
  background-color: #FFF;
  -webkit-box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.15);
          box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.15);
}

.p-menus-recommend__container {
  max-width: 653px;
  display: grid;
  grid-template-columns: repeat(2, auto);
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 750px) {
  .p-menus-recommend__container {
    grid-template-columns: 1fr;
  }
}
.p-menus-recommend__container.--yomogi {
  max-width: 877px;
}

@media screen and (max-width: 750px) {
  .p-menus-recommend__list-wrap {
    display: contents;
    -webkit-column-gap: initial;
       -moz-column-gap: initial;
            column-gap: initial;
  }
}

.p-menus-recommend__list-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 8px;
     -moz-column-gap: 8px;
          column-gap: 8px;
}
@media screen and (max-width: 750px) {
  .p-menus-recommend__list-item {
    -webkit-column-gap: 6px;
       -moz-column-gap: 6px;
            column-gap: 6px;
  }
}
.p-menus-recommend__list-item:not(:first-of-type) {
  margin-top: 8px;
}
@media screen and (max-width: 750px) {
  .p-menus-recommend__list-item:not(:first-of-type) {
    margin-top: 4px;
  }
}
.p-menus-recommend__list-item.--etc {
  text-align: right;
}
.p-menus-recommend__list-item.--etc .text {
  font-size: 14px;
  line-height: 1.4285714286;
}
@media screen and (max-width: 750px) {
  .p-menus-recommend__list-item.--etc {
    display: none;
  }
}
.p-menus-recommend__list-item .icon {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 16px;
          flex: 0 0 16px;
  width: 16px;
  aspect-ratio: 1;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 750px) {
  .p-menus-recommend__list-item .icon {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 10px;
            flex: 0 0 10px;
    width: 10px;
  }
}
.p-menus-recommend__list-item .text {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.32px;
}
@media screen and (max-width: 750px) {
  .p-menus-recommend__list-item .text {
    font-size: 14px;
  }
}
.p-menus-recommend__list-item .text .sp-text {
  display: none;
}
@media screen and (max-width: 750px) {
  .p-menus-recommend__list-item .text .sp-text {
    display: inline-block;
    margin-left: 20px;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.4166666667;
  }
}

/* チケット */
.p-menus-ticket__title {
  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;
  padding: 20px 10px 20px;
  background-color: #BA4C28;
  line-height: 1.6;
  color: #FFF;
}
@media screen and (max-width: 750px) {
  .p-menus-ticket__title {
    margin-left: -15px;
    margin-right: -15px;
    padding: 13.5px 10px 15.5px;
  }
}
.p-menus-ticket__title .lg {
  font-size: 48px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.96px;
}
@media screen and (max-width: 750px) {
  .p-menus-ticket__title .lg {
    font-size: 28.5px;
    letter-spacing: 0.57px;
  }
}
.p-menus-ticket__title .sm {
  font-size: 35px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.7px;
  position: relative;
  -webkit-transform: translateY(4px);
          transform: translateY(4px);
}
@media screen and (max-width: 750px) {
  .p-menus-ticket__title .sm {
    font-size: 20px;
    letter-spacing: 0.4px;
  }
}

.p-menus-ticket__content {
  background-color: #FBF6F4;
  padding: 24px 10px 80px;
}
@media screen and (max-width: 750px) {
  .p-menus-ticket__content {
    padding: 8.5px 10px 36px;
  }
}

.p-menus-ticket__desc {
  text-align: center;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0.4px;
}
@media screen and (max-width: 750px) {
  .p-menus-ticket__desc {
    font-size: 14px;
    letter-spacing: 0.28px;
  }
}

.p-menus-ticket__list {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 8px auto 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (max-width: 750px) {
  .p-menus-ticket__list {
    margin: 11px auto 0;
  }
}

.p-menus-ticket__list-item {
  color: #D15126;
  font-size: 24px;
  line-height: 1.6;
  letter-spacing: 0.48px;
  font-weight: 700;
}
@media screen and (max-width: 750px) {
  .p-menus-ticket__list-item {
    font-size: 14px;
    letter-spacing: 0.28px;
  }
}

.p-menus-ticket__notice-wrap {
  margin-top: 8px;
}

.p-menus-ticket__notice {
  text-align: center;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0.32px;
  line-height: 1.4;
}
@media screen and (max-width: 750px) {
  .p-menus-ticket__notice {
    font-size: 12px;
    line-height: 1.4;
    letter-spacing: 0.24px;
  }
}

.p-menus-ticket__pics {
  max-width: 507px;
  margin: 24px auto 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (max-width: 750px) {
  .p-menus-ticket__pics {
    max-width: 287px;
    margin: 18.7px auto 0;
  }
}

.p-menus-ticket__pic img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* 注釈 */
.p-menus-annotation,
.p-ayurveda__annotation {
  max-width: 840px;
  margin: 16px auto 0;
}
@media screen and (max-width: 750px) {
  .p-menus-annotation,
  .p-ayurveda__annotation {
    margin: 12px auto 0;
  }
}
.p-menus-annotation.p-facial__annotation,
.p-ayurveda__annotation.p-facial__annotation {
  max-width: initial;
  margin: 16px 0 0;
}
@media screen and (max-width: 750px) {
  .p-menus-annotation.p-facial__annotation,
  .p-ayurveda__annotation.p-facial__annotation {
    margin: 12px 0 0;
  }
}

.p-menus-annotation__text {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.28px;
}

/* リンクボタン */
.p-menus-list__btn-wrap .btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 8px;
     -moz-column-gap: 8px;
          column-gap: 8px;
}
@media screen and (max-width: 750px) {
  .p-menus-list__btn-wrap .btn {
    -webkit-column-gap: 4px;
       -moz-column-gap: 4px;
            column-gap: 4px;
  }
}
@media (any-hover: hover) {
  .p-menus-list__btn-wrap .btn:hover .text {
    opacity: 0.7;
  }
  .p-menus-list__btn-wrap .btn:hover .circle::before {
    -webkit-transform: scale(0.75);
            transform: scale(0.75);
  }
}
.p-menus-list__btn-wrap .text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4285714286;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
@media screen and (max-width: 750px) {
  .p-menus-list__btn-wrap .text {
    font-size: 13px;
  }
}
.p-menus-list__btn-wrap .circle {
  display: inline-block;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-menus-list__btn-wrap .circle {
    width: 25px;
    height: 25px;
  }
}
.p-menus-list__btn-wrap .circle::before, .p-menus-list__btn-wrap .circle::after {
  content: "";
  display: inline-block;
}
.p-menus-list__btn-wrap .circle::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #2B080B;
  -webkit-transition: -webkit-transform 0.4s ease;
  transition: -webkit-transform 0.4s ease;
  transition: transform 0.4s ease;
  transition: transform 0.4s ease, -webkit-transform 0.4s ease;
}
.p-menus-list__btn-wrap .circle::after {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background-image: url(../img/common/icon-triangle-right-w.webp);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  display: inline-block;
  width: 10px;
  height: 8px;
}
@media screen and (max-width: 750px) {
  .p-menus-list__btn-wrap .circle::after {
    width: 7px;
    height: 6px;
  }
}

/* 注釈 */
.p-menus-list__notice {
  margin-top: 16px;
  max-width: 840px;
  margin-inline: auto;
}
@media screen and (max-width: 750px) {
  .p-menus-list__notice {
    margin-top: 12px;
  }
}

.p-menus-list__notice-text {
  font-size: 14px;
  line-height: 1.6;
  letter-spacing: 0.28px;
}

/* object > project > opening
--------------------------------------------- */
.p-opening {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  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;
  background-color: #FFF;
  z-index: 1004;
}
.p-opening.is-loaded {
  opacity: 0;
  visibility: hidden;
}

.p-opening__logo {
  width: 294px;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 750px) {
  .p-opening__logo {
    width: 147px;
  }
}

.p-opening__mask {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: #FFF;
  z-index: 1005;
}
.p-opening__mask.is-loaded {
  opacity: 0;
  visibility: hidden;
}

/* object > project > top
--------------------------------------------- */
/* News */
.p-top__news {
  position: relative;
  margin-top: -70px;
  padding-right: 32px;
  z-index: 2;
}
@media screen and (max-width: 900px) {
  .p-top__news {
    padding: 40px 15px 80px;
    margin-top: 0;
    background-color: #F3EDED;
    z-index: initial;
  }
}
@media screen and (max-width: 750px) {
  .p-top__news {
    padding: 20px 15px 31px;
  }
}

.p-top__news-inner {
  max-width: 770px;
  margin-left: auto;
  background-color: #FFF;
  padding: 16px 22px 12px 32px;
  -webkit-box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.1);
          box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.1);
}
@media screen and (max-width: 900px) {
  .p-top__news-inner {
    padding: 24px 23px 24px 15px;
    margin-right: auto;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
}

.p-top__news-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
}
@media screen and (max-width: 900px) {
  .p-top__news-content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 12px;
  }
}

.p-top__news-heading {
  font-family: "Libre Caslon Text", serif;
  font-size: 28px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 1.12px;
}
@media screen and (max-width: 900px) {
  .p-top__news-heading {
    font-size: 24px;
    line-height: 2.4583333333;
  }
}

.p-top__news-body {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}

.p-top__news-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 12px;
  position: relative;
}
@media screen and (max-width: 900px) {
  .p-top__news-link {
    gap: 4px;
  }
}
.p-top__news-link::after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 0;
  display: inline-block;
  width: 7px;
  height: 6px;
  background-image: url(../img/common/icon-triangle-right-main.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  -webkit-transition: right 0.4s ease;
  transition: right 0.4s ease;
}
@media screen and (max-width: 900px) {
  .p-top__news-link::after {
    content: none;
  }
}
@media (any-hover: hover) {
  .p-top__news-link:hover::after {
    right: -10px;
  }
  .p-top__news-link:hover .p-top__news-title {
    opacity: 0.5;
  }
  .p-top__news-link:hover .p-top__news-date {
    opacity: 0.5;
  }
}
.p-top__news-link:first-of-type {
  padding-bottom: 8px;
  border-bottom: 1px solid #ddd;
}
@media screen and (max-width: 900px) {
  .p-top__news-link:first-of-type {
    border-bottom: none;
    padding-bottom: 0;
  }
}
.p-top__news-link:not(:first-of-type) {
  margin-top: 8px;
}
@media screen and (max-width: 900px) {
  .p-top__news-link:not(:first-of-type) {
    margin-top: 12px;
  }
}

.p-top__news-date {
  font-family: "Libre Caslon Text", serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.56px;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}

.p-top__news-title {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.56px;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}

/* Menu */
.p-top__menu {
  margin-top: -70px;
  padding: 140px 0 80px;
  background-color: #F3EDED;
  overflow-x: hidden;
  position: relative;
}
@media screen and (max-width: 900px) {
  .p-top__menu {
    margin-top: 0;
  }
}
@media screen and (max-width: 750px) {
  .p-top__menu {
    padding: 49px 0 40px;
  }
}
.p-top__menu::before, .p-top__menu::after {
  content: "";
  position: absolute;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
.p-top__menu::before {
  background-image: url(../img/top/menu-img01.webp);
  width: 128px;
  height: 182px;
  top: 2px;
  left: 26px;
}
@media screen and (max-width: 900px) {
  .p-top__menu::before {
    background-image: url(../img/top/menu-img01-sp.webp);
    width: 179px;
    height: 200.5px;
    top: -80px;
    left: 0;
  }
}
@media screen and (max-width: 750px) {
  .p-top__menu::before {
    top: -30px;
    width: 132px;
    height: 163px;
  }
}
@media screen and (max-width: 500px) {
  .p-top__menu::before {
    width: 72px;
    height: 103px;
    left: 10px;
  }
}
.p-top__menu::after {
  background-image: url(../img/top/menu-img02.webp);
  width: 392px;
  height: 318px;
  right: 0;
  top: 96px;
  opacity: 0.7;
}
@media screen and (max-width: 900px) {
  .p-top__menu::after {
    background-image: url(../img/top/menu-img02-sp.webp);
    width: 269px;
    height: 188px;
    top: -6.5px;
  }
}
@media screen and (max-width: 750px) {
  .p-top__menu::after {
    width: 134px;
    height: 94px;
    top: 13px;
  }
}

.p-top__menu-inner {
  max-width: 990px;
  padding: 0 15px;
  margin-inline: auto;
}

.p-top__menu-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 48px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 900px) {
  .p-top__menu-block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 24px;
  }
}

.p-top__menu-lead {
  margin-top: 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 16px;
}
@media screen and (max-width: 900px) {
  .p-top__menu-lead {
    margin-top: 0;
    gap: 12px;
  }
}

.p-top__menu-lead-text {
  font-size: 20px;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 900px) {
  .p-top__menu-lead-text {
    text-align: center;
  }
}
@media screen and (max-width: 600px) {
  .p-top__menu-lead-text {
    font-size: 15px;
    line-height: 1.4666666667;
  }
}

.p-top__menu-content {
  margin-top: 48px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 32px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-top__menu-content {
    gap: 16px;
  }
}
.p-top__menu-content::before {
  content: "";
  position: absolute;
  background-image: url(../img/top/menu-bg01.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  display: inline-block;
  width: 660px;
  height: 897px;
  left: -237px;
  top: -180px;
}
@media screen and (max-width: 750px) {
  .p-top__menu-content::before {
    background-image: url(../img/top/menu-bg01-sp.webp);
    width: 440px;
    height: 594px;
    left: -15px;
    top: -154px;
  }
}

.p-top__menu-top {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -webkit-column-gap: 21px;
     -moz-column-gap: 21px;
          column-gap: 21px;
  row-gap: 23px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 750px) {
  .p-top__menu-top {
    grid-template-columns: repeat(2, 1fr);
    -webkit-column-gap: 10px;
       -moz-column-gap: 10px;
            column-gap: 10px;
    row-gap: 7.5px;
  }
}

.p-top__menu-top-link {
  background: #4B3231;
  -webkit-box-shadow: 1px 4px 10px 3px rgba(0, 0, 0, 0.25);
          box-shadow: 1px 4px 10px 3px rgba(0, 0, 0, 0.25);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-transition: opacity 0.4s;
  transition: opacity 0.4s;
}
@media (any-hover: hover) {
  .p-top__menu-top-link:hover {
    opacity: 0.7;
  }
  .p-top__menu-top-link:hover .title::after {
    right: -10px;
  }
}
@media screen and (any-hover: hover) and (max-width: 750px) {
  .p-top__menu-top-link:hover .title::after {
    right: -3px;
  }
}
@media screen and (max-width: 750px) {
  .p-top__menu-top-link .photo {
    max-height: 108px;
    aspect-ratio: 200/108;
  }
}
.p-top__menu-top-link .photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-top__menu-top-link .body {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  padding: 12px 16px 12px;
}
@media screen and (max-width: 750px) {
  .p-top__menu-top-link .body {
    padding: 7.5px 8px;
  }
}
.p-top__menu-top-link .title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}
.p-top__menu-top-link .title::after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 0;
  background-image: url(../img/common/chevron-right-white.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  display: inline-block;
  width: 6px;
  height: 14px;
  -webkit-transition: right 0.4s ease;
  transition: right 0.4s ease;
}
@media screen and (max-width: 750px) {
  .p-top__menu-top-link .title::after {
    width: 5px;
    height: 11.5px;
  }
}
.p-top__menu-top-link .title .en {
  font-family: "Libre Caslon Text", serif;
  color: #FFF;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.2142857143;
}
@media screen and (max-width: 750px) {
  .p-top__menu-top-link .title .en {
    font-size: 12px;
    line-height: 1.25;
  }
}
.p-top__menu-top-link .title .jp {
  font-size: 20px;
  font-weight: 400;
  color: #FFF;
  line-height: 1.45;
}
@media screen and (max-width: 750px) {
  .p-top__menu-top-link .title .jp {
    font-size: 15px;
    line-height: 1.2;
  }
}

.p-top__menu-bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 32px;
}
@media screen and (max-width: 750px) {
  .p-top__menu-bottom {
    gap: 16px;
  }
}

.p-top__menu-banner01 {
  background-image: url(../img/top/menu-photo07.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  padding: 30px 80px 18px 10px;
  -webkit-box-shadow: 1px 4px 10px 3px rgba(0, 0, 0, 0.25);
          box-shadow: 1px 4px 10px 3px rgba(0, 0, 0, 0.25);
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner01 {
    background-image: url(../img/top/menu-photo07-sp.webp);
    padding: 35px 13.5px 24px 10px;
    -webkit-box-shadow: 1px 1px 5px 0px rgba(0, 0, 0, 0.1);
            box-shadow: 1px 1px 5px 0px rgba(0, 0, 0, 0.1);
  }
}
@media (any-hover: hover) {
  .p-top__menu-banner01:hover {
    opacity: 0.7;
  }
}
.p-top__menu-banner01.--set {
  background-image: url(../img/common/banner-set-bg.webp);
  padding: 30px 10px 20px 80px;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner01.--set {
    padding: 35px 10px 25px 26px;
  }
}
.p-top__menu-banner01.--set .p-top__menu-banner01-inner {
  margin-right: auto;
  margin-left: initial;
  position: relative;
}
.p-top__menu-banner01.--set .en-title {
  background-color: #4B3231;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner01.--set .btn {
    padding-right: 15px;
  }
}
.p-top__menu-banner01.--set .balloon {
  position: absolute;
  right: -223px;
  top: 50px;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner01.--set .balloon {
    right: -152px;
    top: 10px;
  }
}
.p-top__menu-banner01.--set .balloon__pic {
  display: block;
  width: 211px;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner01.--set .balloon__pic {
    width: 150px;
  }
}
.p-top__menu-banner01.--set .balloon__pic img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-top__menu-banner01.--set .balloon__text {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  display: block;
  width: 100%;
  text-align: center;
  font-size: 16px;
  line-height: 1.5;
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner01.--set .balloon__text {
    font-size: 12px;
    line-height: 1.5;
  }
}

.p-top__menu-banner01-inner {
  max-width: 367px;
  margin-left: auto;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner01-inner {
    max-width: initial;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
.p-top__menu-banner01-inner .en-title {
  background-color: #84204D;
  color: #FFF;
  text-align: center;
  padding: 6px 10px 1px;
  font-family: "Libre Caslon Text", serif;
  font-size: 32px;
  font-weight: 600;
  line-height: 1.375;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner01-inner .en-title {
    padding: 8px 8px;
    font-size: 20px;
    line-height: 1.225;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
  }
}
.p-top__menu-banner01-inner .jp-title {
  margin-top: 5px;
  text-align: center;
  font-size: 32px;
  font-weight: 600;
  line-height: 1.4375;
  color: #4B3231;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner01-inner .jp-title {
    margin-top: 8px;
    font-size: 18px;
    line-height: 1.1944444444;
  }
}
.p-top__menu-banner01-inner .en-text {
  margin: 0 auto 0;
  width: 78px;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner01-inner .en-text {
    width: 67px;
  }
}
.p-top__menu-banner01-inner .en-text img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner01-inner .textarea {
    margin-top: 7.5px;
  }
}
.p-top__menu-banner01-inner .text {
  text-align: center;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.4666666667;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner01-inner .text {
    font-size: 14px;
    line-height: 1.7391304348;
  }
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner01-inner .btn-wrap {
    margin-top: 6px;
  }
}
.p-top__menu-banner01-inner .btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 8px;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner01-inner .btn {
    gap: 10px;
  }
}
.p-top__menu-banner01-inner .btn-text {
  font-size: 14px;
  font-weight: 600;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.4285714286;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner01-inner .btn-text {
    font-size: 13px;
    line-height: 1.1923076923;
  }
}
.p-top__menu-banner01-inner .circle {
  width: 40px;
  height: 40px;
  background-color: #FFF;
  border-radius: 50%;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner01-inner .circle {
    width: 25px;
    height: 25px;
  }
}
.p-top__menu-banner01-inner .circle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background-image: url(../img/common/icon-triangle-right-main.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  display: inline-block;
  width: 11px;
  height: 9px;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner01-inner .circle::after {
    width: 7px;
    height: 6px;
  }
}
.p-top__menu-banner01-inner .circle.--dark {
  background-color: #2B080B;
}
.p-top__menu-banner01-inner .circle.--dark::after {
  background-image: url(../img/common/icon-triangle-right-w.webp);
}

.p-top__menu-banner02 {
  background-image: url(../img/top/menu-photo08.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  padding: 30px 10px 31px 38px;
  -webkit-box-shadow: 1px 4px 10px 3px rgba(0, 0, 0, 0.25);
          box-shadow: 1px 4px 10px 3px rgba(0, 0, 0, 0.25);
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner02 {
    padding: 43px 10px 24px 18px;
    -webkit-box-shadow: 1px 2px 5px 1.5px rgba(0, 0, 0, 0.25);
            box-shadow: 1px 2px 5px 1.5px rgba(0, 0, 0, 0.25);
  }
}
.p-top__menu-banner02::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(#4B3231), to(rgba(75, 50, 49, 0)));
  background: linear-gradient(90deg, #4B3231 0%, rgba(75, 50, 49, 0) 100%);
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner02 {
    background-image: url(../img/top/menu-photo08-sp.webp);
  }
}
@media (any-hover: hover) {
  .p-top__menu-banner02:hover {
    opacity: 0.7;
  }
}

.p-top__menu-banner02-inner {
  max-width: 450px;
  margin-right: auto;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner02-inner {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
.p-top__menu-banner02-inner .en-title {
  max-width: 365px;
  margin-inline: auto;
  color: #4B3231;
  background-color: #FFF;
  padding: 3px 10px 4px;
  text-align: center;
  font-size: 32px;
  line-height: 1.375;
  font-weight: 600;
  font-family: "Libre Caslon Text", serif;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner02-inner .en-title {
    max-width: initial;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding: 8px 16px;
    font-size: 20px;
    line-height: 1.225;
  }
}
.p-top__menu-banner02-inner .textarea {
  margin-top: 24px;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner02-inner .textarea {
    margin-top: 12px;
  }
}
.p-top__menu-banner02-inner .textarea .sm {
  font-size: 24px;
  font-weight: 400;
  line-height: 1.4166666667;
  color: #FFF;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner02-inner .textarea .sm {
    font-size: 15px;
    line-height: 1.2;
  }
}
.p-top__menu-banner02-inner .textarea .md {
  font-size: 28px;
  font-weight: 600;
  line-height: 1;
  color: #FFF;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner02-inner .textarea .md {
    margin-top: 4px;
    font-size: 16px;
    line-height: 1.375;
  }
}
.p-top__menu-banner02-inner .btn-wrap {
  margin-top: 11px;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner02-inner .btn-wrap {
    margin-top: 18px;
  }
}
.p-top__menu-banner02-inner .btn-wrap.--course {
  padding-right: 44px;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner02-inner .btn-wrap.--course {
    padding-right: 27px;
  }
}
.p-top__menu-banner02-inner .btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 8px;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner02-inner .btn {
    gap: 10px;
  }
}
.p-top__menu-banner02-inner .btn-text {
  font-size: 14px;
  font-weight: 600;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.4285714286;
  color: #FFF;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner02-inner .btn-text {
    font-size: 13px;
    line-height: 1.1923076923;
    font-weight: 500;
  }
}
.p-top__menu-banner02-inner .circle {
  width: 40px;
  height: 40px;
  background-color: #FFF;
  border-radius: 50%;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner02-inner .circle {
    width: 25px;
    height: 25px;
  }
}
.p-top__menu-banner02-inner .circle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background-image: url(../img/common/icon-triangle-right-main.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  display: inline-block;
  width: 11px;
  height: 9px;
}
@media screen and (max-width: 750px) {
  .p-top__menu-banner02-inner .circle::after {
    width: 6.5px;
    height: 5.5px;
  }
}

/* About */
.p-top__about {
  padding: 80px 0;
  background-color: #F3EDED;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-top__about {
    padding: 36px 0 40px;
    overflow-x: hidden;
  }
}
.p-top__about::before, .p-top__about::after {
  content: "";
  position: absolute;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.p-top__about::before {
  background-image: url(../img/top/about-bg01.webp);
  width: 960px;
  height: 594px;
  top: -153px;
  right: 0;
  z-index: 2;
}
@media screen and (max-width: 750px) {
  .p-top__about::before {
    background-image: url(../img/top/about-bg01-sp.webp);
    width: 749.5px;
    height: 625px;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
.p-top__about::after {
  background-image: url(../img/top/about-img01.webp);
  width: 391px;
  height: 459px;
  top: 108px;
  left: 0;
}
@media screen and (max-width: 750px) {
  .p-top__about::after {
    background-image: url(../img/top/about-img01-sp.webp);
    width: 105.5px;
    height: 154px;
    top: 75px;
  }
}
.p-top__about-inner {
  max-width: 990px;
  margin-inline: auto;
  padding: 0 15px;
  position: relative;
  z-index: 3;
}

.p-top__about-heading-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 65px;
  position: relative;
}
@media screen and (max-width: 900px) {
  .p-top__about-heading-block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 25px;
  }
}
.p-top__about-heading-block::after {
  content: "";
  position: absolute;
  background-image: url(../img/top/about-img02.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  display: inline-block;
  width: 211.5px;
  height: 242.5px;
  right: -45px;
  top: 85px;
}
@media (max-width: 1050px) {
  .p-top__about-heading-block::after {
    content: none;
  }
}

.p-top__about-heading-body {
  margin-top: 80px;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
@media screen and (max-width: 900px) {
  .p-top__about-heading-body {
    margin-top: 0;
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
    text-align: center;
  }
}

.p-top__about-heading-text {
  font-size: 20px;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 750px) {
  .p-top__about-heading-text {
    font-size: 15px;
    line-height: 1.7333333333;
  }
}
.p-top__about-heading-text:not(:first-of-type) {
  margin-top: 1.5em;
}

.p-top__about-items {
  margin-top: 48px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 32px;
}
@media screen and (max-width: 750px) {
  .p-top__about-items {
    margin-top: 28px;
    gap: 20px;
  }
}

.p-top__about-item-wrap:nth-of-type(1) {
  background-color: #4B3231;
}
.p-top__about-item-wrap:nth-of-type(2) {
  background-color: #84204D;
}
.p-top__about-item-wrap:nth-of-type(2) .p-top__about-body {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
@media screen and (max-width: 900px) {
  .p-top__about-item-wrap:nth-of-type(2) .p-top__about-body {
    -webkit-box-ordinal-group: initial;
        -ms-flex-order: initial;
            order: initial;
  }
}
.p-top__about-item-wrap:nth-of-type(2) .p-top__about-photo {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
@media screen and (max-width: 900px) {
  .p-top__about-item-wrap:nth-of-type(2) .p-top__about-photo {
    -webkit-box-ordinal-group: initial;
        -ms-flex-order: initial;
            order: initial;
  }
}
.p-top__about-item-wrap:nth-of-type(3) {
  background-color: rgba(154, 101, 51, 0.9);
}
.p-top__about-item {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
@media screen and (max-width: 900px) {
  .p-top__about-item {
    grid-template-columns: 1fr;
  }
}
@media (any-hover: hover) {
  .p-top__about-item:hover .p-top__about-body {
    opacity: 0.7;
  }
  .p-top__about-item:hover .p-top__about-photo::before {
    opacity: 1;
  }
  .p-top__about-item:hover .p-top__about-btn .circle::before {
    -webkit-transform: scale(0.75);
            transform: scale(0.75);
  }
}

.p-top__about-photo {
  position: relative;
}
.p-top__about-photo::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(75, 50, 49, 0.6);
  opacity: 0;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
.p-top__about-photo img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-top__about-body {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
@media screen and (max-width: 900px) {
  .p-top__about-body {
    padding: 25px 10px 25px;
  }
}

.p-top__about-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4px;
}
@media screen and (max-width: 750px) {
  .p-top__about-title {
    gap: 2px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.p-top__about-title-jp {
  font-size: 32px;
  font-weight: 600;
  line-height: 1.4375;
  color: #FFF;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .p-top__about-title-jp {
    font-size: 18px;
    line-height: 1.1944444444;
  }
}

.p-top__about-title-en {
  font-style: italic;
  font-family: "Libre Caslon Text", serif;
  font-size: 22px;
  font-weight: 400;
  line-height: 1.2272727273;
  color: #FFF;
}
@media screen and (max-width: 750px) {
  .p-top__about-title-en {
    font-size: 12px;
    line-height: 1.25;
  }
}

.p-top__about-message {
  margin-top: 16px;
  color: #FFF;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.4444444444;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .p-top__about-message {
    font-size: 14px;
    line-height: 1.2857142857;
  }
}

.p-top__about-btn-wrap {
  margin-top: 16px;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .p-top__about-btn-wrap {
    margin-top: 8px;
  }
}

.p-top__about-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 16px;
}
@media screen and (max-width: 750px) {
  .p-top__about-btn {
    gap: 8px;
  }
}
.p-top__about-btn .text {
  font-family: "Noto Sans JP", sans-serif;
  color: #FFF;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.1875;
}
@media screen and (max-width: 750px) {
  .p-top__about-btn .text {
    font-size: 14px;
    line-height: 1.2142857143;
  }
}
.p-top__about-btn .circle {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-top__about-btn .circle {
    width: 25px;
    height: 25px;
  }
}
.p-top__about-btn .circle::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #FFF;
  -webkit-transition: -webkit-transform 0.4s ease;
  transition: -webkit-transform 0.4s ease;
  transition: transform 0.4s ease;
  transition: transform 0.4s ease, -webkit-transform 0.4s ease;
}
.p-top__about-btn .circle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background-image: url(../img/common/icon-triangle-right-main.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  display: inline-block;
  width: 11px;
  height: 9px;
}
@media screen and (max-width: 750px) {
  .p-top__about-btn .circle::after {
    width: 10px;
    height: 8px;
  }
}

/* slider */
.p-top__about-slide-wrap {
  margin-top: 56px;
}

.p-top__about-slider .swiper-wrapper {
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
}
.p-top__about-slider .swiper-wrapper .swiper-slide {
  width: 357px;
}
@media screen and (max-width: 750px) {
  .p-top__about-slider .swiper-wrapper .swiper-slide {
    width: 200px;
  }
}
.p-top__about-slider .swiper-wrapper .swiper-slide img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* Gift */
.p-top__gift {
  padding: 80px 0 126px;
  background-image: url(../img/top/gift-bg.webp);
  position: relative;
}
@media screen and (max-width: 900px) {
  .p-top__gift {
    padding: 40px 0 102px;
    background-image: url(../img/top/gift-bg-sp.webp);
  }
}
@media screen and (max-width: 500px) {
  .p-top__gift {
    overflow-x: hidden;
  }
}
.p-top__gift::before {
  content: "";
  position: absolute;
  background-image: url(../img/top/gift-img02.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  top: 0;
  right: 0;
  display: inline-block;
  width: 341px;
  height: 451px;
}
@media screen and (max-width: 750px) {
  .p-top__gift::before {
    background-image: url(../img/top/gift-img02-sp.webp);
    top: 4.5px;
    right: 2.25px;
    width: 178.5px;
    height: 236px;
  }
}
@media (max-width: 550px) {
  .p-top__gift::before {
    width: 89px;
    height: 118px;
  }
}

.p-top__about-heading {
  text-align: right;
}
@media screen and (max-width: 750px) {
  .p-top__about-heading {
    text-align: center;
  }
}
.p-top__about-heading .en {
  left: initial;
  right: 0;
}
@media screen and (max-width: 750px) {
  .p-top__about-heading .en {
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    left: 50%;
    right: initial;
    width: 100%;
  }
}
@media screen and (max-width: 500px) {
  .p-top__about-heading .en {
    left: 40%;
  }
}

.p-top__gift-inner {
  max-width: 990px;
  margin-inline: auto;
  padding: 0 15px;
  position: relative;
  z-index: 2;
}

.p-top__gift-heading {
  text-align: right;
}
@media screen and (max-width: 750px) {
  .p-top__gift-heading {
    text-align: center;
  }
}
.p-top__gift-heading .en {
  left: initial;
  right: 0;
}
@media screen and (max-width: 750px) {
  .p-top__gift-heading .en {
    left: 50%;
    right: initial;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 100%;
  }
}

.p-top__gift-content {
  background: -webkit-gradient(linear, left top, right top, color-stop(1.44%, #84204D), color-stop(100%, #C6A3B3), to(#61303F));
  background: linear-gradient(90deg, #84204D 1.44%, #C6A3B3 100%, #61303F 100%);
  margin-top: 51px;
  margin-right: 83px;
  padding: 54px 42px 25px 42px;
  cursor: pointer;
  position: relative;
}
.p-top__gift-content::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.2);
  opacity: 0;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
@media screen and (max-width: 1040px) {
  .p-top__gift-content {
    max-width: 607px;
  }
}
@media screen and (max-width: 750px) {
  .p-top__gift-content {
    margin-top: 33px;
    padding: 13px 19px 17px 32px;
  }
}
@media (max-width: 550px) {
  .p-top__gift-content {
    max-width: 303px;
    margin-right: 0;
  }
}
@media (any-hover: hover) {
  .p-top__gift-content:hover::after {
    opacity: 1;
  }
  .p-top__gift-content:hover .p-top__about-btn .circle::before {
    -webkit-transform: scale(0.75);
            transform: scale(0.75);
  }
}
.p-top__gift-content::before {
  content: "";
  position: absolute;
  background-image: url(../img/top/gift-img01.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  width: 114.5px;
  height: 151px;
  top: -66px;
  left: 0;
}
@media screen and (max-width: 750px) {
  .p-top__gift-content::before {
    background-image: url(../img/top/gift-img01-sp.webp);
    width: 66.5px;
    height: 88px;
    left: -15px;
    top: -50px;
  }
}

.p-top__gift-message {
  color: #FFF;
  font-size: 20px;
  line-height: 1.4;
  font-weight: 400;
}
@media screen and (max-width: 750px) {
  .p-top__gift-message {
    font-size: 14px;
    line-height: 1.5714285714;
  }
}

.p-top__gift-btn-wrap {
  margin-top: 21px;
}
@media screen and (max-width: 750px) {
  .p-top__gift-btn-wrap .p-top__about-btn {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

.p-top__gift-photo {
  position: absolute;
  right: -83px;
  bottom: -40px;
  width: 316px;
}
@media screen and (max-width: 1040px) {
  .p-top__gift-photo {
    right: -125px;
    bottom: -40px;
  }
}
@media screen and (max-width: 750px) {
  .p-top__gift-photo {
    width: 216px;
    right: -55px;
    bottom: -35px;
  }
}
@media (max-width: 550px) {
  .p-top__gift-photo {
    width: 166px;
    right: -55px;
    bottom: -55px;
  }
}
.p-top__gift-photo img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* column */
.p-top__column {
  padding: 80px 0 80px;
  background-color: #F3EDED;
  overflow-x: hidden;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-top__column {
    padding: 80px 0 40px;
  }
}
.p-top__column::before, .p-top__column::after {
  content: "";
  position: absolute;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.p-top__column::before {
  background-image: url(../img/top/column-img01.webp);
  width: 312px;
  height: 166px;
  top: 24px;
  right: 0;
}
@media screen and (max-width: 750px) {
  .p-top__column::before {
    background-image: url(../img/top/column-img01-sp.webp);
    width: 193px;
    height: 103px;
    top: 56.5px;
    right: 4.5px;
  }
}
@media screen and (max-width: 500px) {
  .p-top__column::before {
    width: 96.5px;
    height: 51.5px;
  }
}
.p-top__column::after {
  background-image: url(../img/top/column-img02.webp);
  width: 441px;
  height: 235px;
  left: 32px;
  bottom: 0;
}
@media screen and (max-width: 750px) {
  .p-top__column::after {
    content: none;
  }
}

.p-top__column-inner {
  max-width: 1343px;
  margin-inline: auto;
  padding: 0 45px;
  position: relative;
  z-index: 2;
}

.p-top__column-content {
  margin: 48px auto 0;
  max-width: 1217px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-top__column-content {
    margin-top: 28px;
  }
}
.p-top__column-content::before {
  content: "";
  position: absolute;
  background-image: url(../img/top/column-bg01.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  width: 470px;
  height: 458px;
  top: -146px;
  left: -292px;
}
@media screen and (max-width: 750px) {
  .p-top__column-content::before {
    background-image: url(../img/top/column-bg01-sp.webp);
    width: 442px;
    height: 312px;
    top: -216px;
    left: -71px;
  }
}
@media screen and (max-width: 500px) {
  .p-top__column-content::before {
    width: 221px;
    height: 156px;
  }
}

.p-top__column-heading-block {
  margin-left: 125px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 14px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 900px) {
  .p-top__column-heading-block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-left: 0;
  }
}

.p-top__column-textarea {
  position: relative;
  z-index: 2;
  -webkit-transform: translateY(15px);
          transform: translateY(15px);
}
@media screen and (max-width: 900px) {
  .p-top__column-textarea {
    -webkit-transform: none;
            transform: none;
  }
}

.p-top__column-text {
  font-size: 20px;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 900px) {
  .p-top__column-text {
    text-align: center;
  }
}

.p-top__column-slider .swiper-slide {
  width: 382px;
}
.p-top__column-slider .swiper-slide img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-top__column-slider-wrap {
  position: relative;
  /* 前への矢印カスタマイズ */
  /* 次への矢印カスタマイズ */
}
.p-top__column-slider-wrap .swiper-button-prev::after,
.p-top__column-slider-wrap .swiper-button-next::after {
  bottom: 0;
  content: "";
  height: 0;
  margin: auto;
  position: absolute;
  top: 0;
  width: 0;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
}
.p-top__column-slider-wrap .swiper-button-prev::after {
  background-image: url(../img/top/slide-arrow-left.webp);
  width: 24px;
  height: 48px;
  left: -48px;
}
@media screen and (max-width: 900px) {
  .p-top__column-slider-wrap .swiper-button-prev::after {
    width: 19px;
    height: 36.5px;
    left: -40px;
  }
}
.p-top__column-slider-wrap .swiper-button-next::after {
  background-image: url(../img/top/slide-arrow-right.webp);
  width: 24px;
  height: 48px;
  right: -48px;
}
@media screen and (max-width: 900px) {
  .p-top__column-slider-wrap .swiper-button-next::after {
    width: 19px;
    height: 36.5px;
    right: -40px;
  }
}
.p-top__column-slider-wrap .swiper-horizontal > .swiper-pagination-bullets, .p-top__column-slider-wrap .swiper-pagination-bullets.swiper-pagination-horizontal, .p-top__column-slider-wrap .swiper-pagination-custom, .p-top__column-slider-wrap .swiper-pagination-fraction {
  bottom: -40px;
}
@media screen and (max-width: 900px) {
  .p-top__column-slider-wrap .swiper-horizontal > .swiper-pagination-bullets, .p-top__column-slider-wrap .swiper-pagination-bullets.swiper-pagination-horizontal, .p-top__column-slider-wrap .swiper-pagination-custom, .p-top__column-slider-wrap .swiper-pagination-fraction {
    bottom: -30px;
  }
}
.p-top__column-slider-wrap .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, .p-top__column-slider-wrap .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 8px;
}
@media screen and (max-width: 900px) {
  .p-top__column-slider-wrap .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, .p-top__column-slider-wrap .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 4px;
  }
}
.p-top__column-slider-wrap .swiper-pagination-bullet {
  width: 11px;
  height: 11px;
  background: #BDBDBD;
}
@media screen and (max-width: 900px) {
  .p-top__column-slider-wrap .swiper-pagination-bullet {
    width: 5.5px;
    height: 5.5px;
  }
}
.p-top__column-slider-wrap .swiper-pagination-bullet-active {
  opacity: 1;
  background: #968888;
}

.p-top__column-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
@media (any-hover: hover) {
  .p-top__column-link:hover {
    opacity: 0.7;
  }
}

.p-top__column-photo {
  background-color: #F3EDED;
  max-height: 216px;
}
@media screen and (max-width: 750px) {
  .p-top__column-photo {
    max-height: 184px;
  }
}
.p-top__column-photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-top__column-body {
  min-height: 150px;
  padding: 16px 24px 18px;
  background-color: #FFF;
  -webkit-box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.1);
          box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.1);
}
@media screen and (max-width: 900px) {
  .p-top__column-body {
    min-height: 121px;
    padding: 8px 16px 20px;
  }
}

.p-top__column-meta {
  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;
}

.p-top__column-tag {
  background-color: #431713;
  padding: 4px 8px;
  color: #FFF;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.48px;
}

.p-top__column-date {
  font-family: "Libre Caslon Text", serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.2142857143;
}

.p-top__column-title {
  margin-top: 8px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5555555556;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
@media screen and (max-width: 900px) {
  .p-top__column-title {
    font-size: 15px;
    line-height: 1.5333333333;
  }
}

.p-top__column-btn-wrap {
  margin-top: 48px;
  text-align: right;
}
.p-top__column-btn-wrap .p-top__about-btn {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
}
.p-top__column-btn-wrap .p-top__about-btn .text {
  color: #2B080B;
}
.p-top__column-btn-wrap .p-top__about-btn .circle::before {
  background-color: #431713;
}
.p-top__column-btn-wrap .p-top__about-btn .circle::after {
  background-image: url(../img/common/icon-triangle-right-w.webp);
}
@media (any-hover: hover) {
  .p-top__column-btn-wrap .p-top__about-btn:hover .circle::before {
    -webkit-transform: scale(0.75);
            transform: scale(0.75);
  }
}

/* object > component > reservation
--------------------------------------------- */
.p-reservation {
  padding: 81px 0 76px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-reservation {
    padding: 40px 0 38px;
  }
}
.p-reservation::before, .p-reservation::after {
  content: "";
  position: absolute;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.p-reservation::before {
  background-image: url(../img/reservation/top-bg.webp);
  width: 203px;
  height: 215px;
  top: 28px;
  right: 84px;
}
@media screen and (max-width: 750px) {
  .p-reservation::before {
    background-image: url(../img/reservation/top-bg-sp.webp);
    width: 75px;
    height: 80px;
    top: 38px;
    right: 16px;
  }
}
.p-reservation::after {
  background-image: url(../img/reservation/bottom-bg.webp);
  width: 347px;
  height: 492px;
  bottom: 0;
  left: 0;
}
@media screen and (max-width: 750px) {
  .p-reservation::after {
    background-image: url(../img/reservation/bottom-bg-sp.webp);
    bottom: 27px;
    width: 79px;
    height: 127px;
  }
}

.p-reservation__inner {
  max-width: 828px;
  margin-inline: auto;
  padding: 0 15px;
}

.p-reservation__lead-block {
  margin-top: 48px;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .p-reservation__lead-block {
    margin-top: 24px;
  }
}

.p-reservation__lead-text {
  font-size: 20px;
  line-height: 1.6;
  font-weight: 400;
}
@media screen and (max-width: 750px) {
  .p-reservation__lead-text {
    font-size: 15px;
    line-height: 1.4666666667;
  }
}

.p-reservation__content {
  margin-top: 48px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 40px;
}
@media screen and (max-width: 750px) {
  .p-reservation__content {
    margin-top: 24px;
    gap: 20px;
  }
}

.p-reservation__title {
  font-size: 28px;
  font-weight: 600;
  line-height: 1.2142857143;
  padding-bottom: 12px;
  border-bottom: 1px solid #C5B2B4;
}
@media screen and (max-width: 750px) {
  .p-reservation__title {
    font-size: 18px;
    line-height: 1.1944444444;
    padding-bottom: 8px;
  }
}

.p-reservation__textarea {
  margin-top: 12px;
}
@media screen and (max-width: 750px) {
  .p-reservation__textarea {
    margin-top: 8px;
  }
}

.p-reservation__text {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
}
@media screen and (max-width: 750px) {
  .p-reservation__text {
    font-size: 14px;
    line-height: 1.5714285714;
  }
}
.p-reservation__text + .p-reservation__text {
  margin-top: 1em;
}
@media screen and (max-width: 750px) {
  .p-reservation__text .sp-br {
    display: block;
    margin-top: 1em;
  }
}

/* object > component > about
--------------------------------------------- */
.p-about {
  padding: 80px 0 80px;
  overflow-x: hidden;
  background-color: #F3EDED;
}
@media screen and (max-width: 750px) {
  .p-about {
    padding: 32px 0 40px;
  }
}

.p-about__breadcrumb {
  background-color: #F3EDED;
}

/* TOP */
.p-about__top {
  padding: 0 0 80px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-about__top {
    padding: 0 0 40px;
  }
}
.p-about__top::before, .p-about__top::after {
  content: "";
  position: absolute;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.p-about__top::before {
  background-image: url(../img/about/top-bg01.webp);
  width: 1431px;
  height: 881px;
  top: 299px;
  right: -468px;
}
@media screen and (max-width: 900px) {
  .p-about__top::before {
    content: none;
  }
}
.p-about__top::after {
  background-image: url(../img/about/top-pic01.webp);
  width: 532px;
  height: 571px;
  top: 715px;
  left: -87px;
}
@media screen and (max-width: 900px) {
  .p-about__top::after {
    content: none;
  }
}

.p-about__top-logo {
  text-align: center;
}
.p-about__top-logo img {
  width: 232px;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 750px) {
  .p-about__top-logo img {
    width: 116px;
  }
}

.p-about__top-textarea {
  text-align: center;
  margin-top: 32px;
}
@media screen and (max-width: 750px) {
  .p-about__top-textarea {
    margin-top: 8px;
  }
}

.p-about__top-text {
  font-size: 36px;
  font-weight: 600;
  line-height: 1.4444444444;
}
@media screen and (max-width: 1040px) {
  .p-about__top-text {
    font-size: 26px;
  }
}
@media screen and (max-width: 750px) {
  .p-about__top-text {
    font-size: 18px;
    line-height: 1.1944444444;
  }
}

.p-about__top-list {
  margin-top: 64px;
  display: grid;
  grid-template-columns: repeat(4, 200px);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 40px;
     -moz-column-gap: 40px;
          column-gap: 40px;
}
@media screen and (max-width: 1040px) {
  .p-about__top-list {
    margin-top: 40px;
    grid-template-columns: repeat(2, 135px);
    -webkit-column-gap: 22.5px;
       -moz-column-gap: 22.5px;
            column-gap: 22.5px;
    row-gap: 20px;
  }
}

.p-about__top-list-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 1040px) {
  .p-about__top-list-inner {
    gap: 5.5px;
  }
}

.p-about__top-list-item {
  width: 200px;
  height: 200px;
  border-radius: 50%;
  padding: 43px 0 0;
  position: relative;
}
@media screen and (max-width: 1040px) {
  .p-about__top-list-item {
    width: 135px;
    height: 135px;
    padding: 28px 0 0;
  }
}
.p-about__top-list-item:nth-of-type(1) .p-about__top-list-bg {
  background-color: #F2B277;
}
.p-about__top-list-item:nth-of-type(2) .p-about__top-list-bg {
  background-color: #C56892;
}
.p-about__top-list-item:nth-of-type(3) .p-about__top-list-bg {
  background-color: #80BD38;
}
.p-about__top-list-item:nth-of-type(4) .p-about__top-list-bg {
  background-color: #AA867C;
}
.p-about__top-list-item img {
  width: 70px;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 750px) {
  .p-about__top-list-item img {
    width: 45px;
  }
}

.p-about__top-list-bg {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  -webkit-filter: blur(18px);
          filter: blur(18px);
}

.p-about__top-list-text {
  text-align: center;
  font-size: 20px;
  color: #FFF;
  line-height: 1.45;
}
@media screen and (max-width: 1040px) {
  .p-about__top-list-text {
    font-size: 14px;
    line-height: 1.2142857143;
  }
}

.p-about__top-message {
  margin-top: 64px;
}
@media screen and (max-width: 750px) {
  .p-about__top-message {
    margin-top: 50.5px;
  }
}

.p-about__top-message-text {
  text-align: center;
  font-size: 20px;
  line-height: 1.8;
}
@media screen and (max-width: 750px) {
  .p-about__top-message-text {
    font-size: 16px;
    line-height: 1.625;
    font-weight: 400;
  }
}
.p-about__top-message-text:not(:first-of-type) {
  margin-top: 1em;
}

/* Concept */
.p-about__concept {
  padding: 80px 0 100px;
}
@media screen and (max-width: 750px) {
  .p-about__concept {
    padding: 40px 0 40px;
  }
}

.p-about__concept-inner {
  max-width: 990px;
  margin-inline: auto;
  padding: 0 15px;
}

.p-about__concept-content {
  margin-top: 48px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 40px;
}
@media screen and (max-width: 1040px) {
  .p-about__concept-content {
    width: 75%;
    margin: 48px auto 0;
  }
}
@media screen and (max-width: 750px) {
  .p-about__concept-content {
    width: 100%;
    margin: 30px auto 0;
    gap: 24px;
  }
}

.p-about__concept-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1040px) {
  .p-about__concept-item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
.p-about__concept-item:nth-child(even) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media screen and (max-width: 1040px) {
  .p-about__concept-item:nth-child(even) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
.p-about__concept-item:nth-child(1) .p-about__concept-photo {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 453px;
          flex: 0 0 453px;
}
@media screen and (max-width: 1040px) {
  .p-about__concept-item:nth-child(1) .p-about__concept-photo {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
    width: 90%;
    min-width: 185px;
  }
}
.p-about__concept-item:nth-child(1) .p-about__concept-body {
  padding: 22px 60px 22px 102px;
  margin-left: -65px;
}
@media screen and (max-width: 1040px) {
  .p-about__concept-item:nth-child(1) .p-about__concept-body {
    padding: 3px 16px 60px 16px;
    margin-left: 0;
    margin-bottom: -48px;
  }
}
.p-about__concept-item:nth-child(1) .p-about__concept-header {
  padding-right: 28px;
}
@media screen and (max-width: 1040px) {
  .p-about__concept-item:nth-child(1) .p-about__concept-header {
    padding-right: 27px;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}
.p-about__concept-item:nth-child(1) .p-about__concept-number {
  position: relative;
  -webkit-transform: translateY(14px);
          transform: translateY(14px);
}
.p-about__concept-item:nth-child(2) .p-about__concept-photo {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 453px;
          flex: 0 0 453px;
}
@media screen and (max-width: 1040px) {
  .p-about__concept-item:nth-child(2) .p-about__concept-photo {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
    width: 90%;
    min-width: 185px;
  }
}
.p-about__concept-item:nth-child(2) .p-about__concept-body {
  padding: 49px 102px 53px 60px;
  margin-right: -64px;
}
@media screen and (max-width: 1040px) {
  .p-about__concept-item:nth-child(2) .p-about__concept-body {
    padding: 3px 16px 60px 16px;
    margin-right: 0;
    margin-bottom: -48px;
  }
}
.p-about__concept-item:nth-child(2) .p-about__concept-header {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media screen and (max-width: 1040px) {
  .p-about__concept-item:nth-child(2) .p-about__concept-header {
    padding-right: 17px;
  }
}
.p-about__concept-item:nth-child(2) .p-about__concept-number {
  position: relative;
  -webkit-transform: translateY(8px);
          transform: translateY(8px);
}
.p-about__concept-item:nth-child(3) .p-about__concept-photo {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 435px;
          flex: 0 0 435px;
}
@media screen and (max-width: 1040px) {
  .p-about__concept-item:nth-child(3) .p-about__concept-photo {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
    width: 90%;
    min-width: 185px;
  }
}
.p-about__concept-item:nth-child(3) .p-about__concept-body {
  padding: 4px 60px 70px 102px;
  margin-left: -47px;
}
@media screen and (max-width: 1040px) {
  .p-about__concept-item:nth-child(3) .p-about__concept-body {
    padding: 3px 16px 60px 16px;
    margin-left: 0;
    margin-bottom: -48px;
  }
}
.p-about__concept-item:nth-child(3) .p-about__concept-header {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media screen and (max-width: 1040px) {
  .p-about__concept-item:nth-child(3) .p-about__concept-header {
    padding-right: 18px;
  }
}
.p-about__concept-item:nth-child(3) .p-about__concept-number {
  position: relative;
  -webkit-transform: translateY(8px);
          transform: translateY(8px);
}
.p-about__concept-item:nth-child(4) .p-about__concept-photo {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 453px;
          flex: 0 0 453px;
}
@media screen and (max-width: 1040px) {
  .p-about__concept-item:nth-child(4) .p-about__concept-photo {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
    width: 90%;
    min-width: 185px;
  }
}
.p-about__concept-item:nth-child(4) .p-about__concept-body {
  padding: 35px 102px 67px 60px;
  margin-right: -64px;
}
@media screen and (max-width: 1040px) {
  .p-about__concept-item:nth-child(4) .p-about__concept-body {
    padding: 3px 16px 60px 16px;
    margin-right: 0;
    margin-bottom: -32px;
  }
}
.p-about__concept-item:nth-child(4) .p-about__concept-header {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media screen and (max-width: 1040px) {
  .p-about__concept-item:nth-child(4) .p-about__concept-header {
    padding-right: 18px;
  }
}
.p-about__concept-item:nth-child(4) .p-about__concept-number {
  position: relative;
  -webkit-transform: translateY(8px);
          transform: translateY(8px);
}
.p-about__concept-item:nth-child(5) .p-about__concept-photo {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 435px;
          flex: 0 0 435px;
}
@media screen and (max-width: 1040px) {
  .p-about__concept-item:nth-child(5) .p-about__concept-photo {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
    width: 90%;
    min-width: 185px;
  }
}
.p-about__concept-item:nth-child(5) .p-about__concept-body {
  padding: 35px 60px 67px 102px;
  margin-left: -47px;
}
@media screen and (max-width: 1040px) {
  .p-about__concept-item:nth-child(5) .p-about__concept-body {
    padding: 3px 16px 60px 16px;
    margin-left: 0;
    margin-bottom: -32px;
  }
}
.p-about__concept-item:nth-child(5) .p-about__concept-header {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media screen and (max-width: 1040px) {
  .p-about__concept-item:nth-child(5) .p-about__concept-header {
    padding-right: 20.5px;
  }
}
.p-about__concept-item:nth-child(5) .p-about__concept-number {
  position: relative;
  -webkit-transform: translateY(8px);
          transform: translateY(8px);
}

.p-about__concept-photo {
  position: relative;
  z-index: 2;
}
.p-about__concept-photo img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-about__concept-body {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  background: rgba(255, 255, 255, 0.9);
  -webkit-box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.2);
}

.p-about__concept-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.p-about__concept-title {
  color: #BD4751;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.4166666667;
}
@media screen and (max-width: 750px) {
  .p-about__concept-title {
    font-size: 16px;
    line-height: 1.1875;
  }
}

.p-about__concept-number {
  font-family: "Libre Caslon Text", serif;
  color: #BD4751;
  font-style: italic;
  font-size: 96px;
  font-weight: 400;
  line-height: 1;
}
@media screen and (max-width: 750px) {
  .p-about__concept-number {
    font-size: 75px;
  }
}

.p-about__concept-textarea {
  margin-top: 8px;
}
@media screen and (max-width: 750px) {
  .p-about__concept-textarea {
    margin-top: 12px;
  }
}

.p-about__concept-text {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.75;
}
@media screen and (max-width: 1040px) {
  .p-about__concept-text {
    font-size: 14px;
    line-height: 1.5714285714;
  }
}

.p-about__concept-slide {
  margin-top: 40px;
}
@media screen and (max-width: 750px) {
  .p-about__concept-slide {
    margin-top: 32px;
  }
}

.p-about__concept-slider-thumbnail img,
.p-about__concept-slider-main img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-about__concept-slider-main .swiper-button-next,
.p-about__concept-slider-main .swiper-button-prev {
  width: 46px;
  height: 72px;
  background: rgba(51, 51, 51, 0.7);
  -webkit-transition: background 0.4s ease;
  transition: background 0.4s ease;
}
@media screen and (max-width: 750px) {
  .p-about__concept-slider-main .swiper-button-next,
  .p-about__concept-slider-main .swiper-button-prev {
    width: 32.5px;
    height: 51px;
  }
}
@media (any-hover: hover) {
  .p-about__concept-slider-main .swiper-button-next:hover,
  .p-about__concept-slider-main .swiper-button-prev:hover {
    background: rgba(51, 51, 51, 0.6);
  }
}
.p-about__concept-slider-main .swiper-button-prev {
  left: 0;
}
.p-about__concept-slider-main .swiper-button-next {
  right: 0;
}
.p-about__concept-slider-main .swiper-button-next:after,
.p-about__concept-slider-main .swiper-button-prev:after {
  content: none;
}
.p-about__concept-slider-main .swiper-button-next:before,
.p-about__concept-slider-main .swiper-button-prev:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  display: inline-block;
  width: 17px;
  height: 29px;
}
@media screen and (max-width: 750px) {
  .p-about__concept-slider-main .swiper-button-next:before,
  .p-about__concept-slider-main .swiper-button-prev:before {
    width: 12px;
    height: 20.5px;
  }
}
.p-about__concept-slider-main .swiper-button-prev::before {
  background-image: url(../img/about/icon-slide-prev.png);
}
.p-about__concept-slider-main .swiper-button-next::before {
  background-image: url(../img/about/icon-slide-next.png);
}

.p-about__concept-slider-thumbnail {
  margin-top: 8px;
}
@media screen and (max-width: 750px) {
  .p-about__concept-slider-thumbnail {
    margin-top: 5px;
  }
}
.p-about__concept-slider-thumbnail .swiper-slide {
  width: calc((100% - 20px) / 5) !important;
  aspect-ratio: 188/150;
  cursor: pointer;
  position: relative;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
@media screen and (max-width: 750px) {
  .p-about__concept-slider-thumbnail .swiper-slide {
    aspect-ratio: 130/107;
  }
}
@media (any-hover: hover) {
  .p-about__concept-slider-thumbnail .swiper-slide:hover {
    opacity: 0.7;
  }
}

/* Therapist */
.p-about__therapist {
  padding: 100px 0 80px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-about__therapist {
    padding: 50px 0 40px;
  }
}
.p-about__therapist::before, .p-about__therapist::after {
  content: "";
  position: absolute;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.p-about__therapist::before {
  background-image: url(../img/about/bottom-bg01.webp);
  width: 1431px;
  height: 881px;
  left: -402px;
  top: -260px;
}
@media screen and (max-width: 750px) {
  .p-about__therapist::before {
    background-image: url(../img/about/bottom-bg01-sp.webp);
    width: 404px;
    height: 387px;
    left: -110px;
    top: -190px;
  }
}
.p-about__therapist::after {
  background-image: url(../img/about/bottom-pic01.webp);
  width: 614px;
  height: 640px;
  bottom: 36.8px;
  right: -140px;
}
@media screen and (max-width: 750px) {
  .p-about__therapist::after {
    content: none;
  }
}

.p-about__therapist-inner {
  max-width: 955px;
  margin-inline: auto;
  padding: 0 15px;
  position: relative;
  z-index: 2;
}

.p-about__therapist-content {
  margin-top: 48px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 31px;
}
@media screen and (max-width: 900px) {
  .p-about__therapist-content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media screen and (max-width: 750px) {
  .p-about__therapist-content {
    margin-top: 20px;
  }
}

.p-about__therapist-body {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 475px;
          flex: 0 0 475px;
}
@media screen and (max-width: 900px) {
  .p-about__therapist-body {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
    width: 75%;
    margin-inline: auto;
  }
}
@media screen and (max-width: 750px) {
  .p-about__therapist-body {
    width: 100%;
  }
}

.p-about__therapist-photo {
  max-width: 358px;
  width: 100%;
  margin-inline: auto;
}
@media screen and (max-width: 900px) {
  .p-about__therapist-photo {
    width: 89%;
    min-width: 271px;
    max-width: initial;
  }
}
.p-about__therapist-photo img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-about__therapist-name {
  margin-top: 32px;
}
@media screen and (max-width: 750px) {
  .p-about__therapist-name {
    margin-top: 24px;
  }
}
.p-about__therapist-name .jp-name {
  font-size: 32px;
  line-height: 1.4375;
  font-weight: 400;
  padding-bottom: 2px;
  border-bottom: 1px solid #2B080B;
}
@media screen and (max-width: 750px) {
  .p-about__therapist-name .jp-name {
    font-size: 16px;
    line-height: 1.1875;
  }
}
.p-about__therapist-name .en-name {
  margin-top: 4px;
  font-family: "Libre Caslon Text", serif;
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.64px;
  line-height: 1.25;
  text-align: right;
}
@media screen and (max-width: 750px) {
  .p-about__therapist-name .en-name {
    font-size: 12px;
    letter-spacing: 0.48px;
  }
}

.p-about__therapist-message {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}

.p-about__therapist-history {
  margin-top: 12px;
}
@media screen and (max-width: 750px) {
  .p-about__therapist-history {
    margin-top: 8px;
  }
}

.p-about__therapist-history-text {
  font-size: 16px;
  line-height: 1.4375;
  font-weight: 400;
}
@media screen and (max-width: 750px) {
  .p-about__therapist-history-text {
    font-size: 14px;
    line-height: 1.2142857143;
  }
}

.p-about__therapist-box {
  margin-top: 10px;
  background-color: #FFF;
  padding: 16px 16px;
}
@media screen and (max-width: 750px) {
  .p-about__therapist-box {
    margin-top: 8px;
    padding: 10px 10px;
  }
}
.p-about__therapist-box .list-item {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.7142857143;
}
@media screen and (max-width: 750px) {
  .p-about__therapist-box .list-item {
    font-size: 13px;
    line-height: 1.5384615385;
  }
}
.p-about__therapist-box .notice {
  font-size: 12px;
}
@media screen and (max-width: 500px) {
  .p-about__therapist-box .notice {
    text-align: right;
  }
}

.p-about__therapist-message-text {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.75;
}
@media screen and (max-width: 900px) {
  .p-about__therapist-message-text {
    text-align: center;
  }
}
@media screen and (max-width: 750px) {
  .p-about__therapist-message-text {
    font-size: 15px;
    line-height: 1.8666666667;
  }
}
.p-about__therapist-message-text:not(:first-of-type) {
  margin-top: 24px;
}
@media screen and (max-width: 750px) {
  .p-about__therapist-message-text:not(:first-of-type) {
    margin-top: 20px;
  }
}

/* object > component > beauty health
--------------------------------------------- */
.p-beauty {
  padding: 80px 0 0;
  background-color: #F3EDED;
}
@media screen and (max-width: 750px) {
  .p-beauty {
    padding: 40px 0 0;
  }
}

.p-beauty__breadcrumb {
  background-color: #F3EDED;
}

.p-beauty__links {
  margin-top: 48px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 60px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 750px) {
  .p-beauty__links {
    margin-top: 24px;
    gap: 12px;
  }
}

.p-beauty__link {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 280px;
          flex: 0 0 280px;
  aspect-ratio: 1/1;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
@media screen and (max-width: 750px) {
  .p-beauty__link {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 160px;
            flex: 0 0 160px;
  }
}
@media (any-hover: hover) {
  .p-beauty__link:hover {
    opacity: 0.7;
  }
}
.p-beauty__link:nth-of-type(1) {
  background-image: url(../img/beauty/link-photo01.webp);
}
@media screen and (max-width: 750px) {
  .p-beauty__link:nth-of-type(1) {
    background-image: url(../img/beauty/link-photo01-sp.webp);
  }
}
.p-beauty__link:nth-of-type(1) .p-beauty__link-text {
  margin-top: -14px;
}
@media screen and (max-width: 750px) {
  .p-beauty__link:nth-of-type(1) .p-beauty__link-text {
    margin-top: -8px;
  }
}
.p-beauty__link:nth-of-type(2) {
  background-image: url(../img/beauty/link-photo02.webp);
}
@media screen and (max-width: 750px) {
  .p-beauty__link:nth-of-type(2) {
    background-image: url(../img/beauty/link-photo02-sp.webp);
  }
}
.p-beauty__link:nth-of-type(2) .p-beauty__link-number {
  color: #ECDEDD;
}
.p-beauty__link:nth-of-type(2) .p-beauty__link-text {
  background-color: #ECDEDD;
  margin-top: -14px;
}
@media screen and (max-width: 750px) {
  .p-beauty__link:nth-of-type(2) .p-beauty__link-text {
    margin-top: -8px;
  }
}
.p-beauty__link:nth-of-type(3) {
  background-image: url(../img/beauty/link-photo03.webp);
}
@media screen and (max-width: 750px) {
  .p-beauty__link:nth-of-type(3) {
    background-image: url(../img/beauty/link-photo03-sp.webp);
  }
}
.p-beauty__link:nth-of-type(3) .p-beauty__link-number {
  color: #84204D;
}
.p-beauty__link:nth-of-type(3) .p-beauty__link-text {
  background-color: #84204D;
  margin-top: -14px;
  color: #FFF;
}
@media screen and (max-width: 750px) {
  .p-beauty__link:nth-of-type(3) .p-beauty__link-text {
    margin-top: -8px;
  }
}

.p-beauty__link-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 32px;
}
@media screen and (max-width: 750px) {
  .p-beauty__link-inner {
    margin-top: 24px;
  }
}

.p-beauty__link-number {
  font-family: "Libre Caslon Text", serif;
  color: #FFF;
  font-size: 96px;
  font-weight: 400;
  line-height: 1;
}
@media screen and (max-width: 750px) {
  .p-beauty__link-number {
    font-size: 48px;
  }
}

.p-beauty__link-text {
  padding: 7px 16.5px;
  background-color: #FFF;
  font-size: 26px;
  font-weight: 400;
  line-height: 1.4230769231;
}
@media screen and (max-width: 750px) {
  .p-beauty__link-text {
    font-size: 15px;
    line-height: 1.4333333333;
    padding: 2px 4px;
  }
}

.p-beauty__items {
  margin-top: 80px;
}
@media screen and (max-width: 750px) {
  .p-beauty__items {
    margin-top: 32px;
  }
}

.p-beauty__item {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.p-beauty__item:nth-of-type(1) {
  padding: 52px 0 80px;
  background-image: url(../img/beauty/bg01.webp);
}
@media screen and (max-width: 750px) {
  .p-beauty__item:nth-of-type(1) {
    padding: 28px 0 40px;
    background-image: url(../img/beauty/bg01-sp.webp);
  }
}
.p-beauty__item:nth-of-type(1) .p-beauty__item-box {
  -webkit-backdrop-filter: blur(12.5px);
          backdrop-filter: blur(12.5px);
  background: rgba(255, 255, 255, 0.8);
}
.p-beauty__item:nth-of-type(2) {
  padding: 49px 0 80px;
  background-image: url(../img/beauty/bg02.webp);
}
@media screen and (max-width: 750px) {
  .p-beauty__item:nth-of-type(2) {
    padding: 28px 0 40px;
    background-image: url(../img/beauty/bg02-sp.webp);
  }
}
.p-beauty__item:nth-of-type(2) .p-beauty__item-box {
  background: rgba(236, 222, 221, 0.8);
  -webkit-box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.1);
          box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.1);
}
.p-beauty__item:nth-of-type(3) {
  padding: 50px 0 80px;
  background-image: url(../img/beauty/bg03.webp);
}
@media screen and (max-width: 750px) {
  .p-beauty__item:nth-of-type(3) {
    padding: 28px 0 40px;
    background-image: url(../img/beauty/bg03-sp.webp);
  }
}
.p-beauty__item:nth-of-type(3) .p-beauty__item-title {
  color: #84204D;
}
.p-beauty__item:nth-of-type(3) .p-beauty__item-text {
  color: #84204D;
}
.p-beauty__item:nth-of-type(3) .p-beauty__item-box {
  background: rgba(132, 32, 77, 0.8);
  -webkit-backdrop-filter: blur(12.5px);
          backdrop-filter: blur(12.5px);
}
.p-beauty__item:nth-of-type(3) .p-beauty__item-box-title {
  color: #FFF;
}
.p-beauty__item:nth-of-type(3) .p-beauty__item-box-content {
  border-color: #FFF;
}
.p-beauty__item:nth-of-type(3) .p-beauty__item-box-content .number,
.p-beauty__item:nth-of-type(3) .p-beauty__item-box-content .text,
.p-beauty__item:nth-of-type(3) .p-beauty__item-box-content .title {
  color: #FFF;
}
.p-beauty__item:nth-of-type(3) .p-beauty__item-box-content .title {
  border-bottom: 1px solid #FFF;
}

.p-beauty__item-inner {
  max-width: 990px;
  margin-inline: auto;
  padding: 0 15px;
}

.p-beauty__item-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 16px;
  color: #FFF;
}
@media screen and (max-width: 750px) {
  .p-beauty__item-title {
    gap: 4px;
  }
}
.p-beauty__item-title .number {
  font-family: "Libre Caslon Text", serif;
  font-size: 80px;
  line-height: 1;
  font-weight: 400;
}
@media screen and (max-width: 750px) {
  .p-beauty__item-title .number {
    font-size: 40px;
  }
}
.p-beauty__item-title .text {
  font-size: 40px;
  font-weight: 600;
  line-height: 1;
  margin-bottom: 13px;
}
@media screen and (max-width: 750px) {
  .p-beauty__item-title .text {
    font-size: 20px;
    margin-bottom: 9px;
  }
}

.p-beauty__item-textarea {
  margin-top: 12px;
}
@media screen and (max-width: 750px) {
  .p-beauty__item-textarea {
    margin-top: 7.5px;
  }
}

.p-beauty__item-text {
  text-align: center;
  color: #FFF;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.4666666667;
}
@media screen and (max-width: 750px) {
  .p-beauty__item-text {
    font-size: 15px;
  }
}
.p-beauty__item-text:not(:first-child) {
  margin-top: 1em;
}

.p-beauty__item-box {
  margin-top: 32px;
  padding: 56px 22.5px;
}
@media screen and (max-width: 750px) {
  .p-beauty__item-box {
    margin-top: 16px;
    padding: 36px 22.5px;
  }
}

.p-beauty__item-box-inner {
  max-width: 815px;
  margin-inline: auto;
}

.p-beauty__item-box-title {
  text-align: center;
  font-size: 28px;
  line-height: 1.4285714286;
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  .p-beauty__item-box-title {
    font-size: 20px;
    line-height: 1.425;
  }
}

.p-beauty__item-box-list {
  margin-top: 39px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 900px) {
  .p-beauty__item-box-list {
    margin-top: 20px;
    grid-template-columns: 1fr;
  }
}

@media screen and (max-width: 750px) {
  .p-beauty__item-box-content:not(:first-of-type) {
    padding-top: 12px;
  }
}
.p-beauty__item-box-content:nth-of-type(1) {
  padding: 0 24px 16px 0;
  border-right: 1px dashed #2B080B;
}
@media screen and (max-width: 900px) {
  .p-beauty__item-box-content:nth-of-type(1) {
    padding: 0;
    border-right: none;
  }
}
.p-beauty__item-box-content:nth-of-type(2) {
  padding: 0 24px 16px 24px;
  border-right: 1px dashed #2B080B;
}
@media screen and (max-width: 900px) {
  .p-beauty__item-box-content:nth-of-type(2) {
    margin-top: 16px;
    padding: 12px 0 0;
    border-right: none;
    border-top: 1px dashed #2B080B;
  }
}
.p-beauty__item-box-content:nth-of-type(3) {
  padding: 0 0 16px 24px;
}
@media screen and (max-width: 900px) {
  .p-beauty__item-box-content:nth-of-type(3) {
    margin-top: 16px;
    padding: 12px 0 0;
    border-top: 1px dashed #2B080B;
  }
}
.p-beauty__item-box-content:nth-of-type(4) {
  padding: 16px 24px 16px 0;
  border-top: 1px dashed #2B080B;
  border-right: 1px dashed #2B080B;
}
@media screen and (max-width: 900px) {
  .p-beauty__item-box-content:nth-of-type(4) {
    margin-top: 16px;
    padding: 12px 0 0;
    border-right: none;
    border-top: 1px dashed #2B080B;
  }
}
.p-beauty__item-box-content:nth-of-type(5) {
  padding: 16px 24px 16px 24px;
  border-top: 1px dashed #2B080B;
  border-right: 1px dashed #2B080B;
}
@media screen and (max-width: 900px) {
  .p-beauty__item-box-content:nth-of-type(5) {
    margin-top: 16px;
    padding: 12px 0 0;
    border-right: none;
    border-top: 1px dashed #2B080B;
  }
}
.p-beauty__item-box-content:nth-of-type(6) {
  padding: 16px 0 16px 24px;
  border-top: 1px dashed #2B080B;
}
@media screen and (max-width: 900px) {
  .p-beauty__item-box-content:nth-of-type(6) {
    margin-top: 16px;
    padding: 12px 0 0;
    border-top: 1px dashed #2B080B;
  }
}
.p-beauty__item-box-content .number {
  font-family: "Libre Caslon Text", serif;
  font-size: 32px;
  line-height: 1.28125;
  font-weight: 400;
}
@media screen and (max-width: 750px) {
  .p-beauty__item-box-content .number {
    font-size: 20px;
    line-height: 1.225;
  }
}
.p-beauty__item-box-content .title {
  font-size: 20px;
  line-height: 1.45;
  font-weight: 600;
  padding-bottom: 4px;
  border-bottom: 1px solid #2B080B;
}
@media screen and (max-width: 750px) {
  .p-beauty__item-box-content .title {
    font-size: 16px;
    line-height: 1.4375;
  }
}
.p-beauty__item-box-content .text {
  margin-top: 7px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4285714286;
}
@media screen and (max-width: 750px) {
  .p-beauty__item-box-content .text {
    margin-top: 4px;
  }
}

.p-beauty__btn-wrap {
  margin-top: 32px;
  text-align: right;
}
@media screen and (max-width: 750px) {
  .p-beauty__btn-wrap {
    margin-top: 24px;
  }
}
.p-beauty__btn-wrap .p-top__about-btn {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.p-beauty__btn-wrap .p-top__about-btn .text {
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
@media (any-hover: hover) {
  .p-beauty__btn-wrap .p-top__about-btn:hover .text {
    opacity: 0.7;
  }
  .p-beauty__btn-wrap .p-top__about-btn:hover .circle::before {
    -webkit-transform: scale(0.75);
            transform: scale(0.75);
  }
}

/* object > component > medical
--------------------------------------------- */
.p-medical {
  overflow-x: hidden;
  position: relative;
}
.p-medical::before, .p-medical::after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  display: inline-block;
}
@media screen and (max-width: 750px) {
  .p-medical::before, .p-medical::after {
    content: none;
  }
}
.p-medical::before {
  background-image: url(../img/medical/about-bg01.webp);
  width: 897px;
  height: 881px;
  top: -169px;
  right: -267px;
}
.p-medical::after {
  background-image: url(../img/medical/about-img01.webp);
  width: 343px;
  height: 464px;
  left: 0;
  top: 498px;
}

/* About */
.p-medical__about {
  padding: 80px 0 112px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 750px) {
  .p-medical__about {
    padding: 40px 0 33px;
  }
}

.p-medical__about-top {
  margin: 48px auto 0;
  max-width: 872px;
  padding: 0 15px;
}
@media screen and (max-width: 750px) {
  .p-medical__about-top {
    margin: 24px auto 0;
  }
}
.p-medical__about-top .content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 33px;
}
@media screen and (max-width: 750px) {
  .p-medical__about-top .content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 20px;
  }
}
.p-medical__about-top .body {
  margin-top: 19px;
}
@media screen and (max-width: 750px) {
  .p-medical__about-top .body {
    margin-top: 0;
  }
}
.p-medical__about-top .body .text {
  font-size: 20px;
  font-weight: 400;
  line-height: 2;
}
@media screen and (max-width: 750px) {
  .p-medical__about-top .body .text {
    font-size: 15px;
    line-height: 1.4666666667;
    text-align: center;
  }
}
.p-medical__about-top .photo {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 350px;
          flex: 0 0 350px;
}
@media screen and (max-width: 750px) {
  .p-medical__about-top .photo {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
  }
}
.p-medical__about-top .photo img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-medical__about-bottom-wrap {
  margin: 80px auto 0;
  padding: 0 15px;
  max-width: 872px;
}
@media screen and (max-width: 750px) {
  .p-medical__about-bottom-wrap {
    margin: 40px auto 0;
  }
}

.p-medical__about-bottom {
  -webkit-box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.15);
          box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.15);
  background: #F3EDED;
}
.p-medical__about-bottom .content {
  max-width: 715px;
  padding: 32px 10px 32px 36px;
}
@media screen and (max-width: 750px) {
  .p-medical__about-bottom .content {
    padding: 16px 10px 11px 20px;
  }
}
.p-medical__about-bottom .title {
  padding: 5px 5px;
  text-align: center;
  background-color: #84204D;
  color: #FFF;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.4166666667;
}
@media screen and (max-width: 750px) {
  .p-medical__about-bottom .title {
    padding: 3.5px 0;
    font-size: 14px;
    line-height: 1.4285714286;
  }
}
.p-medical__about-bottom .list {
  display: grid;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: repeat(4, auto);
  grid-auto-flow: column;
  -webkit-column-gap: 56px;
     -moz-column-gap: 56px;
          column-gap: 56px;
}
@media screen and (max-width: 750px) {
  .p-medical__about-bottom .list {
    row-gap: 6px;
    grid-template-columns: 1fr;
    grid-template-rows: initial;
    grid-auto-flow: row;
  }
}
.p-medical__about-bottom .list-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
}
.p-medical__about-bottom .list-item.has-margin {
  margin-top: 24px;
}
@media screen and (max-width: 750px) {
  .p-medical__about-bottom .list-item.has-margin {
    margin-top: 0;
  }
}
.p-medical__about-bottom .list-item img {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 16px;
          flex: 0 0 16px;
  width: 16px;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 750px) {
  .p-medical__about-bottom .list-item img {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 10px;
            flex: 0 0 10px;
    width: 10px;
  }
}
.p-medical__about-bottom .list-item .text {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4375;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4375;
}
@media screen and (max-width: 750px) {
  .p-medical__about-bottom .list-item .text {
    font-size: 14px;
    line-height: 1.4285714286;
  }
}
.p-medical__about-bottom .list-text {
  font-size: 14px;
  line-height: 1.4285714286;
  text-align: right;
  padding-right: 22px;
}
@media screen and (max-width: 750px) {
  .p-medical__about-bottom .list-text {
    margin-top: 4px;
    padding-right: 14px;
    font-size: 12px;
    line-height: 1.4166666667;
  }
}

.p-medical__about-main {
  margin-top: 80px;
}
@media screen and (max-width: 750px) {
  .p-medical__about-main {
    margin-top: 40px;
  }
}
.p-medical__about-main .title {
  text-align: center;
  font-size: 32px;
  line-height: 1.25;
  font-weight: 600;
}
@media screen and (max-width: 900px) {
  .p-medical__about-main .title {
    font-size: 28px;
  }
}
@media screen and (max-width: 750px) {
  .p-medical__about-main .title {
    font-size: 18px;
    line-height: 1.7777777778;
  }
}
.p-medical__about-main .items {
  margin-top: 48px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 32px;
}
@media screen and (max-width: 750px) {
  .p-medical__about-main .items {
    margin-top: 24px;
    gap: 16px;
  }
}
.p-medical__about-main .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 24px;
  -webkit-box-shadow: 2px 4px 10px 0px rgba(0, 0, 0, 0.25);
          box-shadow: 2px 4px 10px 0px rgba(0, 0, 0, 0.25);
  padding: 24px 40px 24px;
}
@media screen and (max-width: 1040px) {
  .p-medical__about-main .item {
    padding: 24px 24px 24px;
    gap: 16px;
  }
}
@media screen and (max-width: 900px) {
  .p-medical__about-main .item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 12px;
    padding: 16px 12px 16px;
  }
}
.p-medical__about-main .item:nth-of-type(1) .photo {
  margin-top: 18px;
}
@media screen and (max-width: 750px) {
  .p-medical__about-main .item:nth-of-type(1) .photo {
    margin-top: 0;
  }
}
.p-medical__about-main .item .body {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
@media screen and (max-width: 900px) {
  .p-medical__about-main .item .body {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
  }
}
.p-medical__about-main .item .photo {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 470px;
          flex: 0 0 470px;
}
@media screen and (max-width: 900px) {
  .p-medical__about-main .item .photo {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
  }
}
.p-medical__about-main .item .photo img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-medical__about-main .item .title-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 6px;
  color: #84204D;
}
@media screen and (max-width: 750px) {
  .p-medical__about-main .item .title-head {
    gap: 8px;
  }
}
.p-medical__about-main .item .title-head .text {
  font-size: 14px;
  color: #84204D;
  line-height: 1;
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  .p-medical__about-main .item .title-head .text {
    font-size: 12px;
  }
}
.p-medical__about-main .item .title-head .number {
  font-family: "Libre Caslon Text", serif;
  font-size: 28px;
  font-weight: 400;
  line-height: 1;
  position: relative;
  -webkit-transform: translateY(2px);
          transform: translateY(2px);
}
@media screen and (max-width: 750px) {
  .p-medical__about-main .item .title-head .number {
    font-size: 24px;
  }
}
.p-medical__about-main .item .item-title {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.6;
}
@media screen and (max-width: 1040px) {
  .p-medical__about-main .item .item-title {
    font-size: 18px;
  }
}
@media screen and (max-width: 750px) {
  .p-medical__about-main .item .item-title {
    margin-top: 4px;
    font-size: 16px;
    line-height: 1.625;
  }
}
.p-medical__about-main .item .textarea {
  margin-top: 8px;
}
@media screen and (max-width: 750px) {
  .p-medical__about-main .item .textarea {
    margin-top: 12px;
  }
}
.p-medical__about-main .item .desc {
  font-size: 14px;
  font-weight: 400;
  line-height: 2;
}
@media screen and (max-width: 750px) {
  .p-medical__about-main .item .desc {
    line-height: 1.5714285714;
  }
}

.p-medical__about-main-inner {
  max-width: 990px;
  margin-inline: auto;
  padding: 0 15px;
}

/* Layout */
.p-medical__contents {
  padding: 80px 0;
  background-color: #F3EDED;
}
@media screen and (max-width: 750px) {
  .p-medical__contents {
    padding: 38px 0 48px;
  }
}

/* Detail */
.p-medical__detail {
  padding: 0 0 80px;
}
@media screen and (max-width: 750px) {
  .p-medical__detail {
    padding: 0 0 40px;
  }
}

.p-medical__detail-course .items {
  margin-top: 52px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 16px;
}
@media screen and (max-width: 750px) {
  .p-medical__detail-course .items {
    margin-top: 28px;
  }
}
.p-medical__detail-course .item-inner {
  max-width: 680px;
  margin-inline: auto;
}
.p-medical__detail-course .item {
  width: 100%;
  background-color: #FFF;
  padding: 24px 10px 20px;
}
.p-medical__detail-course .item .title-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-bottom: 8px;
  border-bottom: 1px solid #2B080B;
}
.p-medical__detail-course .item .title-block .name {
  font-size: 20px;
  line-height: 1.6;
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  .p-medical__detail-course .item .title-block .name {
    font-size: 14px;
    line-height: 1.5714285714;
  }
}
.p-medical__detail-course .item .title-block .price-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 18px;
}
@media screen and (max-width: 750px) {
  .p-medical__detail-course .item .title-block .price-block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 0;
  }
}
.p-medical__detail-course .item .title-block .time {
  font-size: 20px;
  line-height: 1.6;
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  .p-medical__detail-course .item .title-block .time {
    font-size: 12px;
  }
}
.p-medical__detail-course .item .title-block .price {
  line-height: 1.6;
  font-weight: 600;
}
.p-medical__detail-course .item .title-block .price .yen {
  font-size: 20px;
}
@media screen and (max-width: 750px) {
  .p-medical__detail-course .item .title-block .price .yen {
    font-size: 15px;
  }
}
.p-medical__detail-course .item .title-block .price .tax {
  font-size: 14px;
}
@media screen and (max-width: 750px) {
  .p-medical__detail-course .item .title-block .price .tax {
    font-size: 10px;
  }
}
.p-medical__detail-course .item .textarea {
  margin-top: 8px;
}
.p-medical__detail-course .item .textarea .desc {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.7142857143;
}
.p-medical__detail-course .item .notice {
  margin-top: 10px;
}
@media screen and (max-width: 750px) {
  .p-medical__detail-course .item .notice {
    margin-top: 4px;
  }
}
.p-medical__detail-course .item .notice .notice-text {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.7142857143;
  background-color: #EAEAEA;
  padding: 2px 4px;
}
@media screen and (max-width: 750px) {
  .p-medical__detail-course .item .notice .notice-text {
    width: auto;
    text-align: left;
    font-size: 13px;
    line-height: 1.2307692308;
    padding: 4px 12px;
  }
}

.p-medical__detail-option {
  margin-top: 72px;
}
@media screen and (max-width: 750px) {
  .p-medical__detail-option {
    margin-top: 36px;
  }
}
.p-medical__detail-option .content {
  margin-top: 40px;
  background-color: #FFF;
  padding: 52px 10px 56px;
}
@media screen and (max-width: 750px) {
  .p-medical__detail-option .content {
    padding: 32px 10px 32px;
  }
}
.p-medical__detail-option .items {
  max-width: 799px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (max-width: 750px) {
  .p-medical__detail-option .items {
    margin-top: 20px;
    grid-template-columns: 1fr;
  }
}
.p-medical__detail-option .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.p-medical__detail-option .item:nth-of-type(1) {
  padding: 0 26px 29px 0;
  border-right: 1px dashed #C8C8C8;
  border-bottom: 1px dashed #C8C8C8;
}
@media screen and (max-width: 750px) {
  .p-medical__detail-option .item:nth-of-type(1) {
    padding: 0 0 22px 0;
    border-right: none;
  }
}
.p-medical__detail-option .item:nth-of-type(2) {
  padding: 0 0 29px 26px;
  border-bottom: 1px dashed #C8C8C8;
}
@media screen and (max-width: 750px) {
  .p-medical__detail-option .item:nth-of-type(2) {
    margin-top: 18px;
    padding: 0 0 22px 0;
  }
}
.p-medical__detail-option .item:nth-of-type(3) {
  padding: 21px 26px 0 0;
  border-right: 1px dashed #C8C8C8;
}
@media screen and (max-width: 750px) {
  .p-medical__detail-option .item:nth-of-type(3) {
    margin-top: 18px;
    padding: 0 0 22px 0;
    border-right: none;
    border-bottom: 1px dashed #C8C8C8;
  }
}
.p-medical__detail-option .item:nth-of-type(4) {
  padding: 21px 0 0 26px;
}
@media screen and (max-width: 750px) {
  .p-medical__detail-option .item:nth-of-type(4) {
    margin-top: 18px;
    padding: 0 0 22px 0;
  }
}
.p-medical__detail-option .heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 8px;
  padding-bottom: 4px;
  border-bottom: 1px solid #2B080B;
}
.p-medical__detail-option .order {
  font-size: 36px;
  font-weight: 600;
  line-height: 1;
}
@media screen and (max-width: 750px) {
  .p-medical__detail-option .order {
    font-size: 24px;
  }
}
.p-medical__detail-option .heading-text {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
}
@media screen and (max-width: 750px) {
  .p-medical__detail-option .heading-text {
    font-size: 15px;
  }
}
.p-medical__detail-option .price {
  line-height: 1.6;
  text-align: right;
}
.p-medical__detail-option .price .yen {
  font-size: 18px;
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  .p-medical__detail-option .price .yen {
    font-size: 16px;
  }
}
.p-medical__detail-option .price .tax {
  font-size: 12px;
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  .p-medical__detail-option .price .tax {
    font-size: 10px;
  }
}
.p-medical__detail-option .price .plus {
  margin-right: 7px;
  font-size: 14px;
  font-weight: 600;
  line-height: 2.2857142857;
}
@media screen and (max-width: 750px) {
  .p-medical__detail-option .price .plus {
    margin-right: 4px;
    font-size: 12px;
  }
}
.p-medical__detail-option .textarea {
  margin-top: 8px;
  margin-bottom: 8px;
}
@media screen and (max-width: 750px) {
  .p-medical__detail-option .textarea {
    margin-top: 21px;
  }
}
.p-medical__detail-option .desc {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.7142857143;
}
.p-medical__detail-option .desc .colored {
  color: #84204D;
  font-weight: 600;
}
.p-medical__detail-option .box {
  margin-top: auto;
  padding: 16px 10px;
  background-color: #84204D;
  color: #FFF;
}
@media screen and (max-width: 750px) {
  .p-medical__detail-option .box {
    padding: 20px 10px;
  }
}
.p-medical__detail-option .box .list {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 8px auto 0;
}
.p-medical__detail-option .box .list-item {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4285714286;
}
.p-medical__detail-option .box-title {
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.7142857143;
}
@media screen and (max-width: 750px) {
  .p-medical__detail-option .box-title {
    font-size: 15px;
    line-height: 1;
  }
}

.p-medical__detail-option-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 24px;
}
.p-medical__detail-option-title .text {
  font-size: 32px;
  line-height: 1;
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  .p-medical__detail-option-title .text {
    font-size: 18px;
  }
}
.p-medical__detail-option-title::before, .p-medical__detail-option-title::after {
  content: "";
  display: inline-block;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  height: 1px;
  background-color: #2B080B;
}

.p-medical__detail-inner {
  max-width: 990px;
  margin-inline: auto;
  padding: 0 15px;
}

/* Flow */
.p-medical__flow {
  padding: 80px 0;
}
@media screen and (max-width: 750px) {
  .p-medical__flow {
    padding: 40px 0;
  }
}
.p-medical__flow .content {
  margin-top: 48px;
  padding: 49px 16px 72px;
  background-color: #FFF;
}
@media screen and (max-width: 750px) {
  .p-medical__flow .content {
    margin-top: 24px;
    padding: 35.5px 16px 12.5px;
  }
}
.p-medical__flow .items {
  max-width: 686px;
  margin-inline: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.p-medical__flow .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 24px;
}
@media screen and (max-width: 750px) {
  .p-medical__flow .item {
    gap: 12px;
  }
}
.p-medical__flow .item:not(:first-of-type) {
  position: relative;
}
.p-medical__flow .item:not(:first-of-type)::before {
  content: "";
  position: absolute;
  left: 50%;
  top: -19px;
  display: inline-block;
  background-image: url(../img/medical/flow-down-triangle.webp);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  width: 22px;
  height: 15px;
}
@media screen and (max-width: 750px) {
  .p-medical__flow .item:not(:first-of-type)::before {
    width: 13px;
    height: 10px;
    top: -22px;
  }
}
.p-medical__flow .item:nth-of-type(2) {
  margin-top: 46px;
}
@media screen and (max-width: 750px) {
  .p-medical__flow .item:nth-of-type(2) {
    margin-top: 34px;
  }
}
.p-medical__flow .item:nth-of-type(3) {
  margin-top: 48px;
}
@media screen and (max-width: 750px) {
  .p-medical__flow .item:nth-of-type(3) {
    margin-top: 34px;
  }
}
.p-medical__flow .item:nth-of-type(4) {
  margin-top: 19px;
}
@media screen and (max-width: 750px) {
  .p-medical__flow .item:nth-of-type(4) {
    margin-top: 34px;
  }
}
.p-medical__flow .item:nth-of-type(5) {
  margin-top: 48px;
}
@media screen and (max-width: 750px) {
  .p-medical__flow .item:nth-of-type(5) {
    margin-top: 34px;
  }
}
.p-medical__flow .item:nth-of-type(6) {
  margin-top: 47px;
}
@media screen and (max-width: 750px) {
  .p-medical__flow .item:nth-of-type(6) {
    margin-top: 34px;
  }
}
.p-medical__flow .item:nth-of-type(7) {
  margin-top: 24px;
}
@media screen and (max-width: 750px) {
  .p-medical__flow .item:nth-of-type(7) {
    margin-top: 34px;
  }
}
.p-medical__flow .item:nth-of-type(8) {
  margin-top: 47px;
}
@media screen and (max-width: 750px) {
  .p-medical__flow .item:nth-of-type(8) {
    margin-top: 34px;
  }
}
.p-medical__flow .item:nth-of-type(9) {
  margin-top: 47px;
}
@media screen and (max-width: 750px) {
  .p-medical__flow .item:nth-of-type(9) {
    margin-top: 34px;
  }
}
.p-medical__flow .step {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 86px;
          flex: 0 0 86px;
  max-height: 86px;
  border: 1px solid #84204D;
  border-radius: 4px;
  background-color: #FFF;
  padding: 10px 0 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 750px) {
  .p-medical__flow .step {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50px;
            flex: 0 0 50px;
    max-height: 50px;
    padding: 7px 0 0;
  }
}
.p-medical__flow .step .text {
  font-family: "Libre Caslon Text", serif;
  font-size: 20px;
  font-weight: 400;
  color: #84204D;
  line-height: 1;
}
@media screen and (max-width: 750px) {
  .p-medical__flow .step .text {
    font-size: 12px;
  }
}
.p-medical__flow .step .number {
  font-family: "Libre Caslon Text", serif;
  color: #84204D;
  font-size: 40px;
  font-weight: 400;
  line-height: 1.225;
}
@media screen and (max-width: 750px) {
  .p-medical__flow .step .number {
    font-size: 24px;
  }
}
.p-medical__flow .body {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
.p-medical__flow .title {
  color: #84204D;
  font-size: 24px;
  line-height: 1.4166666667;
  font-weight: 700;
}
@media screen and (max-width: 750px) {
  .p-medical__flow .title {
    font-size: 16px;
    line-height: 1.4375;
  }
}
.p-medical__flow .desc {
  margin-top: 8px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4375;
}
@media screen and (max-width: 750px) {
  .p-medical__flow .desc {
    margin-top: 4px;
    font-size: 14px;
    line-height: 1.6666666667;
  }
}

.p-medical__flow-inner {
  max-width: 990px;
  margin-inline: auto;
  padding: 0 15px;
}

/* Effect */
.p-medical__effect {
  padding: 80px 0 0;
}
@media screen and (max-width: 750px) {
  .p-medical__effect {
    padding: 40px 0 0;
  }
}
.p-medical__effect .contents {
  margin-top: 32px;
  background-color: #FFF;
}
@media screen and (max-width: 750px) {
  .p-medical__effect .contents {
    margin-top: 16px;
  }
}
.p-medical__effect .content {
  max-width: 820px;
  margin-inline: auto;
  padding: 37px 0 38px;
}
@media screen and (max-width: 750px) {
  .p-medical__effect .content {
    padding: 12px 0 12.5px;
  }
}
.p-medical__effect .top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px;
  padding: 0 14px;
}
@media screen and (max-width: 900px) {
  .p-medical__effect .top {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: 16px;
  }
}
.p-medical__effect .top .top-photo {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 388px;
          flex: 0 0 388px;
}
@media screen and (max-width: 900px) {
  .p-medical__effect .top .top-photo {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
  }
}
.p-medical__effect .top .top-photo img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-medical__effect .top .top-body {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
@media screen and (max-width: 900px) {
  .p-medical__effect .top .top-body {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
    width: 100%;
  }
}
.p-medical__effect .top .top-list-item {
  font-size: 16px;
  font-weight: 400;
  line-height: 2.25;
}
@media screen and (max-width: 750px) {
  .p-medical__effect .top .top-list-item {
    font-size: 14px;
    line-height: 1.5714285714;
  }
}
.p-medical__effect .main {
  margin-top: 43px;
  padding: 0 10.5px;
}
@media screen and (max-width: 750px) {
  .p-medical__effect .main {
    margin-top: 23.5px;
  }
}
.p-medical__effect .main .main-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -webkit-column-gap: 24px;
     -moz-column-gap: 24px;
          column-gap: 24px;
  row-gap: 31px;
}
@media screen and (max-width: 750px) {
  .p-medical__effect .main .main-list {
    -webkit-column-gap: 8.5px;
       -moz-column-gap: 8.5px;
            column-gap: 8.5px;
    row-gap: 16px;
  }
}
.p-medical__effect .main .main-list-item img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-medical__effect-inner {
  max-width: 990px;
  margin-inline: auto;
  padding: 0 15px;
}

.p-medical__effect-lead {
  margin-top: 48px;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .p-medical__effect-lead {
    margin-top: 24px;
  }
}

.p-medical__effect-lead-text {
  font-size: 20px;
  line-height: 2;
  font-weight: 400;
}
@media screen and (max-width: 750px) {
  .p-medical__effect-lead-text {
    font-size: 15px;
    line-height: 1.4666666667;
  }
}

/* Bottom */
.p-medical__bottom {
  padding: 48px 0;
  background-image: url(../img/medical/bottom-bg.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
@media screen and (max-width: 750px) {
  .p-medical__bottom {
    padding: 36px 0;
    background-image: url(../img/medical/bottom-bg-sp.webp);
  }
}
.p-medical__bottom .content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 750px) {
  .p-medical__bottom .content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 20px;
  }
}
.p-medical__bottom .photo {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 479px;
          flex: 0 0 479px;
}
@media screen and (max-width: 750px) {
  .p-medical__bottom .photo {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
  }
}
.p-medical__bottom .photo img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-medical__bottom .body {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
@media screen and (max-width: 750px) {
  .p-medical__bottom .body {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
  }
}
.p-medical__bottom .text {
  text-align: center;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.6666666667;
}
@media screen and (max-width: 750px) {
  .p-medical__bottom .text {
    font-size: 16px;
    line-height: 2;
  }
}

.p-medical__bottom-inner {
  max-width: 988px;
  margin-inline: auto;
  padding: 0 15px;
}

/* object > component > menu
--------------------------------------------- */
.p-menu {
  padding: 80px 0 80px;
  background-color: #F3EDED;
  overflow-x: hidden;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-menu {
    padding: 40px 0 40px;
  }
}
.p-menu::before, .p-menu::after {
  content: "";
  position: absolute;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
@media screen and (max-width: 750px) {
  .p-menu::before, .p-menu::after {
    content: none;
  }
}
.p-menu::before {
  background-image: url(../img/menu/menu-bg01.webp);
  width: 442px;
  height: 372px;
  top: 0;
  right: 0;
}
.p-menu::after {
  background-image: url(../img/menu/menu-bg02.webp);
  width: 754px;
  height: 897px;
  top: 70px;
  left: -143px;
}

.p-menu__breadcrumb {
  background-color: #F3EDED;
}

/* Course */
.p-menu__course-lead {
  margin-top: 48px;
}
@media screen and (max-width: 750px) {
  .p-menu__course-lead {
    margin-top: 24px;
  }
}

.p-menu__course-lead-text {
  text-align: center;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 750px) {
  .p-menu__course-lead-text {
    font-size: 15px;
    line-height: 1.4666666667;
  }
}

.p-menu__course-inner {
  max-width: 990px;
  margin-inline: auto;
  padding: 0 15px;
  position: relative;
  z-index: 2;
}

.p-menu__course-content {
  margin-top: 45px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 32px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-menu__course-content {
    margin-top: 24px;
    gap: 16px;
  }
}
.p-menu__course-content.--body {
  margin-top: 77px;
}
@media screen and (max-width: 750px) {
  .p-menu__course-content.--body {
    margin-top: 40px;
  }
}
.p-menu__course-content.--facial {
  margin-top: 77px;
}
@media screen and (max-width: 750px) {
  .p-menu__course-content.--facial {
    margin-top: 40px;
  }
}
.p-menu__course-content.--menu60 {
  margin-top: 79px;
}
@media screen and (max-width: 750px) {
  .p-menu__course-content.--menu60 {
    margin-top: 44px;
  }
}
.p-menu__course-content.--parts {
  margin-top: 77px;
}
@media screen and (max-width: 750px) {
  .p-menu__course-content.--parts {
    margin-top: 44px;
  }
}
.p-menu__course-content.--ayurveda {
  margin-top: 77px;
}
@media screen and (max-width: 750px) {
  .p-menu__course-content.--ayurveda {
    margin-top: 44px;
  }
}
.p-menu__course-content.--set {
  margin-top: 77px;
}
@media screen and (max-width: 750px) {
  .p-menu__course-content.--set {
    margin-top: 40px;
  }
}
.p-menu__course-content.--yomogi {
  margin-top: 77px;
}
@media screen and (max-width: 750px) {
  .p-menu__course-content.--yomogi {
    margin-top: 40px;
  }
}

/* Flow */
.p-menu__flow {
  padding: 80px 0 0;
}
@media screen and (max-width: 750px) {
  .p-menu__flow {
    padding: 40px 0 0;
  }
}

.p-menu__flow-inner {
  max-width: 888px;
  margin-inline: auto;
  padding: 0 15px;
}

.p-menu__flow-content {
  margin-top: 48px;
}
@media screen and (max-width: 750px) {
  .p-menu__flow-content {
    margin-top: 24px;
  }
}
.p-menu__flow-content .items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 36px;
}
.p-menu__flow-content .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 32px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-menu__flow-content .item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 12px;
    padding: 0 11px;
  }
}
.p-menu__flow-content .item:nth-of-type(2)::after, .p-menu__flow-content .item:nth-of-type(3)::after {
  content: "";
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  top: -32px;
  background-image: url(../img/menu/flow-triangle-down.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  display: inline-block;
  width: 30px;
  height: 24px;
}
@media screen and (max-width: 750px) {
  .p-menu__flow-content .item:nth-of-type(2)::after, .p-menu__flow-content .item:nth-of-type(3)::after {
    top: -24px;
    width: 15px;
    height: 12px;
  }
}
.p-menu__flow-content .photo {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 180px;
          flex: 0 0 180px;
}
@media screen and (max-width: 750px) {
  .p-menu__flow-content .photo {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
    width: 90px;
    margin-inline: auto;
  }
}
.p-menu__flow-content .photo img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-menu__flow-content .body {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  margin-top: 9px;
}
@media screen and (max-width: 750px) {
  .p-menu__flow-content .body {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
    margin-top: 0;
  }
}
.p-menu__flow-content .header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 24px;
}
@media screen and (max-width: 750px) {
  .p-menu__flow-content .header {
    gap: 12px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.p-menu__flow-content .header .step {
  border: 1px solid #84204D;
  border-radius: 4px;
  width: 56px;
  height: 56px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 8px 4px;
}
@media screen and (max-width: 750px) {
  .p-menu__flow-content .header .step {
    width: 40px;
    height: 40px;
    padding: 6px 2px;
  }
}
.p-menu__flow-content .header .en {
  text-align: center;
  color: #84204D;
  font-family: "Libre Caslon Text", serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.2142857143;
}
@media screen and (max-width: 750px) {
  .p-menu__flow-content .header .en {
    font-size: 10px;
  }
}
.p-menu__flow-content .header .number {
  text-align: center;
  color: #84204D;
  font-family: "Libre Caslon Text", serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 1;
}
@media screen and (max-width: 750px) {
  .p-menu__flow-content .header .number {
    font-size: 18px;
  }
}
.p-menu__flow-content .header .title {
  color: #84204D;
  font-size: 36px;
  font-weight: 700;
}
@media screen and (max-width: 750px) {
  .p-menu__flow-content .header .title {
    font-size: 24px;
    line-height: 1.4375;
  }
}
.p-menu__flow-content .textarea {
  margin-top: 16px;
}
.p-menu__flow-content .desc {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4375;
}
@media screen and (max-width: 750px) {
  .p-menu__flow-content .desc {
    font-size: 14px;
    line-height: 1.5714285714;
  }
}

/* object > component > faq
--------------------------------------------- */
.p-faq {
  padding: 80px 0 100px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-faq {
    padding: 40px 0 40px;
  }
}
.p-faq::before, .p-faq::after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  display: inline-block;
}
.p-faq::before {
  background-image: url(../img/faq/bg-top.webp);
  top: 28px;
  right: 0;
  width: 216px;
  height: 365px;
}
@media screen and (max-width: 750px) {
  .p-faq::before {
    background-image: url(../img/faq/bg-top-sp.webp);
    top: -8px;
    right: 0;
    width: 57.5px;
    height: 114.5px;
  }
}
.p-faq::after {
  background-image: url(../img/faq/bg-bottom.webp);
  left: 18px;
  bottom: 0;
  width: 303px;
  height: 452px;
}
@media screen and (max-width: 1240px) {
  .p-faq::after {
    content: none;
  }
}

.p-faq__content {
  margin-top: 48px;
}
@media screen and (max-width: 750px) {
  .p-faq__content {
    margin-top: 24px;
  }
}

.p-faq__inner {
  max-width: 830px;
  margin-inline: auto;
  padding: 0 15px;
}

.p-faq__section.--01 .p-faq__list-desc {
  background-color: #FAF4EF;
}
.p-faq__section.--01.--yomogi .p-faq__list-desc {
  background-color: #F2FAEF;
}
.p-faq__section.--02 {
  margin-top: 46px;
}
@media screen and (max-width: 750px) {
  .p-faq__section.--02 {
    margin-top: 40px;
  }
}
.p-faq__section.--02 .p-faq__list-desc {
  background-color: #FFEBEB;
}
.p-faq__section.--03 {
  margin-top: 42px;
}
@media screen and (max-width: 750px) {
  .p-faq__section.--03 {
    margin-top: 36px;
  }
}
.p-faq__section.--03 .p-faq__list-desc {
  background-color: #F2FBE5;
}

.p-faq__section-item {
  margin-top: 40px;
}
@media screen and (max-width: 750px) {
  .p-faq__section-item {
    margin-top: 20px;
  }
}
.p-faq__section-item.--yomogi {
  margin-top: 54px;
}
@media screen and (max-width: 750px) {
  .p-faq__section-item.--yomogi {
    margin-top: 28px;
  }
}

.p-faq__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 32px;
}
@media screen and (max-width: 750px) {
  .p-faq__list {
    gap: 24px;
  }
}

.p-faq__list-term {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  padding-left: 24px;
}
@media screen and (max-width: 750px) {
  .p-faq__list-term {
    padding-left: 12px;
    gap: 8px;
  }
}

.p-faq__list-q {
  font-family: "Libre Caslon Text", serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.25;
}
@media screen and (max-width: 750px) {
  .p-faq__list-q {
    font-size: 20px;
    line-height: 1.2916666667;
  }
}

.p-faq__list-q-title {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.45;
}
@media screen and (max-width: 750px) {
  .p-faq__list-q-title {
    font-size: 16px;
    line-height: 1.4375;
  }
}

.p-faq__list-desc {
  margin-top: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding: 20px 24px;
}
@media screen and (max-width: 750px) {
  .p-faq__list-desc {
    margin-top: 12px;
    gap: 8px;
    padding: 12px 24px 12px 12px;
  }
}

.p-faq__list-a {
  font-family: "Libre Caslon Text", serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.25;
}
@media screen and (max-width: 750px) {
  .p-faq__list-a {
    font-size: 20px;
    line-height: 1.225;
  }
}

.p-faq__list-a-text {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.75;
}
@media screen and (max-width: 750px) {
  .p-faq__list-a-text {
    font-size: 14px;
    line-height: 1.5714285714;
  }
}

/* object > component > access
--------------------------------------------- */
.p-access {
  padding: 71px 0 80px;
  overflow-x: hidden;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-access {
    padding: 40px 0 39px;
  }
}
.p-access::before, .p-access::after {
  content: "";
  position: absolute;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.p-access::before {
  background-image: url(../img/access/top-bg.webp);
  top: -27px;
  right: -70px;
  width: 424px;
  height: 379px;
}
@media screen and (max-width: 1040px) {
  .p-access::before {
    background-image: url(../img/access/top-bg-sp.webp);
    top: -20px;
    right: -20px;
    width: 224px;
    height: 179px;
  }
}
@media screen and (max-width: 750px) {
  .p-access::before {
    width: 146px;
    height: 128px;
  }
}
.p-access::after {
  background-image: url(../img/access/bottom-bg.webp);
  left: 0;
  bottom: 77px;
  width: 279px;
  height: 342px;
}
@media screen and (max-width: 1040px) {
  .p-access::after {
    background-image: url(../img/access/bottom-bg-sp.webp);
    width: 179px;
    height: 242px;
    bottom: 0;
    left: -16px;
  }
}
@media screen and (max-width: 750px) {
  .p-access::after {
    width: 96px;
    height: 85px;
  }
}

/* Store */
.p-access__store {
  padding: 0 0 80px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 750px) {
  .p-access__store {
    padding: 0 0 60px;
  }
}

.p-access__store-inner {
  max-width: 830px;
  margin-inline: auto;
  padding: 0 15px;
}

.p-access__store-content {
  margin-top: 48px;
}
@media screen and (max-width: 750px) {
  .p-access__store-content {
    margin-top: 26px;
  }
}

.p-access__store-photo img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-access__store-info {
  margin-top: 48px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 16px;
}
@media screen and (max-width: 750px) {
  .p-access__store-info {
    margin-top: 28px;
    gap: 12px;
  }
}

.p-access__store-info-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-bottom: 15px;
  border-bottom: 1px solid #C5B2B4;
}

.p-access__store-info-term {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 226px;
          flex: 0 0 226px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4444444444;
}
@media screen and (max-width: 750px) {
  .p-access__store-info-term {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 75.5px;
            flex: 0 0 75.5px;
    font-size: 14px;
    line-height: 1.4285714286;
  }
}

.p-access__store-info-desc {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.4444444444;
}
@media screen and (max-width: 750px) {
  .p-access__store-info-desc {
    font-size: 14px;
    line-height: 1.4285714286;
  }
}

/* Location */
.p-access__location {
  padding: 80px 0 0;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 750px) {
  .p-access__location {
    padding: 60px 0 0;
  }
}

.p-access__location-inner {
  max-width: 830px;
  margin-inline: auto;
  padding: 0 15px;
}

.p-access__location-content {
  margin-top: 48px;
}
@media screen and (max-width: 750px) {
  .p-access__location-content {
    margin-top: 24px;
  }
}

.p-access__location-map-wrap {
  aspect-ratio: 800/400;
}
@media screen and (max-width: 750px) {
  .p-access__location-map-wrap {
    aspect-ratio: 690/344;
  }
}
.p-access__location-map-wrap iframe {
  width: 100%;
  height: 100%;
}

.p-access__location-link-wrap {
  margin-top: 16px;
  text-align: right;
}
.p-access__location-link-wrap .btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 8px;
}
@media screen and (max-width: 750px) {
  .p-access__location-link-wrap .btn {
    gap: 10px;
  }
}
@media (any-hover: hover) {
  .p-access__location-link-wrap .btn:hover .btn-text {
    opacity: 0.7;
  }
  .p-access__location-link-wrap .btn:hover .circle {
    -webkit-transform: scale(0.75);
            transform: scale(0.75);
  }
}
.p-access__location-link-wrap .btn-text {
  font-size: 14px;
  font-weight: 600;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.4285714286;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
@media screen and (max-width: 750px) {
  .p-access__location-link-wrap .btn-text {
    font-size: 13px;
    line-height: 1.1923076923;
  }
}
.p-access__location-link-wrap .circle {
  width: 40px;
  height: 40px;
  background-color: #FFF;
  border-radius: 50%;
  position: relative;
  -webkit-transition: -webkit-transform 0.4s ease;
  transition: -webkit-transform 0.4s ease;
  transition: transform 0.4s ease;
  transition: transform 0.4s ease, -webkit-transform 0.4s ease;
}
@media screen and (max-width: 750px) {
  .p-access__location-link-wrap .circle {
    width: 25px;
    height: 25px;
  }
}
.p-access__location-link-wrap .circle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background-image: url(../img/common/icon-triangle-right-main.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  display: inline-block;
  width: 11px;
  height: 9px;
}
@media screen and (max-width: 750px) {
  .p-access__location-link-wrap .circle::after {
    width: 7px;
    height: 6px;
  }
}
.p-access__location-link-wrap .circle.--dark {
  background-color: #2B080B;
}
.p-access__location-link-wrap .circle.--dark::after {
  background-image: url(../img/common/icon-triangle-right-w.webp);
}

.p-access__location-list {
  margin-top: 24px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
}
@media screen and (max-width: 750px) {
  .p-access__location-list {
    margin-top: 34px;
    grid-template-columns: 1fr;
  }
}

.p-access__location-title {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.45;
  padding-bottom: 8px;
  border-bottom: 1px solid #C5B2B4;
}
@media screen and (max-width: 750px) {
  .p-access__location-title {
    font-size: 18px;
    line-height: 1.4444444444;
  }
}

.p-access__location-body {
  margin-top: 24px;
}
@media screen and (max-width: 750px) {
  .p-access__location-body {
    margin-top: 16px;
  }
}

.p-access__location-textarea {
  margin-top: 16px;
}
@media screen and (max-width: 750px) {
  .p-access__location-textarea {
    margin-top: 12px;
  }
}

.p-access__location-text {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4375;
}
@media screen and (max-width: 750px) {
  .p-access__location-text {
    font-size: 15px;
    line-height: 1.7333333333;
  }
}

/* object > component > privacy policy
--------------------------------------------- */
.p-privacy {
  padding: 234px 0 80px;
}
.p-privacy__content {
  margin-top: 48px;
}

.p-privacy__inner {
  max-width: 830px;
  margin-inline: auto;
  padding: 0 15px;
}

.p-privacy__section + .p-privacy__section {
  margin-top: 1em;
}

.p-privacy__title,
.p-privacy__text {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.75;
}

.p-privacy__title + .p-privacy__text {
  margin-top: 1em;
}

.p-privacy__text + .p-privacy__text {
  margin-top: 1em;
}

/* object > component > single
--------------------------------------------- */
.p-single {
  padding: 98px 0 80px;
}
@media screen and (max-width: 750px) {
  .p-single {
    padding: 40px 0 40px;
  }
}

.p-single__breadcrumb {
  padding-top: 118px;
}
@media screen and (max-width: 750px) {
  .p-single__breadcrumb {
    padding-top: 62px;
  }
}

.p-single__contents {
  margin-top: 40px;
}
@media screen and (max-width: 750px) {
  .p-single__contents {
    margin-top: 21px;
  }
}

.p-single__inner {
  max-width: 818px;
  margin-inline: auto;
  padding: 0 15px;
}

.p-single__title {
  font-size: 24px;
  font-weight: 600;
  line-height: 1.8;
}
@media screen and (max-width: 750px) {
  .p-single__title {
    font-size: 16px;
  }
}

.p-single__time {
  display: block;
  margin-top: 7px;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.56px;
  line-height: 1.2142857143;
}
@media screen and (max-width: 750px) {
  .p-single__time {
    margin-top: 14px;
    font-size: 13px;
    line-height: 1.1923076923;
  }
}

.p-single__thumbnail {
  margin-top: 32px;
}
@media screen and (max-width: 750px) {
  .p-single__thumbnail {
    margin-top: 31px;
  }
}
.p-single__thumbnail img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-single__content {
  margin-top: 16px;
}
@media screen and (max-width: 750px) {
  .p-single__content {
    margin-top: 24px;
  }
}
.p-single__content h2 {
  font-size: 24px;
  font-weight: 600;
  line-height: 1.8;
}
@media screen and (max-width: 750px) {
  .p-single__content h2 {
    font-size: 18px;
    line-height: 1.4444444444;
  }
}
.p-single__content h2 + p {
  margin-top: 1em;
}
.p-single__content p {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 750px) {
  .p-single__content p {
    line-height: 1.5714285714;
  }
}
.p-single__content p + p {
  margin-top: 1em;
}

.p-single__pager {
  margin-top: 56px;
  display: grid;
  grid-template-columns: repeat(3, auto);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 24px;
     -moz-column-gap: 24px;
          column-gap: 24px;
}
@media screen and (max-width: 750px) {
  .p-single__pager {
    margin-top: 40px;
    -webkit-column-gap: 8px;
       -moz-column-gap: 8px;
            column-gap: 8px;
  }
}

.p-pager__prev {
  grid-column: 1/2;
}

.p-single__home {
  grid-column: 2/3;
}

.p-pager__next {
  grid-column: 3/4;
}

.p-single__pager-link {
  display: inline-grid;
  place-items: center;
  width: 161px;
  height: 50px;
  background-color: transparent;
  padding: 6px 10px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  line-height: 1.9;
  font-weight: 500;
  -webkit-transition: background-color 0.4s ease, color 0.4s ease;
  transition: background-color 0.4s ease, color 0.4s ease;
}
@media screen and (max-width: 750px) {
  .p-single__pager-link {
    font-size: 13px;
    width: 102px;
    height: 34.5px;
  }
}
@media (any-hover: hover) {
  .p-single__pager-link:hover {
    background-color: #2B080B;
    color: #FFF;
  }
}
.p-single__pager-link.--invalid {
  color: #777;
}
@media (any-hover: hover) {
  .p-single__pager-link.--invalid:hover {
    background-color: transparent;
    color: #777;
  }
}

.p-single__home-link {
  display: inline-grid;
  place-items: center;
  width: 211px;
  height: 50px;
  padding: 10.5px 10px;
  background-color: #FFF;
  border: 1px solid #2B080B;
  font-size: 20px;
  font-weight: 600;
  line-height: 1;
  font-family: "Noto Sans JP", sans-serif;
  -webkit-transition: background-color 0.4s ease, color 0.4s ease;
  transition: background-color 0.4s ease, color 0.4s ease;
}
@media screen and (max-width: 750px) {
  .p-single__home-link {
    width: 118.5px;
    height: 34.5px;
    font-size: 13px;
  }
}
@media (any-hover: hover) {
  .p-single__home-link:hover {
    background-color: #2B080B;
    color: #FFF;
  }
}
/* object > component > home
--------------------------------------------- */
.p-home {
  padding: 64px 0 288px;
}
@media screen and (max-width: 750px) {
  .p-home {
    padding: 40px 0 40px;
  }
}

.p-home__breadcrumb {
  padding: 118px 0 0;
}
@media screen and (max-width: 750px) {
  .p-home__breadcrumb {
    padding: 62px 0 0;
  }
}

.p-home__content {
  margin-top: 64px;
}
@media screen and (max-width: 750px) {
  .p-home__content {
    margin-top: 40px;
  }
}

.p-home__inner {
  max-width: 1032px;
  margin-inline: auto;
  padding: 0 15px;
}

.p-home__article {
  display: block;
  background-color: #FFF;
  padding: 32px 24px;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
  position: relative;
}
@media (any-hover: hover) {
  .p-home__article:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 750px) {
  .p-home__article {
    padding: 20px 27px;
  }
}
.p-home__article::after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 18px;
  background-image: url(../img/news/triangle-right.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  display: inline-block;
  width: 6px;
  height: 6px;
}
@media screen and (max-width: 750px) {
  .p-home__article::after {
    content: none;
  }
}

.p-home__article-inner {
  max-width: 960px;
  margin-inline: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 24px;
}
@media screen and (max-width: 750px) {
  .p-home__article-inner {
    gap: 8px;
  }
}

.p-home__thumbnail {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 160px;
          flex: 0 0 160px;
  max-height: 120px;
}
@media screen and (max-width: 750px) {
  .p-home__thumbnail {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 110px;
            flex: 0 0 110px;
    max-height: 104px;
    aspect-ratio: 110/104;
  }
}
.p-home__thumbnail img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-home__body {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}

.p-home__time {
  font-family: "Libre Caslon Text", serif;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.56px;
  line-height: 1.4285714286;
}
@media screen and (max-width: 750px) {
  .p-home__time {
    font-size: 12px;
    line-height: 1;
    letter-spacing: 0.96px;
  }
}

.p-home__title {
  margin-top: 8px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.8;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  overflow: hidden;
}
@media screen and (max-width: 750px) {
  .p-home__title {
    margin-top: 11px;
    font-size: 14px;
  }
}

.p-home__text {
  margin-top: 8px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.8;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
@media screen and (max-width: 750px) {
  .p-home__text {
    display: none;
  }
}

.p-home__pagination {
  margin-top: 40px;
}
@media screen and (max-width: 750px) {
  .p-home__pagination {
    margin-top: 32px;
  }
}

/* object > component > column
--------------------------------------------- */
.p-column {
  padding: 55px 0 80px;
  background-color: #F3EDED;
  overflow-x: hidden;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-column {
    padding: 40px 0 41px;
  }
}
.p-column::before, .p-column::after {
  content: "";
  position: absolute;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.p-column::before {
  background-image: url(../img/column/archive-bg01.webp);
  width: 474px;
  height: 379px;
  top: -95px;
  right: -20px;
}
@media screen and (max-width: 750px) {
  .p-column::before {
    background-image: url(../img/column/archive-bg01-sp.webp);
    top: -40px;
    right: -12px;
    width: 123px;
    height: 109px;
  }
}
.p-column::after {
  background-image: url(../img/column/archive-bg02.webp);
  width: 798px;
  height: 564px;
  left: -167px;
  top: 71px;
}
@media screen and (max-width: 750px) {
  .p-column::after {
    background-image: url(../img/column/archive-bg02-sp.webp);
    width: 244px;
    height: 174px;
    left: 0;
    top: 0;
  }
}

.p-column__breadcrumb {
  background-color: #F3EDED;
}

.p-column__lead {
  margin-top: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 24px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 750px) {
  .p-column__lead {
    margin-top: 8px;
    gap: 16px;
  }
}

.p-column__lead-photo {
  width: 139px;
}
@media screen and (max-width: 750px) {
  .p-column__lead-photo {
    width: 83px;
  }
}
.p-column__lead-photo img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-column__lead-text {
  text-align: center;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.6;
}
@media screen and (max-width: 750px) {
  .p-column__lead-text {
    font-size: 15px;
    line-height: 1.4666666667;
  }
}

.p-column__inner {
  max-width: 992px;
  margin-inline: auto;
  padding: 0 15px;
  position: relative;
  z-index: 2;
}

.p-column__wrap {
  margin-top: 24px;
  display: grid;
  grid-template-columns: 1fr 224px;
  grid-template-rows: auto auto;
  -webkit-column-gap: 22px;
     -moz-column-gap: 22px;
          column-gap: 22px;
}
@media screen and (max-width: 750px) {
  .p-column__wrap {
    margin-top: 26px;
    grid-template-columns: 1fr;
    grid-template-rows: initial;
    -webkit-column-gap: 0;
       -moz-column-gap: 0;
            column-gap: 0;
  }
}

.p-column__main {
  grid-column: 1/2;
  grid-row: 1/2;
}
@media screen and (max-width: 750px) {
  .p-column__main {
    grid-column: initial;
    grid-row: initial;
  }
}

.p-column__side {
  grid-column: 2/3;
  grid-row: 1/2;
}
@media screen and (max-width: 750px) {
  .p-column__side {
    margin-top: 41px;
    grid-column: initial;
    grid-row: initial;
  }
}

.p-column__pagination {
  margin-top: 60px;
  grid-column: 1/3;
  grid-row: 2/3;
}
@media screen and (max-width: 750px) {
  .p-column__pagination {
    margin-top: 35px;
    grid-column: initial;
    grid-row: initial;
  }
}

.p-column__articles {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -webkit-column-gap: 24px;
     -moz-column-gap: 24px;
          column-gap: 24px;
  row-gap: 24px;
}
@media screen and (max-width: 750px) {
  .p-column__articles {
    grid-template-columns: 1fr;
    row-gap: 16px;
    -webkit-column-gap: 0;
       -moz-column-gap: 0;
            column-gap: 0;
  }
}

.p-column__article {
  -webkit-filter: drop-shadow(3px 4px 10px rgba(0, 0, 0, 0.1));
          filter: drop-shadow(3px 4px 10px rgba(0, 0, 0, 0.1));
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
@media (any-hover: hover) {
  .p-column__article:hover {
    opacity: 0.7;
  }
}

.p-column__thumbnail {
  aspect-ratio: 346/192;
  max-height: 192px;
}
@media screen and (max-width: 750px) {
  .p-column__thumbnail {
    aspect-ratio: 345/190;
  }
}
.p-column__thumbnail img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-column__body {
  min-height: 180px;
  padding: 16px 24px 24px;
  background-color: #FFF;
}
@media screen and (max-width: 750px) {
  .p-column__body {
    min-height: 185px;
    padding: 16px 20px 28px;
  }
}

.p-column__meta {
  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;
}

.p-column__tag {
  color: #FFF;
  background-color: #84204D;
  padding: 4.5px 8px;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.1666666667;
}

.p-column__time {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.1666666667;
}

.p-column__title {
  margin-top: 8px;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.72px;
  line-height: 1.4444444444;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  letter-spacing: 0.72px;
  overflow: hidden;
}
@media screen and (max-width: 750px) {
  .p-column__title {
    margin-top: 12px;
    line-height: 1.4444444444;
    letter-spacing: 1.44px;
  }
}

/* sidebar */
.p-column__side-items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 29px;
}
@media screen and (max-width: 750px) {
  .p-column__side-items {
    gap: 32px;
  }
}

.p-column__cat {
  background-color: #FFF;
}

.p-column__cat-item:not(:first-of-type) {
  border-top: 0.5px dashed #333;
}

.p-column__cat-link {
  display: block;
  padding: 16px 10px 16px 18px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.2;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
@media screen and (max-width: 750px) {
  .p-column__cat-link {
    padding: 12px 10px 12px 12px;
    font-size: 15px;
    line-height: 1.2;
  }
}
@media (any-hover: hover) {
  .p-column__cat-link:hover {
    opacity: 0.7;
  }
}

.p-column__cat-title {
  text-align: center;
  padding: 10px 10px;
  background-color: #83204E;
  color: #FFF;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  line-height: 1.45;
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  .p-column__cat-title {
    font-size: 16px;
    padding: 12.5px 10px 12px;
    line-height: 1.4375;
  }
}

.p-column__blog-link {
  display: block;
  padding: 44px 10px 43px;
  background-image: url(../img/column/blog-link.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
@media (any-hover: hover) {
  .p-column__blog-link:hover {
    opacity: 0.7;
  }
}

.p-column__blog-box {
  text-align: center;
}

.p-column__blog-title {
  color: #FFF;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.45;
}

.p-column__blog-sub-text {
  margin-top: 10px;
  color: #FFF;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.4666666667;
}

/* object > component > single column
--------------------------------------------- */
.p-single-column {
  padding: 97px 0 80px;
  background-color: #F3EDED;
  position: relative;
  overflow-x: hidden;
}
@media screen and (max-width: 750px) {
  .p-single-column {
    padding: 59px 0 40px;
  }
}
.p-single-column::before, .p-single-column::after {
  content: "";
  position: absolute;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.p-single-column::before {
  background-image: url(../img/column/single-bg01.webp);
  width: 404px;
  height: 338px;
  top: -49px;
  right: -18px;
}
@media screen and (max-width: 750px) {
  .p-single-column::before {
    background-image: url(../img/column/single-bg01-sp.webp);
    width: 125px;
    height: 109px;
    top: -35px;
    right: -5px;
  }
}
.p-single-column::after {
  background-image: url(../img/column/single-bg02.webp);
  width: 643px;
  height: 564px;
  left: -155px;
  top: 82px;
}
@media screen and (max-width: 750px) {
  .p-single-column::after {
    background-image: url(../img/column/single-bg02-sp.webp);
    width: 136px;
    height: 120px;
    top: 0px;
    left: 0px;
  }
}

.p-single-column__breadcrumb {
  padding-top: 118px;
}
@media screen and (max-width: 750px) {
  .p-single-column__breadcrumb {
    padding-top: 62px;
  }
}

.p-single-column__contents {
  margin-top: 50px;
  background-color: #FFF;
  padding: 64px 15px 80px;
}
@media screen and (max-width: 750px) {
  .p-single-column__contents {
    margin-top: 24px;
    padding: 32px 15px 32px;
  }
}

.p-single-column__inner {
  max-width: 990px;
  margin-inline: auto;
  padding: 0 15px;
  position: relative;
  z-index: 2;
}

.p-single-column__container {
  max-width: 800px;
  margin-inline: auto;
}

.p-single-column__heading {
  font-size: 24px;
  font-weight: 600;
  line-height: 1.8;
  color: #000;
  border-bottom: 1px solid #000;
}
@media screen and (max-width: 750px) {
  .p-single-column__heading {
    font-size: 16px;
  }
}

.p-single-column__meta {
  margin-top: 14px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
}
@media screen and (max-width: 750px) {
  .p-single-column__meta {
    margin-top: 8.5px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 0;
  }
}

.p-single-column__time {
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.56px;
  line-height: 1.2142857143;
}

.p-single-column__tag {
  background-color: #83204E;
  font-family: "Noto Sans JP", sans-serif;
  color: #FFF;
  text-align: center;
  padding: 4px 8px;
  font-size: 14px;
  letter-spacing: 0.56px;
  line-height: 1;
}

.p-single-column__thumbnail {
  margin-top: 14px;
}
.p-single-column__thumbnail img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-single-column__content {
  margin-top: 16px;
}
@media screen and (max-width: 750px) {
  .p-single-column__content {
    margin-top: 24px;
  }
}
.p-single-column__content h2 {
  font-size: 24px;
  line-height: 1.8;
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  .p-single-column__content h2 {
    font-size: 18px;
  }
}
.p-single-column__content h2 + p {
  margin-top: 16px;
}
@media screen and (max-width: 750px) {
  .p-single-column__content h2 + p {
    margin-top: 12px;
  }
}
.p-single-column__content p {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.8;
}
.p-single-column__content p + p {
  margin-top: 1em;
}

/* object > component > full body
--------------------------------------------- */
.p-body {
  padding: 80px 0 80px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-body {
    padding: 40px 0 40px;
  }
}
.p-body::before, .p-body::after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  display: inline-block;
}
.p-body::before {
  background-image: url(../img/body/top-bg01.webp);
  width: 501px;
  height: 521px;
  top: -60px;
  left: 0;
}
@media screen and (max-width: 750px) {
  .p-body::before {
    background-image: url(../img/body/top-bg01-sp.webp);
    width: 165px;
    height: 171px;
    top: -40px;
  }
}
.p-body::after {
  background-image: url(../img/body/top-bg02.webp);
  width: 307px;
  height: 295px;
  top: 570px;
  right: 31px;
}
@media screen and (max-width: 750px) {
  .p-body::after {
    background-image: url(../img/body/top-bg02-sp.webp);
    width: 106px;
    height: 102px;
    top: 650px;
    right: 15px;
  }
}

.p-body__breadcrumb {
  padding-top: 118px;
}
@media screen and (max-width: 750px) {
  .p-body__breadcrumb {
    padding-top: 62px;
  }
}

.p-body__inner {
  max-width: 990px;
  margin-inline: auto;
  padding: 0 15px;
  position: relative;
  z-index: 2;
}

.p-body__contents {
  margin-top: 48px;
}
@media screen and (max-width: 750px) {
  .p-body__contents {
    margin-top: 24px;
  }
}

.p-body__btn-wrap {
  margin-top: 8px;
  text-align: right;
}

/* object > component > parts
--------------------------------------------- */
.p-parts {
  padding: 80px 0 80px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-parts {
    padding: 40px 0 40px;
  }
}
.p-parts::before, .p-parts::after {
  content: "";
  position: absolute;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.p-parts::before {
  background-image: url(../img/parts/top-bg01.webp);
  width: 501.5px;
  height: 522.5px;
  left: 16px;
  top: -43px;
}
@media screen and (max-width: 750px) {
  .p-parts::before {
    background-image: url(../img/parts/top-bg01-sp.webp);
    top: -24px;
    left: 0;
    width: 165px;
    height: 171px;
  }
}
.p-parts::after {
  background-image: url(../img/parts/top-bg02.webp);
  top: 562px;
  right: 15px;
  width: 307px;
  height: 295px;
}
@media screen and (max-width: 750px) {
  .p-parts::after {
    background-image: url(../img/parts/top-bg02-sp.webp);
    top: 630px;
    right: 6px;
    width: 107px;
    height: 102px;
  }
}

.p-parts__breadcrumb {
  padding-top: 118px;
}
@media screen and (max-width: 750px) {
  .p-parts__breadcrumb {
    padding-top: 62px;
  }
}

.p-parts__inner {
  max-width: 990px;
  margin-inline: auto;
  padding: 0 15px;
  position: relative;
  z-index: 2;
}

.p-parts__contents {
  margin-top: 48px;
}
@media screen and (max-width: 750px) {
  .p-parts__contents {
    margin-top: 24px;
  }
}

.p-parts__btn-wrap {
  margin-top: 21px;
  text-align: right;
}

/* object > component > facial
--------------------------------------------- */
.p-facial {
  padding: 80px 0 80px;
  position: relative;
  overflow-x: hidden;
}
@media screen and (max-width: 750px) {
  .p-facial {
    padding: 40px 0 40px;
  }
}
.p-facial::before, .p-facial::after {
  content: "";
  position: absolute;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.p-facial::before {
  background-image: url(../img/facial/top-bg01.webp);
  width: 501px;
  height: 522px;
  top: -43px;
  left: 3px;
}
@media screen and (max-width: 750px) {
  .p-facial::before {
    background-image: url(../img/facial/top-bg01-sp.webp);
    top: -20px;
    left: 0;
    width: 204px;
    height: 196px;
  }
}
.p-facial::after {
  background-image: url(../img/facial/top-bg02.webp);
  top: 560px;
  right: 0;
  width: 213px;
  height: 204px;
}
@media screen and (max-width: 750px) {
  .p-facial::after {
    background-image: url(../img/facial/top-bg02-sp.webp);
    top: 548px;
    right: -10px;
    width: 102px;
    height: 98px;
  }
}
.p-facial .p-menus-section + .p-facial .p-menus-section {
  margin-top: 80px;
}
@media screen and (max-width: 750px) {
  .p-facial .p-menus-section + .p-facial .p-menus-section {
    margin-top: 28px;
  }
}

.p-facial__breadcrumb {
  padding-top: 118px;
}
@media screen and (max-width: 750px) {
  .p-facial__breadcrumb {
    padding-top: 62px;
  }
}

.p-facial__inner {
  max-width: 990px;
  margin-inline: auto;
  padding: 0 15px;
  position: relative;
  z-index: 2;
}

.p-facial__contents {
  margin-top: 48px;
}
@media screen and (max-width: 750px) {
  .p-facial__contents {
    margin-top: 24px;
  }
}

.p-facial__btn-wrap {
  text-align: right;
  margin-top: 8px;
}

.p-facial__course {
  margin-top: 56px;
}
@media screen and (max-width: 750px) {
  .p-facial__course {
    margin-top: 24px;
  }
}

.p-facial__option {
  margin-top: 40px;
}
@media screen and (max-width: 750px) {
  .p-facial__option {
    margin-top: 20px;
  }
}

.p-facial__ticket {
  margin-top: 80px;
}
@media screen and (max-width: 750px) {
  .p-facial__ticket {
    margin-top: 29px;
  }
}

/* object > component > ayurveda
--------------------------------------------- */
.p-ayurveda {
  padding: 80px 0 80px;
  position: relative;
  overflow-x: hidden;
}
@media screen and (max-width: 750px) {
  .p-ayurveda {
    padding: 40px 0 40px;
  }
}
.p-ayurveda::before, .p-ayurveda::after {
  content: "";
  position: absolute;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.p-ayurveda::before {
  background-image: url(../img/ayurveda/top-bg01.webp);
  width: 501px;
  height: 522px;
  top: 11px;
  left: 0;
}
@media screen and (max-width: 750px) {
  .p-ayurveda::before {
    background-image: url(../img/ayurveda/top-bg01-sp.webp);
    top: -10px;
    left: -10px;
    width: 164px;
    height: 171px;
  }
}
.p-ayurveda::after {
  background-image: url(../img/ayurveda/top-bg02.webp);
  top: 624px;
  right: 0;
  width: 300px;
  height: 295px;
}
@media screen and (max-width: 750px) {
  .p-ayurveda::after {
    background-image: url(../img/ayurveda/top-bg02-sp.webp);
    top: 480px;
    right: 0;
    width: 102px;
    height: 98px;
  }
}

.p-ayurveda__breadcrumb {
  padding-top: 118px;
}
@media screen and (max-width: 750px) {
  .p-ayurveda__breadcrumb {
    padding-top: 62px;
  }
}

.p-ayurveda__inner {
  max-width: 990px;
  margin-inline: auto;
  padding: 0 15px;
  position: relative;
  z-index: 2;
}

.p-ayurveda__contents {
  margin-top: 48px;
}
@media screen and (max-width: 750px) {
  .p-ayurveda__contents {
    margin-top: 24px;
  }
}

.p-ayurveda__recommend {
  margin-top: 24px;
}
@media screen and (max-width: 750px) {
  .p-ayurveda__recommend {
    margin-top: 12px;
  }
}

/* object > component > thai massage
--------------------------------------------- */
.p-thai {
  padding: 80px 0 80px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-thai {
    padding: 40px 0 40px;
  }
}
.p-thai::before, .p-thai::after {
  content: "";
  position: absolute;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.p-thai::before {
  background-image: url(../img/thai/top-bg01.webp);
  width: 502px;
  height: 522px;
  top: -118px;
  left: 0px;
}
@media screen and (max-width: 750px) {
  .p-thai::before {
    background-image: url(../img/thai/top-bg01-sp.webp);
    top: -8px;
    left: 12px;
    width: 125px;
    height: 130px;
  }
}
.p-thai::after {
  background-image: url(../img/thai/top-bg02.webp);
  top: 495px;
  right: 22px;
  width: 294px;
  height: 306px;
}
@media screen and (max-width: 750px) {
  .p-thai::after {
    background-image: url(../img/thai/top-bg02-sp.webp);
    top: 725px;
    right: 0px;
    width: 104px;
    height: 106px;
  }
}

.p-thai__breadcrumb {
  padding-top: 118px;
}
@media screen and (max-width: 750px) {
  .p-thai__breadcrumb {
    padding-top: 62px;
  }
}

.p-thai__heading {
  position: relative;
  z-index: 2;
}

.p-thai__inner {
  max-width: 870px;
  margin-inline: auto;
  padding: 0 15px;
  position: relative;
  z-index: 2;
}

.p-thai__contents {
  margin-top: 48px;
}
@media screen and (max-width: 750px) {
  .p-thai__contents {
    margin-top: 24px;
  }
}

.p-thai__menu-container {
  max-width: 990px;
  margin-inline: auto;
  padding: 0 15px;
}

/* object > component > menu 60
--------------------------------------------- */
.p-menu60 {
  padding: 80px 0 80px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-menu60 {
    padding: 40px 0 40px;
  }
}
.p-menu60::before, .p-menu60::after {
  content: "";
  position: absolute;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.p-menu60::before {
  background-image: url(../img/menu60/top-bg01.webp);
  width: 502px;
  height: 522px;
  top: -79px;
  left: 8px;
}
@media screen and (max-width: 750px) {
  .p-menu60::before {
    background-image: url(../img/menu60/top-bg01-sp.webp);
    top: -7px;
    left: 8px;
    width: 125px;
    height: 130px;
  }
}
.p-menu60::after {
  background-image: url(../img/menu60/top-bg02.webp);
  top: 565px;
  right: 0px;
  width: 292px;
  height: 307px;
}
@media screen and (max-width: 750px) {
  .p-menu60::after {
    background-image: url(../img/menu60/top-bg02-sp.webp);
    top: 177px;
    right: 0px;
    width: 147px;
    height: 153px;
  }
}

.p-menu60__inner {
  position: relative;
  z-index: 2;
}

.p-menu60__breadcrumb {
  padding-top: 118px;
}
@media screen and (max-width: 750px) {
  .p-menu60__breadcrumb {
    padding-top: 62px;
  }
}

.p-menu60__heading {
  position: relative;
  z-index: 2;
}

.p-menu60__menu-container {
  max-width: 990px;
  margin-inline: auto;
  padding: 0 15px;
}

.p-menu60__lead {
  margin-top: 32px;
}
@media screen and (max-width: 750px) {
  .p-menu60__lead {
    margin-top: 16px;
  }
}

.p-menu60__lead-photos {
  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;
  -webkit-column-gap: 24px;
     -moz-column-gap: 24px;
          column-gap: 24px;
}
@media screen and (max-width: 750px) {
  .p-menu60__lead-photos {
    -webkit-column-gap: 16px;
       -moz-column-gap: 16px;
            column-gap: 16px;
  }
}

.p-menu60__lead-photo {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 173px;
          flex: 0 0 173px;
}
@media screen and (max-width: 750px) {
  .p-menu60__lead-photo {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 105px;
            flex: 0 0 105px;
  }
}
.p-menu60__lead-photo img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-menu60__lead-text {
  margin-top: 33px;
  text-align: center;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.4166666667;
}
@media screen and (max-width: 750px) {
  .p-menu60__lead-text {
    margin-top: 24px;
    font-size: 15px;
    line-height: 1.4333333333;
  }
}

.p-menu60__lead-box {
  max-width: 723px;
  margin: 16px auto 0;
  padding: 40px 10px;
  background-color: #F3EDED;
}
@media screen and (max-width: 750px) {
  .p-menu60__lead-box {
    padding: 20px 27.5px;
    margin: 16px 15px 0;
  }
}

.p-menu60__lead-box-inner {
  max-width: 414px;
  margin-inline: auto;
}
.p-menu60__lead-box-inner .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 24px;
}
@media screen and (max-width: 750px) {
  .p-menu60__lead-box-inner .list {
    gap: 12px;
  }
}
.p-menu60__lead-box-inner .list-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 16px;
     -moz-column-gap: 16px;
          column-gap: 16px;
}
@media screen and (max-width: 750px) {
  .p-menu60__lead-box-inner .list-item {
    -webkit-column-gap: 8px;
       -moz-column-gap: 8px;
            column-gap: 8px;
  }
}
.p-menu60__lead-box-inner .list-item .icon {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 30px;
          flex: 0 0 30px;
  width: 30px;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 750px) {
  .p-menu60__lead-box-inner .list-item .icon {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 21px;
            flex: 0 0 21px;
    width: 21px;
  }
}
.p-menu60__lead-box-inner .list-item .text {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4375;
}
@media screen and (max-width: 750px) {
  .p-menu60__lead-box-inner .list-item .text {
    font-size: 14px;
    line-height: 1.4285714286;
  }
}

.p-menu60__lead-sub-box {
  margin-top: 16px;
  background-color: #FFF;
  padding: 14px 29px;
}
@media screen and (max-width: 750px) {
  .p-menu60__lead-sub-box {
    margin-top: 12px;
    padding: 12px 10px;
  }
}
.p-menu60__lead-sub-box .text {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4375;
}
@media screen and (max-width: 750px) {
  .p-menu60__lead-sub-box .text {
    font-size: 13px;
    line-height: 1.3846153846;
  }
}

.p-menu60__service01 {
  max-width: 474px;
  margin: 80px auto 0;
  padding: 0 15px;
}
@media screen and (max-width: 750px) {
  .p-menu60__service01 {
    margin-top: 40px;
  }
}

.p-menu60__service02 {
  margin: 33px auto 0;
  max-width: 930px;
  padding: 0 15px;
}
@media screen and (max-width: 750px) {
  .p-menu60__service02 {
    margin-top: 40px;
  }
}

.p-menu60__section-title {
  text-align: center;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.4375;
}
@media screen and (max-width: 750px) {
  .p-menu60__section-title {
    font-size: 18px;
    line-height: 1.4444444444;
  }
}

.p-menu60__service01-content {
  margin-top: 32px;
}
@media screen and (max-width: 750px) {
  .p-menu60__service01-content {
    margin-top: 16px;
  }
}
.p-menu60__service01-content .photo img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-menu60__service01-content .body {
  margin-top: 16px;
}
@media screen and (max-width: 750px) {
  .p-menu60__service01-content .body {
    margin-top: 8px;
  }
}
.p-menu60__service01-content .body .text {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.6666666667;
}
@media screen and (max-width: 750px) {
  .p-menu60__service01-content .body .text {
    font-size: 14px;
    line-height: 1.4285714286;
  }
}

.p-menu60__service02-contents {
  margin-top: 24px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
}
@media screen and (max-width: 750px) {
  .p-menu60__service02-contents {
    margin-top: 16px;
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.p-menu60__service02-contents .title {
  padding: 8px 4px;
  text-align: center;
  background-color: #83204E;
  color: #FFF;
  font-size: 22px;
  line-height: 1;
}
@media screen and (max-width: 750px) {
  .p-menu60__service02-contents .title {
    padding: 7.5px 7.5px;
    font-size: 15px;
  }
}
.p-menu60__service02-contents .photo img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-menu60__service02-contents .textarea {
  margin-top: 8px;
}
.p-menu60__service02-contents .text {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.6666666667;
}
@media screen and (max-width: 750px) {
  .p-menu60__service02-contents .text {
    font-size: 14px;
    line-height: 1.4285714286;
  }
}

/* object > component > set
--------------------------------------------- */
.p-set {
  padding: 80px 0 80px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-set {
    padding: 40px 0 40px;
  }
}
.p-set::before, .p-set::after {
  content: "";
  position: absolute;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.p-set::before {
  background-image: url(../img/set/top-bg01.webp);
  width: 500px;
  height: 522px;
  left: 0px;
  top: -79px;
}
@media screen and (max-width: 750px) {
  .p-set::before {
    background-image: url(../img/set/top-bg01-sp.webp);
    top: -12px;
    left: 7px;
    width: 125px;
    height: 130px;
  }
}
.p-set::after {
  background-image: url(../img/set/top-bg02.webp);
  top: 562px;
  right: 15px;
  width: 295px;
  height: 307px;
}
@media screen and (max-width: 750px) {
  .p-set::after {
    background-image: url(../img/set/top-bg02-sp.webp);
    top: 1890px;
    right: 6px;
    width: 115px;
    height: 120px;
  }
}

.p-set__breadcrumb {
  padding-top: 118px;
}
@media screen and (max-width: 750px) {
  .p-set__breadcrumb {
    padding-top: 62px;
  }
}

.p-set__heading {
  position: relative;
  z-index: 2;
}

.p-set__inner {
  max-width: 990px;
  margin-inline: auto;
  padding: 0 15px;
  position: relative;
  z-index: 2;
}

.p-set__contents {
  margin-top: 48px;
}
@media screen and (max-width: 750px) {
  .p-set__contents {
    margin-top: 24px;
  }
}

.p-set__items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(3, auto);
  -webkit-column-gap: 24px;
     -moz-column-gap: 24px;
          column-gap: 24px;
  row-gap: 24px;
}
@media screen and (max-width: 900px) {
  .p-set__items {
    grid-template-columns: 1fr;
    grid-template-rows: initial;
    row-gap: 12px;
    -webkit-column-gap: 0;
       -moz-column-gap: 0;
            column-gap: 0;
  }
}

.p-set__item:nth-of-type(1) {
  grid-column: 1/2;
  grid-row: 1/2;
}
@media screen and (max-width: 900px) {
  .p-set__item:nth-of-type(1) {
    grid-column: initial;
    grid-row: initial;
  }
}
.p-set__item:nth-of-type(2) {
  grid-column: 2/3;
  grid-row: 1/2;
}
@media screen and (max-width: 900px) {
  .p-set__item:nth-of-type(2) {
    grid-column: initial;
    grid-row: initial;
  }
}
.p-set__item:nth-of-type(3) {
  grid-column: 1/2;
  grid-row: 2/3;
}
@media screen and (max-width: 900px) {
  .p-set__item:nth-of-type(3) {
    grid-column: initial;
    grid-row: initial;
  }
}
.p-set__item:nth-of-type(4) {
  grid-column: 2/3;
  grid-row: 2/3;
}
@media screen and (max-width: 900px) {
  .p-set__item:nth-of-type(4) {
    grid-column: initial;
    grid-row: initial;
  }
}
.p-set__item:nth-of-type(5) {
  grid-column: 1/3;
  grid-row: 3/4;
}
@media screen and (max-width: 900px) {
  .p-set__item:nth-of-type(5) {
    grid-column: initial;
    grid-row: initial;
  }
}

.p-set__item-title {
  background-color: #83204E;
  padding: 8px 10px;
  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;
  -webkit-column-gap: 8px;
     -moz-column-gap: 8px;
          column-gap: 8px;
}
@media screen and (max-width: 750px) {
  .p-set__item-title {
    padding: 4px 4px;
  }
}
.p-set__item-title .number {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background-color: #FFF;
  color: #83204E;
  font-family: "Libre Caslon Text", serif;
  font-size: 32px;
  font-weight: 400;
  display: inline-grid;
  place-items: center;
}
@media screen and (max-width: 750px) {
  .p-set__item-title .number {
    width: 24px;
    height: 24px;
    font-size: 16px;
  }
}
.p-set__item-title .text {
  color: #FFF;
  font-size: 32px;
  line-height: 1.6;
  letter-spacing: 0.64px;
}
@media screen and (max-width: 750px) {
  .p-set__item-title .text {
    font-size: 16px;
    letter-spacing: 0.36px;
  }
}
.p-set__item-title .limited {
  background-color: #FFF;
  color: #83204E;
  border-radius: 5px;
  padding: 2px 8px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.36px;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .p-set__item-title .limited {
    padding: 1px 4px;
    font-size: 12px;
    letter-spacing: 0.24px;
  }
}

.p-set__item-name {
  text-align: center;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: 0.48px;
}
@media screen and (max-width: 750px) {
  .p-set__item-name {
    font-size: 16px;
    letter-spacing: 0.32px;
  }
}

.p-set__item-body {
  padding: 24px 10px 24px;
  border: 1px solid #83204E;
}
@media screen and (max-width: 750px) {
  .p-set__item-body {
    padding: 12px 10px 12px;
  }
}

.p-set__item-inner {
  max-width: 390px;
  margin-inline: auto;
}
.p-set__item-inner.--wide {
  max-width: 452px;
}
.p-set__item-inner.--wide .course {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 247px;
          flex: 0 0 247px;
}
@media screen and (max-width: 750px) {
  .p-set__item-inner.--wide .course {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 160px;
            flex: 0 0 160px;
  }
}
.p-set__item-inner.--wide .price {
  margin-left: 29px;
}
@media screen and (max-width: 750px) {
  .p-set__item-inner.--wide .price {
    margin-left: 10px;
  }
}

.p-set__item-menus {
  margin-top: 24px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
}
@media screen and (max-width: 750px) {
  .p-set__item-menus {
    margin-top: 12px;
    gap: 10px;
  }
}

.p-set__item-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-bottom: 4px;
}
@media screen and (max-width: 750px) {
  .p-set__item-menu {
    padding-bottom: 8px;
  }
}
.p-set__item-menu:not(:last-of-type) {
  border-bottom: 1px dashed #575757;
}
.p-set__item-menu .course {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 200px;
          flex: 0 0 200px;
}
@media screen and (max-width: 750px) {
  .p-set__item-menu .course {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 170px;
            flex: 0 0 170px;
  }
}
.p-set__item-menu .course .time {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.48px;
}
@media screen and (max-width: 750px) {
  .p-set__item-menu .course .time {
    font-size: 16px;
    letter-spacing: 0.32px;
  }
}
.p-set__item-menu .course .time .sm {
  font-size: 17px;
  letter-spacing: 0.34px;
}
@media screen and (max-width: 750px) {
  .p-set__item-menu .course .time .sm {
    font-size: 12px;
    letter-spacing: 0.24px;
  }
}
.p-set__item-menu .course .content {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.28px;
}
@media screen and (max-width: 750px) {
  .p-set__item-menu .course .content {
    font-size: 12px;
    letter-spacing: 0.24px;
  }
}
.p-set__item-menu .course .notice {
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0.24px;
  line-height: 1.6;
}
.p-set__item-menu .icon {
  margin-top: 25px;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 43px;
          flex: 0 0 43px;
}
@media screen and (max-width: 750px) {
  .p-set__item-menu .icon {
    margin-top: 15px;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 21px;
            flex: 0 0 21px;
  }
}
.p-set__item-menu .price {
  margin-left: 26px;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
@media screen and (max-width: 750px) {
  .p-set__item-menu .price {
    margin-left: 10px;
  }
}
.p-set__item-menu .price .box {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  padding: 4px 7px;
  background-color: #F3EDED;
}
.p-set__item-menu .price .box-text {
  color: #83204E;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.1666666667;
  letter-spacing: 0.24px;
}
.p-set__item-menu .price .number {
  color: #83204E;
}
.p-set__item-menu .price .number .lg {
  font-size: 30px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.64px;
}
@media screen and (max-width: 750px) {
  .p-set__item-menu .price .number .lg {
    font-size: 20px;
    letter-spacing: 0.4px;
  }
}
.p-set__item-menu .price .number .yen {
  font-size: 15px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.32px;
}
@media screen and (max-width: 750px) {
  .p-set__item-menu .price .number .yen {
    font-size: 12px;
    letter-spacing: 0.24px;
  }
}

.p-set__item-box {
  max-width: 711px;
  margin: 16px auto 0;
  padding: 24px 10px;
  background-color: #F5F4F4;
}
@media screen and (max-width: 750px) {
  .p-set__item-box {
    padding: 12px 10px;
  }
}
.p-set__item-box .title {
  text-align: center;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0.48px;
}
@media screen and (max-width: 750px) {
  .p-set__item-box .title {
    font-size: 15px;
    letter-spacing: 0.3px;
  }
}
.p-set__item-box .list {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 16px auto 0;
}
@media screen and (max-width: 750px) {
  .p-set__item-box .list {
    margin: 8px auto 0;
  }
}
.p-set__item-box .list-item {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.4px;
}
@media screen and (max-width: 750px) {
  .p-set__item-box .list-item {
    font-size: 14px;
    letter-spacing: 0.26px;
  }
}

.p-set__annotation {
  margin-top: 11px;
}
@media screen and (max-width: 750px) {
  .p-set__annotation {
    display: none;
    margin-top: 8px;
  }
}

.p-set__annotation-text {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.28px;
}

.p-set__annotation-sp {
  display: none;
}
@media screen and (max-width: 750px) {
  .p-set__annotation-sp {
    margin-top: 8px;
    display: block;
  }
}

.p-set__annotation-text-sp {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.28px;
}

.p-set__menu-container {
  max-width: 990px;
  margin-inline: auto;
  padding: 0 15px;
}

/* object > component > yomogi
--------------------------------------------- */
.p-yomogi {
  padding: 80px 0 80px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-yomogi {
    padding: 40px 0 40px;
  }
}
.p-yomogi::before, .p-yomogi::after {
  content: "";
  position: absolute;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.p-yomogi::before {
  background-image: url(../img/yomogi/top-bg01.webp);
  width: 502px;
  height: 522px;
  top: -130px;
  left: 0px;
}
@media screen and (max-width: 750px) {
  .p-yomogi::before {
    background-image: url(../img/yomogi/top-bg01-sp.webp);
    top: -45px;
    width: 164px;
    height: 172px;
  }
}
.p-yomogi::after {
  background-image: url(../img/yomogi/top-bg02.webp);
  top: 914px;
  right: 6px;
  width: 295px;
  height: 307px;
}
@media screen and (max-width: 750px) {
  .p-yomogi::after {
    background-image: url(../img/yomogi/top-bg02-sp.webp);
    top: 1120px;
    right: 0px;
    width: 104px;
    height: 106px;
  }
}

.p-yomogi__breadcrumb {
  padding-top: 118px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__breadcrumb {
    padding-top: 62px;
  }
}

.p-yomogi__menu-container {
  max-width: 990px;
  margin-inline: auto;
  padding: 0 15px;
}

.p-yomogi__heading {
  text-align: center;
  font-size: 32px;
  font-weight: 600;
  line-height: 1.4375;
}
@media screen and (max-width: 750px) {
  .p-yomogi__heading {
    font-size: 18px;
    line-height: 1.4444444444;
  }
}

/* About */
.p-yomogi__about {
  padding-top: 48px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__about {
    padding-top: 24px;
  }
}

.p-yomogi__about-top-inner {
  max-width: 869px;
  margin-inline: auto;
  padding: 0 15px;
}

.p-yomogi__about-top-content {
  margin-top: 32px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 24px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__about-top-content {
    margin-top: 24px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: 16px;
  }
}
.p-yomogi__about-top-content .body {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
@media screen and (max-width: 750px) {
  .p-yomogi__about-top-content .body {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
  }
}
.p-yomogi__about-top-content .body .text {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.32px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__about-top-content .body .text {
    font-size: 14px;
    letter-spacing: 0.28px;
  }
}
.p-yomogi__about-top-content .photo {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 407px;
          flex: 0 0 407px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__about-top-content .photo {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
  }
}
.p-yomogi__about-top-content .photo img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-yomogi__recommend {
  margin-top: 43px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__recommend {
    margin-top: 16px;
  }
}

.p-yomogi__recommend-notice {
  margin-top: 16px;
  padding-left: 73px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__recommend-notice {
    margin-top: 8px;
    padding-left: 24px;
  }
}
.p-yomogi__recommend-notice .text {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.28px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__recommend-notice .text {
    font-size: 12px;
    letter-spacing: 0.24px;
  }
}

/* Feature */
.p-yomogi__feature {
  padding-top: 80px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__feature {
    padding-top: 40px;
  }
}

.p-yomogi__feature-inner {
  max-width: 990px;
  margin-inline: auto;
  padding: 0 15px;
}

.p-yomogi__feature-content {
  margin-top: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 750px) {
  .p-yomogi__feature-content {
    margin-top: 24px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.p-yomogi__feature-content .photo {
  margin-top: 8px;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 316px;
          flex: 0 0 316px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__feature-content .photo {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
    width: 316px;
    margin: 0 auto;
  }
}
.p-yomogi__feature-content .photo img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-yomogi__feature-content .body {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
@media screen and (max-width: 750px) {
  .p-yomogi__feature-content .body {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
  }
}
.p-yomogi__feature-content .items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 16px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__feature-content .items {
    gap: 12px;
  }
}
.p-yomogi__feature-content .item .title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 8px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__feature-content .item .title {
    gap: 4px;
  }
}
.p-yomogi__feature-content .item .icon {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 29px;
          flex: 0 0 29px;
  width: 29px;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 750px) {
  .p-yomogi__feature-content .item .icon {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 14.5px;
            flex: 0 0 14.5px;
    width: 14.5px;
    position: relative;
    -webkit-transform: translateY(4px);
            transform: translateY(4px);
  }
}
.p-yomogi__feature-content .item .text {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  color: #085835;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.4166666667;
}
@media screen and (max-width: 750px) {
  .p-yomogi__feature-content .item .text {
    font-size: 15px;
    line-height: 1.4333333333;
  }
}
.p-yomogi__feature-content .item .textarea {
  margin-top: 8px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.32px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__feature-content .item .textarea {
    margin-top: 2px;
    font-size: 14px;
    letter-spacing: 0.28px;
    line-height: 1.6;
  }
}

.p-yomogi__feature-notice {
  text-align: right;
}
.p-yomogi__feature-notice .text {
  font: 16px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.32px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__feature-notice .text {
    font-size: 14px;
    letter-spacing: 0.28px;
  }
}

/* Commit */
.p-yomogi__commit {
  margin-top: 80px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__commit {
    margin-top: 40px;
  }
}

.p-yomogi__commit-inner {
  max-width: 990px;
  margin-inline: auto;
  padding: 0 15px;
}

.p-yomogi__commit-content {
  margin-top: 84px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__commit-content {
    margin-top: 47px;
  }
}
.p-yomogi__commit-content .items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, auto);
  -webkit-column-gap: 24px;
     -moz-column-gap: 24px;
          column-gap: 24px;
  row-gap: 64px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__commit-content .items {
    grid-template-columns: 1fr;
    grid-template-rows: initial;
    row-gap: 35px;
    -webkit-column-gap: 0;
       -moz-column-gap: 0;
            column-gap: 0;
  }
}
.p-yomogi__commit-content .item {
  background-color: #F2FAEF;
  padding: 0 11.5px 20px;
}
.p-yomogi__commit-content .item:nth-of-type(1) {
  grid-column: 1/2;
  grid-row: 1/2;
}
@media screen and (max-width: 750px) {
  .p-yomogi__commit-content .item:nth-of-type(1) {
    grid-column: initial;
    grid-row: initial;
  }
}
.p-yomogi__commit-content .item:nth-of-type(2) {
  grid-column: 2/3;
  grid-row: 1/2;
}
@media screen and (max-width: 750px) {
  .p-yomogi__commit-content .item:nth-of-type(2) {
    grid-column: initial;
    grid-row: initial;
  }
}
.p-yomogi__commit-content .item:nth-of-type(3) {
  padding: 0 11.5px 32px;
  grid-column: 1/3;
  grid-row: 2/3;
}
@media screen and (max-width: 750px) {
  .p-yomogi__commit-content .item:nth-of-type(3) {
    padding: 0 11.5px 20px;
    grid-column: initial;
    grid-row: initial;
  }
}
.p-yomogi__commit-content .item .title {
  margin-top: -36px;
  color: #085835;
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.8px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__commit-content .item .title {
    margin-top: -26px;
    font-size: 14px;
    letter-spacing: 0.56px;
    line-height: 1.4285714286;
  }
}
.p-yomogi__commit-content .item .title .number {
  display: inline-block;
  margin-left: 5px;
  font-family: "Libre Caslon Text", serif;
  font-size: 48px;
  font-weight: 400;
  letter-spacing: 1.92px;
  line-height: 1.2040816327;
  position: relative;
  -webkit-transform: translateY(2px);
          transform: translateY(2px);
}
@media screen and (max-width: 750px) {
  .p-yomogi__commit-content .item .title .number {
    font-size: 32px;
    letter-spacing: 1.28px;
    line-height: 1.234375;
  }
}
.p-yomogi__commit-content .item .main-text {
  margin-top: 9px;
  text-align: center;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.36;
  letter-spacing: 0.8px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__commit-content .item .main-text {
    font-size: 15px;
    line-height: 1.4666666667;
  }
}
.p-yomogi__commit-content .item .sub-text {
  margin: 16px auto 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 16px;
  line-height: 1.36;
  letter-spacing: 0.64px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__commit-content .item .sub-text {
    margin: 12px auto 0;
    font-size: 14px;
    line-height: 1.2857142857;
  }
}
.p-yomogi__commit-content .pictures {
  margin-top: 24px;
  display: grid;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  grid-template-columns: repeat(3, 105px);
  gap: 15px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__commit-content .pictures {
    grid-template-columns: repeat(3, 52.5px);
    gap: 7.5px;
  }
}
.p-yomogi__commit-content .pictures img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-yomogi__commit-content .list-wrap {
  margin-top: 32px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__commit-content .list-wrap {
    margin-top: 23px;
  }
}
.p-yomogi__commit-content .list {
  max-width: 724px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  -webkit-column-gap: 28px;
     -moz-column-gap: 28px;
          column-gap: 28px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__commit-content .list {
    grid-template-columns: repeat(2, 1fr);
    -webkit-column-gap: 7.5px;
       -moz-column-gap: 7.5px;
            column-gap: 7.5px;
    row-gap: 46px;
  }
}
.p-yomogi__commit-content .list-item .list-title {
  background-color: #085835;
  text-align: center;
  padding: 1.5px 8px;
  color: #FFF;
  font-size: 20px;
  font-weight: 600;
  letter-spacing: 0.8px;
  line-height: 1.36;
}
@media screen and (max-width: 750px) {
  .p-yomogi__commit-content .list-item .list-title {
    font-size: 15px;
    letter-spacing: 0.6px;
  }
}
.p-yomogi__commit-content .list-item .text {
  margin-top: 4px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.36;
  letter-spacing: 0.56px;
}

/* Course */
.p-yomogi__course {
  padding-top: 80px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__course {
    padding-top: 40px;
  }
}

.p-yomogi__course-inner {
  max-width: 774px;
  margin-inline: auto;
  padding: 0 15px;
}

.p-yomogi__course-content {
  margin-top: 40px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__course-content {
    margin-top: 23px;
  }
}
.p-yomogi__course-content .items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 12px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__course-content .items {
    gap: 8px;
  }
}
.p-yomogi__course-content .item .title-block {
  padding: 6px 10px 6px 67px;
  background: -webkit-gradient(linear, left top, right top, from(#085835), to(#0D9A5D));
  background: linear-gradient(90deg, #085835 0%, #0D9A5D 100%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 32px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__course-content .item .title-block {
    padding: 5.5px 10px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 5px;
  }
}
.p-yomogi__course-content .item .name-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 21px;
  color: #FFF;
}
@media screen and (max-width: 750px) {
  .p-yomogi__course-content .item .name-wrap {
    gap: 4px;
  }
}
.p-yomogi__course-content .item .name-wrap .number {
  font-family: "Libre Caslon Text", serif;
  font-size: 32px;
  font-weight: 400;
  font-style: italic;
  line-height: 1;
}
@media screen and (max-width: 750px) {
  .p-yomogi__course-content .item .name-wrap .number {
    font-size: 19px;
  }
}
.p-yomogi__course-content .item .name-wrap .name {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.6;
}
@media screen and (max-width: 750px) {
  .p-yomogi__course-content .item .name-wrap .name {
    font-size: 14px;
    line-height: 1.1428571429;
  }
}
.p-yomogi__course-content .item .desc {
  color: #FFF;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
}
@media screen and (max-width: 750px) {
  .p-yomogi__course-content .item .desc {
    font-size: 12px;
    line-height: 1.3333333333;
  }
}
.p-yomogi__course-content .item .body {
  background-color: #F3F3F3;
  padding: 15px 21px 15px 21px;
  min-height: 77px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (max-width: 750px) {
  .p-yomogi__course-content .item .body {
    min-width: initial;
    padding: 8px 12px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.p-yomogi__course-content .item .body .symptom {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 139px;
          flex: 0 0 139px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__course-content .item .body .symptom {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
  }
}
.p-yomogi__course-content .item .body .symptom .icon {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 16px;
          flex: 0 0 16px;
  width: 16px;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (max-width: 750px) {
  .p-yomogi__course-content .item .body .symptom .icon {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 12px;
            flex: 0 0 12px;
    width: 12px;
    height: 17px;
    position: relative;
    -webkit-transform: translateY(2px);
            transform: translateY(2px);
  }
}
.p-yomogi__course-content .item .body .symptom .symptom-text {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
}
@media screen and (max-width: 750px) {
  .p-yomogi__course-content .item .body .symptom .symptom-text {
    font-size: 14px;
  }
}
.p-yomogi__course-content .item .body .textarea {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
@media screen and (max-width: 750px) {
  .p-yomogi__course-content .item .body .textarea {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
  }
}
.p-yomogi__course-content .item .body .textarea .description {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
}
@media screen and (max-width: 750px) {
  .p-yomogi__course-content .item .body .textarea .description {
    font-size: 13px;
    line-height: 1.5384615385;
  }
}

.p-yomogi__list-container {
  display: contents;
}
@media screen and (max-width: 750px) {
  .p-yomogi__list-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 12px;
  }
}

.p-yomogi__price-notice {
  margin-top: 16px;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.28px;
  line-height: 1.6;
}
@media screen and (max-width: 750px) {
  .p-yomogi__price-notice {
    margin-top: 0;
    font-size: 14px;
    letter-spacing: 0.28px;
  }
}

.p-yomogi__course-service {
  margin-top: 40px;
  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;
}
@media screen and (max-width: 750px) {
  .p-yomogi__course-service {
    margin-top: 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 12px;
    -webkit-box-pack: initial;
        -ms-flex-pack: initial;
            justify-content: initial;
  }
}
.p-yomogi__course-service .message {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: 0.4px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__course-service .message {
    font-size: 15px;
    letter-spacing: 0.3px;
    line-height: 1.6;
  }
}
.p-yomogi__course-service .photo {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 308px;
          flex: 0 0 308px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__course-service .photo {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
    width: 271px;
    margin-inline: auto;
  }
}
.p-yomogi__course-service .photo img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-yomogi__course-bottom {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 32px auto 0;
}
@media screen and (max-width: 750px) {
  .p-yomogi__course-bottom {
    margin: 20px auto 0;
  }
}
.p-yomogi__course-bottom .text {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.7142857143;
}
.p-yomogi__course-bottom .text.bold {
  font-weight: 700;
}
.p-yomogi__course-bottom .text + .text {
  margin-top: 6px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__course-bottom .text + .text {
    margin-top: 8px;
  }
}

/* FAQ */
.p-yomogi__faq {
  padding-top: 80px;
}
@media screen and (max-width: 750px) {
  .p-yomogi__faq {
    padding-top: 40px;
  }
}

.p-yomogi__faq-inner {
  max-width: 830px;
  margin-inline: auto;
  padding: 0 15px;
}

/* object > utility > display
--------------------------------------------- */
.u-br-tab {
  display: none;
}
@media screen and (max-width: 750px) {
  .u-br-tab {
    display: inline;
  }
}

.u-pc-br {
  display: none;
}
@media screen and (max-width: 1040px) {
  .u-pc-br {
    display: inline;
  }
}

.u-tab-none {
  display: inline;
}
@media screen and (max-width: 750px) {
  .u-tab-none {
    display: none;
  }
}/*# sourceMappingURL=style.css.map */