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

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
span,
img,
a,
table,
tr,
th,
td,
small,
button,
time,
figure {
  border: 0;
  font: inherit;
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

li,
dd {
  list-style-type: none;
}

header,
footer,
nav,
section,
article,
main,
aside,
figure,
figcaption {
  display: block;
}

img {
  border: none;
  vertical-align: bottom;
}

@media screen and (max-width: 1119px) and (min-width: 768px) {
  html {
    font-size: calc(16 / 1120 * 100vw);
  }
}
@media screen and (max-width: 749px) {
  html {
    font-size: calc(16 / 750 * 100vw);
  }
}

body {
  overflow-x: hidden;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  color: #0A0A0A;
  letter-spacing: 0.2em;
  background: #f9f6c1;
}

a {
  color: inherit;
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (hover: hover) {
  a:hover {
    cursor: pointer;
  }
}

picture,
img,
a,
span {
  display: inline-block;
}

video,
img,
svg {
  width: 100%;
  height: 100%;
}

button {
  font: inherit;
  color: inherit;
  background: transparent;
  background: none;
  border: none;
}

input,
textarea,
select {
  font: inherit;
}

@media (min-width: 768px) {
  a[href*="tel:"] {
    text-decoration: none;
    pointer-events: none;
    cursor: default;
  }
}
.l-header {
  z-index: 20;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: #F8B739;
}
@media (min-width: 768px) {
  .l-header {
    padding-block: 0.625rem;
  }
}

.l-header__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (min-width: 768px) {
  .l-header__wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0.625rem;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.l-header__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.5rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .l-header__top {
    display: none;
  }
}

.l-header__main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-block: 1.125rem;
}
@media (min-width: 768px) {
  .l-header__main {
    gap: 1.5rem;
    padding-block: unset;
  }
}

.l-header__catch {
  font-size: max(10px, 0.75rem);
  line-height: 1.2;
  letter-spacing: 0.1em;
}
.l-header__catch .inline-block {
  display: inline-block;
}

@media (min-width: 768px) {
  .l-header__button-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.5rem;
  }
}

.l-header__logo {
  width: 16.5rem;
  height: 4rem;
}
@media (min-width: 768px) {
  .l-header__logo {
    width: 14.8125rem;
    height: 3.5625rem;
  }
}

@media screen and (max-width: 767px) {
  .l-header__nav {
    display: none;
  }
}

.l-header__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.l-header__item {
  -webkit-border-end: 1px dashed currentcolor;
          border-inline-end: 1px dashed currentcolor;
}
.l-header__item:nth-of-type(1) {
  -webkit-border-start: 1px dashed currentcolor;
          border-inline-start: 1px dashed currentcolor;
}
.l-header__item:nth-of-type(1) .l-header__link {
  padding-block: 0.125rem;
}

.l-header__button-sp .l-header__link--contact {
  margin-inline: 0.75rem 1.75rem;
}
@media (min-width: 768px) {
  .l-header__button-sp {
    display: none;
  }
}

.l-header__link {
  padding: 0.75rem 3.25rem;
  font-size: 1.5rem;
  text-align: center;
  white-space: nowrap;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media (min-width: 768px) {
  .l-header__link {
    padding: 0.625rem 0.75rem;
    font-size: 0.875rem;
    letter-spacing: 0.2em;
  }
}
@media (any-hover: hover) {
  .l-header__link:hover {
    cursor: pointer;
    opacity: 0.7;
  }
}
.l-header__link--contact {
  padding: 1.1875rem 3.5625rem;
  margin-inline: 0.75rem;
  background: #fff;
  border-radius: 100vmax;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}
@media (any-hover: hover) {
  .l-header__link--contact:hover {
    color: #FF5096;
    opacity: 1;
  }
}

.l-footer-nav {
  display: none;
}
@media (min-width: 768px) {
  .l-footer-nav {
    display: block;
    padding-block: 0.5rem;
    background: #f7ca73;
  }
}

.l-footer-nav__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: min(100%, 750px);
  margin-inline: auto;
}

.l-footer-nav__item {
  -webkit-border-end: 1px dashed currentcolor;
          border-inline-end: 1px dashed currentcolor;
}
.l-footer-nav__item:nth-of-type(1) {
  -webkit-border-start: 1px dashed currentcolor;
          border-inline-start: 1px dashed currentcolor;
}
.l-footer-nav__item:nth-of-type(1) .l-header__link {
  padding-block: 0.125rem;
}

.l-footer-nav__link {
  padding: 0.625rem 0.75rem;
  font-size: 0.875rem;
  text-align: center;
  white-space: nowrap;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .l-footer-nav__link:hover {
    cursor: pointer;
    opacity: 0.7;
  }
}

.l-footer {
  background: #F8B739;
}

.l-footer__main {
  padding-block: 3.75rem 4.5rem;
}
@media (min-width: 768px) {
  .l-footer__main {
    display: grid;
    grid-template-areas: "info button contact";
    width: min(100%, 840px);
    padding-block: 5.25rem 4.5rem;
    margin-inline: auto;
  }
}

@media (min-width: 768px) {
  .l-footer__contact {
    grid-area: contact;
    justify-self: end;
  }
}

.l-footer__contact-link {
  width: min(100%, 618px);
  padding-block: 2.625rem;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}
@media (min-width: 768px) {
  .l-footer__contact-link {
    width: unset;
    padding-block: unset;
  }
}
@media (any-hover: hover) {
  .l-footer__contact-link:hover {
    color: #FF5096;
    cursor: pointer;
    opacity: 1;
  }
}

.l-footer__button-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.75rem;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  -webkit-margin-before: 3.5rem;
          margin-block-start: 3.5rem;
}
@media (min-width: 768px) {
  .l-footer__button-wrap {
    grid-area: button;
    gap: 1.75rem;
    -webkit-margin-before: unset;
            margin-block-start: unset;
  }
}

.l-footer__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.75rem;
  -webkit-margin-before: 3.125rem;
          margin-block-start: 3.125rem;
  font-size: 2rem;
}
@media (min-width: 768px) {
  .l-footer__info {
    grid-area: info;
    gap: 0.875rem;
    -webkit-margin-before: unset;
            margin-block-start: unset;
    font-size: clamp(10px, 0.9722222222vw, 14px);
  }
}

.l-footer__info-name {
  font-weight: 700;
}
@media (min-width: 768px) {
  .l-footer__info-name {
    font-size: 1.125rem;
  }
}

.l-footer__info-address {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.25rem;
}
@media (min-width: 768px) {
  .l-footer__info-address {
    gap: 0.5rem;
  }
}
.l-footer__info-address .sp-column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.25rem;
  letter-spacing: 0.2em;
}
@media (min-width: 768px) {
  .l-footer__info-address .sp-column {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 0.3125rem;
  }
}

.l-footer__info-tel {
  letter-spacing: 0.2em;
}

.l-footer__info-hours {
  letter-spacing: 0.15em;
}

.l-footer__copy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
  padding: 2rem 2.5rem;
  background: #f3ee83;
}

.l-footer__copy-link {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .l-footer__copy-link:hover {
    cursor: pointer;
    opacity: 0.7;
  }
}

.l-footer__copy-link,
.l-footer__copy-text {
  font-size: 1.5rem;
  line-height: 1.5;
  text-align: center;
}
@media (min-width: 768px) {
  .l-footer__copy-link,
  .l-footer__copy-text {
    font-size: 1rem;
  }
}

.l-inner {
  position: relative;
  width: 100%;
  max-width: 750px;
  height: inherit;
  padding: 0 4.25rem;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .l-inner {
    width: 100%;
    max-width: 1120px;
    padding: 0 2.5rem;
  }
}

.l-inner__narrow {
  max-width: 614px;
  padding: 0 4.25rem;
}
@media (min-width: 768px) {
  .l-inner__narrow {
    max-width: 50rem;
  }
}

.l-inner--header {
  max-width: unset;
  padding-inline: 2.5rem 0;
}
@media (min-width: 768px) {
  .l-inner--header {
    max-width: 1200px;
    padding: 0 2.5rem;
  }
}

.l-inner--footer {
  max-width: unset;
}

.l-inner--top-fv {
  max-width: unset;
  padding: 0;
}

.l-inner--top-blog {
  padding: 0 2.375rem;
}

.l-inner--top-about {
  padding: 0 2.375rem;
}

.l-inner--top-life {
  padding: 0 2.5rem;
}

.l-inner--top-guide {
  padding: 0 2.5rem;
}

.l-inner--top-school {
  padding: 0 2.5rem;
}

.l-inner--top-contact {
  padding: 0 3.375rem;
}

@media screen and (max-width: 767px) {
  .l-inner--about-features {
    padding: 0 1.25rem;
  }
}

@media screen and (max-width: 767px) {
  .l-inner--about-childcare {
    padding: 0 1.5rem;
  }
}

@media screen and (max-width: 767px) {
  .l-inner--about-english {
    padding: 0 1.5rem;
  }
}

@media screen and (max-width: 767px) {
  .l-inner--about-food {
    padding: 0 1.5rem;
  }
}

.l-inner--about-message {
  padding-inline: 1.5rem;
}
@media (min-width: 768px) {
  .l-inner--about-message {
    padding-inline: 2.5rem;
  }
}

.l-inner--about-interview {
  padding-inline: 1.5rem;
}
@media (min-width: 768px) {
  .l-inner--about-interview {
    padding-inline: 2.5rem;
  }
}

.l-inner--school-overview {
  padding-inline: 1.5rem;
}
@media (min-width: 768px) {
  .l-inner--school-overview {
    padding-inline: 2.5rem;
  }
}

.l-inner--guide-procedure {
  padding-inline: 1.5rem;
}
@media (min-width: 768px) {
  .l-inner--guide-procedure {
    padding-inline: 2.5rem;
  }
}

.l-inner--guide-flow {
  padding-inline: 1.5rem;
}
@media (min-width: 768px) {
  .l-inner--guide-flow {
    padding-inline: 2.5rem;
  }
}

.l-inner--guide-fv {
  padding-inline: 1.5rem;
}
@media (min-width: 768px) {
  .l-inner--guide-fv {
    padding-inline: 2.5rem;
  }
}

.l-inner--life-schedule {
  padding-inline: 1.5rem;
}
@media (min-width: 768px) {
  .l-inner--life-schedule {
    padding-inline: 2.5rem;
  }
}

.l-inner--life-fv {
  padding-inline: 1.5rem;
}
@media (min-width: 768px) {
  .l-inner--life-fv {
    padding-inline: 2.5rem;
  }
}

.l-inner--school-fv {
  padding-inline: 1.5rem;
}
@media (min-width: 768px) {
  .l-inner--school-fv {
    padding-inline: 2.5rem;
  }
}

.l-inner--school-access {
  padding-inline: 1.5rem;
}
@media (min-width: 768px) {
  .l-inner--school-access {
    padding-inline: 2.5rem;
  }
}

.l-inner--privacy-policy {
  padding-inline: 1.5rem;
}
@media (min-width: 768px) {
  .l-inner--privacy-policy {
    max-width: 880px;
    padding-inline: 2.5rem;
  }
}

.l-inner--contact-fv {
  padding-inline: 1.75rem;
}
@media (min-width: 768px) {
  .l-inner--contact-fv {
    padding-inline: 2.5rem;
  }
}

.l-inner--contact-section {
  padding-inline: 1.875rem;
}
@media (min-width: 768px) {
  .l-inner--contact-section {
    padding-inline: 2.5rem;
  }
}

.l-inner--blog-list {
  padding: 0 1.6875rem;
}
@media (min-width: 768px) {
  .l-inner--blog-list {
    padding: 0;
  }
}

@media screen and (max-width: 767px) {
  .l-inner--blog-single {
    padding: 0 2rem;
  }
}

.l-main {
  -webkit-padding-before: var(--header-height);
          padding-block-start: var(--header-height);
}

.l-main--blog-single,
.l-main--blog {
  background: #fff;
}
@media (min-width: 768px) {
  .l-main--blog-single,
  .l-main--blog {
    padding-inline: 2.5rem;
  }
}

