@charset "UTF-8";
/* mv
-----------------------*/
#mv {
  position: relative;
  height: 100vh;
  overflow: hidden;
}
#mv .bg {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  opacity: 0;
  animation: bgAnimate 20s infinite;
  /* 5画像 × 4s = 20s */
  background-size: cover;
  background-position: center;
}
#mv .bg.src1 {
  background-image: url(../images/index/bg_mv-01.jpg);
}
#mv .bg.src2 {
  background-image: url(../images/index/bg_mv-02.jpg);
  animation-delay: 4s;
}
#mv .bg.src3 {
  background-image: url(../images/index/bg_mv-03.jpg);
  animation-delay: 8s;
}
#mv .bg.src4 {
  background-image: url(../images/index/bg_mv-04.jpg);
  animation-delay: 12s;
}
#mv .bg.src5 {
  background-image: url(../images/index/bg_mv-05.jpg);
  animation-delay: 16s;
}
#mv .logo {
  position: absolute;
  top: calc(50% - 78px);
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
}

@keyframes bgAnimate {
  0% {
    opacity: 0;
  }
  5% {
    opacity: 1;
  }
  25% {
    opacity: 1;
  }
  30% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@media screen and (max-width: 767px) {
  #mv {
    padding-top: 13.33333vw;
  }
  #mv .logo {
    width: 60vw;
    top: calc(50% - 60px);
  }
}
.movie {
  padding: 25px 0 20px 0;
  text-align: center;
  background: url(../images/index/bg_movie.png) no-repeat rgba(171, 125, 77, 0.8) center;
}
.movie .btn-play {
  margin: 25px auto;
  width: 70px;
}
.movie .text {
  color: #fff;
  font-size: 2.0rem;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .movie {
    padding: 3.33333vw 0 2.66667vw 0;
  }
  .movie .btn-play {
    width: 9.33333vw;
    margin: 3.33333vw auto;
  }
  .movie .name {
    width: 53.33333vw;
    margin: 0 auto;
  }
  .movie .text {
    font-size: 3.46667vw;
  }
}
/* sec01
-----------------------*/
#sec01 {
  padding-top: 100px;
}
#sec01 .section-title {
  width: 325px;
  height: 417px;
  margin: 0 auto 90px auto;
  background: url(../images/index/txt_sec01.svg) no-repeat center/contain;
}
#sec01 .image {
  margin-bottom: 115px;
  text-align: center;
}
#sec01 .text {
  font-size: 2.0rem;
}

@media screen and (max-width: 767px) {
  #sec01 {
    padding-top: 13.33333vw;
  }
  #sec01 .section-title {
    width: 37.6vw;
    height: 48.13333vw;
    margin: 0 auto 12vw auto;
  }
  #sec01 .image {
    margin-bottom: 15.33333vw;
  }
  #sec01 .text {
    font-size: 3.46667vw;
  }
}
/* sec02
-----------------------*/
#sec02 {
  padding-top: 230px;
  background: url(../images/index/bg_sec02.png) no-repeat 88% top/contain;
}
#sec02 .section-title {
  margin-bottom: 415px;
  font-size: 5.0rem;
  text-align: center;
  font-weight: 700;
  line-height: 1.4;
}
#sec02 .-content01 {
  position: relative;
  margin-bottom: 295px;
}
#sec02 .-content01 .illust-01 {
  position: absolute;
  left: 54%;
  bottom: -355px;
  width: 59%;
}
#sec02 .-content01 .sec02-title {
  width: 652px;
  height: 115px;
  margin: 0 auto 40px auto;
  background: url(../images/index/txt_sec02-01.svg) no-repeat center/contain;
}
#sec02 .-content01 .image {
  margin-bottom: 30px;
}
#sec02 .-content01 .flex {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
#sec02 .-content01 .text {
  width: 47%;
  font-size: 2.0rem;
}
#sec02 .-content01 .thumbnail {
  width: 50%;
}
#sec02 .-content02 {
  position: relative;
  margin-bottom: 225px;
}
#sec02 .-content02 .illust-02 {
  position: absolute;
  right: 54%;
  top: 390px;
  width: 60%;
}
#sec02 .-content02 .sec02-title {
  width: 435px;
  height: 174px;
  margin: 0 auto 40px auto;
  background: url(../images/index/txt_sec02-02.svg) no-repeat center/contain;
}
#sec02 .-content02 .image {
  margin-bottom: 35px;
}
#sec02 .-content02 .flex {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
#sec02 .-content02 .text-wrap {
  position: relative;
  width: 47%;
  font-size: 2.0rem;
}
#sec02 .-content02 .text-wrap .text {
  margin-bottom: 50px;
}
#sec02 .-content02 .text-wrap .thumbnail {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
}
#sec02 .-content02 .thumbnail {
  width: 50%;
}

