/* ============================================================
   博多トップ — 案A「処方箋2026 を全校へ」（2026-10-24 殿承認「この方向でよい」・札幌月寒の見本と同じ型）
   ・このファイルは /hakata/ のトップ（index.html）だけが読む。
     下層ページは従来どおり site.css を読み、ここの規則は届かない（全規則を .rx26 の下に閉じている）。
   ・土台は札幌の top-a.css をそのまま写し、博多にある部品（悩み3枚・オンラインの理由・用意するもの・
     90% の節・料金カード・もっと知る）を同じ語彙で足した。
     和紙白 #FBFAF5／墨 #1B1812／山吹 #E2A400／朱 #C0392B は判子だけ。
     白カード＋墨1px枠＋8pxズレ影、黒ボタン角0、明朝見出し、mono の eyebrow。
   ・博多はオンライン専業：住所・駅・駐車場の部品は持たない。
   ・最初の画面に弦の横線は出さない（文字に被るため・殿の指摘。藤沢も no-strings）。
   ・組版の掟：両端揃え（justify）と pretty 折り返しは使わない。balance は短い見出しとボタンだけ。
     本文の行間（1.9）と段落の間（1.5em）に差をつける。12px 未満の文字と 44px 未満の指の的を作らない。
     太い縦罫（左の帯）は使わない。動きは opacity と transform だけ（判子の弾みは藤沢と同じ cubic-bezier）。
   ============================================================ */

.rx26{
  --paper:#FBFAF5;
  --paper-deep:#F4F1E7;
  --ink:#1B1812;
  --ink-soft:#57503F;
  --line:#D9D3C2;
  --amber:#E2A400;
  --amber-deep:#8A6200;
  --amber-text:#8A6200;
  --shu:#C0392B;
  --serif:"Hiragino Mincho ProN","Yu Mincho","YuMincho","Noto Serif JP",serif;
  --sans:"Hiragino Kaku Gothic ProN","Yu Gothic","YuGothic","Noto Sans JP",sans-serif;
  --mono:ui-monospace,"SF Mono",Menlo,monospace;
  --gx:clamp(20px,5vw,48px);
  --shadow:8px 8px 0 rgba(27,24,18,.08);
  --head-h:68px;
}

/* ---------- 土台 ---------- */
.rx26 *,.rx26 *::before,.rx26 *::after{box-sizing:border-box;margin:0;padding:0}
html:has(body.rx26){scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--head-h,68px) + 12px)}
html:has(body.rx26),body.rx26{overflow-x:clip}
body.rx26{
  margin:0;
  background:var(--paper);color:var(--ink);
  font-family:var(--sans);font-weight:400;font-size:16px;line-height:1.9;
  font-feature-settings:"palt" 1;
}
.rx26 img{max-width:100%;height:auto;display:block}
.rx26 a{color:inherit}
.rx26 ::selection{background:var(--amber);color:var(--ink)}
.rx26 :focus-visible{outline:2px solid var(--amber-deep);outline-offset:3px}
.rx26 .wrap{max-width:1080px;margin:0 auto;padding:0 var(--gx)}
.rx26 .sp{display:none}
@media(max-width:720px){.rx26 .sp{display:inline}}

/* 見出し：句の境（<wbr>）でだけ折る。語の途中では折らない */
.rx26 .jp-ph{word-break:keep-all;overflow-wrap:anywhere}
:is(h1,h2).jp-ph,:is(h2.was-h1,h2).jp-ph{word-break:keep-all;overflow-wrap:anywhere}
.rx26 .nb{display:inline-block;white-space:nowrap}

/* ---------- 出現（藤沢と同じ：下から 0.8s でふわり） ---------- */
.rx26 .reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s ease;transition-delay:calc(var(--i,0)*70ms)}
.rx26 .reveal.in{opacity:1;transform:none}
html:not(.js) .rx26 .reveal{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.rx26 .reveal{opacity:1;transform:none;transition:none}}

/* ---------- 共通部品 ---------- */
.rx26 .sec{padding-top:clamp(80px,11vw,136px);padding-bottom:clamp(80px,11vw,136px)}
.rx26 .sec.tight{padding-top:clamp(40px,6vw,72px)}
.rx26 .bg-deep{background:var(--paper-deep)}

