/* カスタマイズ用CSS */

@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url('https://fonts.googleapis.com/css2?family=Zen+Old+Mincho:wght@400;500;600;700;900&display=swap');

body{
    overflow-x:hidden;
    font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    font-weight:400;
    color:#2a2a2a;
    font-size:15px;
    line-height:1.9;
}

.ec-input select, .ec-birth select, .ec-select select, .ec-halfInput select, .ec-numberInput select, .ec-zipInput select, .ec-telInput select{
    font-size: 16px;
}

.ec-input input, .ec-birth input, .ec-select input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input{
    font-size: 16px;
}

.ec-reportDescription{
    font-size:15px;
}

.ec-input textarea, .ec-birth textarea, .ec-select textarea, .ec-halfInput textarea, .ec-numberInput textarea, .ec-zipInput textarea, .ec-telInput textarea{
     font-size: 16px;
}

img{
    max-width: 100%;
}

a:focus, a:hover {
    color: #f7941c;
    text-decoration: underline;
}

p{
    font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    font-weight:400;
    line-height:1.9;
}

p:not(:last-child){
    margin-bottom:1em;
}

h1 a, h1{
    color:#4f7b23 !important;
        font-family: 'Zen Old Mincho', serif;
    font-size:52px;
    line-height: 1.0;
    margin:.5em 0 0 0;
    text-decoration: none !important;
}

.ec-blockTopBtn{
    width:40px;
}

.ec-cartNaviNull .ec-cartNaviNull__message{
    font-size:15px;
}

.ec-cartNaviNull .ec-cartNaviNull__message p{
        line-height:1.5;
}

/************ ヘッダー ****************/

.ec-layoutRole__header{
    position:relative;
    margin-bottom:0;
}


.ec-headerNaviRole img {
    width: auto;
}

.ec-shelfGrid .ec-shelfGrid__item img{
    margin-bottom:1em;
}

.ec-headerNaviRole, .ec-Role__inner, .ec-shelfRole{
    padding-left:15px;
    padding-right:15px;
    padding-bottom:0;
}

.ec-role, .ec-contactRole{
    padding-left:15px;
    padding-right:15px;
}

.ec-Role__inner{
    max-width:1130px;
    margin:auto;
}

.ec-off2Grid .ec-off2Grid__cell{
    width:100%;
    margin-left:auto;
    margin-right:auto;
}

.ec-footerRole .ec-footerRole__inner, .ec-sliderItemRole{
    padding-left:15px;
    padding-right:15px;
}

.footer__logo{
    max-width:200px;
}

.ec-sliderItemRole{
    padding-left:0;
}

.ec-headerNaviRole .ec-headerNaviRole__left{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content:space-between;
    align-items:center;
}

.ec-headerNaviRole .ec-headerNaviRole__left{
    width:50%;
}

.kv__wrap{
    position: relative;
}


.caption__title{
    color:#fff;
    font-size:3.2em;
    letter-spacing: 0.02em;
    font-family: 'Zen Old Mincho', serif;
    font-weight:400;
    text-align: center;
}

