@charset "UTF-8";

html {
  font-size: 100%;
}
@media (max-width: 450px) {
  html {
    font-size: 3.5555555556vw;
  }
}
@media screen and (min-width: 768px) {
  html {
    font-size: 1.28vw;
  }
}
@media (min-width: 1250px) {
  html {
    font-size: 100%;
  }
}

body {
  font-family: "yu-gothic-pr6n","Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ ProW3", "メイリオ", sans-serif;
  color: #484848;
  background-color: #f3f5f5;
  font-size: 0.875rem;
}

body.is-hidden {
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  a,
  button {
    transition: 0.3s;
  }
  a:hover,
  button:hover {
    opacity: 0.7;
    cursor: pointer;
  }
}

/*****************************
* A Modern CSS Reset (https://github.com/hankchizljaw/modern-css-reset)
* 上記に、ul要素,ol要素,a要素への記述追加
*****************************/
/* Box sizing rules */
*,
*::before,
*::after {
  box-sizing: border-box;
}

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

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul,
ol {
  list-style: none;
  padding: 0;
}

/* Set core root defaults */
html:focus-within {
  scroll-behavior: smooth;
}

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

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

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

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

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

button {
  border: none;
  padding: 0;
  background-color: initial;
}

/* Remove all animations, transitions and smooth scroll for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
.l-access {
  margin-top: 3rem;
}

.l-album {
  margin-top: 3rem;
}

.l-anchor-link {
  margin: 1.875rem;
}

.l-contact {
  margin-top: 3.75rem;
}

.l-costume {
  margin-top: 3.75rem;
}
@media screen and (min-width: 768px) {
  .l-costume {
    margin-top: 6.25rem;
  }
}

.l-faq {
  margin-top: 4.625rem;
}

@media screen and (min-width: 768px) {
.l-flow {
  margin-top: 7.5rem;
}
}

.l-footer {
  margin-top: 4.875rem;
}

.l-footer.l-footer--mtNone {
  margin-top: 0;
}

.l-gallery {
  margin-top: 4.625rem;
}

.l-header {
  height: 3.75rem;
}
@media screen and (min-width: 768px) {
  .l-header {
    height: 6.25rem;
    position: fixed;
    width: 100%;
    z-index: 9999;
    top: 0;
  }
}

.l-inner-md {
  width: 100%;
  padding-right: 1.6875rem;
  padding-left: 1.6875rem;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .l-inner-md {
    max-width: 1050px;
    padding-right: 1.5625rem;
    padding-left: 1.5625rem;
  }
}

.l-inner-sm {
  width: 100%;
  padding-right: 1.6875rem;
  padding-left: 1.6875rem;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .l-inner-sm {
    max-width: 1100px;
    padding-right: 1.5625rem;
    padding-left: 1.5625rem;
  }
}

.l-inner {
  width: 100%;
  padding-right: 1.6875rem;
  padding-left: 1.6875rem;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .l-inner {
    max-width: 1250px;
    padding-right: 1.5625rem;
    padding-left: 1.5625rem;
  }
}

.l-instagram {
  margin-top: 2.25rem;
}
@media screen and (min-width: 768px) {
  .l-instagram {
    margin-top: 5rem;
  }
}

.l-map {
  margin-top: 5.625rem;
}

.l-memory {
  margin-top: 6.25rem;
}

.l-option {
  margin-top: 8.125rem;
}

.l-page-catch {
  margin: 3.75rem;
}

.l-picture {
  /* margin-top: 3.75rem; */
}

.l-plan {
  margin-top: 3.75rem;
  padding-top: 120px;
  margin-top: -40px;
}
@media only screen and (max-width:768px) {
  .l-plan {
    padding-top: 90px;
}
}

.l-reason {
  margin-top: 3.75rem;
}

.l-studio {
  margin-top: 6.875rem;
}

.l-top-campaign {
  margin-top: 7.5rem;
}
@media screen and (min-width: 768px) {
  .l-top-campaign {
    margin-top: 3.75rem;
  }
}

.l-top-contact {
  margin-top: 2.125rem;
}
@media screen and (min-width: 768px) {
  .l-top-contact {
    margin-top: 5rem;
  }
}

.l-top-news {
  margin-top: 5rem;
}

.l-top-plan {
  margin-top: 5.125rem;
}

.l-top-reason {
  margin-top: 5rem;
}

.l-top-record {
  margin-top: 5rem;
}

.l-wrap {
  background-color: #fff;
  padding: 3.75rem 0 6.25rem;
  margin-top: 3rem;
}

.l-wrap2 {
  background-color: #fff;
  padding: 3.75rem 0 6.25rem;
}

.c-btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 90%;
  min-width: 15.75rem;
  padding: 0.4rem;
  gap: 1.25rem;
  border-radius: 2.25rem;
  background-color: #fff;
  -webkit-box-shadow: 0.0625rem 0.0625rem 0.6rem rgba(0, 0, 0, .2);
          box-shadow: 0.0625rem 0.0625rem 0.6rem rgba(0, 0, 0, .2);
  font-weight: 500;
  font-size: 18px;
  line-height: 1.7222222222;
  letter-spacing: 0.01em;
}
@media screen and (min-width: 768px) {
  .c-btn {
    max-width: 23.5rem;
  }
}

.c-btn.c-btn--sm {
  min-width: 17.3125rem;
}

.c-btn.c-btn--sm2 {
  min-width: 17.3125rem;
}

.c-btn.c-btn--green {
  color: #fff;
  background-color: #29b49b;
}

.c-btn::after {
  content: "";
  width: 1.25rem;
  height: 0.3125rem;
  background: url(../images/common/icon_arrow2.svg) no-repeat center/contain;
}

.c-btn.c-btn--green::after {
  background: url(../images/common/icon_arrow-white.svg) no-repeat center/contain;
}

.c-btn.c-btn--sm2::after {
  background: url(../images/common/icon_arrow.svg) no-repeat center/contain;
  transform: rotate(90deg);
}

.c-btn2 {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.1em;
  color: #fff;
  background-color: #889898;
  border-radius: 0.625rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 0.5rem;
  min-width: 8.0625rem;
  padding: 0.625rem;
  height: 100%;
}
@media screen and (min-width: 768px) {
  .c-btn2 {
    gap: 0.625rem;
    flex-direction: row;
    min-width: 16.25rem;
  }
}

.c-btn2.c-btn2--mail {
  gap: 0.25rem;
  font-size: 1.125rem;
}
@media screen and (min-width: 768px) {
  .c-btn2.c-btn2--mail {
    font-size: 1.25rem;
  }
}

.c-btn2::before {
  content: "";
  background: url(../images/common/icon_tel3.svg) no-repeat center/contain;
  width: 1.8125rem;
  height: 1.6875rem;
  flex-grow: 1;
}
@media screen and (min-width: 768px) {
  .c-btn2::before {
    flex-grow: 0;
  }
}

.c-btn2.c-btn2--mail::before {
  background-image: url(../images/common/icon_mail.svg);
}

.c-btn2.c-btn2--line::before {
  background-image: url(../images/common/icon_line.svg);
}

.c-btn3 {
  font-size: 1.0625rem;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.1em;
  color: #fff;
  background-color: #889898;
  border-radius: 1.875rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 0.5rem;
  min-width: 8.0625rem;
  padding: 0.25rem 0.625rem;
}
@media screen and (min-width: 768px) {
  .c-btn3 {
    gap: 0.3125rem;
    flex-direction: row;
    min-width: 8.6875rem;
  }
}

.c-btn3::before {
  content: "";
  background: url(../images/common/icon_tel3.svg) no-repeat center/contain;
  width: 1rem;
  height: 0.9375rem;
}

.c-btn3.c-btn3--mail::before {
  background-image: url(../images/common/icon_mail.svg);
}

.c-btn3.c-btn3--line::before {
  background-image: url(../images/common/icon_line.svg);
}

.c-btn4 {
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.7222222222;
  letter-spacing: 0.01em;
  display: inline-block;
  min-width: 20.25rem;
  padding: 1rem;
  border: 1px solid;
  border-radius: 2.25rem;
  text-align: center;
  position: relative;
}

.c-btn4::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
  background: url(../images/common/icon_arrow2.svg) no-repeat center/contain;
  width: 1.3125rem;
  height: 0.25rem;
}

.c-btn4.c-btn4--colorChange {
  background-color: #889898;
  border: none;
  color: #fff;
}

.c-btn4.c-btn4--colorChange::after {
  display: none;
}

.c-card {
  display: block;
  transition: 0.3s;
}

@media screen and (min-width: 768px) {
  .c-card:hover img {
    transform: scale(1.1);
  }
}

.c-card__img,
.c-card__img2 {
  border-bottom-left-radius: 1.25rem;
  overflow: hidden;
}

.c-card__img img {
  aspect-ratio: 1/1;
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: 0.3s;
}

.c-card__img2 img {
  aspect-ratio: 312/208;
  object-fit: contain;
  width: 100%;
  height: 100%;
  transition: 0.3s;
}

.c-card__body {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 0.625rem;
  background-color: #fff;
  border-radius: 1.25rem;
  /* box-shadow: 0.0625rem 0.0625rem 0.25rem rgba(0, 0, 0, 0.4); */
  /* padding: 0.25rem 0.625rem; */
}
@media screen and (min-width: 768px) {
  .c-card__body {
    margin-top: 1.25rem;
    background: none;
    border-radius: 0;
    box-shadow: none;
    padding: 0;
  }
}

.c-card__body:hover {
  transform: scale(1);
}

.c-card__title {
  margin-top: 1.25rem;
  font-size: 1.125rem;
  font-weight: 600;
}

.c-card__text {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.7222222222;
  letter-spacing: 0.01em;
}
@media screen and (min-width: 768px) {
  .c-card__text {
    font-size: 1.125rem;
  }
}

.c-card__text2 {
  /* margin-top: 0.5rem; */
  font-size: 0.9rem;
}

.c-card__btn {
  width: 2.3125rem;
  height: 2.3125rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .c-card__btn {
    background-color: #fff;
    border-radius: 50%;
    box-shadow: 0.0625rem 0.0625rem 0.25rem rgba(0, 0, 0, 0.4);
  }
}

.c-card__btn img {
  aspect-ratio: 19/4;
  object-fit: contain;
  width: 1.1875rem;
  height: 100%;
}

.c-card2 {
  display: flex;
  flex-direction: column;
  height: auto;
  box-shadow: 0.0625rem 0.0625rem 0.6rem rgb(0 0 0 / 20%);
  margin-bottom: 1rem;
}

.c-card2__period {
  font-size: 0.875rem;
  color: #fff;
  background-color: #889898;
  /* padding: 0.5rem; */
  text-align: center;
}

.c-card2__img {
  position: relative;
}

