/** ¶¯À©CSS **/
body, h2,h3,h4,h5,input {
  padding:0;
  margin:0;
  background: #fdfdff;
}
#header {
top: 0;
}
#menu-bar {
  display: none;
}
.center {
  text-align: center;
}
body {
 font-family: '¥Ò¥é¥®¥Î³Ñ¥´ Pro', 'Hiragino Kaku Gothic Pro','¥á¥¤¥ê¥ª', 'Meiryo', 'Þâ¥´¥·¥Ã¥¯', 'Yu Gothic', '£Í£Ó £Ð¥´¥·¥Ã¥¯', 'MS PGothic', sans-serif;
}
/** Á´ÂÎ **/
#product-detail {
  width: 100%;
  overflow: hidden;

}
body {
 font-family: '¥Ò¥é¥®¥Î³Ñ¥´ Pro', 'Hiragino Kaku Gothic Pro','¥á¥¤¥ê¥ª', 'Meiryo', 'Þâ¥´¥·¥Ã¥¯', 'Yu Gothic', '£Í£Ó £Ð¥´¥·¥Ã¥¯', 'MS PGothic', sans-serif;
}
/** Back **/
.back-history {
  width: 50px;
  height: 50px;
  background: #232323;
  position: relative;
  top: 0;
  left: 0;
  float: left;
  z-index: 9999;
}
.back-history img {
  position: absolute;
  top: 0;
  left: 0;
  color: #fff;
  width: 30px;
  padding: 10px;
}
.result-msg {
  text-align: center;
  font-size: 17px;
  padding-bottom: 10px;
  color: #191919;
  font-weight: normal;
  margin:0;
  line-height: 17px;
  height: 17px;
}
.ex-back {
  padding-top: 50px;
}
/** Slider **/
.detail-slider {
  width: 100%;
  
  position:relative;
  top:0;
  left:0;
}
.img-slider li {
  width: calc(100% - 50px);
  border-radius: 10px;
}
.prev-arrow {
  position: absolute;
  bottom: 0px;
  right: 65px;
  padding: 5px;
  z-index: 99;
  transform: translateY(45px);
  -webkit- transform: translateY(45px);
border-radius: 5px;
background: #fdfdff;
box-shadow:  3px 3px 5px #d6d6d9,
             -3px -3px 5px #ffffff;
}
.next-arrow {
  position: absolute;
  bottom: 0px;
  right: 20px;
  padding: 5px;
  z-index: 99;
  transform: translateY(45px);
  -webkit- transform: translateY(45px);
  border-radius: 5px;
background: #fdfdff;
box-shadow:  3px 3px 5px #d6d6d9,
             -3px -3px 5px #ffffff;
}
/** Detail **/
.product-text-inner {
  padding: 25px;
}

.product-model {
  font-size: 15px;
  color: gray;
  letter-spacing: px;
  font-weight: normal;
  font-family: '¥Ò¥é¥®¥Î³Ñ¥´ Pro', sans-serif;
  padding: 3px 25px 3px;
}
.product-name {
  font-size: 20px;
  color: #2d2d2d;
  font-weight: 600;
  font-family: '¥Ò¥é¥®¥Î³Ñ¥´ Pro', sans-serif;
  padding: 3px 0px;

}
.pl25 {
  padding-left: 25px;
}
.product-price {
  font-size: 18px;
  color: #2d2d2d;
  font-weight: 400;
  font-family: '¥Ò¥é¥®¥Î³Ñ¥´ Pro', sans-serif;
  padding: 3px 25px;

}
.message {
  font-family: '¥Ò¥é¥®¥Î³Ñ¥´ Pro', sans-serif;
  font-size: 18px;
  color: #2d2d2d;
  display: flex;
  align-items: center;
}

.message:before {
  border-top: 1px solid;
  content: "";
  width: 1em; /* Àþ¤ÎÄ¹¤µ */
}
.message:before {
  margin-right: .5em; /* Ê¸»ú¤Î±¦ÎÙ */
}
.message:body {
 font-family: '¥Ò¥é¥®¥Î³Ñ¥´ Pro', 'Hiragino Kaku Gothic Pro','¥á¥¤¥ê¥ª', 'Meiryo', 'Þâ¥´¥·¥Ã¥¯', 'Yu Gothic', '£Í£Ó £Ð¥´¥·¥Ã¥¯', 'MS PGothic', sans-serif;
}

