*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;line-height:1.85}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}a:focus-visible{outline:3px solid var(--accent);outline-offset:5px}img{display:block;max-width:100%;height:auto}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4,th,td{word-break:keep-all;overflow-wrap:normal;line-break:strict}h1,h2{letter-spacing:.025em}h1{font-size:clamp(27px,3.4vw,46px);line-height:1.65}h2{font-size:clamp(23px,2.4vw,32px);line-height:1.7}h1 span,h2 span{display:block}h4{font-size:16px;line-height:1.8}button,a{-webkit-tap-highlight-color:transparent}.wrap{width:calc(100% - 96px);max-width:1120px;margin-inline:auto}.header-top{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:22px}.brand{background:#fff;padding:7px 12px}.logo{width:180px;height:48px;object-fit:contain;background:#fff}.header-top .logo{width:260px;height:70px}.header-contact{display:flex;align-items:center;gap:26px}.header-phone{font-size:25px;font-weight:700;letter-spacing:.04em}.button{display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;border:1px solid var(--accent);color:var(--accent);background:#fff;font-size:14px;font-weight:700;text-align:center;word-break:keep-all;line-height:1.7}.main-nav{display:flex;justify-content:space-between;gap:16px;padding:16px 0 22px;border-top:1px solid var(--line);font-size:13px;font-weight:700;flex-wrap:wrap}.main-nav a{padding:4px 0}.hero{margin-block:24px 64px;display:grid;grid-template-columns:1fr 1.1fr;align-items:center;position:relative}.hero-copy{position:relative;z-index:1;padding:36px 36px 36px 0}.hero-copy .button{margin-top:28px}.hero-photo{width:100%;height:480px;object-fit:cover}.portals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-block:70px 100px}.portal{border-bottom:1px solid var(--line);padding-bottom:22px}.portal img{width:100%;aspect-ratio:1.85;object-fit:cover}.portal h2{font-size:20px;padding-top:18px}.portal h2:after{content:'↗';float:right;color:var(--accent)}.message{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:64px;margin-block:90px}.message img{width:100%;aspect-ratio:1.3;object-fit:cover}.message h2{font-size:clamp(23px,2.5vw,34px)}.message:nth-of-type(even) img{order:2}.sport{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;margin-block:100px;background:var(--tint)}.sport-image img{width:100%;height:400px;object-fit:cover}.sport-copy{padding:40px}.sport-copy .button{margin-top:26px}.staff{margin-block:100px}.staff a{display:block;position:relative}.staff img{width:100%;max-height:540px;object-fit:cover}.staff h2{position:absolute;bottom:24px;left:24px;background:#fff;color:var(--ink);padding:12px 30px;font-size:24px}.blog{padding-block:40px 100px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:36px}.section-heading h2{font-size:34px;letter-spacing:.12em}.section-heading p{font-size:13px;color:var(--accent)}.blog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px 22px}.item{min-width:0}.item img{width:100%;aspect-ratio:1.63;object-fit:cover}.title_area{padding-top:16px}.meta{list-style:none;padding:0;margin:12px 0 0;font-size:11px;color:var(--muted);line-height:1.8}.category a{display:inline-block;margin-right:8px}.date{letter-spacing:.08em}.access{padding-block:72px;background:var(--tint)}.access-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.address .logo{margin-bottom:24px}.address p{font-size:14px}.social{display:flex;gap:22px;margin-top:20px;font-size:13px}table{width:100%;border-collapse:collapse;background:#fff;font-size:15px}caption{text-align:left;font-weight:700;margin-bottom:12px}th,td{padding:15px 18px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}th{font-weight:500}td{font-weight:700}.contact{padding:65px 24px;display:flex;justify-content:center;align-items:center;gap:40px}.contact p{font-size:15px}.phone{font-size:32px;font-weight:700;white-space:nowrap}.phone span{font-size:14px;margin-right:10px}.footer-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-block:20px 70px}.footer-cards img{width:100%;aspect-ratio:2.2;object-fit:cover}.footer-cards span{display:block;padding:12px 0;font-weight:700}footer{border-top:1px solid var(--line);padding:38px 24px;text-align:center;font-size:11px}.footer-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 24px;margin-bottom:32px}.footer-nav a{font-size:12px}footer>p{margin-bottom:16px}.mobile-call{display:none}@media(max-width:800px){.message h2 span{display:block}.header-top .logo{width:200px;height:54px}.wrap{width:calc(100% - 40px)}.header-top{padding-block:12px;gap:12px}.header-contact{gap:10px}.header-phone{font-size:16px}.header-contact .button{padding:9px 12px;font-size:12px}.main-nav{font-size:12px;justify-content:flex-start;gap:6px 20px;padding:12px 0}.hero{grid-template-columns:1fr;margin-block:20px 40px}.hero-copy{padding:24px 0 32px}.hero-photo{height:340px}.hero-copy .button{margin-top:18px}.portals{gap:12px;margin-block:44px 60px}.portal h2{font-size:16px}.portal h2:after{display:none}.message{gap:28px;margin-block:60px}.sport{grid-template-columns:1fr;margin-block:60px}.sport-image img{height:300px}.sport-copy{padding:28px}.staff{margin-block:60px}.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.access-grid{grid-template-columns:1fr;gap:32px}.contact{flex-wrap:wrap;gap:20px}.footer-cards{gap:12px}.footer-cards span{font-size:14px}}@media(max-width:540px){body{padding-bottom:calc(60px + env(safe-area-inset-bottom))}.header-top{align-items:center}.header-top .logo{width:170px;height:46px}.brand{padding:4px 0}.header-contact{flex-direction:column;gap:3px;align-items:flex-end}.header-phone{font-size:15px}.header-contact .button{font-size:11px;padding:4px 12px}.main-nav{display:grid;grid-template-columns:1fr 1fr;font-size:11px;gap:6px 12px}.main-nav a{line-height:1.7}.hero-photo{height:280px}.hero h1{font-size:27px}.portals{grid-template-columns:1fr;gap:14px}.portal{display:grid;grid-template-columns:96px 1fr;align-items:center;padding-bottom:14px;gap:20px}.portal img{aspect-ratio:1.3}.portal h2{padding:0;font-size:18px}.message{grid-template-columns:1fr;gap:24px}.message:nth-of-type(even) img{order:0}.message h2{font-size:23px}.staff h2{left:14px;bottom:14px;padding:8px 18px;font-size:20px}.blog{padding-bottom:60px}.blog-grid{gap:30px 16px}.blog-grid h4{font-size:14px;word-break:normal;overflow-wrap:anywhere}.section-heading h2{font-size:28px}.section-heading .button{padding:9px 14px;font-size:12px}.access{padding-block:48px}.address p{font-size:13px}th,td{padding:12px 10px;font-size:14px}.contact{flex-direction:column;text-align:center;padding:45px 20px;gap:16px}.phone{font-size:29px}.footer-cards{grid-template-columns:1fr;margin-bottom:40px}.footer-cards a{display:grid;grid-template-columns:100px 1fr;align-items:center;gap:20px}.footer-nav{width:100%;justify-content:flex-start;text-align:left}.mobile-call{display:flex;position:fixed;z-index:20;bottom:0;left:0;right:0;min-height:60px;align-items:center;justify-content:center;background:var(--accent);color:#fff;font-weight:700;letter-spacing:.12em;padding:14px 20px calc(14px + env(safe-area-inset-bottom));box-shadow:0 -3px 15px #0001}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}:root{--ink:#233e46;--accent:#427d89;--muted:#596c72;--paper:#ffffff;--tint:#eef7f9;--line:#d5e5e9}.hero:before{content:'';position:absolute;inset:28px -24px -24px 34%;background:#eef7f9;z-index:-1}.hero-copy{background:#fff;margin-right:-34px;padding-right:32px}.hero-photo{filter:brightness(1.04)}.message h2{border-left:2px solid #6698a1;padding-left:24px}.section-heading h2{font-weight:500}.button{border-radius:0}@media(max-width:800px){.hero:before{inset:40% 0 -16px 20%}.hero-copy{margin-right:0}}
/* Japanese line boundaries retain punctuation; explicit phrase breaks stay in the source. */
h1,h2,h3,h4{word-break:normal;line-break:strict;overflow-wrap:normal}h1 span,h2 span{display:inline}.nowrap{white-space:nowrap}.blog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:1000px){.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.blog-grid{grid-template-columns:1fr}.blog-grid h4{word-break:normal;overflow-wrap:normal;font-size:16px}.blog-grid .item img{aspect-ratio:1.85}.hero h1{line-height:1.6}}

