@charset "UTF-8";

/* =============================================
# Base
============================================= */
html {
  font-size: 16px;
}
html.is-drawer-active {
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  html {
    font-size: 20px;
    font-size: clamp(0.625rem, 0.029rem + 2.54vw, 1.25rem);
  }
}
body {
  position: relative;
  z-index: 1;
  background-color: #80d8d0;
  color: #040000;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.76642857;
}
@media screen and (max-width: 768px) {
  body {
    background-color: #fff;
    font-size: 1.4rem;
  }
}
a {
  transition: opacity 0.3s;
  color: inherit;
  text-decoration: none;
  cursor: pointer;
}
a:hover {
  opacity: 0.8;
}

/* PCでは電話番号のクリックを無効にする */
a[href^="tel:"] {
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  a[href^="tel:"] {
    pointer-events: auto;
  }
}
img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  border: none;
}
img:not([alt]) {
  filter: blur(10px);
}
b,
strong {
  font-weight: 700;
}
table {
  width: 100%;
  table-layout: fixed;
  border-spacing: 0;
  border-collapse: collapse;
  border: 1px solid;
}
th,
td {
  padding: 4px 6px;
  border: 1px solid;
  text-align: left;
  vertical-align: top;
}

/* =============================================
# Layout
============================================= */
/* l-container
=============================== */
.l-container {
  display: grid;
  position: relative;
  grid-template-columns: calc((100% - 375px) / 2) 375px calc((100% - 375px) / 2);
}
@media screen and (max-width: 768px) {
  .l-container {
    display: block;
  }
}
.l-container__side {
  position: sticky;
  top: 0;
  height: 100vh;
}
.l-container__side:has(.p-conversion-card) {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding-bottom: 11%;
}
.l-container__side .p-conversion-card {
  width: 373px;
  width: clamp(11.656rem, -1.693rem + 20.84vw, 23.313rem);
  max-width: 100%;
}
@media screen and (max-width: 768px) {
  .l-container__side,
  .l-container__side:has(.p-conversion-card) {
    display: none;
  }
}
.l-container__main {
  background-color: #fff;
}

/* l-inner
=============================== */
.l-inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 20px;
  padding-left: 20px;
}
@media screen and (max-width: 768px) {
  .l-inner {
    padding-right: 2rem;
    padding-left: 2rem;
  }
}

/* l-header
=============================== */
.l-header {
}
.l-header__wrap {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 328px auto 85px;
  grid-template-rows: clamp(8.563rem, 0.587rem + 16.59vw, 20.5rem) auto clamp(3.75rem, 2.706rem + 2.17vw, 5.313rem);
  height: 100%;
  padding-left: 13%;
  row-gap: 72px;
}
.l-header__logo {
  width: 384px;
  width: clamp(10rem, 0.646rem + 19.46vw, 24rem);
  max-width: 100%;
}
.l-header__logo a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: auto;
  border-radius: 0 0 50px 50px;
  border-radius: 0 0 clamp(1.563rem, 0.519rem + 2.17vw, 3.125rem) clamp(1.563rem, 0.519rem + 2.17vw, 3.125rem);
  background-color: #fff;
  aspect-ratio: 384 / 328;
  filter: drop-shadow(7px 7px 5px rgba(0, 169, 157, 0.75));
}
.l-header__logo a img {
  width: 254px;
  width: clamp(6.25rem, -0.181rem + 13.38vw, 15.875rem);
  max-width: 100%;
  transform: translate(-1%, 3%);
}
.l-header__nav {
  padding-left: 7.1%;
  overflow-y: scroll;
}
.l-header__lists {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 6px;
}
.l-header__list {
}
.l-header__list a {
  position: relative;
  padding-left: 24px;
  padding-left: clamp(0.75rem, 0.249rem + 1.04vw, 1.5rem);
  transition: color 0.3s;
  font-size: 20px;
  font-size: clamp(0.5rem, -0.001rem + 1.04vw, 1.25rem);
  font-weight: 700;
  line-height: 44px;
  line-height: clamp(0.75rem, -0.586rem + 2.78vw, 2.75rem);
}
.l-header__list.is-current a {
  color: #41c5b9;
}
.l-header__list a::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 0;
  width: 14px;
  width: clamp(0.875rem, -0.091rem + 1.12vw, 1.25rem);
  height: 19px;
  height: clamp(0.625rem, -0.091rem + 1.12vw, 1.25rem);
  transform: translate(0, -50%);
  background: url(../images/icon-diamond.svg) no-repeat center center / contain;
}
.l-header__list a::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  right: 0;
  bottom: 0;
  width: 16px;
  width: clamp(0.5rem, 0.167rem + 0.69vw, 1rem);
  height: 20px;
  height: clamp(0.625rem, 0.208rem + 0.87vw, 1.25rem);
  transform: translate(20%, 50%);
  transition: opacity 0.3s;
  opacity: 0;
  background: url(../images/icon-cursor.svg) no-repeat center center / contain;
}
.l-header__list.is-current a::after {
  opacity: 1;
}
.l-header__links {
  padding-left: 7.3%;
}
.l-header__link {
}
.l-header__link a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
}
.l-header__link a img {
  width: 40px;
  height: 40px;
}

/* l-footer
=============================== */
.l-footer {
  padding-top: 42.5px;
  padding-bottom: 29px;
}
@media screen and (max-width: 768px) {
  .l-footer {
    padding-top: 4.25rem;
    padding-bottom: 2.9rem;
  }
}
.l-footer__inner {
  max-width: 332px;
}
@media screen and (max-width: 768px) {
  .l-footer__inner {
    max-width: 33.2rem;
  }
}
.l-footer__logo {
}
.l-footer__logo img {
  width: 165px;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .l-footer__logo {
  }
  .l-footer__logo img {
    width: 16.5rem;
  }
}
.l-footer__address {
  margin-top: 34px;
}
@media screen and (max-width: 768px) {
  .l-footer__address {
    margin-top: 3.4rem;
  }
}
.l-footer__address-name {
  font-size: 15px;
  line-height: 0.98193;
  font-feature-settings: "palt";
}
.l-footer__address-name span {
  font-size: 0.73333333em;
}
.l-footer__address-name img {
  width: 118.45875px;
  margin-top: 17.5px;
}
@media screen and (max-width: 768px) {
  .l-footer__address-name {
    font-size: 1.5rem;
  }
  .l-footer__address-name img {
    width: 11.845875rem;
    margin-top: 1.75rem;
  }
}
.l-footer__address-text {
  margin-top: 5px;
  font-size: 11px;
  line-height: 1.33899545;
}
@media screen and (max-width: 768px) {
  .l-footer__address-text {
    margin-top: 0.5rem;
    font-size: 1.1rem;
  }
}
.l-footer__copyright {
  margin-top: 10px;
  color: #808080;
  font-size: 11px;
}
@media screen and (max-width: 768px) {
  .l-footer__copyright {
    margin-top: 1rem;
    font-size: 1.1rem;
  }
}

