@charset "UTF-8";
/* ===========================================
共通
=========================================== */
/* 赤枠注意書き */
.caution__box {
  color: #962222;
  background-color: #fff;
  border: 4px double #962222;
  padding: 16px;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  margin-bottom: 80px;
}
.caution__box--red {
  color: #c71212;
  border: 4px double #c71212;
}
.caution__box .ttl {
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 5px;
  text-align: center;
}
.caution__box .ttl span {
  display: inline-block;
}
.caution__box li {
  text-indent: -1em;
  padding-left: 1em;
  text-align: left;
  font-size: 14px;
  line-height: 1.5;
  padding-bottom: 0.25em;
}

/* 原材料 */
.product-ttl {
  font-size: 28px;
  font-family: "游明朝", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
  font-weight: 600;
  margin-bottom: 15px;
}

.product-data {
  width: 100%;
  font-size: 13px;
}
.product-data th,
.product-data td {
  padding: 13px 20px;
  border: 1px solid #878787;
}
.product-data th {
  width: 170px;
  background: #d4d4d4;
  text-align: center;
}
.product-data td {
  background-color: #fff;
}

/* --------------------------------
終売
--------------------------------*/
.soldout-area {
  position: relative;
}
.soldout-area::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  z-index: 9;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  background-color: rgba(0, 0, 0, 0.4);
}
.soldout-area__box {
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  padding: 40px;
  top: 25%;
  width: 800px;
  color: #962222;
  background-color: #fff;
  border: px double #962222;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  text-align: center;
  font-weight: bold;
  z-index: 99;
}
.soldout-area__box--red {
  color: #c71212;
  border: 4px double #c71212;
}
.soldout-area__heading {
  font-size: 60px;
  margin: 0 auto;
  line-height: 1;
}
.soldout-area__txt {
  font-size: 18px;
  margin: 1em auto 0;
}

/* ===========================================
genen
=========================================== */
/* --------------------------------
common
--------------------------------*/
.f_bold {
  font-weight: bold;
  color: #184b9a;
}

.color_genen {
  color: #184b9a;
}

a:hover {
  opacity: 0.7;
}

.genen_wrapper {
  margin-bottom: 140px;
}

.genen_wrapper_small {
  width: 1000px;
  margin: 0 auto 140px;
}

.f_small {
  font-size: 20px;
}

.mt-5 {
  margin-top: 5px;
}

/* --------------------------------
intro
--------------------------------*/
.genen_intro {
  text-align: center;
}
.genen_intro .intro_txt {
  margin-top: 0;
  margin-bottom: 55px;
  font-size: 20px;
  line-height: 2;
}
.genen_intro .intro_txt:last-of-type {
  margin-bottom: 0;
}

/* --------------------------------
menu
--------------------------------*/
.genen_menu {
  margin-bottom: 85px;
  padding: 0;
  list-style: none;
  display: flex;
}
.genen_menu li {
  flex: auto;
  font-size: 22px;
  font-weight: bold;
  text-align: center;
  line-height: 1.3;
  border-left: 1px solid #000000;
  padding-bottom: 30px;
}
.genen_menu li a {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100%;
  text-decoration: none;
  color: #000;
  transition: opacity 0.3s;
  position: relative;
  display: block;
}
.genen_menu li a::before {
  content: "";
  background-image: url(../img/genen_arrow.png);
  background-repeat: no-repeat;
  position: absolute;
  width: 14px;
  height: 9px;
  bottom: -30%;
  left: 50%;
  transform: translateX(-50%);
}
.genen_menu li:last-child {
  border-right: 1px solid #000000;
}

/* --------------------------------
product
--------------------------------*/
.genen_product_box {
  display: flex;
  justify-content: space-between;
}
.genen_product_box .ttl {
  font-size: 26px;
  font-family: "游明朝", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
  font-weight: 600;
  padding-bottom: 15px;
  margin-bottom: 25px;
  border-bottom: 1px solid #000;
  line-height: 1.3;
  margin-top: 0;
}
.genen_product_box .txt {
  margin-top: 0;
}
.genen_product_inner {
  display: flex;
  gap: 20px;
  align-items: end;
}
.genen_product_inner .txtbox {
  width: 272px;
  display: flex;
  flex-direction: column;
  justify-content: end;
}
.genen_product .genen_btn {
  background-color: #000;
  color: #fff;
  font-weight: bold;
  width: 272px;
  display: flex;
  text-decoration: none;
  padding: 12px;
  justify-content: center;
  position: relative;
}
.genen_product .genen_btn::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 12px;
  width: 9px;
  height: 9px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  rotate: 45deg;
  translate: 0 calc(-50% - 3px);
}

/* --------------------------------
secret
--------------------------------*/
.genen_secret .ttl {
  background-color: #e9edf6;
  font-size: 36px;
  font-family: "游明朝", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
  margin-top: 0;
  margin-bottom: 30px;
}
.genen_secret .ttl .number {
  background-color: #788ec8;
  display: inline-block;
  width: 60px;
  text-align: center;
  margin-right: 10px;
  color: #fff;
}
.genen_secret .txt {
  margin-top: 0;
  margin-bottom: 40px;
}