@media (min-width: 768px) {
  .l-main--blog {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 3rem;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

@media (min-width: 768px) {
  .l-main--blog-single {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 3rem;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.l-main--contact,
.l-main--thanks {
  background: #ccdbfe;
}

.c-label-title {
  z-index: 1;
  position: relative;
  font-size: 2.625rem;
  font-weight: 700;
  color: #fff;
  text-align: center;
}
.c-label-title::before {
  z-index: -1;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 28.5rem;
  height: 5.625rem;
  content: "";
  background: url("../../public/img/common/bg-title-label-purple.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
  translate: -50% -50%;
}
@media (min-width: 768px) {
  .c-label-title {
    font-size: 2rem;
  }
  .c-label-title::before {
    width: 28.9375rem;
    height: 5.75rem;
  }
}

.c-contact-link {
  font-size: 2.5rem;
  text-align: center;
  letter-spacing: 0.2em;
  background: #fff;
  border-radius: 100vmax;
}
@media (min-width: 768px) {
  .c-contact-link {
    padding: 0.625rem 0.75rem;
    font-size: 0.875rem;
  }
}

.c-sub-fv {
  padding-block: 6.25rem 8.75rem;
  background-color: #bee0ee;
}
@media (min-width: 768px) {
  .c-sub-fv {
    padding-block: 5rem 7.5rem;
  }
}

.c-sub-fv__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 6.5rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 768px) {
  .c-sub-fv__wrap {
    gap: 6.75rem;
  }
}

.c-sub-fv__title {
  position: relative;
  font-size: 4rem;
  font-weight: 700;
  color: #FF5096;
}
.c-sub-fv__title::before, .c-sub-fv__title::after {
  z-index: 1;
  position: absolute;
  bottom: 0;
  content: "";
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}
.c-sub-fv__title::before {
  left: -5.5rem;
}
.c-sub-fv__title::after {
  right: -5.5rem;
}
@media (min-width: 768px) {
  .c-sub-fv__title {
    font-size: 2.25rem;
  }
  .c-sub-fv__title::before {
    left: -4rem;
  }
  .c-sub-fv__title::after {
    right: -4rem;
  }
}

.c-sub-fv__image {
  z-index: 1;
  position: relative;
  width: 100%;
}
.c-sub-fv__image img {
  -o-object-fit: cover;
     object-fit: cover;
}
.c-sub-fv__image::before {
  z-index: -1;
  position: absolute;
  right: -0.5rem;
  bottom: -0.5rem;
  width: 100%;
  height: 100%;
  content: "";
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}
@media (min-width: 768px) {
  .c-sub-fv__image {
    width: min(100%, 38.75rem);
  }
  .c-sub-fv__image::before {
    right: -0.875rem;
    bottom: -0.875rem;
  }
}

.c-menu-button {
  padding: 0.75rem 1.25rem;
  font-size: 2rem;
  text-align: center;
  letter-spacing: 0.2em;
  border: 1px solid currentcolor;
  border-radius: 100vmax;
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
@media (min-width: 768px) {
  .c-menu-button {
    padding: 0.625rem 0.75rem;
    font-size: 0.875rem;
  }
}
@media (any-hover: hover) {
  .c-menu-button:hover {
    cursor: pointer;
    background: #fff;
  }
}
.c-menu-button--instagram {
  padding: 1.25rem;
}
@media (min-width: 768px) {
  .c-menu-button--instagram {
    padding: 0.5rem 0.75rem;
  }
}
.c-menu-button--blog {
  padding: 1.25rem 2.625rem;
}
@media (min-width: 768px) {
  .c-menu-button--blog {
    padding: 0.5rem 1.5rem;
  }
}

.c-section-title {
  font-size: 4rem;
  font-weight: 700;
  color: #FF5096;
  text-align: center;
}
@media (min-width: 768px) {
  .c-section-title {
    font-size: 2rem;
  }
}

.c-sub-title {
  font-size: 2.75rem;
  font-weight: 700;
  line-height: 1.5;
  color: #FF5096;
}
@media (min-width: 768px) {
  .c-sub-title {
    font-size: 2rem;
  }
}
.c-sub-title--ls {
  letter-spacing: 0.05em;
}

.c-section-heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 6.875rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 700;
  text-align: center;
}
@media (min-width: 768px) {
  .c-section-heading {
    gap: 3rem;
  }
}

.c-section-heading__label {
  z-index: 1;
  position: relative;
  font-size: 3rem;
  color: #fff;
}
.c-section-heading__label::before {
  z-index: -1;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 15.25rem;
  height: 7.25rem;
  content: "";
  background: url("../../public/img/common/bg-title-purple.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
  translate: -50% -50%;
}
@media (min-width: 768px) {
  .c-section-heading__label {
    font-size: 2rem;
  }
  .c-section-heading__label::before {
    width: 9.75rem;
    height: 4.375rem;
  }
}
.c-section-heading__label--english::before {
  background: url("../../public/img/common/bg-title-purple2.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.c-section-heading__label--food::before {
  background: url("../../public/img/common/bg-title-purple3.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.c-section-heading__title {
  font-size: 2.75rem;
  line-height: 1.45;
  color: #FF5096;
}
@media (min-width: 768px) {
  .c-section-heading__title {
    font-size: 2.5rem;
  }
}

.c-button {
  width: 25rem;
  padding: 1rem 1.5rem;
  background: #FF5096;
  border: 1px solid #FF5096;
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
@media (min-width: 768px) {
  .c-button {
    max-width: 200px;
    padding: 0.5rem 0.75rem;
  }
}
@media (any-hover: hover) {
  .c-button:hover {
    cursor: pointer;
    background: #fff;
  }
  .c-button:hover .c-button__text {
    color: #FF5096;
  }
  .c-button:hover .c-button__text::after {
    background: #FF5096;
  }
}

.c-button__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.875rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 2rem;
  line-height: 1.25;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}
.c-button__text::after {
  width: 1.875rem;
  height: 2.125rem;
  aspect-ratio: 30/34;
  content: "";
  background: #fff;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
@media (min-width: 768px) {
  .c-button__text {
    gap: 0.75rem;
    font-size: 1rem;
  }
  .c-button__text::after {
    width: 0.75rem;
    height: 0.875rem;
    aspect-ratio: 12/14;
  }
}

.c-common-text {
  font-size: 2rem;
  line-height: 1.75;
}
@media (min-width: 768px) {
  .c-common-text {
    font-size: 1rem;
  }
}
.c-common-text--color {
  display: inline;
  font-weight: 700;
  color: #FF5096;
}
.c-common-text--mt {
  -webkit-margin-before: 2.625rem;
          margin-block-start: 2.625rem;
}
.c-common-text--bold {
  font-weight: 700;
}

.c-form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.875rem;
}
@media (min-width: 768px) {
  .c-form {
    gap: 1.5625rem;
  }
}

.c-form__row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
}
@media (min-width: 768px) {
  .c-form__row {
    grid-template-columns: 14.375rem 1fr;
    gap: 1.25rem;
  }
}

@media (min-width: 768px) {
  .c-form__row--type2 .c-form__head {
    -ms-flex-item-align: start;
        align-self: start;
    -webkit-margin-before: 1rem;
            margin-block-start: 1rem;
  }
}

.c-form__head {
  font-size: 1.75rem;
  font-weight: 700;
  white-space: nowrap;
}
.c-form__head .must {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.25rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-form__head .must::after {
  font-size: 1.125rem;
  color: #d12f2f;
  content: "※必須";
}
@media (min-width: 768px) {
  .c-form__head {
    font-size: 1rem;
  }
  .c-form__head .must::after {
    font-size: clamp(10px, 0.9722222222vw, 14px);
  }
}

.c-form__data-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.75rem;
}

.c-form__data {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: min(100%, 650px);
  margin-inline: auto;
}

.c-form__data--birth {
  display: grid;
  grid-template-columns: 16.25rem 1fr 1fr;
}
.c-form__data--birth .row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.375rem;
  font-weight: 700;
  white-space: nowrap;
}
.c-form__data--birth .wpcf7-form-control-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.c-form__data--birth .wpcf7-form-control-wrap .wpcf7-not-valid-tip {
  display: block;
  font-size: 0.75rem;
  color: red;
  white-space: nowrap;
}
@media (min-width: 768px) {
  .c-form__data--birth {
    grid-template-columns: 11.25rem 8.75rem 8.75rem;
  }
  .c-form__data--birth .row {
    font-size: 1rem;
  }
}

.wpcf7-form-control-wrap {
  width: 100%;
}

.c-form__data--admission {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.75rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.c-form__select {
  position: relative;
  width: 100px;
  background: #fff;
  border: 1px solid #0A0A0A;
}
.c-form__select::after {
  position: absolute;
  top: 50%;
  right: 0.75rem;
  width: 1.5rem;
  height: 1rem;
  pointer-events: none;
  content: "";
  background: #0A0A0A;
  clip-path: polygon(100% 0, 0 0, 50% 100%);
  translate: 0 -50%;
}
@media (min-width: 768px) {
  .c-form__select::after {
    width: 1rem;
    height: 0.625rem;
  }
}
.c-form__select .wpcf7-form-control-wrap select {
  padding: 0.75rem;
  font-size: 1.25rem;
  cursor: pointer;
}
@media (min-width: 768px) {
  .c-form__select .wpcf7-form-control-wrap select {
    font-size: 1rem;
  }
}

.c-form__data--address {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.75rem;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
@media (min-width: 768px) {
  .c-form__data--address input[type=text] {
    max-width: 440px;
  }
}

.c-form__select--type2 {
  position: relative;
  width: 285px;
  background: #fff;
  border: 1px solid #0A0A0A;
}
.c-form__select--type2::after {
  position: absolute;
  top: 50%;
  right: 0.75rem;
  width: 1.5rem;
  height: 1rem;
  pointer-events: none;
  content: "";
  background: #0A0A0A;
  clip-path: polygon(100% 0, 0 0, 50% 100%);
  translate: 0 -50%;
}
@media (min-width: 768px) {
  .c-form__select--type2 {
    width: min(100%, 200px);
  }
  .c-form__select--type2::after {
    width: 1rem;
    height: 0.625rem;
  }
}
.c-form__select--type2 .wpcf7-form-control-wrap select {
  padding: 0.75rem;
  font-size: 1.5rem;
  cursor: pointer;
}
@media (min-width: 768px) {
  .c-form__select--type2 .wpcf7-form-control-wrap select {
    font-size: 1rem;
  }
}

.select-text {
  font-size: 1rem;
}

.c-form__data--zip {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-form__data--zip input[type=text] {
  max-width: 150px;
}
.c-form__data--zip span {
  font-size: 1.375rem;
  font-weight: 700;
  text-align: center;
}
@media (min-width: 768px) {
  .c-form__data--zip span {
    font-size: 1rem;
  }
}

input[type=text],
input[type=email],
input[type=tel],
input[type=number],
textarea {
  width: min(100%, 650px);
  padding: 0.75rem;
  font-size: 16px;
  border: 1px solid #0A0A0A;
}
@media (min-width: 768px) {
  input[type=text],
  input[type=email],
  input[type=tel],
  input[type=number],
  textarea {
    max-width: 330px;
    padding: 0.4375rem 0.75rem;
  }
}
input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
input[type=number]:focus,
textarea:focus {
  outline: none;
}

textarea {
  width: 100%;
  min-height: 244px;
  line-height: 1.6;
  resize: vertical;
}
@media (min-width: 768px) {
  textarea {
    max-width: 500px;
    min-height: 200px;
  }
}

select {
  width: 100%;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
}

input[type=submit],
input[type=button] {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-appearance: auto;
     -moz-appearance: auto;
          appearance: auto;
  cursor: pointer;
  background: transparent;
  border: none;
  border-radius: 0;
}

input[type=submit]::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration {
  display: none;
}

.c-form__submit {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 1.375rem auto 0;
}

.c-form__submit-button {
  padding: 2rem 3.4375rem;
  background: #FF5096;
  border: 1px solid #FF5096;
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
@media (min-width: 768px) {
  .c-form__submit-button {
    padding: 1.0625rem 1.5rem 1.0625rem 2.25rem;
    -webkit-margin-before: 0.5rem;
            margin-block-start: 0.5rem;
  }
}
@media (any-hover: hover) {
  .c-form__submit-button:hover {
    cursor: pointer;
    background: #fff;
  }
  .c-form__submit-button:hover .c-form__submit-text {
    color: #FF5096;
  }
  .c-form__submit-button:hover .c-form__submit-text::after {
    background: #FF5096;
  }
}

.c-form__submit-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.875rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 2rem;
  line-height: 1.25;
  color: #fff;
  text-align: center;
  letter-spacing: 0.2em;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}
.c-form__submit-text::after {
  width: 1.875rem;
  height: 2.125rem;
  content: "";
  background: #fff;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
@media (min-width: 768px) {
  .c-form__submit-text {
    gap: 0.75rem;
    font-size: 1rem;
  }
  .c-form__submit-text::after {
    width: 0.75rem;
    height: 0.875rem;
  }
}

.wpcf7-spinner {
  display: none;
}

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

.c-form-confirm[hidden] {
  display: none;
}

.c-form-confirm__lead {
  -webkit-margin-before: 2.5rem;
          margin-block-start: 2.5rem;
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
}
@media (min-width: 768px) {
  .c-form-confirm__lead {
    -webkit-margin-before: 2rem;
            margin-block-start: 2rem;
    font-size: 1.25rem;
  }
}

.c-form-confirm__rows {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-margin-before: 2rem;
          margin-block-start: 2rem;
}
@media (min-width: 768px) {
  .c-form-confirm__rows {
    -webkit-margin-before: 1.5rem;
            margin-block-start: 1.5rem;
  }
}

.c-form-confirm__row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.75rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  padding-block: 0.5rem;
}
@media (min-width: 768px) {
  .c-form-confirm__row {
    grid-template-columns: 22.25rem 1fr;
    gap: 1.25rem;
    padding: 1.5rem 1.5rem 1rem;
  }
}

.c-form-confirm__label {
  font-size: 1.75rem;
  font-weight: 700;
}
@media (min-width: 768px) {
  .c-form-confirm__label {
    font-size: 1.125rem;
    letter-spacing: 0.05625rem;
  }
}

.c-form-confirm__value {
  font-size: 1.75rem;
  line-height: 1.6;
}
@media (min-width: 768px) {
  .c-form-confirm__value {
    font-size: 1.125rem;
  }
}

.c-form-confirm__actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-margin-before: 2.5rem;
          margin-block-start: 2.5rem;
}
@media (min-width: 768px) {
  .c-form-confirm__actions {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 2rem;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-margin-before: 3rem;
            margin-block-start: 3rem;
  }
}

.c-form-confirm__back-btn {
  padding: 1rem 2.5rem;
  font-size: 1.75rem;
  font-weight: 700;
  cursor: pointer;
  background: transparent;
  border: 2px solid #FF5096;
  border-radius: 0.25rem;
}
@media (min-width: 768px) {
  .c-form-confirm__back-btn {
    padding: 1.0625rem 2rem;
    font-size: 1rem;
  }
}
@media (any-hover: hover) {
  .c-form-confirm__back-btn:hover {
    opacity: 0.7;
  }
}

.c-form-confirm__back-text {
  color: #FF5096;
}

@media (min-width: 768px) {
  .c-form-confirm__send-btn {
    -webkit-margin-before: 0;
            margin-block-start: 0;
  }
}

.p-drawer__icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.75rem;
  -ms-flex-item-align: stretch;
      align-self: stretch;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 1.5rem;
  background: #f6c15b;
}
@media (min-width: 768px) {
  .p-drawer__icon {
    display: none;
  }
}

.p-drawer-icon__bar {
  width: 3.125rem;
  height: 0.3125rem;
  background: #fff;
}

.p-drawer {
  z-index: 40;
  position: fixed;
  inset: 2rem 4rem;
  width: auto;
  height: auto;
  overflow-y: scroll;
  background: #F8B739;
  translate: 150%;
  -webkit-transition: translate 0.3s ease;
  transition: translate 0.3s ease;
}
.p-drawer.js-show {
  translate: 0;
}

.p-drawer__close {
  position: absolute;
  top: 2.5rem;
  right: 2.5rem;
  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;
  width: 3.125rem;
  height: 3.625rem;
}

.p-drawer__close-bar {
  width: 3.125rem;
  height: 0.3125rem;
  background: #fff;
}
.p-drawer__close-bar:nth-of-type(1) {
  rotate: 50deg;
  translate: 0 0.15625rem;
}
.p-drawer__close-bar:nth-of-type(2) {
  rotate: -50deg;
  translate: 0 -0.15625rem;
}

.p-drawer__content {
  padding: 2.5rem 4rem 3.25rem;
}

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

.p-drawer__item {
  width: 100%;
  -webkit-border-after: 1px dashed currentcolor;
          border-block-end: 1px dashed currentcolor;
}
.p-drawer__item:last-of-type {
  -webkit-border-after: none;
          border-block-end: none;
}

.p-drawer__link {
  width: 100%;
  padding-block: 3.25rem;
  font-size: 2.5rem;
  line-height: 1.2;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.2em;
}

.p-drawer__contact-link {
  padding: 1.5rem 6rem;
}

.p-drawer__button-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.75rem 1.25rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 2.625rem 1.25rem 0;
}

.p-drawer__button--blog {
  padding: 0.75rem 2.5rem;
}

.p-drawer__overlay {
  z-index: 39;
  position: fixed;
  top: 0;
  left: 0;
  visibility: hidden;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  opacity: 0;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
.p-drawer__overlay.js-show {
  visibility: visible;
  opacity: 1;
}

.p-section-block {
  width: 100%;
  height: 7.25rem;
  background: url("../../public/img/common/bg-section-block.svg") center center/contain no-repeat;
}
@media (min-width: 768px) {
  .p-section-block--pc {
    width: 50%;
    height: 3.9375rem;
  }
}

.p-about-features {
  padding-block: 8.125rem 7.5rem;
}
@media (min-width: 768px) {
  .p-about-features {
    padding-block: 5rem 10.1875rem;
  }
}

.p-about-features__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 5rem;
}
@media (min-width: 768px) {
  .p-about-features__wrap {
    gap: 5.25rem;
  }
}

.p-about-features__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8.75rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #FF5096;
  text-align: center;
}
@media (min-width: 768px) {
  .p-about-features__heading {
    gap: 1.25rem;
  }
}

.p-about-features__title {
  position: relative;
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.3;
}
.p-about-features__title::before, .p-about-features__title::after {
  position: absolute;
  width: 5.875rem;
  height: 6.75rem;
  content: "";
  background: url("../../public/img/common/icon-butterfly.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.p-about-features__title::before {
  top: -2.125rem;
  left: 0;
}
.p-about-features__title::after {
  right: 0;
  bottom: -6.6875rem;
}
@media (min-width: 768px) {
  .p-about-features__title {
    font-size: 2.5rem;
  }
  .p-about-features__title::before, .p-about-features__title::after {
    width: 5.125rem;
    height: 5.9375rem;
  }
  .p-about-features__title::before {
    left: -9rem;
  }
  .p-about-features__title::after {
    right: -9rem;
  }
}

.p-about-features__sub-title {
  font-size: 2.75rem;
  font-weight: 700;
}
@media (min-width: 768px) {
  .p-about-features__sub-title {
    font-size: 2rem;
  }
}

.p-about-features__contents-title {
  font-size: 2.75rem;
  font-weight: 700;
  color: #FF5096;
  text-align: center;
}
@media (min-width: 768px) {
  .p-about-features__contents-title {
    font-size: 2rem;
  }
}

.p-about-features__cards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10.3125rem;
  -webkit-margin-before: 7.75rem;
          margin-block-start: 7.75rem;
}
@media (min-width: 768px) {
  .p-about-features__cards {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 2.5rem;
    -webkit-margin-before: 6.5625rem;
            margin-block-start: 6.5625rem;
  }
}

.p-about-features__card {
  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;
  -ms-flex-item-align: stretch;
      align-self: stretch;
}
@media (min-width: 768px) {
  .p-about-features__card {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}

.p-about-features__card-image-wrap {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.p-about-features__label {
  position: relative;
  position: absolute;
  top: 0;
  left: 50%;
  translate: -50% 0;
}

.p-about-features__label-number {
  z-index: 2;
  position: absolute;
  top: -3.3125rem;
  left: -4.0625rem;
  font-family: "Dela Gothic One", sans-serif;
  font-size: 2.8125rem;
  color: #FF5096;
  text-shadow: 0.1875rem 0.1875rem 0 #fff;
}
@media (min-width: 768px) {
  .p-about-features__label-number {
    top: -1.75rem;
    font-size: 2rem;
  }
}

.p-about-features__label-text {
  z-index: 1;
  position: relative;
  font-size: 3rem;
  font-weight: 700;
  color: #fff;
}
.p-about-features__label-text::before {
  z-index: -1;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14rem;
  height: 6.6875rem;
  content: "";
  background: url("../../public/img/common/bg-title-purple.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
  translate: -50% -50%;
}
@media (min-width: 768px) {
  .p-about-features__label-text {
    font-size: 2rem;
  }
  .p-about-features__label-text::before {
    width: 9.9375rem;
    height: 4.75rem;
  }
}
.p-about-features__label-text--english::before {
  background: url("../../public/img/common/bg-title-purple2.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.p-about-features__label-text--food::before {
  background: url("../../public/img/common/bg-title-purple3.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.p-about-features__card-image img {
  -o-object-fit: cover;
     object-fit: cover;
}
.p-about-features__card-image--01 {
  width: 58.6666666667vw;
  aspect-ratio: 440/445;
}
.p-about-features__card-image--02 {
  width: 59.4666666667vw;
  aspect-ratio: 446/453;
}
.p-about-features__card-image--03 {
  width: 60.8vw;
  aspect-ratio: 456/492;
}
@media (min-width: 768px) {
  .p-about-features__card-image--01 {
    width: min(100%, 312px);
    aspect-ratio: 312/315;
  }
  .p-about-features__card-image--02 {
    width: min(100%, 308px);
    aspect-ratio: 308/313;
  }
  .p-about-features__card-image--03 {
    width: min(100%, 301px);
    aspect-ratio: 301/325;
  }
}

.p-about-features__card-lead {
  -webkit-margin-before: 3.375rem;
          margin-block-start: 3.375rem;
  font-size: 2.8125rem;
  font-weight: 700;
  line-height: 1.3;
  color: #FF5096;
  text-align: center;
}
@media (min-width: 768px) {
  .p-about-features__card-lead {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    -webkit-margin-before: 2.1875rem;
            margin-block-start: 2.1875rem;
    font-size: 2rem;
  }
}

.p-about-features__card-button {
  width: 53.3333333333vw;
  padding-block: 1.875rem;
  -webkit-margin-before: 3.875rem;
          margin-block-start: 3.875rem;
}
@media (min-width: 768px) {
  .p-about-features__card-button {
    padding-block: 1rem;
    -webkit-margin-before: 2.8125rem;
            margin-block-start: 2.8125rem;
  }
}

@media (min-width: 768px) {
  .p-about-features__card-button-text {
    font-size: 1.125rem;
  }
}

.p-about-childcare {
  padding-block: 10.375rem 5.375rem;
}
@media (min-width: 768px) {
  .p-about-childcare {
    padding-block: 11.75rem 10.25rem;
  }
}

.p-about-childcare__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4rem;
}
@media (min-width: 768px) {
  .p-about-childcare__wrap {
    gap: 3.75rem;
  }
}

.p-about-childcare__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.75rem;
}
@media (min-width: 768px) {
  .p-about-childcare__item {
    gap: 1.25rem;
  }
}

.p-about-childcare__images,
.p-about-childcare__blogs {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  -webkit-margin-before: 2rem;
          margin-block-start: 2rem;
}
@media (min-width: 768px) {
  .p-about-childcare__images,
  .p-about-childcare__blogs {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
  }
}

.p-about-childcare__image {
  width: min(100%, 600px);
  aspect-ratio: 600/435;
  margin-inline: auto;
  overflow: hidden;
}
.p-about-childcare__image img {
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: scale 0.3s ease;
  transition: scale 0.3s ease;
}

.p-about-childcare__image-wrap,
.p-about-childcare__blog {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2.25rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-margin-before: 0.75rem;
          margin-block-start: 0.75rem;
}
@media (min-width: 768px) {
  .p-about-childcare__image-wrap,
  .p-about-childcare__blog {
    gap: 0.5rem;
  }
}

.p-about-childcare__blog {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .p-about-childcare__blog:hover {
    opacity: 0.7;
  }
  .p-about-childcare__blog:hover .p-about-childcare__image img {
    scale: 1.1;
  }
}

.p-about-childcare__image-label {
  font-size: 1.875rem;
  font-weight: 700;
  color: #FF5096;
  text-align: center;
}
@media (min-width: 768px) {
  .p-about-childcare__image-label {
    font-size: 1rem;
  }
}

.p-about-english {
  padding-block: 11.0625rem 6.25rem;
  background-color: #f9f6c1;
}
@media (min-width: 768px) {
  .p-about-english {
    padding-block: 11.5rem 10rem;
  }
}

.p-about-english__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4rem;
}
@media (min-width: 768px) {
  .p-about-english__wrap {
    gap: 3.75rem;
  }
}

.p-about-english__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
}
@media (min-width: 768px) {
  .p-about-english__header {
    gap: 0.875rem;
  }
}

.p-about-english__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
}
@media (min-width: 768px) {
  .p-about-english__item {
    gap: 1.25rem;
  }
}

.p-about-english__images {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  -webkit-margin-before: 2rem;
          margin-block-start: 2rem;
}
@media (min-width: 768px) {
  .p-about-english__images {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
  }
}

.p-about-english__image {
  width: min(100%, 612px);
  aspect-ratio: 612/443;
  margin-inline: auto;
}
.p-about-english__image img {
  -o-object-fit: cover;
     object-fit: cover;
}
@media (min-width: 768px) {
  .p-about-english__image {
    aspect-ratio: 316/219;
  }
}

.p-about-food {
  z-index: 2;
  position: relative;
  padding-block: 10.625rem 4.375rem;
  background: #f9f6c1;
}
.p-about-food::before {
  position: absolute;
  bottom: -5rem;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 750/462;
  content: "";
  background: url("../../public/img/common/bg-wave-yellow-sp.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 768px) {
  .p-about-food {
    padding-block: 12.0625rem 8.75rem;
  }
  .p-about-food::before {
    bottom: -6.375rem;
    aspect-ratio: 2000/541;
    -webkit-margin-after: -1px;
            margin-block-end: -1px;
    background: url("../../public/img/common/bg-wave-yellow.svg") center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
}

.p-about-food__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 5rem;
}
@media (min-width: 768px) {
  .p-about-food__wrap {
    gap: 3.75rem;
  }
}

.p-about-food__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem;
}
@media (min-width: 768px) {
  .p-about-food__item {
    gap: 1.25rem;
  }
}

.p-about-food__images {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  -webkit-margin-before: 1.0625rem;
          margin-block-start: 1.0625rem;
}
@media (min-width: 768px) {
  .p-about-food__images {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
  }
}

.p-about-food__image {
  width: min(100%, 617px);
  aspect-ratio: 617/447;
  margin-inline: auto;
}
.p-about-food__image img {
  -o-object-fit: cover;
     object-fit: cover;
}
@media (min-width: 768px) {
  .p-about-food__image {
    aspect-ratio: 316/219;
  }
}

.p-about-food__lunch-wrap {
  -webkit-margin-before: 2rem;
          margin-block-start: 2rem;
}

.p-about-food__lunch-title {
  font-size: 1.875rem;
  font-weight: 700;
  color: #FF5096;
  text-align: center;
}
@media (min-width: 768px) {
  .p-about-food__lunch-title {
    font-size: 1rem;
  }
}

.p-about-food__lunch-image {
  width: min(100%, 682px);
  aspect-ratio: 682/384;
  -webkit-margin-before: 1rem;
          margin-block-start: 1rem;
  margin-inline: auto;
}

.p-about-food__video-wrap {
  -webkit-margin-before: 2.5rem;
          margin-block-start: 2.5rem;
}

.p-about-food__video-title {
  font-size: 1.875rem;
  font-weight: 700;
  color: #FF5096;
  text-align: center;
}
@media (min-width: 768px) {
  .p-about-food__video-title {
    font-size: 1rem;
  }
}

.p-about-food__video {
  width: 100%;
  height: auto;
  aspect-ratio: 687/387;
  margin: 1rem auto 0;
}
.p-about-food__video iframe {
  width: 100%;
  height: 100%;
}
@media (min-width: 768px) {
  .p-about-food__video {
    width: min(100%, 699px);
    aspect-ratio: 699/394;
    margin: 1.5625rem auto 0;
  }
}

.p-about-message {
  position: relative;
  padding-block: 9.75rem 2.75rem;
  background-color: #bee0ee;
}
.p-about-message::before {
  z-index: -1;
  position: absolute;
  bottom: -5rem;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 750/462;
  content: "";
  background: url("../../public/img/common/bg-wave-blue-sp.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 768px) {
  .p-about-message {
    padding-block: 12.125rem 6rem;
  }
  .p-about-message::before {
    bottom: -6.25rem;
    aspect-ratio: 2000/313;
    -webkit-margin-after: -1px;
            margin-block-end: -1px;
    background: url("../../public/img/common/bg-wave-blue.svg") center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
}

.p-about-message__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 5rem;
}
@media (min-width: 768px) {
  .p-about-message__wrap {
    gap: 3.75rem;
  }
}

.p-about-message__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.25rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.p-about-message__heading-leaf {
  width: 3.5rem;
  height: auto;
}
@media (min-width: 768px) {
  .p-about-message__heading-leaf {
    width: 2.5rem;
  }
}

.p-about-message__heading-title {
  position: relative;
}
.p-about-message__heading-title::before, .p-about-message__heading-title::after {
  z-index: 1;
  position: absolute;
  bottom: 0;
  width: 5rem;
  height: 3.375rem;
  content: "";
}
.p-about-message__heading-title::before {
  left: -6.25rem;
  background: url("../../public/img/common/icon-leaf-01.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.p-about-message__heading-title::after {
  right: -6.25rem;
  background: url("../../public/img/common/icon-leaf-02.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 768px) {
  .p-about-message__heading-title {
    font-size: 2.5rem;
  }
}

.p-about-message__profile {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3.375rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-about-message__profile-image {
  z-index: 1;
  position: relative;
  width: 34.375rem;
  aspect-ratio: 550/403;
}
.p-about-message__profile-image img {
  -o-object-fit: cover;
     object-fit: cover;
}
.p-about-message__profile-image::before {
  z-index: -1;
  position: absolute;
  right: -1.25rem;
  bottom: -1.25rem;
  width: 100%;
  height: 100%;
  content: "";
  background: url("../../public/img/about/message-image-bg.svg") center center;
  background-repeat: no-repeat;
  background-size: contain;
}
@media (min-width: 768px) {
  .p-about-message__profile-image {
    width: 19.5625rem;
    aspect-ratio: 313/229;
  }
  .p-about-message__profile-image::before {
    right: -0.625rem;
    bottom: -0.625rem;
  }
}

.p-about-message__profile-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.625rem;
  font-size: 1.875rem;
  font-weight: 700;
  color: #FF5096;
  text-align: center;
}
@media (min-width: 768px) {
  .p-about-message__profile-info {
    gap: 1rem;
    font-size: 1.5rem;
  }
}

.p-about-message__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}
@media (min-width: 768px) {
  .p-about-message__item {
    gap: 1.25rem;
  }
}

.p-about-message__blocks {
  width: min(100%, 31.25rem);
  height: 10rem;
  margin-inline: auto;
  background: url("../../public/img/about/message-blocks.webp") center center/contain no-repeat;
}
@media (min-width: 768px) {
  .p-about-message__blocks {
    width: min(100%, 27.5rem);
    height: 8.75rem;
  }
}

.p-about-message__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}
@media (min-width: 768px) {
  .p-about-message__list {
    gap: 0.25rem;
  }
}

.p-about-interview {
  padding-block: 9.5rem 5.5rem;
}
@media (min-width: 768px) {
  .p-about-interview {
    padding-block: 14.375rem 10rem;
  }
}

.p-about-interview__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4rem;
}
@media (min-width: 768px) {
  .p-about-interview__wrap {
    gap: 3rem;
  }
}

@media (min-width: 768px) {
  .p-about-interview__title {
    font-size: 2.5rem;
  }
}

.p-about-interview__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3rem;
}
@media (min-width: 768px) {
  .p-about-interview__contents {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 2.25rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.p-about-interview__video {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 100%;
  aspect-ratio: 16/9;
}
.p-about-interview__video iframe {
  width: 100%;
  height: 100%;
}
@media (min-width: 768px) {
  .p-about-interview__video {
    width: min(50%, 471px);
  }
}

.p-about-interview__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3rem;
}
@media (min-width: 768px) {
  .p-about-interview__body {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    gap: 1.5rem;
  }
}

.p-privacy-policy {
  padding-block: 6.25rem 7.5rem;
}
@media (min-width: 768px) {
  .p-privacy-policy {
    padding-block: 5rem 6.25rem;
  }
}

.p-privacy-policy__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 5rem;
}
@media (min-width: 768px) {
  .p-privacy-policy__wrap {
    gap: 3.75rem;
  }
}

.p-privacy-policy__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
  text-align: center;
}

.p-privacy-policy__title {
  font-size: 3.5rem;
  font-weight: 700;
  color: #FF5096;
}
@media (min-width: 768px) {
  .p-privacy-policy__title {
    font-size: 2.25rem;
  }
}

.p-privacy-policy__sub-title {
  font-size: 1.875rem;
}
@media (min-width: 768px) {
  .p-privacy-policy__sub-title {
    font-size: 1rem;
  }
}

.p-privacy-policy__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4.5rem;
}
@media (min-width: 768px) {
  .p-privacy-policy__items {
    gap: 3rem;
  }
}

.p-privacy-policy__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}
@media (min-width: 768px) {
  .p-privacy-policy__item {
    gap: 1rem;
  }
}

