@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;500;600;700;800&family=Noto+Sans+JP:wght@400;500;700;900&family=Noto+Serif+JP:wght@400;500;600;700;900&display=swap');

body{
    font-family: 'Noto Serif JP', serif;
    font-weight: 400 !important;
    line-height: 1.8;
    color: #35444c;
    overflow-x: hidden;
    display:flex;
    flex-direction: column;
    height:auto !important;
    min-height:100vh;
    justify-content: flex-start;
    font-size:16px;
}

body,html{margin: 0; padding: 0;}
main{background: url(../img/bg_recommend.jpg) repeat-y top / contain;}

ul,li{list-style: none;}
img{border: none; vertical-align: middle;}



/* body{background: url(../img/bg_test05.jpg) center / contain;} */
img{vertical-align: bottom;}
header .offcanvas {background-color: #35444c; color: #fff;}
header .navbar{flex-wrap:nowrap; background-color:#fff;}
header .btn-right{display:none;}
header .navbar-brand img{width:150px;}
header .navbar-light .navbar-nav .nav-link{color:#fff !important; font-weight:700;}
header .navbar-nav{font-family: 'Shippori Mincho', serif; }
header .offcanvas-header{justify-content:flex-end;}
header .offcanvas-header .btn-close{opacity: 1; background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%2342634b'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat; margin-left:1rem; border-radius:50%;background-color:#fff;padding: .8rem;}
header .offcanvas-header > img{margin:0 30px;width:300px;}
header .offcanvas-body > p{text-align:center; padding-bottom:5px; border-bottom:1px solid #fff;}
header .offcanvas-body ul{list-style-type:none; padding:0;}
header .offcanvas-body ul a{color:#fff; text-decoration:none; }
header .offcanvas-body ul li.nav-logo a{-webkit-transition: all .3s; transition: all .3s;}
header .offcanvas-body ul li.nav-logo a:hover{opacity: 0.7;}
@media (min-width: 992px) {
  header .navbar-brand img{width:180px;}
}
@media (max-width: 1200px) {
  header nav{padding-top:.3rem; padding-bottom:.3rem;}
  header nav > div{flex:1;}
  header nav > div > h1{flex:1;}
    header .offcanvas-body ul{display:flex; flex-wrap:wrap; flex-direction: row;}
    header .offcanvas-body ul li{flex-basis:50%;}
}
@media (min-width: 1200px) {
    header .navbar-light .navbar-nav .nav-link{color:#333!important; position:relative;}
    header .navbar-light .navbar-nav .nav-link:after{ content:""; position: absolute; left: 0; bottom:2px; width: 100%; height: 2px; transform: scaleX(0); transition: .3s; opacity: 0; }
    header .navbar-light .navbar-nav .nav-link:hover:after{background: #35444c; opacity: 1; transform: scaleX(1); }
    header .btn-right{background-color:#35444c; align-self:stretch; display:flex;}
    header .btn-right a{display:flex; align-items:center; justify-content:center; width:90px; -webkit-transition: all .3s; transition: all .3s;}
    header .btn-right a:hover{background: #4e3308;}
    header .navbar-expand-xl .offcanvas{flex-direction: row;height:90px;}
    header .navbar-expand-xl .offcanvas-body{flex:1;}
    header .btn-right img{width:40px; }
    header .navbar-nav img{margin:0 30px; width: 180px;}
    header .navbar-nav .cart_img{width: 50px;}
    header .offcanvas-body ul.navbar-nav{display:flex; flex:1; align-items:center; justify-content:center; margin-left:90px;}
    header .offcanvas-body .searchform,
    header .offcanvas-body > p{display:none;}
    header .offcanvas-body ul:not(.navbar-nav){display:none;}
    header .navbar-nav{justify-content:center;}
}


header .navbar-toggler {
    display:flex;
    position:relative;

    z-index:10;
    padding:0;
    border: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    box-shadow: none !important;
    width: 38px;
    height: 38px;
    overflow:hidden;
    padding:5px 0px;
    align-items:center;
    justify-content:space-between;
    -webkit-transition: all .3s; transition: all .3s;
  }

  header .navbar-toggler img{width: 38px;}
  /* header .navbar-toggler:hover{background-color:#932e28;} */


  header .js-scroll-nav{position:fixed; top:0 !important; right: 0; left: 0; z-index: 1030; width:100%;}
  .nav-cart img{display: none;}

  @media (min-width:1200px) {
    .nav-cart img{display: block;}
    a.nav-cart:hover{opacity: .8; transition: .8s;}
  }


/* swiper
----------------------------------------------------------------------------------------------------------------------*/
  .swiper-container{position:relative;}
  /* pr */
  .swiper{ width: 100%; height: 100%; text-align: center; background: url(../img/top_cate_bg.jpg) center / cover; padding-bottom: 3rem;}
   .swiper-pagination-bullet{width: 15px; height: 15px; background-color: #35444c;  margin: 0 7px!important;}
  .swiperPR a:hover img{opacity: 0.7; transition: 0.8s ;}
  .swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: -45px;
  }
  @media (min-width:768px) {
    .swiper{padding-bottom: 3rem;}

  }
  @media (min-width:992px) {
    .swiper-pagination-bullet{width: 18px; height: 18px; margin: 5px;}
  }


  .swiper-container-fade.swiper-container-free-mode .swiper-slide {
    transition-timing-function: ease-out;
}
.swiper-container-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity;
}
.swiper-container-fade .swiper-slide .swiper-slide {
    pointer-events: none;
}
.swiper-container-fade .swiper-slide-active, .swiper-container-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
}
/* 各block
----------------------------------------------------------------------------------------------------------------------*/
  section > div{padding-top: 6rem; padding-bottom:4rem;}
  @media (min-width: 768px) {
    section > div{padding-bottom:6rem;}
  }
  @media (min-width: 992px) {
    section > div{padding-top: 6rem; padding-bottom:6rem;}
  }



/* 商品カテゴリー
----------------------------------------------------------------------------------------------------------------------*/
ul.area-category-list{margin:0 -5px; flex-wrap:wrap; display:flex; list-style-type:none; padding:0;}
ul.area-category-list li{flex:0 0 calc(50% - 10px); margin:0 5px 5px; display:flex;}
ul.area-category-list li span{font-size:.8rem; font-family: 'Sawarabi Gothic', sans-serif; font-weight: 600; transform: rotate(0.03deg);}
ul.area-category-list a{color:#49280d; text-decoration:none; display:flex; flex:1; justify-content:flex-start; align-items:center;background-color:#fff; min-height:60px; border-radius:5px; padding:.5rem; -webkit-transition: all .3s; transition: all .3s;}
ul.area-category-list a:hover{background-color: #35444c; color: #fff; }
ul.area-category-list a img{width:50px; margin:0 10px 0 0;}

@media (min-width:768px) {
    ul.area-category-list li{flex:0 0 calc(33.33% - 10px);}
}
@media (min-width:992px) {
    ul.area-category-list{margin:0 -10px; justify-content: center;}
    ul.area-category-list li{margin:0 10px 10px; text-align:center; flex:0 0 calc(14.28% - 20px);}
    ul.area-category-list a{flex-direction: column; justify-content:flex-end; min-height:inherit; padding:.5rem 0;}
    ul.area-category-list a img{/*width:auto;*/ width:60px; margin:0 0 5px;}
    div.area-category ul.area-category-list a{background-color:transparent;}
    ul.area-category-list a:hover{background-color: #fff; color: #49280d; opacity: .7;  transition: .7s;}

  }

@media (min-width:1400px) {
    div.area-category ul.area-category-list li{margin:0 15px; flex:0 1 auto;}
}


/* 金額から探す */

ul.area-category-price{list-style-type:none; padding:0;}
ul.area-category-price li{margin:0 0 7px; }
ul.area-category-price a{ font-family: 'Sawarabi Gothic', sans-serif; font-weight: 600; transform: rotate(0.03deg); text-decoration:none; padding:1rem; border-radius:30px; color:#49280d; background-color:#fff;text-align:center; display:block; -webkit-transition: all .3s; transition: all .3s;}
ul.area-category-price a:hover{background-color:#35444c; color:#fff; }
@media (min-width:992px) {
      ul.area-category-price{margin:0 -10px; display:flex; flex-wrap: wrap;}
    ul.area-category-price li{margin:0 10px 10px; text-align:center; flex:0 0 calc(25% - 20px);}
    ul.area-category-price a{flex:0 0 calc(25% - 20px);}


}

/* TOPの白石説明
----------------------------------------------------------------------------------------------------------------------*/
.top_commentary{text-align: center; background: #fbf2d2; padding: 1rem;}
.top_commentary img{width: 100%; text-align: center; max-width: 1200px;}

@media (min-width:1200px) {
  .top_commentary img{width: 85%;}
}
@media (min-width:1400px) {
  .top_commentary img{width: 65%;}
}

/* 商品
----------------------------------------------------------------------------------------------------------------------*/
.item-list img{margin-bottom:1rem; -webkit-transition: all .3s; transition: all .3s; border:1px solid #eee}
.item-list a:hover img{opacity: 0.7;}
.item-list a{text-decoration:none; display:block; color:#333;  font-family: 'Noto Sans JP', sans-serif;}
.item-list h3{text-align:left; font-size:1.2rem; margin:0 0 .5rem; font-family: 'Noto Sans JP', sans-serif; font-weight:700;}
.item-list p{margin:0 0 .5rem;}
.item-list p:last-child{margin:0; text-align:right; /*値段の表示する時はこれを消してね→*/display:none;}
.item-list strong{color:#932e28; font-size:1.2rem; font-family: 'Noto Serif JP', serif;}

/* 各返礼品見出し */

ul.rec_list li a{text-decoration: none; color: #000;}
.rec_contents{max-width: 1400px; margin: 0 auto;}
ul.rec_list img{width: 100%;}
ul.rec_list{display: flex; flex-flow: wrap; justify-content: center; padding-left: 0;}
ul.rec_list li{flex-basis: calc(40% - 10px); margin-bottom: 20px;}
ul.rec_list li:nth-child(even){margin-left: 30px;}
ul.rec_list li p{margin: .5rem auto 1rem; line-height: 1.5rem; font-family: 'Noto Sans JP', sans-serif; }
ul.rec_list li a{text-decoration: none; color: #3f3c3c;}
ul.rec_list li a:hover{opacity: 0.7; transition:1s;}

.items_headline_sp{display: block; margin-top: 6rem; margin-bottom: 3rem;}
.items_headline_sp img{width: 100%;}
.items_headline{display: none;}

.more_btn{text-align: center; margin: 2rem auto 0;}
.more_btn img{ width: 320px; border-radius: 30px;}
.more_btn a:hover{opacity: .8; transition:1s;}
@media (min-width:768px) {
ul.rec_list li p{font-size: 1.2rem;}
.items_headline_sp{margin-top: 7rem;}
}
@media (min-width:992px) {
  .items_headline img{width: 100%;}
  .items_headline_sp{display: none;}
  .items_headline{display: block; text-align: center; margin-top: 8rem; margin-bottom: 3rem;}

.items_headline img{width: 100%; max-width: 932px; border-radius: 30px;}
.rec_contents{max-width: 992px; margin: 0 auto;}
  ul.rec_list {
    flex-flow: nowrap;
    padding-left: 32px;
  }
ul.rec_list li {
  padding-right: 30px;
  width: 200px;
}
ul.rec_list li:nth-child(odd) {
    margin-right: -30px;
}
.more_btn{margin: 3rem auto 0;}
.more_btn img{ width:400px;}
}
@media (min-width:1200px) {
  .items_headline img{max-width: 1040px; border-radius: 30px;}
.rec_contents{max-width: 1100px; margin: 0 auto;}
}

@media (min-width:1400px) {
  .items_headline{margin-top: 10rem;}
  .items_headline img{width: 100%; max-width: 1340px;}
  .rec_contents{max-width: 1400px; margin: 0 auto;}
  .more_btn img{ width: 400px;}
}


/* サイドバナー
----------------------------------------------------------------------------------------------------------------------*/


@media (min-width: 992px) {
#tab01,#tab02{
  display: block;
}
#tab03,#tab04{
  display: none;
}
.tab_ban_right,.tab_ban_left{
  display: block;}


.tab_ban_right {
width: 380px;
height: 180px;
position: fixed !important;
position: absolute;
right: -300px;
z-index: 99;
}


.tab_ban_right a {
display: block;
width: 100%;
height: 100%;
}

.tab_ban_right:hover {
width: 380px;
right: 0;
transition: all .5s;
}


.tab_ban_right02 {
  width: 380px;
  height: 250px;
  position: fixed !important;
  position: absolute;
  right: -300px;
  z-index: 99;
  }


  .tab_ban_right02 a {
  display: block;
  width: 100%;
  height: 100%;
  }

  .tab_ban_right02:hover {
  width: 380px;
  right: 0;
  transition: all .5s;
  }

#tab01 {
background: url(https://www.rakuten.ne.jp/gold/f042064-shiroishi/img/hp/right_yamada_bnr01.jpg) 0 0 no-repeat;
top: 100px;
}

#tab02 {
background: url(https://www.rakuten.ne.jp/gold/f042064-shiroishi/img/hp/right_osusume_bnr01.jpg) 0 0 no-repeat;
top: 300px;
}

#tab03 {
  background: url(https://www.rakuten.ne.jp/gold/f042064-shiroishi/img/hp/right_yamada_bnr02.jpg) 0 0 no-repeat;
  top: 150px;
  }

  #tab04 {
  background: url(https://www.rakuten.ne.jp/gold/f042064-shiroishi/img/hp/right_osusume_bnr02.jpg) 0 0 no-repeat;
  top: 400px;
  }
}

@media (min-width: 1500px) {
  #tab01,#tab02{
    display: none;
  }
/* #tab01{top: 450px;}

#tab02{
  top: 650px;
} */
#tab03,#tab04{
  display: block;
}
#tab03{top: 200px;}

#tab04{
  top: 480px;
}
}

/* レフトバーバナー */
ul.product_contents_side_list_bnr{position: relative; display: block; padding-left: 0 !important; width: 250px; margin-bottom: 0; list-style: none;}
ul.product_contents_side_list_bnr li{margin: .5rem .2rem .7rem; padding-left: 0.5rem !important;}
ul.product_contents_side_list_bnr li img{width: 100%; max-width: 250px; border-radius: 10px;}
ul.product_contents_side_list_bnr li a:hover{opacity: .8; transition: .3s;}

/* 提供事業者swiper
----------------------------------------------------------------------------------------------------------------------*/
/* 前後の装飾hr */
#index_business{position: relative; background: #fff;}
#index_business::before{content: ""; position: absolute; top: 0; left: 0; background: url(../img/hp/hr_img.png); width: 100%; height: 15px;}
#index_business::after {content: ""; position: absolute; bottom: 0; left: 0; background: url(../img/hp/hr_img.png); width: 100%; height: 15px;}


.swiper-list {margin: 15px auto; padding: 15px; overflow: hidden;}
.swiper-list img{width: 100%; border: none; border-radius: 20px; box-shadow: 0px 0px 10px 0px rgba(91, 91, 95, 0.6);}

.swiper-button-next, .swiper-button-prev {position: absolute;}
.swiper-button-next:after, .swiper-button-prev:after {content: ""; position: absolute; width: 40px; height: 40px; top: 50%; transform: translateY(-50%);}
.swiper-button-next {right: 25px;}
.swiper-button-next::after {background: transparent url(../img/hp/icon/swiper_next.png) no-repeat center/contain;}
.swiper-button-prev {left: 25px;}
.swiper-button-prev::after {background: transparent url(../img/hp/icon/swiper_prev.png) no-repeat center/contain;}


.mb-120{margin-bottom: 120px;}


/* 検索バー
----------------------------------------------------------------------------------------------------------------------*/
.searchform{display:flex; justify-content:center; width:100%;}
.searchform form{display:inline-flex; justify-content:center; border:1px solid #707070; border-radius:30px; padding:0; background-color:#fff;}
.searchform form > div{display:flex;}
.searchform .form-control,
.searchform .form-control:focus{border:none; box-shadow:none; background-color:transparent;}
.searchform input[type="text"]{border:none !important; padding:0 !important; box-shadow:none !important; width:calc(100% - 1.5rem - 30px);}
.searchform input[type="image"]{width:30px;}
@media (min-width:576px) {
  .searchform form{padding:.5em .5em .5em 1em;}
}

/* 検索されているワード
----------------------------------------------------------------------------------------------------------------------*/
ul.search-popular{list-style-type:none; padding:0;}
ul.search-popular li{flex:1; flex:0 0 calc(50% - 10px); margin:0 5px 10px; display:flex;}
ul.search-popular li a{font-weight: 600; color:#35444c; text-decoration:none; border:1px solid #35444c; padding:.3rem 1rem; font-size:.9rem; text-align:center; display:flex; justify-content:center; align-items:center; flex:1; -webkit-transition: all .3s; transition: all .3s;}
ul.search-popular li a:hover{background-color:#35444c; color:#fff;}
@media (min-width:768px) {
  ul.search-popular{justify-content:center; display:flex; margin:0 -10px; flex-wrap:wrap;}
    ul.search-popular li{flex:0 0 calc(33.33% - 10px);}
}


/* 白石市について
----------------------------------------------------------------------------------------------------------------------*/
#introduction{background: url(../img/intro_bg.jpg) repeat-y center / cover; position: relative; overflow: hidden;}
#introduction > div{padding:0;}
main > section#introduction > div:last-child{padding-bottom:4rem;}

#introduction .s_video {width: 100%; height: auto; border: none;}
video {
  /* 動画の枠線を消す */
/* safari */
  filter: drop-shadow(0px 0px rgba(0,0,0,0));
/* pc */
  outline: none;
  border: none;
}
.main_miryoku{width: 100%; margin: 0; position: relative; z-index: 8;}
.shiro_miryoku{ background: #fff; }
.miryoku_img_sp,.map_img_sp{display: block;}
.miryoku_img,.map_img{display: none;}
.miryoku_text{padding: 2rem; font-size: .8rem; font-family: 'Shippori Mincho', serif; transform: rotate(0.03deg);}
.miryoku_text p{font-weight: 700;}
.map_img_sp{width: 100%;}
.video_text{background: #fff; border-radius: 15px; padding: 5%; margin: 2rem 1rem 3rem;}
.video_text p{font-size: .8rem; font-weight: 600;}
.s_video h3{text-align: center;}
.main_video{overflow: hidden;}
@media (min-width:700px) {
  .miryoku_img_sp,.map_img_sp{display: none;}
  .miryoku_img,.map_img{display: block;}

  .shiro_miryoku{display: flex;margin: 0; justify-content: space-between; align-items: flex-start; }
  .miryoku_img{width: 50%; height: auto; max-width: 850px;}
  .miryoku_text{width: 50%; padding: 5% 3% 3% 0; margin-bottom: 0;}
  .miryoku_text p{font-size: .8rem; }
  /*
  .main_map{display: flex;} */
  .map_img{width: 40%; position: absolute; top: calc(50% - 60px);}

  .main_video{width: 60%; position: relative; overflow: hidden; z-index: 7; padding-right: 50px; margin:10% 100px 100px 0; left: 45%; max-width: 1100px;}
  .video_text{margin: 2rem 0 4rem; padding: 3rem 2rem;}

}
@media (min-width:800px) {
.miryoku_text p{font-size: .9rem; }
}

@media (min-width:900px) {
.miryoku_text p{font-size: 1rem; }
.map_img{width: 40%; position: absolute; top: calc(45% - 100px);}
.main_video{width: 55%; }
}
@media (min-width:1000px) {
  .miryoku_text p{font-size: 1.1rem; }
.map_img{top: calc(42% - 40px);}
}
@media (min-width:1100px) {
  .miryoku_text{padding: 7% 5% 3% 0;}
  .video_text{padding: 3rem 4rem;}
  .main_video{padding-right: 100px; }
}


@media (min-width:1200px) {
  .map_img{width: 38%; position: absolute; top: calc(39% - 60px); left: 50px;}
  .s_video h3{font-size: 2.5rem;}
  .miryoku_text p{font-size: 1.2rem; }
  .video_text p{ font-size: 1rem;}
}

@media (min-width:1400px) {
  .map_img{width: 35%; position: absolute; top: calc(40% - 60px); left: 50px; max-width: 700px;}
  .miryoku_text{padding: 9% 7% 3% 0;}
  .miryoku_text p{font-size: 1.3rem; }
  .main_video{padding-right: 200px;}

}
@media (min-width:1600px) {
  .map_img{width: 35%; top: calc(38% - 60px);}
  .miryoku_text{padding: 8% 10% 3% 0;}
  .miryoku_text p{font-size: 1.5rem; }
  .video_text{padding: 5rem 5rem;}
}
@media (min-width:1800px) {
  .map_img{top: calc(33% - 80px);}

}


/* 寄附について */

.kifu_contents{background: #fff;}
.kifu_img_sp,.memorial_img_sp{display: block; width: 100%; text-align: center; padding: 1rem; max-width: 500px; margin: 0 auto;}
.kifu_img,.memorial_img{display: none;}

@media (min-width:700px) {
  .kifu_img_sp,.memorial_img_sp{display: none;}
.kifu_img,.memorial_img{display: block; width: 100%; text-align: center; padding: 1rem 2rem 3rem; max-width: 1250px; margin: 0 auto;}
.memorial_img{max-width: 1100px;}
}
@media (min-width:992px) {
  .kifu_img,.memorial_img{padding: 1rem 6rem 3rem; margin: 0 auto;}
}


/* footer
----------------------------------------------------------------------------------------------------------------------*/
footer{margin-top:auto;background: url(../img/footer_bg.jpg) no-repeat center / cover; color:#fff; font-family: 'Noto Sans JP', sans-serif; font-size:.95rem;}
footer div.row > div{border-right:1px solid #fff;}
footer div.row > div:last-child{border:none;}
footer h3{color:#fff; margin-top:2rem; text-align:left; font-size:1.3rem; font-family: 'Noto Sans JP', sans-serif; font-weight:600; margin-bottom:1rem;}
footer h3:first-child{margin-top:0;}
footer h4{font-size:1.2rem; margin-top:1.5rem; line-height: 1.4; padding-left:1.5rem; position:relative;}
footer h4:before{content:''; width:.8rem; height:.8rem; background-color:#fff; top:.48rem; left:0; position:absolute;}
footer h5{margin-top:1rem;}
footer p,footer ul{margin-bottom:.5rem; font-weight: 500;}
footer ul{list-style-type:none; padding:0;}
footer ul li{padding-left:1.3rem; position:relative; }
footer ul li:before{content:''; width:9px; height:9px; border-radius:50%; position:absolute; left:0; top:.58rem; background-color:#fff;}

.copy p{margin: 20px auto 0;}
@media (min-width: 992px) {
  .copy p{text-align: center; margin-top: 50px;}
}

/*----------------------------------------------------------------------------------------------------------------------
products
----------------------------------------------------------------------------------------------------------------------*/

#product_head section > div{padding:0;}
.product_info h2{background-color:#932E28; color:#fff; font-size:1.3rem; text-align:center; padding:.8rem; margin-bottom:0; margin-top: 4rem !important;}
.product_info dl{border:3px solid #932E28; border-top:none; padding:1rem; margin-bottom:0; max-height:200px; overflow-y: auto;}
.product_info dl > div{display:block; border-bottom:1px solid #000000; padding:.8rem 0;}
.product_info dl > div dt{width:120px; margin:0 10px 0 0;}
.product_info dl > div dd{flex:1; margin:0 ;}
.product_info dl > div a{color:#333; display:block; text-decoration:none; -webkit-transition: all .3s; transition: all .3s;}
.product_info dl > div a:hover{opacity: 0.7;}
@media (min-width: 768px) {
  .product_info dl > div{display:flex; border-bottom:1px solid #000000; padding:0;}
  .product_info dl > div dt{display:flex; align-items:center;}
  .product_info dl > div dd{ padding:.8rem 0;}
  .product_info dl > div a{display:flex; align-items:center;}
}

/*side*/
.product_contents_side{margin-top:4rem;}
.product_contents_side > div:not(:first-child){margin-top:2rem;}
.product_contents_side h2{font-size:1.4rem; color:#fff; font-weight:800; font-family: 'Shippori Mincho', serif; background: url(../img/bg_sidebar.jpg) no-repeat center / cover; padding:.5rem 1rem; margin:0 0 1rem; text-align:center;}
ul.product_contents_side_list{list-style-type:none; padding:0; margin:0 -5px;display:flex; flex-wrap:wrap;}
ul.product_contents_side_list li{flex:0 0 calc(50% - 10px); margin:0 5px 0;}
ul.product_contents_side_list li span{font-family: 'Shippori Mincho', serif; font-weight: 800;}
ul.product_contents_side_list li a{text-decoration:none; border-bottom:1px solid #707070; display:flex; align-items:center; padding:.5rem; color:#333; -webkit-transition: all .3s; transition: all .3s;}
ul.product_contents_side_list li a:hover{opacity: 0.7;}
ul.product_contents_side_list li:nth-child(-n+2) a{padding-top:0;}
ul.product_contents_side_list li a img{width:60px; margin-right:10px;}
.product_contents_side_price ul.product_contents_side_list li a{justify-content:center; font-weight: 600;}
.product_contents_side_osusume h3{font-weight:600; font-size:1.15rem; color:#333; margin:0 0 .5rem; line-height: 1.5rem;}
.product_contents_side_osusume > div{background-color:#fbf2d2; padding:1rem;}
.product_contents_side_osusume > div p{color:#fff; background-color:#932E28; border-radius: 20px; text-align:center; margin:0; /*値段の表示する時はこれを消してね→*/display:none;}
ul.product_contents_side_osusume_list{list-style-type:none; padding:0;}
ul.product_contents_side_osusume_list li:not(:last-child){margin-bottom:2rem;}
ul.product_contents_side_osusume_list li img{margin-bottom:.5rem;}
ul.product_contents_side_osusume_list li a{text-decoration:none;-webkit-transition: all .3s; transition: all .3s;}
ul.product_contents_side_osusume_list li span{font-family: 'Shippori Mincho', serif; font-weight: 800;}
ul.product_contents_side_osusume_list li a:hover{opacity: 0.7;}
ul.product_contents_side_osusume_list li span{font-family: 'Shippori Mincho', serif; font-weight: 800;}
/*@media (min-width: 768px) {*/
.product_contents_side{margin-top:0;}
.product_contents{display:flex; flex-direction: row-reverse;}
.product_contents_side{width:260px; margin-right:30px;}
ul.product_contents_side_list{display:block; margin:0;}
ul.product_contents_side_list li{margin:0;}
ul.product_contents_side_list li a{padding:.8rem 1rem;}
ul.product_contents_side_list li:nth-child(-n+2) a{padding-top:.8rem;}
ul.product_contents_side_list li:first-child a{padding-top:0;}
.product_contents_main{flex:1;}
/*}*/

/*main*/
.product_contents_main .product_main_relation h2{margin-top:3rem; color:#42634B; text-align:left; border-bottom:2px solid #42634B; padding-bottom:.5rem;font-family: 'Noto Serif JP', serif;}
.product_main_relation h3{color:#333; font-family: 'Noto Sans JP', sans-serif;font-size:1.2rem; text-align:left; margin:.5rem 0 1rem; font-weight:500;}
.product_main_relation a{color:#333; text-decoration:none; display:block;}
.product_main_relation p strong{display:table; margin-left:auto; color:#932E28; font-weight:500;}



/*----------------------------------------------------------------------------------------------------------------------
 parts
----------------------------------------------------------------------------------------------------------------------*/

/* 見出し */
h2{text-align:center; font-weight:800; color:#35444c; margin-bottom:2rem;}
h2 img{width: 55%; min-width: 350px; text-align: center; margin-top: 3rem; max-width: 550px;}
h3{text-align:center; font-weight:900; color:#35444c; margin:3rem 0 1.5rem;}
h3 img{width: 55%; min-width: 320px; text-align: center; margin-bottom:4rem;max-width: 530px;}
@media (min-width:992px) {
  h2 img{width: 45%; text-align: center; margin-bottom:0;}
}
@media (min-width:1400px) {
  h2 img{width: 40%; text-align: center;}
  h3 img{width: 60%;}
}
@media (min-width:1600px) {
  h2 img{width: 35%; text-align: center; }
}

/* btn */
.btn{padding: 0 !important; text-decoration:none; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-transition: all .3s; transition: all .3s; -moz-box-shadow: none !important; -webkit-box-shadow: none !important; box-shadow: none !important; text-decoration:none !important;}
/*
.btn-default{background:transparent; border:1px solid #42634b; background-color:#42634b; color:#ffffff; border-radius: 30px; min-width:13em;}
.btn-default:hover, .btn-default:focus {background:#ffffff; color:#42634b;}
.btn-default:active {background:#ffffff; color:#42634b;}
.btn-default:focus {outline: none !important;} */

/* TOPへ戻るボタン */
/* トップへ戻るボタン */
/* 右下に固定 */
.js_gotop img{display: none;}
@media (min-width:550px) {
.js_gotop{
  position: fixed;
  right:10px;
  bottom: 0px;
  cursor: pointer;
  line-height: 0;
  font-size: 0;
  z-index: 9999;
  width: 150px;
  vertical-align: middle;
}

.js_gotop img{
  display: block; width: 100%; vertical-align: middle; line-height: 0; font-size: 0;}
}
@media (min-width: 768px) {
  .js_gotop{right: 10px;}

}
@media (min-width:992px) {
  .js_gotop{width: 140px;}
}
@media (min-width:1200px) {
  .js_gotop{width: 130px; bottom: 5px; right:0px;}
}
@media (min-width:1400px) {
  .js_gotop{width: 150px; right:15px; bottom: 10px;}
}
@media (min-width:1600px) {
  .js_gotop{width: 170px;}
}



/* color */
.bg-washi{background: url(../img/top_cate_bg.jpg) center / cover;}
.bg-light{background-color:#edf1dd !important;}
.bg-color{background-color:#fbf2d2;}

/* container */
.container_s {max-width: 1000px; margin:0 auto;}
.container_ss {max-width: 850px; margin:0 auto;}
@media (min-width:1400px) {
  .container_ss {max-width: 1000px; margin:0 auto;}
}
.container_xxs {max-width: 600px; margin:0 auto;}
.container_smallest {max-width: 300px; margin:0 auto;}
.container_xl {max-width:1140px; margin:0 auto;}
.container_xll {max-width:1340px; margin:0 auto;}

/* mt mb py px*/
.mt-100{margin-top: 100px;}
.mt-100{margin-top: 120px;}
.mb-80{margin-bottom: 80px;}
.mb-100{margin-bottom: 100px;}
.mb-120{margin-bottom: 120px;}

.py-80{padding-top: 80px; padding-bottom: 3rem;}



/* img-hover */
a .img-hover{ -webkit-transition: all .3s; transition: all .3s;}
a:hover .img-hover{opacity: 0.7;}

/* image
----------------------------------------------------------------------------------------------------*/
.image{
  position: relative;
  width: 100%;
  overflow: hidden;
  margin-bottom:5px;
  padding-top:100%;
}
.image img{
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  width: auto;
  height: 100%;
  object-fit: contain;
}

#rakutenLimitedId_cartParts #pagebody > table{border-spacing:0 !important;}



#index_recommend{position: relative;}
#index_recommend::after{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  background: url(../img/test_bd02.png) repeat-x;
  border: 0;
  width: 100%;
  height: 20px;
}
