@charset "euc-jp";

/*-----------------------------------------------*/
/*支店用*/
/*-----------------------------------------------*/
* {
    margin: 0;
    padding: 0;
  }
  ul, ol, li {
    list-style: none;
  }
  a, a:hover {
    text-decoration: none;
  }
  img, a img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
  }

#ryoku body *{
  font-family:'Noto Sans JP','Yu Gothic black',sans-serif,'Lato','メイリオ';
  font-size: 4vw;
  letter-spacing:0;
  font-weight: bold;
  box-sizing: border-box;
}
#ryoku a{
color:#222222;
  text-decoration: none;
}

#ryoku {
  width: 100%;
  margin: 0 auto;
}
#ryoku img {
  width: 100%;
  vertical-align: bottom;
}
#ryoku .smp_none {
  display: none;
}

/*------------------------基本------------------------*/

#ryoku{ max-width: 750px; margin:0 auto;  width: auto;}
#ryoku ul.nav li {float: left;width: 31%;}
#ryoku section{clear: both;}



#ryoku ul {
    font-size: 0;
    vertical-align: top;
}

#ryoku footer {
    margin: 0;
    padding: 0;
}


#ryoku .main{
  overflow: visible;
  max-width: 750px;
  padding: 0;
  margin: 0 auto;
  background: #dfe8d5;
  color: #fff;
}
/*--------------------------------------
top
---------------------------------------*/
#ryoku .container {
  display: grid;
  width: 60%;
  height: 400px;
  margin: 0;
}

#ryoku .slider {
  display: flex;
  flex-direction: column-reverse;
  overflow: hidden;
}

#ryoku .slider-list {
  display: flex;
  flex-direction: column-reverse;
  margin: 0;
  padding: 0;
  align-items: center;
  animation: slideShow 20s infinite linear;
  list-style: none;
}

#ryoku .slider-item {
  width: 100%;
  height: 150px;
}

#ryoku .slider-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  margin: 0 0.5rem;
}


@keyframes slideShow {
  0% {
      transform: translateY(0%);
  }

  100% {
      transform: translateY(100%);
  }

}
/*--------------------------------------
top
---------------------------------------*/
#ryoku .top {
  margin-bottom: 10%;

}

#ryoku .top_ttl {
  position: relative;
  z-index: 99;
  margin-top: -90%;
  width: 60%;
  left: 38%;
}

#ryoku .top_lead {
  padding: 5% 3%;
  margin: 0 auto;
  text-align: left;
  width: 100%;
  position: relative;
  overflow: hidden;
}
#ryoku .content_top{
  padding-top: 2%;
  margin: 0 auto 2%;
  text-align: left;
  width: 98%;
}
#ryoku .top_lead_copy {
  position: relative;
  z-index: 999;
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 10px;
  margin-top: 5px;
  color: #2f2f2f;
  font-family: 'Shippori Mincho B1', '游明朝体', 'Yu Mincho', 'YuMincho', 'serif', 'Noto Sans Japanese';
}
#ryoku .top_lead_syoukai {
  position: relative;
  z-index: 999;
  font-size: 1.2rem;
  font-weight: 700;
  margin: 10px auto 5px;
  text-align: center;
  color: #00633d;
  font-family: 'Shippori Mincho B1', '游明朝体', 'Yu Mincho', 'YuMincho', 'serif', 'Noto Sans Japanese';
}

#ryoku .top_lead_txt {
  position: relative;
  z-index: 999;
  font-size: 1.2rem;
  line-height: 1.7;
  letter-spacing: 0.1rem;
  color: #2f2f2f;
  font-family: 'Shippori Mincho B1', '游明朝体', 'Yu Mincho', 'YuMincho', 'serif', 'Noto Sans Japanese';

}
#ryoku .top_bk {
  position: absolute;
  overflow: hidden;
  width: 70%;
  left: 40%;
  top: 30%;
}

/*--------------------------------------
content
---------------------------------------*/
#ryoku .content {
  position: relative;
  width: 100%;
  overflow: hidden;
  margin-bottom: 10%;
}

#ryoku .contentTop {
  width: 100%;
  position: relative;
  margin: 0 auto;
}

#ryoku .contentTop_imgBox {
  position: relative;
  width: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
  /*right: 50%;*/
}


#ryoku .contentTop_imgBox:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  background: #658243;
  transition: 1.7s cubic-bezier(.05, .87, .27, 1);
}

#ryoku .isPlay:before {
  transform: translate3d(100%, 0, 0);
}

#ryoku .main_ti{
  width: 60%;
  margin: 0 auto;
}
#ryoku .ryoku_bn {
  width: 100%;
  margin: -2vw auto 10vw;
}
#ryoku .mb_150 {
    margin-bottom: 10vw; 
}

