/* ************************************************
*  product_detail_page
* ************************************************ */

/* お気に入り */
button.detail__favBtn {
  font-size: 16px;
  border-radius: 5px;
  color: #000 !important;
  font-weight: bold;
  text-align: center;
  background-color: #fff;
  border: 1px solid #000;
  padding: 0 15px;
  line-height: 56px;
  height: 56px;
  text-decoration: none;
  margin: -20px 0 30px;
  width: 100%;
  display: -ms-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

button.detail__favBtn.is-added {
color: #000 !important;
border: 1px solid #f2f2f2;
background: #f2f2f2;
}

button.detail__favBtn:after {
content:"お気に入りに追加する";
}
button.detail__favBtn.is-added:after {
content:"お気に入りを解除する";
}

form[name="product_form"] {
  margin-bottom: 60px;
}
.wrapper_productDetail {
display: -ms-flex;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
    -ms-flex-pack: justify;
        justify-content: space-between;

}
.product_images{
  max-width: 65%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 65%;
          flex: 0 0 65%;
}
.product_detail_area{
max-width: calc(35% - 40px);
-webkit-box-flex: 0;
    -ms-flex: 0 0 calc(35% - 40px);
        flex: 0 0 calc(35% - 40px);
}
#itemName {
  font-size: 32px;
  font-weight: bold;
  line-height: 36px;
  margin-bottom: 20px;
}

#option_area1 {
  margin-bottom:15px;
  }

#option_area1 h3,
#option_area2 h3{
  margin-bottom:5px;
  font-size:18px;
}
#option_area2 {
  padding:10px;
  }
.op1{
  margin-bottom:10px;
  }
.op2{
  margin-bottom:10px;
  }
.op2_ttl {
  font-weight:bold;
  color:#666666;
  margin-bottom:5px;
  }
.stock_comment {
  font-size:12px;
  color:#dd0000;
  }
#option_table {
  line-height:1;
  }
#option_table table{
  border-top:1px solid #999;
  border-right:1px solid#999;
  width:100%;
  }
#option_table table th {
  text-align:left;
  background:#eeeeee;
  border-left:1px solid #999;
  border-bottom:1px solid #999;
  font-size:14px;
  font-weight:normal;
  width:30%;
  padding:5px;
  }
#option_table table td {
  text-align:right;
  color:#dd0000;
  background:#ffffff;
  border-bottom:1px solid #999;
  font-size:14px;
  font-weight:bold;
  width:70%;
  padding:5px;
  line-height:1.2;
  }
div#box_together .zoom__title {
  margin-bottom: 30px;
}

.price{
  font-size: 24px;
  font-weight: bold;
}


h2.product_name {
margin-bottom: 0.8em;
font-size: 18px;
}
h3.zoom__title{
font-size:14px;
font-weight:bold;
border-bottom:solid 1px #ddd;
}

.product_form{
margin: 0 0 62px;
}

.product_detail_area {
position: relative;
width: 100%;
}


.product_images div img {
  max-width: 100%;
  max-height: 100%;
  width: 100%;
  height: 100%;
  border: 1px solid #ddd;margin:auto;
  border-radius: 10px;
}
.product_images div p.detail {
margin-top: 10px;
line-height: 20px;
}

.add_cart {
clear: right;
float: right;
overflow: hidden;
width: 42%;
}

table.add_cart_table {
  margin-bottom: 10px;
  width: 100%;
  border-bottom: solid 1px #ccc;
  table-layout:fixed;
}
table.add_cart_table th {
overflow: hidden;
padding: 5px 0 ;
width: 15%;
text-align: left;
font-size: 16px;
vertical-align: middle;
}
table.add_cart_table td {
/*  overflow: hidden;*/
padding: 5px 0;
width: 55%;
text-align: left;
vertical-align: middle;
}

#productNumWrap{
width: 30px;
}