/* l-main
=============================== */
.l-main {
}
.l-main__visual {
  position: relative;
  z-index: 2;
}
.l-main__feature {
  position: relative;
  z-index: 1;
  margin-top: -105px;
  padding-top: 87px;
  padding-bottom: 35px;
  background: url(../images/feature-bg.png) no-repeat center top / cover;
}
@media screen and (max-width: 768px) {
  .l-main__feature {
    margin-top: -10.5rem;
    padding-top: 8.7rem;
    padding-bottom: 3.5rem;
  }
}
.l-main__movie-area {
  padding-top: 60px;
  padding-bottom: 60px;
  background-color: #41c5b9;
}
@media screen and (max-width: 768px) {
  .l-main__movie-area {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
.l-main__problem-area {
  padding-top: 54px;
  padding-bottom: 60px;
}
@media screen and (max-width: 768px) {
  .l-main__problem-area {
    padding-top: 5.4rem;
    padding-bottom: 6rem;
  }
}
.l-main__program {
  padding-top: 45px;
  padding-bottom: 15px;
  background-color: rgba(129, 216, 208, 0.3);
}
@media screen and (max-width: 768px) {
  .l-main__program {
    padding-top: 4.5rem;
    padding-bottom: 1.5rem;
  }
}
.l-main__schedule {
  padding-top: 47.5px;
  padding-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .l-main__schedule {
    padding-top: 4.75rem;
    padding-bottom: 3rem;
  }
}
.l-main__flow {
  padding-top: 30px;
  padding-bottom: 70px;
}
@media screen and (max-width: 768px) {
  .l-main__flow {
    padding-top: 3rem;
    padding-bottom: 7rem;
  }
}
.l-main__artist {
  padding-top: 41.5px;
  padding-bottom: 60px;
  background-color: #41c5b9;
}
@media screen and (max-width: 768px) {
  .l-main__artist {
    padding-top: 4.15rem;
    padding-bottom: 6rem;
  }
}
.l-main__system {
  padding-top: 56.5px;
  padding-bottom: 52.5px;
}
@media screen and (max-width: 768px) {
  .l-main__system {
    padding-top: 5.65rem;
    padding-bottom: 5.25rem;
  }
}
.l-main__faq {
  padding-top: 67.5px;
  padding-bottom: 61.5px;
  background-color: rgba(129, 216, 208, 0.3);
}
@media screen and (max-width: 768px) {
  .l-main__faq {
    padding-top: 6.75rem;
    padding-bottom: 6.15rem;
  }
}
.l-main__voice {
  padding-top: 56.5px;
  padding-bottom: 35px;
}
@media screen and (max-width: 768px) {
  .l-main__voice {
    padding-top: 5.65rem;
    padding-bottom: 3.5rem;
  }
}
.l-main__access {
  padding-top: 35px;
}
@media screen and (max-width: 768px) {
  .l-main__access {
    padding-top: 35px;
  }
}
.l-main__footer {
}

/* =============================================
# Component
============================================= */
/* c-button
=============================== */
.c-button {
}

/* c-section-title 490px
=============================== */
.c-section-title {
  display: flex;
  position: relative;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  row-gap: 10px;
  height: 87.5px;
}
@media screen and (max-width: 768px) {
  .c-section-title {
    row-gap: 1rem;
    height: 8.75rem;
  }
}
.c-section-title.c-section-title--no-decoration {
  height: auto;
}
.c-section-title::before,
.c-section-title::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 50%;
  width: 16px;
  /* height: 87.5px; */
  height: 100%;
  transform: translate(0, -50%);
}
@media screen and (max-width: 768px) {
  .c-section-title::before,
  .c-section-title::after {
    width: 1.6rem;
  }
}
.c-section-title::before {
  left: 0;
  background: url(../images/decoration-left_green.svg) no-repeat center center / contain;
}
.c-section-title.c-section-title--white::before {
  background: url(../images/decoration-left_white.svg) no-repeat center center / contain;
}
.c-section-title::after {
  right: 0;
  background: url(../images/decoration-right_green.svg) no-repeat center center / contain;
}
.c-section-title.c-section-title--white::after {
  background: url(../images/decoration-right_white.svg) no-repeat center center / contain;
}
.c-section-title.c-section-title--no-decoration::before,
.c-section-title.c-section-title--no-decoration::after {
  display: none;
}
.c-section-title h2 img {
  width: 245px;
}
@media screen and (max-width: 768px) {
  .c-section-title h2 img {
    width: 24.5rem;
  }
}
.c-section-title p {
  font-size: 11px;
  line-height: 1.61181818;
}
@media screen and (max-width: 768px) {
  .c-section-title p {
    font-size: 1.1rem;
  }
}

/* =============================================
# Project
============================================= */
/* splide
=============================== */
.splide__arrow {
  width: 36px;
  height: 36px;
  opacity: 1;
}
.splide__arrow.splide__arrow--next {
  transform: translateY(-50%) rotate(0deg);
}
.splide__arrow.splide__arrow--prev {
  display: none;
  transform: translateY(-50%) rotate(180deg);
}
@media screen and (max-width: 768px) {
  .splide__arrow {
    width: 3.6rem;
    height: 3.6rem;
  }
}
.splide__pagination {
  column-gap: 25px;
}
@media screen and (max-width: 768px) {
  .splide__pagination {
    column-gap: 2.5rem;
  }
}
.splide__pagination__page {
  width: 8px;
  height: 8px;
  margin: 0;
  border: 1.5px solid #828282;
  opacity: 1;
  background-color: #fff;
}
.splide__pagination__page.is-active {
  transform: scale(1);
  background-color: #828282;
}
.splide__pagination__page:focus,
.splide__pagination__page:hover {
  border: 1.5px solid #828282;
  background-color: #828282;
}
@media screen and (max-width: 768px) {
  .splide__pagination__page {
    width: 0.8rem;
    height: 0.8rem;
    border: 0.15rem solid #828282;
  }
  .splide__pagination__page:focus,
  .splide__pagination__page:hover {
    border: 0.15rem solid #828282;
  }
}

/* p-hamburger
=============================== */
.p-hamburger {
  width: 60px;
  height: 60px;
  /* overflow: hidden; */
  transition: all 0.3s ease-in-out;
  /* border-radius: 50%; */
  outline: none;
  background-color: transparent;
  box-shadow: 0 0 2rem transparent;
}
.p-hamburger:hover,
.p-hamburger:focus {
  /* box-shadow: 0 0 0.5rem rgba($color-blue, 0.5); */
}
.p-hamburger__lines {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6.75px;
  -webkit-transition: inherit;
  transition: inherit;
}
.p-hamburger__line {
  display: block;
  width: 24px;
  height: 1.2px;
  -webkit-transition: inherit;
  transition: inherit;
  background-color: #000;
}
.p-hamburger[aria-expanded="true"] .p-hamburger__line {
  background-color: #fff;
}
.p-hamburger[aria-expanded="true"] .p-hamburger__line:first-child {
  width: 32px;
  transform: translateY(8px) rotate(45deg);
}
.p-hamburger[aria-expanded="true"] .p-hamburger__line:nth-last-child(2) {
  background-color: transparent;
}
.p-hamburger[aria-expanded="true"] .p-hamburger__line:last-child {
  width: 32px;
  transform: translateY(-8px) rotate(-45deg);
}
.p-hamburger__label {
  position: absolute;
}

/* p-drawer
=============================== */
.p-drawer {
  width: 100%;
  height: 100%;
  padding-top: 95px;
  background-color: #000;
  color: #fff;
  font-weight: 700;
}
.p-drawer__inner {
  padding-right: 23px;
  padding-left: 23px;
}
.p-drawer__links {
}
.p-drawer__link {
}
.p-drawer__link a {
  display: block;
  padding-top: 1em;
  padding-bottom: 1em;
  padding-left: 3px;
  border-bottom: 1px solid #fff;
  font-size: 18px;
  letter-spacing: 0.35em;
  line-height: 1;
}
.p-drawer__title {
  margin-top: 65px;
  padding-left: 4px;
  font-size: 16px;
  letter-spacing: 0.35em;
  line-height: 1;
}
.p-drawer__lists {
  margin-top: 18px;
  padding-left: 2px;
}
.p-drawer__list,
.p-drawer__list a {
  display: block;
  font-size: 12px;
  letter-spacing: 0.1em;
  line-height: 1.67333333;
}
.p-drawer__list {
}
.p-drawer__list a {
}

/* p-conversion-card
=============================== */
.p-conversion-card {
  padding-top: 25px;
  padding-top: clamp(0.781rem, 0.259rem + 1.09vw, 1.563rem);
  padding-left: 25px;
  padding-left: clamp(0.781rem, 0.259rem + 1.09vw, 1.563rem);
  border-radius: 50px 0 0 50px;
  border-radius: clamp(1.563rem, 0.519rem + 2.17vw, 3.125rem) 0 0 clamp(1.563rem, 0.519rem + 2.17vw, 3.125rem);
  background-color: #fff;
  box-shadow: 10px 12px 0 rgba(65, 197, 185, 1);
  text-align: center;
  aspect-ratio: 373 / 621;
}
.p-conversion-card__wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
}
.p-conversion-card__title {
}
.p-conversion-card__title img {
  display: inline-block;
  width: 285px;
  width: clamp(8.906rem, 2.956rem + 12.38vw, 17.813rem);
  max-width: 100%;
}
.p-conversion-card__text {
  /* margin-top: 62px; */
  margin-top: 17.8%;
}
.p-conversion-card__text img {
  display: inline-block;
  width: 265px;
  width: clamp(8.281rem, 2.748rem + 11.51vw, 16.563rem);
  max-width: 100%;
}
.p-conversion-card__btn {
}
.p-conversion-card__btn a {
  display: inline-block;
  width: 300px;
  width: clamp(9.375rem, 3.111rem + 13.03vw, 18.75rem);
  max-width: 100%;
}

