html {
  font-size: 10.4px;
  font-family: "Noto Serif JP", serif;
  overflow-x: hidden;
  overflow-y: scroll;
}
@media screen and (max-width: 1366px) {
  html {
    font-size: 0.733vw;
  }
}
@media screen and (max-width: 750px) {
  html {
    font-size: 2vw;
  }
}

.red-text {
  color: #ED5A5A;
}
.small-icon {
  font-size: 1.2rem;
    vertical-align: top;
    position: relative;
    right: 10px;
}
.small-text {
  font-size: 1.2rem !important;
}

a {
  color: #000000;
  text-decoration: none !important;
}

body {
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
}

section {
  padding: 0 108px;
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media screen and (max-width: 750px) {
  section {
    padding: 0 1.3rem;
  }
}

.is-mobile {
  display: none;
}
@media screen and (max-width: 750px) {
  .is-mobile {
    display: initial;
  }
}

.is-pc {
  display: inherit;
}
@media screen and (max-width: 750px) {
  .is-pc {
    display: none !important;
  }
}

.daruma {
  position: fixed;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 3;
  pointer-events: none;
}
@media screen and (max-width: 750px) {
  .daruma {
    height: 100vh;
  }
}
.daruma__overlay {
  position: relative;
  width: 100%;
  height: 100%;
}
.daruma__wrapper {
  pointer-events: all;
  position: fixed;
  right: 0;
  bottom: 4rem;
  width: 10rem;
  height: 15.1rem;
  cursor: pointer;
}
@media screen and (max-width: 750px) {
  .daruma__wrapper {
    width: 5.6rem;
    height: 12.4rem;
    bottom: 5vh;
  }
}
.daruma__wrapper:hover .daruma__img-popup {
  opacity: 1;
}
.daruma__img-popup {
  opacity: 0;
  transition: opacity 0.3s ease;
  position: absolute;
  right: 1.9rem;
  top: 0rem;
  height: 5.9rem;
}
@media screen and (max-width: 750px) {
  .daruma__img-popup {
    opacity: 1;
    right: initial;
    left: 0;
    height: 4.9rem;
  }
}
.daruma__img-body {
  position: absolute;
  height: 10.6rem;
  bottom: 0;
  right: -3.4rem;
}
@media screen and (max-width: 750px) {
  .daruma__img-body {
    height: 8.6rem;
  }
}

.fv {
  width: 100%;
  position: relative;
  top: 0;
  left: 0;
  padding: 0;
  overflow-y: visible;
}
.fv__bg-wrapper {
  pointer-events: none;
  z-index: -1;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background-image: url(/lp/japanese/img/bg_paper.png);
  background-size: contain;
}
.fv__bg-img-01 {
  position: absolute;
  top: 0;
  left: 0;
  min-width: 100%;
  min-height: 100%;
  width: 100vw;
}
.fv__bg-img-02 {
  position: absolute;
  top: 51.3rem;
  left: -3rem;
  width: 28.1rem;
}
@media screen and (max-width: 750px) {
  .fv__bg-img-02 {
    top: 71.3rem;
    left: -5rem;
    width: 22.1rem;
  }
}
.fv__bg-img-03 {
  position: absolute;
  top: 40rem;
  width: 11.4rem;
  left: 10rem;
}
@media screen and (max-width: 750px) {
  .fv__bg-img-03 {
    top: 62rem;
    width: 9.2rem;
    left: 2.5rem;
  }
}
.fv__bg-img-04 {
  position: absolute;
  top: 7.3rem;
  width: 32rem;
  right: -5.5rem;
}
@media screen and (max-width: 750px) {
  .fv__bg-img-04 {
    top: 8.1rem;
    width: 25rem;
    right: -6rem;
  }
}
.fv__bg-img-05 {
  position: absolute;
  top: 23.3rem;
  width: 12.7rem;
  right: 7.5rem;
}
@media screen and (max-width: 750px) {
  .fv__bg-img-05 {
    top: 22.6rem;
    width: 10.2rem;
    right: 2.2rem;
  }
}
.fv__fg-wrapper {
  position: absolute;
  top: 0;
  height: 100vh;
  width: 100%;
  pointer-events: none;
  z-index: 1;
}
.fv__fg-img-01 {
  position: absolute;
  top: 0;
  left: -3rem;
  width: 69rem;
}
@media screen and (max-width: 750px) {
  .fv__fg-img-01 {
    top: -0.6rem;
    left: -2.5rem;
    width: 53.2rem;
  }
}
.fv__fg-img-02 {
  position: absolute;
  right: -9rem;
  width: 43rem;
  top: 40.8rem;
}
@media screen and (max-width: 750px) {
  .fv__fg-img-02 {
    right: -15.8rem;
    width: 32rem;
    top: 59.8rem;
  }
}
.fv__fg-link {
  z-index: 1;
  pointer-events: all;
  position: absolute;
  width: fit-content;
  left: 3rem;
  top: 1.7rem;
  display: flex;
  flex-direction: row;
  align-items: center;
  color: #000000;
  transition: opacity 0.3s ease;
  opacity: 1;
}
.fv__fg-link:hover {
  opacity: 0.8;
}
@media screen and (max-width: 750px) {
  .fv__fg-link:hover {
    opacity: 1;
  }
}
@media screen and (max-width: 750px) {
  .fv__fg-link {
    top: 2.7rem;
  }
}
.fv__fg-logo {
  width: 14rem;
}
@media screen and (max-width: 750px) {
  .fv__fg-logo {
    width: 15rem;
  }
}
.fv__fg-logo-text {
  white-space: nowrap;
  font-size: 1.5rem;
  margin-left: 1rem;
  margin-top: 0.5rem;
  font-family: "Noto Sans JP", serif;
  font-weight: 400;
}
@media screen and (max-width: 750px) {
  .fv__fg-logo-text {
    font-size: 2rem;
    margin-left: 1.4rem;
  }
}
.fv__contents-wrapper {
  width: 100%;
  max-width: 1000px;
  height: fit-content;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-top: 17rem;
  z-index: 2;
  position: relative;
  pointer-events: none;
}
@media screen and (max-width: 750px) {
  .fv__contents-wrapper {
    padding-top: 18.8rem;
  }
}
.fv__title-wrapper {
  max-width: 1000px;
  text-align: center;
  pointer-events: all;
}
.fv__title-text {
  font-size: 2.1rem;
  letter-spacing: initial;
  line-height: 1.1;
  font-family: "Zen Maru Gothic", serif;
  font-weight: 500;
}
@media screen and (max-width: 750px) {
  .fv__title-text {
    letter-spacing: 0.15rem;
    font-size: 2.1rem;
  }
}
.fv__title-text-bottom {
  font-size: 2.1rem;
  letter-spacing: initial;
  line-height: 1.1;
  font-family: "Zen Maru Gothic", serif;
  font-weight: 500;
  line-height: 1.5;
}
@media screen and (max-width: 750px) {
  .fv__title-text-bottom {
    letter-spacing: 0.15rem;
    font-size: 2.1rem;
  }
}
@media screen and (max-width: 750px) {
  .fv__title-text-bottom {
    line-height: 2;
    letter-spacing: 0.05rem;
  }
}
.fv__title-large {
  display: block;
  margin-top: 1.9rem;
  margin-left: 1.8rem;
  margin-bottom: 2.2rem;
  font-size: 6.1rem;
  line-height: 1.55;
  letter-spacing: 0.1rem;
  font-family: "Zen Maru Gothic", serif;
  font-weight: 700;
  text-align: center;
  color: #064ea0;
}
@media screen and (max-width: 750px) {
  .fv__title-large {
    margin-top: 1.6rem;
    margin-left: 0;
    margin-bottom: 4.4rem;
    font-size: 5.3rem;
    line-height: 1.39;
    letter-spacing: -0.2rem;
  }
}
.fv__scroll-wrapper {
  text-align: center;
  position: relative;
  font-size: 1.8rem;
  margin-top: 6.3rem;
  pointer-events: all;
}
@media screen and (max-width: 750px) {
  .fv__scroll-wrapper {
    margin-top: 6.6rem;
  }
}
.fv__scroll-bar {
  position: absolute;
  width: 0.3rem;
  height: 6.7rem;
  top: 3.4rem;
  overflow: hidden;
}
.fv__scroll-bar::after {
  content: "";
  position: absolute;
  width: 0.5rem;
  height: 6.8rem;
  background-color: #064ea0;
  overflow: hidden;
  top: 0;
  left: 0;
  animation-name: scroll-loop;
  animation-duration: 2s;
  animation-delay: 0.5s;
  animation-direction: normal;
  animation-timing-function: ease;
  animation-iteration-count: infinite;
  animation-play-state: running;
}
@media screen and (max-width: 750px) {
  .fv__scroll-bar::after {
    height: 9rem;
  }
}
@keyframes scroll-loop {
  0% {
    transform-origin: top;
    transform: scaleY(0);
  }
  45% {
    transform-origin: top;
    transform: scaleY(1);
  }
  55% {
    transform-origin: bottom;
    transform: scaleY(1);
  }
  100% {
    transform-origin: bottom;
    transform: scaleY(0);
  }
}
@media screen and (max-width: 750px) {
  .fv__scroll-bar {
    width: 0.2rem;
    height: 9rem;
    top: 4.6rem;
  }
}
.fv__scroll-text {
  font-size: 1.8rem;
  font-family: "Zen Maru Gothic", serif;
  font-weight: 700;
  color: #064ea0;
}
@media screen and (max-width: 750px) {
  .fv__scroll-text {
    font-size: 2rem;
    letter-spacing: 0.2rem;
    font-weight: 700;
  }
}

.reading {
  padding-top: 23.7rem;
  max-width: 1000px;
}
@media screen and (max-width: 750px) {
  .reading {
    padding-top: 16.7rem;
  }
}
.reading__contents-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  z-index: 1;
}
.reading__heading {
  font-size: 2.1rem;
  letter-spacing: initial;
  line-height: 1.1;
  letter-spacing: -0.1rem;
  font-family: "Zen Maru Gothic", serif;
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .reading__heading {
    letter-spacing: 0.15rem;
    font-size: 2.1rem;
  }
}
@media screen and (max-width: 750px) {
  .reading__heading {
    line-height: 1.6;
  }
}
.reading__scroll-wrapper {
  display: flex;
  justify-content: center;
  flex-direction: row;
  position: relative;
  margin-top: 6rem;
}
.reading__scroll-list {
  position: absolute;
  top: 6.3rem;
  gap: 1.7rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: start;
}
.reading__scroll-item {
  font-size: 2.4rem;
  font-weight: 700;
  color: #064ea0;
  font-family: "Zen Maru Gothic", serif;
}
.reading__scroll-img {
  width: 44rem;
}
.reading__text {
  font-family: "Zen Maru Gothic", serif;
  font-size: 1.6rem;
  line-height: 2.1;
  font-weight: 500;
}
@media screen and (max-width: 750px) {
  .reading__text {
    font-size: 1.71rem;
  }
}
.reading__text:first-of-type {
  margin-bottom: 1.7rem;
}
.reading__text-wrapper {
  display: flex;
  flex-direction: column;
  margin-top: 5.7rem;
  text-align: start;
}

