/*商品名*/
.subpage-block {
 background-color: #FFF9E7;
  padding: 80px 100px 80px 30px;
  margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
  .subpage-block {
  padding: 40px 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
  .subpage-block {
  padding: 50px 50px 50px 20px;
  }
}


.subpage-block h1 {
 font-size: 2.8rem;
}
@media screen and (max-width: 767px) {
 .subpage-block h1 {
 font-size: 1.8rem;
 }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
.subpage-block h1 {
 font-size: 2.3rem;
 }
}


/*上部レイアウト*/
.product-top {
  display: flex;
  justify-content: space-between;
  margin-top: 30px;
 }
 @media screen and (max-width: 1024px) { 
 .product-top {
  margin-top: 30px;
  flex-direction: column;
  }
 }
 
 .p-product-img {
   width: 55%;
 }
 
 @media screen and (max-width: 1024px) {
   .p-product-img {
     margin-left: auto;
     margin-right: auto;
     width: 100%;
   }
 }
  
 .p-product-img__main {
   text-align: center;
   width: 100%;
 }
 
 @media screen and (max-width: 767px) {
   .p-product-img__main {
     margin-left: auto;
     margin-right: 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%;
 }

.slick-slide {
 max-height: 550px;
}

 .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;
   margin-top: 0;
   width: auto !important;
   max-width: 100%;
   max-height: 450px;
   text-align: center;
 }
@media screen and (min-width: 768px) and (max-width: 1024px) {
 .p-product-img__main-item img {
 }
}

 .p-product-thumb-list {
   display: flex;
   flex-wrap: wrap;
   margin-left: -4px;
   margin-right: -4px;
   margin-top: -80px;
 }
 @media screen and (max-width: 767px) {
   .p-product-thumb-list {
     margin-left: 0;
     margin-right: 0;
     margin-top: 15px;
     flex-wrap: nowrap;
   }
 }
@media screen and (min-width: 768px) and (max-width: 1024px) {
 .p-product-thumb-list {
   margin-top: -60px;
 }
}

 .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: 1024px) {
   .p-product-thumb-list__item {
     margin-right: 5px;
     padding-left: 0;
     padding-right: 0;
     width: 100px;
   }
 }
 @media screen and (max-width: 767px) {
   .p-product-thumb-list__item {
     margin-right: 5px;
     width: 100px;
   }
 }
 .p-product-thumb-list__item:hover, .p-product-thumb-list__item.is-current {
   opacity: 0.7;
   cursor: pointer;
 }
 @media screen and (max-width: 1024px) {
   .p-product-thumb-list__item img {
     width: 100%;
   }
 }
 @media screen and (max-width: 767px) {
   .p-product-thumb-list__item img {
     width: 100%;
   }
 }
 .p-product-thumb-list__img {
   /* overflow用 */
   position: relative;
   text-align: center;
 }
 @media screen and (max-width: 1024px) {
   .p-product-thumb-list__img {
     width: 100%;
   }
 }
 @media screen and (max-width: 767px) {
   .p-product-thumb-list__img {
     width: 100%;
     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: 42%;
   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: 35px;
   }
 }
 .p-product-img__main .slick-prev {
   left: 15px;
 }
 @media screen and (max-width: 767px) {
   .p-product-img__main .slick-prev {
     left: -10px;
   }
 }
 .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: -10px;
   }
 }
 .p-product-img__main .slick-next:before {
   left: 4px;
   transform: rotate(135deg);
   top: 5px;
 }
 @media screen and (max-width: 767px) {
   .p-product-img__main .slick-next:before {
     left: 13px;
     top: 31px;
   }
 }
@media screen and (min-width: 768px) and (max-width: 1024px) {
   .p-product-img__main .slick-next:before {
     top: 3px;
   }
 }
 
 /*商品情報*/
 .product-info {
  width: 42%;
 }
 @media screen and (max-width: 1024px) {
  .product-info {
   margin-top: 20px;
  width: 100%;
 　}
 }

 /*商品番号*/
 .p-product-info__id {
  
 }
 
 /*商品価格*/
 .p-product-price__sell {
  font-size: 1.5rem;
   font-weight: bold;
   margin-top: 20px;
 }
 @media screen and (max-width: 1024px) {
 .p-product-price__sell, .p-product-price__list-price {
  text-align: center;
  }
 }

/*この商品のレビューを見る*/
.review-link {
display: inline-block;
margin: 20px 0;
}
 @media screen and (max-width: 1024px) {
.review-link {
 display: block;
  text-align: center;
 margin: 10px 0 20px 0;
}
 }
 
 /*在庫*/
 .p-product-form-stock__stock {
  font-size: 1.4rem;
   margin-bottom: 30px;
 }
 
 .p-product-form-stock__stock span {
  color: #FF2727;
 }
 
 .option-title {
  font-size: 1.4rem;
 }

 /*購入オプション*/