.caption_discription{
    background-image: -webkit-linear-gradient(left, transparent, #ffa82e 25%, #ffa82e 75%, transparent);
    background-image: linear-gradient(to right, transparent, #ffa82e 25%, #ffa82e 75%, transparent);
    background-position: center;
    background-repeat: no-repeat;
    padding:1em;
    font-size:18px;
    color:#fff;
    font-family: 'Zen Old Mincho', serif;
    font-weight: 400;
}

@media screen and (min-width: 768px) and (max-width: 921px) {
    
    .ec-headerNaviRole .ec-headerNaviRole__left{
    width:58%;
}

.ec-calendar__month {
    width: 100%;
    max-width: 180px;
    margin-left: auto !important;
    font-size: 12px;
}

}

@media screen and (min-width: 768px) and (max-width: 820px) {
.ec-layoutRole__right .ec-role{
    width:60%;
}
}

.ec-headerNaviRole .ec-headerNaviRole__nav{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content:space-between;
}

.ec-headerNav .ec-headerNav__item a span, .ec-cartNavi span{
    display:block;
    font-size:12px;
    margin-top:-5px;
}

.ec-headerNaviRole .ec-headerNaviRole__nav a i, .ec-cartNavi i{
    font-size:33px;
    color:#412512;
}

.ec-cartNavi .ec-cartNavi__icon{
    font-size:36px;    
}

.ec-headerNav .ec-headerNav__item{
    padding-left:2px;
    padding-right:2px;
}

.ec-headerNav .ec-headerNav__item, .ec-cartNavi{
    text-align:center;
}

.ec-cartNavi{
    position:relative;
    padding:0;
    display:block;
}

.ec-cartNavi .ec-cartNavi__badge{
    position:absolute;
    right:-5px;
    width:17px;
}

.Tel-wrap{
    font-size:28.8px;
    color:#002070;
    font-weight:bold;
    text-align:center;
}

.Tel-wrap i{
    font-size:24.8px;
}

.Tel-wrap span{
    font-size:11px;
    display:block;
    color:#2a2a2a;
    text-align:center;
    font-weight:300;
}

.ec-cartNavi__label{
    display:none;
}

.ec-cartNavi{
    min-width:100%;
    height:auto;
    background:transparent;
}

.ec-footerNavi .ec-footerNavi__link{
    border-right:1px solid #242423;
}

.ec-footerNavi .ec-footerNavi__link:last-child{
    border-right:none;
}

@media screen and (min-width: 768px) {
    
        .caption__wrap{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    text-align: center;
    width: 100%;
    max-width: 1000px;
  }
  

    .sp-image{
        display:none;
    }
    
    .ec-off4Grid .ec-off4Grid__cell{
        margin-left:auto;
        margin-right:auto;
        width:60%;
    }
    
    .ec-footerRole{
            padding-top: 60px;
    }
    
    .ec-footerTitle{
        padding: 40px 0 60px;
    }
    
}

/************ SP ****************/
@media screen and (max-width: 767px) {
    
    body.have_curtain{
         overflow-y: hidden;
    }
    
    .kv__wrap{
        min-height:60vh;
    }
    
    
    .ec-footerRole{
        padding:2.5vh 3.5vw;
    }
    
    .ec-footerTitle{
        padding-bottom: 0 !important;
        text-align: center !important;
    }
    
    .kv__wrap img{
        width:100%;
        height:100%;
        min-height:60vh;
        object-fit:cover;
    }
    
    .caption__title{
        font-size:2.4em;
    }
    
      .ec-headerNaviRole .ec-headerNaviRole__right{
      margin-right:20px;
  }
  
    
    .caption__wrap{
    bottom:0;
        position: absolute;
    left: 50%;
    transform:translateX(-50%);
    width:100%;
  }
  
  .ec-footerNavi .ec-footerNavi__link{
      border-right:none;
  }
  
  .ec-footerNavi .ec-footerNavi__link a{
      border: 1px solid #7d7d7d;
  }

.ec-footerRole .ec-footerRole__inner, .ec-sliderItemRole{
    padding-left:0;
    padding-right:0;
}
    
    .ec-drawerRole.is_active{
            overflow-y: scroll;
            height: 100vh;
    }
    
    .ec-layoutRole__header{
        padding-top:.5em;
        margin-bottom:.5em;
    }
    
    .ec-headerNaviRole .ec-headerNaviRole__left h1, h1 a{
        margin-bottom:0;
        margin-top:0;
        font-size:26px;
    }
    
    .slick-slider{
        margin-bottom:0;
    }
    
    .pc-image{
        display:none;
    }
    
    .ec-headerNaviRole{
        padding-top:0;
    }
    
    .ec-headerNav .ec-headerNav__item a span, .ec-cartNavi span, .ec-itemNav__nav li:last-child::after{
        display:none;
    }
    .ec-cartNavi .ec-cartNavi__badge{
        top:0;
    }
    
    .Tel-wrap.sp-image{
        display:block;
        font-size:34px;
        margin-bottom:1em;
        line-height: 1.6;
    }
    
.ec-footerNavi .ec-footerNavi__link{
    text-align: center;
    margin-bottom:.5em;
}
    
}

/************ ヘッダー ****************/

/************ ヘッダーナビゲーション ****************/

.ec-headerRole, .ec-headerNaviRole{
    padding-top:0;
    max-width:calc(100% - 5vw);
}

/************ SP ****************/
@media screen and (max-width: 767px) {
    .ec-headerRole{
        display:none;
    }

    .ec-headerNavSP{
        left: 88.5%;
    }
}

 ul.header-nav{
     list-style:none;
     margin:0 0 0 auto;
     padding:1em 0 1.5em;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    max-width:90%;
    justify-content:flex-end;
 }
 ul.header-nav li{
     position:relative;
     line-height:1.0;
     padding:0;
     margin:0;
 }

  ul.header-nav li a{
      display:block;
      padding:0 1.5em;
      font-size:1.1rem;
  }
  
  .ec-headerTitle .ec-headerTitle__title a{
      font-size:16px;
      margin:0 auto;
      display:block;
      font-weight:500;
      color:#412512;
  }
  
  .ec-headerTitle .ec-headerTitle__title a:hover {
    color:#412512;
}
  
  .ec-itemNav__nav li{
      position:relative;
  }
  
    .ec-itemNav__nav li a::after{
      content:'';
      position:absolute;
      height:60%;
      width:1px;
      left:1px;
      top: 50%;
      transform: translateY(-50%);
      background:#66ade3;
  }
  
    .ec-itemNav__nav li:last-child::after{
      content:'';
      position:absolute;
      height:60%;
      width:1px;
      right:0px;
      top: 50%;
      transform: translateY(-50%);
      background:#66ade3;
  }
  
      .ec-itemNav__nav li:last-child a::after{
      content:'';
      position:absolute;
      height:60%;
      width:1px;
      right:1px;
      top: 50%;
      transform: translateY(-50%);
      background:#66ade3;
  }
  
  .ec-categoryNaviRole, .ec-itemNav__nav, .ec-itemNav__nav li a{
      background: #fff;
      color:#412512;
  }
  
  .ec-itemNav__nav li a{
      color:#412512 !important;
      font-weight: normal;
  }
  
   .ec-itemNav__nav li a:hover{
     background:#57b3f9;
 }
  
  .ec-itemNav__nav li a{
      color:#fff;
  }
  
  .ec-categoryNaviRole{
    margin: 0 calc(50% - 50vw);
  width: 100vw;
      max-width: 100vw;
    padding:0 15px;
  }
  
  .ec-itemNav__nav{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content:space-between;
    max-width: 1100px;
    margin:auto;
  }
  
  .ec-itemNav__nav li{
      float:none;
      width:calc(100% / 5);
  }
  
  .ec-itemNav__nav li a{
      line-height:1.0;
  }
  
    .ec-itemNav__nav li a::before{
     content:'';
      display:inline-block;
      width:30px;
      height:30px;
      vertical-align: middle;
      margin-right:5px;
    }
  
  
.ec-itemNav{
    position:relative;
}
.ec-itemNav::before, .ec-itemNav::after{
content:'';
position:absolute;
width:5vw;
height:100%;
background: #ffffff;
background: -moz-linear-gradient(top,  #ffffff 0%, #ffffff 50%, #f4f4f4 50%, #f4f4f4 99%);
background: -webkit-linear-gradient(top,  #ffffff 0%,#ffffff 50%,#f4f4f4 50%,#f4f4f4 99%);
background: linear-gradient(to bottom,  #ffffff 0%,#ffffff 50%,#f4f4f4 50%,#f4f4f4 99%);
z-index:5;
}

.ec-off1Grid .ec-off1Grid__cell{
    width:100%;
    margin-left:auto;
    margin-right:auto;
}

.ec-layoutRole .ec-layoutRole__right{
    margin-top:0;
}


@media screen and (min-width: 768px) and (max-width: 1200px) {
.ec-itemNav::before, .ec-itemNav::after{
    display:none;
}

.ec-calendar__month {
    margin-top: 0;
    margin-left: 0;
}

}

@media screen and (min-width: 768px) and (max-width: 890px) {

    .ec-layoutRole .ec-layoutRole__contents{
        display:block;
    }

    .ec-layoutRole .ec-layoutRole__mainWithColumn, .ec-layoutRole .ec-layoutRole__left, .ec-layoutRole .ec-layoutRole__right{
        width:100%;
    }
    
    .ec-off1Grid .ec-off1Grid__cell{
        width:100%;
        margin-left:auto;
        margin-right:auto;
    }
    
    .ec-itemNav__nav li:last-child::after{
        display:none;
    }
}

@media screen and (max-width: 907px){
.Tel-wrap{
    display:none;
}
}
.ec-itemNav::before{
bottom:0;
left:-2vw;
}
@media screen and (min-width: 1024px){
.ec-layoutRole .ec-layoutRole__right{
    max-width:250px;
}
}

/************ SP ****************/
@media screen and (max-width: 767px) {
    
    .ec-layoutRole .ec-layoutRole__contents{
            flex-wrap: wrap;
    }
    
    .ec-itemNav__nav{
        display:block;
    }
    
    .ec-itemNav__nav li{
        width:100%;
    }
    
    .ec-itemNav::before, .ec-itemNav::after, .ec-itemNav__nav li a::after{
        display:none;
    }
    
    .ec-drawerRole .ec-headerLinkArea{
        background: #f7941c;
    }
    
    .ec-layoutRole .ec-layoutRole__right{
        display:block;
        width:100%;
    }
    
}


.ec-itemNav::after{
bottom:0;
right:-2vw;
}

.ec-login .ec-login__link{
    font-size:13px;
}

/************ レイアウト ****************/

section{
    padding:5vh 3.5vw;
    background:url(../img/common/wh__bg.jpg)repeat-y;
}

section.wh{
    background:#fff;
}

section.faq{
    background:url(../img/common/faq__bg.jpg);
}

section.news{
    background:#fffefa;
}

section .inner__wrap{
    max-width:1100px;
    margin:auto;
}

.ec-layoutRole .ec-layoutRole__contents{
    justify-content:space-between;
    max-width:100%;
}


.Flex-wrap{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content:space-between;
}

.Flex-wrap.reverse{
    flex-direction: row-reverse;
}

.Flex-wrap.al__it-center{
    align-items: center;
}

.Flex-wrap .img{
    width:30%;
}

.Flex-wrap .text{
    width:65%;
}

.item_name, .item_price{
   color:#412512; 
}

.Flex-wrap .Hurf__cont{
    width:calc(98% / 2);
}

.Flex-wrap .Hurf__cont.flex{
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content:space-between;
}

.wd__img01{
    background:url(../img/top/img__01.jpg)no-repeat;
    background-size: cover;
    width:100vw;
    height:40vh;
}

.wd__img02{
    background:url(../img/top/img__02.jpg)no-repeat;
    background-size: cover;
    width:100vw;
    height:40vh;
}

.wd__img03{
    background:url(../img/top/img__03.jpg)no-repeat;
    background-size: cover;
    width:100vw;
    height:40vh;
    max-width:1100px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom:5vh;
}

/************ SP ****************/
@media screen and (max-width: 767px) {
    
    .wd__img01, .wd__img02, .wd__img03{
        height:40vh;
        width:100%;
    }
    
    .wd__img02{
    background:url(../img/top/img__02.jpg)no-repeat center center;
    background-size: cover;
        
    }
    
    .Flex-wrap .Hurf__cont{
    width:100%;
}

.Flex-wrap .text{
    text-align: center;
    margin-bottom: .5em;
}

.Flex-wrap .img{
    width:100%;
    text-align: center;
    margin-bottom: 1em;
}

.ec-layoutRole__footer .Flex-wrap .img{
    max-width:120px;
    margin-left: auto;
    margin-right: auto;
}

.Flex-wrap .text{
    width:100%;
}

    .Flex-wrap .Hurf__cont:not(:last-child){
   margin-bottom:2em;
}

.ec-shelfGrid .ec-shelfGrid__item{
    margin-bottom:1em;
}
    
}

/************ メインコンテンツ ****************/


.ec-sliderRole{
        max-width: 1130px;
        padding-left:15px;
        padding-right:15px;
}

.slick-slider{
    list-style: none;
    padding:0;
    margin-bottom: 0;
}

/************ 見出し ****************/

h2{
    font-family: 'Zen Old Mincho', serif;
    font-weight:500;
    font-size:2.6em;
    color:#412512;
    letter-spacing: 0.02em;
    margin-bottom: .5em;
    line-height: 1.6;
}

h2.center{
    text-align: center;
}
 
h4.border-left{
    position:relative;
    font-size:17px;
    font-weight:bold;
    padding:0 0 0 25px;
    border:none;
    margin-bottom:1em;
}

h4.border-left::before{
    content:'';
    background:#dddddd;
    width:15px;
    height:4px;
    position:absolute;
    left:0;
    top: 50%;
    transform: translateY(-50%);
}

h3.wh--bg{
    background:#fff;
    border-top:1px solid #ddd;
    border-bottom:1px solid #ddd;
    position:relative;
    color:#2a2a2a;
    font-size:18px;
    padding:.55em .55em .55em 1.5em;
    font-weight:600;
    margin-bottom:1em;
}

h3.wh--bg::before{
    content:'';
    position:absolute;
    background: #2a98ec;
    border-radius:1.46em;
    height:60%;
    left:.5em;
    top: 50%;
    transform: translateY(-50%);
    width:4px;
}

/************ ショップガイド ****************/

.light-blue-bg{
    background: #f6f9fc;
    border:none;
    padding:5vh 15px;
    margin-top: 5vh;
}

/************ SP ****************/
@media screen and (max-width: 767px) {
    
    .light-blue-bg{
            padding:2.5vh 15px;
        
    }
    
    .light-blue-bg .ec-Role__inner{
        padding-left:0;
        padding-right:0;
    }
    
}

/************ リンク ****************/

.Flex-wrap .Hurf__cont a.btn{
    margin-left:auto;
    margin-top:1em;
}

a.btn{
    background: #2a98ec;
    color:#fff;
    padding:.35em;
    text-align:center;
    font-size:14px;
}

a.btn:hover{
    opacity:0.75;
    color:#fff;
}

/************ カレンダー ****************/
.ec-calendar{
    font-weight:300;
    font-size:14px;
}

.ec-calendar__month{
    width:100%;
}


.ec-footerRole{
    background:#fff;
    border-top:0;
    margin-top:0;
}

.ec-footerNavi, .ec-footerTitle{
    color:#242423;
    text-align: left;
}
/************ SP ****************/
@media screen and (max-width: 767px) {
.ec-calendar__month{
    margin-top:0;
}
}

/************ 商品一覧 ****************/

.ec-searchnavRole .ec-searchnavRole__infos{
    border-top:none;
}

.ec-searchnavRole{
    padding-left:15px;
    padding-right:15px;
}

/************ 商品詳細 ****************/

.ec-productRole .ec-productRole__price{
    padding-bottom:0;
    border-bottom:0;
}

.ec-productRole{
    margin-top:2em;
}

.ec-productRole h2{
    margin-top:0;
}

.ec-productRole__tags{
    display:none;
}

.ec-productRole .ec-productRole__code{
    border-bottom:0;
}

.ec-productRole__code table{
    border:1px solid #ddd;
    margin:0;
    width:100%;
    font-size:12px;
}

.ec-productRole__code table th{
    width:35%;
    text-align:center;
    padding:.35em;
    background:#dddddd;
    font-weight:300;
}

.ec-productRole__code table td{
        padding:.35em;
}

.ec-productRole__category{
    display:none;
}

.ec-productRole .ec-productRole__actions .ec-select select{
    min-width:100%;
    max-width:100%;
}

.ec-productRole .ec-productRole__btn{
    min-width:100%;
    width:100%;
}

.ec-blockBtn--action{
    font-size:18px;
    height:auto;
    background:#e7020a;
}

.ec-blockBtn--action i{
    font-weight:300;
    font-size:26px;
    vertical-align:middle;
    margin-right:5px;
}

.ec-productRole__description{
    font-size:15px;
    font-weight:300;
    margin-top:1em;
    color:#2a2a2a;
    line-height:1.85;
}

.ec-productRole__priceRegular{
    display:none;
}

.breadcrumb-wrap{
    background:#f4f4f4;
    padding:.25em;
    font-size:0.8rem;
}

.ec-price__tax{
    color:#2a2a2a;
    font-size:0.8rem;
}

.ec-price .ec-price__price{
    padding-right:0;
}

.ec-productRole .ec-productRole__price{
    color:#e7020a;
}

a.contact {
    display:block;
    border:1px solid #ccc;
    border-radius:8px;
    padding:.5em;
    font-size:14px;
}

.ec-secHeading h2{
    border-bottom:1px solid #dddddd;
    position:relative;
    padding-bottom:.75em;
    margin-top:0;
    text-align:center;
    font-size:16px;
}

.ec-secHeading h2::before{
    content:'';
    position:absolute;
    background:#2a98ec;
    width:25%;
    height:1px;
    bottom:-1px;
    z-index:2;
    left:0;
}

a.contact i{
    font-size:18px;
    margin-right:3px;
    vertical-align:middle;
}

.price02-default{
    line-height:1.255;
    margin-bottom:.5em;
}

.ec-shelfGrid__item{
  color:#f7941c;
  position: relative;
}

.ec-shelfGrid__item p{
    position: relative;
      padding-top:1em;
     margin-bottom:5px;
}

.ec-shelfGrid__item p::before{
    content:'';
    background:#f7941c;
    position: absolute;
    top:0;
    width:45px;
    height:6px;
}

.ec-shelfGrid__item p.text{
    margin-bottom:.5em;
    display:none;
}

.ec-shelfGrid__item .ec-blockBtn--action{
    padding:.5em .25em;
    line-height: 1.1;
    font-size:15px;
}

.ec-off3Grid .ec-off3Grid__cell{
    width:100%;
}

.ec-off3Grid .ec-off3Grid__cell{
    margin-left:auto;
    margin-right:auto;
}

/************ SP ****************/
@media screen and (max-width: 767px) {
        .ec-footerRole{
        margin-top:2em;
    }
    
    .ec-footerTitle{
    padding:0 0 30px;
    
}
}

.ec-newsRole{
    padding-top:0;
}

.ec-shelfGrid{
    margin-bottom:0;
}

/************ 新着情報 ****************/

.ec-newsRole .ec-newsRole__newsHeading{
    padding-bottom:.2em;
    align-items:center;
    display: block;
}

.ec-newsRole .ec-newsRole__newsTitle{
    font-weight:400;
    color:#2a2a2a;
}

.ec-newsRole .ec-newsRole__newsDate {
    min-width:auto;
    margin-right:10px;
    display: block;
    color:#1f1f1f;
}

.ec-newsRole .ec-newsRole__newsDate{
    font-style: italic;
}

.ec-newsRole .ec-newsRole__newsItem{
    padding:.65em 0;
    border-bottom:1px solid #dfdfdf;
}

.ec-newsRole .ec-newsRole__newsItem:first-child{
    border-top:1px solid #dfdfdf;
}

.col-md-offset-2 {
    margin-left: 0;
}

h1.npsr-title {
    font-size:22px;
    margin-bottom:1em;
}

.news__list{
    padding:15px 0;
    border-bottom:1px solid #ddd;
}

.news__list:first-child{
    border-top:1px solid #ddd;
}

.news__list h2 {
    font-size:16px;
}

/************ SP ****************/
@media screen and (max-width: 767px) {
    
.ec-newsRole .ec-newsRole__newsTitle{
    margin-bottom:0;
}

.ec-newsRole .ec-newsRole__newsDate{
    margin-top:0;
}

.ec-newsRole .ec-newsRole__news{
    max-height:33.33vh;
    overflow-y:auto;
}

}

/************ 表 ****************/

table.about{
border-left:1px solid #ccc;
border-right:1px solid #ccc;
border-top:1px solid #ccc;
width:100%;
}

table.about th{
    width:20%;
    text-align:center;
    color:#2a2a2a;
    background:#f9f9f9;
    border-right:1px solid #ccc;
    border-bottom:1px solid #ccc;
    padding:.75em;
}

table.about td{
    width:80%;
    color:#2a2a2a;
    border-bottom:1px solid #ccc;
    padding:.75em;
}

table.about td.l-border{
    border-left:1px solid #ccc;
}

table.about th.wd50, table.about td.wd50{
    width:50%;
}

.ec-borderedDefs{
    border-top:1px solid #ccc;
}

.ec-borderedDefs dl{
border-left:1px solid #ccc;
border-right:1px solid #ccc;
border-bottom:0;
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content:flex-start;
padding:0;
font-weight:400;
font-size:15px;
}

.ec-borderedDefs dl dt{
      width:20%;
    text-align:center;
    color:#2a2a2a;
    background:#f9f9f9;
    border-right:1px solid #ccc;
    border-bottom:1px solid #ccc;
    padding:.75em;
    display: flex;
flex-direction: column;
flex-wrap: wrap;
justify-content:center;
align-items: center;
}

.ec-borderedDefs dl dd{
    width:80%;
    color:#2a2a2a;
    border-bottom:1px solid #ccc;
    padding:.75em;
    line-height:1.8;
    margin-bottom: 0;
}

@media screen and (max-width: 767px) {
.delivery-wrap{
    overflow-x:auto;
    width:100%;
}
}

table.delivery{
border-left:1px solid #ccc;
border-top:1px solid #ccc;
font-size:12px;
}

table.delivery th{
    text-align:center;
    color:#2a2a2a;
    background:#f9f9f9;
    border-right:1px solid #ccc;
    border-bottom:1px solid #ccc;
    padding:.75em;
    width:8.33%;
}

table.delivery td{
    color:#2a2a2a;
    border-bottom:1px solid #ccc;
    border-right:1px solid #ccc;
    padding:.75em;
    line-height:1.8;
}

/************ SP ****************/
@media screen and (max-width: 767px) {
    
    table.about td, table.about th{
        display:block;
        width:100%;
    }
    
    table.delivery th, table.delivery td{
        padding:.25em;
        width:8.333%;
    }
    
    table.delivery{
        font-size:11px;
        min-width: 760px;
    }
    
    .ec-borderedDefs dl dd, .ec-borderedDefs dl dt{
        display:block;
        width:100%;
    }
    
    .ec-borderedDefs dl dd{
        margin-bottom: 0;
    }
    
    .ec-borderedDefs dl dt{
        border-right:0;
    }
    
    table.about th.wd50, table.about td.wd50{
        display:block;
        width:100%;
}
    
}

/************ お問い合わせ＆営業日カレンダー ****************/

.ec-required {
    background: #fe0000;
    padding: 0.2em 0.75em 0.2em 0.75em;
    color: #fff;
    font-size: 12px;
    margin-left: 0.3em;
    text-align: center;
    border-radius: 1.35em;
    line-height: 1.0;
    display:inline-block;
    max-width:50px;
}

.ec-input textarea, .ec-halfInput textarea, .ec-numberInput textarea, .ec-zipInput textarea, .ec-telInput textarea, .ec-select textarea, .ec-birth textarea{
    color: #2a2a2a;
}

.ec-checkbox label{
    font-weight:400;
}

.ec-blockBtn--cancel{
    font-size:16px;
}

.ec-calendar .ec-calendar__holiday {
    background: #FFF;
    color: #DE5D50 !important;
    background: #ecc6c7;
}

.ec-login, .ec-guest{
    margin-left:auto;
    margin-right:auto;
}

.ec-guest{
    margin-left:15px;
}

/************ ランキング ****************/

p.ec-rankItemRole__listItemTitle{
    margin-bottom:5px;
    line-height:1.55;
    color:#2a2a2a;
    font-weight:600;
}

p.ec-rankItemRole__rank{
    margin-bottom:5px !important;
}

.ec-rankItemRole__list .row .col-md-3:first-child .ec-rankItemRole__rank::before{
    content:'';
    display:block;
    width:60px;
    height:21px;
    background:url(../img/common/icon/gp_ranking001.png)no-repeat;
    background-size:contain;
}

.ec-rankItemRole__list .row .col-md-3:nth-of-child(2) .ec-rankItemRole__rank::before{
    content:'';
    display:block;
    width:60px;
    height:21px;
    background:url(../img/common/icon/gp_ranking002.png)no-repeat;
    background-size:contain;
}

.ec-rankItemRole__list .row .col-md-3:nth-of-child(3) .ec-rankItemRole__rank::before{
    content:'';
    display:block;
    width:60px;
    height:21px;
    background:url(../img/common/icon/gp_ranking003.png)no-repeat;
    background-size:contain;
}

.ec-rankItemRole__list .row .col-md-3:nth-of-child(4) .ec-rankItemRole__rank::before{
    content:'';
    display:block;
    width:60px;
    height:21px;
    background:url(../img/common/icon/gp_ranking004.png)no-repeat;
    background-size:contain;
}


.ec-rankItemRole__list a:hover, .ec-rankItemRole__list a:hover p{
        color: #1783e3;
        text-decoration:none;
}

/**************よくある質問****************/

.accordion {
margin:0 auto;
max-width:100%;
}
.toggle {
display: none;
}
.option {
position: relative;
margin-bottom: 1em;
}
.title,
.content {
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
transform: translateZ(0);
transition: all 0.3s;
}
.title {
border: solid 1px #ccc;
padding: 1em 1em 1em 3em;
background:#fff;
display: block;
color: #412512;
cursor: pointer;
font-weight: bold;
    font-family: 'Zen Old Mincho', serif;
    font-weight:400;
}
.title::after,
.title::before {
content: "";
position: absolute;
right: 1.25em;
top: 1.25em;
width: 2px;
height: 0.75em;
background-color: #999;
transition: all 0.3s;
}
.title::after {
transform: rotate(90deg);
}

.accordion .title .contents::before{
    content:'Q';
    font-size:26px;
    color:#412512;
    position:absolute;
    top: 50%;
  transform: translateY(-50%);
    left:.5em;
    margin-right:10px;
    font-family: 'Zen Old Mincho', serif;
    font-weight:400;
    line-height: 1.0;
}

.content {
max-height: 0;
overflow: hidden;
}
.content p {
margin: 0;
padding: 0.5em 1em 1em;
line-height: 1.5;
}
.toggle:checked + .title + .content {
max-height: 500px;
transition: all 1.5s;
}
.toggle:checked + .title::before {
transform: rotate(90deg) !important;
}

/*****************お知らせ*********************/

.ec-newsRole .ec-newsRole__news{
    border:0;
    padding:0;
}

.ec-layoutRole__footer{
    background:#fff;
}

.ec-footerRole .ec-footerRole__inner img{
    width:auto;
}

.ec-footerTitle__copyright{
    color:#242423;
    font-style: italic;
}

.ec-sliderItemRole .slideThumb img {
    width: 100%;
}

.ec-shelfGrid .ec-shelfGrid__item-image::before, .price02-default::before{
display:none;
}
.ec-shelfGrid .ec-shelfGrid__item-image, .price02-default{
padding-top:0;
color:#121212;
}

.ec-shelfGrid__item span{
    color:#121212;
}

.col-md-8 p.text-right{
    text-align: left;
}