/* eyebrow：mono・山吹濃・左に山吹罫。1行に収める */
.rx26 .eyebrow,.rx26 .lead-en{
  font-family:var(--mono);font-size:12px;font-weight:400;
  letter-spacing:.22em;text-transform:uppercase;line-height:1.5;
  color:var(--amber-deep);
  display:flex;align-items:center;gap:.9em;white-space:nowrap;
}
.rx26 .eyebrow::before,.rx26 .lead-en::before{content:"";display:block;width:2.6em;height:1px;background:var(--amber);flex-shrink:0}

/* 明朝のセクション見出し */
.rx26 .h2,.rx26 .sec-title{
  font-family:var(--serif);font-weight:600;
  font-size:clamp(1.62rem,3.6vw,2.6rem);
  line-height:1.6;letter-spacing:.06em;text-wrap:balance;
  margin:.9em 0 1em;
}
.rx26 .sub{color:var(--ink-soft);max-width:38em;font-size:.98rem}
.rx26 .sub + .sub{margin-top:1.2em}
.rx26 .feat + .note{margin-top:2.4em}
.rx26 .note{font-size:.92rem;color:var(--ink-soft);max-width:40em;line-height:1.95;margin-top:1.4em}

/* 本文中のリンク（山吹の下線）。指の的を 44px に広げつつ、行送りは変えない */
.rx26 .textlink{
  color:var(--ink);font-weight:700;text-decoration:none;
  border-bottom:2px solid var(--amber);
  display:inline-block;padding:.84em 0 .12em;margin:-.84em 0 0;line-height:1.7;
  transition:color .2s;
}
.rx26 .textlink:hover{color:var(--amber-text)}
.rx26 p > .textlink:only-child{padding-bottom:.35em}

/* ボタン：墨ベタ・角0。山吹の下線が hover で走る */
.rx26 .btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:48px;padding:.95em 2.2em;
  background:var(--ink);color:var(--paper);text-decoration:none;
  font-family:var(--sans);font-weight:700;font-size:.95rem;letter-spacing:.1em;line-height:1.5;
  text-align:center;text-wrap:balance;word-break:keep-all;overflow-wrap:anywhere;border:1px solid var(--ink);border-radius:0;
  position:relative;overflow:hidden;transition:background .25s,color .25s;
}
.rx26 .btn::after{
  content:"";position:absolute;inset:auto 0 0 0;height:3px;background:var(--amber);
  transform:scaleX(0);transform-origin:left;transition:transform .35s;
}
.rx26 .btn:hover::after{transform:scaleX(1)}
.rx26 .btn.ghost{background:transparent;color:var(--ink)}
.rx26 .btn.ghost:hover{background:var(--ink);color:var(--paper)}
.rx26 .btn.lg{padding:1.05em 2.4em}

