@charset "UTF-8";
.clearfix:before,
.clearfix:after,
.container:before,
.container:after,
.container-fluid:before,
.container-fluid:after,
.row:before,
.row:after {
  content: " ";
  display: table;
}

.clearfix:after,
.container:after,
.container-fluid:after,
.row:after {
  clear: both;
}

/*　////////////////////////////////
ブレイクポイント
//////////////////////////////////　*/
/*　////////////////////////////////
ベースフォント
//////////////////////////////////　*/
/*　////////////////////////////////
カラー
//////////////////////////////////　*/
/*　////////////////////////////////
clearfix[@extend .clearfix];
//////////////////////////////////　*/
.clearfix {
  zoom: 1;
}
.clearfix:after {
  display: block;
  content: "";
  clear: both;
}

/*　////////////////////////////////////////////////////////////////////////////////////////////////
flex include
//////////////////////////////////////////////////////////////////////////////////////////////////　*/
/*　////////////////////////////////////////////////////////////////////////////////////////////////
初期値top:50%; left:50%;
[@include set-top();] [@include set-left();]
//////////////////////////////////////////////////////////////////////////////////////////////////　*/
/*縦中央*/
/*横中央*/
/* -----上下左右中央、%指定で調整可能----- */
/*　////////////////////////////////
flex 設定
//////////////////////////////////　*/
/*　////////////////////////////////
三角形
//////////////////////////////////　*/
/*　////////////////////////////////
矢印
//////////////////////////////////　*/
/*　////////////////////////////////////////////////////////////////////////////////////////////////
font-size
//////////////////////////////////////////////////////////////////////////////////////////////////　*/
/*　////////////////////////////////
汎用style
//////////////////////////////////　*/
.all-wrapper {
  /*パンくず*/
}
.all-wrapper .breadcrumb-wrap {
  margin: 0 0 30px;
  padding: 10px 0;
}
@media (min-width: 768px) {
  .all-wrapper .breadcrumb-wrap {
    margin: 0 0 45px;
  }
}
.all-wrapper .breadcrumb-wrap .breadcrumb li {
  display: inline;
  list-style: none;
  font-size: 1.4rem;
  line-height: 1;
  color: #601804;
}
.all-wrapper .breadcrumb-wrap .breadcrumb li a {
  text-decoration: none;
  color: #601804;
}
.all-wrapper .breadcrumb-wrap .breadcrumb li a:hover {
  text-decoration: underline;
}
.all-wrapper .breadcrumb-wrap .breadcrumb li:after {
  content: "＞";
  padding: 0 3px;
}
.all-wrapper .breadcrumb-wrap .breadcrumb li:last-child:after {
  content: "";
}
.all-wrapper {
  /*　////////////////////////////////
  lower_header
  //////////////////////////////////　*/
}
.all-wrapper .lower-title-wrap {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  height: 260px;
  background: #6d2f00;
  overflow: hidden;
}
.all-wrapper .lower-title-wrap::before, .all-wrapper .lower-title-wrap::after {
  content: "";
  position: absolute;
  width: 100%;
  left: 0;
  z-index: 1;
}
.all-wrapper .lower-title-wrap::before {
  height: 100%;
  top: 0;
  background-image: url("/img/common/dot_pattern.svg");
  background-repeat: repeat;
  background-size: 12px;
}
.all-wrapper .lower-title-wrap::after {
  height: 37.5%;
  bottom: 0;
  background: #FFFFFF;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), to(rgba(96, 24, 4, 0.6)));
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(96, 24, 4, 0.6) 100%);
  mix-blend-mode: multiply;
}
.all-wrapper .lower-title-wrap .lower-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  z-index: 3;
}
.all-wrapper .lower-title-wrap .lower-title .title-jp {
  font-family: "Kaisei Opti", serif;
  font-weight: 700;
  font-style: normal;
  font-size: clamp(3.6rem, 4.8vw, 6rem);
  color: #fff;
}
.all-wrapper .lower-title-wrap .lower-title .title-en {
  font-size: clamp(1.8rem, 2.2vw, 2.6rem);
  font-weight: 500;
  color: #ffe02c;
}
.all-wrapper .lower-title-wrap .lt-illust {
  position: absolute;
  z-index: 2;
  height: auto;
}
.all-wrapper .lower-title-wrap .lower-kikurage {
  width: 100px;
  width: clamp(100px, 31vw, 290px);
  left: 0;
  top: 3%;
}
.all-wrapper .lower-title-wrap .lower-kunichan {
  width: 70px;
  width: clamp(70px, 21vw, 160px);
  bottom: 0;
  right: 3vw;
}
@media (min-width: 480px) {
  .all-wrapper .lower-title-wrap {
    height: 360px;
  }
}
@media (min-width: 768px) {
  .all-wrapper .lower-title-wrap {
    height: 260px;
  }
  .all-wrapper .lower-title-wrap .lower-kikurage {
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}
.all-wrapper {
  /*　////////////////////////////////
  共通
  //////////////////////////////////　*/
}
.all-wrapper .dline-box {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  background: #fffdf8;
  border-radius: 15px;
}
.all-wrapper .dline-box .dline-title {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 15px;
  background: #601804;
  color: #ffe02c;
  font-weight: 900;
  font-size: clamp(2.2rem, 2.6vw, 3rem);
  line-height: 1.4;
  border-radius: 15px 15px 0 0;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.all-wrapper .dline-box .dline-title::before {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background-image: repeating-linear-gradient(-45deg, rgba(238, 231, 195, 0.04) 0 6px, transparent 6px 12px);
  border-radius: 15px 15px 0 0;
}
.all-wrapper .dline-box .dline-title span {
  position: relative;
  z-index: 2;
}
.all-wrapper .dline-box .detail {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 20px;
}
@media (min-width: 768px) {
  .all-wrapper .dline-box .detail {
    padding: 25px;
  }
}

/* all-wrapper */
.f-wrap-03 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.f-wrap-03 .f-box {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-bottom: 25px;
}
.f-wrap-03 .f-box .caption {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 10px;
  font-size: clamp(1.5rem, 1.55vw, 1.6rem);
}

@media (min-width: 480px) {
  .f-wrap-03 {
    gap: 4%;
  }
  .f-wrap-03 .f-box {
    width: 48%;
  }
}
@media (min-width: 768px) {
  .f-wrap-03 {
    gap: 2%;
  }
  .f-wrap-03 .f-box {
    width: 32%;
  }
}
/*----- .shop-info ------------------------------------*/
.shop-info .f-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.shop-info .f-wrap .left-box, .shop-info .f-wrap .right-box {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.shop-info .f-wrap .shop-title {
  margin-bottom: 30px;
}
.shop-info .f-wrap .shop-title img {
  width: 200px;
  width: clamp(200px, 25vw, 270px);
  height: auto;
}
.shop-info .g-map iframe {
  border-radius: 15px;
  margin-bottom: 30px;
}

@media (min-width: 768px) {
  .shop-info .f-wrap {
    gap: 4%;
  }
  .shop-info .f-wrap .left-box {
    width: 56%;
  }
  .shop-info .f-wrap .right-box {
    width: 40%;
  }
}
/*----- .tasting ------------------------------------*/
.tasting .instagram {
  text-align: center;
}
.tasting .instagram .insta-link {
  display: inline-block;
  max-width: 370px;
  width: 100%;
  height: auto;
}
.tasting .f-wrap-03 {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

/*----- .retailers ------------------------------------*/
.retailers .txt {
  font-size: clamp(1.8rem, 2.15vw, 2.5rem);
}