/* p-main-visual
=============================== */
.p-main-visual {
  position: relative;
}
.p-main-visual__img {
  padding-top: 22px;
  padding-bottom: 24px;
  overflow-x: hidden;
}
.p-main-visual__img img {
  transform: scale(1.1);
}
@media screen and (max-width: 768px) {
  .p-main-visual__img {
    padding-top: 2.2rem;
    padding-bottom: 2.4rem;
  }
}
.p-main-visual__news {
  position: absolute;
  bottom: 77px;
  left: 0;
}
@media screen and (max-width: 768px) {
  .p-main-visual__news {
    bottom: 7.7rem;
  }
}

/* p-news
=============================== */
.p-news {
}
.p-news__section-title {
  display: inline-block;
  padding-bottom: 4px;
  padding-left: 21px;
  border-bottom: 0.5px solid #040000;
}
.p-news__section-title img {
  width: 34px;
}
@media screen and (max-width: 768px) {
  .p-news__section-title {
    display: inline-block;
    padding-bottom: 0.4rem;
    padding-left: 2.1rem;
    border-bottom: 0.05rem solid #040000;
  }
  .p-news__section-title img {
    width: 3.4rem;
  }
}
.p-news__lists {
  margin-top: -1px;
  padding-left: 21px;
}
@media screen and (max-width: 768px) {
  .p-news__lists {
    margin-top: -0.1rem;
    padding-left: 2.1rem;
  }
}
.p-news__list {
}
.p-news__list a {
  display: block;
  width: 100%;
  height: 100%;
}
.p-news__date {
  font-size: 10px;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .p-news__date {
    font-size: 1rem;
  }
}
.p-news__title {
  margin-top: 4px;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.33333333;
}
@media screen and (max-width: 768px) {
  .p-news__title {
    margin-top: 0.4rem;
    font-size: 1.2rem;
  }
}

/* p-feature
=============================== */
.p-feature {
}
.p-feature__inner {
}
.p-feature__logo {
  text-align: center;
}
.p-feature__logo img {
  display: inline-block;
  width: 127px;
}
@media screen and (max-width: 768px) {
  .p-feature__logo img {
    width: 12.7rem;
  }
}
.p-feature__box {
  margin-top: 10px;
  padding: 27px 21px 25px;
  border-radius: 20px;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .p-feature__box {
    margin-top: 1rem;
    padding: 2.7rem 2.1rem 2.5rem;
    border-radius: 2rem;
  }
}
.p-feature__title {
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.2em;
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-feature__title {
    font-size: 1.5rem;
  }
}
.p-feature__lists {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 30px;
  margin-top: 25px;
}
@media screen and (max-width: 768px) {
  .p-feature__lists {
    row-gap: 3rem;
    margin-top: 2.5rem;
  }
}
.p-feature__list {
  position: relative;
  padding-left: 30px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.452;
}
@media screen and (max-width: 768px) {
  .p-feature__list {
    padding-left: 3rem;
    font-size: 1.5rem;
  }
}
.p-feature__list:nth-child(2n) {
  margin-left: 30px;
}
@media screen and (max-width: 768px) {
  .p-feature__list:nth-child(2n) {
    margin-left: 3rem;
  }
}
.p-feature__list::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 20.5px;
  height: 27px;
  transform: translate(0, -20%);
}
@media screen and (max-width: 768px) {
  .p-feature__list::before {
    width: 2.05rem;
    height: 2.7rem;
  }
}
.p-feature__list:nth-child(1)::before {
  background: url(../images/feature-number_01.svg) no-repeat center center / contain;
}
.p-feature__list:nth-child(2)::before {
  background: url(../images/feature-number_02.svg) no-repeat center center / contain;
}
.p-feature__list:nth-child(3)::before {
  background: url(../images/feature-number_03.svg) no-repeat center center / contain;
}
.p-feature__list:nth-child(4)::before {
  background: url(../images/feature-number_04.svg) no-repeat center center / contain;
}
.p-feature__list:nth-child(5)::before {
  background: url(../images/feature-number_05.svg) no-repeat center center / contain;
}
.p-feature__list span {
  color: #41c5b9;
}