/* 白カード＋墨1px枠＋8pxズレ影（処方箋2026 の基本形） */
.rx26 .card{background:#fff;border:1px solid var(--ink);box-shadow:var(--shadow)}
.rx26 .frame{background:#fff;border:1px solid var(--line);padding:10px 10px 12px;box-shadow:var(--shadow)}

/* ---------- ヘッダー ---------- */
.rx26 .site-head{
  position:sticky;top:0;z-index:50;
  background:color-mix(in srgb,var(--paper) 90%,transparent);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.rx26 .site-head nav{display:flex;align-items:center;justify-content:space-between;gap:16px;height:var(--head-h)}
.rx26 .brand{display:inline-flex;align-items:center;min-height:44px}
.rx26 .site-head .logo{height:40px;width:auto}
.rx26 .links{display:flex;align-items:center;gap:26px}
.rx26 .links a{
  font-size:.86rem;letter-spacing:.08em;text-decoration:none;
  min-height:44px;min-width:44px;justify-content:center;display:inline-flex;align-items:center;position:relative;
}
.rx26 .links a:not(.btn)::after{
  content:"";position:absolute;left:0;right:0;bottom:8px;height:1px;background:var(--amber-deep);
  transform:scaleX(0);transform-origin:left;transition:transform .3s;
}
.rx26 .links a:not(.btn):hover::after{transform:scaleX(1)}
.rx26 .links a.btn{padding:.7em 1.9em .7em 2.05em;font-size:.86rem;letter-spacing:.12em;min-height:44px}
.rx26 .nav-toggle{
  display:none;flex-direction:column;justify-content:center;align-items:center;gap:6px;
  width:44px;height:44px;background:none;border:0;cursor:pointer;
}
.rx26 .nav-toggle span{width:24px;height:1.5px;background:var(--ink);display:block;transition:transform .3s,opacity .3s}
.rx26 .site-head.open .nav-toggle span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.rx26 .site-head.open .nav-toggle span:nth-child(2){opacity:0}
.rx26 .site-head.open .nav-toggle span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
.rx26 .head-cta{display:none}
@media(max-width:860px){
  .rx26{--head-h:60px}
  .rx26 .site-head .logo{height:34px}
  .rx26 .nav-toggle{display:flex}
  .rx26 .site-head nav{position:relative;gap:8px}
  .rx26 .links{
    position:absolute;top:calc(100% + 1px);left:calc(-1*var(--gx));right:calc(-1*var(--gx));
    flex-direction:column;align-items:stretch;gap:0;
    background:var(--paper);box-shadow:0 18px 34px -22px rgba(27,24,18,.35);
    max-height:calc(100svh - var(--head-h));overflow-y:auto;
    opacity:0;visibility:hidden;transform:translateY(-8px);
    transition:opacity .25s ease,transform .25s ease,visibility 0s linear .25s;
  }
  .rx26 .site-head.open .links{opacity:1;visibility:visible;transform:none;border-top:1px solid var(--line);transition:opacity .25s ease,transform .25s ease,visibility 0s}
  .rx26 .links a:not(.btn){padding:12px var(--gx);border-bottom:1px solid var(--line);font-size:1rem}
  .rx26 .links a:not(.btn)::after{display:none}
  .rx26 .links a.btn{margin:18px var(--gx);min-height:50px}
  .rx26 .head-cta{
    display:inline-flex;align-items:center;justify-content:center;
    margin-left:auto;min-height:44px;padding:0 1em;
    background:var(--ink);color:var(--paper)!important;text-decoration:none;
    font-weight:700;font-size:.8rem;letter-spacing:.06em;white-space:nowrap;border-radius:0;
    transition:opacity .2s ease,visibility 0s;
  }
  .rx26:has(.cta-sticky.show) .head-cta{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility 0s .2s}
}

/* ---------- ① 最初の画面 ---------- */
.rx26 .hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line)}
.rx26 .heromark{position:absolute;right:0;bottom:0;width:min(46vw,520px);opacity:.035;pointer-events:none}
.rx26 .hero > .wrap{
  position:relative;
  display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,340px);
  grid-template-areas:"copy photo" "body photo";
  column-gap:clamp(36px,5.6vw,72px);align-items:start;
  padding-top:clamp(56px,8vw,104px);padding-bottom:clamp(64px,9vw,112px);
}
.rx26 .hero-copy{grid-area:copy}
.rx26 .hero-body{grid-area:body}
.rx26 .hero-photo{grid-area:photo;align-self:center;margin:0}
.rx26 .hero .eyebrow{margin-bottom:1.6em}
/* h1（地名）：静かに。明朝の小見出しとして置き、キャッチを主役にする */
.rx26 .hero .h1-place{
  font-family:var(--sans);font-weight:500;font-size:.95rem;letter-spacing:.14em;line-height:1.7;
  color:var(--ink-soft);margin-bottom:1.1em;
}
.rx26 .hero .catch{
  font-family:var(--serif);font-weight:600;
  font-size:clamp(1.55rem,3.3vw,2.6rem);line-height:1.55;letter-spacing:.05em;
  color:var(--ink);
}
.rx26 .hero .catch .b{
  color:var(--amber-deep);
  text-emphasis:filled dot var(--amber);-webkit-text-emphasis:filled dot var(--amber);
}
.rx26 .hero .h1-block{margin-bottom:1.1em}
.rx26 .hero .h1-block .h1-place{margin-bottom:.15em}
.rx26 .hero .h1-sub{font-size:.9rem;letter-spacing:.1em;line-height:1.7;color:var(--ink-soft)}
.rx26 .hero .lead{color:var(--ink-soft);font-size:.98rem;max-width:30em;margin-top:2em}
.rx26 .hero .sublink{font-size:.88rem;line-height:1.85;color:var(--ink-soft);max-width:32em;margin-top:1.3em}
.rx26 .cta-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:2.2em}
.rx26 .hero-photo img{width:100%;aspect-ratio:1/1;object-fit:contain}
.rx26 .hero-photo figcaption,.rx26 .inst figcaption{
  font-family:var(--mono);font-size:12px;letter-spacing:.18em;color:var(--ink-soft);
  margin-top:10px;text-align:center;line-height:1.5;
}
@media(max-width:860px){
  .rx26 .hero > .wrap{grid-template-columns:1fr;grid-template-areas:"copy" "photo" "body";padding-top:40px;padding-bottom:56px}
  .rx26 .hero .eyebrow{letter-spacing:.1em;gap:.7em;margin-bottom:1.3em}
  .rx26 .hero .eyebrow::before{width:1.4em}
  .rx26 .hero .h1-place{font-size:.9rem}
  .rx26 .hero .h1-block{margin-bottom:.9em}
  .rx26 .hero .catch{font-size:clamp(1.45rem,6.4vw,2.4rem)}
  .rx26 .hero-photo{margin-top:28px;width:min(100%,300px)}
  .rx26 .hero .lead{margin-top:1.8em}
  .rx26 .cta-row{flex-direction:column;align-items:stretch}
  .rx26 .cta-row .btn{padding:1em 12px;font-size:15px;letter-spacing:.04em}
}

