/* リハノート共通デザイン v10（2026-10-01）。青を基調色にする。content/site-shell.mjs と対応。
   旧WordPress（SWELL）・portal.css・magazine.css・editorial.css の後に読み込み、色と部品をそろえる。 */
body.rs-site.rp-site{
  --rs-navy:#0b2e4f;--rs-head:#0a5f9e;--rs-blue:#0870ae;--rs-blue-d:#075887;--rs-blue-l:#3d9ad6;
  --rs-sky:#e8f3fb;--rs-sky-2:#f3f8fc;--rs-line:#d6e5f0;--rs-ink:#15324a;--rs-sub:#4c6476;--rs-text:#26394a;
  --rs-shadow:0 1px 2px rgba(14,44,68,.05),0 10px 28px rgba(14,44,68,.07);
  --rs-shadow-h:0 2px 4px rgba(14,44,68,.07),0 18px 40px rgba(14,44,68,.12);
  --color_main:#0870ae;--color_htag:#0870ae;--color_link:#0870ae;--color_bg:#f3f8fc;--color_content_bg:#fff;
  --color_header_bg:#0a5f9e;--color_header_text:#fff;--color_footer_bg:#0b2e4f;--color_footer_text:#fff;
  --color_gradient1:#e8f3fb;--color_gradient2:#bfe0f5;--color_list_check:#0870ae;--color_deep02:#0870ae;
  --clinical-ink:#15324a;--clinical-muted:#4c6476;--clinical-green:#0870ae;--clinical-green-dark:#075887;--clinical-line:#d6e5f0;--clinical-paper:#f3f8fc;
  --pagefind-ui-primary:#0870ae;--pagefind-ui-text:#15324a;--pagefind-ui-border:#cddfeb;--pagefind-ui-tag:#e8f3fb;--pagefind-ui-border-radius:12px;--pagefind-ui-border-width:2px;
  background:var(--rs-sky-2);color:var(--rs-text);
  font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP",Meiryo,sans-serif;font-feature-settings:"palt" 1}
.rs-site .rp-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.rs-site a{color:var(--rs-blue)}

/* ヘッダー */
body.rs-site .l-header.rs-header{position:relative;z-index:100;margin:0;padding:0;border:0;box-shadow:none;background:linear-gradient(90deg,#0a5891 0%,#0a64a7 100%);color:#fff}
.rs-header__inner{display:flex;align-items:center;gap:24px;box-sizing:border-box;max-width:1240px;min-height:70px;margin:0 auto;padding:12px 28px}
.rs-site .rs-logo{display:flex;align-items:center;gap:12px;flex:none;color:#fff!important;text-decoration:none!important}
.rs-site .rs-logo .rp-brand-mark,.rs-footer .rp-brand-mark,.rs-spmenu__head .rp-brand-mark{box-sizing:border-box;padding:0;border-radius:0;background:none;box-shadow:none;filter:drop-shadow(0 2px 5px rgba(0,0,0,.18))}
.rs-site .rs-logo .rp-brand-mark{width:42px;height:42px}
.rs-logo__text{display:flex;flex-direction:column;line-height:1.2}
.rs-logo__name{font-size:1.32rem;font-weight:800;letter-spacing:.06em}
.rs-logo__tag{margin-top:4px;color:#d6ebf9;font-size:.68rem;font-weight:700;letter-spacing:.05em}
.rs-nav{margin-left:auto}
.rs-nav ul{display:flex;gap:2px;margin:0;padding:0;list-style:none}
.rs-nav li{margin:0;padding:0}
.rs-site .rs-nav a{display:block;padding:9px 12px;border-radius:999px;color:#fff!important;font-size:.88rem;font-weight:700;line-height:1.4;white-space:nowrap;text-decoration:none!important;transition:background .18s}
.rs-site .rs-nav a:hover{background:rgba(255,255,255,.15)}
.rs-site .rs-nav a[aria-current=page]{background:#fff;color:var(--rs-blue-d)!important}
.rs-actions{display:flex;gap:8px;flex:none}
.rs-site .rs-action{display:inline-flex;align-items:center;gap:6px;box-sizing:border-box;height:40px;margin:0;padding:0 15px;border:1px solid rgba(255,255,255,.5);border-radius:999px;background:rgba(255,255,255,.1);color:#fff!important;font:inherit;font-size:.86rem;font-weight:700;line-height:1;cursor:pointer;text-decoration:none!important;transition:background .18s}
.rs-site .rs-action:hover{background:rgba(255,255,255,.22)}
.rs-action svg{width:18px;height:18px}
.rs-site .rs-action--menu{display:none}

/* スマホメニュー（開閉は既存スクリプトの data-spmenu） */
.rs-spmenu-wrap .p-spMenu__inner.rs-spmenu{display:flex;flex-direction:column;box-sizing:border-box;width:min(86vw,360px);max-width:none;height:100%;padding:0 0 32px;background:#fff;color:var(--rs-ink);overflow-y:auto}
.rs-spmenu-wrap .rs-spmenu::before,.rs-spmenu-wrap .rs-spmenu::after{display:none!important}
.rs-spmenu>*{position:relative;z-index:1}
/* 閉じているメニューを読み上げ・フォーカスの対象から外す */
html:not([data-spmenu=opened]) .rs-spmenu-wrap{visibility:hidden;transition:visibility 0s .4s}
html[data-spmenu=opened] .rs-spmenu-wrap{visibility:visible}
.rs-spmenu__head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px 12px 16px;background:var(--rs-head);color:#fff;font-weight:800;letter-spacing:.06em}
.rs-spmenu__head>span{display:flex;align-items:center;gap:10px}
.rs-spmenu__head .rp-brand-mark{width:30px;height:30px}
.rs-spmenu__close{display:grid;place-items:center;width:42px;height:42px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.15);color:#fff;cursor:pointer}
.rs-spmenu__search{display:flex;margin:16px;border:2px solid #cddfeb;border-radius:12px;overflow:hidden;background:#fff}
.rs-spmenu__search:focus-within{border-color:var(--rs-blue)}
.rs-spmenu__search input{flex:1;min-width:0;margin:0;padding:11px 12px;border:0;outline:0;background:transparent;color:var(--rs-ink);font:inherit;font-size:16px}
.rs-spmenu__search button{display:grid;place-items:center;width:50px;margin:0;padding:0;border:0;background:var(--rs-blue);color:#fff;cursor:pointer}
.rs-spmenu__label{margin:14px 18px 4px;color:var(--rs-sub);font-size:.74rem;font-weight:800;letter-spacing:.12em}
.rs-spmenu ul{margin:0;padding:0 10px;list-style:none}
.rs-spmenu li{margin:0;padding:0}
.rs-site .rs-spmenu li a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 8px;border-bottom:1px solid #e4eef5;color:var(--rs-ink)!important;font-size:.95rem;font-weight:700;text-decoration:none!important}
.rs-spmenu li a svg{width:16px;height:16px;color:var(--rs-blue)}
.rs-site .rs-spmenu li a[aria-current=page]{color:var(--rs-blue)!important}

/* パンくず */
.rs-site #breadcrumb{margin:0;padding:16px 0 0;border:0;background:transparent}
.rs-site #breadcrumb .p-breadcrumb__list{color:var(--rs-sub);font-size:.78rem}
.rs-site #breadcrumb a{color:var(--rs-blue)}

/* 本文を白い面に載せる（トップ・記事一覧以外） */
body.rs-site:not(.rh-home):not(.rp-directory-page) #main_content>.l-mainContent__inner{box-sizing:border-box;padding:40px 48px 48px;border:1px solid var(--rs-line);border-radius:20px;background:#fff;box-shadow:0 1px 2px rgba(14,44,68,.04)}
body.rs-site.rp-site #main_content{background:transparent}
body.rs-site.rp-reading #content{max-width:900px;padding:18px 20px 0}
body.rs-site.rp-reading #breadcrumb{max-width:900px}
.rs-site .l-content{margin-bottom:0}

/* 記事の見出し部 */
.rs-site .p-articleHead.rs-article-head{display:block;margin:0 0 26px;padding:0;border:0}
.rs-site .rs-chip{display:inline-flex;align-items:center;padding:4px 13px;border-radius:999px;background:var(--rs-sky);color:var(--rs-blue-d)!important;font-size:.78rem;font-weight:800;line-height:1.6;text-decoration:none!important;white-space:nowrap}
.rs-site a.rs-chip:hover{background:#d4e9f7}
.rs-site .rs-chip--sm{width:max-content;max-width:100%;padding:2px 10px;font-size:.72rem;overflow:hidden;text-overflow:ellipsis}
.rs-site .rs-article-head .c-postTitle__ttl{margin:14px 0 12px;padding:0;border:0;background:none;color:var(--rs-navy);font-size:clamp(1.45rem,3vw,1.95rem);font-weight:800;line-height:1.5;letter-spacing:.02em;text-wrap:pretty}
.rs-article-meta{display:flex;flex-wrap:wrap;gap:4px 16px;margin:0;color:var(--rs-sub);font-size:.82rem;line-height:1.7}
.rs-site .p-articleThumb{margin:0 0 28px}
.rs-site .p-articleThumb img{display:block;width:100%;height:auto;border-radius:14px;box-shadow:none}
.rs-site .c-prNotation{margin:0 0 22px;padding:8px 14px;border-radius:10px;background:var(--rs-sky-2)!important;color:var(--rs-sub);font-size:.78rem}
.rs-site.rp-reading .p-articleFoot{display:none}

/* 本文 */
.rs-site .post_content{color:var(--rs-text)}
.rs-site .post_content a{color:var(--rs-blue);text-underline-offset:3px}
.rs-site .post_content>h2,.rs-site .post_content>section:not(.rn-summary):not(.rn-feedback)>h2,.rs-site.rn-editorial-article .post_content>section:not(.rn-summary):not(.rn-feedback)>h2{
  margin:3.2em 0 1.2em!important;padding:.72em 1em .72em 1.05em!important;border:0!important;border-left:5px solid var(--rs-blue)!important;border-radius:4px 12px 12px 4px!important;
  background:var(--rs-sky)!important;color:var(--rs-navy)!important;font-size:1.3em;font-weight:800;line-height:1.55!important;box-shadow:none!important}
.rs-site .post_content>h2::before,.rs-site .post_content>h2::after,.rs-site .post_content>section>h2::before,.rs-site .post_content>section>h2::after{display:none!important}
.rs-site .post_content>h3,.rs-site .post_content>section>h3,.rs-site .post_content .rn-note-section h3{position:relative;margin:2.4em 0 1em!important;padding:0 0 .5em!important;border:0!important;border-bottom:2px solid var(--rs-line)!important;background:none!important;color:var(--rs-navy)!important;font-size:1.14em;font-weight:800;line-height:1.6}
.rs-site .post_content>h3::before,.rs-site .post_content>section>h3::before,.rs-site .post_content .rn-note-section h3::before{content:""!important;display:block!important;position:absolute!important;top:auto!important;left:0!important;bottom:-2px!important;width:2.6em!important;height:2px!important;border:0!important;background:var(--rs-blue)!important;opacity:1!important}
.rs-site .post_content>h3::after,.rs-site .post_content>section>h3::after{display:none!important}
.rs-site .post_content>h4{padding:0 0 0 .7em;border-left:3px solid var(--rs-blue-l);color:var(--rs-navy)}
.rs-site .post_content thead th,.rs-site .rn-table-scroll thead th{background:var(--rs-blue)!important;color:#fff!important}
.rs-site .post_content tbody th{background:var(--rs-sky-2)}
.rs-site .post_content :is(th,td){border-color:var(--rs-line)}
.rs-site .post_content blockquote{border-color:var(--rs-line);background:var(--rs-sky-2)}
/* 旧記事のSWELL部品（枠・吹き出し・ボタン）も青系にそろえる */
body.rs-site.rp-site{--border01:solid 2px #d6e5f0;--border02:double 4px #b9d6ea;--border04:solid 4px #e8f3fb;--color_pale02:#f3f8fc;--color_pale04:#f3f8fc}
.rs-site .post_content .has-border{border-radius:12px}
.rs-site [data-col=yellow] .c-balloon__text{background:#eaf4fb;border-color:#bfdcf0}
.rs-site [data-col=yellow] .c-balloon__before{border-right-color:#eaf4fb}
.rs-site .swell-block-button{--the-btn-color:#0870ae;--the-btn-color2:#3d9ad6;--the-solid-shadow:#075887}
/* ボタンの文字は白。本文リンクの青（.post_content a）がボタンにも当たり、青地に青文字で読めなくなっていた（2026-10-14 に本番で確認）。 */
.rs-site .post_content .swell-block-button:is(.is-style-btn_normal,.is-style-btn_shiny,.is-style-btn_solid) a{color:#fff!important;text-decoration:none!important}
.rs-site .cap_box_ttl{background:var(--rs-blue);color:#fff}
.rs-site .cap_box_content{border-color:var(--rs-blue)}

/* 論文・臨床ノートの部品 */
.rs-site.rp-reading .post_content .rn-summary{margin:8px 0 28px;padding:22px 24px;border:1px solid #cfe3f1;border-radius:16px;background:linear-gradient(180deg,#f0f7fd 0%,#fff 100%)}
.rs-site .post_content .rn-summary h2{margin:0 0 8px!important;padding:0!important;border:0!important;background:none!important;color:var(--rs-blue-d)!important;font-size:1.05rem!important}
.rs-site .post_content .rn-summary ol{margin:0;padding:0;list-style:none;counter-reset:rs-sum}
.rs-site .post_content .rn-summary li{position:relative;margin:0;padding:9px 0 9px 40px;border-top:1px dashed #cfe0ec;counter-increment:rs-sum;font-weight:700;line-height:1.75}
.rs-site .post_content .rn-summary li:first-child{border-top:0}
.rs-site .post_content .rn-summary li::before{content:counter(rs-sum);position:absolute;left:0;top:10px;width:26px;height:26px;border-radius:50%;background:var(--rs-blue);color:#fff;font-size:.8rem;font-weight:800;line-height:26px;text-align:center}
.rs-site .rn-contents{margin:28px 0;padding:0!important;border:1px solid var(--rs-line)!important;border-radius:14px!important;background:var(--rs-sky-2)!important;overflow:hidden}
.rs-site .rn-contents summary{padding:14px 18px;color:var(--rs-navy);font-weight:800;cursor:pointer}
.rs-site .rn-contents[open] summary{border-bottom:1px solid var(--rs-line)}
.rs-site .rn-contents ol{margin:0;padding:12px 18px 16px 2.4em;background:#fff}
.rs-site .rn-contents a{color:var(--rs-ink)}
.rs-site .rn-contents a:hover{color:var(--rs-blue)}
.rs-site .rn-citations{border-left-color:#9cc8e6;color:var(--rs-sub)}
.rs-site .rn-table-scroll{border-color:var(--rs-line);border-radius:12px}
.rs-site .rn-provenance{border:1px solid var(--rs-line);background:var(--rs-sky-2);color:var(--rs-sub)}
.rs-site .rn-faq{border-bottom-color:var(--rs-line)}
.rs-site .rn-faq summary{color:var(--rs-navy)}
.rs-site .rn-feedback{border:1px solid #cfe3f1;border-radius:18px;background:linear-gradient(180deg,#eef6fc 0%,#f6fafd 100%)}
.rs-site .rn-feedback h2{color:var(--rs-navy)}
.rs-site .rn-feedback summary{border-color:#bcd6e8;background:#fff;color:var(--rs-blue-d)}
.rs-site .rn-feedback-consent input{accent-color:var(--rs-blue)}
.rs-site .rn-button{background:var(--rs-blue);border-radius:10px}
.rs-site .rn-button:hover{background:var(--rs-blue-d)}

/* 節の中の段落・見出し代わりのラベル・箇条書き */
.rs-site .rn-note-section>p{margin:0 0 1em}
.rs-site .rn-note-section>p.rn-label{margin:1.6em 0 .45em;padding-left:.7em;border-left:3px solid var(--rs-blue-l);color:var(--rs-navy);font-weight:800;line-height:1.5}
.rs-site .rn-note-section>.rn-list{margin:0 0 1.2em;padding-left:1.5em}
.rs-site .rn-note-section .rn-list li{margin:.3em 0;line-height:1.8}

/* 関連記事 */
.rs-site .rn-related.rs-related{margin:52px 0 0;padding:30px 0 0;border-top:1px solid var(--rs-line)}
.rs-site .rs-related h2{display:flex;align-items:center;gap:10px;margin:0 0 18px;padding:0;border:0;background:none;color:var(--rs-navy);font-size:1.25rem;font-weight:800;line-height:1.5}
.rs-site .rs-related h2::before{content:""!important;display:block!important;flex:none;width:6px;height:1.15em;border-radius:3px;background:var(--rs-blue)}
.rs-related__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.rs-site .rs-related__more{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:18px;padding:13px 16px;border-radius:12px;background:var(--rs-sky);color:var(--rs-blue-d)!important;font-weight:800;text-align:center;text-decoration:none!important;transition:background .18s}
.rs-site .rs-related__more:hover{background:#d4e9f7}
.rs-related__more svg{width:18px;height:18px}

/* 記事カード（関連記事） */
.rs-site .rs-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--rs-line);border-radius:14px;background:#fff;color:var(--rs-ink)!important;text-decoration:none!important;transition:transform .18s,box-shadow .18s,border-color .18s}
.rs-site .rs-card:hover{transform:translateY(-3px);border-color:transparent;box-shadow:var(--rs-shadow-h)}
.rs-card__img{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--rs-sky)}
.rs-card__img img{display:block;width:100%;height:100%;margin:0;object-fit:cover;transition:transform .35s}
.rs-card:hover .rs-card__img img{transform:scale(1.04)}
.rs-card__img--empty{display:grid;place-items:center}
.rs-site .rs-card__img--empty img{width:56px;height:56px;object-fit:contain;opacity:.55;transform:none!important}
.rs-card__body{display:flex;flex-direction:column;gap:8px;padding:12px 14px 16px}
.rs-card__title{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:.95rem;font-weight:800;line-height:1.6}
.rs-site .rs-card:hover .rs-card__title{color:var(--rs-blue)}

/* 記事一覧 */
body.rs-site.rp-directory-page #content{box-sizing:border-box;max-width:1160px;margin:0 auto;padding:20px 28px 0}
body.rs-site.rp-directory-page #main_content{max-width:none}
.rs-site .rp-directory{padding:4px 0 24px}
.rs-site .rp-directory header{padding:34px 36px 74px;border-radius:22px;background:linear-gradient(120deg,#0a5891 0%,#0870ae 55%,#1a8ccc 100%);color:#fff}
.rs-site .rp-directory header h1{margin:0 0 8px;padding:0;border:0;background:none;color:#fff;font-size:clamp(1.6rem,3vw,2.1rem);font-weight:800;letter-spacing:.04em}
.rs-site .rp-directory header p{margin:0;color:#eaf5fd}
.rs-site .rp-directory-tools{position:relative;margin:-48px 20px 32px;padding:20px 24px;border:1px solid var(--rs-line);border-radius:16px;background:#fff;box-shadow:var(--rs-shadow)}
.rs-site .rp-directory-tools label{color:var(--rs-navy)}
.rs-site .rp-directory-tools input{border:2px solid #cddfeb;border-radius:12px;color:var(--rs-ink)}
.rs-site .rp-directory-tools input:focus{border-color:var(--rs-blue);outline:0;box-shadow:0 0 0 4px #d9ecf8}
.rs-site .rp-directory-tools input::placeholder{color:#5f7486}
.rs-site .rp-directory-filters button{padding:8px 16px;border:1px solid #c3d9e9;border-radius:999px;background:#fff;color:var(--rs-blue-d);font-weight:700;transition:background .18s,border-color .18s}
.rs-site .rp-directory-filters button:hover{border-color:var(--rs-blue);background:var(--rs-sky-2)}
.rs-site .rp-directory-filters button[aria-pressed=true]{border-color:var(--rs-blue);background:var(--rs-blue);color:#fff}
.rs-site .rp-directory-count{color:var(--rs-sub)}
.rs-site .rp-directory .rp-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.rs-site .rp-directory .rp-card{border:1px solid var(--rs-line);border-radius:14px;box-shadow:none;transition:transform .18s,box-shadow .18s,border-color .18s}
.rs-site .rp-directory .rp-card:hover{transform:translateY(-3px);border-color:transparent;box-shadow:var(--rs-shadow-h)}
.rs-site .rp-directory .rp-card a{display:flex;flex-direction:column;height:100%;color:var(--rs-ink)}
.rs-site .rp-directory .rp-card a:hover{background:#fff;text-decoration:none}
.rs-site .rp-directory .rp-card img{background:var(--rs-sky)}
.rs-site .rp-directory .rp-card-body{padding:14px 16px 18px}
.rs-site .rp-directory .rp-card-meta{align-items:center;gap:6px 10px;margin:0 0 8px;color:var(--rs-sub);font-size:.76rem}
.rs-site .rp-directory .rp-card-meta span{padding:1px 10px;border-radius:999px;background:var(--rs-sky);color:var(--rs-blue-d);font-weight:800}
.rs-site .rp-directory .rp-card h3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0;color:var(--rs-ink);font-size:1rem;font-weight:800;line-height:1.6}
.rs-site .rp-directory .rp-card a:hover h3{color:var(--rs-blue)}
.rs-site .rp-directory-empty{padding:24px;border-radius:14px;background:#fff;text-align:center}

/* テーマ別ガイド（上肢・手指／ADL など） */
.rs-site .clinical-hub-header{padding:clamp(26px,5vw,46px)!important;border:0!important;border-radius:22px!important;background:linear-gradient(120deg,#0a5891 0%,#0870ae 55%,#1a8ccc 100%)!important;color:#fff}
.rs-site .clinical-hub-header h1,.rs-site .clinical-hub-header .c-pageTitle__main{margin:.2rem 0 .9rem;padding:0;border:0;color:#fff!important;font-size:clamp(1.7rem,4.2vw,2.6rem)}
.rs-site .clinical-hub-header .clinical-eyebrow{color:#d6ebf9!important}
.rs-site .clinical-hub-header>p:last-child{color:#eaf5fd!important}
.rs-site .clinical-hub-intro{border-color:var(--rs-line)!important;background:linear-gradient(180deg,#f0f7fd,#fff)!important}
.rs-site .clinical-hub-index{border-color:var(--rs-line);background:var(--rs-sky-2)}
.rs-site .clinical-hub-index strong{color:var(--rs-navy)}
.rs-site .clinical-section__heading h2{color:var(--rs-navy)!important}
.rs-site .clinical-eyebrow{color:var(--rs-blue)}
.rs-site .clinical-text-link{border-color:var(--rs-line);transition:transform .18s,box-shadow .18s,border-color .18s}
.rs-site .clinical-text-link:hover,.rs-site .clinical-text-link:focus-visible{border-color:transparent;background:#fff;box-shadow:var(--rs-shadow-h);transform:translateY(-2px)}
.rs-site .clinical-text-link strong{color:var(--rs-navy)}
.rs-site .clinical-caution{border:1px solid var(--rs-line);border-left:4px solid var(--rs-blue);background:var(--rs-sky-2);color:var(--rs-text)}
.rs-site .clinical-caution strong{color:var(--rs-navy)}
.rs-site .clinical-about{background:var(--rs-sky-2)}
.rs-site .clinical-resource{background:var(--rs-sky)}
.rs-site .clinical-link-policy{border-left-color:var(--rs-blue);background:var(--rs-sky-2)}
.rs-site .clinical-backlinks{border-top-color:var(--rs-line)}
.rs-site .rp-research-cards .rp-card{border-color:var(--rs-line);border-radius:14px}
.rs-site .rp-research-cards .rp-card h3{color:var(--rs-ink)!important}

/* 固定ページ・検索 */
body.rs-site .c-pageTitle{display:flow-root;margin:0 0 28px;padding:0;border:0;background:none}
body.rs-site .c-pageTitle .c-pageTitle__inner,body.rs-site .c-pageTitle__main{float:none;display:block;margin:0;padding:0 0 14px;border:0;border-bottom:3px solid var(--rs-sky);background:none;color:var(--rs-navy);font-size:clamp(1.5rem,3vw,1.9rem);font-weight:800;line-height:1.5}
.rs-site .c-pageTitle::before,.rs-site .c-pageTitle::after,.rs-site .c-pageTitle__inner::before,.rs-site .c-pageTitle__inner::after{display:none}
.rs-site .static-contact-form input[type=text],.rs-site .static-contact-form input[type=email],.rs-site .static-contact-form textarea{box-sizing:border-box;padding:12px;border:2px solid #cddfeb;border-radius:10px;background:#fff;font:inherit}
.rs-site .static-contact-form :is(input,textarea):focus{border-color:var(--rs-blue);outline:0;box-shadow:0 0 0 4px #d9ecf8}
.rs-site .static-contact-form [type=submit]{padding:12px 28px;border:0;border-radius:10px;background:var(--rs-blue);color:#fff;font:inherit;font-weight:700;cursor:pointer}
.rs-site .static-contact-form [type=submit]:hover{background:var(--rs-blue-d)}
.rs-site .post_content>p>a.swell-block-button__link{display:inline-flex;align-items:center;padding:12px 26px;border-radius:999px;background:var(--rs-blue);color:#fff!important;font-weight:700;text-decoration:none!important}
.rs-site .post_content>p>a.swell-block-button__link:hover{background:var(--rs-blue-d)}
.rs-site .c-fixBtn{border:0;background:var(--rs-blue);color:#fff;box-shadow:var(--rs-shadow)}

/* フッター */
body.rs-site .l-footer.rs-footer{margin:72px 0 0;padding:0;border:0;background:var(--rs-navy);color:#cfe2f1}
.rs-footer__inner{display:grid;grid-template-columns:1.5fr repeat(3,minmax(0,1fr));gap:32px;box-sizing:border-box;max-width:1160px;margin:0 auto;padding:54px 28px 38px}
.rs-site .rs-footer__logo{display:inline-flex;align-items:center;gap:10px;color:#fff!important;font-size:1.3rem;font-weight:800;letter-spacing:.06em;text-decoration:none!important}
.rs-site .rs-footer__logo .rp-brand-mark{width:38px;height:38px}
.rs-footer__brand p{margin:14px 0 18px;color:#bcd4e6;font-size:.86rem;line-height:1.9}
.rs-footer__sns{display:flex;gap:10px;margin:0;padding:0;list-style:none}
.rs-footer__sns li{margin:0;padding:0}
.rs-site .rs-footer__sns a{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:rgba(255,255,255,.08);color:#fff!important;transition:background .18s}
.rs-site .rs-footer__sns a:hover{background:rgba(255,255,255,.2)}
.rs-footer__title{margin:0 0 12px;color:#fff;font-size:.8rem;font-weight:800;letter-spacing:.14em}
.rs-footer__col ul{display:grid;gap:2px;margin:0;padding:0;list-style:none}
.rs-footer__col li{margin:0;padding:0}
.rs-site .rs-footer__col a{display:inline-block;padding:5px 0;color:#cfe2f1!important;font-size:.88rem;text-decoration:none!important}
.rs-site .rs-footer__col a:hover{color:#fff!important;text-decoration:underline!important;text-underline-offset:3px}
.rs-footer__bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 24px;box-sizing:border-box;max-width:1160px;margin:0 auto;padding:18px 28px 30px;border-top:1px solid rgba(255,255,255,.14)}
.rs-footer__bottom p,.rs-footer__bottom small{margin:0;color:#a9c6dc;font-size:.76rem;line-height:1.8}

/* フォーカス表示・動きを減らす設定 */
.rs-site :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--rs-blue);outline-offset:2px}
.rs-site :is(.rs-header,.rs-footer,.rs-spmenu__head) :focus-visible{outline-color:#fff}
@media (prefers-reduced-motion:reduce){.rs-site *{transition:none!important}.rs-site .rs-card:hover,.rs-site .rp-card:hover,.rs-site .clinical-text-link:hover{transform:none}.rs-card:hover .rs-card__img img{transform:none}}

@media (max-width:1080px){
  .rs-nav{display:none}
  .rs-actions{margin-left:auto}
  .rs-site .rs-action--menu{display:inline-flex}
  .rs-site .rp-directory .rp-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rs-footer__inner{grid-template-columns:repeat(3,minmax(0,1fr))}
  .rs-footer__brand{grid-column:1/-1}
}
@media (max-width:760px){
  .rs-header__inner{min-height:60px;gap:10px;padding:9px 16px}
  .rs-site .rs-logo{gap:10px}
  .rs-site .rs-logo .rp-brand-mark{width:36px;height:36px}
  .rs-logo__name{font-size:1.16rem}
  .rs-logo__tag{display:none}
  .rs-site .rs-action{height:38px;padding:0 12px}
  body.rs-site.rp-reading #content{padding:0}
  .rs-site #breadcrumb{padding:12px 16px 0}
  .rs-site.rp-reading #breadcrumb{padding-bottom:10px}
  body.rs-site:not(.rh-home):not(.rp-directory-page) #main_content>.l-mainContent__inner{padding:26px 18px 34px;border-width:1px 0;border-radius:0}
  .rs-site .p-articleThumb{margin:0 0 22px}
  .rs-site .p-articleThumb img{border-radius:10px}
  .rs-site .post_content>h2,.rs-site .post_content>section:not(.rn-summary):not(.rn-feedback)>h2,.rs-site.rn-editorial-article .post_content>section:not(.rn-summary):not(.rn-feedback)>h2{font-size:1.18em;padding:.62em .8em .62em .85em!important}
  .rs-site.rp-reading .post_content .rn-summary{padding:18px 16px}
  .rs-related__grid{grid-template-columns:1fr;gap:10px}
  .rs-site .rs-related .rs-card{display:grid;grid-template-columns:118px minmax(0,1fr);align-items:center;gap:12px;padding:10px}
  .rs-related .rs-card__img{border-radius:9px}
  .rs-related .rs-card__body{gap:5px;padding:0}
  .rs-related .rs-card__title{font-size:.9rem}
  body.rs-site.rp-directory-page #content{padding:12px 16px 0}
  .rs-site .rp-directory header{padding:26px 22px 66px;border-radius:18px}
  .rs-site .rp-directory-tools{margin:-46px 10px 24px;padding:16px}
  .rs-site .rp-directory .rp-cards{grid-template-columns:1fr;gap:10px}
  .rs-site .rp-directory .rp-card a{display:grid;grid-template-columns:128px minmax(0,1fr);align-items:center;gap:12px;padding:10px}
  .rs-site .rp-directory .rp-card img{border-radius:9px}
  .rs-site .rp-directory .rp-card-body{padding:0}
  .rs-site .rp-directory .rp-card-meta{margin-bottom:5px;font-size:.7rem}
  .rs-site .rp-directory .rp-card h3{font-size:.9rem;line-height:1.55}
  .rs-footer__inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px;padding:40px 20px 28px}
  .rs-footer__bottom{padding:16px 20px 26px}
}
@media (max-width:360px){
  .rs-site .rs-action{width:40px;padding:0;justify-content:center}
  .rs-site .rs-action span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
}
.rs-site .rp-card-noimage{display:grid;place-items:center;aspect-ratio:16/9;background:var(--rs-sky)}
.rs-site .rp-card .rp-card-noimage img{width:56px;height:56px;aspect-ratio:auto;object-fit:contain;opacity:.55;background:none}
@media (max-width:760px){.rs-site .rp-directory .rp-card-noimage{border-radius:9px}}

/* 2026-10-13 スマートフォンの文字サイズの下限（RN31）。
   テーマは600px未満で、基準の文字サイズを画面幅の3.6%にしている（390px幅で約14px、360px幅で約13px、320px幅で約11.5px）。
   rem で決めた補助の表示（広告の表記、分類のチップ、読了目安など）が9〜11pxになっていたため、基準と本文に下限を置く。
   600px以上の表示は変えない。 */
@media (max-width:599px){
  html:root{--swl-fz--root:max(3.6vw,15px);--swl-fz--content:max(4vw,16.8px)}
  .rs-site .c-prNotation{font-size:max(.78rem,13px);color:var(--rs-text)}
  .rs-site .rs-chip{font-size:max(.78rem,12px)}
  .rs-site a.rs-chip{min-height:32px}
  .rs-site .rs-chip--sm{font-size:max(.72rem,12px)}
  .rs-article-meta{font-size:max(.82rem,12.5px)}
  .rs-site .rn-table-scroll:before{font-size:max(.7rem,12px)}
  .rs-site .c-balloon__iconName{font-size:11px}
  .rs-site .p-blogCard__title{font-size:max(3.6vw,14.5px)}
  .rs-site .p-blogCard__caption{font-size:12px}
  .rs-site .rn-overline{font-size:11px}
  .rh-tag,.rh-pill,.rh-eyebrow,.rh-stats dt,.clinical-eyebrow,.rs-site .c-postThumb__cat{font-size:max(.74rem,12px)}
  /* 入力欄は16px以上にする（16px未満だと、iPhoneで入力時に画面が拡大される）。 */
  .rs-site input[type="text"],.rs-site input[type="search"],.rs-site input[type="email"],.rs-site textarea,.rs-site select,.rh-search input{font-size:16px}
}
@media (max-width:350px){
  .rh-search>svg{display:none}
  .rh-search button{padding:12px 14px}
}
/* 記事カードの分類の表示。白地に対する文字色の比を上げ（約4.2→約7.6）、スマートフォンでは12px以上にする。 */
.rs-site .rp-card-meta span{color:var(--rs-blue-d)}
@media (max-width:599px){
  .rs-site .rp-card-meta,.rs-site .rp-directory .rp-card-meta,.rs-site .rp-feature-tag{font-size:12px}
}

/* 2026-10-14 旧形式の記事の冒頭に置く「この記事の要点」（RN09）。文面は config/article-leads.json。 */
.rs-site .post_content .rn-lead-box{margin:0 0 32px;padding:20px 22px;border:1px solid #cfe3f1;border-radius:16px;background:linear-gradient(180deg,#f0f7fd 0%,#fff 100%)}
.rs-site .post_content.has-lead-box{margin-top:22px}
.rs-site .post_content .rn-lead-box>*{margin:0}
.rs-site .post_content .rn-lead-box__title{color:var(--rs-blue-d);font-size:.95rem;font-weight:800;letter-spacing:.04em}
.rs-site .post_content .rn-lead-box__q{margin-top:4px;color:var(--rs-ink);font-size:1.14rem;font-weight:800;line-height:1.6}
.rs-site .post_content .rn-lead-box__points{margin-top:12px;padding-left:1.5em;list-style:decimal}
.rs-site .post_content .rn-lead-box__points li{margin:0;padding:5px 0;color:var(--rs-text);font-size:1rem;font-weight:600;line-height:1.75}
.rs-site .post_content .rn-lead-box__points li::marker{color:var(--rs-blue-d);font-weight:800}
.rs-site .post_content .rn-lead-box__caution{margin-top:12px;padding-top:12px;border-top:1px solid var(--rs-line);font-size:.98rem;line-height:1.75}
.rs-site .post_content .rn-lead-box__caution strong{display:block;color:var(--rs-ink);font-size:.9rem}
.rs-site .post_content .rn-lead-box__next{margin-top:8px;font-size:.98rem;line-height:1.75}
.rs-site .post_content .rn-lead-box__status{margin-top:10px;color:var(--rs-sub);font-size:max(.86rem,13px);line-height:1.7}
.rs-site .post_content .rn-lead-box__status a{margin-left:.5em;white-space:nowrap}
@media (max-width:599px){
  .rs-site .post_content .rn-lead-box{padding:18px 16px;border-radius:14px}
  .rs-site .post_content .rn-lead-box__points li{font-size:16px}
}

/* プライバシーポリシーとお問い合わせの案内（RN34）。 */
.rs-site .post_content .rn-contact-note{margin:0 0 28px;padding:16px 20px;border:1px solid #cfe3f1;border-radius:14px;background:var(--rs-sky-2);font-size:.94em;line-height:1.7}
.rs-site .post_content .rn-contact-note>*{margin:0}
.rs-site .post_content .rn-contact-note__title{color:var(--rs-ink);font-weight:800}
.rs-site .post_content .rn-contact-note ul{margin:6px 0 8px;padding-left:1.25em;list-style:disc}
.rs-site .post_content .rn-contact-note li{margin:4px 0;line-height:1.7}
.rs-site .post_content .rn-question-pointer{margin:1.2em 0;padding:12px 16px;border-left:4px solid var(--rs-blue);border-radius:0 10px 10px 0;background:var(--rs-sky-2)}
.rs-site .post_content.rn-policy>p:first-child{color:var(--rs-ink)}
.rs-site .post_content.rn-policy ul{padding-left:1.3em;list-style:disc}
.rs-site .post_content.rn-policy li{margin:4px 0;line-height:1.8}
.rs-site .post_content.rn-policy h3 a{color:inherit}
.rs-site .post_content.rn-policy .rn-policy-history{padding-left:0;list-style:none}
.rs-site .post_content.rn-policy .rn-policy-history time{display:inline-block;min-width:8.5em;color:var(--rs-blue-d);font-weight:700}
@media (max-width:599px){
  .rs-site .post_content .rn-contact-note{padding:14px 16px;font-size:15px}
  .rs-site .post_content.rn-policy .rn-policy-history time{display:block}
}

/* 広告リンクの表示と、商品を選ぶ前の注記（RN26）。 */
.rs-site .post_content .rn-ad-label{margin:1.4em 0 .5em;color:var(--rs-sub);font-size:.86em;line-height:1.7}
.rs-site .post_content .rn-ad-label__tag{display:inline-block;margin-right:.6em;padding:1px 8px;border:1px solid var(--rs-sub);border-radius:4px;color:var(--rs-text);font-size:.92em;font-weight:700;line-height:1.5}
.rs-site .post_content .rn-ad-label+.swell-block-button,.rs-site .post_content .rn-ad-label+p{margin-top:0}
.rs-site .post_content .rn-product-note{margin:1.6em 0 0;padding:16px 20px;border:1px solid var(--rs-line);border-radius:12px;background:#fff;font-size:.94em;line-height:1.75}
.rs-site .post_content .rn-product-note>*{margin:0}
.rs-site .post_content .rn-product-note__title{color:var(--rs-ink);font-weight:800}
.rs-site .post_content .rn-product-note dl{margin:8px 0 10px}
.rs-site .post_content .rn-product-note dt{margin:10px 0 2px;padding:0;border:0;background:none;color:var(--rs-blue-d);font-size:.92em;font-weight:800}
.rs-site .post_content .rn-product-note dd{margin:0;padding:0;border:0}
.rs-site .post_content .rn-product-note dd p{margin:0}
.rs-site .post_content .rn-product-note dd p+p{margin-top:4px}
.rs-site .post_content .rn-product-note__basis{padding-top:10px;border-top:1px dashed var(--rs-line);color:var(--rs-sub);font-size:.92em}
@media (max-width:599px){
  .rs-site .post_content .rn-ad-label{font-size:13px}
  .rs-site .post_content .rn-ad-label__tag{font-size:12px}
  .rs-site .post_content .rn-product-note{padding:14px 16px;font-size:15px}
  .rs-site .post_content .rn-product-note dt,.rs-site .post_content .rn-product-note__basis{font-size:13.5px}
}
