/* =====================================================================
   Apple Human Interface Guidelines レイヤー（2026-09-28）
   各ページの既存CSSの「あと」に読み込み、見た目だけを HIG に寄せます。
   HTMLの構造・JS・データの流れには触っていません。
   ページの種類は <html data-hig="..."> で切り替えます。
     booking … / と /booking/ と /line-booking/（面談予約）
     jobs    … /jobs/ と /jobs/j-booking/（求人ツール本体）
     member  … /jobs/login|register|verify|welcome|mypage/
     explore … /jobs/explore/（公式LINE向けの公開ページ）
     lp      … /lp/
   ===================================================================== */

:root[data-hig]{
  /* 書体：SF Pro＋ヒラギノ（Apple端末）、それ以外は各OSの標準 */
  --hig-font:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro JP","Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic UI","Meiryo",sans-serif;
  /* システムカラー（ライト） */
  --hig-bg:#F2F2F7;              /* systemGroupedBackground */
  --hig-card:#FFFFFF;            /* secondarySystemGroupedBackground */
  --hig-label:#1C1C1E;           /* label */
  --hig-label2:#6C6C70;          /* secondaryLabel（小さい文字でも読める濃さに調整） */
  --hig-label3:#8E8E93;          /* systemGray */
  --hig-label4:#C7C7CC;          /* systemGray3：シェブロン・無効 */
  --hig-sep:rgba(60,60,67,.18);  /* separator */
  --hig-fill:rgba(118,118,128,.12); /* tertiarySystemFill */
  --hig-fill2:rgba(118,118,128,.2);
  --hig-material:rgba(249,249,249,.92); /* ナビバー・タブバーの半透明素材 */
  /* アクセント（tint）＝Maenomeryのネイビー */
  --hig-tint:#085585;
  --hig-tint-fill:rgba(8,85,133,.1);
  --hig-tint-ring:rgba(8,85,133,.28);
  --hig-red:#FF3B30;
  --hig-pink:#FF2D55;
  --hig-line:#06C755;            /* LINEの緑はブランド色なのでそのまま */
  /* 角丸・高さ */
  --hig-r-card:12px;
  --hig-r-btn:12px;
  --hig-r-field:10px;
  --hig-tap:44px;
  --hig-btn-h:50px;
  --hig-ease:cubic-bezier(.25,.1,.25,1);
}

