@charset "UTF-8";
/* =================================================================== use toppage =================================================================== */
/* CSS Document */
/* 画像サイズ調整 ---------------------------------------------------------------------------*/
/* フォントサイズ調整 ---------------------------------------------------------------------------*/
/* ブレークポイント ---------------------------------------------------------------------------*/
/*_____ font weight _______________*/
:root { --col_main: #35453f; }
/*---------------------------------------------------------------------------*/
@media screen and (min-width: 769px), print { /* =================================================================== Meal page =================================================================== */
  /* CSS Document */
  /* 画像サイズ調整 ---------------------------------------------------------------------------*/
  /* フォントサイズ調整 ---------------------------------------------------------------------------*/
  /* ブレークポイント ---------------------------------------------------------------------------*/
  /*_____ font weight _______________*/
  /* modal popup styles */
  #container { background: #f6f5f1; }
  #container .contents { background: transparent; counter-reset: item; }
  .b-article { position: relative; margin-top: 40px; padding: 0 98px 54px; border: 2px solid var(--col_main); background: #fff; }
  .b-article__badge { position: absolute; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: start; -moz-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; left: 98px; top: -12px; width: 90px; height: 91px; -webkit-padding-before: 16px; padding-block-start: 16px; background-image: url("../images/ico-flag.webp"); background-repeat: no-repeat; -moz-background-size: cover; background-size: cover; background-position: 0 0; color: #fff; }
  .b-article__badge:after { counter-increment: item; content: counter(item, decimal-leading-zero); font-family: var(--font_mincho); font-size: 3.36rem; line-height: 1; font-weight: 400; text-align: center; }
  .b-article__badge--jp { -webkit-margin-after: 2px; margin-block-end: 2px; font-size: 1.68rem; line-height: 1; letter-spacing: 0.04em; }
  .b-article__ttl { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-direction: column; flex-direction: column; margin-block: 43px 34px; -webkit-padding-after: 36px; padding-block-end: 36px; border-bottom: 2px solid rgba(0, 0, 0, 0.1); font-family: var(--font_mincho); }
  .b-article__ttl--sub { font-size: 1.7rem; line-height: 1.5; font-weight: 400; letter-spacing: 0; color: #000; }
  .b-article__ttl--main { position: relative; padding-inline: 31px; -webkit-margin-before: 8px; margin-block-start: 8px; font-size: 3.2rem; line-height: 40px; font-weight: 500; letter-spacing: 0; -moz-font-feature-settings: 'palt' 1; font-feature-settings: 'palt' 1; color: #952e26; }
  .b-article__ttl--main:before, .b-article__ttl--main:after { content: ''; position: absolute; left: 0; top: 3px; bottom: 0; width: 15px; height: 25px; margin-block: auto; background-image: url("../images/ico-ttl.webp"); background-repeat: no-repeat; -moz-background-size: cover; background-size: cover; background-position: 0 0; }
  .b-article__ttl--main:after { left: auto; right: 0; -webkit-transform: scaleX(-1); -moz-transform: scaleX(-1); -ms-transform: scaleX(-1); transform: scaleX(-1); }
  .b-article__ttl--txt { background: -webkit-gradient(linear, left bottom, left top, from(#fff5cf), color-stop(25%, #fff5cf), color-stop(25%, rgba(255, 245, 207, 0)), to(rgba(255, 245, 207, 0))); background: -webkit-linear-gradient(bottom, #fff5cf 0%, #fff5cf 25%, rgba(255, 245, 207, 0) 25%, rgba(255, 245, 207, 0) 100%); background: -moz- oldlinear-gradient(bottom, #fff5cf 0%, #fff5cf 25%, rgba(255, 245, 207, 0) 25%, rgba(255, 245, 207, 0) 100%); background: linear-gradient(0deg, #fff5cf 0%, #fff5cf 25%, rgba(255, 245, 207, 0) 25%, rgba(255, 245, 207, 0) 100%); }
  .b-article__desc { font-size: 1.6rem; font-weight: 500; line-height: 1.75; letter-spacing: 0; }
  .b-article__listNote { -webkit-margin-before: 18px; margin-block-start: 18px; }
  .b-article__listNote li { position: relative; padding-left: 20px; font-size: 1.4rem; line-height: 22px; font-weight: 500; }
  .b-article__listNote li:before { content: '※'; position: absolute; left: 0; top: 0; font-size: 1.4rem; line-height: 22px; font-weight: 500; }
  .b-step { -webkit-margin-before: 37px; margin-block-start: 37px; -webkit-margin-after: 4px; margin-block-end: 4px; }
  .b-step__ttl { margin-bottom: 24px; font-family: var(--font_mincho); font-size: 2rem; line-height: 1.4; font-weight: 400; text-align: center; letter-spacing: 0; }
  .b-step__list { display: -ms-grid; display: grid; -ms-grid-columns: (1fr)[4]; grid-template-columns: repeat(4, 1fr); grid-gap: 21px; counter-reset: stepItem; }
  .b-step__item { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; background: #f6f5f1; padding: 25px 10px 26px; text-align: center; }
  .b-step__item:before { counter-increment: stepItem; content: counter(stepItem); width: 24px; height: 24px; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-margin-after: 13px; margin-block-end: 13px; font-family: var(--font_cardo); font-size: 1.8rem; line-height: 1; font-weight: 500; color: #fff; background: #952e26; }
  .b-step__item span { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-flex: 1; -moz-box-flex: 1; -ms-flex: 1; flex: 1; font-size: 1.8rem; line-height: 24px; }
  .b-direct { padding: 60px 290px 0; }
  .b-direct .btn + .btn { margin-top: 30px; }
  .no-webp .b-article:before { background-image: url("../images/ico-flag.png"); }
  .no-webp .b-article__ttl--main:before, .no-webp .b-article__ttl--main:after { background-image: url("../images/ico-ttl.webp"); } }
@media screen and (max-width: 768px) { /* =================================================================== Meal page sp =================================================================== */
  /* CSS Document */
  /* 画像サイズ調整 ---------------------------------------------------------------------------*/
  /* フォントサイズ調整 ---------------------------------------------------------------------------*/
  /* ブレークポイント ---------------------------------------------------------------------------*/
  /*_____ font weight _______________*/
  #container { background: #f6f5f1; }
  #container .contents { background: transparent; counter-reset: item; }
  .b-article { position: relative; margin-top: 6.51042vw; padding: 0 7.55208vw 12.76042vw; border: 0.26042vw solid var(--col_main); background: #fff; }
  .b-article__badge { position: absolute; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: start; -moz-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; left: 0; right: 0; margin-inline: auto; top: -1.5625vw; width: 16.66667vw; height: 16.92708vw; -webkit-padding-before: 2.86458vw; padding-block-start: 2.86458vw; background-image: url("../images/ico-flag.webp"); background-repeat: no-repeat; -moz-background-size: cover; background-size: cover; background-position: 0 0; color: #fff; }
  .b-article__badge:after { counter-increment: item; content: counter(item, decimal-leading-zero); font-family: var(--font_mincho); font-size: 6.25vw; line-height: 1; font-weight: 400; text-align: center; }
  .b-article__badge--jp { -webkit-margin-after: 0.26042vw; margin-block-end: 0.26042vw; font-size: 3.125vw; line-height: 1; letter-spacing: 0.04em; }
  .b-article__ttl { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-direction: column; flex-direction: column; margin-block: 19.53125vw 5.46875vw; -webkit-padding-after: 5.72917vw; padding-block-end: 5.72917vw; border-bottom: 0.26042vw solid rgba(0, 0, 0, 0.1); font-family: var(--font_mincho); }
  .b-article__ttl--sub { font-size: 3.125vw; line-height: 1.5; font-weight: 400; letter-spacing: 0; color: #000; }
  .b-article__ttl--main { position: relative; -webkit-margin-before: 1.69271vw; margin-block-start: 1.69271vw; padding-inline: 5.59896vw; letter-spacing: -0.13021vw; }
  .b-article__ttl--main:before, .b-article__ttl--main:after { content: ''; position: absolute; left: 0; top: 1.17188vw; bottom: 0; margin-block: auto; width: 2.86458vw; height: 4.6875vw; background-image: url("../images/ico-ttl_sp.webp"); background-repeat: no-repeat; -moz-background-size: cover; background-size: cover; background-position: 0 0; }
  .b-article__ttl--main:after { right: 0; left: auto; -webkit-transform: scaleX(-1); -moz-transform: scaleX(-1); -ms-transform: scaleX(-1); transform: scaleX(-1); }
  .b-article__ttl--main.-oneRow { margin-inline: -4.55729vw; padding-inline: 4.55729vw; letter-spacing: -0.39062vw; }
  .b-article__ttl--txt { font-size: 5.72917vw; line-height: 7.03125vw; font-weight: 500; -moz-font-feature-settings: 'palt' 1; font-feature-settings: 'palt' 1; color: #952e26; background: -webkit-gradient(linear, left bottom, left top, from(#fff5cf), color-stop(22%, #fff5cf), color-stop(22%, rgba(255, 245, 207, 0)), to(rgba(255, 245, 207, 0))); background: -webkit-linear-gradient(bottom, #fff5cf 0%, #fff5cf 22%, rgba(255, 245, 207, 0) 22%, rgba(255, 245, 207, 0) 100%); background: -moz- oldlinear-gradient(bottom, #fff5cf 0%, #fff5cf 22%, rgba(255, 245, 207, 0) 22%, rgba(255, 245, 207, 0) 100%); background: linear-gradient(0deg, #fff5cf 0%, #fff5cf 22%, rgba(255, 245, 207, 0) 22%, rgba(255, 245, 207, 0) 100%); }
  .b-article__desc { font-size: 3.38542vw; font-weight: 500; line-height: 5.98958vw; letter-spacing: 0; }
  .b-article__listNote { -webkit-margin-before: 2.86458vw; margin-block-start: 2.86458vw; }
  .b-article__listNote li { position: relative; padding-left: 4.6875vw; font-size: 3.125vw; line-height: 5.20833vw; font-weight: 500; }
  .b-article__listNote li:before { content: '※'; position: absolute; left: 0; top: 0; font-size: 3.125vw; line-height: 5.20833vw; font-weight: 500; }
  .b-step { -webkit-margin-before: 9.11458vw; margin-block-start: 9.11458vw; }
  .b-step__ttl { margin-bottom: 5.07812vw; font-family: var(--font_mincho); font-size: 4.16667vw; line-height: 5.98958vw; font-weight: 400; text-align: center; letter-spacing: 0; }
  .b-step__list { display: -ms-grid; display: grid; -ms-grid-columns: ()[1fr]; grid-template-columns: repeat(1fr); grid-gap: 0.52083vw; counter-reset: stepItem; }
  .b-step__item { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; background: #f6f5f1; padding: 1.95312vw 1.82292vw; text-align: center; }
  .b-step__item:before { counter-increment: stepItem; content: counter(stepItem); width: 4.42708vw; height: 4.42708vw; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-margin-end: 2.73438vw; -moz-margin-end: 2.73438vw; margin-inline-end: 2.73438vw; font-family: var(--font_cardo); font-size: 3.125vw; line-height: 1; font-weight: 500; color: #fff; background: #952e26; }
  .b-step__item span { font-size: 3.38542vw; line-height: 4.42708vw; }
  .b-direct { -webkit-padding-before: 7.8125vw; padding-block-start: 7.8125vw; }
  .b-direct .btn + .btn { margin-top: 3.90625vw; }
  .no-webp .b-article:before { background-image: url("../images/ico-flag.png"); }
  .no-webp .b-article__ttl--main:before, .no-webp .b-article__ttl--main:after { background-image: url("../images/ico-ttl.webp"); } }