.main-msg {
  font-size: 13px;
  color: #2d2d2d;
  font-weight:bold ;
  padding-bottom: 5px;
  font-family: "¥Ò¥é¥®¥Î³Ñ¥´ Pro",sans-serif;
}
.detail-text {
  padding: 10px 0;
}
.detail-explain {
  padding: 7px 0;
  font-size: 13px;
  color: #3c3c3c;
  font-weight: normal;
  font-family: "¥Ò¥é¥®¥Î³Ñ¥´ Pro";
  letter-spacing: .7px;
  line-height: 23px;
}

/** Opener**/
#opener-section{
  z-index:99999;
  background-color:#ff1493;
  position: fixed;
  left: 0;
  opacity: 1;
  bottom: 0;
  width: 100%;
  height: 60px;
  box-shadow: 0px 1px 30px -3px rgba(0,0,0, .1);
  transition-duration: .5s
}
.opener-inner {
  position:relative;
  top:0;
  left: 0;
  width: calc(100% - 30px);
  height: 40px;
  margin: 8px 15px 8px;
}
.opener-text p {
  color: #fff;
}
.opener-name {
  font-size: 12px;
  padding;0;
  margin:0;
  padding: px;
  color: #fff;
}
.opener-price {
  font-size: 15px;
  padding: px;
  line-height: 15px;
  bottom:8px;
  color: #fff;
  padding;0;
  margin:0;
}
.opener-btn {
  position: absolute;
  top:0px;
  right: 0;
  height: 40px;
  line-height: 40px;
}
.opener-btn span {
  line-height: 40px;
  height: 40px;
  border-radius: 5px;


}

.buy-btn {
  line-height: 16px;
  color: #fff;
  font-size: 16px;
  padding: 17px 5px;
  
}

/** Spiner **/
.spinner_area {
  padding: 10px 0;
  margin: 0;
}
.counter1 {
  width: 80px;
  text-align:right;
  padding-left: 20px;
}
.btnspinner{
    -ms-user-select: none;
    -moz-user-select: -moz-none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    user-select: none;
  width: 40px;
}

.spinner_area input{
    padding: 11px 0;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-size: 18px;
    text-align:center;
    vertical-align: middle;
    /* ¥Ç¥Õ¥©¥ë¥È¤Î¥¹¥Ô¥Ê¡¼¤ò¾Ã¤¹ */
    -webkit-appearance: none;
    -moz-appearance:textfield;
}
.spinner_area input[type="button"]{
    cursor: pointer;
}
/** Incart **/
.incart-btn {
  text-align: center;
  padding: 15px 0;
  width: calc(100% - 25px);
  background: black;
  border:none;
  border-radius: 3px;
  color: #fff;
  font-weight: 600;
  font-size: 15px;

}
/** Popup **/
#popup-section {
  display: ;
  position:fixed;
  bottom: 0;
  
}
.modal_wrap {
  position:absolute;
  top:0;
  left: 0;
  z-index:99899;
}
.cb {
  display: none;
}

.modal_overlay {
  display: flex;
  justify-content: center;
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99998;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  opacity: 0;
  transition: opacity 0.5s, transform 0s 0.5s;
  transform: scale(0);
}

.modal_trigger {
  position: absolute;
  width: 100%;
  height: 100%;
}

.modal_content {
  align-self: flex-start;
  width: 100%;
  box-sizing: border-box;
  line-height: 1.4em;
  transform: translateY(0px);
  transition: 0.5s;
  position:absolute;
  bottom: 0;
  left: 0;
  z-index:999999;
}
.close_button {
  position: absolute;
  top: -40px;
  left: calc(50% - 25px);
  transform: translateX(0%);
  -webkit- transform: translateX(0%);
  transform: translateY(0%);
  -webkit- transform: translateY(0%);

}
.close-btn {
  width: 40px;
}
.modal-frame {
  position:relative;
  top:0;
  left: 0;
 
}
.modal-white {
  padding: 25px 0 ;
  position:relative;
  bottom:0;
  left: 0;
  background: #fdfdff;
  z-index:99998;
}
.modal_wrap input:checked ~ .modal_overlay {
  opacity: 1;
  transform: scale(1);
  transition: opacity 0.5s;
}

