@charset "UTF-8";
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

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

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

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

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

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

/* Natural flow and rhythm in articles by default */
article > * + * {
  margin-top: 1em;
}

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

/* Blur images when they have no alt attribute */
img:not([alt]) {
  -webkit-filter: blur(10px);
          filter: blur(10px);
}

/* フォームリセット */
input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

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

input[type=submit],
input[type=button],
label,
button,
select {
  cursor: pointer;
}

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

/* リキッドレイアウト対応 */
html {
  font-size: 16px;
}

a {
  -webkit-text-decoration: none;
  -webkit-text-decoration: none;
  color: inherit;
  text-decoration: none;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

/* hover指定できるPCを想定したスタイル */
/* hoverが使えないタッチ端末を想定した装飾 */
html {
  scroll-behavior: smooth;
  scroll-padding-top: 6.25rem;
}

body {
  color: #545454;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  line-height: 1.5;
  min-height: 100vh;
  text-rendering: optimizeSpeed;
}

body.hidden {
  overflow: hidden;
}

main {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.l-inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 1202px;
  max-width: 75.125rem;
  padding-left: 25px;
  padding-left: 1.5625rem;
  padding-right: 25px;
  padding-right: 1.5625rem;
  width: 100%;
}

.l-inner2 {
  margin-left: auto;
  margin-right: auto;
  max-width: 1006px;
  max-width: 62.875rem;
  padding-left: 25px;
  padding-left: 1.5625rem;
  padding-right: 25px;
  padding-right: 1.5625rem;
  width: 100%;
}

.l-lower-head {
  margin-top: 80px;
  margin-top: 5rem;
  position: relative;
  width: 100%;
}

.l-lower-head::after {
  background: url(../images/common/lower-mv.png) no-repeat center/cover;
  content: "";
  height: 673px;
  height: 42.0625rem;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%;
}

.l-post-list {
  margin-top: 80px;
  margin-top: 5rem;
}

.l-top-mv {
  margin-top: 80px;
  margin-top: 5rem;
}

.c-back-button {
  -moz-column-gap: 1rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #615d69;
  border-radius: 0.3125rem;
  color: white;
       -webkit-column-gap: 1rem;
               column-gap: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  letter-spacing: 0.05em;
  line-height: 1;
  padding: 13px 15px;
  padding: 0.8125rem 0.9375rem;
  -webkit-transition: background-color 0.3s ease-out;
  transition: background-color 0.3s ease-out;
  width: 100%;
}

.c-back-button::before {
  border-right: 1px solid #A3A3A3;
  border-top: 1px solid #A3A3A3;
  content: "";
  display: inline-block;
  height: 8px;
  height: 0.5rem;
  rotate: -135deg;
  translate: 0 1px;
  width: 8px;
  width: 0.5rem;
}
.c-group-section__content {
  background-color: #f0eff5;
  padding: 47px 56px 56px;
  padding: 2.9375rem 3.5rem 3.5rem;
}

.c-group-section__heading {
  font-family: "Shippori Mincho", serif;
  font-size: max(24px, 10px);
  font-size: max(1.5rem, 10px);
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.5;
  text-align: center;
}

.c-group-section__block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 32px;
  gap: 2rem;
  margin-top: 39px;
  margin-top: 2.4375rem;
}

.c-group-section__img {
  display: block;
  margin-top: 8px;
  margin-top: 0.5rem;
  max-width: 264px;
  max-width: 16.5rem;
  width: 100%;
}

.c-group-section__img img {
  -o-object-fit: cover;
  aspect-ratio: 264/267;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.c-group-section__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 56px;
  gap: 3.5rem;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.c-group-section__text {
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  letter-spacing: 0.03em;
  line-height: 1.9;
}

.c-group-section__text span {
  letter-spacing: normal;
  letter-spacing: initial;
}

.c-group-section__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.c-link {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #615d69;
  border-radius: 0.3125rem;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  gap: 11px;
  gap: 0.6875rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  letter-spacing: 0.05em;
  padding: 9px 9px 10px;
  padding: 0.5625rem 0.5625rem 0.625rem;
  -webkit-transition: background-color 0.3s ease-out;
  transition: background-color 0.3s ease-out;
  width: 200px;
  width: 12.5rem;
}

.c-link--white {
  background-color: #f6f5f7;
  color: #545454;
}

.c-link::after {
  border-right: 1px solid #A3A3A3;
  border-top: 1px solid #A3A3A3;
  content: "";
  display: inline-block;
  height: 10px;
  height: 0.625rem;
  rotate: 45deg;
  translate: 0 1px;
  width: 10px;
  width: 0.625rem;
}
.c-lower-title__text {
  font-size: max(20px, 10px);
  font-size: max(1.25rem, 10px);
  font-weight: 500;
  line-height: 1.9;
}

.c-lower-title__line {
  height: 2px;
  height: 0.125rem;
  margin-top: 9px;
  margin-top: 0.5625rem;
  position: relative;
  width: 100%;
}

.c-lower-title__line::before {
  background-color: #8f83a5;
  content: "";
  height: 2px;
  height: 0.125rem;
  left: 0;
  position: absolute;
  top: 0;
  width: 98px;
  width: 6.125rem;
}

.c-lower-title__line::after {
  background-color: #d2ced9;
  content: "";
  height: 2px;
  height: 0.125rem;
  left: 98px;
  left: 6.125rem;
  position: absolute;
  top: 0;
  width: calc(100% - 6.125rem);
}

.c-no-post {
  font-size: 16px;
  font-size: 1rem;
  text-align: center;
}

.c-reservation-link {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #a49ab6;
  border-radius: 0.3125rem;
  -webkit-box-shadow: 0 0.5rem 0.75rem rgba(0, 0, 0, 0.2);
          box-shadow: 0 0.5rem 0.75rem rgba(0, 0, 0, 0.2);
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  gap: 1rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 30px;
  padding: 1.875rem;
  -webkit-transition: background-color 0.3s ease-out;
  transition: background-color 0.3s ease-out;
  width: 337px;
  width: 21.0625rem;
}
.c-reservation-link__img {
  display: block;
  max-width: 50px;
  max-width: 3.125rem;
  width: 100%;
}

.c-reservation-link__img img {
  -o-object-fit: cover;
  aspect-ratio: 1;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.c-reservation-link__text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(20px, 10px);
  font-size: max(1.25rem, 10px);
  font-weight: 500;
  line-height: 1.9;
}

.c-tag {
  background-color: #d2ced9;
  border-radius: 100vmax;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(11px, 10px);
  font-size: max(0.6875rem, 10px);
  letter-spacing: 0.05em;
  line-height: 1.2;
  padding: 3.4px 7.9px;
  padding: 0.2125rem 0.49375rem;
}

.c-tag--01 {
  background-color: #d2ced9;
}

.c-tag--02 {
  background-color: #d2ced9;
}

.c-tag--filter {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: white;
  border-radius: 1rem;
  color: #545454;
  cursor: pointer;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  font-weight: 300;
  height: 32px;
  height: 2rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  letter-spacing: 0.05em;
  line-height: 1.2;
  padding: 0 16px;
  padding: 0 1rem;
  white-space: nowrap;
}

.c-title {
  color: #9d98a8;
}

.c-title--center {
  text-align: center;
}

.c-title--white {
  color: #fff;
}

.c-title__en {
  font-family: "Namdhinggo", serif;
  font-size: max(76px, 10px);
  font-size: max(4.75rem, 10px);
  line-height: 1.2;
}

.c-title--small .c-title__en {
  font-size: max(38px, 10px);
  font-size: max(2.375rem, 10px);
}

.c-title__ja {
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(12px, 10px);
  font-size: max(0.75rem, 10px);
  font-weight: 300;
  line-height: 1.2;
  margin-top: -5px;
  margin-top: -0.3125rem;
}

.c-title--small .c-title__ja {
  margin-top: 9px;
  margin-top: 0.5625rem;
}

.p-404__mv.p-lower-mv {
  padding-bottom: 41px;
  padding-bottom: 2.5625rem;
  padding-top: 223px;
  padding-top: 13.9375rem;
}

.p-404__content {
  background-color: #f6f5f7;
  padding-bottom: 240px;
  padding-bottom: 15rem;
  padding-top: 40px;
  padding-top: 2.5rem;
  position: relative;
}

.p-404__text {
  font-size: max(18px, 10px);
  font-size: max(1.125rem, 10px);
  letter-spacing: 0.03em;
  line-height: 2.1;
  text-align: center;
}

.p-404__button {
  margin-left: auto;
  margin-right: auto;
  margin-top: 28px;
  margin-top: 1.75rem;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

.p-404__link {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #615d69;
  border-radius: 0.3125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  gap: 1rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-bottom: 11.6px;
  padding-bottom: 0.725rem;
  padding-top: 11.6px;
  padding-top: 0.725rem;
  -webkit-transition: background-color 0.3s ease-out;
  transition: background-color 0.3s ease-out;
  width: 240px;
  width: 15rem;
}

.p-404__arrow {
  color: #A3A3A3;
  height: 12px;
  height: 0.75rem;
  width: 6px;
  width: 0.375rem;
}

.p-404__link-text {
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.2;
  text-align: center;
}
.p-breadcrumb {
  color: #686868;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  font-weight: 300;
  line-height: 1.2142857143;
  padding-bottom: 26px;
  padding-bottom: 1.625rem;
  padding-top: 26px;
  padding-top: 1.625rem;
  position: relative;
  z-index: 5;
}

.p-breadcrumb__wrapper {
  -ms-overflow-style: none;
  overflow: auto;
  scrollbar-width: none;
  white-space: nowrap;
}

.p-breadcrumb__wrapper::-webkit-scrollbar {
  display: none;
}

.p-breadcrumb a {
  color: #686868;
}

.p-breadcrumb span[property=itemListElement]:nth-child(n+2) {
  margin-left: 12px;
  margin-left: 0.75rem;
}

.p-breadcrumb span[property=itemListElement]:nth-child(n+2)::before {
  aspect-ratio: 4/8;
  background: url(../images/common/breadcrumb-arrow.svg) no-repeat center/contain;
  content: "";
  display: inline-block;
  height: auto;
  margin-right: 12px;
  margin-right: 0.75rem;
  vertical-align: baseline;
  width: 5px;
  width: 0.3125rem;
}

.p-breadcrumb span .u-sp {
  display: none;
}

.p-campaign {
  background-color: #f5f6f9;
}

.p-campaign__container {
  padding-bottom: 80px;
  padding-bottom: 5rem;
  padding-top: 38px;
  padding-top: 2.375rem;
  position: relative;
  z-index: 5;
}

.p-campaign__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: 79px;
  row-gap: 4.9375rem;
}

.p-campaign__box {
  background-color: white;
}

.p-campaign__period {
  background-color: #bab3c6;
  border-radius: 0 0 0.9375rem 0;
  color: white;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(18px, 10px);
  font-size: max(1.125rem, 10px);
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.4;
  padding: 9px 24px 6px;
  padding: 0.5625rem 1.5rem 0.375rem;
  width: -moz-max-content;
  width: -webkit-max-content;
  width: max-content;
}

.p-campaign__flex {
  padding: 8px 64px 40px;
  padding: 0.5rem 4rem 2.5rem;
}

.p-campaign__head {
  -moz-column-gap: 1rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
       -webkit-column-gap: 1rem;
               column-gap: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.p-campaign__title {
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(20px, 10px);
  font-size: max(1.25rem, 10px);
  font-weight: 700;
  line-height: 1.5;
}

.p-campaign__icon {
  aspect-ratio: 1/1;
  background: url(../images/common/icon-arrow-w.svg) no-repeat center center/contain;
  display: inline-block;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  height: 24px;
  height: 1.5rem;
  width: 24px;
  width: 1.5rem;
}

.p-campaign__price {
  background-color: #F3F2F5;
  border-radius: 0.25rem;
  max-width: 55.46%;
  padding: 2.5px 26px 4.5px;
  padding: 0.15625rem 1.625rem 0.28125rem;
  width: 100%;
}

.p-campaign__price-box {
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  font-weight: 500;
  line-height: 1.5;
  text-align: center;
  white-space: nowrap;
}

.p-campaign__price-box-num {
  color: #8f83a5;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(32px, 10px);
  font-size: max(2rem, 10px);
  font-weight: 900;
}

.p-campaign__price-box-tax {
  font-weight: 900;
}

.p-campaign__main {
  -moz-column-gap: 1.5rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
       -webkit-column-gap: 1.5rem;
               column-gap: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 24px;
  margin-top: 1.5rem;
}

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

.p-campaign__terms {
  margin-top: 16px;
  margin-top: 1rem;
}

.p-campaign__contents + .p-campaign__terms {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.p-campaign__contents,
.p-campaign__terms {
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  letter-spacing: 0.03em;
  line-height: 1.94;
}

.p-campaign__contents b,
.p-campaign__terms b,
.p-campaign__contents strong,
.p-campaign__terms strong {
  font-weight: 700;
}

.p-campaign__contents ul li,
.p-campaign__terms ul li {
  padding-left: 1em;
  position: relative;
}

.p-campaign__contents ul li::before {
  content: "・";
  left: 0.25em;
  position: absolute;
}

.p-campaign__contents ol,
.p-campaign__terms ol {
  list-style-type: decimal;
  padding-left: 1.5em;
}

.p-campaign__img {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 41%;
}

.p-campaign__img img {
  -o-object-fit: cover;
  aspect-ratio: 4/5;
  height: auto;
     object-fit: cover;
  width: 100%;
}
.p-campaign__btn-wrap {
  margin-left: auto;
  margin-right: auto;
  margin-top: 24px;
  margin-top: 1.5rem;
  max-width: 100%;
  width: 280px;
  width: 17.5rem;
}

.p-campaign__btn {
  background-color: #615D69;
  border-radius: 0.3125rem;
  -webkit-box-shadow: 0 0.5rem 0.75rem 0.0625rem rgba(0, 0, 0, 0.2);
          box-shadow: 0 0.5rem 0.75rem 0.0625rem rgba(0, 0, 0, 0.2);
  color: white;
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  font-weight: 700;
  line-height: 1.9;
  padding: 8.8px 16px;
  padding: 0.55rem 1rem;
  text-align: center;
  -webkit-transition: background-color 0.3s ease-out;
  transition: background-color 0.3s ease-out;
  width: 100%;
}
.p-campaign__pagenavi {
  margin-top: 80px;
  margin-top: 5rem;
}

.p-case-attention {
  background-color: #f5f6f9;
  margin-top: 80px;
  margin-top: 5rem;
}

.p-case-attention__text {
  background-color: #f5f4f6;
  font-size: max(12px, 10px);
  font-size: max(0.75rem, 10px);
  line-height: 1.6;
  mix-blend-mode: multiply;
  padding: 32px 40px 30px;
  padding: 2rem 2.5rem 1.875rem;
}
.p-case-attention__text + .p-case-attention__text {
  margin-top: 18px;
  margin-top: 1.125rem;
}

.p-case-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: flex;
  display: block flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  padding: 32px;
  padding: 2rem;
}

.p-case-card__tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 15px;
  gap: 0.9375rem;
}

.p-case-card__treatment {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 24px;
  gap: 1.5rem;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.p-case-card__treatment-label {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #f3f3f3;
  color: #686868;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  font-weight: 300;
  height: 32px;
  height: 2rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  letter-spacing: 0.04em;
  line-height: 1.4;
  width: 84px;
  width: 5.25rem;
}

.p-case-card__treatment-text {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  display: -webkit-box;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: max(18px, 10px);
  font-size: max(1.125rem, 10px);
  letter-spacing: 0.03em;
  line-height: 2.1;
  overflow: hidden;
}

.p-case-card__img {
  display: block;
  margin-top: 13px;
  margin-top: 0.8125rem;
  max-width: 500px;
  max-width: 31.25rem;
  width: 100%;
}

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

.p-case-card__details {
  margin-bottom: 32px;
  margin-bottom: 2rem;
  margin-top: 24px;
  margin-top: 1.5rem;
}

.p-case-card__detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  gap: 1rem;
  margin-top: 16px;
  margin-top: 1rem;
}

.p-case-card__detail:first-child {
  margin-top: 0;
}

.p-case-card__detail-label {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  align-items: center;
  align-items: center;
  background-color: #f3f3f3;
  color: #686868;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(12px, 10px);
  font-size: max(0.75rem, 10px);
  font-weight: 300;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  justify-items: center;
  justify-items: center;
  letter-spacing: 0.04em;
  line-height: 1.4;
  min-height: 24px;
  min-height: 1.5rem;
  padding: 3.5px;
  padding: 0.21875rem;
  place-items: center;
  width: 84px;
  width: 5.25rem;
}

.p-case-card__detail-label--spacing {
  letter-spacing: -0.1em;
}

.p-case-card__detail-text {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: max(12px, 10px);
  font-size: max(0.75rem, 10px);
  justify-items: center;
  justify-items: center;
  letter-spacing: 0.03em;
  line-height: 1.6;
  place-items: center;
}

.p-case-card__divider {
  background-color: #d2ced9;
  height: 1px;
  height: 0.0625rem;
  margin-top: 24px;
  margin-top: 1.5rem;
  width: 100%;
}

.p-case-card__button {
  margin-left: auto;
  margin-right: auto;
  margin-top: auto;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}
.p-case-contents {
  margin-top: 80px;
  margin-top: 5rem;
  position: relative;
  z-index: 1;
}

.p-case-contents__list {
  grid-gap: 3.5rem;
  display: grid;
  gap: 56px;
  gap: 3.5rem;
  grid-template-columns: repeat(2, 1fr);
}

.p-case-contents__item {
  background-color: #fff;
  width: min(100%, 450px);
  width: min(100%, 28.125rem);
}

.p-case-detail {
  background-color: #f5f6f9;
  border: 1px solid #a3a3a3;
  border: 0.0625rem solid #a3a3a3;
  padding: 22px 24px;
  padding: 1.375rem 1.5rem;
}

.p-case-detail__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;
  gap: 1.5rem;
}

.p-case-detail__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 24px;
  gap: 1.5rem;
}

.p-case-detail__label {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  align-items: center;
  background-color: #f3f3f3;
  color: #686868;
  display: grid;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  font-weight: 300;
  justify-items: center;
  justify-items: center;
  letter-spacing: 0.04em;
  line-height: 1.4;
  margin: 0;
  min-height: 38px;
  min-height: 2.375rem;
  mix-blend-mode: multiply;
  padding: 8px 10px;
  padding: 0.5rem 0.625rem;
  place-items: center;
  text-align: center;
  width: 9.25%;
}

.p-case-detail__content {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.p-case-detail__text {
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  letter-spacing: 0.03em;
  line-height: 1.9;
}

.p-case-filter {
  background-color: #f6f5f7;
  border-radius: 0.25rem;
  margin-top: 38px;
  margin-top: 2.375rem;
  position: relative;
  z-index: 1;
}

.p-case-filter__header {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #bab3c6;
  border-radius: 0.5rem 0.5rem 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 15.9px 33px 15.9px 40px;
  padding: 0.99375rem 2.0625rem 0.99375rem 2.5rem;
}

.p-case-filter__title {
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(18px, 10px);
  font-size: max(1.125rem, 10px);
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 1.9;
}

.p-case-filter__close-btn {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: none;
  border: none;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  gap: 0.5rem;
  padding: 6px;
  padding: 0.375rem;
}

.p-case-filter__close-text {
  -webkit-text-decoration: underline;
  -webkit-text-decoration: underline;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(10px, 10px);
  font-size: max(0.625rem, 10px);
  font-weight: 500;
  letter-spacing: 0.06em;
  line-height: 1.9;
  text-decoration: underline;
}

.p-case-filter__close-icon {
  border-bottom: 0;
  border-left: 8px solid transparent;
  border-left: 0.5rem solid transparent;
  border-right: 8px solid transparent;
  border-right: 0.5rem solid transparent;
  border-style: solid;
  border-top: 13px solid #fff;
  border-top: 0.8125rem solid #fff;
  height: 0;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  width: 0;
}

.p-case-filter__close-btn.is-open .p-case-filter__close-icon {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}

.p-case-filter__content {
  background-color: #fff;
  border: 1px solid #bab3c6;
  border-radius: 0 0 0.5rem 0.5rem;
  max-height: 1000px;
  overflow: hidden;
  padding-bottom: 40px;
  padding-bottom: 2.5rem;
  padding-left: 40px;
  padding-left: 2.5rem;
  padding-right: 40px;
  padding-right: 2.5rem;
  padding-top: 40px;
  padding-top: 2.5rem;
  -webkit-transition: max-height 0.4s ease, padding 0.4s ease;
  transition: max-height 0.4s ease, padding 0.4s ease;
  will-change: max-height, padding;
}

.p-case-filter__content.is-open {
  max-height: 0;
  padding-bottom: 0;
  padding-top: 0;
}

.p-case-filter__section {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
  gap: 2.5rem;
  margin-top: 40px;
  margin-top: 2.5rem;
}

.p-case-filter__section:first-child {
  margin-top: 0;
}

.p-case-filter__section-title {
  color: #9d98a8;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 1.9;
  text-align: center;
  width: 80px;
  width: 5rem;
}

.p-case-filter__divider {
  background-color: #bab3c6;
  height: 100%;
  min-height: 80px;
  min-height: 5rem;
  width: 2px;
  width: 0.125rem;
}

.p-case-filter__tag-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 16px;
  gap: 1rem;
}

.p-case-filter__tag-item {
  list-style: none;
}

.p-case-filter__tag {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #f3f2f5;
  border: none;
  border-radius: 1rem;
  color: #545454;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  font-weight: 300;
  height: 32px;
  height: 2rem;
  letter-spacing: 0.05em;
  line-height: 1.2;
  padding-left: 16px;
  padding-left: 1rem;
  padding-right: 16px;
  padding-right: 1rem;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.p-case-filter__tag--selected {
  background-color: #716585;
  color: #f6f5f7;
}

.p-case-filter__tag.is-active {
  background-color: #716585;
  color: #fff;
}

.p-case-filter__no-terms {
  color: #615d69;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
}

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

.p-case-pagination__inner {
  padding-left: 40px;
  padding-left: 2.5rem;
  padding-right: 40px;
  padding-right: 2.5rem;
}

.p-case-pagination__nav {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  gap: 0.5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.p-case-pagination__arrow {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: none;
  border: none;
  color: #e0e0e0;
  color: #a49ab6;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 40px;
  height: 2.5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  width: 40px;
  width: 2.5rem;
}

.p-case-pagination__arrow--next {
  color: #a49ab6;
}

.p-case-pagination__arrow--disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

.p-case-pagination__arrow svg {
  height: 14px;
  height: 0.875rem;
  width: 7px;
  width: 0.4375rem;
}

.p-case-pagination__list {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  gap: 0.5rem;
}

.p-case-pagination__item {
  list-style: none;
}

.p-case-pagination__number {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #f6f5f7;
  border: none;
  border-radius: 3.875rem;
  color: #545454;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Namdhinggo", serif;
  font-size: max(18px, 10px);
  font-size: max(1.125rem, 10px);
  font-weight: 400;
  height: 40px;
  height: 2.5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  letter-spacing: 0.04em;
  line-height: 1.05;
  text-transform: uppercase;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  width: 40px;
  width: 2.5rem;
}

.p-case-pagination__number--active {
  background-color: #a49ab6;
  color: #fff;
}
.p-case {
  background-color: #f5f6f9;
  padding-bottom: 75px;
  padding-bottom: 4.6875rem;
}

.p-clinic-access {
  background-color: #f6f5f7;
  padding-top: 108px;
  padding-top: 6.75rem;
}

.p-clinic-access__map {
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-top: 56px;
  margin-top: 3.5rem;
  max-width: 758px;
  max-width: 47.375rem;
  width: 100%;
}

.p-clinic-access__map iframe {
  -o-object-fit: cover;
  aspect-ratio: 758/400;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-clinic-access__text {
  font-size: max(18px, 10px);
  font-size: max(1.125rem, 10px);
  letter-spacing: 0.03em;
  line-height: 2.1;
  margin-top: 5px;
  margin-top: 0.3125rem;
  text-align: center;
}

.p-clinic-feature {
  background-color: #f5f6f9;
}

.p-clinic-feature__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 56px;
  gap: 3.5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 55px;
  margin-top: 3.4375rem;
}

.p-clinic-feature__item {
  max-width: 222px;
  max-width: 13.875rem;
}

.p-clinic-feature__badge {
  background-color: #fff;
  border-radius: 11.25rem 11.25rem 0.25rem 0.25rem;
  height: 222px;
  height: 13.875rem;
  width: 222px;
  width: 13.875rem;
}

.p-clinic-feature__icon {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}
.p-clinic-feature__icon img {
  -o-object-fit: cover;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-clinic-feature__item:nth-child(1) .p-clinic-feature__icon {
  max-width: 118.84px;
  max-width: 7.4275rem;
  padding-top: 48.12px;
  padding-top: 3.0075rem;
}
.p-clinic-feature__item:nth-child(1) .p-clinic-feature__icon img {
  aspect-ratio: 118.84/79.63;
}

.p-clinic-feature__item:nth-child(2) .p-clinic-feature__icon {
  max-width: 58.73px;
  max-width: 3.670625rem;
  padding-top: 42.98px;
  padding-top: 2.68625rem;
}
.p-clinic-feature__item:nth-child(2) .p-clinic-feature__icon img {
  aspect-ratio: 58.73/90;
}

.p-clinic-feature__item:nth-child(3) .p-clinic-feature__icon {
  max-width: 88.99px;
  max-width: 5.561875rem;
  padding-top: 33.59px;
  padding-top: 2.099375rem;
}
.p-clinic-feature__item:nth-child(3) .p-clinic-feature__icon img {
  aspect-ratio: 88.99/89;
}

.p-clinic-feature__badge-text {
  font-family: "Shippori Mincho", serif;
  font-size: max(24px, 10px);
  font-size: max(1.5rem, 10px);
  font-weight: 500;
  letter-spacing: 0.05em;
  text-align: center;
}

.p-clinic-feature__item:nth-child(1) .p-clinic-feature__badge-text {
  margin-top: 25px;
  margin-top: 1.5625rem;
}

.p-clinic-feature__item:nth-child(2) .p-clinic-feature__badge-text {
  margin-top: 26px;
  margin-top: 1.625rem;
}

.p-clinic-feature__item:nth-child(3) .p-clinic-feature__badge-text {
  margin-top: 36px;
  margin-top: 2.25rem;
}

.p-clinic-feature__caption {
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  letter-spacing: 0.03em;
  line-height: 1.9;
  margin-top: 23px;
  margin-top: 1.4375rem;
}

.p-clinic-guest {
  padding-bottom: 110px;
  padding-bottom: 6.875rem;
  padding-top: 68px;
  padding-top: 4.25rem;
}

.p-clinic-guest__content {
  margin-top: 83px;
  margin-top: 5.1875rem;
  text-align: center;
}

.p-clinic-guest__text {
  font-size: max(18px, 10px);
  font-size: max(1.125rem, 10px);
  letter-spacing: 0.03em;
  line-height: 2.1;
}

.p-clinic-guest__text--en {
  margin-top: 32px;
  margin-top: 2rem;
}

.p-clinic-info {
  background-color: #f6f5f7;
  padding-top: 98px;
  padding-top: 6.125rem;
}

.p-clinic-info__section {
  margin-top: 86px;
  margin-top: 5.375rem;
}

.p-clinic-info__heading {
  font-family: "Shippori Mincho", serif;
  font-size: max(24px, 10px);
  font-size: max(1.5rem, 10px);
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.5;
  text-align: center;
}

.p-clinic-info__text-box {
  margin-top: 62px;
  margin-top: 3.875rem;
}

.p-clinic-info__text {
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  letter-spacing: 0.03em;
  line-height: 1.9;
  text-align: center;
}

.p-clinic-info__text:nth-child(4) {
  margin-top: 28px;
  margin-top: 1.75rem;
}

.p-clinic-info__list {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 24px;
  gap: 1.5rem;
  margin-top: 87px;
  margin-top: 5.4375rem;
}

.p-clinic-info__img {
  display: block;
  max-width: 466px;
  max-width: 29.125rem;
  width: 100%;
}

.p-clinic-info__img img {
  -o-object-fit: cover;
  aspect-ratio: 466/295;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-clinic-office {
  background-color: #f6f5f7;
  padding-bottom: 160px;
  padding-bottom: 10rem;
  padding-top: 97px;
  padding-top: 6.0625rem;
}

.p-clinic-office__content {
  margin-left: auto;
  margin-right: auto;
  margin-top: 56px;
  margin-top: 3.5rem;
  max-width: 762px;
  max-width: 47.625rem;
  width: 100%;
}

.p-clinic-office__list {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 24px;
  gap: 1.5rem;
  padding-bottom: 19px;
  padding-bottom: 1.1875rem;
  padding-left: 8px;
  padding-left: 0.5rem;
  padding-right: 8px;
  padding-right: 0.5rem;
  padding-top: 19px;
  padding-top: 1.1875rem;
  position: relative;
}

.p-clinic-office__list::after,
.p-clinic-office__list:first-child::before {
  background: url(../images/common/line.svg) no-repeat center/cover;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  width: 100%;
}

.p-clinic-office__list::after {
  bottom: 0;
}

.p-clinic-office__list:first-child::before {
  top: 0;
}

.p-clinic-office__term {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  line-height: 1.5;
  width: 80px;
  width: 5rem;
}

.p-clinic-office__desc {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-family: "Noto Serif JP", serif;
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  line-height: 1.5;
}

.p-clinic-office__reservation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
  gap: 2.5rem;
  margin-top: 120px;
  margin-top: 7.5rem;
  max-width: 1152px;
  max-width: 72rem;
  width: 100%;
}

.p-clinic-office__reservation-item {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.p-clinic-office__reservation-link {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #a49ab6;
  border-radius: 0.3125rem;
  -webkit-box-shadow: 0 0.5rem 0.75rem rgba(0, 0, 0, 0.2);
          box-shadow: 0 0.5rem 0.75rem rgba(0, 0, 0, 0.2);
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  gap: 1rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 30px;
  padding: 1.875rem;
  -webkit-transition: background-color 0.3s ease-out;
  transition: background-color 0.3s ease-out;
}
.p-clinic-office__reservation-icon {
  display: block;
  max-width: 50px;
  max-width: 3.125rem;
  width: 100%;
}

.p-clinic-office__reservation-icon img {
  -o-object-fit: cover;
  aspect-ratio: 1;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-clinic-office__reservation-text {
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(20px, 10px);
  font-size: max(1.25rem, 10px);
  font-weight: 500;
  line-height: 1.9;
}

.p-clinic {
  background-color: #f5f6f9;
}

.p-clinic__container {
  padding-bottom: 97px;
  padding-bottom: 6.0625rem;
  padding-top: 33px;
  padding-top: 2.0625rem;
  position: relative;
  z-index: 5;
}

.p-clinic__heading {
  font-family: "Shippori Mincho", serif;
  font-size: max(24px, 10px);
  font-size: max(1.5rem, 10px);
  font-weight: 500;
  line-height: 1.5;
  margin-top: -5px;
  margin-top: -0.3125rem;
  text-align: center;
}

.p-clinic__text-box {
  margin-top: 59px;
  margin-top: 3.6875rem;
  text-align: center;
}

.p-clinic__text {
  font-size: max(18px, 10px);
  font-size: max(1.125rem, 10px);
  letter-spacing: 0.03em;
  line-height: 2.1;
}
.p-clinic__text + .p-clinic__text {
  margin-top: 39px;
  margin-top: 2.4375rem;
}

.p-clinic__text:nth-child(3) {
  margin-top: 0;
  margin-top: initial;
}

.p-column-card {
  border-radius: 0.5rem;
  display: block;
  padding: 24px;
  padding: 1.5rem;
  position: relative;
}

.p-column-card__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 24px;
  gap: 1.5rem;
}

.p-column-card__new-badge {
  background-color: #745e9d;
  height: 32px;
  height: 2rem;
  left: -31px;
  left: -1.9375rem;
  position: absolute;
  rotate: -45deg;
  top: 14px;
  top: 0.875rem;
  width: 116.1px;
  width: 7.25625rem;
}

.p-column-card__new-text {
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  font-weight: 700;
  left: 50%;
  letter-spacing: 0.1em;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 1;
}

.p-column-card__tags-sp {
  display: none;
}

.p-column-card__tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
  gap: 0.5rem;
}

.p-column-card__meta {
  margin-top: 16px;
  margin-top: 1rem;
}

.p-column-card__date {
  display: inline-block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
}
.p-column-card__title {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  color: #76717F;
  display: -webkit-box;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(15px, 10px);
  font-size: max(0.9375rem, 10px);
  font-weight: 500;
  line-height: 1.4;
  margin-top: 8px;
  margin-top: 0.5rem;
  overflow: hidden;
}

.p-column-card__img {
  border-radius: 0.25rem;
  margin-top: 24px;
  margin-top: 1.5rem;
  overflow: hidden;
  width: 100%;
}

.p-column-card__img img {
  -o-object-fit: cover;
  border-radius: 0.25rem;
  height: auto;
     object-fit: cover;
  overflow: hidden;
  width: 100%;
}

.p-column-card__img--list img {
  aspect-ratio: 500/360;
}

.p-column-card__content {
  margin-top: 10px;
  margin-top: 0.625rem;
}

.p-column-card:not(.p-column-card--featured) .p-column-card__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 24px;
  gap: 1.5rem;
}

.p-column-card:not(.p-column-card--featured) .p-column-card__img--list {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-top: 0;
  width: 255px;
  width: 15.9375rem;
}

.p-column-card__text-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 24px;
  gap: 1.5rem;
}

.p-column-card__excerpt {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  display: -webkit-box;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  letter-spacing: 0.03em;
  line-height: 1.9;
  overflow: hidden;
}

.p-column-card__button {
  margin-left: auto;
  margin-right: auto;
  margin-top: 13px;
  margin-top: 0.8125rem;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}
.p-column-card--featured {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  overflow: hidden;
}

.p-column-card--featured .p-column-card__box {
  display: contents;
  gap: 24px;
  gap: 1.5rem;
}

.p-column-card--featured .p-column-card__img {
  margin-top: 20px;
  margin-top: 1.25rem;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}

.p-column-card--featured .p-column-card__img img {
  aspect-ratio: 500/360;
}

.p-column-card--featured .p-column-card__body {
  display: contents;
}

.p-column-card--featured .p-column-card__header {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  padding-left: 64px;
  padding-left: 4rem;
}

.p-column-card--featured .p-column-card__meta {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 17px;
  gap: 1.0625rem;
  margin-top: 9px;
  margin-top: 0.5625rem;
}

.p-column-card--featured .p-column-card__title {
  margin-top: 0;
}

.p-column-card--featured .p-column-card__content {
  margin-top: 17px;
  margin-top: 1.0625rem;
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
}

.p-column-card--featured .p-column-card__button {
  margin-top: 14px;
  margin-top: 0.875rem;
  -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
          order: 4;
}

.p-column-contents {
  margin-top: 80px;
  margin-top: 5rem;
  position: relative;
  z-index: 1;
}

.p-column-contents__list {
  grid-gap: 1.5rem;
  display: grid;
  gap: 24px;
  gap: 1.5rem;
}

.p-column-contents__list--first-page {
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(4, 1fr);
}

.p-column-contents__list--first-page .p-column-contents__item--featured {
  grid-column: 1;
  grid-row: 1/3;
}

.p-column-contents__list--first-page .p-column-contents__item:nth-child(2) {
  grid-column: 2;
  grid-row: 1;
}

.p-column-contents__list--first-page .p-column-contents__item:nth-child(3) {
  grid-column: 2;
  grid-row: 2;
}

.p-column-contents__list--first-page .p-column-contents__item:nth-child(4) {
  grid-column: 1;
  grid-row: 3;
}

.p-column-contents__list--first-page .p-column-contents__item:nth-child(5) {
  grid-column: 2;
  grid-row: 3;
}

.p-column-contents__list--first-page .p-column-contents__item:nth-child(6) {
  grid-column: 1;
  grid-row: 4;
}

.p-column-contents__list--first-page .p-column-contents__item:nth-child(7) {
  grid-column: 2;
  grid-row: 4;
}

.p-column-contents__list--other-pages {
  grid-template-columns: repeat(2, 1fr);
}

.p-column-contents__item {
  background-color: #fff;
  border-radius: 0.5rem;
  overflow: hidden;
}

.p-column-contents__no-posts {
  color: #615d69;
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  padding: 40px;
  padding: 2.5rem;
  text-align: center;
}

.p-column-filter {
  margin-top: 38px;
  margin-top: 2.375rem;
  position: relative;
  z-index: 1;
}

.p-column-filter__header {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #bab3c6;
  border-radius: 0.5rem 0.5rem 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 15.9px 33px 15.9px 40px;
  padding: 0.99375rem 2.0625rem 0.99375rem 2.5rem;
}

.p-column-filter__title {
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(18px, 10px);
  font-size: max(1.125rem, 10px);
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 1.9;
}

.p-column-filter__close-btn {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: none;
  border: none;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  gap: 0.5rem;
  padding: 6px;
  padding: 0.375rem;
}

.p-column-filter__close-text {
  -webkit-text-decoration: underline;
  -webkit-text-decoration: underline;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(10px, 10px);
  font-size: max(0.625rem, 10px);
  font-weight: 500;
  letter-spacing: 0.06em;
  line-height: 1.9;
  text-decoration: underline;
}

.p-column-filter__close-icon {
  border-bottom: 0;
  border-left: 8px solid transparent;
  border-left: 0.5rem solid transparent;
  border-right: 8px solid transparent;
  border-right: 0.5rem solid transparent;
  border-style: solid;
  border-top: 13px solid #fff;
  border-top: 0.8125rem solid #fff;
  height: 0;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  width: 0;
}

.p-column-filter__close-btn.is-open .p-column-filter__close-icon {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}

.p-column-filter__content {
  background-color: #fff;
  border: 1px solid #bab3c6;
  border-radius: 0 0 0.5rem 0.5rem;
  max-height: 1000px;
  overflow: hidden;
  padding-bottom: 40px;
  padding-bottom: 2.5rem;
  padding-left: 40px;
  padding-left: 2.5rem;
  padding-right: 40px;
  padding-right: 2.5rem;
  padding-top: 40px;
  padding-top: 2.5rem;
  -webkit-transition: max-height 0.4s ease, padding 0.4s ease;
  transition: max-height 0.4s ease, padding 0.4s ease;
  will-change: max-height, padding;
}

.p-column-filter__content.is-open {
  max-height: 0;
  padding-bottom: 0;
  padding-top: 0;
}

.p-column-filter__section {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
  gap: 2.5rem;
  margin-top: 40px;
  margin-top: 2.5rem;
}

.p-column-filter__section:first-child {
  margin-top: 0;
}

.p-column-filter__section-title {
  color: #9d98a8;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 1.9;
  text-align: center;
  width: 80px;
  width: 5rem;
}

.p-column-filter__divider {
  background-color: #bab3c6;
  height: 100%;
  min-height: 80px;
  min-height: 5rem;
  width: 2px;
  width: 0.125rem;
}

.p-column-filter__tag-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 16px;
  gap: 1rem;
}