/*-----------------------------------------------*/
/*全体枠*/
/*-----------------------------------------------*/
#ryoku section {
  text-align: center;
  padding: 1rem 0 1rem 0;
  border-bottom:solid #a8c39f94 2px;
}

#ryoku h4{
  color:#333333;
  font-size:1.5rem;
  padding:0 0 5px 0;
  font-weight: bold;
}
#ryoku h4.sum{
  font-size:3.5rem;
  padding:0 0 5px 0;
  margin-bottom: 0;
}

/* 共通 商品
================================ */
#ryoku .item_block{
  width: 100%;
  margin: 0 auto;
  padding: 3vw;
  /* margin-bottom: 5vw; */
} 

#ryoku .item_block ul{
  display: flex;
  flex-wrap: wrap;
  gap:2vw 1.2vw;
  padding: 0.8vw 0;
} 


#ryoku .item_block ul li a{
  /* position: relative; */
  display: flex;
  justify-content: center;
  align-items: center;
  justify-content: space-between;
  padding: 2vw;
  background-color: #f3f4f1;
  /* z-index: 0; */
} 

#ryoku .item_block dl dt{/*商品名*/
  font-size: 3.5vw;
  text-align: center;
  font-weight: bold;
  margin: 2% 0;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 9vw;
  line-height: 4vw;
}

#ryoku .item_block	dl dd.point{/*ポイント*/
  display: flex;
  align-items: center;
  margin: 2% 0;
  padding: 2% 0 3%;
  font-size: 4vw;
  background-color: #cc0001;
  color: #fff65f;
  font-weight: bold;
  height: 12vw;
  justify-content: center;
  text-align: center;
}

/*1カラムの時だけ========*/
#ryoku .item_block ul.col_1 li a img{
  width: 50%;
  margin-right: 15px;
}

#ryoku .medama_item ul.col_1 li a img{
  width: 100%;
  margin-right: 0%;
}

/*目玉商品が画像の時に適用========*/
#ryoku .item_block ul.col_1 li a dl{
  width: 50%;
}

/*2カラムの時だけ========*/
#ryoku .item_block ul.col_2 li a{
  flex-direction: column;
}

#ryoku .item_block ul.col_2  li a dl{
  width: 100%;
}


/* 共通 カラム
================================ */
#ryoku ul[class^="col_"]{
  display: flex;
  flex-wrap: wrap;
  gap: 10px 1%;
}

#ryoku ul.col_1 > li{
  width:100%;
  /*margin-bottom: 10px;*/
}

#ryoku ul.col_2 > li{
  width: calc(calc(100% - 2%) / 2);
  position: relative;
}.top_lead_txt

#ryoku .item_block ul{
  flex-wrap: wrap;
  width: 100%;
  margin: 0 auto;
  display: flex;
        justify-content: center;
        padding: 1vw;
  /* padding-bottom: 4%; */
} 

#ryoku .item_block ul li a{
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  justify-content: space-between;
  padding: 4%;
  background-color: #fff;
  z-index: 0;
} 



#ryoku .item_block	dl dd.point{/*ポイント*/
  display: flex;
          position: absolute;
          align-items: center;
          justify-content: center;
          margin: 2% 0;
          padding: 2% 0;
          width: 300px;
          top: -50px;
          left: 520px;
} 

/*1カラムの時だけ========*/
#ryoku .item_block ul.col_1 li a img{
  width: 50%;
  margin-right: 15px;
}

#ryoku .medama_item ul.col_1 li a img{
  width: 100%;
  margin-right: 0%;
}
#ryoku .item_block ul.col_1 li a dl dt{
margin: 10% 0 5%;
}
#ryoku .item_block ul.col_1 li a{
  padding: 2%;
} 
/*目玉商品が画像の時に適用========*/
#ryoku .item_block ul.col_1 li a dl{
  width: 50%;
}

/*2カラムの時だけ========*/
#ryoku .item_block ul.col_2 li a{
  flex-direction: column;
}

#ryoku .item_block ul.col_2  li a dl{
  width: 100%;
}


/*価格プロ====================*/
#ryoku .prdisp-price span:first-child{/*価格*/
  display: none;
}

#ryoku .item_block .price_block{
  display: flex;
  justify-content: center;
  color: #222;
  text-align: center;
  font-weight: bolder;
  align-items: flex-end;
}

#ryoku .item_block .price_block .value{
  font-family: 'Lato';
  font-weight: bolder;
  /* letter-spacing: 2px; */
  font-size: 8vw;
  margin-bottom: -0.5vw;
}

#ryoku .item_block .price_block span{
font-family: 'Noto Sans JP';
font-size: 5vw;
letter-spacing: 0px;
font-weight: bolder;
/* margin-bottom: 1vw; */
} 

#ryoku .item_block .price_block span.real{
font-size: 3vw;
padding-bottom: 1vw;
} 



#ryoku .item_block .price{
  margin-bottom: -5px;
} 

