/* =========================================================
   あきない繁盛研究所 サイト共通デザイン（完成版）
   B案「現場の運用室」を土台に、A案「帳場」の落ち着きを足したもの
   - 色：白／紙 #f6f4ef／黒鉛 #141513／群青 #2236e0（行動・稼働状態・強調だけ）
   - 書体：見出し＝IBM Plex Sans JP（600）、数字とラベル＝IBM Plex Mono、本文＝端末のゴシック
   - 証拠（実画面・数字・システム）はパネル、言葉（考え方・代表・質問）は罫線と余白で組む
   - 写真は実写のみ。イラストとアイコンは使わない。矢印は文字の「→」
   クラスはすべて jf- で始める（既存の LP のクラスと衝突させない）
   ========================================================= */
:root{
  --jf-bg:#ffffff; --jf-paper:#f6f4ef; --jf-paper-2:#ece8df;
  --jf-line:#e2ded5; --jf-line-2:#c6c1b6;
  --jf-ink:#141513; --jf-ink-2:#2d2f2c; --jf-mute:#5d5f5a;
  --jf-blue:#2236e0; --jf-blue-2:#1a29b8; --jf-blue-tint:#eceefc;
  --jf-dark:#1b1e21; --jf-dark-2:#25282c; --jf-dark-line:#34383b; --jf-night:#0f1011; --jf-dark-ink:#f3f2ee; --jf-dark-mute:#a9aca7;
  --jf-head:"IBM Plex Sans JP","Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic Medium",Meiryo,sans-serif;
  --jf-sans:"Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic Medium","YuGothic",Meiryo,sans-serif;
  --jf-mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;
  --jf-w:1200px; --jf-gut:clamp(20px,4vw,48px); --jf-r:4px;
  --jf-s1:8px; --jf-s2:16px; --jf-s3:24px; --jf-s4:32px; --jf-s5:56px; --jf-s6:96px; --jf-s7:144px;
  --jf-hd-h:76px;
}

/* ---------- 土台（サイト全体） ---------- */
.jf-site{background:var(--jf-bg);color:var(--jf-ink-2);font-family:var(--jf-sans);-webkit-font-smoothing:antialiased}
body:has(.jf-site){background:var(--jf-bg)}
.jf-site .jf-wrap{width:100%;max-width:calc(var(--jf-w) + var(--jf-gut)*2);margin:0 auto;padding:0 var(--jf-gut);box-sizing:border-box}
.jf-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.jf-skip{position:absolute;left:8px;top:-60px;z-index:100;background:var(--jf-ink);color:#fff;padding:10px 16px;border-radius:var(--jf-r);font-size:14px;text-decoration:none}
.jf-skip:focus{top:8px}
.jf-site :focus-visible{outline:2px solid var(--jf-blue);outline-offset:3px}

/* ---------- ボタン・リンク（ヘッダー・フッター・本文で共通） ---------- */
.jf-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:54px;padding:12px 18px 12px 22px;border-radius:var(--jf-r);font-family:var(--jf-head);font-weight:600;font-size:15.5px;line-height:1.4;letter-spacing:.02em;text-decoration:none!important;border:1px solid transparent;box-sizing:border-box;transition:background-color .15s,color .15s,border-color .15s;cursor:pointer}
.jf-btn::after{content:"→";font-family:var(--jf-mono);font-weight:500}
.jf-btn--down::after{content:"↓"}
.jf-btn--blue{background:var(--jf-blue);color:#fff!important}
.jf-btn--blue:hover{background:var(--jf-blue-2)}
.jf-btn--line{background:#fff;color:var(--jf-ink)!important;border-color:var(--jf-line-2)}
.jf-btn--line:hover{border-color:var(--jf-ink)}
.jf-btn--white{background:#fff;color:var(--jf-ink)!important}
.jf-btn--white:hover{background:var(--jf-paper)}
.jf-btn--ghost{background:transparent;color:#fff!important;border-color:rgba(255,255,255,.45)}
.jf-btn--ghost:hover{border-color:#fff}
.jf-btn--lineapp{background:#06c755;color:#fff!important}
.jf-btn--lineapp:hover{background:#05a948}
.jf-btns{display:flex;flex-wrap:wrap;gap:10px}
.jf-link{display:inline-flex;align-items:center;gap:8px;font-family:var(--jf-head);font-weight:600;font-size:15px;color:var(--jf-blue)!important;text-decoration:none!important}
.jf-link::after{content:"→";font-family:var(--jf-mono)}
.jf-link:hover{text-decoration:underline!important;text-underline-offset:4px}

/* =========================================================
   ヘッダー（子テーマ parts/header/header_contents.php）
   ========================================================= */
.jf-hd{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid var(--jf-line)}
@supports (backdrop-filter:blur(8px)){.jf-hd{background:rgba(255,255,255,.9);backdrop-filter:blur(8px)}}
.admin-bar .jf-hd{top:32px}
.jf-hd__in{display:flex;align-items:center;gap:var(--jf-s4);height:var(--jf-hd-h)}
.jf-logo{display:flex;flex-direction:column;gap:3px;text-decoration:none!important;color:var(--jf-ink)!important;flex-shrink:0}
.jf-logo__name{font-family:var(--jf-head);font-weight:700;font-size:20px;letter-spacing:.06em;line-height:1.2}
.jf-logo__sub{font-size:11px;letter-spacing:.08em;color:var(--jf-mute);line-height:1.2}
.jf-nav{margin-left:auto;display:flex;align-items:center;gap:var(--jf-s2)}
.jf-nav__list{display:flex;align-items:center;gap:2px;margin:0;padding:0;list-style:none}
.jf-nav__list>li{position:relative}
.jf-nav__list a{display:flex;align-items:center;gap:6px;padding:10px 12px;border-radius:var(--jf-r);font-family:var(--jf-head);font-weight:500;font-size:14.5px;letter-spacing:.03em;color:var(--jf-ink)!important;text-decoration:none!important;white-space:nowrap}
.jf-nav__list a:hover{background:var(--jf-paper)}
.jf-nav__list>li.menu-item-has-children>a::after{content:"";width:6px;height:6px;border-right:1.5px solid var(--jf-mute);border-bottom:1.5px solid var(--jf-mute);transform:translateY(-2px) rotate(45deg);margin-left:2px}
.jf-nav__list .current-menu-item>a,.jf-nav__list .current-page-ancestor>a,.jf-nav__list .current-menu-ancestor>a{color:var(--jf-blue)!important}
.jf-nav__list .sub-menu{position:absolute;left:0;top:100%;min-width:260px;margin:0;padding:8px;list-style:none;background:#fff;border:1px solid var(--jf-line);border-radius:var(--jf-r);box-shadow:0 12px 32px rgba(20,21,19,.08);opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .15s,transform .15s,visibility .15s}
.jf-nav__list li:hover>.sub-menu,.jf-nav__list li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
.jf-nav__list .sub-menu a{padding:10px 12px;font-size:14px;white-space:normal}
.jf-hd__cta{min-height:44px;padding:8px 14px 8px 18px;font-size:14px;gap:14px}
.jf-nav__cta,.jf-nav__sub{display:none}
.jf-menu{display:none;margin-left:auto;align-items:center;gap:10px;min-height:44px;padding:0 14px;border:1px solid var(--jf-line-2);border-radius:var(--jf-r);background:#fff;font:600 13px/1 var(--jf-head);color:var(--jf-ink);cursor:pointer}
.jf-menu i{position:relative;display:block;width:16px;height:2px;background:var(--jf-ink);transition:background-color .15s}
.jf-menu i::before,.jf-menu i::after{content:"";position:absolute;left:0;width:16px;height:2px;background:var(--jf-ink);transition:transform .15s}
.jf-menu i::before{top:-5px}.jf-menu i::after{top:5px}
.jf-hd.is-open .jf-menu i{background:transparent}
.jf-hd.is-open .jf-menu i::before{transform:translateY(5px) rotate(45deg)}
.jf-hd.is-open .jf-menu i::after{transform:translateY(-5px) rotate(-45deg)}

/* SWELL の固定ヘッダー・スマホメニュー・下部固定メニューは使わない（子テーマで置き換え） */
.jf-site #fix_header,.jf-site #sp_menu,.jf-site .l-fixHeader,.jf-site #fix_bottom_menu{display:none!important}

/* =========================================================
   フッター（子テーマ parts/footer/footer_contents.php）
   ========================================================= */
.jf-site #footer.l-footer{background:var(--jf-night);color:var(--jf-dark-mute);margin:0;padding:0}
.jf-ft{padding:var(--jf-s6) 0 var(--jf-s4);font-size:14px;line-height:1.85}
.jf-ft a{color:var(--jf-dark-ink)!important;text-decoration:none!important}
.jf-ft a:hover{text-decoration:underline!important;text-underline-offset:3px}
.jf-ft__top{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--jf-s5);padding-bottom:var(--jf-s5);border-bottom:1px solid #26292c}
.jf-ft .jf-logo{color:var(--jf-dark-ink)!important}
.jf-ft .jf-logo__sub{color:var(--jf-dark-mute)}
.jf-ft__copy{margin:var(--jf-s3) 0 0;color:var(--jf-dark-ink);font-family:var(--jf-head);font-weight:600;font-size:17px;line-height:1.7}
.jf-ft__addr{margin:var(--jf-s2) 0 0;font-size:13.5px}
.jf-ft__cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--jf-s4)}
.jf-ft__h{margin:0 0 14px;font-family:var(--jf-mono);font-size:11.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--jf-dark-mute)}
.jf-ft__cols ul{margin:0;padding:0;list-style:none}
.jf-ft__cols li{margin:0 0 9px;padding:0}
.jf-ft__cols li::before{display:none}
.jf-ft__cols .sub-menu{margin:6px 0 0 0;padding:0 0 0 12px;border-left:1px solid var(--jf-dark-line);list-style:none}
.jf-ft__cols .sub-menu li{margin-bottom:6px;font-size:13px}
.jf-ft__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 24px;margin-top:var(--jf-s4);font-family:var(--jf-mono);font-size:11.5px;letter-spacing:.04em}
.jf-site .p-fixBtnWrap .c-fixBtn{background:var(--jf-ink);color:#fff;border:0;box-shadow:none;border-radius:var(--jf-r)}
.jf-site .p-fixBtnWrap .c-fixBtn:hover{background:var(--jf-blue)}
.jf-site .l-footer__inner,.jf-site .l-footer__foot{display:none}

/* =========================================================
   独自デザインのページ（本文が <div class="jf-page"> で始まるページ）
   SWELL の見出し帯・余白・最大幅をこのページだけ外す
   ========================================================= */
.jf-fullpage .p-mainVisual,.jf-fullpage .p-pickupBanners,.jf-fullpage .l-topTitleArea,.jf-fullpage .c-pageTitle,.jf-fullpage .p-breadcrumb,.jf-fullpage #breadcrumb,.jf-fullpage .p-articleThumb,.jf-fullpage .c-shareBtns{display:none!important}
.jf-fullpage #content.l-content{max-width:none!important;width:100%!important;padding:0!important;margin:0!important}
.jf-fullpage .l-mainContent,.jf-fullpage .l-mainContent__inner{max-width:none!important;width:100%!important;padding:0!important;margin:0!important}
.jf-fullpage .l-mainContent__inner>.post_content{max-width:none!important;margin:0!important;padding:0!important}
.jf-fullpage .post_content>*{margin:0!important}
.jf-page{font-family:var(--jf-sans);font-size:16px;line-height:1.9;letter-spacing:.02em;color:var(--jf-ink-2);word-break:auto-phrase;line-break:strict;overflow-wrap:anywhere}
.jf-page *,.jf-page *::before,.jf-page *::after{box-sizing:border-box}
/* 余白の初期化：p などは詳細度を上げない（部品側の指定を優先）。リストと見出しは SWELL の .post_content の指定に勝つ強さにする */
.jf-page :where(p,ul,ol,li,dl,dd,dt,figure,blockquote,table){margin:0;padding:0}
.jf-page :is(ul,ol){padding-left:0;list-style:none!important}
.jf-page :is(h1,h2,h3,h4,h5){margin:0;padding:0;background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;color:var(--jf-ink);-webkit-text-fill-color:currentColor;font-size:inherit;line-height:inherit;font-weight:600}
.jf-page :is(h1,h2,h3,h4,h5)::before,.jf-page :is(h1,h2,h3,h4,h5)::after{content:none!important;display:none!important}
.jf-page li{margin:0;line-height:inherit}
.jf-page a{color:inherit}
.jf-page img{display:block;max-width:100%;height:auto;border-radius:0}
.jf-page strong{font-weight:700;background:none}
.jf-np{display:inline-block}

/* ---------- 文字 ---------- */
.jf-h1,.jf-h2,.jf-h3,.jf-h4{font-family:var(--jf-head);color:var(--jf-ink);font-weight:600;letter-spacing:.01em;text-wrap:balance}
.jf-page .jf-h1{font-size:clamp(34px,4.2vw,56px);line-height:1.32}
.jf-page .jf-h2{font-size:clamp(27px,3vw,40px);line-height:1.42}
.jf-page .jf-h3{font-size:clamp(19px,1.7vw,23px);line-height:1.55}
.jf-page .jf-h4{font-size:18px;line-height:1.6}
.jf-lead{font-size:clamp(16px,1.3vw,18px);line-height:2;max-width:34em}
.jf-small{font-size:14.5px;line-height:1.9}
.jf-note{font-size:12.5px;line-height:1.8;color:var(--jf-mute)}
.jf-mute{color:var(--jf-mute)}
.jf-label{display:block;font-family:var(--jf-mono);font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--jf-mute);line-height:1.6}
.jf-num{font-family:var(--jf-mono);font-weight:600;letter-spacing:-.02em;color:var(--jf-ink);font-feature-settings:"tnum"}
.jf-label--no{display:flex;gap:14px;color:var(--jf-ink)}
.jf-label--no b{font-weight:600;color:var(--jf-blue)}
.jf-sys__links{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:auto;padding-top:8px}
.jf-sys__links .jf-link{margin:0;padding:0}
.jf-rep .jf-h2{margin-top:var(--jf-s3)}
.jf-faq__note{margin-top:12px}
.jf-tbc{display:inline-block;margin-left:6px;padding:0 7px;border:1px dashed var(--jf-line-2);border-radius:var(--jf-r);font-family:var(--jf-mono);font-size:11px;letter-spacing:.04em;color:var(--jf-mute);vertical-align:middle;line-height:1.7}

/* ---------- 章 ---------- */
.jf-sec{padding:var(--jf-s7) 0}
.jf-sec--paper{background:var(--jf-paper)}
.jf-sec--tight{padding:var(--jf-s6) 0}
.jf-head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--jf-s3) var(--jf-s5);align-items:end;margin-bottom:var(--jf-s5);padding-top:var(--jf-s3);border-top:1px solid var(--jf-ink)}
.jf-head .jf-label{grid-column:1/-1;display:flex;gap:14px;color:var(--jf-ink);margin-bottom:-4px}
.jf-head .jf-label b{font-weight:600;color:var(--jf-blue)}
.jf-head>p{color:var(--jf-mute);font-size:15px;line-height:1.9;max-width:28em}

/* ---------- 部品 ---------- */
.jf-status{display:inline-flex;align-items:center;gap:7px;padding:2px 10px 2px 8px;border-radius:999px;background:var(--jf-paper);font-family:var(--jf-mono);font-size:11.5px;font-weight:500;letter-spacing:.04em;color:var(--jf-ink);white-space:nowrap;line-height:1.8}
.jf-status::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--jf-blue)}
.jf-status--test::before{background:transparent;border:1.5px solid var(--jf-mute)}
.jf-panel{background:#fff;border:1px solid var(--jf-line);border-radius:var(--jf-r);overflow:hidden}
.jf-panel__bar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--jf-line);background:#fbfaf8}
.jf-panel__bar .jf-label{font-size:11px;color:var(--jf-ink)}
.jf-shot{background:var(--jf-paper);overflow:hidden}
.jf-shot img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:left top}
.jf-photo{position:relative;overflow:hidden;border-radius:var(--jf-r);background:var(--jf-paper-2)}
.jf-photo img{width:100%;height:100%;object-fit:cover}
.jf-cap{margin-top:10px;font-family:var(--jf-mono);font-size:11.5px;letter-spacing:.02em;color:var(--jf-mute);line-height:1.7}
.jf-ruled>li{padding:var(--jf-s3) 0;border-top:1px solid var(--jf-line)}
.jf-ruled>li:last-child{border-bottom:1px solid var(--jf-line)}

/* ---------- ページ上部（下層ページ） ---------- */
.jf-ph{padding:var(--jf-s6) 0 var(--jf-s5);background:var(--jf-paper)}
.jf-crumbs{display:flex;flex-wrap:wrap;margin-bottom:var(--jf-s4);font-family:var(--jf-mono);font-size:12px;color:var(--jf-mute)}
.jf-crumbs a{text-decoration:none}
.jf-crumbs a:hover{text-decoration:underline}
.jf-crumbs li+li::before{content:"/";margin:0 10px;color:var(--jf-line-2)}
.jf-ph__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--jf-s3) var(--jf-s5);align-items:end}
.jf-ph .jf-label{color:var(--jf-blue);margin-bottom:var(--jf-s3)}
.jf-ph .jf-lead{color:var(--jf-ink-2)}
.jf-ph__line{margin-top:var(--jf-s2);font-size:14.5px;color:var(--jf-ink-2)}
.jf-ph__line a{color:var(--jf-blue);text-underline-offset:3px}

/* =========================================================
   トップ
   ========================================================= */
.jf-fv{padding:72px 0 var(--jf-s5)}
.jf-fv__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--jf-s5);align-items:center}
.jf-fv__kicker{display:flex;flex-wrap:wrap;gap:6px 0;margin-bottom:var(--jf-s4);font-family:var(--jf-mono);font-size:12.5px;letter-spacing:.06em;color:var(--jf-ink)}
.jf-fv__kicker li+li::before{content:"/";margin:0 12px;color:var(--jf-line-2)}
.jf-fv .jf-h1 em{font-style:normal;color:var(--jf-blue)}
.jf-fv .jf-lead{margin:var(--jf-s4) 0 var(--jf-s4)}
.jf-fv__visual{position:relative;padding-bottom:var(--jf-s5)}
.jf-fv__photo{aspect-ratio:4/5}
.jf-fv__photo img{object-position:50% 22%}
.jf-fv__photo figcaption{position:absolute;left:12px;top:12px;background:#fff;border-radius:3px;padding:2px 10px;font-family:var(--jf-mono);font-size:11.5px;color:var(--jf-ink);line-height:1.8}
.jf-fv__screen{position:absolute;left:-18%;bottom:0;width:72%;box-shadow:0 18px 40px rgba(20,21,19,.14)}
.jf-fv__screen .jf-shot img{aspect-ratio:16/9}
.jf-fv__note{margin-top:var(--jf-s2);text-align:right}
.jf-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:var(--jf-s5);border-top:1px solid var(--jf-ink);border-bottom:1px solid var(--jf-line)}
.jf-kpi{padding:var(--jf-s3) var(--jf-s3) var(--jf-s3) 0}
.jf-kpi+.jf-kpi{padding-left:var(--jf-s3);border-left:1px solid var(--jf-line)}
.jf-kpi .jf-num{display:block;font-size:clamp(32px,3.4vw,46px);line-height:1.1;margin:10px 0 10px}
.jf-kpi .jf-num small{font-family:var(--jf-head);font-size:.4em;font-weight:600;margin-left:4px;letter-spacing:0}
.jf-kpi p{font-size:13.5px;line-height:1.75;color:var(--jf-mute)}