/* オプション */
table.add_cart_table td input {
  padding: 11px 18px !important;
  width: 96px;
  height: auto !important;
  font-size: 16px;
  text-align: right;
  line-height: 1 !important;
  border: 1px solid #000;
  border-radius: 5px;
}
.optionSelect{
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.optionSelect span{
  display: inline-block;
  margin-right: 5px;
  font-size: 16px;
  font-weight: 700;
}
.optionSelect select {
  padding: 14px !important;
  min-width: 115px;
  font-size: 16px;
  border-radius: 5px;
  border: 1px solid #000;
}

.productNum__changeWrap {
  margin-left: 16px;
  display: flex;
  border: 1px solid #000;
  border-radius: 8px;
  background: #ddd;
}
.productNum__changeWrap a {
  display: block;
  margin: 5px 0;
}
.productNum__changeWrap_item {
  width: 50%;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
}
.productNum__changeWrap_item.is-up {
  border-radius: 0 8px 8px 0;
  border-left: 1px solid #000;
}
.productNum__changeWrap_item.is-down {
  border-radius: 8px 0 0 8px;
}
.productNum__changeWrap_item:hover {
  background: #efefef;
  cursor: pointer;
}
table#option_tbl {
margin-bottom: 20px;
width: calc(100% - 1px);
}
table#option_tbl th,
table#option_tbl td.none {
background: whiteSmoke;
}
table#option_tbl th,
table#option_tbl td {
padding: 10px;
border: 1px solid #ccc;
text-align: center;vertical-align: middle;
}
table#option_tbl th {
background: whiteSmoke;
}
table#option_tbl td div input {
margin-bottom: 5px;
}

ul.option_price {
margin: 0 0 20px 0;
}
ul.option_price li {
list-style-type: none;
padding: 8px 0;
}
.option_price li a {
  text-decoration: underline;
  text-align: center;
  display: flex;
  justify-content: center;
}
.option_box{
clear: both;
width: 100%;
overflow: hidden;
}

table td.pur_block{
margin: 0 5px 0 0;
width: auto;
white-space: normal;
}

.button_area input {
width: 100%;
}

.product_description {
clear: both;
margin-bottom: 20px;
padding-top:20px;
word-wrap: break-word;
font-size: 12px;
line-height: 22px;
}

.product_image_extra {
margin-bottom: 20px;
text-align: center;
}
.product_image_extra img.item {
margin-bottom: 20px;
}

.product_link_area {
  position: relative;
  margin: 48px 0 0;
  padding: 20px 0 0;
  border-bottom: #ccc solid 1px;
}
.product_link_area:before {
  content: '';
  width: 100vw;
  height: 1px;
  background: #ccc;
  position: absolute;
  top: 0;
  left: calc(-1*(100vw - 1200px) / 2);
}
.product_link_area div.twitter {
float: left;
width: 80px;
}
.product_link_area div.pinterest {
float: left;
margin-right: 30px;
}
.product_link_area div.fb-like {
float: left;
width: 100px;
}
.product_link_area ul.other_link {
  padding-top:20px;
  padding-bottom: 32px;
  display: flex;
}
.product_link_area ul.other_link li {
  margin-right: 25px;
  list-style: none;
  vertical-align: middle;
  line-height: 24px;
}
.product_link_area ul.other_link li i{
  vertical-align: middle;
}

.share{
margin: 15px 0 0;
list-style: none;
}
.share li{
display: inline-block;
float: left;
margin: 0 10px 10px 0;
max-width: 125px;
}
.calamel-link{
margin-top: 10px;
}

#tb_cap_tb{
margin-top: 20px;
}

.tb {
padding-top: 10px;
padding-bottom: 10px;
border-top: 1px solid #CCC;
}
#tb_stitle {
margin-bottom: 20px;
}

.tb_date, .tb_title, .tb_body, .tb_state {
margin-bottom: 5px;
}

#detail__productImage .slick-dots{
display: -ms-flex;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
    flex-wrap: wrap;
margin-left: -7px;
margin-right: -7px;
position: relative;
bottom: auto;
margin-top: 12px;
}
#detail__productImage .slick-dots li{
max-width: 16.666%;
-ms-flex: 0 0 16.666%;
-webkit-box-flex: 0;
        flex: 0 0 16.666%;
