/* カスタマイズ用CSS */


@media(max-width: 768px){
  .sp_none{
    display: none !important;
  }
  .pc-only{
    display: none !important;
  }
  .sp-only{
    display: block !important;
  }

}
@media(min-width: 769px){
  .pc_none{
    display: none !important;
  }
  .sp-only{
    display: none !important;
  }
}


.underline{
  text-decoration: underline;
}


/**
 ヘッダ
 */
#header_wrap{
  min-width: 100%;
}
#header_wrap #header #header-info-lower .cart em{
  font-style: normal;
}

div#leftcolumn div.block_outer div#search_area input[name=name]{
  border: solid 1px #ccc;
  padding: 2px 7px;
}
.cart-box .ec-numberInput .form-control{
  max-width:  50px;
}

#important_notice_area{
  margin-top: 30px;
}

a.btn-success{
  color: #FFFFFF;
}

div#leftcolumn div.block_outer div#products_list_area .products-list .list-item ul.child-ctg-menu li.category-headline a{
  padding: 2px 0px 0 !important;
}

/**
 フッタ
 */
#footer_wrap #footer #ftr-menu,
#footer-wrap-menu #footer #ftr-menu{
  margin-bottom: 25px;
}
#ftr-products {
  display: none !important;
}
#copyright{
  padding-bottom: 20px;
}


/**
 ページネーション
 */
div#main_column div#undercolumn div.pagenumber_area{
  padding-bottom: 0px;
}
div#main_column div#undercolumn div.pagenumber_area div.change{
  display: flex;
  justify-content: flex-end;
}

div#main_column div#undercolumn div.ec-pagerRole,
div#main_column div#undercolumn div.pagenumber_area{
  width: 100%;
  @media(max-width: 767px){
    padding: 0 15px;
  }
}
div#main_column div#undercolumn #page_navi_bottom div.pagenumber_area div.navi{
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 18px;
  line-height: 18px;
}
#page_navi_top{
  z-index: 0;
  top: -30px;
  position: relative;
  margin: 0 0 -30px;
  width: 50%;
  @media(max-width: 767px){
    top: 0px;
    position: relative;
    margin: 0 0 0;
    width: 100%;
  }

}
div.list_area .container form#page_navi_bottom div.pagenumber_area div.navi span,
div.list_area .container form#page_navi_bottom div.pagenumber_area div.navi a{
}


/**
フォーム
 */

::placeholder{
  color: #CCCCCC;
}
form .attention{
  padding-bottom: 5px;
}
form .ec-Input{
  margin-bottom: 10px;
  line-height: 1.5;
}
.mod_table th{
  width: 20% !important;
  @media (max-width: 767px) {
    width: 25% !important;
  }
}
.mod_table td{
  width: 80% !important;
  @media (max-width: 767px) {
    width: 75% !important;
  }
}
.mod_table .ec-Input span,
.mod_table .ec-halfInput span{
  display: block;
}
.mod_table .ec-Input span input,
.mod_table .ec-halfInput span input{
  width: 100%;
}

table input[type=text],
table input[type=email],
table input[type=password],
table input[type=tel],
table input[type=number],
table input[type=url],
table input[type=search],
table textarea,
table select{
  padding: 5px;
  border: 1px solid #999999;
}

table input.wide--S{
  width: 50%;
}
table input[type=password]{
  width: 50%;
}
table input.wide--L,
table input[type=email],
table input[type=url],
table textarea,
table input.p-street-address,
table input.p-extended-address{
  width: 80%;
}
table .error input,
table .error textarea,
table .error select{
  background-color: #FFEEEE;
}

.ec-halfInputs{
  display: flex;
  gap: 20px;
}
@media (max-width: 767px) {
  table input.wide--L,
  table input[type=email],
  table input[type=url],
  table textarea,
  table input.p-street-address,
  table input.p-extended-address{
    width: 100%;
  }
  table textarea{
    height: 40vh;
  }
  .ec-halfInputs{
    gap: 10px;
  }
  input.p-postal-code{
    width: 10em;
  }

}

/**
スライド
 */
.slick-dots li{
  width: 10px;
  height: 10px;
}
.slick-dots li button{
  border-radius: 100px;
  background-color: #999;
  width: 10px;
  height: 10px;
}
.slick-dots li.slick-active button{
  background-color: #000;
}

#top_photo_area .slick-prev,
#top_photo_area .slick-next{
  left: 10px;
  top: 160px;
  z-index: 5;
  @media (max-width: 767px) {
    left: 5px;
    top: 50vw;
  }
}
#top_photo_area .slick-next{
  left: auto;
  right: 10px;
  @media (max-width: 767px) {
    right: 5px;
  }
}
#top_photo_area .slick-prev:before,
#top_photo_area .slick-next:before{
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  border-top: 1px solid #333;
  border-left: 1px solid #333;
  transform: rotateZ(-45deg);
}

