@charset "utf-8";
.button {
  -ms-touch-action: manipulation;
      touch-action: manipulation;
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.abswh100 {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.wh100 {
  width: 100%;
  height: 100%;
}
.center {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}
.abscenter {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.hv_center {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
}
.h_center {
  position: absolute;
  right: 0;
  left: 0;
  margin: auto;
}
.v_center {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}
.hover_scale {
  transition: all 200ms 0s ease;
}
.hover_scale:hover {
  transform: scale(1.03);
}
/*==============================================================
  ■ (SP)
==============================================================*/
.pcbg {
  display: none;
}
.title__e {
  font-family: "Roboto Condensed", "Noto Sans JP", serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-size: 4.8vw;
  font-weight: 100;
}
.title__j {
  font-size: 7.2vw;
  font-weight: bold;
  line-height: 130%;
  margin-top: 1.33333vw;
}
.fixbg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
}
.fixbg video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.fixbg .videomask {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: url(../img/kv_mask.png) top left repeat;
  mix-blend-mode: multiply;
}
.fixbg .videomask.active {
  background: url(../img/academy_bg.jpg) center center / cover no-repeat;
}
.fixbnr {
  width: 100%;
  position: fixed;
  bottom: -24vw;
  transition: all 300ms 0s ease;
  z-index: 20;
  transform: scale(0.8);
}
.fixbnr a {
  display: block;
  width: 87.733vw;
  height: 20vw;
  background-image: url("../img/bnr.png");
  background-repeat: no-repeat;
  background-position: center center;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  background-size: contain;
  overflow: visible;
  margin: 0 auto;
  filter: drop-shadow(0px 1.6vw 1.06667vw rgba(0, 0, 0, 0.5));
  transform: translateZ(0);
}
.fixbnr a a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.fixbnr .close {
  width: 6.667vw;
  height: 6.667vw;
  background-image: url("../img/btn_close.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  position: absolute;
  top: -3.33333vw;
  right: 3.33333vw;
}
.fixbnr .close a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.kv {
  position: relative;
  width: 100%;
}
.kv__wrapper {
  position: relative;
  width: 100%;
  height: 100vh;
}
.kv__container {
  width: 90.66667vw;
  height: 121.46667vw;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.kv__head {
  width: 87.467vw;
  height: 16.267vw;
  background-image: url("../img/kv_p1.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  position: absolute;
  left: 1.33333vw;
  top: 0vw;
}
.kv__head a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.kv__maincopy {
  width: 87.333vw;
  height: 38.4vw;
  background-image: url("../img/kv_p2.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  position: absolute;
  left: 1.6vw;
  top: 19.73333vw;
}
.kv__maincopy a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.kv__maincomment {
  position: absolute;
  left: 1.6vw;
  top: 61.86667vw;
  width: 87.2vw;
  height: 24vw;
  background-image: url("../img/kv_p3.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
}
.kv__maincomment a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.kv__list {
  position: absolute;
  left: 1.6vw;
  top: 95.46667vw;
  width: 87.2vw;
  height: 25.867vw;
  background-image: url("../img/kv_p4.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
}
.kv__list a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.kv__info {
  width: 93.33333vw;
  height: 72vw;
  background-color: white;
  margin: 0 auto;
  margin-top: calc(-50vh + 65vw);
  margin-bottom: 13.33333vw;
  border-radius: 3.2vw;
  padding-top: 8vw;
  transition: all 300ms 0s ease;
  opacity: 0;
  transform: translateY(6.66667vw);
}
.kv__info__subcopy {
  text-align: center;
  font-size: 4.8vw;
  font-weight: 700;
}
.kv__info__maincopy {
  width: 79.6vw;
  height: 7.2vw;
  background-image: url("../img/kv_info_maincp.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  margin: 0.8vw auto 0;
}
.kv__info__maincopy a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.kv__info__link {
  width: 64vw;
  height: 14.4vw;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  background-color: #0AA89D;
  border-radius: 13.33333vw;
  margin: 8vw auto 0;
  color: white;
  font-size: 4.8vw;
  font-weight: 700;
  line-height: 100%;
}
.kv__info__link .arrow {
  display: inline-block;
  width: 3.733vw;
  height: 3.733vw;
  background-image: url("../img/fixbtn_arrow_w.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  vertical-align: middle;
  margin-left: 1.33333vw;
}
.kv__info__link .arrow a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.kv__info__comment1 {
  font-size: 4.26667vw;
  font-weight: 700;
  text-align: center;
  margin-top: 4vw;
}
.kv__info__comment2 {
  font-size: 2.4vw;
  font-weight: 400;
  line-height: 170%;
  padding-left: 1em;
  text-indent: -1em;
  margin-left: 9.33333vw;
}
.intro {
  position: relative;
  width: 100%;
  color: white;
}
.intro__container {
  position: relative;
  padding-left: 6.66667vw;
  padding-right: 6.66667vw;
  padding-top: 12vw;
  width: 100%;
  height: 191.73333vw;
}
.intro__subcontainer {
  position: relative;
}
.intro__bg {
  width: 100%;
  height: 191.73333vw;
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
}
.intro__bg__child {
  width: 180vw;
  height: 191.733vw;
  background-image: url("../img/intro_bg.jpg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  position: absolute;
  right: 0;
}
.intro__bg__child a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.intro__bgmask {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-color: black;
  opacity: 0.5;
}
.intro__list {
  margin-top: 9.33333vw;
}
.intro__list .item1 {
  width: 65.6vw;
  height: 14.933vw;
  background-image: url("../img/intro_text1.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
}
.intro__list .item1 a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.intro__list .item2 {
  width: 79.733vw;
  height: 7.2vw;
  background-image: url("../img/intro_text2.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  margin-top: 12vw;
}
.intro__list .item2 a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.intro__list .item3 {
  width: 64.267vw;
  height: 7.2vw;
  background-image: url("../img/intro_text3.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  margin-top: 9.33333vw;
}
.intro__list .item3 a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.intro__list .item4 {
  width: 70.267vw;
  height: 7.2vw;
  background-image: url("../img/intro_text4.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  margin-top: 9.33333vw;
}
.intro__list .item4 a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.intro__read1 {
  width: 65.733vw;
  height: 12vw;
  background-image: url("../img/intro_read1.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  margin: 12vw auto 0;
}
.intro__read1 a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.intro__read2 {
  width: 68.133vw;
  height: 16vw;
  background-image: url("../img/intro_read2.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  margin: 6.66667vw auto 0;
}
.intro__read2 a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.intro__graph {
  position: relative;
  width: 100%;
  height: 195.2vw;
  background-color: white;
  padding-top: 13.33333vw;
}
.intro__graph__title {
  width: 87.2vw;
  height: 60.933vw;
  background-image: url("../img/intro_graph_title.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  margin: 0 auto;
}
.intro__graph__title a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.intro__graph__main {
  width: 87.2vw;
  height: 80.267vw;
  background-image: url("../img/intro_graph.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  margin: 4vw auto 0;
}
.intro__graph__main a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.intro__graph__read {
  font-size: 3.73333vw;
  color: #283C50;
  font-style: normal;
  font-weight: 600;
  line-height: 160%;
  width: 86.66667vw;
  margin: 5.86667vw auto 0;
}
.reason {
  background-color: #f3f8f8;
}
.reason .reason__etitle {
  padding-left: 6.66667vw;
  color: #0AA89D;
}
.reason .reason__jtitle {
  padding-left: 6.66667vw;
}
.reason__container {
  padding: 15.33333vw 0 0;
}
.reason__list {
  margin: 5.33333vw auto 0;
}
.reason__list__item {
  margin-bottom: 13.33333vw;
  padding: 4vw 6.66667vw 4vw;
}
.reason__list__item:last-of-type {
  margin-bottom: 0;
}
.reason__list__item__idx {
  font-family: "Roboto Condensed", "Noto Sans JP", serif;
  font-optical-sizing: auto;
  font-style: normal;
  color: #255482;
  font-size: 14.66667vw;
  font-style: italic;
  font-weight: 600;
  line-height: 100%;
  display: inline-block;
  border-bottom: 0.8vw solid #255482;
}
.reason__list__item__title {
  font-size: 5.06667vw;
  font-weight: 700;
  line-height: 150%;
  color: #0AA89D;
  margin-top: 5.33333vw;
}
.reason__list__item__img {
  width: 93.6vw;
  height: 61.73333vw;
  overflow: hidden;
  margin-top: 5.33333vw;
}
.reason__list__item__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.reason__list__item__read {
  font-size: 3.46667vw;
  font-weight: 600;
  line-height: 160%;
  /* 41.6px */
  letter-spacing: 0.05em;
  margin-top: 4vw;
}
.reason__list__item__link {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  width: 69.33333vw;
  height: 13.33333vw;
  background-color: #0AA89D;
  border-radius: 13.33333vw;
  margin: 7.33333vw auto 0;
  color: white;
  font-size: 4.26667vw;
  font-weight: 700;
  line-height: 100%;
}
.reason__list__item__link .arrow {
  display: inline-block;
  width: 3.867vw;
  height: 3.467vw;
  background-image: url("../img/btn_downarrow.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  vertical-align: middle;
  margin-left: 1.33333vw;
}
.reason__list__item__link .arrow a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.reason__list__item__voice {
  margin-top: 8vw;
  margin-left: -6.66667vw;
  width: 100vw;
}
.reason__list__item__voice .swiper-slide {
  width: 78.66667vw;
}
.reason__list__item__voice .swiper-wrapper {
  padding-left: 6.66667vw;
}
.reason__list__item__voice .rliv__container {
  position: relative;
  width: 78.66667vw;
  background-color: white;
  border-radius: 1.06667vw;
  padding: 5.33333vw;
  border: 1px solid #E5EAEA;
}
.reason__list__item__voice .rliv__container__head {
  display: -ms-flexbox;
  display: flex;
}
.reason__list__item__voice .rliv__container__head__img {
  width: 12.8vw;
  min-width: 12.8vw;
}
.reason__list__item__voice .rliv__container__head__img img {
  width: 100%;
  height: auto;
}
.reason__list__item__voice .rliv__container__head__txt {
  padding-top: 1.86667vw;
  padding-left: 5.33333vw;
}
.reason__list__item__voice .rliv__container__head__txt__name {
  font-weight: 500;
  font-size: 4.26667vw;
  line-height: 100%;
  letter-spacing: 0.05em;
  color: #255482;
}
.reason__list__item__voice .rliv__container__head__txt__info {
  font-weight: 400;
  font-size: 2.66667vw;
  line-height: 100%;
  color: #0AA89D;
  margin-top: 1.86667vw;
}
.reason__list__item__voice .rliv__container__body {
  font-weight: 400;
  font-size: 3.2vw;
  line-height: 170%;
  letter-spacing: 0.05em;
  color: #213544;
  margin-top: 2.66667vw;
}
.reason__list__item.item1 {
  background-color: #f3f8f8;
}
.reason__list__item.item2 {
  background-color: white;
}
.reason__list__item.item3 {
  background-color: #f3f8f8;
}
.reason__list__item.item4 {
  background-color: white;
  padding-bottom: 8vw;
}
.reason__office {
  width: 100%;
  height: 185.73333vw;
  background-color: #E5EAEA;
  padding-top: 8vw;
}
.reason__office__container {
  position: relative;
  width: 90.4vw;
  height: 169.86667vw;
  background-color: white;
  margin: 0 auto;
  border-radius: 3.2vw;
  padding-top: 9.6vw;
}
.reason__office__title {
  width: 74.4vw;
  height: 27.467vw;
  background-image: url("../img/reason_info_title.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  margin: 0 auto;
}
.reason__office__title a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.reason__office__catch {
  text-align: center;
  font-size: 5.06667vw;
  font-weight: 700;
  line-height: 150%;
  margin-top: 9.86667vw;
}
.reason__office__img {
  width: 74.4vw;
  height: 54.66667vw;
  margin: 2.66667vw auto 0;
}
.reason__office__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.reason__office__read {
  width: 74.66667vw;
  font-size: 3.73333vw;
  font-weight: 600;
  line-height: 160%;
  margin: 6.66667vw auto 0;
}
.academy {
  position: relative;
  width: 100%;
}
.academy__container {
  position: relative;
  color: white;
  margin: 0 auto;
}
.academy__titlewrapper {
  width: 86.66667vw;
  height: 66.66667vw;
  margin: 0 auto;
  position: absolute;
  left: 6.66667vw;
  top: 10.66667vw;
  z-index: 2;
}
.academy__titlewrapper__bg {
  width: 78.267vw;
  height: 45.067vw;
  background-image: url("../img/academy_bg.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  position: absolute;
  left: -6.66667vw;
  top: -10.66667vw;
}
.academy__titlewrapper__bg a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.academy__title {
  position: relative;
}
.academy__content1 {
  position: relative;
  width: 100%;
  height: 178.66667vw;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}
.academy__content1__bg {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.academy__content1__wrapper {
  position: relative;
  width: 78.66667vw;
}
.academy__content1__title {
  width: 77.333vw;
  height: 18.667vw;
  background-image: url("../img/academy_title.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
}
.academy__content1__title a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.academy__content1__read {
  margin-top: 12vw;
  width: 78.4vw;
  height: 62.4vw;
  background-image: url("../img/academy_read.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
}
.academy__content1__read a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.academy__content2 {
  position: relative;
  width: 100%;
  background-color: white;
  border-radius: 8vw 8vw 0px 0px;
  padding-top: 16vw;
  padding-bottom: 12.53333vw;
  margin-top: -5.33333vw;
}
.academy__content2__title {
  width: 64vw;
  height: 15.333vw;
  background-image: url("../img/academy_info_title.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  margin: 0vw auto 0;
}
.academy__content2__title a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.academy__content2__img {
  width: 87.2vw;
  height: 58.133vw;
  background-image: url("../img/academy_info_img.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  margin: 9.33333vw auto 0;
}
.academy__content2__img a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.academy__content2__catch {
  width: 87.2vw;
  height: 30.133vw;
  background-image: url("../img/academy_info_catch.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  margin: 8vw auto 0;
}
.academy__content2__catch a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.academy__content2__img2 {
  width: 84vw;
  height: 74.533vw;
  background-image: url("../img/academy_info_img2.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  margin: 10.66667vw auto 0;
}
.academy__content2__img2 a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.academy__content2__comment {
  width: 80vw;
  color: #283C50;
  font-size: 2.66667vw;
  font-weight: 400;
  line-height: 170%;
  margin: 8vw auto 0;
  padding-left: 1em;
  text-indent: -1em;
}
.voices {
  background-color: #ebf0f0;
  height: 209.86667vw;
  padding-top: 14.66667vw;
}
.voices__title {
  padding-left: 6.66667vw;
}
.voices__title__e {
  color: white;
}
.voices__title__j {
  color: #283C50;
}
.voices__bg {
  width: 78.267vw;
  height: 45.067vw;
  background-image: url("../img/academy_bg.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  position: absolute;
  left: 0;
  top: 0;
}
.voices__bg a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.voices__container {
  position: relative;
}
.voices__list {
  position: relative;
  width: 100%;
  margin-top: 6.66667vw;
}
.voices__list__item {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 82.66667vw;
  height: 146.66667vw;
  overflow: hidden;
}
.voices__list__item__bg {
  position: absolute;
  left: 0;
  top: 0;
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.voices__list__item__bg video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.voices__list__item__mask {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 80vw;
  opacity: 0.6;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000 100%);
  mix-blend-mode: multiply;
  transform: translateZ(0);
  z-index: 2;
}
.voices__list__item__txt {
  position: absolute;
  bottom: 6.66667vw;
  left: 0;
  right: 0;
  margin: auto;
  color: white;
  width: 66.66667vw;
  z-index: 3;
  transform: translateZ(0);
}
.voices__list__item__txt__title {
  font-size: 5.6vw;
  font-weight: 700;
  line-height: 140%;
}
.voices__list__item__txt__read {
  font-size: 3.2vw;
  font-weight: 600;
  line-height: 170%;
  margin-top: 2.66667vw;
}
.voices__list__item__txt__info {
  position: relative;
  width: 100%;
  height: 6.66667vw;
  margin-top: 2.66667vw;
}
.voices__list__item__txt__info__pos {
  font-size: 2.66667vw;
  font-weight: 600;
  line-height: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
}
.voices__list__item__txt__info__name {
  font-size: 4.53333vw;
  font-weight: 600;
  line-height: 100%;
  position: absolute;
  right: 0;
  bottom: 0;
}
.voices .swiper {
  width: 100%;
  height: 146.66667vw;
}
.voices .swiper-slide {
  position: relative;
  width: 82.66667vw;
  height: 146.66667vw;
  transition: all 600ms 0s ease;
  transform: scale(0.9);
}
.voices .swiper-slide.swiper-slide-active {
  transform: scale(1);
}
.voices .swiper-pagination {
  transform: translate3d(0, 12vw, 0);
}
.voices .swiper-pagination span {
  width: 3.2vw;
  height: 3.2vw;
  background-color: #b4c1c1 !important;
}
.voices .swiper-pagination span.swiper-pagination-bullet-active {
  background-color: #0AA89D !important;
  border: 2px solid #5ED2C7;
}
.campaign {
  background-color: white;
  background: url(../img/campaign_bg.jpg) top center / cover no-repeat;
  width: 100%;
  height: 273.06667vw;
  padding-top: 14.66667vw;
}
.campaign__title {
  padding-left: 6.66667vw;
}
.campaign__title__e {
  color: #0AA89D;
}
.campaign__head {
  padding-top: 4vw;
}
.campaign__head__title {
  width: 85.333vw;
  height: 59.333vw;
  background-image: url("../img/campaign_title.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  margin: 0 auto;
}
.campaign__head__title a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.campaign__head__read {
  font-size: 3.73333vw;
  font-weight: 600;
  line-height: 170%;
  width: 84vw;
  margin: 8vw auto 0;
}
.campaign__outline {
  width: 87.2vw;
  margin: 8vw auto 0;
  background-color: white;
  border-radius: 3.2vw;
  padding: 8.53333vw 5.6vw 5.33333vw;
}
.campaign__outline__title1 {
  text-align: center;
  border-top: 1px solid #283C50;
  border-bottom: 1px solid #283C50;
  font-size: 3.73333vw;
  font-weight: 700;
}
.campaign__outline__read1 {
  text-align: center;
  font-size: 5.6vw;
  font-weight: 700;
  line-height: 160%;
  margin-top: 2.66667vw;
}
.campaign__outline__title2 {
  text-align: center;
  border-top: 1px solid #283C50;
  border-bottom: 1px solid #283C50;
  font-size: 3.73333vw;
  font-weight: 700;
  margin-top: 7.73333vw;
}
.campaign__outline__read2__main {
  font-size: 4vw;
  font-weight: 700;
  line-height: 170%;
  padding: 2.66667vw 2.66667vw 2.66667vw;
}
.campaign__outline__read2__list {
  margin-top: 2.13333vw;
}
.campaign__outline__read2__list__item {
  font-size: 3.46667vw;
  font-weight: 500;
  line-height: 160%;
  padding-left: 1em;
  text-indent: -1em;
  margin-bottom: 2.66667vw;
}
.campaign__outline__read2__list__item::before {
  content: '・';
}
.requirements {
  background-color: white;
  padding-top: 16vw;
  padding-bottom: 17.33333vw;
}
.requirements__title {
  padding-left: 6.66667vw;
}
.requirements .requirements__title__e {
  color: #0AA89D;
}
.requirements__list {
  margin: 9.33333vw auto 0;
  width: 87.2vw;
}
.requirements__list__item {
  position: relative;
  padding-bottom: 5.6vw;
  border-bottom: 1px solid #E5EAEA;
  margin-bottom: 7.46667vw;
}
.requirements__list__item dl dt {
  position: relative;
  font-size: 4.8vw;
  font-weight: 600;
  line-height: 160%;
  padding-left: 4vw;
}
.requirements__list__item dl dt::before {
  content: '';
  width: 2.4vw;
  height: 2.4vw;
  position: absolute;
  left: 0vw;
  top: 2.26667vw;
  background-color: #0AA89D;
  border-radius: 13.33333vw;
}
.requirements__list__item dl dd {
  font-size: 3.46667vw;
  font-weight: 500;
  line-height: 160%;
  padding-left: 4vw;
  margin-top: 2.66667vw;
}
.requirements__list__item dl dd .comment {
  font-size: 2.66667vw;
  font-weight: 400;
  line-height: 170%;
  margin-top: 1.33333vw;
}
.requirements__list__item dl dd .address {
  margin-top: 4vw;
}
.requirements__info {
  width: 87.2vw;
  margin: -6vw auto 0;
  position: relative;
}
.requirements__info::before {
  content: '';
  width: 14.667vw;
  height: 14.667vw;
  background-image: url("../img/req_plugicon.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 1;
}
.requirements__info::before a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.requirements__info__bg {
  width: 87.2vw;
  height: 97.4vw;
  background-image: url("../img/req_bg.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  top: 6.13333vw;
}
.requirements__info__bg a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.requirements__info__container {
  position: relative;
  padding: 16vw 5.33333vw 0;
}
.requirements__info__title {
  font-size: 4.26667vw;
  font-style: normal;
  font-weight: 700;
  line-height: 170%;
}
.requirements__info__hr {
  width: 100%;
  height: 0.26667vw;
  background-color: #283C50;
  margin: 4vw auto 2.66667vw;
}
.requirements__info__list__item {
  padding-left: 1em;
  text-indent: -1em;
  margin-bottom: 0.8vw;
}
.requirements__info__list__item::before {
  content: '・';
}
.requirements__info__comment {
  font-size: 2.66667vw;
  font-weight: 400;
  line-height: 150%;
  padding-left: 1em;
  text-indent: -1em;
}
.flow {
  background-color: #F3F8F8;
}
.flow .flow__title__e {
  color: #0AA89D;
}
.flow__container {
  padding: 16vw 6.66667vw 6.66667vw;
}
.flow__list {
  margin-top: 8vw;
}
.flow__list__item {
  position: relative;
  background-color: white;
  margin-bottom: 9.86667vw;
}
.flow__list__item:after {
  content: '';
  width: 8.8vw;
  height: 4.8vw;
  background-image: url("../img/flow_arrow.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  position: absolute;
  margin: auto;
  left: 0;
  right: 0;
  bottom: -7.2vw;
}
.flow__list__item:after a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.flow__list__item dl dt {
  position: relative;
  padding: 1.33333vw 0 0vw;
  padding-left: 5.33333vw;
  border-bottom: 1px solid white;
  background-color: #255482;
  border-radius: 1.6vw 1.6vw 0px 0px;
}
.flow__list__item dl dt span {
  font-family: "Roboto Condensed", "Noto Sans JP", serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-size: 8.53333vw;
  font-style: italic;
  font-weight: 400;
  line-height: 160%;
  vertical-align: middle;
  color: white;
}
.flow__list__item dl dt p {
  display: inline-block;
  font-size: 4.26667vw;
  font-weight: 600;
  line-height: 160%;
  vertical-align: middle;
  color: white;
  margin-left: 4vw;
}
.flow__list__item dl dd {
  font-size: 3.2vw;
  font-weight: 500;
  line-height: 170%;
  padding: 4vw 4vw 4vw;
  border-radius: 0px 0px 1.6vw 1.6vw;
}
.flow__list__item.item4 {
  background-color: #255482 ;
  color: white;
  margin-bottom: 0;
  border-radius: 1.6vw;
}
.flow__list__item.item4::after {
  display: none;
}
.flow__list__item.item4 dt span {
  color: white;
}
.flow__list__item.item4 dt span.date {
  color: #255482;
  background-color: white;
  font-size: 2.93333vw;
  font-weight: 700;
  border-radius: 1.33333vw;
  padding: 0.8vw 2.66667vw;
  font-style: normal;
  letter-spacing: 0.1em;
  position: absolute;
  right: 5.33333vw;
  top: 3.73333vw;
}
.end__img {
  width: 100vw;
  height: 67.33333vw;
  overflow: hidden;
}
.end__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.1);
}
.end__txt {
  position: relative;
  width: 100vw;
  height: 82.66667vw;
  background-color: white;
}
.end__txt span {
  display: block;
  width: 87.2vw;
  height: 58.667vw;
  background-image: url("../img/end_txt.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  position: absolute;
  left: 6.66667vw;
  top: 9.33333vw;
}
.end__txt span a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.kv__anime {
  transform: scale(0.5);
  opacity: 0;
}
body.scrolled .kv__info {
  opacity: 1;
  transform: translateY(0);
}
body.scrolled .fixbnr {
  bottom: 5.33333vw;
}
.intro__bgmask {
  opacity: 1;
}
.intro__etitle {
  opacity: 0;
}
.intro__jtitle {
  opacity: 0;
}
.intro__list .item1 {
  opacity: 1;
  transform: translateX(150%);
}
.intro__list .item2 {
  opacity: 1;
  transform: translateX(150%);
}
.intro__list .item3 {
  opacity: 1;
  transform: translateX(150%);
}
.intro__list .item4 {
  opacity: 1;
  transform: translateX(150%);
}
.intro__read1 {
  opacity: 0;
  transform: translateY(40px);
}
.intro__read2 {
  opacity: 0;
  transform: translateY(40px);
}
.reason__list img {
  transform: scale(1.1);
}
