@charset "UTF-8";
/* #contMain reset */
#contMain *,
#contMain *::before,
#contMain *::after {
  box-sizing: border-box;
}
#contMain * {
  margin: 0;
  padding: 0;
}
#contMain img,
#contMain picture,
#contMain video,
#contMain canvas,
#contMain svg {
  display: block;
  max-width: 100%;
  height: auto;
}
#contMain img {
  width: 100%;
}

#contMain .cont__center {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
#contMain .cont__center > * {
  min-height: 0%;
}

#contMain .info__contents, #contMain .product__contents, #contMain .cont__container {
  box-sizing: content-box !important;
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}
@media screen and (max-width: 768px) {
  #contMain .info__contents, #contMain .product__contents, #contMain .cont__container {
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
  }
}

#contMain .info__btn {
  color: inherit;
  transition: opacity 0.3s;
  cursor: pointer;
}
#contMain .info__btn:hover {
  opacity: 0.7;
}

/* common:start */
#contMain {
  position: relative;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 768px) {
  #contMain .pcOnly {
    display: none !important;
  }
}
@media screen and (min-width: 769px) {
  #contMain .spOnly {
    display: none !important;
  }
}
/* common:end */
/* js-animation:start */
:root {
  --fade-translate-x: 0px;
  --fade-translate-y: 0px;
  --fade-duration: 500ms;
}

/* 表示方向 */
.up {
  --fade-translate-y: 50px;
}

.down {
  --fade-translate-y: -50px;
}

.fromLeft {
  --fade-translate-x: -50px;
}

.fromRight {
  --fade-translate-x: 50px;
}

.jsScroll {
  opacity: 0;
  transition-duration: 500ms;
  transition-property: opacity, transform;
  transition-delay: 0ms;
  transition-timing-function: ease-out;
  transform: translate(var(--fade-translate-x), var(--fade-translate-y));
}
.jsScroll.delay--100 {
  transition-delay: 100ms;
}
.jsScroll.delay--200 {
  transition-delay: 200ms;
}
.jsScroll.delay--300 {
  transition-delay: 300ms;
}
.jsScroll.delay--400 {
  transition-delay: 400ms;
}
.jsScroll.delay--500 {
  transition-delay: 500ms;
}
.jsScroll.delay--600 {
  transition-delay: 600ms;
}
.jsScroll.delay--700 {
  transition-delay: 700ms;
}
.jsScroll.delay--800 {
  transition-delay: 800ms;
}
.jsScroll.delay--900 {
  transition-delay: 900ms;
}
.jsScroll.delay--1000 {
  transition-delay: 1000ms;
}
.jsScroll.delay--1100 {
  transition-delay: 1100ms;
}
.jsScroll.delay--1200 {
  transition-delay: 1200ms;
}
.jsScroll.delay--1300 {
  transition-delay: 1300ms;
}
.jsScroll.delay--1400 {
  transition-delay: 1400ms;
}
.jsScroll.delay--1500 {
  transition-delay: 1500ms;
}
.jsScroll.delay--1600 {
  transition-delay: 1600ms;
}
.jsScroll.delay--1700 {
  transition-delay: 1700ms;
}
.jsScroll.delay--1800 {
  transition-delay: 1800ms;
}
.jsScroll.delay--1900 {
  transition-delay: 1900ms;
}
.jsScroll.delay--2000 {
  transition-delay: 2000ms;
}
.jsScroll.delay--2100 {
  transition-delay: 2100ms;
}
.jsScroll.delay--2200 {
  transition-delay: 2200ms;
}
.jsScroll.delay--2300 {
  transition-delay: 2300ms;
}
.jsScroll.delay--2400 {
  transition-delay: 2400ms;
}
.jsScroll.delay--2500 {
  transition-delay: 2500ms;
}
.jsScroll.delay--2600 {
  transition-delay: 2600ms;
}
.jsScroll.delay--2700 {
  transition-delay: 2700ms;
}
.jsScroll.delay--2800 {
  transition-delay: 2800ms;
}
.jsScroll.delay--2900 {
  transition-delay: 2900ms;
}
.jsScroll.delay--3000 {
  transition-delay: 3000ms;
}

.jsScrollIn {
  opacity: 1;
  transform: translate(0, 0);
}

.jsFvHide {
  opacity: 0;
  transition-duration: 1s;
  transition-property: opacity, transform;
  transition-delay: 0s;
}
.jsFvHide.mv__title {
  transition-delay: 0.8s;
}
.jsFvHide.mv__info-onsale {
  transition-delay: 1.2s;
}
.jsFvHide.mv__text {
  transition-delay: 1.4s;
}
.jsFvHide.mv__photo {
  transition-duration: 1s;
  transition-timing-function: ease-in-out;
  transform: translate(0, 15px);
}
.jsFvHide.jsFvShow {
  opacity: 1;
  transform: translate(0, 0);
}