#top_photo_area .slick-next:before{
  transform: rotateZ(135deg);
}
#top_photo_area .slick-next:after{

}
div#undercolumn .detailarea .photo-box{
  max-width:320px;
  @media(max-width: 767px){
    max-width:100%;
  }
}
div#undercolumn .detailarea .photo-box .photo-area:before{
  z-index: 2;
}
div#undercolumn .detailarea .photo-box .photo-area{
  width: 320px;
  max-width:320px;
  @media(max-width: 767px){
    max-width:100%;
  }
}
div#undercolumn .detailarea .photo-box .photo-area a{
  text-align: center;
  line-height: 320px;
}
div#undercolumn .detailarea .photo-box .photo-area a img{
  margin: 30px auto;
  line-height: 320px;
}

#top_photo_nav .slick-list{
  padding: 0 !important;
}
div#undercolumn .detailarea .photo-box .over_image img:hover{
  border: none;
}

.headline{
  position: relative;
  background: none !important;
  border-bottom: 3px solid #F5E102;
  padding-bottom: 12px !important;
}

.headline:before{
  content:"";
  display: inline-block;
  background-color: #3598DB;
  width: 100px;
  height: 3px;
  position: absolute;
  bottom:-3px;
  left: 0;
}

/**
Home
 */
#search_vermin_area ul{
  display: flex;
  flex-wrap: wrap;
  gap: 10px 0.5%;
  @media(max-width: 767px){
    gap: 4px 6px;
  }
}
#search_vermin_area li{
  width: 33%;
  @media(max-width: 767px){
    width: calc(50% - 3px);
  }
}
#search_vermin_area li img{
  max-width: 100%;
}

table.cart-box td.quantity_wrap{
  width: 100px;
  display: flex;
  gap: 0 10px;
  align-items: center;
}
table.cart-box td.quantity_wrap .quantity_input{
  width: 50px;
}

/**
商品一覧
 */
.product_page .list_area .row-eq-height{
  gap: 15px 0;
}
.product_page .list_area .row-eq-height .col-sm-3{
  padding-left: 8px;
  padding-right: 8px;
}
.list_area .pro-image{
  text-align: center;
  margin-bottom: 8px;
}
.list_area .pro-price span{
  color: #f00;
}
.list_area .pro-message {
  font-size: 12px;
  margin-top: 5px;
  margin-bottom: 5px;
}
.list_area .pro-price {
  font-size: 13px;
  text-align: right;
}

/**
マイページ
 */
.delivname{

}
.delivname th,
.delivname td{
  padding: 3px 15px;
}
.delivname th{
  border-right: 1px solid #ccc;
  padding-left: 0;

}
.ec-orderMails{
  margin-bottom: 50px;
}


/**
カート
 */
.cart_registbuttons{
  display: flex;
  align-items: center;
  justify-content: center;
  @media(max-width: 767px){
    flex-direction: column;
    padding: 0 15px;
  }
}

.cart_registbuttons li{
  @media(max-width: 767px){
    width: 100%;
    padding: 0;
  }
}
.cart_registbuttons li:first-child{
  @media(max-width: 767px){
    margin-bottom: 20px;
  }
}
.cart_registbuttons li a{
  @media(max-width: 767px){
    display: block;
    width: 100%;
  }
}

.cart_registbuttons li#AmazonPayButtonWrap p{
  @media(max-width: 767px){
    width: 100% !important;
    margin: 0 !important;
    top: 0 !important;
  }
}

#quantity_level{
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 5px 0 0;
  gap: 10px;
  @media(max-width: 767px){
    display: flex !important;
    padding: 0;
    gap: 5px 7px;
    text-align: center;
  }
}
#quantity_level li{
  @media(max-width: 767px){
    font-size: 16px;
  }
}
#quantity_level li img{
  @media(max-width: 767px){
    width: 20px !important;
    height: 20px !important;
  }
}
#quantity_level li .ec-cartRow__amount{
  @media(max-width: 767px){
    margin: 0 !important;
  }
}

/**
お届け先
 */
.ec-orderDelivery__address{
  padding-top: 35px;
  @media(max-width: 767px){
    padding-top: 7px;
  }
}
.ec-orderDelivery__address__note{
  position: absolute;
  top: 10px;
  margin-bottom: 0;
  color: #A00100;
  @media(max-width: 767px){
    top: auto;
    bottom: 50px;
    font-size: 12px;
  }
}
.ec-orderDelivery__edit{
  @media(max-width: 767px) {
    text-align: center;
  }
}
.ec-orderDelivery__edit .btn{
  padding-left: 30px !important;
  padding-right: 30px !important;
}

.ec-orderDelivery__actions select.form-control{
  width: 25%;
  @media(max-width: 767px){
    width: calc(100% - 150px);
  }
}
.ec-orderDelivery__actions .ec-select__note{
  padding-top: 10px;
  padding-right: 10px;
}
.ec-orderDelivery__actions .ec-select__note p{
  @media(max-width: 767px){
    font-size: 13px;
  }
}
.ec-orderDelivery__actions .ec-select__note label{
  display: none;
  @media(max-width: 767px){
    width: calc(100% - 150px);
  }
}


#voucher_area{
  padding: 0 10px;
}
