:root{
    --brand-deep:#163a78;     /* 濃紺 */
    --brand-indigo:#1f3f8a;   /* ヒーロー上部の紺 */
    --brand-gold:#c9a227;     /* 和の金 */
    --brand-cream:#faf6ef;    /* 和紙風の地色 */
    --ink-20: rgba(0,0,0,.20);
    --ink-10: rgba(0,0,0,.10);
    --ink-06: rgba(0,0,0,.06);
  }
  
  html,body{
    /* font-family:"Noto Sans JP", system-ui, -apple-system, "Segoe UI", Roboto, "Hiragino Kaku Gothic ProN", "BIZ UDPGothic", Meiryo, sans-serif; */
    font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3",Hiragino Kaku Gothic Pro,"ＭＳ Ｐゴシック",sans-serif;
    color: #0f172a;
    background:
      /* ほんのり色のうねり */
      radial-gradient(1200px 300px at 10% -10%, rgba(22,58,120,.06), transparent 60%),
      radial-gradient(900px 250px at 90% -15%, rgba(201,162,39,.05), transparent 60%),
      linear-gradient(#ffffff, #fffaf2 48%, #ffffff);
  }
  
  /* 和風の見出し下線を細く繊細に */
  .k-divider:after{
    content:""; display:block; width:96px; height:2px; margin-top:.6rem;
    background: linear-gradient(90deg,var(--brand-gold),#e7d9a9);
  }
  
  /* セクション用：やわらかい和紙テクスチャ */
  .paper{
    background:
      radial-gradient(1200px 300px at 20% 0%, rgba(255,255,255,.12), transparent 60%),
      radial-gradient(1200px 300px at 80% 0%, rgba(255,255,255,.08), transparent 60%),
      var(--brand-cream);
    position: relative;
    overflow: hidden;
  }
  /* 細い繊維っぽい筋（とても淡く） */
  .paper:before{
    content:""; position:absolute; inset:0; pointer-events:none; opacity:.06;
    background:
      repeating-linear-gradient( 12deg, #000 0 1px, transparent 1px 16px),
      repeating-linear-gradient(-15deg, #000 0 1px, transparent 1px 20px);
    mix-blend-mode: multiply;
  }
  
  /* シンプルなフェード（動き最小） */
  .fade-in{ opacity:0; transform:translateY(6px); animation:fade .6s ease forwards; }
  @keyframes fade{ to{opacity:1; transform:none;} }
  @media (prefers-reduced-motion: reduce){
    .fade-in{ animation:none; opacity:1; transform:none; }
  }
  
  /* 和風の枠線（薄め） */
  .waframe{ box-shadow: inset 0 0 0 1px var(--ink-06); }
  
  /* 固定ヘッダー */
  .site-header{
    position: fixed; inset: 0 0 auto 0; z-index: 50;
    background: color-mix(in oklab, var(--brand-deep) 95%, transparent);
    -webkit-backdrop-filter: saturate(120%) blur(6px);
    backdrop-filter: saturate(120%) blur(6px);
    border-bottom: 1px solid rgba(255,255,255,.08);
    transition: background .2s ease, box-shadow .2s ease, padding .2s ease;
  }
  .site-header.is-scrolled{
    background: var(--brand-deep);
    box-shadow: 0 5px 18px rgba(0,0,0,.18);
  }
  
  /* ヒーローのグラデーションを少しやわらかく */
  .hero-bg{ background-image: linear-gradient(to bottom, var(--brand-indigo), var(--brand-deep)); }
  