/* 選定済みの本文に適用する既定の装飾。 */
body.theme-b:not(.page-about) .services .svc-group > h3.group, body.theme-b:not(.page-about) #succession .inheritance-section > h3 { font-size: clamp(21px, 2.2vw, 25px); font-weight: 700; line-height: 1.4; letter-spacing: 0.03em; color: var(--navy); margin-bottom: 0.95em; }
body.theme-b:not(.page-about) #succession .inheritance-section > h3 { display: flex; gap: 0.55em; }
body.theme-b:not(.page-about) .services .svc-group + .svc-group { margin-top: 64px; }
body.theme-b:not(.page-about) #succession .sec-title + .inheritance-section + .inheritance-section { margin-top: 72px; }
body.theme-b:not(.page-about) #succession .succession-content .scn-h { position: relative; font-size: clamp(19px, 1.75vw, 21px); font-weight: 700; line-height: 1.4; letter-spacing: 0.04em; color: var(--navy); padding-top: 0px; margin-bottom: var(--gap-row); }
body.theme-b:not(.page-about) #succession .succession-content .scn-h::before { content: none; }
body.theme-b:not(.page-about) #succession .succession-content > * + .scn-h { margin-top: var(--gap-part); }
body.theme-b:not(.page-about) #succession .succession-content .scn-lead { font-size: clamp(17px, 1.6vw, 19px); line-height: 1.75; color: var(--navy); margin-bottom: var(--gap-part); }
body.theme-b:not(.page-about) #succession .succession-content :is(ul, ol) { list-style: none; margin: 0px; padding: 0px; }
body.theme-b:not(.page-about) #succession .succession-content .scn-sub { font-size: var(--fs-lg); font-weight: 400; letter-spacing: 0.08em; color: var(--muted); margin-bottom: var(--gap-tight); }
body.theme-b:not(.page-about) #succession .succession-content .scn-no { display: inline-block; flex-shrink: 0; width: fit-content; padding: 2px var(--space-3); background: var(--indigo); border-radius: var(--radius-pill); color: var(--surface); font-size: var(--fs-base); font-weight: 700; line-height: 1.5; letter-spacing: 0.06em; font-variant-numeric: tabular-nums; }
body.theme-b:not(.page-about) #succession .succession-content .scn-items { display: grid; gap: var(--gap-tight); }
body.theme-b:not(.page-about) #succession .succession-content .scn-items > li { display: grid; grid-template-columns: 1.5em minmax(0px, 1fr); font-size: var(--fs-base); line-height: var(--lh-base); }
body.theme-b:not(.page-about) #succession .succession-content .scn-items > li.scn-plain { grid-template-columns: minmax(0px, 1fr); }
#succession .scn-ways { display: grid; gap: var(--gap-row); }
#succession .scn-way { background: var(--surface); border-right-color: ; border-right-style: ; border-right-width: ; border-bottom-color: ; border-bottom-style: ; border-bottom-width: ; border-left-color: ; border-left-style: ; border-left-width: ; border-image-source: ; border-image-slice: ; border-image-width: ; border-image-outset: ; border-image-repeat: ; border-top: 2px solid var(--navy); border-radius: var(--radius-sm); padding: var(--space-5); }
#succession .scn-way-head { display: flex; align-items: center; gap: var(--space-2h); }
#succession .scn-way-name { font-size: clamp(17px, 1.6vw, 19px); color: var(--navy); }
#succession .scn-facts { display: grid; align-content: start; gap: var(--gap-tight); background: none; border: 0px; border-radius: 0px; padding: 0px; }
#succession .scn-facts > div { display: block; gap: 0px; padding: 0px; border: 0px; font-size: inherit; letter-spacing: inherit; }
#succession .scn-facts dt { font-size: var(--fs-lg); line-height: 1.5; letter-spacing: 0.08em; color: var(--muted); }
#succession .scn-facts dd { font-size: var(--fs-base-plus); line-height: var(--lh-tight); color: var(--navy); }
@media (min-width: 961px) {
#succession .scn-ways { grid-template-columns: repeat(3, minmax(0px, 1fr)); grid-template-rows: repeat(4, auto); column-gap: var(--gap-row); row-gap: 0px; }
#succession .scn-way { grid-row: span 4; }
@supports (grid-template-rows: subgrid) {
#succession .scn-way { display: grid; grid-template-rows: subgrid; row-gap: var(--gap-tight); align-content: start; }
#succession .scn-facts { grid-row: span 2; grid-template-rows: subgrid; }
}
}
@media (max-width: 960px) {
#succession .scn-way { display: grid; grid-template-columns: minmax(0px, 11em) minmax(0px, 1fr) minmax(0px, 1.2fr); gap: var(--gap-tight) var(--gap-row); align-items: start; }
#succession .scn-way-head { flex-direction: column; align-items: flex-start; gap: var(--gap-tight); }
}
@media (max-width: 640px) {
#succession .scn-way { display: block; }
#succession .scn-way-head { flex-direction: row; align-items: center; }
#succession .scn-way > * + * { margin-top: var(--gap-tight); }
}
#succession .scn-steps { display: grid; gap: var(--gap-row); }
#succession .scn-steps > li { position: relative; display: flex; align-items: center; justify-content: center; gap: var(--space-3); padding: var(--gap-row) var(--space-4b); background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-sm); }
#succession .scn-step-name { font-size: var(--fs-2xl); line-height: var(--lh-tight); color: var(--navy); }
#succession .scn-steps > li + li::before { content: "↓"; position: absolute; left: 50%; top: calc(var(--gap-row) / -2); transform: translate(-50%, -50%); color: var(--muted); font-size: var(--fs-md); line-height: 1; }
@media (min-width: 721px) {
#succession .scn-steps { grid-template-columns: repeat(3, minmax(0px, 1fr)); }
#succession .scn-steps > li + li::before { content: "→"; left: calc(var(--gap-row) / -2); top: 50%; }
}
#succession .scn-plans { display: grid; }
#succession .scn-plans-head { display: none; }
#succession .scn-plan-col::before { content: attr(data-label); display: block; margin-bottom: var(--gap-tight); font-size: var(--fs-lg); font-weight: 400; letter-spacing: 0.08em; color: var(--muted); }
body.theme-b:not(.page-about) #succession .succession-content .scn-plans .scn-items > li.scn-plain { grid-template-columns: 1em minmax(0px, 1fr); }
#succession .scn-plans .scn-items > li::before { content: "・"; }
#succession .scn-plan { padding: var(--gap-row) 0; border-top: 1px solid var(--line); }
#succession .scn-plan:last-child { border-bottom: 1px solid var(--line); }
#succession .scn-plan-head { display: flex; align-items: center; gap: var(--space-2h); }
#succession .scn-plan-name { font-size: var(--fs-md); line-height: var(--lh-tight); color: var(--navy); }
#succession .scn-plan-col { margin-top: var(--gap-tight); }
@media (min-width: 961px) {
#succession :is(.scn-plan, .scn-plans-head) { display: grid; grid-template-columns: minmax(0px, 13em) minmax(0px, 1fr) minmax(0px, 1.15fr); gap: var(--gap-row) var(--space-6a); align-items: start; }
#succession .scn-plan-head { display: grid; grid-template-columns: auto minmax(0px, 1fr); align-items: center; gap: var(--gap-tight); }
#succession .scn-plan-head .scn-plan-name { grid-column: 1 / -1; }
#succession .scn-plan-col { margin-top: 0px; }
#succession .scn-plan-col::before { content: none; }
#succession .scn-plans-head > :first-child { grid-column: 2; }
#succession .scn-plans-head .scn-sub { margin-bottom: var(--gap-tight); }
}
#succession .scn-close { display: grid; grid-template-columns: minmax(0px, 1fr); justify-items: start; row-gap: var(--gap-tight); margin-top: var(--gap-part); padding-top: var(--gap-row); border-top: 2px solid var(--navy); }
#succession .scn-close-lead { font-size: clamp(18px, 1.7vw, 21px); line-height: 1.6; color: var(--navy); }
body:where(.theme-b):not(.page-about) #succession :is(.scn-way, .scn-fund, .scn-step) { border: 0px; border-radius: var(--radius-lg); }
body:where(.theme-b):not(.page-about) #succession :is(.scn-way, .scn-fund) { padding: 28px 30px 30px; }
body:where(.theme-b):not(.page-about) #succession .scn-way { border-top: 2px solid var(--navy); }
body:where(.theme-b):not(.page-about) #succession :is(.scn-way, .scn-fund, .scn-step) { border-radius: 16px; }
body:where(.theme-b):not(.page-about) #succession :is(.scn-items > li, .scn-ticks > li) { font-size: 17px; line-height: 1.8; }
@media (max-width: 720px) {
#succession .scn-way, #succession .scn-fund { padding: var(--space-5) var(--space-4b); }
body:where(.theme-b):not(.page-about) #succession :is(.scn-way, .scn-fund) { padding: 24px 20px 26px; }
}
@media (min-width: 961px) {
#succession .scn-plan > .why { grid-column: 1 / -1; }
}

#succession .scn-plan-head:has(.scn-sub) { display: grid; grid-template-columns: auto minmax(0px, 1fr); }
#succession .scn-plan-head > .scn-sub { grid-column: 1 / -1; margin-bottom: 0; }
