@charset "UTF-8";
.bg-white {
  background: #fff;
}

.bg-cream {
  background: #fbf8f5 !important;
}

.bg-line-gradient {
  background-image: -webkit-gradient(linear, left top, left bottom, from(#fbf8f5), color-stop(14%, #ffffff));
  background-image: linear-gradient(180deg, #fbf8f5, #ffffff 14% 100%);
}

.text-center {
  text-align: center;
}

.position-relative {
  position: relative;
}

.d-flex {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

.flex-shrink-0 {
  -ms-flex-negative: 0 !important;
      flex-shrink: 0 !important;
}

.fzp-18px {
  font-size: 18px !important;
}

.fzp-17px {
  font-size: 17px !important;
}

.fzp-20px {
  font-size: 20px !important;
}

.fzp-21px {
  font-size: 21px !important;
}

.fzp-24px {
  font-size: 24px !important;
}

.fzp-25px {
  font-size: 25px !important;
}

.fzp-27px {
  font-size: 27px !important;
}

.fzp-30px {
  font-size: 30px !important;
}

.fzp-35px {
  font-size: 35px !important;
}

.mb-30px {
  margin-bottom: 30px !important;
}

.mt-0px {
  margin-top: 0px !important;
}

.mt-10px {
  margin-top: 10px !important;
}

.mt-20px {
  margin-top: 20px !important;
}

.mt-40px {
  margin-top: 40px !important;
}

.mt-50px {
  margin-top: 50px !important;
}

.mt-75px {
  margin-top: 75px !important;
}

.mt-n30px {
  margin-top: -30px !important;
}

.mt-n40px {
  margin-top: -40px !important;
}

.mt-n60px {
  margin-top: -60px !important;
}

.mr-n5p {
  margin-right: -5% !important;
}

.mr-n60px {
  margin-right: -60px !important;
}

.mx-n30px {
  margin-inline: -30px !important;
}

.px-0px {
  padding-inline: 0 !important;
}

.px-2p {
  padding-inline: 2% !important;
}

.px-9p {
  padding-inline: 9% !important;
}

.top-n30px {
  top: -30px !important;
}

.right-n15px {
  right: -15px !important;
}

.w-50p {
  width: 50% !important;
}

.w-70p {
  width: 70% !important;
}

@media screen and (min-width: 768px) {
  .fzp-md-18px {
    font-size: 18px !important;
  }
  .fzp-md-17px {
    font-size: 17px !important;
  }
  .fzp-md-20px {
    font-size: 20px !important;
  }
  .fzp-md-21px {
    font-size: 21px !important;
  }
  .fzp-md-24px {
    font-size: 24px !important;
  }
  .fzp-md-25px {
    font-size: 25px !important;
  }
  .fzp-md-27px {
    font-size: 27px !important;
  }
  .fzp-md-30px {
    font-size: 30px !important;
  }
  .fzp-md-35px {
    font-size: 35px !important;
  }
  .mb-md-30px {
    margin-bottom: 30px !important;
  }
  .mt-md-0px {
    margin-top: 0px !important;
  }
  .mt-md-10px {
    margin-top: 10px !important;
  }
  .mt-md-20px {
    margin-top: 20px !important;
  }
  .mt-md-40px {
    margin-top: 40px !important;
  }
  .mt-md-50px {
    margin-top: 50px !important;
  }
  .mt-md-n30px {
    margin-top: -30px !important;
  }
  .mt-md-n40px {
    margin-top: -40px !important;
  }
  .mt-md-n60px {
    margin-top: -60px !important;
  }
  .mr-md-n5p {
    margin-right: -5% !important;
  }
  .mr-md-n60px {
    margin-right: -60px !important;
  }
  .mx-md-n30px {
    margin-inline: -30px !important;
  }
  .px-md-0px {
    padding-inline: 0 !important;
  }
  .px-md-2p {
    padding-inline: 2% !important;
  }
  .px-md-9p {
    padding-inline: 9% !important;
  }
  .top-md-n30px {
    top: -30px !important;
  }
  .right-md-n15px {
    right: -15px !important;
  }
  .w-md-300px {
    width: 300px !important;
  }
}
.ff-mincho {
  font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", "メイリオ", Meiryo, serif !important;
}

#check {
  background: #fbf8f5;
  padding-bottom: 90px;
}
@media screen and (max-width: 767px) {
  #check {
    padding-bottom: 13vw;
  }
}

.bgGradation {
  background: url(../img/hoshitu_bg.jpg) no-repeat center top/cover;
  padding: 80px 60px 0;
}
@media screen and (max-width: 767px) {
  .bgGradation {
    padding-top: 13vw;
    padding-inline: 9%;
  }
}
.bgGradation__ttl {
  letter-spacing: 5%;
  line-height: 1.3 !important;
}
.bgGradation .bannerWrap {
  position: relative;
}
.bgGradation .bannerWrap > * {
  position: relative;
  z-index: 1;
}
.bgGradation .bannerWrap:after {
  content: "";
  display: block;
  background: #fff;
  width: calc(100% + 120px);
  height: 110px;
  right: 0;
  left: -60px;
  bottom: 0;
  margin: auto;
  position: absolute;
}

/*既存要素の調整*/
@media screen and (min-width: 768px) {
  .product_pageContents sup {
    top: -10px;
  }
}

@media screen and (max-width: 767px) {
  .product_pageContents #point .pointListWrap .productSectionInner {
    padding: 0 5%;
  }
}

@media screen and (max-width: 767px) {
  .product_pageContents #point .pointListWrap .pointList .point .numWrap {
    left: -27%;
  }
}

@media screen and (max-width: 767px) {
  .product_pageContents #point .pointListWrap .productSectionInner > .titleWrap .title {
    width: 92%;
  }
}

@media screen and (max-width: 767px) {
  .product_pageContents #point > .productSectionInner > .sectionTitleWrap .enTitle {
    width: 24.5333333333vw;
    top: -30px;
  }
}

@media screen and (max-width: 767px) {
  .product_pageContents .productSection .productSectionInner > .sectionTitleWrap::before {
    top: -30px;
    height: 13.3333333333vw;
  }
}

@media screen and (max-width: 767px) {
  .product_pageContents .sectionTitleWrap .minText {
    font-size: 18px !important;
    line-height: 1.38;
  }
}

@media screen and (max-width: 767px) {
  .product_pageContents #point > .productSectionInner > .sectionTitleWrap .sectionTitle {
    font-size: 24px !important;
  }
}

@media screen and (max-width: 767px) {
  .product_pageContents #point > .productSectionInner > .sectionTitleWrap .sectionTitle span {
    font-size: 20px !important;
  }
}