@charset "utf-8";
/*
.font-serif(){
	//font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝";
	font-family: "Noto Serif JP", "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}
.font-serif-bold(){
	.font-serif();
	font-weight: bold;
}
*/
.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)
==============================================================*/
.top {
  position: relative;
  width: 100%;
  height: 100vh;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}
.top__bg1 {
  position: absolute;
  left: 0;
  top: 100px;
  width: 750px;
  height: 217px;
  background: url(../img/top_bg.png) top left / 100% repeat-x;
  background-size: auto;
  animation: bgslide_order 10s linear 0s infinite normal none running  ;
  display: none;
}
.top__bg2 {
  position: absolute;
  left: 0;
  bottom: 100px;
  width: 750px;
  height: 217px;
  background: url(../img/top_bg.png) top left / 100% repeat-x;
  background-size: auto;
  animation: bgslide_rev 10s linear 0s infinite normal none running  ;
  display: none;
}
.top__container {
  position: relative;
  display: block;
  width: 100%;
}
.top__container__read {
  width: 78vw;
  height: 12.133vw;
  background-image: url("../img/top_catch.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  margin: 0 auto 200px;
}
.top__container__read a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.top__container__btn {
  display: block;
}
.top__container__img {
  width: 30.133vw;
  height: 23.733vw;
  background-image: url("../img/top_chara.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  display: block;
  position: absolute;
  top: 150px;
  left: 0;
  right: 0;
  margin: auto;
}
.top__container__img a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.top__container .btn__yes {
  position: relative;
  width: 66vw;
  height: 17.333vw;
  background-image: url("../img/top_btn_yes.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  overflow: visible;
  margin: 0 auto 50px;
}
.top__container .btn__yes a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.top__container .btn__no {
  width: 66vw;
  height: 17.333vw;
  background-image: url("../img/top_btn_no.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  margin: 0 auto;
}
.top__container .btn__no a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
@keyframes bgslide_order {
  0% {
    background-position: 0px 0px;
  }
  100% {
    background-position: -1024px 0px;
  }
}
@keyframes bgslide_rev {
  0% {
    background-position: -1024px 0px;
  }
  100% {
    background-position: 0px 0px;
  }
}
.gotop {
  position: relative;
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  padding-bottom: 200px;
}
.gotop__container {
  display: block;
  width: 100%;
}
.gotop__container__read {
  width: 45.467vw;
  height: 15.733vw;
  background-image: url("../img/gotop_title.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  margin: 0 auto 100px;
}
.gotop__container__read a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.gotop__container__btn {
  display: block;
}
.gotop__container .btn__yes {
  width: 66vw;
  height: 17.333vw;
  background-image: url("../img/gotop_btn_yes.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  margin: 0 auto 50px;
}
.gotop__container .btn__yes a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.gotop__container .btn__no {
  width: 66vw;
  height: 17.333vw;
  background-image: url("../img/gotop_btn_no.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  margin: 0 auto;
}
.gotop__container .btn__no a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.kv {
  height: 970px;
}
.kv__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100vw;
  height: 177.867vw;
  background-image: url("../img/kv_bg.jpg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
}
.kv__bg a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.kv__text1 {
  position: absolute;
  right: 24px;
  top: 106px;
  width: 16.933vw;
  height: 62.133vw;
  background-image: url("../img/kv_copy1.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  display: none;
}
.kv__text1 a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.kv__text2 {
  position: absolute;
  left: 24px;
  top: 516px;
  width: 17.333vw;
  height: 46vw;
  background-image: url("../img/kv_copy2.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  display: none;
}
.kv__text2 a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.info {
  height: 3254px;
  margin-top: 0px;
}
.info__catch {
  width: 94.667vw;
  height: 37.733vw;
  background-image: url("../img/kv_copymain.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  margin: 0 auto;
  display: none;
}
.info__catch a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.info__read {
  position: absolute;
  left: 0;
  top: 330px;
}
.info__read__p1 {
  position: absolute;
  left: 236px;
  top: 34px;
  width: 37.333vw;
  height: 5.733vw;
  background-image: url("../img/info_p1.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
}
.info__read__p1 a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.info__read__p2 {
  position: absolute;
  left: 180px;
  top: 128px;
  width: 50.667vw;
  height: 6vw;
  background-image: url("../img/info_p2.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
}
.info__read__p2 a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.info__read__p3 {
  position: absolute;
  left: 206px;
  top: 226px;
  width: 44.267vw;
  height: 5.733vw;
  background-image: url("../img/info_p3.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
}
.info__read__p3 a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.info__read__p4 {
  position: absolute;
  left: 196px;
  top: 370px;
  width: 47.333vw;
  height: 5.467vw;
  background-image: url("../img/info_p4.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
}
.info__read__p4 a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.info__read__p5 {
  position: absolute;
  left: 168px;
  top: 446px;
  width: 51.867vw;
  height: 12.267vw;
  background-image: url("../img/info_p5.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
}
.info__read__p5 a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.info__read__p5 a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 220px;
  height: 92px;
}
.info__read__p6 {
  position: absolute;
  left: 86px;
  top: 572px;
  width: 76.933vw;
  height: 8.667vw;
  background-image: url("../img/info_p6.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
}
.info__read__p6 a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.info__title {
  position: absolute;
  left: -180px;
  top: 1002px;
  width: 152.667vw;
  height: 126.133vw;
  background-image: url("../img/info_title.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
}
.info__title a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.info__msg {
  position: absolute;
  left: 0;
  top: 1950px;
  width: 100%;
  font-family: 'Noto Serif JP', "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-size: 46px;
  text-align: center;
  color: white;
  line-height: 210%;
}
.info__msg .info__msg__p2 {
  width: 520px;
  margin: 0 auto;
}
.info__msg__cursor {
  position: absolute;
  left: 0;
  top: 0;
  width: 8px;
  height: 8px;
}
.info__msg__cursor .cimg {
  position: absolute;
  left: -80px;
  top: -50px;
  width: 23.2vw;
  height: 24vw;
  background-image: url("../img/cursor.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  animation: cursormove 0.2s linear 0s infinite normal none running  ;
}
.info__msg__cursor .cimg a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
@keyframes cursormove {
  0% {
    transform: translateX(0px) translateY(0px);
  }
  50% {
    transform: translateX(30px) translateY(30px);
  }
  100% {
    transform: translateX(0px) translateY(0px);
  }
}
.info__msg span {
  display: inline-block;
}
.info__img {
  position: absolute;
  left: 156px;
  top: 2482px;
  width: 45.067vw;
  height: 40.133vw;
  background-image: url("../img/info.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
}
.info__img a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.info__banner {
  position: absolute;
  left: 0px;
  top: 2860px;
  width: 100%;
}
.info__banner__txt {
  text-align: center;
  font-size: 32px;
  font-weight: 700;
  color: white;
}
.info__banner__main {
  display: block;
  width: 78.667vw;
  height: 30.133vw;
  background-image: url("../img/info_bnr.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  margin: 20px auto 0;
}
.info__banner__main a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.messeage {
  padding-top: 620px;
}
.messeage__title__hukidashi {
  position: absolute;
  left: 40px;
  top: 100px;
  width: 90.8vw;
  height: 40vw;
  background-image: url("../img/msg_hukidashi.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
}
.messeage__title__hukidashi a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.messeage__title__img {
  position: absolute;
  left: 172px;
  top: 416px;
  width: 52.267vw;
  height: 28.267vw;
  background-image: url("../img/msg_img.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
}
.messeage__title__img a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.messeage__body {
  padding: 60px 40px;
  width: 100%;
  font-size: 32px;
  font-weight: bold;
  color: #ffe507;
  line-height: 190%;
}
.messeage__body p {
  border-bottom: 1px solid #ffe507;
  padding: 40px 0;
}
.messeage__body p:last-child {
  border: none;
}
.end {
  position: relative;
  padding-bottom: 590px;
}
.end__img {
  width: 100vw;
  height: 177.867vw;
  background-image: url("../img/end_product.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
}
.end__img a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.end__img2 {
  width: 100vw;
  height: 132.933vw;
  background-image: url("../img/end_product2.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  position: absolute;
  bottom: 0;
}
.end__img2 a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.end__read1 {
  position: relative;
  z-index: 2;
  font-family: 'Noto Serif JP', "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-size: 40px;
  color: white;
  text-align: center;
  line-height: 200%;
  margin-top: -90px;
}
.end__read2 {
  position: relative;
  font-family: 'Noto Serif JP', "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-size: 40px;
  color: white;
  text-align: center;
  line-height: 200%;
  margin-top: 40px;
}
.end__link {
  display: block;
  font-family: 'Noto Serif JP', "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-size: 40px;
  color: white;
  text-align: center;
  line-height: 200%;
  margin-top: 50px;
}
.end__link a {
  color: white;
  text-decoration: underline;
}
.end__banner {
  width: 80%;
  margin: 100px auto 0;
}
.no .yesdisplay {
  display: none;
}
.msggotop {
  display: block;
  position: fixed;
  bottom: 100px;
  right: 0;
  width: 28.667vw;
  height: 35.733vw;
  background-image: url("../img/top_btn.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  z-index: 2;
  display: none;
}
.msggotop a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
