.m-bodyText {
  font-size: var(--font-size-body-primary);
  font-weight: var(--font-weight-normal);
  letter-spacing: var(--letter-spacing-body);
  line-height: var(--line-height-body);
}
.m-bodyText.--em-l {
  font-size: var(--font-size-body-em-l);
}
.m-bodyText.--em {
  font-size: var(--font-size-body-em);
}
@media screen and (max-width: 719px) {
  .m-bodyText.--em-sp {
    font-size: var(--font-size-body-em);
  }
}
.m-bodyText.--sub {
  font-size: var(--font-size-body-sub);
}
.m-bodyText.--sub-s {
  font-size: var(--font-size-body-sub-s);
}
.m-bodyText.--annotation {
  font-size: var(--font-size-body-annotation);
}
.m-bodyText.--label {
  line-height: var(--line-height-body-label);
}
.m-bodyText.--label-s {
  font-size: var(--font-size-body-label-s);
  line-height: var(--line-height-body-label);
}
.m-bodyText.--link {
  text-decoration: underline;
}
.m-bodyText.--bold {
  font-weight: var(--font-weight-bold);
}
.m-bodyText.--align-center {
  text-align: center;
}
.m-bodyText.--align-right {
  text-align: right;
}

.p-index__introSection {
  background-color: var(--color-bg-primary);
  padding: 2rem;
}
@media screen and (min-width: 720px) {
  .p-index__introSection {
    padding: 4rem 8rem;
  }
}
.p-index__introSection .c-textWithTitle__title {
  background: right center/5.8rem 4rem url("/assets/img/course/index/heading-bg.png") no-repeat;
}
@media screen and (min-width: 720px) {
  .p-index__introSection .c-textWithTitle__title {
    background-position: left 28rem center;
  }
}
.p-index__introSection__linkList {
  display: grid;
  grid-template-columns: repeat(2, -webkit-min-content);
  grid-template-columns: repeat(2, min-content);
  place-items: center;
  gap: 2.5rem 2rem;
}
@media screen and (min-width: 720px) {
  .p-index__introSection__linkList {
    grid-template-columns: repeat(3, -webkit-min-content);
    grid-template-columns: repeat(3, min-content);
    place-content: center;
  }
}
.p-index__introSection__link {
  display: inline-block;
  width: 16.5rem;
  height: 21.2rem;
  position: relative;
  padding-top: 1.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;
}
.p-index__introSection__link::before {
  z-index: 0;
  content: "";
  position: absolute;
  inset: 0;
  display: inline-block;
  width: 100%;
  height: 100%;
  border-radius: 146rem;
  background: center center/contain no-repeat;
}
.p-index__introSection__link.--age0-2::before {
  background-image: url("/assets/img/course/index/intro-age0-2.jpg");
}
.p-index__introSection__link.--age3-6::before {
  background-image: url("/assets/img/course/index/intro-age3-6.jpg");
}
.p-index__introSection__link.--elementary-lower::before {
  background-image: url("/assets/img/course/index/intro-elementary-lower.jpg");
}
.p-index__introSection__link.--elementary-upper::before {
  background-image: url("/assets/img/course/index/intro-elementary-upper.jpg");
}
.p-index__introSection__link.--junior-high::before {
  background-image: url("/assets/img/course/index/intro-junior-high.jpg");
}
.p-index__introSection__link.--online::before {
  background-image: url("/assets/img/course/index/intro-online.jpg");
}
.p-index__introSection__link .label {
  z-index: 1;
  position: relative;
  color: var(--color-txt-accent-primary);
  font-weight: 700;
  font-size: 1.9rem;
  line-height: 1.3;
  text-align: center;
}
.p-index__introSection__link .label b {
  font-size: 2.2rem;
}
.p-index__introSection__link .m-dashedArrowBadge {
  z-index: 1;
  position: absolute;
  bottom: 0;
  right: 0;
}
.p-index__introSection__linkItemText {
  font-size: var(--font-size-body-primary);
  font-weight: var(--font-weight-normal);
  letter-spacing: var(--letter-spacing-body);
  line-height: var(--line-height-body);
  font-size: var(--font-size-body-sub-s);
  line-height: var(--line-height-body-label);
  margin-top: 0.5rem;
  text-align: center;
  color: var(--color-txt-accent-primary);
}
.p-index__seasonSection {
  background-color: var(--color-bg-info-secondary-dark);
  padding: 8rem 1.5rem 4rem;
}
@media screen and (min-width: 720px) {
  .p-index__seasonSection {
    padding: 8rem 8rem 4rem;
  }
}
.p-index__seasonSection__inner {
  border-radius: 3rem;
  padding: 2rem;
  background-color: var(--color-bg-primary);
}
@media screen and (min-width: 720px) {
  .p-index__seasonSection__inner {
    padding: 2rem 4rem;
  }
}
.p-index__seasonSection__bannerList {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: repeat(4, 1fr);
}
@media screen and (min-width: 720px) {
  .p-index__seasonSection__bannerList {
    grid-template-columns: repeat(4, 7.6rem);
  }
}
.p-index__seasonSection__bannerList img {
  border-radius: 1.5rem;
}
.p-index__otherServiceSection {
  background-color: var(--color-bg-accent-secondary);
  padding: 8rem 1.5rem 4rem;
}
@media screen and (min-width: 720px) {
  .p-index__otherServiceSection {
    padding: 8rem 8rem 4rem;
  }
}
.p-index__welfareServiceSection {
  background-color: var(--color-bg-primary);
  padding: 8rem 2rem 0;
}
@media screen and (min-width: 720px) {
  .p-index__welfareServiceSection {
    padding: 8rem 8rem 0;
  }
}/*# sourceMappingURL=p-index.css.map */