/* 途中の相談の案内（会社概要など、長いページの中ほどに置く） */
.jf-midcta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--jf-s3) var(--jf-s4);align-items:center;margin-top:var(--jf-s6);padding:var(--jf-s4);background:var(--jf-paper);border-radius:var(--jf-r)}
.jf-midcta b{display:block;font-family:var(--jf-head);font-weight:600;font-size:19px;line-height:1.6;color:var(--jf-ink)}
.jf-midcta span{display:block;margin-top:4px;font-size:14px;color:var(--jf-mute)}
.jf-fv__line{margin-top:14px;font-size:14.5px;color:var(--jf-ink-2)}
.jf-fv__line a{color:var(--jf-blue);text-underline-offset:3px}
.jf-legend,.jf-asks__note{max-width:62em}
/* ---------- トップ：読み手への呼びかけ → 問題 → そのままにすると → 解決策 ---------- */
.jf-fv__to{display:inline-block;margin-bottom:var(--jf-s3);padding-bottom:6px;border-bottom:2px solid var(--jf-blue);font-family:var(--jf-head);font-weight:600;font-size:clamp(16px,1.4vw,19px);letter-spacing:.04em;line-height:1.6;color:var(--jf-ink)}
.jf-page .jf-fv .jf-h1{font-size:clamp(36px,4.6vw,62px);line-height:1.28}
.jf-fv .jf-lead{margin:var(--jf-s3) 0}
.jf-fv__promise{margin-bottom:var(--jf-s3);padding-left:14px;border-left:3px solid var(--jf-ink);font-family:var(--jf-head);font-weight:600;font-size:clamp(16px,1.4vw,18px);line-height:1.75;color:var(--jf-ink)}
.jf-fv__promise em{font-style:normal;color:var(--jf-blue)}
.jf-pains{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--jf-s5);border-top:1px solid var(--jf-line-2)}
.jf-pains>li{position:relative;padding:18px 0 18px 42px;border-bottom:1px solid var(--jf-line-2);font-family:var(--jf-head);font-weight:500;font-size:17px;line-height:1.7;color:var(--jf-ink)}
.jf-pains>li::before{content:"";position:absolute;left:2px;top:21px;width:22px;height:22px;border:1.5px solid var(--jf-ink);border-radius:3px;background:#fff}
.jf-pains>li::after{content:"";position:absolute;left:10px;top:24px;width:7px;height:13px;border-right:2.5px solid var(--jf-blue);border-bottom:2.5px solid var(--jf-blue);transform:rotate(45deg)}
.jf-statement--left{margin-top:var(--jf-s5);padding:var(--jf-s4) 0;text-align:left}
.jf-sec--dark{background:var(--jf-dark);color:#d8d9d4}
.jf-sec--dark .jf-head{border-top-color:#5a5e61}
.jf-sec--dark .jf-head .jf-label{color:#d8d9d4}
.jf-sec--dark .jf-head .jf-label b{color:#9fadff}
.jf-page .jf-sec--dark .jf-h2{color:#fff}
.jf-sec--dark .jf-head>p{color:#b8bbb6}
.jf-risks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.jf-risks>li{padding:var(--jf-s4);background:var(--jf-dark-2);border:1px solid var(--jf-dark-line);border-radius:var(--jf-r)}
.jf-risks__no{display:flex;align-items:baseline;gap:14px;margin-bottom:var(--jf-s3);font-family:var(--jf-head);font-weight:600;font-size:clamp(19px,1.8vw,23px);line-height:1.5;color:#fff}
.jf-risks__no .jf-num{font-size:14px;color:#9fadff}
.jf-risks dl{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px 16px}
.jf-risks dt{padding-top:4px;font-family:var(--jf-mono);font-size:12px;letter-spacing:.06em;color:#a9aca7}
.jf-risks dd{font-size:15px;line-height:1.85;color:#d8d9d4}
.jf-risks dt:nth-of-type(2),.jf-risks dd:nth-of-type(2){padding-top:12px;border-top:1px solid var(--jf-dark-line)}
.jf-risks dt:nth-of-type(2){padding-top:16px;color:#fff}
.jf-risks dd:nth-of-type(2){font-weight:600;color:#fff}
.jf-risks__note{margin-top:var(--jf-s3);color:#a9aca7}
.jf-change{margin-top:var(--jf-s6)}
.jf-change>.jf-label{margin-bottom:var(--jf-s2);color:var(--jf-ink)}
.jf-change__table th,.jf-change__table td{width:50%}
.jf-page .jf-change__table thead th{padding:10px 0;background:none!important;font-family:var(--jf-mono);font-size:12px;font-weight:500;letter-spacing:.08em;color:var(--jf-mute)}
.jf-change__table td:first-child{padding-right:var(--jf-s3);color:var(--jf-mute)}
.jf-change__table td:last-child{position:relative;padding-left:32px;font-family:var(--jf-head);font-weight:600;color:var(--jf-ink)}
.jf-change__table td:last-child::before{content:"→";position:absolute;left:0;top:18px;font-family:var(--jf-mono);color:var(--jf-blue)}
.jf-case--3{grid-template-columns:minmax(0,4fr) minmax(0,8fr)}
.jf-case--3 .jf-case__nums{grid-template-columns:repeat(3,minmax(0,1fr))}
.jf-case--3 .jf-case__nums .jf-num{font-size:clamp(36px,3.6vw,56px)}
.jf-case--3 .jf-case__nums>div:last-child .jf-num{margin-top:24px;font-size:clamp(28px,2.6vw,40px)}
.jf-subhead{margin:var(--jf-s6) 0 var(--jf-s3);padding-top:var(--jf-s3);border-top:1px solid var(--jf-line-2)}
.jf-subhead .jf-h3{margin-bottom:6px}
.jf-sys .jf-panel__bar .jf-label{font-size:13px;font-weight:600;letter-spacing:.06em}
.jf-first{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--jf-s5) var(--jf-s6)}
.jf-first .jf-label{margin-bottom:var(--jf-s2);color:var(--jf-ink)}
.jf-first__q{margin-bottom:var(--jf-s3);border-top:1px solid var(--jf-ink);counter-reset:jfq}
.jf-first__q>li{display:flex;gap:16px;padding:18px 0;border-bottom:1px solid var(--jf-line);counter-increment:jfq;font-family:var(--jf-head);font-weight:600;font-size:18px;line-height:1.6;color:var(--jf-ink)}
.jf-first__q>li::before{content:"Q" counter(jfq);flex-shrink:0;padding-top:4px;font-family:var(--jf-mono);font-size:13px;color:var(--jf-blue)}
.jf-first__a{margin-bottom:var(--jf-s3);font-size:16px;line-height:1.9;color:var(--jf-ink-2)}
.jf-flow--mini{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:var(--jf-s3)}
.jf-flow--mini>li{padding-top:12px}
.jf-flow--mini .jf-num{margin-bottom:6px}
.jf-flow--mini b{font-size:15px;line-height:1.6}
.jf-first__btns{margin-top:var(--jf-s3)}
.jf-page h2.jf-router__h{margin-bottom:var(--jf-s2);font-family:var(--jf-mono);font-size:12px;font-weight:500;line-height:1.6;letter-spacing:.1em;color:var(--jf-mute)}
.jf-router{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--jf-s5);border-top:1px solid var(--jf-ink)}
.jf-router a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 16px;align-items:center;padding:18px 0;border-bottom:1px solid var(--jf-line);text-decoration:none}
.jf-router a::after{content:"→";grid-column:2;grid-row:1/3;font-family:var(--jf-mono);color:var(--jf-blue)}
.jf-router span{font-size:13.5px;color:var(--jf-mute)}
.jf-router b{font-family:var(--jf-head);font-weight:600;font-size:16px;color:var(--jf-ink)}
.jf-router a:hover b{color:var(--jf-blue)}

/* 仕組みと実績 */
.jf-systems{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.jf-sys{display:flex;flex-direction:column}
.jf-sys__body{display:flex;flex-direction:column;gap:12px;flex:1;padding:var(--jf-s3)}
.jf-sys__kind{margin-top:-6px;font-size:14px;color:var(--jf-mute)}
.jf-sys ul{margin-top:4px;border-top:1px solid var(--jf-line)}
.jf-sys li{padding:10px 0;border-bottom:1px solid var(--jf-line);font-size:14px;line-height:1.75}
.jf-sys .jf-link{margin-top:auto;padding-top:8px}
.jf-sys__text{display:grid;place-items:center;aspect-ratio:16/10;padding:24px;background:var(--jf-paper);text-align:center;font-family:var(--jf-head);font-weight:600;font-size:19px;line-height:1.7;color:var(--jf-ink)}
.jf-sys__text small{display:block;margin-top:10px;font-family:var(--jf-mono);font-size:11px;font-weight:500;letter-spacing:.06em;color:var(--jf-mute)}
.jf-case{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);margin-top:16px}
.jf-case__body{display:flex;flex-direction:column;gap:12px;padding:var(--jf-s4)}
.jf-case__nums{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-left:1px solid var(--jf-line)}
.jf-case__nums>div{padding:var(--jf-s4)}
.jf-case__nums>div+div{border-left:1px solid var(--jf-line)}
.jf-case__nums .jf-num{display:block;margin:12px 0 6px;font-size:clamp(56px,6vw,84px);line-height:1}
.jf-case__nums .jf-num small{margin-left:6px;font-family:var(--jf-head);font-size:.3em;font-weight:600}
.jf-legend{margin-top:var(--jf-s3)}

/* 見る・決める・つくる */
.jf-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--jf-s4)}
.jf-step .jf-photo,.jf-step .jf-shot{aspect-ratio:4/3;border-radius:var(--jf-r)}
.jf-step .jf-shot img{height:100%;aspect-ratio:auto}
.jf-step__no{display:flex;align-items:baseline;gap:14px;margin:var(--jf-s3) 0 6px;padding-top:var(--jf-s2);border-top:1px solid var(--jf-ink)}
.jf-step__no .jf-num{font-size:15px;color:var(--jf-blue)}
.jf-page .jf-step .jf-h2{font-size:clamp(28px,2.6vw,36px)}
.jf-step__lead{margin:8px 0 10px;font-family:var(--jf-head);font-weight:600;font-size:17px;line-height:1.75;color:var(--jf-ink)}
.jf-statement{margin-top:var(--jf-s6);padding:var(--jf-s5) 0;border-top:1px solid var(--jf-line);border-bottom:1px solid var(--jf-line);text-align:center}
.jf-statement .jf-label{margin-bottom:var(--jf-s2)}
.jf-statement p{font-family:var(--jf-head);font-weight:600;font-size:clamp(20px,2.2vw,28px);line-height:1.7;color:var(--jf-ink)}
.jf-statement p em{font-style:normal;color:var(--jf-blue)}

/* 相談の入口 */
.jf-asks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.jf-ask{display:flex;flex-direction:column;gap:14px;padding:var(--jf-s4)}
.jf-ask__top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.jf-ask__top .jf-num{font-size:14px;color:var(--jf-blue)}
.jf-ask ul li{position:relative;padding-left:18px;font-size:14.5px;line-height:1.85}
.jf-ask ul li::before{content:"";position:absolute;left:1px;top:.78em;width:6px;height:6px;border:1.5px solid var(--jf-mute);border-radius:50%}
.jf-ask__goal{padding:14px 16px;border-radius:var(--jf-r);background:var(--jf-paper);font-family:var(--jf-head);font-weight:600;font-size:15.5px;line-height:1.75;color:var(--jf-ink)}
.jf-ask__goal .jf-label{margin-bottom:4px}
.jf-ask .jf-link{margin-top:auto}
.jf-asks__note{margin-top:var(--jf-s3)}

/* サービス */
.jf-svc{border-top:1px solid var(--jf-ink)}
.jf-svc>li{display:grid;grid-template-columns:72px minmax(0,4fr) minmax(0,5fr) auto;gap:var(--jf-s4);align-items:center;padding:var(--jf-s4) 0;border-bottom:1px solid var(--jf-line)}
.jf-svc .jf-num{font-size:14px;color:var(--jf-blue)}
.jf-svc p{font-size:14.5px;color:var(--jf-mute)}
.jf-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin-top:var(--jf-s5)}
.jf-track>li{position:relative;padding:var(--jf-s3);background:var(--jf-paper)}
.jf-track>li:first-child{border-radius:var(--jf-r) 0 0 var(--jf-r)}
.jf-track>li:last-child{border-radius:0 var(--jf-r) var(--jf-r) 0}
.jf-track>li::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--jf-line-2)}
.jf-track>li:first-child::before{background:var(--jf-blue)}
.jf-track b{display:block;margin:6px 0 4px;font-family:var(--jf-head);font-weight:600;font-size:17px;color:var(--jf-ink)}
.jf-track span{display:block;font-size:13.5px;line-height:1.75;color:var(--jf-mute)}

/* 代表 */
.jf-rep{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--jf-s5) var(--jf-s6);align-items:start}
.jf-rep__photos{display:grid;gap:var(--jf-s2)}
.jf-rep__photos>.jf-photo{aspect-ratio:4/5}
.jf-rep__mini{display:grid;grid-template-columns:132px minmax(0,1fr);gap:16px;align-items:center;padding-top:var(--jf-s2);border-top:1px solid var(--jf-line)}
.jf-rep__mini .jf-photo{aspect-ratio:4/3}
.jf-rep__mini p{font-size:13.5px;line-height:1.75;color:var(--jf-mute)}
.jf-rep__name{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px;margin:var(--jf-s3) 0 var(--jf-s4)}
.jf-rep__name b{font-family:var(--jf-head);font-weight:600;font-size:26px;letter-spacing:.08em;color:var(--jf-ink)}
.jf-rep__body p+p{margin-top:var(--jf-s2)}
.jf-roots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--jf-s4);margin:var(--jf-s4) 0}
.jf-roots>div{padding-top:var(--jf-s2);border-top:1px solid var(--jf-ink)}
.jf-roots b{display:block;margin-bottom:6px;font-family:var(--jf-head);font-weight:600;font-size:16.5px;color:var(--jf-ink)}
.jf-roots span{display:block;font-size:14px;line-height:1.85;color:var(--jf-mute)}
.jf-promise{margin-top:var(--jf-s5)}
.jf-promise .jf-label{margin-bottom:var(--jf-s2);color:var(--jf-ink)}
.jf-promise li{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:8px var(--jf-s4)}
.jf-promise li b{font-family:var(--jf-head);font-weight:600;font-size:16px;line-height:1.7;color:var(--jf-ink)}
.jf-promise li span{font-size:14.5px;line-height:1.85;color:var(--jf-mute)}

/* 相談の流れ */
.jf-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--jf-s4)}
.jf-flow>li{padding-top:var(--jf-s3);border-top:1px solid var(--jf-ink)}
.jf-flow .jf-num{display:block;margin-bottom:var(--jf-s2);font-size:14px;color:var(--jf-blue)}
.jf-flow b{display:block;margin-bottom:6px;font-family:var(--jf-head);font-weight:600;font-size:17px;color:var(--jf-ink)}
.jf-flow span{display:block;font-size:14.5px;line-height:1.85}
.jf-flow__note{margin-top:var(--jf-s4)}

/* よくある質問 */
.jf-faqgrid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:var(--jf-s5)}
.jf-faqgrid>div:first-child .jf-label{margin-bottom:14px}
.jf-faq details{border-top:1px solid var(--jf-line)}
.jf-faq details:last-child{border-bottom:1px solid var(--jf-line)}
.jf-faq summary{display:flex;justify-content:space-between;gap:16px;padding:22px 0;list-style:none;cursor:pointer;font-family:var(--jf-head);font-weight:600;font-size:17px;line-height:1.7;color:var(--jf-ink)}
.jf-faq summary::-webkit-details-marker{display:none}
.jf-faq summary::after{content:"+";flex-shrink:0;font-family:var(--jf-mono);font-size:20px;line-height:1.3;color:var(--jf-blue)}
.jf-faq details[open] summary::after{content:"−"}
.jf-faq details p{padding:0 40px 24px 0}

/* 最後の呼びかけ */
.jf-cta{padding:var(--jf-s6) 0;background:var(--jf-dark);color:var(--jf-dark-ink)}
.jf-cta__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--jf-s5);align-items:end}
.jf-cta .jf-label{margin-bottom:var(--jf-s2);color:var(--jf-dark-mute)}
.jf-page .jf-cta .jf-h2{color:#fff;font-size:clamp(28px,3.4vw,46px)}
.jf-cta p{color:#d8d9d4}
.jf-cta .jf-btns{margin-top:var(--jf-s3)}
.jf-cta__line{margin-top:var(--jf-s3)!important;font-size:14px}
.jf-cta__line a{color:#fff!important;text-underline-offset:3px}

/* =========================================================
   下層ページ
   ========================================================= */
/* 会社概要 */
.jf-story{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:var(--jf-s5)}
.jf-story__text p+p{margin-top:var(--jf-s3)}
.jf-tl>li{display:grid;grid-template-columns:150px minmax(0,1fr);gap:var(--jf-s3);padding:var(--jf-s3) 0;border-top:1px solid var(--jf-line)}
.jf-tl>li:last-child{border-bottom:1px solid var(--jf-line)}
.jf-tl .jf-num{font-size:15px;color:var(--jf-blue)}
.jf-tl__t{margin-bottom:4px;font-family:var(--jf-head);font-weight:600;font-size:17px;color:var(--jf-ink)}
.jf-tl p{font-size:14.5px;line-height:1.85}
.jf-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--jf-s3)}
.jf-gallery .jf-photo{aspect-ratio:4/3}
.jf-mentors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--jf-s5)}
.jf-mentors>li{padding:var(--jf-s3) 0;border-top:1px solid var(--jf-line)}
.jf-mentors b{display:block;margin-bottom:4px;font-family:var(--jf-head);font-weight:600;font-size:17px;color:var(--jf-ink)}
.jf-mentors span{display:block;font-size:14.5px;line-height:1.85;color:var(--jf-mute)}
.jf-table{width:100%;border-collapse:collapse;border-top:1px solid var(--jf-ink)}
.jf-table th,.jf-table td{padding:18px 0;border:0;border-bottom:1px solid var(--jf-line);background:none;text-align:left;vertical-align:top;font-weight:400;font-size:15px;line-height:1.85}
.jf-table th{width:200px;padding-right:var(--jf-s3);font-family:var(--jf-head);font-weight:600;color:var(--jf-ink)}
.jf-table td small{display:block;font-size:13px;color:var(--jf-mute)}