.p-privacy-policy__item-title {
  font-size: 2.25rem;
  font-weight: 700;
  line-height: 1.5;
  color: #FF5096;
}
@media (min-width: 768px) {
  .p-privacy-policy__item-title {
    font-size: 1.25rem;
  }
}

.p-privacy-policy__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
  -webkit-padding-start: 2.5rem;
          padding-inline-start: 2.5rem;
  list-style: disc;
}
@media (min-width: 768px) {
  .p-privacy-policy__list {
    -webkit-padding-start: 1.5rem;
            padding-inline-start: 1.5rem;
  }
}

.p-privacy-policy__list-text {
  position: relative;
}
.p-privacy-policy__list-text::before {
  position: absolute;
  top: 0;
  left: -1em;
  content: "・";
}

.p-privacy-policy__address {
  font-style: normal;
}
.p-privacy-policy__address a {
  color: inherit;
  text-decoration: underline;
}
@media (hover: hover) {
  .p-privacy-policy__address a:hover {
    opacity: 0.7;
  }
}

.p-guide-fv {
  padding-block: 8.125rem 3rem;
}
@media (min-width: 768px) {
  .p-guide-fv {
    padding-block: 6.25rem 4.75rem;
  }
}

.p-guide-fv__title::before, .p-guide-fv__title::after {
  width: 5.5625rem;
  height: 5.125rem;
  background-image: url("../../public/img/common/icon-bear.svg");
}
.p-guide-fv__title::before {
  bottom: -4.9375rem;
  left: -6.4375rem;
}
.p-guide-fv__title::after {
  right: -6rem;
  bottom: 1.5rem;
  scale: -1 1;
}
@media (min-width: 768px) {
  .p-guide-fv__title::before {
    bottom: -2.9375rem;
    left: -7.875rem;
  }
  .p-guide-fv__title::after {
    right: -7.875rem;
    bottom: -0.8125rem;
  }
}

