

@charset "UTF-8";
/* ==========================================================================
Base
========================================================================== */
/*!
 * @acab/reset.css
 */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; /* もちろん、より直感的なbox-sizingに設定 */
  margin: 0; /* マージンは0に */
  padding: 0; /* パディングも常に0に */
}

:where([hidden]:not([hidden=until-found])) {
  display: none !important; /* hiddenは非表示を意味します */
}

:where(html) {
  -webkit-text-size-adjust: none; /* iOSのランドスケープでテキストが調整されないようにする */
  color-scheme: dark light; /* ユーザーがダークテーマを好む場合、自動的にダークテーマになる */
}

@supports not (min-block-size: 100dvb) {
  :where(html) {
    block-size: 100%;
  }
}
@media (prefers-reduced-motion: no-preference) {
  :where(html:focus-within) {
    scroll-behavior: smooth; /* 何かにフォーカスがある場合のみスムーズスクロール */
  }
}
:where(body) {
  -webkit-font-smoothing: antialiased; /* テキストのレンダリングを改善 */
  block-size: 100%; /* サファリ以外のブラウザのフォールバック */
  block-size: 100dvb; /* 1dvbは動的ビューポートの長さの1%、100dvbで高さいっぱいに */
  font-family: system-ui, sans-serif; /* timeの代わりにシステムフォントを使用 */
  line-height: 1.5; /* アクセシブルな行の高さ */
}

:where(input, button, textarea, select) {
  color: inherit; /* カラーも継承 */
  font: inherit; /* フォーム コントロールは親フォントを継承 */
}

:where(textarea) {
  resize: vertical; /* テキストエリアの水平リサイズを無効に */
  resize: block;
}

:where(button, label, select, summary, [role=button], [role=option]) {
  cursor: pointer; /* インタラクティブなものにカーソルを合わせる */
}

:where(:disabled) {
  cursor: not-allowed; /* フォームコントロール無効時のカーソルを許可しない */
}

:where(label:has(> input:disabled), label:has(+ input:disabled)) {
  cursor: not-allowed; /* ラベルにもカーソルを許可しない */
}

:where(button) {
  border-style: solid; /* ボタンのボーダーのスタイルを設定しやすくする */
}

:where(a) {
  text-underline-offset: 0.2ex; /* 下線の上にスペースを追加する */
}

:where(ul, ol) {
  list-style: none; /* ビュレットを削除、必要に応じて手動で追加する */
}

:where(img, svg, video, canvas, audio, iframe, embed, object) {
  display: block; /* 置換された要素をより予測可能にする */
}

:where(img, picture, svg) {
  block-size: auto; /* アスペクト比を保持 */
  max-inline-size: 100%; /* images should never overflow past the available space */
}

:where(p, h1, h2, h3, h4, h5, h6) {
  overflow-wrap: break-word; /* 長い単語は改行 */
}

:where(h1, h2, h3) {
  line-height: calc(1em + 0.5rem); /* 見出しの行の高さを減らす */
}

:where(hr) {
  block-size: 0;
  /* より一貫性のある、スタイリッシュなhr */
  border: none;
  -webkit-border-before: 1px solid;
  border-block-start: 1px solid;
  color: inherit;
  overflow: visible;
}

:where(:focus-visible) {
  /* より一貫性のある、カスタマイズ可能なフォーカスのアウトライン */
  outline: 2px solid var(--focus-color, Highlight);
  outline-offset: 2px;
}

/* .visually-hiddenは後のカスケードレイヤーを上書きするために!importantを使用 */
:where(.visually-hidden:not(:focus, :active, :focus-within, .not-visually-hidden)) {
  border: 0 !important;
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  overflow: hidden !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
}



/* Base
----------------------------------------------------------------- */
html {
  font-size: 62.5%;
  height: -webkit-fill-available;
  scroll-behavior: smooth;
}
body {
  -webkit-font-smoothing: antialiased;
  color: var(--color-00-white);
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 400;
  line-height: var(--line-height-l);
}

::-moz-selection {
  background-color: var(--color-00-main);
  color: var(--color-01-yellow);
}

::selection {
  background-color: var(--color-00-main);
  color: var(--color-01-yellow);
}

:where(a) {
  color: inherit;
  text-decoration: none;
}
:where(a):hover {
  text-decoration: none;
}
:where(ol),
:where(ul),
:where(dl) {
  list-style: none;
}

:where(em),
:where(i) {
  font-style: normal;
}

:where(h1),
:where(h2),
:where(h3),
:where(h4),
:where(h5),
:where(h6) {
  font-size: 1.6rem;
  font-weight: 700;
}

:where(p) {
  font-size: 14px;
  font-weight: 700;
  line-height: var(--line-height-m);
  margin-top: 15px;
}
@media print, screen and (min-width:768px) {
  :where(p) {
    font-size: 15px;
    margin-top: 20px;
  }
}
:where(p).-center {
  text-align: center;
}

