body {
  background-color: #ffffff;
}

.l-main .p-mv {
  position: relative;
}
.l-main .p-mv__image {
  padding-top: 37rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-mv__image {
    padding-top: 34.6666666667vw;
  }
}
.l-main .p-mv__content {
  position: absolute;
  top: 0;
  width: 100%;
}
.l-main .p-mv__content .l-content-inner {
  position: relative;
}
.l-main .p-mv__title {
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
  padding-top: 7.8rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-mv__title {
    padding-top: 5.3333333333vw;
  }
}
.l-main .p-mv__title img {
  display: block;
  width: 79.7rem;
  margin: auto;
}
@media screen and (max-width: 767px) {
  .l-main .p-mv__title img {
    width: 85.3333333333vw;
  }
}
.l-main .p-mv__deco .deco {
  position: absolute;
}
.l-main .p-mv__deco .deco1 {
  left: 7.3rem;
  top: 6.2rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-mv__deco .deco1 {
    width: 26.6666666667vw;
    left: 5.3333333333vw;
    top: 0;
  }
}
.l-main .p-mv__deco .deco2 {
  right: 0;
  top: 32.7rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-mv__deco .deco2 {
    width: 26.6666666667vw;
    top: -5.3333333333vw;
  }
}
.l-main .p-about {
  padding-top: 14rem;
  padding-bottom: 18rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-about {
    padding-top: 16vw;
    padding-bottom: 16vw;
  }
}
.l-main .p-about__title {
  width: 68.7rem;
  max-width: 100%;
  margin: auto auto 7rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-about__title {
    width: 80vw;
    margin-bottom: 8vw;
  }
}
.l-main .p-about__text {
  text-align: center;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.15em;
}
@media screen and (max-width: 767px) {
  .l-main .p-about__text {
    text-align: left;
    font-size: 4.2666666667vw;
  }
}
.l-main .p-about__text span {
  background-image: url(../images/keywords/img_about_line.svg);
  background-repeat: repeat-x;
  background-size: 100%;
  background-position: center bottom;
  padding-bottom: 0.05em;
  display: inline-block;
}
.l-main .p-about .l-content-inner {
  position: relative;
}
@media screen and (max-width: 767px) {
  .l-main .p-about__deco {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 0 5.3333333333vw;
    margin-top: 5.3333333333vw;
  }
}
.l-main .p-about__deco0 {
  position: relative;
}
.l-main .p-about__deco0 .deco0 {
  position: absolute;
  width: 50.4rem;
  top: -27.2rem;
  left: 0;
}
@media screen and (max-width: 767px) {
  .l-main .p-about__deco0 .deco0 {
    width: 40vw;
    top: -26.6666666667vw;
  }
}
.l-main .p-about__deco .deco {
  position: absolute;
  width: 22.1rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-about__deco .deco {
    position: static;
    width: 40vw;
  }
}
.l-main .p-about__deco .deco1 {
  right: -3rem;
  top: -20.2rem;
}
.l-main .p-about__deco .deco2 {
  left: -2.4rem;
  top: 11rem;
}
.l-main .p-about__deco .deco3 {
  right: -2.4rem;
  bottom: -6.3rem;
  width: 18rem;
}
.l-main .p-learn .l-content-inner {
  width: 122rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-learn .l-content-inner {
    width: 100%;
  }
}
.l-main .p-learn__title {
  color: #FCF872;
  text-align: center;
  font-size: 9rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  position: relative;
  top: -3.3rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__title {
    font-size: 12vw;
    line-height: 1.1;
  }
}
.l-main .p-learn__box {
  background-image: url(../images/keywords/bg_learn-blue.png);
  background-repeat: repeat-x;
  margin-top: -2rem;
  padding-bottom: 3.5rem;
  padding-top: 7rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box {
    margin-top: -10.6666666667vw;
    padding-bottom: 16vw;
    padding-top: 16vw;
    background-size: cover;
  }
}
.l-main .p-learn__box .inner {
  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;
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box .inner {
    display: block;
  }
}
.l-main .p-learn__box .left {
  width: 60rem;
  max-width: 100%;
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box .left {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box .right {
    width: 100%;
    max-width: 100%;
  }
}
.l-main .p-learn__box-title {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: 2.7rem;
  position: relative;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box-title {
    gap: 4vw;
  }
}
.l-main .p-learn__box-title::before {
  content: "";
  display: block;
  width: 11rem;
  height: 11rem;
  border-radius: 50%;
  background-color: #FCF872;
  position: absolute;
  right: 0;
  top: -4rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box-title::before {
    width: 21.3333333333vw;
    height: 21.3333333333vw;
    top: 0;
  }
}
.l-main .p-learn__box-title .num, .l-main .p-learn__box-title .title {
  position: relative;
}
.l-main .p-learn__box-title .num {
  color: #0082C8;
  font-size: 14rem;
  font-weight: 300;
  line-height: 1;
  position: relative;
  top: 0.1em;
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box-title .num {
    font-size: 16vw;
    top: 0;
  }
}
.l-main .p-learn__box-title .num span {
  font-size: 50%;
}
.l-main .p-learn__box-title .title {
  font-size: 4.8rem;
  font-weight: 700;
  line-height: 1.33;
  letter-spacing: 0.15em;
  margin-right: -1em;
  color: #000000;
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box-title .title {
    font-size: 7.4666666667vw;
    margin-right: 0;
  }
}
.l-main .p-learn__box-title__en {
  color: #0082C8;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1;
  text-transform: uppercase;
  display: inline-block;
  background-color: #ffffff;
  letter-spacing: 0.1em;
  padding: 0.5rem 1.2rem 0.5rem;
  margin-top: 3.4rem;
}
.l-main .p-learn__box-text {
  font-size: 1.6rem;
  line-height: 2;
  margin-top: 4rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box-text {
    margin-top: 5.3333333333vw;
  }
}
.l-main .p-learn__box:nth-of-type(2n) .inner {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.l-main .p-learn__box.-box01 {
  padding-top: 0;
  margin-top: 0;
}
.l-main .p-learn__box.-box01 .right {
  width: 72.5rem;
  position: relative;
  margin-left: -12.3rem;
  right: -2.3rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box.-box01 .right {
    width: 100%;
    margin: auto;
    right: auto;
  }
}
.l-main .p-learn__box.-box01 .p-learn__box-title::before {
  right: -13.2rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box.-box01 .p-learn__box-title::before {
    right: 0;
    -webkit-transform: translateX(50%);
            transform: translateX(50%);
  }
}
.l-main .p-learn__box.-box02 {
  background-image: url(../images/keywords/bg_learn-yellow.png);
}
.l-main .p-learn__box.-box02 .right {
  width: 63rem;
  position: relative;
  margin-right: -2.3rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box.-box02 .right {
    width: 100%;
    margin-right: 0;
  }
}
.l-main .p-learn__box.-box02 .p-learn__box-title::before {
  right: -6rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box.-box02 .p-learn__box-title::before {
    right: 0;
  }
}
.l-main .p-learn__box.-box03 {
  background-image: url(../images/keywords/bg_learn-pink.png);
}
.l-main .p-learn__box.-box03 .right {
  width: 63.5rem;
  position: relative;
  margin-left: -2.3rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box.-box03 .right {
    width: 100%;
    margin-left: 0;
  }
}
.l-main .p-learn__box.-box04 {
  background-image: url(../images/keywords/bg_learn-yellow.png);
}
.l-main .p-learn__box.-box04 .right {
  width: 59.4rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box.-box04 .right {
    width: 100%;
  }
}
.l-main .p-learn__box.-box05 {
  background-image: url(../images/keywords/bg_learn-green.png);
}
.l-main .p-learn__box.-box05 .right {
  width: 58.2rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box.-box05 .right {
    width: 100%;
  }
}
.l-main .p-learn__box.-box05 .p-learn__box-title::before {
  right: -10rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box.-box05 .p-learn__box-title::before {
    right: 0;
    -webkit-transform: translateX(50%);
            transform: translateX(50%);
  }
}
.l-main .p-learn__box.-box05 .p-learn__box-title .title {
  margin-right: -3em;
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box.-box05 .p-learn__box-title .title {
    margin-right: -1em;
    font-size: 6.6666666667vw;
    letter-spacing: 0.05em;
  }
}
.l-main .p-learn__box.-box06 {
  background-image: url(../images/keywords/bg_learn-yellow.png);
}
.l-main .p-learn__box.-box06 .left {
  width: 70rem;
}
.l-main .p-learn__box.-box06 .right {
  width: 54.1rem;
}
.l-main .p-learn__box.-box06 .p-learn__box-title .title {
  margin-right: -3em;
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box.-box06 .p-learn__box-title .title {
    margin-right: -1em;
    font-size: 6.6666666667vw;
    letter-spacing: 0.05em;
  }
}
@media print, screen and (min-width: 768px) {
  .l-main .p-learn__box.-box06 .p-learn__box-title::before {
    -webkit-transform: translateX(180%);
            transform: translateX(180%);
  }
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box.-box06 .p-learn__box-title::before {
    -webkit-transform: translateX(50%);
            transform: translateX(50%);
  }
}
.l-main .p-learn__box.-box07 .right {
  width: 54.9rem;
}
@media print, screen and (min-width: 768px) {
  .l-main .p-learn__box.-box07 .p-learn__box-title::before {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
}
.l-main .p-learn__box.-box08 {
  background-image: url(../images/keywords/bg_learn-yellow.png);
}
.l-main .p-learn__box.-box08 .right {
  width: 58.9rem;
}
.l-main .p-learn__box.-box09 {
  background-image: url(../images/keywords/bg_learn-pink.png);
}
.l-main .p-learn__box.-box09 .right {
  width: 61.6rem;
}
.l-main .p-learn__box.-box09 .p-learn__box-title .title {
  margin-right: -2em;
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box.-box09 .p-learn__box-title .title {
    letter-spacing: 0.05em;
  }
}
@media print, screen and (min-width: 768px) {
  .l-main .p-learn__box.-box09 .p-learn__box-title::before {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box.-box09 .p-learn__box-title::before {
    -webkit-transform: translateX(80%);
            transform: translateX(80%);
  }
}
.l-main .p-learn__box.-box10 {
  background-image: url(../images/keywords/bg_learn-yellow.png);
}
.l-main .p-learn__box.-box10 .inner {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media print, screen and (min-width: 768px) {
  .l-main .p-learn__box.-box10 .left {
    width: 69.3rem;
  }
}
.l-main .p-learn__box.-box10 .right {
  width: 55rem;
}
.l-main .p-learn__box.-box10 .p-learn__box-title .title {
  margin-right: -2em;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box.-box10 .p-learn__box-title .title {
    margin-right: -1em;
    font-size: 6.6666666667vw;
    letter-spacing: 0.03em;
  }
}
@media print, screen and (min-width: 768px) {
  .l-main .p-learn__box.-box10 .p-learn__box-title::before {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
}
@media screen and (max-width: 767px) {
  .l-main .p-learn__box.-box10 .p-learn__box-title::before {
    -webkit-transform: translateX(50%);
            transform: translateX(50%);
  }
}
.l-main .p-gallery {
  background-image: url(../images/keywords/bg_gallery.png);
  background-repeat: repeat-x;
  margin-top: -2rem;
  padding-top: 10.7rem;
  padding-bottom: 13rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-gallery {
    margin-top: -10.6666666667vw;
    padding-top: 16vw;
    padding-bottom: 26.6666666667vw;
  }
}
.l-main .p-gallery__title {
  text-align: center;
}
.l-main .p-gallery__title .title-en {
  color: #FCF872;
  font-size: 12.8rem;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}
@media screen and (max-width: 767px) {
  .l-main .p-gallery__title .title-en {
    font-size: 16vw;
  }
}
.l-main .p-gallery__title .title-jp {
  font-size: 4rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  margin-top: -6.3rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-gallery__title .title-jp {
    font-size: 5.8666666667vw;
    margin-top: -8vw;
    line-height: 1.3;
  }
}
.l-main .p-gallery__text {
  text-align: center;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.15em;
  margin-top: 3.5rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-gallery__text {
    text-align: left;
    margin-top: 5.3333333333vw;
    letter-spacing: 0.05em;
    font-size: 4.2666666667vw;
  }
}
.l-main .p-gallery__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.5rem;
  margin-top: 6rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-gallery__list {
    margin-top: 8vw;
    gap: 2.6666666667vw;
  }
}
.l-main .p-gallery__list .item {
  width: 39rem;
  border-radius: 2rem;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .l-main .p-gallery__list .item {
    width: calc((100% - 2.6666666667vw) / 2);
    border-radius: 2.6666666667vw;
  }
}
.l-main .p-gallery .c-btn {
  margin: 6rem auto auto;
  width: 32rem;
}
@media screen and (max-width: 767px) {
  .l-main .p-gallery .c-btn {
    margin-top: 8vw;
  }
}