/* ---------- 01/02/03・当日の流れ：白カード ---------- */
.rx26 .feat{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.4vw,28px);margin-top:clamp(28px,4vw,48px)}
.rx26 #trial-flow .feat{grid-template-columns:repeat(2,minmax(0,1fr))}
.rx26 .frow{background:#fff;border:1px solid var(--ink);box-shadow:var(--shadow);padding:clamp(22px,2.4vw,30px) clamp(20px,2.2vw,26px)}
.rx26 .frow .n{
  font-family:var(--mono);font-size:12px;letter-spacing:.2em;color:var(--amber-deep);
  border-bottom:1px solid var(--line);padding-bottom:.8em;margin-bottom:1em;line-height:1.5;
}
.rx26 .frow .n::before{content:"No. "}
.rx26 #trial-flow .frow .n::before{content:"STEP "}
.rx26 .frow h3{font-family:var(--serif);font-weight:600;font-size:1.14rem;line-height:1.65;letter-spacing:.04em;text-wrap:balance;margin-bottom:.7em}
.rx26 .frow p{font-size:.92rem;color:var(--ink-soft);line-height:1.9}
@media(max-width:760px){.rx26 .feat,.rx26 #trial-flow .feat{grid-template-columns:1fr}}

/* ---------- 講師 ---------- */
.rx26 .inst{background:var(--paper-deep)}
.rx26 .inst .wrap{display:grid;grid-template-columns:minmax(240px,360px) minmax(0,1fr);gap:clamp(32px,6vw,80px);align-items:start}
.rx26 .inst figure{position:sticky;top:calc(var(--head-h) + 24px)}
.rx26 .inst figure img{width:100%;aspect-ratio:1/1;object-fit:contain}
.rx26 .inst h2:not(:where(.was-h1)){
  font-family:var(--serif);font-weight:600;font-size:clamp(1.5rem,3.2vw,2.3rem);
  line-height:1.65;letter-spacing:.06em;text-wrap:balance;margin:.9em 0 1em;
}
.rx26 .inst p{color:var(--ink-soft);max-width:38em}
.rx26 .inst .lead-en{margin-top:.2em}
.rx26 .inst p + p{margin-top:1.4em}
.rx26 .inst .name{
  margin:2em 0 1.6em;padding:1em 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  font-family:var(--serif);font-weight:600;font-size:1.05rem;letter-spacing:.08em;line-height:1.7;
}
.rx26 .inst .inst-movie{font-size:.92rem!important;margin-top:1.6em!important}
@media(max-width:860px){
  .rx26 .inst .wrap{grid-template-columns:1fr}
  .rx26 .inst figure{position:static;width:min(100%,320px)}
}

/* ---------- 料金：処方箋カード ---------- */
.rx26 .rx{
  background:#fff;border:1px solid var(--ink);box-shadow:var(--shadow);
  max-width:760px;margin-top:clamp(28px,4vw,44px);
  padding:clamp(26px,5vw,52px);position:relative;
}
.rx26 .rx::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:url(/hakata/img/logo.png) center 46%/min(52%,280px) no-repeat;opacity:.05;
}
.rx26 .rx > *{position:relative}
.rx26 .rx-head{display:flex;justify-content:space-between;align-items:baseline;gap:1em;flex-wrap:wrap;border-bottom:2px solid var(--ink);padding-bottom:14px}
.rx26 .rx-head strong{font-family:var(--serif);font-size:1.5rem;letter-spacing:.35em;font-weight:600;background:none;line-height:1.4}
.rx26 .rx-head span{font-family:var(--mono);font-size:12px;letter-spacing:.2em;color:var(--ink-soft)}
.rx26 .rx-issuer{display:flex;justify-content:space-between;align-items:center;gap:1em;margin-top:1.4em;padding-top:1.3em;border-top:1px solid var(--line)}
.rx26 .rx-issuer .who small{display:block;font-family:var(--mono);font-size:12px;letter-spacing:.22em;color:var(--ink-soft);margin-bottom:.3em;line-height:1.5}
.rx26 .rx-issuer .who strong{font-family:var(--serif);font-weight:600;font-size:1rem;letter-spacing:.08em;line-height:1.7;background:none}
.rx26 .hanko{
  width:78px;height:78px;flex-shrink:0;margin:-2px 4px -4px 0;
  border:2.5px solid var(--shu);border-radius:50%;color:var(--shu);
  font-family:var(--serif);font-weight:600;font-size:.95rem;line-height:1.25;letter-spacing:.12em;text-align:center;
  display:flex;align-items:center;justify-content:center;
  transform:rotate(-8deg);opacity:.85;
}
.js .rx26 .rx:not(.stamped) .hanko{opacity:0}
.rx26 .rx.stamped .hanko{animation:rx26stamp .55s cubic-bezier(.2,1.4,.4,1) both}
@keyframes rx26stamp{
  0%{opacity:0;transform:rotate(-16deg) scale(2.4)}
  55%{opacity:.9;transform:rotate(-8deg) scale(.92)}
  75%{transform:rotate(-8deg) scale(1.05)}
  100%{opacity:.85;transform:rotate(-8deg) scale(1)}
}
@media(prefers-reduced-motion:reduce){.js .rx26 .rx:not(.stamped) .hanko{opacity:.85}.rx26 .rx.stamped .hanko{animation:none}}
@media(max-width:560px){
  .rx26 .rx{padding:24px 20px}
  .rx26 .rx-head strong{letter-spacing:.24em}
  .rx26 .rx-issuer .who strong{font-size:.9rem;letter-spacing:.03em}
  .rx26 .hanko{width:68px;height:68px;font-size:.88rem}
}

/* ---------- Q&A（罫線式） ---------- */
.rx26 .faq{margin-top:clamp(24px,3vw,40px);border-top:1px solid var(--line);max-width:860px}
.rx26 .faq details{border-bottom:1px solid var(--line)}
.rx26 .faq summary{
  word-break:keep-all;overflow-wrap:anywhere;text-wrap:balance;
  list-style:none;cursor:pointer;display:flex;gap:1.1em;align-items:baseline;
  min-height:44px;padding:1.35em .2em;
  font-family:var(--serif);font-weight:600;font-size:1.04rem;line-height:1.8;letter-spacing:.04em;
}
.rx26 .faq summary::-webkit-details-marker{display:none}
.rx26 .faq summary::before{content:"Q";font-family:var(--mono);font-size:.85rem;color:var(--amber-deep);flex-shrink:0}
.rx26 .faq summary::after{content:"＋";margin-left:auto;flex-shrink:0;font-family:var(--mono);font-size:.95rem;color:var(--ink-soft)}
.rx26 .faq details[open] summary::after{content:"−"}
.rx26 .faq details p{display:flex;gap:1.1em;align-items:baseline;padding:0 .2em 1.7em;font-size:.95rem;color:var(--ink-soft);line-height:1.9}
.rx26 .faq details p::before{content:"A";font-family:var(--mono);font-size:.85rem;color:var(--ink-soft);flex-shrink:0}

.rx26 .band{background:var(--ink);color:var(--paper);text-align:center;padding:clamp(80px,11vw,128px) 0}
.rx26 .band .eyebrow{justify-content:center;color:var(--amber)}
.rx26 .band .eyebrow::before{background:var(--amber)}
.rx26 .band h2:not(:where(.was-h1)){
  font-family:var(--serif);font-weight:600;color:var(--paper);
  font-size:clamp(1.62rem,3.6vw,2.6rem);line-height:1.6;letter-spacing:.06em;text-wrap:balance;
  margin:.9em 0 .8em;
}
.rx26 .band p{text-wrap:balance;color:rgba(251,250,245,.74);font-size:.98rem;max-width:34em;margin:0 auto}
.rx26 .band .btn{
  margin-top:2.4em;background:var(--amber);color:var(--ink);border-color:var(--amber);
  padding:1.1em 2.8em;transition:transform .25s,box-shadow .25s;
}
.rx26 .band .btn::after{display:none}
.rx26 .band .btn:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(226,164,0,.35)}
@media(max-width:560px){.rx26 .band .btn{display:flex;padding:1em 12px;font-size:15px;letter-spacing:.04em}}