/* p-movie-area
=============================== */
.p-movie-area {
}
.p-movie-area__inner {
}
.p-movie-area__items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 25px;
}
@media screen and (max-width: 768px) {
  .p-movie-area__items {
    column-gap: 2.5rem;
  }
}
.p-movie-area__item {
  text-align: center;
}
.p-movie-area__title {
  display: inline-block;
  position: relative;
  padding-right: 20px;
  padding-left: 20px;
  color: #fff;
  font-size: 13px;
  letter-spacing: -0.02em;
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-movie-area__title {
    padding-right: 2rem;
    padding-left: 2rem;
    font-size: 1.3rem;
  }
}
.p-movie-area__title::before,
.p-movie-area__title::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 50%;
  width: 11.5px;
  height: 18.5px;
  transform: translate(0, -50%);
}
@media screen and (max-width: 768px) {
  .p-movie-area__title::before,
  .p-movie-area__title::after {
    width: 1.15rem;
    height: 1.85rem;
  }
}
.p-movie-area__title::before {
  left: 0;
  background: url(../images/slash-left.svg) no-repeat center center / contain;
}
.p-movie-area__title::after {
  right: 0;
  background: url(../images/slash-right.svg) no-repeat center center / contain;
}
.p-movie-area__img {
  margin-top: 8px;
}
.p-movie-area__item:nth-child(1) .p-movie-area__img {
  padding-left: 6px;
}
.p-movie-area__item:nth-child(2) .p-movie-area__img {
  padding-right: 6px;
}
@media screen and (max-width: 768px) {
  .p-movie-area__item:nth-child(1) .p-movie-area__img {
    padding-left: 0.6rem;
  }
  .p-movie-area__item:nth-child(2) .p-movie-area__img {
    padding-right: 0.6rem;
  }
}

/* p-problem-area
=============================== */
.p-problem-area {
  overflow: hidden;
}
.p-problem-area__inner {
}
.p-problem-area__img {
  padding-top: 32px;
  padding-bottom: 32px;
}
.p-problem-area__img img {
  transform: scale(1.25) translate(6%, 0);
}
@media screen and (max-width: 768px) {
  .p-problem-area__img {
    padding-top: 3.2rem;
    padding-bottom: 3.2rem;
  }
}
.p-problem-area__lists {
  display: grid;
  row-gap: 37px;
  margin-top: -80px;
}
@media screen and (max-width: 768px) {
  .p-problem-area__lists {
    row-gap: 3.7rem;
    margin-top: -8rem;
  }
}
.p-problem-area__list {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  row-gap: 16px;
}
@media screen and (max-width: 768px) {
  .p-problem-area__list {
    row-gap: 1.6rem;
  }
}
.p-problem-area__list dt {
  display: inline-block;
  position: relative;
  padding: 9px 14px 7px;
  border: 2px solid #41c5b9;
  border-radius: 12px;
  background-color: #fff;
  font-size: 18px;
  font-weight: 700;
}
.p-problem-area__list dt::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 2;
  bottom: 0;
  left: 13px;
  width: 18px;
  height: 4px;
  transform: translate(0, 0);
  background-color: #fff;
}
.p-problem-area__list dt::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  bottom: 4px;
  left: 10px;
  width: 19.5px;
  height: 18px;
  transform: translate(0, 100%);
  background: url(../images/decoration-bottom.svg) no-repeat center center / contain;
}
@media screen and (max-width: 768px) {
  .p-problem-area__list dt {
    padding: 0.9rem 1.4rem 0.7rem;
    border: 0.2rem solid #41c5b9;
    border-radius: 1.2rem;
    font-size: 1.8rem;
  }
  .p-problem-area__list dt::before {
    left: 1.3rem;
    width: 1.8rem;
    height: 0.4rem;
  }
  .p-problem-area__list dt::after {
    bottom: 0.4rem;
    left: 1rem;
    width: 1.95rem;
    height: 1.8rem;
  }
}
.p-problem-area__list dd {
  padding-left: 8px;
}
@media screen and (max-width: 768px) {
  .p-problem-area__list dd {
    padding-left: 0.8rem;
  }
}
.p-problem-area__title {
  font-size: 17px;
  font-weight: 700;
  line-height: 1.51352941;
}
.p-problem-area__title span {
  border-bottom: 2.5px solid #41c5b9;
}
@media screen and (max-width: 768px) {
  .p-problem-area__title {
    font-size: 1.7rem;
  }
  .p-problem-area__title span {
    border-bottom: 0.25rem solid #41c5b9;
  }
}
.p-problem-area__text {
  margin-top: 8px;
}
.p-problem-area__text span {
  color: #e51f1a;
}
@media screen and (max-width: 768px) {
  .p-problem-area__text {
    margin-top: 0.8rem;
  }
}

/* p-program
=============================== */
.p-program {
}
.p-program__inner {
}
.p-program__section-title {
}
.p-program__head {
  position: relative;
  margin-top: 22px;
}
.p-program__head::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  right: 0;
  bottom: 0;
  width: 147.5px;
  height: 147.5px;
  transform: translate(14%, 16%);
  border-radius: 50%;
  background: url(../images/p-program-head-img.jpg) no-repeat center center / contain;
}
@media screen and (max-width: 768px) {
  .p-program__head {
    margin-top: 2.2rem;
  }
  .p-program__head::after {
    width: 14.75rem;
    height: 14.75rem;
  }
}
.p-program__lead {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.516;
}
.p-program__lead span {
  border-bottom: 2.5px solid #ffff00;
}
@media screen and (max-width: 768px) {
  .p-program__lead {
    font-size: 2rem;
  }
}
.p-program__notes {
  margin-top: 7px;
}
@media screen and (max-width: 768px) {
  .p-program__notes {
    margin-top: 0.7rem;
  }
}
.p-program__note {
  padding-left: 1em;
  font-size: 10px;
  line-height: 1.773;
  text-indent: -1em;
}
@media screen and (max-width: 768px) {
  .p-program__note {
    font-size: 1rem;
  }
}
.p-program__body {
  width: calc(100% + 20px);
  margin-top: 30px;
  margin-right: calc(50% - 50vw);
}
@media screen and (max-width: 768px) {
  .p-program__body {
    width: calc(100% + 2rem);
    margin-top: 3rem;
  }
}
.p-program__slider {
}
.p-program__slider .splide__track {
  padding-bottom: 150px;
  overflow: visible;
  overflow-x: hidden;
}
@media screen and (max-width: 768px) {
  .p-program__slider .splide__track {
    padding-bottom: 15rem;
  }
}
.p-program__slider .splide__arrow.splide__arrow--next {
  right: 0;
  transform: translateY(-175%) rotate(0deg);
}
.splide__arrow.splide__arrow--prev {
  left: -20px;
  transform: translateY(-175%) rotate(180deg);
}
@media screen and (max-width: 768px) {
  .splide__arrow.splide__arrow--prev {
    left: -2rem;
  }
}
.p-program__slider .splide__pagination {
  bottom: 120px;
  padding-right: 11%;
  padding-left: 0;
}
@media screen and (max-width: 768px) {
  .p-program__slider .splide__pagination {
    bottom: 12rem;
  }
}
.p-program__slider:has(.is-open) .splide__pagination {
  opacity: 0;
}
.p-program__foot {
  margin-top: -90px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-program__foot {
    margin-top: -9rem;
  }
}
.p-program__foot-title {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 272.5px;
  max-width: 100%;
  height: 71px;
  border-radius: 35.5px;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .p-program__foot-title {
    width: 27.25rem;
    height: 7.1rem;
    border-radius: 3.55rem;
  }
}
.p-program__foot-title img {
  width: 196px;
}
@media screen and (max-width: 768px) {
  .p-program__foot-title img {
    width: 19.6rem;
  }
}
.p-program__wrap {
  display: grid;
  grid-template-columns: 1fr 69px;
  width: 280px;
  max-width: 100%;
  margin-top: 20px;
  margin-right: auto;
  margin-left: auto;
  column-gap: 10px;
}
@media screen and (max-width: 768px) {
  .p-program__wrap {
    width: 28rem;
    margin-top: 2rem;
    column-gap: 1rem;
  }
}
.p-program__box {
  text-align: left;
}
.p-program__title {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.40666667;
}
@media screen and (max-width: 768px) {
  .p-program__title {
    font-size: 1.6rem;
  }
}
.p-program__text {
  margin-top: 7px;
  font-size: 11px;
  line-height: 1.33909091;
}
@media screen and (max-width: 768px) {
  .p-program__text {
    margin-top: 0.7rem;
    font-size: 1.1rem;
  }
}
.p-program__img {
}

