/* カスタマイズ用CSS */

@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);

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;
}

a:focus, a:hover {
    color: #1783e3;
    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;
}

.ec-blockTopBtn{
    width:40px;
}

.ec-cartNaviNull .ec-cartNaviNull__message{
    font-size:15px;
}

.ec-cartNaviNull .ec-cartNaviNull__message p{
        line-height:1.5;
}

.ec-sliderItemRole .slideThumb img{
        width: auto;
    object-fit: contain;
}

.ec-shelfGrid .ec-shelfGrid__item img{
    min-height:180px;
        object-fit: contain;
}

.ec-price .ec-price__tax {
    font-size: 0.425em;
}

ul.disc li{
    text-indent: -1.2em;
    padding-left: 1em;
}

ul.disc li:not(:last-child){
    margin-bottom:1em;
    
}

.slick-slide img {
    display: inherit;
}

/************ ヘッダー ****************/

.ec-layoutRole__header{
    position:relative;
    border-top:8px solid #ddd;
    margin-bottom:2em;
}

.ec-layoutRole__header:before{
    content:'';
    width:10vw;
    background: #121212;
    position:absolute;
    left:0;
    top:-8px;
    height:8px;
    z-index:2;
}

.ec-headerNaviRole img {
    width: auto;
}

.ec-headerNaviRole a{
    color:#000;
}

.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;
}

.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:auto;
}

@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:#565555;
}

.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 a{
    color:#002070;
}

.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;
}

@media screen and (min-width: 768px) {
    .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) {
    
    .ec-sliderRole{
        margin-bottom: 2.5em;
    }
    
    h1{
        font-size: 1.75em;
    }
    
    .ec-headerTitle__title{
        width:100%;
    }
    
    .ec-headerNaviRole .ec-headerNaviRole__left{
        width:auto;
    }
    
    .ec-headerNaviRole .ec-headerNaviRole__right{
        margin-right:0px;
        margin-top: 30px;
        width:100%;
    }
    
    body.have_curtain{
         overflow-y: hidden;
    }
    
    .ec-drawerRole.is_active{
            overflow-y: scroll;
            height: 100vh;
    }
    
    .ec-layoutRole__header{
        padding-top:.5em;
        margin-bottom:.5em;
    }
    
    .ec-headerNaviRole .ec-headerNaviRole__left h1{
        margin-bottom:0;
        margin-top:0;
    }
    
    .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:first-child a{
        border-top: 1px solid #7d7d7d;
    }
    
}

/************ ヘッダー ****************/

/************ ヘッダーナビゲーション ****************/

.ec-headerRole{
    padding-top:0;
}

/************ SP ****************/
@media screen and (max-width: 767px) {
    .ec-headerRole{
        display:none;
    }

    .ec-headerNavSP{
        left: 88.5%;
    }
}

 ul.header-nav{
     list-style:none;
     margin:auto;
     padding:1em 0 1.5em;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    max-width:90%;
    justify-content:center;
 }
 
 ul.header-nav li{
     position:relative;
     line-height:1.0;
     border-right:1px solid #2a2a2a;
     padding:0;
     margin:0;
     width:calc(100% / 4);
 }
 ul.header-nav li:first-child{
     border-left:1px solid #2a2a2a;
 }
  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;
  }
  
  .ec-headerTitle .ec-headerTitle__title a:hover {
    color:#2a98ec;
}
  
  .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:#505050;
  }
  
    .ec-itemNav__nav li:last-child::after{
      content:'';
      position:absolute;
      height:60%;
      width:1px;
      right:0px;
      top: 50%;
      transform: translateY(-50%);
      background:#505050;
  }
  
      .ec-itemNav__nav li:last-child a::after{
      content:'';
      position:absolute;
      height:60%;
      width:1px;
      right:1px;
      top: 50%;
      transform: translateY(-50%);
      background:#505050;
  }
  
  .ec-categoryNaviRole, .ec-itemNav__nav, .ec-itemNav__nav li a{
      background: #121212;
  }
  
   .ec-itemNav__nav li a:hover{
     background:#898989;
 }
  
  .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:center;
    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:none;
      width:30px;
      height:30px;
      vertical-align: middle;
      margin-right:5px;
    }
  
  .ec-itemNav__nav li:first-child a::before{
      background:url(../img/common/icon/audio.svg)no-repeat;
      background-size:contain;
}
  .ec-itemNav__nav li:nth-of-type(2) a::before{
      background:url(../img/common/icon/air.png)no-repeat;
      background-size:contain;
}

  .ec-itemNav__nav li:nth-of-type(3) a::before{
      background:url(../img/common/icon/kitchen.svg)no-repeat;
      background-size:contain;
}

  .ec-itemNav__nav li:nth-of-type(4) a::before{
      background:url(../img/common/icon/life.svg)no-repeat;
      background-size:contain;
      width:20px;
}

  .ec-itemNav__nav li:nth-of-type(5) a::before{
      background:url(../img/common/icon/health.svg)no-repeat;
      background-size:contain;
}
.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:5vh;
}


@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-rankItemRole__list .row{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content:flex-start;
    }
    
    .ec-rankItemRole__list .row .col-xs-6 {
    width: calc(98% / 2);
    float:none;
    margin-right:2%;
    margin-bottom:1em;
    }
    
    .ec-rankItemRole__list .row .col-xs-6:nth-of-type(even){
        margin-right:0;
    }
    
    .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: #656565;
    }
    
    .ec-layoutRole .ec-layoutRole__right{
        display:block;
        width:100%;
    }
    
}