/* Shared page, article, archive and form styles in the proposal palette. */
.page-heading{max-width:1000px;margin:auto;padding:3.5rem 1.25rem 2rem}.page-heading h1{margin:.3em 0;color:var(--accent)}.content{max-width:1000px;margin:0 auto 4rem;padding:0 1.25rem;overflow-wrap:anywhere;min-width:0}.article-page .content{max-width:820px}.content .featured{display:block;margin:0 auto 3rem;max-height:600px;object-fit:contain}.content table{display:table;max-width:100%;border-collapse:collapse}.content th,.content td{padding:.65rem;border:1px solid var(--line)}.content table[border]{width:100%!important}.content img{height:auto!important}.content .panel-grid{display:flex;flex-wrap:wrap;gap:1.5rem}.content .panel-grid-cell{flex:1 1 270px;min-width:0;max-width:100%}.content [style*="background-color: #b0cfd2"],.content [style*="background-color:#b0cfd2"]{background-color:var(--accent)!important}.content [style*="color: #6698a1"],.content [style*="color:#6698a1"]{color:var(--accent)!important}.content .alignleft{float:left;margin:0 1.5rem 1rem 0}.content .alignright{float:right;margin:0 0 1rem 1.5rem}.content .aligncenter{display:block;margin-left:auto;margin-right:auto}.content:after{content:"";display:block;clear:both}.content iframe[src*="youtube"]{width:100%;aspect-ratio:16/9;height:auto}.content iframe[src*="note.com"]{width:100%;min-height:200px}.post-grid,.term-menu,.pagination,.post-navigation{max-width:1120px;margin:0 auto 3rem;padding:0 1.25rem}.post-card{background:var(--paper);min-width:0}.post-card>div{padding:1rem 1.5rem}.post-card img{width:100%;aspect-ratio:830/510;object-fit:cover}.post-card h2{font-size:1.2rem;margin:.4rem 0}.post-card h2 a{text-decoration:none}.pagination{display:flex;flex-wrap:wrap;gap:.5rem}.pagination a,.pagination span{padding:.4em 1em;border:1px solid var(--line)}.pagination [aria-current]{background:var(--accent);color:white}.term-menu summary{color:var(--accent);cursor:pointer}.term-menu ul{display:flex;flex-wrap:wrap;gap:.5rem 2rem;list-style:none;padding:1rem}.post-navigation{display:flex;justify-content:space-between;gap:2rem;font-size:.9rem}.post-navigation a{max-width:48%}.tags{clear:both;border-top:1px solid var(--line);padding-top:1.5rem}.tags a{display:inline-block;margin:.25rem .7rem .25rem 0}.contact-form{max-width:680px;margin:0 auto}.contact-form label{display:block;margin-top:1.5rem}.contact-form label span{font-size:.8rem;color:var(--muted)}.contact-form input,.contact-form textarea{display:block;width:100%;border:1px solid var(--line);background:white;color:var(--ink);border-radius:0;padding:.7rem}.contact-form button{border:0;padding:.7em 3em;background:var(--accent);color:white}.contact-form button:disabled{background:var(--tint);color:var(--ink);cursor:not-allowed}
main{min-height:40vh}button,input,textarea{font:inherit}button{word-break:keep-all}button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.skip{position:absolute;top:-6rem;left:1rem;z-index:30;background:var(--paper);padding:.5rem 1rem}.skip:focus{top:.5rem}
.content p{margin:1em 0}.content h2,.content h3,.content h4{margin:1em 0 .5em}.content a{text-decoration:underline;text-underline-offset:4px}.content ul,.content ol{padding-left:1.5em}
.content [style*="background-color"]{background-color:var(--tint)!important}.content [style*="color:"]{color:var(--ink)!important}.content [style*="font-family"]{font-family:inherit!important}
.content img,.content iframe,.content table,.content .wp-caption{min-width:0!important;max-width:100%!important}.content [style*="width"]{max-width:100%!important}
.content th,.content td{white-space:normal;word-break:normal;overflow-wrap:normal;line-break:strict}.content table{width:100%;table-layout:fixed}.content td img{max-width:100%}
.embedded-card{min-width:0;max-width:100%;margin:1em 0;padding:1rem 1.25rem;border:1px solid var(--line);border-left:3px solid #6698a1;background:var(--paper)}.embedded-card p{margin:0}.embedded-card a{display:block}
.post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 22px}.post-card h2{font-size:16px;line-height:1.8}.post-card{border-bottom:1px solid var(--line)}.post-card>div{padding:16px 0 22px}
.post-navigation a{min-width:0}.post-navigation a,.tags a,.term-menu a{line-break:strict;overflow-wrap:anywhere}
.map{margin-top:32px;min-width:0;text-align:left}.map iframe,.content iframe[src*="https://www.google.com/maps/embed"]{display:block;width:100%!important;height:400px!important;border:0;max-width:100%}.map>a{display:inline-block;margin-top:12px;font-size:14px}
footer{padding:0 0 38px}footer .access{margin-bottom:38px;text-align:left}footer .access h2{font-size:34px}footer .address .phone,.address .phone{font-size:inherit}.social ul{display:flex;gap:22px;list-style:none;margin:0;padding:0}
.hours{align-self:start}.hours th,.hours td{white-space:nowrap}.contact-form button{margin-top:16px}.content .panel-grid-cell{overflow-wrap:anywhere}h1,h2,h3,h4,th,td,.button{word-break:keep-all;line-break:strict;overflow-wrap:normal}.nowrap{white-space:nowrap}
@media(max-width:800px){.post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-heading{padding:2rem 20px 1rem}.content{padding:0 20px}.post-grid,.term-menu,.pagination,.post-navigation{padding-inline:20px}.content .alignleft,.content .alignright{float:none;display:block;margin:1rem auto}.content .panel-grid{display:block}.content .panel-grid-cell{width:100%;margin-bottom:1.5rem}.map iframe,.content iframe[src*="https://www.google.com/maps/embed"]{height:300px!important}}
@media(max-width:540px){.post-grid{grid-template-columns:1fr}.hours th,.hours td{padding:12px 10px;font-size:14px}.post-navigation{flex-direction:column;gap:1rem}.post-navigation a{max-width:100%}.content h1,.page-heading h1{font-size:27px}.content table{font-size:14px}.content th,.content td{padding:8px 5px}.sport-copy h2{font-size:23px}}