/* p-program-card
=============================== */
.p-program-card {
  position: relative;
  margin-top: 3px;
  padding-top: 60px;
}
.p-program-card.p-program-card--recommendation::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 3;
  top: 0;
  right: 0;
  width: 72px;
  height: 70.5px;
  transform: translate(-12%, -3%);
  background: url(../images/icon-recommendation.png) no-repeat center center / contain;
}
@media screen and (max-width: 768px) {
  .p-program-card {
    margin-top: 0.3rem;
    padding-top: 6rem;
  }
  .p-program-card.p-program-card--recommendation::after {
    width: 7.2rem;
    height: 7.05rem;
  }
}
.p-program-card__head {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
}
.p-program-card__label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 193px;
  height: 60px;
  padding-bottom: 12px;
  border-radius: 12px 12px 0 0;
  background-color: #41c5b9;
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  /* letter-spacing: 0.05em; */
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .p-program-card__label {
    width: 19.3rem;
    height: 6rem;
    padding-bottom: 1.2rem;
    border-radius: 1.2rem 1.2rem 0 0;
    font-size: 2rem;
  }
}
.p-program-card__body {
  position: relative;
  z-index: 2;
  margin-top: -14px;
  padding: 16px 15px;
  border: 3px solid #41c5b9;
  border-radius: 15px;
  background-color: #fff;
  box-shadow: 5px 5px 5px 0 rgba(0, 0, 0, 0.3);
  height: 493.281px;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 768px) {
  .p-program-card__body {
    margin-top: -1.4rem;
    padding: 1.6rem 1.5rem;
    border: 0.3rem solid #41c5b9;
    border-radius: 1.5rem;
    height: 49.3281rem;
  }
}
.p-program-card__title {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.35111111;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 48.625px;
}
@media screen and (max-width: 768px) {
  .p-program-card__title {
    font-size: 1.8rem;
    min-height: 4.8625rem;
  }
}
.p-program-card__img {
  margin-top: 10px;
}
@media screen and (max-width: 768px) {
  .p-program-card__img {
    margin-top: 1rem;
  }
}
.p-program-card__lists {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 10px;
  margin-top: 7px;
}
@media screen and (max-width: 768px) {
  .p-program-card__lists {
    row-gap: 1rem;
    margin-top: 0.7rem;
  }
}
.p-program-card__list {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 2px;
}
@media screen and (max-width: 768px) {
  .p-program-card__list {
    row-gap: 0.2rem;
  }
}
.p-program-card__list dt {
  display: flex;
  align-items: center;
  column-gap: 4px;
  font-size: 18px;
  font-weight: 700;
  /* letter-spacing: -0.06em; */
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .p-program-card__list dt {
    column-gap: 0.4rem;
    font-size: 1.8rem;
  }
}
.p-program-card__list dt span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 82px;
  height: 18px;
  background-color: #41c5b9;
  color: #fff;
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: normal;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .p-program-card__list dt span {
    width: 8.2rem;
    height: 1.8rem;
    font-size: 1.25rem;
  }
}
.p-program-card__list dt small {
  display: inline-block;
  transform: translate(-3.5%, 20%);
  font-size: 0.7em;
}
.p-program-card__list dd {
}
.p-program-card__list dd ul {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 6px;
  margin-top: 4px;
}
@media screen and (max-width: 768px) {
  .p-program-card__list dd ul {
    row-gap: 0.6rem;
    margin-top: 0.4rem;
  }
}
.p-program-card__list dd ul li {
  display: flex;
  align-items: center;
  column-gap: 5px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .p-program-card__list dd ul li {
    column-gap: 0.5rem;
    font-size: 1.1rem;
  }
}
.p-program-card__list dd p {
  font-size: 11px;
  font-weight: 700;
  line-height: 1.70263182;
  margin-top: 3px;
}
@media screen and (max-width: 768px) {
  .p-program-card__list dd p {
    font-size: 1.1rem;
    margin-top: 0.3rem;
  }
}
.p-program-card__list dd span {
  color: #41c5b9;
  font-size: 13px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .p-program-card__list dd span {
    font-size: 1.3rem;
  }
}
.p-program-card__list dd span small {
  font-size: 0.76923077em;
}
.p-program-card__box {
  margin-top: 12px;
  text-align: center;
  margin-top: auto;
}
/* @media screen and (max-width: 768px) {
  .p-program-card__box {
    margin-top: 1.2rem;
  }
} */
.p-program-card__box span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 225px;
  height: 33px;
  background-color: #41c5b9;
  box-shadow: 5px 5px 5px 0 rgba(0, 0, 0, 0.3);
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .p-program-card__box span {
    width: 22.5rem;
    height: 3.3rem;
    font-size: 1.4rem;
  }
}
.p-program-card__box span strong {
  color: #ffff00;
}
.p-program-card__accordion {
  margin-top: 18px;
}
@media screen and (max-width: 768px) {
  .p-program-card__accordion {
    margin-top: 1.8rem;
  }
}