/* js-animation:end */
/* mv:start */
#contMain .mv__container {
  background-image: url(/grand_hop/images/pc/mv_bg.jpg);
  background-repeat: no-repeat;
  background-position: bottom center;
  background-size: cover;
}
@media screen and (max-width: 768px) {
  #contMain .mv__container {
    background-image: url(/grand_hop/images/sp/mv_bg.jpg);
    background-position: top center;
  }
}
#contMain .mv__contents {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
  overflow-y: hidden;
  position: relative;
}
@media screen and (min-width: 1921px) {
  #contMain .mv__contents {
    max-width: none;
    width: 52.0833333333vw;
  }
}
#contMain .mv__info {
  width: 56.4%;
  position: relative;
  z-index: 10;
}
@media screen and (max-width: 768px) {
  #contMain .mv__info {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  #contMain .mv__info-onsale {
    display: block;
    margin-bottom: 82.8vw;
  }
}
#contMain .mv__photo {
  width: 100%;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  background-image: url(/grand_hop/images/pc/mv_bg_shadow.jpg);
  background-repeat: no-repeat;
  background-position: bottom center;
  background-size: contain;
}
@media screen and (max-width: 768px) {
  #contMain .mv__photo {
    background-image: url(/grand_hop/images/sp/mv_bg_shadow.jpg);
  }
}

/* mv:end */
/* mv:start */
#contMain .product__container {
  background-image: url(/grand_hop/images/pc/product_bg_top.jpg), url(/grand_hop/images/pc/product_bg_bottom.jpg);
  background-repeat: no-repeat;
  background-position: top center, bottom center;
  background-size: 2080px;
  background-color: #000;
}
@media screen and (max-width: 768px) {
  #contMain .product__container {
    background-image: url(/grand_hop/images/sp/product_bg_top.png), url(/grand_hop/images/sp/product_bg_bottom.png);
    background-size: contain;
    background-position: top center, bottom center;
  }
}
#contMain .product__contents {
  padding-top: 120px;
  padding-bottom: 35px;
}
@media screen and (max-width: 768px) {
  #contMain .product__contents {
    padding-top: 16%;
    padding-bottom: 18.6666666667%;
  }
}
#contMain .product__item {
  display: flex;
  flex-direction: row-reverse;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: stretch;
}
@media screen and (max-width: 768px) {
  #contMain .product__item {
    flex-direction: column-reverse;
  }
}
#contMain .product__item:not(:last-child) {
  margin-bottom: 8%;
}
@media screen and (max-width: 768px) {
  #contMain .product__item:not(:last-child) {
    margin-bottom: 0;
  }
}
#contMain .product__item:nth-child(even) {
  flex-direction: row;
}
@media screen and (max-width: 768px) {
  #contMain .product__item:nth-child(even) {
    flex-direction: column-reverse;
  }
}
#contMain .product__photo--01 {
  margin-left: 4%;
}
#contMain .product__photo--02 {
  margin-right: 2%;
}
#contMain .product__photo--03 {
  margin-left: 2%;
}
#contMain .product__photo, #contMain .product__photo--01, #contMain .product__photo--02, #contMain .product__photo--03 {
  display: block;
  width: 54%;
}
@media screen and (max-width: 768px) {
  #contMain .product__photo, #contMain .product__photo--01, #contMain .product__photo--02, #contMain .product__photo--03 {
    margin: 0;
    width: 100%;
  }
}
#contMain .product__info {
  flex: 1;
}
#contMain .product__caution {
  margin-top: 11.5%;
}
@media screen and (max-width: 768px) {
  #contMain .product__caution {
    margin-top: 0;
  }
}

/* mv:end */
/* mv:start */
#contMain .info__container {
  padding-top: 100px;
  padding-bottom: 100px;
  background: linear-gradient(rgb(79, 15, 46) 0%, rgba(79, 15, 46, 0.16) 46%, rgba(255, 255, 255, 0) 100%);
  background-color: #ae1f24;
}
@media screen and (max-width: 768px) {
  #contMain .info__container {
    padding-top: 16vw;
    padding-bottom: 18.6666666667vw;
  }
}
#contMain .info__contents {
  position: relative;
}
#contMain .info__title {
  margin-left: auto;
  width: 57%;
}
@media screen and (max-width: 768px) {
  #contMain .info__title {
    margin: 0 auto;
    width: 100%;
  }
}
#contMain .info__photo {
  display: block;
  position: absolute;
  margin-left: 20px;
  top: 0;
  left: 0;
}
@media screen and (max-width: 768px) {
  #contMain .info__photo {
    position: relative;
    margin-left: 0;
    width: 100%;
  }
}
#contMain .info__datas {
  margin-left: auto;
  width: 57%;
  display: flex;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  #contMain .info__datas {
    width: 100%;
  }
}
#contMain .info__data {
  width: 76.3157894737%;
}
@media screen and (max-width: 768px) {
  #contMain .info__data {
    width: 68.6567164179%;
  }
}
#contMain .info__data-title {
  width: 23.6842105263%;
}
@media screen and (max-width: 768px) {
  #contMain .info__data-title {
    width: 31.3432835821%;
  }
}
#contMain .info__btn {
  margin: 0 auto;
  margin-top: 6%;
  display: block;
  width: 42%;
}
@media screen and (max-width: 768px) {
  #contMain .info__btn {
    margin-top: 11.9402985075%;
    width: 74.6268656716%;
  }
}

/* mv:end */