.p-product .p-product__body .p-product__main {
  padding-top: 30px;
  padding-bottom: 65px;
}
@media (min-width: 961px) {
  .p-product .p-product__body .p-product__main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
@media (min-width: 961px) {
  .p-product .p-product__body .p-product__main .p-product__images {
    width: 50%;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}
@media (min-width: 961px) {
  .p-product .p-product__body .p-product__main .p-product__info {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
}
.p-product .p-product__followCard {
  position: fixed;
  right: 0;
  bottom: 50px;
  border-radius: 8px 0 0 8px;
  -webkit-box-shadow: -1px 2px 10px rgba(0, 0, 0, 0.16);
          box-shadow: -1px 2px 10px rgba(0, 0, 0, 0.16);
  -webkit-transform: translateX(101%);
          transform: translateX(101%);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
@media (max-width: 960px) {
  .p-product .p-product__followCard {
    display: none;
  }
}
.p-product .p-product__followCard.is-active {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}

.p-productImages.swiper-container {
  margin: 0;
}
.p-productImages.swiper-container .p-productImages__wrapper .p-productImages__image img {
  width: 100%;
  height: auto;
}
.p-productImages.swiper-container .swiper-pagination-bullets {
  bottom: 15px;
}
.p-productImages.swiper-container .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 8px;
  width: 10px;
  height: 10px;
  background: #B2B2B2;
  opacity: 1;
}
.p-productImages.swiper-container .swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #AA171D;
}
.p-productImages.swiper-container .swiper-button-prev,
.p-productImages.swiper-container .swiper-button-next {
  margin-top: -13px;
  width: 13px;
  height: 26px;
  background-size: 12px 25px;
}
.p-productImages.swiper-container .swiper-button-prev {
  left: 30px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2014.46%2026.08%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill%3A%23aa171d%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_2%22%20data-name%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC%202%22%3E%3Cg%20id%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_2-2%22%20data-name%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC%202%22%3E%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_819%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%20819%22%3E%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_818%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%20818%22%3E%3Cpolygon%20class%3D%22cls-1%22%20points%3D%2213.04%2026.08%200%2013.04%2013.04%200%2014.46%201.41%202.83%2013.04%2014.45%2024.67%2013.04%2026.08%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}
.p-productImages.swiper-container .swiper-button-next {
  right: 30px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2014.46%2026.08%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill%3A%23aa171d%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_2%22%20data-name%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC%202%22%3E%3Cg%20id%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_2-2%22%20data-name%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC%202%22%3E%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_819%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%20819%22%3E%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_818%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%20818%22%3E%3Cpolygon%20class%3D%22cls-1%22%20points%3D%221.42%2026.08%200%2024.67%2011.63%2013.04%200%201.41%201.41%200%2014.46%2013.04%201.42%2026.08%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}

@media (min-width: 961px) {
  .p-productInfo {
    margin-left: 60px;
  }
}
@media (max-width: 960px) {
  .p-productInfo {
    margin-top: 15px;
  }
}
.p-productInfo .p-productInfo__name {
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  font-size: 30px;
}
@media (max-width: 960px) {
  .p-productInfo .p-productInfo__name {
    font-size: 24px;
  }
}
.p-productInfo .p-productInfo__cartButton {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 30px;
  padding: 15px;
  font-size: 18px;
}
.p-productInfo .p-productInfo__cartButton .p-productInfo__cartIcon {
  margin-right: 10px;
}
.p-productInfo .p-productInfo__otherLinks {
  margin-top: 30px;
}
@media (min-width: 961px) {
  .p-productInfo .p-productInfo__otherLinks .p-productInfo__otherButtons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
@media (min-width: 961px) {
  .p-productInfo .p-productInfo__otherLinks .p-productInfo__otherButtons li:not(:first-child) {
    margin-left: 20px;
  }
}
@media (max-width: 960px) {
  .p-productInfo .p-productInfo__otherLinks .p-productInfo__otherButtons li:not(:first-child) {
    margin-top: 10px;
  }
}
.p-productInfo .p-productInfo__otherLinks .p-productInfo__otherButtons li .p-productInfo__otherButton {
  padding: 5px 10px;
  font-size: 12px;
}
.p-productInfo .p-productInfo__otherLinks .p-productInfo__shopkeeper {
  margin-top: 20px;
  border-bottom: 1px solid #000000;
  font-size: 12px;
}
.p-productInfo .p-productInfo__sns {
  margin-top: 25px;
}

.p-productInfoTable {
  margin-top: 20px;
  background-color: #F5F5F5;
}
.p-productInfoTable .p-productInfoTable__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: solid #9A9A9A;
  border-width: 1px 1px 0 1px;
}
.p-productInfoTable .p-productInfoTable__row:last-child {
  border-width: 1px 1px;
}
.p-productInfoTable .p-productInfoTable__row dt,
.p-productInfoTable .p-productInfoTable__row dd {
  padding: 10px;
  font-size: 15px;
}
@media (max-width: 960px) {
  .p-productInfoTable .p-productInfoTable__row dt,
.p-productInfoTable .p-productInfoTable__row dd {
    font-size: 12px;
  }
}
.p-productInfoTable .p-productInfoTable__row dt {
  width: 20%;
  font-weight: 500;
  border-right: 1px solid #9A9A9A;
}
.p-productInfoTable .p-productInfoTable__row dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.p-productInfoTable .p-productInfoTable__row dd input[name=product_num] {
  width: 80px;
  color: #000000;
  text-align: center;
  border-radius: 4px;
  background-color: #FFFFFF;
  font-size: 15px;
}
@media (max-width: 960px) {
  .p-productInfoTable .p-productInfoTable__row dd input[name=product_num] {
    font-size: 12px;
  }
}
.p-productInfoTable .p-productInfoTable__price {
  font-size: 19px;
}
@media (max-width: 960px) {
  .p-productInfoTable .p-productInfoTable__price {
    font-size: 16px;
  }
}
.p-productInfoTable .p-productInfoTable__numButtons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-left: 10px;
}
.p-productInfoTable .p-productInfoTable__numButtons .p-productInfoTable__numButton {
  display: block;
}
.p-productInfoTable .p-productInfoTable__numButtons .p-productInfoTable__numButton::before {
  display: block;
  border-style: solid;
  content: "";
}
.p-productInfoTable .p-productInfoTable__numButtons .p-productInfoTable__numButton.up::before {
  border-width: 0 6px 6px 6px;
  border-color: transparent transparent #000000 transparent;
}
.p-productInfoTable .p-productInfoTable__numButtons .p-productInfoTable__numButton.down::before {
  border-width: 6px 6px 0 6px;
  border-color: #000000 transparent transparent transparent;
}

.p-productSnsList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.p-productSnsList .p-productSnsList__item.fb {
  margin-left: 20px;
}

.p-productDetail .p-productDetail__info {
  padding-bottom: 80px;
  background-color: #FFFFFF;
}
@media (max-width: 960px) {
  .p-productDetail .p-productDetail__info {
    padding-bottom: 60px;
  }
}
@media (min-width: 961px) {
  .p-productDetail .p-productDetail__info .p-productDetail__texts {
    width: 50%;
  }
}
.p-productDetail .p-productDetail__info .p-productDetail__texts .p-productDetail__heading {
  font-size: 14px;
  font-weight: 700;
}
.p-productDetail .p-productDetail__info .p-productDetail__texts .p-productDetail__detail {
  margin-top: 30px;
  font-size: 14px;
}
.p-productDetail .p-productDetail__info .p-productDetail__texts .p-productDetail__note {
  margin-top: 25px;
  font-size: 13px;
  color: #AA171D;
}
.p-productDetail .p-productDetail__info .p-productDetail__texts .p-productDetail__otameshi {
  margin-top: 30px;
  padding: 30px;
  border: 1px solid #AA171D;
  border-radius: 15px;
}
.p-productDetail .p-productDetail__info .p-productDetail__texts .p-productDetail__otameshi h5 {
  color: #AA171D;
  font-size: 14px;
}
.p-productDetail .p-productDetail__info .p-productDetail__texts .p-productDetail__otameshi p {
  margin-top: 20px;
}
.p-productDetail .p-productDetail__info .p-productDetail__texts .p-productDetail__otameshi ul {
  margin-top: 20px;
  list-style: inside;
}
.p-productDetail .p-productDetail__info .p-productDetail__movieWrapper {
  position: relative;
  margin-top: 40px;
  width: 50%;
}
@media (max-width: 960px) {
  .p-productDetail .p-productDetail__info .p-productDetail__movieWrapper {
    width: 100%;
  }
}
.p-productDetail .p-productDetail__info .p-productDetail__movieWrapper::before {
  display: block;
  padding-top: 56.25%;
  content: "";
}
.p-productDetail .p-productDetail__info .p-productDetail__movieWrapper .p-productDetail__movie {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.p-productDetail .p-productDetail__info .p-productDetail__tables {
  margin-top: 55px;
}
@media (min-width: 961px) {
  .p-productDetail .p-productDetail__info .p-productDetail__tables {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
@media (min-width: 961px) {
  .p-productDetail .p-productDetail__info .p-productDetail__tables .p-productDetail__table:not(:first-child) {
    margin-left: 50px;
  }
}
@media (max-width: 960px) {
  .p-productDetail .p-productDetail__info .p-productDetail__tables .p-productDetail__table:not(:first-child) {
    margin-top: 25px;
  }
}
.p-productDetail .p-productDetail__info .p-productDetail__tables .p-productDetail__table .p-productDetail__tableHeading {
  padding: 15px 20px;
  border: solid #9A9A9A;
  border-width: 1px 1px 0 1px;
  background-color: #F5F5F5;
}
@media (max-width: 960px) {
  .p-productDetail .p-productDetail__info .p-productDetail__tables .p-productDetail__table .p-productDetail__tableHeading {
    padding: 10px;
  }
}
.p-productDetail .p-productDetail__info .p-productDetail__tables .p-productDetail__table .p-productDetail__tableNote {
  display: block;
  margin-top: 10px;
  font-size: 13px;
}
.p-productDetail .p-productDetail__howTo {
  background-color: #F0F0E9;
}

.p-productDetailTable {
  border: 1px solid #9A9A9A;
  font-size: 13px;
}
.p-productDetailTable .p-productDetailTable__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.p-productDetailTable .p-productDetailTable__row:not(:last-child) {
  border-bottom: 1px solid #9A9A9A;
}
.p-productDetailTable .p-productDetailTable__row dt,
.p-productDetailTable .p-productDetailTable__row dd {
  padding: 15px 20px;
}
@media (max-width: 960px) {
  .p-productDetailTable .p-productDetailTable__row dt,
.p-productDetailTable .p-productDetailTable__row dd {
    padding: 10px;
  }
}
.p-productDetailTable .p-productDetailTable__row dt {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 115px;
  font-weight: normal;
  background-color: #F5F5F5;
}
.p-productDetailTable .p-productDetailTable__row dd {
  border-left: 1px solid #9A9A9A;
}

.p-productDetailHowTo {
  padding-bottom: 70px;
}
@media (max-width: 960px) {
  .p-productDetailHowTo {
    padding-bottom: 50px;
  }
}
.p-productDetailHowTo .p-productDetailHowTo__headingWrapper {
  display: inline-block;
  padding: 30px;
  background-color: #FAFAF5;
  -webkit-box-shadow: 0 8px 13px rgba(0, 0, 0, 0.16);
          box-shadow: 0 8px 13px rgba(0, 0, 0, 0.16);
}
@media (max-width: 960px) {
  .p-productDetailHowTo .p-productDetailHowTo__headingWrapper {
    padding: 15px;
  }
}
.p-productDetailHowTo .p-productDetailHowTo__headingWrapper .p-productDetailHowTo__heading {
  font-size: 25px;
  font-weight: 700;
  border-bottom: 3px solid #AA171D;
}
@media (max-width: 960px) {
  .p-productDetailHowTo .p-productDetailHowTo__headingWrapper .p-productDetailHowTo__heading {
    font-size: 20px;
  }
}
.p-productDetailHowTo .p-productDetailHowTo__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  margin-top: 35px;
}
@media (min-width: 961px) {
  .p-productDetailHowTo .p-productDetailHowTo__list .p-productDetailHowTo__item {
    width: calc((100% - 35px) / 2);
  }
  .p-productDetailHowTo .p-productDetailHowTo__list .p-productDetailHowTo__item:nth-child(even) {
    margin-left: 35px;
  }
  .p-productDetailHowTo .p-productDetailHowTo__list .p-productDetailHowTo__item:nth-child(n+3) {
    margin-top: 100px;
  }
}
@media (max-width: 960px) {
  .p-productDetailHowTo .p-productDetailHowTo__list .p-productDetailHowTo__item {
    width: calc((100% - 15px) / 2);
  }
  .p-productDetailHowTo .p-productDetailHowTo__list .p-productDetailHowTo__item:nth-child(even) {
    margin-left: 15px;
  }
  .p-productDetailHowTo .p-productDetailHowTo__list .p-productDetailHowTo__item:nth-child(n+3) {
    margin-top: 35px;
  }
}
@media (min-width: 961px) {
  .p-productDetailHowTo .p-productDetailHowTo__list .p-productDetailHowTo__item .p-productDetailHowTo__image {
    padding: 40px 40px 0 40px;
  }
}
.p-productDetailHowTo .p-productDetailHowTo__list .p-productDetailHowTo__item .p-productDetailHowTo__image img {
  width: 100%;
  height: auto;
}
@media (min-width: 961px) {
  .p-productDetailHowTo .p-productDetailHowTo__list .p-productDetailHowTo__item .p-productDetailHowTo__texts {
    margin-top: -50px;
    padding: 70px 40px 40px 40px;
    background-color: #FFFFFF;
  }
}
@media (max-width: 960px) {
  .p-productDetailHowTo .p-productDetailHowTo__list .p-productDetailHowTo__item .p-productDetailHowTo__texts {
    margin-top: 20px;
  }
}
.p-productDetailHowTo .p-productDetailHowTo__list .p-productDetailHowTo__item .p-productDetailHowTo__texts .p-productDetailHowTo__title {
  font-size: 22px;
}
@media (max-width: 960px) {
  .p-productDetailHowTo .p-productDetailHowTo__list .p-productDetailHowTo__item .p-productDetailHowTo__texts .p-productDetailHowTo__title {
    font-size: 16px;
  }
}
.p-productDetailHowTo .p-productDetailHowTo__list .p-productDetailHowTo__item .p-productDetailHowTo__texts .p-productDetailHowTo__description {
  margin-top: 15px;
  font-size: 14px;
}
@media (max-width: 960px) {
  .p-productDetailHowTo .p-productDetailHowTo__list .p-productDetailHowTo__item .p-productDetailHowTo__texts .p-productDetailHowTo__description {
    font-size: 12px;
  }
}

.p-productFollowCard {
  padding: 20px;
  width: 200px;
  background-color: #FFFFFF;
  z-index: 1;
}
.p-productFollowCard .p-productFollowCard__name {
  margin-top: 10px;
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  font-size: 16px;
}
.p-productFollowCard .p-productFollowCard__price {
  margin-top: 10px;
  font-size: 14px;
}
.p-productFollowCard .p-productFollowCard__cartButton {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 10px;
  padding: 10px;
}
.p-productFollowCard .p-productFollowCard__cartButton .p-productFollowCard__cartIcon {
  margin-right: 5px;
}

.p-recommendProducts .p-recommendProducts__inner {
  position: relative;
  padding-top: 40px;
  padding-bottom: 70px;
}
@media (max-width: 960px) {
  .p-recommendProducts .p-recommendProducts__inner {
    padding-top: 30px;
    padding-bottom: 60px;
  }
}
.p-recommendProducts .p-recommendProducts__inner::before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  margin-left: 122px;
  width: 110px;
  height: 9px;
  background-color: #AA171D;
  content: "";
}
@media (max-width: 960px) {
  .p-recommendProducts .p-recommendProducts__inner::before {
    margin-left: 15px;
    width: 76px;
    height: 6px;
  }
}
.p-recommendProducts .p-recommendProducts__heading {
  font-size: 22px;
  font-weight: 700;
}
@media (max-width: 960px) {
  .p-recommendProducts .p-recommendProducts__heading {
    font-size: 20px;
  }
}
.p-recommendProducts .p-recommendProducts__list {
  margin-top: 30px;
}
@media (max-width: 960px) {
  .p-recommendProducts .p-recommendProducts__list {
    margin-top: 20px;
  }
}
.p-recommendProducts .p-recommendProducts__name {
  margin-top: 15px;
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  font-size: 18px;
}
@media (max-width: 960px) {
  .p-recommendProducts .p-recommendProducts__name {
    font-size: 15px;
  }
}
.p-recommendProducts .p-recommendProducts__price {
  margin-top: 5px;
  font-size: 15px;
}