@charset 'UTF-8';
.pageKeypoints .main {
  padding-bottom: 13.333333333333334%;
}
.pageKeypoints .main::before {
  background: url("../../../common/img/bg02.png?hash=53ada3f96818a6a7962a7f0104106b2f") center top repeat;
  background-size: 250px;
}
@media screen and (min-width: 768px) {
  .pageKeypoints .main {
    padding-bottom: 102px;
  }
}
.pageKeypoints .main .headingPrimary {
  font-weight: bold;
  text-align: center;
}
.pageKeypoints .main .headingPrimary span {
  display: block;
}
.pageKeypoints .main .headingPrimary .en {
  font-size: 0;
}
.pageKeypoints .main .headingPrimary .ja {
  font-size: 4vw;
  line-height: 1;
  letter-spacing: 0.2em;
  font-family: 'Noto Sans JP', sans-serif;
  margin-top: 20px;
}
@media screen and (min-width: 768px) {
  .pageKeypoints .main .headingPrimary .ja {
    font-size: 1.8rem;
    line-height: 1;
    font-weight: 900;
    margin-top: 17px;
  }
}
.pageKeypoints .main .headingSecondary {
  font-size: 5.333333333333334vw;
  line-height: 1;
  letter-spacing: 0.1em;
  border-bottom: 1px solid #000;
  display: table;
  font-family: 'Noto Sans JP', sans-serif;
  margin: 0 auto;
  margin-bottom: 25px;
  padding: 0 5px;
  padding-bottom: 10px;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .pageKeypoints .main .headingSecondary {
    font-size: 2.4rem;
    line-height: 1;
  }
}
.pageKeypoints .main .sectionInner {
  position: relative;
  width: 93.33333333333333%;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .pageKeypoints .main .sectionInner {
    max-width: 980px;
    width: 100%;
  }
}
.pageKeypoints .main .text {
  font-size: 3.466666666666666vw;
  line-height: 1.538461538461539;
}
.pageKeypoints .main .text:not(:first-of-type) {
  margin-top: 30px;
}
@media screen and (min-width: 768px) {
  .pageKeypoints .main .text {
    font-size: 1.6rem;
    line-height: 1.875;
  }
  .pageKeypoints .main .text:not(:first-of-type) {
    margin-top: 30px;
  }
}
.pageKeypoints .main .imgWrapper {
  margin-top: 26px;
}
@media screen and (min-width: 768px) {
  .pageKeypoints .main .imgWrapper {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -o-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -o-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin-top: 60px;
  }
}
@media screen and (max-width: 767px) {
  .pageKeypoints .main .imgWrapper .img:not(:first-child) {
    margin-top: 4.285714285714286%;
  }
}
@media screen and (min-width: 768px) {
  .pageKeypoints .main .imgWrapper .img {
    max-width: 460px;
    width: 46.93877551020408%;
  }
}
@media screen and (max-width: 767px) {
  .pageKeypoints .main .sectionHero {
    width: 100%;
    position: relative;
  }
  .pageKeypoints .main .sectionHero::before {
    content: "";
    display: block;
    padding-top: 88%;
  }
  .pageKeypoints .main .sectionHero > * {
    position: absolute;
  }
}
@media screen and (min-width: 768px) {
  .pageKeypoints .main .sectionHero {
    height: 449px;
  }
}
.pageKeypoints .main .sectionHero .heroBg {
  background: url("../img/bg01.jpg?hash=d3a347645007aa43309c6d53d75e5d49") center top no-repeat;
  background-size: cover;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 768px) {
  .pageKeypoints .main .sectionHero .heroBg {
    background: url("../img/pc/bg01.jpg?hash=2f0b786a64b1b145058067a25cd40081") center center no-repeat;
    background-size: cover;
  }
}
.pageKeypoints .main .sectionHero .heroBody {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  box-sizing: border-box;
  padding: 18.266666666666666% 0 0;
  width: 100%;
  height: 100%;
  text-align: center;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .pageKeypoints .main .sectionHero .heroBody {
    padding: 111px 0 0;
  }
}
.pageKeypoints .main .sectionHero .heroHeadingKeypoints {
  color: #fff;
  font-size: 0;
  margin-bottom: 5.866666666666666%;
}
.pageKeypoints .main .sectionHero .heroHeadingKeypoints span {
  display: block;
}
.pageKeypoints .main .sectionHero .heroHeadingKeypoints .en {
  position: relative;
  width: 52%;
  margin-right: auto;
  margin-left: auto;
}
.pageKeypoints .main .sectionHero .heroHeadingKeypoints .ja {
  font-size: 5.333333333333334vw;
  line-height: 1;
  display: block;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 900;
  margin-top: 21px;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .pageKeypoints .main .sectionHero .heroHeadingKeypoints {
    margin-bottom: 35px;
  }
  .pageKeypoints .main .sectionHero .heroHeadingKeypoints .en {
    width: 352px;
  }
  .pageKeypoints .main .sectionHero .heroHeadingKeypoints .ja {
    font-size: 4rem;
    line-height: 1;
    letter-spacing: 0.05em;
    margin-top: 40px;
  }
}
.pageKeypoints .main .sectionHero .heroTextLead {
  font-size: 3.466666666666666vw;
  line-height: 1.538461538461539;
  letter-spacing: 0.05em;
  color: #fff;
  font-weight: bold;
  margin-bottom: 10.133333333333333%;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .pageKeypoints .main .sectionHero .heroTextLead {
    font-size: 1.6rem;
    line-height: 1.875;
    letter-spacing: 0.05em;
    margin-bottom: 70px;
  }
}
.pageKeypoints .main .sectionChallenge {
  background: url("../img/bg02.png?hash=8e7d1c93741d1cf9510d1f14d95cb2ad") center top no-repeat;
  background-size: 100% auto;
  box-sizing: border-box;
  padding: 10.666666666666668% 0 11.600000000000001%;
}
@media screen and (min-width: 768px) {
  .pageKeypoints .main .sectionChallenge {
    background: url("../img/pc/bg02.png?hash=219325bcbcf8ac3eecaac1f625d1716c") center top no-repeat;
    padding: 78px 10px 89px;
  }
}
.pageKeypoints .main .sectionChallenge .headingPrimary {
  margin-bottom: 30px;
}
.pageKeypoints .main .sectionChallenge .headingPrimary .en {
  position: relative;
  width: 48%;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .pageKeypoints .main .sectionChallenge .headingPrimary {
    margin-bottom: 45px;
  }
  .pageKeypoints .main .sectionChallenge .headingPrimary .en {
    width: 266px;
  }
}
.pageKeypoints .main .sectionChallenge .sectionDetail {
  margin-top: 23px;
}
@media screen and (min-width: 768px) {
  .pageKeypoints .main .sectionChallenge .sectionDetail {
    margin-top: 47px;
  }
}
.pageKeypoints .main .sectionAdventure {
  box-sizing: border-box;
  padding-bottom: 10.133333333333333%;
}
@media screen and (min-width: 768px) {
  .pageKeypoints .main .sectionAdventure {
    padding: 0 10px 78px;
  }
}
.pageKeypoints .main .sectionAdventure .headingPrimary {
  margin-bottom: 36px;
}
.pageKeypoints .main .sectionAdventure .headingPrimary .en {
  position: relative;
  width: 52.26666666666666%;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .pageKeypoints .main .sectionAdventure .headingPrimary {
    margin-bottom: 45px;
  }
  .pageKeypoints .main .sectionAdventure .headingPrimary .en {
    width: 275px;
  }
}
.pageKeypoints .main .sectionSprits {
  box-sizing: border-box;
  padding-bottom: 13.600000000000001%;
}
@media screen and (min-width: 768px) {
  .pageKeypoints .main .sectionSprits {
    padding: 0 10px 100px;
  }
}
.pageKeypoints .main .sectionSprits .headingPrimary {
  margin-bottom: 36px;
}
.pageKeypoints .main .sectionSprits .headingPrimary .en {
  position: relative;
  width: 31.466666666666665%;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .pageKeypoints .main .sectionSprits .headingPrimary {
    margin-bottom: 45px;
  }
  .pageKeypoints .main .sectionSprits .headingPrimary .en {
    width: 165px;
  }
}
/*# sourceMappingURL=style.css.map */