.jf-story .jf-h2{margin-top:var(--jf-s3)}
.jf-story__note{margin-top:var(--jf-s2);max-width:22em}
.jf-quote{margin-top:var(--jf-s4);padding:var(--jf-s3) 0 var(--jf-s3) var(--jf-s3);border-left:3px solid var(--jf-ink);font-family:var(--jf-head);font-weight:600;font-size:clamp(18px,1.8vw,22px);line-height:1.75;color:var(--jf-ink)}
.jf-kpis--3{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:0}
.jf-kpis--3 .jf-kpi:nth-child(4){padding-left:0;border-left:0}
.jf-kpis--3 .jf-kpi:nth-child(n+4){border-top:1px solid var(--jf-line)}
.jf-kpi .jf-tbc{margin:6px 0 0;display:inline-block}
.jf-voices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--jf-s4)}
.jf-voices>li{display:flex;flex-direction:column;gap:12px;padding-top:var(--jf-s3);border-top:1px solid var(--jf-ink)}
.jf-voices b{font-family:var(--jf-head);font-weight:600;font-size:18px;line-height:1.6;color:var(--jf-ink)}
.jf-voices p{font-size:14.5px;line-height:1.95}
.jf-voices .jf-cap{margin-top:auto}
/* 事業紹介 */
.jf-svc-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:var(--jf-s5)}
.jf-svc-nav a{display:flex;flex-direction:column;gap:6px;padding:var(--jf-s3);background:#fff;border:1px solid var(--jf-line);border-radius:var(--jf-r);text-decoration:none;transition:border-color .15s}
.jf-svc-nav a:hover{border-color:var(--jf-ink)}
.jf-svc-nav .jf-num{font-size:13px;color:var(--jf-blue)}
.jf-svc-nav b{font-family:var(--jf-head);font-weight:600;font-size:16.5px;line-height:1.6;color:var(--jf-ink)}
.jf-svcblock{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--jf-s5) var(--jf-s6);align-items:start}
.jf-svcblock__visual .jf-photo,.jf-svcblock__visual .jf-panel{position:sticky;top:calc(var(--jf-hd-h) + 24px)}
.jf-svcblock__visual .jf-photo{aspect-ratio:4/3}
.jf-svcblock h3{margin:var(--jf-s4) 0 var(--jf-s2)!important;font-family:var(--jf-head);font-weight:600;font-size:16px;color:var(--jf-ink)}
.jf-svcblock h3:first-of-type{margin-top:var(--jf-s3)!important}
.jf-checks li{position:relative;padding:10px 0 10px 26px;border-bottom:1px solid var(--jf-line);font-size:15px;line-height:1.8}
.jf-checks li::before{content:"";position:absolute;left:2px;top:1.15em;width:12px;height:7px;border-left:2px solid var(--jf-blue);border-bottom:2px solid var(--jf-blue);transform:rotate(-45deg)}
.jf-plans{display:grid;gap:10px;margin-top:var(--jf-s3)}
.jf-plans a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;align-items:center;padding:16px 20px;background:#fff;border:1px solid var(--jf-line);border-radius:var(--jf-r);text-decoration:none;transition:border-color .15s}
.jf-plans a:hover{border-color:var(--jf-ink)}
.jf-plans b{font-family:var(--jf-head);font-weight:600;font-size:16px;color:var(--jf-ink)}
.jf-plans span{grid-column:1;font-size:13.5px;color:var(--jf-mute);line-height:1.7}
.jf-plans a::after{content:"→";grid-column:2;grid-row:1/3;font-family:var(--jf-mono);color:var(--jf-blue)}

