@charset "UTF-8";
main {
  margin: 0 auto;
  padding-top: 0;
  padding-bottom: 0vw;
}

section {
  padding: 0 3.8666666667vw;
}
section .inner {
  margin: 0 auto;
}

/*-----------------------------------------------------------------
xxx
-----------------------------------------------------------------*/
header {
  display: none;
}

.logo {
  width: 22.6666666667vw;
  margin: 0 auto;
  padding-top: 4vw;
}

/*-----------------------------------------------------------------
product
-----------------------------------------------------------------*/
.product {
  width: 100vw;
  margin: 0 auto;
  padding-top: 3.3333333333vw;
  padding-bottom: 13.3333333333vw;
  font-family: Helvetica Neue, Helvetica, Hiragino Sans, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, "Yu Gothic", YuGothic, Verdana, "メイリオ", Meiryo, sans-serif;
}
.product .inner {
  display: flex;
  flex-direction: column;
}
.product .inner .imgs {
  width: 100vw;
}
.product .inner .imgs .main {
  overflow: hidden;
  position: relative;
}
.product .inner .imgs .main .swiper-wrapper {
  width: 100vw;
  height: 120vw;
}
.product .inner .imgs .main .swiper-button-next,
.product .inner .imgs .main .swiper-button-prev {
  display: block;
  width: 8.6666666667vw;
  height: 8.6666666667vw;
}
.product .inner .imgs .main .swiper-button-next::after,
.product .inner .imgs .main .swiper-button-prev::after {
  display: none;
}
.product .inner .imgs .main .swiper-button-next:hover,
.product .inner .imgs .main .swiper-button-prev:hover {
  opacity: 0.65;
}
.product .inner .imgs .main .swiper-button-prev {
  background: url(../img/arrow-left.png) center no-repeat;
  background-size: contain;
  left: 2.9333333333vw;
}
.product .inner .imgs .main .swiper-button-next {
  background: url(../img/arrow-right.png) center no-repeat;
  background-size: contain;
  right: 2.9333333333vw;
}
.product .inner .imgs .main .main-image {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100vw;
  height: 122.1333333333vw;
}
.product .inner .imgs .main .main-image img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
}
.product .inner .imgs .thumbs {
  display: none;
  margin-top: 3.4666666667vw;
}
.product .inner .imgs .thumbs .swiper-wrapper {
  width: 100%;
  display: grid;
  gap: 2.4vw;
  grid-template-columns: repeat(auto-fit, minmax(18vw, 1fr));
}
.product .inner .imgs .thumbs .thumb a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 18vw;
  height: 21.6vw;
}
.product .inner .imgs .thumbs .thumb a img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
}
.product .inner .detail {
  padding-top: 5.3333333333vw;
  width: 100vw;
}
.product .inner .detail .title {
  font-size: 3.6vw;
  line-height: 1.3;
  padding: 0 6vw;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  letter-spacing: -0.01rem;
}
.product .inner .detail .timesale_price {
  margin-top: 4.6666666667vw;
  text-align: right;
  color: #202020;
  display: block;
  padding: 0 6vw;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
}
.product .inner .detail .timesale_price .price {
  display: inline-block;
  font-size: 2.9333333333vw;
  text-align: left;
}
.product .inner .detail .timesale_price .price .num {
  display: inline-block;
  font-size: 6vw;
  font-weight: 500;
  margin-left: 0.5333333333vw;
}
.product .inner .detail .timesale_price .label {
  font-size: 2.6666666667vw;
  margin-left: 0.5333333333vw;
  padding-bottom: 0.5333333333vw;
}
.product .inner .detail .product_price {
  margin-top: 1.6vw;
  text-align: right;
  color: #202020;
  display: block;
  color: #999999;
  font-size: 2.1333333333vw;
  font-weight: 500;
  padding: 0 6vw;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
}
.product .inner .detail .product_price .price {
  display: inline-block;
  text-align: left;
}
.product .inner .detail .product_price .price .num {
  display: inline-block;
  font-size: 2.6666666667vw;
}
.product .inner .detail .product_price .label {
  font-size: 2.1333333333vw;
  margin-left: 0.5333333333vw;
  padding-bottom: 0.5333333333vw;
}
.product .inner .detail .description {
  margin-top: 5.8666666667vw;
  border-top: 0.2vw solid #323232;
  color: #202020;
  padding: 5.6vw 6vw 0;
  font-size: 2.8453333333vw;
  line-height: 1.8;
}
.product .inner .detail .description h1,
.product .inner .detail .description h2,
.product .inner .detail .description h3,
.product .inner .detail .description h4,
.product .inner .detail .description h5,
.product .inner .detail .description h6 {
  font-size: 2.8453333333vw;
  line-height: 1.8;
  margin-top: 4vw;
  margin-bottom: 4vw;
}
.product .inner .detail .description h1:first-of-type,
.product .inner .detail .description h2:first-of-type,
.product .inner .detail .description h3:first-of-type,
.product .inner .detail .description h4:first-of-type,
.product .inner .detail .description h5:first-of-type,
.product .inner .detail .description h6:first-of-type {
  margin-top: 0;
}