@charset "UTF-8";
/* ==========================================================================
   SWELL ⇄ 静的 LP のブリッジ

   SWELL の LP テンプレート（single-lp.php）が出力するラッパー
     html > body > #body_wrap > #lp-content.lp-content
          > main.lp-content__inner > .lp-content__postContent
   を「無いもの」として扱い、静的版 index.html と同じ土台に戻す。

   元デザインは 1366px / 390px の固定キャンバスに絶対配置で組まれている。
     ・ルートの font-size をビューポート幅に連動させて全体を等比スケール
     ・--gut: calc(50% - 68.3rem) は「祖先がビューポート幅」である前提
     ・.header は position:absolute; inset:0 0 auto
   したがって祖先に padding / max-width / position が入ると全体がずれる。

   【詳細度の方針】
   このファイルは LP ページでのみ読み込むため、セレクタは素のまま使う。
   SWELL の要素セレクタ（body{...} 等）を打ち消す箇所は
   「要素セレクタのまま（詳細度 0,0,1）」で上書きし、
   LP 側のクラス指定（0,1,0 以上）には必ず負けるようにしている。
   ここを .class 付きで書くと LP のデザインを壊すので注意。
   ========================================================================== */

/* --- html ---------------------------------------------------------------- */
/* SWELL は html に字間を入れる（html{letter-spacing:var(--swl-letter_spacing)}）。
   字送りが変わると固定キャンバス上の文字幅がずれるため normal に戻す。
   font-size は base.css 側が後勝ちで上書きするのでここでは触らない。 */
html { letter-spacing: normal; }

/* --- body ---------------------------------------------------------------- */
/* SWELL の body は position:relative / max-width / min-width / padding を持つ。
   position:relative のままだと .header の絶対配置の基準がずれる。
   font-family・font-size・color・background・overflow-x は base.css が担当。 */
body {
  /* SWELL は body に font-weight:500（--swl-font_weight）を入れるが、
     静的版は UA 既定の 400。字の太さが変わるので 400 に戻す。 */
  font-weight: 400;
  position: static;
  margin: 0;
  padding: 0;
  max-width: none;
  min-width: 0;
  word-wrap: normal;
  overflow-wrap: normal;
}

/* --- SWELL のラッパーを透明化 -------------------------------------------- */
#body_wrap,
#lp-content.lp-content,
.lp-content__inner,
.lp-content__postContent {
  position: static;
  display: block;
  width: auto;
  max-width: none;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
  overflow: visible;
  font: inherit;
  letter-spacing: inherit;
  color: inherit;
}

/* LP 用の余白変数も 0 に倒しておく（SWELL 側の計算式が効かないように） */
#lp-content.lp-content {
  --swl-pad_lp: 0px;
  --swl-pad_lp_post: 0px;
  --swl-lp_content_width: 100%;
  --article_size: 100%;
}

/* --- 見出しのブラウザ既定値を復元 ---------------------------------------- */
/* 静的版は reset.css で余白だけ潰し、字の大きさは UA 既定のままだった。
   SWELL 環境でも同じ土台にそろえる（LP 側のクラス指定が上書きする）。 */
h1 { font-size: 2em; }
h2 { font-size: 1.5em; }
h3 { font-size: 1.17em; }
h4 { font-size: 1em; }
h1, h2, h3, h4 {
  font-weight: bold;
  line-height: inherit;
  position: static;
  z-index: auto;
}
h1::before, h1::after,
h2::before, h2::after,
h3::before, h3::after,
h4::before, h4::after { content: none; }

/* --- ボタン（SP のハンバーガー） ----------------------------------------- */
/* SWELL は button に appearance / background / border を入れる。 */
button {
  -webkit-appearance: none;
          appearance: none;
  background: none;
  border: 0;
  padding: 0;
  border-radius: 0;
  box-shadow: none;
}