.jf-track--in{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}
.jf-track--in>li:first-child,.jf-track--in>li:last-child{border-radius:0}
.jf-page .jf-systable thead th{padding-top:0;background:none!important;font-family:var(--jf-mono);font-size:11.5px;font-weight:500;letter-spacing:.1em;color:var(--jf-mute)}
.jf-systable th[scope=row]{width:120px}
.jf-systable th a{color:var(--jf-blue);text-decoration:none}
.jf-systable th a:hover{text-decoration:underline}
.jf-systable td:last-child{width:96px;text-align:right}
.jf-systable td{font-size:14.5px}
/* お問い合わせ */
.jf-contact{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:var(--jf-s5);align-items:start}
.jf-ways>li{padding:var(--jf-s3);background:var(--jf-paper);border-radius:var(--jf-r)}
.jf-ways>li+li{margin-top:12px}
.jf-ways b{display:block;margin:4px 0 6px;font-family:var(--jf-head);font-weight:600;font-size:17px;color:var(--jf-ink)}
.jf-ways .jf-btn{width:100%;margin-top:var(--jf-s2)}
.jf-qr{display:flex;gap:16px;align-items:center;margin-top:var(--jf-s2)}
.jf-qr svg{width:112px;height:112px;flex-shrink:0;background:#fff;border-radius:var(--jf-r);padding:6px}
.jf-qr p{font-size:13px;line-height:1.7;color:var(--jf-mute)}
.jf-asklist li{position:relative;padding:8px 0 8px 18px;border-bottom:1px solid var(--jf-line);font-size:14.5px;line-height:1.75}
.jf-asklist li::before{content:"";position:absolute;left:1px;top:1.05em;width:6px;height:6px;background:var(--jf-blue);border-radius:1px}
.jf-privacy{margin-top:var(--jf-s5);padding-top:var(--jf-s3);border-top:1px solid var(--jf-line)}
.jf-privacy p{font-size:14px;line-height:1.9;color:var(--jf-mute)}

.jf-page h2.jf-contact__h{margin-bottom:10px;font-family:var(--jf-mono);font-size:12px;font-weight:500;line-height:1.6;letter-spacing:.1em;text-transform:uppercase}
.jf-contact__lead{margin-bottom:var(--jf-s3);color:var(--jf-mute)}
.jf-ways .jf-asklist{margin-top:8px}
.jf-ways__note{margin-top:var(--jf-s2);padding-top:var(--jf-s2);border-top:1px solid var(--jf-line-2)}
.jf-ways .jf-small{margin-top:2px}
/* お問い合わせフォーム（Contact Form 7 のフォーム 258 の部品をこの見た目にする。フォームの定義は変えない） */
.jf-page .akinai-inq,.jf-page .akinai-inq .section,.jf-page .akinai-inq .wrap{margin:0!important;padding:0!important;max-width:none!important;background:none!important}
.jf-page .formcard{padding:var(--jf-s4);background:#fff;border:1px solid var(--jf-line);border-radius:var(--jf-r);box-shadow:none}
.jf-page .formcard-head{margin-bottom:var(--jf-s3);padding:0 0 var(--jf-s3);border-bottom:1px solid var(--jf-line);background:none}
.jf-page .formcard-head h3{font-family:var(--jf-head);font-weight:600;font-size:20px;color:var(--jf-ink)}
.jf-page .formcard-head p{margin-top:6px;font-size:14px;color:var(--jf-mute)}
.jf-page .formcard-body{display:grid;gap:var(--jf-s3);padding:0}
.jf-page .grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--jf-s3)}
.jf-page .field{margin:0}
.jf-page .flabel{display:flex;gap:10px;align-items:center;margin-bottom:8px;font-family:var(--jf-head);font-weight:600;font-size:15px;color:var(--jf-ink)}
.jf-page .flabel .req{padding:1px 7px;border-radius:3px;background:var(--jf-blue);color:#fff;font-family:var(--jf-mono);font-size:11px;font-weight:500}
.jf-page .flabel .opt{padding:1px 7px;border-radius:3px;background:var(--jf-paper);color:var(--jf-mute);font-family:var(--jf-mono);font-size:11px;font-weight:500}
.jf-page .wpcf7 :is(input[type=text],input[type=email],input[type=tel],select,textarea){width:100%;min-height:54px;padding:13px 16px;border:1px solid var(--jf-line-2);border-radius:var(--jf-r);background:#fff;box-shadow:none;font:inherit;font-size:16px;color:var(--jf-ink)}
.jf-page .wpcf7 textarea{min-height:170px;resize:vertical}
.jf-page .wpcf7 :is(input,select,textarea):focus{outline:2px solid var(--jf-blue);outline-offset:1px;border-color:var(--jf-blue)}
.jf-page .wpcf7-radio{display:flex;flex-wrap:wrap;gap:8px}
.jf-page .wpcf7-radio .wpcf7-list-item{margin:0}
.jf-page .wpcf7-radio label{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 14px;border:1px solid var(--jf-line-2);border-radius:var(--jf-r);font-size:14.5px;line-height:1.5;cursor:pointer;background:#fff}
.jf-page .wpcf7-radio label:has(input:checked){border-color:var(--jf-blue);background:var(--jf-blue-tint);color:var(--jf-blue-2)}
.jf-page .wpcf7-radio input{accent-color:var(--jf-blue);margin:0}
.jf-page .consentwrap{padding:16px;background:var(--jf-paper);border-radius:var(--jf-r);font-size:14px;line-height:1.8}
.jf-page .consentwrap .wpcf7-list-item{margin:0}
.jf-page .consentwrap label{display:flex;gap:12px;align-items:flex-start}
.jf-page .consentwrap input{width:20px;height:20px;margin-top:3px;accent-color:var(--jf-blue);flex-shrink:0}
.jf-page .consentwrap a{color:var(--jf-blue)}
.jf-page .formnote{font-size:13px;color:var(--jf-mute)}
.jf-page .wpcf7-submit,.jf-page .wpcf7 input.submit{width:100%;min-height:58px;padding:14px 22px;border:0;border-radius:var(--jf-r);background:var(--jf-blue);color:#fff;font-family:var(--jf-head);font-weight:600;font-size:16.5px;letter-spacing:.04em;cursor:pointer;box-shadow:none}
.jf-page .wpcf7-submit:hover{background:var(--jf-blue-2)}
.jf-page .wpcf7-submit:disabled{opacity:.55;cursor:not-allowed}
.jf-page .wpcf7-spinner{margin:8px auto 0;display:block}
.jf-page .wpcf7-not-valid-tip{margin-top:6px;font-size:13px;color:#b42318}
.jf-page .wpcf7 form .wpcf7-response-output{margin:var(--jf-s3) 0 0;padding:14px 16px;border-radius:var(--jf-r);font-size:14px}

/* =========================================================
   コラム（SWELL の記事・一覧の見た目をそろえる。書く操作はそのまま）
   ========================================================= */
.jf-blog #content.l-content{padding-top:0}
.jf-blog .c-pageTitle,.jf-blog .c-postTitle__ttl{font-family:var(--jf-head);color:var(--jf-ink)}
/* 一覧（投稿ページ・カテゴリー） */
.jf-blog .l-mainContent__inner>.c-pageTitle{margin:var(--jf-s5) 0 var(--jf-s3)}
.jf-blog .c-pageTitle[data-style="b_bottom"],.jf-blog .c-pageTitle{border:0;padding:var(--jf-s3) 0 0;border-top:1px solid var(--jf-ink)}
.jf-blog .c-pageTitle__inner{border:0!important;padding:0!important;font-size:clamp(30px,3.6vw,46px);font-weight:600;line-height:1.35;letter-spacing:.02em}
.jf-blog .c-pageTitle__subTitle{display:block;margin:0 0 8px;font-family:var(--jf-mono);font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--jf-blue);font-style:normal;opacity:1}
.jf-blog .c-pageTitle__subTitle::before{display:none}
.jf-blog .p-postList.-type-card{gap:0}
.jf-blog .p-postList__item{margin-bottom:var(--jf-s3)}
.jf-blog .p-postList__link{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid var(--jf-line);border-radius:var(--jf-r);overflow:hidden;transition:border-color .15s;box-shadow:none}
.jf-blog .p-postList__link:hover{border-color:var(--jf-ink)}
.jf-blog .p-postList__link:hover .c-postThumb__img{transform:none;opacity:1}
.jf-blog .p-postList__thumb{margin:0}
.jf-blog .c-postThumb__figure{border-radius:0}
.jf-blog .p-postList__body{padding:var(--jf-s3)}
.jf-blog .p-postList__title{font-family:var(--jf-head);font-weight:600;font-size:17px;line-height:1.65;color:var(--jf-ink)}
.jf-blog .p-postList__excerpt{margin-top:8px;font-size:13.5px;line-height:1.8;color:var(--jf-mute)}
.jf-blog .p-postList__meta{margin-top:12px;font-family:var(--jf-mono);font-size:11.5px;color:var(--jf-mute)}
.jf-blog .c-postThumb__cat{left:12px;top:12px;margin:0;padding:1px 9px;border-radius:3px;background:#fff;color:var(--jf-blue);font-family:var(--jf-head);font-weight:600;font-size:12px;opacity:1}
.jf-blog .c-postThumb__cat::before{display:none}
.jf-blog .-type-card .p-postList__body::after,.jf-blog .p-postList__link::after{display:none}
.jf-blog .c-pagination{gap:6px}
.jf-blog .c-pagination>*{border-radius:var(--jf-r)}
.jf-blog .c-pagination .-current{background:var(--jf-ink);color:#fff}
.jf-blog .p-homeContent{margin-top:var(--jf-s4)!important}
/* カテゴリーの切り替え（投稿ページ本文の「カテゴリー」ブロック） */
.jf-blog .post_content .wp-block-categories{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.jf-blog .post_content .wp-block-categories li{margin:0;padding:0}
.jf-blog .post_content .wp-block-categories li::before{display:none}
.jf-blog .post_content .wp-block-categories a{display:inline-block;padding:7px 16px;border:1px solid var(--jf-line-2);border-radius:999px;font-family:var(--jf-head);font-weight:500;font-size:14px;color:var(--jf-ink);text-decoration:none}
.jf-blog .post_content .wp-block-categories a:hover{border-color:var(--jf-ink)}

/* 一覧は横幅いっぱいに3列（SWELL の記事幅 900px を外す） */
.jf-blog:not(.single) .l-mainContent.l-article{max-width:var(--jf-w)}
@media (min-width:961px){.jf-blog .p-postList.-type-card.-pc-col2>.p-postList__item{width:33.333%}}
/* 新着・人気のタブ */
.jf-blog .p-postListTab{margin-bottom:var(--jf-s3)}
.jf-blog .c-tabList{justify-content:flex-start;gap:0;border-bottom:1px solid var(--jf-line)}
.jf-blog .c-tabList__item{flex:0 0 auto;width:auto!important}
.jf-blog .c-tabList__button{padding:12px 18px;border:0;border-bottom:2px solid transparent;border-radius:0;background:none!important;color:var(--jf-mute)!important;font-family:var(--jf-head);font-weight:600;font-size:15px;box-shadow:none}
.jf-blog .c-tabList__button[aria-selected="true"]{color:var(--jf-ink)!important;border-bottom-color:var(--jf-ink)}
.jf-blog .c-tabList__button::before,.jf-blog .c-tabList__button::after{display:none!important}
.jf-blog .jf-cats a::before,.jf-blog .jf-cats a::after{content:none!important;display:none!important}
.jf-blog .jf-blog-lead{color:var(--jf-ink-2);font-size:16px}
.jf-blog .c-postTitle__date{display:none}
.jf-blog .c-shareBtns__icon{color:var(--jf-ink)!important}
.jf-blog .c-shareBtns__btn:hover .c-shareBtns__icon{color:var(--jf-blue)!important}
.jf-blog .c-tabList__button,.jf-blog .c-tabList__item{box-shadow:none!important;background:none!important}
.jf-blog .l-mainContent__inner>.post_content{padding-left:0;padding-right:0}
.jf-blog .p-toc__list .p-toc__list li::before,.jf-blog .p-toc__list .p-toc__list a::before{content:"–"!important;position:static!important;width:auto!important;height:auto!important;border:0!important;background:none!important;color:var(--jf-line-2);font-family:var(--jf-mono)}
.jf-blog .p-toc__list .p-toc__list a{display:flex;gap:10px;padding:4px 0 6px;text-decoration:none}
/* 記事 */
.jf-blog.single .l-mainContent__inner{padding-top:var(--jf-s5)}
.jf-blog .p-articleHead{margin-bottom:var(--jf-s4);padding-top:var(--jf-s3);border-top:1px solid var(--jf-ink)}
.jf-blog .c-postTitle{margin:0}
.jf-blog .c-postTitle__ttl{font-size:clamp(27px,3.2vw,40px);font-weight:600;line-height:1.45;letter-spacing:.01em}
.jf-blog .c-postTitle__date{font-family:var(--jf-mono);color:var(--jf-mute);border-color:var(--jf-line)}
.jf-blog .p-articleMetas{font-family:var(--jf-mono);font-size:12px;color:var(--jf-mute)}
.jf-blog .c-categoryList__link,.jf-blog .c-tagList__link{padding:1px 9px;border-radius:3px;background:var(--jf-blue-tint);color:var(--jf-blue);font-family:var(--jf-head);font-weight:600;font-size:12.5px;border:0}
.jf-blog .c-categoryList__link::before,.jf-blog .c-tagList__link::before{display:none}
.jf-blog .p-articleThumb{margin-bottom:var(--jf-s4)}
.jf-blog .p-articleThumb__img{border-radius:var(--jf-r)}
.jf-blog{--swl-fz--content:17px}
.jf-blog .l-mainContent .post_content{font-size:17px;line-height:2;letter-spacing:.02em;color:var(--jf-ink-2)}
.jf-blog.single .l-mainContent__inner{max-width:760px}
.jf-blog .post_content>*{margin-bottom:1.6em}
.jf-blog .post_content a{color:var(--jf-blue)}
.jf-blog .post_content :is(h2,h3,h4):where(:not([class*="swell-block-"]):not(.faq_q):not(.p-postList__title)){font-family:var(--jf-head);color:var(--jf-ink);-webkit-text-fill-color:currentColor;background:none;border:0;border-radius:0;box-shadow:none;font-weight:600}
.jf-blog .post_content h2:where(:not([class*="swell-block-"]):not(.faq_q):not(.p-postList__title)){margin:2.6em 0 1.2em;padding:18px 0 0;border-top:1px solid var(--jf-ink);font-size:clamp(22px,2.2vw,28px);line-height:1.5}
.jf-blog .post_content h3:where(:not([class*="swell-block-"]):not(.faq_q):not(.p-postList__title)){margin:2.2em 0 1em;padding:0 0 0 14px;border-left:3px solid var(--jf-blue);font-size:20px;line-height:1.6}
.jf-blog .post_content h4:where(:not([class*="swell-block-"]):not(.faq_q)){margin:1.8em 0 .8em;padding:0;font-size:17px}
.jf-blog .post_content :is(h2,h3,h4):where(:not([class*="swell-block-"]):not(.faq_q):not(.p-postList__title))::before,
.jf-blog .post_content :is(h2,h3,h4):where(:not([class*="swell-block-"]):not(.faq_q):not(.p-postList__title))::after{content:none;display:none}
.jf-blog .post_content :is(ul,ol):where(:not([class])){padding-left:1.4em}
.jf-blog .post_content li::marker{color:var(--jf-blue)}
.jf-blog .post_content blockquote{margin-left:0;margin-right:0;padding:var(--jf-s2) 0 var(--jf-s2) var(--jf-s3);border:0;border-left:3px solid var(--jf-ink);background:none;font-family:var(--jf-head);font-weight:600;font-size:19px;line-height:1.8;color:var(--jf-ink)}
.jf-blog .post_content blockquote::before,.jf-blog .post_content blockquote::after{display:none}
.jf-blog .post_content table{border-collapse:collapse;font-size:15px}
.jf-blog .post_content :is(th,td){padding:12px 16px;border:1px solid var(--jf-line)}
.jf-blog .post_content thead th,.jf-blog .post_content th{background:var(--jf-paper);color:var(--jf-ink);font-weight:600}
.jf-blog .post_content .wp-block-image img{border-radius:var(--jf-r)}
.jf-blog .post_content figcaption{font-family:var(--jf-mono);font-size:12px;color:var(--jf-mute);text-align:left}
/* 目次 */
.jf-blog .p-toc{margin:2.4em 0;padding:var(--jf-s3);border:1px solid var(--jf-line);border-radius:var(--jf-r);background:#fff}
.jf-blog .p-toc.-double{background:#fff;background-image:none}
.jf-blog .p-toc::before,.jf-blog .p-toc::after{display:none}
.jf-blog .p-toc__ttl{display:block;margin-bottom:8px;padding:0;font-family:var(--jf-mono);font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--jf-mute);text-align:left}
.jf-blog .p-toc__ttl::before{display:none}
.jf-blog .p-toc__list{padding:0!important;counter-reset:jftoc}
.jf-blog .p-toc__list>li{list-style:none;counter-increment:jftoc;border-top:1px solid var(--jf-line)}
.jf-blog .p-toc__list>li::before{display:none}
.jf-blog .p-toc__list>li>a{display:flex;gap:12px;padding:9px 0;font-size:15px;line-height:1.7;color:var(--jf-ink);text-decoration:none}
.jf-blog .p-toc__list>li>a::before{content:counter(jftoc,decimal-leading-zero);font-family:var(--jf-mono);font-size:13px;color:var(--jf-blue);border:0;width:auto;height:auto;background:none;position:static}
.jf-blog .p-toc__list>li>a:hover{color:var(--jf-blue)}
.jf-blog .p-toc__list .p-toc__list{padding-left:2.2em!important}
.jf-blog .p-toc__list .p-toc__list li{list-style:none}
.jf-blog .p-toc__list .p-toc__list a{font-size:14px;color:var(--jf-mute)}
.jf-blog .p-toc__expandBtn{border-radius:var(--jf-r)}
/* キャプション付きボックス・ポイント・FAQ・ふきだし（SWELL ブロック） */
.jf-blog .post_content .cap_box_ttl{border-radius:var(--jf-r) var(--jf-r) 0 0;background:var(--jf-ink);color:#fff;font-family:var(--jf-mono);font-size:12.5px;font-weight:500;letter-spacing:.08em}
.jf-blog .post_content .cap_box_content{border-color:var(--jf-line);border-radius:0 0 var(--jf-r) var(--jf-r);background:#fff}
.jf-blog .post_content :is(.is-style-big_icon_point,.is-style-big_icon_good,.is-style-icon_good,.is-style-icon_book,.is-style-icon_pen){border-radius:var(--jf-r)}
.jf-blog .post_content .is-style-bg_stripe,.jf-blog .post_content .is-style-crease{border-radius:var(--jf-r)}
.jf-blog .post_content .has-border.-border01,.jf-blog .post_content .is-style-border_sg{border-radius:var(--jf-r)}
.jf-blog .post_content .swell-block-faq__item{border-top:1px solid var(--jf-line);margin:0}
.jf-blog .post_content .swell-block-faq__item:last-child{border-bottom:1px solid var(--jf-line)}
.jf-blog .post_content .faq_q,.jf-blog .post_content .faq_a{background:none;border:0}
.jf-blog .post_content .faq_q{font-family:var(--jf-head);font-weight:600;font-size:17px;color:var(--jf-ink)}
.jf-blog .post_content .swell-block-faq[data-q="col-text"] .faq_q::before,.jf-blog .post_content .swell-block-faq .faq_q::before{color:var(--jf-blue)}
.jf-blog .post_content .c-balloon__text{border-radius:var(--jf-r)}
.jf-blog .post_content .swell-block-step__number{background:var(--jf-ink)}
.jf-blog .post_content .swell-block-button .swell-block-button__link,.jf-blog .post_content .c-btn,.jf-blog .post_content .wp-block-button__link{border-radius:var(--jf-r);font-family:var(--jf-head);font-weight:600;box-shadow:none}
/* 記事の下（著者・関連記事・前後の記事・シェア） */
.jf-blog .c-shareBtns__btn{background:#fff!important;color:var(--jf-ink)!important;border:1px solid var(--jf-line);border-radius:var(--jf-r);box-shadow:none}
.jf-blog .c-shareBtns__btn:hover{border-color:var(--jf-ink)}
.jf-blog .c-shareBtns__message{font-family:var(--jf-mono);font-size:12px;color:var(--jf-mute)}
.jf-blog .c-shareBtns__message::before,.jf-blog .c-shareBtns__message::after{display:none}
.jf-blog .l-articleBottom__title,.jf-blog .c-secTitle{padding:var(--jf-s2) 0 0;border:0;border-top:1px solid var(--jf-ink);background:none;font-family:var(--jf-head);font-weight:600;font-size:20px;color:var(--jf-ink);text-align:left}
.jf-blog .l-articleBottom__title::before,.jf-blog .l-articleBottom__title::after,.jf-blog .c-secTitle::before,.jf-blog .c-secTitle::after{display:none}
.jf-blog .p-pnLinks__inner{border:1px solid var(--jf-line);border-radius:var(--jf-r);box-shadow:none;background:#fff}
.jf-blog .p-relatedPosts .p-postList__item{margin-bottom:var(--jf-s2)}
/* サイドバー */
.jf-blog .l-sidebar{font-size:14.5px}
.jf-blog .l-sidebar .c-widget{margin-bottom:var(--jf-s4)}
.jf-blog .l-sidebar .c-widget__title{margin-bottom:10px;padding:0;border:0;background:none;font-family:var(--jf-mono);font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--jf-mute);text-align:left}
.jf-blog .l-sidebar .c-widget__title::before,.jf-blog .l-sidebar .c-widget__title::after{display:none}
.jf-blog .l-sidebar .c-listMenu a,.jf-blog .l-sidebar .wp-block-latest-posts a,.jf-blog .l-sidebar .widget_recent_entries a{display:block;padding:11px 0;border:0;border-top:1px solid var(--jf-line);color:var(--jf-ink);text-decoration:none;line-height:1.7}
.jf-blog .l-sidebar .c-listMenu a::before{display:none}
.jf-blog .l-sidebar .c-listMenu a:hover,.jf-blog .l-sidebar .widget_recent_entries a:hover{background:none;color:var(--jf-blue);padding-left:0}
.jf-blog .l-sidebar .w-fixSide,.jf-blog .l-sidebar .jf-side-cta{position:sticky;top:calc(var(--jf-hd-h) + 24px)}
.jf-side-cta{padding:var(--jf-s3);background:var(--jf-dark);border-radius:var(--jf-r);color:#d8d9d4}
.jf-side-cta .jf-label{color:var(--jf-dark-mute);margin-bottom:8px}
.jf-side-cta p{margin:0 0 var(--jf-s2);font-family:var(--jf-head);font-weight:600;font-size:17px;line-height:1.65;color:#fff}
.jf-side-cta .jf-btn{width:100%}
.jf-side-cta__line{margin:12px 0 0!important;font-family:var(--jf-sans)!important;font-weight:400!important;font-size:13px!important;color:#d8d9d4!important}
.jf-side-cta__line a{color:#fff!important}
/* 記事下の著者と相談の案内（ウィジェット「記事下部」） */
.jf-author{display:grid;grid-template-columns:96px minmax(0,1fr);gap:var(--jf-s3);align-items:start;margin-top:var(--jf-s5);padding:var(--jf-s3) 0;border-top:1px solid var(--jf-ink);border-bottom:1px solid var(--jf-line)}
.jf-author img{width:96px;height:96px;border-radius:50%;object-fit:cover}
.jf-author .jf-label{margin-bottom:4px}
.jf-author b{display:block;font-family:var(--jf-head);font-weight:600;font-size:18px;color:var(--jf-ink)}
.jf-author p{margin:6px 0 0!important;font-size:14.5px;line-height:1.85}
.jf-postcta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--jf-s3);align-items:center;margin-top:var(--jf-s4);padding:var(--jf-s4);background:var(--jf-paper);border-radius:var(--jf-r)}
.jf-postcta p{margin:0!important;font-family:var(--jf-head);font-weight:600;font-size:18px;line-height:1.7;color:var(--jf-ink)}
.jf-postcta small{display:block;margin-top:4px;font-family:var(--jf-sans);font-weight:400;font-size:13.5px;color:var(--jf-mute)}
.jf-postcta small a{color:var(--jf-blue)}

/* SWELL のぱんくず（一覧・記事） */
.jf-blog .p-breadcrumb{background:none;border-top:1px solid var(--jf-line);padding:14px 0}
.jf-blog .p-breadcrumb__text{font-family:var(--jf-mono);font-size:12px;color:var(--jf-mute)}

/* =========================================================
   タブレット・スマートフォン
   ========================================================= */
@media (max-width:1180px){
  .jf-nav__list a{padding:10px 9px;font-size:14px}
  .jf-hd__cta{display:none}
}
@media (max-width:960px){
  :root{--jf-hd-h:64px}
  .jf-logo__name{font-size:17px}
  .jf-logo__sub{font-size:10px}
  .jf-menu{display:inline-flex}
  .jf-nav{position:fixed;left:0;right:0;top:var(--jf-hd-h);bottom:0;z-index:49;display:none;flex-direction:column;align-items:stretch;gap:var(--jf-s3);margin:0;padding:var(--jf-s3) var(--jf-gut) var(--jf-s5);overflow-y:auto;background:#fff;border-top:1px solid var(--jf-line)}
  .admin-bar .jf-nav{top:calc(var(--jf-hd-h) + 46px)}
  .jf-hd.is-open .jf-nav{display:flex}
  .jf-nav__list{flex-direction:column;align-items:stretch;gap:0}
  .jf-nav__list>li{border-bottom:1px solid var(--jf-line)}
  .jf-nav__list a{padding:16px 2px;font-size:16px;border-radius:0}
  .jf-nav__list a:hover{background:none}
  .jf-nav__list>li.menu-item-has-children>a::after{display:none}
  .jf-nav__list .sub-menu{position:static;min-width:0;padding:0 0 10px 14px;border:0;border-left:1px solid var(--jf-line);margin:0 0 6px 2px;box-shadow:none;opacity:1;visibility:visible;transform:none;border-radius:0}
  .jf-nav__list .sub-menu a{padding:9px 2px;font-size:14.5px;color:var(--jf-ink-2)!important}
  .jf-nav__cta{display:flex;width:100%}
  .jf-nav__sub{display:block;font-size:13px;color:var(--jf-mute)}
  .jf-nav__sub a{color:var(--jf-ink)!important}
  html.jf-nav-open{overflow:hidden}
  .jf-sec{padding:var(--jf-s6) 0}
  .jf-head,.jf-ph__grid,.jf-fv__grid,.jf-rep,.jf-cta__grid,.jf-faqgrid,.jf-case,.jf-story,.jf-svcblock,.jf-contact,.jf-ft__top{grid-template-columns:minmax(0,1fr)}
  .jf-head{gap:var(--jf-s2)}
  .jf-fv{padding-top:var(--jf-s5)}
  .jf-fv__visual{max-width:560px}
  .jf-fv__screen{left:auto;right:-8px;width:64%}
  .jf-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jf-kpi:nth-child(3){padding-left:0;border-left:0}
  .jf-kpi:nth-child(n+3){border-top:1px solid var(--jf-line)}
  .jf-systems,.jf-steps,.jf-asks,.jf-flow,.jf-gallery{grid-template-columns:minmax(0,1fr)}
  .jf-steps{gap:var(--jf-s5)}
  .jf-flow{gap:var(--jf-s3)}
  .jf-case__nums{border-left:0;border-top:1px solid var(--jf-line)}
  .jf-svc>li{grid-template-columns:minmax(0,1fr);gap:8px}
  .jf-track{grid-template-columns:minmax(0,1fr)}
  .jf-track>li,.jf-track>li:first-child,.jf-track>li:last-child{border-radius:var(--jf-r)}
  .jf-svc-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jf-svcblock__visual .jf-photo,.jf-svcblock__visual .jf-panel{position:static}
  .jf-ft__cols{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jf-mentors{grid-template-columns:minmax(0,1fr)}
  .jf-pains,.jf-risks,.jf-first,.jf-router{grid-template-columns:minmax(0,1fr)}
  .jf-case--3{grid-template-columns:minmax(0,1fr)}
  .jf-flow--mini{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jf-fv__photo--solo{max-width:520px}
  .jf-rep--sol .jf-rep__photos{order:2}
  .jf-voices{grid-template-columns:minmax(0,1fr)}
  .jf-kpis--3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jf-kpis--3 .jf-kpi:nth-child(4){padding-left:var(--jf-s3);border-left:1px solid var(--jf-line)}
  .jf-kpis--3 .jf-kpi:nth-child(odd){padding-left:0;border-left:0}
  .jf-kpis--3 .jf-kpi:nth-child(n+3){border-top:1px solid var(--jf-line)}
  .jf-story__note{max-width:none}
}
@media (max-width:600px){
  .jf-page{font-size:15.5px}
  .jf-btns .jf-btn{width:100%}
  .jf-fv__visual{padding-bottom:var(--jf-s6)}
  .jf-fv__photo{aspect-ratio:1/1}
  .jf-fv__screen{width:78%}
  .jf-kpi{padding:var(--jf-s2) var(--jf-s2) var(--jf-s2) 0}
  .jf-kpi+.jf-kpi{padding-left:var(--jf-s2)}
  .jf-kpi:nth-child(3){padding-left:0}
  .jf-case__body,.jf-case__nums>div,.jf-ask{padding:var(--jf-s3)}
  .jf-case__nums .jf-num{font-size:52px}
  .jf-roots,.jf-promise li{grid-template-columns:minmax(0,1fr)}
  .jf-roots{gap:var(--jf-s3)}
  .jf-rep__mini{grid-template-columns:104px minmax(0,1fr)}
  .jf-tl>li{grid-template-columns:minmax(0,1fr);gap:4px}
  .jf-track--in{grid-template-columns:minmax(0,1fr)}
  .jf-systable thead{display:none}
  .jf-systable tr{display:block;padding:12px 0;border-bottom:1px solid var(--jf-line)}
  .jf-systable th[scope=row],.jf-systable td,.jf-systable td:last-child{display:block;width:auto;padding:2px 0;border:0;text-align:left}
  .jf-table th,.jf-table td{display:block;width:auto;padding:12px 0}
  .jf-table th{padding-bottom:0;border-bottom:0}
  .jf-svc-nav{grid-template-columns:minmax(0,1fr)}
  .jf-midcta{grid-template-columns:minmax(0,1fr);padding:var(--jf-s3)}
  .jf-pains>li{font-size:16px}
  .jf-risks>li{padding:var(--jf-s3)}
  .jf-risks dl{grid-template-columns:52px minmax(0,1fr)}
  .jf-case--3 .jf-case__nums{grid-template-columns:minmax(0,1fr)}
  .jf-case--3 .jf-case__nums>div+div{border-left:0;border-top:1px solid var(--jf-line)}
  .jf-case--3 .jf-case__nums>div:last-child .jf-num{margin-top:12px}
  .jf-change__table thead{display:none}
  .jf-change__table tr{display:block;padding:14px 0;border-bottom:1px solid var(--jf-line)}
  .jf-change__table td,.jf-change__table td:first-child,.jf-change__table td:last-child{display:block;width:auto;padding-top:0;padding-bottom:0;border:0}
  .jf-change__table td:first-child{margin-bottom:6px;font-size:14px}
  .jf-change__table td:last-child::before{top:0}
  .jf-flow--mini{grid-template-columns:minmax(0,1fr)}
  .jf-faq details p{padding-right:0}
  .jf-page .grid2{grid-template-columns:minmax(0,1fr)}
  .jf-page .formcard{padding:var(--jf-s3)}
  .jf-ft__cols{grid-template-columns:minmax(0,1fr)}
  .jf-blog{--swl-fz--content:16px}
  .jf-blog .l-mainContent .post_content{font-size:16px}
  .jf-blog .p-postList.-type-card>.p-postList__item{width:100%}
  .jf-ph{padding:var(--jf-s5) 0 var(--jf-s4)}
  .jf-crumbs{margin-bottom:var(--jf-s3)}
  .jf-postcta{grid-template-columns:minmax(0,1fr)}
  .jf-author{grid-template-columns:72px minmax(0,1fr)}
  .jf-author img{width:72px;height:72px}
}
@media (prefers-reduced-motion:reduce){
  .jf-site *{transition:none!important}
}

/* ---------- トップ v3：相談で得られること・本題の6段階・実例カード ---------- */
.jf-fv__gain{margin-top:14px;font-family:var(--jf-head);font-weight:600;font-size:15.5px;line-height:1.7;color:var(--jf-ink)}
.jf-flow--six{grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--jf-s3)}
.jf-flow--six span{font-size:14px;line-height:1.8}
.jf-flow--mini .jf-num{font-size:14px}
.jf-risks__next{display:flex;flex-wrap:wrap;align-items:center;gap:var(--jf-s3) var(--jf-s4);margin-top:var(--jf-s5);padding-top:var(--jf-s4);border-top:1px solid var(--jf-dark-line)}
.jf-risks__next p{font-family:var(--jf-head);font-weight:600;font-size:clamp(18px,1.8vw,22px);line-height:1.6;color:#fff}
.jf-cases{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}
.jf-cases>.jf-panel{display:flex;flex-direction:column;gap:12px;padding:var(--jf-s4)}
.jf-cases .jf-num{display:block;font-size:clamp(30px,3vw,44px);line-height:1.15}
.jf-cases .jf-num small{margin:0 4px;font-family:var(--jf-head);font-size:.42em;font-weight:600}
.jf-cases .jf-num small:first-child{margin-left:0}
.jf-cases__sub{display:block;margin-top:6px;font-size:14px;color:var(--jf-mute)}
@media (max-width:960px){
  .jf-flow--six{grid-template-columns:repeat(3,minmax(0,1fr))}
  .jf-cases{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:600px){
  .jf-flow--six{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jf-risks__next .jf-btn{width:100%}
}

/* ---------- トップ v3：イラスト（ChatGPT で作成・CYCORO と同じフルカラーのタッチ） ---------- */
.jf-il{margin:0}
.jf-il img{display:block;width:100%;height:auto;border-radius:var(--jf-r)}
.jf-pains-wrap{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--jf-s5);align-items:center}
.jf-pains-wrap .jf-pains{grid-template-columns:minmax(0,1fr)}
/* 1年後の4例：絵はカードの上に横長（3:2）で大きく。小さいと細かい絵が読めない */
.jf-risks__il{margin:calc(var(--jf-s4) * -1) calc(var(--jf-s4) * -1) var(--jf-s3)}
.jf-risks__il img{border-radius:var(--jf-r) var(--jf-r) 0 0;aspect-ratio:3/2;object-fit:cover}
.jf-flow--six .jf-il{margin-bottom:var(--jf-s2)}
.jf-path__il{max-width:880px;margin-bottom:var(--jf-s3)}
.jf-first__il{margin-bottom:var(--jf-s3)}
@media (max-width:960px){
  .jf-pains-wrap{grid-template-columns:minmax(0,1fr);gap:var(--jf-s3)}
  .jf-pains__il{order:-1;max-width:520px}
}
.jf-risks__no .jf-num{flex-shrink:0}
@media (max-width:600px){
  .jf-risks__il{margin:calc(var(--jf-s3) * -1) calc(var(--jf-s3) * -1) var(--jf-s3)}
}

/* ---------- トップ：代表の特徴（3つ） ---------- */
.jf-traits{margin:var(--jf-s3) 0 var(--jf-s4);border-top:1px solid var(--jf-ink);counter-reset:jftr}
.jf-traits>li{display:grid;grid-template-columns:36px minmax(0,1fr);gap:2px 12px;padding:14px 0;border-bottom:1px solid var(--jf-line);counter-increment:jftr}
.jf-traits>li::before{content:"0" counter(jftr);grid-row:1 / span 2;padding-top:3px;font-family:var(--jf-mono);font-size:13px;color:var(--jf-blue)}
.jf-traits b{font-family:var(--jf-head);font-weight:600;font-size:17px;line-height:1.6;color:var(--jf-ink)}
.jf-traits span{font-size:15px;line-height:1.85;color:var(--jf-ink-2)}

/* ---------- トップ v4：仕入れ・仕込み・提供（2026-11-01） ---------- */
/* 最初の画面の3工程の帯 */
.jf-way3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0 0 var(--jf-s3);max-width:560px}
.jf-way3>li{position:relative}
.jf-way3>li+li::before{content:"→";position:absolute;left:-9px;top:50%;transform:translate(-50%,-50%);font-family:var(--jf-mono);font-size:14px;color:var(--jf-blue)}
.jf-way3 a{display:flex;flex-direction:column;gap:1px;height:100%;padding:10px 12px;border:1px solid var(--jf-line-2);border-radius:var(--jf-r);background:#fff;text-decoration:none!important;box-sizing:border-box;transition:border-color .15s,transform .15s}
.jf-way3 a:hover{border-color:var(--jf-blue);transform:translateY(-2px)}
.jf-way3__no{font-family:var(--jf-mono);font-size:11px;letter-spacing:.06em;color:var(--jf-blue)}
.jf-way3 b{font-family:var(--jf-head);font-weight:600;font-size:18px;line-height:1.4;color:var(--jf-ink)}
.jf-way3 a>span:last-child{font-size:12.5px;line-height:1.5;color:var(--jf-mute)}

/* 当てはまるものを押して数える */
.jf-chk{border-top:1px solid var(--jf-line-2)}
.jf-chk>li{border-bottom:1px solid var(--jf-line-2)}
.jf-chk label{position:relative;display:block;padding:18px 8px 18px 44px;cursor:pointer;font-family:var(--jf-head);font-weight:500;font-size:17px;line-height:1.7;color:var(--jf-ink);transition:background-color .15s}
.jf-chk input{position:absolute;left:2px;top:21px;width:22px;height:22px;margin:0;opacity:0}
.jf-chk span::before{content:"";position:absolute;left:4px;top:21px;width:22px;height:22px;box-sizing:border-box;border:1.5px solid var(--jf-ink);border-radius:3px;background:#fff;transition:background-color .15s,border-color .15s}
.jf-chk span::after{content:"";position:absolute;left:12px;top:24px;width:7px;height:13px;border-right:2.5px solid #fff;border-bottom:2.5px solid #fff;transform:rotate(45deg) scale(0);transition:transform .15s}
.jf-chk label:hover span::before{border-color:var(--jf-blue)}
.jf-chk input:checked+span::before{background:var(--jf-blue);border-color:var(--jf-blue)}
.jf-chk input:checked+span::after{transform:rotate(45deg) scale(1)}
.jf-chk input:focus-visible+span::before{outline:2px solid var(--jf-blue);outline-offset:2px}
.jf-chk label:has(input:checked){background:rgba(34,54,224,.06)}
.jf-chk__result{display:flex;align-items:center;gap:18px;margin-top:var(--jf-s3);padding:16px 20px;border:1px solid var(--jf-line-2);border-radius:var(--jf-r);background:#fff}
.jf-chk__count{flex-shrink:0;display:flex;align-items:baseline;gap:6px;font-family:var(--jf-mono);font-size:14px;color:var(--jf-mute)}
.jf-chk__count .jf-num{display:inline-block;font-size:42px;line-height:1;color:var(--jf-blue)}
.jf-chk__count .jf-num.is-pop{animation:jf-pop .32s ease-out}
.jf-chk__msg{font-family:var(--jf-head);font-weight:600;font-size:15.5px;line-height:1.7;color:var(--jf-ink)}
@keyframes jf-pop{0%{transform:scale(1)}45%{transform:scale(1.3)}100%{transform:scale(1)}}

/* 現場に流される一手と、構造で打つ一手（両方とも最初から見せる） */
.jf-vs{display:grid;gap:var(--jf-s4)}
.jf-vs>li{padding-top:var(--jf-s3);border-top:1px solid var(--jf-ink)}
.jf-vs__q{display:flex;align-items:baseline;gap:14px;margin-bottom:14px;font-family:var(--jf-head);font-weight:600;font-size:clamp(18px,1.7vw,21px);line-height:1.5;color:var(--jf-ink)}
.jf-vs__q .jf-num{flex-shrink:0;font-size:13px;color:var(--jf-blue)}
.jf-vs__pair{display:grid;grid-template-columns:minmax(0,1fr) 44px minmax(0,1.25fr)}
.jf-vs__pair::before{content:"→";grid-column:2;grid-row:1;align-self:center;justify-self:center;font-family:var(--jf-mono);font-size:20px;color:var(--jf-blue)}
.jf-vs__a{grid-column:1;grid-row:1;padding:16px 18px;border-radius:var(--jf-r);background:var(--jf-paper)}
.jf-vs__b{grid-column:3;grid-row:1;padding:16px 18px;border-radius:var(--jf-r);background:var(--jf-blue-tint);border:1px solid #c9cff7}
.jf-vs__tag{display:block;margin-bottom:6px;font-family:var(--jf-mono);font-size:11.5px;letter-spacing:.06em}
.jf-vs__a .jf-vs__tag{color:var(--jf-mute)}
.jf-vs__b .jf-vs__tag{color:var(--jf-blue)}
.jf-vs__a p{font-size:15px;line-height:1.8;color:var(--jf-mute)}
.jf-vs__b p{font-family:var(--jf-head);font-weight:600;font-size:15.5px;line-height:1.8;color:var(--jf-ink)}

/* 仕入れ → 仕込み → 提供 の一周 */
.jf-loop{margin-bottom:var(--jf-s5)}
.jf-loop__steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.jf-loop__steps>li{position:relative}
.jf-loop__steps>li+li::before{content:"→";position:absolute;left:-20px;top:50%;transform:translate(-50%,-50%);font-family:var(--jf-mono);font-size:22px;color:var(--jf-blue)}
.jf-loop__steps a{display:flex;flex-direction:column;gap:8px;height:100%;padding:var(--jf-s3);box-sizing:border-box;background:#fff;border:1px solid var(--jf-line);border-radius:var(--jf-r);text-decoration:none!important;transition:border-color .2s,transform .2s,box-shadow .2s}
.jf-loop__steps a:hover{border-color:var(--jf-blue);transform:translateY(-3px);box-shadow:0 14px 28px -18px rgba(20,21,19,.4)}
.jf-loop__no{display:grid;place-items:center;width:44px;height:44px;border:1.5px solid var(--jf-ink);border-radius:50%;font-family:var(--jf-mono);font-size:14px;font-weight:600;color:var(--jf-ink);transition:background-color .4s,border-color .4s,color .4s}
.jf-loop__il{display:block;margin:calc(var(--jf-s3) * -1) calc(var(--jf-s3) * -1) 6px;overflow:hidden;border-radius:var(--jf-r) var(--jf-r) 0 0}
.jf-loop__il img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;transition:transform .4s}
.jf-loop__steps a:hover .jf-loop__il img{transform:scale(1.03)}
.jf-loop__il+.jf-loop__no{margin-top:-28px;position:relative;background:#fff}
.jf-loop__steps>li:nth-child(2) .jf-loop__no{transition-delay:.25s}
.jf-loop__steps>li:nth-child(3) .jf-loop__no{transition-delay:.5s}
.jf-js .jf-loop__steps>li.is-in .jf-loop__no{background:var(--jf-blue);border-color:var(--jf-blue);color:#fff}
.jf-loop__steps b{font-family:var(--jf-head);font-weight:600;font-size:26px;line-height:1.3;color:var(--jf-ink)}
.jf-loop__steps a>span:last-child{font-size:14.5px;line-height:1.8;color:var(--jf-ink-2)}
.jf-loop__back{position:relative;height:40px;margin:0 calc((100% - 80px) / 6);border:1.5px dashed var(--jf-blue);border-top:0;border-radius:0 0 16px 16px}
.jf-loop__back::before{content:"";position:absolute;left:-8px;top:-11px;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:11px solid var(--jf-blue)}
.jf-loop__back span{position:absolute;left:50%;bottom:-13px;transform:translateX(-50%);padding:0 14px;background:var(--jf-paper);font-family:var(--jf-head);font-weight:600;font-size:14px;line-height:1.8;white-space:nowrap;color:var(--jf-blue)}
.jf-loop__band{display:flex;flex-wrap:wrap;align-items:center;gap:6px 20px;margin-top:44px;padding:18px 22px;border-radius:var(--jf-r);background:var(--jf-ink)}
.jf-loop__band .jf-label{color:#9fadff}
.jf-loop__band p{font-family:var(--jf-head);font-weight:600;font-size:clamp(15.5px,1.4vw,18px);line-height:1.7;color:#fff}

/* 3つの工程それぞれ（同じ型で並べる） */
.jf-step4{margin-top:var(--jf-s6);padding-top:var(--jf-s4);border-top:1px solid var(--jf-ink);scroll-margin-top:calc(var(--jf-hd-h) + 16px)}
.jf-step4__head{display:flex;align-items:center;gap:20px;margin-bottom:var(--jf-s4)}
.jf-step4__no{flex-shrink:0;display:grid;place-items:center;width:64px;height:64px;border:2px solid var(--jf-ink);border-radius:50%;font-family:var(--jf-mono);font-size:20px;font-weight:600;color:var(--jf-ink);transition:background-color .5s,border-color .5s,color .5s}
.jf-js .jf-step4.is-in .jf-step4__no{background:var(--jf-blue);border-color:var(--jf-blue);color:#fff;animation:jf-pop .5s ease-out}
.jf-step4__head .jf-label{margin-bottom:4px;font-weight:600;color:var(--jf-blue)}
.jf-page .jf-step4__head .jf-h3{font-size:clamp(21px,2.2vw,30px);line-height:1.5}
.jf-step4__body{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--jf-s5);align-items:start}
.jf-step4__text>p{margin-bottom:var(--jf-s3);font-size:16px;line-height:1.95;color:var(--jf-ink-2)}
.jf-step4__cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--jf-s3)}
.jf-step4__sub{margin-bottom:10px;font-family:var(--jf-head);font-weight:600;font-size:15px;color:var(--jf-ink)}
.jf-step4__sub--six{margin:var(--jf-s5) 0 var(--jf-s3)}
.jf-dots{border-top:1px solid var(--jf-line-2)}
.jf-dots>li{padding:12px 0;border-bottom:1px solid var(--jf-line-2);font-size:14.5px;line-height:1.8;color:var(--jf-ink-2)}
.jf-dots b{display:block;font-family:var(--jf-head);font-weight:600;font-size:15.5px;color:var(--jf-ink)}
.jf-step4__photo{aspect-ratio:4/3}
.jf-step4__photo figcaption{position:absolute;left:12px;bottom:12px;padding:2px 10px;border-radius:3px;background:#fff;font-family:var(--jf-head);font-weight:600;font-size:12.5px;line-height:1.8;color:var(--jf-ink)}
.jf-step4__sys{margin-top:var(--jf-s5)}
.jf-step4 .jf-legend{margin-top:var(--jf-s2)}
.jf-tools3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.jf-tools3>li{padding:16px;background:#fff;border:1px solid var(--jf-line);border-radius:var(--jf-r)}
.jf-tools3 b{display:block;margin-bottom:4px;font-family:var(--jf-head);font-weight:600;font-size:18px;color:var(--jf-blue)}
.jf-tools3 span{display:block;font-size:14px;line-height:1.75;color:var(--jf-ink-2)}
.jf-step4__text>.jf-step4__loopnote{margin:var(--jf-s3) 0 0;padding:12px 16px;border:1.5px dashed var(--jf-blue);border-radius:var(--jf-r);font-family:var(--jf-head);font-weight:600;font-size:15px;line-height:1.7;color:var(--jf-blue)}

/* 会社の段階（年商）：右へいくほど上がる階段 */
.jf-stg__pick{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:var(--jf-s4)}
.jf-stg__ask{margin-right:6px;font-family:var(--jf-head);font-weight:600;font-size:16px;color:var(--jf-ink)}
.jf-stg__pick button{min-height:44px;padding:8px 16px;border:1px solid var(--jf-line-2);border-radius:999px;background:#fff;font-family:var(--jf-head);font-weight:600;font-size:14.5px;color:var(--jf-ink);cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}
.jf-stg__pick button:hover{border-color:var(--jf-blue)}
.jf-stg__pick button[aria-pressed=true]{background:var(--jf-blue);border-color:var(--jf-blue);color:#fff}
.jf-stg{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;align-items:start;margin-bottom:var(--jf-s3)}
.jf-stg>li{display:flex;flex-direction:column;gap:6px;padding:18px;background:#fff;border:1px solid var(--jf-line);border-top:4px solid var(--jf-line-2);border-radius:var(--jf-r);scroll-margin-top:calc(var(--jf-hd-h) + 16px);transition:border-color .2s,box-shadow .2s,transform .2s}
.jf-stg>li:nth-child(1){margin-top:112px}
.jf-stg>li:nth-child(2){margin-top:84px}
.jf-stg>li:nth-child(3){margin-top:56px}
.jf-stg>li:nth-child(4){margin-top:28px}
.jf-stg>li.is-on{border-color:var(--jf-blue);border-top-color:var(--jf-blue);box-shadow:0 18px 34px -22px rgba(34,54,224,.7);transform:translateY(-4px)}
.jf-stg__size .jf-num{display:block;font-size:clamp(26px,2.4vw,34px);line-height:1.1}
.jf-stg__size .jf-num small{margin-left:3px;font-family:var(--jf-head);font-size:.42em;font-weight:600}
.jf-stg__size>span:last-child{display:block;margin-top:6px;font-family:var(--jf-head);font-weight:600;font-size:14.5px;color:var(--jf-blue)}
.jf-stg dt{margin-top:8px;font-family:var(--jf-mono);font-size:11.5px;letter-spacing:.06em;color:var(--jf-mute)}
.jf-stg dd{font-size:14px;line-height:1.75;color:var(--jf-ink-2)}
.jf-stg dd:last-of-type{font-family:var(--jf-head);font-weight:600;color:var(--jf-ink)}

/* 事業の全体像 */
.jf-map{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.jf-map__col{padding:var(--jf-s3);background:#fff;border:1px solid var(--jf-line);border-radius:var(--jf-r)}
.jf-map__h{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin-bottom:4px;padding-bottom:14px;border-bottom:1px solid var(--jf-ink);font-family:var(--jf-head);font-weight:600;font-size:22px;color:var(--jf-ink)}
.jf-map__h .jf-num{font-size:13px;color:var(--jf-blue)}
.jf-map__h small{font-size:13px;font-weight:500;color:var(--jf-mute)}
.jf-map a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:14px 0;border-bottom:1px solid var(--jf-line);text-decoration:none!important}
.jf-map li:last-child a{border-bottom:0}
.jf-map a::after{content:"→";grid-column:2;grid-row:1/3;align-self:center;font-family:var(--jf-mono);color:var(--jf-blue)}
.jf-map b{font-family:var(--jf-head);font-weight:600;font-size:16px;color:var(--jf-ink)}
.jf-map a span{font-size:13.5px;line-height:1.7;color:var(--jf-mute)}
.jf-map a:hover b{color:var(--jf-blue)}

/* 主役は経営者・実績の工程の印 */
.jf-owner{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--jf-s5) var(--jf-s6);align-items:start}
.jf-owner .jf-label{margin-bottom:var(--jf-s2);color:var(--jf-ink)}
.jf-owner .jf-flow--mini{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}
.jf-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}
.jf-tags span{padding:1px 10px;border:1px solid var(--jf-blue);border-radius:999px;font-family:var(--jf-head);font-weight:600;font-size:12px;line-height:1.8;color:var(--jf-blue)}

@media (max-width:960px){
  .jf-loop__steps{grid-template-columns:minmax(0,1fr);gap:36px}
  .jf-loop__steps>li+li::before{content:"↓";left:50%;top:-18px}
  .jf-loop__back{height:auto;margin:22px 0 0;padding:12px 16px;border:1.5px dashed var(--jf-blue);border-radius:var(--jf-r)}
  .jf-loop__back::before{display:none}
  .jf-loop__back span{position:static;display:block;transform:none;padding:0;background:none;white-space:normal;text-align:center}
  .jf-loop__back span::before{content:"↺ "}
  .jf-loop__band{margin-top:22px}
  .jf-step4__body,.jf-owner,.jf-map{grid-template-columns:minmax(0,1fr)}
  .jf-step4__photo{max-width:560px}
  .jf-stg{grid-template-columns:minmax(0,1fr)}
  .jf-stg>li{margin-top:0!important}
}
@media (max-width:600px){
  .jf-way3{gap:14px}
  .jf-way3>li+li::before{left:-7px;font-size:12px}
  .jf-way3 a{padding:9px 9px}
  .jf-way3 b{font-size:16.5px}
  .jf-way3 a>span:last-child{font-size:11.5px}
  .jf-chk label{font-size:16px}
  .jf-chk__result{gap:14px;padding:14px 16px}
  .jf-chk__count .jf-num{font-size:36px}
  .jf-chk__msg{font-size:14.5px}
  .jf-vs__pair{grid-template-columns:minmax(0,1fr)}
  .jf-vs__a{grid-column:1;grid-row:1}
  .jf-vs__pair::before{content:"↓";grid-column:1;grid-row:2;padding:4px 0}
  .jf-vs__b{grid-column:1;grid-row:3}
  .jf-step4__head{gap:14px}
  .jf-step4__no{width:52px;height:52px;font-size:17px}
  .jf-step4__cols,.jf-tools3{grid-template-columns:minmax(0,1fr)}
  .jf-loop__steps b{font-size:23px}
}
@media (prefers-reduced-motion:reduce){
  .jf-top4 *{animation:none!important;transition:none!important}
}

/* ---------- トップ v4：最初の画面の見出し（2026-11-01 KAI「ヘッダーが弱い」→ 案1） ---------- */
.jf-h1__pre{display:block;margin-bottom:12px;font-size:.42em;line-height:1.5;letter-spacing:.02em;color:var(--jf-ink-2)}
.jf-fv .jf-h1 em{font-style:normal;color:var(--jf-blue)}
.jf-fv3{margin:var(--jf-s4) 0 var(--jf-s4);border-top:1px solid var(--jf-ink);max-width:600px}
.jf-fv3>li{display:grid;grid-template-columns:44px 132px minmax(0,1fr);align-items:center;gap:4px 14px;padding:14px 0;border-bottom:1px solid var(--jf-line-2)}
.jf-fv3__no{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--jf-blue);font-family:var(--jf-mono);font-size:14px;font-weight:600;color:#fff}
.jf-fv3 b{font-family:var(--jf-head);font-weight:600;font-size:clamp(20px,1.9vw,24px);line-height:1.3;color:var(--jf-ink)}
.jf-fv3 li>span:last-child{font-size:15px;line-height:1.7;color:var(--jf-ink-2)}
.jf-chk__ask{margin-bottom:12px;font-size:15px;color:var(--jf-mute)}
.jf-chk__ask b{display:block;font-family:var(--jf-head);font-weight:600;font-size:clamp(19px,1.7vw,22px);color:var(--jf-ink)}
@media (max-width:600px){
  .jf-h1__pre{font-size:.5em}
  .jf-fv3>li{grid-template-columns:40px minmax(0,1fr);gap:2px 12px}
  .jf-fv3__no{grid-row:1 / span 2;width:36px;height:36px;font-size:13px}
  .jf-fv3 li>span:last-child{grid-column:2;font-size:14px}
}

/* ---------- トップ v4：途中の相談の案内（ボタン1つ）・スマホの固定バー（2026-11-01 集客調査の 4-2 #1） ---------- */
.jf-midcta--one{margin-top:var(--jf-s5)}
.jf-sec--paper .jf-midcta--one{background:#fff}
.jf-stick{display:none}
@media (max-width:960px){
  .jf-stick{position:fixed;left:0;right:0;bottom:0;z-index:90;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:8px;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);border-top:1px solid var(--jf-line);box-shadow:0 -6px 18px rgba(20,21,19,.08);transform:translateY(110%);visibility:hidden;transition:transform .25s,visibility .25s}
  .jf-stick.is-on{transform:none;visibility:visible}
  .jf-stick a{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:52px;padding:6px 8px;border-radius:var(--jf-r);line-height:1.3;text-align:center;text-decoration:none!important}
  .jf-stick b{font-family:var(--jf-head);font-weight:600;font-size:14.5px;white-space:nowrap}
  .jf-stick small{margin-top:2px;font-size:11px;white-space:nowrap}
  .jf-stick__main{background:var(--jf-blue);color:#fff!important}
  .jf-stick__line{background:#06c755;color:#fff!important}
}

/* ---------- トップ v4：KAI の判断（2026-11-01）地域の1行・料金の目安・法人情報 ---------- */
.jf-fv__area{margin-top:14px;font-size:14.5px;line-height:1.7;color:var(--jf-ink-2)}
.jf-price1{margin-top:var(--jf-s4);padding:var(--jf-s3);background:#fff;border:1px solid var(--jf-line);border-top:3px solid var(--jf-blue);border-radius:var(--jf-r)}
.jf-price1 .jf-label{margin-bottom:10px;color:var(--jf-ink)}
.jf-price1 dl>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:4px 16px;padding:12px 0;border-top:1px solid var(--jf-line)}
.jf-price1 dt{font-family:var(--jf-head);font-weight:600;font-size:15.5px;color:var(--jf-ink)}
.jf-price1 dd b{display:block;font-family:var(--jf-head);font-weight:600;font-size:22px;line-height:1.3;color:var(--jf-blue)}
.jf-price1 dd span{display:block;margin-top:4px;font-size:14px;line-height:1.8;color:var(--jf-ink-2)}
.jf-price1>.jf-small{margin-top:10px}
.jf-corp{margin-top:var(--jf-s4);border-top:1px solid var(--jf-line)}
.jf-corp>div{display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;padding:8px 0;border-bottom:1px solid var(--jf-line);font-size:14px;line-height:1.7}
.jf-corp dt{font-family:var(--jf-mono);font-size:12px;letter-spacing:.04em;color:var(--jf-mute);padding-top:2px}
.jf-corp dd{color:var(--jf-ink-2)}
@media (max-width:600px){
  .jf-price1 dl>div{grid-template-columns:minmax(0,1fr)}
}

/* ---------- トップ v4：結果が返る診断・最初の一歩の実写（2026-11-01 集客調査の 4-2 #3・#9） ---------- */
.jf-diag{margin-top:14px;padding:18px 20px;background:#fff;border:1px solid var(--jf-line);border-left:4px solid var(--jf-blue);border-radius:var(--jf-r)}
.jf-diag__label{font-family:var(--jf-mono);font-size:12px;letter-spacing:.06em;color:var(--jf-mute)}
.jf-diag__theme{margin:4px 0 6px;font-family:var(--jf-head);font-weight:600;font-size:clamp(21px,2vw,25px);line-height:1.4;color:var(--jf-blue)}
.jf-diag__text{font-family:var(--jf-head);font-weight:600;font-size:15.5px;line-height:1.8;color:var(--jf-ink)}
.jf-diag__also{margin-top:6px;font-size:14px;color:var(--jf-ink-2)}
.jf-diag__also:empty{display:none}
.jf-diag__links{display:flex;flex-wrap:wrap;gap:6px 20px;margin:12px 0 14px}
.jf-diag .jf-btns{margin-bottom:8px}
.jf-diag a:not(.jf-btn):not(.jf-link){color:var(--jf-blue);text-underline-offset:3px}
.jf-vs>li,.jf-cases>.jf-panel,.jf-case{scroll-margin-top:calc(var(--jf-hd-h) + 16px)}
.jf-first__photo{aspect-ratio:3/2;margin-bottom:var(--jf-s3)}
.jf-first__photo figcaption{position:absolute;left:12px;top:12px;padding:2px 10px;border-radius:3px;background:#fff;font-family:var(--jf-mono);font-size:11.5px;line-height:1.8;color:var(--jf-ink)}

/* ---------- トップ：10秒で「何をしてくれるか」（2026-11-01 KAI「飲食・小売・サービス業の即効・継続型業績改善」） ---------- */
.jf-logo__sub{font-size:12px;letter-spacing:.02em;color:var(--jf-ink-2)}
.jf-fv__sub{margin:14px 0 0;font-family:var(--jf-head);font-weight:600;font-size:clamp(16px,1.4vw,18px);line-height:1.75;color:var(--jf-ink-2)}
.jf-fv .jf-fv3{margin-top:var(--jf-s3)}
@media (max-width:960px){ .jf-logo__sub{font-size:10.5px;letter-spacing:0} }
/* 1366×768 のノートPCでも、最初の画面に相談のボタンまで収める */
.jf-top4 .jf-fv{padding-top:48px}
.jf-top4 .jf-fv__to{margin-bottom:18px}
.jf-top4 .jf-h1__pre{margin-bottom:8px}
.jf-top4 .jf-fv__sub{margin-top:10px}
.jf-top4 .jf-fv .jf-fv3{margin:16px 0 20px}
.jf-top4 .jf-fv3>li{padding:10px 0}
/* ヘッダーの1行を長くしたので、スマホで「メニュー」が折れないようにする */
.jf-menu{flex-shrink:0;white-space:nowrap}
.jf-logo{min-width:0}
@media (max-width:420px){ .jf-logo__sub{font-size:10px} }
/* スマホで見出しの1行目を途中で折らない */
@media (max-width:600px){ .jf-page.jf-top4 .jf-fv .jf-h1{font-size:min(8.4vw,36px)} }

/* ---------- トップ v5（2026-11-01 KAI の指示書）：実績を前へ・チェックの整理・店長育成・相談の章 ---------- */
/* 最初の画面：見出しは3つの短い文。3つの価値は PC で横並びのカード */
.jf-top5 .jf-h1__l{display:block}
.jf-top5 .jf-h2__l{display:block} /* 見出しの文ごとに行を分ける（文の中は .jf-np の区切りで折れる） */
.jf-page.jf-top5 .jf-fv .jf-h1{font-size:clamp(34px,3.3vw,46px);line-height:1.32} /* 見出しの3行（最長14字）が、それぞれ1行に収まる大きさ */
.jf-top5 .jf-fv .jf-fv3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:none;margin:18px 0 20px;border-top:0}
.jf-top5 .jf-fv3>li{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px;border:1px solid var(--jf-line-2);border-radius:var(--jf-r);background:#fff}
.jf-top5 .jf-fv3__no{width:28px;height:28px;font-size:12px}
.jf-top5 .jf-fv3 b{font-size:15.5px;line-height:1.45}
.jf-top5 .jf-fv3 li>span:last-child{font-size:12.5px;line-height:1.5;color:var(--jf-mute)}

/* 改善実績（3件）：問題 → 変えたこと → 成果 */
.jf-res{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.jf-res>li{display:flex;flex-direction:column;gap:10px;padding:var(--jf-s3);background:#fff;border:1px solid var(--jf-line);border-top:3px solid var(--jf-blue);border-radius:var(--jf-r)}
.jf-res__kind{font-family:var(--jf-mono);font-size:12px;letter-spacing:.06em;color:var(--jf-mute)}
.jf-res__num .jf-num{display:block;font-size:clamp(30px,2.8vw,40px);line-height:1.15;color:var(--jf-ink)}
.jf-res__num .jf-num small{margin:0 3px;font-family:var(--jf-head);font-size:.42em;font-weight:600}
.jf-res__num .jf-num small:first-child{margin-left:0}
.jf-res__num>span:last-child{display:block;margin-top:4px;font-family:var(--jf-head);font-weight:600;font-size:14.5px;line-height:1.6;color:var(--jf-ink)}
.jf-res dl>div{display:grid;grid-template-columns:72px minmax(0,1fr);gap:8px;padding:8px 0;border-top:1px solid var(--jf-line)}
.jf-res dt{padding-top:2px;font-family:var(--jf-mono);font-size:11.5px;letter-spacing:.04em;color:var(--jf-blue)}
.jf-res dd{font-size:14px;line-height:1.75;color:var(--jf-ink-2)}
.jf-res dl>div:last-child dd{font-family:var(--jf-head);font-weight:600;color:var(--jf-ink)}
.jf-res__more{margin-top:var(--jf-s3)}

/* 経営課題チェック：最初は4つ、「ほかの課題も確認する」で残り4つ */
.jf-chk__more>summary,.jf-more>summary{display:inline-flex;align-items:center;gap:10px;padding:9px 16px;border:1px solid var(--jf-line-2);border-radius:999px;background:#fff;list-style:none;cursor:pointer;font-family:var(--jf-head);font-weight:600;font-size:14.5px;color:var(--jf-ink)}
.jf-chk__more>summary::-webkit-details-marker,.jf-more>summary::-webkit-details-marker{display:none}
.jf-chk__more>summary::after,.jf-more>summary::after{content:"＋";font-family:var(--jf-mono);color:var(--jf-blue)}
.jf-chk__more[open]>summary::after,.jf-more[open]>summary::after{content:"－"}
.jf-chk__more>summary:hover,.jf-more>summary:hover{border-color:var(--jf-blue)}
.jf-chk__more>summary{margin:14px 0 4px}
.jf-chk__more[open]>summary{margin-bottom:10px}
/* チェックした課題の整理（原因は断定しない） */
.jf-diag__list{margin:8px 0 10px;border-top:1px solid var(--jf-line)}
.jf-diag__list>li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 6px;align-items:baseline;padding:10px 0;border-bottom:1px solid var(--jf-line)}
.jf-diag__list b{font-family:var(--jf-head);font-weight:600;font-size:17px;color:var(--jf-blue)}
.jf-diag__list span{font-size:13.5px;color:var(--jf-mute)}
.jf-diag__list small{grid-column:1/-1;font-size:14px;line-height:1.7;color:var(--jf-ink-2)}
.jf-diag__list .jf-link{grid-column:1/-1;font-size:13.5px}
.jf-diag__note{margin-bottom:12px;font-size:14px;line-height:1.75;color:var(--jf-ink-2)}

/* そのままにすると（要約）：小さなカード */
.jf-risk2{margin-top:var(--jf-s5)}
.jf-risk2__h{margin-bottom:var(--jf-s2);font-family:var(--jf-head);font-weight:600;font-size:clamp(19px,1.8vw,23px);color:var(--jf-ink)}
.jf-risk2__list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.jf-risk2__list>li{display:grid;grid-template-columns:120px minmax(0,1fr);gap:14px;align-items:start;padding:14px;background:var(--jf-paper);border-radius:var(--jf-r)}
.jf-risk2__list .jf-il img{aspect-ratio:3/2;object-fit:cover}
.jf-risk2__t{display:flex;align-items:baseline;gap:8px;margin-bottom:6px;font-family:var(--jf-head);font-weight:600;font-size:16px;line-height:1.5;color:var(--jf-ink)}
.jf-risk2__t .jf-num{flex-shrink:0;font-size:12px;color:var(--jf-blue)}
.jf-risk2 dl{display:grid;grid-template-columns:44px minmax(0,1fr);gap:4px 8px}
.jf-risk2 dt{padding-top:3px;font-family:var(--jf-mono);font-size:11px;color:var(--jf-mute)}
.jf-risk2 dd{font-size:13.5px;line-height:1.7;color:var(--jf-ink-2)}
.jf-risk2 dd:nth-of-type(2){font-weight:600;color:var(--jf-ink)}
.jf-risk2 .jf-note{margin-top:10px}

/* 解決の方法：折りたたみ（システムの画面・ほかの例） */
.jf-more{margin-top:var(--jf-s3)}
.jf-more[open]>summary{margin-bottom:var(--jf-s3)}
.jf-more .jf-step4__sys{margin-top:0}
.jf-vswrap{margin-top:var(--jf-s4)}
.jf-vswrap .jf-vs{gap:var(--jf-s3)}
.jf-vswrap .jf-more .jf-vs{margin-top:0}

/* 店長育成：店長が変わること・社長が変わること */
.jf-mgr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.jf-mgr__col{padding:var(--jf-s3);background:var(--jf-blue-tint);border:1px solid #c9cff7;border-radius:var(--jf-r)}
.jf-mgr__col--owner{background:var(--jf-paper);border-color:var(--jf-line)}
.jf-mgr__h{margin-bottom:10px;font-family:var(--jf-head);font-weight:600;font-size:18px;color:var(--jf-ink)}
.jf-mgr ol{counter-reset:jfm}
.jf-mgr ol>li{position:relative;padding:10px 0 10px 34px;border-top:1px solid rgba(20,21,19,.1);counter-increment:jfm;font-family:var(--jf-head);font-weight:600;font-size:16px;line-height:1.6;color:var(--jf-ink)}
.jf-mgr ol>li::before{content:counter(jfm);position:absolute;left:0;top:11px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--jf-blue);font-family:var(--jf-mono);font-size:12px;color:#fff}
.jf-mgr__col--owner ol>li::before{background:var(--jf-ink)}
.jf-mgr__path{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--jf-s4);align-items:center;margin-top:var(--jf-s5)}
.jf-mgr__path .jf-path__il{margin-bottom:0}
.jf-mgr__path .jf-label{margin-bottom:var(--jf-s2);color:var(--jf-ink)}
.jf-mgr__path .jf-flow--mini{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}

/* 会社の段階：選んだ段階だけ、壁と一手を開く（JS が無いときは全部見える） */
.jf-stg__hint{display:none;margin:-14px 0 var(--jf-s3);font-size:14px;color:var(--jf-mute)}
.jf-js .jf-stg__hint{display:block}
.jf-js .jf-stg>li:not(.is-on) dl{display:none}
.jf-js .jf-stg>li{cursor:pointer}
.jf-sec--paper .jf-stg>li{background:#fff}

/* 60分の無料経営相談：得られること・準備・流れ */
.jf-gain{margin:0 0 10px;border-top:1px solid var(--jf-ink)}
.jf-gain>li{position:relative;padding:12px 0 12px 26px;border-bottom:1px solid var(--jf-line);font-family:var(--jf-head);font-weight:600;font-size:16px;line-height:1.6;color:var(--jf-ink)}
.jf-gain>li::before{content:"";position:absolute;left:3px;top:20px;width:10px;height:10px;border-radius:2px;background:var(--jf-blue)}
.jf-first .jf-first__lb{margin-top:var(--jf-s4)}
.jf-first .jf-first__q{margin-bottom:12px}

@media (max-width:960px){
  .jf-res,.jf-risk2__list,.jf-mgr,.jf-mgr__path{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:600px){
  .jf-page.jf-top5 .jf-fv .jf-h1{font-size:min(6.2vw,34px)}
  .jf-top5 .jf-fv .jf-fv3{grid-template-columns:minmax(0,1fr);gap:6px;margin:14px 0 16px}
  .jf-top5 .jf-fv3>li{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:0 10px;padding:8px 12px}
  .jf-top5 .jf-fv3__no{grid-row:1 / span 2}
  .jf-top5 .jf-fv3 li>span:last-child{grid-column:2}
  .jf-res>li{padding:var(--jf-s2) 18px}
  .jf-res dl>div{grid-template-columns:64px minmax(0,1fr)}
  .jf-risk2__list>li{grid-template-columns:88px minmax(0,1fr);gap:10px;padding:12px}
  .jf-mgr__path .jf-flow--mini{grid-template-columns:minmax(0,1fr)}
}
/* スマホでは工程のイラストと写真を横長に切り取り、解決の方法の章を短くする */
@media (max-width:600px){
  .jf-top5 .jf-loop__il img{aspect-ratio:16/9;object-fit:cover}
  .jf-top5 .jf-step4__photo{aspect-ratio:16/9}
  .jf-top5 .jf-loop__steps{gap:30px}
}

/* ---------- トップ v6（2026-11-01 KAI の最終改善指示）：実績を3秒で・チェックから方法と事例へ・店長と社長の関係・相談の不安 ---------- */
/* 改善実績：状況 → 大きな数字 → 変えたこと → 詳しく（3枚の高さをそろえ、リンクは下端に） */
.jf-res6>li{gap:14px}
.jf-res6 .jf-res__kind span{display:block;margin-top:4px;font-family:var(--jf-sans);font-size:14px;line-height:1.6;letter-spacing:0;color:var(--jf-ink-2)}
.jf-res__big{padding:14px 0;border-top:1px solid var(--jf-line);border-bottom:1px solid var(--jf-line)}
.jf-res__pre{display:block;font-family:var(--jf-head);font-weight:600;font-size:14px;color:var(--jf-mute)}
.jf-res__big .jf-num{display:block;margin:2px 0 4px;font-size:clamp(36px,3.5vw,48px);line-height:1.08;color:var(--jf-blue);white-space:nowrap}
.jf-res__big .jf-num small{margin:0 2px;font-family:var(--jf-head);font-size:.4em;font-weight:600}
.jf-res__what{display:block;font-family:var(--jf-head);font-weight:600;font-size:15px;line-height:1.55;color:var(--jf-ink)}
.jf-res__did{font-size:14px;line-height:1.75;color:var(--jf-ink-2)}
.jf-res__did b{display:block;margin-bottom:2px;font-family:var(--jf-mono);font-weight:400;font-size:11.5px;letter-spacing:.04em;color:var(--jf-blue)}
.jf-res__go{margin-top:auto;align-self:flex-start;font-size:14px}
.jf-res__note{margin-top:12px}
@media (min-width:961px){ .jf-res6 .jf-res__kind{min-height:4.6em} .jf-res6 .jf-res__did{min-height:5.3em} }

/* 経営課題チェック：結果＝テーマ（最大2つ）→ 当社が使う方法 → 近い事例 → 相談 */
.jf-top5 .jf-pains-wrap{align-items:start}
.jf-chk__none{margin-top:10px;font-size:14px;color:var(--jf-mute)}
.jf-chk__none a{margin-left:6px;color:var(--jf-blue);text-underline-offset:3px}
.jf-diag [hidden]{display:none!important}
.jf-diag__broad{margin:8px 0 4px;font-family:var(--jf-head);font-weight:600;font-size:16px;line-height:1.7;color:var(--jf-ink)}
.jf-diag__theme{padding:16px 0;border-top:1px solid var(--jf-line)}
.jf-diag__theme:first-child{margin-top:8px}
.jf-diag__t{font-family:var(--jf-head);font-weight:600;font-size:19px;line-height:1.5;color:var(--jf-ink)}
.jf-diag__t span{display:block;font-family:var(--jf-mono);font-weight:400;font-size:11.5px;letter-spacing:.06em;color:var(--jf-blue)}
.jf-diag__why{margin-top:6px;font-size:14.5px;line-height:1.75;color:var(--jf-ink-2)}
.jf-diag__cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 22px;margin-top:12px}
.jf-diag__h{margin-bottom:6px;font-family:var(--jf-mono);font-size:11.5px;letter-spacing:.04em;color:var(--jf-mute)}
.jf-diag__how>li{position:relative;padding:3px 0 3px 16px;font-size:14px;line-height:1.65;color:var(--jf-ink)}
.jf-diag__how>li::before{content:"";position:absolute;left:2px;top:.85em;width:6px;height:6px;border-radius:1px;background:var(--jf-blue)}
.jf-diag__case{display:block;padding:12px 14px;background:var(--jf-paper);border:1px solid transparent;border-radius:var(--jf-r);color:inherit!important;text-decoration:none!important;transition:border-color .15s}
.jf-diag__case:hover{border-color:var(--jf-blue)}
.jf-diag__case .jf-num{display:block;font-size:22px;line-height:1.2;color:var(--jf-blue)}
.jf-diag__case .jf-num small{margin:0 2px;font-family:var(--jf-head);font-size:.5em;font-weight:600}
.jf-diag__case>span:last-child{display:block;margin-top:4px;font-size:13px;line-height:1.65;color:var(--jf-ink-2)}
.jf-diag__more{display:inline-block;margin-top:8px;font-size:13.5px}
.jf-diag__other{padding-top:10px;border-top:1px solid var(--jf-line);font-size:14px;color:var(--jf-ink-2)}
.jf-diag__note{margin-top:10px;font-size:13px;line-height:1.7;color:var(--jf-mute)}
.jf-diag__cta{margin-top:14px;padding-top:14px;border-top:1px solid var(--jf-ink)}
.jf-diag__cta b{display:block;font-family:var(--jf-head);font-weight:600;font-size:17px;line-height:1.6;color:var(--jf-ink)}
.jf-diag__cta p>span{display:block;margin-top:2px;font-size:13.5px;color:var(--jf-mute)}
.jf-diag__cta .jf-btns{margin:12px 0 8px}

/* 店長育成：店長が目指す状態 → 社長が使えるようになる時間 */
.jf-mgr6{grid-template-columns:minmax(0,1fr) 112px minmax(0,1fr);align-items:stretch}
.jf-mgr__arrow{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;font-family:var(--jf-head);font-weight:600;font-size:13.5px;line-height:1.6;color:var(--jf-blue)}
.jf-mgr__arrow::after{content:"→";font-family:var(--jf-mono);font-size:30px;line-height:1}
.jf-mgr6 ol>li{font-size:15.5px}

/* 会社の段階：同じ年商でも課題は違う、をボタンの近くに */
.jf-stg__note{margin:-12px 0 var(--jf-s3);font-size:13.5px;line-height:1.7;color:var(--jf-mute)}
.jf-js .jf-stg__hint+.jf-stg__note{margin-top:-18px}

/* 60分の無料経営相談：ためらう理由に先に答える */
.jf-ok{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:10px 0 var(--jf-s5)}
.jf-ok>li{padding:14px 16px;background:#fff;border:1px solid var(--jf-line);border-top:3px solid var(--jf-blue);border-radius:var(--jf-r)}
.jf-ok b{display:block;font-family:var(--jf-head);font-weight:600;font-size:15.5px;line-height:1.5;color:var(--jf-ink)}
.jf-ok span{display:block;margin-top:6px;font-size:13.5px;line-height:1.65;color:var(--jf-ink-2)}

@media (max-width:960px){
  .jf-mgr6{grid-template-columns:minmax(0,1fr)}
  .jf-mgr__arrow{flex-direction:row;gap:8px;padding:2px 0}
  .jf-mgr__arrow::after{content:"↓";font-size:22px}
  .jf-ok{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:600px){
  .jf-res__big .jf-num{font-size:min(10vw,40px)}
  .jf-diag{padding:16px}
  .jf-diag__cols{grid-template-columns:minmax(0,1fr)}
  .jf-diag__cta .jf-btn{width:100%;justify-content:center}
  .jf-ok{grid-template-columns:minmax(0,1fr)}
}

/* ---------- トップ v7（2026-11-01 KAI の指示）：見つける → 組み立てる → 実行する → 結果を次の改善へ ---------- */
.jf-top5 .jf-h2__l{display:block}
/* 循環の図：3工程のカード → 下で「結果・情報・学び」が01へ戻る線（PC）／右側の戻る線（スマホ） */
.jf-loop__lead{margin-bottom:var(--jf-s3);font-family:var(--jf-head);font-weight:600;font-size:clamp(17px,1.7vw,21px);line-height:1.6;color:var(--jf-ink)}
.jf-loop__steps b small{display:inline-block;margin-left:10px;padding:1px 9px;border:1px solid var(--jf-line-2);border-radius:999px;font-size:12px;font-weight:600;line-height:1.8;letter-spacing:.04em;color:var(--jf-mute);vertical-align:middle}
.jf-top5 .jf-loop__back{height:46px;border:2px solid var(--jf-blue);border-top:0;border-radius:0 0 18px 18px}
.jf-top5 .jf-loop__back::before{left:-9px;top:-13px;border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:13px solid var(--jf-blue)}
.jf-top5 .jf-loop__back::after{content:"";position:absolute;right:-5px;top:-4px;width:8px;height:8px;border-radius:50%;background:var(--jf-blue)}
.jf-top5 .jf-loop__back span{bottom:-14px;padding:0 16px;font-size:15px;letter-spacing:.06em}
.jf-loop__cap{margin-top:24px;text-align:center;font-family:var(--jf-head);font-weight:600;font-size:15px;color:var(--jf-ink-2)}
.jf-loop__cap::before{content:"↺";margin-right:6px;font-family:var(--jf-mono);color:var(--jf-blue)}
/* 3つの道具：工程とは別の軸（どの工程でも使う手段） */
.jf-loop__tools{margin-top:var(--jf-s4);padding-top:var(--jf-s3);border-top:1px dashed var(--jf-line-2)}
.jf-loop__toolh{margin-bottom:12px;font-family:var(--jf-mono);font-size:12px;letter-spacing:.06em;color:var(--jf-mute)}
.jf-loop__tools .jf-tools3>li{background:#fff}
.jf-top5 .jf-loop__band{margin-top:var(--jf-s3)}
/* 組み立てる：設計するものの一覧を2列に */
.jf-dots--2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;margin-top:14px}

/* 事業の全体像：使う道具（左上）と、役立つ工程（右下の印） */
.jf-tmap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;border-top:1px solid var(--jf-ink)}
.jf-tmap>li{border-bottom:1px solid var(--jf-line)}
.jf-tmap a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 16px;padding:16px 0;color:inherit!important;text-decoration:none!important}
.jf-tmap__kind{grid-column:1/-1;font-family:var(--jf-mono);font-size:11.5px;letter-spacing:.06em;color:var(--jf-mute)}
.jf-tmap b{font-family:var(--jf-head);font-weight:600;font-size:17px;line-height:1.5;color:var(--jf-ink);transition:color .15s}
.jf-tmap a:hover b{color:var(--jf-blue)}
.jf-tmap b::after{content:" →";font-family:var(--jf-mono);font-size:14px;color:var(--jf-blue)}
.jf-tmap__desc{grid-column:1;font-size:13.5px;line-height:1.7;color:var(--jf-mute)}
.jf-tmap__steps{grid-column:2;grid-row:2/4;align-self:end;display:flex;gap:4px}
.jf-tmap__steps span{padding:0 8px;border-radius:999px;background:var(--jf-blue-tint);font-family:var(--jf-head);font-weight:600;font-size:11.5px;line-height:1.9;color:var(--jf-blue);white-space:nowrap}

@media (max-width:960px){
  /* スマホ：カードは縦に並び、右側の線が「実行する」から「見つける」へ戻る */
  .jf-top5 .jf-loop__steps{position:relative;padding-right:30px}
  .jf-top5 .jf-loop__steps::after{content:"";position:absolute;right:4px;top:12%;bottom:14%;width:18px;border:2px solid var(--jf-blue);border-left:0;border-radius:0 14px 14px 0}
  .jf-top5 .jf-loop__steps::before{content:"";position:absolute;right:20px;top:calc(12% - 7px);border-top:7px solid transparent;border-bottom:7px solid transparent;border-right:11px solid var(--jf-blue)}
  .jf-top5 .jf-loop__back{height:auto;margin:20px 0 0;padding:12px 16px;border:2px solid var(--jf-blue);border-radius:var(--jf-r)}
  .jf-top5 .jf-loop__back::after{display:none}
  .jf-top5 .jf-loop__back span{position:static;display:block;transform:none;padding:0;background:none;text-align:center}
  .jf-top5 .jf-loop__back span::before{content:none}
  .jf-loop__cap{margin-top:10px}
  .jf-tmap{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:600px){
  .jf-dots--2{grid-template-columns:minmax(0,1fr)}
  .jf-tmap a{grid-template-columns:minmax(0,1fr)}
  .jf-tmap__steps{grid-column:1;grid-row:auto;margin-top:6px;flex-wrap:wrap}
  .jf-loop__steps b small{margin-left:8px}
}

/* ---------- トップ v8（2026-11-01 KAI の指示）：悩みの入口・結果の順番・進め方の一例・事例の5項目・目的から選ぶ・相談の不安 ---------- */
/* よくある3つの悩み（JS があるときだけ表示。無いときは下のチェックだけ） */
.jf-entry{display:none;margin-bottom:var(--jf-s3)}
.jf-js .jf-entry{display:block}
.jf-entry__h{margin-bottom:10px;font-family:var(--jf-head);font-weight:600;font-size:16px;color:var(--jf-ink)}
.jf-entry__h span{display:block;margin-top:2px;font-family:var(--jf-sans);font-weight:400;font-size:13px;color:var(--jf-mute)}
.jf-entry__btns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.jf-entry__btns button{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-height:44px;padding:14px 16px;text-align:left;background:#fff;border:1.5px solid var(--jf-line-2);border-radius:var(--jf-r);cursor:pointer;transition:border-color .15s,background-color .15s}
.jf-entry__btns button:hover{border-color:var(--jf-blue)}
.jf-entry__btns button b{font-family:var(--jf-head);font-weight:600;font-size:16px;line-height:1.5;color:var(--jf-ink)}
.jf-entry__btns button span{font-size:13px;line-height:1.6;color:var(--jf-mute)}
.jf-entry__btns button[aria-pressed=true]{border-color:var(--jf-blue);background:var(--jf-blue-tint)}
.jf-entry__btns button[aria-pressed=true] b::before{content:"✓ ";color:var(--jf-blue)}
/* 結果欄：選んだ悩み → まず確認すること → 方法 → 近い事例 → 相談 */
.jf-diag__pick{padding:10px 0 4px}
.jf-diag__picked>li{position:relative;padding:3px 0 3px 18px;font-family:var(--jf-head);font-weight:600;font-size:15px;line-height:1.6;color:var(--jf-ink)}
.jf-diag__picked>li::before{content:"✓";position:absolute;left:0;top:3px;font-size:13px;color:var(--jf-blue)}
.jf-diag__cols .jf-diag__why{margin:0 0 10px;font-family:var(--jf-head);font-weight:600;font-size:14.5px;color:var(--jf-ink)}
.jf-diag__case>span:nth-child(2){display:block;margin-top:4px;font-size:13px;line-height:1.65;color:var(--jf-ink-2)}
.jf-diag__case>span.jf-diag__go{display:block;margin-top:6px;font-family:var(--jf-head);font-weight:600;font-size:13px;color:var(--jf-blue)}
.jf-diag__go::after{content:" →"}
/* 3工程：進め方の一例 */
.jf-ex{margin-top:var(--jf-s4);padding:var(--jf-s3);background:#fff;border:1px solid var(--jf-line);border-radius:var(--jf-r)}
.jf-ex__h{margin-bottom:14px;font-family:var(--jf-head);font-weight:600;font-size:18px;line-height:1.5;color:var(--jf-ink)}
.jf-ex__h span{display:block;font-family:var(--jf-mono);font-weight:400;font-size:12px;letter-spacing:.06em;color:var(--jf-blue)}
.jf-ex__steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 18px}
.jf-ex__steps>li{padding-top:10px;border-top:2px solid var(--jf-blue)}
.jf-ex__steps>li:last-child{border-top-style:dashed}
.jf-ex__steps b{display:flex;align-items:baseline;gap:8px;margin-bottom:4px;font-family:var(--jf-head);font-weight:600;font-size:16px;color:var(--jf-ink)}
.jf-ex__steps b .jf-num{font-size:12px;color:var(--jf-blue)}
.jf-ex__steps>li>span{display:block;font-size:13.5px;line-height:1.75;color:var(--jf-ink-2)}
.jf-ex__note{margin-top:12px;font-size:13px;line-height:1.7;color:var(--jf-mute)}
.jf-ex__note a{color:var(--jf-blue);text-underline-offset:3px}
/* 6つの段階：店舗型ビジネスの一例 */
.jf-step4__sub--six small{margin-left:10px;padding:1px 8px;border:1px solid var(--jf-line-2);border-radius:999px;font-size:12px;font-weight:500;color:var(--jf-mute)}
.jf-six__note{margin-top:14px}
/* 事例の詳細：改善前 → 最初に変えたこと → 現場での実行 → 成果 → 参考になる会社 */
.jf-cdl{margin:10px 0 12px;border-top:1px solid var(--jf-line)}
.jf-cdl>div{display:grid;grid-template-columns:7.5em minmax(0,1fr);gap:8px;padding:7px 0;border-bottom:1px solid var(--jf-line)}
.jf-cdl dt{padding-top:1px;font-family:var(--jf-head);font-weight:600;font-size:12px;color:var(--jf-blue)}
.jf-cdl dd{font-size:13.5px;line-height:1.7;color:var(--jf-ink-2)}
.jf-cdl>div:last-child dt{color:var(--jf-ink)}
.jf-cdl>div:last-child dd{font-family:var(--jf-head);font-weight:600;color:var(--jf-ink)}
/* 事業の全体像：目的から選ぶ */
.jf-goal{margin-bottom:var(--jf-s4);padding:var(--jf-s3);background:var(--jf-paper);border-radius:var(--jf-r)}
.jf-goal__h{font-family:var(--jf-head);font-weight:600;font-size:18px;color:var(--jf-ink)}
.jf-goal__h span{display:block;margin-top:2px;font-family:var(--jf-sans);font-weight:400;font-size:13px;color:var(--jf-mute)}
.jf-goal__btns{display:none;flex-wrap:wrap;gap:8px;margin-top:12px}
.jf-js .jf-goal__btns{display:flex}
.jf-goal__btns button{min-height:44px;padding:8px 16px;border:1px solid var(--jf-line-2);border-radius:999px;background:#fff;font-family:var(--jf-head);font-weight:600;font-size:14.5px;color:var(--jf-ink);cursor:pointer}
.jf-goal__btns button:hover{border-color:var(--jf-blue)}
.jf-goal__btns button[aria-pressed=true]{background:var(--jf-blue);border-color:var(--jf-blue);color:#fff}
.jf-goal__note{margin-top:12px;font-size:13.5px;line-height:1.7;color:var(--jf-ink-2)}
.jf-goal__note a{margin-left:6px;color:var(--jf-blue);text-underline-offset:3px}
.jf-tmap>li{transition:opacity .2s}
.jf-tmap>li.is-dim{opacity:.32}
.jf-tmap>li.is-hit b{color:var(--jf-blue)}
/* 相談の前によく聞かれること（5つ） */
.jf-ok--5{grid-template-columns:repeat(5,minmax(0,1fr))}
.jf-gain>li b{display:block}
.jf-gain>li span{display:block;margin-top:2px;font-family:var(--jf-sans);font-weight:400;font-size:14px;line-height:1.7;color:var(--jf-ink-2)}

@media (max-width:1100px){ .jf-ok--5{grid-template-columns:repeat(3,minmax(0,1fr))} }
@media (max-width:960px){
  .jf-entry__btns{grid-template-columns:minmax(0,1fr)}
  .jf-ex__steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jf-ok--5{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:600px){
  .jf-ex{padding:var(--jf-s2) 16px}
  .jf-ex__steps{grid-template-columns:minmax(0,1fr)}
  .jf-cdl>div{grid-template-columns:minmax(0,1fr);gap:0}
  .jf-ok--5{grid-template-columns:minmax(0,1fr)}
  .jf-goal{padding:var(--jf-s2) 16px}
  .jf-goal__btns button{width:100%;text-align:left}
}
/* 入口を押して結果へ移ったとき、固定ヘッダーに隠れないように */
.jf-diag{scroll-margin-top:calc(var(--jf-hd-h) + 16px)}
/* 進め方の一例：見出しを押して開閉（スマホでは最初は閉じる） */
.jf-ex>summary{list-style:none;cursor:pointer}
.jf-ex>summary::-webkit-details-marker{display:none}
.jf-ex>summary::after{content:"＋ 開く";display:inline-block;margin-left:10px;font-family:var(--jf-mono);font-weight:400;font-size:12px;color:var(--jf-blue)}
.jf-ex[open]>summary::after{content:"－ 閉じる"}
.jf-ex:not([open])>summary{margin-bottom:0}
/* v8 で足した部品の文字は、端末の書体で表示する（見出し用 Web フォントの読み込みを増やさないため） */
.jf-entry__h,.jf-entry__btns button b,.jf-diag__picked>li,.jf-diag__cols .jf-diag__why,.jf-ex__h,.jf-ex__steps b,.jf-cdl dt,.jf-cdl>div:last-child dd,.jf-goal__h,.jf-goal__btns button,.jf-ok--5 b,.jf-gain>li b,.jf-diag__case>span.jf-diag__go{font-family:var(--jf-sans);font-weight:700}
@media (max-width:600px){
  /* 事例の5項目は、スマホでも「項目名｜内容」の2列にして縦に伸びすぎないように */
  .jf-cdl>div{grid-template-columns:5.6em minmax(0,1fr);gap:6px}
  .jf-cdl dt{font-size:11.5px}
}
/* 事例の中身（5項目）の開閉 */
.jf-cdet{margin:10px 0 12px}
.jf-cdet>summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px;list-style:none;cursor:pointer;font-family:var(--jf-sans);font-weight:700;font-size:13.5px;color:var(--jf-blue)}
.jf-cdet>summary::-webkit-details-marker{display:none}
.jf-cdet>summary::before{content:"＋";font-family:var(--jf-mono)}
.jf-cdet[open]>summary::before{content:"－"}
.jf-cdet>summary span{font-weight:400;font-size:12px;color:var(--jf-mute)}
.jf-cdet .jf-cdl{margin-top:8px}
@media (min-width:961px){ .jf-cdet>summary{display:none} }
/* v8 最終：結果欄は PC ではチェックとイラストの下に全幅で出す（左に偏らないように）。スマホは今までどおりチェックのすぐ下 */
.jf-top5 .jf-pains-wrap>.jf-diag{grid-column:1/-1;margin-top:0}
@media (max-width:960px){
  .jf-top5 .jf-pains-wrap>.jf-diag{order:1}
  .jf-top5 .jf-pains__il{order:2}
}

/* ---------- ヘッダーメニュー（2026-11-02）：経営課題から探す｜改善事例｜支援内容｜私たちについて｜コラム｜無料経営相談 ---------- */
.jf-nav__top{display:flex;align-items:center;gap:6px;padding:10px 12px;border:0;border-radius:var(--jf-r);background:none;font-family:var(--jf-head);font-weight:500;font-size:14.5px;letter-spacing:.03em;line-height:1.4;color:var(--jf-ink);white-space:nowrap;cursor:pointer}
.jf-nav__top::after{content:"";width:6px;height:6px;margin-left:2px;border-right:1.5px solid var(--jf-mute);border-bottom:1.5px solid var(--jf-mute);transform:translateY(-2px) rotate(45deg);transition:transform .15s}
.jf-nav__top:hover,.is-sub-open>.jf-nav__top{background:var(--jf-paper)}
.is-sub-open>.jf-nav__top{color:var(--jf-blue)}
.is-sub-open>.jf-nav__top::after{border-color:var(--jf-blue);transform:translateY(1px) rotate(-135deg)}
.jf-nav__top:focus-visible{outline:2px solid var(--jf-blue);outline-offset:2px}
/* 開いた一覧（PC） */
.jf-mega{position:absolute;left:0;top:100%;z-index:60;display:none;width:max-content;max-width:calc(100vw - 32px);margin-top:6px;padding:16px 16px 12px;background:#fff;border:1px solid var(--jf-line);border-top:2px solid var(--jf-blue);border-radius:var(--jf-r);box-shadow:0 16px 36px rgba(20,21,19,.12)}
.jf-mega::before{content:"";position:absolute;left:0;right:0;top:-10px;height:10px}
.is-sub-open>.jf-mega{display:block}
.jf-hd:not(.jf-nav-js) .jf-nav__list>li:hover>.jf-mega,.jf-hd:not(.jf-nav-js) .jf-nav__list>li:focus-within>.jf-mega{display:block}
.jf-mega__lead{margin:0 0 8px 12px;font-size:13px;color:var(--jf-mute)}
.jf-mega__list{display:grid;gap:2px;min-width:340px;margin:0;padding:0;list-style:none}
.jf-mega__list li{list-style:none}
.jf-nav__list .jf-mega a{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 12px;white-space:normal;line-height:1.5}
.jf-nav__list .jf-mega a:hover{background:var(--jf-blue-tint)}
.jf-mega__t{font-family:var(--jf-head);font-weight:600;font-size:14.5px;color:var(--jf-ink)}
.jf-mega__desc{font-family:var(--jf-sans);font-weight:400;font-size:12.5px;letter-spacing:0;color:var(--jf-mute)}
.jf-mega__all{margin-top:6px;padding-top:6px;border-top:1px solid var(--jf-line)}
.jf-nav__list .jf-mega__all>a .jf-mega__t{font-size:13.5px;color:var(--jf-blue)}
.jf-mega__all>a .jf-mega__t::after{content:" →"}
/* 支援内容：分類ごとの2列 */
.jf-nav-svc .jf-mega__list{display:block;column-count:2;column-gap:20px;width:580px;min-width:0}
.jf-nav-svc .jf-mega__group{break-inside:avoid;margin-bottom:6px}
.jf-nav-svc .jf-mega__all{column-span:all}
.jf-nav__list .jf-mega__group>a{padding:6px 12px 4px}
.jf-nav__list .jf-mega__group>a .jf-mega__t{font-weight:700;font-size:13px;letter-spacing:.06em;color:var(--jf-blue)}
.jf-mega__sub{margin:0 0 4px;padding:0;list-style:none}
.jf-nav__list .jf-mega__sub a{padding:6px 12px}
.jf-nav__list .jf-mega__sub .jf-mega__t{font-weight:500;font-size:14px}
/* 右端の相談ボタン（広い画面では「60分の」を付ける） */
.jf-hd__cta-pre{display:none}
@media (min-width:1440px){ .jf-hd__cta-pre{display:inline} }
@media (max-width:1180px){
  .jf-hd__cta{display:inline-flex}
  .jf-nav__top{padding:10px 9px;font-size:14px}
}
@media (max-width:1100px){
  .jf-hd__in{gap:var(--jf-s2)}
  .jf-nav__list a,.jf-nav__top{padding:10px 7px}
}
/* スマホ・タブレット：縦のアコーディオン（2階層まで） */
@media (max-width:960px){
  .jf-hd__cta{display:none}
  .jf-nav__top{width:100%;justify-content:space-between;padding:16px 2px;border-radius:0;font-size:16px}
  .jf-nav__top:hover,.is-sub-open>.jf-nav__top{background:none}
  .jf-mega{position:static;display:none;width:auto;max-width:none;margin:0 0 8px 2px;padding:0 0 8px 14px;border:0;border-left:1px solid var(--jf-line);border-radius:0;box-shadow:none}
  .jf-mega::before{display:none}
  .jf-hd:not(.jf-nav-js) .jf-nav__list>li:hover>.jf-mega{display:none}
  .is-sub-open>.jf-mega{display:block}
  .jf-mega__lead{margin-left:0}
  .jf-mega__list,.jf-nav-svc .jf-mega__list{grid-template-columns:minmax(0,1fr);column-count:1;width:auto;min-width:0}
  .jf-nav__list .jf-mega a{padding:10px 2px;min-height:44px;justify-content:center}
  .jf-nav__list .jf-mega__group>a{padding:12px 2px 2px;min-height:0}
  .jf-nav__list .jf-mega__sub a{padding:9px 2px 9px 10px}
}
/* ページ内リンクで移ったとき、固定ヘッダーの下に隠れないように */
.jf-page [id],.keiei-lp [id],.jf-blog .post_content [id],.gurubaru-lp [id],.akinai-gurubaru [id],.bsl-lp[id],.bsl-lp [id]{scroll-margin-top:calc(var(--jf-hd-h) + 16px)}
#content{scroll-margin-top:var(--jf-hd-h)}
#content:focus{outline:none}
/* スマホのメニュー：ヘッダーのすりガラス効果（backdrop-filter）があると、中の固定表示のメニューの高さが0になる（ヘッダーが基準になるため）。開いている間だけ外す */
.jf-hd.is-open{background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}

/* 店長育成の章：店長研修の資料（一部）。店長塾資料のスライド4枚（2026-11-02 KAI） */
.jf-deck{margin-top:var(--jf-s5)}
.jf-deck>.jf-small{margin-bottom:var(--jf-s3)}
.jf-deck__list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--jf-s3)}
.jf-deck__list a{display:block;text-decoration:none;transition:border-color .15s}
.jf-deck__list a:hover{border-color:var(--jf-blue)}
.jf-deck__list img{width:100%;border-bottom:1px solid var(--jf-line)}
.jf-deck__cap{display:flex;align-items:baseline;gap:10px;padding:12px 16px;font-family:var(--jf-head);font-weight:600;font-size:15px;line-height:1.6;color:var(--jf-ink)}
.jf-deck__cap .jf-num{flex-shrink:0;font-size:12px;color:var(--jf-blue)}
@media (max-width:640px){.jf-deck__list{grid-template-columns:minmax(0,1fr);gap:var(--jf-s2)}}

/* 2026-11-03 会社の段階：近い取り組み・使う考え方（選んだ段だけ表示） */
.jf-stg__case{margin-top:10px;padding-top:10px;border-top:1px solid var(--jf-line);font-size:13px;line-height:1.7;color:var(--jf-ink-2)}
.jf-stg__case>span:first-child{display:block;margin-bottom:2px;font-family:var(--jf-mono);font-size:11.5px;letter-spacing:.06em;color:var(--jf-mute)}
.jf-js .jf-stg>li:not(.is-on) .jf-stg__case{display:none}

/* 支援の診断（YES/NO・/shindan/）：1画面に質問1つ、最後に支援の名前と説明のページへの入口 */
.jf-dx{max-width:760px;margin:0 auto;background:#fff;border:1px solid var(--jf-line);border-radius:var(--jf-r);padding:clamp(22px,4vw,40px)}
.jf-dx[hidden],.jf-dx [hidden]{display:none!important}
.jf-dx__meta{display:flex;justify-content:space-between;align-items:center;gap:12px;font-family:var(--jf-mono);font-size:12px;letter-spacing:.08em;color:var(--jf-mute);margin-bottom:12px}
.jf-dx__bar{height:4px;background:var(--jf-paper-2);border-radius:2px;overflow:hidden;margin-bottom:var(--jf-s4)}
.jf-dx__bar i{display:block;height:100%;width:0;background:var(--jf-blue);transition:width .25s}
.jf-dx .jf-dx__q,.jf-dx .jf-dx__name{font-family:var(--jf-head);font-weight:600;font-size:clamp(21px,2.6vw,28px);line-height:1.5;color:var(--jf-ink);margin:0 0 10px;outline:none;text-wrap:pretty;word-break:auto-phrase}
.jf-dx__hint,.jf-dx__why{color:var(--jf-mute);font-size:15px;line-height:1.9;margin:0 0 var(--jf-s4)}
.jf-dx__why{color:var(--jf-ink-2)}
.jf-dx__ans{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.jf-dx__ans button{min-height:64px;margin:0;padding:10px;border-radius:var(--jf-r);border:1px solid var(--jf-line-2);background:#fff;font-family:var(--jf-head);font-weight:600;font-size:18px;color:var(--jf-ink);cursor:pointer;transition:border-color .15s,background-color .15s}
.jf-dx__ans button:hover{border-color:var(--jf-blue);background:var(--jf-blue-tint)}
.jf-dx button:focus-visible,.jf-dx a:focus-visible{outline:2px solid var(--jf-blue);outline-offset:2px}
.jf-dx__nav{display:flex;justify-content:space-between;gap:12px;margin-top:var(--jf-s4)}
.jf-dx__nav button{margin:0;padding:6px 0;background:none;border:0;color:var(--jf-mute);font:inherit;font-size:14px;text-decoration:underline;cursor:pointer}
.jf-dx__nav button:hover{color:var(--jf-ink)}
/* 選択肢（2026-11-04・はい/いいえから選択肢に） */
.jf-dx__opts{display:grid;gap:10px}
.jf-dx__opts button{display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:100%;min-height:56px;margin:0;padding:13px 16px;border-radius:var(--jf-r);border:1px solid var(--jf-line-2);background:#fff;font:inherit;text-align:left;color:var(--jf-ink);cursor:pointer;transition:border-color .15s,background-color .15s}
.jf-dx__opts button b{font-family:var(--jf-head);font-weight:600;font-size:16.5px;line-height:1.5;text-wrap:pretty;word-break:auto-phrase}
.jf-dx__opts button span{font-family:var(--jf-mono);font-size:11.5px;letter-spacing:.06em;color:var(--jf-blue)}
.jf-dx__opts button:hover{border-color:var(--jf-blue);background:var(--jf-blue-tint)}
.jf-dx__tj{margin:0 0 var(--jf-s4);padding:14px 16px;background:var(--jf-paper);border-radius:var(--jf-r)}
.jf-dx__tj .jf-label{color:var(--jf-mute);margin-bottom:6px}
.jf-dx__tj p{margin:0;font-size:15px;line-height:1.8;color:var(--jf-ink-2)}
.jf-dx__sub{margin:12px 0 0!important;font-size:14px}
.jf-dx__sub a{color:var(--jf-blue);text-decoration:underline}
.jf-dx__res .jf-label{color:var(--jf-blue);margin-bottom:10px}
.jf-dx__go{width:100%}
.jf-dx__note{margin-top:14px!important;color:var(--jf-mute);font-size:13.5px;line-height:1.8}
.jf-dx__note a{color:var(--jf-blue);text-decoration:underline}
.jf-dx-list{max-width:760px;margin:var(--jf-s5) auto 0}
.jf-dx-list summary{cursor:pointer;font-family:var(--jf-head);font-weight:600;font-size:15px;padding:10px 0;color:var(--jf-ink)}
.jf-dx-list ul{list-style:none!important;margin:10px 0 0!important;padding:0!important;border-top:1px solid var(--jf-line)}
.jf-dx-list li{margin:0!important;border-bottom:1px solid var(--jf-line);line-height:1.6}
.jf-dx-list a{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;padding:14px 4px;text-decoration:none;color:var(--jf-ink)}
.jf-dx-list a:hover b{color:var(--jf-blue)}
.jf-dx-list a span{color:var(--jf-mute);font-size:13.5px}
@media (max-width:600px){ .jf-dx__ans{gap:10px} .jf-dx__ans button{min-height:58px;font-size:17px} }

/* 事業紹介「集客導線の再構築」：集客導線の図解（縦長の図をそのままの比率でパネルに入れる・2026-11-04） */
.jf-shot--fig{background:#fff}
.jf-shot--fig img{aspect-ratio:1104/1425;height:auto;object-fit:contain}

/* フッター：事務所のビルの写真（2026-11-04） */
.jf-ft__office{margin:var(--jf-s3) 0 0;padding:0;max-width:400px}
.jf-ft__office img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:var(--jf-r)}
.jf-ft__office figcaption{margin:8px 0 0;font-size:12px;line-height:1.6;color:var(--jf-dark-mute)}

/* トップ：料金の目安と FAQ の中の文字リンク（2026-11-04 価格表示の修正） */
.jf-price1>.jf-small a,.jf-faq details p a{color:var(--jf-blue);text-decoration:underline;text-underline-offset:3px}

/* 事業紹介「業務改善・AI導入・業務システム開発」：FDE 型の支援の定義（2026-11-05） */
.jf-fde{margin:0 0 var(--jf-s5);padding:var(--jf-s3) var(--jf-s3) var(--jf-s2);background:#fff;border:1px solid var(--jf-line);border-left:3px solid var(--jf-blue);border-radius:var(--jf-r)}
.jf-fde__def{max-width:760px}
.jf-fde .jf-label{margin:0 0 6px}
.jf-fde h3{margin:0 0 10px;font-family:var(--jf-head);font-weight:600;font-size:clamp(18px,1.8vw,21px);line-height:1.5;color:var(--jf-ink)}
.jf-fde__def p{margin:0;font-size:15px;line-height:1.9;color:var(--jf-ink-2)}
.jf-fde .jf-fde__list{counter-reset:jfde;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--jf-s2) var(--jf-s3);margin:var(--jf-s3) 0 0;padding:var(--jf-s3) 0 0;border-top:1px solid var(--jf-line);list-style:none}
.jf-fde .jf-fde__list li{counter-increment:jfde;margin:0;padding:0;line-height:1.8}
.jf-fde .jf-fde__list li::before{content:counter(jfde,decimal-leading-zero);display:block;margin-bottom:4px;font-family:var(--jf-mono);font-weight:600;font-size:13px;color:var(--jf-blue)}
.jf-fde__list b{display:block;margin-bottom:4px;font-family:var(--jf-head);font-weight:600;font-size:15.5px;color:var(--jf-ink)}
.jf-fde__list span{display:block;font-size:14px;color:var(--jf-ink-2)}
.jf-fde__note{margin:var(--jf-s3) 0 0;font-size:12.5px;line-height:1.8;color:var(--jf-mute)}
.jf-fde__note a{color:var(--jf-blue);text-decoration:underline;text-underline-offset:3px}
@media (max-width:960px){.jf-fde .jf-fde__list{grid-template-columns:minmax(0,1fr)}}

/* ===== トップの改善提案2〜8（2026-11-07） ===== */
/* 最初の画面の3枚：手段の文の中に、実績の1行（押すと事例へ） */
.jf-page .jf-fv3__proof{display:block;margin-top:6px;font-family:var(--jf-head);font-weight:600;font-size:13px;line-height:1.5;color:var(--jf-blue)!important;text-decoration:none!important}
.jf-page .jf-fv3__proof:hover{text-decoration:underline!important;text-underline-offset:3px}
.jf-page .jf-fv3__note{margin:10px 0 0;font-size:12px;line-height:1.6;color:var(--jf-mute)}
@media (max-width:600px){.jf-page .jf-fv3__proof{margin-top:2px}.jf-top5 .jf-fv3>li{padding:6px 12px}}
/* 解決の方法の下の「もっと詳しく」（事業紹介へ） */
.jf-howmore{margin-top:var(--jf-s4);padding:18px 22px;border:1px solid var(--jf-line-2);border-radius:var(--jf-r);background:#fff}
.jf-page .jf-howmore__list{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 24px}
.jf-page .jf-howmore__list>li{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin:0;padding:0;line-height:1.6}
.jf-page .jf-howmore__list>li::before{content:none}
.jf-howmore__list span{font-size:13.5px;line-height:1.6;color:var(--jf-ink-2)}
@media (max-width:960px){.jf-page .jf-howmore__list{grid-template-columns:minmax(0,1fr)}}
/* 改善事例の章（3件と5つの中身をまとめた） */
.jf-page .jf-cases__h{margin:var(--jf-s5) 0 4px}
.jf-page .jf-cases__lead{margin:0 0 var(--jf-s3)}
/* 店長育成：目指す状態だけに */
.jf-mgr__solo{max-width:720px}
/* 事業紹介：3つの道具（トップから移した）は見出しの下に */
.jf-method__tools{margin:0 0 var(--jf-s5)}

/* ===== 代表：マネジメントとマーケティングの両方（2026-11-07） ===== */
.jf-integ{margin:var(--jf-s4) 0 0;padding:18px 22px;border-left:4px solid var(--jf-blue);background:var(--jf-blue-tint);border-radius:0 var(--jf-r) var(--jf-r) 0}
.jf-page .jf-integ__h{margin:0 0 6px;font-family:var(--jf-head);font-weight:600;font-size:clamp(17px,1.6vw,20px);line-height:1.5;color:var(--jf-ink)}
.jf-page .jf-integ p:not(.jf-integ__h){margin:0;font-size:15px;line-height:1.85;color:var(--jf-ink-2)}

/* ===== 最初の画面の相談ボタン：スマホで2行になるときに上下を詰める（2026-11-07 予約ページへの変更） ===== */
@media (max-width:400px){[data-jf-cta="fv-consult"]{padding-top:8px;padding-bottom:8px;line-height:1.35}}
