.cms-blocks ul.cms-list-has-note, .cms-blocks ol.cms-list-has-note { margin-bottom: 6px; }
.cms-blocks .cms-list-note { margin-top: 6px; }
/* 記事・FAQの共通ブロック */
.cms-list-item-title { display: block; font-weight: 700; }
.cms-blocks .cms-list-item-note, .cms-blocks .cms-list-note { margin-top: 8px; color: #656b68; font-size: .9em; font-weight: 400; line-height: 1.85; }
.cms-blocks { overflow-wrap: anywhere; }
.cms-blocks > :first-child { margin-top: 0; }
.cms-blocks > :last-child { margin-bottom: 0; }
.cms-blocks p { line-height: 1.9; }
.cms-blocks h2 { margin: 2.2em 0 .75em; font-size: clamp(21px,2vw,26px); line-height: 1.5; }
.cms-blocks ul { padding-left: 1.3em; margin-block: 1.1em; }
.cms-blocks ul li { padding-left: .2em; margin-block: .6em; }
.cms-blocks ul li::marker { color: #f47d30; }
.cms-blocks .cms-numbered-list { list-style: none; padding: 0; margin-block: 1.5em; counter-reset: cms-step; display: grid; gap: 24px; }
.cms-blocks .cms-numbered-list li { counter-increment: cms-step; position: relative; padding: 5px 0 5px 58px; margin: 0; min-height: 40px; line-height: 1.75; }
.cms-blocks .cms-numbered-list li::before { content: counter(cms-step); position: absolute; left: 0; top: 0; width: 40px; height: 40px; display: grid; place-items: center; border-radius: 50%; background: #fff1e7; color: #f47d30; font: 700 16px/1 Arial,sans-serif; }
.cms-blocks .cms-image { margin: 2em 0; }
.cms-blocks .cms-image img { display: block; width: 100%; height: auto; border-radius: 16px; }
.cms-blocks .cms-link { color: #93400d; text-underline-offset: .2em; }
.cms-blocks .cms-link:focus-visible { outline: 2px solid #f47d30; outline-offset: 4px; }
.cms-unavailable { margin-block: 40px; color: #656b68; }
@media(max-width:767px) {
 .cms-blocks .cms-numbered-list { gap: 16px; }
 .cms-blocks .cms-numbered-list li { padding-left: 46px; min-height: 34px; }
 .cms-blocks .cms-numbered-list li::before { width: 32px; height: 32px; font-size: 14px; }
}
