/* *************************************************
* Engraving Section
* ************************************************ */
.engraving_window {width: 80%; margin: 5% 10% 0; text-shadow: 1px 1px #000; font-weight:bold;}

.engraving_input {width: 90%; padding:4% 5%; margin: 5% 0; border-radius:5px; border: #ccc 1px solid; text-align:center;}

/* *************************************************
* Top Part
* ************************************************ */
.purchase_button {
background: -webkit-linear-gradient(to bottom, #00ff42, #00862b);
background: -moz-linear-gradient(to bottom, #00ff42, #00862b);
background: -o-linear-gradient(to bottom, #00ff42, #00862b);
background: -ms-linear-gradient(to bottom, #00ff42, #00862b);
background: linear-gradient(to bottom, #00ff42, #00862b);
border: #b3b3b3 0px solid;
border-radius: 2px;
box-shadow: 0px 5px 5px -5px #000;
height: 65px;
color: #fff;
font-size:  24px;
text-shadow: 1px 1px #000;
font-weight: bold;
cursor: pointer;
margin: 15px 0; 
-webkit-transform: scale(0.9);
-moz-transform: scale(0.9);
-o-transform: scale(0.9);
-ms-transform: scale(0.9);
transform: scale(0.9);
}

.purchase_button:active {
box-shadow: 0 0 0 0 #000;
background:rgba(80,80,80,0.8);
 -webkit-transform: scale(0.9);
-moz-transform: scale(0.9);
-o-transform: scale(0.9);
-ms-transform: scale(0.9);
transform: scale(0.9);
}

.purchase_section_text {
text-shadow: 1px 1px #000;
}

.pay_icon_purchase {
width: 90%; 
margin: 0 0 8px;
border-radius: 2px;
}

.rakuten_pay {
  width: 90%; 
  background-color:#fff; 
  border-radius:2px; 
  margin:20px 5%;
}

div.rakuten_pay img{
  width: 30%;
}

.btn-contact:hover {
  background-color:#0303ff;
}

.social_link {
width: 25%;
margin: 1% 0 0 7% !important;
}

.discount_space {
margin: 10px 22px 0;
}

.regprice_space {
margin: 0 24px; 
line-height: 35px;
}

.product_detail_area_top {
width: 890px;
padding: 50px 30px;
display: inline-block;
margin: auto;
}

.product_detail_area_top_frame {
   width: 950px;
    color: #fff;
    border: #757575 3px solid;
    text-align: center;
    border-radius: 5px;
    margin: 50px auto 10px;
    background: rgba(0,0,0,0.75);
}

/* *************************************************
* Drop Down MenuBar
* ************************************************ */
.Dselect {
    height:45px;
    width:100%;
    margin: 0;
    border: 1px solid #ccc;
    border-radius: 5px;
    background: #fff;
    color:#000;
    outline:none;
    display: inline-block;
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
    cursor:pointer;
    padding: 5px 5px 5px 10px;
}

/* Targetting Webkit browsers only. FF will show the dropdown arrow with so much padding. */
@media screen and (-webkit-min-device-pixel-ratio:0) {
    select {padding-right:18px}
}

.Dlabel {position:relative}
.Dlabel:after {
    content:'>';
    font:11px;
    color:#666;
    -webkit-transform:rotate(90deg);
    -moz-transform:rotate(90deg);
    -ms-transform:rotate(90deg);
    transform:rotate(90deg);
    right:15px; top:0px;
    padding:0 0 2px;
    
    position:absolute;
    pointer-events:none;
}
.Dlabel:before {
    content:'';
    width:0px; height:0px;
    background:#fff;
    position:absolute;
}
.Select_up {
    display: inline-block;
    color:#666;
    font-size:14px;
    margin: 0 25px 0px 4px;
  }

.Select_down {
    display: inline-block;
    color:#666;
    font-size:14px;
    margin: 0 25px 0px 4px;
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}

/* *************************************************
* Search Tag
* ************************************************ */

.ptag_dropdown {
    position: relative;
    display: inline-block;
    width:100%;
    max-width:960px;
}

.dropdown-content {
    display: none;
    position: absolute;
    background-color: #fff;
    border-top: 1px solid #ccc;
    padding: 15px;
    text-align:left;
}

.ptag_dropdown:hover .dropdown-content {
    display: block;
    margin-top:45px;
    z-index:2;
}

.search_icon{
width:15px;
float:left;
padding:15px 10px 15px 0px;
}

.ptag_dropdown_text {

float:left;
margin:12px;

}

/* *************************************************
* Product Description
* ************************************************ */

.sp_product_title {
  padding: 0;
  text-align: center;
  text-shadow: 0px 1px #ccc;
}

.visualdescbox {
   border-radius: 0px;
   height: 300px;
   margin: 0;
   padding: 30px;
}

.visualdescpic {
    display: inline-block;
    height: 300px;
    vertical-align: middle;
    width: 300px;
    padding: 0 30px;
}

.visualdescexp {
    display: inline-block;
    font-size: medium;
    vertical-align: middle;
    width: 470px;
}

.visualdescpic_img_style {
    
    width: 300px;
    height: 300px;

}

#writtendesc {
background: rgba(255,255,255,0.5);
}

.writtendesc_span_style {

font-size: medium;

}

.threecs_product_description {

width:960px;
margin:auto; 
padding: 0;

}

.threecs_product_description_text {

text-align:center;
font-size:20px;
font-weight: bold;

}

.threecs_product_title_background {
  
height: 40px; 
background-color:#1c1c1c;
}

.threecs_product_title_text {

color:#fff;
text-align:center;
font-size:24px;
padding:10px 0;

}

.visual_header_img {
  width: 960px;
  margin:auto;
  padding: 0 0 20px;
  border-radius: 5px;
}

.visual_header_img_review {
  width: 960px;
  margin:auto;
  padding: 0 0 20px;
}

/* *************************************************
* Product Review
* ************************************************ */
.reviewlist_datas {
  overflow: hidden;
  zoom: 1;
  margin: 25px 0 10px;
}
.icon_star {
  width: 100%;
  float: left;
  margin: 0 15px;
}
  
  .icon_star img{
  max-width: inherit;
  }
  
  .icon_start_text {
 float: left;
}

.icon_start_hide {
width: 75px;
overflow: hidden;
}

.review_poster_box {

  width: 100%;
  float: left;
  list-style: none;
  margin: 0 15px 15px; 
}


.reviewlist {
  padding-bottom: 15px;
  margin: 15px 0;
  background: rgba(255,255,255,1);
  border: #1c1c1c 1px solid;
  border-radius: 5px;
   font-size: calc(12px + 0.2vw);
}
.review_ttl,
.shopcomment_ttl {
  font-size: calc(12px + 0.2vw);
  font-weight: bold;
  margin-bottom: 10px;
}
.review_img {
  float: right;
  margin: 0 0 10px 10px
}
.reviewlist_content {
  overflow: hidden;
  zoom: 1;
  margin: 0 15px;
}
.shopcomment {
  margin-top: 10px;
  margin-bottom: 10px;
  background: #eee;
  padding: 15px;
  border-radius: 6px;
}
.product_review_box {
  width: 960px;
  position: relative;
  margin:auto;
}

.review_text {
  color:#fff;
  text-align:center
}

/* *************************************************
* Brand Link
* ************************************************ */

.product_desc_brand_link {
width: 100%; 
margin: 0px auto; 
display: inline-block; 
}

.product_desc_brand_link_title_text {
text-align:center; 
padding:10px; 
border-bottom:#999 1px solid; 
font-size:14px;
font-weight: bold;
background: rgba(255,255,255,1);
}

.product_desc_brand_link_item_box {
width:20%; 
padding: 20px 2.5%; 
float:left
}

.product_desc_brand_link_item_img {
 width:100%; 
 border:#999 1px solid;
 border-radius: 5px;
 -webkit-transition: all 0.3s ease;
 -moz-transition: all 0.3s ease;
 -o-transition: all 0.3s ease;
 -ms-transition: all 0.3s ease;
   transition: all 0.3s ease;
}

.product_desc_brand_link_item_img:hover {
border: #fff 1px solid;
box-shadow: 0 0 0 2px #1e31ff;
}

.product_desc_brand_link_item_name {
text-align:center; 
font-size: 12px;
padding: 10px 0 0;
color: #000;
}

.product_desc_brand_link_item_price {
font-size:14px;
text-align:center;
}

/*-------------------------------------------
Brand Accordion
-------------------------------------------*/

.bd-container {
    width: 100%;
}

.bd-container label {
    height: 30px !important;
    line-height: 21px !important;
    font-size: 14px !important;
    font-weight: bold;
    padding: 10px 20px 0;
    position: relative;
    display: block;
    cursor: pointer;
    text-align: right;
}
    
.bd-container {
    width: 100%;
    margin: 0 auto;
    text-align: left;
}

.bd-container input:checked + label, .bd_dropdown_arrow input:checked + label, .bd-container input:checked + label:hover {
    height: 30px;
    line-height: 21px;
    font-size: 13px;
    opacity:0;
}

.bd-container label:hover:after, .bd-container input:checked + label:hover:after {
    content:" '';
    position: absolute;
    width: 24px;
    height: 24px;
    right: 13px;
    top: 7px;
}


.bd-container input {
    display: none;
}

.bd-container article {
    margin-top: -1px;
    overflow: hidden;
    height: 0;
    position: relative;
    z-index: 10;
}

.bd-container input:checked ~ article.bd-box {
    height: 100% !important;
}

.bd_dropdown_arrow {
width:20px; 
float:right; 
margin: 0 10px 0;
}

.bd_dropdown_arrow_up {
-ms-transform:rotate(180deg);
-webkit-transform:rotate(180deg);
transform:rotate(180deg);
width:20px; 
float:right; 
margin: 0 10px 0;
}

.bd_box{
border: none;
}

/* *************************************************
* Payment & Freight Info
* ************************************************ */

.freight_info_left {
  width: 90%;
  margin: 10px 0 0;
  border-radius: 3px;
}



/* *************************************************
* Added CSS (Product Description Top) 
* ************************************************ */

.product_description_top_frame {    
    background: url(https://img21.shop-pro.jp/PA01328/918/etc/Background_Subtle_6.png);
    text-shadow: 0px 1px #e3e3e3;
    color: #6e6e6e;
    padding: 30px 10px;
    margin: 35px 0;
    border-radius: 5px;
    box-shadow: 0px 2px 1px 0px #ccc;
    font-size: calc(12px + 0.6vw);
}

.producttitle_frame {
  width: 960px;
  margin: auto;
  border-top: #1c1c1c 1px solid;
  border-bottom: #1c1c1c 1px solid;
  background: rgba(255,255,255,1);
}

.commondiv {width: 100%; overflow: auto; margin: 20px 0 30px;}
.mainpicleft {width: 50%; float: left; background-color: #1c1c1c; border-radius: 5px;}
.mainpicright {width:50%; float: right; background-color: #1c1c1c; border-radius: 5px;}
.maindesc {width: 50%; float: left;}

.mainpicall {
  width: 100%; 
  background-color: #1c1c1c; 
  margin: 20px auto 0; 
  border: 2px solid #6e6e6e;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

.sp_product_title_main {
  padding: 0;
  text-align: center;
}

.mainpicleft img {width: 98%; border-radius: 8px; padding: 1%;}
.mainpicall img {width:100%;}
.mainpicright img {width:98%; border-radius: 8px; padding:1%;}
.maindesc {text-align: center;}

.maindesctitle {font-size: calc(12px + 1vw); padding: 0 0 10%; color: #5481ff;}
.maindesctrans {padding: 2%; line-height: 20px;}
.maindescexp {font-size: 16px;padding: 10%}

.blog_banner_frame {
width: 97%;  
margin: 0 1% 1%;
border: #1c1c1c 1px solid;
border-radius: 5px;
font-size: 16px;
display: inline-block;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
-ms-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.blog_banner_frame:hover{
border: rgba(0,0,0,0) 1px solid;
box-shadow: 0 0 0 2px #1e31ff;
}

.blog_banner_img_frame {
width:31%; 
float: left;
}

.blog_banner_img {
width: 100%;
border-right: #1c1c1c 1px solid;
border-radius: 4px 0 0 4px;
}

.blog_banner_text {
width:67.5%;
float: left;
padding: 1.5% 0 1.5% 1.5%;
text-shadow: 0px 1px #e3e3e3;
color: #6e6e6e;
}


.3b3_set_ad_frame {width: 100%; display: inline-block}
.3b3_set_ad_title {text-align: center; font-size: 18px;}
.3b3_set_img_frame {width: 22.5%; margin: 0 1%; float: left}
.3b3_set_img {width: 100%; border: #1c1c1c 1px solid; border-radius: 5px;}


#custom-options-label{
  color: #ffffff !important;
}