.p-column-filter__tag-item {
  list-style: none;
}

.p-column-filter__tag {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #f3f2f5;
  border: none;
  border-radius: 1rem;
  color: #545454;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  font-weight: 300;
  height: 32px;
  height: 2rem;
  letter-spacing: 0.05em;
  line-height: 1.2;
  padding-left: 16px;
  padding-left: 1rem;
  padding-right: 16px;
  padding-right: 1rem;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.p-column-filter__tag--selected {
  background-color: #716585;
  color: #fff;
}

.p-column-filter__tag.is-active {
  background-color: #716585;
  color: #fff;
}

.p-column-filter__no-terms {
  color: #615d69;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  font-style: italic;
}

.p-column-pagination {
  margin-top: 80px;
  margin-top: 5rem;
}

.p-column-pagination__nav {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  gap: 0.5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.p-column-pagination__arrow {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: none;
  border: none;
  color: #a49ab6;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 40px;
  height: 2.5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  width: 40px;
  width: 2.5rem;
}

.p-column-pagination__arrow--next {
  color: #a49ab6;
}

.p-column-pagination__arrow--disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

.p-column-pagination__arrow svg {
  height: 14px;
  height: 0.875rem;
  width: 7px;
  width: 0.4375rem;
}

.p-column-pagination__list {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  gap: 0.5rem;
}

.p-column-pagination__item {
  list-style: none;
}

.p-column-pagination__number {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #f6f5f7;
  border: none;
  border-radius: 3.875rem;
  color: #545454;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Namdhinggo", serif;
  font-size: max(18px, 10px);
  font-size: max(1.125rem, 10px);
  height: 40px;
  height: 2.5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  letter-spacing: 0.04em;
  line-height: 1.05;
  text-transform: uppercase;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  width: 40px;
  width: 2.5rem;
}

.p-column-pagination__number--active {
  background-color: #a49ab6;
  color: #fff;
}
.p-column {
  background-color: #f5f6f9;
  padding-bottom: 80px;
  padding-bottom: 5rem;
}

.p-content-case .wp-block-group.p-content-case__detail {
  margin-top: 30px;
  margin-top: 1.875rem;
}

.p-content-case .wp-block-group.p-content-case__gray-bg {
  margin-top: 80px;
  margin-top: 5rem;
}

.p-content-case__detail {
  border: 1px solid #a3a3a3;
  border: 0.0625rem solid #a3a3a3;
  padding: 22px 24px;
  padding: 1.375rem 1.5rem;
}

.p-content-case__detail > div {
  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;
  gap: 1.5rem;
}

.p-content-case__detail-block > div {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 24px;
  gap: 1.5rem;
}

.p-content-case__detail-block:first-child {
  border-bottom: 1px solid #d2ced9;
  border-bottom: 0.0625rem solid #d2ced9;
  padding-bottom: 24px;
  padding-bottom: 1.5rem;
}

.p-content p.p-content-case__detail-title {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  align-items: center;
  background-color: #f3f3f3;
  color: #686868;
  display: grid;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  font-weight: 300;
  height: 100%;
  justify-items: center;
  justify-items: center;
  letter-spacing: 0.04em;
  line-height: 1.4;
  margin: 0;
  min-height: 38px;
  min-height: 2.375rem;
  padding: 8px 10px;
  padding: 0.5rem 0.625rem;
  place-items: center;
  text-align: center;
  width: 9.25%;
}

.p-content p.p-content-case__detail-text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  height: 100%;
  letter-spacing: 0.03em;
  line-height: 1.9;
  margin: 0;
}

.p-content-case__gray-bg {
  background-color: #f5f4f6;
  padding: 30.9px 40px;
  padding: 1.93125rem 2.5rem;
}

.p-content-case .js-case-attention-pattern {
  display: none;
}

.p-content p.p-content-case__gray-bg-text {
  font-size: max(12px, 10px);
  font-size: max(0.75rem, 10px);
  line-height: 1.6;
  margin: 0;
}

.p-content-case .wp-block-gallery + p {
  margin-top: 30px;
  margin-top: 1.875rem;
}

.p-content-case.p-content .back-button {
  margin-top: 80px;
  margin-top: 5rem;
}

.p-content-service .p-content-faq__block.wp-block-group:nth-of-type(n + 2) {
  margin-top: 31px;
  margin-top: 1.9375rem;
}

.p-content-faq__block {
  border: 1px solid #cfcfcf;
  border: 0.0625rem solid #cfcfcf;
  margin-top: 32px;
  margin-top: 2rem;
}

.p-content-faq__question {
  background-color: #f5f4f6;
  cursor: pointer;
}

.p-content-faq__question .wp-block-group__inner-container {
  padding: 14.8px 64px 14.8px 34px;
  padding: 0.925rem 4rem 0.925rem 2.125rem;
  position: relative;
}

.p-content-faq__question .wp-block-group__inner-container p {
  display: block;
  margin: 0;
  padding-left: 2.5em;
  position: relative;
  text-indent: -2.1em;
}

.p-content-faq__question .wp-block-group__inner-container p::before {
  color: #8f83a5;
  content: "Q.";
  font-weight: 500;
  margin-right: 16px;
  margin-right: 1rem;
}

.p-content-faq__question .wp-block-group__inner-container::after {
  -webkit-mask-image: url(../images/common/accordion-arrow.svg);
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  background-color: #bababa;
  content: "";
  display: inline-block;
  height: 7px;
  height: 0.4375rem;
          mask-image: url(../images/common/accordion-arrow.svg);
          mask-repeat: no-repeat;
          mask-size: contain;
  pointer-events: none;
  position: absolute;
  right: 40px;
  right: 2.5rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  width: 14px;
  width: 0.875rem;
}

.p-content-faq__block.is-open .p-content-faq__question .wp-block-group__inner-container::after {
  -webkit-transform: translateY(-50%) rotate(180deg);
          transform: translateY(-50%) rotate(180deg);
}

.p-content-faq__answer {
  background-color: white;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  -webkit-transition: max-height 0.4s ease, opacity 0.4s ease;
  transition: max-height 0.4s ease, opacity 0.4s ease;
}

.p-content-service .wp-block-group:nth-of-type(n + 2).p-content-faq__answer,
.p-content .p-content-faq__block:nth-of-type(n + 2) .p-content-faq__answer {
  margin-top: 0;
}

.p-content-faq__answer .wp-block-group__inner-container {
  padding: 14.8px 70px;
  padding: 0.925rem 4.375rem;
  -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;
  width: 100%;
}

.p-content-faq__answer .wp-block-group__inner-container p {
  display: block;
  margin: 0;
  padding-left: 2.5em;
  text-indent: -2.1em;
  width: 100%;
}

.p-content-faq__answer .wp-block-group__inner-container p::before {
  color: #8f83a5;
  content: "A.";
  font-weight: 500;
  margin-right: 16px;
  margin-right: 1rem;
}

.p-content-faq__block.is-open .p-content-faq__answer {
  opacity: 1;
}

.p-content-service .wp-block-group:nth-of-type(n + 2) {
  margin-top: 107px;
  margin-top: 6.6875rem;
}

.p-content-service .wp-block-group.menu-block + .menu-block {
  margin-top: 42px;
  margin-top: 2.625rem;
}

.p-content-service .wp-block-group.p-content-service__handling2 {
  margin-top: 42px;
  margin-top: 2.625rem;
}

.p-content-service.p-content p.sub-group-title--service {
  margin-top: 19px;
  margin-top: 1.1875rem;
}

.p-content-service.p-content p + .sub-group-title--service {
  margin-top: 38px;
  margin-top: 2.375rem;
}

.p-content-service .wp-block-group.p-content-service__handling h2 + .sub-group-title--service,
.p-content-service .wp-block-group.p-content-service__handling h2 + .menu-block {
  margin-top: 45px;
  margin-top: 2.8125rem;
}

.p-content-service.p-content h3 {
  margin-top: 45px;
  margin-top: 2.8125rem;
}

.p-content-service.p-content p.sub-group-title + h3,
.p-content-service.p-content p + h3 {
  margin-top: 35px;
  margin-top: 2.1875rem;
}

.p-content-service .wp-block-group.p-content-service__handling2 h3 {
  margin-top: 0;
}

.p-content-service.p-content h3 + p {
  margin-top: 12px !important;
  margin-top: 0.75rem !important;
}

.p-content-service.p-content p.sub-group-title + p {
  margin-top: -4px;
  margin-top: -0.25rem;
}

.p-content-service.p-content p code {
  margin-top: 5px;
  margin-top: 0.3125rem;
}

.p-content-service .wp-block-group.p-content-service__handling2 p code {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.p-content-service.p-content p:has(code) + .p-content-service__price-text {
  margin-top: 38px;
  margin-top: 2.375rem;
}

.p-content-service .wp-block-table + p.sub-group-title--service {
  margin-top: 42px;
  margin-top: 2.625rem;
}

.p-content-service.p-content h2 + .wp-block-table {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.p-content-service__head {
  background-color: #faf8fc;
  background-color: rgba(186, 179, 198, 0.1);
  mix-blend-mode: multiply;
  padding: 55px 50px 55px;
  padding: 3.4375rem 3.125rem 3.4375rem;
  text-align: center;
}

.p-content-service__head2 {
  margin-top: -10px;
  margin-top: -0.625rem;
  padding: 0 50px 2px;
  padding: 0 3.125rem 0.125rem;
  text-align: center;
}

.p-content-service__head--circle3 {
  padding: 55px 80px 62px;
  padding: 3.4375rem 5rem 3.875rem;
}

.p-content-service__head--circle4 {
  padding: 48px 42px 55px;
  padding: 3rem 2.625rem 3.4375rem;
}

.p-content-service h1 {
  border-bottom: 1px solid #545454;
  border-bottom: 0.0625rem solid #545454;
  display: block;
  font-family: "Shippori Mincho", serif;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.5;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 8px;
  padding-bottom: 0.5rem;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

.p-content-service .p-content-service__head h1,
.p-content-service .p-content-service__head h2 {
  border-bottom: 1px solid #545454;
  border-bottom: 0.0625rem solid #545454;
  display: inline-block;
  font-family: "Shippori Mincho", serif;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.5;
  padding-bottom: 8px;
  padding-bottom: 0.5rem;
}

.p-content-service .p-content-service__head2-h1 {
  display: inline-block;
  font-family: "Shippori Mincho", serif;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.5;
}

.p-content .p-content-service__head p,
.p-content .p-content-service__head2-text {
  font-size: 16px;
  font-size: 1rem;
  letter-spacing: 0.03em;
  line-height: 2.1;
  margin-top: 53px;
  margin-top: 3.3125rem;
}

.p-content .p-content-service__head p + p {
  margin-top: 36px;
  margin-top: 2.25rem;
}

.p-content .p-content-service__head p code {
  margin-top: 0;
}

.p-content p.p-content-service__head2-text {
  margin-top: 45px;
  margin-top: 2.8125rem;
}

.p-content p.p-content-service__head2-text + .p-content-service__head2-text {
  margin-top: 35px;
  margin-top: 2.1875rem;
}

.p-content-service__head-circles3.wp-block-group {
  margin-top: 26px;
  margin-top: 1.625rem;
}

.p-content-service__head-circles3 > .wp-block-group__inner-container {
  grid-column-gap: 3.5rem;
  -moz-column-gap: 3.5rem;
       -webkit-column-gap: 3.5rem;
          column-gap: 3.5rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

.p-content p.p-content-service__head-circle {
  margin: 0 !important;
}

.p-content p.p-content-service__head-circle {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  align-items: center;
  aspect-ratio: 1/1;
  border-radius: 50%;
  display: grid;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  font-family: "Shippori Mincho", serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  height: auto;
  justify-items: center;
  justify-items: center;
  letter-spacing: -0.05em;
  line-height: 1.8;
  place-items: center;
  position: relative;
}
.p-content p.p-content-service__head-circle::before {
  background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e7e4ec));
  background: linear-gradient(to bottom, #ffffff, #e7e4ec);
  border-radius: 50%;
  bottom: 0;
  content: "";
  -webkit-filter: blur(5px);
          filter: blur(5px);
  height: 100%;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  z-index: -1;
}

.p-content-service__head-circles4.wp-block-group {
  margin-top: 12px;
  margin-top: 0.75rem;
}

.p-content-service__head-circles4 > .wp-block-group__inner-container {
  grid-gap: 1.5rem;
  display: grid;
  gap: 24px;
  gap: 1.5rem;
  grid-template-columns: repeat(4, 1fr);
}

.p-content-service__head-circles4 + p {
  margin-top: 14px !important;
  margin-top: 0.875rem !important;
}

.p-content-service__head.p-content-service__head--circles3-text {
  padding: 55px 89px 58px;
  padding: 3.4375rem 5.5625rem 3.625rem;
}

.p-content-service__head-circles3-text.wp-block-group {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.p-content-service__head-circles3-text > .wp-block-group__inner-container {
  grid-column-gap: 3.5rem;
  -moz-column-gap: 3.5rem;
       -webkit-column-gap: 3.5rem;
          column-gap: 3.5rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

.p-content-service .wp-block-group.p-content-service__head-circle-wrap {
  margin: 0 !important;
}

.p-content-service__head.p-content-service__head--circles3-text h2:after {
  content: none;
}

.p-content p.p-content-service__head-circle-text {
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.03em;
  line-height: 1.9;
  text-align: left;
}

.p-content p.p-content-service__head-circle + .p-content-service__head-circle-text {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.p-content-service .wp-block-group.p-content-service__parts {
  margin-top: 22px;
  margin-top: 1.375rem;
}

.p-content-service.p-content p + .p-content-service__parts {
  margin-top: 8px;
  margin-top: 0.5rem;
}

.p-content-service__parts > div {
  -moz-column-gap: 0.875rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
       -webkit-column-gap: 0.875rem;
               column-gap: 0.875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.p-content p.p-content-service__parts-label {
  border: 1px solid #a49ab6;
  border: 0.0625rem solid #a49ab6;
  border-radius: 0.1875rem;
  color: #8f83a5;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.03em;
  line-height: 1;
  margin: 0;
  padding: 7.2px 9.4px;
  padding: 0.45rem 0.5875rem;
  text-align: center;
}

.p-content-service__parts-list {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
  gap: 0.5rem;
}

.p-content ul.p-content-service__parts-list {
  margin: 0 !important;
}

.p-content ul.p-content-service__parts-list {
  list-style: none;
  padding-left: 0;
}

.p-content-service__parts-list li {
  margin-top: -4px !important;
  margin-top: -0.25rem !important;
}

.p-content-service__parts-list li {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.03em;
  line-height: 1;
}

.p-content-service__parts-list li::before {
  content: "▪";
}

.p-content p.p-content-service__price-text {
  color: #8f83a5;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 1.9;
}

.p-content-service__price-text + .wp-block-table table {
  margin-top: 5px;
  margin-top: 0.3125rem;
}

.p-content p.p-content-service__monitor-text {
  margin-top: 45px;
  margin-top: 2.8125rem;
}

.p-content p.p-content-service__monitor-text + .sub-group-title--service {
  margin-top: 35px;
  margin-top: 2.1875rem;
}

.p-content-service__monitor-wrap {
  background-color: white;
  margin-top: 20px;
  margin-top: 1.25rem;
  padding: 24px 24px 18px;
  padding: 1.5rem 1.5rem 1.125rem;
}

.p-content-service__monitor-table table {
  border-collapse: separate !important;
  margin-top: 0 !important;
}

.p-content-service__monitor-table table {
  border-spacing: 2px;
  border-spacing: 0.125rem;
  width: 100%;
}

.p-content-service__monitor-table td {
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.03em;
  line-height: 1.6;
  padding: 16px 20px;
  padding: 1rem 1.25rem;
  vertical-align: top;
}

.p-content-service__monitor-table td:first-child {
  -ms-flex-line-pack: center;
      align-content: center;
  align-content: center;
  background-color: #f3f2f5;
  border: none;
  color: #545454;
  font-size: 14px;
  font-size: 0.875rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  justify-content: center;
  padding: 7.7px 12px;
  padding: 0.48125rem 0.75rem;
  place-content: center;
  width: 15.85%;
}

.p-content-service__monitor-table td:last-child {
  background-color: #f7f7f7;
  border: none;
  color: #545454;
  font-size: 14px;
  font-size: 0.875rem;
  padding: 7.7px 24px;
  padding: 0.48125rem 1.5rem;
  text-align: left;
  width: 83.92%;
}

.p-content-service .p-content-service__monitor-wrap p code {
  font-size: 12px;
  font-size: 0.75rem;
  letter-spacing: 0.03em;
  line-height: 1.9;
  margin-top: 12px;
  margin-top: 0.75rem;
}

.p-content-service__flow-list {
  counter-reset: flow-counter;
  margin-left: auto;
  margin-right: auto;
  max-width: 704px;
  max-width: 44rem;
  position: relative;
}

.p-content ol.p-content-service__flow-list {
  margin-top: 56px !important;
  margin-top: 3.5rem !important;
}

.p-content ol.p-content-service__flow-list {
  list-style: none;
  padding-left: 0;
}

.p-content-service__flow-list::before {
  background-color: #bab3c6;
  content: "";
  height: 80%;
  left: 15px;
  left: 0.9375rem;
  position: absolute;
  top: 10%;
  width: 3px;
  width: 0.1875rem;
}

.p-content ol.p-content-service__flow-list li {
  -ms-flex-line-pack: center;
      align-content: center;
  align-content: center;
  background-color: white;
  border-radius: 0.25rem;
  font-size: 14px;
  font-size: 0.875rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  justify-content: center;
  letter-spacing: 0.03em;
  line-height: 1.9;
  margin-left: 88px;
  margin-left: 5.5rem;
  margin-top: 24px;
  margin-top: 1.5rem;
  padding: 12px 32px 17.6px;
  padding: 0.75rem 2rem 1.1rem;
  place-content: center;
  position: relative;
}

.p-content-service__flow-list li:first-child {
  margin-top: 0;
}

.p-content-service__flow-list li::before {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #bab3c6;
  border-radius: 50%;
  color: white;
  content: counter(flow-counter);
  counter-increment: flow-counter;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 600;
  height: 48px;
  height: 3rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  left: -96px;
  left: -6rem;
  line-height: 1;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 48px;
  width: 3rem;
}

.p-content-service__flow-list li::after {
  border-color: transparent white transparent transparent;
  border-style: solid;
  border-width: 20px 40px 20px 0;
  border-width: 1.25rem 2.5rem 1.25rem 0;
  content: "";
  height: 0;
  left: -25px;
  left: -1.5625rem;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 0;
}

.p-content-service__flow-list li strong {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #ede8f6));
  background: linear-gradient(transparent 50%, #ede8f6 50%);
  background-position: bottom left;
  display: inline-block;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 400;
  letter-spacing: 0.03em;
  line-height: 2.1;
  margin-bottom: 5px;
  margin-bottom: 0.3125rem;
  mix-blend-mode: darken;
}

.p-content-service .wp-block-group:nth-of-type(n + 2).p-content-service__notes {
  margin-top: 115px;
  margin-top: 7.1875rem;
}

.p-content-service__notes {
  background-color: #f5f6f9;
  position: relative;
  text-align: center;
}

.p-content-service__notes > .wp-block-group__inner-container {
  background-color: #faf8fc;
  mix-blend-mode: multiply;
  padding: 34px 24px 25px;
  padding: 2.125rem 1.5rem 1.5625rem;
}

.p-content-service.p-content p.p-content-service__notes-title {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 15px;
  font-size: 0.9375rem;
  letter-spacing: 0;
  line-height: 1.2;
  margin: 0;
}

.p-content-service.p-content p.p-content-service__notes-text {
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.03em;
  line-height: 1.9;
  margin-top: 15px;
  margin-top: 0.9375rem;
}

.p-content-service .wp-block-group:nth-of-type(n + 2).p-content-service__for {
  margin-top: 120px;
  margin-top: 7.5rem;
}

.p-content-service__for {
  background: url(../images/common/single-service-bg.jpg) no-repeat center/cover;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding-bottom: 68px;
  padding-bottom: 4.25rem;
  padding-left: calc(50vw - 50%);
  padding-right: calc(50vw - 50%);
  padding-top: 70px;
  padding-top: 4.375rem;
  text-align: center;
}

.p-content-service__for-wrap {
  margin-left: auto;
  margin-right: auto;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

.p-content p.p-content-service__for-title {
  border-bottom: 2px solid #d2ced9;
  border-bottom: 0.125rem solid #d2ced9;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 1.9;
  margin: 0;
  padding-bottom: 14px;
  padding-bottom: 0.875rem;
}

.p-content p.p-content-service__for-text {
  font-size: 18px;
  font-size: 1.125rem;
  letter-spacing: 0.03em;
  line-height: 2.1;
  margin-top: 12px;
  margin-top: 0.75rem;
}

.p-content-service__features-wrap > div {
  grid-gap: 1.5rem;
  display: grid;
  gap: 24px;
  gap: 1.5rem;
  grid-template-columns: repeat(auto-fit, minmax(10.75rem, 1fr));
  margin-top: 56px;
  margin-top: 3.5rem;
}

.p-content-service__features-item {
  display: grid;
  grid-row: span 2;
  grid-template-rows: subgrid;
  height: 100%;
  text-align: center;
}

.p-content-service .wp-block-group:nth-of-type(n + 2).p-content-service__features-item {
  margin-top: 0;
}

.p-content-service__features-item .wp-block-group__inner-container {
  grid-gap: 0;
  display: grid;
  gap: 0;
  grid-row: span 2;
  grid-template-rows: subgrid;
  height: 100%;
}

.p-content p.p-content-service__features-up {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  align-items: center;
  background-color: #f0eff6;
  border-left: 2px solid #d2ced9;
  border-left: 0.125rem solid #d2ced9;
  border-radius: 0.75rem 0.75rem 0 0;
  border-right: 2px solid #d2ced9;
  border-right: 0.125rem solid #d2ced9;
  border-top: 2px solid #d2ced9;
  border-top: 0.125rem solid #d2ced9;
  color: #8f83a5;
  display: grid;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  justify-items: center;
  justify-items: center;
  letter-spacing: 0.08em;
  line-height: 1.6;
  margin-top: 0;
  padding: 17px 8px;
  padding: 1.0625rem 0.5rem;
  place-items: center;
}

.p-content p.p-content-service__features-down {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  align-items: center;
  background-color: white;
  border-bottom: 2px solid #d2ced9;
  border-bottom: 0.125rem solid #d2ced9;
  border-left: 2px solid #d2ced9;
  border-left: 0.125rem solid #d2ced9;
  border-radius: 0 0 0.75rem 0.75rem;
  border-right: 2px solid #d2ced9;
  border-right: 0.125rem solid #d2ced9;
  display: grid;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 300;
  justify-items: center;
  justify-items: center;
  letter-spacing: 0.03em;
  line-height: 1.6;
  padding: 17px 8px;
  padding: 1.0625rem 0.5rem;
  place-items: center;
}

.p-content p:nth-of-type(n + 2).p-content-service__features-down,
.p-content p:nth-of-type(n + 2).p-content-service__features-box {
  margin-top: 0;
}

.p-content-service__features-boxes {
  margin-left: auto;
  margin-right: auto;
  width: 79.49%;
}

.p-content-service__features-boxes > div {
  grid-gap: 1.5rem;
  display: grid;
  gap: 24px;
  gap: 1.5rem;
  grid-template-columns: repeat(3, 1fr);
  margin-top: 56px;
  margin-top: 3.5rem;
}

.p-content p.p-content-service__features-box {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  align-items: center;
  background-color: #f0eff6;
  border: 2px solid #d2ced9;
  border: 0.125rem solid #d2ced9;
  border-radius: 0.75rem;
  color: #8f83a5;
  display: grid;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  justify-items: center;
  justify-items: center;
  letter-spacing: 0.08em;
  line-height: 1.6;
  margin-top: 0;
  padding: 23.1px 40px;
  padding: 1.44375rem 2.5rem;
  place-items: center;
  text-align: center;
}

.p-content-service .wp-block-group:nth-of-type(n + 2).p-content-service__cards,
.p-content-service__cards {
  margin-top: 6px;
  margin-top: 0.375rem;
}

.p-content-service__cards > .wp-block-group__inner-container {
  grid-gap: 2.3125rem;
  display: grid;
  gap: 37px;
  gap: 2.3125rem;
  grid-template-columns: repeat(3, 1fr);
}

.p-content-service .wp-block-group.p-content-service__card,
.p-content-service figure.wp-block-image.p-content-service__card-img {
  margin: 0;
}

.p-content-service__card,
.p-content-service__card > .wp-block-group__inner-container {
  grid-gap: 0;
  display: grid;
  gap: 0;
  grid-row: span 3;
  grid-template-rows: subgrid;
}

.p-content p.p-content-service__card-title {
  color: #81749a;
  display: inline-block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 1.9;
  margin: 0;
  padding-left: 22px;
  padding-left: 1.375rem;
  position: relative;
}

.p-content p.p-content-service__card-title::before {
  background-color: #a49ab6;
  content: "";
  height: 14px;
  height: 0.875rem;
  left: 0;
  position: absolute;
  top: 8px;
  top: 0.5rem;
  width: 14px;
  width: 0.875rem;
}

.p-content p.p-content-service__card-title + figure.wp-block-image.p-content-service__card-img {
  margin-top: 8px;
  margin-top: 0.5rem;
}

.p-content-service__card-img img {
  -o-object-fit: cover;
  aspect-ratio: 294/220;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-content p.p-content-service__card-text {
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.03em;
  line-height: 1.9;
  margin-top: 6px;
  margin-top: 0.375rem;
}

.p-content-service .p-content-service__cards + .p-content-service__price-text {
  margin-top: 8px;
  margin-top: 0.5rem;
}

.p-content-service .wp-block-group:nth-of-type(n + 2).p-content-service__img-cards,
.p-content-service__img-cards {
  margin-top: 16px;
  margin-top: 1rem;
}

.p-content-service__img-cards > .wp-block-group__inner-container {
  grid-gap: 2.3125rem;
  display: grid;
  gap: 37px;
  gap: 2.3125rem;
  grid-template-columns: repeat(3, 1fr);
}

.p-content-service figure.wp-block-image.p-content-service__img-card {
  margin: 0;
}

.p-content-service__img-card img {
  -o-object-fit: cover;
  aspect-ratio: 294/220;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-content-service .p-content-service__img-cards + .p-content-service__price-text {
  margin-top: 14px;
  margin-top: 0.875rem;
}

.p-content-service.p-content .mt-100 {
  margin-top: 101px !important;
  margin-top: 6.3125rem !important;
}

.p-content-service.p-content .mt-5 {
  margin-top: 5px !important;
  margin-top: 0.3125rem !important;
}

.p-content-service.p-content .mt-3 {
  margin-top: 3px !important;
  margin-top: 0.1875rem !important;
}

/* （the_content()で出力したものへのスタイル） */
.p-content h2 {
  border-bottom: 2px solid #D2CED9;
  border-bottom: 0.125rem solid #D2CED9;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.9;
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
  position: relative;
}

.p-content h2::after {
  background: #8f83a5;
  bottom: -1.5px;
  bottom: -0.09375rem;
  content: "";
  height: 2px;
  height: 0.125rem;
  left: 0;
  position: absolute;
  width: 10.3%;
}

.p-content-case.p-content h2,
.p-content--column h2,
.p-content--single h2 {
  margin-top: 69px;
  margin-top: 4.3125rem;
}

.p-content p + h2 {
  margin-top: 60px;
  margin-top: 3.75rem;
}

.p-content h3 {
  color: #81749a;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  gap: 8px;
  gap: 0.5rem;
  letter-spacing: 0.03em;
  line-height: 1.9;
}

.p-content h3::before {
  aspect-ratio: 1/1;
  background-color: #a49ab6;
  content: "";
  display: inline-block;
  height: 14px;
  height: 0.875rem;
  margin-top: 11px;
  margin-top: 0.6875rem;
  width: 14px;
  width: 0.875rem;
}

.p-content h3 {
  margin-top: 36px;
  margin-top: 2.25rem;
}

.p-content--column p + h3,
.p-content--single p + h3 {
  margin-top: 30px;
  margin-top: 1.875rem;
}

.p-content h4 {
  margin-top: 30px;
  margin-top: 1.875rem;
}

.p-content p {
  display: block;
  font-size: 16px;
  font-size: 1rem;
  letter-spacing: 0.03em;
  line-height: 1.9;
}

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

.p-content p:has(code) {
  margin-top: 0;
}

.p-content h3 + p {
  margin-top: 3px !important;
  margin-top: 0.1875rem !important;
}

.p-content--column h3 + p,
.p-content--single h3 + p {
  margin-top: 12px !important;
  margin-top: 0.75rem !important;
}

.p-content p.sub-group-title {
  color: #81749a;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 1.9;
  margin-top: 35px;
  margin-top: 2.1875rem;
}

.p-content p.sub-group-title + h3 {
  margin-top: 28px;
  margin-top: 1.75rem;
}

.p-content p code {
  display: block;
  font-family: "Noto Serif JP", serif;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.03em;
  line-height: 1.9;
  margin-top: 40px;
  margin-top: 2.5rem;
}

.p-content .wp-block-image,
.p-content figure.wp-block-image,
.p-content figure.wp-block-embed {
  margin-top: 32px;
  margin-top: 2rem;
}

.p-content--column figure.wp-block-image,
.p-content--single figure.wp-block-image {
  margin-top: 25px;
  margin-top: 1.5625rem;
}

.p-content--column p + .wp-block-gallery,
.p-content--single p + .wp-block-gallery {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.p-content table {
  border-collapse: collapse;
  margin-top: 14.5px;
  margin-top: 0.90625rem;
  overflow: hidden;
  width: 100%;
}

.p-content thead {
  border-bottom: none;
  border-left: 1px solid #cfcfcf;
  border-left: 0.0625rem solid #cfcfcf;
  border-right: 1px solid #cfcfcf;
  border-right: 0.0625rem solid #cfcfcf;
  border-top: 1px solid #cfcfcf;
  border-top: 0.0625rem solid #cfcfcf;
}

.p-content th {
  background-color: #D2CED9;
  border: none;
  border-left: 2px solid #f6f5f7;
  border-left: 0.125rem solid #f6f5f7;
  color: #545454;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 1.9;
  padding: 6.4px 16px;
  padding: 0.4rem 1rem;
  text-align: center;
}

.p-content th:first-child {
  border-left: none;
}

.p-content td {
  background-color: white;
  border: 1px solid #cfcfcf;
  border: 0.0625rem solid #cfcfcf;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0.03em;
  line-height: 1.9;
  padding: 7.4px 10px;
  padding: 0.4625rem 0.625rem;
  text-align: center;
}

.p-content td span {
  display: inline-block;
  font-size: 13px;
  font-size: 0.8125rem;
  line-height: 1.5;
}

.p-content .center-wide table th:nth-of-type(2),
.p-content .center-wide table td:nth-of-type(2) {
  width: 48.48%;
}

.p-content .center-wide table td:nth-of-type(2) {
  letter-spacing: 0;
  line-height: 1.7;
  padding: 8.5px 9px;
  padding: 0.53125rem 0.5625rem;
  text-align: left;
}

.p-content .left-wide table th:nth-of-type(1),
.p-content .left-wide table td:nth-of-type(1) {
  width: 48.48%;
}

.p-content .center-wide table td:nth-of-type(1) {
  letter-spacing: 0;
  line-height: 1.7;
  padding: 8.5px 9px;
  padding: 0.53125rem 0.5625rem;
  text-align: left;
}

.p-content .col2-desc table td:nth-of-type(2) {
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0;
  line-height: 1.7;
  padding: 9.8px 9px;
  padding: 0.6125rem 0.5625rem;
  text-align: left;
}

.p-content .left-desc table td:nth-of-type(1) {
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0;
  line-height: 1.7;
  padding: 9.8px 9px;
  padding: 0.6125rem 0.5625rem;
}

.p-content .center-desc table td:nth-of-type(2) {
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0;
  line-height: 1.7;
  padding: 9.8px 10px;
  padding: 0.6125rem 0.625rem;
  text-align: left;
}

.p-content a {
  -webkit-text-decoration: underline;
  -webkit-text-decoration: underline;
  color: #8f83a5;
  text-decoration: underline;
}

.p-content a.c-back-button {
  -webkit-text-decoration: none;
  -webkit-text-decoration: none;
  color: white;
  text-decoration: none;
}

.p-content .back-button {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 85px;
  margin-top: 5.3125rem;
}

.p-content .wp-block-button {
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
  width: 200px;
  width: 12.5rem;
}

.p-content .back-button a {
  -moz-column-gap: 1rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #615d69;
  border-radius: 0.3125rem;
  color: white;
       -webkit-column-gap: 1rem;
               column-gap: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  letter-spacing: 0.05em;
  line-height: 1;
  padding: 13px 15px;
  padding: 0.8125rem 0.9375rem;
  -webkit-transition: background-color 0.3s ease-out;
  transition: background-color 0.3s ease-out;
  width: 100%;
}

.p-content .back-button a::before {
  border-right: 1px solid #A3A3A3;
  border-top: 1px solid #A3A3A3;
  content: "";
  display: inline-block;
  height: 8px;
  height: 0.5rem;
  rotate: -135deg;
  translate: 0 1px;
  width: 8px;
  width: 0.5rem;
}
.p-content .button-link {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 85px;
  margin-top: 5.3125rem;
}

.p-content .button-link .wp-block-button {
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

.p-content .button-link a {
  -moz-column-gap: 1rem;
  -webkit-text-decoration: none;
  -webkit-text-decoration: none;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #615d69;
  border-radius: 0.3125rem;
  color: white;
       -webkit-column-gap: 1rem;
               column-gap: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  letter-spacing: 0.05em;
  line-height: 1;
  padding: 13px 20px;
  padding: 0.8125rem 1.25rem;
  text-decoration: none;
  -webkit-transition: background-color 0.3s ease-out;
  transition: background-color 0.3s ease-out;
  width: 100%;
}

.p-content .button-link a::after {
  border-right: 1px solid #A3A3A3;
  border-top: 1px solid #A3A3A3;
  content: "";
  display: inline-block;
  height: 8px;
  height: 0.5rem;
  rotate: 45deg;
  translate: 0 1px;
  width: 8px;
  width: 0.5rem;
}
.p-content ul:not(:first-child),
.p-content ol:not(:first-child) {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.p-content ul {
  list-style: disc;
  padding-left: 24px;
  padding-left: 1.5rem;
}

.p-content ol {
  list-style: decimal;
  padding-left: 24px;
  padding-left: 1.5rem;
}

.p-content ul li,
.p-content ol li {
  margin-top: 8px;
  margin-top: 0.5rem;
}

/* 投稿ブロックカスタムパターン */
/* 画像１枚(サイズ固定)パターン */
.custom-pattern__gallery1.wp-block-image {
  margin-left: auto;
  margin-right: auto;
  max-width: 624px;
  max-width: 39rem;
  width: 100%;
}
.custom-pattern__gallery1.wp-block-image img {
  -o-object-fit: cover;
  aspect-ratio: 624/468;
  height: auto;
     object-fit: cover;
  width: 100%;
}

/* 【半分サイズ】画像１枚ギャラリーパターン */
.custom-pattern__gallery1-half.is-layout-flex {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}

.custom-pattern__gallery1-half:not(:first-child) {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.custom-pattern__gallery1-half.wp-block-gallery.wp-block-gallery-is-layout-flex {
  gap: 24px;
  gap: 1.5rem;
}

.custom-pattern__gallery1-half.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:nth-last-child(2),
.custom-pattern__gallery1-half.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:nth-last-child(2) ~ figure.wp-block-image:not(#individual-image) {
  width: 100%;
}

.custom-pattern__gallery1-half figure.wp-block-image {
  width: 50%;
}
.custom-pattern__gallery1-half figure.wp-block-image img {
  -o-object-fit: cover;
  aspect-ratio: 466/295;
  height: auto;
     object-fit: cover;
  width: 100%;
}

/* 【縦長】画像２枚ギャラリーパターン */
.custom-pattern__gallery2-tall.is-layout-flex {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  margin-left: auto;
  margin-right: auto;
  max-width: 624px;
  max-width: 39rem;
}

.custom-pattern__gallery2-tall:not(:first-child) {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.custom-pattern__gallery2-tall.wp-block-gallery.wp-block-gallery-is-layout-flex {
  gap: 24px;
  gap: 1.5rem;
}

.custom-pattern__gallery2-tall.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:nth-last-child(2),
.custom-pattern__gallery2-tall.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:nth-last-child(2) ~ figure.wp-block-image:not(#individual-image) {
  width: 100%;
}

.custom-pattern__gallery2-tall figure.wp-block-image {
  width: 50%;
}
.custom-pattern__gallery2-tall figure.wp-block-image img {
  -o-object-fit: cover;
  aspect-ratio: 300/400;
  height: auto;
     object-fit: cover;
  width: 100%;
}

/* 【横長】画像２枚ギャラリーパターン */
.custom-pattern__gallery2-wide.is-layout-flex {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}

.custom-pattern__gallery2-wide:not(:first-child) {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.custom-pattern__gallery2-wide.wp-block-gallery.wp-block-gallery-is-layout-flex {
  gap: 24px;
  gap: 1.5rem;
}

.custom-pattern__gallery2-wide.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:nth-last-child(2),
.custom-pattern__gallery2-wide.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:nth-last-child(2) ~ figure.wp-block-image:not(#individual-image) {
  width: 100%;
}

.custom-pattern__gallery2-wide figure.wp-block-image {
  width: 50%;
}
.custom-pattern__gallery2-wide figure.wp-block-image img {
  -o-object-fit: cover;
  aspect-ratio: 466/295;
  height: auto;
     object-fit: cover;
  width: 100%;
}

/* 【正方形】画像３枚ギャラリーパターン */
.custom-pattern__gallery3-square.is-layout-flex {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

.custom-pattern__gallery3-square:not(:first-child) {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.custom-pattern__gallery3-square.wp-block-gallery.wp-block-gallery-is-layout-flex {
  gap: 28px;
  gap: 1.75rem;
}

.custom-pattern__gallery3-square.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image) {
  width: 100%;
}
.custom-pattern__gallery3-square figure.wp-block-image:nth-child(1) img {
  -o-object-fit: cover;
  aspect-ratio: 300/300;
  height: auto;
     object-fit: cover;
  width: 100%;
}
.custom-pattern__gallery3-square figure.wp-block-image:nth-child(2) img,
.custom-pattern__gallery3-square figure.wp-block-image:nth-child(3) img {
  -o-object-fit: cover;
  aspect-ratio: 300/300;
  height: auto;
     object-fit: cover;
  width: 100%;
}

/* 【縦長】画像３枚ギャラリーパターン */
.custom-pattern__gallery3-tall.is-layout-flex {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

.custom-pattern__gallery3-tall:not(:first-child) {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.custom-pattern__gallery3-tall.wp-block-gallery.wp-block-gallery-is-layout-flex {
  gap: 28px;
  gap: 1.75rem;
}

.custom-pattern__gallery3-tall.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image) {
  width: 100%;
}
.custom-pattern__gallery3-tall figure.wp-block-image:nth-child(1) img {
  -o-object-fit: cover;
  aspect-ratio: 300/400;
  height: auto;
     object-fit: cover;
  width: 100%;
}
.custom-pattern__gallery3-tall figure.wp-block-image:nth-child(2) img,
.custom-pattern__gallery3-tall figure.wp-block-image:nth-child(3) img {
  -o-object-fit: cover;
  aspect-ratio: 300/400;
  height: auto;
     object-fit: cover;
  width: 100%;
}

/* テキストボックス(白背景)パターン */
.custom-pattern__textbox-white:not(:first-child) {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.custom-pattern__textbox-white {
  background-color: white;
  padding: 55px 80px;
  padding: 3.4375rem 5rem;
}

.custom-pattern__textbox-white p {
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  letter-spacing: 0.03em;
  line-height: 2.1;
  margin: 0;
}

/* この記事の監修者ブロック */
.custom-pattern__supervisor {
  background-color: #f5f6f9;
  margin-top: 80px;
  margin-top: 5rem;
}

.custom-pattern__supervisor > .wp-block-group__inner-container {
  background-color: #FAF8FC;
  mix-blend-mode: multiply;
  padding: 30px 47px;
  padding: 1.875rem 2.9375rem;
}

.custom-pattern__supervisor-wrap {
  gap: 0;
}

.custom-pattern__supervisor-left {
  text-align: center;
  width: 27.32%;
}

.custom-pattern__supervisor-left .wp-block-group__inner-container {
  border-right: 1px solid #545454;
  padding-right: 54px;
  padding-right: 3.375rem;
}

.p-content p.custom-pattern__supervisor-title,
.p-content p.custom-pattern__supervisor-name {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.9;
  margin: 0;
}

.p-content p.custom-pattern__supervisor-name span {
  font-size: 16px;
  font-size: 1rem;
}

.p-content--column .custom-pattern__supervisor-title + figure.custom-pattern__supervisor-img {
  margin-top: 12px;
  margin-top: 0.75rem;
}

.p-content p.custom-pattern__supervisor-name > code {
  display: inline-block;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.9;
  margin: 0;
}

.p-content--column figure.wp-block-image + .custom-pattern__supervisor-name {
  margin-top: 10px;
  margin-top: 0.625rem;
}

.custom-pattern__supervisor-right {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.custom-pattern__supervisor-right .wp-block-group__inner-container {
  padding-left: 54px;
  padding-left: 3.375rem;
}

.p-content p.custom-pattern__supervisor-text {
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.03em;
  line-height: 1.9;
  margin: 0;
}

.p-content p.custom-pattern__supervisor-strong {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.9;
  margin: 0;
  margin-top: 32px;
  margin-top: 2rem;
}

.p-content p.custom-pattern__supervisor-strong + p.custom-pattern__supervisor-text {
  margin-top: 16px;
  margin-top: 1rem;
}

.custom-pattern__hyaluronic-cta {
  background-color: white;
  margin-top: 60px;
  margin-top: 3.75rem;
  padding: 32px;
  padding: 2rem;
  text-align: center;
}

.p-content h3.custom-pattern__hyaluronic-cta-title {
  display: block;
  font-size: max(20px, 10px);
  font-size: max(1.25rem, 10px);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.9;
  margin: 0;
}

.p-content h3.custom-pattern__hyaluronic-cta-title::before {
  content: none;
}

.p-content h3.custom-pattern__hyaluronic-cta-title + .button-link {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.custom-pattern__insta-cta {
  background-color: white;
  margin-top: 60px;
  margin-top: 3.75rem;
  padding: 32px;
  padding: 2rem;
  text-align: center;
}

.p-content p.custom-pattern__insta-cta-text {
  display: block;
  font-size: max(20px, 10px);
  font-size: max(1.25rem, 10px);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.9;
  margin: 0;
}

.p-content p.custom-pattern__insta-cta-text + .button-link {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.p-drawer {
  background-color: #fff;
  bottom: 0;
  height: 100vh;
  left: 0;
  opacity: 0;
  overflow-y: auto;
  padding-bottom: 130px;
  padding-bottom: 8.125rem;
  position: absolute;
  right: 0;
  top: 80px;
  top: 5rem;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  visibility: hidden;
  width: 100%;
  z-index: 51;
}

.p-drawer.is-visible {
  opacity: 1;
  visibility: visible;
}

.p-drawer__items {
  grid-gap: 0.625rem 1.5rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: grid;
  gap: 10px 24px;
  gap: 0.625rem 1.5rem;
  grid-template-columns: repeat(2, 1fr);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-left: auto;
  margin-right: auto;
  margin-top: 37px;
  margin-top: 2.3125rem;
  max-width: 300px;
  max-width: 18.75rem;
}

.p-drawer__link {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  gap: 0.5rem;
  padding-bottom: 11px;
  padding-bottom: 0.6875rem;
  padding-top: 11px;
  padding-top: 0.6875rem;
}

.p-drawer__text {
  display: inline-block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  line-height: 1.9;
  position: relative;
  white-space: nowrap;
}

.p-drawer__text::after {
  background-color: transparent;
  bottom: -5px;
  bottom: -0.3125rem;
  content: "";
  display: inline-block;
  height: 1px;
  left: 0;
  position: absolute;
  -webkit-transition: background-color 0.3s ease-out;
  transition: background-color 0.3s ease-out;
  width: 100%;
}

.p-drawer__arrow {
  border-right: 1px solid #a3a3a3;
  border-top: 1px solid #a3a3a3;
  content: "";
  display: inline-block;
  height: 8px;
  height: 0.5rem;
  rotate: 45deg;
  width: 8px;
  width: 0.5rem;
}
.p-drawer__reservation {
  margin-left: auto;
  margin-right: auto;
  margin-top: 27px;
  margin-top: 1.6875rem;
  max-width: 332px;
  max-width: 20.75rem;
  padding-left: 16px;
  padding-left: 1rem;
  padding-right: 16px;
  padding-right: 1rem;
}

.p-floating-cta--pc {
  bottom: 45.24px;
  bottom: 2.8275rem;
  opacity: 0;
  position: fixed;
  right: 34px;
  right: 2.125rem;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  visibility: hidden;
  z-index: 50;
}
.p-floating-cta--pc.is-visible {
  opacity: 1;
  visibility: visible;
}

.p-floating-cta__pc-item + .p-floating-cta__pc-item {
  margin-top: 18px;
  margin-top: 1.125rem;
}

.p-floating-cta__pc-link {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #584d6d;
  border-radius: 50%;
  -webkit-box-shadow: 0 0.5rem 0.5rem rgba(0, 0, 0, 0.25);
          box-shadow: 0 0.5rem 0.5rem rgba(0, 0, 0, 0.25);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 110px;
  height: 6.875rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: background-color 0.3s ease-out;
  transition: background-color 0.3s ease-out;
  width: 110px;
  width: 6.875rem;
}

.p-floating-cta__pc-item:nth-child(2) .p-floating-cta__pc-link {
  background-color: #8f83a5;
}

.p-floating-cta__pc-text {
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(15px, 10px);
  font-size: max(0.9375rem, 10px);
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}
.p-floating-cta--sp {
  display: none;
}

.p-floating-cta__sp-list {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #f5f6f9;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1px;
}

.p-floating-cta__sp-item {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.p-floating-cta__sp-link {
  background-color: #BAB3C6;
  display: block;
  height: 56px;
  height: 3.5rem;
  padding-bottom: 5px;
  padding-bottom: 0.3125rem;
  padding-top: 8px;
  padding-top: 0.5rem;
  text-align: center;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
  width: 100%;
}

.p-floating-cta__sp-icon {
  display: block;
  margin-left: auto;
  margin-right: auto;
  max-width: 22px;
  max-width: 1.375rem;
  width: 100%;
}
.p-floating-cta__sp-icon img {
  -o-object-fit: cover;
  aspect-ratio: 22/20;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-floating-cta__sp-item:nth-child(2) .p-floating-cta__sp-icon {
  max-width: 20px;
  max-width: 1.25rem;
}
.p-floating-cta__sp-item:nth-child(2) .p-floating-cta__sp-icon img {
  aspect-ratio: 20/18;
}

.p-floating-cta__sp-item:nth-child(3) .p-floating-cta__sp-icon {
  max-width: 20px;
  max-width: 1.25rem;
}
.p-floating-cta__sp-item:nth-child(3) .p-floating-cta__sp-icon img {
  aspect-ratio: 20/20;
}

.p-floating-cta__sp-text {
  color: #fff;
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(12px, 10px);
  font-size: max(0.75rem, 10px);
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1.6;
  margin-top: 4px;
  margin-top: 0.25rem;
}

.p-footer {
  background-color: #f6f5f9;
  padding-bottom: 80px;
  padding-bottom: 5rem;
  padding-top: 80px;
  padding-top: 5rem;
}

.p-footer__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  gap: 0.625rem;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.p-footer__logo {
  display: block;
  max-width: 128px;
  max-width: 8rem;
  width: 100%;
}

.p-footer__logo img {
  -o-object-fit: cover;
  aspect-ratio: 128/115.24;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-footer__instagram {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: transparent;
  border: 1px solid #615d69;
  border-radius: 0.3125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  gap: 0.5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 23px;
  margin-top: 1.4375rem;
  min-width: 100px;
  padding: 6.5px 5px;
  padding: 0.40625rem 0.3125rem;
  width: 128px;
  width: 8rem;
}

.p-footer__instagram__icon {
  display: block;
  max-width: 15px;
  max-width: 0.9375rem;
  width: 100%;
}

.p-footer__instagram__icon img {
  -o-object-fit: cover;
  aspect-ratio: 1;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-footer__instagram__text {
  color: #615d69;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(12px, 10px);
  font-size: max(0.75rem, 10px);
  letter-spacing: 0.05em;
  line-height: 1.1666666667;
}

.p-footer__nav-section {
  margin-top: -12.5px;
  margin-top: -0.78125rem;
}

.p-footer__nav--pc {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: 30px;
  gap: 1.875rem;
  margin-left: 129px;
  margin-left: 8.0625rem;
}

.p-footer__nav--sp {
  display: none;
}

.p-footer__nav-column:nth-child(1) {
  width: 113px;
  width: 7.0625rem;
}

.p-footer__nav-column:nth-child(2) {
  width: 194px;
  width: 12.125rem;
}

.p-footer__nav-column:nth-child(3) {
  width: 114px;
  width: 7.125rem;
}

.p-footer__nav-column:nth-child(4) {
  width: 120px;
  width: 7.5rem;
}

.p-footer__nav-link {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  gap: 0.5rem;
  padding: 8.5px;
  padding: 0.53125rem;
}

.p-footer__nav-text {
  color: #545454;
  display: inline-block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  letter-spacing: 0.05em;
  line-height: 1.2;
  position: relative;
  white-space: nowrap;
}

.p-footer__nav-text::after {
  background-color: transparent;
  bottom: -5px;
  bottom: -0.3125rem;
  content: "";
  display: inline-block;
  height: 1px;
  left: 0;
  position: absolute;
  -webkit-transition: background-color 0.3s ease-out;
  transition: background-color 0.3s ease-out;
  width: 100%;
}

.p-footer__nav-arrow {
  border-right: 1px solid #a3a3a3;
  border-top: 1px solid #a3a3a3;
  content: "";
  display: inline-block;
  height: 8px;
  height: 0.5rem;
  rotate: 45deg;
  width: 8px;
  width: 0.5rem;
}
.p-footer__policy {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 13px;
  gap: 0.8125rem;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin-top: 55px;
  margin-top: 3.4375rem;
}

.p-footer__policy-link {
  color: #615d69;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(12px, 10px);
  font-size: max(0.75rem, 10px);
  letter-spacing: 0.05em;
  line-height: 1.1666666667;
  padding: 5px;
  padding: 0.3125rem;
  position: relative;
}

.p-footer__policy-link:not(:first-child)::before {
  background-color: #cfcfcf;
  content: "";
  height: 100%;
  left: -7px;
  left: -0.4375rem;
  position: absolute;
  top: 0;
  width: 1px;
}

.p-footer__policy-link:after {
  background-color: transparent;
  bottom: 0;
  content: "";
  display: inline-block;
  height: 1px;
  left: 0;
  position: absolute;
  -webkit-transition: background-color 0.3s ease-out;
  transition: background-color 0.3s ease-out;
  width: 100%;
}
.p-group-intro {
  padding-top: 109px;
  padding-top: 6.8125rem;
  position: relative;
}

.p-group-intro__heading {
  font-family: "Shippori Mincho", serif;
  font-size: max(24px, 10px);
  font-size: max(1.5rem, 10px);
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.5;
  text-align: center;
}

.p-group-intro__text {
  font-size: max(18px, 10px);
  font-size: max(1.125rem, 10px);
  letter-spacing: 0.03em;
  line-height: 2.1;
  margin-left: auto;
  margin-right: auto;
  margin-top: 59px;
  margin-top: 3.6875rem;
  max-width: 796px;
  max-width: 49.75rem;
  text-align: center;
}

.p-group-wrapper {
  background-color: #f6f5f7;
  padding-bottom: 120px;
  padding-bottom: 7.5rem;
}

.p-group__artmake {
  padding-top: 148px;
  padding-top: 9.25rem;
}

.p-group__career {
  padding-top: 120px;
  padding-top: 7.5rem;
}

.p-hamburger {
  display: none;
}

.p-hamburger span {
  background-color: #545454;
  display: block;
  height: 1px;
  left: 50%;
  position: relative;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-transition: 0.5s;
  transition: 0.5s;
  width: 44px;
  width: 2.75rem;
}

.p-hamburger span:nth-of-type(1) {
  top: -4px;
  top: -0.25rem;
}

.p-hamburger span:nth-of-type(2) {
  top: 4px;
  top: 0.25rem;
}

.p-hamburger.is-open span:nth-of-type(1) {
  top: 1px;
  top: 0.0625rem;
  -webkit-transform: translateX(-50%) rotate(45deg);
          transform: translateX(-50%) rotate(45deg);
}

.p-hamburger.is-open span:nth-of-type(2) {
  position: relative;
  top: -1px;
  top: -0.0625rem;
  -webkit-transform: translateX(-50%) rotate(-45deg);
          transform: translateX(-50%) rotate(-45deg);
}

.p-hamburger.is-open span:nth-of-type(1)::before,
.p-hamburger.is-open span:nth-of-type(1)::after {
  background-color: #fff;
  content: "";
  display: inline-block;
  height: 1px;
  position: absolute;
  width: 3px;
  width: 0.1875rem;
}

.p-hamburger.is-open span:nth-of-type(1)::before {
  left: 19px;
  left: 1.1875rem;
}

.p-hamburger.is-open span:nth-of-type(1)::after {
  left: 22px;
  left: 1.375rem;
}

.p-header {
  background-color: #fff;
  bottom: 0;
  -webkit-box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.25);
          box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.25);
  height: 80px;
  height: 5rem;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  width: 100%;
  z-index: 100;
}

body.hidden .p-header {
  -webkit-box-shadow: none;
          box-shadow: none;
}

.p-header__inner {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: inherit;
  padding-left: 80px;
  padding-left: 5rem;
  padding-right: 80px;
  padding-right: 5rem;
}

.p-header__logo-link {
  display: block;
  max-width: 56.65px;
  max-width: 3.540625rem;
  width: 100%;
}

.p-header__logo-link img {
  -o-object-fit: cover;
  aspect-ratio: 56.65/51;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-header__nav {
  height: inherit;
  margin-left: auto;
}

.p-header__items {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: inherit;
}

.p-header__item {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: inherit;
}

.p-header__item--icon {
  padding-left: 16px;
  padding-left: 1rem;
}

.p-header__link {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: inherit;
  padding-left: 16px;
  padding-left: 1rem;
  padding-right: 16px;
  padding-right: 1rem;
}

.p-header__link-text {
  display: inline-block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(15px, 10px);
  font-size: max(0.9375rem, 10px);
  position: relative;
}

.p-header__link-text::after {
  background-color: transparent;
  bottom: -5px;
  bottom: -0.3125rem;
  content: "";
  display: inline-block;
  height: 1px;
  left: 0;
  position: absolute;
  -webkit-transition: background-color 0.3s ease-out;
  transition: background-color 0.3s ease-out;
  width: 100%;
}
.p-header__icon {
  background-color: #f3f2f5;
  border-radius: 50%;
  display: block;
  margin-left: 16px;
  margin-left: 1rem;
}

.p-header__icon--sp {
  display: none;
}

.p-header__instagram {
  display: block;
  max-width: 40px;
  max-width: 2.5rem;
  padding: 12.5px;
  padding: 0.78125rem;
  width: 100%;
}

.p-header__instagram img {
  -o-object-fit: cover;
  aspect-ratio: 1;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-information {
  background-color: #fff;
  padding-bottom: 80px;
  padding-bottom: 5rem;
  padding-top: 58px;
  padding-top: 3.625rem;
  position: relative;
}

.p-information__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 56px;
  gap: 3.5rem;
  margin-top: 53px;
  margin-top: 3.3125rem;
}

.p-information__list {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 24px;
  gap: 1.5rem;
  padding-bottom: 19px;
  padding-bottom: 1.1875rem;
  padding-left: 8px;
  padding-left: 0.5rem;
  padding-right: 8px;
  padding-right: 0.5rem;
  padding-top: 19px;
  padding-top: 1.1875rem;
  position: relative;
  width: 762px;
  width: 47.625rem;
}

.p-information__list::after,
.p-information__list:first-child::before {
  background: url(../images/common/line.svg) no-repeat center/cover;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  width: 100%;
}

.p-information__list::after {
  bottom: 0;
}

.p-information__list:first-child::before {
  top: 0;
}

.p-information__term,
.p-information__desc {
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  line-height: 1.5;
}

.p-information__term {
  width: 80px;
  width: 5rem;
}

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

.p-information__map {
  display: block;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  max-width: 334px;
  max-width: 20.875rem;
  width: 100%;
}

.p-information__map iframe {
  -o-object-fit: cover;
  aspect-ratio: 1;
  height: auto;
     object-fit: cover;
  width: 100%;
}

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

.p-information__reservation-title {
  color: #545454;
  font-family: "Noto Serif JP", serif;
  font-size: max(20px, 10px);
  font-size: max(1.25rem, 10px);
  font-weight: 500;
  margin-bottom: 30px;
  margin-bottom: 1.875rem;
  text-align: center;
}

.p-information__reservation {
  margin-top: 155px;
  margin-top: 9.6875rem;
}

.p-lower-mv {
  padding-bottom: 80px;
  padding-bottom: 5rem;
  padding-top: 8px;
  padding-top: 0.5rem;
  position: relative;
  z-index: 5;
}

.p-lower-mv-case {
  padding-bottom: 30px;
  padding-bottom: 1.875rem;
  padding-top: 76px;
  padding-top: 4.75rem;
}

.p-lower-mv__title {
  text-align: center;
}

.p-lower-mv__title-en {
  color: #9d98a8;
  font-family: "Namdhinggo", serif;
  font-size: max(76px, 10px);
  font-size: max(4.75rem, 10px);
  font-weight: 400;
  line-height: 1.2;
}

.p-lower-mv__title-jp {
  color: #9d98a8;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(12px, 10px);
  font-size: max(0.75rem, 10px);
  font-weight: 300;
  line-height: 1.2;
  margin-top: -5px;
  margin-top: -0.3125rem;
}

.p-lower-mv__case-title {
  font-family: "Shippori Mincho", serif;
  font-size: max(24px, 10px);
  font-size: max(1.5rem, 10px);
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.5;
  text-align: center;
}

.p-news {
  background-color: #f5f6f9;
  overflow-x: clip;
}

.p-news__container {
  padding-bottom: 80px;
  padding-bottom: 5rem;
  padding-top: 38px;
  padding-top: 2.375rem;
  position: relative;
  z-index: 5;
}

.p-news__tab {
  -ms-overflow-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 22px;
  gap: 1.375rem;
  margin-right: calc(50% - 50vw);
  overflow: auto;
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
  scrollbar-width: none;
  white-space: nowrap;
}

.p-news__tab::-webkit-scrollbar {
  display: none;
}

.p-news__tab-link {
  border: 1px solid #686868;
  border-radius: 100vmax;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(12px, 10px);
  font-size: max(0.75rem, 10px);
  font-weight: 300;
  letter-spacing: 0.05em;
  line-height: 1;
  padding: 9.2px 12px;
  padding: 0.575rem 0.75rem;
  -webkit-transition: color 0.3s ease-out, background-color 0.3s ease-out;
  transition: color 0.3s ease-out, background-color 0.3s ease-out;
}

.p-news__tab-link.is-active {
  background-color: #70628A;
  border-color: #70628A;
  color: white;
}
.p-news__list {
  margin-top: 70px;
  margin-top: 4.375rem;
}

.p-news__item {
  border-top: 1px solid #bab3c6;
  border-top: 0.0625rem solid #bab3c6;
}

.p-news__item:last-child {
  border-bottom: 1px solid #bab3c6;
  border-bottom: 0.0625rem solid #bab3c6;
}

.p-news__link {
  -moz-column-gap: 5.625rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-left: 6px solid #a49ab6;
  border-left: 0.375rem solid #a49ab6;
       -webkit-column-gap: 5.625rem;
               column-gap: 5.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 24px;
  margin-bottom: 1.5rem;
  margin-top: 24px;
  margin-top: 1.5rem;
  padding: 6.2px 53px 1.5px 34px;
  padding: 0.3875rem 3.3125rem 0.09375rem 2.125rem;
}

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

.p-news__meta {
  -moz-column-gap: 1.25rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
       -webkit-column-gap: 1.25rem;
               column-gap: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.p-news__date {
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  line-height: 1.5;
}

.p-news__categories {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
  gap: 0.5rem;
}

.p-news__category {
  background-color: #d2ced9;
  border-radius: 100vmax;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(11px, 10px);
  font-size: max(0.6875rem, 10px);
  letter-spacing: 0.05em;
  line-height: 1;
  padding: 4.5px 8px;
  padding: 0.28125rem 0.5rem;
}

.p-news__title {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  display: -webkit-box;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(15px, 10px);
  font-size: max(0.9375rem, 10px);
  font-weight: 400;
  line-height: 1.5;
  margin-top: 11px;
  margin-top: 0.6875rem;
  overflow: hidden;
}

.p-news__icon {
  -moz-column-gap: 0.75rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
       -webkit-column-gap: 0.75rem;
               column-gap: 0.75rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-top: -6px;
  margin-top: -0.375rem;
}

.p-news__icon-text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  letter-spacing: 0.05em;
  line-height: 1.2;
}

.p-news__icon img {
  height: 12px;
  height: 0.75rem;
  -webkit-transition: -webkit-transform 0.3s ease-out;
  transition: -webkit-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
  width: 6px;
  width: 0.375rem;
}
.p-news__pagenavi {
  margin-top: 82px;
  margin-top: 5.125rem;
}

.p-pagenavi .nav-links,
.p-pagenavi .wp-pagenavi {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  gap: 0.5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.p-pagenavi .first,
.p-pagenavi .last,
.p-pagenavi .current,
.p-pagenavi .extend,
.p-pagenavi .page {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  aspect-ratio: 1/1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Namdhinggo", serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 400;
  height: auto;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  letter-spacing: 0.04em;
  line-height: 1;
  width: 40px;
  width: 2.5rem;
}

.p-pagenavi .page {
  border-radius: 50%;
  -webkit-transition: color 0.3s ease, background-color 0.3s ease;
  transition: color 0.3s ease, background-color 0.3s ease;
}
.p-pagenavi .extend:first-of-type {
  padding-left: 8px;
  padding-left: 0.5rem;
}

.p-pagenavi .extend:last-of-type {
  padding-right: 8px;
  padding-right: 0.5rem;
}

.p-pagenavi .current {
  aspect-ratio: 1/1;
  background-color: #a49ab6;
  border-radius: 50%;
  color: white;
  height: auto;
  width: 40px;
  width: 2.5rem;
}

.p-pagenavi .previouspostslink,
.p-pagenavi .nextpostslink {
  display: inline-block;
}

.p-pagenavi .previouspostslink {
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
}

.p-pagenavi .nextpostslink {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}

.p-pagenavi .previouspostslink span,
.p-pagenavi .nextpostslink span {
  -webkit-mask-image: url(../images/common/pagenavi-arrow.svg);
  -webkit-mask-size: contain;
  -webkit-mask-position: center;
  -webkit-mask-repeat: no-repeat;
  aspect-ratio: 1/1;
  background-color: #a49ab6;
  display: block;
  height: auto;
          mask-image: url(../images/common/pagenavi-arrow.svg);
          mask-position: center;
          mask-repeat: no-repeat;
          mask-size: contain;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  width: 40px;
  width: 2.5rem;
}

.p-pagenavi .previouspostslink span {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.wp-pagenavi:has(a.first) .previouspostslink {
  display: none; /* 通常のボタンがある時は非表示 */
}

.wp-pagenavi:not(:has(.previouspostslink))::before,
.wp-pagenavi:not(:has(.nextpostslink))::after {
  -webkit-mask-image: url(../images/common/pagenavi-arrow.svg);
  -webkit-mask-size: contain;
  -webkit-mask-position: center;
  -webkit-mask-repeat: no-repeat;
  aspect-ratio: 1/1;
  background-color: #E0E0E0;
  content: "";
  display: block;
  height: auto;
          mask-image: url(../images/common/pagenavi-arrow.svg);
          mask-position: center;
          mask-repeat: no-repeat;
          mask-size: contain;
  width: 40px;
  width: 2.5rem;
}

.wp-pagenavi:not(:has(.previouspostslink))::before {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.p-pagetop {
  bottom: 301.24px;
  bottom: 18.8275rem;
  opacity: 0;
  position: fixed;
  right: 69px;
  right: 4.3125rem;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  visibility: hidden;
  width: min(100%, 40px);
  width: min(100%, 2.5rem);
  z-index: 50;
}
.p-pagetop.is-visible {
  opacity: 1;
  visibility: visible;
}

.p-pagetop__link {
  display: block;
  max-width: 40px;
  max-width: 2.5rem;
  width: 100%;
}

.p-pagetop__link img {
  -o-object-fit: cover;
  aspect-ratio: 40/88;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-policy-cancel-section {
  background-color: #f5f6f9;
  padding-bottom: 120px;
  padding-bottom: 7.5rem;
  padding-top: 27px;
  padding-top: 1.6875rem;
}

.p-policy-cancel-section__section + .p-policy-cancel-section__section {
  margin-top: 100px;
  margin-top: 6.25rem;
}

.p-policy-cancel-section__section:nth-child(3) {
  margin-top: 97px;
  margin-top: 6.0625rem;
}

.p-policy-cancel-section__section:nth-child(4) {
  margin-top: 98px;
  margin-top: 6.125rem;
}

.p-policy-cancel-section__text-block {
  margin-top: 47px;
  margin-top: 2.9375rem;
}

.p-policy-cancel-section__date {
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  letter-spacing: 0.03em;
  line-height: 1.9;
}

.p-policy-cancel-section__text {
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  letter-spacing: 0.03em;
  line-height: 1.9;
}

.p-policy-cancel-section__date + .p-policy-cancel-section__text {
  margin-top: 27px;
  margin-top: 1.6875rem;
}

.p-policy-cancel-section__tel {
  font-weight: 700;
}

.p-policy-cancel-section__address {
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  letter-spacing: 0.03em;
  line-height: 1.9;
  margin-top: 28px;
  margin-top: 1.75rem;
}

.p-policy-cancel {
  background-color: #f5f6f9;
}

.p-policy-privacy-section {
  background-color: #f5f6f9;
  padding-bottom: 120px;
  padding-bottom: 7.5rem;
  padding-top: 27px;
  padding-top: 1.6875rem;
}

.p-policy-privacy-section__section + .p-policy-privacy-section__section {
  margin-top: 100px;
  margin-top: 6.25rem;
}

.p-policy-privacy-section__section:nth-child(3) {
  margin-top: 97px;
  margin-top: 6.0625rem;
}

.p-policy-privacy-section__section:nth-child(4) {
  margin-top: 98px;
  margin-top: 6.125rem;
}

.p-policy-privacy-section__text-block {
  margin-top: 47px;
  margin-top: 2.9375rem;
}

.p-policy-privacy-section__date {
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  letter-spacing: 0.03em;
  line-height: 1.9;
}

.p-policy-privacy-section__text {
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  letter-spacing: 0.03em;
  line-height: 1.9;
}

.p-policy-privacy-section__date + .p-policy-privacy-section__text {
  margin-top: 27px;
  margin-top: 1.6875rem;
}

.p-policy-privacy-section__text--mt {
  margin-top: 28px;
  margin-top: 1.75rem;
}

.p-policy-privacy-section__tel {
  font-weight: 700;
}

.p-policy-privacy-section__address {
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  letter-spacing: 0.03em;
  line-height: 1.9;
}

.p-policy-privacy-section__list {
  margin-top: 20px;
  margin-top: 1.25rem;
  padding-left: 20px;
  padding-left: 1.25rem;
}
.p-policy-privacy-section__list li {
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  letter-spacing: 0.03em;
  line-height: 1.9;
  list-style-type: disc;
}
.p-policy-privacy-section__list li + li {
  margin-top: 8px;
  margin-top: 0.5rem;
}

.p-policy-privacy-section__text + .p-policy-privacy-section__list {
  margin-top: 16px;
  margin-top: 1rem;
}

.p-policy-privacy-section__email {
  font-weight: 700;
}

.p-policy-privacy {
  background-color: #f5f6f9;
}

.p-policy-privacy .p-lower-mv__title-jp {
  margin-top: 0;
  margin-top: initial;
}

.p-price {
  background-color: #f5f6f9;
}

.p-price__container {
  padding-bottom: 120px;
  padding-bottom: 7.5rem;
  padding-top: 28px;
  padding-top: 1.75rem;
  position: relative;
  z-index: 5;
}

.p-price__container-inner {
  grid-column-gap: 4.7%;
  -moz-column-gap: 4.7%;
       -webkit-column-gap: 4.7%;
          column-gap: 4.7%;
  display: grid;
  grid-template-columns: 74.47% 20.74%;
}

.p-price__main {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

.p-price__content .u-br {
  display: block;
}

.p-price__block:nth-of-type(n + 2) {
  margin-top: 109.5px;
  margin-top: 6.84375rem;
}

.p-price__block:has(p code) {
  margin-bottom: -10px;
  margin-bottom: -0.625rem;
}

.p-price__block p + p {
  margin-top: 6px !important;
  margin-top: 0.375rem !important;
}

.p-price__block p:not(p.sub-group-title) + h3 {
  margin-top: 30px !important;
  margin-top: 1.875rem !important;
}

.p-price__side {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}

.p-price__toc-text {
  display: none;
}

.p-price__toc {
  -ms-overflow-style: none;
  background-color: white;
  border: 1px solid #bab3c6;
  border: 0.0625rem solid #bab3c6;
  border-radius: 0.5rem;
  margin-top: -14px;
  margin-top: -0.875rem;
  max-height: calc(100vh - 7.5rem);
  overflow-y: auto;
  padding: 20px 15px 32px 32px;
  padding: 1.25rem 0.9375rem 2rem 2rem;
  position: sticky;
  scrollbar-width: none;
  top: 100px;
  top: 6.25rem;
}

.p-price__toc::-webkit-scrollbar {
  display: none;
}

.p-price__toc-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: 15px;
  gap: 0.9375rem;
}

.p-price__toc-link {
  border-bottom: 2px solid #cfcfcf;
  border-bottom: 0.125rem solid #cfcfcf;
  color: #8a8a8a;
  display: inline-block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.01em;
  line-height: 1.2142857143;
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
  padding-right: 30px;
  padding-right: 1.875rem;
  padding-top: 10px;
  padding-top: 0.625rem;
  position: relative;
  -webkit-transition: color 0.3s ease, border-bottom-color 0.3s ease;
  transition: color 0.3s ease, border-bottom-color 0.3s ease;
}

.p-price__toc-link::after {
  -webkit-mask-image: url(../images/common/arrow-down.svg);
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  aspect-ratio: 1/1;
  background-color: #cfcfcf;
  content: "";
  font-size: 10px;
  font-size: 0.625rem;
  height: 18px;
  height: 1.125rem;
          mask-image: url(../images/common/arrow-down.svg);
          mask-position: center;
          mask-repeat: no-repeat;
          mask-size: contain;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
  width: 18px;
  width: 1.125rem;
}

.p-price__toc-link.is-active {
  border-bottom-color: #8f83a5;
  color: #545454;
}

.p-price__toc-link.is-active::after {
  background-color: #8f83a5;
}
.p-recruit-entry {
  background-color: #faf8fc;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 11px;
  gap: 0.6875rem;
  padding: 40px 20px;
  padding: 2.5rem 1.25rem;
}

.p-recruit-entry__head {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.p-recruit-entry__header {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 64px;
  gap: 4rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 189.5px;
  width: 11.84375rem;
}

.p-recruit-entry__title {
  color: #70628a;
  font-size: max(20px, 10px);
  font-size: max(1.25rem, 10px);
  font-weight: 500;
  line-height: 1.9;
}

.p-recruit-entry__content {
  padding-left: 64px;
  padding-left: 4rem;
  position: relative;
}

.p-recruit-entry__content::before {
  background-color: #bab3c6;
  content: "";
  display: inline-block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 1px;
}

.p-recruit-entry__text {
  font-size: max(18px, 10px);
  font-size: max(1.125rem, 10px);
  letter-spacing: 0.03em;
  line-height: 2.1;
}

.p-recruit-entry__button {
  width: 337px;
  width: 21.0625rem;
}

.p-recruit-entry__link {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #a49ab6;
  border-radius: 0.3125rem;
  -webkit-box-shadow: 0 0.5rem 0.75rem rgba(0, 0, 0, 0.2);
          box-shadow: 0 0.5rem 0.75rem rgba(0, 0, 0, 0.2);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  gap: 1rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 15px 20px;
  padding: 0.9375rem 1.25rem;
  -webkit-transition: background-color 0.3s ease-out;
  transition: background-color 0.3s ease-out;
}
.p-recruit-entry__link span {
  color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  font-weight: 500;
  line-height: 1.4;
  text-align: left;
}

.p-recruit-entry__icon {
  display: block;
  max-width: 50px;
  max-width: 3.125rem;
  width: 100%;
}
.p-recruit-entry__icon img {
  -o-object-fit: cover;
  aspect-ratio: 1;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-recruit-message {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
  gap: 2.5rem;
}

.p-recruit-message__img {
  display: block;
  margin-top: 9px;
  margin-top: 0.5625rem;
  max-width: 261px;
  max-width: 16.3125rem;
  width: 100%;
}
.p-recruit-message__img img {
  -o-object-fit: cover;
  aspect-ratio: 261/222;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-recruit-message__text-box {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.p-recruit-message__text {
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  letter-spacing: -0.07em;
  line-height: 1.9;
}

.p-recruit-message__text + .p-recruit-message__text {
  margin-top: 28px;
  margin-top: 1.75rem;
}

.p-recruit-message__text:nth-child(3) {
  margin-top: 0;
  margin-top: initial;
}

.p-recruit-positions {
  padding-top: 99px;
  padding-top: 6.1875rem;
  position: relative;
  z-index: 1;
}

.p-recruit-positions__title {
  font-family: "Shippori Mincho", serif;
  font-size: max(24px, 10px);
  font-size: max(1.5rem, 10px);
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.5;
  text-align: center;
}

.p-recruit-positions__tabs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 24px;
  gap: 1.5rem;
  margin-top: 32px;
  margin-top: 2rem;
}

.p-recruit-positions__tab {
  background-color: #ffffff;
  border: none;
  border-bottom: 2px solid #d2ced9;
  border-bottom: 0.125rem solid #d2ced9;
  border-radius: 0.5rem 0.5rem 0 0;
  color: #545454;
  cursor: pointer;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: max(18px, 10px);
  font-size: max(1.125rem, 10px);
  letter-spacing: 0.03em;
  line-height: 2.1;
  padding-bottom: 7.6px;
  padding-bottom: 0.475rem;
  padding-top: 7.6px;
  padding-top: 0.475rem;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.p-recruit-positions__tab.is-active {
  background-color: #ffffff;
  border-bottom: 2px solid #d2ced9;
  border-bottom: 0.125rem solid #d2ced9;
}
.p-recruit-positions__tab:not(.is-active) {
  background-color: #d2ced9;
  border-bottom: 2px solid #d2ced9;
  border-bottom: 0.125rem solid #d2ced9;
}

.p-recruit-positions__content {
  display: none;
}
.p-recruit-positions__content.is-active {
  display: block;
}

.p-recruit-positions__card {
  background-color: #ffffff;
  border-radius: 0 0 0.5rem 0.5rem;
  padding: 56px 98px 80px;
  padding: 3.5rem 6.125rem 5rem;
}

.p-recruit-positions__card--no-recruit {
  -ms-flex-line-pack: center;
      align-content: center;
  align-content: center;
  display: grid;
  height: 391px;
  height: 24.4375rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  justify-content: center;
  place-content: center;
}

.p-recruit-positions__card-text {
  font-size: max(20px, 10px);
  font-size: max(1.25rem, 10px);
  font-weight: 500;
  line-height: 1.9;
}

.p-recruit-positions__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.p-recruit-positions__item + .p-recruit-positions__item {
  margin-top: 56px;
  margin-top: 3.5rem;
}

.p-recruit-positions__term,
.p-recruit-positions__desc {
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  letter-spacing: 0.03em;
  line-height: 1.9;
  padding-bottom: 6.8px;
  padding-bottom: 0.425rem;
  padding-top: 6.8px;
  padding-top: 0.425rem;
}

.p-recruit-positions__term {
  color: #70628a;
  width: 260px;
  width: 16.25rem;
}

.p-recruit-positions__desc {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding-left: 64px;
  padding-left: 4rem;
  position: relative;
}

.p-recruit-positions__desc::before {
  background-color: #bab3c6;
  content: "";
  display: inline-block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 1px;
}

.p-recruit-positions__section {
  margin-top: 42px;
  margin-top: 2.625rem;
}
.p-recruit-positions__section + .p-recruit-positions__section {
  margin-top: 35px;
  margin-top: 2.1875rem;
}

.p-recruit-positions__heading {
  font-size: max(20px, 10px);
  font-size: max(1.25rem, 10px);
  font-weight: 500;
  line-height: 1.9;
  margin-bottom: 20px;
  margin-bottom: 1.25rem;
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
  position: relative;
}
.p-recruit-positions__heading::after {
  background-color: #8f83a5;
  bottom: 0;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  width: 98px;
  width: 6.125rem;
}

.p-recruit-positions__text-box {
  margin-top: 29px;
  margin-top: 1.8125rem;
}

.p-recruit-positions__text {
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  letter-spacing: 0.03em;
  line-height: 1.9;
}

.p-recruit-positions__message {
  margin-top: 32px;
  margin-top: 2rem;
}

.p-recruit-positions__entry {
  margin-top: 49px;
  margin-top: 3.0625rem;
}

.p-recruit {
  background-color: #f5f6f9;
  padding-bottom: 120px;
  padding-bottom: 7.5rem;
}

.p-recruit__container {
  padding-top: 23px;
  padding-top: 1.4375rem;
  position: relative;
  z-index: 1;
}

.p-recruit__intro {
  font-size: max(18px, 10px);
  font-size: max(1.125rem, 10px);
  letter-spacing: 0.03em;
  line-height: 2.1;
  text-align: center;
}

.p-recruit__button {
  margin-left: auto;
  margin-right: auto;
  margin-top: 120px;
  margin-top: 7.5rem;
  width: 200px;
  width: 12.5rem;
}

.p-recruit__button .c-back-button {
  white-space: nowrap;
}

.p-reservation {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 72px;
  gap: 4.5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.p-service {
  background-color: #f5f6f9;
}

.p-service__container {
  padding-bottom: 120px;
  padding-bottom: 7.5rem;
  padding-top: 115px;
  padding-top: 7.1875rem;
  position: relative;
  z-index: 5;
}

.p-service__container-inner.l-inner2 {
  max-width: 810px;
  max-width: 50.625rem;
}

.p-service__list {
  grid-gap: 1.5rem;
  display: grid;
  gap: 24px;
  gap: 1.5rem;
  grid-template-columns: repeat(2, 1fr);
}

.p-service__item {
  background-color: #f0eff6;
  border-radius: 0.3125rem;
  -webkit-box-shadow: 0 0.5rem 0.75rem rgba(0, 0, 0, 0.2), inset 0 0 1.25rem 0 #fff;
          box-shadow: 0 0.5rem 0.75rem rgba(0, 0, 0, 0.2), inset 0 0 1.25rem 0 #fff;
  min-height: 176px;
  min-height: 11rem;
  overflow: hidden;
  position: relative;
  -webkit-transition: -webkit-transform 0.3s ease-out, -webkit-box-shadow 0.3s ease-out;
  transition: -webkit-transform 0.3s ease-out, -webkit-box-shadow 0.3s ease-out;
  transition: transform 0.3s ease-out, box-shadow 0.3s ease-out;
  transition: transform 0.3s ease-out, box-shadow 0.3s ease-out, -webkit-transform 0.3s ease-out, -webkit-box-shadow 0.3s ease-out;
}

.p-service__item::before {
  background: linear-gradient(-40deg, transparent 50%, rgb(255, 255, 255) 50%);
  border-radius: 0 0 0.25rem 0;
  content: "";
  height: 32px;
  height: 2rem;
  left: 0;
  position: absolute;
  top: 0;
  width: 32px;
  width: 2rem;
}

.p-service__item:has(.p-service__icon)::before {
  background: linear-gradient(135deg, transparent 50%, rgb(245, 246, 249) 50%);
  border-radius: 0 0 0.25rem 0;
  content: "";
  height: 32px;
  height: 2rem;
  left: 0;
  position: absolute;
  top: 0;
  width: 32px;
  width: 2rem;
}

.p-service__link {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 20px;
  font-size: 1.25rem;
  height: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  line-height: 1.9;
  padding: 32px;
  padding: 2rem;
  width: 100%;
}

.p-service__link:has(.p-service__icon) {
  -moz-column-gap: 1rem;
  background-color: white;
       -webkit-column-gap: 1rem;
               column-gap: 1rem;
}
.p-service__icon {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  max-width: 83px;
  max-width: 5.1875rem;
}

.p-service__item:nth-child(1) .p-service__icon {
  width: 68px;
  width: 4.25rem;
}

.p-service__item:nth-child(2) .p-service__icon {
  width: 83px;
  width: 5.1875rem;
}

.p-service__item:nth-child(3) .p-service__icon {
  width: 72px;
  width: 4.5rem;
}

.p-service__item:nth-child(4) .p-service__icon {
  width: 71px;
  width: 4.4375rem;
}

.p-service__icon img {
  -o-object-fit: contain;
  height: auto;
     object-fit: contain;
  width: 100%;
}

.p-service__no-posts {
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  padding: 40px 20px;
  padding: 2.5rem 1.25rem;
  text-align: center;
}

.p-single-case {
  background-color: #f5f6f9;
}

.p-single-case__container {
  padding-bottom: 82px;
  padding-bottom: 5.125rem;
  padding-top: 38px;
  padding-top: 2.375rem;
  position: relative;
  z-index: 5;
}

.p-single-case__head {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  gap: 1rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.p-single-case__info {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.p-single-case__age,
.p-single-case__gender,
.p-single-case__separator {
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  line-height: 1.5;
}

.p-single-case__tags {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 16px;
  gap: 1rem;
}

.p-single-case__content {
  margin-top: 78px;
  margin-top: 4.875rem;
}

.p-single-case__detail {
  margin-top: 30px;
  margin-top: 1.875rem;
}

.p-single-case__btn-wrap {
  margin-left: auto;
  margin-right: auto;
  margin-top: 80px;
  margin-top: 5rem;
  max-width: 100%;
  width: 200px;
  width: 12.5rem;
}

.p-single-case__btn-wrap + .p-single-case__attention {
  margin-top: 80px;
  margin-top: 5rem;
}

.p-single-column {
  background-color: #f5f6f9;
}

.p-single-column__container {
  padding-bottom: 82px;
  padding-bottom: 5.125rem;
  padding-top: 30px;
  padding-top: 1.875rem;
  position: relative;
  z-index: 5;
}

.p-single-column__tag-group {
  border-top: 1px solid #a49ab6;
  border-top: 0.0625rem solid #a49ab6;
  padding-top: 80px;
  padding-top: 5rem;
}

.p-single-column__filter {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
  gap: 2.5rem;
}

.p-single-column__filter + .p-single-column__filter {
  margin-top: 56px;
  margin-top: 3.5rem;
}

.p-single-column__filter-title {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  gap: 40px;
  gap: 2.5rem;
  min-width: 80px;
  min-width: 5rem;
}

.p-content p.p-single-column__filter-title-text {
  color: #9d98a8;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 1.9;
  margin: 0;
  min-width: 80px;
  min-width: 5rem;
  text-align: center;
}

.p-single-column__filter-line {
  background-color: #bab3c6;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  height: 80px;
  height: 5rem;
  width: 2px;
  width: 0.125rem;
}

.p-single-column__filter-tags {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.p-single-column__filter-tags {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 16px;
  gap: 1rem;
}

.p-single-column__filter-tag {
  margin-top: 0 !important;
}

.p-column-filter__tag--filter {
  background-color: white;
  border: none;
  border-radius: 1rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  white-space: nowrap;
}

.p-single-service {
  background-color: #f5f6f9;
}

.p-single-service__container {
  overflow-x: clip;
  padding-bottom: 120px;
  padding-bottom: 7.5rem;
  padding-top: 51px;
  padding-top: 3.1875rem;
  position: relative;
  z-index: 5;
}

.p-single-service__btn-wrap {
  margin-left: auto;
  margin-right: auto;
  margin-top: 120px;
  margin-top: 7.5rem;
  max-width: 100%;
  width: 200px;
  width: 12.5rem;
}

.p-single {
  background-color: #f5f6f9;
}

.p-single__mv {
  padding-bottom: 40px;
  padding-bottom: 2.5rem;
  padding-top: 81px;
  padding-top: 5.0625rem;
  position: relative;
  z-index: 5;
}

.p-single__info {
  -moz-column-gap: 0.75rem;
       -webkit-column-gap: 0.75rem;
          column-gap: 0.75rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.p-single__date {
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  font-weight: 500;
  line-height: 1.5;
  white-space: nowrap;
}

.p-single__tags {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px 16px;
  gap: 0.5rem 1rem;
}

.p-single__title {
  font-family: "Shippori Mincho", serif;
  font-size: max(24px, 10px);
  font-size: max(1.5rem, 10px);
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.5;
  margin-top: 70px;
  margin-top: 4.375rem;
  text-align: center;
}

.p-single__container {
  padding-bottom: 82px;
  padding-bottom: 5.125rem;
  padding-top: 30px;
  padding-top: 1.875rem;
  position: relative;
  z-index: 5;
}

.p-single__btn-wrap {
  margin-left: auto;
  margin-right: auto;
  margin-top: 82px;
  margin-top: 5.125rem;
  max-width: 100%;
  width: 200px;
  width: 12.5rem;
}

.p-single__share {
  background-color: #f5f6f9;
  padding-bottom: 80px;
  padding-bottom: 5rem;
  padding-top: 80px;
  padding-top: 5rem;
}

.p-content ul.p-sns-share {
  grid-gap: 1rem 2.3125rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #f5f4f6;
  display: grid;
  gap: 16px 37px;
  gap: 1rem 2.3125rem;
  grid-template-columns: repeat(5, 1fr);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  list-style: none;
  mix-blend-mode: multiply;
  padding: 16px 64px 10px;
  padding: 1rem 4rem 0.625rem;
  width: 100%;
}

.p-content ul li.p-sns-share__item {
  margin: 0;
  max-width: 136px;
  max-width: 8.5rem;
  width: 100%;
}

.p-sns-share__link {
  background: none;
  border: none;
  cursor: pointer;
  display: inline-block;
  padding: 0;
  -webkit-transition: -webkit-transform 0.3s ease-out;
  transition: -webkit-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
}

.p-sns-share__img {
  display: block;
}

.p-sns-share__img img {
  -o-object-fit: contain;
  aspect-ratio: 136/32;
  height: auto;
     object-fit: contain;
  width: 100%;
}
.p-sns-share__link.is-copied {
  position: relative;
}
.p-sns-share__link.is-copied::after {
  background-color: rgba(0, 0, 0, 0.8);
  border-radius: 0.25rem;
  color: white;
  content: "URLをコピーしました";
  font-size: max(12px, 10px);
  font-size: max(0.75rem, 10px);
  left: 50%;
  padding: 8px 12px;
  padding: 0.5rem 0.75rem;
  pointer-events: none;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  white-space: nowrap;
  z-index: 10;
}

.p-staff-doctor {
  background-color: #f6f5f7;
  padding-bottom: 94px;
  padding-bottom: 5.875rem;
  padding-top: 26px;
  padding-top: 1.625rem;
  position: relative;
}

.p-staff-doctor__profile {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 12px;
  gap: 0.75rem;
  margin-top: 68px;
  margin-top: 4.25rem;
}

.p-staff-doctor__profile-content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  max-width: 686px;
  max-width: 42.875rem;
}

.p-staff-doctor__name {
  font-size: max(20px, 10px);
  font-size: max(1.25rem, 10px);
  font-weight: 500;
  line-height: 1.9;
}

.p-staff-doctor__catchcopy {
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  font-weight: 600;
  line-height: 1.9;
  margin-top: 35px;
  margin-top: 2.1875rem;
}

.p-staff-doctor__intro {
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  letter-spacing: 0.03em;
  line-height: 1.9;
  margin-top: 37px;
  margin-top: 2.3125rem;
}

.p-staff-doctor__photo {
  display: block;
  margin-top: 13px;
  margin-top: 0.8125rem;
  max-width: 270px;
  max-width: 16.875rem;
  width: 100%;
}

.p-staff-doctor__photo img {
  -o-object-fit: cover;
  aspect-ratio: 270/241;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-staff-doctor__details {
  margin-top: 72px;
  margin-top: 4.5rem;
}

.p-staff-doctor__details-inner {
  background-color: rgba(255, 255, 255, 0.7);
  padding: 43px 56px 56px;
  padding: 2.6875rem 3.5rem 3.5rem;
}

.p-staff-doctor__details-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 80px;
  gap: 5rem;
}

.p-staff-doctor__section {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.p-staff-doctor__section-list {
  margin-top: 32px;
  margin-top: 2rem;
}

.p-staff-doctor__section-item {
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  letter-spacing: 0.03em;
  line-height: 1.9;
  padding-left: 21px;
  padding-left: 1.3125rem;
  position: relative;
}

.p-staff-doctor__section-item::before {
  background-color: #545454;
  border-radius: 50%;
  content: "";
  display: inline-block;
  height: 3px;
  height: 0.1875rem;
  left: 9px;
  left: 0.5625rem;
  position: absolute;
  top: 13px;
  top: 0.8125rem;
  width: 3px;
  width: 0.1875rem;
}

.p-staff-doctor__note {
  border: 1px solid #d2ced9;
  margin-top: 10px;
  margin-top: 0.625rem;
  padding: 15px 24px;
  padding: 0.9375rem 1.5rem;
}

.p-staff-doctor__note-text {
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  letter-spacing: 0.03em;
  line-height: 1.9;
}

.p-staff-doctor__research-text {
  font-size: max(12px, 10px);
  font-size: max(0.75rem, 10px);
  letter-spacing: 0.03em;
  line-height: 2.1;
  margin-top: 8px;
  margin-top: 0.5rem;
}

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

.p-staff-doctor__section-content {
  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;
  gap: 1rem;
  margin-top: 40px;
  margin-top: 2.5rem;
}

.p-staff-doctor__text {
  color: #545454;
  font-family: "Noto Serif JP", serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  font-weight: 400;
  letter-spacing: 0.03em;
  line-height: 1.9;
}

.p-staff-doctor__treatments {
  margin-top: 37px;
  margin-top: 2.3125rem;
}

.p-staff-doctor__treatment {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  gap: 1rem;
  width: 100%;
}

.p-staff-doctor__treatment + .p-staff-doctor__treatment {
  margin-top: 27px;
  margin-top: 1.6875rem;
}

.p-staff-doctor__treatment-content {
  background-color: #fff;
  border-radius: 22.5rem 0 0 0;
  gap: 24px;
  gap: 1.5rem;
  padding-left: 24px;
  padding-left: 1.5rem;
  width: 396px;
  width: 24.75rem;
}

.p-staff-doctor__treatment-number {
  color: #d2ced9;
  font-size: max(40px, 10px);
  font-size: max(2.5rem, 10px);
  font-weight: 300;
  letter-spacing: 0.05em;
  line-height: 1.6;
}

.p-staff-doctor__treatment-title {
  color: #8f83a5;
  font-size: max(18px, 10px);
  font-size: max(1.125rem, 10px);
  font-weight: 600;
  letter-spacing: 0.08em;
  line-height: 1.8;
  margin-top: -2px;
  margin-top: -0.125rem;
}

.p-staff-doctor__treatment-line {
  background-color: #e7e4ec;
  height: 2px;
  height: 0.125rem;
  margin-top: 15px;
  margin-top: 0.9375rem;
  width: 98px;
  width: 6.125rem;
}

.p-staff-doctor__treatment-caption {
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  letter-spacing: 0.03em;
  line-height: 1.9;
  margin-top: 14px;
  margin-top: 0.875rem;
}

.p-staff-doctor__treatment-parts {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  gap: 1rem;
  margin-top: 19px;
  margin-top: 1.1875rem;
}

.p-staff-doctor__treatment-part {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #f3f2f5;
  border-radius: 0.25rem 0.25rem 7.5rem 7.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 160px;
  height: 10rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-bottom: 88px;
  padding-bottom: 5.5rem;
  padding-left: 10px;
  padding-left: 0.625rem;
  padding-right: 10px;
  padding-right: 0.625rem;
  position: relative;
  width: 96px;
  width: 6rem;
}

.p-staff-doctor__treatment-part-icon {
  bottom: 8px;
  bottom: 0.5rem;
  display: block;
  left: 50%;
  max-width: 80px;
  max-width: 5rem;
  position: absolute;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100%;
}
.p-staff-doctor__treatment-part-icon img {
  -o-object-fit: cover;
  aspect-ratio: 1;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-staff-doctor__treatment-part-text {
  color: #8f83a5;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  letter-spacing: 0.03em;
  line-height: 1.5;
  position: relative;
  text-align: center;
  z-index: 1;
}

.p-staff-doctor__treatment-part-text--wrap {
  white-space: nowrap;
}

.p-staff-doctor__treatment-part-text--linefeed {
  display: inline-block;
}

.p-staff-doctor__message {
  background-color: rgba(236, 234, 239, 0.5);
  border-radius: 0.3125rem;
  margin-top: 48px;
  margin-top: 3rem;
  padding: 31px 32px 32px;
  padding: 1.9375rem 2rem 2rem;
}

.p-staff-doctor__message-text {
  color: #545454;
  font-family: "Noto Serif JP", serif;
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  font-weight: 400;
  letter-spacing: 0.03em;
  line-height: 1.9;
  text-align: center;
}

.p-staff-doctor__message-img {
  display: block;
  margin-top: 31px;
  margin-top: 1.9375rem;
  max-width: 780px;
  max-width: 48.75rem;
  width: 100%;
}

.p-staff-doctor__message-img img {
  -o-object-fit: cover;
  aspect-ratio: 780/340;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-top-about {
  background: url(../images/top/about-bg.webp) no-repeat center top/cover;
  padding-bottom: 140px;
  padding-bottom: 8.75rem;
  padding-top: 84px;
  padding-top: 5.25rem;
  position: relative;
}

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

.p-top-about__heading {
  font-family: "Shippori Mincho", serif;
  font-size: max(36px, 10px);
  font-size: max(2.25rem, 10px);
  font-weight: 400;
  line-height: 1.9;
  margin-top: 44px;
  margin-top: 2.75rem;
}

.p-top-about__text {
  font-size: max(18px, 10px);
  font-size: max(1.125rem, 10px);
  line-height: 1.9;
  margin-top: 40px;
  margin-top: 2.5rem;
}

.p-top-about__button {
  margin-left: auto;
  margin-right: auto;
  margin-top: 59px;
  margin-top: 3.6875rem;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

.p-top-bibi-group {
  padding-bottom: 80px;
  padding-bottom: 5rem;
  padding-top: 80px;
  padding-top: 5rem;
}

.p-top-bibi-group__inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 1440px;
  max-width: 90rem;
}

.p-top-bibi-group__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 56px;
  gap: 3.5rem;
}

.p-top-bibi-group__img {
  display: block;
  max-width: 552.02px;
  max-width: 34.50125rem;
  width: 100%;
}

.p-top-bibi-group__img img {
  -o-object-fit: cover;
  aspect-ratio: 552.02/265;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-top-bibi-group__body {
  margin-top: -22px;
  margin-top: -1.375rem;
  padding-right: 25px;
  padding-right: 1.5625rem;
}

.p-top-bibi-group__box {
  margin-top: 46px;
  margin-top: 2.875rem;
}

.p-top-bibi-group__text {
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  line-height: 1.9;
  max-width: 688px;
  max-width: 43rem;
}

.p-top-bibi-group__button {
  margin-top: 47px;
  margin-top: 2.9375rem;
}

.p-top-campaign {
  background: url(../images/top/campaign-bg.webp) no-repeat center/cover;
  padding-bottom: 80px;
  padding-bottom: 5rem;
  padding-top: 58px;
  padding-top: 3.625rem;
  position: relative;
}

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

.p-top-campaign__text {
  color: #fff;
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  line-height: 1.9;
  margin-top: 43px;
  margin-top: 2.6875rem;
}

.p-top-campaign__button {
  margin-left: auto;
  margin-right: auto;
  margin-top: 47px;
  margin-top: 2.9375rem;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

.p-top-cases {
  padding-bottom: 80px;
  padding-bottom: 5rem;
  padding-top: 55px;
  padding-top: 3.4375rem;
}

.p-top-cases__block {
  margin-top: 53px;
  margin-top: 3.3125rem;
}

.p-top-cases__list {
  grid-gap: 1.6875rem;
  display: grid;
  gap: 27px;
  gap: 1.6875rem;
  grid-template-columns: repeat(3, 1fr);
}

.p-top-cases__item {
  border: 1px solid #d2ced9;
}

.p-top-cases__link {
  display: block;
  max-width: 366px;
  max-width: 22.875rem;
  padding: 15px 15px 23px;
  padding: 0.9375rem 0.9375rem 1.4375rem;
}

.p-top-cases__img {
  display: block;
  max-width: 334px;
  max-width: 20.875rem;
  width: 100%;
}

.p-top-cases__img img {
  -o-object-fit: cover;
  aspect-ratio: 500/360;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-top-cases__tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
  gap: 0.5rem;
  margin-top: 24px;
  margin-top: 1.5rem;
}

.p-top-cases__item-title {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  color: #fff;
  display: -webkit-box;
  font-size: max(15px, 10px);
  font-size: max(0.9375rem, 10px);
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1.4;
  margin-top: 8px;
  margin-top: 0.5rem;
  overflow: hidden;
}

.p-top-cases__detail-item {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  gap: 0.5rem;
  margin-top: 16px;
  margin-top: 1rem;
}

.p-top-cases__term {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #a8a5b0;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(10px, 10px);
  font-size: max(0.625rem, 10px);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  letter-spacing: 0.04em;
  line-height: 1.4;
  min-height: 35px;
  min-height: 2.1875rem;
  padding: 3.5px;
  padding: 0.21875rem;
  text-align: center;
  white-space: nowrap;
  width: 48px;
}

.p-top-cases__detail-item:nth-child(2) .p-top-cases__term {
  text-align: justify;
}

.p-top-cases__description {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  color: #fff;
  display: -webkit-box;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: max(12px, 10px);
  font-size: max(0.75rem, 10px);
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1.6;
  overflow: hidden;
}

.p-top-cases__detail-item:nth-child(1) .p-top-cases__description {
  line-height: 1.4;
}

.p-top-cases__detail-item:nth-child(2) .p-top-cases__description {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  display: -webkit-box;
  overflow: hidden;
}

.p-top-cases__button {
  margin-left: auto;
  margin-right: auto;
  margin-top: 56px;
  margin-top: 3.5rem;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

.p-top-columns {
  background: url(../images/top/columns-bg.webp) no-repeat center/cover;
  padding-bottom: 79px;
  padding-bottom: 4.9375rem;
  padding-top: 58px;
  padding-top: 3.625rem;
}

.p-top-columns__text {
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  line-height: 1.9;
  margin-top: 43px;
  margin-top: 2.6875rem;
  text-align: center;
}

.p-top-columns__block {
  margin-top: 47px;
  margin-top: 2.9375rem;
}

.p-top-columns__list {
  grid-gap: 1.5rem;
  display: grid;
  gap: 24px;
  gap: 1.5rem;
  grid-template-columns: 1fr;
}

.p-top-columns__item {
  background-color: #f3f2f5;
  border-radius: 0.5rem;
}

.p-top-columns__item-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 24px;
  gap: 1.5rem;
  padding: 24px 24px 23px;
  padding: 1.5rem 1.5rem 1.4375rem;
}

.p-top-columns__item-img {
  display: block;
  max-width: 267px;
  max-width: 16.6875rem;
  width: 100%;
}

.p-top-columns__item-img img {
  -o-object-fit: cover;
  aspect-ratio: 500/360;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-top-columns__item-body {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.p-top-columns__item-tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
  gap: 0.5rem;
}

.p-top-columns__item-date {
  display: inline-block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  line-height: 1.5;
  margin-top: 18px;
  margin-top: 1.125rem;
}

.p-top-columns__item-title {
  color: #76717f;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(15px, 10px);
  font-size: max(0.9375rem, 10px);
  font-weight: 500;
  line-height: 1.4;
  margin-top: 9px;
  margin-top: 0.5625rem;
}

.p-top-columns__item-text {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  display: -webkit-box;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  letter-spacing: 0.03em;
  line-height: 1.9;
  margin-top: 7px;
  margin-top: 0.4375rem;
  overflow: hidden;
}

.p-top-columns__item-button {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  gap: 0.5rem;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin-top: 13px;
  margin-top: 0.8125rem;
}

.p-top-columns__item-button-text {
  display: inline-block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  letter-spacing: 0.05em;
  line-height: 1.2;
  position: relative;
}

.p-top-columns__item-button-text::after {
  background-color: transparent;
  bottom: -5px;
  bottom: -0.3125rem;
  content: "";
  display: inline-block;
  height: 1px;
  left: 0;
  position: absolute;
  -webkit-transition: background-color 0.3s ease-out;
  transition: background-color 0.3s ease-out;
  width: 100%;
}

.p-top-columns__item-button-arrow {
  border-right: 1px solid #a3a3a3;
  border-top: 1px solid #a3a3a3;
  content: "";
  display: inline-block;
  height: 8px;
  height: 0.5rem;
  rotate: 45deg;
  width: 8px;
  width: 0.5rem;
}
.p-top-columns__button {
  margin-left: auto;
  margin-right: auto;
  margin-top: 55px;
  margin-top: 3.4375rem;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

.p-top-doctor-cases {
  background: url(../images/top/doctor-cases-bg.webp) no-repeat center top/cover;
}

.p-top-doctor {
  padding-bottom: 80px;
  padding-bottom: 5rem;
  padding-top: 80px;
  padding-top: 5rem;
}

.p-top-doctor__inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 1440px;
  max-width: 90rem;
}

.p-top-doctor__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 56px;
  gap: 3.5rem;
}

.p-top-doctor__img {
  display: block;
  max-width: 565px;
  max-width: 35.3125rem;
  width: 100%;
}

.p-top-doctor__img img {
  -o-object-fit: cover;
  aspect-ratio: 565/462;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-top-doctor__body {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-top: -22px;
  margin-top: -1.375rem;
  padding-right: 25px;
  padding-right: 1.5625rem;
}

.p-top-doctor__name {
  font-size: max(24px, 10px);
  font-size: max(1.5rem, 10px);
  font-weight: 400;
  line-height: 1.9;
  margin-top: 53px;
  margin-top: 3.3125rem;
}

.p-top-doctor__text {
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  line-height: 1.9;
  margin-top: 46px;
  margin-top: 2.875rem;
  max-width: 675px;
  max-width: 42.1875rem;
}

.p-top-doctor__button {
  margin-top: 47px;
  margin-top: 2.9375rem;
}

.p-top-menu {
  background-color: #f5f6f9;
  padding-bottom: 80px;
  padding-bottom: 5rem;
  padding-top: 0px;
  padding-top: 0rem;
}

.p-top-menu__list {
  grid-gap: 1.5rem;
  display: grid;
  gap: 24px;
  gap: 1.5rem;
  grid-template-columns: repeat(2, 1fr);
  margin-left: auto;
  margin-right: auto;
  margin-top: 53px;
  margin-top: 3.3125rem;
  max-width: 760px;
  max-width: 47.5rem;
}

.p-top-menu__item {
  border-radius: 0.3125rem;
  -webkit-box-shadow: 0 0.5rem 0.75rem rgba(0, 0, 0, 0.2), inset 0 0 1.25rem 0 #fff;
          box-shadow: 0 0.5rem 0.75rem rgba(0, 0, 0, 0.2), inset 0 0 1.25rem 0 #fff;
  overflow: hidden;
  position: relative;
  -webkit-transition: -webkit-transform 0.3s ease-out, -webkit-box-shadow 0.3s ease-out;
  transition: -webkit-transform 0.3s ease-out, -webkit-box-shadow 0.3s ease-out;
  transition: transform 0.3s ease-out, box-shadow 0.3s ease-out;
  transition: transform 0.3s ease-out, box-shadow 0.3s ease-out, -webkit-transform 0.3s ease-out, -webkit-box-shadow 0.3s ease-out;
}

.p-top-menu__item::before {
  background: linear-gradient(135deg, transparent 50%, rgb(255, 255, 255) 50%);
  border-radius: 0 0 0.25rem 0;
  content: "";
  height: 32px;
  height: 2rem;
  left: 0;
  position: absolute;
  top: 0;
  width: 32px;
  width: 2rem;
}

.p-top-menu__item-link {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  gap: 1rem;
  height: 100%;
  padding-bottom: 37px;
  padding-bottom: 2.3125rem;
  padding-left: 44px;
  padding-left: 2.75rem;
  padding-right: 10px;
  padding-right: 0.625rem;
  padding-top: 37px;
  padding-top: 2.3125rem;
}

.p-top-menu__item:nth-child(2) .p-top-menu__item-link {
  gap: 16px;
  gap: 1rem;
  padding-bottom: 48px;
  padding-bottom: 3rem;
  padding-left: 46.5px;
  padding-left: 2.90625rem;
  padding-top: 48px;
  padding-top: 3rem;
}

.p-top-menu__item:nth-child(3) .p-top-menu__item-link {
  gap: 24px;
  gap: 1.5rem;
  padding-bottom: 37px;
  padding-bottom: 2.3125rem;
  padding-left: 46px;
  padding-left: 2.875rem;
  padding-top: 37px;
  padding-top: 2.3125rem;
}

.p-top-menu__item:nth-child(4) .p-top-menu__item-link {
  gap: 16px;
  gap: 1rem;
  padding-bottom: 47px;
  padding-bottom: 2.9375rem;
  padding-left: 43px;
  padding-left: 2.6875rem;
  padding-top: 47px;
  padding-top: 2.9375rem;
}
.p-top-menu__icon {
  display: block;
  max-width: 68px;
  max-width: 4.25rem;
  width: 100%;
}
.p-top-menu__icon img {
  -o-object-fit: cover;
  aspect-ratio: 68/65;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-top-menu__item:nth-child(2) .p-top-menu__icon {
  max-width: 83px;
  max-width: 5.1875rem;
}
.p-top-menu__item:nth-child(2) .p-top-menu__icon img {
  aspect-ratio: 83/80;
}

.p-top-menu__item:nth-child(3) .p-top-menu__icon {
  max-width: 72px;
  max-width: 4.5rem;
}
.p-top-menu__item:nth-child(3) .p-top-menu__icon img {
  aspect-ratio: 72/102;
}

.p-top-menu__item:nth-child(4) .p-top-menu__icon {
  max-width: 71px;
  max-width: 4.4375rem;
}
.p-top-menu__item:nth-child(4) .p-top-menu__icon img {
  aspect-ratio: 71/82;
}

.p-top-menu__text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: max(20px, 10px);
  font-size: max(1.25rem, 10px);
  line-height: 1.9;
}

.p-top-menu__buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 72px;
  gap: 4.5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 56px;
  margin-top: 3.5rem;
}

.p-top-mv {
  background-color: #f6f5f7;
  height: calc(100vh - 5rem);
  position: relative;
}

.p-top-mv__bg {
  display: block;
  height: inherit;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.p-top-mv__bg picture {
  display: block;
  height: inherit;
}

.p-top-mv__bg img {
  -o-object-fit: cover;
  aspect-ratio: 1440/800;
  height: inherit;
     object-fit: cover;
  width: 100%;
}

.p-top-mv__inner {
  height: inherit;
  position: relative;
}

.p-top-mv__content {
  padding-left: 10vw;
  padding-top: 160px;
  padding-top: 10rem;
  padding-top: 18vh;
}

.p-top-mv__heading {
  display: block;
  max-width: 42vw;
  width: 100%;
}

.p-top-mv__heading img {
  -o-object-fit: cover;
  aspect-ratio: 491/319;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-top-mv__title {
  color: #615d69;
  font-family: "Shippori Mincho", serif;
  font-size: 2.23vw;
  font-weight: 500;
  line-height: 1.9;
  margin-top: 34px;
  margin-top: 2.125rem;
}

.p-top-news {
  background-color: #f6f5f9;
  padding-bottom: 66px;
  padding-bottom: 4.125rem;
  padding-top: 64px;
  padding-top: 4rem;
}

.p-top-news__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 56px;
  gap: 3.5rem;
}

.p-top-news__title {
  margin-top: 26px;
  margin-top: 1.625rem;
}

.p-top-news__list {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding-left: 56px;
  padding-left: 3.5rem;
  position: relative;
}

.p-top-news__list::before {
  background-color: #bab3c6;
  content: "";
  display: block;
  height: 140px;
  height: 8.75rem;
  left: 0;
  position: absolute;
  top: 16px;
  top: 1rem;
  width: 2px;
  width: 0.125rem;
}

.p-top-news__link {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  gap: 1.25rem;
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
  padding-top: 10px;
  padding-top: 0.625rem;
}

.p-top-news__date {
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  line-height: 1.5;
}

.p-top-news__text {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  display: -webkit-box;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(15px, 10px);
  font-size: max(0.9375rem, 10px);
  line-height: 1.5;
  overflow: hidden;
}

.p-top-news__button {
  margin-top: 116px;
  margin-top: 7.25rem;
}

.p-top-pickup {
  background-color: #f6f5f7;
  overflow-x: clip;
  padding-bottom: 50px;
  padding-bottom: 3.125rem;
  padding-top: 80px;
  padding-top: 5rem;
}

.p-top-pickup__container {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 56px;
  gap: 3.5rem;
}

.p-top-pickup__content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding-bottom: 30px;
  padding-bottom: 1.875rem;
  padding-left: 58px;
  padding-left: 3.625rem;
  position: relative;
}

.p-top-pickup__content::before {
  background-color: #bab3c6;
  content: "";
  display: block;
  height: 278px;
  height: 17.375rem;
  left: 0;
  position: absolute;
  top: 0;
  width: 2px;
  width: 0.125rem;
}

.p-top-pickup__swiper {
  clip-path: inset(0% -50vw 0% 0%);
  overflow: visible;
  overflow: initial;
}

.p-top-pickup__item {
  width: min(100%, 300px);
  width: min(100%, 18.75rem);
}

.p-top-pickup__item-img {
  display: block;
  max-width: 300px;
  max-width: 18.75rem;
  width: 100%;
}

.p-top-pickup__item-img img {
  -o-object-fit: cover;
  aspect-ratio: 500/360;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-top-pickup__item-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Noto Sans JP", sans-serif;
  gap: 16px;
  gap: 1rem;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.p-top-pickup__item-date {
  display: inline-block;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  font-weight: 300;
  line-height: 1.5;
}

.p-top-pickup__item-title {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  display: -webkit-box;
  font-size: max(15px, 10px);
  font-size: max(0.9375rem, 10px);
  font-weight: 300;
  line-height: 1.4;
  overflow: hidden;
}

.swiper-horizontal > .swiper-scrollbar,
.p-top-pickup__scrollbar.swiper-scrollbar.swiper-scrollbar-horizontal {
  background-color: #fff;
  height: 8px;
  height: 0.5rem;
  left: 58px;
  left: 3.625rem;
  max-width: 923px;
  max-width: 57.6875rem;
}

.p-top-pickup__scrollbar .swiper-scrollbar-drag {
  background-color: #d2ced9;
}

.js-fadein {
  opacity: 0;
  -webkit-transform: translateY(6.25rem);
          transform: translateY(6.25rem);
  -webkit-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.js-fadein.is-scrollin {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.u-hidden {
  display: none;
}

.u-pc {
  display: block;
}

.u-sp {
  display: none;
}

@media (max-width: 1202px){
  html {
    font-size: 1.3311148087vw;
  }
}

@media screen and (max-width: 767px){
  html {
    font-size: 4.1025641026vw;
  }
  html {
    scroll-padding-top: 6.25rem;
  }
  .l-inner {
    max-width: 572px;
    max-width: 35.75rem;
    padding-left: 16px;
    padding-left: 1rem;
    padding-right: 16px;
    padding-right: 1rem;
  }
  .l-inner2 {
    max-width: 572px;
    max-width: 35.75rem;
    padding-left: 16px;
    padding-left: 1rem;
    padding-right: 16px;
    padding-right: 1rem;
  }
  .l-lower-head::after {
    background: url(../images/common/lower-mv_sp.png) no-repeat center/cover;
  }
  .c-group-section__content {
    padding: 31px 16px 40px;
    padding: 1.9375rem 1rem 2.5rem;
  }
  .c-group-section__heading {
    font-size: max(20px, 10px);
    font-size: max(1.25rem, 10px);
  }
  .c-group-section__block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 16px;
    gap: 1rem;
    margin-top: 34px;
    margin-top: 2.125rem;
  }
  .c-group-section__img {
    margin-top: 0;
    margin-top: initial;
    max-width: 326px;
    max-width: 20.375rem;
  }
  .c-group-section__img img {
    aspect-ratio: 326/267;
  }
  .c-group-section__body {
    gap: 32px;
    gap: 2rem;
    -webkit-box-pack: initial;
        -ms-flex-pack: initial;
            justify-content: initial;
  }
  .c-group-section__button {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .c-lower-title__text {
    font-size: max(16px, 10px);
    font-size: max(1rem, 10px);
  }
  .c-lower-title__line {
    margin-top: 1px;
    margin-top: 0.0625rem;
  }
  .c-no-post {
    font-size: 24px;
    font-size: 1.5rem;
  }
  .c-reservation-link {
    padding: 12.8px;
    padding: 0.8rem;
    width: 300px;
    width: 18.75rem;
  }
  .c-reservation-link__img {
    max-width: 20px;
    max-width: 1.25rem;
  }
  .c-reservation-link__img img {
    aspect-ratio: 20/17.69;
  }
  .p-reservation__item:nth-child(2) .c-reservation-link__img {
    max-width: 25px;
    max-width: 1.5625rem;
  }
  .p-reservation__item:nth-child(2) .c-reservation-link__img img {
    aspect-ratio: 25/24.14;
  }
  .p-reservation__item:nth-child(3) .c-reservation-link__img {
    max-width: 23px;
    max-width: 1.4375rem;
  }
  .p-reservation__item:nth-child(3) .c-reservation-link__img img {
    aspect-ratio: 23/22.96;
  }
  .c-reservation-link__text {
    font-size: max(16px, 10px);
    font-size: max(1rem, 10px);
  }
  .c-tag {
    font-size: max(11px, 10px);
    font-size: max(0.6875rem, 10px);
    padding: 3.4px 7.9px;
    padding: 0.2125rem 0.49375rem;
  }
  .c-tag--filter {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    padding: 0 16px;
    padding: 0 1rem;
  }
  .c-title__en {
    font-size: max(38px, 10px);
    font-size: max(2.375rem, 10px);
  }
  .c-title--small .c-title__ja {
    margin-top: 3px;
    margin-top: 0.1875rem;
  }
  .p-404__mv.p-lower-mv {
    padding-bottom: 3px;
    padding-bottom: 0.1875rem;
    padding-top: 69px;
    padding-top: 4.3125rem;
  }
  .p-404__content {
    padding-bottom: 120px;
    padding-bottom: 7.5rem;
    padding-top: 0;
    padding-top: initial;
  }
  .p-404__text {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
  }
  .p-404__button {
    margin-top: 31px;
    margin-top: 1.9375rem;
  }
  .p-404__link {
    width: 200px;
    width: 12.5rem;
  }
  .p-breadcrumb {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    padding-bottom: 13.2px;
    padding-bottom: 0.825rem;
    padding-top: 13.2px;
    padding-top: 0.825rem;
  }
  .p-breadcrumb span[property=itemListElement]:nth-child(n+2) {
    margin-left: 8px;
    margin-left: 0.5rem;
  }
  .p-breadcrumb span[property=itemListElement]:nth-child(n+2)::before {
    margin-right: 8px;
    margin-right: 0.5rem;
  }
  .p-campaign__container {
    padding-top: 4px;
    padding-top: 0.25rem;
  }
  .p-campaign__list {
    row-gap: 80px;
    row-gap: 5rem;
  }
  .p-campaign__period {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    padding: 10px 23px 7.6px;
    padding: 0.625rem 1.4375rem 0.475rem;
  }
  .p-campaign__flex {
    padding: 18px 16px 40px;
    padding: 1.125rem 1rem 2.5rem;
  }
  .p-campaign__head {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 12px;
    row-gap: 0.75rem;
  }
  .p-campaign__title {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
  }
  .p-campaign__price {
    max-width: 100%;
    padding: 8px 16px 9px;
    padding: 0.5rem 1rem 0.5625rem;
  }
  .p-campaign__price-box {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
  }
  .p-campaign__price-box-num {
    font-size: max(20px, 10px);
    font-size: max(1.25rem, 10px);
  }
  .p-campaign__main {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    margin-top: 25px;
    margin-top: 1.5625rem;
    row-gap: 14px;
    row-gap: 0.875rem;
  }
  .p-campaign__terms {
    margin-top: 21px;
    margin-top: 1.3125rem;
  }
  .p-campaign__contents + .p-campaign__terms {
    margin-top: 21px;
    margin-top: 1.3125rem;
  }
  .p-campaign__contents,
  .p-campaign__terms {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
  }
  .p-campaign__img {
    width: 100%;
  }
  .p-campaign__btn-wrap {
    margin-top: 18px;
    margin-top: 1.125rem;
  }
  .p-campaign__btn {
    font-weight: 500;
  }
  .p-case-attention {
    margin-top: 40px;
    margin-top: 2.5rem;
  }
  .p-case-attention__text {
    padding: 24px 16px 21px;
    padding: 1.5rem 1rem 1.3125rem;
  }
  .p-case-card {
    padding: 24px 16px;
    padding: 1.5rem 1rem;
  }
  .p-case-card__tags {
    gap: 8px;
    gap: 0.5rem;
  }
  .p-case-card__treatment {
    gap: 16px;
    gap: 1rem;
    margin-top: 10px;
    margin-top: 0.625rem;
  }
  .p-case-card__treatment-label {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    height: 40px;
    height: 2.5rem;
    width: 72px;
    width: 4.5rem;
  }
  .p-case-card__treatment-text {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
  }
  .p-case-card__img {
    margin-top: 10px;
    margin-top: 0.625rem;
    max-width: 326px;
    max-width: 20.375rem;
  }
  .p-case-card__img img {
    aspect-ratio: 326/232;
  }
  .p-case-card__details {
    margin-bottom: 0;
    margin-top: 10px;
    margin-top: 0.625rem;
  }
  .p-case-card__detail {
    gap: 16px;
    gap: 1rem;
    margin-top: 10px;
    margin-top: 0.625rem;
  }
  .p-case-card__detail-label {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    width: 72px;
    width: 4.5rem;
  }
  .p-case-card__detail-text {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
  }
  .p-case-card__divider {
    margin-top: 10px;
    margin-top: 0.625rem;
  }
  .p-case-card__button {
    margin-top: 24px;
    margin-top: 1.5rem;
  }
  .p-case-contents {
    margin-top: 40px;
    margin-top: 2.5rem;
  }
  .p-case-contents__list {
    gap: 24px;
    gap: 1.5rem;
    grid-template-columns: 1fr;
  }
  .p-case-contents__item {
    width: 100%;
  }
  .p-case-detail {
    padding: 14px 16px 18px;
    padding: 0.875rem 1rem 1.125rem;
  }
  .p-case-detail__list {
    gap: 16px;
    gap: 1rem;
  }
  .p-case-detail__item {
    gap: 16px;
    gap: 1rem;
  }
  .p-case-detail__label {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    min-height: 37px;
    min-height: 2.3125rem;
    width: 25.76%;
  }
  .p-case-detail__text {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
  }
  .p-case-filter {
    margin-top: 20px;
    margin-top: 1.25rem;
  }
  .p-case-filter__header {
    border-radius: 0.3125rem 0.3125rem 0 0;
    padding-bottom: 0;
    padding-bottom: initial;
    padding-top: 0;
    padding-top: initial;
  }
  .p-case-filter__title {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
  }
  .p-case-filter__close-icon {
    border-left: 6px solid transparent;
    border-left: 0.375rem solid transparent;
    border-right: 6px solid transparent;
    border-right: 0.375rem solid transparent;
    border-top: 10px solid #fff;
    border-top: 0.625rem solid #fff;
  }
  .p-case-filter__content {
    border-radius: 0 0 0.3125rem 0.3125rem;
    padding-bottom: 20px;
    padding-bottom: 1.25rem;
    padding-left: 10px;
    padding-left: 0.625rem;
    padding-right: 10px;
    padding-right: 0.625rem;
    padding-top: 18px;
    padding-top: 1.125rem;
  }
  .p-case-filter__content.is-open {
    padding-bottom: 0;
    padding-top: 0;
  }
  .p-case-filter__section {
    -webkit-box-align: initial;
        -ms-flex-align: initial;
            align-items: initial;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 12px;
    gap: 0.75rem;
    margin-top: 21px;
    margin-top: 1.3125rem;
  }
  .p-case-filter__section-title {
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    line-height: 1;
    width: 48px;
    width: 3rem;
  }
  .p-case-filter__divider {
    height: 1px;
    min-height: 0;
    min-height: initial;
    width: 100%;
  }
  .p-case-filter__tag-list {
    gap: 14px 10px;
    gap: 0.875rem 0.625rem;
    padding-left: 8px;
    padding-left: 0.5rem;
    padding-right: 8px;
    padding-right: 0.5rem;
  }
  .p-case-filter__tag {
    border-radius: 0.625rem;
    font-size: max(11px, 10px);
    font-size: max(0.6875rem, 10px);
    height: 20px;
    height: 1.25rem;
    padding-left: 8px;
    padding-left: 0.5rem;
    padding-right: 8px;
    padding-right: 0.5rem;
  }
  .p-case-filter__no-terms {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
  }
  .p-case-pagination {
    margin-top: 40px;
    margin-top: 2.5rem;
  }
  .p-case-pagination__inner {
    padding-left: 16px;
    padding-left: 1rem;
    padding-right: 16px;
    padding-right: 1rem;
  }
  .p-case {
    padding-bottom: 80px;
    padding-bottom: 5rem;
  }
  .p-case__mv.p-lower-mv {
    padding-bottom: 56px;
    padding-bottom: 3.5rem;
  }
  .p-clinic-access {
    padding-top: 70px;
    padding-top: 4.375rem;
  }
  .p-clinic-access__section {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .p-clinic-access__map {
    margin-top: 15px;
    margin-top: 0.9375rem;
    max-width: 358px;
    max-width: 22.375rem;
  }
  .p-clinic-access__map iframe {
    aspect-ratio: 358/400;
  }
  .p-clinic-access__text {
    letter-spacing: normal;
    letter-spacing: initial;
    margin-top: 27px;
    margin-top: 1.6875rem;
  }
  .p-clinic-feature__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 24px;
    gap: 1.5rem;
    margin-left: auto;
    margin-right: auto;
    margin-top: 40px;
    margin-top: 2.5rem;
    max-width: 326px;
    max-width: 20.375rem;
  }
  .p-clinic-feature__item {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 16px;
    gap: 1rem;
    max-width: none;
    max-width: initial;
  }
  .p-clinic-feature__badge {
    height: 148px;
    height: 9.25rem;
    width: 148px;
    width: 9.25rem;
  }
  .p-clinic-feature__item:nth-child(1) .p-clinic-feature__icon {
    max-width: 89.13px;
    max-width: 5.570625rem;
    padding-top: 37px;
    padding-top: 2.3125rem;
  }
  .p-clinic-feature__item:nth-child(1) .p-clinic-feature__icon img {
    aspect-ratio: 89.13/59.72;
  }
  .p-clinic-feature__item:nth-child(2) .p-clinic-feature__icon {
    max-width: 44.05px;
    max-width: 2.753125rem;
    padding-top: 25px;
    padding-top: 1.5625rem;
  }
  .p-clinic-feature__item:nth-child(2) .p-clinic-feature__icon img {
    aspect-ratio: 44.05/67.5;
  }
  .p-clinic-feature__item:nth-child(3) .p-clinic-feature__icon {
    max-width: 66.75px;
    max-width: 4.171875rem;
    padding-top: 17px;
    padding-top: 1.0625rem;
  }
  .p-clinic-feature__item:nth-child(3) .p-clinic-feature__icon img {
    aspect-ratio: 1;
  }
  .p-clinic-feature__badge-text {
    color: #81749a;
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
  }
  .p-clinic-feature__item:nth-child(1) .p-clinic-feature__badge-text {
    margin-top: 18px;
    margin-top: 1.125rem;
  }
  .p-clinic-feature__item:nth-child(2) .p-clinic-feature__badge-text {
    margin-top: 23px;
    margin-top: 1.4375rem;
  }
  .p-clinic-feature__item:nth-child(3) .p-clinic-feature__badge-text {
    margin-top: 30px;
    margin-top: 1.875rem;
  }
  .p-clinic-feature__caption {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    margin-top: 0;
  }
  .p-clinic-feature__item:nth-child(2) .p-clinic-feature__caption {
    letter-spacing: -0.06em;
  }
  .p-clinic-guest {
    padding-bottom: 70px;
    padding-bottom: 4.375rem;
    padding-top: 70px;
    padding-top: 4.375rem;
  }
  .p-clinic-guest__content {
    margin-top: 29px;
    margin-top: 1.8125rem;
  }
  .p-clinic-guest__text {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    letter-spacing: normal;
    letter-spacing: initial;
  }
  .p-clinic-guest__text span {
    letter-spacing: -0.1em;
  }
  .p-clinic-guest__text--en {
    max-width: none;
    max-width: initial;
  }
  .p-clinic-info {
    padding-top: 70px;
    padding-top: 4.375rem;
  }
  .p-clinic-info__section {
    margin-top: 58px;
    margin-top: 3.625rem;
  }
  .p-clinic-info__heading {
    font-size: max(16px, 10px);
    font-size: max(1rem, 10px);
  }
  .p-clinic-info__text-box {
    margin-top: 51px;
    margin-top: 3.1875rem;
  }
  .p-clinic-info__text {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    letter-spacing: normal;
    letter-spacing: initial;
  }
  .p-clinic-info__text + .p-clinic-info__text {
    margin-top: 28px;
    margin-top: 1.75rem;
  }
  .p-clinic-info__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 16px;
    gap: 1rem;
    margin-top: 34px;
    margin-top: 2.125rem;
  }
  .p-clinic-info__img {
    max-width: 358px;
    max-width: 22.375rem;
  }
  .p-clinic-info__img img {
    aspect-ratio: 358/227;
  }
  .p-clinic-office {
    padding-bottom: 40px;
    padding-bottom: 2.5rem;
    padding-top: 63px;
    padding-top: 3.9375rem;
  }
  .p-clinic-office__content {
    gap: 16px;
    gap: 1rem;
    margin-top: 40px;
    margin-top: 2.5rem;
    max-width: 358px;
    max-width: 22.375rem;
  }
  .p-clinic-office__list {
    padding-bottom: 11.5px;
    padding-bottom: 0.71875rem;
    padding-left: 53px;
    padding-left: 3.3125rem;
    padding-right: 10px;
    padding-right: 0.625rem;
    padding-top: 11.5px;
    padding-top: 0.71875rem;
  }
  .p-clinic-office__list::after,
  .p-clinic-office__list:first-child::before {
    background: url(../images/common/line_sp.svg) no-repeat center/cover;
  }
  .p-clinic-office__term {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
  }
  .p-clinic-office__desc {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
  }
  .p-clinic-office__reservation {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 32px;
    gap: 2rem;
    margin-top: 32px;
    margin-top: 2rem;
    padding-left: 16px;
    padding-left: 1rem;
    padding-right: 16px;
    padding-right: 1rem;
  }
  .p-clinic-office__reservation-link {
    padding: 12.8px;
    padding: 0.8rem;
    width: 326px;
    width: 20.375rem;
  }
  .p-clinic-office__reservation-icon {
    max-width: 20px;
    max-width: 1.25rem;
  }
  .p-clinic-office__reservation-icon img {
    aspect-ratio: 20/17.69;
  }
  .p-clinic-office__reservation-item:nth-child(2) .p-clinic-office__reservation-icon {
    max-width: 25px;
    max-width: 1.5625rem;
  }
  .p-clinic-office__reservation-item:nth-child(2) .p-clinic-office__reservation-icon img {
    aspect-ratio: 25/24.14;
  }
  .p-clinic-office__reservation-item:nth-child(3) .p-clinic-office__reservation-icon {
    max-width: 23px;
    max-width: 1.4375rem;
  }
  .p-clinic-office__reservation-item:nth-child(3) .p-clinic-office__reservation-icon img {
    aspect-ratio: 23/22.96;
  }
  .p-clinic-office__reservation-text {
    font-size: max(16px, 10px);
    font-size: max(1rem, 10px);
  }
  .p-clinic__container {
    padding-bottom: 61px;
    padding-bottom: 3.8125rem;
    padding-top: 0;
  }
  .p-clinic__heading {
    font-size: max(20px, 10px);
    font-size: max(1.25rem, 10px);
    line-height: 1.9;
    margin-top: -9px;
    margin-top: -0.5625rem;
  }
  .p-clinic__text-box {
    margin-top: 42px;
    margin-top: 2.625rem;
  }
  .p-clinic__text {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
  }
  .p-clinic__text + .p-clinic__text {
    margin-top: 27px;
    margin-top: 1.6875rem;
  }
  .p-column-card {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 24px 16px;
    padding: 1.5rem 1rem;
  }
  .p-column-card__box {
    gap: 16px;
    gap: 1rem;
    margin-top: 16px;
    margin-top: 1rem;
  }
  .p-column-card__new-badge {
    height: 21.44px;
    height: 1.34rem;
    left: -20px;
    left: -1.25rem;
    top: 10px;
    top: 0.625rem;
    width: 77.78px;
    width: 4.86125rem;
  }
  .p-column-card__new-text {
    font-size: max(10px, 10px);
    font-size: max(0.625rem, 10px);
  }
  .p-column-card__tags-sp {
    display: block;
  }
  .p-column-card__tags-pc {
    display: none;
  }
  .p-column-card__tags {
    margin-left: 27.5px;
    margin-left: 1.71875rem;
  }
  .p-column-card__meta {
    margin-top: -9px;
    margin-top: -0.5625rem;
  }
  .p-column-card__title {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    letter-spacing: 0.03em;
    line-height: 1.9;
    margin-top: 1px;
    margin-top: 0.0625rem;
  }
  .p-column-card__img {
    margin-top: 16px;
    margin-top: 1rem;
    max-width: 155px;
    max-width: 9.6875rem;
  }
  .p-column-card__content {
    margin-top: 6px;
    margin-top: 0.375rem;
  }
  .p-column-card:not(.p-column-card--featured) .p-column-card__content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 16px;
    gap: 1rem;
  }
  .p-column-card:not(.p-column-card--featured) .p-column-card__img--list {
    width: 100%;
  }
  .p-column-card__text-wrapper {
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
    gap: 24px;
    gap: 1.5rem;
  }
  .p-column-card__excerpt {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
  }
  .p-column-card__button {
    margin-top: 24px;
    margin-top: 1.5rem;
  }
  .p-column-card--featured {
    padding: 24px 16px;
    padding: 1.5rem 1rem;
  }
  .p-column-card--featured .p-column-card__box {
    gap: 16px;
    gap: 1rem;
  }
  .p-column-card--featured .p-column-card__img {
    margin-top: 7px;
    margin-top: 0.4375rem;
    max-width: 326px;
    max-width: 20.375rem;
  }
  .p-column-card--featured .p-column-card__header {
    padding-left: 0;
  }
  .p-column-card--featured .p-column-card__tags {
    margin-left: 27.5px;
    margin-left: 1.71875rem;
  }
  .p-column-card--featured .p-column-card__meta {
    margin-top: 7px;
    margin-top: 0.4375rem;
  }
  .p-column-card--featured .p-column-card__title {
    margin-top: 0;
  }
  .p-column-card--featured .p-column-card__content {
    margin-top: 11px;
    margin-top: 0.6875rem;
  }
  .p-column-card--featured .p-column-card__excerpt {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    letter-spacing: 0.03em;
    line-height: 1.9;
  }
  .p-column-card--featured .p-column-card__button {
    margin-top: 16px;
    margin-top: 1rem;
  }
  .p-column-contents {
    margin-top: 40px;
    margin-top: 2.5rem;
  }
  .p-column-contents__list {
    grid-template-columns: repeat(1, 1fr);
  }
  .p-column-contents__list--first-page {
    grid-template-columns: repeat(1, 1fr);
    grid-template-rows: auto;
  }
  .p-column-contents__list--first-page .p-column-contents__item--featured {
    grid-column: 1;
    grid-row: 1;
  }
  .p-column-contents__list--first-page .p-column-contents__item:nth-child(2) {
    grid-column: 1;
    grid-row: auto;
  }
  .p-column-contents__list--first-page .p-column-contents__item:nth-child(3) {
    grid-column: 1;
    grid-row: auto;
  }
  .p-column-contents__list--first-page .p-column-contents__item:nth-child(4) {
    grid-column: 1;
    grid-row: auto;
  }
  .p-column-contents__list--first-page .p-column-contents__item:nth-child(5) {
    grid-column: 1;
    grid-row: auto;
  }
  .p-column-contents__list--first-page .p-column-contents__item:nth-child(6) {
    grid-column: 1;
    grid-row: auto;
  }
  .p-column-contents__list--first-page .p-column-contents__item:nth-child(7) {
    grid-column: 1;
    grid-row: auto;
  }
  .p-column-contents__list--other-pages {
    grid-template-columns: repeat(1, 1fr);
  }
  .p-column-contents__item {
    width: 100%;
  }
  .p-column-filter {
    margin-top: 20px;
    margin-top: 1.25rem;
  }
  .p-column-filter__header {
    border-radius: 0.3125rem 0.3125rem 0 0;
    padding-bottom: 0.5px;
    padding-bottom: 0.03125rem;
    padding-top: 0.5px;
    padding-top: 0.03125rem;
  }
  .p-column-filter__title {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
  }
  .p-column-filter__close-icon {
    border-left: 6px solid transparent;
    border-left: 0.375rem solid transparent;
    border-right: 6px solid transparent;
    border-right: 0.375rem solid transparent;
    border-top: 10px solid #fff;
    border-top: 0.625rem solid #fff;
  }
  .p-column-filter__content {
    border-radius: 0 0 0.3125rem 0.3125rem;
    padding-bottom: 20px;
    padding-bottom: 1.25rem;
    padding-left: 10px;
    padding-left: 0.625rem;
    padding-right: 10px;
    padding-right: 0.625rem;
    padding-top: 18px;
    padding-top: 1.125rem;
  }
  .p-column-filter__content.is-open {
    padding-bottom: 0;
    padding-top: 0;
  }
  .p-column-filter__section {
    -webkit-box-align: initial;
        -ms-flex-align: initial;
            align-items: initial;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 12px;
    gap: 0.75rem;
    margin-top: 21px;
    margin-top: 1.3125rem;
  }
  .p-column-filter__section-title {
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    line-height: 1;
    width: 48px;
    width: 3rem;
  }
  .p-column-filter__divider {
    height: 1px;
    min-height: 0;
    min-height: initial;
    width: 100%;
  }
  .p-column-filter__tag-list {
    gap: 14px 10px;
    gap: 0.875rem 0.625rem;
    padding-left: 8px;
    padding-left: 0.5rem;
    padding-right: 8px;
    padding-right: 0.5rem;
  }
  .p-column-filter__tag {
    border-radius: 0.625rem;
    font-size: max(11px, 10px);
    font-size: max(0.6875rem, 10px);
    height: 20px;
    height: 1.25rem;
    padding-left: 8px;
    padding-left: 0.5rem;
    padding-right: 8px;
    padding-right: 0.5rem;
  }
  .p-column-filter__no-terms {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
  }
  .p-column-pagination {
    margin-top: 40px;
    margin-top: 2.5rem;
  }
  .p-column {
    padding-bottom: 40px;
    padding-bottom: 2.5rem;
  }
  .p-column__mv.p-lower-mv {
    padding-bottom: 56px;
    padding-bottom: 3.5rem;
  }
  .p-content-case .wp-block-group.p-content-case__detail {
    margin-top: 22px;
    margin-top: 1.375rem;
  }
  .p-content-case__detail {
    padding: 14px 16px 18px;
    padding: 0.875rem 1rem 1.125rem;
  }
  .p-content-case__detail > div {
    gap: 16px;
    gap: 1rem;
  }
  .p-content-case__detail-block > div {
    gap: 16px;
    gap: 1rem;
  }
  .p-content-case__detail-block:first-child {
    padding-bottom: 16px;
    padding-bottom: 1rem;
  }
  .p-content p.p-content-case__detail-title {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    min-height: 37px;
    min-height: 2.3125rem;
    width: 25.76%;
  }
  .p-content p.p-content-case__detail-text {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
  }
  .p-content-case__gray-bg {
    padding: 24px 16px;
    padding: 1.5rem 1rem;
  }
  .p-content-case .wp-block-gallery + p {
    margin-top: 20px;
    margin-top: 1.25rem;
  }
  .p-content-service .p-content-faq__block.wp-block-group:nth-of-type(n + 2) {
    margin-top: 24px;
    margin-top: 1.5rem;
  }
  .p-content-faq__block {
    margin-top: 36px;
    margin-top: 2.25rem;
  }
  .p-content-faq__question .wp-block-group__inner-container {
    padding: 14.8px 45px 14.8px 10px;
    padding: 0.925rem 2.8125rem 0.925rem 0.625rem;
  }
  .p-content-faq__question .wp-block-group__inner-container p {
    letter-spacing: 0;
    padding-left: 2.2em;
    text-indent: -1.7em;
  }
  .p-content-faq__question .wp-block-group__inner-container p::before {
    margin-right: 8px;
    margin-right: 0.5rem;
  }
  .p-content-faq__question .wp-block-group__inner-container::after {
    right: 16px;
    right: 1rem;
  }
  .p-content-faq__answer .wp-block-group__inner-container {
    padding: 14.8px 40px 14.8px 34px;
    padding: 0.925rem 2.5rem 0.925rem 2.125rem;
  }
  .p-content-faq__answer .wp-block-group__inner-container p {
    letter-spacing: 0;
    padding-left: 2.2em;
    text-indent: -1.7em;
  }
  .p-content-faq__answer .wp-block-group__inner-container p::before {
    margin-right: 8px;
    margin-right: 0.5rem;
  }
  .p-content-service .wp-block-group:nth-of-type(n + 2) {
    margin-top: 70px;
    margin-top: 4.375rem;
  }
  .p-content-service .wp-block-group.menu-block + .menu-block {
    margin-top: 30px;
    margin-top: 1.875rem;
  }
  .p-content-service .wp-block-group.p-content-service__handling + .p-content-service__handling2,
  .p-content-service .wp-block-group.p-content-service__handling2 + .p-content-service__handling2 {
    margin-top: 30px;
    margin-top: 1.875rem;
  }
  .p-content-service.p-content p.sub-group-title--service {
    margin-top: 10px;
    margin-top: 0.625rem;
  }
  .p-content-service .wp-block-group.p-content-service__handling h2 + .sub-group-title--service,
  .p-content-service .wp-block-group.p-content-service__handling h2 + .menu-block {
    margin-top: 28px;
    margin-top: 1.75rem;
  }
  .p-content-service.p-content p:has(code) + .sub-group-title--service {
    margin-top: 29px;
    margin-top: 1.8125rem;
  }
  .p-content-service.p-content h3 {
    margin-top: 32px;
    margin-top: 2rem;
  }
  .p-content-service.p-content p.sub-group-title + h3,
  .p-content-service.p-content p + h3 {
    margin-top: 25px;
    margin-top: 1.5625rem;
  }
  .p-content-service.p-content h3 + p {
    margin-top: 8px !important;
    margin-top: 0.5rem !important;
  }
  .p-content-service.p-content p.sub-group-title + p {
    letter-spacing: -0.03em;
    margin-top: 0;
  }
  .p-content-service.p-content p code {
    margin-top: 10px;
    margin-top: 0.625rem;
  }
  .p-content-service .wp-block-group.p-content-service__handling2 p code {
    margin-top: 17px;
    margin-top: 1.0625rem;
  }
  .p-content-service.p-content p:has(code) + .p-content-service__price-text {
    margin-top: 25px;
    margin-top: 1.5625rem;
  }
  .p-content-service .wp-block-table + p.sub-group-title--service {
    margin-top: 30px;
    margin-top: 1.875rem;
  }
  .p-content-service.p-content h2 + .wp-block-table {
    margin-top: 24px;
    margin-top: 1.5rem;
  }
  .p-content-service__head {
    padding: 29px 10px 30px;
    padding: 1.8125rem 0.625rem 1.875rem;
  }
  .p-content-service__head2 {
    margin-top: 29px;
    margin-top: 1.8125rem;
    padding: 0 16px 0;
    padding: 0 1rem 0;
  }
  .p-content-service__head--circle3 {
    padding: 29px 10px 40px;
    padding: 1.8125rem 0.625rem 2.5rem;
  }
  .p-content-service h1 {
    font-size: max(20px, 10px);
    font-size: max(1.25rem, 10px);
    letter-spacing: 0;
    line-height: 1.9;
    padding-bottom: 6px;
    padding-bottom: 0.375rem;
  }
  .p-content-service .p-content-service__head h1,
  .p-content-service .p-content-service__head h2 {
    font-size: max(20px, 10px);
    font-size: max(1.25rem, 10px);
    letter-spacing: 0;
    line-height: 1.9;
    padding-bottom: 6px;
    padding-bottom: 0.375rem;
  }
  .p-content-service .p-content-service__head2-h1 {
    font-size: max(20px, 10px);
    font-size: max(1.25rem, 10px);
    letter-spacing: -0.1em;
    line-height: 1.9;
  }
  .p-content .p-content-service__head p,
  .p-content .p-content-service__head2-text {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    letter-spacing: -0.07em;
    margin-top: 28px;
    margin-top: 1.75rem;
  }
  .p-content .p-content-service__head p + p {
    margin-top: 25px;
    margin-top: 1.5625rem;
  }
  .p-content .p-content-service__head p code {
    line-height: 2.1;
    margin-top: 0;
  }
  .p-content p.p-content-service__head2-text {
    margin-top: 18px;
    margin-top: 1.125rem;
  }
  .p-content p.p-content-service__head2-text + .p-content-service__head2-text {
    margin-top: 26px;
    margin-top: 1.625rem;
  }
  .p-content-service__head-circles3.wp-block-group {
    margin-top: 28px;
    margin-top: 1.75rem;
  }
  .p-content-service__head-circles3 > .wp-block-group__inner-container {
    grid-gap: 1rem 1.25rem;
    display: grid;
    gap: 16px 20px;
    gap: 1rem 1.25rem;
    grid-template-columns: 9.375rem 9.375rem;
    grid-template-rows: 9.375rem 9.375rem;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .p-content p.p-content-service__head-circle {
    display: inline-grid;
    font-size: 16px;
    font-size: 1rem;
    height: 150px;
    height: 9.375rem;
    letter-spacing: -0.07em;
    line-height: 1.5;
    margin-left: auto;
    margin-right: auto;
    width: 150px;
    width: 9.375rem;
  }
  .p-content-service__head-circles3 .p-content-service__head-circle:nth-child(1) {
    grid-column: 1/3;
    grid-row: 1;
    justify-self: center;
  }
  .p-content-service__head-circles3 .p-content-service__head-circle:nth-child(2) {
    grid-column: 1;
    grid-row: 2;
    justify-self: start;
  }
  .p-content-service__head-circles3 .p-content-service__head-circle:nth-child(3) {
    grid-column: 2;
    grid-row: 2;
    justify-self: end;
  }
  .p-content-service__head-circles4.wp-block-group {
    margin-top: 28px;
    margin-top: 1.75rem;
  }
  .p-content-service__head-circles4 > .wp-block-group__inner-container {
    grid-gap: 1rem 1.25rem;
    display: grid;
    gap: 16px 20px;
    gap: 1rem 1.25rem;
    grid-template-columns: repeat(2, 1fr);
  }
  .p-content-service__head-circles4 + p {
    margin-top: 32px !important;
    margin-top: 2rem !important;
  }
  .p-content-service__head.p-content-service__head--circles3-text {
    padding: 28px 14px 34px;
    padding: 1.75rem 0.875rem 2.125rem;
  }
  .p-content-service__head-circles3-text.wp-block-group {
    margin-top: 34px;
    margin-top: 2.125rem;
  }
  .p-content-service__head-circles3-text > .wp-block-group__inner-container {
    -moz-column-gap: 0;
         -webkit-column-gap: 0;
            column-gap: 0;
    grid-template-columns: repeat(1, 1fr);
    row-gap: 32px;
    row-gap: 2rem;
  }
  .p-content-service__head-circles3-text p.p-content-service__head-circle {
    line-height: 1.5;
  }
  .p-content-service .wp-block-group.p-content-service__parts {
    margin-top: 10px;
    margin-top: 0.625rem;
    margin-top: 19px;
    margin-top: 1.1875rem;
  }
  .p-content-service.p-content p + .p-content-service__parts {
    margin-top: 10px;
    margin-top: 0.625rem;
  }
  .p-content-service__parts > div {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .p-content p.p-content-service__parts-label {
    font-size: 12px;
    font-size: 0.75rem;
    padding: 7.5px 9.5px;
    padding: 0.46875rem 0.59375rem;
  }
  .p-content-service__parts-list {
    gap: 3.5px 7px;
    gap: 0.21875rem 0.4375rem;
  }
  .p-content ul.p-content-service__parts-list {
    margin-top: -4px !important;
    margin-top: -0.25rem !important;
  }
  .p-content-service__parts-list li {
    font-size: 12px;
    font-size: 0.75rem;
    line-height: 1.9;
  }
  .p-content p.p-content-service__price-text {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    margin-top: 7px;
    margin-top: 0.4375rem;
  }
  .p-content p.p-content-service__monitor-text {
    letter-spacing: 0;
    margin-top: 28px;
    margin-top: 1.75rem;
  }
  .p-content p.p-content-service__monitor-text + .sub-group-title--service {
    margin-top: 25px;
    margin-top: 1.5625rem;
  }
  .p-content-service__monitor-wrap {
    margin-top: 22px;
    margin-top: 1.375rem;
  }
  .p-content-service__monitor-table td {
    font-size: 12px;
    font-size: 0.75rem;
    line-height: 1.9;
  }
  .p-content-service__monitor-table td:first-child {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    padding: 9.1px 2px;
    padding: 0.56875rem 0.125rem;
    width: 29.35%;
  }
  .p-content-service__monitor-table td:last-child {
    font-size: 12px;
    font-size: 0.75rem;
    padding: 9.1px 8px 9.1px 16px;
    padding: 0.56875rem 0.5rem 0.56875rem 1rem;
    width: 69.67%;
  }
  .p-content-service .p-content-service__monitor-wrap p code {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    line-height: 1.9;
    margin-top: 14px;
    margin-top: 0.875rem;
  }
  .p-content ol.p-content-service__flow-list {
    margin-top: 40px !important;
    margin-top: 2.5rem !important;
  }
  .p-content ol.p-content-service__flow-list {
    padding-left: 24px;
    padding-left: 1.5rem;
    padding-right: 24px;
    padding-right: 1.5rem;
  }
  .p-content-service__flow-list::before {
    left: 42px;
    left: 2.625rem;
  }
  .p-content ol.p-content-service__flow-list li {
    font-size: 12px;
    font-size: 0.75rem;
    letter-spacing: -0.08em;
    margin-left: 82px;
    margin-left: 5.125rem;
    min-height: 102px;
    min-height: 6.375rem;
    padding: 6px 14px 9px 14px;
    padding: 0.375rem 0.875rem 0.5625rem 0.875rem;
  }
  .p-content-service__flow-list li::before {
    left: -85px;
    left: -5.3125rem;
  }
  .p-content-service__flow-list li strong {
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.9;
    margin-bottom: 12px;
    margin-bottom: 0.75rem;
  }
  .p-content-service .wp-block-group:nth-of-type(n + 2).p-content-service__notes {
    margin-top: 80px;
    margin-top: 5rem;
  }
  .p-content-service__notes > .wp-block-group__inner-container {
    padding: 24px 16px 24px;
    padding: 1.5rem 1rem 1.5rem;
  }
  .p-content-service.p-content p.p-content-service__notes-title {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    font-weight: 500;
    line-height: 1.9;
  }
  .p-content-service.p-content p.p-content-service__notes-text {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    margin-top: 10px;
    margin-top: 0.625rem;
  }
  .p-content-service .wp-block-group:nth-of-type(n + 2).p-content-service__for {
    margin-top: 80px;
    margin-top: 5rem;
  }
  .p-content-service__for {
    background: url(../images/common/single-service-bg_sp.jpg) no-repeat center/cover;
    margin-left: 0;
    margin-right: 0;
    padding-bottom: 32px;
    padding-bottom: 2rem;
    padding-left: 16px;
    padding-left: 1rem;
    padding-right: 16px;
    padding-right: 1rem;
    padding-top: 34px;
    padding-top: 2.125rem;
  }
  .p-content p.p-content-service__for-title {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
  }
  .p-content p.p-content-service__for-text {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    line-height: 1.9;
    margin-top: 18px;
    margin-top: 1.125rem;
  }
  .p-content-service__features-wrap > div {
    gap: 16px;
    gap: 1rem;
    grid-template-columns: repeat(2, 1fr);
    margin-top: 40px;
    margin-top: 2.5rem;
  }
  .p-content p.p-content-service__features-up {
    padding: 9px 6px;
    padding: 0.5625rem 0.375rem;
  }
  .p-content p.p-content-service__features-down {
    min-height: 80px;
    min-height: 5rem;
    padding: 5.6px 6px;
    padding: 0.35rem 0.375rem;
  }
  .p-content-service__features-boxes {
    width: 100%;
  }
  .p-content-service__features-boxes > div {
    gap: 16px;
    gap: 1rem;
    grid-template-columns: repeat(1, 1fr);
    margin-top: 40px;
    margin-top: 2.5rem;
  }
  .p-content p.p-content-service__features-box {
    padding: 16px 32px;
    padding: 1rem 2rem;
  }
  .p-content-service .wp-block-group:nth-of-type(n + 2).p-content-service__cards,
  .p-content-service__cards {
    margin-top: 8px;
    margin-top: 0.5rem;
  }
  .p-content-service__cards > .wp-block-group__inner-container {
    gap: 10px;
    gap: 0.625rem;
    grid-template-columns: repeat(1, 1fr);
  }
  .p-content-service .wp-block-group.p-content-service__card,
  .p-content-service figure.wp-block-image.p-content-service__card-img {
    margin: 0;
  }
  .p-content p.p-content-service__card-title {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    padding-left: 16px;
    padding-left: 1rem;
  }
  .p-content p.p-content-service__card-title::before {
    height: 12px;
    height: 0.75rem;
    top: 7px;
    top: 0.4375rem;
    width: 12px;
    width: 0.75rem;
  }
  .p-content-service__card-img img {
    aspect-ratio: 357/268;
  }
  .p-content p.p-content-service__card-text {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    margin-top: 8px;
    margin-top: 0.5rem;
  }
  .p-content-service .p-content-service__cards + .p-content-service__price-text {
    margin-top: 10px;
    margin-top: 0.625rem;
  }
  .p-content-service__img-cards > .wp-block-group__inner-container {
    gap: 22px;
    gap: 1.375rem;
    grid-template-columns: repeat(1, 1fr);
  }
  .p-content-service figure.wp-block-image.p-content-service__img-card {
    margin: 0;
  }
  .p-content-service__img-card img {
    aspect-ratio: 357/268;
  }
  .p-content-service.p-content .mt-100 {
    margin-top: 62px !important;
    margin-top: 3.875rem !important;
  }
  .p-content-service.p-content .mt-5 {
    margin-top: 8px !important;
    margin-top: 0.5rem !important;
  }
  .p-content-service.p-content .mt-3 {
    margin-top: 18px !important;
    margin-top: 1.125rem !important;
  }
  .p-content h2 {
    font-size: max(16px, 10px);
    font-size: max(1rem, 10px);
    padding-bottom: 3px;
    padding-bottom: 0.1875rem;
  }
  .p-content h2::after {
    width: 27.37%;
  }
  .p-content-case.p-content h2,
  .p-content--column h2,
  .p-content--single h2 {
    margin-top: 72px;
    margin-top: 4.5rem;
  }
  .p-content p + h2 {
    margin-top: 62px;
    margin-top: 3.875rem;
  }
  .p-content h3 {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    gap: 4px;
    gap: 0.25rem;
  }
  .p-content h3::before {
    height: 12px;
    height: 0.75rem;
    margin-top: 8px;
    margin-top: 0.5rem;
    width: 12px;
    width: 0.75rem;
  }
  .p-content h3 {
    margin-top: 30px;
    margin-top: 1.875rem;
  }
  .p-content--column p + h3,
  .p-content--single p + h3 {
    margin-top: 27px;
    margin-top: 1.6875rem;
  }
  .p-content h4 {
    margin-top: 27px;
    margin-top: 1.6875rem;
  }
  .p-content p {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    line-height: 1.95;
  }
  .p-content--column p,
  .p-content--single p {
    margin-top: 22px;
    margin-top: 1.375rem;
  }
  .p-content h3 + p {
    margin-top: 10px !important;
    margin-top: 0.625rem !important;
  }
  .p-content--column h3 + p,
  .p-content--single h3 + p {
    margin-top: 15px !important;
    margin-top: 0.9375rem !important;
  }
  .p-content p.sub-group-title {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    margin-top: 32px;
    margin-top: 2rem;
  }
  .p-content h2 + .sub-group-title {
    margin-top: 30px;
    margin-top: 1.875rem;
  }
  .p-content p.sub-group-title + h3 {
    margin-top: 25px;
    margin-top: 1.5625rem;
  }
  .p-content p code {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    margin-top: 35px;
    margin-top: 2.1875rem;
  }
  .p-content table {
    margin-top: 16px;
    margin-top: 1rem;
  }
  .p-content th {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    font-weight: 400;
    padding: 8.7px 4px;
    padding: 0.54375rem 0.25rem;
  }
  .p-content td {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    letter-spacing: -0.01em;
    padding: 9.7px 0;
    padding: 0.60625rem 0;
  }
  .p-content td.ls-minus {
    letter-spacing: -0.03em;
  }
  .p-content td span {
    font-size: max(10px, 10px);
    font-size: max(0.625rem, 10px);
  }
  .p-content .center-wide table th:nth-of-type(2),
  .p-content .center-wide table td:nth-of-type(2) {
    width: 44%;
  }
  .p-content .center-wide table td:nth-of-type(2) {
    letter-spacing: 0.03em;
    line-height: 1.9;
    padding: 10px 8px 10px 10px;
    padding: 0.625rem 0.5rem 0.625rem 0.625rem;
  }
  .p-content .left-wide table th:nth-of-type(1),
  .p-content .left-wide table td:nth-of-type(1) {
    width: 44%;
  }
  .p-content .center-wide table td:nth-of-type(1) {
    letter-spacing: 0.03em;
    line-height: 1.9;
    padding: 10px 8px 10px 10px;
    padding: 0.625rem 0.5rem 0.625rem 0.625rem;
  }
  .p-content .left-wide table th {
    line-height: 1.2;
  }
  .p-content .col2-desc table td:nth-of-type(2) {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    letter-spacing: 0.03em;
    line-height: 1.9;
    padding: 10px 8px 10px 10px;
    padding: 0.625rem 0.5rem 0.625rem 0.625rem;
  }
  .p-content .left-desc table td:nth-of-type(1) {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    letter-spacing: 0.03em;
    line-height: 1.6;
    padding: 10px 8px 10px 10px;
    padding: 0.625rem 0.5rem 0.625rem 0.625rem;
  }
  .p-content .center-desc table td:nth-of-type(2) {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    letter-spacing: 0.03em;
    line-height: 1.9;
    padding: 10px 8px 10px 8px;
    padding: 0.625rem 0.5rem 0.625rem 0.5rem;
  }
  .custom-pattern__gallery1.wp-block-image img {
    aspect-ratio: 358/268;
  }
  .custom-pattern__gallery1-half.is-layout-flex {
    grid-template-columns: repeat(1, 1fr);
  }
  .custom-pattern__gallery1-half:not(:first-child) {
    margin-top: 32px;
    margin-top: 2rem;
  }
  .custom-pattern__gallery1-half.wp-block-gallery.wp-block-gallery-is-layout-flex {
    gap: 0;
  }
  .custom-pattern__gallery1-half figure.wp-block-image {
    width: 100% !important;
  }
  .custom-pattern__gallery2-tall:not(:first-child) {
    margin-top: 32px;
    margin-top: 2rem;
  }
  .custom-pattern__gallery2-tall.wp-block-gallery.wp-block-gallery-is-layout-flex {
    gap: 16px;
    gap: 1rem;
  }
  .custom-pattern__gallery2-tall figure.wp-block-image img {
    aspect-ratio: 171/228;
  }
  .custom-pattern__gallery2-wide.is-layout-flex {
    grid-template-columns: repeat(1, 1fr);
  }
  .custom-pattern__gallery2-wide:not(:first-child) {
    margin-top: 32px;
    margin-top: 2rem;
  }
  .custom-pattern__gallery3-square.is-layout-flex {
    grid-template-columns: repeat(4, 1fr);
  }
  .custom-pattern__gallery3-square:not(:first-child) {
    margin-top: 32px;
    margin-top: 2rem;
  }
  .custom-pattern__gallery3-square.wp-block-gallery.wp-block-gallery-is-layout-flex {
    gap: 16px;
    gap: 1rem;
  }
  .custom-pattern__gallery3-square figure.wp-block-image:nth-child(1) {
    grid-column: span 4;
    max-width: 760px;
    max-width: 47.5rem;
  }
  .custom-pattern__gallery3-square figure.wp-block-image:nth-child(2),
  .custom-pattern__gallery3-square figure.wp-block-image:nth-child(3) {
    grid-column: span 2;
  }
  .custom-pattern__gallery3-tall.is-layout-flex {
    grid-template-columns: repeat(4, 1fr);
  }
  .custom-pattern__gallery3-tall:not(:first-child) {
    margin-top: 32px;
    margin-top: 2rem;
  }
  .custom-pattern__gallery3-tall.wp-block-gallery.wp-block-gallery-is-layout-flex {
    gap: 16px;
    gap: 1rem;
  }
  .custom-pattern__gallery3-tall figure.wp-block-image:nth-child(1) {
    grid-column: span 4;
    max-width: 760px;
    max-width: 47.5rem;
  }
  .custom-pattern__gallery3-tall figure.wp-block-image:nth-child(2),
  .custom-pattern__gallery3-tall figure.wp-block-image:nth-child(3) {
    grid-column: span 2;
  }
  .custom-pattern__textbox-white:not(:first-child) {
    margin-top: 30px;
    margin-top: 1.875rem;
  }
  .custom-pattern__textbox-white {
    padding: 13px 16px;
    padding: 0.8125rem 1rem;
  }
  .custom-pattern__textbox-white p {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    line-height: 2.08;
    margin: 0;
  }
  .custom-pattern__supervisor > .wp-block-group__inner-container {
    padding: 24px 16px 30px;
    padding: 1.5rem 1rem 1.875rem;
  }
  .custom-pattern__supervisor-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .custom-pattern__supervisor-left {
    width: 100%;
  }
  .custom-pattern__supervisor-left .wp-block-group__inner-container {
    border-bottom: 1px solid #545454;
    border-right: none;
    padding-bottom: 30px;
    padding-bottom: 1.875rem;
    padding-right: 0;
  }
  .p-content p.custom-pattern__supervisor-title,
  .p-content p.custom-pattern__supervisor-name {
    font-size: max(18px, 10px);
    font-size: max(1.125rem, 10px);
  }
  .p-content p.custom-pattern__supervisor-name {
    font-size: max(24px, 10px);
    font-size: max(1.5rem, 10px);
    letter-spacing: 0.05em;
    line-height: 1.5;
  }
  .p-content--column figure.custom-pattern__supervisor-img {
    margin-left: auto;
    margin-right: auto;
    width: 61.34%;
  }
  .p-content p.custom-pattern__supervisor-name > code {
    font-size: max(16px, 10px);
    font-size: max(1rem, 10px);
  }
  .custom-pattern__supervisor-right .wp-block-group__inner-container {
    padding-left: 0;
    padding-top: 32px;
    padding-top: 2rem;
  }
  .p-content p.custom-pattern__supervisor-strong {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    margin-top: 22px;
    margin-top: 1.375rem;
  }
  .custom-pattern__hyaluronic-cta {
    padding: 24px;
    padding: 1.5rem;
  }
  .p-content h3.custom-pattern__hyaluronic-cta-title {
    font-size: max(16px, 10px);
    font-size: max(1rem, 10px);
  }
  .p-content h3.custom-pattern__hyaluronic-cta-title + .button-link {
    margin-top: 18px;
    margin-top: 1.125rem;
  }
  .custom-pattern__insta-cta {
    padding: 24px;
    padding: 1.5rem;
  }
  .p-content p.custom-pattern__insta-cta-text {
    font-size: max(16px, 10px);
    font-size: max(1rem, 10px);
  }
  .p-content p.custom-pattern__insta-cta-text + .button-link {
    margin-top: 18px;
    margin-top: 1.125rem;
  }
  .p-floating-cta--pc {
    display: none;
  }
  .p-floating-cta--sp {
    bottom: 0;
    display: block;
    left: 0;
    opacity: 0;
    position: fixed;
    right: 0;
    -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    visibility: hidden;
    z-index: 50;
  }
  .p-floating-cta--sp.is-visible {
    opacity: 1;
    visibility: visible;
  }
  .p-footer {
    padding-bottom: 115px;
    padding-bottom: 7.1875rem;
    padding-top: 80px;
    padding-top: 5rem;
  }
  .p-footer__content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 70px;
    gap: 4.375rem;
  }
  .p-footer__logo-section {
    margin-left: auto;
    margin-right: auto;
  }
  .p-footer__instagram {
    margin-top: 41px;
    margin-top: 2.5625rem;
    padding: 6px 5px;
    padding: 0.375rem 0.3125rem;
  }
  .p-footer__nav-section {
    margin-top: 0;
    margin-top: initial;
  }
  .p-footer__nav--pc {
    display: none;
  }
  .p-footer__nav--sp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 48px;
    gap: 3rem;
    margin-left: auto;
    margin-right: auto;
    width: -moz-fit-content;
    width: -webkit-fit-content;
    width: fit-content;
  }
  .p-footer__nav-column:nth-child(1) {
    width: 148px;
    width: 9.25rem;
  }
  .p-footer__nav-column:nth-child(2) {
    width: 116px;
    width: 7.25rem;
  }
  .p-footer__nav-column:nth-child(3) {
    width: 100%;
  }
  .p-footer__nav-column:nth-child(4) {
    width: 100%;
  }
  .p-footer__nav-item + .p-footer__nav-item {
    margin-top: 9px;
    margin-top: 0.5625rem;
  }
  .p-footer__nav-link {
    gap: 10px;
    gap: 0.625rem;
  }
  .p-footer__nav-text {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
  }
  .p-footer__nav-arrow {
    height: 7px;
    height: 0.4375rem;
    width: 7px;
    width: 0.4375rem;
  }
  .p-footer__policy-link:not(:first-child)::before {
    display: none;
  }
  .p-footer__policy-link:first-child::before {
    background-color: #bababa;
    content: "";
    height: 60%;
    position: absolute;
    right: -19.5px;
    right: -1.21875rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 1px;
  }
  .p-footer__policy-link:nth-child(3)::before {
    background-color: #bababa;
    content: "";
    display: inline-block;
    height: 60%;
    left: auto;
    left: initial;
    position: absolute;
    right: -19.5px;
    right: -1.21875rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 1px;
  }
  .p-group-intro {
    padding-top: 0;
    padding-top: initial;
  }
  .p-group-intro__heading {
    font-size: max(20px, 10px);
    font-size: max(1.25rem, 10px);
  }
  .p-group-intro__text {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    line-height: 1.9;
    margin-top: 50px;
    margin-top: 3.125rem;
  }
  .p-group-intro__text span {
    display: none;
  }
  .p-group-wrapper {
    padding-bottom: 80px;
    padding-bottom: 5rem;
  }
  .p-group__mv.p-lower-mv {
    padding-bottom: 70px;
    padding-bottom: 4.375rem;
  }
  .p-group__artmake {
    padding-top: 42px;
    padding-top: 2.625rem;
  }
  .p-group__career {
    padding-top: 48px;
    padding-top: 3rem;
  }
  .p-hamburger {
    border: none;
    cursor: pointer;
    display: block;
    height: 40px;
    height: 2.5rem;
    margin: 0;
    outline: none;
    padding: 0;
    width: 44px;
    width: 2.75rem;
    z-index: 40;
  }
  .p-header__inner {
    padding-left: 16px;
    padding-left: 1rem;
    padding-right: 16px;
    padding-right: 1rem;
    position: relative;
  }
  .p-header__inner:after {
    background-color: #bab3c6;
    bottom: 0;
    content: "";
    display: none;
    height: 1px;
    left: 50%;
    position: absolute;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 358px;
    width: 22.375rem;
  }
  body.hidden .p-header__inner:after {
    display: inline-block;
  }
  .p-header__nav {
    display: none;
  }
  .p-header__link-text {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
  }
  .p-header__icon--sp {
    display: block;
    margin-left: auto;
  }
  .p-header__hamburger {
    margin-left: 16px;
    margin-left: 1rem;
  }
  .p-information {
    padding-bottom: 80px;
    padding-bottom: 5rem;
    padding-top: 69px;
    padding-top: 4.3125rem;
  }
  .p-information__content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 24px;
    gap: 1.5rem;
    margin-top: 54px;
    margin-top: 3.375rem;
  }
  .p-information__list {
    padding-bottom: 11.5px;
    padding-bottom: 0.71875rem;
    padding-left: 53px;
    padding-left: 3.3125rem;
    padding-right: 53px;
    padding-right: 3.3125rem;
    padding-top: 11.5px;
    padding-top: 0.71875rem;
    width: 100%;
  }
  .p-information__list::after,
  .p-information__list:first-child::before {
    background: url(../images/common/line_sp.svg) no-repeat center/cover;
  }
  .p-information__term,
  .p-information__desc {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
  }
  .p-information__map {
    max-width: 358px;
    max-width: 22.375rem;
  }
  .p-information__reservation {
    margin-top: 40px;
    margin-top: 2.5rem;
  }
  .p-information__reservation-title {
    font-size: max(18px, 10px);
    font-size: max(1.125rem, 10px);
    margin-bottom: 20px;
    margin-bottom: 1.25rem;
  }
  .p-information__reservation {
    margin-top: 75px;
    margin-top: 4.6875rem;
  }
  .p-lower-mv {
    padding-bottom: 75px;
    padding-bottom: 4.6875rem;
    padding-top: 70px;
    padding-top: 4.375rem;
  }
  .p-lower-mv-case {
    padding-bottom: 26px;
    padding-bottom: 1.625rem;
    padding-top: 84px;
    padding-top: 5.25rem;
  }
  .p-lower-mv__title-en {
    font-size: max(38px, 10px);
    font-size: max(2.375rem, 10px);
  }
  .p-lower-mv__title-jp {
    margin-top: -6px;
    margin-top: -0.375rem;
  }
  .p-lower-mv__case-title {
    font-size: max(20px, 10px);
    font-size: max(1.25rem, 10px);
    letter-spacing: 0;
    line-height: 1.6;
  }
  .p-news__container {
    padding-top: 4px;
    padding-top: 0.25rem;
  }
  .p-news__container-inner.l-inner2 {
    padding-left: 24px;
    padding-left: 1.5rem;
    padding-right: 24px;
    padding-right: 1.5rem;
  }
  .p-news__tab {
    gap: 16px;
    gap: 1rem;
  }
  .p-news__list {
    margin-top: 30px;
    margin-top: 1.875rem;
  }
  .p-news__link {
    -moz-column-gap: 1.5rem;
         -webkit-column-gap: 1.5rem;
            column-gap: 1.5rem;
    margin-bottom: 16px;
    margin-bottom: 1rem;
    margin-top: 16px;
    margin-top: 1rem;
    padding-bottom: 2px;
    padding-bottom: 0.125rem;
    padding-left: 18px;
    padding-left: 1.125rem;
    padding-right: 8px;
    padding-right: 0.5rem;
    padding-top: 5px;
    padding-top: 0.3125rem;
  }
  .p-news__title {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    margin-top: 12px;
    margin-top: 0.75rem;
  }
  .p-news__icon-text {
    display: none;
  }
  .p-news__pagenavi {
    margin-top: 38px;
    margin-top: 2.375rem;
  }
  .p-pagetop {
    bottom: 80px;
    bottom: 5rem;
    right: 16px;
    right: 1rem;
  }
  .p-pagetop__link {
    max-width: 40px;
    max-width: 2.5rem;
  }
  .p-pagetop__link img {
    aspect-ratio: 40/40;
  }
  .p-policy-cancel-section {
    padding-bottom: 112px;
    padding-bottom: 7rem;
    padding-top: 6px;
    padding-top: 0.375rem;
  }
  .p-policy-cancel-section__section + .p-policy-cancel-section__section {
    margin-top: 64px;
    margin-top: 4rem;
  }
  .p-policy-cancel-section__section:nth-child(3) {
    margin-top: 63px;
    margin-top: 3.9375rem;
  }
  .p-policy-cancel-section__section:nth-child(4) {
    margin-top: 64px;
    margin-top: 4rem;
  }
  .p-policy-cancel-section__text-block {
    margin-top: 32px;
    margin-top: 2rem;
  }
  .p-policy-cancel-section__date {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
  }
  .p-policy-cancel-section__text {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
  }
  .p-policy-cancel-section__date + .p-policy-cancel-section__text {
    margin-top: 28px;
    margin-top: 1.75rem;
  }
  .p-policy-cancel-section__section:nth-child(3) .p-policy-cancel-section__text {
    letter-spacing: -0.02em;
  }
  .p-policy-cancel-section__address {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
  }
  .p-policy-privacy-section {
    padding-bottom: 112px;
    padding-bottom: 7rem;
    padding-top: 6px;
    padding-top: 0.375rem;
  }
  .p-policy-privacy-section__section + .p-policy-privacy-section__section {
    margin-top: 64px;
    margin-top: 4rem;
  }
  .p-policy-privacy-section__section:nth-child(3) {
    margin-top: 63px;
    margin-top: 3.9375rem;
  }
  .p-policy-privacy-section__section:nth-child(4) {
    margin-top: 64px;
    margin-top: 4rem;
  }
  .p-policy-privacy-section__text-block {
    margin-top: 32px;
    margin-top: 2rem;
  }
  .p-policy-privacy-section__date {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
  }
  .p-policy-privacy-section__text {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
  }
  .p-policy-privacy-section__date + .p-policy-privacy-section__text {
    margin-top: 28px;
    margin-top: 1.75rem;
  }
  .p-policy-privacy-section__section:nth-child(3) .p-policy-privacy-section__text {
    letter-spacing: -0.02em;
  }
  .p-policy-privacy-section__text--mt {
    margin-top: 28px;
    margin-top: 1.75rem;
  }
  .p-policy-privacy-section__address {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
  }
  .p-policy-privacy-section__list {
    margin-top: 16px;
    margin-top: 1rem;
    padding-left: 18px;
    padding-left: 1.125rem;
  }
  .p-policy-privacy-section__list li {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
  }
  .p-policy-privacy-section__list li + li {
    margin-top: 6px;
    margin-top: 0.375rem;
  }
  .p-policy-privacy-section__text + .p-policy-privacy-section__list {
    margin-top: 12px;
    margin-top: 0.75rem;
  }
  .p-price__container {
    padding-top: 0;
  }
  .p-price__container-inner {
    -moz-column-gap: 0;
         -webkit-column-gap: 0;
            column-gap: 0;
    grid-template-columns: 1fr;
  }
  .p-price__main {
    margin-top: 30px;
    margin-top: 1.875rem;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .p-price__block:nth-of-type(n + 2) {
    margin-top: 71px;
    margin-top: 4.4375rem;
  }
  .p-price__block:has(p code) {
    margin-bottom: -8px;
    margin-bottom: -0.5rem;
  }
  .p-price__block p:not(p.sub-group-title) + h3 {
    margin-top: 25px !important;
    margin-top: 1.5625rem !important;
  }
  .p-price__side {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .p-price__toc-text {
    background-color: #bab3c6;
    border: 1px solid #bab3c6;
    border: 0.0625rem solid #bab3c6;
    border-bottom: none;
    border-radius: 0.25rem 0.25rem 0 0;
    color: white;
    display: block;
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1;
    padding: 9.6px 16px;
    padding: 0.6rem 1rem;
    text-align: center;
  }
  .p-price__toc {
    border-radius: 0 0 0.25rem 0.25rem;
    margin-top: 0;
    max-height: none;
    overflow-y: visible;
    padding: 10px 15.5px 16px;
    padding: 0.625rem 0.96875rem 1rem;
    position: static;
  }
  .p-price__toc-list {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 13px 20px;
    gap: 0.8125rem 1.25rem;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .p-price__toc-link {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    line-height: 1.1666666667;
    padding-bottom: 6px;
    padding-bottom: 0.375rem;
    padding-right: 26px;
    padding-right: 1.625rem;
    padding-top: 6px;
    padding-top: 0.375rem;
  }
  .p-price__toc-link::after {
    height: 12px;
    height: 0.75rem;
    width: 12px;
    width: 0.75rem;
  }
  .p-recruit-entry {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 16px;
    gap: 1rem;
    padding: 14px 24px 24px;
    padding: 0.875rem 1.5rem 1.5rem;
  }
  .p-recruit-entry__head {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 15px;
    gap: 0.9375rem;
  }
  .p-recruit-entry__header {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0;
  }
  .p-recruit-entry__title {
    font-size: max(16px, 10px);
    font-size: max(1rem, 10px);
    padding: 0;
  }
  .p-recruit-entry__content {
    padding-left: 0;
    padding-left: initial;
    padding-top: 15px;
    padding-top: 0.9375rem;
    text-align: center;
    width: 100%;
  }
  .p-recruit-entry__content::before {
    height: 1px;
    width: 100%;
  }
  .p-recruit-entry__text {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    line-height: 1.9;
  }
  .p-recruit-entry__button {
    width: 278px;
    width: 17.375rem;
  }
  .p-recruit-entry__link {
    padding: 8.41px 10px;
    padding: 0.525625rem 0.625rem;
  }
  .p-recruit-entry__link span {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
  }
  .p-recruit-entry__icon {
    max-width: 25px;
    max-width: 1.5625rem;
  }
  .p-recruit-entry__icon img {
    aspect-ratio: 25/24.14;
  }
  .p-recruit-message {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 31px;
    gap: 1.9375rem;
  }
  .p-recruit-message__img {
    margin-top: 0;
    margin-top: initial;
    max-width: 326px;
    max-width: 20.375rem;
  }
  .p-recruit-message__img img {
    aspect-ratio: 326/200;
  }
  .p-recruit-message__text {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    letter-spacing: -0.09em;
  }
  .p-recruit-message__text:nth-child(3) {
    margin-top: 28px;
    margin-top: 1.75rem;
  }
  .p-recruit-positions {
    padding-top: 60px;
    padding-top: 3.75rem;
  }
  .p-recruit-positions__title {
    font-size: max(20px, 10px);
    font-size: max(1.25rem, 10px);
    line-height: 1.9;
  }
  .p-recruit-positions__tabs {
    gap: 8px;
    gap: 0.5rem;
    margin-top: 30px;
    margin-top: 1.875rem;
  }
  .p-recruit-positions__tab {
    font-size: max(16px, 10px);
    font-size: max(1rem, 10px);
    padding-bottom: 5.71px;
    padding-bottom: 0.356875rem;
    padding-top: 5.71px;
    padding-top: 0.356875rem;
  }
  .p-recruit-positions__card {
    padding: 24px 16px;
    padding: 1.5rem 1rem;
  }
  .p-recruit-positions__card--no-recruit {
    height: 362px;
    height: 22.625rem;
  }
  .p-recruit-positions__card-text {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    letter-spacing: 0.03em;
  }
  .p-recruit-positions__item + .p-recruit-positions__item {
    margin-top: 24px;
    margin-top: 1.5rem;
  }
  .p-recruit-positions__term,
  .p-recruit-positions__desc {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    padding-bottom: 0;
    padding-bottom: initial;
    padding-top: 0;
    padding-top: initial;
  }
  .p-recruit-positions__term {
    width: 96px;
    width: 6rem;
  }
  .p-recruit-positions__desc {
    letter-spacing: -0.05em;
    padding-left: 10px;
    padding-left: 0.625rem;
  }
  .p-recruit-positions__desc > span {
    display: inline-block;
  }
  .p-recruit-positions__desc-text {
    padding-left: 1em;
    text-indent: -1em;
  }
  .p-recruit-positions__desc-text-indent {
    display: block;
  }
  .p-recruit-positions__section {
    margin-top: 38px;
    margin-top: 2.375rem;
  }
  .p-recruit-positions__section + .p-recruit-positions__section {
    margin-top: 23px;
    margin-top: 1.4375rem;
  }
  .p-recruit-positions__heading {
    font-size: max(16px, 10px);
    font-size: max(1rem, 10px);
    margin-bottom: 24px;
    margin-bottom: 1.5rem;
    padding-bottom: 10px;
    padding-bottom: 0.625rem;
  }
  .p-recruit-positions__heading::after {
    width: 100%;
  }
  .p-recruit-positions__text-box {
    margin-top: 16px;
    margin-top: 1rem;
  }
  .p-recruit-positions__text {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
  }
  .p-recruit-positions__message {
    margin-top: 25px;
    margin-top: 1.5625rem;
  }
  .p-recruit-positions__entry {
    margin-top: 40px;
    margin-top: 2.5rem;
  }
  .p-recruit {
    padding-bottom: 80px;
    padding-bottom: 5rem;
  }
  .p-recruit__mv.p-lower-mv {
    padding-bottom: 71px;
    padding-bottom: 4.4375rem;
  }
  .p-recruit__container {
    padding-top: 0;
    padding-top: initial;
  }
  .p-recruit__intro {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    line-height: 1.9;
  }
  .p-recruit__button {
    margin-top: 80px;
    margin-top: 5rem;
  }
  .p-reservation {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 32px;
    gap: 2rem;
  }
  .p-service__container {
    padding-bottom: 80px;
    padding-bottom: 5rem;
    padding-top: 3px;
    padding-top: 0.1875rem;
  }
  .p-service__container-inner.l-inner2 {
    max-width: 604px;
    max-width: 37.75rem;
    padding-left: 32px;
    padding-left: 2rem;
    padding-right: 32px;
    padding-right: 2rem;
  }
  .p-service__list {
    gap: 24px;
    gap: 1.5rem;
    grid-template-columns: repeat(2, 1fr);
  }
  .p-service__item:has(.p-service__icon) {
    grid-column: 1/-1;
    min-height: 88px;
    min-height: 5.5rem;
  }
  .p-service__item:not(:has(.p-service__icon)) {
    grid-column: auto;
  }
  .p-service__item {
    min-height: 80px;
    min-height: 5rem;
  }
  .p-service__item:has(.p-service__icon) {
    min-height: 88px;
    min-height: 5.5rem;
  }
  .p-service__item::before {
    border-radius: 0;
    height: 16px;
    height: 1rem;
    width: 16px;
    width: 1rem;
  }
  .p-service__item:has(.p-service__icon)::before {
    height: 16px;
    height: 1rem;
    width: 16px;
    width: 1rem;
  }
  .p-service__link {
    font-size: 14px;
    font-size: 0.875rem;
    padding: 12px 4px;
    padding: 0.75rem 0.25rem;
  }
  .p-service__item:nth-child(9) .p-service__link {
    letter-spacing: -0.08em;
  }
  .p-service__link:has(.p-service__icon) {
    -moz-column-gap: 0.625rem;
         -webkit-column-gap: 0.625rem;
            column-gap: 0.625rem;
    letter-spacing: 0.03em;
    padding: 12px 10px;
    padding: 0.75rem 0.625rem;
  }
  .p-service__item:nth-child(1) .p-service__icon {
    width: 42px;
    width: 2.625rem;
  }
  .p-service__item:nth-child(2) .p-service__icon {
    width: 48px;
    width: 3rem;
  }
  .p-service__item:nth-child(3) .p-service__icon {
    width: 45px;
    width: 2.8125rem;
  }
  .p-service__item:nth-child(4) .p-service__icon {
    width: 45px;
    width: 2.8125rem;
  }
  .p-single-case__container {
    padding-bottom: 80px;
    padding-bottom: 5rem;
    padding-top: 40px;
    padding-top: 2.5rem;
  }
  .p-single-case__head {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 8px;
    gap: 0.5rem;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .p-single-case__tags {
    gap: 8px;
    gap: 0.5rem;
  }
  .p-single-case__content {
    margin-top: 30px;
    margin-top: 1.875rem;
  }
  .p-single-case__detail {
    margin-top: 22px;
    margin-top: 1.375rem;
  }
  .p-single-column__container {
    padding-bottom: 88px;
    padding-bottom: 5.5rem;
  }
  .p-single-column__tag-group {
    border-top: none;
    padding-top: 0;
  }
  .p-single-column__filter {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 22px;
    gap: 1.375rem;
  }
  .p-single-column__filter + .p-single-column__filter {
    margin-top: 48px;
    margin-top: 3rem;
  }
  .p-single-column__filter-title {
    border-bottom: 3px solid #bab3c6;
    border-bottom: 0.1875rem solid #bab3c6;
    min-width: auto;
    padding-bottom: 8px;
    padding-bottom: 0.5rem;
    width: 100%;
  }
  .p-content p.p-single-column__filter-title-text {
    min-width: auto;
  }
  .p-single-column__filter-line {
    display: none;
  }
  .p-single-column__filter-tags {
    gap: 12px 16px;
    gap: 0.75rem 1rem;
  }
  .p-column-filter__tag--filter {
    border-radius: 1rem;
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    height: 32px;
    height: 2rem;
    padding: 0 16px;
    padding: 0 1rem;
  }
  .p-single-service__container {
    padding-bottom: 80px;
    padding-bottom: 5rem;
    padding-top: 40px;
    padding-top: 2.5rem;
  }
  .p-single-service__btn-wrap {
    margin-top: 80px;
    margin-top: 5rem;
  }
  .p-single__mv {
    margin-top: -5px;
    margin-top: -0.3125rem;
    padding-top: 0;
  }
  .p-single__date {
    font-weight: 400;
  }
  .p-single__tag .c-tag {
    padding: 1.5px 7.9px 2.5px;
    padding: 0.09375rem 0.49375rem 0.15625rem;
  }
  .p-single__title {
    font-size: max(20px, 10px);
    font-size: max(1.25rem, 10px);
    letter-spacing: -0.03em;
    line-height: 1.9;
    margin-top: 68px;
    margin-top: 4.25rem;
  }
  .p-single__container {
    padding-bottom: 20px;
    padding-bottom: 1.25rem;
  }
  .p-single__share {
    padding-bottom: 65px;
    padding-bottom: 4.0625rem;
  }
  .p-content ul.p-sns-share {
    gap: 12px 27.25px;
    gap: 0.75rem 1.703125rem;
    padding: 16px 24px 10px;
    padding: 1rem 1.5rem 0.625rem;
  }
  .p-content ul li.p-sns-share__item {
    min-width: 40px;
    min-width: 2.5rem;
  }
  .p-sns-share__img img {
    aspect-ratio: 40/40;
  }
  .p-staff-doctor {
    padding-bottom: 55px;
    padding-bottom: 3.4375rem;
    padding-top: 0;
  }
  .p-staff-doctor__profile {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: initial;
    margin-top: 28px;
    margin-top: 1.75rem;
  }
  .p-staff-doctor__profile-content {
    display: contents;
  }
  .p-staff-doctor__name {
    font-size: max(22px, 10px);
    font-size: max(1.375rem, 10px);
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    text-align: center;
  }
  .p-staff-doctor__name span {
    display: inline-block;
    font-size: max(16px, 10px);
    font-size: max(1rem, 10px);
    font-weight: 500;
    line-height: 1.9;
  }
  .p-staff-doctor__catchcopy {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    margin-top: 21px;
    margin-top: 1.3125rem;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    text-align: center;
  }
  .p-staff-doctor__intro {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    margin-top: 8px;
    margin-top: 0.5rem;
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4;
  }
  ::-webkit-full-page-media,
  :future,
  :root .p-staff-doctor__intro {
    letter-spacing: normal;
    letter-spacing: initial;
  }
  .p-staff-doctor__intro span {
    letter-spacing: -0.03em;
  }
  ::-webkit-full-page-media,
  :future,
  :root .p-staff-doctor__intro span {
    letter-spacing: -0.07em;
  }
  .p-staff-doctor__photo {
    margin-top: 8px;
    margin-top: 0.5rem;
    max-width: 358px;
    max-width: 22.375rem;
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
  .p-staff-doctor__photo img {
    aspect-ratio: 358/241;
  }
  .p-staff-doctor__details {
    margin-top: 33px;
    margin-top: 2.0625rem;
  }
  .p-staff-doctor__details-inner {
    padding: 22px 16px 16px;
    padding: 1.375rem 1rem 1rem;
  }
  .p-staff-doctor__details-head {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 47px;
    gap: 2.9375rem;
  }
  .p-staff-doctor__section-list {
    margin-top: 33px;
    margin-top: 2.0625rem;
  }
  .p-staff-doctor__section-item {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
  }
  .p-staff-doctor__section-item::before {
    left: 8px;
    left: 0.5rem;
    top: 10.5px;
    top: 0.65625rem;
  }
  .p-staff-doctor__note {
    padding: 16px 12px 17px 15px;
    padding: 1rem 0.75rem 1.0625rem 0.9375rem;
  }
  .p-staff-doctor__note-text {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
  }
  .p-staff-doctor__section2 {
    margin-top: 49px;
    margin-top: 3.0625rem;
  }
  .p-staff-doctor__section-content {
    margin-top: 40px;
    margin-top: 2.5rem;
  }
  .p-staff-doctor__text {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
  }
  .p-staff-doctor__treatments {
    margin-top: 34px;
    margin-top: 2.125rem;
  }
  .p-staff-doctor__treatment {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0;
    min-height: auto;
  }
  .p-staff-doctor__treatment + .p-staff-doctor__treatment {
    margin-top: 34px;
    margin-top: 2.125rem;
  }
  .p-staff-doctor__treatment-content {
    border-radius: 19.5rem 0 0 0;
    gap: 16px;
    gap: 1rem;
    padding: 0;
    padding: initial;
    width: 100%;
  }
  .p-staff-doctor__treatment-content-head {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 8px;
    gap: 0.5rem;
  }
  .p-staff-doctor__treatment-number {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    font-weight: 600;
  }
  .p-staff-doctor__treatment-title {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    letter-spacing: normal;
    letter-spacing: initial;
  }
  .p-staff-doctor__treatment-line {
    height: 1px;
    margin-top: 9px;
    margin-top: 0.5625rem;
    width: 100%;
  }
  .p-staff-doctor__treatment-caption {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    letter-spacing: normal;
    letter-spacing: initial;
    margin-top: 9px;
    margin-top: 0.5625rem;
  }
  .p-staff-doctor__treatment-parts {
    gap: 8px;
    gap: 0.5rem;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 9px;
    margin-top: 0.5625rem;
  }
  .p-staff-doctor__treatment-part {
    border-radius: 0.25rem 0.25rem 5.625rem 5.625rem;
    height: 96px;
    height: 6rem;
    padding-bottom: 64px;
    padding-bottom: 4rem;
    padding-left: 0;
    padding-left: initial;
    padding-right: 0;
    padding-right: initial;
    width: 72px;
    width: 4.5rem;
  }
  .p-staff-doctor__treatment-part-icon {
    bottom: 7px;
    bottom: 0.4375rem;
    max-width: 56px;
    max-width: 3.5rem;
  }
  .p-staff-doctor__treatment-part-text {
    font-size: max(10px, 10px);
    font-size: max(0.625rem, 10px);
    letter-spacing: normal;
    letter-spacing: initial;
  }
  .p-staff-doctor__message {
    margin-top: 40px;
    margin-top: 2.5rem;
    padding: 16px 16px 16px;
    padding: 1rem 1rem 1rem;
  }
  .p-staff-doctor__message-text {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
  }
  .p-staff-doctor__message-text span {
    letter-spacing: -0.1em;
  }
  .p-staff-doctor__message-img {
    margin-top: 17px;
    margin-top: 1.0625rem;
    max-width: 294px;
    max-width: 18.375rem;
  }
  .p-staff-doctor__message-img img {
    aspect-ratio: 294/120;
  }
  .p-staff__mv.p-lower-mv {
    padding-bottom: 68px;
    padding-bottom: 4.25rem;
  }
  .p-top-about {
    background: url(../images/top/about-bg_sp.webp) no-repeat center top/cover;
    padding-bottom: 86px;
    padding-bottom: 5.375rem;
    padding-top: 0;
    padding-top: initial;
  }
  .p-top-about__heading {
    font-size: max(20px, 10px);
    font-size: max(1.25rem, 10px);
    margin-top: 42px;
    margin-top: 2.625rem;
  }
  .p-top-about__text {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    margin-top: 37px;
    margin-top: 2.3125rem;
  }
  .p-top-about__button {
    margin-top: 48px;
    margin-top: 3rem;
  }
  .p-top-bibi-group {
    padding-bottom: 64px;
    padding-bottom: 4rem;
    padding-top: 45px;
    padding-top: 2.8125rem;
  }
  .p-top-bibi-group__inner {
    padding-left: 16px;
    padding-left: 1rem;
    padding-right: 16px;
    padding-right: 1rem;
  }
  .p-top-bibi-group__content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: initial;
  }
  .p-top-bibi-group__img {
    margin-top: 54px;
    margin-top: 3.375rem;
    max-width: 358px;
    max-width: 22.375rem;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .p-top-bibi-group__img img {
    aspect-ratio: 358/169;
  }
  .p-top-bibi-group__body {
    display: contents;
    padding-right: 0;
    padding-right: initial;
  }
  .p-top-bibi-group__box {
    margin-top: 16px;
    margin-top: 1rem;
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
  .p-top-bibi-group__title {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    text-align: center;
  }
  .p-top-bibi-group__button {
    margin-left: auto;
    margin-right: auto;
    margin-top: 48px;
    margin-top: 3rem;
    width: -moz-fit-content;
    width: -webkit-fit-content;
    width: fit-content;
  }
  .p-top-campaign {
    background: url(../images/top/campaign-bg_sp.webp) no-repeat center/cover;
    padding-bottom: 65px;
    padding-bottom: 4.0625rem;
    padding-top: 45px;
    padding-top: 2.8125rem;
  }
  .p-top-campaign__text {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    margin-top: 46px;
    margin-top: 2.875rem;
  }
  .p-top-campaign__button {
    margin-top: 49px;
    margin-top: 3.0625rem;
  }
  .p-top-cases {
    overflow-x: clip;
    padding-bottom: 64px;
    padding-bottom: 4rem;
    padding-top: 5px;
    padding-top: 0.3125rem;
  }
  .p-top-cases__block {
    margin-top: 46px;
    margin-top: 2.875rem;
    padding-left: 16px;
    padding-left: 1rem;
    padding-right: 16px;
    padding-right: 1rem;
    position: relative;
  }
  .p-top-cases__swiper {
    clip-path: inset(0% -50vw 0% 0%);
    overflow: visible;
    overflow: initial;
  }
  .p-top-cases__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: initial;
  }
  .p-top-cases__item {
    height: auto;
    max-width: 326px;
    max-width: 20.375rem;
  }
  .p-top-cases__link {
    max-width: 326px;
    max-width: 20.375rem;
  }
  .p-top-cases__img {
    max-width: 294px;
    max-width: 18.375rem;
  }
  .p-top-cases__tags {
    gap: 6px;
    gap: 0.375rem;
    margin-top: 23px;
    margin-top: 1.4375rem;
  }
  .p-top-cases__term {
    width: 48px;
    width: 3rem;
  }
  .p-top-cases__button {
    margin-top: 72px;
    margin-top: 4.5rem;
  }
  .swiper-horizontal > .swiper-scrollbar,
  .p-top-cases__scrollbar.swiper-scrollbar.swiper-scrollbar-horizontal {
    background-color: rgba(163, 163, 163, 0.8);
    bottom: -24px;
    bottom: -1.5rem;
    height: 8px;
    height: 0.5rem;
    left: 16px;
    left: 1rem;
    max-width: 326px;
    max-width: 20.375rem;
  }
  .p-top-cases__scrollbar .swiper-scrollbar-drag {
    background-color: #d2ced9;
  }
  .p-top-columns {
    background: url(../images/top/columns-bg_sp.webp) no-repeat center/cover;
    overflow-x: clip;
    padding-bottom: 64px;
    padding-bottom: 4rem;
    padding-top: 45px;
    padding-top: 2.8125rem;
  }
  .p-top-columns__text {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    margin-top: 46px;
    margin-top: 2.875rem;
  }
  .p-top-columns__block {
    margin-top: 48px;
    margin-top: 3rem;
    padding-left: 16px;
    padding-left: 1rem;
    padding-right: 16px;
    padding-right: 1rem;
    position: relative;
  }
  .p-top-columns__swiper {
    clip-path: inset(0% -50vw 0% 0%);
    overflow: visible;
    overflow: initial;
  }
  .p-top-columns__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: initial;
  }
  .p-top-columns__item {
    height: auto;
    width: 326px;
    width: 20.375rem;
  }
  .p-top-columns__item-link {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    height: 100%;
  }
  .p-top-columns__item-img {
    max-width: 278px;
    max-width: 17.375rem;
  }
  .p-top-columns__item-body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .p-top-columns__item-text {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    margin-top: 9px;
    margin-top: 0.5625rem;
  }
  .p-top-columns__item-button {
    gap: 10px;
    gap: 0.625rem;
    margin-top: 15px;
    margin-top: 0.9375rem;
    margin-top: auto;
    padding-top: 15px;
    padding-top: 0.9375rem;
  }
  .p-top-columns__item-button-arrow {
    height: 7px;
    height: 0.4375rem;
    width: 7px;
    width: 0.4375rem;
  }
  .p-top-columns__button {
    margin-top: 78px;
    margin-top: 4.875rem;
  }
  .swiper-horizontal > .swiper-scrollbar,
  .p-top-columns__scrollbar.swiper-scrollbar.swiper-scrollbar-horizontal {
    background-color: rgba(163, 163, 163, 0.2);
    bottom: -22px;
    bottom: -1.375rem;
    height: 8px;
    height: 0.5rem;
    left: 16px;
    left: 1rem;
    max-width: 326px;
    max-width: 20.375rem;
  }
  .p-top-columns__scrollbar .swiper-scrollbar-drag {
    background-color: #d2ced9;
  }
  .p-top-doctor-cases {
    background: url(../images/top/doctor-cases-bg_sp.webp) no-repeat center top/cover;
  }
  .p-top-doctor {
    padding-bottom: 64px;
    padding-bottom: 4rem;
    padding-top: 5px;
    padding-top: 0.3125rem;
  }
  .p-top-doctor__inner {
    padding-left: 16px;
    padding-left: 1rem;
    padding-right: 16px;
    padding-right: 1rem;
  }
  .p-top-doctor__content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: initial;
    margin-left: auto;
    margin-right: auto;
    max-width: 326px;
    max-width: 20.375rem;
  }
  .p-top-doctor__img {
    margin-top: 19px;
    margin-top: 1.1875rem;
    max-width: 326px;
    max-width: 20.375rem;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .p-top-doctor__img img {
    aspect-ratio: 326/200;
  }
  .p-top-doctor__body {
    display: contents;
    padding-right: 0;
    padding-right: initial;
  }
  .p-top-doctor__heading {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    text-align: center;
  }
  .p-top-doctor__name {
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 1.5;
    margin-top: 44px;
    margin-top: 2.75rem;
  }
  .p-top-doctor__name span {
    display: inline-block;
    font-size: max(16px, 10px);
    font-size: max(1rem, 10px);
    font-weight: 500;
    line-height: 1.9;
  }
  .p-top-doctor__box {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
  .p-top-doctor__text {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    margin-top: 13px;
    margin-top: 0.8125rem;
  }
  .p-top-doctor__button {
    margin-left: auto;
    margin-right: auto;
    margin-top: 50px;
    margin-top: 3.125rem;
    width: -moz-fit-content;
    width: -webkit-fit-content;
    width: fit-content;
  }
  .p-top-menu {
    padding-bottom: 86px;
    padding-bottom: 5.375rem;
    padding-top: 0px;
    padding-top: 0rem;
  }
  .p-top-menu__list {
    gap: 16px;
    gap: 1rem;
    grid-template-columns: 1fr;
    max-width: 326px;
    max-width: 20.375rem;
  }
  .p-top-menu__item::before {
    height: 16px;
    height: 1rem;
    width: 16px;
    width: 1rem;
  }
  .p-top-menu__item-link {
    gap: 10px;
    gap: 0.625rem;
    padding-bottom: 28px;
    padding-bottom: 1.75rem;
    padding-left: 68px;
    padding-left: 4.25rem;
    padding-top: 28px;
    padding-top: 1.75rem;
  }
  .p-top-menu__item:nth-child(2) .p-top-menu__item-link {
    gap: 10px;
    gap: 0.625rem;
    padding-bottom: 24.5px;
    padding-bottom: 1.53125rem;
    padding-left: 76px;
    padding-left: 4.75rem;
    padding-top: 24.5px;
    padding-top: 1.53125rem;
  }
  .p-top-menu__item:nth-child(3) .p-top-menu__item-link {
    gap: 16px;
    gap: 1rem;
    padding-bottom: 17px;
    padding-bottom: 1.0625rem;
    padding-left: 75px;
    padding-left: 4.6875rem;
    padding-top: 17px;
    padding-top: 1.0625rem;
  }
  .p-top-menu__item:nth-child(4) .p-top-menu__item-link {
    gap: 10px;
    gap: 0.625rem;
    padding-bottom: 22px;
    padding-bottom: 1.375rem;
    padding-left: 70px;
    padding-left: 4.375rem;
    padding-top: 22px;
    padding-top: 1.375rem;
  }
  .p-top-menu__icon {
    max-width: 42px;
    max-width: 2.625rem;
  }
  .p-top-menu__item:nth-child(2) .p-top-menu__icon {
    max-width: 48px;
    max-width: 3rem;
  }
  .p-top-menu__item:nth-child(3) .p-top-menu__icon {
    max-width: 45px;
    max-width: 2.8125rem;
  }
  .p-top-menu__item:nth-child(4) .p-top-menu__icon {
    max-width: 45px;
    max-width: 2.8125rem;
  }
  .p-top-menu__text {
    font-size: max(16px, 10px);
    font-size: max(1rem, 10px);
    letter-spacing: 0.03em;
  }
  .p-top-menu__buttons {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 24px;
    gap: 1.5rem;
    margin-left: auto;
    margin-right: auto;
    width: -moz-fit-content;
    width: -webkit-fit-content;
    width: fit-content;
  }
  .p-top-mv {
    height: calc(100svh - 5rem);
    height: initial;
  }
  .p-top-mv__bg {
    height: auto;
    height: initial;
  }
  .p-top-mv__bg picture {
    height: auto;
    height: initial;
  }
  .p-top-mv__bg img {
    aspect-ratio: 390/800;
    height: auto;
  }
  .p-top-mv__heading img {
    aspect-ratio: 302/212;
  }
  .p-top-news {
    padding-bottom: 45px;
    padding-bottom: 2.8125rem;
    padding-bottom: 64px;
    padding-bottom: 4rem;
    padding-top: 45px;
    padding-top: 2.8125rem;
  }
  .p-top-news__content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: initial;
  }
  .p-top-news__title {
    margin-top: 0;
    margin-top: initial;
    text-align: center;
  }
  .p-top-news__list {
    margin-top: 39px;
    margin-top: 2.4375rem;
    padding-left: 18px;
    padding-left: 1.125rem;
  }
  .p-top-news__list::before {
    height: calc(100% - 1.875rem);
    top: 15px;
    top: 0.9375rem;
  }
  .p-top-news__link {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding-bottom: 11px;
    padding-bottom: 0.6875rem;
    padding-top: 11px;
    padding-top: 0.6875rem;
  }
  .p-top-news__date {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
  }
  .p-top-news__text {
    -webkit-line-clamp: 2;
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
  }
  .p-top-news__button {
    margin-left: auto;
    margin-right: auto;
    margin-top: 43px;
    margin-top: 2.6875rem;
    width: -moz-fit-content;
    width: -webkit-fit-content;
    width: fit-content;
  }
  .p-top-pickup {
    padding-bottom: 49px;
    padding-bottom: 3.0625rem;
    padding-top: initial;
    padding-top: 124px;
    padding-top: 7.75rem;
  }
  .p-top-pickup__container {
    -webkit-box-align: initial;
        -ms-flex-align: initial;
            align-items: initial;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 22px;
    gap: 1.375rem;
  }
  .p-top-pickup__title {
    position: relative;
  }
  .p-top-pickup__content {
    padding-bottom: 27px;
    padding-bottom: 1.6875rem;
    padding-left: 26px;
    padding-left: 1.625rem;
  }
  .p-top-pickup__content::before {
    height: 199.33px;
    height: 12.458125rem;
  }
  .p-top-pickup__item {
    width: min(100%, 200px);
    width: min(100%, 12.5rem);
  }
  .p-top-pickup__item-img {
    max-width: 200px;
    max-width: 12.5rem;
  }
  .p-top-pickup__item-body {
    gap: 8px;
    gap: 0.5rem;
  }
  .p-top-pickup__item-date {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
  }
  .p-top-pickup__item-title {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
  }
  .swiper-horizontal > .swiper-scrollbar,
  .p-top-pickup__scrollbar.swiper-scrollbar.swiper-scrollbar-horizontal {
    left: 26px;
    left: 1.625rem;
    max-width: 332px;
    max-width: 20.75rem;
  }
  .u-pc {
    display: none;
  }
  .u-sp {
    display: block;
  }
}

@media (hover: hover){
  a:hover {
    opacity: 0.7;
  }
}

@media (hover: none){
  a:active {
    opacity: 0.7;
  }
}

@media (any-hover: hover){
  .c-back-button:hover {
    background-color: #716585;
    opacity: 1;
  }
  .c-link:hover {
    background-color: #716585;
    opacity: 1;
  }
  .c-link--white:hover {
    background-color: #FAF8FF;
  }
  .c-reservation-link:hover {
    background-color: #745e9d;
    opacity: 1;
  }
  .p-404__link:hover {
    background-color: #716585;
    opacity: 1;
  }
  .p-campaign__btn:hover {
    background-color: #716585;
    opacity: 1;
  }
  .p-case-card:hover {
    opacity: 1;
  }
  .p-case-card:hover .c-link {
    background-color: #716585;
  }
  .p-case-filter__tag:hover {
    background-color: #716585;
    color: #f6f5f7;
  }
  .p-case-pagination__arrow:hover {
    color: #613fa0;
    opacity: 1;
  }
  .p-case-pagination__number:hover {
    background-color: #a49ab6;
    color: #fff;
    opacity: 1;
  }
  .p-clinic-office__reservation-link:hover {
    background-color: #745e9d;
    opacity: 1;
  }
  .p-column-card:hover {
    opacity: 1;
  }
  .p-column-card:hover .c-link {
    background-color: #716585;
  }
  .p-column-filter__tag:hover {
    background-color: #716585;
    color: #fff;
  }
  .p-column-pagination__arrow:hover {
    color: #613fa0;
    opacity: 1;
  }
  .p-column-pagination__number:hover {
    background-color: #a49ab6;
    color: #fff;
    opacity: 1;
  }
  .p-content .back-button a:hover {
    background-color: #716585;
    opacity: 1;
  }
  .p-content .button-link a:hover {
    background-color: #716585;
    opacity: 1;
  }
  .p-drawer__link:hover {
    opacity: 1;
  }
  .p-drawer__link:hover .p-drawer__text::after {
    background-color: #bab3c6;
  }
  .p-floating-cta__pc-link:hover {
    background-color: #745e9d;
    opacity: 1;
  }
  .p-floating-cta__pc-item:nth-child(2) .p-floating-cta__pc-link:hover {
    background-color: #745e9d;
    opacity: 1;
  }
  .p-footer__nav-link:hover {
    opacity: 1;
  }
  .p-footer__nav-link:hover .p-footer__nav-text::after {
    background-color: #bab3c6;
  }
  .p-footer__policy-link:hover {
    opacity: 1;
  }
  .p-footer__policy-link:hover::after {
    background-color: #bab3c6;
  }
  .p-header__link:hover {
    opacity: 1;
  }
  .p-header__link:hover .p-header__link-text::after {
    background-color: #bab3c6;
  }
  .p-news__tab-link:hover {
    background-color: #70628A;
    border-color: #70628A;
    color: white;
    opacity: 1;
  }
  .p-news__link:hover .p-news__icon img {
    -webkit-transform: translateX(0.3125rem);
            transform: translateX(0.3125rem);
  }
  .p-pagenavi .page:hover {
    background-color: #a49ab6;
    color: white;
    opacity: 1;
  }
  .p-pagenavi .previouspostslink:hover span {
    -webkit-transform: rotate(180deg) scale(1.2) translateX(8px);
            transform: rotate(180deg) scale(1.2) translateX(8px);
  }
  .p-pagenavi .nextpostslink:hover span {
    -webkit-transform: scale(1.2) translateX(8px);
            transform: scale(1.2) translateX(8px);
  }
  .p-price__toc-link:hover {
    border-bottom-color: #8f83a5;
    color: #545454;
    opacity: 1;
  }
  .p-price__toc-link:hover::after {
    background-color: #8f83a5;
  }
  .p-recruit-entry__link:hover {
    background-color: #745e9d;
    opacity: 1;
  }
  .p-service__item:hover {
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-transform: translate(0.125rem, 0.3125rem);
            transform: translate(0.125rem, 0.3125rem);
  }
  .p-service__item:hover .p-service__link {
    opacity: 1;
  }
  .p-sns-share__link:hover {
    opacity: 1;
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
  .p-top-columns__item-link:hover {
    opacity: 1;
  }
  .p-top-columns__item-link:hover .p-top-columns__item-button-text::after {
    background-color: #bab3c6;
  }
  .p-top-menu__item:hover {
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-transform: translate(0.125rem, 0.3125rem);
            transform: translate(0.125rem, 0.3125rem);
  }
  .p-top-menu__item:hover .p-top-menu__item-link {
    opacity: 1;
  }
}

@media (max-width: 851px){
  .p-footer__nav-column:nth-child(4) {
    width: 85px;
  }
}

@media (max-width: 800px){
  .p-footer__policy {
    margin-right: 0;
    margin-right: initial;
  }
}

@media screen and (max-width: 800px) and (max-width: 767px){
  .p-footer__policy {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 10px 39px;
    gap: 0.625rem 2.4375rem;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 33px;
    margin-top: 2.0625rem;
  }
}

@media (max-width: 1440px){
  .p-top-mv__inner {
    margin-left: auto;
    margin-right: auto;
    max-width: 1440px;
    max-width: 90rem;
    padding-left: 25px;
    padding-left: 1.5625rem;
    padding-right: 25px;
    padding-right: 1.5625rem;
  }
  .p-top-mv__content {
    margin-left: auto;
    margin-right: auto;
    max-width: 1152px;
    max-width: 72rem;
    padding-left: 0;
    padding-left: initial;
  }
  .p-top-mv__heading {
    max-width: 491px;
    max-width: 30.6875rem;
  }
  .p-top-mv__title {
    font-size: max(32px, 10px);
    font-size: max(2rem, 10px);
  }
}

@media screen and (max-width: 1440px) and (max-width: 767px){
  .p-top-mv__inner {
    height: inherit;
    padding-left: 16px;
    padding-left: 1rem;
    padding-right: 16px;
    padding-right: 1rem;
  }
  .p-top-mv__content {
    padding-top: 51vh;
    padding-top: 449px;
    padding-top: 28.0625rem;
  }
  .p-top-mv__heading {
    max-width: 301px;
    max-width: 18.8125rem;
  }
  .p-top-mv__title {
    font-size: max(14px, 10px);
    font-size: max(0.875rem, 10px);
    margin-top: 14px;
    margin-top: 0.875rem;
  }
}
/*# sourceMappingURL=style.css.map */