/* ---------- フッター ---------- */
.rx26 .site-foot{border-top:1px solid var(--line);padding:clamp(48px,7vw,72px) 0 40px;font-size:.88rem;color:var(--ink-soft)}
.rx26 .site-foot .wrap{display:flex;flex-direction:column;align-items:flex-start;gap:.9em}
.rx26 .site-foot .logo{height:48px;width:auto;margin-bottom:.6em}
.rx26 .foot-contact,.rx26 .foot-links a{
  display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;text-decoration:none;color:var(--ink);
  border-bottom:1px solid transparent;transition:color .2s;
}
.rx26 .foot-contact{font-weight:700;border-bottom-color:var(--amber)}
.rx26 .foot-contact:hover,.rx26 .foot-links a:hover{color:var(--amber-text)}
.rx26 .foot-links{display:flex;flex-wrap:wrap;align-items:center;gap:0 1.6em;padding-top:.6em;border-top:1px solid var(--line);width:100%}
.rx26 .foot-rooms{border-top:0;padding-top:0}
.rx26 .foot-rooms span{font-family:var(--mono);font-size:12px;letter-spacing:.16em;color:var(--amber-deep)}

/* ---------- スマホの追従ボタン（最初の画面と最後の申込帯では隠す） ---------- */
.rx26 .cta-sticky{display:none}
@media(max-width:860px){
  .rx26:has(.cta-sticky) .site-foot{padding-bottom:120px}
  .rx26 .cta-sticky{
    display:block;position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:60;
    min-height:54px;padding:15px 12px;text-align:center;text-decoration:none;
    background:var(--ink);color:var(--paper)!important;
    font-weight:700;font-size:15px;line-height:1.5;letter-spacing:.04em;
    border:1px solid var(--ink);box-shadow:8px 8px 0 rgba(27,24,18,.14);
    translate:0 160%;visibility:hidden;transition:translate .35s ease,visibility 0s linear .35s;
  }
  .rx26 .cta-sticky.show{translate:0 0;visibility:visible;transition:translate .35s ease,visibility 0s}
}