:where(em) {
  font-style: normal;
  font-weight: 500;
}

:where(img) {
  display: block;
  height: auto;
  width: 100%;
}

:where(button) {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: transparent;
  border: 0;
  border-radius: 0;
  cursor: pointer;
}

:where(input) {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: var(--color-00-white);
  border: 1px solid var(--color-01-black);
}

:where(textarea) {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: var(--color-00-white);
  border: 1px solid var(--color-01-black);
}

@media print, screen and (max-width:767px) {
  .pc {
    display: none !important;
  }
}
@media print, screen and (min-width:768px) {
  .sp {
    display: none !important;
  }
}
/* ==========================================================================
Layout
========================================================================== */
/* ==========================================================================
Component
========================================================================== */
:root {
  --color-00-black: #000000;
  --color-00-white: #ffffff;
  --color-00-main: #d32c25;
  --color-00-sub: #db9739;
  --color-00-gray: #3c3c3c;
  --color-01-sub: #eeb74d;
  --color-01-beige: #fcf7f0;
  --color-01-red: #e60012;
  --color-01-yellow: #ebe812;
  --color-01-green: #006934;
  --color-02-red: #d33826;
  --color-02-gray: #cdcdcd;
  --color-02-yellow: #ece812;
  --line-height-l: 2;
  --line-height-m: 1.75;
  --line-height-s: 1.5;
  --line-height-xs: 1.3;
  --letter-spacing-l: 0.12em;
  --letter-spacing-m: 0.08em;
  --letter-spacing-s: 0em;
}
div#wolt {
  padding: 0 0 50px;
  background: #01b4df;
  letter-spacing: 0.1em;
  font-feature-settings: "palt"
}
div#wolt .sp-only{
  display:none
}
div#wolt img {
  width: 100%;
}
h1.fv {
  max-width: 1200px;
  margin: 0 auto;
}
h1.fv p {
  text-align: center;
  font-size: 22px;
  color: #fff;
  margin: 0;
}
.p-lead__text{
  margin: 20px 20px 0;
  padding: 20px;
  max-width: 623px;
  text-align: center;
  font-size: 17px;
  line-height: 1.8;
  font-weight: 600;
  color: #fff;
  border: 5px solid;
  border-radius: 30px;
}
.woltapp_link {
    margin: 32px auto 60px;
  padding:0 20px;
    max-width: 500px;
}
#wolt h2.c-section-title {
  text-align: center;
  font-size: 26px;
}
#wolt h2.c-section-title span {
  display: block;
  font-size: 20px;
}
.appinner.sp .image {
    margin: 0 auto 5px;
    max-width: 217px;
}
.appinner.sp figure {
  margin: 0 auto 20px;
  max-width: 200px;
}
figure.wolt-step {
    margin: 0 auto;
    padding: 0 20px;
    max-width: 800px;
}
section.woltapp {
    max-width: 900px;
    margin: 80px auto 100px;
}
footer.p-footer {
  padding: 15px 15px;
  text-align: center;
  color: #e9e9e9;
  background: #353535;
  margin: 0;
  max-width: 100%;
}
footer.p-footer p{
  margin: 0;
}
.feature {
  padding-bottom: 0;
}
@media print, screen and (min-width:768px) {
  h1.fv p {
    font-size: 30px;
  }
  .p-lead__text{
    font-size: 22px;
    max-width: 623px;
    margin: 20px auto 0;
    padding: 20px;
  }
  #wolt h2.c-section-title {
    font-size: 39px;
  }
  #wolt h2.c-section-title span {
    font-size: 28px;
  }
  figure.wolt-step {
    margin: 0 auto;
    padding: 0 20px;
    max-width: 800px;
  }
  .woltapp_link {
    margin: 32px auto 100px;
  }
}
@media print, screen and (min-width:480px){
  br.sp-smartphone {
    display: none;
}
  .appinner.sp {
    display: flex;
    align-items: center;
    gap: 32px;
  }
}


.mail-block {
    margin: 100px auto 0;
    padding: 40px 80px;
    border: 2px solid;
    width: 90%;
}
.mail-block h3 {
    margin: 0 0 20px;
    border-bottom: 2px solid;
}
.mail-block p {
    margin: 0;
    font-size: 17px;
    position: relative;
}
.mail-block p.mail::before {
    margin: 0 10px 0 0;
    display: inline-block;
    background-image: url(/images/common/sprite_icon.png);
    background-size: 347px auto;
    content: " ";
    width: 30px;
    height: 17px;
    background-position: -35px -104px;
}
.mail-block p a {
    color: #fff;
}
@media print, screen and (max-width:769px) {
  .mail-block {
    padding: 40px 30px;
  }
}



