/******************************/
/* Product */
/******************************/
.p-product {
  margin-bottom: 90px;
}
/* form */
.p-product select {
  box-sizing: border-box;
  padding: 5px;
  height: 40px;
  border: 1px solid #bfbfbf;
  font-size: 16px;
}
.p-product input[type=text] {
  box-sizing: border-box;
  padding: 5px;
  height: 40px;
  border: 1px solid #bfbfbf;
  font-size: 16px;
}
.p-product-main {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 1030px) {
  .p-product-main {
    display: block;
  }
}
.p-product-img {
  width: 530px;
}
@media screen and (max-width: 1030px) {
  .p-product-img {
    width: auto;
    margin-bottom: 45px;
  }
}
@media screen and (max-width: 767px) {
  .p-product-img {
    margin-left: -20px;
    margin-right: -20px;
    width: auto;
  }
}
.p-product-img__main {
  text-align: center;
}
@media screen and (max-width: 1030px) {
  .p-product-img__main {
    margin-left: auto;
    margin-right: auto;
    width: 530px;
  }
}
@media screen and (max-width: 767px) {
  .p-product-img__main {
    width: auto;
  }
}
.p-product-img__main-item {
  position: relative;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-product-img__main-item {
    text-align: center;
  }
}
.p-product-img__main-item:before {
  content: "";
  display: block;
  padding-top: 100%;
}
.p-product-img__main-item a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.p-product-img__main-item img {
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: auto !important;
  max-width: 100%;
  max-height: 100%;
  text-align: center;
}
.p-product-thumb-list {
  display: flex;
  flex-wrap: wrap;
  margin-left: -4px;
  margin-right: -4px;
  margin-top: 8px;
}
@media screen and (max-width: 1030px) {
  .p-product-thumb-list {
    margin-left: 0;
    margin-right: 0;
    flex-wrap: nowrap;
  }
}
.p-product-thumb-list__item {
  box-sizing: border-box;
  margin-bottom: 8px;
  padding-left: 4px;
  padding-right: 4px;
  width: 20%;
  transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
@media screen and (max-width: 1030px) {
  .p-product-thumb-list__item {
    margin-right: 5px;
    padding-left: 0;
    padding-right: 0;
    width: 90px;
  }
}
@media screen and (max-width: 767px) {
  .p-product-thumb-list__item {
    margin-right: 5px;
    width: 60px;
  }
}
.p-product-thumb-list__item:hover, .p-product-thumb-list__item.is-current {
  opacity: 0.7;
  cursor: pointer;
}
@media screen and (max-width: 1030px) {
  .p-product-thumb-list__item img {
    width: 90px;
  }
}
@media screen and (max-width: 767px) {
  .p-product-thumb-list__item img {
    width: 60px;
  }
}
.p-product-thumb-list__img {
  /* overflow用 */
  position: relative;
  text-align: center;
}
@media screen and (max-width: 1030px) {
  .p-product-thumb-list__img {
    width: 90px;
  }
}
@media screen and (max-width: 767px) {
  .p-product-thumb-list__img {
    width: 60px;
    text-align: center;
  }
}
.p-product-thumb-list__img:before {
  content: "";
  display: block;
  padding-top: 100%;
}
.p-product-thumb-list__img img {
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: auto !important;
  max-width: 100%;
  max-height: 100%;
  text-align: center;
}
/* 商品画像 slider */
.p-product-img__main .slick-track {
  margin-left: 0;
  margin-right: 0;
}
.p-product-img__main .slick-prev, .p-product-img__main .slick-next {
  top: 50%;
  width: 30px;
  height: 30px;
  transition: all 0.4s ease;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .p-product-img__main .slick-prev, .p-product-img__main .slick-next {
    width: 45px;
    height: 45px;
  }
}
.p-product-img__main .slick-prev:before, .p-product-img__main .slick-next:before {
  content: "";
  position: absolute;
  top: 7px;
  left: 10px;
  width: 15px;
  height: 15px;
  border-left: 1px solid #000000;
  border-top: 1px solid #000000;
  transition: all 0.4s ease;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .p-product-img__main .slick-prev:before, .p-product-img__main .slick-next:before {
    top: 15px;
  }
}
.p-product-img__main .slick-prev {
  left: 15px;
}
@media screen and (max-width: 767px) {
  .p-product-img__main .slick-prev {
    left: 0px;
  }
}
.p-product-img__main .slick-prev:before {
  transform: rotate(-45deg);
}
@media screen and (max-width: 767px) {
  .p-product-img__main .slick-prev:before {
    left: 17px;
  }
}
.p-product-img__main .slick-next {
  right: 15px;
}
@media screen and (max-width: 767px) {
  .p-product-img__main .slick-next {
    right: 0px;
  }
}
.p-product-img__main .slick-next:before {
  left: 4px;
  transform: rotate(135deg);
}
@media screen and (max-width: 767px) {
  .p-product-img__main .slick-next:before {
    left: 13px;
  }
}
/***** 商品情報 *****/
.p-product-info {
  width: 410px;
}
@media screen and (max-width: 1030px) {
  .p-product-info {
    width: auto;
  }
}
.p-product-info__ttl {
  margin: 0;
  font-size: 24px;
  font-weight: normal;
}
@media screen and (max-width: 767px) {
  .p-product-info__ttl {
    font-size: 21px;
  }
}
.p-product-info__ttl img {
  vertical-align: middle;
}

.p-product-info__id {
  margin: 0;
}
@media screen and (max-width: 767px) {
  .p-product-info__id {
    margin-top: 5px;
    font-size: 10px;
  }
}
.p-product-price {
  margin-top: 20px;
  margin-bottom: 20px;
}
.p-product-price__sell {
  font-size: 18px;
}
.p-product-price__normal {
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  .p-product-price__normal {
    font-size: 12px;
  }
}
.p-product-price__list-price {
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  .p-product-price__list-price {
    font-size: 12px;
  }
}
/* オプション table */
.p-product-option-tbl {
  margin-top: 30px;
  margin-bottom: 30px;
  overflow-x: auto;
}
.p-product-option-tbl table {
  margin-bottom: 0;
  border-left: 0;
  border-right: 0;
  width: 100%;
}
.p-product-option-tbl table div {
  display: inline-block !important;
}
.p-product-option-tbl th {
  min-width: 100px;
}
.p-product-option-tbl th, .p-product-option-tbl td {
  padding: 12px 5px;
  border-top: 1px solid #dddddd;
  border-bottom: 1px solid #dddddd;
  border-left: 0;
  text-align: center;
}
.p-product-option-tbl label {
  display: inline-block !important;
  margin-left: 5px;
  margin-bottom: 0;
}
.p-product-option-tbl input {
  margin-top: 0;
}
/* オプション select */
.p-product-option-select {
  margin-top: 30px;
  margin-bottom: 30px;
}
.p-product-option-select__box {
  margin-top: 15px;
}
.p-product-option-select__ttl {
  margin-bottom: 5px;
  font-weight: bold;
}
/* 名入れ */
.p-product-name {
  margin-top: 30px;
  margin-bottom: 30px;
}
.p-product-name__box {
  margin-top: 15px;
}
.p-product-name__ttl {
  margin-bottom: 5px;
  font-weight: bold;
}
.p-product-name__body input {
  width: 100%;
}
/* 数量 */
.p-product-form-stock {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 20px;
  margin-bottom: 20px;
}
.p-product-form-stock__input {
  display: flex;
  align-items: center;
}
.p-product-form-stock__input input {
  width: 60px;
}
.p-product-form-stock__unit {
  margin-left: 10px;
}
.p-product-form-stock__stock {
  margin-left: 25px;
}
/* ボタン */
.p-product-form-btn {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.p-product-form-btn__cart {
  width: 100%;
}
@media screen and (max-width: 1030px) {
  .p-product-form-btn__cart {
    flex: 1;
    width: auto;
  }
}
.p-product-form-btn__favorite {
  width: 50px;
}
.p-product-form-btn__favorite-btn {
  display: inline-block;
  margin-top: 22px;
  margin-left: 22px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #d8d8d8;
  cursor: pointer;
  text-align: center;
  transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.p-product-form-btn__favorite-btn.is-added {
  color: #000000;
}
.p-product-form-btn__favorite-btn svg {
  width: 25px;
  height: 25px;
  fill: currentColor;
}
.p-product-form__error-message {
  color: #DB5656;
  margin-top: 15px;
}
/* SNS */
.p-product-sns-list {
  margin-top: 20px;
  display: flex;
  flex-wrap: wrap;
}
.p-product-sns-list__item {
  margin-right: 20px;
}
/* link */
.p-product-link-list {
  margin-top: 40px;
}
.p-product-link-list__item {
  margin-bottom: 5px;
}
@media screen and (max-width: 767px) {
  .p-product-link-list__item {
    margin-bottom: 10px;
  }
}
/***** 商品詳細 *****/
.p-product__ttl {
  margin-top: 0;
  margin-bottom: 35px;
  line-height: 1.4;
  font-size: 21px;
  font-weight: bold;
  letter-spacing: 0.3em;
}
@media screen and (max-width: 767px) {
  .p-product__ttl {
    margin-bottom: 30px;
    font-size: 18px;
  }
}
.p-product-detail {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 75px;
}
@media screen and (max-width: 1030px) {
  .p-product-detail {
    display: block;
  }
}
.p-product-explain {
  width: 410px;
}
@media screen and (max-width: 1030px) {
  .p-product-explain {
    margin-bottom: 60px;
    width: auto;
  }
}
.p-product-explain__body {
  line-height: 2;
}
.p-product-other {
  width: 530px;
  order: -1;
}
@media screen and (max-width: 1030px) {
  .p-product-other {
    width: auto;
  }
}
/* おすすめ商品 */
.p-product-recommend-list {
  display: flex;
  flex-wrap: wrap;
  margin-left: -20px;
  margin-right: -20px;
  margin-bottom: 90px;
}
@media screen and (max-width: 767px) {
  .p-product-recommend-list {
    margin-left: -5px;
    margin-right: -5px;
    margin-bottom: 60px;
  }
}
.p-product-recommend-list__item {
  box-sizing: border-box;
  padding-left: 20px;
  padding-right: 20px;
  width: 33.3333%;
  word-break: break-all;
}
@media screen and (max-width: 767px) {
  .p-product-recommend-list__item {
    padding-left: 5px;
    padding-right: 5px;
  }
}
.p-product-recommend-list__img {
  margin-bottom: 30px;
  position: relative;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-product-recommend-list__img {
    margin-bottom: 5px;
    text-align: center;
  }
}
.p-product-recommend-list__img:before {
  content: "";
  display: block;
  padding-top: 100%;
}
.p-product-recommend-list__img a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.p-product-recommend-list__img img {
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: auto !important;
  max-width: 100%;
  max-height: 100%;
  text-align: center;
}
.p-product-recommend-list__price {
  margin-top: 15px;
  font-size: 12px;
  color: #909090;
}
@media screen and (max-width: 767px) {
  .p-product-recommend-list__price {
    margin-top: 0;
  }
}
.p-product-recommend-list__price.is-strikethrough {
  margin-top: 0;
  text-decoration: line-through;
}
.p-product-recommend-list__expl {
  margin-top: 15px;
  font-size: 12px;
}
/* レビュー */
.p-product-review {
  margin-bottom: 60px;
}
.p-product-review__item {
  box-sizing: border-box;
  margin-bottom: 30px;
  padding: 40px;
  background: #f8f8f8;
}
@media screen and (max-width: 767px) {
  .p-product-review__item {
    padding: 20px;
  }
}
.p-product-review__heading {
  margin-bottom: 15px;
}
.p-product-review__ttl {
  margin-top: 10px;
  margin-bottom: 10px;
  line-height: 1.4;
  font-size: 18px;
}
.p-product-review-info {
  margin-top: 10px;
  margin-bottom: 10px;
}
.p-product-review-info__item {
  display: inline-block;
  font-size: 12px;
}
.p-product-review-info__item.is-type {
  margin-right: 35px;
}
.p-product-review__img {
  margin-bottom: 15px;
  text-align: center;
}
.p-product-review__body {
  margin-top: 15px;
  line-height: 2;
}
.p-product-review__rates {
  display: flex;
  flex-wrap: wrap;
}
.p-product-review__rate {
  width: 18px;
  height: 18px;
  vertical-align: -0.3em;
  fill: currentColor;
  fill: #d8d8d8;
}
.p-product-review__rate.is-color {
  fill: #000000;
}
/* レビュー 返信 */
.p-product-review-reply {
  box-sizing: border-box;
  margin-top: 30px;
  padding: 15px 0;
  border-top: 1px solid #aaaaaa;
  border-bottom: 1px solid #aaaaaa;
}
.p-product-review-reply__ttl {
  font-weight: bold;
}
.p-product-review-reply__body {
  font-size: 12px;
}
.p-product-review-reply__date {
  font-size: 12px;
}
.p-product-review__btn {
  margin-top: 45px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-product-review__btn {
    margin-top: 30px;
  }
}
.input-prepend.input-append input {
  font-size: 24px;
  padding-top: 11px;
  padding-bottom: 11px;
  width: 100px;
  text-align: right;
}

/* =================================================================
商品詳細共通
=================================================================*/
.u-container {width: 1200px;}
.l-contents-main {width: 940px;}
.p-product-info {width: 390px;}

.item-detail_title {font-size: 34px; font-weight: normal; letter-spacing: 0.2em; margin: 0 0 43px;}

.title-wrap h2.cmn-title {margin: 0;}

@media screen and (max-width: 1199px) {
  .p-product .inner {padding: 0;}
  .p-product .title-wrap {padding: 0;}
  .u-container {width: 100%;}
  .l-contents-main {width: 100%;}
  .p-product-info {width: 100%;}
  .p-product-img {margin-left: 0; margin-right: 0;}

  .item-detail_title {font-size: 24px; margin-bottom: 25px; line-height: 1;}
}

/* =================================================================
ボタン
=================================================================*/
.contact-button a {width: 100%; box-sizing: border-box; display: inline-block; padding: 25px; font-size: 14px; font-weight: bold; background: #2c7258; color: #fff; text-align: center; transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);}
.contact-button a:hover {text-decoration: none;}

.button {min-width: 133px; max-width: 225px; height: 51px; display: flex; flex-direction: column; transition: .3s; margin: 55px auto 0;}
.button:before {transition: .3s; content: ""; height: 2px; background: url('https://file003.shop-pro.jp/PA01496/281/images/common/button_line_bg.png'); display: block; flex-shrink: 0;}
.button:after {transition: .3s; content: ""; height: 2px; background: url('https://file003.shop-pro.jp/PA01496/281/images/common/button_line_bg.png'); display: block; flex-shrink: 0;}
.button a {position: relative; display: flex; max-width: 225px; justify-content: center; align-items: center; font-size: 18px; height: 51px;}
.button a:after {transition: .3s; content: ""; display: block; width: 32px; height: 13px; background-image: url('https://file003.shop-pro.jp/PA01496/281/images/common/button_arrow.png'); margin-left: 10px; position: absolute; right: 0;}

.button:hover {transition: .3s; opacity: 1;}
.button:hover:before {transition: .3s; content: ""; height: 2px; background: url('https://file003.shop-pro.jp/PA01496/281/images/common/button_line_bg_hover.png'); display: block;}
.button:hover:after {transition: .3s; content: ""; height: 2px; background: url('https://file003.shop-pro.jp/PA01496/281/images/common/button_line_bg_hover.png'); display: block;}
.button a:hover {color: #f15652;}
.button:hover a:after {transition: .3s;content: ""; display: block; width: 32px; height: 13px; background-image: url('https://file003.shop-pro.jp/PA01496/281/images/common/button_arrow_hover.png'); margin-left: 10px;}

@media screen and (max-width: 1199px) {
  .button {max-width: 335px; height: 61px; margin: 35px auto 0;}
  .button a {height: 61px; max-width: 335px; justify-content: center; position: relative; font-size: 15px;}
  .button a:after {position: absolute; right: 0;}
}

/* =================================================================
商品説明
=================================================================*/
.p-product-explain {padding-bottom: 90px;}
.p-product-explain table th {font-weight: normal; font-size: 17px; text-align: left;}
.p-product-explain table td {font-weight: normal; font-size: 17px;}
.p-product-explain .hosoku {font-size: 14px;}
.p-product-explain .box + .box {margin-top: 86px;}
.p-product-explain h4 {font-size: 24px; font-weight: normal; letter-spacing: 0.2em; margin: 0 0 34px;}
.p-product-explain .color {display: flex; align-items: center; margin-bottom: 48px;}
.p-product-explain .color li + li {margin-left: 10px;}
.p-product-explain .color li img {display: block;}

@media screen and (max-width: 1199px) {
  .p-product-explain {padding-bottom: 60px; margin-bottom: 0;}
  .p-product-explain table th {font-size: 14px;}
  .p-product-explain table td {font-size: 14px;}
  .p-product-explain h4 {font-size: 14px;}
  .p-product-explain .box + .box {margin-top: 40px;}
  .p-product-explain .box p {font-size: 14px;}
}

/* =================================================================
レビュー
=================================================================*/
.p-product-other {width: 100%;}
.p-product-review__item {background: #ffefef;}
.p-product-review__heading {margin-bottom: 0;}
.heading-box {display: flex; align-items: center;}
.heading-box .p-product-review__ttl {margin: 0 0 0 1em;}
.p-product-review-info {margin: 0;}
.p-product-review-info__item {font-size: 17px;}
.p-product-review__body {margin-top: 0; font-size: 17px; line-height: 1.6;}

@media screen and (max-width: 1199px) {
  .p-product-review__ttl {font-size: 14px;}
  .p-product-review-info__item {font-size: 14px;}
  .p-product-review__body {font-size: 14px;}
}

/* =================================================================
まとめ買い
=================================================================*/
.p-product-recommend-list.pc {margin: 0 0 90px; display: flex !important;}
.p-product-recommend-list__img {border-radius: 20px; overflow: hidden; margin-bottom: 20px;}
.p-product-recommend-list__item {width: 180px; padding-left: 0; padding-right: 20px; box-sizing: content-box;}
.p-product-recommend-list__ttl {font-size: 17px;}
.p-product-recommend-list__price {font-size: 17px; margin-top: 0; color: #383838;}

@media screen and (max-width: 1199px) {
  .p-product-recommend-list.pc {display: none !important;}
  .p-product-recommend-list {margin-right: -13px; margin-left: 0;}
  .p-product-recommend-list__item {width: 160px; padding-right: 13px;}

  .p-product-recommend-list__item {width: 160px; padding-right: 13px;}
  .p-product-recommend-list__item:nth-child(4n) {padding-right: 13px;}
  .p-product-recommend-list__item:nth-child(n + 5) {margin-top: 0px; display: block;}
  .p-product-recommend-list__img {margin-bottom: 30px; border-radius: 10px; overflow: hidden;}
  .p-product-recommend-list__img img {width: 100%; height: auto; display: block;}
  .p-product-recommend-list__ttl {font-weight: 500; font-size: 14px;}

  .p-product-recommend-list .slick-prev,
  .p-product-recommend-list .slick-next {width: 17px !important; height: 28px !important; z-index: 10 !important; top: 26% !important;}
  .p-product-recommend-list .slick-prev:before,
  .p-product-recommend-list .slick-next:before {content: "" !important; width: 17px !important; height: 28px !important; display: block !important; background-size: cover;}
  .p-product-recommend-list .slick-next:before {background-image: url('https://file003.shop-pro.jp/PA01496/281/images/common/icon-next.png');}
  .p-product-recommend-list .slick-prev:before {background-image: url('https://file003.shop-pro.jp/PA01496/281/images/common/icon-prev.png');}

  .p-product-recommend-list .slick-next {right: 13px !important;}
  .p-product-recommend-list .slick-prev {left: 0px !important;}

}

/* =================================================================
最近チェックした商品
=================================================================*/
.chaked-item {padding-bottom: 150px; margin-top: 170px;}
.chaked-item ul {display: flex; justify-content: flex-start;}
.chaked-item li {width: 180px; font-size: 17px;}
.chaked-item li + li {margin-left: 23px;}
.chaked-item img {display: block;}
.chaked-item .image {border-radius: 20px; margin-bottom: 20px; overflow: hidden;}

@media screen and (max-width: 1199px) {
  .chaked-item {padding-bottom: 83px;}
  .chaked-item .title-wrap {padding-right: 0;}
  .chaked-item .title-wrap .cmn-title {letter-spacing: 0; }
  .chaked-item .title-wrap .cmn-title img {margin-left: 0px; height: 10px;}
  .chaked-item ul {width: 335px; flex-wrap: wrap; margin: 0 auto;}
  .chaked-item li {width: 60px; font-size: 14px;}
  .chaked-item li + li {margin-left: 7px;}
  .chaked-item li:nth-child(n + 6) {display: none;}
  .chaked-item li .name {display: none;}
  .chaked-item li .image {border-radius: 10px; margin-bottom: 10px;}
}


/* =================================================================
おすすめ商品等
=================================================================*/
.new-arrival {margin-top: 60px;}
.ranking {margin-top: 60px;}

.item-list-pc {display: flex; justify-content: flex-start;}
.item-list-pc .box {width: 220px; font-size: 17px; padding-right: 20px;}
.item-list-pc .box:nth-child(n + 5) {display: none;}
.item-list-pc img {width: 100%; height: auto; display: block;}
.item-list-pc h3 {font-weight: 500; font-size: 17px; margin: 0;}
.item-list-pc p {font-size: 17px; margin: 0;}
.item-list-pc .image {border-radius: 20px; margin-bottom: 20px; overflow: hidden;}

@media screen and (max-width: 1399px) {
  .new-arrival {margin-top: 30px;}
  .ranking {margin-top: 30px;}

  .item-list-pc {display: none;}
  .item-list {display: block; margin-right: -13px;}
  .item-list .box {width: 160px; padding-right: 13px;}
  .item-list .box:nth-child(4n) {padding-right: 13px;}
  .item-list .box:nth-child(n + 5) {margin-top: 0px; display: block;}
  .item-list .image {margin-bottom: 30px; border-radius: 10px; overflow: hidden;}
  .item-list img {width: 100%; height: auto; display: block;}
  .item-list h3 {font-weight: 500; font-size: 14px;}

  .item-list .slick-prev,
  .item-list .slick-next {width: 17px !important; height: 28px !important; z-index: 10 !important; top: 26% !important;}
  .item-list .slick-prev:before,
  .item-list .slick-next:before {content: "" !important; width: 17px !important; height: 28px !important; display: block !important; background-size: cover;}
  .item-list .slick-next:before {background-image: url('https://file003.shop-pro.jp/PA01496/281/images/common/icon-next.png');}
  .item-list .slick-prev:before {background-image: url('https://file003.shop-pro.jp/PA01496/281/images/common/icon-prev.png');}

  .item-list .slick-next {right: 13px !important;}
  .item-list .slick-prev {left: 0px !important;}

  .list-wrap {overflow: hidden;}
  .c-item-list__btn {right: 16px;}
}

.ranking .image {position: relative;}
.ranking .number {display: block; position: absolute; top: 10px; left: 10px; width: 50px; height: 50px; z-index: 1;}
.ranking .number:before {content: ""; display: block; width: 50px; height: 50px; background-size: cover;}
.ranking .item-list .box:nth-child(1) .number:before {background-image: url('https://file003.shop-pro.jp/PA01496/281/images/top/ranking_number01.png');}
.ranking .item-list .box:nth-child(2) .number:before {background-image: url('https://file003.shop-pro.jp/PA01496/281/images/top/ranking_number02.png');}
.ranking .item-list .box:nth-child(3) .number:before {background-image: url('https://file003.shop-pro.jp/PA01496/281/images/top/ranking_number03.png');}
.ranking .item-list .box:nth-child(4) .number:before {background-image: url('https://file003.shop-pro.jp/PA01496/281/images/top/ranking_number04.png');}

@media screen and (max-width: 1199px) {
  .ranking .number:before {width: 35px; height: 35px;}
}

.p-product-fav-item .favorite-button{
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 15px;
  position: relative;
  padding: 25px;
  border: none;
  border-radius: 0;
  width: 100%;
  font-size: 14px;
  font-weight: bold;
  background: #fff;
  color: #d8d8d8;
  text-align: center;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  border: 2px solid #7d7d7d;
}
.p-product-fav-item .favorite-button span {color: #262626;}

.p-product-fav-item svg {width: 20px; height: 20px; fill: currentColor; margin-right: 17px;}
.p-product-fav-item .favorite-button.fav-items {color: #f15652; border-color: #f15652;}   
.p-product-fav-item .favorite-button.fav-items span {color: #f15652;}

/******************************/
/* カラー違い商品 */
/******************************/
.product_type_list_title{
  font-weight: bold;
}
.product_type_list{
  width: 100%;
  overflow: auto;
}
.product_type_list .product_each{
  display: block;
  float: left;
  width: 75px;
  margin-left: 15px;
  margin-bottom: 10px;
}
@media screen and (min-width: 768px){
  .product_type_list .product_each:nth-child(4n+1){
    clear: both;
    margin-left: 0;
  }
}

@media screen and (max-width: 767px){
  .product_type_list .product_each:nth-child(3n+1){
    clear: both;
    margin-left: 0;
  }
}
.product_type_list a.product_each:hover{
  opacity: 80%;
  text-decoration: none;
}
.product_type_list .product_each img{
  width: 75px;
  height: 75px;
  border-radius:50%;
  margin-bottom: 5px;
}
.product_type_list div.product_each img{
  width: 72px;
  height: 72px;
  border: 3px solid #4F4F4F;
}
.product_type_list .product_each .title{
  text-align: center;
  font-weight: bold;
  line-height: 140%;
}

h3.other_size_product_title{
  margin-bottom: 10px;
}
.other_size_product, .original_size_product{
  border: 4px solid #E5E3DF;
  padding: 20px 15px 20px 15px;
  background-color: #FFF;
}
.other_size_product_each{
  border-top: 1px solid #E5E3DF;
  padding-bottom: 10px;
  padding-top: 10px;
}
.other_size_product_each:first-of-type{
  border-top: none;
  padding-top: 0px;
}
.other_size_product_each:last-of-type{
  padding-bottom: 0px;
}
.other_size_product_each .other_size_product_each_title a{
  text-decoration: underline;
}
.other_size_product_each .other_size_product_each_info{
  margin-top: 5px;
}
.other_size_product_each .other_size_product_each_info .other_size_product_each_info_label{
  margin-right: 10px;
}
.other_size_product_each .other_size_product_each_info .other_size_product_each_info_price{
  color: #FF6666;
  font-weight: bold;
  margin-right: 3px;
  font-size: 15px;
}
.other_size_product_each .other_size_product_each_info .other_size_product_each_info_tax{
  font-size: 12px;
}

/*240423追加*/
.banner {
  margin: 0 auto;
  max-width: 400px;
  padding: 10px 0 0 0;
}
/*240423追加*/

.p-product-group{
	margin-top: 20px;
}
.p-product-group .group{
	display: flex;
	justify-content: space-around;
	align-items: center;
}
.p-product-group .group .label{
	border: 1px solid #424242;
	padding: 5px 7px 3px 7px;
  text-align: center;
	width: 80px;
	margin-right: 20px;
	margin-top: 10px;
	line-height: 140%;
	font-weight: bold;
}
.p-product-group .group .label.vacant{
	border: 0;
	margin-top: 0;
}
.p-product-group .group .value{
	width: calc(100% - 80px - 20px);
	margin-top: 10px;
}
.p-product-group .group .value a{
	text-decoration: underline;
}
.p-product-group .group .value a:hover{
	text-decoration: none;
}

.p-product-sall-off-percent{
  background-color: #FBE1E1;
  font-size: 18px;
  color: #F15652;
  text-align: center;
  padding: 3px 0 0 0;
  border-radius: 999px;
  margin-bottom: 5px;
}