.p-guide-fv__image {
  width: 38.0625rem;
  aspect-ratio: 609/349;
}
.p-guide-fv__image::before {
  background-image: url("../../public/img/guide/fv-guide-image-bg.svg");
}

.p-guide-flow {
  padding-block: 5rem;
  background-color: #bee0ee;
}
@media (min-width: 768px) {
  .p-guide-flow {
    padding-block: 6.25rem;
  }
}

.p-guide-flow__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 5.25rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 768px) {
  .p-guide-flow__title::before {
    position: absolute;
    width: 21.3125rem;
    height: 4.1875rem;
    content: "";
  }
}

.p-guide-flow__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2.375rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 768px) {
  .p-guide-flow__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 0.75rem;
  }
}

.p-guide-flow__item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2.25rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-guide-flow__item:not(:last-child)::after {
  width: 7.3125rem;
  height: 3.875rem;
  content: "";
  background-color: #f5d35e;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}
@media (min-width: 768px) {
  .p-guide-flow__item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 0.75rem;
  }
  .p-guide-flow__item:not(:last-child)::after {
    width: 2.9375rem;
    height: 1.5625rem;
    rotate: -90deg;
  }
}

.p-guide-flow__step {
  z-index: 1;
  position: absolute;
  top: 2.25rem;
  left: 0;
  font-family: "Dela Gothic One", sans-serif;
  font-size: 3.375rem;
  font-weight: 700;
  line-height: 1;
  color: #FF5096;
  text-transform: uppercase;
  text-shadow: 0.125rem 0.125rem 0 #fff;
}
@media (min-width: 768px) {
  .p-guide-flow__step {
    top: 1.5rem;
    font-size: 2rem;
  }
}

.p-guide-flow__pentagon {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 24.625rem;
  aspect-ratio: 394/428;
}
.p-guide-flow__pentagon::before {
  position: absolute;
  inset: 0;
  content: "";
  background-image: url("../../public/img/guide/bg-pentagon.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}
@media (min-width: 768px) {
  .p-guide-flow__pentagon {
    width: 12rem;
    aspect-ratio: 192/208;
  }
}

.p-guide-flow__item--02 .p-guide-flow__pentagon::before,
.p-guide-flow__item--04 .p-guide-flow__pentagon::before {
  scale: -1 1;
}

.p-guide-flow__text {
  z-index: 1;
  position: relative;
  font-size: 3.0625rem;
  font-weight: 700;
  text-align: center;
}
@media (min-width: 768px) {
  .p-guide-flow__text {
    font-size: 1.5rem;
  }
}

.p-guide-procedure {
  padding-block: 6.25rem 6.875rem;
  background-color: #bee0ee;
}
@media (min-width: 768px) {
  .p-guide-procedure {
    padding-block: 3.875rem 5.125rem;
  }
}

.p-guide-procedure__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 5.625rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 768px) {
  .p-guide-procedure__wrap {
    gap: 4.875rem;
    max-width: 880px;
    margin-inline: auto;
  }
}

@media (min-width: 768px) {
  .p-guide-procedure__title::before {
    position: absolute;
    width: 21.3125rem;
    height: 4.1875rem;
    content: "";
  }
}

.p-guide-procedure__cards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
  width: 100%;
}
@media (min-width: 768px) {
  .p-guide-procedure__cards {
    gap: 2.25rem;
  }
}

.p-guide-procedure__card {
  padding: 4rem 3.125rem 3.5rem 4.375rem;
  background-color: #fff;
  border: 1px solid #FF5096;
}
@media (min-width: 768px) {
  .p-guide-procedure__card {
    padding: 2.5rem 11.875rem;
  }
}

.p-guide-procedure__card-title {
  font-size: 2.25rem;
  font-weight: 700;
  color: #FF5096;
  text-align: center;
}
@media (min-width: 768px) {
  .p-guide-procedure__card-title {
    font-size: 1.375rem;
  }
}

.p-guide-procedure__note {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-margin-before: 3.75rem;
          margin-block-start: 3.75rem;
  font-size: 2rem;
  line-height: 1.28;
}
.p-guide-procedure__note::before {
  content: "＊";
}
@media (min-width: 768px) {
  .p-guide-procedure__note {
    -webkit-margin-before: 2.5rem;
            margin-block-start: 2.5rem;
    font-size: 1rem;
  }
}

.p-guide-procedure__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2.125rem;
  -webkit-margin-before: 3.625rem;
          margin-block-start: 3.625rem;
}
@media (min-width: 768px) {
  .p-guide-procedure__list {
    gap: 2rem;
    -webkit-margin-before: 2.625rem;
            margin-block-start: 2.625rem;
  }
}

.p-guide-procedure__note + .p-guide-procedure__list {
  -webkit-margin-before: 3.25rem;
          margin-block-start: 3.25rem;
}
@media (min-width: 768px) {
  .p-guide-procedure__note + .p-guide-procedure__list {
    -webkit-margin-before: 2.3125rem;
            margin-block-start: 2.3125rem;
  }
}

.p-guide-procedure__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.625rem;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  font-size: 2rem;
  line-height: 1.43;
}
.p-guide-procedure__item::before {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 1.9375rem;
  height: 1.9375rem;
  -webkit-margin-before: 0.5rem;
          margin-block-start: 0.5rem;
  content: "";
  background-color: #FF5096;
  clip-path: polygon(50% 0%, 100% 38%, 82% 100%, 18% 100%, 0% 38%);
}
@media (min-width: 768px) {
  .p-guide-procedure__item {
    gap: 0.75rem;
    font-size: 1.125rem;
  }
  .p-guide-procedure__item::before {
    width: 1.3125rem;
    height: 1.3125rem;
    -webkit-margin-before: calc((1.43em - 1rem) / 2);
            margin-block-start: calc((1.43em - 1rem) / 2);
  }
}

.p-guide-procedure__price {
  -webkit-margin-start: 2rem;
          margin-inline-start: 2rem;
  color: #FF5096;
}
@media (min-width: 768px) {
  .p-guide-procedure__price {
    -webkit-margin-start: 4rem;
            margin-inline-start: 4rem;
  }
}

.p-life-fv {
  padding-block: 8.5rem 6.25rem;
}
@media (min-width: 768px) {
  .p-life-fv {
    padding-block: 6.25rem;
  }
}

.p-life-fv__title::before, .p-life-fv__title::after {
  width: 5.375rem;
  height: 5.75rem;
  background-image: url("../../public/img/common/icon-musical.svg");
}
.p-life-fv__title::before {
  bottom: 1.875rem;
  left: -8.75rem;
  rotate: -37deg;
}
.p-life-fv__title::after {
  right: -8.125rem;
  bottom: -3.75rem;
}
@media (min-width: 768px) {
  .p-life-fv__title::before, .p-life-fv__title::after {
    width: 2.875rem;
    height: 3rem;
  }
  .p-life-fv__title::before {
    bottom: 0;
    left: -5.625rem;
    rotate: 0;
  }
  .p-life-fv__title::after {
    right: -5.375rem;
    bottom: -2.5625rem;
  }
}

.p-life-fv__image {
  width: 37.625rem;
  aspect-ratio: 602/345;
}
.p-life-fv__image::before {
  background-image: url("../../public/img/life/fv-life-image-bg.svg");
}
@media (min-width: 768px) {
  .p-life-fv__image {
    width: 41.5rem;
    aspect-ratio: 664/379;
  }
}

.p-life-schedule {
  padding-block: 1.25rem 6rem;
  background-color: #bee0ee;
}
@media (min-width: 768px) {
  .p-life-schedule {
    padding-block: 4rem 7.25rem;
  }
}

.p-life-schedule__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 768px) {
  .p-life-schedule__wrap {
    max-width: 1000px;
    margin-inline: auto;
  }
}

.p-life-schedule__tabs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.625rem;
  width: 100%;
  -webkit-margin-before: 5rem;
          margin-block-start: 5rem;
}
@media (min-width: 768px) {
  .p-life-schedule__tabs {
    gap: 0.75rem;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-margin-before: 9.375rem;
            margin-block-start: 9.375rem;
  }
}

.p-life-schedule__tab {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: 0.75rem 0.625rem;
  overflow: hidden;
  background: #fff;
  border: 1px solid #FF5096;
  -webkit-border-after: none;
          border-block-end: none;
  border-radius: 0.3125rem 0.3125rem 0 0;
}
.p-life-schedule__tab .p-life-schedule__tab-text {
  color: #FF5096;
}
.p-life-schedule__tab .p-life-schedule__tab-text::after {
  background: #FF5096;
}
.p-life-schedule__tab:not(.is-active) {
  background: #FF5096;
}
.p-life-schedule__tab:not(.is-active) .p-life-schedule__tab-text {
  color: #fff;
}
.p-life-schedule__tab:not(.is-active) .p-life-schedule__tab-text::after {
  background: #fff;
}
.p-life-schedule__tab--kinder {
  padding-inline: 0.3125rem 1.25rem;
}
@media (min-width: 768px) {
  .p-life-schedule__tab {
    max-width: 100%;
    padding-block: 0.5625rem;
  }
}
@media (any-hover: hover) {
  .p-life-schedule__tab:hover {
    cursor: pointer;
  }
}