@media screen and (max-width: 1360px) {
  #sec02 .-content02 .illust-02 {
    right: 70%;
    width: 40%;
  }
}
@media screen and (max-width: 767px) {
  #sec02 {
    padding-top: 17.33333vw;
    background-position: top center;
  }
  #sec02 .section-title {
    margin-bottom: 28.66667vw;
    font-size: 6.66667vw;
  }
  #sec02 .-content01 {
    margin-bottom: 39.33333vw;
  }
  #sec02 .-content01 .illust-01 {
    left: 50%;
    bottom: -26.66667vw;
    width: 65.6vw;
  }
  #sec02 .-content01 .sec02-title {
    width: 86.93333vw;
    height: 15.33333vw;
    margin: 0 auto 5.33333vw auto;
  }
  #sec02 .-content01 .image {
    margin-bottom: 4vw;
  }
  #sec02 .-content01 .flex {
    display: block;
  }
  #sec02 .-content01 .text {
    width: 100%;
    margin-bottom: 2.66667vw;
    font-size: 3.46667vw;
  }
  #sec02 .-content01 .thumbnail {
    width: 100%;
  }
  #sec02 .-content01 .thumbnail img {
    width: 100%;
  }
  #sec02 .-content02 {
    margin-bottom: 30vw;
  }
  #sec02 .-content02 .illust-02 {
    top: 52vw;
    right: 70%;
    width: 52vw;
  }
  #sec02 .-content02 .sec02-title {
    width: 58vw;
    height: 23.2vw;
    margin: 0 auto 5.33333vw auto;
  }
  #sec02 .-content02 .image {
    margin-bottom: 4.66667vw;
  }
  #sec02 .-content02 .flex {
    display: block;
  }
  #sec02 .-content02 .text-wrap {
    position: relative;
    width: 100%;
    font-size: 3.46667vw;
  }
  #sec02 .-content02 .text-wrap .text {
    margin-bottom: 4.66667vw;
  }
  #sec02 .-content02 .text-wrap .thumbnail {
    position: static;
    width: 100%;
  }
  #sec02 .-content02 .text-wrap .thumbnail img {
    width: 100%;
  }
  #sec02 .-content02 .thumbnail {
    width: 100%;
    margin-bottom: 4.66667vw;
  }
  #sec02 .-content02 .thumbnail img {
    width: 100%;
  }
}
/* sec03
-----------------------*/
#sec03 {
  position: relative;
  padding-bottom: 155px;
}
#sec03 .illust-03 {
  position: absolute;
  right: -16%;
  top: -165px;
  width: 47%;
}
#sec03 .section-title {
  position: relative;
  margin-bottom: 300px;
  text-align: center;
  font-size: 5.0rem;
  font-weight: 700;
  line-height: 1.4;
  z-index: 2;
}
#sec03 .image {
  margin-bottom: 85px;
  text-align: center;
}
#sec03 .flex {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
}
#sec03 .text {
  width: 47%;
}
#sec03 .thumbnail {
  width: 50%;
}

@media screen and (max-width: 1360px) {
  #sec03 .illust-03 {
    top: -60px;
    right: -15%;
    width: 40%;
  }
}
@media screen and (max-width: 767px) {
  #sec03 {
    padding-bottom: 20.66667vw;
  }
  #sec03 .illust-03 {
    top: 22vw;
    right: auto;
    left: 70%;
    width: 52.33333vw;
    height: 51.26667vw;
  }
  #sec03 .section-title {
    margin-bottom: 40vw;
    font-size: 6.66667vw;
  }
  #sec03 .image {
    margin: 0 auto 11.33333vw auto;
  }
  #sec03 .flex {
    display: block;
  }
  #sec03 .text {
    width: 100%;
    margin-bottom: 4.66667vw;
  }
  #sec03 .thumbnail {
    width: 80%;
    margin: 0 auto;
  }
}
/* shop
-----------------------*/
#shop {
  padding-bottom: 200px;
}
#shop .section-title {
  width: 906px;
  height: 247px;
  margin: 0 auto 20px auto;
  text-align: center;
  font: 0/0 a;
  background: url(../images/index/txt_shopTitle.png) no-repeat center center/contain;
}
#shop .button {
  text-align: center;
}
#shop .button a {
  display: inline-block;
  width: 341px;
  margin-bottom: 50px;
  color: #fff;
  font-size: 2.0rem;
  line-height: 63px;
  background-color: #B0803C;
  border-radius: 5px;
  box-shadow: 2px 4px 4px rgba(0, 0, 0, 0.7);
}
#shop .lead {
  margin-bottom: 100px;
  font-size: 2.0rem;
  text-align: center;
}
#shop .item-list {
  display: -webkit-flex;
  display: flex;
}
#shop .item-list .item {
  width: 50%;
  text-align: center;
}
#shop .item-list .name {
  padding: 0 80px;
  font-size: 2.4rem;
  font-weight: 700;
  text-align: left;
}
#shop .item-list .price {
  margin-bottom: 20px;
  padding: 0 80px;
  font-size: 3.4rem;
  font-weight: 700;
  text-align: left;
}
#shop .item-list .price small {
  font-size: 2.4rem;
}

@media screen and (max-width: 767px) {
  #shop {
    padding-bottom: 26.66667vw;
  }
  #shop .section-title {
    width: 93.33333vw;
    height: 25.33333vw;
    margin: 0 auto 2.66667vw auto;
  }
  #shop .button {
    text-align: center;
  }
  #shop .button a {
    width: 45.33333vw;
    margin-bottom: 6.66667vw;
    font-size: 3.73333vw;
    line-height: 10.66667vw;
  }
  #shop .lead {
    margin-bottom: 13.33333vw;
    font-size: 3.73333vw;
  }
  #shop .item-list {
    display: block;
  }
  #shop .item-list .item {
    width: 100%;
  }
  #shop .item-list .item:first-child {
    margin-bottom: 13.33333vw;
  }
  #shop .item-list .item:first-child .image img {
    max-width: 80%;
  }
  #shop .item-list .name {
    width: 200px;
    margin: 0 auto;
    padding: 0;
    font-size: 4vw;
  }
  #shop .item-list .price {
    width: 200px;
    margin: 0 auto 2.66667vw auto;
    padding: 0;
    font-size: 5.06667vw;
  }
  #shop .item-list .price small {
    font-size: 3.73333vw;
  }
  #shop .item-list .storesjp-button-cart {
    width: 93.33333vw;
  }
}