/* オプション 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-bottom: 20px;
}
.p-product-option-select__box {
 margin-top: 15px;
 display: flex;
 align-items: center;
}
.p-product-option-select__ttl {
 margin-bottom: 5px;
 font-weight: 500;
 margin-right: 10px;
}

.product_cart_select {
height: 40px;
 width: 75%;
 border: 1px solid #333;
 margin-left: 10px;
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
 .product_cart_select {
  width: 45%;
 }
}
 
 /*購入フォーム　数量*/
 .product-init-list {
  display: flex;
   align-items: center;
 }
 @media screen and (max-width: 1024px) {
 .product-init-list {
   justify-content: center;
   }
 }
 
 .product-init-list__name {
   font-weight: 500;
   margin-right: 10px;
 }
 
 .product-init-list__detail {
  display: flex;
   align-items: center;
 }
 .product-init-list__detail input {
  height: 40px;
   width: 100px;
   border: 1px solid #ddd;
 }
 
 .product-init-list__detail-updw {
  margin-left: 5px;
   margin-top: 5px;
   margin-bottom: 0;
 }
 
 /*カートに入れるボタン*/
 .p-product-form-btn {
  text-align: center;
 }
 
 .p-product-form-btn__cart {
  width: 100%;
   margin: 0 auto;
 }
@media screen and (max-width: 767px) {
 .p-product-form-btn__cart {
  width: 90%;
 }
}
 

@media screen and (max-width: 767px) {
 .disable_cartin {

   }
}
 
 @media screen and (min-width: 768px) and (max-width: 1024px) {
   .disable_cartin {
    width: 100%;
   }
 .p-product-form-btn__cart {
  width: 100%;
  margin: 0 auto;
  }
 }
 
 .c-btn-cart {
  padding: 15px 60px;
   background: #C93564;
   display: flex;
   align-items: center;
 }
.c-btn-cart:hover {
opacity: .6;
}
 @media screen and (max-width: 767px) {
 .c-btn-cart {

  }
 }
 @media screen and (min-width: 768px) and (max-width: 1024px) {
 .c-btn-cart {
   justify-content: center;
  padding: 12px　60px;
   margin: 0 auto;
  }
 }

.c-btn-cart img {
 width: 35px;
 height: 35px;
 margin-right: 20px;
  
}
 
.cart-in {
   color: #fdfdfd;
   font-weight: bold;
   font-size: 1.2rem;
   margin-bottom: 0;
 }
 
 
 /*購入欄各リンク*/
.p-product-link-list {
margin: 12px 0;
}

.p-product-link-list__item {
margin: 5px 0;
}

.p-product-link-list__item a {
font-size: .9rem;
}
 
 /*SNS*/
.sns-share {
  margin: 30px 0;
  display: inline-block;
}
@media screen and (max-width: 1024px) {
.sns-share {
  display: block;
  text-align: center;
 }
}

.sns-share p {
 font-weight: 500;
 font-size: 1.2rem;
}
 .p-product-sns-list {
   margin-top: 10px;
   margin-left: 18px;
  display: flex;
  gap: 10px;
 }
@media screen and (max-width: 1024px) {
 .p-product-sns-list {
   justify-content: center;
   margin-left: 0;
 }
}
 
 .p-product-sns-list li {
   width: 10%;
 }
@media screen and (max-width: 767px) {
 .p-product-sns-list li {
   width:15%;
 }
}

@media screen and (min-width: 768px) and (max-width: 1024px) {
 .p-product-sns-list li { 
   width: 7%;
  }
 }

.p-product-sns-list li:nth-child(2) {

}

 
 /*商品説明*/
.product-explain {
 margin: 50px 0;
}
 .product-order-exp p {
  padding-left: 15px;
   font-size: 1rem;
 }

 /*レビュー*/
 .p-product-review {
   margin-bottom: 60px;
 }

 .product-related-list,.product-review p {
  padding-left: 15px;
 }

 .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;
 }
.icon_star {
  float: left;
  width: 75px;
  overflow: hidden;
  margin-top: 6px;
  margin-right: 10px;
}
@media screen and (max-width: 1030px) {
  .icon_star {
  margin-top: 4px;
  }
}
.icon_star img {
  max-width: inherit;
}
 .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;
 }

@media screen and (max-width: 768px) {
  .c-btn {
    display: inline-block;
    box-sizing: border-box;
    position: relative;
    padding: 12px 20px;
    min-width: 200px;
    font-size: 20px;
  }
  .c-btn:before, .c-btn:after {
    top: 50%;
    right: 10px;
    width: 14px;
　}
}

 /* レビュー 返信 */
 .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;
 }