.karuta {
  max-width: 1000px;
}
@media screen and (max-width: 750px) {
  .karuta {
    padding: 0;
  }
}
.karuta__heading-wrapper {
  padding-top: 19rem;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .karuta__heading-wrapper {
    padding-top: 9rem;
  }
}
.karuta__heading-top {
  font-family: "Zen Maru Gothic", serif;
  color: #064ea0;
  font-size: 2.4rem;
  font-weight: 700;
}
.karuta__heading-body {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 2rem;
}
@media screen and (max-width: 750px) {
  .karuta__heading-body {
    flex-direction: column;
  }
}
.karuta__heading-img {
  width: 36.2rem;
}
.karuta__heading-text {
  font-family: "Zen Maru Gothic", serif;
  color: #064ea0;
  font-weight: 700;
  font-size: 4rem;
}
@media screen and (max-width: 750px) {
  .karuta__heading-text {
    margin-top: 1rem;
  }
}
.karuta .splide__pagination {
  display: none;
}
.karuta__text-wrapper {
  position: absolute;
  z-index: 4;
  font-size: 2.75rem;
  display: flex;
  gap: 3.5rem;
  top: 4.2rem;
  right: 4.1rem;
  flex-direction: row-reverse;
  letter-spacing: -0.2rem;
  font-family: "Zen Maru Gothic", serif;
  color: #064ea0;
  font-weight: 700;
}
@media screen and (max-width: 750px) {
  .karuta__text-wrapper {
    gap: 4.9rem;
    top: 5.6rem;
    right: 4.8rem;
    letter-spacing: 0.3rem;
  }
}
.karuta__text-line {
  font-feature-settings: "palt";
  writing-mode: vertical-lr;
}
.karuta__text-heading {
  font-size: 3.2rem;
  background-color: #064ea0;
  color: #ffffff;
  border-radius: 50%;
  margin-top: -1.1rem;
  margin-bottom: 0.4rem;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  height: 5.9rem;
  width: 5.7rem;
  padding-right: 0.4rem;
  padding-bottom: 0.2rem;
}
.karuta__text-heading.is-ga {
  width: 6rem;
  padding-right: 0.1rem;
}
@media screen and (max-width: 750px) {
  .karuta__text-heading.is-ga {
    padding-right: 0.1rem;
    width: 6.6rem;
  }
}
.karuta__text-heading.is-kanji {
  width: 6rem;
  padding-right: 0.1rem;
  padding-bottom: 0.1rem;
  height: 6rem;
}
@media screen and (max-width: 750px) {
  .karuta__text-heading.is-kanji {
    width: 6.7rem;
    padding-right: 0;
    padding-top: 0.3rem;
    height: 6.4rem;
    padding-bottom: 0;
  }
}
.karuta__text-heading.is-katakana {
  height: 5.7rem;
  width: 6rem;
  padding-right: 0.1rem;
  padding-bottom: 0.4rem;
}
@media screen and (max-width: 750px) {
  .karuta__text-heading.is-katakana {
    height: 6.5rem;
    width: 6.6rem;
    padding-bottom: 0.2rem;
    padding-top: 0;
  }
}
@media screen and (max-width: 750px) {
  .karuta__text-heading {
    font-size: 4.1rem;
    margin-top: -1.6rem;
    margin-bottom: 0.6rem;
    width: 6.2rem;
    height: 6.2rem;
    padding-right: 0.5rem;
    padding-top: 0.3rem;
  }
}
.karuta__cards-wrapper {
  max-width: 1000px;
  margin-top: 7.8rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 100rem;
  margin-left: auto;
  margin-right: auto;
  gap: 6.5rem 0;
}
.karuta__cards-slider {
  margin: 5.5rem 0;
}
.karuta__cards-track {
  overflow-y: visible;
  overflow-x: hidden;
  width: 100vw;
  padding-bottom: 2rem;
}
.karuta__cards-citation {
  font-size: 1.1rem;
  vertical-align: top;
  margin-left: 0.1rem;
}
.karuta__cards-btn {
  height: fit-content !important;
  width: fit-content !important;
  background-color: transparent !important;
  opacity: 1 !important;
}
.karuta__cards-btn:hover {
  opacity: 1 !important;
}
.karuta__cards-btn.is-left {
  left: 2rem;
}
.karuta__cards-btn.is-right {
  right: 2rem;
}
.karuta__cards-btn.is-right .karuta__cards-arrow {
  transform: rotateZ(180deg);
  padding-top: 4.1rem;
  padding-bottom: 0;
}
.karuta__cards-arrow {
  height: 8.4rem;
  padding-bottom: 4.1rem;
}
.karuta__cards-item {
  cursor: pointer;
  position: relative;
}
@media screen and (max-width: 750px) {
  .karuta__cards-item {
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
.karuta__cards-item:hover {
  opacity: 0.8;
}
@media screen and (max-width: 750px) {
  .karuta__cards-item:hover {
    opacity: 1;
  }
}
.karuta__cards-item::before {
  content: "";
  background-image: url(/lp/japanese/img/card_shadow.png);
  position: absolute;
  width: 100%;
  top: 2rem;
  z-index: -1;
  height: 100%;
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (max-width: 750px) {
  .karuta__cards-item::before {
    width: 33.9rem;
  }
}
.karuta__cards-img {
  width: 28.7rem;
  opacity: 1;
  transition: transform opacity 0.2s ease;
  transform: rotateY(0deg);
}
@media screen and (max-width: 750px) {
  .karuta__cards-img {
    width: 33.9rem;
  }
}
.karuta__cards-img.is-back {
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
  transform: rotateY(90deg);
}
.karuta__cards-front {
  position: relative;
}
.karuta__cards-icon {
  position: absolute;
  z-index: 2;
}
.karuta__cards-icon.is-01 {
  width: 16.7rem;
  bottom: 2.7rem;
  left: 6.2rem;
}
@media screen and (max-width: 750px) {
  .karuta__cards-icon.is-01 {
    width: 20.7rem;
    bottom: 2.6rem;
    left: 6.4rem;
  }
}
.karuta__cards-icon.is-02 {
  background-image: url(/lp/japanese/img/card_02_image.png);
  width: 27rem;
  height: 20rem;
  bottom: 2rem;
  z-index: 2;
  background-position-x: 76.1%;
  background-position-y: 37%;
  background-size: 106%;
  left: 0.9rem;
}
@media screen and (max-width: 750px) {
  .karuta__cards-icon.is-02 {
    width: 32rem;
    height: 20rem;
    bottom: 6rem;
  }
}
.karuta__cards-icon.is-03 {
  width: 18rem;
  bottom: 3rem;
  left: 5rem;
}
@media screen and (max-width: 750px) {
  .karuta__cards-icon.is-03 {
    width: 24rem;
  }
}
.karuta__cards-icon.is-04 {
  background-image: url(/lp/japanese/img/card_04_image.png);
  z-index: 2;
  width: 14rem;
  height: 20rem;
  left: 2rem;
  bottom: 0.9rem;
  background-position-x: 58%;
  background-size: 157%;
  background-position-y: 87%;
}
@media screen and (max-width: 750px) {
  .karuta__cards-icon.is-04 {
    width: 15rem;
    height: 24rem;
    left: 4rem;
    bottom: 0.9rem;
    background-position-x: 56%;
    background-size: 179%;
    background-position-y: 87%;
  }
}
.karuta__cards-icon.is-05 {
  width: 20rem;
  bottom: 2rem;
  left: 4rem;
}
@media screen and (max-width: 750px) {
  .karuta__cards-icon.is-05 {
    width: 25rem;
  }
}
.karuta__cards-icon.is-06 {
  background-image: url(/lp/japanese/img/card_06_image.png);
  z-index: 2;
  position: absolute;
  bottom: 2rem;
  height: 12rem;
  width: 22rem;
  left: 3rem;
  background-position-y: 57%;
  background-size: 93%;
  background-position-x: 74%;
}
@media screen and (max-width: 750px) {
  .karuta__cards-icon.is-06 {
    bottom: 3rem;
    height: 13rem;
    width: 26rem;
  }
}
.karuta__cards-back {
  position: absolute;
  top: 0;
  left: 0;
  padding: 10.4rem 29.8px 0 30px;
}
@media screen and (max-width: 750px) {
  .karuta__cards-back {
    width: calc(33.9rem - 59.8px) !important;
    left: initial;
    padding: 12.4rem 29.8px 0 30px;
  }
}
.karuta__cards-text {
  z-index: 2;
  position: relative;
  font-size: 1.5rem;
  line-height: 1.7;
  margin-bottom: 3rem;
  font-family: "Zen Maru Gothic", serif;
  color: #064ea0;
  font-weight: 700;
}
.karuta__cards-text.is-disclaimer {
  font-size: 1.2rem;
  line-height: 0;
  margin-top: -1.9rem;
}
.karuta .is-front {
  transform: rotateY(0deg);
  opacity: 1;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.3s;
}
.karuta .is-back {
  transform: rotateY(90deg);
  opacity: 0;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.3s;
}
.karuta .is-flipped .is-front {
  transform: rotateY(90deg);
  opacity: 0;
}
.karuta .is-flipped .is-back {
  transform: rotateY(0deg);
  opacity: 1;
}

.map {
  max-width: 1000px;
}
.map__heading-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: center;
  padding-top: 21.9rem;
  gap: 2.3rem;
  align-items: center;
}
@media screen and (max-width: 750px) {
  .map__heading-wrapper {
    padding-top: 9rem;
  }
}
.map__heading-img {
  height: 3.3rem;
}
.map__heading-text {
  font-size: 4rem;
  font-family: "Zen Maru Gothic", serif;
  color: #064ea0;
  font-weight: 700;
}
@media screen and (max-width: 750px) {
  .map__heading-text {
    font-size: 3rem;
  }
}
.map__heading-bottom {
  text-align: center;
  margin-top: 5.7rem;
  font-family: "Zen Maru Gothic", serif;
  font-weight: 500;
  font-size: 1.95rem;
  letter-spacing: 0.04rem;
  line-height: 1.6;
}
.map__contents-wrapper {
  padding-top: 6.3rem;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}
@media screen and (max-width: 750px) {
  .map__contents-wrapper {
    flex-direction: column;
  }
}
.map__contents-img {
  height: 35.2rem;
}
@media screen and (max-width: 750px) {
  .map__contents-img {
    height: initial;
    width: 100%;
  }
}
.map__contents-text {
  padding-top: 2rem;
  padding-left: 4rem;
  font-size: 1.5rem;
  line-height: 2;
  font-family: "Zen Maru Gothic", serif;
  font-weight: 400;
}
@media screen and (max-width: 750px) {
  .map__contents-text {
    padding-left: 0;
    font-size: 1.71rem;
  }
}
.map__contents-citation {
  font-size: 1.2rem;
  display: block;
  margin-top: 0.8rem;
  white-space: nowrap;
}

.courses {
  padding: 0;
  width: 100%;
}
.courses__wrapper {
  background-color: #bd6d7e;
  border-radius: 20rem;
  width: 100%;
  margin-top: 15.4rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  max-width: 1366px;
}
@media screen and (max-width: 750px) {
  .courses__wrapper {
    margin-top: 9rem;
    border-radius: 4rem;
  }
}
.courses__contents-parent {
  max-width: 1000px;
  padding: 0 108px;
}
@media screen and (max-width: 750px) {
  .courses__contents-parent {
    padding: 0;
  }
}
.courses__header-wrapper {
  width: 100%;
  position: absolute;
  top: -4.4rem;
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 750px) {
  .courses__header-wrapper {
    top: -4.2rem;
  }
}
.courses__header-text {
  font-size: 3rem;
  background-color: #9a505f;
  position: absolute;
  border-radius: 50px;
  padding: 2.8rem 6.8rem 3.4rem;
  color: #ffffff;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
}
@media screen and (max-width: 750px) {
  .courses__header-text {
    font-size: 2.2rem;
    padding: 1.3rem 3.8rem;
    text-align: center;
    line-height: 1.3;
  }
}
.courses__heading-text {
  text-align: center;
  color: #ffffff;
  margin-top: 9.9rem;
  font-size: 3.5rem;
  letter-spacing: -0.1rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
}
@media screen and (max-width: 750px) {
  .courses__heading-text {
    margin-top: 6.9rem;
    font-size: 2.9rem;
    line-height: 1.3;
  }
}
.courses__contents-wrapper {
  margin-top: 5.4rem;
}
@media screen and (max-width: 750px) {
  .courses__contents-wrapper {
    margin-top: 2.3rem;
    padding: 0 1.3rem;
  }
}
.courses__contents-text {
  font-size: 1.51rem;
  line-height: 2;
  color: #ffffff;
  font-family: "Zen Kaku Gothic New", serif;
  letter-spacing: -0.01rem;
}
@media screen and (max-width: 750px) {
  .courses__contents-text {
    font-size: 1.71rem;
    line-height: 1.9;
  }
}
.courses__cards-wrapper {
  text-align: center;
  margin-top: 4.2rem;
}
@media screen and (max-width: 750px) {
  .courses__cards-wrapper {
    margin-top: 3.2rem;
    padding: 0 1.3rem;
  }
}
.courses__cards-heading {
  font-size: 2.37rem;
  font-weight: 500;
  width: auto;
  padding: 1.1rem 0 1.2rem;
  color: #ffffff;
  background-color: #ca8a98;
  font-family: "Noto Serif JP", serif;
}
.courses__cards-list {
  margin-top: 4.1rem;
  margin-bottom: 12rem;
  display: flex;
  justify-content: space-between;
  gap: 6%;
}
@media screen and (max-width: 750px) {
  .courses__cards-list {
    align-items: center;
    flex-direction: column;
    margin-top: 2.7rem;
    margin-bottom: 5.7rem;
    gap: 2.7rem;
  }
}
.courses__card-item {
  background-color: #ffffff;
  width: 40.8rem;
  padding: 3.1rem 3.9rem 3.6rem 4.3rem;
  text-align: start;
}
@media screen and (max-width: 750px) {
  .courses__card-item {
    width: inherit;
    padding: 3.3rem 2.1rem;
  }
}
.courses__card-title {
  font-size: 1.9rem;
  position: relative;
  padding-left: 2.1rem;
  letter-spacing: 0.07rem;
  font-weight: 500;
  white-space: nowrap;
  font-family: "Zen Kaku Gothic New", serif;
}
@media screen and (max-width: 750px) {
  .courses__card-title {
    height: 1.7rem;
  }
}
.courses__card-title::before {
  content: "";
  background-color: #bd6d7e;
  height: 1.8rem;
  aspect-ratio: 1;
  border-radius: 50%;
  position: absolute;
  left: 0;
}
@media screen and (max-width: 750px) {
  .courses__card-title::before {
    height: 1.7rem;
  }
}
.courses__card-text {
  margin-top: 1.7rem;
  font-size: 1.61rem;
  line-height: 2;
  font-weight: 400;
  font-family: "Zen Kaku Gothic New", serif;
}
@media screen and (max-width: 750px) {
  .courses__card-text {
    margin-top: 1.3rem;
    font-size: 1.71rem;
  }
}

.links {
  width: 100%;
  max-width: 1000px;
  padding: 0;
  display: flex;
  align-items: center;
  flex-direction: column;
}
.links__wrapper {
  margin-top: 9.7rem;
  display: flex;
  justify-content: center;
  gap: 6%;
  width: 100%;
}
@media screen and (max-width: 1000px) {
  .links__wrapper {
    width: 46.7rem;
    padding: 0;
    flex-direction: column;
    gap: 2rem;
    align-items: center;
    margin-top: 9rem;
  }
}
@media screen and (max-width: 750px) {
  .links__wrapper {
    padding: 0 1.3rem;
  }
}
.links__button {
  text-align: center;
  background-color: #ffffff;
  border: 0.4rem solid;
  padding: 2.7rem 2.3rem 3.1rem;
  width: 42rem;
  border-radius: 2rem;
  font-family: "Noto Serif JP", serif;
  position: relative;
  font-weight: 700;
  transition-property: background-color, color, filter;
  transition-duration: 0.3s;
  transition-timing-function: ease;
  font-size: 2.6rem;
  letter-spacing: 0;
}
@media screen and (max-width: 750px) {
  .links__button {
    padding: 1.7rem 0 2.1rem;
    width: 100%;
  }
}
.links__button::before {
  content: "";
  width: calc(100% + 0.8rem);
  border-radius: 2rem;
  background-color: #000000;
  opacity: 0.2;
  position: absolute;
  top: 0;
  left: -0.4rem;
  height: 9.3rem;
  z-index: -1;
}
@media screen and (max-width: 750px) {
  .links__button::before {
    height: 7.6rem;
  }
}
.links__button::after {
  content: "";
  display: inline-block;
  position: absolute;
  margin-left: 0.5rem;
  margin-top: 0.3rem;
  width: 1.2rem;
  aspect-ratio: 1;
  background-size: contain;
  filter: brightness(1);
}
.links__button:hover::after {
  filter: brightness(100);
}
@media screen and (max-width: 750px) {
  .links__button:hover::after {
    filter: brightness(1);
  }
}
.links__button.is-left {
  border-color: #064ea0;
  color: #064ea0;
}
.links__button.is-left::after {
  background-image: url(/lp/japanese/img/link-icon-blue.png);
}
.links__button.is-left:hover {
  background-color: #064ea0;
  color: #ffffff;
}
@media screen and (max-width: 750px) {
  .links__button.is-left:hover {
    color: #064ea0;
    background-color: #ffffff;
  }
}
.links__button.is-right {
  border-color: #d46b09;
  color: #d46b09;
}
.links__button.is-right:hover {
  background-color: #d46b09;
  color: #ffffff;
}
@media screen and (max-width: 750px) {
  .links__button.is-right:hover {
    color: #d46b09;
    background-color: #ffffff;
  }
}
.links__button.is-right::after {
  background-image: url(/lp/japanese/img/link-icon-orange.png);
}

.footer {
  width: 100%;
  position: relative;
}
.footer__contents-wrapper {
  margin-top: 18.2rem;
  padding-bottom: 21rem;
  display: flex;
  align-items: center;
  flex-direction: column;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 750px) {
  .footer__contents-wrapper {
    margin-top: 9rem;
  }
}
.footer__contents-img {
  width: 18rem;
}
.footer__contents-address {
  text-align: center;
  margin-top: 2.9rem;
}
.footer__contents-text {
  font-family: "Zen Kaku Gothic New", serif;
  font-size: 1.6rem;
  line-height: 1.8;
  font-weight: 500;
  color: #000000;
}
.footer__contents-bg {
  position: absolute;
  width: 200rem;
  bottom: 0;
  pointer-events: none;
  transform: translateY(48%) translateX(8rem);
}
.footer__social-wrapper {
  margin-top: 3.4rem;
  display: flex;
  align-items: center;
  gap: 2.25rem;
}
.footer__social-img {
  width: 3.5rem;
  opacity: 1;
  transition: opacity 0.3s ease;
}
.footer__social-img:hover {
  opacity: 0.6;
}
@media screen and (max-width: 750px) {
  .footer__social-img:hover {
    opacity: 1;
  }
}
.footer__social-img.is-x {
  width: 3rem;
}

.footer .copyright {
  font-size: 1.2rem;
  position: absolute;
    bottom: 20px;
    left: 0;
    right: 0;
    z-index: 1;
    text-align: center;
}

/*# sourceMappingURL=index.css.map */