.p-life-schedule__tab-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.75rem;
  font-family: "Dela Gothic One", sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  white-space: nowrap;
}
.p-life-schedule__tab-text::after {
  width: 0.9375rem;
  height: 1.375rem;
  content: "";
}
.p-life-schedule__tab-text--kinder {
  gap: 2.5rem;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
}
@media (min-width: 768px) {
  .p-life-schedule__tab-text {
    font-size: 1.375rem;
  }
  .p-life-schedule__tab-text--kinder {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.p-life-schedule__panel {
  width: 100%;
  padding: 3.75rem 1.875rem;
  -webkit-margin-before: -1px;
          margin-block-start: -1px;
  background: #fff;
  border: 1px solid #FF5096;
  -webkit-border-before: none;
          border-block-start: none;
}
.p-life-schedule__panel:not(.is-active) {
  display: none;
}
@media (min-width: 768px) {
  .p-life-schedule__panel {
    padding: 5.1875rem 1.875rem 4rem;
  }
}

.p-life-schedule__timeline {
  position: relative;
  width: 100%;
}
.p-life-schedule__item {
  position: relative;
  -webkit-padding-before: 2.5rem;
          padding-block-start: 2.5rem;
}
.p-life-schedule__item::before {
  position: absolute;
  inset-block: 0;
  inset-inline-start: 7.8125rem;
  width: 4px;
  content: "";
  background-color: #FF5096;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.p-life-schedule__item:first-child::before {
  inset-block-start: 50%;
}
.p-life-schedule__item--end {
  -webkit-padding-after: 3rem;
          padding-block-end: 3rem;
}
.p-life-schedule__item--end::before {
  inset-block-end: 50%;
}
.p-life-schedule__item:nth-of-type(1) {
  -webkit-padding-before: 0;
          padding-block-start: 0;
}
@media (min-width: 768px) {
  .p-life-schedule__item {
    -webkit-padding-before: 2.8125rem;
            padding-block-start: 2.8125rem;
  }
}

.p-life-schedule__contents {
  display: grid;
  grid-template-columns: 5.9375rem auto 1fr;
  gap: 1rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-life-schedule__time {
  justify-self: end;
  font-family: "Dela Gothic One", sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  color: #FF5096;
}
@media (min-width: 768px) {
  .p-life-schedule__time {
    font-size: 1.5rem;
  }
}

.p-life-schedule__bar-wrap {
  display: grid;
  grid-template-rows: 1fr auto 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
}

.p-life-schedule__bar-upper,
.p-life-schedule__bar-lower {
  width: 4px;
  height: 100%;
  margin-inline: auto;
  background-color: transparent;
}

.p-life-schedule__bar-upper--none {
  background-color: transparent;
}

.p-life-schedule__circle {
  z-index: 1;
  position: relative;
  width: 1.75rem;
  height: auto;
  aspect-ratio: 1;
  background-color: #FF5096;
  border-radius: 50%;
}

.p-life-schedule__bar-lower {
  height: calc(100% + 2.5rem);
}
@media (min-width: 768px) {
  .p-life-schedule__bar-lower {
    height: calc(100% + 1.5rem);
  }
}
.p-life-schedule__bar-lower--none {
  display: none;
}

.p-life-schedule__label {
  z-index: 1;
  position: relative;
  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;
  width: 29rem;
  height: auto;
  aspect-ratio: 464/94;
}
.p-life-schedule__label::before {
  z-index: -1;
  position: absolute;
  inset: 0;
  content: "";
  background: url("../../public/img/common/bg-title-label-purple.svg") center center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
.p-life-schedule__label--type2 {
  margin: 2rem 0 0 auto;
}
@media (min-width: 768px) {
  .p-life-schedule__label {
    width: 23.25rem;
    aspect-ratio: 372/75;
  }
  .p-life-schedule__label--type2 {
    -webkit-margin-start: 10rem;
            margin-inline-start: 10rem;
  }
}

.p-life-schedule__label-en,
.p-life-schedule__label-ja {
  position: relative;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.3;
  color: #fff;
}
@media (min-width: 768px) {
  .p-life-schedule__label-en,
  .p-life-schedule__label-ja {
    font-size: 1.125rem;
  }
}

.p-life-schedule__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.25rem;
  -webkit-padding-before: 1.5rem;
          padding-block-start: 1.5rem;
  -webkit-margin-start: 10.5rem;
          margin-inline-start: 10.5rem;
}
@media (min-width: 768px) {
  .p-life-schedule__list--row {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0;
    max-width: 570px;
  }
}
@media screen and (768px <= width <= 1040px) {
  .p-life-schedule__list--row {
    grid-template-columns: 1fr;
  }
}

.p-life-schedule__list-item {
  font-size: 1.5rem;
  line-height: 1.6;
}
.p-life-schedule__list-item::before {
  content: "・";
}
@media (min-width: 768px) {
  .p-life-schedule__list-item {
    font-size: 1rem;
  }
}

.p-life-schedule__note {
  margin: 0.875rem 0 0 10rem;
  font-size: 1.125rem;
  line-height: 1.6;
}
@media (min-width: 768px) {
  .p-life-schedule__note {
    font-size: 0.75rem;
  }
}

.p-life-schedule__image {
  width: 46.5333333333vw;
  aspect-ratio: 349/361;
  margin: 2rem 3.9375rem 0 auto;
}
.p-life-schedule__image img {
  -o-object-fit: cover;
     object-fit: cover;
}
.p-life-schedule__image--01a, .p-life-schedule__image--01b {
  width: 48.1333333333vw;
  aspect-ratio: 361/333;
}
.p-life-schedule__image--02a {
  -webkit-margin-before: 1.1875rem;
          margin-block-start: 1.1875rem;
}
.p-life-schedule__image--03a {
  width: 48.1333333333vw;
  aspect-ratio: 361/333;
  -webkit-margin-before: 2rem;
          margin-block-start: 2rem;
}
.p-life-schedule__image--04a {
  width: 47.6vw;
  aspect-ratio: 357/371;
  -webkit-margin-before: 1.1875rem;
          margin-block-start: 1.1875rem;
}
.p-life-schedule__image--05a, .p-life-schedule__image--05b {
  width: 47.6vw;
  aspect-ratio: 357/371;
  -webkit-margin-before: 1.1875rem;
          margin-block-start: 1.1875rem;
}
.p-life-schedule__image--06a, .p-life-schedule__image--06b {
  width: 46.9333333333vw;
  aspect-ratio: 352/325;
  -webkit-margin-before: 1.1875rem;
          margin-block-start: 1.1875rem;
}
.p-life-schedule__image--07a, .p-life-schedule__image--07b {
  width: 48.2666666667vw;
  aspect-ratio: 362/334;
}
.p-life-schedule__image--08b {
  width: 48.4vw;
  aspect-ratio: 363/376;
  -webkit-margin-before: 1.1875rem;
          margin-block-start: 1.1875rem;
}
.p-life-schedule__image--09b {
  width: 48.1333333333vw;
  aspect-ratio: 361/334;
  -webkit-margin-before: 1.1875rem;
          margin-block-start: 1.1875rem;
}
.p-life-schedule__image--10b {
  width: 50.2666666667vw;
  aspect-ratio: 377/375;
  -webkit-margin-before: 1.1875rem;
          margin-block-start: 1.1875rem;
}
@media (min-width: 768px) {
  .p-life-schedule__image {
    position: absolute;
    width: min(100%, 275px);
    aspect-ratio: 275/285;
    margin: unset;
  }
  .p-life-schedule__image--01a, .p-life-schedule__image--01b {
    top: -5.125rem;
    right: 6.9375rem;
    width: min(100%, 261px);
    aspect-ratio: 261/241;
  }
  .p-life-schedule__image--02a {
    top: 1.75rem;
    right: 1.0625rem;
  }
  .p-life-schedule__image--03a {
    top: -0.875rem;
    right: 7rem;
    width: min(100%, 261px);
    aspect-ratio: 261/241;
  }
  .p-life-schedule__image--04a {
    top: -2.1875rem;
    right: 0.625rem;
  }
  .p-life-schedule__image--05a {
    top: -5.75rem;
    right: 6.375rem;
  }
  .p-life-schedule__image--05b {
    top: -10.8125rem;
    right: 6.375rem;
  }
  .p-life-schedule__image--06a, .p-life-schedule__image--06b {
    top: 2.5rem;
    right: 0.4375rem;
    width: min(100%, 261px);
    aspect-ratio: 261/241;
  }
  .p-life-schedule__image--06b {
    top: -2.625rem;
  }
  .p-life-schedule__image--07a, .p-life-schedule__image--07b {
    top: 2.375rem;
    right: 6.375rem;
    width: min(100%, 261px);
    aspect-ratio: 261/241;
  }
  .p-life-schedule__image--07b {
    top: 3.25rem;
  }
  .p-life-schedule__image--08b {
    top: 1.8125rem;
    right: 0.5rem;
  }
  .p-life-schedule__image--09b {
    top: -1.875rem;
    right: 7.5rem;
    width: min(100%, 261px);
    aspect-ratio: 261/241;
  }
  .p-life-schedule__image--10b {
    top: -2.5rem;
    right: -0.625rem;
  }
}
@media screen and (768px <= width <= 1040px) {
  .p-life-schedule__image img {
    width: 80%;
    height: 80%;
  }
}
@media screen and (768px <= width <= 900px) {
  .p-life-schedule__image img {
    width: 70%;
    height: 70%;
  }
  .p-life-schedule__image--01a, .p-life-schedule__image--01b {
    right: 6%;
  }
  .p-life-schedule__image--02a {
    right: -7%;
  }
  .p-life-schedule__image--03a {
    right: 3%;
  }
  .p-life-schedule__image--04a {
    right: -10%;
  }
  .p-life-schedule__image--05a {
    right: 4%;
  }
  .p-life-schedule__image--05b {
    right: 4%;
  }
  .p-life-schedule__image--06a, .p-life-schedule__image--06b {
    right: -10%;
  }
  .p-life-schedule__image--07a, .p-life-schedule__image--07b {
    right: 4%;
  }
  .p-life-schedule__image--08b {
    right: -7%;
  }
  .p-life-schedule__image--09b {
    right: 7%;
  }
  .p-life-schedule__image--10b {
    right: -10%;
  }
}

.p-school-fv {
  padding-block: 8.125rem 3rem;
  background-color: #f9f6c1;
}
@media (min-width: 768px) {
  .p-school-fv {
    padding-block: 6.375rem 4.75rem;
  }
}

.p-school-fv__title::before, .p-school-fv__title::after {
  width: 7.875rem;
  height: 4.625rem;
  background-image: url("../../public/img/common/icon-bus.svg");
}
.p-school-fv__title::before {
  bottom: 3.6875rem;
  left: -10.1875rem;
}
.p-school-fv__title::after {
  right: -9.5rem;
  bottom: -4.625rem;
}
@media (min-width: 768px) {
  .p-school-fv__title::before {
    bottom: 0;
    left: -10.4375rem;
    rotate: -12deg;
  }
  .p-school-fv__title::after {
    right: -10.1875rem;
    bottom: -2rem;
  }
}

.p-school-fv__image {
  width: 38.125rem;
  aspect-ratio: 610/348;
}
.p-school-fv__image::before {
  background-image: url("../../public/img/school/fv-school-image-bg.svg");
}
@media (min-width: 768px) {
  .p-school-fv__image {
    width: 41.5rem;
    aspect-ratio: 664/379;
  }
}

.p-school-overview {
  z-index: 2;
  position: relative;
  padding-block: 6.25rem 3.75rem;
  background: #f9f6c1;
}
.p-school-overview::before {
  position: absolute;
  bottom: -5rem;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 750/462;
  content: "";
  background: url("../../public/img/common/bg-wave-yellow-sp.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 768px) {
  .p-school-overview {
    padding-block: 5.625rem 4rem;
  }
  .p-school-overview::before {
    bottom: -6.375rem;
    aspect-ratio: 2000/541;
    -webkit-margin-after: -1px;
            margin-block-end: -1px;
    background: url("../../public/img/common/bg-wave-yellow.svg") center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
}

.p-school-overview__wrap {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 768px) {
  .p-school-overview__wrap {
    gap: 4rem;
  }
}

.p-school-overview__title {
  position: absolute;
  top: -0.625rem;
}
@media (min-width: 768px) {
  .p-school-overview__title::before {
    position: absolute;
    width: 21.3125rem;
    height: 4.1875rem;
    content: "";
  }
}

.p-school-overview__card {
  width: 100%;
  padding: 5.5rem 2.25rem 3rem;
  background-color: #fff;
  border: 1px solid #FF5096;
}
@media (min-width: 768px) {
  .p-school-overview__card {
    max-width: 900px;
    padding: 5.875rem 7.0625rem 3.5rem;
    margin-inline: auto;
  }
}

.p-school-overview__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.p-school-overview__row {
  position: relative;
  display: grid;
  grid-template-columns: 9.125rem 1fr;
  gap: 1rem;
  padding-block: 1.75rem;
}
.p-school-overview__row:first-child {
  -webkit-padding-before: 0;
          padding-block-start: 0;
}
.p-school-overview__row:last-child {
  -webkit-padding-after: 0;
          padding-block-end: 0;
}
.p-school-overview__row:not(:last-child)::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.6875rem;
  content: "";
  background-image: url("../../public/img/school/dot-line.svg");
  background-repeat: repeat-x;
  background-position: left center;
  background-size: auto 0.6875rem;
}
@media (min-width: 768px) {
  .p-school-overview__row {
    grid-template-columns: 4.875rem 1fr;
    gap: 4.5rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding-block: 2rem;
  }
  .p-school-overview__row:not(:last-child)::after {
    height: 0.375rem;
    background-size: auto 0.375rem;
  }
}
@media (min-width: 768px) {
  .p-school-overview__row--center .p-school-overview__term {
    -ms-flex-item-align: center;
        align-self: center;
  }
}

.p-school-overview__term {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.7;
  color: #FF5096;
}
@media (min-width: 768px) {
  .p-school-overview__term {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: 7.5rem;
    font-size: 1rem;
  }
}

.p-school-overview__desc {
  font-size: 2rem;
  line-height: 1.7;
}
@media (min-width: 768px) {
  .p-school-overview__desc {
    font-size: 1rem;
  }
}
.p-school-overview__desc--list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3.75rem;
}
@media (min-width: 768px) {
  .p-school-overview__desc--list {
    gap: 0;
  }
}

.p-school-access {
  padding-block: 12.625rem 7.375rem;
  background-color: #bee0ee;
}
@media (min-width: 768px) {
  .p-school-access {
    padding-block: 14.5625rem 10.75rem;
  }
}

.p-school-access__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 5rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 768px) {
  .p-school-access__wrap {
    gap: 8.75rem;
  }
}

.p-school-access__heading {
  position: relative;
}
.p-school-access__heading::before {
  z-index: 2;
  position: absolute;
  right: calc(100% + 8.75rem);
  bottom: -3.75rem;
  width: 6.875rem;
  height: 4.875rem;
  content: "";
  background-image: url("../../public/img/common/icon-planet.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.p-school-access__heading::after {
  z-index: 1;
  position: absolute;
  top: -3.75rem;
  left: calc(100% + 8.75rem);
  width: 6.0625rem;
  height: 5.875rem;
  content: "";
  background-image: url("../../public/img/common/icon-rocket.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media (min-width: 768px) {
  .p-school-access__title::before {
    width: 21.3125rem;
    height: 4.1875rem;
    content: "";
  }
}

.p-school-access__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5625rem;
  width: 100%;
}
@media (min-width: 768px) {
  .p-school-access__content {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 3.5rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.p-school-access__map {
  width: 41rem;
  margin-inline: auto;
}
.p-school-access__map iframe {
  display: block;
  width: 100%;
  aspect-ratio: 4/3;
  border: 0;
}
@media (min-width: 768px) {
  .p-school-access__map {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: 30.6875rem;
  }
  .p-school-access__map iframe {
    aspect-ratio: 491/328;
  }
}

.p-school-access__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2.75rem;
}
@media (min-width: 768px) {
  .p-school-access__info {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    gap: 1.5rem;
    -webkit-margin-before: 1.6875rem;
            margin-block-start: 1.6875rem;
  }
}

.p-school-access__address {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.7;
}
@media (min-width: 768px) {
  .p-school-access__address {
    font-size: 1rem;
  }
}

.p-school-access__route-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3.125rem;
  padding: 0;
  margin: 0;
  list-style: none;
}
@media (min-width: 768px) {
  .p-school-access__route-list {
    gap: 1rem;
  }
}

.p-school-access__route {
  display: grid;
  grid-template-columns: 1fr;
  font-size: 2rem;
  line-height: 1.8;
}
@media (min-width: 768px) {
  .p-school-access__route {
    grid-template-areas: "type station" "time time";
    grid-template-columns: auto 1fr;
    font-size: 1rem;
  }
}

.p-school-access__route-type {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-school-access__route-type::before {
  content: "・";
}
@media (min-width: 768px) {
  .p-school-access__route-type {
    grid-area: type;
  }
}

.p-school-access__route-station {
  -webkit-padding-start: 1em;
          padding-inline-start: 1em;
}
@media (min-width: 768px) {
  .p-school-access__route-station {
    grid-area: station;
  }
}

.p-school-access__route-time {
  -webkit-padding-start: 1em;
          padding-inline-start: 1em;
}
@media (min-width: 768px) {
  .p-school-access__route-time {
    grid-area: time;
  }
}

.p-top-fv {
  z-index: 1;
  position: relative;
  padding-block: 1.25rem 21.625rem;
  overflow-x: clip;
  background-color: #7dc1dd;
}
.p-top-fv::before {
  z-index: -1;
  position: absolute;
  bottom: -5rem;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 750/500;
  content: "";
  background: url("../../public/img/top/bg-wave-fv-sp.svg") center bottom;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 768px) {
  .p-top-fv {
    padding-block: 1.875rem 3.9375rem;
  }
  .p-top-fv::before {
    bottom: -6.6875rem;
    aspect-ratio: 1440/250;
    background-image: url("../../public/img/top/bg-wave-fv.svg");
  }
}

.p-top-fv__bg-block {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.p-top-fv__bg-block::before {
  position: absolute;
  top: 22.125rem;
  right: 0;
  width: 13.625rem;
  height: auto;
  aspect-ratio: 218/368;
  content: "";
  background: url("../../public/img/top/bg-fv-block-sp.svg") top right;
  background-repeat: no-repeat;
  background-size: contain;
}
.p-top-fv__bg-block::after {
  position: absolute;
  bottom: 3rem;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 750/222;
  content: "";
  background: url("../../public/img/top/bg-fv-block-bottom-sp.svg") center bottom;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 768px) {
  .p-top-fv__bg-block::before {
    position: absolute;
    top: -3rem;
    left: 50%;
    width: 100%;
    max-width: 1478px;
    height: auto;
    aspect-ratio: 1478/661;
    content: "";
    background: url("../../public/img/top/bg-fv-block.webp") center center;
    background-repeat: no-repeat;
    background-size: cover;
    translate: -50% 0;
  }
  .p-top-fv__bg-block::after {
    display: none;
  }
}

.p-top-fv__wrap {
  z-index: 1;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3.5625rem;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media (min-width: 768px) {
  .p-top-fv__wrap {
    gap: 0;
    max-width: 65rem;
    margin-inline: auto;
  }
}

.p-top-fv__catch-en {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.625rem;
  width: calc(100% - 1.625rem);
  margin-inline: auto;
  font-family: "Bebas Neue", sans-serif;
  font-size: 3.4375rem;
  color: #fff;
  text-transform: uppercase;
}
.p-top-fv__catch-en span {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 1.25rem 2.125rem;
  letter-spacing: 0.2em;
  background-color: #FF5096;
}
@media (min-width: 768px) {
  .p-top-fv__catch-en {
    width: unset;
    margin-inline: unset;
    font-size: 2rem;
  }
  .p-top-fv__catch-en span {
    padding: 0.625rem 1.125rem;
  }
}

.p-top-fv__image {
  z-index: -1;
  -ms-flex-item-align: center;
      align-self: center;
  width: 100%;
  aspect-ratio: 750/348;
  -webkit-margin-before: -5.375rem;
          margin-block-start: -5.375rem;
}
.p-top-fv__image img {
  -o-object-fit: cover;
     object-fit: cover;
}
@media (min-width: 768px) {
  .p-top-fv__image {
    width: 51.8125rem;
    aspect-ratio: 829/336;
    -webkit-margin-before: -3.375rem;
            margin-block-start: -3.375rem;
    -webkit-margin-start: 4.375rem;
            margin-inline-start: 4.375rem;
  }
}

.p-top-fv__catch-ja {
  padding-inline: 1.5rem;
  font-size: 3.75rem;
  font-weight: 700;
  line-height: 1.33;
  color: #fff;
  letter-spacing: 0.1em;
  white-space: nowrap;
}
@media (min-width: 768px) {
  .p-top-fv__catch-ja {
    font-size: 2rem;
    line-height: 1.45;
  }
}

.p-top-fv__bus-wrap {
  position: absolute;
  inset-block-end: 2.625rem;
  inset-inline-start: 0;
  width: 100%;
}
@media (min-width: 768px) {
  .p-top-fv__bus-wrap {
    inset-block-end: 8.4375rem;
  }
}

.p-top-fv__bus {
  z-index: 3;
  position: relative;
  width: 26rem;
  aspect-ratio: 416/220;
  rotate: -6deg;
  -webkit-animation: bus-run 22s linear -8s infinite, bus-bounce 0.3s steps(2) infinite;
          animation: bus-run 22s linear -8s infinite, bus-bounce 0.3s steps(2) infinite;
}
@media (min-width: 768px) {
  .p-top-fv__bus {
    width: 15.4375rem;
    aspect-ratio: 247/114;
    -webkit-animation-delay: -3s, 0s;
            animation-delay: -3s, 0s;
  }
}

@-webkit-keyframes float-a {
  0%, 100% {
    rotate: -6deg;
    translate: 0 0;
  }
  50% {
    rotate: 6deg;
    translate: 0 -1.125rem;
  }
}

@keyframes float-a {
  0%, 100% {
    rotate: -6deg;
    translate: 0 0;
  }
  50% {
    rotate: 6deg;
    translate: 0 -1.125rem;
  }
}
@-webkit-keyframes float-b {
  0%, 100% {
    rotate: 7deg;
    translate: 0 0;
  }
  50% {
    rotate: -5deg;
    translate: 0 -1rem;
  }
}
@keyframes float-b {
  0%, 100% {
    rotate: 7deg;
    translate: 0 0;
  }
  50% {
    rotate: -5deg;
    translate: 0 -1rem;
  }
}
@-webkit-keyframes bus-run {
  from {
    translate: calc(100vw + 100%) 0;
  }
  to {
    translate: -100% 0;
  }
}
@keyframes bus-run {
  from {
    translate: calc(100vw + 100%) 0;
  }
  to {
    translate: -100% 0;
  }
}
@-webkit-keyframes bus-bounce {
  0% {
    top: 0;
  }
  100% {
    top: 3px;
  }
}
@keyframes bus-bounce {
  0% {
    top: 0;
  }
  100% {
    top: 3px;
  }
}
.p-top-fv__icons img {
  z-index: 1;
  position: absolute;
}

.p-top-fv__icon-stars {
  top: 1.0625rem;
  right: 1.25rem;
  width: 5.4375rem;
  height: 4.875rem;
  rotate: 15deg;
  -webkit-animation: float-a 4s ease-in-out infinite;
          animation: float-a 4s ease-in-out infinite;
}
@media (min-width: 768px) {
  .p-top-fv__icon-stars {
    top: 1.6875rem;
    right: unset;
    left: calc(50% + 25rem);
    width: 3.5rem;
    height: 4.375rem;
    rotate: 0;
  }
}

.p-top-fv__icon-bus {
  top: 14.8125rem;
  right: 4.6875rem;
  width: 9.0625rem;
  height: 5.375rem;
  aspect-ratio: 145/86;
  -webkit-animation: float-b 3.5s ease-in-out infinite;
          animation: float-b 3.5s ease-in-out infinite;
  -webkit-animation-delay: -1.2s;
          animation-delay: -1.2s;
}
@media (min-width: 768px) {
  .p-top-fv__icon-bus {
    top: 0.75rem;
    right: unset;
    left: calc(50% + 14.125rem);
  }
}

.p-top-fv__icon-rainbow {
  top: 37.75rem;
  left: 1.25rem;
  width: 9.125rem;
  height: 5.375rem;
  aspect-ratio: 146/86;
  rotate: -10deg;
  -webkit-animation: float-a 5s ease-in-out infinite;
          animation: float-a 5s ease-in-out infinite;
  -webkit-animation-delay: -2.5s;
          animation-delay: -2.5s;
}
@media (min-width: 768px) {
  .p-top-fv__icon-rainbow {
    top: unset;
    bottom: 3.125rem;
    left: calc(50% + 29.25rem);
    width: 7.5625rem;
    height: 4.25rem;
    aspect-ratio: 121/68;
    rotate: -7deg;
  }
}

.p-top-fv__icon-musical {
  right: 0.9375rem;
  bottom: 16.625rem;
  width: 5.375rem;
  height: 4.625rem;
  -webkit-animation: float-b 4.5s ease-in-out infinite;
          animation: float-b 4.5s ease-in-out infinite;
  -webkit-animation-delay: -0.8s;
          animation-delay: -0.8s;
}
@media (min-width: 768px) {
  .p-top-fv__icon-musical {
    right: unset;
    bottom: 4rem;
    left: calc(50% + 11.5rem);
    width: 3.625rem;
    height: 3.125rem;
  }
}

.p-top-fv__icon-musical--type2 {
  bottom: -4rem;
  left: 2.5rem;
  width: 5.375rem;
  height: 4.625rem;
  aspect-ratio: 86/74;
  rotate: -18deg;
}
@media (min-width: 768px) {
  .p-top-fv__icon-musical--type2 {
    display: none;
  }
}

.p-top-fv__icon-king {
  display: none;
}
@media (min-width: 768px) {
  .p-top-fv__icon-king {
    top: 8.9375rem;
    left: calc(50% + 33rem);
    display: block;
    width: 4.25rem;
    height: 3.375rem;
    aspect-ratio: 68/54;
    -webkit-animation: float-a 3.8s ease-in-out infinite;
            animation: float-a 3.8s ease-in-out infinite;
    -webkit-animation-delay: -1.8s;
            animation-delay: -1.8s;
  }
}
@media screen and (768px <= width <= 1240px) {
  .p-top-fv__icon-king {
    right: 2%;
    left: unset;
  }
}

.p-top-fv__icon-sun {
  display: none;
}
@media (min-width: 768px) {
  .p-top-fv__icon-sun {
    top: 9.625rem;
    right: calc(50% + 26.0625rem);
    display: block;
    width: 7.0625rem;
    height: 6.5625rem;
    aspect-ratio: 113/105;
    -webkit-animation: float-b 5.2s ease-in-out infinite;
            animation: float-b 5.2s ease-in-out infinite;
    -webkit-animation-delay: -3.1s;
            animation-delay: -3.1s;
  }
}

.p-top-fv__icon-line-green {
  display: none;
}
@media (min-width: 768px) {
  .p-top-fv__icon-line-green {
    top: 18.3125rem;
    right: calc(50% + 27rem);
    display: block;
    width: 3.9375rem;
    height: 4.375rem;
    aspect-ratio: 63/70;
    -webkit-animation: float-a 4.2s ease-in-out infinite;
            animation: float-a 4.2s ease-in-out infinite;
    -webkit-animation-delay: -0.4s;
            animation-delay: -0.4s;
  }
}

.p-top-blog {
  z-index: 5;
  position: relative;
  padding-block: 11.75rem 3.875rem;
  overflow-x: clip;
}
.p-top-blog::before {
  z-index: -1;
  position: absolute;
  bottom: -3.75rem;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 750/462;
  content: "";
  background: url("../../public/img/common/bg-wave-yellow-sp.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 768px) {
  .p-top-blog {
    padding-block: 9.25rem 0;
  }
  .p-top-blog::before {
    bottom: -7.25rem;
    aspect-ratio: 2000/541;
    -webkit-margin-after: -1px;
            margin-block-end: -1px;
    background: url("../../public/img/common/bg-wave-yellow.svg") center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
}

.p-top-blog__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 6.625rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 768px) {
  .p-top-blog__wrap {
    gap: 2.5rem;
  }
}

.p-top-blog__title {
  position: relative;
}
.p-top-blog__title::before {
  z-index: 1;
  position: absolute;
  top: -3.75rem;
  right: -10.8125rem;
  width: 8.3125rem;
  height: 5.375rem;
  content: "";
  background: url("../../public/img/common/icon-star.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 768px) {
  .p-top-blog__title::before {
    top: -2.875rem;
    right: unset;
    left: -8.75rem;
  }
}

.p-top-blog__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.5rem 1.875rem;
  width: 100%;
}
@media (min-width: 768px) {
  .p-top-blog__list {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.375rem;
  }
}

.p-top-blog__item:last-child:nth-child(odd) {
  grid-column: 1/-1;
  width: 50%;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .p-top-blog__item:last-child:nth-child(odd) {
    grid-column: auto;
    width: auto;
    margin-inline: 0;
  }
}

.p-top-blog__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  color: #0A0A0A;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .p-top-blog__link:hover {
    cursor: pointer;
    opacity: 0.7;
  }
  .p-top-blog__link:hover .p-top-blog__image img {
    scale: 1.1;
  }
}

.p-top-blog__image {
  -ms-flex-item-align: center;
      align-self: center;
  width: 18.625rem;
  aspect-ratio: 1/1;
  overflow: hidden;
  clip-path: url("#rounded-pentagon");
}
@media (min-width: 768px) {
  .p-top-blog__image {
    width: 21.25rem;
  }
}
.p-top-blog__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: scale 0.3s ease;
  transition: scale 0.3s ease;
}

.p-top-blog__item:nth-child(1) .p-top-blog__image {
  -webkit-transform: rotate(-18deg);
          transform: rotate(-18deg);
}

@media screen and (max-width: 767px) {
  .p-top-blog__item:nth-child(2) .p-top-blog__image {
    -webkit-transform: rotate(19deg);
            transform: rotate(19deg);
  }
}

@media (min-width: 768px) {
  .p-top-blog__item:nth-child(3) .p-top-blog__image {
    -webkit-transform: rotate(20deg);
            transform: rotate(20deg);
  }
}

.p-top-blog__tag {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
  padding: 1.25rem 1.625rem;
  -webkit-margin-before: 2.5rem;
          margin-block-start: 2.5rem;
  background: #fff;
  border: 0.125rem solid #FF5096;
}
@media (min-width: 768px) {
  .p-top-blog__tag {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 2.375rem;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0.5rem 0.625rem;
  }
}

.p-top-blog__date {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 2rem;
}
.p-top-blog__date::before {
  display: block;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 1rem;
  height: 1rem;
  content: "";
  background: #FF5096;
}
@media (min-width: 768px) {
  .p-top-blog__date {
    gap: 0.75rem;
    font-size: 1.125rem;
  }
  .p-top-blog__date::before {
    width: 0.625rem;
    height: 0.625rem;
  }
}

.p-top-blog__category {
  font-size: 2rem;
  text-align: center;
}
@media (min-width: 768px) {
  .p-top-blog__category {
    font-size: 1rem;
  }
}

.p-top-blog__card-title {
  -webkit-margin-before: 1rem;
          margin-block-start: 1rem;
  font-size: 2rem;
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p-top-blog__card-title {
    -webkit-margin-before: 0.625rem;
            margin-block-start: 0.625rem;
    font-size: 1rem;
  }
}

.p-top-blog__button {
  z-index: 1;
}
@media (min-width: 768px) {
  .p-top-blog__button {
    padding: 0.5rem 1.5rem 0.5rem 2.5rem;
  }
}

.p-top-about {
  position: relative;
  padding-block: 11.25rem 5rem;
  background: #bee0ee;
}
.p-top-about::before {
  position: absolute;
  bottom: -5rem;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 750/462;
  content: "";
  background: url("../../public/img/common/bg-wave-blue-sp.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 768px) {
  .p-top-about {
    padding-block: 7.625rem 4.375rem;
  }
  .p-top-about::before {
    bottom: -5.625rem;
    aspect-ratio: 2000/313;
    -webkit-margin-after: -1px;
            margin-block-end: -1px;
    background: url("../../public/img/common/bg-wave-blue.svg") center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
}

@media (min-width: 768px) {
  .p-top-about__wrap {
    width: min(100%, 65rem);
    margin-inline: auto;
  }
}

.p-top-about__title {
  z-index: 6;
  position: relative;
  line-height: 1.1;
}
.p-top-about__title::before {
  z-index: 1;
  position: absolute;
  right: 1.5rem;
  bottom: -3.5rem;
  width: 5.25rem;
  height: 6rem;
  content: "";
  background: url("../../public/img/common/icon-butterfly.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 768px) {
  .p-top-about__title {
    line-height: 1;
  }
  .p-top-about__title::before {
    right: 8.125rem;
    width: 6.9375rem;
    height: 7.9375rem;
  }
}

.p-top-about__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4.875rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-margin-before: 7rem;
          margin-block-start: 7rem;
}
@media (min-width: 768px) {
  .p-top-about__contents {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3.4375rem;
  }
}

.p-top-about__image {
  z-index: 1;
  position: relative;
  width: 40.4375rem;
  aspect-ratio: 647/452;
}
.p-top-about__image img {
  -o-object-fit: cover;
     object-fit: cover;
}
.p-top-about__image::before {
  z-index: -1;
  position: absolute;
  bottom: -1.25rem;
  left: -1.25rem;
  width: 100%;
  height: 100%;
  content: "";
  background: url("../../public/img/top/about-image-bg.svg") center center;
  background-repeat: no-repeat;
  background-size: contain;
}
@media (min-width: 768px) {
  .p-top-about__image {
    width: 27.3125rem;
    aspect-ratio: 437/306;
  }
  .p-top-about__image::before {
    bottom: -0.625rem;
    left: -0.625rem;
  }
}

.p-top-about__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 768px) {
  .p-top-about__body {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    gap: 2.5rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

@media (min-width: 768px) {
  .p-top-about__button {
    -ms-flex-item-align: center;
        align-self: center;
  }
}

.p-top-life {
  z-index: 3;
  position: relative;
  padding-block: 10.9375rem 2.625rem;
}
.p-top-life::before {
  position: absolute;
  bottom: -5rem;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 750/462;
  content: "";
  background: url("../../public/img/common/bg-wave-yellow-sp.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 768px) {
  .p-top-life {
    padding-block: 6.25rem 2.625rem;
  }
  .p-top-life::before {
    bottom: -6.125rem;
    aspect-ratio: 2000/541;
    background: url("../../public/img/common/bg-wave-yellow.svg") center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
}

@media (min-width: 768px) {
  .p-top-life__wrap {
    width: min(100%, 65rem);
    margin-inline: auto;
  }
}

.p-top-life__title {
  position: relative;
  line-height: 1.1;
}
.p-top-life__title::before {
  z-index: 1;
  position: absolute;
  top: -3.375rem;
  left: 5.75rem;
  width: 4.75rem;
  height: 4rem;
  content: "";
  background: url("../../public/img/common/icon-musical.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 768px) {
  .p-top-life__title {
    line-height: 1;
  }
  .p-top-life__title::before {
    right: 22.8125rem;
    left: unset;
    width: 4.75rem;
    height: 4rem;
  }
}

.p-top-life__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3.125rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-margin-before: 6.25rem;
          margin-block-start: 6.25rem;
}
@media (min-width: 768px) {
  .p-top-life__contents {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3.4375rem;
  }
}

.p-top-life__image {
  z-index: 1;
  position: relative;
  width: 39.1875rem;
  aspect-ratio: 627/473;
}
.p-top-life__image img {
  -o-object-fit: cover;
     object-fit: cover;
}
.p-top-life__image::before {
  z-index: -1;
  position: absolute;
  bottom: -1.25rem;
  left: -1.25rem;
  width: 100%;
  height: 100%;
  content: "";
  background: url("../../public/img/top/life-image-bg.svg") center center;
  background-repeat: no-repeat;
  background-size: contain;
}
@media (min-width: 768px) {
  .p-top-life__image {
    width: 30.3125rem;
    aspect-ratio: 485/351;
  }
  .p-top-life__image::before {
    bottom: -0.625rem;
    left: -0.625rem;
  }
}

.p-top-life__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 768px) {
  .p-top-life__body {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    gap: 2.5rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

@media screen and (max-width: 767px) {
  .p-top-life__button {
    padding: 2.1875rem 2.5rem 2.1875rem 4rem;
  }
}
@media (min-width: 768px) {
  .p-top-life__button {
    -ms-flex-item-align: center;
        align-self: center;
  }
}

.p-top-guide {
  z-index: 2;
  position: relative;
  padding-block: 13.5rem 4.25rem;
  background: #bee0ee;
}
.p-top-guide::before {
  z-index: -1;
  position: absolute;
  bottom: -5rem;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 750/462;
  content: "";
  background: url("../../public/img/common/bg-wave-blue-sp.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 768px) {
  .p-top-guide {
    padding-block: 9.9375rem 1rem;
  }
  .p-top-guide::before {
    bottom: -6.25rem;
    aspect-ratio: 2000/313;
    -webkit-margin-after: -1px;
            margin-block-end: -1px;
    background: url("../../public/img/common/bg-wave-blue.svg") center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
}

@media (min-width: 768px) {
  .p-top-guide__wrap {
    width: min(100%, 65rem);
    margin-inline: auto;
  }
}

.p-top-guide__title {
  position: relative;
}
.p-top-guide__title::before {
  z-index: 1;
  position: absolute;
  top: -5.125rem;
  left: 1.25rem;
  width: 6.8125rem;
  height: 6.3125rem;
  content: "";
  background: url("../../public/img/common/icon-bear.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 768px) {
  .p-top-guide__title::before {
    top: -4.8125rem;
    left: 17.0625rem;
  }
}

.p-top-guide__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4.5rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-margin-before: 7.5rem;
          margin-block-start: 7.5rem;
}
@media (min-width: 768px) {
  .p-top-guide__contents {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    gap: 3.4375rem;
  }
}

.p-top-guide__image {
  z-index: 1;
  position: relative;
  width: 36.6875rem;
  aspect-ratio: 587/408;
}
.p-top-guide__image img {
  -o-object-fit: cover;
     object-fit: cover;
}
.p-top-guide__image::before {
  z-index: -1;
  position: absolute;
  right: -1.25rem;
  bottom: -1.25rem;
  width: 100%;
  height: 100%;
  content: "";
  background: url("../../public/img/top/guide-image-bg.svg") center center;
  background-repeat: no-repeat;
  background-size: contain;
}
@media (min-width: 768px) {
  .p-top-guide__image {
    width: 28.875rem;
    aspect-ratio: 462/322;
  }
  .p-top-guide__image::before {
    right: -0.625rem;
    bottom: -0.625rem;
  }
}

.p-top-guide__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3.25rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 768px) {
  .p-top-guide__body {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    gap: 2.5rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

@media screen and (max-width: 767px) {
  .p-top-guide__button {
    padding: 2.125rem 2.5rem 2.125rem 3.375rem;
  }
}
@media (min-width: 768px) {
  .p-top-guide__button {
    -ms-flex-item-align: center;
        align-self: center;
  }
}

.p-top-school {
  position: relative;
  padding-block: 11.875rem 2.375rem;
}
.p-top-school::before {
  position: absolute;
  bottom: -5rem;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 750/462;
  -webkit-margin-after: -1px;
          margin-block-end: -1px;
  content: "";
  background: url("../../public/img/common/bg-wave-yellow-sp.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 768px) {
  .p-top-school {
    padding-block: 10.6875rem 6rem;
  }
  .p-top-school::before {
    bottom: -6.25rem;
    aspect-ratio: 2000/541;
    background: url("../../public/img/common/bg-wave-yellow.svg") center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
}

@media (min-width: 768px) {
  .p-top-school__wrap {
    width: min(100%, 65rem);
    margin-inline: auto;
  }
}

.p-top-school__title {
  position: relative;
}
.p-top-school__title::before {
  z-index: 1;
  position: absolute;
  top: -2.625rem;
  right: 1rem;
  width: 9.625rem;
  height: 5.75rem;
  content: "";
  background: url("../../public/img/common/icon-bus.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 768px) {
  .p-top-school__title::before {
    top: -3.75rem;
    right: 16.875rem;
  }
}

.p-top-school__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 5rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-margin-before: 7.5rem;
          margin-block-start: 7.5rem;
}
@media (min-width: 768px) {
  .p-top-school__contents {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3.4375rem;
  }
}

.p-top-school__image {
  z-index: 1;
  position: relative;
  width: 37.5625rem;
  aspect-ratio: 601/416;
}
.p-top-school__image img {
  -o-object-fit: cover;
     object-fit: cover;
}
.p-top-school__image::before {
  z-index: -1;
  position: absolute;
  bottom: -1.25rem;
  left: -1.25rem;
  width: 100%;
  height: 100%;
  content: "";
  background: url("../../public/img/top/school-image-bg.svg") center center;
  background-repeat: no-repeat;
  background-size: contain;
}
@media (min-width: 768px) {
  .p-top-school__image {
    width: 28.9375rem;
    aspect-ratio: 463/320;
  }
  .p-top-school__image::before {
    bottom: -0.625rem;
    left: -0.625rem;
  }
}

.p-top-school__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4.625rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 768px) {
  .p-top-school__body {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    gap: 2.5rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

@media screen and (max-width: 767px) {
  .p-top-school__button {
    padding: 2.125rem 2.5rem 2.125rem 3.375rem;
  }
}
@media (min-width: 768px) {
  .p-top-school__button {
    -ms-flex-item-align: center;
        align-self: center;
  }
}

.p-top-contact {
  padding-block: 13.5rem 7.5rem;
  background-color: #5b7adb;
}
@media (min-width: 768px) {
  .p-top-contact {
    padding-block: 6.25rem 7rem;
  }
}

.p-top-contact__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 6rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
}
@media (min-width: 768px) {
  .p-top-contact__wrap {
    gap: 2.5rem;
    width: min(100%, 37.5rem);
    margin-inline: auto;
  }
}

.p-top-contact__title {
  position: relative;
  color: #fff;
}
.p-top-contact__title::before {
  z-index: 1;
  position: absolute;
  top: -1.25rem;
  right: -6.375rem;
  width: 4rem;
  height: 5.0625rem;
  content: "";
  background: url("../../public/img/common/icon-hand.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 768px) {
  .p-top-contact__title::before {
    top: -1.25rem;
    right: -5.625rem;
  }
}

.p-top-contact__text {
  color: #fff;
  text-align: left;
}

.p-top-contact__button {
  padding: 2.125rem 3.375rem;
}
@media (min-width: 768px) {
  .p-top-contact__button {
    padding: 1rem 2rem;
  }
}

.p-top-recruit {
  padding-block: 8.875rem 8.75rem;
  background-color: #9ba8df;
}
@media (min-width: 768px) {
  .p-top-recruit {
    padding-block: 6.875rem 6.4375rem;
  }
}

.p-top-recruit__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 768px) {
  .p-top-recruit__wrap {
    gap: 0.8125rem;
  }
}

.p-top-recruit__title {
  z-index: 1;
  position: relative;
  -webkit-padding-after: 3.75rem;
          padding-block-end: 3.75rem;
  color: #fff;
}
.p-top-recruit__title::after {
  z-index: -1;
  position: absolute;
  bottom: 0;
  left: -5rem;
  width: 11.25rem;
  height: 4.375rem;
  content: "";
  background: url("../../public/img/common/icon-line.svg") center center;
  background-repeat: no-repeat;
  background-size: contain;
}
@media (min-width: 768px) {
  .p-top-recruit__title {
    -webkit-padding-after: 2.5rem;
            padding-block-end: 2.5rem;
  }
  .p-top-recruit__title::after {
    bottom: 0.9375rem;
    left: -1.25rem;
    width: 5.8125rem;
    height: 2.5rem;
  }
}

.p-top-recruit__image {
  width: 41.6875rem;
  aspect-ratio: 667/327;
}
.p-top-recruit__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 768px) {
  .p-top-recruit__body {
    gap: 3.25rem;
    -webkit-margin-before: 2.0625rem;
            margin-block-start: 2.0625rem;
  }
}

.p-top-recruit__button {
  padding: 2.125rem 3.375rem;
}
@media (min-width: 768px) {
  .p-top-recruit__button {
    padding: 1rem;
  }
}

@media (min-width: 768px) {
  .p-blog__block {
    max-width: 800px;
  }
}

.p-blog-fv {
  padding-block: 5rem 3rem;
}
@media (min-width: 768px) {
  .p-blog-fv {
    padding-block: 7.375rem 4rem;
  }
}

.p-blog-fv__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3.875rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 768px) {
  .p-blog-fv__wrap {
    gap: 0.75rem;
  }
}

.p-blog-fv__title {
  font-size: 4rem;
  font-weight: 700;
  line-height: 1;
  color: #FF5096;
}
@media (min-width: 768px) {
  .p-blog-fv__title {
    font-size: 2rem;
  }
}

.p-blog-list {
  padding-block: 4rem 8.5rem;
}
@media (min-width: 768px) {
  .p-blog-list {
    padding-block: 3rem 6.25rem;
  }
}

.p-blog-list__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4rem;
}
@media (min-width: 768px) {
  .p-blog-list__wrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 5rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.p-blog-list__main {
  width: 100%;
}
@media (min-width: 768px) {
  .p-blog-list__main {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
  }
}

.p-blog-list__cards {
  display: grid;
  grid-template-columns: 1fr;
  gap: 4.875rem;
}
@media (min-width: 768px) {
  .p-blog-list__cards {
    grid-template-columns: repeat(3, 1fr);
    gap: 2.5rem 1rem;
  }
}

.p-blog-list__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  height: 100%;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .p-blog-list__link:hover {
    opacity: 0.7;
  }
  .p-blog-list__link:hover .p-blog-list__image-img {
    scale: 1.1;
  }
}

.p-blog-list__image {
  width: 100%;
  aspect-ratio: 249/138;
  overflow: hidden;
  border-radius: 1rem;
}
@media (min-width: 768px) {
  .p-blog-list__image {
    max-width: 249px;
    border-radius: 0.5rem;
  }
}

.p-blog-list__image-img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 1rem;
  -webkit-transition: scale 0.3s ease;
  transition: scale 0.3s ease;
}
@media (min-width: 768px) {
  .p-blog-list__image-img {
    border-radius: 0.5rem;
  }
}

.p-blog-list__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.375rem;
  -webkit-padding-before: 1.375rem;
          padding-block-start: 1.375rem;
}

.p-blog-list__title {
  display: -webkit-box;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  overflow: hidden;
  -webkit-line-clamp: 2;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
  color: #FF5096;
  -webkit-box-orient: vertical;
}
@media (min-width: 768px) {
  .p-blog-list__title {
    font-size: 1rem;
  }
}

.p-blog-list__date {
  font-size: 1.5rem;
  color: #0A0A0A;
}
@media (min-width: 768px) {
  .p-blog-list__date {
    font-size: 0.75rem;
  }
}

.p-blog-list__category-name,
.p-blog-list__search-query {
  -webkit-margin-after: 2.5rem;
          margin-block-end: 2.5rem;
  font-size: 1.75rem;
}
@media (min-width: 768px) {
  .p-blog-list__category-name,
  .p-blog-list__search-query {
    -webkit-margin-after: 1.5rem;
            margin-block-end: 1.5rem;
    font-size: 1rem;
  }
}

.p-blog-list__empty {
  font-size: 1.75rem;
}
@media (min-width: 768px) {
  .p-blog-list__empty {
    font-size: 1rem;
  }
}

.p-blog-list__pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-padding-before: 4.875rem;
          padding-block-start: 4.875rem;
}
@media (min-width: 768px) {
  .p-blog-list__pagination {
    -webkit-padding-before: 2.5rem;
            padding-block-start: 2.5rem;
  }
}
.p-blog-list__pagination .page-numbers {
  display: grid;
  place-items: center;
  width: 6.25rem;
  height: auto;
  aspect-ratio: 1;
  font-size: 1.5rem;
  font-weight: 700;
  color: #FF5096;
  border: 1px solid #FF5096;
  border-radius: 50%;
  -webkit-transition: background-color 0.3s, color 0.3s;
  transition: background-color 0.3s, color 0.3s;
}
@media (min-width: 768px) {
  .p-blog-list__pagination .page-numbers {
    width: 2.5rem;
    font-size: 0.75rem;
  }
}
.p-blog-list__pagination .page-numbers.current, .p-blog-list__pagination .page-numbers:hover {
  color: #fff;
  background-color: #FF5096;
}
.p-blog-list__pagination .page-numbers.prev, .p-blog-list__pagination .page-numbers.next {
  font-size: 1.75rem;
  border-color: transparent;
}
@media (min-width: 768px) {
  .p-blog-list__pagination .page-numbers.prev, .p-blog-list__pagination .page-numbers.next {
    font-size: 1rem;
  }
}

.p-blog-sidebar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4.5rem;
  width: 100%;
  -webkit-margin-before: 1.875rem;
          margin-block-start: 1.875rem;
}
@media (min-width: 768px) {
  .p-blog-sidebar {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    padding-block: 3rem 10rem;
    -webkit-margin-before: unset;
            margin-block-start: unset;
  }
}

.p-blog-sidebar__widget {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem;
}

.p-blog-sidebar__title {
  font-size: 2.5rem;
  font-weight: 700;
  color: #FF5096;
}
@media (min-width: 768px) {
  .p-blog-sidebar__title {
    font-size: 1.125rem;
  }
}

.p-blog-sidebar__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
  -webkit-padding-start: 1.5rem;
          padding-inline-start: 1.5rem;
}
@media (min-width: 768px) {
  .p-blog-sidebar__list {
    gap: 0.25rem;
  }
}

.p-blog-sidebar__list-item {
  font-size: 2rem;
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p-blog-sidebar__list-item {
    font-size: 1rem;
    line-height: 1.2;
  }
}
.p-blog-sidebar__list-item a {
  color: #0A0A0A;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
}
.p-blog-sidebar__list-item a:hover {
  color: #FF5096;
}

.p-blog-sidebar__search {
  -webkit-padding-start: 1.5rem;
          padding-inline-start: 1.5rem;
}

.p-blog-sidebar__search-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5rem;
}
@media (min-width: 768px) {
  .p-blog-sidebar__search-inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.p-blog-sidebar__search-input {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: 0.75rem 1rem;
  font-size: 1.5rem;
  outline: none;
  border: 1px solid #0A0A0A;
}
@media (min-width: 768px) {
  .p-blog-sidebar__search-input {
    padding: 0.5rem 0.75rem;
    font-size: 0.875rem;
  }
}
.p-blog-sidebar__search-input:focus {
  font-size: 1.5rem;
  border-color: #FF5096;
}
@media (min-width: 768px) {
  .p-blog-sidebar__search-input:focus {
    font-size: 0.875rem;
  }
}

.p-blog-sidebar__search-button {
  padding: 1rem 1.5rem;
  font-size: 2.25rem;
  font-weight: 700;
  color: #fff;
  cursor: pointer;
  background-color: #b68a8c;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
@media (min-width: 768px) {
  .p-blog-sidebar__search-button {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding: 0.5rem 1rem;
    -webkit-margin-start: auto;
            margin-inline-start: auto;
    font-size: 0.875rem;
  }
}
.p-blog-sidebar__search-button:hover {
  cursor: pointer;
  opacity: 0.7;
}

.p-blog-single {
  padding-block: 2.5rem 5rem;
}
@media (min-width: 768px) {
  .p-blog-single {
    padding-block: 3rem 6.25rem;
  }
}

.p-blog-single__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4rem;
}
@media (min-width: 768px) {
  .p-blog-single__wrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 5rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.p-blog-single__main {
  width: 100%;
}
@media (min-width: 768px) {
  .p-blog-single__main {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
  }
}

.p-blog-single__article {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem;
}
@media (min-width: 768px) {
  .p-blog-single__article {
    gap: 1.5rem;
  }
}

.p-blog-single__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}
@media (min-width: 768px) {
  .p-blog-single__header {
    gap: 0.5rem;
  }
}

.p-blog-single__title {
  font-size: 2.25rem;
  font-weight: 700;
  line-height: 1.4;
  color: #FF5096;
}
@media (min-width: 768px) {
  .p-blog-single__title {
    font-size: 1.25rem;
  }
}

.p-blog-single__date {
  font-size: 1.5rem;
  color: #0A0A0A;
}
@media (min-width: 768px) {
  .p-blog-single__date {
    font-size: 0.75rem;
  }
}

.p-blog-single__thumbnail {
  width: 100%;
  aspect-ratio: 16/9;
  overflow: hidden;
}

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

.p-blog-single__content {
  font-size: 1.75rem;
  line-height: 1.8;
}
@media (min-width: 768px) {
  .p-blog-single__content {
    font-size: 1rem;
  }
}
.p-blog-single__content p {
  -webkit-margin-before: 1rem;
          margin-block-start: 1rem;
}
.p-blog-single__content p:first-child {
  -webkit-margin-before: 2.5rem;
          margin-block-start: 2.5rem;
}
.p-blog-single__content h2 {
  -webkit-margin-before: 3rem;
          margin-block-start: 3rem;
  font-size: 2.25rem;
  font-weight: 700;
  line-height: 1.4;
}
@media (min-width: 768px) {
  .p-blog-single__content h2 {
    font-size: 1.375rem;
  }
}
.p-blog-single__content h3 {
  -webkit-margin-before: 2.5rem;
          margin-block-start: 2.5rem;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
}
@media (min-width: 768px) {
  .p-blog-single__content h3 {
    font-size: 1.125rem;
  }
}
.p-blog-single__content h4,
.p-blog-single__content h5,
.p-blog-single__content h6 {
  -webkit-margin-before: 2.5rem;
          margin-block-start: 2.5rem;
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.4;
}
@media (min-width: 768px) {
  .p-blog-single__content h4,
  .p-blog-single__content h5,
  .p-blog-single__content h6 {
    font-size: 1rem;
  }
}
.p-blog-single__content ul,
.p-blog-single__content ol {
  -webkit-padding-start: 2.5rem;
          padding-inline-start: 2.5rem;
  -webkit-margin-before: 2.5rem;
          margin-block-start: 2.5rem;
}
@media (min-width: 768px) {
  .p-blog-single__content ul,
  .p-blog-single__content ol {
    -webkit-padding-start: 1.5rem;
            padding-inline-start: 1.5rem;
  }
}
.p-blog-single__content ul {
  list-style: disc;
}
.p-blog-single__content ol {
  list-style: decimal;
}
.p-blog-single__content li {
  -webkit-margin-before: 0.5rem;
          margin-block-start: 0.5rem;
  list-style-type: inherit;
}
@media (min-width: 768px) {
  .p-blog-single__content li {
    -webkit-margin-before: 0.75rem;
            margin-block-start: 0.75rem;
  }
}
.p-blog-single__content strong,
.p-blog-single__content b {
  font-weight: 700;
}
.p-blog-single__content em,
.p-blog-single__content i {
  font-style: italic;
}
.p-blog-single__content blockquote {
  padding: 1.5rem 2rem;
  -webkit-margin-before: 1.5rem;
          margin-block-start: 1.5rem;
  background-color: rgba(255, 80, 150, 0.05);
  -webkit-border-start: 4px solid #FF5096;
          border-inline-start: 4px solid #FF5096;
}
@media (min-width: 768px) {
  .p-blog-single__content blockquote {
    padding: 1rem 1.5rem;
    -webkit-margin-before: 2rem;
            margin-block-start: 2rem;
  }
}
.p-blog-single__content hr {
  margin-block: 2.5rem;
  border: none;
  -webkit-border-before: 1px solid #ccc;
          border-block-start: 1px solid #ccc;
}
.p-blog-single__content img {
  max-width: 100%;
  height: auto;
  -webkit-margin-before: 2.5rem;
          margin-block-start: 2.5rem;
}
.p-blog-single__content figure + p {
  -webkit-margin-before: 2.5rem;
          margin-block-start: 2.5rem;
}
.p-blog-single__content p > img {
  display: inline;
  width: auto;
  height: 1.2em;
  margin: 0;
  vertical-align: middle;
}
.p-blog-single__content a {
  color: #FF5096;
  text-decoration: underline;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.p-blog-single__content a:hover {
  opacity: 0.7;
}
.p-blog-single__content table {
  width: 100%;
  -webkit-margin-before: 1.5rem;
          margin-block-start: 1.5rem;
  border-collapse: collapse;
}
@media (min-width: 768px) {
  .p-blog-single__content table {
    -webkit-margin-before: 2.5rem;
            margin-block-start: 2.5rem;
  }
}
.p-blog-single__content th,
.p-blog-single__content td {
  padding: 1rem 1.25rem;
  font-size: 1.5rem;
  vertical-align: top;
  border: 1px solid #ccc;
}
@media (min-width: 768px) {
  .p-blog-single__content th,
  .p-blog-single__content td {
    padding: 0.625rem 0.875rem;
    font-size: 0.875rem;
  }
}
.p-blog-single__content th {
  font-weight: 700;
  background-color: rgba(255, 80, 150, 0.08);
}

.p-blog-single__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-padding-before: 3rem;
          padding-block-start: 3rem;
}
@media (min-width: 768px) {
  .p-blog-single__nav {
    -webkit-padding-before: 2.5rem;
            padding-block-start: 2.5rem;
  }
}

.p-blog-single__nav-link {
  font-size: 1.5rem;
  color: #FF5096;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
@media (min-width: 768px) {
  .p-blog-single__nav-link {
    font-size: 0.75rem;
  }
}
.p-blog-single__nav-link:hover {
  opacity: 0.7;
}

.p-contact-fv {
  padding-block: 7.5rem 3rem;
}
@media (min-width: 768px) {
  .p-contact-fv {
    padding-block: 5.625rem 3.5rem;
  }
}

.p-contact-fv__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3.25rem;
}
@media (min-width: 768px) {
  .p-contact-fv__wrap {
    gap: 4.3125rem;
  }
}

.p-contact-fv__title {
  font-size: 3.9375rem;
  font-weight: 700;
  line-height: 1.3;
  color: #2d220e;
  text-align: center;
}
@media (min-width: 768px) {
  .p-contact-fv__title {
    font-size: 2.5rem;
  }
}

.p-contact-fv__notice {
  padding: 1.75rem 1.6875rem 2.125rem;
  background: #fff;
  border: 1px solid #0A0A0A;
}
@media (min-width: 768px) {
  .p-contact-fv__notice {
    max-width: 1000px;
    padding: 1.5rem 2rem;
    margin-inline: auto;
  }
}

.p-contact-fv__notice-title {
  font-size: 2.25rem;
  font-weight: 700;
  color: #d12f2f;
  text-align: center;
}
@media (min-width: 768px) {
  .p-contact-fv__notice-title {
    font-size: 1rem;
  }
}

.p-contact-fv__notice-text {
  -webkit-margin-before: 1.25rem;
          margin-block-start: 1.25rem;
  font-size: 1.75rem;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
@media (min-width: 768px) {
  .p-contact-fv__notice-text {
    font-size: 0.875rem;
  }
}

.p-contact-nav {
  padding-block: 4.75rem 6.25rem;
}
@media (min-width: 768px) {
  .p-contact-nav {
    padding-block: 7.875rem 10.625rem;
  }
}

.p-contact-nav__wrap {
  display: grid;
  grid-template-columns: 1fr;
  gap: 7.9375rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 768px) {
  .p-contact-nav__wrap {
    grid-template-columns: repeat(3, 16.25rem);
    gap: 4.3125rem;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.p-contact-nav__button {
  z-index: 1;
  position: relative;
  font-size: 2.625rem;
  font-weight: 700;
  color: #fff;
  text-align: center;
}
.p-contact-nav__button::before {
  z-index: -1;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 22.0625rem;
  height: 7.125rem;
  content: "";
  background: url("../../public/img/common/bg-label-short.svg") center center;
  background-repeat: no-repeat;
  background-size: cover;
  translate: -50% -50%;
}
@media (min-width: 768px) {
  .p-contact-nav__button {
    font-size: 2rem;
  }
  .p-contact-nav__button::before {
    width: 16.25rem;
    height: 5.25rem;
  }
}
.p-contact-nav__button:hover {
  opacity: 0.7;
}

.p-contact-nav__button-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.875rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 2rem;
  line-height: 1.25;
  color: #fff;
  text-align: center;
}
.p-contact-nav__button-text::after {
  width: 1.875rem;
  height: 2.5rem;
  content: "";
  background: #fff;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
@media (min-width: 768px) {
  .p-contact-nav__button-text {
    gap: 0.75rem;
    font-size: 1.5rem;
  }
  .p-contact-nav__button-text::after {
    width: 1.4375rem;
    height: 1.875rem;
  }
}

.p-contact-section {
  padding-block: 5.375rem 5rem;
}
@media (min-width: 768px) {
  .p-contact-section {
    padding-block: 10rem 10.9375rem;
  }
}

.p-contact-section__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3rem;
}
@media (min-width: 768px) {
  .p-contact-section__wrap {
    gap: 3.5rem;
  }
}

.p-contact-section__title {
  font-size: 2.75rem;
  font-weight: 700;
  line-height: 1.3;
  color: #2d220e;
  text-align: center;
}
@media (min-width: 768px) {
  .p-contact-section__title {
    font-size: 2.5rem;
  }
}

.p-contact-section__lead {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}
@media (min-width: 768px) {
  .p-contact-section__lead {
    gap: 1rem;
    -webkit-margin-before: 1.25rem;
            margin-block-start: 1.25rem;
    letter-spacing: 0.15em;
  }
}

.p-contact-section__lead-text {
  font-size: 1.75rem;
  line-height: 1.8;
}
@media (min-width: 768px) {
  .p-contact-section__lead-text {
    font-size: 1rem;
  }
}
.p-contact-section__lead-text--accent {
  font-weight: 700;
  color: #d12f2f;
}
.p-contact-section__lead-text--color {
  color: #d12f2f;
}

.p-contact-section__link {
  word-break: break-all;
  text-decoration: underline;
  text-underline-offset: 0.25rem;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.p-contact-section__link:hover {
  opacity: 0.7;
}

.p-contact-flow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2.625rem;
}
@media (min-width: 768px) {
  .p-contact-flow {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-margin-before: 7rem;
            margin-block-start: 7rem;
  }
}
@media (min-width: 768px) {
  .p-contact-flow--second {
    -webkit-margin-before: 0;
            margin-block-start: 0;
  }
}

.p-contact-flow__title {
  font-size: 2.25rem;
  font-weight: 700;
  color: #FF5096;
  text-align: center;
}
@media (min-width: 768px) {
  .p-contact-flow__title {
    font-size: 2rem;
  }
}

.p-contact-flow__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2.9375rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: min(100%, 690px);
}
@media (min-width: 768px) {
  .p-contact-flow__list {
    gap: 2.8125rem;
    -webkit-margin-before: 3.3125rem;
            margin-block-start: 3.3125rem;
  }
}

.p-contact-flow__item {
  position: relative;
  width: 100%;
  padding: 0.75rem 0 0.75rem 2.0625rem;
  background: #fff;
  border: 1px solid #FF5096;
  border-radius: 100vmax;
}
@media (min-width: 768px) {
  .p-contact-flow__item {
    max-width: 528px;
    padding: 1rem 0.75rem 1rem 1.5rem;
    margin-inline: auto;
  }
}
.p-contact-flow__item:not(:last-child) {
  -webkit-margin-after: 0.5rem;
          margin-block-end: 0.5rem;
}
.p-contact-flow__item:not(:last-child)::after {
  position: absolute;
  top: calc(100% + 0.375rem);
  left: 50%;
  width: 6.75rem;
  height: 2.5625rem;
  content: "";
  background: #FF5096;
  clip-path: polygon(100% 0, 0 0, 50% 100%);
  translate: -50% 0;
}
@media (min-width: 768px) {
  .p-contact-flow__item:not(:last-child)::after {
    top: calc(100% + 1rem);
    width: 3.75rem;
    height: 1.4375rem;
  }
}

.p-contact-flow__text {
  font-size: 1.75rem;
  line-height: 1.6;
}
@media (min-width: 768px) {
  .p-contact-flow__text {
    font-size: 1rem;
    letter-spacing: 0.12em;
  }
}

.p-contact-flow__note {
  font-size: 1.75rem;
  line-height: 1.75;
}
@media (min-width: 768px) {
  .p-contact-flow__note {
    font-size: 0.875rem;
  }
}
.p-contact-flow__note--accent {
  display: initial;
  color: #d12f2f;
}

.p-contact-section__form {
  -webkit-margin-before: 2.625rem;
          margin-block-start: 2.625rem;
}
@media (min-width: 768px) {
  .p-contact-section__form {
    width: min(100%, 750px);
    -webkit-margin-before: 0.625rem;
            margin-block-start: 0.625rem;
    margin-inline: auto;
  }
}
.p-contact-section__form--other {
  -webkit-margin-before: -0.5rem;
          margin-block-start: -0.5rem;
}

.p-thanks {
  padding-block: 5rem 6.25rem;
}
@media (min-width: 768px) {
  .p-thanks {
    padding-block: 6.25rem 7.5rem;
  }
}

.p-thanks__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2.5rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
}
@media (min-width: 768px) {
  .p-thanks__wrap {
    gap: 3rem;
  }
}

.p-thanks__title {
  font-size: 2.25rem;
  font-weight: 700;
  line-height: 1.4;
  color: #2d220e;
}
@media (min-width: 768px) {
  .p-thanks__title {
    font-size: 1.75rem;
  }
}

.p-thanks__text {
  font-size: 1.75rem;
  line-height: 1.8;
}
@media (min-width: 768px) {
  .p-thanks__text {
    font-size: 1rem;
  }
}

.p-404 {
  padding-block: 5rem 6.25rem;
  text-align: center;
}
@media (min-width: 768px) {
  .p-404 {
    padding-block: 7.5rem 10rem;
  }
}

.p-404__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 768px) {
  .p-404__wrap {
    gap: 2.5rem;
  }
}

.p-404__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-404__number {
  font-family: "Bebas Neue", sans-serif;
  font-size: 10rem;
  font-weight: 700;
  line-height: 1;
  color: #FF5096;
  letter-spacing: 0.05em;
}
@media (min-width: 768px) {
  .p-404__number {
    font-size: 12.5rem;
  }
}

.p-404__not-found {
  font-family: "Bebas Neue", sans-serif;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1;
  color: #FF5096;
  letter-spacing: 0.2em;
}
@media (min-width: 768px) {
  .p-404__not-found {
    font-size: 1.75rem;
  }
}

.p-404__title {
  font-size: 2.25rem;
  font-weight: 700;
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p-404__title {
    font-size: 1.5rem;
  }
}

.p-404__text {
  font-size: 1.75rem;
  line-height: 1.8;
}
@media (min-width: 768px) {
  .p-404__text {
    font-size: 1rem;
  }
}

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

@media (min-width: 768px) {
  .u-hidden-pc {
    display: none;
  }
}

.u-animation__fadeIn {
  opacity: 0;
  translate: 0 20px;
  -webkit-transition: opacity 0.5s ease, translate 0.5s ease;
  transition: opacity 0.5s ease, translate 0.5s ease;
}
.u-animation__fadeIn.js-show {
  opacity: 1;
  translate: 0;
}/*# sourceMappingURL=style.css.map */