#ryoku .item_block	dl .btn{/*ご購入はこちら*/
  display: flex;
          align-items: center;
          justify-content: center;
          margin: 1vw 0 0 0;
          height: 9vw;
          border-radius: 50px;
          color: #fff;
          font-size: 3.5vw;
          background-color: #333;
          border: solid 2px #333;
} 

#ryoku .item_block	dl .btn::after{
  position: absolute;
  right: 12%;
  top:50%;
  transform: translate(50%,-50%);
  font-family:'Material Icons';
  content: "\e5cc";
} 

.anchor {
  padding-top: 50px; /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -50px; /* heightと同じ分のネガティブマージン */
}
.anchor100 {
  padding-top: 100px; /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -100px; /* heightと同じ分のネガティブマージン */
}




/*ナビゲーション ここから
================================================*/
#ryoku #nav {
  position: fixed;
  /* height: calc(100% - 141px); */
  z-index: 500;
  /* top: 0;
  left: 0;
  height: 100%;
  background: #8b0604;
  transition: 0.3s;
  box-sizing: border-box;
  width: var(--contents-padding-left); */
}
#ryoku #nav .gray-back{
  position: fixed;
  top: 0;
  right: -100%;
  width: 100%;
  height: 100%;
  z-index: 1;
  background-color: #5656566b;
}
#ryoku #nav .gray-back.active{
  position: fixed;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
#ryoku #nav .g-nav{
  position: fixed;
  width: var(--contents-padding-left);
  height: 100%;
  top: 0%;
  /* overflow-y: scroll; */
  -ms-overflow-style: none;
  scrollbar-width: none;
  z-index: 5;
  box-sizing: border-box;
  padding: 2% 2%;
}
#ryoku #nav .g-nav.g-nav__left {
  left: 0;
  display: flex;
  align-items: center;
}


/*アクティブクラスがついたら位置を0に*/
#ryoku #nav .g-nav.g-nav__left.panelactive{
  transition: .3s;
  right: 0;
}


/* ナビゲーション ryoku */
#ryoku #nav .g-nav__left .nav-img.left {
  max-width: 150px;
  margin: 7% auto 0;
  display: flex;
  position: absolute;
  width: 150px;
  height: 150px;
  bottom: 10px;
}
#ryoku #nav .g-nav__right .nav-img.right-tit {
  position: absolute;
  right: 2%;
  top: -50%;
  width: 18%;
  margin: 0 auto;
}

#ryoku #nav .g-nav__right .nav-img.right-bottom {
  position: absolute;
  right: 79%;
  top: 76%;
  margin: 0 auto;
}


/*===============================
追加CSS
================================*/
/* キャンペーンのタイトル */
.point_ttl2 {
    position: relative;
    text-align: center;
    font-size: 1.2rem;
    margin: 0 auto;
    padding: 10px 0;
    color: #343a2e;
    font-weight: 500;
}
.coupon img
{
  margin: 0 auto 10%;
  padding: 0 1%;
}
/*-----------------------------------------------*/
/*トップページ*/
/*-----------------------------------------------*/
#ryoku .pagetop {
  position: fixed;
  bottom: 20px;
  right: 20px;
z-index: 3;
}
#ryoku .pagetop a {
display: flex;
justify-content: center;
  align-items: center;
  text-align: center;
vertical-align: middle;
color: #fff;
font-size: 12px;
font-weight: 700;
background-color: #202020c7;
border-radius: 80px;
width:70px;
height:70px;
  line-height: 1.3em;
  transition: 0.3s all;
}
#ryoku .pagetop a:hover{
background-color: #93a065;
color: #fff !important;
transform: translateY(-2px);
}

/*-----------------------------------------------*/
/*アニメーション*/
/*-----------------------------------------------*/

#ryoku .animated {
  animation-duration: 1s;
  animation-fill-mode: both;
}



@keyframes flash {
  from, 50%, to {
    opacity: 1;
  }

  25%, 75% {
    opacity: 0;
  }
}


#ryoku .swing {
  transform-origin: top center;
  animation-name: swing;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

#ryoku .fadeIn {
  animation-name: fadeIn;
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    transform: translate3d(0, -100%, 0);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

#ryoku .fadeInDown {
  animation-name: fadeInDown;
}

@keyframes fadeInDownBig {
  from {
    opacity: 0;
    transform: translate3d(0, -2000px, 0);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

#ryoku .fadeInDownBig {
  animation-name: fadeInDownBig;
}


@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translate3d(0, 100%, 0);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

#ryoku .fadeInUp {
  animation-name: fadeInUp;
}

@keyframes fadeInUpBig {
  from {
    opacity: 0;
    transform: translate3d(0, 2000px, 0);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

#ryoku .fadeInUpBig {
  animation-name: fadeInUpBig;
}

@keyframes fadeOutLeft {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    transform: translate3d(-100%, 0, 0);
  }
}