padding-left: 7px;
padding-right: 7px;
margin-bottom: 14px;
width: auto;
height: auto;
margin: 0;
margin-bottom: 10px;
}
#detail__productImage .slick-prev, #detail__productImage .slick-next {
  margin-top: -10px;
}
#detail__productImage .slick-dotted.slick-slider{
margin-bottom: 0;
}
#detail__productImage .slick-next:before, #detail__productImage .slick-prev:before{
content: none;
}
#detail__productImage .slick-next{
right: 15px;
}
#detail__productImage .slick-prev{
left: 15px;
}

#detail__productImage .slick-prev ,
#detail__productImage .slick-next {
  color: #fff;
  font-size: 24px;
  line-height: 1;
  z-index: 11;
}

.stockCell,.stockCell center{
text-align: left;
}

.product_detail_area .sold_out {
  text-align: center;
  background: #f2f2f2;
  font-size: 16px;
  border-radius: 5px;
  color: #1b1b1b !important;
  font-weight: bold;
  text-align: center;
  padding: 0 15px;
  line-height: 56px;
  height: 56px;
  text-decoration: none;
  margin: 0px 0 15px;
}
br.clear {
  clear: both;
}

.ranking,
#box_together,
#box_recommend{
margin-bottom:40px;
}

#detail__productImage .detailSlider{
opacity: 0;
}
#detail__productImage .detailSlider.slick-initialized{
opacity: 1;
}

.detailSlider img {
  width: auto;
}

#zoomer {
  cursor: pointer;
}

.slick-list.draggable {
  height: 100% !important;
}

.product_price {
  margin-top: 12px;
}
.product_price tr {
  display: block;
  margin: 10px 0;
  /* padding: 10px 0; */
}
.product_price tr th {
  text-align: left;
  min-width: 100px;
  font-weight: 400;
}
.product_payment_img {
  margin: 15px 0;
  padding: 20px 35px;
  display: flex;
  flex-direction: column-reverse;
}
.product_payment_img figcaption {
  margin-bottom: 14px;
  font-size: 12px;
  font-weight: 700;
}
.p_item_detail_desc .h2A {
  font-size: 32px;
  text-align: left;
}
button.detail__favBtn .material-icons {
  font-variation-settings:
  'FILL' 0,
  'wght' 400,
  'GRAD' 0,
  'opsz' 24
}
.p_item_detail_voice_body {
  display: flex;
  justify-content: space-between;
  width: 100%;
  overflow-x: scroll;
}
.reviewlist {
  width: calc(33.33% - 8px);
  border: 1px solid #000;
  border-radius: 10px;
  padding: 24px;
}
.icon_star {
  margin-bottom: 14px;
  width: 75px;
  overflow: hidden;
}
.icon_star img {
  width: 150px;
  max-width: 150px;
}
.review_ttl {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 14px;
}
.review_body {
  font-size: 16px;
  line-height: 1.4;
}
.review_poster {
  margin: 20px 0;
  list-style: none;
  line-height: 1.6;
}
.review_poster li {
  font-size: 14px;
}
.review_poster .review_poster1 {
  font-weight: 700;
}
.shopcomment_txt {
  font-size: 16px;
  padding: 16px;
  border-radius: 10px;
  background: #eee;
  margin-bottom: 16px;
}
.shopcomment_date {
  display: flex;
  flex-direction: column;
}
.shopcomment_date span {
  padding: 0 0 8px 0;
  font-weight: 700;
}
.p_ranking {
  position: relative;
  padding: 55px 0 0;
  z-index: 1;
}
.p_ranking:before {
  content: '';
  width: 100vw;
  height: 100%;
  top: 0;
  left: calc(-1*(100vw - 1200px) / 2);
  background: rgba(146, 175, 197, 0.2);
}
.item_detail_stock {
  padding: 0 0 0 20px;
}

.item_detail_contents {
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid #ddd;
  padding-bottom: 55px;
}
.item_detail_contents_left {
  width: calc(45% - 10px);
}
.item_detail_contents_left iframe,
.item_detail_contents_left img {
  width: 100%;
}
.item_detail_contents_right {
  width: calc(55% - 10px);
}
.item_detail_contents_index {
  font-weight: 700;
  font-size: 16px;
}
.item_detail_contents_ttl {
  font-size: 24px;
  font-weight: 700;
}
.item_detail_contents_desc {
  font-size: 16px;
}