/* ---------------- 全ページ共通 ---------------- */
[data-hig] body{font-family:var(--hig-font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;-webkit-text-size-adjust:100%}
[data-hig] button,[data-hig] input,[data-hig] select,[data-hig] textarea{font-family:inherit}
[data-hig] h1,[data-hig] h2,[data-hig] h3{letter-spacing:0}
/* 改行：語の途中で折れないよう文節で折る（Chrome/Edge）。見出しは行の長さをそろえる。
   Safariなど未対応のブラウザでは無視され、禁則（line-break:strict）だけが効きます */
[data-hig] body{line-break:strict;word-break:auto-phrase}
[data-hig] h1,[data-hig] h2,[data-hig] h3,[data-hig] .q,[data-hig] .plabel,[data-hig] .lptitle{text-wrap:balance}
[data-hig] p,[data-hig] li,[data-hig] .help,[data-hig] .lead,[data-hig] .note{text-wrap:pretty}
/* ボタンの文字は1行に収める（短いラベルが2行に割れるのを防ぐ） */
[data-hig] button,[data-hig] .btn,[data-hig] .mtab,[data-hig] .selchip,[data-hig] .chip,[data-hig] .req,[data-hig] .required{white-space:nowrap}
[data-hig] .choice,[data-hig] .opt,[data-hig] .slot,[data-hig] .srow,[data-hig] .university-option,[data-hig] .uvitem,[data-hig] .grad-grid button{white-space:normal}
[data-hig] :focus-visible{outline:3px solid var(--hig-tint-ring);outline-offset:2px}
[data-hig] input::placeholder{color:var(--hig-label3)}
/* HIG：押している間は少し薄くなる（拡大・縮小はしない） */
[data-hig] button:not(:disabled):active,[data-hig] a:active{transition:opacity .08s}

/* =====================================================================
   booking：面談予約（/ /booking/ /line-booking/）
   ===================================================================== */
[data-hig="booking"]{
  --bg:var(--hig-bg);--text:var(--hig-label);--muted:var(--hig-label2);--gray:var(--hig-label4);
  --line:var(--hig-sep);--pale:var(--hig-label4);--blue-soft:var(--hig-tint-fill);--err:var(--hig-red)}
[data-hig="booking"] body{background:var(--hig-bg);color:var(--hig-label);line-height:1.6}

/* ナビゲーションバー：半透明＋ブラー、下に細い区切り線 */
[data-hig="booking"] .hd{background:var(--hig-material);-webkit-backdrop-filter:saturate(180%) blur(20px);
  backdrop-filter:saturate(180%) blur(20px);box-shadow:0 .5px 0 var(--hig-sep)}
[data-hig="booking"] .hdtop{background:transparent;color:var(--hig-label);padding:0 8px;min-height:44px}
[data-hig="booking"] .navback{color:var(--hig-tint);font-size:30px;font-weight:300;width:var(--hig-tap);height:var(--hig-tap)}
[data-hig="booking"] .brand{padding-right:var(--hig-tap)}
[data-hig="booking"] .brand b{font-size:11px;font-weight:600;letter-spacing:.06em;color:var(--hig-label3);opacity:1}
[data-hig="booking"] .brand span{font-size:17px;font-weight:600;letter-spacing:0;line-height:1.25}
[data-hig="booking"] .prog{padding:8px 16px 12px}
[data-hig="booking"] .gnum{font-family:var(--hig-font);font-weight:700}
[data-hig="booking"] .pstep{font-size:12px;font-weight:600;letter-spacing:0;color:var(--hig-label2)}
[data-hig="booking"] .plabel{font-size:20px;font-weight:700;color:var(--hig-label)}
[data-hig="booking"] .pnote{font-size:13px;color:var(--hig-label2)}

/* 画面遷移：iOSのプッシュに近い速さ */
[data-hig="booking"] .page.inR,[data-hig="booking"] .page.inL{animation-duration:.35s;animation-timing-function:var(--hig-ease)}

/* カード＝インセットグループ */
[data-hig="booking"] .card{border-radius:var(--hig-r-card);box-shadow:none;padding:20px 16px}
[data-hig="booking"] .q{font-size:20px;font-weight:700}
[data-hig="booking"] .req{background:var(--hig-tint-fill);color:var(--hig-tint);font-size:11px;font-weight:600;border-radius:999px;padding:2px 8px;letter-spacing:0}
[data-hig="booking"] .help{font-size:15px;color:var(--hig-label2);margin-bottom:12px}
[data-hig="booking"] .foot{font-size:12px;color:var(--hig-label3)}

/* 選択肢＝設定アプリ風のリスト。選ぶと右にチェックマーク */
[data-hig="booking"] .choices{gap:0;margin:0 -16px;border-top:.5px solid var(--hig-sep);border-bottom:.5px solid var(--hig-sep)}
[data-hig="booking"] .choice{position:relative;border:0;border-radius:0;background:var(--hig-card);min-height:60px;
  padding:12px 16px;font-size:17px;font-weight:600;transition:background .15s}
[data-hig="booking"] .choices:last-child{margin-bottom:-20px;border-bottom:0}
[data-hig="booking"] .choices:last-child .choice:last-child{border-radius:0 0 var(--hig-r-card) var(--hig-r-card)}
[data-hig="booking"] .choice+.choice::before{content:"";position:absolute;left:16px;right:0;top:0;height:.5px;background:var(--hig-sep)}
[data-hig="booking"] .choice:hover{border-color:transparent}
[data-hig="booking"] .choice:active{background:#E5E5EA}
[data-hig="booking"] .choice .sub{font-size:13px;font-weight:400;color:var(--hig-label2)}
[data-hig="booking"] .choice .mark{order:2;margin-left:auto;width:22px;height:22px;border:0;border-radius:0;background:none}
[data-hig="booking"] .choice.sel{background:var(--hig-card);color:var(--hig-label)}
[data-hig="booking"] .choice.sel .mark{background:none;border:0}
[data-hig="booking"] .choice.sel .mark::after{content:"";width:7px;height:13px;border-radius:0;background:none;
  border:solid var(--hig-tint);border-width:0 2.5px 2.5px 0;transform:translateY(-2px) rotate(45deg)}

/* 週送り・日付・時間枠 */
[data-hig="booking"] .wknav button{background:var(--hig-fill);border:0;border-radius:999px;min-height:34px;padding:6px 14px;
  font-size:13px;font-weight:500;color:var(--hig-tint);white-space:nowrap;flex:0 0 auto}
/* 期間の表示を1行目、前後の週ボタンを2行目の左右に置く（幅が狭くても期間が欠けない） */
[data-hig="booking"] .wknav{flex-wrap:wrap;row-gap:8px}
[data-hig="booking"] .wknav .mon{order:-1;flex:1 0 100%;font-size:17px;font-weight:600;color:var(--hig-label);text-align:center}
[data-hig="booking"] .days{gap:6px}
[data-hig="booking"] .day{border:0;background:var(--hig-bg);border-radius:10px;padding:8px 1px 6px;min-height:var(--hig-tap)}
[data-hig="booking"] .day .d{font-weight:600}
[data-hig="booking"] .day .w{font-size:11px;color:var(--hig-label2)}
[data-hig="booking"] .day .n{color:var(--hig-tint);font-weight:600}
[data-hig="booking"] .day.sun .w{color:var(--hig-red)}
[data-hig="booking"] .day.sel{background:var(--hig-tint);color:#fff}
[data-hig="booking"] .sgroup{font-size:13px;font-weight:400;letter-spacing:0;color:var(--hig-label2);margin:18px 0 6px;padding-left:4px}
[data-hig="booking"] .slot{border:0;background:var(--hig-bg);border-radius:var(--hig-r-btn);min-height:52px;padding:12px 14px}
[data-hig="booking"] .slot:hover{background:var(--hig-tint-fill)}
[data-hig="booking"] .slot:active{background:var(--hig-fill2)}
[data-hig="booking"] .slot .tm{font-size:17px;font-weight:600;color:var(--hig-label);font-variant-numeric:tabular-nums}
[data-hig="booking"] .slot .tm small{font-size:13px;font-weight:400;color:var(--hig-label2)}
[data-hig="booking"] .slot .rt{background:var(--hig-tint-fill);color:var(--hig-tint);font-size:12px;font-weight:600}
[data-hig="booking"] .slot .ar{color:var(--hig-label4);font-weight:400;font-size:20px}
[data-hig="booking"] .skl{background:linear-gradient(90deg,#E9E9EE 25%,#F4F4F7 37%,#E9E9EE 63%);background-size:400% 100%}
[data-hig="booking"] .loading{font-size:13px;font-weight:500;color:var(--hig-label2)}
[data-hig="booking"] .loading::before{border-color:var(--hig-fill2);border-top-color:var(--hig-label2)}

/* 選択中の日時 */
[data-hig="booking"] .selbar{background:var(--hig-tint);border-radius:var(--hig-r-card);padding:12px 14px}
[data-hig="booking"] .selbar .l{font-size:12px;letter-spacing:0;opacity:.75}
[data-hig="booking"] .selbar .v{font-size:17px;font-weight:600}
[data-hig="booking"] .selbar .c{font-size:13px}
[data-hig="booking"] .selbar button{background:rgba(255,255,255,.2);border:0;border-radius:999px;min-height:32px;padding:6px 12px;font-size:13px;font-weight:600}

/* 入力欄：塗りつぶしのテキストフィールド */
[data-hig="booking"] .f label{font-size:15px;font-weight:600;margin-bottom:6px}
[data-hig="booking"] .f input{border:0;border-radius:var(--hig-r-field);background:var(--hig-fill);min-height:var(--hig-btn-h);
  padding:12px 14px;font-size:17px;color:var(--hig-label);box-shadow:inset 0 0 0 1.5px transparent}
[data-hig="booking"] .f input:focus{background:var(--hig-card);box-shadow:inset 0 0 0 1.5px var(--hig-tint),0 0 0 4px var(--hig-tint-fill)}
[data-hig="booking"] .f input.bad{background:#FFF1F0;box-shadow:inset 0 0 0 1.5px var(--hig-red)}
[data-hig="booking"] .err{font-size:13px;font-weight:500;color:var(--hig-red)}
[data-hig="booking"] .kanahint{font-size:13px;font-weight:500;color:var(--hig-tint)}
[data-hig="booking"] .uvlist{border:0;border-radius:var(--hig-r-card);box-shadow:0 8px 32px rgba(0,0,0,.16),0 0 0 .5px var(--hig-sep)}
[data-hig="booking"] .uvitem{font-size:17px;font-weight:400;min-height:var(--hig-tap);border-bottom:.5px solid var(--hig-sep)}
[data-hig="booking"] .uvitem:hover{background:var(--hig-bg)}
[data-hig="booking"] .uvitem small{font-size:13px;font-weight:400;color:var(--hig-label2)}
[data-hig="booking"] .agree{border:0;background:var(--hig-bg);border-radius:var(--hig-r-card);font-size:15px;min-height:var(--hig-btn-h)}
[data-hig="booking"] .agree:has(input:checked){background:var(--hig-tint-fill)}
[data-hig="booking"] .agree a{font-weight:600}
[data-hig="booking"] .agreenote{font-size:12px;color:var(--hig-label3)}

/* ボタン：塗り（primary）・色付き（ghost）。影なし、押すと薄く */
[data-hig="booking"] .btn{border-radius:var(--hig-r-btn);min-height:var(--hig-btn-h);padding:14px 16px;font-size:17px;font-weight:600;transition:opacity .15s,background .15s}
[data-hig="booking"] .btn.primary{background:var(--hig-tint);box-shadow:none}
[data-hig="booking"] .btn.primary:not(:disabled):hover{background:var(--hig-tint)}
[data-hig="booking"] .btn.primary:disabled{background:var(--hig-fill2);color:rgba(60,60,67,.3)}
[data-hig="booking"] .btn:not(:disabled):active{opacity:.7}
[data-hig="booking"] .btn.ghost{background:var(--hig-tint-fill);border:0;color:var(--hig-tint)}
[data-hig="booking"] .btn.line{box-shadow:none}

/* 完了画面 */
[data-hig="booking"] .done h2{font-size:22px;font-weight:700}
[data-hig="booking"] .done p.lead{font-size:15px;color:var(--hig-label2)}
[data-hig="booking"] .summary{border:0;border-radius:var(--hig-r-card);background:var(--hig-bg)}
[data-hig="booking"] .summary .row{border-bottom:.5px solid var(--hig-sep);font-size:15px}
[data-hig="booking"] .summary .k{background:transparent;color:var(--hig-label2);font-weight:400;font-size:13px;padding:12px 14px}
[data-hig="booking"] .summary .v{font-weight:600;padding:12px 14px 12px 0}
[data-hig="booking"] .linebanner .h{font-size:15px;font-weight:600}
[data-hig="booking"] .linebanner button{border-radius:14px;padding:16px 14px;min-height:56px;font-size:17px;font-weight:700;box-shadow:none}
[data-hig="booking"] .linebanner button:active{opacity:.7}

/* LINEの案内＝下から出るシート（つまみ付き） */
[data-hig="booking"] .overlay{background:rgba(0,0,0,.4);-webkit-backdrop-filter:none;backdrop-filter:none;align-items:flex-end;padding:0}
[data-hig="booking"] .sheet{max-width:560px;border-radius:16px 16px 0 0;padding:8px 20px calc(16px + env(safe-area-inset-bottom));
  box-shadow:none;animation:higSheetUp .4s var(--hig-ease)}
@keyframes higSheetUp{from{transform:translateY(100%)}to{transform:none}}
[data-hig="booking"] .grip{display:block;width:36px;height:5px;border-radius:3px;background:var(--hig-label4);margin:0 auto 18px}
[data-hig="booking"] .lptitle{font-size:20px;font-weight:700}
[data-hig="booking"] .linebig{border-radius:14px;padding:18px 14px;min-height:60px;font-size:20px;font-weight:700;box-shadow:none;animation:none}
[data-hig="booking"] .linebig:active{opacity:.7}
[data-hig="booking"] .lmark{font-weight:700}
[data-hig="booking"] .note{font-size:13px;color:var(--hig-label2)}
[data-hig="booking"] .checks li{font-size:15px;font-weight:500;border-bottom:.5px solid var(--hig-sep);min-height:var(--hig-tap)}
[data-hig="booking"] .later{color:var(--hig-tint);font-size:17px;min-height:var(--hig-btn-h)}
@media (min-width:600px){
  [data-hig="booking"] .overlay{align-items:center;padding:20px}
  [data-hig="booking"] .sheet{max-width:440px;border-radius:14px;animation:higFade .25s var(--hig-ease)}
  [data-hig="booking"] .grip{display:none}
}
@keyframes higFade{from{opacity:0;transform:scale(1.04)}to{opacity:1;transform:none}}

/* =====================================================================
   jobs：求人ツール本体（/jobs/ /jobs/j-booking/）
   ===================================================================== */
[data-hig="jobs"]{
  --ink:var(--hig-label);--ink2:var(--hig-label2);--ink3:var(--hig-label3);
  --bg2:var(--hig-bg);--line:var(--hig-sep);--tint:var(--hig-tint-fill);
  --err:var(--hig-red);--heart:var(--hig-pink);--r-btn:var(--hig-r-btn)}
[data-hig="jobs"] body{font-family:var(--hig-font);background:var(--hig-bg);color:var(--hig-label);line-height:1.6}
[data-hig="jobs"] .app{background:var(--hig-bg)}

/* ナビゲーションバー */
[data-hig="jobs"] .hd{background:var(--hig-material);-webkit-backdrop-filter:saturate(180%) blur(20px);
  backdrop-filter:saturate(180%) blur(20px);border-bottom:.5px solid var(--hig-sep)}
[data-hig="jobs"] .hdtop{padding:0 8px;min-height:44px}
[data-hig="jobs"] .navback{color:var(--hig-tint);font-size:30px;font-weight:300;width:var(--hig-tap);height:var(--hig-tap)}
[data-hig="jobs"] .brand span{font-size:17px;font-weight:600;letter-spacing:0}
[data-hig="jobs"] .helpbtn{background:none;color:var(--hig-tint);font-size:17px;font-weight:400;padding:10px 8px;min-height:var(--hig-tap)}

/* 上部タブ＝セグメンテッドコントロール */
[data-hig="jobs"] .menubar{display:flex;gap:0;margin:2px 16px 10px;padding:2px;background:var(--hig-fill);border-radius:9px;overflow:hidden}
[data-hig="jobs"] .mtab{flex:1 1 auto;min-height:32px;padding:6px 10px;border-radius:7px;background:transparent;
  color:var(--hig-label);font-size:13px;font-weight:500;line-height:1.2;box-shadow:none;transition:background .2s,box-shadow .2s}
[data-hig="jobs"] .mtab.on{background:#fff;color:var(--hig-label);font-weight:600;
  box-shadow:0 3px 8px rgba(0,0,0,.12),0 3px 1px rgba(0,0,0,.04),0 0 0 .5px rgba(0,0,0,.04)}
[data-hig="jobs"] .mtab:active{background:transparent;opacity:.6}
[data-hig="jobs"] .mtab.on:active{background:#fff}
[data-hig="jobs"] .mtab-find{flex:0 0 auto;font-size:13px;padding-left:14px;padding-right:14px}

/* 大見出し（Large Title） */
[data-hig="jobs"] .secttl{padding:20px 16px 8px}
[data-hig="jobs"] .secttl h2,[data-hig="jobs"] .hlead h2{font-size:28px;font-weight:700;line-height:1.3}
[data-hig="jobs"] .secttl p,[data-hig="jobs"] .hlead p{font-size:15px;font-weight:400;color:var(--hig-label2)}
[data-hig="jobs"] .count{padding:0 20px 8px;font-size:13px;font-weight:400;color:var(--hig-label2)}
[data-hig="jobs"] .count em{color:var(--hig-label2)}

/* 求人リスト＝メールの受信トレイ（インセットグループ＋区切り線） */
[data-hig="jobs"] .jrow{margin:0 16px;padding:12px 12px 12px 14px;border:0;border-radius:0;background:var(--hig-card);gap:10px}
[data-hig="jobs"] .jrow:not(.jrow + .jrow){border-top-left-radius:var(--hig-r-card);border-top-right-radius:var(--hig-r-card)}
[data-hig="jobs"] .jrow:not(:has(+ .jrow)){border-bottom-left-radius:var(--hig-r-card);border-bottom-right-radius:var(--hig-r-card);margin-bottom:16px}
[data-hig="jobs"] .jrow+.jrow::before{display:block;left:32px;right:0;height:.5px;background:var(--hig-sep)}
[data-hig="jobs"] .jrow:active{background:#E5E5EA}
[data-hig="jobs"] .jdot{width:10px;height:10px;margin-top:7px;background:var(--hig-tint)}
[data-hig="jobs"] .jdot.read{background:transparent}
/* 会社名はメールの差出人と同じく1行。長い社名は…で省略（詳細画面で全文） */
[data-hig="jobs"] .jco{font-size:17px;font-weight:600;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
[data-hig="jobs"] .dco{text-wrap:balance}

[data-hig="jobs"] .jrow.read .jco{font-weight:400;color:var(--hig-label)}
[data-hig="jobs"] .jind{font-size:15px;font-weight:400;color:var(--hig-label);margin-top:2px}
[data-hig="jobs"] .jmeta{font-size:13px;font-weight:400;color:var(--hig-label2);margin-top:2px;line-height:1.6}
[data-hig="jobs"] .jfav{font-size:13px;font-weight:500;color:var(--hig-tint)}
[data-hig="jobs"] .seen{background:var(--hig-fill);color:var(--hig-label2);font-weight:500;border-radius:999px}
[data-hig="jobs"] .jpick{border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600;letter-spacing:0}
[data-hig="jobs"] .jpick-new{background:var(--hig-tint-fill);color:var(--hig-tint);border-color:transparent}
[data-hig="jobs"] .jpick-recommended{background:var(--hig-tint);border-color:var(--hig-tint)}
[data-hig="jobs"] .heart{width:var(--hig-tap);height:var(--hig-tap);margin:-10px -8px -10px 0}
[data-hig="jobs"] .heart svg{stroke:var(--hig-label4)}
[data-hig="jobs"] .heart:active{transform:none;opacity:.6}

/* 検索（条件のグループと選択チップ） */
[data-hig="jobs"] .search-hint{font-size:15px;color:var(--hig-label2);margin:0 20px 16px}
[data-hig="jobs"] [data-search-options] .sgroup{border:0;border-radius:var(--hig-r-card);background:var(--hig-card)}
[data-hig="jobs"] [data-search-options] summary{min-height:var(--hig-btn-h);font-size:17px;font-weight:400;color:var(--hig-label)}
[data-hig="jobs"] [data-search-options] summary span{color:var(--hig-label3)}
[data-hig="jobs"] [data-search-options] .slist{padding:2px 12px 14px}
[data-hig="jobs"] [data-search-options] .srow{min-height:36px;padding:6px 14px;border:0;border-radius:999px;background:var(--hig-fill);gap:6px}
[data-hig="jobs"] [data-search-options] .st{font-size:15px;font-weight:400;color:var(--hig-label)}
[data-hig="jobs"] [data-search-options] .sck{display:none}
[data-hig="jobs"] [data-search-options] .sel{background:var(--hig-tint)}
[data-hig="jobs"] [data-search-options] .sel .st{color:#fff;font-weight:600}
[data-hig="jobs"] [data-search-options] .sel .st::before{content:"✓ "}
[data-hig="jobs"] [data-search-options] .zero{opacity:.35}
[data-hig="jobs"] .sgroup>h3{font-size:13px;font-weight:400;letter-spacing:0;color:var(--hig-label2)}
[data-hig="jobs"] .slist{border-color:var(--hig-sep)}
[data-hig="jobs"] .srow .st{font-size:17px;font-weight:400}
[data-hig="jobs"] .srow .sn{font-size:17px;font-weight:400;color:var(--hig-label2)}
[data-hig="jobs"] .srow .sc{color:var(--hig-label4);font-weight:400}
[data-hig="jobs"] .findbox input{border:0;border-radius:var(--hig-r-field);background:var(--hig-fill);min-height:var(--hig-tap);
  padding:10px 14px;font-size:17px;color:var(--hig-label)}
[data-hig="jobs"] .findbox input:focus{outline:none;box-shadow:0 0 0 4px var(--hig-tint-fill)}
[data-hig="jobs"] .selchip{background:var(--hig-tint-fill);color:var(--hig-tint);border-radius:999px;min-height:32px;padding:5px 12px;font-size:13px;font-weight:500}
[data-hig="jobs"] .scard{background:var(--hig-card)}
[data-hig="jobs"] .stt b{font-size:17px;font-weight:600}
[data-hig="jobs"] .stt small{font-size:13px;font-weight:400;color:var(--hig-label2)}
[data-hig="jobs"] .snum em{font-weight:700;color:var(--hig-tint)}

/* 下に固定するバー（タブバー・結果を見る・予約ステップ・詳細）＝半透明素材 */
[data-hig="jobs"] .tabbar,[data-hig="jobs"] .fbar,[data-hig="jobs"] .stepbar,[data-hig="jobs"] .dbar{
  background:var(--hig-material);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);
  border-top:.5px solid var(--hig-sep);box-shadow:none}
[data-hig="jobs"] .tabbar-in .tbitem{padding:7px 0 4px;gap:2px;color:var(--hig-label3)}
[data-hig="jobs"] .tabbar-in .tbitem>span{font-size:10px;font-weight:500;letter-spacing:0;line-height:14px}
[data-hig="jobs"] .tbitem.on{color:var(--hig-tint)}
[data-hig="jobs"] .tbitem.on svg{stroke-width:2.2}
[data-hig="jobs"] .tbitem:active{transform:none}
[data-hig="jobs"] .tbn{background:var(--hig-red);box-shadow:none;font-weight:600;font-size:11px}
[data-hig="jobs"] .fbar .row2 .btn{border-radius:var(--hig-r-btn)}

/* ボタン */
[data-hig="jobs"] .btn{border-radius:var(--hig-r-btn);min-height:var(--hig-btn-h);padding:14px 16px;font-size:17px;font-weight:600;
  box-shadow:none;transition:opacity .15s}
[data-hig="jobs"] .btn:active{transform:none;opacity:.7}
[data-hig="jobs"] .btn.primary,[data-hig="jobs"] .btn.cyan{background:var(--hig-tint);box-shadow:none}
[data-hig="jobs"] .btn.primary:disabled,[data-hig="jobs"] .btn.cyan:disabled{background:var(--hig-fill2);color:rgba(60,60,67,.3)}
[data-hig="jobs"] .btn.ghost{background:var(--hig-tint-fill);color:var(--hig-tint)}
[data-hig="jobs"] .btn.sm{min-height:var(--hig-tap);padding:10px 14px;font-size:15px}
[data-hig="jobs"] .fbar .row2 .btn.ghost,[data-hig="jobs"] .stepbar-in .btn.back{font-size:17px}

/* 使い方・CTA・完了などのカード */
[data-hig="jobs"] .hwrap,[data-hig="jobs"] .ctas{padding-left:16px;padding-right:16px}
[data-hig="jobs"] .hcard,[data-hig="jobs"] .htips,[data-hig="jobs"] .cta,[data-hig="jobs"] .done,[data-hig="jobs"] .calmsg,[data-hig="jobs"] .recap{
  border:0;border-radius:var(--hig-r-card);box-shadow:none;background:var(--hig-card)}
[data-hig="jobs"] .hillust{border-bottom:0}
[data-hig="jobs"] .hn{font-size:13px;font-weight:600;letter-spacing:0;color:var(--hig-tint)}
[data-hig="jobs"] .hcard h3,[data-hig="jobs"] .cta h3{font-size:20px;font-weight:700}
[data-hig="jobs"] .hcard p,[data-hig="jobs"] .cta .lead,[data-hig="jobs"] .done p,[data-hig="jobs"] .favempty p{font-size:15px;font-weight:400;color:var(--hig-label2);line-height:1.7}
[data-hig="jobs"] .hcard p b,[data-hig="jobs"] .cta .lead b,[data-hig="jobs"] .htips li b{font-weight:600;color:var(--hig-label)}
[data-hig="jobs"] .htips h3{font-size:17px;font-weight:600;color:var(--hig-label)}
[data-hig="jobs"] .htips li{font-size:15px;font-weight:400;color:var(--hig-label2)}
[data-hig="jobs"] .ctatag{border-radius:999px;font-size:12px;font-weight:600}
[data-hig="jobs"] .done h3,[data-hig="jobs"] .favempty h3{font-size:22px;font-weight:700}
[data-hig="jobs"] .recap .r{border-bottom:.5px solid var(--hig-sep)}
[data-hig="jobs"] .recap .r b{font-size:13px;font-weight:400;color:var(--hig-label2)}
[data-hig="jobs"] .recap .r span{font-size:15px;font-weight:600}

/* 予約ステップ（進捗・カレンダー・選択肢・入力） */
[data-hig="jobs"] .prog{background:var(--hig-card);border-bottom:.5px solid var(--hig-sep)}
[data-hig="jobs"] .pstep{font-size:12px;font-weight:600;letter-spacing:0;color:var(--hig-label2)}
[data-hig="jobs"] .plabel{font-size:22px;font-weight:700}
[data-hig="jobs"] .pnote{font-size:13px;font-weight:400;color:var(--hig-label2)}
[data-hig="jobs"] .grit .gnum{font-family:var(--hig-font);font-weight:700}
[data-hig="jobs"] .pbar{height:4px;background:var(--hig-fill2)}
[data-hig="jobs"] .pbar i{background:var(--hig-tint)}
[data-hig="jobs"] .monlabel,[data-hig="jobs"] .tgrp>b{font-size:13px;font-weight:400;color:var(--hig-label2)}
[data-hig="jobs"] .dtile{background:var(--hig-card);border-radius:var(--hig-r-card)}
[data-hig="jobs"] .dtile b{font-size:12px;font-weight:500;color:var(--hig-label2)}
[data-hig="jobs"] .dtile em{font-weight:600;font-variant-numeric:tabular-nums}
[data-hig="jobs"] .dtile small{font-weight:600;color:var(--hig-tint)}
[data-hig="jobs"] .dtile.sun b,[data-hig="jobs"] .dtile.sun em{color:var(--hig-red)}
[data-hig="jobs"] .dtile.on,[data-hig="jobs"] .tbtn.on{background:var(--hig-tint);box-shadow:none}
[data-hig="jobs"] .tbtn{background:var(--hig-card);border-radius:10px;min-height:var(--hig-tap);font-size:17px;font-weight:600;
  color:var(--hig-tint);font-variant-numeric:tabular-nums}
[data-hig="jobs"] .tbtn:active{transform:none;opacity:.7}
[data-hig="jobs"] .picked{background:var(--hig-tint-fill);border-radius:var(--hig-r-card)}
[data-hig="jobs"] .picked b{font-size:12px;font-weight:600;letter-spacing:0}
[data-hig="jobs"] .picked p{font-size:17px;font-weight:600}
[data-hig="jobs"] .opt{border:2px solid transparent;border-radius:var(--hig-r-card);background:var(--hig-card);min-height:56px;
  font-size:17px;font-weight:600;padding:14px 16px}
[data-hig="jobs"] .opt:active{transform:none;background:#E5E5EA}
[data-hig="jobs"] .opt.on{border-color:var(--hig-tint);background:var(--hig-tint-fill);color:var(--hig-tint)}
[data-hig="jobs"] .opt small{font-size:13px;font-weight:400;color:var(--hig-label2)}
[data-hig="jobs"] .opt.sub{border:2px dashed var(--hig-label4);background:transparent;font-size:15px}
[data-hig="jobs"] .fld label{font-size:15px;font-weight:600}
[data-hig="jobs"] .fld label i{color:var(--hig-red);font-weight:500;font-size:12px}
[data-hig="jobs"] .fld input,[data-hig="jobs"] select{border:0;border-radius:var(--hig-r-field);background-color:var(--hig-card);
  min-height:var(--hig-btn-h);font-size:17px;font-weight:400;color:var(--hig-label);box-shadow:none}
[data-hig="jobs"] .fld input{padding:12px 14px}
[data-hig="jobs"] .fld input:focus,[data-hig="jobs"] select:focus{box-shadow:inset 0 0 0 1.5px var(--hig-tint),0 0 0 4px var(--hig-tint-fill)}
[data-hig="jobs"] .fld input.bad{box-shadow:inset 0 0 0 1.5px var(--hig-red)}
[data-hig="jobs"] .err{font-size:13px;font-weight:500;color:var(--hig-red)}
[data-hig="jobs"] .note{font-size:13px;font-weight:400;color:var(--hig-label2)}
[data-hig="jobs"] .intlbtn{font-size:15px;font-weight:400;color:var(--hig-tint);text-decoration:none;min-height:var(--hig-tap)}

/* 求人詳細 */
[data-hig="jobs"] .dhero{background:var(--hig-card);padding:20px 16px}
[data-hig="jobs"] .dco{font-size:24px;font-weight:700;line-height:1.35;letter-spacing:0}
[data-hig="jobs"] .dind{font-size:15px;font-weight:400;color:var(--hig-label2)}
[data-hig="jobs"] .dappeal{background:var(--hig-tint-fill);border:0;border-radius:var(--hig-r-card)}
[data-hig="jobs"] .dappeal b{font-size:13px;font-weight:600}
[data-hig="jobs"] .dappeal p{font-size:17px;font-weight:600}
[data-hig="jobs"] .company-intro{border-radius:var(--hig-r-card);border-left:0;background:var(--hig-bg);color:var(--hig-label);font-size:15px;line-height:1.8}
[data-hig="jobs"] .dl{margin-top:16px}
[data-hig="jobs"] .dl .row{border:0;border-radius:var(--hig-r-card);margin:0 16px 12px;padding:14px 16px}
[data-hig="jobs"] .dl dt{font-size:13px;font-weight:600;color:var(--hig-label2);border-bottom:.5px solid var(--hig-sep)}
[data-hig="jobs"] .dl dd{font-size:17px;font-weight:400;line-height:1.7}
[data-hig="jobs"] .dl dd li b{font-size:13px;font-weight:400;color:var(--hig-label2)}
[data-hig="jobs"] .lnk{color:var(--hig-tint);font-weight:400}
[data-hig="jobs"] .dsite{background:var(--hig-tint-fill);color:var(--hig-tint);border-radius:var(--hig-r-btn);min-height:var(--hig-btn-h);font-size:17px;font-weight:600}
[data-hig="jobs"] .dsite:active{transform:none;opacity:.7}
[data-hig="jobs"] .bmdone{background:var(--hig-tint-fill);color:var(--hig-tint);font-weight:600;border-radius:999px}

/* 気になる */
[data-hig="jobs"] .fitem{background:var(--hig-card)}
[data-hig="jobs"] .fitem+.fitem::before{height:.5px;background:var(--hig-sep)}
[data-hig="jobs"] .fmain b{font-size:17px;font-weight:600}
[data-hig="jobs"] .fmain small{font-size:13px;font-weight:400;color:var(--hig-label2)}
[data-hig="jobs"] .del{background:none;color:var(--hig-red);font-size:15px;font-weight:400;min-height:var(--hig-tap);padding:8px 10px}
[data-hig="jobs"] .del:active{transform:none;opacity:.6}

/* 再開バナー・トースト・フッター */
[data-hig="jobs"] .resume{margin:12px 16px 16px;border:0;border-radius:var(--hig-r-card);background:#FFF6E5}
[data-hig="jobs"] .resume .rtx b{font-size:15px;font-weight:600}
[data-hig="jobs"] .resume .rtx small{font-size:13px;font-weight:400}
[data-hig="jobs"] .resume .rbtn .btn{min-height:var(--hig-tap);border-radius:10px;font-size:15px}
[data-hig="jobs"] .resume .rbtn .btn.ghost{border:0}
[data-hig="jobs"] .toast{background:rgba(28,28,30,.88);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);
  font-size:15px;font-weight:500;box-shadow:0 8px 24px rgba(0,0,0,.18)}
[data-hig="jobs"] .foot{font-size:12px;font-weight:400;color:var(--hig-label3)}

/* =====================================================================
   member：ログイン・登録・認証・ようこそ・マイページ
   ===================================================================== */
[data-hig="member"]{--ink:var(--hig-label);--muted:var(--hig-label2);--line:var(--hig-sep);--pale:var(--hig-tint-fill)}
[data-hig="member"] body{font-family:var(--hig-font);background:var(--hig-bg);color:var(--hig-label)}
[data-hig="member"] header{position:sticky;top:0;z-index:40;max-width:none;min-height:44px;padding:10px 16px;
  background:var(--hig-material);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);
  border-bottom:.5px solid var(--hig-sep)}
[data-hig="member"] header a{font-size:17px;font-weight:400;color:var(--hig-tint)}
[data-hig="member"] header .brand{font-size:17px;font-weight:600;color:var(--hig-label);letter-spacing:0}
[data-hig="member"] .preview{font-size:13px}
[data-hig="member"] h1,[data-hig="member"] .entry-intro h1,[data-hig="member"] .my-shell h1{font-size:28px;font-weight:700;color:var(--hig-label);letter-spacing:0;line-height:1.35}
[data-hig="member"] h2,[data-hig="member"] .wizard h2,[data-hig="member"] .form-card h2{font-size:22px;font-weight:700;color:var(--hig-label);letter-spacing:0}
[data-hig="member"] .lead,[data-hig="member"] .entry-intro p{font-size:15px;color:var(--hig-label2)}
[data-hig="member"] .steps,[data-hig="member"] .eyebrow{font-size:13px;font-weight:600;letter-spacing:0;color:var(--hig-label2)}
[data-hig="member"] .form-card,[data-hig="member"] .wizard{border:0;border-radius:var(--hig-r-card);box-shadow:none;background:var(--hig-card)}
[data-hig="member"] label{font-size:15px;font-weight:600;color:var(--hig-label)}
[data-hig="member"] input,[data-hig="member"] select{border:0;border-radius:var(--hig-r-field);background-color:var(--hig-fill);
  min-height:var(--hig-btn-h);font-size:17px;color:var(--hig-label);padding:12px 14px}
[data-hig="member"] input:focus,[data-hig="member"] select:focus{outline:none;background-color:var(--hig-card);
  box-shadow:inset 0 0 0 1.5px var(--hig-tint),0 0 0 4px var(--hig-tint-fill)}
[data-hig="member"] input[readonly]{background-color:var(--hig-fill);color:var(--hig-label2)}
[data-hig="member"] .check{font-size:13px;font-weight:400;color:var(--hig-label2)}
[data-hig="member"] .check input{min-height:20px;width:20px;height:20px;background:none;box-shadow:none}
[data-hig="member"] .code{font-size:28px;letter-spacing:.4em;font-variant-numeric:tabular-nums}
[data-hig="member"] .btn{border-radius:var(--hig-r-btn);min-height:var(--hig-btn-h);font-size:17px;font-weight:600;background:var(--hig-tint);box-shadow:none}
[data-hig="member"] .btn:hover{opacity:1}
[data-hig="member"] .btn:not(:disabled):active{opacity:.7}
[data-hig="member"] .btn:disabled{background:var(--hig-fill2);color:rgba(60,60,67,.3);opacity:1}
[data-hig="member"] .ghost,[data-hig="member"] .btn.ghost{background:var(--hig-tint-fill);color:var(--hig-tint)}
[data-hig="member"] .signup-link{border:0;border-radius:var(--hig-r-btn);background:var(--hig-card);min-height:var(--hig-btn-h);color:var(--hig-tint);font-size:15px}
[data-hig="member"] .signup-link:hover{background:var(--hig-card)}
[data-hig="member"] .signup-link:active{background:#E5E5EA}
[data-hig="member"] .tiny,[data-hig="member"] footer{font-size:12px;color:var(--hig-label3)}
[data-hig="member"] .error{background:var(--hig-tint-fill);color:var(--hig-tint);font-weight:500;border-radius:10px}
[data-hig="member"] .detail-note{background:var(--hig-tint-fill);border-radius:10px}
[data-hig="member"] .entry-intro .entry-info{color:var(--hig-label2)}
/* 登録ステップの丸 */
[data-hig="member"] .step-track li:not(:last-child):after{background:var(--hig-sep)}
[data-hig="member"] .step-track span{border:0;background:var(--hig-fill);color:var(--hig-label2);font-weight:600}
[data-hig="member"] .step-track [aria-current] span{background:var(--hig-tint);border:0;color:#fff}
[data-hig="member"] .step-track .complete span{background:var(--hig-tint-fill);color:var(--hig-tint);border:0}
[data-hig="member"] .step-track small{font-size:11px;color:var(--hig-label2)}
[data-hig="member"] .step-track [aria-current] small,[data-hig="member"] .step-track .complete small{color:var(--hig-tint);font-weight:600}
[data-hig="member"] .required{background:var(--hig-tint-fill);color:var(--hig-tint);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}
/* 卒業年度などの大きい選択ボタン */
[data-hig="member"] .grad-grid button{border:2px solid transparent;border-radius:var(--hig-r-card);background:var(--hig-fill);color:var(--hig-label)}
[data-hig="member"] .grad-grid b{font-weight:600}
[data-hig="member"] .grad-grid small{color:var(--hig-label2)}
[data-hig="member"] .grad-grid [aria-pressed=true]{border:2px solid var(--hig-tint);background:var(--hig-tint-fill);color:var(--hig-tint)}
[data-hig="member"] .grad-grid button:active{opacity:.7}
[data-hig="member"] .step-actions .ghost{background:var(--hig-fill);color:var(--hig-label)}
[data-hig="member"] .university-option{border:0;border-bottom:.5px solid var(--hig-sep);border-radius:0;margin:0;background:var(--hig-card);
  color:var(--hig-label);font-size:17px;min-height:var(--hig-tap)}
[data-hig="member"] .university-option:active{background:#E5E5EA}
/* マイページ */
[data-hig="member"] .my-shell .form-card{padding:20px 16px}
[data-hig="member"] .my-shell .btn.sm{min-height:36px;border-radius:999px;padding:6px 14px;font-size:15px;font-weight:500}
[data-hig="member"] .my-shell .btn.sm.ghost{background:var(--hig-tint-fill);color:var(--hig-tint)}
[data-hig="member"] .pview>div{border-bottom:.5px solid var(--hig-sep);min-height:var(--hig-tap);align-items:center}
[data-hig="member"] .pview dt{font-size:15px;font-weight:400;color:var(--hig-label2)}
[data-hig="member"] .pview dd{font-size:17px;font-weight:400;color:var(--hig-label)}
[data-hig="member"] .colist li{border-bottom:.5px solid var(--hig-sep)}
[data-hig="member"] .colist a{position:relative;color:var(--hig-label);font-size:17px;font-weight:400;min-height:var(--hig-tap);padding:12px 24px 12px 0}
[data-hig="member"] .colist a::after{content:"›";position:absolute;right:2px;top:50%;transform:translateY(-52%);color:var(--hig-label4);font-size:22px}
[data-hig="member"] .colist a:hover{text-decoration:none}
[data-hig="member"] .my-nav{background:var(--hig-material);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);
  border-top:.5px solid var(--hig-sep);padding:0 10px env(safe-area-inset-bottom)}
[data-hig="member"] .my-nav a{display:flex;align-items:center;justify-content:center;min-height:49px;color:var(--hig-label3);font-size:12px;font-weight:500}
[data-hig="member"] .my-nav [aria-current]{color:var(--hig-tint);font-weight:600}
[data-hig="member"] .exit{color:var(--hig-tint);text-decoration:none;font-size:17px;min-height:var(--hig-tap)}
[data-hig="member"] .danger{color:var(--hig-red);text-decoration:none;font-size:15px;min-height:var(--hig-tap)}

/* =====================================================================
   explore：公式LINE向けの公開ページ（/jobs/explore/）
   トップの画像（hero）はそのまま使います
   ===================================================================== */
[data-hig="explore"]{--ink:var(--hig-label);--muted:var(--hig-label2);--line:var(--hig-sep);--pale:var(--hig-tint-fill);--bg:var(--hig-bg)}
[data-hig="explore"] body{font-family:var(--hig-font);background:var(--hig-bg);color:var(--hig-label)}
[data-hig="explore"] header .brand{font-weight:600;letter-spacing:0}
[data-hig="explore"] header a{font-weight:400;color:var(--hig-tint)}
[data-hig="explore"] .intro h1,[data-hig="explore"] .line-intro h2,[data-hig="explore"] .line-end h2{font-weight:700;letter-spacing:0}
[data-hig="explore"] .section-label,[data-hig="explore"] .search-badge,[data-hig="explore"] .eyebrow{font-size:13px;font-weight:600;letter-spacing:0;color:var(--hig-label2)}
[data-hig="explore"] .search-box #searchTitle{font-size:24px;font-weight:700;color:var(--hig-label)}
[data-hig="explore"] .filter-help,[data-hig="explore"] .note,[data-hig="explore"] .sample-note,[data-hig="explore"] .sample-privacy,[data-hig="explore"] .hero-caption{color:var(--hig-label2)}
[data-hig="explore"] .hero-action{color:var(--hig-tint);font-weight:600}
[data-hig="explore"] .sgroup{border:0;border-radius:var(--hig-r-card);background:var(--hig-card)}
[data-hig="explore"] .search-box .sgroup summary{min-height:var(--hig-btn-h);font-size:17px;font-weight:400;color:var(--hig-label)}
[data-hig="explore"] .group-toggle:after{color:var(--hig-label3)}
[data-hig="explore"] .srow{min-height:36px;padding:6px 14px;border:0;border-radius:999px;background:var(--hig-fill);color:var(--hig-label);font-size:15px}
[data-hig="explore"] .srow .sck{display:none}
[data-hig="explore"] .srow.sel{background:var(--hig-tint);color:#fff}
[data-hig="explore"] .srow.sel .st{font-weight:600}
[data-hig="explore"] .srow.sel .st::before{content:"✓ "}
[data-hig="explore"] .srow:active:not(:disabled){background:var(--hig-fill2);color:var(--hig-label)}
[data-hig="explore"] .srow.sel:active:not(:disabled){background:var(--hig-tint);color:#fff;opacity:.7}
[data-hig="explore"] .st{font-weight:400}
[data-hig="explore"] .sn{color:inherit;opacity:.7}
[data-hig="explore"] .chip{border:0;background:var(--hig-tint-fill);color:var(--hig-tint);border-radius:999px;min-height:32px;font-size:13px;font-weight:500}
[data-hig="explore"] input[type=search],[data-hig="explore"] select{border:0;border-radius:var(--hig-r-field);background-color:var(--hig-card);min-height:var(--hig-btn-h);font-size:17px;color:var(--hig-label)}
[data-hig="explore"] .primary,[data-hig="explore"] .secondary,[data-hig="explore"] .filter-actions .primary{border:0;border-radius:var(--hig-r-btn);min-height:var(--hig-btn-h);
  display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:600;box-shadow:none}
[data-hig="explore"] .primary,[data-hig="explore"] .filter-actions .primary{background:var(--hig-tint);color:#fff}
[data-hig="explore"] .secondary{background:var(--hig-tint-fill);color:var(--hig-tint)}
[data-hig="explore"] .filter-actions .secondary{background:transparent;color:var(--hig-tint);font-size:17px;font-weight:400}
[data-hig="explore"] .primary:active,[data-hig="explore"] .secondary:active{opacity:.7}
[data-hig="explore"] .text-button{color:var(--hig-tint);text-decoration:none;font-size:15px;min-height:var(--hig-tap)}
[data-hig="explore"] .job{border:0;border-radius:var(--hig-r-card);background:var(--hig-card)}
[data-hig="explore"] .job h3{font-weight:700;color:var(--hig-label)}
[data-hig="explore"] .job .tag{font-weight:600;color:var(--hig-tint)}
[data-hig="explore"] .job dt{color:var(--hig-label2);font-weight:400}
[data-hig="explore"] .job dd.pay{color:var(--hig-label);font-weight:600}
[data-hig="explore"] .line-cta{border-radius:var(--hig-r-btn);box-shadow:none;font-weight:600}
[data-hig="explore"] .line-steps b{background:var(--hig-tint-fill);color:var(--hig-tint);font-weight:600}
[data-hig="explore"] .line-steps strong{font-weight:600}
[data-hig="explore"] .assurance,[data-hig="explore"] .empty,[data-hig="explore"] .loading{border-radius:var(--hig-r-card)}
[data-hig="explore"] .floating-line{background:var(--hig-material);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-top:.5px solid var(--hig-sep)}
[data-hig="explore"] footer{border-top:.5px solid var(--hig-sep);color:var(--hig-label3)}

/* =====================================================================
   lp：/lp/（背景のネイビーとGRITリングはブランド要素として残す）
   ===================================================================== */
[data-hig="lp"]{--ink:var(--hig-label);--muted:var(--hig-label2);--soft:var(--hig-bg)}
[data-hig="lp"] body{font-family:var(--hig-font);font-weight:400}
[data-hig="lp"] h1,[data-hig="lp"] h2,[data-hig="lp"] h3{font-weight:700;letter-spacing:0}
[data-hig="lp"] .panel{border:0;border-radius:20px;box-shadow:none}
[data-hig="lp"] .brand{font-weight:700}
[data-hig="lp"] .grad-badge{border:0;background:var(--hig-tint-fill);font-weight:600}
[data-hig="lp"] .eyebrow{font-weight:600;letter-spacing:0}
[data-hig="lp"] .hero-tags span{border:0;background:var(--hig-tint-fill);font-weight:600}
[data-hig="lp"] .entry-cta{min-height:56px;font-size:17px;font-weight:600;box-shadow:none;transition:opacity .15s}
[data-hig="lp"] .entry-cta:hover{transform:none;box-shadow:none;opacity:.88}
[data-hig="lp"] .entry-cta:active{opacity:.7}
[data-hig="lp"] .feature-tags span{border:0;border-radius:999px;font-weight:600}
[data-hig="lp"] .app-preview{border:.5px solid var(--hig-sep);border-radius:var(--hig-r-card);box-shadow:none}
[data-hig="lp"] .mock-tabs .selected{background:var(--hig-tint);box-shadow:none}
[data-hig="lp"] .mock-tabs>span{background:var(--hig-fill);color:var(--hig-label2)}
[data-hig="lp"] .feature-message{border-radius:var(--hig-r-card);font-weight:600}
[data-hig="lp"] .choice-card{border:.5px solid var(--hig-sep);border-radius:16px;box-shadow:none}
[data-hig="lp"] .choice-tag{font-weight:600}
[data-hig="lp"] .choice-cta{background:var(--hig-tint);border-radius:var(--hig-r-btn);box-shadow:none;font-weight:600;transition:opacity .15s}
[data-hig="lp"] .choice-cta.light{background:var(--hig-tint-fill);color:var(--hig-tint)}
[data-hig="lp"] .choice-cta:hover{transform:none;opacity:.88}
[data-hig="lp"] .choice-cta:active{opacity:.7}
[data-hig="lp"] .choice-note{font-weight:400;color:var(--hig-label2)}
[data-hig="lp"] .steps li{border:0;background:var(--hig-bg);border-radius:var(--hig-r-card)}
[data-hig="lp"] .step-number{font-weight:700;font-size:17px}
[data-hig="lp"] .steps p{color:var(--hig-label2)}

/* 動きを減らす設定の人には、シート・画面遷移のアニメーションを止める */
@media (prefers-reduced-motion:reduce){
  [data-hig] .sheet,[data-hig] .page{animation:none!important}
}

/* 幅の狭いスマホ（SE等）では社名の文字を一段小さくして、1行に収まる社名を増やす */
@media (max-width:360px){
  [data-hig="jobs"] .jco{font-size:16px}
  [data-hig="jobs"] .dco{font-size:21px}
}