/* ============================================================
   ここから博多の部品（札幌に無いもの）。造形は上の語彙だけで作る
   ============================================================ */
.rx26 .wrap.narrow{max-width:calc(880px + 2*var(--gx))}
.rx26 .nw{display:inline-block}
.rx26 .ptext{color:var(--ink-soft);max-width:40em;margin-top:1.5em}
.rx26 .h2 + .ptext{margin-top:0}
.rx26 .morelink{margin-top:2em;font-size:.95rem}
.rx26 .morelink .textlink,.rx26 .pc-links .textlink{word-break:keep-all;overflow-wrap:anywhere}

/* ---------- ② こんな悩み：白カード3枚 ---------- */
.rx26 .prob{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.4vw,28px);margin-top:clamp(28px,4vw,48px)}
.rx26 .pcard,.rx26 .wcard{background:#fff;border:1px solid var(--ink);box-shadow:var(--shadow);padding:clamp(22px,2.4vw,30px) clamp(20px,2.2vw,26px)}
.rx26 .pcard .q,.rx26 .wcard .wn{
  font-family:var(--mono);font-size:12px;letter-spacing:.2em;color:var(--amber-deep);
  border-bottom:1px solid var(--line);padding-bottom:.8em;margin-bottom:1em;line-height:1.5;
}
.rx26 .wcard .wn::before{content:"No. "}
.rx26 .pcard h3,.rx26 .wcard h3{font-family:var(--serif);font-weight:600;font-size:1.14rem;line-height:1.65;letter-spacing:.04em;text-wrap:balance;margin-bottom:.7em}
.rx26 .pcard p,.rx26 .wcard p{font-size:.92rem;color:var(--ink-soft);line-height:1.9}
@media(max-width:760px){.rx26 .prob{grid-template-columns:1fr}}

/* ---------- ③ オンラインで、本当に？（和紙の濃い地） ---------- */
.rx26 .em{font-style:normal;color:var(--ink);background:linear-gradient(transparent 62%,rgba(226,164,0,.38) 62%)}
/* 答えの一行：上下の墨罫で挟む（左の帯は使わない） */
.rx26 .answer{
  font-family:var(--serif);font-weight:600;color:var(--ink);
  font-size:clamp(1.3rem,2.8vw,1.85rem);line-height:1.75;letter-spacing:.05em;
  margin:2.2em 0 2em;padding:1.1em 0 1.2em;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);
}
.rx26 .answer .b{color:var(--amber-deep);text-emphasis:filled dot var(--amber);-webkit-text-emphasis:filled dot var(--amber)}
.rx26 .why2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,2.4vw,28px);margin-top:clamp(24px,3vw,36px)}
@media(max-width:760px){.rx26 .why2{grid-template-columns:1fr}}
/* 用意するもの3つ */
.rx26 .need{background:#fff;border:1px solid var(--ink);box-shadow:var(--shadow);padding:clamp(24px,3.5vw,36px);margin-top:clamp(36px,5vw,56px)}
.rx26 .need-h{font-family:var(--serif);font-weight:600;font-size:1.14rem;line-height:1.65;letter-spacing:.04em;text-wrap:balance;padding-bottom:.9em;border-bottom:2px solid var(--ink)}
.rx26 .need-list{list-style:none}
.rx26 .need-list li{display:flex;gap:1em;align-items:flex-start;padding:1.1em 0;border-bottom:1px dashed var(--line)}
.rx26 .need-list .ni{
  flex:0 0 32px;height:32px;margin-top:.15em;border:1px solid var(--ink);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--mono);font-size:13px;line-height:1;color:var(--ink);
}
.rx26 .need-list li > span:last-child{font-size:.92rem;line-height:1.8;color:var(--ink-soft)}
.rx26 .need-list b{display:block;font-weight:700;font-size:1rem;line-height:1.7;color:var(--ink);margin-bottom:.15em}
.rx26 .need-note{font-size:.88rem;line-height:1.85;color:var(--ink-soft);margin-top:1.2em}
/* 次の節への手渡し（問い）：明朝。山吹の短い罫を上に置く */
.rx26 .handoff{
  font-family:var(--serif);font-weight:600;color:var(--ink);
  font-size:clamp(1.05rem,2vw,1.2rem);line-height:1.95;letter-spacing:.04em;max-width:34em;margin-top:3em;
}
.rx26 .handoff::before{content:"";display:block;width:2.6em;height:2px;background:var(--amber);margin-bottom:1.1em}