.modal_wrap input:checked ~ .modal_overlay .modal_content {
  transform: translateY(-60px);
}
.modal-linkarea {
  padding: 0px 0;
  
}
.modal-linkarea p {
  padding: 3px 0;
  font-size: 14px;
  
}
.modal-msg {
  padding: 10px 0;
  margin: 10px 0;
  width: 100%;
  border-top: 1.5px solid black;
  border-bottom: 1.5px solid black;
}
.modal-msg p {
  color: #607d8b;
  background: #eff2f4;
  padding: 15px 20px;
  margin: 10px 25px;
  width: calc(100% - 90px);
  line-height: 1.6;
  text-align: left;
  font-size: 13px;
}
.modal-reserve {
  padding: 0 25px;
}
/** Modal¡¡¥Í¥Ã¥ÈÍ½Ìó **/
.net-reserve-area {
  width:calc(100% - 0px);
  background: #fdfdff;
  padding: 5px 0 0 0;
  margin-bottom: 0px;
}
.net-reserve-btn {
  display: block;
  margin: 0 auto;
  margin: 0px;
  padding: 0px;
  
}
.net-reserve-btn p {
  padding: 15px 0;
}
.tel-btn p {
  padding: 5px 0;
}
.net-reserve-num{
  padding: 15px 0;
  margin:0 auto;
  color: #fff;
  background: #FF339A;
  width: calc(100% - 50px);
  text-align: center; 
  font-weight: bold;
  letter-spacing: .5px;
}
.fa-position-left {
  padding-right: 10px;
}
.tel-area {
  width:calc(100% - 0px);
  background: #fff;
  padding: 0px 0 15px;
}
.tel-btn {
  display: block;
  margin: 0 auto;
  margin: 0px;
  padding: 0px 25px;
  margin-bottom: 10px;
}
.tel-num{
  padding: 5px 0 0px 0;
  color:black;
  font-weight: lighter;;
  display: inline-block;
  border-bottom: 1px solid black;
  width:calc(50% - 12.5px);
  text-align: center; 
  border-radius: 1px;
}
.tel-g {
  float:left;
}
.tel-o {
  float:right;
}
.modal-bottom-btn p{
  padding: 15px 0;
  color: #fff;
  margin: 0 auto;
  background: black;
  width: calc(100% - 50px);
  text-align: center; 
  font-weight: bold;
  letter-spacing: .5px;
  margin-top: 10px;
}


/** banner-section**/
#banner-section{
  background: #fdfdff;
  display: none;
}
.category-inner {
  padding: 20px 25px 10px;
}
.category-item {
  position: relative;
  padding: ;
  color:  #2d2d2d;            
  margin:  8px 0;         
  width: calc(50% - 10px);     
  background: #fdfdff;
  box-sizing: border-box;
}
.flex-item {
  position: relative;
  padding: 0px 0px 45px 0px;
  color:  #2d2d2d;            
  margin:  10px 0;         
  width: calc(50% - 10px);     
  background: #fff;
  box-sizing: border-box;
}
.flex-item-inner {
  padding: 0 10px;
}
.flex-item:nth-child(odd) {
  margin-right: 20px;
}

.subsc-btn {
  padding-top: 10px;
  
}

/* ¥ì¥Ó¥å¡¼ */
.p-product-review {
  margin-bottom: 60px;
}
.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;
}
.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;
}
/* ¥ì¥Ó¥å¡¼ ÊÖ¿® */
.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: 100px;
  }
}

/* .opener-text {
	width: 75%;
} */
@media screen and (max-width: 767px) {
  .detail-text {
    margin: auto;
    width: calc(100% - 25px);
}
}
body {
    padding-top: 40px !IMPORTANT;
}
#header{top:40px;}