/* スマホのメニューは三本線のボタンで開く（2026-11-08 代表「スマホの時にメニューはハンバーガーにして」） */
.nav-toggle{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.nav-button{display:none}
@media(max-width:800px){
.nav-button{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:48px;height:48px;flex:none;cursor:pointer;border:1px solid #d5e5e9;background:#fff}
.nav-button span{display:block;width:22px;height:2px;background:#427d89;transition:transform .2s,opacity .2s}
.nav-button b{font-size:9px;line-height:1;letter-spacing:.08em;color:#427d89}
.main-nav{display:none!important}
.nav-toggle:checked~.main-nav{display:grid!important;grid-template-columns:1fr;gap:0;padding:0 0 8px;font-size:14px}
.nav-toggle:checked~.main-nav a{display:block;padding:14px 4px;border-bottom:1px solid #d5e5e9;line-height:1.5}
.nav-toggle:checked~.header-top .nav-button span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle:checked~.header-top .nav-button span:nth-child(2){opacity:0}
.nav-toggle:checked~.header-top .nav-button span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.nav-toggle:focus-visible~.header-top .nav-button{outline:3px solid #427d89;outline-offset:2px}
.header-contact{margin-left:auto}
}
.header-phone{white-space:nowrap}
@media(max-width:540px){.header-top .logo{width:150px;height:40px}.header-top{gap:8px}.header-phone{font-size:15px}}
.staff a{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line);background:var(--tint);padding:26px 32px}.staff h2{position:static;background:none;padding:0;font-size:24px}.staff a:after{content:'↗';color:var(--accent);font-size:20px}@media(max-width:540px){.staff a{padding:20px 20px}.staff h2{font-size:20px}}
/* スマホ A案（2026-11-08 代表「A 写真から始める」） */.mobile-bar{display:none}@media(max-width:540px){body{padding-bottom:calc(54px + env(safe-area-inset-bottom))}.header-contact{display:none}.header-top{padding-block:10px}.header-top .logo{width:200px;height:54px}.nav-button{width:46px;height:46px}.hero{display:flex;flex-direction:column;margin-block:0 28px}.hero:before{display:none}.hero-photo{order:-1;width:calc(100% + 40px);max-width:none;margin-inline:-20px;height:260px}.hero-copy{padding:24px 0 0;margin:0;background:none}.hero h1{font-size:26px}.hero-copy .button{display:flex;width:100%;margin-top:20px;padding:14px 16px;font-size:15px}.portals{margin-block:28px 48px;gap:0}.portal{grid-template-columns:84px 1fr;gap:16px;padding-block:12px;border-bottom:1px solid var(--line)}.portal h2{font-size:17px}.portal h2:after{display:block;content:'›';float:right;font-size:24px;line-height:1;color:var(--accent)}.mobile-bar{display:grid;grid-template-columns:1fr 1fr;position:fixed;z-index:20;left:0;right:0;bottom:0;background:#fff;box-shadow:0 -3px 15px #0002;padding-bottom:env(safe-area-inset-bottom)}.mobile-bar a{display:flex;align-items:center;justify-content:center;min-height:54px;padding:0 8px;font-weight:700;letter-spacing:.08em;font-size:15px;text-decoration:none}.mobile-bar .mobile-call{position:static;background:var(--accent);color:#fff;box-shadow:none}.mobile-bar .mobile-mail{color:var(--accent);background:#fff}}

/* 第1便: body tables grow with content, independently of legacy dimensions. */
.content table{display:table!important;width:100%!important;height:auto!important;overflow:visible!important;table-layout:fixed}
.content table :is(thead,tbody,tfoot,tr,th,td,colgroup,col){height:auto!important;max-height:none!important;overflow:visible!important}
.content table :is(th,td,colgroup,col){width:auto!important;min-width:0!important}
.content table th,.content table td{white-space:normal;word-break:normal;overflow-wrap:normal;line-break:strict}
.content .table-word{white-space:nowrap}
.article-page .page-heading,.article-page .post-navigation{max-width:820px}
.archive-page .page-heading{max-width:1120px}
@media(min-width:801px){.nav-toggle{display:none}}
/* スマホでも表の形を保つ（縦一列に並べると競技名と症例の対応が分からなくなるため・2026-11-08 Claude 実測） */
@media(max-width:540px){.content table th,.content table td{padding:8px 5px;font-size:13px}.content table tr:has(>:nth-child(3))>*{padding:6px 3px;font-size:11px}}

/* 第2便: heading sizes and independent touch targets; body prose links stay inline. */
.content h5,.content h6{font-size:16px!important;line-height:1.8;margin:1em 0 .5em;word-break:normal;overflow-wrap:normal;line-break:strict}
.content a[href="tel:0862395353"]{white-space:nowrap}
.access-details .hours{margin-bottom:16px}
/* Move the card padding onto its sole link, including the entire inner frame. */
.content .embedded-card{padding:0}
.content .embedded-card p{margin:0}
.content .embedded-card a{display:flex;align-items:center;min-height:44px;padding:1rem 1.25rem}
@media(max-width:540px){
.footer-nav a,footer>a[href="#top"],.access .button,.map>a,.access-map-link,.access .social a,.post-card .meta a,.article-page .meta a,.tags a,.term-menu a,.post-navigation a,.standalone-links>a,.pagination a{display:inline-flex;align-items:center;min-height:44px;max-width:100%;padding-block:10px}
.term-menu summary{min-height:44px;padding-block:10px}
}

/* 第2便の後の Claude 実測による直し: スマホの表の中の見出しはセルの文字の大きさに合わせる（バスケットボール が枠からはみ出したため）／フッター住所の電話番号も押せる高さに */
@media(max-width:540px){.content table h5,.content table h6{font-size:inherit!important;margin:0}.address a[href^="tel:"]{display:inline-flex;align-items:center;min-height:44px}}

/* 2026-11-08 代表ご指摘: トップの見出しは「歩いても痛くない」／「「膝」を取り戻す整骨院」で改行／スマホでフッターのメニューが左端に付くので左右に余白 */
.hero h1 span{display:block}
@media(max-width:540px){.footer-nav{width:calc(100% - 40px)}}
/* 2026-11-08 代表「見出しはセンター寄りにして」 */
.hero h1{text-align:center}
/* 2026-11-08 代表「フッターのロゴは透過させて」（画像は元から透過。白は CSS の背景） */
.address .logo,.address .brand{background:transparent}
/* 2026-11-08 代表「お問い合わせは消す」: スマホ下の帯は「電話する」だけ */
.mobile-bar{grid-template-columns:1fr}

/* Staff page only: proposal 1 palette, modest uncropped photos and readable prose. */
.staff-profiles .staff-profile{display:grid;grid-template-columns:300px minmax(0,1fr);grid-template-areas:"portrait name" "portrait copy";grid-template-rows:auto 1fr;gap:20px 48px;align-items:start;padding-block:36px 48px;border-top:1px solid var(--line);background:var(--paper)}
.staff-profiles .staff-profile+.staff-profile{margin-top:12px}
.staff-profiles .staff-name{grid-area:name;min-width:0;margin:0;padding-left:18px;border-left:2px solid var(--accent);color:var(--ink);font-size:26px;line-height:1.6;white-space:nowrap;word-break:keep-all;overflow-wrap:normal}
.staff-profiles .staff-name wbr{display:none}
.staff-profiles .staff-portrait{grid-area:portrait;width:100%;max-width:300px;min-width:0;margin:0;justify-self:center;background:var(--tint)}
.staff-profiles .staff-portrait img{width:100%;height:auto;object-fit:contain;margin:0}
.staff-profiles .staff-copy{grid-area:copy;min-width:0;line-height:1.9;word-break:normal;line-break:strict;overflow-wrap:normal}
.staff-profiles .staff-copy>p{margin:0 0 1.25em}
.staff-profiles .staff-copy>p:last-child{margin-bottom:0}
.staff-profiles .staff-scene{width:100%;max-width:480px;margin:28px auto}
.staff-profiles .staff-scene img{width:100%;height:auto;object-fit:contain;margin:0}
.staff-profiles .staff-phrase{white-space:nowrap}
.staff-profiles .staff-link{display:block;min-height:44px;max-width:100%;padding:12px 16px;border:1px solid var(--accent);background:var(--tint);color:var(--accent);font-weight:700;line-height:1.8;text-decoration:underline;text-underline-offset:4px}
.staff-profiles .staff-link:hover{background:var(--paper)}
.staff-profiles .staff-link:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
@media(max-width:800px){
.staff-profiles .staff-profile{grid-template-columns:minmax(0,1fr);grid-template-areas:"name" "portrait" "copy";grid-template-rows:auto;gap:24px;padding-block:28px 36px}
.staff-profiles .staff-name{font-size:22px;padding-left:14px}
.staff-profiles .staff-portrait{width:64vw;max-width:300px}
.staff-profiles .staff-scene{margin-block:24px}
}
/* 2026-11-08 Claude: スタッフ紹介の元の改行（語と語の間だけ）。PC は改行、スマホは自然な折り返しに任せて半角ほど空ける */
.staff-profiles .staff-gap{display:block}
@media(max-width:800px){.staff-profiles .staff-gap{display:inline-block;width:.5em}}