/* ---------- ④ 90%：墨地 ---------- */
.rx26 .stat{background:var(--ink);color:var(--paper);text-align:center;padding:clamp(80px,11vw,128px) 0}
.rx26 .stat .num{font-family:var(--serif);font-weight:600;color:var(--amber);font-size:clamp(76px,13vw,148px);line-height:1;letter-spacing:0;font-variant-numeric:tabular-nums}
.rx26 .stat .num span{font-size:.42em;margin-left:.06em}
.rx26 .stat p{max-width:36em;margin:2.2em auto 0;text-align:left;color:rgba(251,250,245,.8);line-height:1.95}
.rx26 .stat .src{margin-top:1.2em;font-size:12px;letter-spacing:.08em;line-height:1.6;color:rgba(251,250,245,.62)}
.rx26 .stat .stat-concept{margin-top:2.6em;padding-top:2.2em;border-top:1px solid rgba(251,250,245,.2);font-size:.95rem}
.rx26 .stat .textlink{color:var(--paper);white-space:nowrap}
.rx26 .stat .textlink:hover{color:var(--amber)}

/* ---------- ⑤ 料金：処方箋カード（札幌と同じ型・判子は「博多教室」） ---------- */
.rx26 .pc-head{padding:1.4em 0 1.3em;border-bottom:1px dashed var(--line)}
.rx26 .pc-name{font-family:var(--serif);font-weight:600;font-size:1.06rem;letter-spacing:.06em;line-height:1.6}
.rx26 .pc-price{margin-top:.45em;font-family:var(--serif);font-weight:600;font-size:1.1rem;line-height:1.3}
.rx26 .pc-price .yen{font-size:clamp(2.4rem,6vw,3.2rem);letter-spacing:.02em;font-variant-numeric:tabular-nums;margin-right:.1em}
.rx26 .pc-price small{font-family:var(--sans);font-weight:400;font-size:.86rem;color:var(--ink-soft);margin-left:.3em}
.rx26 .pc-sub{margin-top:.55em;font-size:.92rem;color:var(--ink-soft);line-height:1.7}
.rx26 .pc-rows > div{display:flex;justify-content:space-between;align-items:baseline;gap:1.2em;padding:1.05em 0;border-bottom:1px dashed var(--line)}
.rx26 .pc-rows > div:last-child{border-bottom:0}
.rx26 .pc-rows dt{font-family:var(--serif);font-weight:600;font-size:.98rem;letter-spacing:.04em;line-height:1.7;white-space:nowrap}
.rx26 .pc-rows dd{text-align:right;font-size:.95rem;line-height:1.7}
.rx26 .pc-rows dd small{display:block;font-size:.84rem;color:var(--ink-soft);margin-top:.2em;line-height:1.7}
.rx26 .pc-links{list-style:none;margin-top:1.8em;font-size:.95rem}
@media(max-width:560px){
  .rx26 .pc-rows > div{flex-direction:column;gap:.15em}
  .rx26 .pc-rows dd{text-align:left}
}