/* p-accordion
=============================== */
.p-accordion {
  position: relative;
}
.p-accordion__button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  height: 40px;
  padding-right: 15px;
  padding-left: 10px;
  border: 1px solid #464646;
  background-color: #fff;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .p-accordion__button {
    height: 4rem;
    padding-right: 1.5rem;
    padding-left: 1rem;
    border: 0.1rem solid #464646;
    font-size: 1.1rem;
  }
}
.p-accordion__button:focus,
.p-accordion__button:hover {
  border: 1px solid #464646;
}
@media screen and (max-width: 768px) {
  .p-accordion__button:focus,
  .p-accordion__button:hover {
    border: 0.1rem solid #464646;
  }
}
.p-accordion__icons {
  position: relative;
  width: 20px;
  height: 20px;
  border-radius: 2px;
  background-color: #464646;
}
@media screen and (max-width: 768px) {
  .p-accordion__icons {
    width: 2rem;
    height: 2rem;
    border-radius: 0.2rem;
  }
}
.p-accordion__icons span {
  display: inline-block;
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  width: 9px;
  height: 1.5px;
  transform: translate(-50%, -50%);
  transition: all 0.3s ease-in-out;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .p-accordion__icons span {
    width: 0.9rem;
    height: 0.15rem;
  }
}
.p-accordion__icons span:nth-child(2) {
  transform: translate(-50%, -50%) rotate(90deg);
}
.p-accordion.is-open .p-accordion__icons span:nth-child(1) {
  transform: translate(-50%, -50%) rotate(-90deg);
  opacity: 0;
}
.p-accordion.is-open .p-accordion__icons span:nth-child(2) {
  transform: translate(-50%, -50%) rotate(0deg);
}
.p-accordion__contents {
  visibility: hidden;
  position: absolute;
  z-index: 10;
  top: 100%;
  right: 0;
  left: 0;
  height: 0;
  padding: 0 14px 0;
  transition: all 0.3s ease-in-out;
  border-right: 1px solid #464646;
  border-bottom: 1px solid #464646;
  border-left: 1px solid #464646;
  opacity: 0;
  background-color: #fff;
  font-size: 10px;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .p-accordion__contents {
    padding: 0 1.4rem 0;
    border-right: 0.1rem solid #464646;
    border-bottom: 0.1rem solid #464646;
    border-left: 0.1rem solid #464646;
    font-size: 1rem;
  }
}
.p-accordion.is-open .p-accordion__contents {
  visibility: visible;
  height: auto;
  padding: 10px 14px 14px;
  opacity: 1;
}
@media screen and (max-width: 768px) {
  .p-accordion.is-open .p-accordion__contents {
    padding: 1rem 1.4rem 1.4rem;
  }
}

/* p-flow
=============================== */
.p-schedule__lists {
  display: grid;
  margin-top: 30px;
  row-gap: 11.5px;
}
@media screen and (max-width: 768px) {
  .p-schedule__lists {
    margin-top: 3rem;
    row-gap: 1.15rem;
  }
}
.p-schedule__list {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8.5px 11px;
  background: #c6edea;
}
@media screen and (max-width: 768px) {
  .p-schedule__list {
    gap: 1.4rem;
    padding: 0.85rem 1.1rem;
  }
}
.p-schedule__list-title {
  color: #1fa9a3;
  font-size: 18px;
  font-weight: bold;
}
.p-schedule__list-title span {
  font-size: 1.38888889em;
}
@media screen and (max-width: 768px) {
  .p-schedule__list-title {
    font-size: 1.8rem;
  }
}
.p-schedule__list-status {
  width: 122.06675px;
  color: #fff;
  font-size: 15.5px;
  font-weight: bold;
  line-height: 32.92255px;
  text-align: center;
}
.p-schedule__list-status.-off {
  background: #b0b1b1;
}
.p-schedule__list-status.-on {
  background: #41c5b9;
}
@media screen and (max-width: 768px) {
  .p-schedule__list-status {
    width: 12.206675rem;
    font-size: 1.55rem;
    line-height: 3.292255rem;
  }
}

/* p-flow
=============================== */
.p-flow__lists {
  display: grid;
  margin-top: 25px;
  row-gap: 32.5px;
}
@media screen and (max-width: 768px) {
  .p-flow__lists {
    margin-top: 2.5rem;
    row-gap: 3.25rem;
  }
}
.p-flow__list-title {
  position: relative;
  padding-left: 20px;
  color: #41c5b9;
  font-size: 20px;
  font-weight: bold;
  font-feature-settings: "palt";
}
.p-flow__list-title span {
  font-size: 0.7em;
}
.p-flow__list-title::before {
  content: "";
  display: block;
  position: absolute;
  top: -2px;
  left: 0;
  width: 13.5px;
  height: 28px;
  background: url(../images/flow-number_01.svg) no-repeat center center / contain;
}
@media screen and (max-width: 768px) {
  .p-flow__list-title {
    padding-left: 2rem;
    font-size: 2rem;
  }
  .p-flow__list-title::before {
    width: 1.35rem;
    height: 2.8rem;
  }
}
.p-flow__list:nth-child(2) .p-flow__list-title::before {
  background: url(../images/flow-number_02.svg) no-repeat center center / contain;
}
.p-flow__list:nth-child(3) .p-flow__list-title::before {
  background: url(../images/flow-number_03.svg) no-repeat center center / contain;
}
.p-flow__list:nth-child(4) .p-flow__list-title::before {
  background: url(../images/flow-number_04.svg) no-repeat center center / contain;
}
.p-flow__list:nth-child(5) .p-flow__list-title::before {
  background: url(../images/flow-number_05.svg) no-repeat center center / contain;
}
.p-flow__list:nth-child(6) .p-flow__list-title::before {
  background: url(../images/flow-number_06.svg) no-repeat center center / contain;
}
.p-flow__list:nth-child(7) .p-flow__list-title::before {
  background: url(../images/flow-number_07.svg) no-repeat center center / contain;
}
.p-flow__list-text {
  padding-left: 20px;
  line-height: 1.62349643;
}
@media screen and (max-width: 768px) {
  .p-flow__list-text {
    padding-left: 2rem;
  }
}
.p-flow__btn {
  margin-top: 41px;
}
@media screen and (max-width: 768px) {
  .p-flow__btn {
    margin-top: 4.1rem;
  }
}

/* p-artist
=============================== */
.p-artist__profile {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  margin-top: 27.5px;
  color: #fff;
  font-size: 12px;
  gap: 14px;
  font-feature-settings: "palt";
}
.p-artist__profile-position {
  font-weight: bold;
  line-height: 1.5819875;
}
.p-artist__profile-about {
  margin-top: 1em;
  line-height: 1.49865417;
}
@media screen and (max-width: 768px) {
  .p-artist__profile {
    margin-top: 2.75rem;
    gap: 1.4rem;
    font-size: 1.2rem;
  }
}
.p-artist__license {
  margin-top: 17px;
  background: #b3e8e3;
}
@media screen and (max-width: 768px) {
  .p-artist__license {
    margin-top: 1.7rem;
  }
}
.p-artist__license-label {
  padding: 12.5px 20px;
  border-bottom: 1px solid #41c5b9;
  color: #41c5b9;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .p-artist__license-label {
    padding: 1.25rem 2rem;
    font-size: 1.5rem;
  }
}
.p-artist__license-text {
  padding: 8px 20px 12.5px;
  color: #333333;
  font-size: 12px;
  line-height: 1.66532083;
}
@media screen and (max-width: 768px) {
  .p-artist__license-text {
    padding: 0.8rem 2rem 1.25rem;
    font-size: 1.2rem;
  }
}
.p-artist__message {
  margin-top: 23.5px;
  padding: 27.5px;
  border-radius: 20px;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .p-artist__message {
    margin-top: 2.35rem;
    padding: 2.75rem;
    border-radius: 2rem;
  }
}
.p-artist__message-title {
  color: #41c5b9;
  font-size: 15px;
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-artist__message-title {
    font-size: 1.5rem;
  }
}
.p-artist__message-text {
  margin-top: 1em;
  font-size: 14px;
  line-height: 1.66532083;
}
@media screen and (max-width: 768px) {
  .p-artist__message-text {
    font-size: 1.4rem;
  }
}
.p-artist__gallery {
  margin-top: 42px;
}
.p-artist__gallery img {
  width: 261.705px;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-artist__gallery {
    margin-top: 4.2rem;
  }
  .p-artist__gallery img {
    width: 26.1705rem;
  }
}
.p-artist__instagram-btn {
  margin-top: 25px;
}
@media screen and (max-width: 768px) {
  .p-artist__instagram-btn {
    margin-top: 2.5rem;
  }
}
.p-artist__license-label {
  position: relative;
  list-style: none;
  cursor: pointer;
}
.p-artist__license-label::-webkit-details-marker,
.p-artist__license-label::marker {
  display: none;
}
.p-artist__license-label::after {
  content: "+";
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
  transition: transform 0.3s;
  color: #41c5b9;
  font-size: 15px;
  font-weight: bold;
  line-height: 1;
}
.p-artist__license-details[open] .p-artist__license-label::after {
  content: "−";
}
.p-artist__license-text {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  overflow: hidden;
  transition: 0.3s;
  transition-property: display, opacity, block-size, padding;
  opacity: 0;
  transition-behavior: allow-discrete;
}
.p-artist__license-details[open] .p-artist__license-text {
  padding-top: 0.8rem !important;
  padding-bottom: 1.25rem !important;
  opacity: 1;
}

