/* ************************************************
*  product_detail_page
* ************************************************ */
form[name="product_form"] {
    margin-bottom: 60px;
}
#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: 50%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
}
.product_detail_area{
  max-width: calc(50% - 40px);
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(50% - 40px);
          flex: 0 0 calc(50% - 40px);
}
#itemName {
    font-size: 24px;
    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: 18px;
  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: auto;
  height:auto;
  border: 1px solid #ddd;margin:auto;
}
.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-left: solid 1px #ccc; */
  table-layout:fixed;

}
table.add_cart_table th {
  overflow: hidden;
  padding: 5px 0 ;
  width: 28%;
  text-align: left;
  font-size: 12px;
  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: 5px 8px !important;
  border-radius: 5px;
  border: 1px solid #dfdfdf;
  font-size: 12px;
  line-height: 1 !important;
  height: auto !important;
  width: 30px;
}
.optionSelect{
  margin-bottom: 10px;
}
.optionSelect span{
  display: inline-block;
  margin-right: 5px;

}
.optionSelect select {
  padding: 5px 8px !important;
  border-radius: 5px;
  border: 1px solid #dfdfdf;
}

.productNum__changeWrap{

}

.productNum__changeWrap {
  width: 15px;
  margin-left: 5px;
}
.productNum__changeWrap a {
  display: block;
  margin: 5px 0;
}

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;
}

.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: 14px;
  line-height: 22px;
}

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

.product_link_area {
  margin: 20px 0 0;
  padding: 20px 0 0;
  border-top: #ccc solid 1px;
}
.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 {
  clear: both;
  padding-top:20px;
}
.product_link_area ul.other_link li {
  margin-bottom: 5px;
  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;
}
#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;
}

.searchForm {
  max-width: 500px;
  margin: 0 auto;
}
.searchForm.searchFormA .searchForm__inner {
  border: 1px solid #000000!important;
}

/* 関連商品設定 */
.related_title{
    margin:30px 0 20px;
    font-size:130%;
    font-weight: 500;
}
.related_area{
    padding-left:0;
    margin-bottom:15px;
}
.related_items{
    display:inline-block;
    list-style: none;
    width:31%;
    font-size:small;
    margin-right:1.5%;
    margin-bottom:25px;
  	vertical-align:top;
}
.related_items img{
    width:100%;
}
.related_name{
    margin-top:10px;
	line-height:normal;
}
.related_price{
    margin-top:5px;
    text-align:right;
    font-weight: bold;
    font-size:120%;
}

/* 名入れの設定 */
.itext{
  	border: 1px solid #ccc;
    padding: 5px;
    border-radius: 5px;
    margin-left: 5px;
  	margin-bottom:10px;
}

/* ギフト用設定 */
    .item__area{
        width:580px;
        font-size:16px;
        line-height:1.7;
    }
    .topic{
        background:#d9392d;
        text-align:center;
        padding:8px;
        color:#fff;
        font-size:17px;
        font-weight:bold;
        margin-bottom:10px;
    }
    .topic_sub{
        padding:15px;
        background-color: #eee;
        font-size:16px;
        line-height:1.7;
        margin-bottom:30px !important;
    }
    .detailed_info{
        width:580px;
        margin-bottom:40px;
    }
    .detailed_info th{
        text-align:left;
        padding-bottom:6px;
        font-size:16px;
    }
    .detailed_info td{
        padding:8px;
        font-size:14px;
        border:1px solid #eee;
		vertical-align:middle;
    }
    .detailed_info img{
        width:300px !important;
      border:0 !important;
    }
    .detailed_name{
        background:#eee;
        width:40%;
        border-bottom:1px solid #ddd !important;
    }
    .item__sammary{
        margin-bottom:30px;
    }
    .item_contents{
        font-size:20px;
        font-weight:bold;
        margin-bottom:20px;
    }
    .item_description{
        margin-bottom:30px;
        margin-top:10px;
    }
    .item_description img{
        width:100%;
    }
    .item__name{
        font-size:17px;
        font-weight:bold;
        margin-bottom:10px !important;
        margin-top:10px;
    }
    .each_item{
        color:#fff;
        padding:8px 10px 9px;
        background:#000;
        margin:15px auto 0;
        text-align:center;
        width:50%;
    }
	.annotation{
		font-size:14px;
		margin-bottom:30px;
		line-height:1.6;
	}

/* 商品詳細情報表示 */
    .itemdetailed_name{
        background:#eee;
        width:25%;
        padding:6px;
        font-size:14px;
        border-bottom:1px solid #ddd !important;
    }
    .nutrition_facts{
        width:350px;
        margin-bottom:30px;
   }
    .nutrition_facts th{
        text-align:left;
        padding-bottom:5px;
        font-size:16px;
    }
    .nutrition_facts td{
        padding:6px;
        font-size:14px;
        border:1px solid #eee;
    }

/* 共通バナー設定 */
.common_itembanner{
  margin-bottom:40px;
}
.common_itembanner img{
  width:580px;
}

/* レシピcss */
    .recipes{
        display:inline-block;
        list-style-type: none;
        padding-left:0;
        padding-right:0;
        vertical-align: top;
        width:23%;
        margin-right:1.5%;
        margin-bottom:10px;
    }
    .recipes img{
        width:100%;
    }
    .recipe_name{
        text-align:center;
        font-size:13px;
        font-weight:bold;
    }
    .recipe_summary{
        text-align:center;
        font-size:12px;
        line-height: 1.5;
    }