.menu{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--ink)}
.menu>div{padding:34px 30px 30px;border-bottom:1px solid var(--line)}
.menu>div:nth-child(odd){border-right:1px solid var(--line)}
.menu b{font-family:"Cormorant Garamond",serif;font-size:34px;color:var(--acc2);font-weight:500;line-height:1;display:block}
.menu h3{font-size:21px;margin:12px 0 8px}
.menu p{font-size:16px;color:var(--ink2);line-height:1.9}
.case{background:#fff;border:1px solid var(--line);padding:44px 40px}
.tag{display:inline-block;font-size:13px;letter-spacing:.1em;border:1px solid var(--acc);color:var(--acc);padding:2px 12px;margin-bottom:14px}
.case h3{font-size:24px;margin-bottom:6px}
.kpis{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:28px 0 8px}
.kpi{background:var(--soft);padding:22px 24px}
.kpi .l{font-size:14px;color:var(--ink2);letter-spacing:.08em}
.kpi .v{font-family:"Noto Serif JP",serif;font-weight:700;font-size:clamp(24px,3.4vw,34px);line-height:1.4}
.kpi .v small{font-size:.5em;font-weight:500;color:var(--ink2);margin:0 6px}
.kpi .d{font-size:15px;color:var(--ink2)}
.legend{display:flex;gap:22px;font-size:14px;color:var(--ink2);margin:26px 0 6px}
.legend i{display:inline-block;width:12px;height:12px;border-radius:2px;margin-right:7px;vertical-align:-1px}
.chart{width:100%;height:auto;display:block}
.chart text{font-family:"Noto Sans JP",sans-serif;fill:var(--ink)}
.chart .ax{fill:var(--ink2)}
.chart .grid{stroke:var(--line);stroke-width:1}
.chart .bar{transition:opacity .15s}.chart .bar:hover{opacity:.8}
#tip{position:fixed;pointer-events:none;background:var(--ink);color:#fff;font-size:14px;padding:6px 12px;border-radius:4px;opacity:0;transition:opacity .12s;z-index:20;white-space:nowrap}
.case table{margin-top:26px;font-size:16px}
.case th,.case td{padding:14px 12px}
@media(max-width:860px){.menu{grid-template-columns:1fr}.menu>div:nth-child(odd){border-right:0}.case{padding:28px 18px}.kpis{grid-template-columns:1fr}.case h3{font-size:20px}}
.cintro{color:var(--ink2);max-width:820px;margin-bottom:48px}
.case{margin-top:64px}
/* 写真は人物の顔が写らないものだけを使用 */
.hero{background:#0c3d2e url('https://images.unsplash.com/photo-1642055514517-7b52288890ec?auto=format&fit=crop&w=1800&q=70') center/cover no-repeat}
.band{background:#0c3d2e url('https://images.unsplash.com/photo-1450101499163-c8848c66ca85?auto=format&fit=crop&w=1800&q=70') center/cover no-repeat}
.story img{display:none}.story figure{min-height:460px;background:#dfeae5 url('https://images.unsplash.com/photo-1648712898089-4435bc87b587?auto=format&fit=crop&w=1100&q=70') center/cover no-repeat}
@media(max-width:860px){.story figure{min-height:280px}}

.plans{margin-top:44px;background:#fff;border:1px solid var(--line);padding:44px 40px}
.plans h3{font-size:22px;margin-bottom:22px}
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.plan{background:var(--soft);padding:26px 24px;border-top:3px solid var(--acc2)}
.plan .pn{font-size:15px;letter-spacing:.08em;color:var(--ink2)}
.plan .pp{font-family:"Noto Serif JP",serif;font-weight:700;font-size:clamp(26px,3vw,32px);line-height:1.4;margin:4px 0 0}
.plan .pp small{font-size:.5em;font-weight:500;margin-left:4px}
.plan .pu{font-size:14px;color:var(--acc);margin-bottom:12px}
.plan p{font-size:15px;color:var(--ink2);line-height:1.9}
@media(max-width:800px){.pgrid{grid-template-columns:1fr}.plans{padding:28px 20px}}

/* 譲受希望の登録フォーム */
#bf fieldset{border:0;padding:0;margin:0}
#bf legend{font-weight:700;font-size:14px;letter-spacing:.06em;margin-bottom:10px}
#bf .areas label{display:inline-flex;align-items:center;gap:8px;font-weight:500;font-size:16px;margin:0 22px 10px 0;letter-spacing:0}
#bf input[type=checkbox]{width:20px;height:20px;margin:0;padding:0;flex:none;accent-color:var(--acc)}
#bf .agree{display:flex;align-items:flex-start;gap:10px;font-weight:500;font-size:15px;letter-spacing:0}
#bf .agree input{margin-top:3px}
.fmsg{font-weight:700;display:none;padding:14px}
.fmsg.ok{display:block;background:var(--soft);color:var(--acc)}
.fmsg.ng{display:block;background:#fdecea;color:#b3261e}
/* 公式LINE */
.linebox{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-left:4px solid #06c755;padding:20px 24px;margin:0 0 28px}
.linebox b{display:block;font-size:18px}.linebox span{font-size:15px;color:var(--ink2)}
.linebtn,.linefab{background:#06c755;color:#fff;text-decoration:none;font-weight:700;border-radius:999px}
.linebtn{padding:12px 26px;font-size:16px}
.linefab{position:fixed;right:18px;bottom:18px;z-index:30;padding:13px 22px;font-size:15px;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.linebtn:hover,.linefab:hover{background:#05b04b}
[hidden]{display:none!important}
