/******************************/
/* Product */
/******************************/
.p-product {
  margin-bottom: 90px;
}
/* form */
.p-product select {
  box-sizing: border-box;
  padding: 5px;
  height: 40px;
  border: 1px solid #bfbfbf;
  font-size:1.6rem;
}
.p-product input[type=text] {
  box-sizing: border-box;
  padding: 5px;
  height: 40px;
  border: 1px solid #bfbfbf;
  font-size:1.6rem;
}
.p-product-main {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.p-product-img__main {text-align: center;}
.p-product-img__main-item {
  position: relative;
  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;
}
.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);
}
.p-product-thumb-list__item:hover, .p-product-thumb-list__item.is-current {
  opacity: 0.7;
  cursor: pointer;
}
.p-product-thumb-list__img {
  position: relative;
  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:60px;
  transition: all 0.4s ease;
  z-index: 1;
}
.p-product-img__main .slick-prev:before, .p-product-img__main .slick-next:before {
  content:"";
  display:block;
  width:100%;
  height:100%;
  position: absolute;
  top:0;
  left:0;
  transition: all 0.4s ease;
  z-index: 1;
}
.p-product-img__main .slick-prev{
  left: 15px;
  background:url(https://file003.shop-pro.jp/PA01427/310/img/product/product-prev.svg) no-repeat center center/contain!important;
}
.p-product-img__main .slick-next {
  right: 15px;
  background:url(https://file003.shop-pro.jp/PA01427/310/img/product/product-next.svg) no-repeat center center/contain!important;
}
.p-product-img__main .slick-prev:hover,
.p-product-img__main .slick-next:hover{opacity:0.5;}

/***** 商品情報 *****/
.p-product-info__ttl{
  margin: 0;
  font-size:3.2rem;
  font-weight:bold;
}
.p-product-info__ttl img {vertical-align: middle;}
.p-product-info__id {margin: 0;}
.p-product-price{
  position:relative;
  margin-top: 20px;
  margin-bottom: 20px;
}
.p-product-price__sell{font-size:2.4rem;}
.p-product-price__sell small{
  margin-left:10px;
  font-size:1.3rem;
}
.p-product-price__sell .p-product-price__discount_rate{
  display: inline-block;
  padding: 2px 10px;
  margin-left:8px;
  background-color:#a67465;
  border-radius:4px;
  vertical-align:4px;
  font-size: 1.3rem;
  font-weight:bold;
  color:#fff;
}
.p-product-price__normal,
.p-product-price__list-price {font-size:1.4rem;}
.p-product-price__sell .p-product-price__sell__disp{
  display:block;
  font-size:1.5rem;
  color:#999;
  text-decoration:line-through;
}
.p-product-price__sell .p-product-price__sell__disp small{
  margin-left:7px;
  font-size;1.1rem;
}

/* オプション table */
.p-product-option-tbl{
  margin-top: 30px;
  margin-bottom: 30px;
  overflow-x: auto;
}
.p-product-option-tbl table{
  margin-bottom: 0;
  border:none!important;
  width: 100%;
  border-collapse: collapse;
}
.p-product-option-tbl table div {display: inline-block !important;}
.p-product-option-tbl th,
.p-product-option-tbl td{
  padding: 12px 5px;
  border-top: 1px solid #443833;
  border-bottom: 1px solid #443833;
  border-left: 0;
  text-align: center;
}
.p-product-option-tbl th{min-width: 100px;}
.p-product-option-tbl th:first-child{
  font-size:1.8rem;
  text-align:left;
}
.p-product-option-tbl td .stock_zero{
  display:inline-block;
/*  margin:6px auto 0;*/
  padding:0 10px;
  font-size:1.2rem;
  border:1px solid #473732;
}
.p-product-option-tbl label {
  display: inline-block !important;
  margin-left: 5px;
  margin-bottom: 0;
}
.p-product-option-tbl input {margin-top: 0;}
.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{
  display: flex;
  align-items: center;
}
.p-product-form-stock {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.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,
.p-product-soldout-call-btn{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.p-product-soldout-call-btn{margin-left:7px;}
.p-product-form-btn__cart{
  width:auto;
  position:relative;
}
.p-product-form-btn .c-btn-cart,
.p-product-soldout-call-btn #soldOutCallBtn{
  width:202px;
  padding:18px;
  border:1px solid;
  font-size:1.5rem;
  line-height:1;
  text-decoration:none;
}
.p-product-form-btn .c-btn-cart{
  border-color:#c7afa2;
  background-color:#c7afa2;
  color:#473732;
}
.p-product-form-btn .c-btn-cart:hover{color:#a67465;}
.p-product-soldout-call-btn #soldOutCallBtn{
  border-color:#443833;
  background-color:#fff;
  color:#443833;
}
.p-product-soldout-call-btn #soldOutCallBtn:hover{
  background-color:#443833;
  color:#fff;
}
.p-product-form-btn .c-btn-cart svg,
.p-product-soldout-call-btn #soldOutCallBtn svg{
  display:inline-block;
  width:28px;
  margin-left:16px;
  vertical-align:middle;
}
.p-product-form-btn__favorite{
  position:absolute;
  top: calc(50% - 13px);
  right: 0;
}
.p-product-form-btn__favorite-btn{
  display: inline-block;
  padding: 0;
  border: 0;
  background: transparent;
  color: #c7afa2;
  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 svg{
  width:20px;
  height:20px;
}
button.p-product-form-btn__favorite-btn svg > *.heartFrame{fill:#c7afa2;}
button.p-product-form-btn__favorite-btn svg > *.heartIn{fill:transparent;}
.p-product-form-btn__favorite-btn.is-added{color:#473732;}
button.p-product-form-btn__favorite-btn.is-added svg > *.heartFrame,
button.p-product-form-btn__favorite-btn.is-added svg > *.heartIn{fill:#473732;}
.p-product-form__error-message{
  margin:0;
  position:absolute;
  top:calc(100% + 8px);
  left:0;
  font-size:12px;
}

/* 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:50px;}
.p-product-link-list__item{
  position:relative;
  margin-bottom:5px;
  padding-left:12px;
}
.p-product-link-list__item:before{
  content:"-";
  display:block;
  position:absolute;
  top:0;
  left:0;
  color:#8d8380;
}

/***** 商品詳細 *****/
.p-product__ttl{
  margin-top:0;
  margin-bottom:35px;
  line-height:1.0;
  font-size:1.5rem;
  font-weight: bold;
}
*+.p-product__ttl{margin-top:60px;}
.p-product__ttl > *{display:block;}
.p-product__ttl > *[data-font="en"]{
  color:#c0a79c;
  letter-spacing: 0.05rem;
}
.p-product__ttl > *.ttl-jp{
  margin-top:9px;
  letter-spacing: 0.1rem;
}
.p-product-detail{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  margin-top: 75px;
}
.p-product-explain__body{line-height: 2;}
.p-product-other{order: -1;}
/* おすすめ商品 */
.p-product-recommend-list{
  display: flex;
  flex-wrap:wrap;
  margin-bottom:90px;
}
.p-product-recommend-list__item{
  box-sizing:border-box;
  width:32.3076923%;
  word-break:break-all;
}
.p-product-recommend-list__item:not(:nth-child(3n)){margin-right:1.53846155%;}
.p-product-recommend-list__item:nth-child(n+4){margin-top:30px;}
.p-product-recommend-list__img {
  margin-bottom:18px;
  position: relative;
  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%;
  overflow:hidden;
}
.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:6px;
  font-size:1.2rem;
  color: #909090;
}
.p-product-recommend-list__price.is-strikethrough {
  margin-top: 0;
  text-decoration: line-through;
}
.p-product-recommend-list__expl {
  margin-top: 15px;
  font-size:1.2rem;
}
/* レビュー */
.p-product-review {margin-bottom: 60px;}
.p-product-review__item {
  box-sizing: border-box;
  margin-bottom: 30px;
  padding: 40px;
  background: #f8f8f8;
}
.p-product-review__heading {
  margin-bottom: 15px;
}
.p-product-review__ttl{
  margin-top: 10px;
  margin-bottom: 10px;
  line-height: 1.4;
  font-size:1.8rem;
}
.p-product-review-info{
  margin-top: 10px;
  margin-bottom: 10px;
}
.p-product-review-info__item{
  display: inline-block;
  font-size:1.2rem;
}
.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{opacity:0.3;}
.p-product-review__rate > *{fill: #d8d8d8;}
.p-product-review__rate.is-color{opacity:1;}
.p-product-review__rate.is-color,
.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:1.2rem;}
.p-product-review-reply__date {font-size:1.2rem;}
.p-product-review__btn{
  margin-top: 45px;
  text-align:center;
}
.p-product-review__btn a{
  display:table;
  margin:0 auto;
  padding:8px 16px;
  border: 1px solid #473732;
  font-size:1.5rem;
  line-height:1.0;
}
.p-product-review__btn a:hover{
  background-color:#473732;
  text-decoration:none;
}
.p-product-review__btn a > *{
  display:table-cell;
  vertical-align:text-bottom;
}
.p-product-review__btn a span{padding-right:30px;}
.p-product-review__btn a svg{width:28px;}

/***** CSS編集内style *****/
.input-prepend.input-append input {
  font-size:2.4rem;
  padding-top: 11px;
  padding-bottom: 11px;
  width: 100px;
  text-align: right;
}
@media screen and (max-width: 1040px){
  .p-product-main {display: block;}
  .p-product-img{
    width: auto;
    margin-bottom: 45px;
  }
  .p-product-img__main{
    margin-left: auto;
    margin-right: auto;
    width: 530px;
  }
  .p-product-thumb-list{
    margin-left: 0;
    margin-right: 0;
    flex-wrap: nowrap;
  }
  .p-product-thumb-list__item{
    margin-right: 5px;
    padding-left: 0;
    padding-right: 0;
    width: 90px;
  }
  .p-product-thumb-list__item img{width: 90px;}
  .p-product-thumb-list__img{width: 90px;}
  .p-product-info{width: auto;}
  .p-product-form-btn__cart{
    flex: 1;
    width: auto;
  }
  .p-product-detail{display: block;}
  .p-product-explain {
    margin-bottom: 60px;
    width: auto;
  }
  .p-product-other{width: auto;}
}
@media screen and (max-width: 767px){
  .p-product-img {
    margin-left:-4vw;
    margin-right:-4vw;
    width:auto;
  }
  .p-product-img__main{width:auto;}
  .p-product-img__main-item{text-align: center;}
  .p-product-thumb-list__item{
    margin-right: 5px;
    width: 60px;
  }
  .p-product-thumb-list__item img{width: 60px;}
  .p-product-thumb-list__img {
    width: 60px;
    text-align: center;
  }
  .p-product-img__main .slick-prev, .p-product-img__main .slick-next {
    width:20px;
    height:40px;
  }
  .p-product-img__main .slick-prev:before, .p-product-img__main .slick-next:before{top: 15px;}
  .p-product-img__main .slick-prev{left:4vw;}
  .p-product-img__main .slick-next{right:4vw;}
  .p-product-info__ttl{font-size:2.1rem;}
  .p-product-info__id {
    margin-top: 5px;
    font-size:1.0rem;
  }
  .p-product-price__normal {font-size:1.2rem;}
  .p-product-price__list-price{font-size:1.2rem;}
  .p-product-form{flex-wrap:wrap;width:280px;}
  .p-product-form .p-product-soldout-call-btn{margin-top:40px;}
  .p-product-form-btn__favorite{
    display:inline-block;
    width:auto;
  }
  .p-product-form-btn__favorite dt{display:none;}
  .p-product-link-list__item{margin-bottom:16px;}
  .p-product__ttl{
    margin-bottom:30px;
    font-size:1.8rem;
  }
  .p-product-recommend-list{margin-bottom: 60px;}
  .p-product-recommend-list__img {
    margin-bottom: 5px;
    text-align: center;
  }
  .p-product-recommend-list__price {margin-top: 0;}
  .p-product-review__item {padding: 20px;}
  .p-product-review__btn {margin-top: 30px;}
}
@media screen and (min-width:768px){
   .p-product-form-btn__favorite{
    display:table;
    width:112px;
  }
  .p-product-form-btn__favorite > *{
    display:table-cell;
    vertical-align:middle;
  }
  .p-product-form-btn__favorite > *{
    display:table-cell;
    vertical-align:middle;
  }
  .p-product-form-btn__favorite dt{
    line-height:1;
    font-size:1.5rem;
  }
}
@media screen and (min-width:1040px){
 .p-product-img,.p-product-other{
    width:50%;
    width:520px;
  }
  .p-product-info,.p-product-explain{
    width:46.15%;
    max-width:480px;
  }
}

/*再入荷通知*/
.Dialog-title-1heYY{font-size:1.6rem!important;}
.Dialog-formGroupLabel-41w84{width:100%!important;}
.Dialog-formGroupLabel-41w84,
.Dialog-cancelButton-1i96l,
.Dialog-submitButton-LN8ET{font-size:1.4rem!important;}
.Dialog-notificationText-3FOqx{font-size:1.3rem!important;}
