/*
Theme Name: jugemu Corporate
Theme URI: https://jugemu8.com/
Author: jugemu株式会社
Description: 事業・実績・課題コンパスを標準管理画面で編集できる独立したテーマ。
Version: 1.1.1
Requires at least: 6.6
Requires PHP: 8.1
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: jugemu-corporate
*/

    :root{--ink:#242522;--paper:#eef1ed;--white:#fbfcf9;--orange:#9a684d;--lime:#b7c1b4;--blue:#74868b;--muted:#666b66;--line:#c9cfca;--deep:#2e3532;--mist:#dde5e1;--max:1240px}
    *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Helvetica Neue",Arial,"Noto Sans JP",sans-serif;line-height:1.65}button,a{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}.wrap{width:min(calc(100% - 40px),var(--max));margin:auto}
    header{position:sticky;top:0;z-index:30;background:rgba(241,239,233,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{display:block;width:132px;line-height:0}.logo img{display:block;width:100%;height:auto}.navlinks{display:flex;gap:22px;font-size:.85rem;font-weight:700}.navcta{padding:10px 16px;border:1px solid var(--ink);border-radius:999px}.menu{display:none;border:0;background:none;font-size:1.5rem}
    .hero{padding:78px 0 54px;border-bottom:1px solid var(--line)}.eyebrow{font-size:.74rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:end}.hero h1{font-size:clamp(3.2rem,7.7vw,7.7rem);line-height:.94;letter-spacing:-.075em;margin:28px 0 34px;font-weight:800}.hero h1 .hero-line{display:block;white-space:nowrap;color:var(--ink)}.hero h1 .hero-line.accent{color:var(--orange)}.hero-copy{font-size:clamp(1.05rem,1.8vw,1.35rem);max-width:720px}.corp-note{margin-top:34px;font-size:.8rem;color:var(--muted)}.hero-side{border-left:1px solid var(--ink);padding-left:30px}.hero-side p{margin:0 0 28px}.scroll-link{display:inline-flex;gap:10px;align-items:center;font-weight:800}.scroll-link b{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:white}
    .ticker{overflow:hidden;background:var(--ink);color:white}.ticker-row{display:flex;gap:34px;white-space:nowrap;padding:12px 0;font-weight:800;font-size:.82rem;letter-spacing:.06em}.ticker-row span:nth-child(2n){color:var(--lime)}
    section{padding:110px 0}.section-head{display:grid;grid-template-columns:260px 1fr;gap:40px;margin-bottom:54px}.section-head h2{font-size:clamp(2.3rem,5vw,5.4rem);line-height:.98;letter-spacing:-.065em;margin:0;max-width:900px}.section-head p{max-width:680px;margin:12px 0 0;font-size:1.05rem}.number{font-size:.75rem;font-weight:800;letter-spacing:.14em;color:var(--muted)}
    .compass{background:var(--deep);color:white}.compass .section-head .number{color:#b5b7ae}.compass-shell{display:grid;grid-template-columns:.9fr 1.1fr;min-height:690px;border:1px solid #4d534c}.question{padding:42px}.progress{display:flex;gap:7px;margin-bottom:52px}.progress i{display:block;width:42px;height:4px;background:#545a53}.progress i.on{background:#b9ad96}.question h3{font-size:clamp(1.8rem,3vw,3.2rem);line-height:1.15;margin:0 0 12px}.question small{color:#c5c8c0}.choices{display:grid;gap:10px;margin-top:34px}.choice{color:white;background:transparent;border:1px solid #5d635c;text-align:left;padding:17px 18px;display:flex;justify-content:space-between;align-items:center;transition:.2s}.choice:hover,.choice.active{background:#b8bbaa;border-color:#b8bbaa;color:var(--ink);transform:translateX(5px)}.choice span{font-weight:800}.choice b{font-weight:400}.result{padding:42px;background:var(--paper);color:var(--ink);display:flex;flex-direction:column;justify-content:space-between}.result-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.13em;font-weight:800}.result h3{font-size:clamp(2rem,3.5vw,4.2rem);line-height:.95;letter-spacing:-.06em;margin:18px 0}.result-copy{font-size:1rem;max-width:600px}.mix{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.tag{border:1px solid var(--ink);border-radius:999px;padding:6px 11px;font-size:.75rem;font-weight:800}.result-detail{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0}.detail-card{border-top:1px solid var(--ink);padding:12px 0}.detail-card strong{display:block;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}.detail-card p,.detail-card ul{margin:0;font-size:.84rem;line-height:1.55}.detail-card ul{padding-left:17px}.domain-link{display:inline-block;margin-top:6px;color:var(--blue);font-weight:800}.next-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.action{border:1px solid var(--ink);padding:14px 16px;text-align:center;font-weight:800;background:transparent}.action.primary{background:var(--orange);border-color:var(--orange);color:white}.reset{margin-top:12px;border:0;background:none;text-decoration:underline;text-align:left;padding:0}.placeholder{color:var(--muted)}
    .business-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--ink);border-left:1px solid var(--ink)}.business-card{min-height:390px;padding:34px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);position:relative;transition:.25s;scroll-margin-top:100px}.business-card:hover,.business-card.focus{background:var(--white);transform:translateY(-5px)}.business-card.focus{box-shadow:inset 0 0 0 4px var(--orange)}.business-card .num{font-family:Georgia,serif;font-size:1.2rem;color:var(--orange)}.business-card h3{font-size:clamp(1.8rem,3.2vw,3.3rem);line-height:.95;letter-spacing:-.06em;margin:55px 0 22px}.business-card p{max-width:480px}.business-card ul{padding-left:18px;color:var(--muted)}.relokke-feature{margin-top:28px;background:var(--mist);display:grid;grid-template-columns:.85fr 1.15fr;min-height:410px}.relokke-mark{display:grid;place-items:center;padding:60px;background:#d4dfda}.relokke-mark img{width:min(100%,460px);height:auto}.relokke-copy{padding:55px;display:flex;flex-direction:column;justify-content:center}.relokke-copy .eyebrow{color:var(--muted)}.relokke-copy h3{font-size:clamp(2.2rem,4.5vw,5rem);line-height:.94;letter-spacing:-.065em;margin:22px 0}.relokke-copy p{max-width:650px}.text-link{display:inline-flex;align-items:center;gap:12px;margin-top:18px;font-weight:800;border-bottom:1px solid var(--ink);width:max-content;padding-bottom:5px}
    .works{background:var(--white)}.work-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:34px}.tab{border:1px solid var(--ink);background:transparent;border-radius:999px;padding:10px 18px;font-weight:800}.tab.active{background:var(--ink);color:white}.work-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px 18px}.work{border:0;background:transparent;padding:0;text-align:left;color:inherit;display:block}.work.hide{display:none}.work-visual{aspect-ratio:16/10;background:var(--mist);display:grid;place-items:center;overflow:hidden;transition:.35s}.work:nth-child(2n) .work-visual{background:#d8ddd5}.work:nth-child(3n) .work-visual{background:#d8e2e3}.work-visual span{font-size:.7rem;letter-spacing:.15em;color:var(--muted);border:1px solid var(--muted);padding:8px 12px}.work:hover .work-visual{transform:scale(.985);filter:brightness(.97)}.work-body{display:grid;grid-template-columns:1fr auto;gap:22px;padding:18px 2px 8px;border-bottom:1px solid var(--line)}.work-type{font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.work h3{font-size:clamp(1.35rem,2.4vw,2.35rem);line-height:1.08;letter-spacing:-.04em;margin:8px 0}.work p{margin:0;max-width:600px}.work-more{font-size:1.4rem}.permission{margin-top:30px;color:var(--muted);font-size:.78rem}.case-dialog{width:min(760px,calc(100% - 32px));border:0;padding:0;background:var(--white);color:var(--ink);box-shadow:0 30px 90px rgba(20,30,25,.28)}.case-dialog::backdrop{background:rgba(31,38,34,.65);backdrop-filter:blur(4px)}.case-inner{padding:42px}.case-close{float:right;border:1px solid var(--ink);background:transparent;width:42px;height:42px;border-radius:50%}.case-dialog h3{font-size:clamp(2rem,5vw,4.4rem);line-height:.95;letter-spacing:-.06em;margin:28px 0}.case-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:34px}.case-meta div{border-top:1px solid var(--ink);padding-top:12px}.case-meta strong{display:block;font-size:.7rem;letter-spacing:.1em;margin-bottom:6px}.case-note{margin-top:28px;font-size:.78rem;color:var(--muted)}
    .principle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.principle{padding:26px;border-top:4px solid var(--ink);background:white}.principle:nth-child(2){border-color:var(--orange)}.principle:nth-child(3){border-color:var(--blue)}.principle h3{font-size:1.5rem;line-height:1.2}.principle strong{font-size:4rem;line-height:1;color:var(--line)}
    .sitemap{background:#e9e9e1}.tree{display:grid;grid-template-columns:220px 1fr;gap:30px;border-top:1px solid var(--ink);padding:22px 0}.tree>strong{font-size:1.1rem}.tree-links{display:flex;flex-wrap:wrap;gap:9px}.tree-links span{padding:8px 12px;background:white;border-radius:3px;font-size:.85rem}.tree .live{background:var(--lime);font-weight:800}
    .closing{padding:120px 0 60px;background:#4a504a;color:#f6f4ed}.closing h2{font-size:clamp(3.3rem,9vw,9rem);line-height:.88;letter-spacing:-.08em;margin:0 0 40px}.closing-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;border-top:1px solid #94998f;padding-top:28px}.closing .button{display:inline-flex;margin-top:15px;padding:15px 22px;background:#f3f0e8;color:var(--ink);font-weight:800}.closing small{display:block;margin-top:40px;color:#d0d3cb}.footer{display:flex;justify-content:space-between;gap:20px;padding:20px 0;font-size:.75rem;color:#d0d3cb}
    @media(max-width:820px){.navlinks{display:none}.menu{display:block}.hero{padding-top:50px}.hero-grid,.section-head,.compass-shell,.closing-grid,.relokke-feature{grid-template-columns:1fr}.hero-side{border-left:0;border-top:1px solid var(--ink);padding:24px 0 0}.section-head{gap:16px}.compass-shell{min-height:0}.question,.result{padding:26px}.result{min-height:460px}.result-detail{grid-template-columns:1fr}.business-grid,.work-grid{grid-template-columns:1fr}.relokke-copy{padding:34px}.relokke-mark{padding:45px 28px}.principle-grid{grid-template-columns:1fr}.tree{grid-template-columns:1fr;gap:12px}section{padding:80px 0}.hero h1{font-size:clamp(2.55rem,11.8vw,4.5rem);letter-spacing:-.065em}.next-actions,.case-meta{grid-template-columns:1fr}.case-inner{padding:26px}.footer{flex-direction:column}}
    @media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
  
img{max-width:100%;height:auto}a:hover{text-decoration:underline;text-underline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #ac795c;outline-offset:5px}.skip-link{position:absolute;top:-100px;left:20px;background:white;padding:12px;z-index:100}.skip-link:focus{top:12px}.navlinks{list-style:none;padding:0;margin:0;align-items:center}.menu{font-size:.8rem;padding:10px 14px;border:1px solid var(--ink)}.logo .custom-logo-link{display:block}.logo img{width:132px;height:auto}.hero h1 .hero-line{white-space:normal;overflow-wrap:anywhere}.hero-photo{margin-top:60px}.hero-photo img{display:block;width:100%;max-height:700px;object-fit:cover;aspect-ratio:2/1}.business-card img{margin-top:24px;aspect-ratio:16/10;object-fit:cover;width:100%}.work-visual img{width:100%;height:100%;object-fit:cover;display:block}.work a{display:block}.image-placeholder{display:grid;place-items:center;width:100%;height:100%;min-height:220px;background:var(--mist);color:var(--muted);font-size:.7rem;letter-spacing:.15em}.image-placeholder span{border:1px solid var(--muted);padding:8px 12px}.detail-heading{margin:50px 0}.detail-heading h1,.entry-content>h1,.error-page h1{font-size:clamp(2.4rem,6vw,6.5rem);line-height:1.12;letter-spacing:-.06em;margin:24px 0;overflow-wrap:anywhere}.lead{max-width:820px;font-size:clamp(1.1rem,2vw,1.5rem)}.main-image{margin:50px 0}.main-image img{display:block;width:100%;height:auto}.main-image .image-placeholder{min-height:400px}.content-width{max-width:840px}.content-width li{margin:10px 0}.content-width h2{margin-top:50px}.entry-content{overflow-wrap:anywhere}.entry-content>h2{font-size:1.65rem}.case-meta h2{font-size:1.25rem}.case-meta p{white-space:normal}.related-heading{margin-top:70px}.company-table{max-width:840px;margin:0 0 70px}.company-table>div{display:grid;grid-template-columns:180px 1fr;border-top:1px solid var(--line);padding:24px 0}.company-table dt{font-weight:700}.company-table dd{margin:0}.compass .domain-link{color:#465b60}.question h3{font-size:clamp(1.65rem,2.6vw,2.65rem)}.result h3{font-size:clamp(1.8rem,3vw,3.3rem);line-height:1.17}.compass-shell{min-height:650px}.choice:hover,.choice.active{transform:none}.tag.placeholder{color:#4f554f}.compass-status{font-size:.82rem}.back-link{display:inline-block}.navigation.pagination{margin-top:40px}.page-numbers{display:inline-block;padding:8px 13px}.current{background:var(--ink);color:white}.error-page{min-height:40vh}.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.entry-content .wp-block-image img{height:auto}.alignwide{max-width:1240px}.alignfull{width:100%}body.admin-bar header{top:32px}a.tag:hover{background:var(--white)}
@media(max-width:820px){header{position:relative}body.admin-bar header{top:0}.navlinks{display:flex;flex-direction:column;align-items:stretch;gap:0}.navlinks a{display:block;padding:14px 20px}.nav{flex-wrap:wrap;height:auto;min-height:76px;padding:14px 0}.nav nav{display:none;width:100%}.nav nav.open{display:block}.hero-grid{gap:35px}.business-card h3{margin-top:30px}.hero-photo{margin-top:35px}.hero-photo img{aspect-ratio:4/3}.company-table>div{grid-template-columns:1fr;gap:8px}.compass-shell{min-height:0}.result{min-height:300px}.main-image .image-placeholder{min-height:220px}.work-tabs .tab{font-size:.8rem}.section-head h2{line-height:1.15}.closing h2{line-height:1.05}.text-link{max-width:100%;width:fit-content}.case-meta{grid-template-columns:1fr}.result-detail{grid-template-columns:1fr}}
@media(max-width:400px){.wrap{width:calc(100% - 32px)}.hero h1{font-size:2.5rem}.hero .eyebrow{font-size:.65rem}.question,.result{padding:20px}.business-card{padding:24px}.closing h2{font-size:3rem}}

/* jugemu brand palette — 添付のカラー配色指示書 / 2026-10-05 */
:root {
  --color-white: #FFFFFF;
  --color-surface: #F5F7F4;
  --color-ink: #202522;
  --color-muted: #68706B;
  --color-line: #DDE2DE;
  --color-orange: #FF6B35;
  --color-action: #C94316;
  --color-lime: #CBEA54;
  --color-sky: #58C7E8;
  --color-yellow: #FFD84D;
  /* 既存レイアウトのトークンへ接続 */
  --ink: var(--color-ink);
  --paper: var(--color-white);
  --white: var(--color-white);
  --muted: var(--color-muted);
  --line: var(--color-line);
  --orange: var(--color-orange);
  --lime: var(--color-lime);
  --blue: var(--color-action);
  --deep: var(--color-ink);
  --mist: var(--color-surface);
  --accent: var(--color-action);
  --radius: 12px;
}
body { background: var(--color-white); color: var(--color-ink); }
header { background: rgba(255,255,255,.96); border-color: var(--color-line); }
section { padding: 112px 0; }
a:focus-visible, button:focus-visible, input:focus-visible,
textarea:focus-visible, select:focus-visible { outline-color: var(--color-action); }
.hero { padding: 88px 0 64px; }
.hero-side { border-color: var(--color-line); }
/* オレンジは短い下線に限定。見出し本文はInkで可読性を維持。 */
.hero h1 .hero-line.accent { color: var(--color-ink); }
.hero h1 .hero-line.accent::after {
  content: ""; display: block; width: 88px; height: 6px;
  margin-top: 22px; border-radius: 8px; background: var(--color-orange);
}
.hero-photo img, .main-image img { border-radius: var(--radius); }
.scroll-link b { background: var(--color-orange); color: var(--color-ink); }
.ticker { background: var(--color-surface); color: var(--color-muted); border-bottom: 1px solid var(--color-line); }
.ticker-row span:nth-child(2n) { color: var(--color-ink); }
.compass { background: var(--color-white); color: var(--color-ink); }
.compass .section-head .number { color: var(--color-muted); }
.compass-shell { border-color: var(--color-line); border-radius: var(--radius); overflow: hidden; }
.question { padding: 44px; background: var(--color-ink); color: var(--color-white); }
.question small { color: var(--color-line); }
.progress i { background: var(--color-muted); border-radius: 8px; }
.progress i.on { background: var(--color-lime); }
.choice {
  background: transparent; color: var(--color-white);
  border: 1px solid var(--color-muted); border-radius: 10px; padding: 18px 20px;
}
.choice:hover, .choice.active {
  background: var(--color-lime); border-color: var(--color-lime);
  color: var(--color-ink); transform: none;
}
.question .choice:focus-visible, .question .reset:focus-visible { outline-color: var(--color-lime); }
.result { background: var(--color-surface); color: var(--color-ink); padding: 44px; }
.result-label, .tag.placeholder { color: var(--color-muted); }
.detail-card { border-color: var(--color-line); padding: 16px 0; }
/* 気づきのサインだけを黄色に。小さな文字はInk。 */
.result-detail .detail-card:nth-child(3) strong {
  display: inline-block; padding: 4px 8px; border-radius: 8px;
  background: var(--color-yellow); color: var(--color-ink);
}
.tag { border-color: var(--color-line); border-radius: 8px; background: var(--color-white); }
.compass .domain-link, .domain-link, .text-link { color: var(--color-action); }
.text-link { border-color: var(--color-action); }
.action, .button, .tab, .navcta, .menu {
  border-radius: 10px; border: 1px solid var(--color-ink);
  background: var(--color-white); color: var(--color-ink);
}
.action:hover, .tab:hover, .navcta:hover, .menu:hover { background: var(--color-surface); }
.action.primary, .tab.active {
  background: var(--color-action); border-color: var(--color-action); color: var(--color-white);
}
.action.primary:hover, .tab.active:hover {
  background: var(--color-ink); border-color: var(--color-ink); color: var(--color-white);
}
.business-grid { gap: 24px; border: 0; }
.business-card {
  padding: 40px; background: var(--color-white); border: 1px solid var(--color-line);
  border-radius: var(--radius); --domain-color: var(--color-orange);
}
/* 色面を広げず、短いサインで事業領域を識別。 */
.business-card::before {
  content: ""; display: block; width: 64px; height: 4px;
  background: var(--domain-color); border-radius: 8px; margin-bottom: 20px;
}
#domain-web { --domain-color: var(--color-sky); }
#domain-movie { --domain-color: var(--color-orange); }
#domain-design { --domain-color: var(--color-yellow); }
#domain-sns { --domain-color: linear-gradient(90deg,var(--color-sky) 0 78%,var(--color-orange) 78%); }
#domain-goods { --domain-color: linear-gradient(90deg,var(--color-orange) 0 78%,var(--color-yellow) 78%); }
#domain-relokke { --domain-color: var(--color-lime); }
.business-card .num {
  display: inline-block; padding: 2px 8px; background: var(--color-orange);
  color: var(--color-ink); border-radius: 8px;
}
#domain-relokke .num { background: var(--color-lime); }
.business-card:hover, .business-card.focus {
  background: var(--color-white); transform: none; border-color: var(--color-ink);
}
.business-card.focus { box-shadow: inset 0 0 0 2px var(--color-ink); }
.business-card img { border-radius: 10px; }
.relokke-feature {
  background: var(--color-white); border: 1px solid var(--color-line);
  border-radius: var(--radius); overflow: hidden; margin-top: 32px;
}
.relokke-mark { background: var(--color-surface); border-bottom: 4px solid var(--color-lime); }
.relokke-copy .eyebrow {
  align-self: flex-start; padding: 5px 10px; border-radius: 8px;
  background: var(--color-lime); color: var(--color-ink);
}
.relokke-copy h3 { color: var(--color-ink); }
.works { background: var(--color-white); }
.work-grid { gap: 40px 24px; }
.work-visual, .work:nth-child(2n) .work-visual, .work:nth-child(3n) .work-visual {
  background: var(--color-surface); border-radius: var(--radius);
}
.work-visual span { color: var(--color-muted); border-color: var(--color-line); border-radius: 8px; }
.work-body { border-color: var(--color-line); padding: 24px 2px 12px; }
.work-type { color: var(--color-muted); }
.work:hover .work-more { color: var(--color-action); }
.image-placeholder { background: var(--color-surface); border-radius: var(--radius); }
.image-placeholder span { border-color: var(--color-line); border-radius: 8px; }
.principle { background: var(--color-white); border: 1px solid var(--color-line); border-radius: var(--radius); padding: 32px; }
.principle:nth-child(2), .principle:nth-child(3) { border-color: var(--color-line); }
.sitemap { background: var(--color-surface); }
.tree, .case-meta div { border-color: var(--color-line); }
.tree-links span, .case-dialog { border-radius: 10px; }
.case-close { border-color: var(--color-ink); border-radius: 10px; }
.closing {
  position: relative; background: var(--color-ink); color: var(--color-white);
  padding: 112px 0 40px; border-top: 0;
}
.closing::before {
  content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 3px;
  background: linear-gradient(90deg,var(--color-orange) 0 72%,var(--color-lime) 72% 92%,var(--color-sky) 92%);
}
.closing-grid { border-color: var(--color-muted); padding-top: 32px; }
.closing .button {
  background: var(--color-action); color: var(--color-white);
  border: 1px solid var(--color-action); border-radius: 10px; padding: 16px 24px;
}
.closing .button:hover { background: var(--color-ink); border-color: var(--color-white); }
.closing small, .footer { color: var(--color-line); }
.page-numbers { border-radius: 8px; }
.page-numbers.current { background: var(--color-ink); color: var(--color-white); }
@media (max-width: 820px) {
  section { padding: 80px 0; }
  .hero { padding: 56px 0 48px; }
  .question, .result { padding: 28px; }
  .business-card { padding: 30px; }
  .closing { padding: 80px 0 28px; }
}
@media (max-width: 400px) {
  .question, .result { padding: 22px; }
  .business-card { padding: 24px; }
}

/* 見出しを指定した2行で表示。デスクトップの左カラム幅に合わせて縮小。 */
@media (min-width: 821px) {
  .hero-grid > div:first-child {
    min-width: 0;
    container-type: inline-size;
  }
  .hero h1 {
    font-size: clamp(2rem, 5.6vw, 6.4rem);
    line-height: 1.05;
  }
  .hero h1 .hero-line {
    white-space: nowrap;
    overflow-wrap: normal;
  }
  @supports (font-size: 1cqw) {
    .hero h1 {
      font-size: clamp(2rem, 13cqw, 7.7rem);
    }
  }
}

/* Strategy & Consulting：相談・戦略を主役に、実行領域へ接続 */
.business-intro { grid-template-columns: 220px minmax(0,1fr); gap: 40px; margin-bottom: 112px; }
.business-intro h2 { font-size: clamp(2.2rem,4.1vw,4.2rem); line-height: 1.25; letter-spacing: -.045em; }
.business-intro .business-lead { font-size: clamp(1.2rem,2vw,1.7rem); font-weight: 700; line-height: 1.6; margin: 34px 0 26px; }
.business-intro-copy { max-width: 780px; }
.business-intro-copy p { margin: 0 0 18px; line-height: 1.95; }
.strategy-heading { margin-bottom: 48px; }
.strategy-heading .eyebrow, .execution-heading .eyebrow { display: block; margin-bottom: 20px; color: var(--muted); }
.strategy-heading h2, .strategy-bridge h2, .execution-heading h2 { font-size: clamp(2rem,3.3vw,3.2rem); line-height: 1.35; letter-spacing: -.04em; margin: 0; }
.strategy-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.strategy-card { background: #fff; border: 1px solid var(--line); border-radius: 12px; padding: 40px 32px; scroll-margin-top: 110px; min-width: 0; }
.strategy-number { display: inline-block; position: relative; font-family: Georgia,serif; font-size: 1.7rem; color: var(--ink); padding-bottom: 10px; }
.strategy-number::after { content: ''; position: absolute; bottom: 0; left: 0; width: 36px; height: 4px; border-radius: 4px; background: var(--strategy-accent); }
.strategy-card h3 { font-size: 1.6rem; line-height: 1.5; margin: 32px 0 10px; letter-spacing: -.035em; }
.strategy-english { font-size: .77rem; color: var(--muted); margin: 0; min-height: 2.6em; }
.strategy-summary { margin: 30px 0; line-height: 1.95; }
.strategy-card h4 { font-size: .8rem; border-top: 1px solid var(--line); padding-top: 24px; margin: 0 0 14px; }
.strategy-card ul { padding-left: 1.25em; font-size: .88rem; line-height: 1.95; margin: 0; }
.strategy-card li { margin: 6px 0; }
.strategy-bridge { display: grid; grid-template-columns: 1fr 1fr; gap: 72px; padding: 80px 0 42px; margin-top: 80px; border-top: 1px solid var(--line); }
.strategy-bridge .eyebrow { color: var(--muted); display: block; margin-bottom: 22px; }
.strategy-bridge p { margin: 0 0 18px; line-height: 1.95; }
.strategy-flow { list-style: none; display: grid; grid-template-columns: 1.5fr 1fr .9fr 1fr; gap: 30px; padding: 26px; margin: 12px 0 100px; background: var(--color-surface); border-radius: 12px; }
.strategy-flow li { position: relative; font-size: .88rem; font-weight: 700; align-self: center; }
.strategy-flow li span { display: block; font-size: .75rem; font-weight: 400; margin-top: 5px; }
.strategy-flow li+li::before { content: '→'; position: absolute; left: -24px; color: var(--color-action); }
.execution-heading { max-width: 850px; margin-bottom: 42px; }
.execution-heading p { line-height: 1.95; margin: 24px 0 0; }
#business .business-grid, .post-type-archive-business .business-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
#business .business-card, .post-type-archive-business .business-card { min-height: 0; padding: 28px; }
.business-card h3 { font-size: clamp(1.4rem,2.2vw,2rem); line-height: 1.3; margin: 26px 0 12px; }
.execution-english { color: var(--muted); font-size: .75rem; display: block; }
.domain-strategies { display: flex; flex-wrap: wrap; gap: 8px; margin: 20px 0; }
.business-card .domain-strategies { gap: 6px; margin: 16px 0; }
.business-card .domain-strategies .tag { font-size: .65rem; padding: 5px 7px; font-weight: 400; }
.business-card p, .business-card ul { font-size: .9rem; line-height: 1.85; }
.strategy-card a:focus-visible { outline-color: var(--color-action); }
.result-detail { grid-template-columns: 1fr; }
.result-detail .detail-card:nth-child(3) strong { background: transparent; padding: 0; }
.result-detail .detail-card:nth-child(4) > strong { display: inline-block; background: var(--color-yellow); border-radius: 8px; padding: 4px 8px; }
.result-detail .detail-card strong { font-size: .8rem; }
.result-detail .detail-card b { display: block; font-size: .8rem; margin-top: 18px; }
.result-detail .recommended-consulting { padding: 22px; background: white; border: 1px solid var(--line); border-left: 4px solid var(--color-orange); border-radius: 10px; }
.result-detail .possible-execution .domain-link { font-weight: 400; font-size: .85rem; }
@media (max-width:1100px) {
 .strategy-grid { grid-template-columns: 1fr; gap: 28px; }
 .strategy-card { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 0 44px; padding: 40px; }
 .strategy-card .strategy-number, .strategy-card h3, .strategy-card .strategy-english, .strategy-card .strategy-summary { grid-column: 1; }
 .strategy-card h4 { grid-column: 2; grid-row: 1; border-top: 0; padding: 0; }
 .strategy-card ul { grid-column: 2; grid-row: 2 / span 3; }
 #business .business-grid, .post-type-archive-business .business-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .strategy-flow { grid-template-columns: 1fr; gap: 34px; }
 .strategy-flow li+li::before { content: '↓'; left: 0; top: -28px; }
}
@media (max-width:820px) {
 .business-intro { grid-template-columns: 1fr; gap: 18px; margin-bottom: 72px; }
 .strategy-bridge { grid-template-columns: 1fr; gap: 30px; padding-top: 50px; margin-top: 52px; }
 .strategy-heading { margin-bottom: 32px; }
 .strategy-card { display: block; padding: 32px; }
 .strategy-card h4 { border-top: 1px solid var(--line); padding-top: 24px; }
 .strategy-english { min-height: 0; }
 .strategy-flow { margin-bottom: 64px; }
 #business .business-grid, .post-type-archive-business .business-grid { grid-template-columns: 1fr; }
 .strategy-heading h2, .strategy-bridge h2, .execution-heading h2 { font-size: clamp(1.7rem,5vw,2.6rem); }
}
@media (max-width:400px) {
 .strategy-card, #business .business-card, .post-type-archive-business .business-card { padding: 26px 22px; }
 .business-intro h2 { font-size: 1.95rem; }
}

/* Top page only: HOW WE HELP / 2026-10-05 */
.home-help .help-heading-line { display: block; }
.home-help .business-intro > div:last-child { min-width: 0; container-type: inline-size; }
.home-help .business-intro h2 { font-size: clamp(1.25rem,5.6vw,3.8rem); line-height: 1.35; }
@supports (font-size: 1cqw) {
 .home-help .business-intro h2 { font-size: clamp(1.25rem,7cqw,3.8rem); }
}
.home-help .help-heading-line { overflow-wrap: normal; word-break: normal; }
.home-help .strategy-heading h2 { font-size: clamp(1.25rem,6.4vw,3.2rem); }
.home-help .help-strategy-copy { max-width: 840px; line-height: 1.95; margin: 28px 0 0; }
.home-help .help-consulting-areas { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 40px; }
.home-help .help-consulting-area { min-width: 0; padding: 28px 0; border-top: 1px solid var(--line); }
.home-help .help-area-number { font-family: Georgia,serif; font-size: 1.15rem; color: var(--ink); display: inline-block; border-bottom: 3px solid var(--color-orange); padding: 0 0 7px; }
.home-help .help-consulting-area:nth-child(2) .help-area-number { border-color: var(--color-lime); }
.home-help .help-consulting-area:nth-child(3) .help-area-number { border-color: var(--color-sky); }
.home-help .help-consulting-area h3 { font-size: clamp(1.3rem,2vw,1.65rem); line-height: 1.5; margin: 24px 0 14px; }
.home-help .help-consulting-area p { font-size: .95rem; line-height: 1.95; margin: 0; overflow-wrap: anywhere; }
.home-help .help-flow { grid-template-columns: .65fr .8fr .8fr 1.3fr 1fr; }
@media (max-width:1100px) {
 .home-help .help-flow { grid-template-columns: 1fr; }
}
@media (max-width:820px) {
 .home-help .help-consulting-areas { grid-template-columns: 1fr; gap: 16px; }
 .home-help .help-consulting-area { padding: 24px 0; }
 .home-help .business-intro .business-lead { font-size: clamp(1rem,4.5vw,1.3rem); }
 .home-help .help-strategy-copy { margin-top: 24px; }
}

.home-help .help-topic { display: inline-block; white-space: nowrap; max-width: 100%; }