/* ---------- ⑥ もっと、知る：白カードのリンク ---------- */
.rx26 .explore{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2.2vw,26px);margin-top:clamp(28px,4vw,48px)}
.rx26 .ecard{
  display:flex;flex-direction:column;min-height:44px;
  background:#fff;border:1px solid var(--ink);box-shadow:var(--shadow);
  padding:clamp(22px,2.4vw,28px) clamp(20px,2.2vw,24px);text-decoration:none;color:var(--ink);
  transition:opacity .8s ease,transform .25s ease,box-shadow .25s ease;
}
.rx26 .ecard .en{font-family:var(--mono);font-size:12px;letter-spacing:.2em;line-height:1.5;color:var(--amber-deep)}
.rx26 .ecard h3{font-family:var(--serif);font-weight:600;font-size:1.14rem;line-height:1.6;letter-spacing:.04em;text-wrap:balance;margin:.7em 0 .4em}
.rx26 .ecard p{font-size:.9rem;line-height:1.85;color:var(--ink-soft)}
.rx26 .ecard .arrow{align-self:flex-start;margin-top:auto;padding-top:1.1em;font-weight:700;font-size:.88rem;line-height:1.6}
.rx26 .ecard .arrow{background:linear-gradient(var(--amber),var(--amber)) left bottom/100% 2px no-repeat}
.rx26 .ecard:hover{transform:translate(-2px,-2px);box-shadow:10px 10px 0 rgba(27,24,18,.12)}
@media(max-width:860px){.rx26 .explore{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.rx26 .explore{grid-template-columns:1fr}}

/* ---------- 締めの申込帯：ボタンの下の注記 ---------- */
.rx26 .band .note{display:block;max-width:36em;margin:1.8em auto 0;font-size:.86rem;line-height:1.85;color:rgba(251,250,245,.62)}
.rx26 .need-list b{word-break:keep-all;overflow-wrap:anywhere}
.rx26 li > .textlink:only-child{padding-bottom:.35em}
.rx26 #trial-flow{padding-top:clamp(40px,6vw,72px)}
.rx26 .feat + .ptext{margin-top:2.4em}
.rx26 .foot-rooms span{font-family:var(--sans);letter-spacing:.08em}