.ec-itemNav::after{
bottom:0;
right:-2vw;
}

.ec-login .ec-login__link{
    font-size:13px;
}

/************ レイアウト ****************/

.ec-layoutRole .ec-layoutRole__contents{
    justify-content:space-between;
}


.Flex-wrap{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content:space-between;
}

.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;
}

/************ SP ****************/
@media screen and (max-width: 767px) {
    
    .Flex-wrap .Hurf__cont{
    width:100%;
}

    .Flex-wrap .Hurf__cont:not(:last-child){
   margin-bottom:2em;
}

.ec-shelfGrid .ec-shelfGrid__item{
    margin-bottom:1em;
}

.ec-shelfGrid .ec-shelfGrid__item dl{
    margin-bottom:0;
}

.ec-shelfGrid .ec-shelfGrid__item p{
    font-size:13px;
    margin-bottom:5px;
    line-height:1.45;
}
    
}

/************ メインコンテンツ ****************/
.ec-layoutRole .ec-layoutRole__contents{
        max-width: 1130px;
    
}

.ec-sliderRole{
        max-width: 1130px;
        padding-left:15px;
        padding-right:15px;
}

/************ 見出し ****************/

h2{
    font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    font-weight:500;
    font-size:19.8px;
}

 h2.bg, h2.bk-bg{
    background: #121212;
    color:#fff;
    font-size:19.8px;
    position:relative;
    margin-bottom:1em;
    padding:.5em .5em .5em 1.25em;
    border-top:5px solid #999;
    line-height:1.5;
}

h2.bk-bg{
    background: #394148;
    border-top:5px solid #5e5f5f;
}

h2.bg::after, h2.bk-bg::after{
    content:'';
    position:absolute;
    background:#fff;
    border-radius:1.46em;
    height:60%;
    left:.5em;
    top: 50%;
    transform: translateY(-50%);
    width:4px;
}

h2.bg::before, h2.bk-bg::before{
    content:'';
    background:#484a4c;
    width:7vw;
    height:5px;
    top:-5px;
    left:0;
    position:absolute;
}

h2.bk-bg::before{
    background:#999;
}

h2.bg span, h2.bk-bg span{
    font-size:14px;
    color:#a0a0a0;
    position:absolute;
    right:5px;
    bottom:5px;
    font-weight:normal;
}

h2.bk-bg span{
    color: #5e5f5f;
}

h2.Center-title{
    font-size:22px;
    text-align:center;
    color:#2a2a2a;
    margin-bottom:1em;
    line-height:1.8;
}

h2.Center-title span{
    display:block;
    font-size:14px;
    font-weight:300;
    color:#9abee2;
}

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: #121212;
    border-radius:1.46em;
    height:60%;
    left:.5em;
    top: 50%;
    transform: translateY(-50%);
    width:4px;
}

.ec-heading-bold{
  padding-bottom:.75em;
  border-bottom: 1px solid #121212;
  margin-top:2em;
  padding-left:.25em;
}

/************ ショップガイド ****************/

.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: #121212;
    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:#2a2a2a;
}
/************ 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{
    margin-top:1em;
    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 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;
}

.product-box{
    text-align: center;
    color:red;
    border:solid 1px black;
    padding:10px;
    width:95%;
    margin: 0 auto;
}
.product-box p{
    margin-bottom:0; 
}
.product-box p:last-child{
    color:black;
}
/************ SP ****************/
@media screen and (max-width: 767px) {
        .ec-footerRole{
        margin-top:2em;
    }
    
    .ec-footerTitle{
    padding:0 0 30px;
    
}

.ec-productRole .ec-productRole__description{
    margin-bottom:2em;
}
.product-box{
    text-align: left;
    font-size:14px;
}
.product-box p{
    margin-bottom:15px; 
}
.product-box p:last-child{
    margin-bottom: 0;
}


}

.ec-newsRole{
    padding-top:0;
}

.ec-shelfGrid{
    margin-bottom:0;
}

/************ 新着情報 ****************/

.ec-newsRole .ec-newsRole__newsHeading{
    padding-bottom:.2em;
    align-items:center;
}

.ec-newsRole .ec-newsRole__newsTitle{
    font-weight:400;
    color:#2a2a2a;
}

.ec-newsRole .ec-newsRole__newsDate {
    min-width:auto;
    margin-right:10px;
}

.ec-newsRole .ec-newsRole__newsItem{
    padding:5px 0;
}

.ec-newsRole .ec-newsRole__newsItem:not(:last-of-type){
    border-bottom:none;
}

.col-md-offset-2 {
    margin-left: 0;
}

h1.npsr-title {
    font-size:17px;
}

.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;
}

@media screen and (max-width: 767px) {
.delivery-wrap{
    overflow-x:auto;
    width:100%;
}

table.about td.l-border{
    border-left:none;
}

}

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.about th{
        border-right:none;
    }
    
    table.about td{
        border-left:none;
    }
    
    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 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-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-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-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;
}

/************ SP ****************/
@media screen and (max-width: 767px) {
    
    p.ec-rankItemRole__listItemTitle{
        font-size:14px;
    }
    
}

/************ 広告枠 ****************/

.banner-wrap img{
    max-width:100%;
}

.banner-wrap p{
    margin-top:2em;
}

.ec-role img {
    width: 100%;
    min-height: 150px;
    object-fit: contain;
}