.c-card2__img img {
  aspect-ratio: 3/2;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.c-card2__arrow {
  width: 2.3125rem;
  height: 2.3125rem;
  background-color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: 0.625rem;
  bottom: 0.625rem;
}

.c-card2__arrow img {
  aspect-ratio: 19/4;
  object-fit: contain;
  width: 1.1875rem;
}

.c-card2__title {
  font-size: 1rem;
  font-weight: 600;
  margin-top: 0.7rem;
  padding: 0 1rem;
  line-height: 1.5;
}
@media screen and (min-width: 768px) {
  .c-card2__title {
    font-size: 1rem;
    flex-grow: 1;
  }
}

.c-card2__text {
  font-size: 0.875rem;
  margin: 0.7rem 0;
  padding: 0 1rem;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .c-card2__text {
    font-size: 0.875rem;
  }
}

.c-card3 {
  display: flex;
  flex-direction: column;
}

.c-card3__img-title {
  width: 8.375rem;
  margin: auto;
}

.c-card3__img-title img {
  aspect-ratio: 134/71;
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.c-card3__img {
  margin-top: 1.5rem;
}

.c-card3__img img {
  aspect-ratio: 418/278;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.c-card3__title {
  font-size: 1.0625rem;
  font-weight: 600;
  line-height: 1.7058823529;
  letter-spacing: 0.01em;
  margin-top: 2rem;
}

.c-card3__text {
  flex-grow: 1;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 2.0714285714;
  letter-spacing: 0.01em;
  margin-top: 1.625rem;
}

.c-card4 {
  display: flex;
  flex-direction: column;
  height: 100%;
  position: relative;
}

.c-card4.c-card4--recommend::before {
  content: "";
  position: absolute;
  top: 1.5rem;
  left: 1.875rem;
  transform: translate(-50%, -50%);
  background: url(../images/common/icon_recommend.svg) no-repeat center/contain;
  width: 5.125rem;
  height: 5.125rem;
}

.c-card4__img img {
  aspect-ratio: 314/210;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.c-card4__body {
  display: flex;
  flex-direction: column;
  height: 100%;
  flex-grow: 1;
  background-color: #fff;
  padding: 1.25rem 1.5rem 0.625rem;
}

.c-card4__title {
  font-size: 1.2rem;
  font-weight: 600;
  line-height: 1.2916666667;
  letter-spacing: 0.01em;
}

.c-card4__title span {
  font-size: 0.875rem;
  padding-left: 0.625rem;
}

.c-card4__text {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.7142857143;
  letter-spacing: 0.01em;
  margin-top: 0.625rem;
  flex-grow: 1;
  text-align: justify;
}

.c-card4__detail {
  margin-top: 1rem;
}

.c-card4__way {
  text-align: right;
}

.c-card4__yen {
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  text-align: right;
  line-height: 1.6;
}

.c-card4__yen span {
  font-size: 0.8125rem;
}
.c-card4__yen span.u-red {
  font-size: 1rem;
}
.c-card4__yen span.u-red span {
  font-size: 0.8125rem;
}

.c-card4__yen + .c-card4__yen {
  margin-top: 0;
}

.c-card4__yen-note {
  font-size: 0.8125rem;
  text-align: right;
}

.c-card5 {
  background: #fff;
  border-radius: 0.625rem;
  box-shadow: 0.0625rem 0.0625rem 0.1875rem rgba(0, 0, 0, 0.4);
  padding: 2.0625rem 1rem 1.5625rem 1.875rem;
}

.c-card5__head {
  display: flex;
  align-items: start;
  gap: 0.75rem;
}

.c-card5__class {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: 0.01em;
  color: #fff;
  flex-shrink: 0;
}

.c-card5__class[data-class=child] {
  background-color: #e5b38b;
  padding: 0 0.5rem;
}

.c-card5__class[data-class=adult] {
  background-color: #baaba2;
  padding: 0 0.5rem;
}

.c-card5__title {
  flex-grow: 1;
}

.c-card5__title span {
  font-size: 0.875rem;
  display: block;
  margin-top: 0.375rem;
}

.c-card5__title,
.c-card5__yen {
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.01em;
}

.c-card5__price {
  text-align: right;
  flex-shrink: 0;
}

.c-card5__yen span {
  font-size: 0.8125rem;
}

.c-card5__yen + .c-card5__yen {
  margin-top: 0.375rem;
}

.c-card5__text {
  margin-top: 0.625rem;
  font-size: 0.875rem;
}

.c-card5__items {
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: 87.4439461883%;
  margin-left: auto;
}

.c-card5__item-price,
.c-card5__item-title {
  font-size: 1.5rem;
  font-weight: 600;
}

.c-card5__item-price {
  text-align: right;
}

.c-card5__item-price span {
  font-size: 0.8125rem;
}

.c-card6 {
  background-color: #fff;
  padding: 1.5rem 1.5rem 1.5rem 3rem;
  border-radius: 0.625rem;
  box-shadow: 1px 1px 0.1875rem rgba(0, 0, 0, 0.4);
}

.c-card6__title {
  font-size: 1.375rem;
  font-weight: 600;
  line-height: 1.7272727273;
  letter-spacing: 0.01em;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.25rem;
}

.c-card6__title::before,
.c-card6__title::after {
  content: "-";
}

.c-card6__items {
  margin-top: 1.25rem;
}

.c-card6__item {
  position: relative;
}

.c-card6__item::before {
  content: "";
  position: absolute;
  top: 0;
  left: -1.5rem;
  width: 1.1875rem;
  height: 1.1875rem;
  background-color: #889898;
  border-radius: 50%;
}

.c-card6__item span {
  font-weight: 600;
  color: #b72828;
}

.c-card6__item:nth-child(n+2) {
  margin-top: 0.9375rem;
}

.c-card7 {
  background-color: #fff;
  padding: 2.3125rem 2.375rem 2.125rem 2.5rem;
  border-radius: 0.625rem;
  box-shadow: 0.0625rem 0.0625rem 0.1875rem rgba(0, 0, 0, 0.4);
  display: flex;
  flex-direction: column;
}

.c-card7__title {
  font-size: 1.0625rem;
  font-weight: 600;
  line-height: 1.7058823529;
  letter-spacing: 0.01em;
}

.c-card7__text-head {
  margin-top: 1.375rem;
  flex-grow: 1;
}

.c-card7__img {
  margin-top: 1.375rem;
}

.c-card7__img img {
  aspect-ratio: 409/182;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.c-card7__bottom-text {
  margin-top: 1.25rem;
  flex-grow: 1;
}

.c-case {
  display: flex;
  justify-content: flex-end;
  gap: 0.625rem;
  margin-bottom: 0.625rem;
}

.c-case.c-case--rev {
  margin-top: 0.625rem;
  margin-bottom: 0;
}

.c-case__text {
  display: block;
  width: 100%;
  background-color: #889898;
  color: #fff;
  text-align: center;
  font-size: 0.875rem;
  padding: 0 0.5rem;
  line-height: 1.6;
}

.c-case--rev .c-case__text {
  background: none;
  color: #889898;
}

.c-hamburger {
  position: relative;
  height: 100%;
  cursor: pointer;
}

.c-hamburger span {
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 0.125rem;
  background-color: #889898;
  transition: 0.3s;
}

.c-hamburger span:nth-child(1) {
  top: 1.375rem;
}

.c-hamburger span:nth-child(2) {
  top: 50%;
}

.c-hamburger span:nth-child(3) {
  bottom: 1.25rem;
}

.c-hamburger.is-open span:nth-child(1) {
  top: 1.875rem;
  transform: translateX(-50%) rotate(45deg);
}

.c-hamburger.is-open span:nth-child(2) {
  opacity: 0;
}

.c-hamburger.is-open span:nth-child(3) {
  bottom: 1.75rem;
  transform: translateX(-50%) rotate(-45deg);
}

.c-hover-card {
  text-align: center;
}

.c-hover-card__img img {
  aspect-ratio: 1/1;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.c-hover-card__title {
  font-size: 0.875rem;
}

.c-image2 img {
  aspect-ratio: 566/377;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.c-input__text,
.c-input__tel,
.c-input__area {
  font-size: 1.125rem;
  background-color: #FCFBF8;
  box-sizing: border-box;
  border: 1px solid #CCC;
  line-height: 140%;
  padding: 0.5rem 0.625rem;
  width: 100%;
  appearance: none;
}

.c-input__note {
  font-size: 0.75rem;
  color: #FE797A;
  white-space: nowrap;
}

.c-input__col {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
@media screen and (min-width: 768px) {
  .c-input__col {
    flex-direction: row;
  }
}

.c-input__calendar input {
  min-height: 2.8125rem;
}

.c-input__area {
  min-height: 18.75rem;
}

.c-item {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.1666666667;
  letter-spacing: 0.01em;
}
@media screen and (min-width: 768px) {
  .c-item {
    font-size: 1.125rem;
    display: flex;
    gap: 2.375rem;
  }
}

.c-item__title {
  line-height: 1.8;
  font-size: 16px;
}

.c-item {
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.1666666667;
  letter-spacing: 0.01em;
  display: grid;
  grid-template-columns: 80px 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-inline: 0;
  gap: 1.375rem;
  font-size: 1.125rem;
}

.c-item.--postNone {
  display: block;
  text-align: center;
}

.c-item__img img {
  aspect-ratio: 1/1;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.c-item__mainBox {
  margin-top: 1.25rem;
}

.c-item__time {
  color: #c3cfcf;
  font-size: 12px;
}

.c-item__title {
  line-height: 1.8;
  margin-top: 0.4rem;
}

.c-link__item:nth-child(n+2) {
  margin-top: 0.625rem;
}

.c-link__item a {
  font-weight: 500;
  font-size: 0.875rem;
  line-height: 1.5;
  letter-spacing: 0.01em;
}

.c-link__item a > img {
  display: inline;
  aspect-ratio: 1/1;
  width: 0.75rem;
  height: 0.75rem;
  -o-object-fit: contain;
     object-fit: contain;
}

.c-link__sub-items {
  margin-top: 0.625rem;
  padding-left: 0.5rem;
}

.c-link__sub-item:nth-child(n+2) {
  margin-top: 0.625rem;
}

.c-link2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: center;
}

.c-link2__img {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.c-link2__img img {
  aspect-ratio: 191/169;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.c-main-item {
  display: block;
  position: relative;
  padding: 1.25rem 1.875rem;
  font-weight: 500;
  font-size: 1.25rem;
  letter-spacing: 0.05em;
}

.c-main-item::after {
  position: absolute;
  top: 50%;
  right: 0;
  width: 1.75rem;
  height: 1.75rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: url(../images/common/icon_arrow3.svg) no-repeat center/contain;
  content: "";
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}


.c-item2 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.c-item2__icon {
  width: 5.5rem;
  padding: 1.25rem;
    border: 1px solid #d1d7d7;
    border-radius: 50%;
    background: #fff;
}

.c-item2--benefit .c-item2__icon {
  position: relative;
}

.c-item2--benefit .c-item2__icon::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: url(../images/common/icon_circle-plus.svg) no-repeat center/contain;
  width: 1.375rem;
  height: 1.375rem;
}

.c-item2__icon img {
  aspect-ratio: 1/1;
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.c-item2__text {
  font-size: 0.875rem;
}

.c-item2--mt .c-item2__text {
  margin-top: 0.625rem;
}

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

.c-item2.c-item2--case::before {
  content: "レンタル特典";
  position: absolute;
  top: -1.875rem;
  left: 0;
  width: 100%;
  height: auto;
  background-color: #29b198;
  text-align: center;
  color: #fff;
}

.c-link__item:nth-child(n+2) {
  margin-top: 0.625rem;
}

.c-link__item a {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.01em;
}

.c-link__item a > img {
  aspect-ratio: 1/1;
  object-fit: contain;
  width: 0.75rem;
  height: 0.75rem;
  display: inline;
}

.c-link__sub-items {
  margin-top: 0.625rem;
  padding-left: 0.5rem;
}

.c-link__sub-item:nth-child(n+2) {
  margin-top: 0.625rem;
}

.c-link2 {
  display: flex;
  flex-direction: column;
  text-align: center;
}

.c-link2__img {
  flex-shrink: 0;
}

.c-link2__img img {
  aspect-ratio: 191/169;
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.c-main-item {
  padding: 1.25rem 1.875rem;
  display: block;
  position: relative;
  font-size: 1.25rem;
  font-weight: 500;
  letter-spacing: 0.05em;
}

.c-main-item::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  background: url(../images/common/icon_arrow3.svg) no-repeat center/contain;
  width: 1.75rem;
  height: 1.75rem;
  transition: transform 0.3s;
}

.c-main-item.is-open::after {
  transform: translateY(-50%) rotate(-90deg);
}

.c-price__yen span {
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: 0.01em;
}

.c-section-title {
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.7272727273;
  letter-spacing: 0.01em;
  text-align: center;
  font-family: YuMincho, "Yu Mincho", serif;
  margin: 2rem auto;
  color: #9f9f9f;
}

@media only screen and (max-width: 768px) {
  .c-section-title {
    font-size: 1.4rem;
  }
}

.c-section-title2 {
  text-align: center;
}

.c-section-title2__en {
  font-size: 3rem;
  line-height: 1;
  letter-spacing: 0.01em;
  font-family: "adobe-handwriting-ernie", sans-serif;
  text-transform: capitalize;
}

.c-section-title2__jp {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.75;
}

.c-section-title2__desc {
  font-size: 1.125rem;
  font-weight: 600;
  margin-top: 1.875rem;
}

.c-sns {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2.875rem;
}
@media screen and (min-width: 768px) {
  .c-sns {
    justify-content: start;
    gap: 0.625rem;
  }
}

.c-sns__link {
  width: 3.5rem;
}
@media screen and (min-width: 768px) {
  .c-sns__link {
    width: 2.1875rem;
  }
}

.c-sns__link img {
  aspect-ratio: 1/1;
  width: 100%;
  height: 100%;
}

.c-sub-item {
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.1666666667;
  letter-spacing: 0.01em;
}

.c-sub-item__items {
  margin-top: 2rem;
  padding-left: 1.125rem;
}

.c-sub-item__item:nth-child(n+2) {
  margin-top: 2rem;
}

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

.c-title__main {
  font-size: 3rem;
  letter-spacing: 0.01em;
  font-family: "adobe-handwriting-ernie", sans-serif;
  text-transform: capitalize;
  position: relative;
}

.c-title__main::before {
  content: "";
  position: absolute;
  top: -4rem;
  left: 50%;
  transform: translateX(-50%);
  width: 8.875rem;
  height: 2.375rem;
  background: url(../images/top/title_catch_plan.svg) no-repeat center/contain;
}

.c-title--campaign .c-title__main::before {
  content: "";
  position: absolute;
  /* top: -1.875rem; */
  left: 50%;
  transform: translateX(-50%);
  width: 8.875rem;
  height: 2.375rem;
  background: url(../images/top/title_catch_campaign.svg) no-repeat center/contain;
}

.c-title--contact .c-title__main::before {
  display: none;
}

.c-title__main img {
  aspect-ratio: 271/200;
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.c-title__sub {
  font-size: 1.25rem;
  /* margin-top: -1.875rem; */
  /* margin-top: 2rem; */
}

.c-title--campaign .c-title__sub {
  margin-top: 2rem;
}

.c-title2 {
  font-size: 1.375rem;
  font-weight: 600;
  line-height: 1.7272727273;
  /* letter-spacing: 0.01em; */
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.25rem;
}

.c-title2::before,
.c-title2::after {
  content: "-";
}

.c-title3 {
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.7222222222;
  letter-spacing: 0.01em;
}

.c-title4__en {
  font-size: 2.75rem;
  line-height: 1;
  letter-spacing: 0.095em;
  font-style: italic;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  .c-title4__en {
    font-size: 2.9375rem;
  }
}

.c-title4__jp {
  font-size: 1.25rem;
  font-weight: 400;
}

.p-access__inner {
  max-width: 65.625rem;
  margin-inline: auto;
  padding-inline: 1.5625rem;
}

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

.p-access__img {
  margin-top: 3rem;
}

.p-access__img img {
  aspect-ratio: 1000/345;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.p-access__info-box {
  margin-top: 2.5rem;
}
@media screen and (min-width: 768px) {
  .p-access__info-box {
    margin-top: 4.375rem;
    display: flex;
    justify-content: space-between;
    gap: 0.625rem;
  }
}

.p-access__list {
  font-size: 1rem;
}
@media screen and (min-width: 768px) {
  .p-access__list {
    font-size: 1.125rem;
  }
}

.p-access__root {
  display: grid;
  border: 1px solid #30b69e;
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-access__root {
    grid-template-columns: repeat(2, 1fr);
    max-width: 41.875rem;
    margin-top: 0;
  }
}

.p-access__root dt,
.p-access__root dd {
  font-size: 1rem;
  font-weight: 600;
  color: #fff;
  background-color: #30b69e;
  display: flex;
  align-items: center;
  padding: 1rem;
}
@media screen and (min-width: 768px) {
  .p-access__root dt,
  .p-access__root dd {
    font-size: 1.125rem;
    padding: 0 1.25rem;
  }
}

.p-access__root dt:nth-of-type(n+2) {
  border-top: 1px solid #fff;
}

.p-access__root dd {
  color: #30b69e;
  background-color: transparent;
}

.p-access__root dd:nth-of-type(n+2) {
  border-top: 1px solid #30b69e;
}

.p-access__illust-map {
  margin-top: 2.5rem;
  max-width: 40.0625rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-access__illust-map {
    margin-top: 5rem;
  }
}

.p-access__illust-map img {
  aspect-ratio: 641/171;
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.p-access__map {
  margin-top: 3rem;
  border: 2px solid #30b69e;
}

.p-access__map iframe {
  aspect-ratio: 1000/385;
  object-fit: contain;
  width: 100%;
  /* height: 100%; */
}

.p-accordion__title {
  font-size: 1.25rem;
  font-weight: 500;
  letter-spacing: 0.01em;
  cursor: pointer;
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.625rem;
}

.p-accordion__title::before {
  content: "Q.";
  font-size: 1.5625rem;
  line-height: 2.04;
  letter-spacing: 0.01em;
  font-family: "adobe-handwriting-ernie", sans-serif;
  color: #889898;
  margin-top: 0.625rem;
}

.p-accordion__title::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -2rem;
  transform: translateY(-50%) rotate(0);
  width: 1.5rem;
  height: 1.4375rem;
  background: url(../images/common/icon_plus.svg) no-repeat center/contain;
  transition: 0.3s;
}

.p-accordion__title.is-active::after {
  background: url(../images/common/icon_minus.svg) no-repeat center/contain;
  transform: translateY(-50%) rotate(360deg);
}

.p-accordion__content {
  margin-top: 0.625rem;
  display: none;
}

.p-accordion__answer {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.7142857143;
  letter-spacing: 0.01em;
  position: relative;
  display: flex;
  gap: 0.625rem;
}

.p-accordion__answer::before {
  content: "A.";
  font-size: 1.5625rem;
  line-height: 2.04;
  letter-spacing: 0.01em;
  font-family: "adobe-handwriting-ernie", sans-serif;
  color: #889898;
  margin-top: -0.625rem;
}

.p-accordion2 {
  padding: 1.875rem 3.125rem 1.875rem 1.5625rem;
  background-color: #fff;
  -webkit-perspective: 31.25rem;
  perspective: 31.25rem;
  border-radius: 0.8rem;
}

@media screen and (max-width: 768px) {
  .p-accordion2 {
      padding: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .p-accordion2__content {
      margin-top: 1rem;
  }
}
.p-accordion2__title {
  position: relative;
  font-weight: 600;
  font-size: 1.5rem;
  letter-spacing: 0.01em;
  cursor: pointer;
  margin-right: 2rem;
  line-height: 1.6;
}

.p-accordion2__sub-title {
  font-size: 0.875rem;
  padding-left: 0.375rem;
  font-weight: 400;
}

.p-accordion2__title-catch {
  display: block;
  font-size: 0.875rem;
  font-weight: 400;
}

.p-accordion2__title::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -2rem;
  transform: translateY(-50%);
  width: 1.5rem;
  height: 1.4375rem;
  background: url(../images/common/icon_plus.svg) no-repeat center/contain;
  transition: 0.3s;
}

.p-accordion2__title.is-active::after {
  background: url(../images/common/icon_minus.svg) no-repeat center/contain;
  transform: translateY(-50%) rotate(360deg);
}

.p-accordion2__content {
  margin-top: 2.5rem;
  display: none;
}

.p-accordion2__answer {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.7142857143;
  letter-spacing: 0.01em;
  position: relative;
}

.p-addition__title {
  display: inline-block;
  min-width: 12.5rem;
  margin: auto;
  padding: 0.5rem 0.875rem;
  font-size: 0.875rem;
  color: #fff;
  background-color: #29b49b;
  line-height: 1.2rem;
  margin-bottom: 1rem;
}

.p-addition__caution {
  margin-top: 0.25rem;
  font-size: 0.9rem;
}

.p-addition__content {
  display: flex;
  justify-content: center;
  gap: 0.625rem;
  margin-top: 1rem;
}

.p-addition__age {
  /* text-align: right; */
}

.p-album-media.p-album-media--recommend,
.p-album-media.p-album-media--recommend2 {
  position: relative;
}

.p-album-media.p-album-media--recommend::before,
.p-album-media.p-album-media--recommend2::before {
  content: "";
  position: absolute;
  top: 1.5rem;
  left: 1.875rem;
  transform: translate(-50%, -50%);
  background: url(../images/common/icon_recommend.svg) no-repeat center/contain;
  width: 5.125rem;
  height: 5.125rem;
}

.p-album-media.p-album-media--recommend2::before {
  background: url(../images/common/icon_recommend2.svg) no-repeat center/contain;
}

.p-album-media__wrap {
  background-color: #fff;
  padding: 1.5rem;
}

.p-album-media__content {
  display: grid;
  gap: 1.5rem;
}
@media screen and (min-width: 768px) {
  .p-album-media__content {
    grid-template-columns: 1fr 1fr;
  }
}

.p-album-media__img {
  width: 99.1379310345%;
}

.p-album-media__img img {
  aspect-ratio: 460/307;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.p-album-media__special {
  font-weight: 500;
  color: #fff;
  display: inline-block;
  background-color: #29b49b;
  padding: 0.5rem 0.8rem;
  line-height: 1;
}

.p-album-media__title {
  margin-top: 1.25rem;
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: 0.01em;
}

.p-album-media__price {
  margin-top: 1.625rem;
  text-align: right;
}

.p-album-media__text {
  margin-top: 1.25rem;
}

.p-album-media__text p {
  line-height: 1.7142857143;
  letter-spacing: 0.01em;
}

.p-album-media__cards {
  margin-top: 1.5rem;
}

.p-album__sub-title {
  margin-top: 2rem;
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.01em;
  text-align: center;
}

.p-album__cards {
  margin-top: 2.5rem;
}

.p-album__media {
  margin-top: 3.125rem;
}

.p-anchor-link__items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.25rem;
}
@media screen and (min-width: 768px) {
  .p-anchor-link__items {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
  }
}

.p-anchor-link__item a {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.01em;
  background-color: #ecefef;
  padding: 0.5rem 0.9375rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}
@media screen and (min-width: 768px) {
  .p-anchor-link__item a {
    display: inline-flex;
    min-width: 5.625rem;
  }
}

.p-anchor-link__item a::after {
  content: "";
  width: 0.5rem;
  height: 0.5rem;
  border-right: 1px solid;
  border-bottom: 1px solid;
  transform: rotate(45deg) translateY(-0.125rem);
}

.p-breadcrumb {
  background-color: #fff;
  padding: 0.625rem 1.25rem;
  text-align: right;
}

.p-buttons {
  display: flex;
  gap: 0.625rem;
  max-width: 50rem;
  margin-right: auto;
  margin-left: auto;
  /* width: 100%; */
  /* gap: 32px 24px; */
  justify-content: center;
}

.p-cards-memory {
  display: grid;
  row-gap: 1.875rem;
}
@media screen and (min-width: 768px) {
  .p-cards-memory {
    grid-template-columns: repeat(3, 1fr);
    column-gap: 1.875rem;
    row-gap: 3.125rem;
  }
}

.p-cards {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 1.25rem;
  row-gap: 1.875rem;
}
@media screen and (min-width: 768px) {
  .p-cards {
    grid-template-columns: repeat(4, 1fr);
    column-gap: 1.5rem;
    row-gap: 3.875rem;
  }
}

.p-cards2 {
  display: grid;
  column-gap: 3.75rem;
  row-gap: 4.625rem;
}
@media screen and (min-width: 768px) {
  .p-cards2 {
    grid-template-columns: repeat(2, 1fr);
  }
}

.p-cards3 {
  display: grid;
  gap: 1.6875rem;
  max-width: 31.25rem;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .p-cards3 {
    grid-template-columns: repeat(3, 1fr);
    max-width: 100%;
    margin-right: 0;
    margin-left: 0;
  }
}

.p-cards4 {
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .p-cards4__card {
    width: 48.7%;
  }
}

.p-cards4__card:nth-child(n+2) {
  margin-top: 1.625rem;
}
@media screen and (min-width: 768px) {
  .p-cards4__card:nth-child(odd) {
    float: left;
    clear: left;
  }
}

@media screen and (min-width: 768px) {
  .p-cards4__card:nth-child(even) {
    float: right;
    clear: right;
  }
}

@media screen and (min-width: 768px) {
  .p-cards4__card:nth-child(2) {
    margin-top: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-cards4__card:nth-child(n+3) {
    margin-top: 1.625rem;
  }
}

.p-cards5 {
  display: grid;
  gap: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-cards5 {
    grid-template-columns: 1fr 1fr;
  }
}

.p-cards6 {
  display: grid;
  gap: 1.5rem;
  max-width: 31.25rem;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .p-cards6 {
    grid-template-columns: repeat(2, 1fr);
    max-width: 100%;
    margin-right: 0;
    margin-left: 0;
  }
}

.p-commit {
  padding: 6.875rem 0 10rem;
}
@media screen and (max-width: 768px) {
  .p-commit {
    padding: 6.875rem 0 20rem;
  }
}
.p-commit__title {
  text-align: center;
}

.p-commit__cards {
  margin-top: 2.6875rem;
}

.p-commit__media {
  margin-top: 3.75rem;
}

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

.p-contact__content {
  margin-top: 5rem;
}

.p-contact__sub-title {
  font-size: 0.875rem;
  font-weight: 600;
}

.p-contact__lists {
  margin-top: 0.625rem;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  padding-left: 1.25rem;
  border-top: 1px solid;
  border-bottom: 1px solid;
  list-style: disc;
}

.p-contact__list {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.8;
}

.p-contact__form {
  max-width: 62.5rem;
  margin-top: 3.75rem;
  margin-inline: auto;
}

.p-costume__wrap {
  padding: 1.875rem 1.25rem;
  background-color: #fff;
  margin-top: 2.5rem;
}
@media screen and (min-width: 768px) {
  .p-costume__wrap {
    margin-top: 3.375rem;
    padding: 4.5625rem 0 6.25rem;
  }
}

.p-costume__text {
  font-size: 1.125rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-costume__text {
    font-size: 1.5rem;
  }
}

.p-costume__content {
  max-width: 40.625rem;
  margin: 1.25rem auto 0;
  position: relative;
  z-index: 10;
}

.p-costume__swiper {
  overflow: hidden;
}

.p-costume__sub-text {
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0.01em;
  margin: 2.1875rem auto 0;
  max-width: 31.25rem;
}

.p-data-plan__title {
  display: inline-block;
  min-width: 12.5rem;
  margin: auto;
  padding: 0.5rem 0.875rem;
  font-size: 0.875rem;
  color: #fff;
  background-color: #29b49b;
  text-align: center;
  line-height: 1;
}

.p-data-plan__items {
  margin-top: 1.875rem;
}

.p-data-plan__lists {
  margin-top: 1.25rem;
}

.p-data-plan__list {
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.7222222222;
  letter-spacing: 0.01em;
}

.p-data-plan--textLeft .p-data-plan__list {
  text-align: left;
  font-size: 0.875rem;
}

.p-data-plan.p-data-plan--preparation {
  text-align: center;
  border-top: 1px solid #f3f5f5;
    border-bottom: 1px solid #f3f5f5;
    padding: 2rem;
    margin: auto;
    background: #f3f5f5;
    border-radius: 0.8rem;
    margin: 2rem 0
}

.p-data-plan--preparation .p-data-plan__lists {
  max-width: 21.375rem;
  margin-right: auto;
  margin-left: auto;
}

.p-data-plan--preparation .p-data-plan__list {
  font-size: 0.875rem;
  text-align: left;
}

.p-detail__data {
  padding: 1.25rem;
  background-color: #f3f5f5;
  position: relative;
  margin-top: 3.125rem;
}

.p-detail__data::before {
  content: "";
  position: absolute;
  top: -1.25rem;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 0.8125rem solid transparent;
  border-left: 0.8125rem solid transparent;
  border-bottom: 1.625rem solid #f3f5f5;
  border-top: 0;
}

.p-detail__title {
  font-size: 1.4375rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  display: flex;
  align-items: center;
  gap: 0.625rem;
}

.p-detail__title::before {
  content: "";
  background: url(../images/common/icon_circle-plus.svg) no-repeat center/contain;
  width: 1.375rem;
  height: 1.375rem;
}

.p-detail__price {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 1.25rem;
  margin-top: 1rem;
}

.p-detail__price-sheets,
.p-detail__price-yen {
  font-size: 1.125rem;
  font-weight: 500;
  letter-spacing: 0.01em;
}

.p-detail__caution {
  margin-top: 1.875rem;
}

.p-detail__sub-title {
  margin-top: 1.875rem;
}

.p-detail__benefit {
  margin-top: 1.25rem;
}

.p-detail__benefit li:nth-child(n+2) {
  margin-top: 0.625rem;
}

.p-detail__benefit li {
  font-size: 0.875rem;
  position: relative;
}

.p-detail__benefit li::before {
  content: "";
  position: absolute;
  top: 0;
  left: -1.5rem;
  width: 1.1875rem;
  height: 1.1875rem;
  background-color: #e0ecec;
  border-radius: 50%;
}

.p-detail__data2 {
  margin-top: 1.25rem;
  text-align: center;
}

.p-detail__title2,
.p-detail__items {
  margin-top: 1.25rem;
}

.p-faq__text {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 2.0714285714;
  letter-spacing: 0.01em;
  text-align: center;
}

.p-faq__content {
  margin-top: 1.875rem;
}

.p-faq__accordion {
  padding: 0.625rem 3.125rem 0.625rem 1.5625rem;
  background-color: #fff;
  border-radius: 0.8125rem;
  box-shadow: 0.0625rem 0.0625rem 0.25rem rgba(0, 0, 0, 0.4);
}

.p-faq__accordion:nth-child(n+2) {
  margin-top: 1.25rem;
}

.p-floating {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 999;
  padding: 0.5rem 1rem;
  background-color: #fff;
  width: 100%;
}

.p-floating__items {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 0.25rem;
}

.p-floating__item a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
  height: 100%;
  font-size: 1.2rem;
  line-height: 1;
  letter-spacing: 0.01em;
  padding: 0.875rem 0.625rem;
  background-color: #889898;
  border-radius: 0.375rem;
  color: #fff;
}

.p-floating__item a::before {
  content: "";
  width: 1.125rem;
  height: 1.0625rem;
  background: url(../images/common/icon_tel3.svg) no-repeat center/contain;
}

.p-floating__item:nth-child(2) a::before {
  content: "";
  width: 1.125rem;
  height: 1.0625rem;
  background: url(../images/common/icon_line.svg) no-repeat center/contain;
}

.p-floating__item:nth-child(3) a::before {
  content: "";
  width: 1.125rem;
  height: 1.0625rem;
  background: url(../images/common/icon_map.svg) no-repeat center/contain;
}

.p-floor-map__img img {
  /* aspect-ratio: 984/582; */
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.p-floor-map__items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.25rem;
  margin-top: 2.5rem;
  counter-reset: map;
}

.p-floor-map__item {
  background-color: #b3b3b3;
  color: #fff;
  padding: 0.625rem;
  counter-increment: map;
  font-size: 14px;
}

.p-floor-map__item::before {
  content: counter(map, decimal-leading-zero) ".";
}

.p-flow__content {
  margin-top: 2.875rem;
  border-bottom: 1px solid #ddd;
  padding-bottom: 2rem;
  width: 90%;
  margin: 0 auto;
}

.p-flow__content:nth-child(n+2) {
  margin-top: 3rem;
}

.p-flow__text {
  font-size: 0.875rem;
  line-height: 1.75;
  letter-spacing: 0.01em;
  background-color: #f3f5f5;
  display: inline-block;
  padding: 0 1rem;
  margin-left: 5rem;
  position: absolute;
}

.p-flow__text2 {
      font-size: 1.5rem;
    font-weight: 600;
    padding-left: 5rem;
    position: relative;
    /* line-height: 2;*/
    color: #3f3f3f;
}

@media screen and (max-width: 768px) {
.p-flow__text2 {
      font-size: 1.4rem;
}
  .p-item2__title{
    font-size:1.2rem;
  }
}

.p-flow__items {
  padding-top: 1rem;
  padding-left: 1.75rem;
  border-left: 1px solid;
  margin-left: 3rem;
  position: relative;
}
.p-flow__items:before{
  /* content:"○"; */
  position: absolute;
  /* font-size: 2rem; */
  top: -2rem;
  left: -1rem;
  /* color: #3f3f3f; */
  width: 2rem;
  height: 2rem;
  content: '';
  border-radius: 100%;
  border: 0.5px #3f3f3f solid;
}
@media screen and (min-width: 768px) {
  .p-flow__items {
    padding-top: 1.25rem;
  }
  .p-flow__items:before{
  font-size: 2rem;
  left: -1rem;
  top: -2rem;
}
}

.p-flow__plan {
  font-size: 0.875rem;
  font-weight: 500;
  margin-top: 0.5rem;
  margin-left: -1.5625rem;
}

.p-flow__plan span {
  font-size: 0.875rem;
  font-weight: 500;
  color: #889898;
  text-transform: capitalize;
  border: 1px solid #889898;
  padding: 0.25rem;
  margin-right: 0.375rem;
  background-color: #fff;
}

.p-footer-company__contents {
  display: grid;
  gap: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-footer-company__contents {
    grid-template-columns: 1fr 1fr;
  }
}

.p-footer-company__content {
  display: flex;
  align-items: center;
  gap: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-footer-company__content {
    gap: 3rem;
  }
}

.p-footer-company__logo {
  flex-shrink: 0;
  width: 21.8579234973%;
}

.p-footer-company__logo img {
  aspect-ratio: 80/118;
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.p-footer-company__info {
  flex-grow: 1;
}

.p-footer-company__name {
  font-size: 1.375rem;
  font-weight: 500;
  line-height: 2.4090909091;
  letter-spacing: 0.01em;
  display: flex;
  align-items: center;
  gap: 0.625rem;
  font-weight: 600;
}

.p-footer-company__name span,
.p-footer-company__address,
.p-footer-company__map a,
.p-footer-company__contact,
.p-footer-company__text {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 2.0714285714;
  letter-spacing: 0.01em;
}

.p-footer-company__map a {
  line-height: 1.58;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
  min-width: 7.25rem;
  border-radius: 0.25rem;
  background-color: #889898;
  color: #fff;
}

.p-footer-company__map a::after {
  content: "";
  width: 0.75rem;
  height: 1.0625rem;
  background: url(../images/common/icon_map.svg) no-repeat center/contain;
}

.p-footer-company__contact {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-footer-company__contact {
    gap: 1rem;
  }
}

.p-footer-company__contact li {
  font-size: 0.75rem;
}
@media screen and (min-width: 768px) {
  .p-footer-company__contact li {
    font-size: 0.875rem;
  }
}

.p-footer-company__sns {
  margin-top: 1.875rem;
}

.p-footer-company__copy-light {
  text-align: center;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 2.4166666667;
  letter-spacing: 0.01em;
  margin-top: 2.25rem;
}
@media screen and (min-width: 768px) {
  .p-footer-company__copy-light {
    text-align: right;
    margin-top: 0;
  }
}

.p-footer-nav {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.25rem;
}

.p-footer-nav__link a {
  font-size: 0.9375rem;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0.01em;
}

.p-footer-nav__links {
  margin-top: 0.875rem;
  padding: 0 0.5rem;
}

@media screen and (min-width: 768px) {
  .p-footer {
    padding-top: 3.75rem;
    border-top: 1px solid #889898;
  }
}

.p-footer__nav {
  padding: 0 3.125rem;
}

.p-footer__company {
  margin-top: 1.875rem;
  padding-top: 3.75rem;
  border-top: 1px solid #889898;
}

.p-footer__group {
  margin-top: 3.75rem;
}

.p-form__content {
  display: grid;
  gap: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-form__content {
    grid-template-columns: 18.75rem 1fr;
    column-gap: 1.25rem;
    row-gap: 0.625rem;
  }
}

.p-form__title {
  font-size: 1.125rem;
  padding: 0.625rem 0.625rem 0.4375rem;
  background-color: #EBEBEB;
}

@media screen and (min-width: 768px) {
  .p-form__text-wrap {
    max-width: 18.75rem;
  }
}

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

.p-form__box {
  margin-top: 2.5rem;
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
  border: 1px solid #889898;
  text-align: center;
  background-color: #FCFBF8;
}

.p-form__btn {
  margin-top: 3.75rem;
  text-align: center;
}

.p-form__btn input[type=submit] {
  font-size: 1.125rem;
  min-width: 18.75rem;
  display: inline-block;
  appearance: none;
  background-color: #FCFBF8;
  box-sizing: border-box;
  border: 1px solid #CCC;
  line-height: 140%;
  padding: 0.5rem 0.625rem;
  cursor: pointer;
  transition: 0.3s;
}

.p-form__btn input[type=submit]:hover {
  background-color: #889898;
  color: #fff;
}

.p-form__btn p {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .p-form__btn p {
    display: block;
  }
}

.p-gallery__content {
  margin-top: 3.75rem;
  padding: 3.125rem 1.25rem 1.875rem;
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  .p-gallery__content {
    padding: 6.25rem 3.125rem 3.75rem;
  }
}

.p-gallery__items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (min-width: 768px) {
  .p-gallery__items {
    grid-template-columns: repeat(4, 1fr);
  }
}

.p-gallery__item img {
  aspect-ratio: 1/1;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.p-gallery__text {
  margin-top: 3.375rem;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.01em;
  text-align: center;
}

.p-gallery__btn {
  margin-top: 1rem;
  text-align: center;
}

.p-gallery__btn img {
  aspect-ratio: 1/1;
  object-fit: contain;
  width: 1.4375rem;
  height: 1.4375rem;
}

.p-group {
  background-color: #a7b3b3;
  padding: 3.125rem 0 5rem;
}

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

.p-group__title h2 {
  display: inline-block;
}

.p-group__title h2 img {
  aspect-ratio: 300/105;
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.p-group__bold-text {
  margin-top: 2.5rem;
  font-size: 18px;
  font-weight: 600;
  text-align: center;
  color: #fff;
  font-family: serif;
}

.p-group__text {
  font-size: 0.875rem;
  text-align: center;
  color: #fff;
}

.p-group__company-logo {
  width: 13.75rem;
  margin: 3.75rem auto 0;
  position: relative;
}

.p-group__company-logo::before {
  content: "corporate";
  top: -1.25rem;
  left: 50%;
  transform: translateX(-50%);
  position: absolute;
  font-size: 1.125rem;
  font-weight: 400;
  font-family: serif;
  text-transform: uppercase;
  color: #a18782;
}
@media screen and (min-width: 768px) {
  .p-group__company-logo::before {
    top: 50%;
    left: -7.5rem;
    transform: translate(0, -50%);
  }
}

.p-group__company-logo img {
  aspect-ratio: 220/77;
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.p-group__links {
  margin-top: 3.125rem;
}

.p-header-info {
  display: none;
}
@media screen and (min-width: 768px) {
  .p-header-info {
    display: flex;
    justify-content: space-between;
    gap: 0.625rem;
  }
}

.p-header-info__desc {
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.6923076923;
  letter-spacing: 0.01em;
  color: #5d7373;
}

.p-header-info__buttons {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 0.3125rem;
}

.p-header {
  background-color: #fff;
  position: relative;
  box-shadow: 0px 5px 5px 0px rgb(0 0 0 / 2%);
}

.p-header__inner {
  height: 100%;
}
@media screen and (min-width: 768px) {
  .p-header__inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}
.p-page-header {
  height: 19.6875rem;
  margin-top: 6.25rem;
}
@media screen and (max-width: 768px) {
  .p-page-header{
    margin-top: 52px;
  }
  .p-header {
    /* position: fixed;
    width: 100%;
    z-index: 9999;
    top: 0; */
  }
}
.p-header__content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 2.5rem;
  height: 100%;
}
@media screen and (min-width: 768px) {
  .p-header__content {
    align-items: flex-end;
    justify-content: start;
    margin-top: -1rem;
    height: auto;
  }
}

.p-header__logo {
  width: 11.25rem;
  height: 100%;
  position: relative;
  z-index: 120;
}

.p-header__logo img {
  aspect-ratio: 180/49;
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.p-header__icons {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  height: 100%;
  position: relative;
  z-index: 110;
}
@media screen and (min-width: 768px) {
  .p-header__icons {
    display: none;
  }
}

.p-header__icon,
.p-header__icon2 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  position: relative;
  z-index: 110;
  gap: 8px;
}

.p-header__icon img {
  aspect-ratio: 18/26;
  object-fit: contain;
  width: 1.125rem;
}

.p-header__icon p,
.p-header__icon2 p {
  font-size: 0.625rem;
  color: #889898;
  line-height: 1;
}

.p-header__icon2 img {
  aspect-ratio: 33/21;
  object-fit: contain;
  width: 2.625rem;
}

.p-header__hamburger {
  width: 1.875rem;
  position: relative;
  z-index: 110;
}
@media screen and (min-width: 800px) {
  .p-header__hamburger {
    display: none;
  }
}
.p-header__nav-sp {
  position: fixed;
  top: 0;
  left: 0;
  padding: 1.25rem;
  background-color: #fff;
  width: 100%;
  height: 100vh;
}

.p-info__tel {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
}

.p-info__tel img {
  flex-shrink: 0;
  aspect-ratio: 27/40;
  object-fit: contain;
  width: 1.6875rem;
  height: 100%;
}

.p-info__tel a {
  font-size: 2.25rem;
  line-height: 1.6363636364;
  letter-spacing: 0.075em;
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  .p-info__tel a {
    font-size: 2.2rem;
  }
}

.p-info__btn a {
  font-size: 1.1875rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.01em;
  display: inline-block;
  padding: 1rem 1rem;
  min-width: 23.125rem;
  text-align: center;
  box-shadow: 0.0625rem 0.0625rem 0.25rem rgba(0, 0, 0, 0.4);
  position: relative;
  z-index: 2;
  border-radius: 0.75rem;
}
@media screen and (min-width: 768px) {
  .p-info__btn a {
    min-width: 27.75rem;
    border-radius: 0;
  }
}

.p-info__btn a::before {
  content: "";
  position: absolute;
  top: 12%;
  left: -1.25rem;
  transform: translateY(-50%);
  z-index: -1;
  background: url(../images/common/icon_attention.svg) no-repeat center/contain;
  width: 11.125rem;
  height: 2.5625rem;
}
@media screen and (min-width: 768px) {
  .p-info__btn a::before {
    top: 38%;
  }
}

.p-info__btn a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0.375rem;
  transform: translateY(-50%);
  background: url(../images/common/icon_arrow2.svg) no-repeat center/contain;
  width: 2.0625rem;
  height: 0.375rem;
}

.p-info__btn {
  margin-top: 2.5rem;
}

.p-info__btn a span {
  font-size: 0.6875rem;
  display: block;
}

.p-info__caution {
  margin-top: 0.75rem;
}

.p-instagram__bg {
  position: relative;
  padding: 3rem 0 2.3125rem;
}

.p-instagram__bg::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  background: url(../images/top/instagram_bg.png) no-repeat center/contain;
}
@media screen and (min-width: 768px) {
  .p-instagram__bg::before {
    background: url(../images/top/instagram_bg-pc.png) no-repeat center/contain;
  }
}

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

.p-instagram__head img {
  aspect-ratio: 1/1;
  width: 3.375rem;
  height: 100%;
  display: inline-block;
}

.p-instagram__title {
  font-size: 2.5rem;
  line-height: 1.5319148936;
  letter-spacing: 0em;
  font-family: "adobe-handwriting-ernie", sans-serif;
  font-weight: 500;
  margin-bottom: 1rem;
}
@media screen and (min-width: 768px) {
  .p-instagram__title {
    font-size: 2.5rem;
  }
}

.p-instagram__account {
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.01em;
}

.p-instagram__images {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-top: 1.875rem;
  margin-right: -0.75rem;
  margin-left: -0.75rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-instagram__images {
    grid-template-columns: repeat(4, 1fr);
    margin-top: 3.75rem;
    margin-right: 0;
    margin-left: 0;
  }
}

.p-instagram__btn {
  margin-top: 3.75rem;
  text-align: center;
}

.p-item2 {
  position: relative;
}

.p-item2__plan {
  font-size: 0.875rem;
  font-weight: 500;
  position: absolute;
  top: -3.125rem;
  left: -3.375rem;
}
@media screen and (min-width: 768px) {
  .p-item2__plan {
    top: -1.875rem;
  }
}

.p-item2__plan span {
  font-size: 0.875rem;
  font-weight: 500;
  color: #889898;
  text-transform: capitalize;
  border: 1px solid #889898;
  padding: 0.25rem;
  margin-right: 0.375rem;
  background-color: #fff;
}

.p-item2__title {
  /* font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.75;
  letter-spacing: 0.01em; */
  color: #8a9191;
}

.p-items2__item .p-item__text {
  font-size: 1rem;
}

.p-item2__text {
  font-size: 0.875rem;
}

.p-item2__contact {
  margin-top: 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-item2__contact {
    flex-direction: row;
    align-items: center;
  }
}

.p-item2__info {
  text-align: center;
  /* margin-top: 1.875rem; */
}

.p-item2__media {
  margin-top: 1.25rem;
}

.p-item2__buttons {
  margin-top: 2.5rem;
}

.p-item3 {
  background-color: #fff;
  border-radius: 1rem;
  box-shadow: 0.0625rem 0.0625rem 0.3125rem rgba(0, 0, 0, 0.4);
  padding: 2.125rem 1.875rem;
}
@media screen and (min-width: 768px) {
  .p-item3 {
    padding: 2.125rem 2.9375rem;
    display: flex;
    flex-direction: column;
  }
}

.p-item3.p-item3--recommend {
  position: relative;
}

.p-item3.p-item3--recommend::before {
  content: "";
  position: absolute;
  top: 0.625rem;
  left: 1.25rem;
  transform: translate(-50%, -50%);
  background: url(../images/common/icon_recommend.svg) no-repeat center/contain;
  width: 5.125rem;
  height: 5.125rem;
}

.p-item3__wrap {
  display: flex;
  flex-direction: column;
}

.p-item3__wrap.is-active {
  height: auto;
}

.p-item3__img img {
  aspect-ratio: 334/223;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.p-item3__age-price {
  margin-top: 1rem;
}

.p-item3__price-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.875rem;
  /* margin-right: auto; */
  /* margin-left: auto; */
}

.p-item3__price-wrap:nth-child(n+2) {
  margin-top: 1.875rem;
}

.p-item3__price-age {
  font-size: 1.3125rem;
  font-weight: 500;
  line-height: 1.7142857143;
  letter-spacing: 0.01em;
  flex-shrink: 0;
}

.p-item3__title {
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.75;
  letter-spacing: 0.01em;
  text-align: center;
  margin-top: 1.5625rem;
}

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

.p-item3__price {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  column-gap: 1rem;
  row-gap: 0.375rem;
  max-width: 11.25rem;
  flex-grow: 1;
}

.p-item3--kids .p-item3__price {
  max-width: 18.75rem;
}

.p-item3__price-img {
  width: 1.125rem;
}

.p-item3__price-img img {
  aspect-ratio: 18/35;
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.p-item3__yen-sale {
  font-size: 0.875rem;
}

.p-item3__yen {
  font-size: 2.25rem;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.01em;
}

.p-item3__yen span {
  font-size: 0.8125rem;
}

.p-item3__price-caution {
  text-align: center;
}

.p-item3__btn {
  margin-top: 1.4375rem;
  text-align: center;
}

.p-item3__btn p {
  min-width: 18.125rem;
  display: inline-block;
  padding: 0.75rem;
  border-radius: 1.875rem;
  border: 1px solid;
  position: relative;
  cursor: pointer;
}

.p-item3__btn p::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0.75rem;
  transform: translateY(-50%) rotate(0);
  background: url(../images/common/icon_plus.svg) no-repeat center/contain;
  width: 1.375rem;
  height: 1.375rem;
  transition: 0.3s;
}

.p-item3__btn.is-active p::after {
  background: url(../images/common/icon_minus.svg) no-repeat center/contain;
  transform: translateY(-50%) rotate(360deg);
}

.p-item3__head {
  margin-top: 1.25rem;
  text-align: center;
  margin-bottom: 0.5rem;
}

.p-item3__title2 {
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.75;
  letter-spacing: 0.01em;
}

.p-item3__sale {
  font-size: 1rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-item3__sale {
    font-size: 1.125rem;
  }
}

.p-item3__special {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.625rem;
}

.p-item3__special-icon {
  flex-shrink: 0;
  width: 1.375rem;
  height: 1.375rem;
}

.p-item3__special-icon img {
  aspect-ratio: 1/1;
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.p-item3__special-text {
  font-size: 1.125rem;
  line-height: 3;
}

.p-item3__special-price {
  font-size: 2.2rem;
  font-weight: 500;
  letter-spacing: -1px;
}

.p-item3__special-price span {
  font-size: 0.8125rem;
}

.p-item3__special-price s{
  font-size: 1.5rem;
}
.p-item3__special-price span.red{
  font-size: 2.2rem;
}

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

.p-items__item:nth-child(n+2) {
  margin-top: 1.25rem;
}

.p-items2 {
  counter-reset: flow;
}

.p-items2__item {
  counter-increment: flow;
  position: relative;
  margin-top: 2rem;
}

.p-items2__item::before {
  content: "Step\A" counter(flow);
  white-space: pre;
  position: absolute;
  top: 0;
  left: -3.75rem;
  transform: translateX(-50%);
  color: #cbcdcd;
  font-size: 1rem;
  text-align: center;
  line-height: 1.3rem;
  font-family: "Marcellus SC", serif;
  font-weight: 400;
  font-style: normal;
  font-family: "adobe-handwriting-ernie", sans-serif;
}

@media screen and (min-width: 768px) {
  .p-items2__item p {
    font-size: 15px;
  }
  
  .p-items2__item::before {
    top: .5rem;
    left: -4.25rem;
  }
}

.p-items2__item::after {
  position: absolute;
  top: 0.5rem;
  left: -1.9rem;
  width: 0.325rem;
  height: 0.325rem;
  background-color: #4f4f4f;
  content: "";
  border-radius: 50%;
}
@media screen and (min-width: 768px) {
  .p-items2__item::after {
    top: 0.875rem;
    left: -1.92rem;
  }
}

.p-items2__item:nth-child(n+2) {
  margin-top: 2.2rem;
}

.p-links {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.625rem;
}

.p-links__sns {
  margin-top: 0.625rem;
}

.p-links2 {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1.25rem;
}

.p-map {
  padding: 3.75rem 0;
  background-color: #fff;
}

.p-map__floor {
  margin-top: 3.75rem;
  margin-right: auto;
  margin-left: auto;
  max-width: 61.5rem;
}

.p-map__text {
  text-align: center;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.7222222222;
  letter-spacing: 0.01em;
}

@media screen and (min-width: 768px) {
  .p-media {
    display: flex;
    align-items: center;
  }
}

@media screen and (min-width: 768px) {
  .p-media.p-media--rev {
    flex-direction: row-reverse;
  }
}

.p-media__img {
  border-bottom-left-radius: 3.125rem;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .p-media__img {
    flex-shrink: 0;
    width: 52.7%;
  }
}

.p-media__img img {
  aspect-ratio: 527/351;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

@media screen and (min-width: 768px) {
  .p-media__img2 {
    flex-shrink: 0;
    width: 52.7%;
  }
}

.p-media__img2 img {
  aspect-ratio: 527/243;
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.p-media__body {
  margin-top: 1.875rem;
}
@media screen and (min-width: 768px) {
  .p-media__body {
    width: 35.3%;
    margin: auto;
  }
}
@media screen and (max-width: 768px) {
  .p-media__img2 img {
  aspect-ratio: auto;
}
}

.p-media__title {
  /* font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.7222222222;
  letter-spacing: 0.01em; */
  color: #c5c5c5;
  font-weight: 500;
}

.p-media__text {
  margin-top: 1.25rem;
  font-size: 14px;
  /* font-weight: 500; */
  /* line-height: 2.0714285714; */

}

.p-media__img-bg {
  margin-top: 3.125rem;
}
@media screen and (min-width: 768px) {
  .p-media__img-bg {
    width: 90%;
    margin-right: auto;
    margin-left: auto;
  }
}

.p-media__img-bg img {
  aspect-ratio: 600/424;
  object-fit: contain;
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 768px) {
  .p-media__img-bg img {
    aspect-ratio: 900/360;
  }
}

.p-media2 {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
@media screen and (min-width: 768px) {
  .p-media2 {
    flex-direction: row;
  }
}

.p-media2__img {
  flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .p-media2__img {
    width: 32.671957672%;
  }
}

.p-media2__img img {
  aspect-ratio: 248/165;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.p-media2__content {
  flex-grow: 1;
}

.p-media2__text {
  font-size: 14px;
  /* line-height: 1.7142857143; */
}

.p-media2__btn {
  margin-top: 1.25rem;
}

.p-media3 {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-media3 {
    align-items: center;
    flex-direction: row;
    gap: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-media3__body {
    width: 37.5%;
    margin: auto;
  }
}

.p-media3__title {
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.75;
  letter-spacing: 0.01em;
}

.p-media3__price {
  font-size: 2.25rem;
  font-weight: 600;
  line-height: 1.75;
  letter-spacing: 0.01em;
}

.p-media3__price span {
  font-size: 0.8125rem;
}

.p-media3__img {
  flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .p-media3__img {
    width: 46.875%;
  }
}

.p-media3__img img {
  aspect-ratio: 375/250;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.p-media3__text span {
  font-size: 2.25rem;
  font-weight: 600;
}

.p-memory__cards {
  margin-top: 3.75rem;
}

.p-mv {
  background-color: #fff;
}

.p-mv__content {
  display: flex;
  align-items: center;
  flex-direction: column-reverse;
}
@media screen and (min-width: 768px) {
  .p-mv__content {
    flex-direction: row;
  }
}

.p-mv__body {
  flex-shrink: 0;
  margin-top: 1.25rem;
  width: 100%;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-mv__body {
    width: 23.4895833333%;
    margin: auto;
  }
}

.p-mv__img-sub {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 74%;
}
@media screen and (min-width: 768px) {
  .p-mv__img-sub {
    width: auto;
    position: static;
    transform: translateX(0);
  }
}

.p-mv__img-sub img {
  aspect-ratio: 451/391;
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.p-mv__text-wrap {
  display: flex;
  justify-content: space-between;
  width: 100%;
  position: relative;
  z-index: 1;
  padding: 0 1.875rem;
  margin: 3.125rem 0 4rem;
}
@media screen and (min-width: 768px) {
  .p-mv__text-wrap {
    align-items: center;
    gap: 1.25rem;
    margin: -1.5rem auto 0;
    max-width: 21.125rem;
    padding: 0;
  }
}

.p-mv__logo {
  width: 3.375rem;
  flex-shrink: 0;
  margin-top: 5.625rem;
}
@media screen and (min-width: 768px) {
  .p-mv__logo {
    width: 6.1875rem;
    margin-top: 0;
  }
}

.p-mv__logo img {
  aspect-ratio: 99/146;
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.p-mv__text {
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.1em;
  writing-mode: vertical-rl;
}
@media screen and (min-width: 768px) {
  .p-mv__text {
    font-size: 1.5rem;
  }
}

.p-mv__swiper {
  position: relative;
  width: 96%;
  margin-top: 3.75rem;
}
@media screen and (min-width: 768px) {
  .p-mv__swiper {
    width: 61.0416666667%;
    margin-top: 0;
  }
}

.p-mv__img-text {
  position: absolute;
  bottom: -1.25rem;
  left: 0.625rem;
  z-index: 1;
  width: 8.6875rem;
  height: 7.5625rem;
}
@media screen and (min-width: 768px) {
  .p-mv__img-text {
    bottom: 1.875rem;
    left: 3.125rem;
    width: 16.8125rem;
    height: 14.625rem;
  }
}

.p-mv__img-text img {
  aspect-ratio: 269/234;
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.p-nav-hover {
  display: none;
  position: absolute;
  top: 6.25rem;
  left: 0;
  z-index: 90;
  background-color: #fff;
  width: 100%;
  padding: 1.25rem 0;
  box-shadow: 0px 5px 5px 0px rgb(0 0 0 / 2%);
}

.p-nav-hover__cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.875rem;
  max-width: 50rem;
  margin: auto;
  padding: 0 1.5625rem;
}

.p-nav-items__item:nth-child(n+2) {
  border-top: 1px solid #889898;
}

.p-nav-items__sub-menu {
  display: none;
}

.p-nav-items__subitems {
  padding-bottom: 2rem;
}

.p-nav-pc {
  display: none;
}
@media screen and (min-width: 768px) {
  .p-nav-pc {
    display: block;
  }
}

.p-nav-pc__items {
  display: flex;
  align-items: center;
  gap: 2.25rem;
}

.p-nav-pc__item a {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.01em;
}

.p-nav-sp {
  padding-top: 4.375rem;
  padding-bottom: 6.25rem;
  display: none;
}

.p-nav-sp__wrap {
  overflow-y: auto;
  height: 100vh;
}

.p-nav-sp__items {
  padding-bottom: 6.25rem;
}

.p-news-list {
  display: grid;
  /* gap: 5.625rem; */
}
@media screen and (min-width: 768px) {
  .p-news-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 4.75rem;
  }
}

.p-news-list.--archive {
  display: block;
}

.p-news-list__box,
.p-news-list__box2 {
  position: relative;
}

.p-news-list__box::before,
.p-news-list__box2::before {
  /* content: ""; */
  position: absolute;
  top: 3.125rem;
  left: 1.25rem;
  background: url(../images/top/news_bg.png) no-repeat center/contain;
  width: 19.9375rem;
  height: 18.5625rem;
}
@media screen and (min-width: 768px) {
  .p-news-list__box::before,
  .p-news-list__box2::before {
    top: -2.5rem;
    width: 21.875rem;
    height: 20.375rem;
  }
}

.p-news-list__box2::before {
  background: url(../images/top/news_bg2.png) no-repeat center/contain;
}

.p-news-list__head,
.p-news-list__title,
.p-news-list__items,
.p-news-list__btn {
  position: relative;
}

.p-news-list__head {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid;
}

.p-news-list__head p {
  font-size: 3.125rem;
  line-height: 1.2;
  font-family: "adobe-handwriting-ernie", sans-serif;
  text-transform: capitalize;
}
@media screen and (min-width: 768px) {
  .p-news-list__head p {
    font-size: 5rem;
  }
}

.p-news-list__head img {
  flex-shrink: 0;
  width: 45.8333333333%;
}

.p-news-list__title {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.7222222222;
  letter-spacing: 0.01em;
}
@media screen and (min-width: 768px) {
  .p-news-list__title {
    font-size: 1rem;
  }
}

.p-news-list__items {
  margin-top: 2.5rem;
}

.p-news-list__btn {
  margin-top: 2.5rem;
  text-align: center;
}

.p-option__text {
  margin-top: 3.5rem;
  margin-right: auto;
  margin-left: auto;
  font-size: 0.875rem;
  letter-spacing: 0.01em;
  text-indent: -1em;
  padding-left: 1em;
  max-width: 28.75rem;
}

.p-option__sub-title {
  margin-top: 4.375rem;
  text-align: center;
  font-size: 1.25rem;
  font-weight: 600;
}

.p-option__cards {
  margin-top: 2.5rem;
}

.p-page-catch__text {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 2.0714285714;
  letter-spacing: 0.01em;
  text-align: center;
}

.p-page-header__wrap {
  display: grid;
  align-items: center;
  height: inherit;
}

.p-page-header__img,
.p-page-header__inner {
  grid-area: 1/1;
  height: inherit;
}

.p-page-header__img img {
  aspect-ratio: 1360/315;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.p-page-header__right {
  margin-left: auto;
  writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  /* display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  height: inherit;
  text-orientation: upright;
  font-feature-settings: initial; */
}

.p-page-header__title {
  font-size: 1.375rem;
  font-weight: 600;
  line-height: 1.7272727273;
  letter-spacing: 0.1em;
  margin-left: 1.25rem;
  font-family: "yu-gothic-pr6n", "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "Zen Kaku Gothic New", 'Noto Sans Japanese', "ヒラギノ角ゴ ProW3", "メイリオ", sans-serif;
  margin-top: 2.5rem;
}

.p-page-header__text {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 2.0714285714;
  letter-spacing: 0.01em;
  margin-top: 2.5rem;
}

.p-page-header__title span,
.p-page-header__text span {
  background-color: #fff;
  padding: 0.625rem 0.25rem;
  -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    line-height: 1rem;
}

.p-picture__contents {
  margin-top: 2.25rem;
}

.p-picture__content {
  max-width: 31.25rem;
  margin: auto;
}
@media screen and (min-width: 768px) {
  .p-picture__content {
    max-width: 100%;
    margin: 0;
  }
}

.p-picture__content:nth-child(n+2) {
  margin-top: 3.125rem;
}

.p-plan-info__case {
  margin-top: 1.875rem;
}

.p-plan-info__items {
  margin-top: 1rem;
  margin-right: auto;
  margin-left: auto;
  max-width: 38.75rem;
}

.p-plan-info__data {
  margin-top: 1.875rem;
  text-align: center;
}

.p-plan-info__sub {
  margin-top: 4.25rem;
}

.p-plan-info__select {
  margin-top: 3.75rem;
}

.p-plan-info__media + .p-plan-info__title,
.p-plan-info__rental + .p-plan-info__title,
.p-plan-info__special-option + .p-plan-info__title,
.p-plan-info__text-option + .p-plan-info__title,
.p-plan-info__sub + .p-plan-info__title,
.p-plan-info__data + .p-plan-info__title {
  margin-top: 1.875rem;
}
@media screen and (min-width: 768px) {
  .p-plan-info__media + .p-plan-info__title,
  .p-plan-info__rental + .p-plan-info__title,
  .p-plan-info__special-option + .p-plan-info__title,
  .p-plan-info__text-option + .p-plan-info__title,
  .p-plan-info__sub + .p-plan-info__title,
  .p-plan-info__data + .p-plan-info__title {
    margin-top: 3.75rem;
  }
}

.p-plan-info__rental {
  margin-top: 2.5rem;
}

.p-plan-info__special-option {
  margin-top: 2.5rem;
}

.p-plan-info__text-option {
  margin-top: 3.125rem;
  text-align: center;
}

.p-plan-items {
  display: flex;
  justify-content: center;
  gap: 1rem;
  flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  .p-plan-items {
    flex-wrap: nowrap;
    align-items: start;
  }
}

.p-plan-items.p-plan-items--wrap {
  flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  .p-plan-items.p-plan-items--wrap {
    width: 90.4191616766%;
    margin-right: auto;
    margin-left: auto;
  }
}

@media screen and (min-width: 768px) {
  .p-plan-items.p-plan-items--bottom {
    align-items: start;
  }
}

@media screen and (min-width: 768px) {
  .p-plan-items.p-plan-items--top {
    align-items: flex-end;
  }
}

.p-plan-items__col2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}

.p-plan__contents {
  margin-top: 1.875rem;
}

.p-plan__accordion:nth-child(n+2) {
  margin-top: 1.25rem;
}

.p-reason-cards {
  display: grid;
  gap: 2.5rem;
}
@media screen and (min-width: 768px) {
  .p-reason-cards {
    grid-template-columns: repeat(3, 1fr);
  }
}

.p-reason__cards {
  max-width: 31.25rem;
  margin: 3.125rem auto 0;
}
@media screen and (min-width: 768px) {
  .p-reason__cards {
    max-width: 100%;
  }
}

.p-rental-items {
  display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 0.625rem;
    flex-wrap: wrap;
}

.p-rental {
  display: grid;
  gap: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-rental {
    grid-template-columns: 1fr 1fr;
    gap: 0;
  }
}

.p-rental__content {
  background-color: #eff1f1;
  padding: 1.125rem 1.5625rem;
}
.p-data-plan.p-data-plan--preparation .p-rental__content {
  background-color: #fff;
}

.p-rental__title {
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.1666666667;
  letter-spacing: 0.01em;
}

.p-rental__text {
  margin-top: 0.375rem;
}

.p-select__text {
  font-size: 1.4375rem;
  font-weight: 600;
  line-height: 1.8695652174;
  letter-spacing: 0.01em;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}

.p-select__text::before {
  content: "";
  width: 1.375rem;
  height: 1.375rem;
  background: url(../images/common/icon_circle-plus.svg) no-repeat center/contain;
}

.p-select__buttons {
  margin-top: 1.6875rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-select__buttons {
    flex-direction: row;
    gap: 2.5rem;
  }
}

.p-slider__box {
  width: 100%;
}

.p-slider .swiper-slide {
  border-bottom-left-radius: 4.375rem;
  overflow: hidden;
}

.p-slider .swiper-slide img {
  aspect-ratio: 437/413;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 768px) {
  .p-slider .swiper-slide img {
    aspect-ratio: 1172/978;
  }
}

.p-slider2 .swiper-button-next,
.p-slider2 .swiper-button-prev {
  z-index: 2;
  width: 3rem;
  height: 3rem;
}

.p-slider2 .swiper-button-next::after {
  background: url(../images/common/icon_arrow.svg) no-repeat center/contain;
  width: 2.1875rem;
  height: 0.625rem;
}

.p-slider2 .swiper-button-prev::after {
  background: url(../images/common/icon_arrow.svg) no-repeat center/contain;
  width: 2.1875rem;
  height: 0.625rem;
  transform: scale(-1, 1);
}

.p-slider3 .swiper-button-next {
  right: -1.25rem;
}

.p-slider3 .swiper-button-prev {
  left: -1.25rem;
}

.p-slider3 .swiper-button-next,
.p-slider3 .swiper-button-prev {
  z-index: 2;
  width: 3rem;
  height: 3rem;
}

.p-slider3 .swiper-button-next::after {
  background: url(../images/common/icon_arrow.svg) no-repeat center/contain;
  width: 2.1875rem;
  height: 0.625rem;
}

.p-slider3 .swiper-button-prev::after {
  background: url(../images/common/icon_arrow.svg) no-repeat center/contain;
  width: 2.1875rem;
  height: 0.625rem;
  transform: scale(-1, 1);
}

.p-studio__content {
  position: relative;
}

.p-studio__swiper {
  margin-top: 3.125rem;
  overflow-x: clip;
}

.p-sub-accordion__content {
  display: none;
}

.p-sub-items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.625rem;
  padding-left: 1.875rem;
}

.p-sub-items__item:nth-child(n+2) {
  margin-top: 2rem;
}

.p-sub-items2 {
  display: grid;
  gap: 1.875rem;
}
@media screen and (min-width: 768px) {
  .p-sub-items2 {
    grid-template-columns: repeat(2, 1fr);
  }
}

.p-top-campaign__inner {
  background: linear-gradient(transparent 0%, transparent 7%, #fff 7%);
  border-bottom-left-radius: 5rem;
  padding-bottom: 5rem;
}
@media screen and (min-width: 768px) {
  .p-top-campaign__inner {
    background: linear-gradient(transparent 0%, transparent 17%, #fff 17%);
    padding: 4.75rem 0 5rem;
  }
}

.p-top-campaign__content {
  margin-top: 2.5rem;
}
@media screen and (min-width: 768px) {
  .p-top-campaign__content {
    padding: 0 3.75rem;
  }
}

.p-top-campaign__swiper {
  overflow: hidden;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-top-campaign__swiper {
    padding: 1rem;
  }
}
.p-top-contact {
  text-align: center;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 2.0714285714;
  letter-spacing: 0.01em;
}

.p-top-contact__inner {
  background: linear-gradient(transparent 0%, transparent 8%, #fff 8%);
  border-bottom-left-radius: 2.5rem;
  padding-bottom: 2.5rem;
  margin: auto 1rem;
    width: calc(100% - 2rem);
}
@media screen and (min-width: 768px) {
  .p-top-contact__inner {
    background: linear-gradient(transparent 0%, transparent 17%, #fff 17%);
    border-bottom-left-radius: 5rem;
    padding: 4.75rem 0 5rem;
    margin: auto;
  }
}

.p-top-contact__head-text {
  margin-top: 3.4375rem;
}

.p-top-contact__buttons {
  margin-top: 2rem;
}

.p-top-contact__info {
  margin-top: 3rem;
}

.p-top-menu {
  position: relative;
  background-color: #fff;
}

.p-top-news {
  background-color: #fff;
  padding: 5rem 0 5rem;
}
@media screen and (min-width: 768px) {
  .p-top-news {
    padding: 7.5rem 3.75rem 6.25rem;
  }
}

.p-top-plan__inner {
  background: linear-gradient(transparent 0%, transparent 5%, #fff 5%);
  padding-bottom: 5rem;
  border-bottom-left-radius: 5rem;
}
@media screen and (min-width: 768px) {
  .p-top-plan__inner {
    border-bottom-right-radius: 5rem;
    border-bottom-left-radius: 0;
    padding: 4.75rem 0 5rem;
    background: linear-gradient(transparent 0%, transparent 15%, #fff 15%);
  }
}

.p-top-plan__cards {
  margin-top: 3.125rem;
}
@media screen and (min-width: 768px) {
  .p-top-plan__cards {
    padding: 0 3.75rem;
  }
}

.p-top-reason {
  background-color: #fff;
  padding: 6.25rem 0;
}
@media screen and (min-width: 768px) {
  .p-top-reason {
    padding: 6.25rem 7.8125rem;
  }
}

.p-top-reason__title {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 2.5rem;
  text-align: center;
}

.p-top-reason__main {
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.75;
  letter-spacing: 0.01em;
  text-align: center;
}

.p-top-reason__main-img {
  width: 12.3125rem;
}

.p-top-reason__main-img img {
  aspect-ratio: 197/97;
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.p-top-reason__sub {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.7142857143;
  letter-spacing: 0.01em;
  display: block;
  margin-right: -1.25rem;
  margin-left: -1.25rem;
}
@media screen and (min-width: 768px) {
  .p-top-reason__sub {
    margin: 0;
  }
}

.p-top-reason__cards {
  margin-top: 4.375rem;
}

.p-top-reason__btn {
  margin-top: 3.75rem;
  text-align: center;
}

.p-top-reason__title:nth-child(n+2) {
  margin-top: 6.25rem;
}

.p-top-reason__studio-img {
  margin-top: 3.75rem;
  border-bottom-left-radius: 5rem;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .p-top-reason__studio-img {
    margin-right: auto;
    margin-left: auto;
    max-width: 50rem;
  }
}

.p-top-reason__studio-img img {
  aspect-ratio: 800/533;
  display: block;
  width: 100%;
  max-width: 50rem;
  height: 100%;
}

.p-top-reason__info {
  width: 90%;
  margin-top: 1.25rem;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .p-top-reason__info {
    padding: 1.25rem;
    background-color: #fff;
    width: 36.7777777778%;
    margin-top: -5.375rem;
    margin-right: 5rem;
    margin-left: auto;
    position: relative;
  }
}

.p-top-reason__info-title h2 {
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.75;
  letter-spacing: 0.01em;
  text-align: left;
}

.p-top-reason__info-text {
  margin-top: 1.25rem;
}

.p-top-reason__info-btn {
  margin-top: 1.25rem;
  text-align: center;
}

.p-top-reason__landscape-img {
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-top-reason__landscape-img {
    margin-top: -2.5rem;
  }
}

.p-top-reason__landscape-img img {
  aspect-ratio: 422/298;
  object-fit: contain;
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 768px) {
  .p-top-reason__landscape-img img {
    aspect-ratio: 900/310;
  }
}

.p-top-record {
  background-color: #fff;
  padding: 4.375rem 0;
}
@media screen and (min-width: 768px) {
  .p-top-record {
    padding: 1.25rem 0 6.25rem;
  }
}

.p-top-record__img-up {
  margin-right: -1.6875rem;
  margin-left: -1.6875rem;
}
@media screen and (min-width: 768px) {
  .p-top-record__img-up {
    width: 86.9166666667%;
    margin-left: auto;
    margin-right: 0;
    transform: translateY(5rem);
  }
}

.p-top-record__img-up img {
  /* aspect-ratio: 450/334; */
  object-fit: contain;
  width: 100%;
  height: 100%;
}
/* @media screen and (min-width: 768px) {
  .p-top-record__img-up.img-up-1 img {
    aspect-ratio: 645/430;
  }
  .p-top-record__img-up.img-up-2 img {
    aspect-ratio: 127/190;
  }
  .p-top-record__img-up.img-up-3 img {
    aspect-ratio: 213/319;
  }
} */

.p-top-record__text-box {
  max-width: 25.3125rem;
  margin-top: 1.25rem;
  width: 100%;
  background-color: #fff;
  box-shadow: 0.0625rem 0.0625rem 2.375rem rgb(0 0 0 / 12%);
  padding: 2.5rem 2.1875rem;
  position: relative;
  z-index: 2;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .p-top-record__text-box {
    margin: auto;
  }
}

.p-top-record__text-title {
  font-size: 1.1875rem;
  letter-spacing: 0.01em;
}
@media screen and (min-width: 768px) {
  .p-top-record__text-title {
    font-size: 1.1875rem;
  }
}

.p-top-record__text {
  margin-top: 1.875rem;
}
@media screen and (min-width: 768px) {
  .p-top-record__text {
    margin-top: 1.875rem;
  }
}

.p-top-record__text + .p-top-record__text {
  margin-top: 1.25rem;
}

.p-top-record__text-box img {
  position: absolute;
  top: 20%;
  right: -6.25rem;
  transform: translateX(-50%);
  width: 9.125rem;
  height: 6.5rem;
}
@media screen and (min-width: 768px) {
  .p-top-record__text-box img {
    right: -14.375rem;
    width: 12.0625rem;
    height: 5.625rem;
  }
}

.p-top-record__img-bottom {
  margin-top: 1.875rem;
}
@media screen and (min-width: 768px) {
  .p-top-record__img-bottom {
    width: 81.3333333333%;
    margin-top: -11.875rem;
    margin-left: 3.75rem;
    position: relative;
    z-index: 1;
  }
}

.p-top-record__img-bottom img {
  /* aspect-ratio: 450/375; */
  object-fit: contain;
  width: 100%;
  height: 100%;
}
/* @media screen and (min-width: 768px) {
  .p-top-record__img-bottom img {
    aspect-ratio: 976/579;
  }
} */

.u-cancel {
  text-decoration: line-through;
}

.u-desktop {
  display: none;
}
@media screen and (min-width: 768px) {
  .u-desktop {
    display: block;
  }
  .p-top-menu {
    height: 100px;
  }
  .p-top-menu.is-fixed .sub-header{
    position: fixed;
    top: 0;
    z-index: 999;
    width: 100%;
  }
/* 上から */
  .is-fixed .sub-header{
    animation-name:fadeDownAnime;
    animation-duration:0.5s;
    animation-fill-mode:forwards;
    opacity:0;
  }
  
  @keyframes fadeDownAnime{
    from {
      opacity: 0;
    transform: translateY(-100px);
    }
  
    to {
      opacity: 1;
    transform: translateY(0);
    }
  }
}
@media screen and (max-width: 768px) {
.p-top-menu{
  position: fixed;
  top: 0;
  z-index: 999;
  width: 100%;
}
}
.sub-header{
  position: fixed;
  width: 100%;
  z-index: 9999;
  top: 0;
}
.js-header .sub-header{position: static;}
.js-header.is-fixed .sub-header{/* position: fixed; */}

.u-ml {
  margin-left: 0.875rem;
}

@media screen and (min-width: 768px) {
  .u-mobile {
    display: none;
  }
}

.u-red-bold {
  font-weight: 600;
  color: #FE797A;
}

.u-red {
  color: #bb2828;
}

.c-link{
  font-weight: 600;
}

/* フッター */



@media screen and (min-width: 768px) {
  .p-footer-link__content {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      width: 100%;
      margin-top: 2rem;
  }
}
@media screen and (min-width: 768px) {
  .p-footer-link__corporate {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      width: 35.7954545455%;
  }
}
.p-footer-link__content .c-link__title h2 {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-family: YuMincho, "Yu Mincho", serif;
  color: #f3f5f5;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  .p-footer-link__content .c-link__img-wrap {
      margin-top: 0;
      margin-left: 3.125rem;
      text-align: center;
  }
}
.p-footer-link__content .c-link__img {
  max-width: 10.625rem;
  margin: auto;
}
.p-footer-link__content .c-link__img img {
  aspect-ratio: 170 / 49;
  -o-object-fit: contain;
  object-fit: contain;
  width: 100%;
}
.p-footer-link__content .c-link__text {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #fff;
  font-family: YuMincho, "Yu Mincho", serif;
}
.p-footer-link__content .c-link__col2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.625rem;
}
.p-footer-link__content .p-footer-link__brand {
  margin-top: 1.875rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-footer-link__content .p-footer-link__brand {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      /* margin-top: 0; */
  }
}
.p-footer-link__content .c-link__col2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.625rem;
}

.p-footer-link__corporate{
  text-align: center;
  margin-top: 1.875rem;
}

.p-footer-nav__link{
  border-bottom: 2px solid #fff;
}

/* 成人式の振袖レンタル-flow */
    .l-inner-accordion {
  width: 100%;
  padding-left: 0;
  margin-right: auto;
  margin-left: auto;
  max-width: 1100px;
}

.p-item2__title.flow-toggle {
  cursor: pointer;
  color: #8a9191;
  transition: color 0.3s ease-in-out;
  display: flex;
  align-items: center;
}

.p-item2__title.flow-toggle:hover {
  color: #1fbe9f;
}

.flow-accordion {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.6s ease-in-out;
  z-index: 0;
  position: relative;
}

.flow-accordion.open {
  max-height: none;
}


.flow-toggle.flow-accordion-open {
  color: #1fbe9f;
}

.flow-toggle .flow-arrow {
  width: 20px;
  height: 20px;
  background-image: url('https://enlace-studio.com/wp-content/themes/enlace/assets/images/down-arrow.svg');
  background-repeat: no-repeat;
  background-size: contain;
  transition: transform 0.5s ease-in-out;
  margin-left: 10px;
  display: inline-block;
  transform: rotate(0deg);
}

.flow-toggle.flow-accordion-open .flow-arrow {
  transform: rotate(-180deg);
  transition: transform 0.5s ease-in-out;
}

.p-flow__items
 {
    padding-top: 1rem;
    padding-left: 1.75rem;
    border-left: 1px solid;
    margin-left: 3rem;
    position: relative;
    margin-right: 3rem;
}

@media screen and (max-width: 767px) {
  .l-flow {
    margin-left: 1.1rem;
  }

  .flow-toggle .flow-arrow {
  width: 13px;
  height: 13px;
}

.p-info__tel a {
    font-size: 1.8rem;
    line-height: 1.6363636364;
    /* letter-spacing: 0.075em; */
    font-weight: 600;
}
}

/* 成人式の振袖レンタル-flow end*/


/* WP投稿追加2025 */


.p-top-campaign__inner {
    padding-bottom: 5rem;
    border-bottom-left-radius: 5rem;
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(7%, transparent), color-stop(7%, #fff));
    background: linear-gradient(transparent 0%, transparent 7%, #fff 7%);
  }
  .p-top-campaign__content {
    margin-top: 2.5rem;
  }
  .p-top-campaign__swiper {
    position: relative;
    overflow: hidden;
  }
  .p-top-contact {
    font-weight: 500;
    font-size: 0.875rem;
    line-height: 2.0714285714;
    letter-spacing: 0.01em;
    text-align: center;
  }
  
  .p-top-contact__inner {
    width: calc(100% - 2rem);
    margin: auto 1rem;
    padding-bottom: 2.5rem;
    border-bottom-left-radius: 2.5rem;
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(8%, transparent), color-stop(8%, #fff));
    background: linear-gradient(transparent 0%, transparent 8%, #fff 8%);
  }
  .p-top-contact__head-text {
    margin-top: 3.4375rem;
  }
  
  .p-top-contact__buttons {
    margin-top: 2rem;
  }
  
  .p-top-contact__info {
    margin-top: 3rem;
  }
  
  .p-top-menu {
    position: relative;
    background-color: #fff;
  }
  
  .p-top-news {
    padding: 5rem 0 5rem;
    background-color: #fff;
  }
  .p-top-plan__inner {
    padding-bottom: 5rem;
    border-bottom-left-radius: 5rem;
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(5%, transparent), color-stop(5%, #fff));
    background: linear-gradient(transparent 0%, transparent 5%, #fff 5%);
  }
  .p-top-plan__cards {
    margin-top: 3.125rem;
  }
  .p-top-reason {
    padding: 6.25rem 0;
    background-color: #fff;
  }
  .p-top-reason__title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 2.5rem;
    text-align: center;
  }
  
  .p-top-reason__main {
    font-weight: 600;
    font-size: 1.25rem;
    line-height: 1.75;
    letter-spacing: 0.01em;
    text-align: center;
  }
  
  .p-top-reason__main-img {
    width: 12.3125rem;
  }
  
  .p-top-reason__main-img img {
    aspect-ratio: 197/97;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
  }
  
  .p-top-reason__sub {
    display: block;
    margin-right: -1.25rem;
    margin-left: -1.25rem;
    font-weight: 500;
    font-size: 0.875rem;
    line-height: 1.7142857143;
    letter-spacing: 0.01em;
  }
  .p-top-reason__cards {
    margin-top: 4.375rem;
  }
  
  .p-top-reason__btn {
    margin-top: 3.75rem;
    text-align: center;
  }
  
  .p-top-reason__title:nth-child(n+2) {
    margin-top: 6.25rem;
  }
  
  .p-top-reason__studio-img {
    margin-top: 3.75rem;
    overflow: hidden;
    border-bottom-left-radius: 5rem;
  }
  .p-top-reason__studio-img img {
    display: block;
    aspect-ratio: 800/533;
    width: 100%;
    max-width: 50rem;
    height: 100%;
  }
  
  .p-top-reason__info {
    width: 90%;
    margin-top: 1.25rem;
    margin-right: auto;
    margin-left: auto;
  }
  .p-top-reason__info-title h2 {
    font-weight: 600;
    font-size: 1.25rem;
    line-height: 1.75;
    letter-spacing: 0.01em;
    text-align: left;
  }
  
  .p-top-reason__info-text {
    margin-top: 1.25rem;
  }
  
  .p-top-reason__info-btn {
    margin-top: 1.25rem;
    text-align: center;
  }
  
  .p-top-reason__landscape-img {
    margin-top: 1.25rem;
  }
  .p-top-reason__landscape-img img {
    aspect-ratio: 422/298;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
  }
  .p-top-record {
    padding: 4.375rem 0;
    background-color: #fff;
  }
  .p-top-record__img-up {
    margin-right: -1.6875rem;
    margin-left: -1.6875rem;
  }
  .p-top-record__img-up img {
    width: 100%;
    height: 100%;
    /* aspect-ratio: 450/334; */
    -o-object-fit: contain;
       object-fit: contain;
  }
  
  /* @media screen and (min-width: 768px) {
    .p-top-record__img-up.img-up-1 img {
      aspect-ratio: 645/430;
    }
    .p-top-record__img-up.img-up-2 img {
      aspect-ratio: 127/190;
    }
    .p-top-record__img-up.img-up-3 img {
      aspect-ratio: 213/319;
    }
  } */
  .p-top-record__text-box {
    z-index: 2;
    position: relative;
    width: 100%;
    max-width: 25.3125rem;
    margin-top: 1.25rem;
    padding: 2.5rem 2.1875rem;
    background-color: #fff;
    -webkit-box-shadow: 0.0625rem 0.0625rem 2.375rem rgba(0, 0, 0, .12);
            box-shadow: 0.0625rem 0.0625rem 2.375rem rgba(0, 0, 0, .12);
    font-weight: 500;
    font-size: 0.875rem;
    line-height: 2;
  }
  .p-top-record__text-title {
    font-size: 1.1875rem;
    letter-spacing: 0.01em;
  }
  .p-top-record__text {
    margin-top: 1.875rem;
  }
  .p-top-record__text + .p-top-record__text {
    margin-top: 1.25rem;
  }
  
  .p-top-record__text-box img {
    position: absolute;
    top: 20%;
    right: -6.25rem;
    width: 9.125rem;
    height: 6.5rem;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .p-top-record__img-bottom {
    margin-top: 1.875rem;
  }
  .p-top-record__img-bottom img {
    width: 100%;
    height: 100%;
    /* aspect-ratio: 450/375; */
    -o-object-fit: contain;
       object-fit: contain;
  }
  
  /* @media screen and (min-width: 768px) {
    .p-top-record__img-bottom img {
      aspect-ratio: 976/579;
    }
  } */
  .u-cancel {
    text-decoration: line-through;
  }
  
  .u-desktop {
    display: none;
  }
  .sub-header {
    z-index: 9999;
    position: fixed;
    top: 0;
    width: 100%;
  }
  
  .js-header .sub-header {
    position: static;
  }
  
  .js-header.is-fixed .sub-header { /* position: fixed; */ }
  
  .u-ml {
    margin-left: 0.875rem;
  }
  .u-red-bold {
    color: #FE797A;
    font-weight: 600;
  }
  
  .u-red {
    color: #bb2828;
  }
  
  .c-link {
    font-weight: 600;
  }
  
  /* フッター */
  .p-footer-link__content .c-link__title h2 {
    color: #f3f5f5;
    font-weight: 400;
    font-size: 0.875rem;
    line-height: 1.5;
    font-family: YuMincho, "Yu Mincho", serif;
    letter-spacing: 0.05em;
    text-transform: uppercase;
  }
  .p-footer-link__content .c-link__img {
    max-width: 10.625rem;
    margin: auto;
  }
  
  .p-footer-link__content .c-link__img img {
    -o-object-fit: contain;
    aspect-ratio: 170/49;
    width: 100%;
    object-fit: contain;
  }
  
  .p-footer-link__content .c-link__text {
    color: #fff;
    font-weight: 400;
    font-size: 12px;
    line-height: 1.5;
    font-family: YuMincho, "Yu Mincho", serif;
    letter-spacing: 0.05em;
  }
  
  .p-footer-link__content .c-link__col2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.625rem;
  }
  
  .p-footer-link__content .p-footer-link__brand {
    margin-top: 1.875rem;
    text-align: center;
  }
  .p-footer-link__content .c-link__col2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.625rem;
  }
  
  .p-footer-link__corporate {
    margin-top: 1.875rem;
    text-align: center;
  }
  
  .p-footer-nav__link {
    border-bottom: 2px solid #fff;
  }
  
  .p-archive {
    margin-top: 6.25rem;
  }
  
  .p-archive__contents {
    display: grid;
    gap: 2.5rem;
  }
  
  .p-aside__content {
    padding-top: 1.25rem;
    border-top: 0.0625rem solid #c8d6d6;
  }
  
  .p-aside__title {
    color: #889898;
    font-weight: 700;
    font-size: 1.25rem;
    text-transform: capitalize;
  }
  
  .p-aside__archive {
    margin-top: 1.25rem;
  }
  
  .p-aside__archiveTitle {
    margin-top: 1.25rem;
    padding-bottom: 0.25rem;
    border-bottom: 0.0625rem solid #889898;
    cursor: pointer;
  }
  
  select.p-aside__archiveSelect {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    width: 100%;
    border: 1px solid #c8d6d6;
    background-color: #fff;
    text-align: center;
  }
  
  .p-aside__archiveLists {
    display: none;
    margin-top: 1.25rem;
    padding-left: 1.25rem;
  }
  
  .p-aside__archiveLists.is-active {
    display: block;
  }
  
  .p-aside__content + .p-aside__content {
    margin-top: 2.5rem;
  }
  
  .p-aside__posts {
    margin-top: 1.25rem;
    padding-left: 1.25rem;
  }
  
  .p-aside__post {
    position: relative;
  }
  
  .p-aside__post::before {
    position: absolute;
    top: 50%;
    left: -0.75rem;
    width: 0.5rem;
    height: 0.125rem;
    translate: 0 -50%;
    background-color: #889898;
    content: "";
  }
  
  .p-aside__selectBox {
    position: relative;
  }
  
  .p-aside__selectBox::after {
    position: absolute;
    top: 50%;
    right: 0.625rem;
    width: 0.625rem;
    height: 0.5rem;
    translate: 0 -50%;
    background-color: #889898;
    content: "";
    -webkit-clip-path: polygon(0 0, 50% 100%, 100% 0);
            clip-path: polygon(0 0, 50% 100%, 100% 0);
  }
  
  .p-aside__archiveSelect {
    cursor: pointer;
  }
  
  .p-single {
    margin-top: 6.25rem;
  }
  
  .p-single__meta {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.25rem;
  }
  
  .p-single__metaItem--postTitle {
    min-width: 7.5rem;
    border: 1px solid #889898;
    border-radius: 2.5rem;
    color: #889898;
    font-weight: 400;
    font-size: 0.875rem;
    line-height: 1.6;
    text-align: center;
  }
  
  .p-single__title {
    margin-top: 1.25rem;
    font-size: 1.6rem;
    line-height: 1.8;
  }
  @media screen and (max-width: 768px) {
    .p-single__title {
      font-size: 1.4rem;
    }
  }
  .p-single__contentBox {
    margin-top: 1.25rem;
  }
  
  .p-single__contents {
    display: grid;
    gap: 2.5rem;
  }
  
  .p-single__content {
    padding: 1.25rem;
    background-color: #fff;
  }
  
  .p-single__content h2,
  .p-single__content h3,
  .p-single__content h4,
  .p-single__content h5,
  .p-single__content h6 {
    margin-top: 2.5rem;
  }
  
  .p-single__content p,
  .p-single__content figure {
    margin-top: 1.25rem;
  }
  
  .p-single__content ul {
    margin-top: 1.25rem;
    padding-left: 1.25rem;
    list-style: disc;
  }
  
  .p-single__pagination {
    display: grid;
    margin: 3.75rem 0;
    /* padding: 0.6rem 0; */
    /* gap: .6rem; */
    border-top: 1px solid #d7e1e1;
    border-bottom: 1px solid #d7e1e1;
  }
  
  .p-single__paginationLink {
    display: grid;
    position: relative;
    grid-template-columns: 80px 1fr;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.25rem;
    padding: 0.6rem 1rem 0.6rem 0.6rem;
  }
  @media screen and (max-width: 768px) {
    .p-single__paginationItem--prev .p-single__paginationLink {
      /* gap: 0; */
      border-bottom: 1px solid #d7e1e1;
    }
    .p-single__paginationItem--prev{
      /* border-right: 1px solid #d7e1e1; */
    }
  }
  @media screen and (min-width: 768px) {
  .p-single__paginationItem--prev{
    /* border-right: 1px solid #d7e1e1; */
  }
  .p-single__paginationItem--next{
    border-left: 1px solid #d7e1e1;
  }
  }
  .p-single__paginationItem--next .p-single__paginationLink {
    grid-template-columns: 1fr 80px;
    padding: 0.6rem 0.6rem 0.6rem 1rem;
  }
  
  .p-single__paginationItem--prev .p-single__paginationLink::before {
    position: absolute;
    top: 50%;
    left: -0.75rem;
    width: 0.625rem;
    height: 0.625rem;
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
    translate: 0 -50%;
    border-right: 1px solid #889898;
    border-bottom: 1px solid #889898;
    content: "";
  }
  
  .p-single__paginationItem--next .p-single__paginationLink::before {
    position: absolute;
    top: 50%;
    right: -0.75rem;
    width: 0.625rem;
    height: 0.625rem;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
    translate: 0 -50%;
    border-right: 1px solid #889898;
    border-bottom: 1px solid #889898;
    content: "";
  }
  
  .p-single__paginationThumb img {
    aspect-ratio: 1/1;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  
  .p-single__paginationItem--next .p-single__paginationThumb {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  
  .p-single__content .p-single__paginationTitle {
    margin: auto;
    font-weight: 400;
    /* font-size: .9rem; */
  }
  
  .p-news-single__head p {
    font-size: 1.6rem;
    line-height: 1.2;
    font-family: "adobe-handwriting-ernie", sans-serif;
    /* text-transform: capitalize; */
    color: #889898;
}

  .p-single__btn {
    margin-top: 3.75rem;
    text-align: center;
  }
  
  .p-related {
    margin-top: 3.75rem;
  }
  
  .p-related__inner {
    max-width: 62.5rem;
    margin-inline: auto;
    padding-inline: 1.25rem;
  }
  
  .p-related__items {
    margin-top: 1.25rem;
  }
  
  .p-items.--plan {
    display: grid;
    gap: 1.25rem;
  }
  
  .p-items.--plan .p-items__item:nth-child(n+2) {
    margin-top: 0;
  }
  
  @media (max-width: 450px) {
    html {
      font-size: 3.5555555556vw;
    }
  }
  
  @media screen and (min-width: 768px) {
    html {
      font-size: 1.28vw;
    }
    a,
    button {
      -webkit-transition: 0.3s;
      transition: 0.3s;
    }
    a:hover,
    button:hover {
      cursor: pointer;
      opacity: 0.7;
    }
    .l-costume {
      margin-top: 6.25rem;
    }
    .l-header {
      z-index: 9999;
      top: 0;
      width: 100%;
      height: 6.25rem;
    }
    .l-inner-md {
      max-width: 1050px;
      padding-right: 1.5625rem;
      padding-left: 1.5625rem;
    }
    .l-inner-sm {
      max-width: 1100px;
      padding-right: 1.5625rem;
      padding-left: 1.5625rem;
    }
    .l-inner {
      max-width: 1250px;
      padding-right: 1.5625rem;
      padding-left: 1.5625rem;
    }
    .l-instagram {
      margin-top: 5rem;
    }
    .l-top-campaign {
      margin-top: 3.75rem;
    }
    .l-top-contact {
      margin-top: 5rem;
    }
    .c-btn {
      max-width: 23.5rem;
    }
    .c-btn2 {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      min-width: 16.25rem;
      gap: 0.625rem;
    }
    .c-btn2.c-btn2--mail {
      font-size: 1.25rem;
    }
    .c-btn2::before {
      -webkit-box-flex: 0;
          -ms-flex-positive: 0;
              flex-grow: 0;
    }
    .c-btn3 {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      min-width: 8.6875rem;
      gap: 0.3125rem;
    }
    .c-card:hover img {
      -webkit-transform: scale(1.1);
              transform: scale(1.1);
    }
    .c-card__body {
      margin-top: 1.25rem;
      padding: 0;
      border-radius: 0;
      background: none;
      -webkit-box-shadow: none;
              box-shadow: none;
    }
    .c-card__text {
      font-size: 1.125rem;
    }
    .c-card__btn {
      border-radius: 50%;
      background-color: #fff;
      -webkit-box-shadow: 0.0625rem 0.0625rem 0.25rem rgba(0, 0, 0, .4);
              box-shadow: 0.0625rem 0.0625rem 0.25rem rgba(0, 0, 0, .4);
    }
    .c-card2__title {
      -webkit-box-flex: 1;
          -ms-flex-positive: 1;
              flex-grow: 1;
      font-size: 1rem;
    }
    .c-card2__text {
      font-size: 0.875rem;
    }
    .c-input__col {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
    }
    .c-item {
      display: grid;
      grid-template-columns: 80px 1fr;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      max-width: 100%;
      margin-inline: 0;
      gap: 2.375rem;
      font-size: 1.125rem;
    }
    .c-item__mainBox {
      margin-top: 0;
    }
    .c-sns {
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: start;
      gap: 0.625rem;
    }
    .c-sns__link {
      width: 2.1875rem;
    }
    .c-title4__en {
      font-size: 2.9375rem;
    }
    .p-access__info-box {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      margin-top: 4.375rem;
      gap: 0.625rem;
    }
    .p-access__list {
      font-size: 1.125rem;
    }
    .p-access__root {
      grid-template-columns: repeat(2, 1fr);
      max-width: 41.875rem;
      margin-top: 0;
    }
    .p-access__root dt,
    .p-access__root dd {
      padding: 0 1.25rem;
      font-size: 1.125rem;
    }
    .p-access__illust-map {
      margin-top: 5rem;
    }
    .p-album-media__content {
      grid-template-columns: 1fr 1fr;
    }
    .p-anchor-link__items {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
    }
    .p-anchor-link__item a {
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      min-width: 5.625rem;
    }
    .p-cards-memory {
      grid-template-columns: repeat(3, 1fr);
      -webkit-column-gap: 1.875rem;
         -moz-column-gap: 1.875rem;
              column-gap: 1.875rem;
      row-gap: 3.125rem;
    }
    .p-cards {
      grid-template-columns: repeat(4, 1fr);
      -webkit-column-gap: 1.5rem;
         -moz-column-gap: 1.5rem;
              column-gap: 1.5rem;
      row-gap: 3.875rem;
    }
    .p-cards2 {
      grid-template-columns: repeat(2, 1fr);
    }
    .p-cards3 {
      grid-template-columns: repeat(3, 1fr);
      max-width: 100%;
      margin-right: 0;
      margin-left: 0;
    }
    .p-cards4__card {
      width: 48.7%;
    }
    .p-cards4__card:nth-child(odd) {
      float: left;
      clear: left;
    }
    .p-cards4__card:nth-child(even) {
      float: right;
      clear: right;
    }
    .p-cards4__card:nth-child(2) {
      margin-top: 0;
    }
    .p-cards4__card:nth-child(n+3) {
      margin-top: 1.625rem;
    }
    .p-cards5 {
      grid-template-columns: 1fr 1fr;
    }
    .p-cards6 {
      grid-template-columns: repeat(2, 1fr);
      max-width: 100%;
      margin-right: 0;
      margin-left: 0;
    }
    .p-costume__wrap {
      margin-top: 3.375rem;
      padding: 4.5625rem 0 6.25rem;
    }
    .p-costume__text {
      font-size: 1.5rem;
    }
    .p-flow__items {
      padding-top: 1.25rem;
    }
    .p-footer-company__contents {
      grid-template-columns: 1fr 1fr;
    }
    .p-footer-company__content {
      gap: 3rem;
    }
    .p-footer-company__contact {
      gap: 1rem;
    }
    .p-footer-company__contact li {
      font-size: 0.875rem;
    }
    .p-footer-company__copy-light {
      margin-top: 0;
      text-align: right;
    }
    .p-footer {
      padding-top: 3.75rem;
      border-top: 1px solid #889898;
    }
    .p-form__content {
      grid-template-columns: 18.75rem 1fr;
      -webkit-column-gap: 1.25rem;
         -moz-column-gap: 1.25rem;
              column-gap: 1.25rem;
      row-gap: 0.625rem;
    }
    .p-form__text-wrap {
      max-width: 18.75rem;
    }
    .p-form__btn p {
      display: block;
    }
    .p-gallery__content {
      padding: 6.25rem 3.125rem 3.75rem;
    }
    .p-gallery__items {
      grid-template-columns: repeat(4, 1fr);
    }
    .p-group__company-logo::before {
      top: 50%;
      left: -7.5rem;
      -webkit-transform: translate(0, -50%);
              transform: translate(0, -50%);
    }
    .p-header-info {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      gap: 0.625rem;
    }
    .p-header__inner {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
    }
    .p-header__content {
      -webkit-box-align: end;
          -ms-flex-align: end;
              align-items: flex-end;
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: start;
      height: auto;
      margin-top: -1rem;
    }
    .p-header__icons {
      display: none;
    }
    .p-info__tel a {
      font-size: 2.75rem;
    }
    .p-info__btn a {
      min-width: 27.75rem;
      border-radius: 0;
    }
    .p-info__btn a::before {
      top: 38%;
    }
    .p-instagram__bg::before {
      background: url(../images/top/instagram_bg-pc.png) no-repeat center/contain;
    }
    .p-instagram__title {
      font-size: 2.5rem;
    }
    .p-instagram__images {
      grid-template-columns: repeat(4, 1fr);
      margin-top: 3.75rem;
      margin-right: 0;
      margin-left: 0;
    }
    .p-item2__plan {
      top: -1.875rem;
    }
    .p-item2__contact {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
    }
    .p-item3 {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      padding: 2.125rem 2.9375rem;
    }
    .p-item3__sale {
      font-size: 1.125rem;
    }
    .p-items2__item p {
      font-size: 15px;
    }
    .p-items2__item::before {
      top: 0;
      left: -4.25rem;
    }
    .p-items2__item::after {
      top: 0.875rem;
      left: -1.92rem;
    }
    .p-media {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
    }
    .p-media.p-media--rev {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
          -ms-flex-direction: row-reverse;
              flex-direction: row-reverse;
    }
    .p-media__img {
      -ms-flex-negative: 0;
          flex-shrink: 0;
      width: 52.7%;
    }
    .p-media__img2 {
      -ms-flex-negative: 0;
          flex-shrink: 0;
      width: 52.7%;
    }
    .p-media__body {
      width: 35.3%;
      margin: auto;
    }
    .p-media__img-bg {
      width: 90%;
      margin-right: auto;
      margin-left: auto;
    }
    .p-media__img-bg img {
      aspect-ratio: 900/360;
    }
    .p-media2 {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
    }
    .p-media2__img {
      width: 32.671957672%;
    }
    .p-media3 {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      gap: 0;
    }
    .p-media3__body {
      width: 37.5%;
      margin: auto;
    }
    .p-media3__img {
      width: 46.875%;
    }
    .p-mv__content {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
    }
    .p-mv__body {
      width: 23.4895833333%;
      margin: auto;
    }
    .p-mv__img-sub {
      position: static;
      width: auto;
      -webkit-transform: translateX(0);
              transform: translateX(0);
    }
    .p-mv__text-wrap {
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      max-width: 21.125rem;
      margin: -1.5rem auto 0;
      padding: 0;
      gap: 1.25rem;
    }
    .p-mv__logo {
      width: 6.1875rem;
      margin-top: 0;
    }
    .p-mv__text {
      font-size: 1.5rem;
    }
    .p-mv__swiper {
      width: 61.0416666667%;
    }
    .p-mv__img-text {
      bottom: 1.875rem;
      left: 3.125rem;
      width: 16.8125rem;
      height: 14.625rem;
    }
    .p-nav-pc {
      display: block;
    }
    .p-news-list {
      grid-template-columns: repeat(2, 1fr);
      gap: 4.75rem;
    }
    .p-news-list__box::before,
    .p-news-list__box2::before {
      top: -2.5rem;
      width: 21.875rem;
      height: 20.375rem;
    }
    .p-news-list__box2::before {
      top: -2.5rem;
      width: 21.875rem;
      height: 20.375rem;
    }
    .p-picture__content {
      max-width: 100%;
      margin: 0;
    }
    .p-plan-info__media + .p-plan-info__title,
    .p-plan-info__rental + .p-plan-info__title,
    .p-plan-info__special-option + .p-plan-info__title,
    .p-plan-info__text-option + .p-plan-info__title,
    .p-plan-info__sub + .p-plan-info__title,
    .p-plan-info__data + .p-plan-info__title {
      margin-top: 3.75rem;
    }
    .p-plan-items {
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: start;
    }
    .p-plan-items.p-plan-items--wrap {
      width: 90.4191616766%;
      margin-right: auto;
      margin-left: auto;
    }
    .p-plan-items.p-plan-items--bottom {
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: start;
    }
    .p-plan-items.p-plan-items--top {
      -webkit-box-align: end;
          -ms-flex-align: end;
              align-items: flex-end;
    }
    .p-reason-cards {
      grid-template-columns: repeat(3, 1fr);
    }
    .p-reason__cards {
      max-width: 100%;
    }
    .p-rental {
      grid-template-columns: 1fr 1fr;
      gap: 0;
    }
    .p-select__buttons {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      gap: 2.5rem;
    }
    .p-slider .swiper-slide img {
      aspect-ratio: 1172/978;
    }
    .p-sub-items2 {
      grid-template-columns: repeat(2, 1fr);
    }
    .p-top-campaign__inner {
      padding: 4.75rem 0 5rem;
      background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(17%, transparent), color-stop(17%, #fff));
      background: linear-gradient(transparent 0%, transparent 17%, #fff 17%);
    }
    .p-top-campaign__content {
      padding: 0 3.75rem;
    }
    .p-top-contact__inner {
      margin: auto;
      padding: 4.75rem 0 5rem;
      border-bottom-left-radius: 5rem;
      background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(17%, transparent), color-stop(17%, #fff));
      background: linear-gradient(transparent 0%, transparent 17%, #fff 17%);
    }
    .p-top-news {
      padding: 7.5rem 3.75rem 6.25rem;
    }
    .p-top-plan__inner {
      padding: 4.75rem 0 5rem;
      border-bottom-right-radius: 5rem;
      border-bottom-left-radius: 0;
      background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(15%, transparent), color-stop(15%, #fff));
      background: linear-gradient(transparent 0%, transparent 15%, #fff 15%);
    }
    .p-top-plan__cards {
      padding: 0 3.75rem;
    }
    .p-top-reason {
      padding: 6.25rem 7.8125rem;
    }
    .p-top-reason__sub {
      margin: 0;
    }
    .p-top-reason__studio-img {
      max-width: 50rem;
      margin-right: auto;
      margin-left: auto;
    }
    .p-top-reason__info {
      position: relative;
      width: 36.7777777778%;
      margin-top: -5.375rem;
      margin-right: 5rem;
      margin-left: auto;
      padding: 1.25rem;
      background-color: #fff;
    }
    .p-top-reason__landscape-img {
      margin-top: -2.5rem;
    }
    .p-top-reason__landscape-img img {
      aspect-ratio: 900/310;
    }
    .p-top-record {
      padding: 1.25rem 0 6.25rem;
    }
    .p-top-record__img-up {
      width: 86.9166666667%;
      margin-right: 0;
      margin-left: auto;
      -webkit-transform: translateY(5rem);
              transform: translateY(5rem);
    }
    .p-top-record__text-box {
      margin: auto;
    }
    .p-top-record__text-title {
      font-size: 1.1875rem;
    }
    .p-top-record__text {
      margin-top: 1.875rem;
    }
    .p-top-record__text-box img {
      right: -14.375rem;
      width: 12.0625rem;
      height: 5.625rem;
    }
    .p-top-record__img-bottom {
      z-index: 1;
      position: relative;
      width: 81.3333333333%;
      margin-top: -11.875rem;
      margin-left: 3.75rem;
    }
    .u-desktop {
      display: block;
    }
    .p-top-menu {
      height: 100px;
    }
    .p-top-menu.is-fixed .sub-header {
      z-index: 999;
      position: fixed;
      top: 0;
      width: 100%;
    }
    /* 上から */
    .is-fixed .sub-header {
      -webkit-animation-duration: 0.5s;
              animation-duration: 0.5s;
      -webkit-animation-fill-mode: forwards;
              animation-fill-mode: forwards;
      -webkit-animation-name: fadeDownAnime;
              animation-name: fadeDownAnime;
      opacity: 0;
    }
    @-webkit-keyframes fadeDownAnime {
      from {
        -webkit-transform: translateY(-100px);
                transform: translateY(-100px);
        opacity: 0;
      }
      to {
        -webkit-transform: translateY(0);
                transform: translateY(0);
        opacity: 1;
      }
    }
    @keyframes fadeDownAnime {
      from {
        -webkit-transform: translateY(-100px);
                transform: translateY(-100px);
        opacity: 0;
      }
      to {
        -webkit-transform: translateY(0);
                transform: translateY(0);
        opacity: 1;
      }
    }
    .u-mobile {
      display: none;
    }
    .p-footer-link__content {
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      justify-content: center;
      width: 100%;
      margin-top: 2rem;
    }
    .p-footer-link__corporate {
      -webkit-box-align: center;
      -ms-flex-align: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 35.7954545455%;
    }
    .p-footer-link__content .c-link__img-wrap {
      margin-top: 0;
      margin-left: 3.125rem;
      text-align: center;
    }
    .p-footer-link__content .p-footer-link__brand {
      -webkit-box-align: center;
      -ms-flex-align: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      align-items: center;
      justify-content: center;
      /* margin-top: 0; */
    }
    .p-archive__contents {
      grid-template-columns: 1fr 15rem;
      gap: 3.75rem;
    }
    .p-single__contents {
      grid-template-columns: 1fr 15rem;
      gap: 3.75rem;
    }
    .p-single__content {
      padding: 3.125rem;
    }
    .p-single__pagination {
      grid-template-columns: repeat(2, 1fr);
    }
    .p-single__paginationItem--prev .p-single__paginationLink::before {
      right: -.5rem;
    }
    .p-single__paginationItem--next .p-single__paginationLink::before {
      right: -.5rem;
    }
    .p-related {
      margin-top: 6.25rem;
    }
    .p-related__inner {
      padding-inline: 1.5625rem;
    }
    .p-related__items {
      margin-top: 2.5rem;
    }
    .p-items.--plan {
      grid-template-columns: repeat(2, 1fr);
    }
  }
  
  @media (min-width: 1250px) {
    html {
      font-size: 100%;
    }
  }
  
  @media (prefers-reduced-motion: reduce) {
    html:focus-within {
      scroll-behavior: auto;
    }
    *,
    *::before,
    *::after {
      -webkit-animation-duration: 0.01ms !important;
              animation-duration: 0.01ms !important;
      -webkit-animation-iteration-count: 1 !important;
              animation-iteration-count: 1 !important;
      scroll-behavior: auto !important;
      -webkit-transition-duration: 0.01ms !important;
              transition-duration: 0.01ms !important;
    }
    html:focus-within {
      scroll-behavior: auto;
    }
    *,
    *::before,
    *::after {
      -webkit-animation-duration: 0.01ms !important;
              animation-duration: 0.01ms !important;
      -webkit-animation-iteration-count: 1 !important;
              animation-iteration-count: 1 !important;
      scroll-behavior: auto !important;
      -webkit-transition-duration: 0.01ms !important;
              transition-duration: 0.01ms !important;
    }
  }
  
  @media only screen and (max-width: 768px) {
    .l-plan {
      padding-top: 90px;
    }
    .c-section-title {
      font-size: 1.4rem;
    }
  }
  
  @media screen and (max-width: 768px) {
    .p-accordion2 {
      padding: 1rem;
    }
    .p-accordion2__content {
      margin-top: 1rem;
    }
    .p-commit {
      padding: 6.875rem 0 20rem;
    }
    .p-page-header {
      margin-top: 52px;
    }
    .p-header {
      /* position: fixed;
      width: 100%;
      z-index: 9999;
      top: 0; */
    }
    .p-media__img2 img {
      aspect-ratio: auto;
    }
    .p-top-campaign__swiper {
      padding: 1rem;
    }
    .p-top-menu {
      z-index: 999;
      position: fixed;
      top: 0;
      width: 100%;
    }
  }
  
  @media screen and (min-width: 800px) {
    .p-header__hamburger {
      display: none;
    }
  }
  /*# sourceMappingURL=styles.css.map */
  