.recipe_box {
  background-color: #e6ebf1;
  padding: 60px;
  margin-bottom: 100px;
}
.recipe_box ul {
  list-style: auto;
  padding-left: 20px;
}
.recipe_box .-gomen {
  list-style: inherit;
}
.recipe_box .detail_box_gomen {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.recipe_box .detail_box {
  display: flex;
  justify-content: space-between;
  gap: 8px;
}
.recipe_box .detail {
  color: #184b9a;
  background-color: #fff;
  border: 1px solid #184b9a;
  border-radius: 8px;
  padding: 20px;
  line-height: 1.4;
  display: flex;
  text-align: center;
  height: 60px;
  align-items: center;
  justify-content: center;
}
.recipe_box .large {
  width: 206px;
}
.recipe_box .-large_gomen {
  height: 132px;
  display: block;
}
.recipe_box .howto {
  display: flex;
  justify-content: space-between;
}
.recipe_box .howto .wrapper {
  position: relative;
}
.recipe_box .howto .wrapper .icon {
  position: absolute;
  left: -20px;
  top: -20px;
}

/* --------------------------------
recipe
--------------------------------*/
.genen_recipe .img_left {
  flex-direction: row-reverse;
}

.recipe_step {
  display: flex;
  justify-content: space-between;
  margin-bottom: 90px;
}
.recipe_step .txtbox {
  width: 416px;
}
.recipe_step .ttl {
  font-size: 36px;
  font-family: "游明朝", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
  font-weight: 600;
  margin-top: 0;
  margin-bottom: 20px;
  line-height: 1.3;
}
.recipe_step .share {
  margin-top: 0;
  margin-bottom: 10px;
}
.recipe_step .material_box {
  background-color: #f5f5f5;
  padding: 20px;
  margin-bottom: 30px;
  display: flex;
  gap: 30px;
}
.recipe_step .-gomen_three {
  flex-direction: column;
  gap: 0;
}
.recipe_step .-gomen_three_box {
  display: flex;
  gap: 30px;
}
.recipe_step .material {
  font-size: 14px;
  list-style: none;
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
}
.recipe_step .material li {
  line-height: 1.6;
}
.recipe_step .step {
  list-style: auto;
  padding-left: 20px;
}
.recipe_step .step li {
  font-size: 15px;
  line-height: 1.6;
}

/* --------------------------------
offer
--------------------------------*/
.genen_offer {
  margin-bottom: 100px;
}
.genen_offer_h3 {
  font-size: 36px;
  font-family: "游明朝", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
  margin-top: 0;
  margin-bottom: 20px;
  font-weight: 600;
  text-align: center;
}
.genen_offer .cart_img {
  border: 1px solid #d4d4d4;
  height: 216px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 35px;
}
.genen_offer .cart_wrapper {
  display: flex;
  gap: 40px;
  justify-content: center;
}
.genen_offer .cart_box {
  width: 306px;
}
.genen_offer .cart_inner {
  position: relative;
}
.genen_offer .cart_inner .cart_otoku {
  position: absolute;
  left: 10px;
  top: 10px;
}
.genen_offer .price_box {
  display: flex;
  justify-content: space-between;
  line-height: 1.3;
  margin-bottom: 20px;
}
.genen_offer .ttl {
  font-size: 20px;
  border-left: 4px solid #184b9a;
  padding-left: 13px;
  margin: 0;
  display: flex;
  align-items: center;
}
.genen_offer .price {
  font-size: 26px;
  font-family: "游明朝", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
  margin: 0;
}
.genen_offer .small {
  font-size: 14px;
}

.c-button-cart {
  margin-left: 10px;
  font-family: "游明朝", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
  font-weight: 600;
  width: 100%;
}

.cart_flex {
  display: flex;
  align-items: center;
  justify-content: center;
}

.cart_btn {
  display: flex;
  gap: 5px;
}

/* ===========================================
swiper
=========================================== */
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: -25px;
}

.swiper_container {
  margin-left: auto;
  margin-right: auto;
  max-width: 1000px;
  position: relative;
}

.swiper {
  max-width: 1000px;
}

.swiper-button-prev, .swiper-rtl .swiper-button-next {
  left: -40px !important;
}

.swiper-button-next, .swiper-rtl .swiper-button-prev {
  right: -40px !important;
}

.swiper-pagination-bullets.swiper-pagination-horizontal .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  border-radius: 10px;
  background: #cccccc;
}

.swiper-pagination-bullets.swiper-pagination-horizontal .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #788ec8;
}

.swiper-button-prev::before {
  border-top: 4px solid #2c4ea9;
  border-left: 4px solid #2c4ea9;
}

.swiper-button-next::before {
  border-top: 4px solid #2c4ea9;
  border-right: 4px solid #2c4ea9;
}

.swiper-button-prev, .swiper-button-next {
  width: 50px;
  height: 50px;
  margin-top: -25px;
  background: none;
  border-radius: 50%;
}

.bnr_box {
  background-color: #f5f5f5;
  padding: 40px;
  width: 653px;
  margin: 0 auto 70px;
}

.-dashi {
  width: 100%;
}

.bnr_area {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.bnr_caution {
  font-size: 13px;
  line-height: 1.5;
  margin-top: 10px;
  width: 500px;
}

.displayed {
  animation: poyoyon3 2.5s infinite;
}

@keyframes poyoyon3 {
  0%, 40% {
    transform: skew(0deg, 0deg);
  }
  5% {
    transform: skew(5deg, 5deg);
  }
  10% {
    transform: skew(-4deg, -4deg);
  }
  15% {
    transform: skew(3deg, 3deg);
  }
  20% {
    transform: skew(-2deg, -2deg);
  }
  25% {
    transform: skew(1deg, 1deg);
  }
  30% {
    transform: skew(-0.6deg, -0.6deg);
  }
  35% {
    transform: skew(0.3deg, 0.3deg);
  }
}