@media screen and (max-width: 768px) {
  .p-artist__license-label::after {
    right: 1.5rem;
    font-size: 1.5rem;
  }
}

/* p-system
=============================== */
.p-system__text {
  margin-top: 16px;
  font-size: 14px;
  font-feature-settings: "palt";
}
@media screen and (max-width: 768px) {
  .p-system__text {
    margin-top: 1.6rem;
    font-size: 1.4rem;
  }
}
.p-system__logo {
  margin-top: 37.5px;
}
.p-system__logo img {
  width: 180.6958px;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-system__logo {
    margin-top: 3.75rem;
  }
  .p-system__logo img {
    width: 18.06958rem;
  }
}
.p-system__returns {
  margin-top: 28.5px;
  padding: 20px 14px 27.5px;
  background: #b3e8e3;
}
@media screen and (max-width: 768px) {
  .p-system__returns {
    margin-top: 2.85rem;
    padding: 2rem 1.4rem 2.75rem;
  }
}
.p-system__returns-title {
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-system__returns-title {
    font-size: 1.8rem;
  }
}
.p-system__returns-img {
  width: 100%;
  margin-top: 11.5px;
}
@media screen and (max-width: 768px) {
  .p-system__returns-img {
    margin-top: 1.15rem;
  }
}
.p-system__returns-text {
  margin-top: 8px;
  color: #1fa9a3;
  font-size: 22px;
  font-weight: bold;
  line-height: 1.36363636;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-system__returns-text {
    margin-top: 0.8rem;
    font-size: 2.2rem;
  }
}
.p-system__example {
  margin-top: 33.5px;
  padding-bottom: 31.5px;
  border-bottom: 1px solid #000;
}
@media screen and (max-width: 768px) {
  .p-system__example {
    margin-top: 3.35rem;
    padding-bottom: 3.15rem;
  }
}
.p-system__example-title {
  display: flex;
  align-items: center;
  color: #41c5b9;
  font-size: 14px;
}
.p-system__example-title::after {
  content: "";
  flex: 1;
  height: 1px;
  margin-left: 10px;
  background-color: #000;
}
@media screen and (max-width: 768px) {
  .p-system__example-title {
    font-size: 1.4rem;
  }
}
.p-system__example-lead {
  margin-top: 12.5px;
  padding-left: 0.5em;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
}
.p-system__example-lead:nth-child(5) {
  margin-top: 30px;
}
@media screen and (max-width: 768px) {
  .p-system__example-lead {
    margin-top: 1.25rem;
    font-size: 1.8rem;
  }
  .p-system__example-lead:nth-child(5) {
    margin-top: 3rem;
  }
}
.p-system__example-text {
  margin-top: 10px;
  padding-left: 0.5em;
  font-size: 15px;
  line-height: 1.64859667;
  font-feature-settings: "palt";
}
@media screen and (max-width: 768px) {
  .p-system__example-text {
    margin-top: 1rem;
    font-size: 1.5rem;
  }
}
.p-system__example-img {
  margin-top: 8.5px;
}
.p-system__example-img img {
  width: 231.30435px;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-system__example-img {
    margin-top: 0.85rem;
  }
  .p-system__example-img img {
    width: 23.130435rem;
  }
}
.p-system__artist {
  margin-top: 28px;
}
@media screen and (max-width: 768px) {
  .p-system__artist {
    margin-top: 2.8rem;
  }
}
.p-system__artist-title {
  color: #41c5b9;
  font-size: 18px;
  line-height: 1.5;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-system__artist-title {
    font-size: 1.8rem;
  }
}
.p-system__artist-text {
  font-size: 13.5px;
  font-feature-settings: "palt";
}
.p-system__artist-text span {
  display: block;
  font-size: 0.81481481em;
  line-height: 1.6;
}
.p-system__artist-text a {
  text-decoration: underline;
}
@media screen and (max-width: 768px) {
  .p-system__artist-text {
    font-size: 1.35rem;
  }
}
.p-system__artist-price {
  margin-top: 25px;
  margin-bottom: 17px;
}
.p-system__artist-price img {
  width: 224.646px;
}
@media screen and (max-width: 768px) {
  .p-system__artist-price {
    margin-top: 2.5rem;
    margin-bottom: 1.7rem;
  }
  .p-system__artist-price img {
    width: 22.4646rem;
  }
}
.p-system__artist-btn {
  margin-top: 15px;
}
@media screen and (max-width: 768px) {
  .p-system__artist-btn {
    margin-top: 1.5rem;
  }
}

/* p-faq
=============================== */
.p-faq__lists {
  display: grid;
  row-gap: 20px;
  margin-top: 32.5px;
}
@media screen and (max-width: 768px) {
  .p-faq__lists {
    row-gap: 2rem;
    margin-top: 3.25rem;
  }
}
.p-faq__question,
.p-faq__answer {
  display: grid;
  grid-template-columns: 9.51px 1fr;
  gap: 13.75px;
}
@media screen and (max-width: 768px) {
  .p-faq__question,
  .p-faq__answer {
    grid-template-columns: 0.951rem 1fr;
    gap: 1.375rem;
  }
}
.p-faq__question {
  padding: 0.8em 9px;
  background: #41c5b9;
}
.p-faq__question-icon {
  display: flex;
  align-items: center;
}
.p-faq__question-text {
  color: #fff;
  font-size: 15px;
}
@media screen and (max-width: 768px) {
  .p-faq__question {
    padding: 0.8em 0.9rem;
  }
  .p-faq__question-text {
    font-size: 1.5rem;
  }
}
.p-faq__answer {
  padding: 1em 9px;
  border-radius: 0 0 5px 5px;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .p-faq__answer {
    padding: 1em 0.9rem;
  }
}
.p-faq__btn {
  width: 100%;
  margin-top: 48px;
}
@media screen and (max-width: 768px) {
  .p-faq__btn {
    margin-top: 4.8rem;
  }
}
.p-faq__question {
  list-style: none;
  cursor: pointer;
}
.p-faq__question::-webkit-details-marker,
.p-faq__question::marker {
  display: none;
}
.p-faq__answer {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  overflow: hidden;
  transition: 0.3s;
  transition-property: display, opacity, block-size, padding;
  opacity: 0;
  transition-behavior: allow-discrete;
}
.p-faq__details[open] .p-faq__answer {
  padding-top: 1em !important;
  padding-bottom: 1em !important;
  opacity: 1;
}
.p-faq__question,
.p-faq__answer {
  display: grid;
  grid-template-columns: 9.51px 1fr;
  gap: 10px;
}
.p-faq__question {
  position: relative;
  align-items: flex-start;
}
.p-faq__question::after {
  content: "+";
  position: absolute;
  top: 15px;
  right: 9px;
  transition: transform 0.3s;
  color: #fff;
  font-size: 15px;
  font-weight: bold;
  line-height: 1;
}
.p-faq__details[open] .p-faq__question::after {
  content: "−";
}
.p-faq__question-icon {
  padding-top: 2px;
}
@media screen and (max-width: 768px) {
  .p-faq__question,
  .p-faq__answer {
    grid-template-columns: 0.951rem 1fr;
    gap: 1rem;
  }
  .p-faq__question::after {
    top: 1.5rem;
    right: 0.9rem;
    font-size: 1.5rem;
  }
  .p-faq__question-icon {
    padding-top: 0.2rem;
  }
}

