/* EmDash（Portable Text）の出力を style.css の記事デザインに合わせる補助スタイル。
   本体のデザインは style.css。ここは CMS 由来の素の HTML（h2 / ul / blockquote）への対応だけ。 */
.prose{counter-reset:sec}
.prose>h2{counter-increment:sec;margin-top:60px;scroll-margin-top:110px}
.prose>h2:first-child{margin-top:0}
.prose>h2::before{content:"0" counter(sec);flex-shrink:0;font-family:var(--mono);font-size:12px;font-weight:700;color:#fff;background:var(--teal);padding:4px 8px;border-radius:2px;letter-spacing:.06em;position:relative;top:-3px}
.prose>ul{list-style:none;margin:6px 0 28px;padding:22px 26px;background:#fff;border:1px solid var(--line);border-radius:var(--r);display:grid;gap:10px}
.prose>ul>li{display:flex;gap:12px;font-size:14px;font-weight:600;line-height:1.7}
.prose>ul>li::before{content:'✓';flex-shrink:0;width:20px;height:20px;display:grid;place-items:center;background:var(--mint);color:var(--teal);font-size:11px;border-radius:2px;margin-top:3px}
.prose>ol{margin:6px 0 28px;padding-left:1.4em;line-height:2}
.prose>blockquote{position:relative;margin:6px 0 28px;padding:22px 24px 20px;background:#fff4ee;border-left:3px solid var(--accent);border-radius:2px}
.prose>blockquote::before{content:"POINT";font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.14em;color:#b15a36;display:block;margin-bottom:6px}
.prose>blockquote p{margin:0;font-size:14px;font-weight:600;line-height:1.9}
.prose a{color:var(--teal);text-decoration:underline;text-underline-offset:3px}
.prose img{border-radius:var(--r);margin:6px 0 28px}
.prose pre{background:var(--dark);color:#e2ece9;padding:20px;border-radius:var(--r);overflow:auto;font-size:13px}
.prose code{font-family:var(--mono)}
/* CMS 固定ページ（WordPress から移行したページ用） */
.cms-page .prose{max-width:760px}
@media (max-width:760px){
.prose>h2::before{font-size:10px;top:-2px}
.prose>ul{padding:18px}
.prose>ul>li,.prose>blockquote p{font-size:13px}
}
/* お問い合わせフォーム：送信対応で追加した要素 */
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.cf-turnstile{margin:6px 0 18px}
.form-error{color:#b15a36;background:#fff4ee;border-left:3px solid var(--accent);padding:12px 16px;border-radius:2px;font-size:13px;font-weight:600;margin:0 0 16px}
#contact-result a{color:var(--teal);text-decoration:underline;text-underline-offset:3px}
[hidden]{display:none!important}