/* p-voice
=============================== */
.p-voice {
}
.p-voice__inner {
}
.p-voice__section-title {
}
.p-voice__contents {
  width: calc(100% + 40px);
  margin-top: 8px;
  margin-right: -20px;
  margin-left: -20px;
}
@media screen and (max-width: 768px) {
  .p-voice__contents {
    width: calc(100% + 4rem);
    margin-top: 0.8rem;
    margin-right: -2rem;
    margin-left: -2rem;
  }
}
.p-voice__slider {
  /* padding-bottom: 25px; */
}
.p-voice__slider .splide__arrow--next {
  right: 0;
  transform: translateY(-125%) rotate(0deg);
}
.p-voice__slider .splide__pagination {
  bottom: 12px;
}
@media screen and (max-width: 768px) {
  .p-voice__slider .splide__pagination {
    bottom: 1.2rem;
  }
}
/* p-voice-card
=============================== */
.p-voice-card {
  position: relative;
  margin-top: 20px;
  margin-bottom: 40px;
  padding: 40px 30px 20px;
  background-color: #fff;
  /* border: 1px solid #41c5b9; */
  box-shadow:
    0px 8px 16px -2px rgba(10, 10, 10, 0.4),
    0px 0px 0px 1px rgba(10, 10, 10, 0.02);
}
@media screen and (max-width: 768px) {
  .p-voice-card {
    margin-top: 2rem;
    margin-bottom: 4rem;
    padding: 4rem 3rem 2rem;
    box-shadow:
      0px 0.8rem 1.6rem -0.2rem rgba(10, 10, 10, 0.4),
      0px 0rem 0rem 0.1rem rgba(10, 10, 10, 0.02);
  }
}
.p-voice-card__label {
  display: inline-flex;
  position: absolute;
  top: 0;
  left: 30px;
  align-items: center;
  justify-content: center;
  width: 94.5px;
  height: 29px;
  padding-top: 6px;
  border-radius: 0 0 12px 12px;
  background-color: #41c5b9;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .p-voice-card__label {
    left: 3rem;
    width: 9.45rem;
    height: 2.9rem;
    padding-top: 0.6rem;
    border-radius: 0 0 1.2rem 1.2rem;
    font-size: 1.2rem;
  }
}
.p-voice-card__head {
  position: relative;
  padding-top: 27px;
  padding-bottom: 22px;
  border-top: 1px solid #41c5b9;
  border-bottom: 1px solid #41c5b9;
}
@media screen and (max-width: 768px) {
  .p-voice-card__head {
    padding-top: 2.7rem;
    padding-bottom: 2.2rem;
    border-top: 0.1rem solid #41c5b9;
    border-bottom: 0.1rem solid #41c5b9;
  }
}
.p-voice-card__wrap {
  display: grid;
  position: relative;
  grid-template-columns: 1fr 89px;
  column-gap: 0;
}
@media screen and (max-width: 768px) {
  .p-voice-card__wrap {
    grid-template-columns: 1fr 8.9rem;
  }
}
.p-voice-card__title {
  font-size: 17px;
  font-weight: 700;
  line-height: 1.67647059;
}
@media screen and (max-width: 768px) {
  .p-voice-card__title {
    font-size: 1.7rem;
  }
}
.p-voice-card__img {
  position: absolute;
  top: 0;
  right: 0;
  width: 89px;
  height: 105.5px;
  overflow: hidden;
  transform: translate(2%, -54%);
  border-radius: 50%;
  background-color: #b0b1b0;
  aspect-ratio: 178 / 211;
}
@media screen and (max-width: 768px) {
  .p-voice-card__img {
    width: 8.9rem;
    height: 10.55rem;
  }
}
.p-voice-card__name {
  position: absolute;
  right: 0;
  bottom: 5px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .p-voice-card__name {
    bottom: 0.5rem;
    font-size: 1.1rem;
  }
}
.p-voice-card__body {
  margin-top: 14px;
}
@media screen and (max-width: 768px) {
  .p-voice-card__body {
    margin-top: 1.4rem;
  }
}
.p-voice-card__text {
  font-size: 14px;
  line-height: 1.76642857;
}
@media screen and (max-width: 768px) {
  .p-voice-card__text {
    font-size: 1.4rem;
  }
}

/* p-access
=============================== */
.p-access__map {
  width: 85.535147%;
  margin-top: 26px;
  margin-inline: auto;
}
.p-access__map iframe {
  width: 100%;
  height: 183.28325px;
}
@media screen and (max-width: 768px) {
  .p-access__map {
    margin-top: 2.6rem;
  }
  .p-access__map iframe {
    height: 18.328325rem;
  }
}
.p-access__address {
  margin-top: 10px;
  font-size: 11px;
  line-height: 1.4;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-access__address {
    margin-top: 1rem;
    font-size: 1.1rem;
  }
}
.p-access__text {
  width: 87.17796%;
  margin-top: 22px;
  margin-inline: auto;
  font-size: 14px;
  text-align: justify;
  font-feature-settings: "palt";
}
@media screen and (max-width: 768px) {
  .p-access__text {
    margin-top: 2.2rem;
    font-size: 1.4rem;
  }
}
.p-access__image {
  width: calc(100% + 20px);
  margin-top: 13px;
  margin-right: -10px;
  margin-left: -10px;
}
@media screen and (max-width: 768px) {
  .p-access__image {
    width: calc(100% + 2rem);
    margin-top: 1.3rem;
    margin-right: -1rem;
    margin-left: -1rem;
  }
}

/* =============================================
# Utility
============================================= */
/* u-display
=============================== */
.u-show-sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .u-show-sp {
    display: block;
  }
}
.u-show-pc {
  display: block;
}
@media screen and (max-width: 768px) {
  .u-show-pc {
    display: none;
  }
}
.u-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  border: 0;
  white-space: nowrap;
  clip-path: inset(50%);
}
