.benefit-oct12 { margin: 1.6rem 0; padding: clamp(16px, 3vw, 28px); border: 1px solid var(--c-border); border-radius: var(--radius); background: var(--c-surface); color: var(--c-ink); }
.benefit-oct12 h3 { margin: 0 0 1.2rem; font-size: 1.12rem; line-height: 1.65; }
.benefit-oct12 h4 { margin: 0 0 .7rem; font-size: 1rem; line-height: 1.7; }
.benefit-oct12 p { margin: .7rem 0; }
.benefit-oct12 .source { margin: 1rem 0 0; padding-top: .8rem; border-top: 1px solid var(--c-border); }
.benefit-oct12 .figure-answer { padding-top: 1rem; border-top: 2px solid var(--c-primary); font-weight: 600; }
.benefit-oct12 :is(section,li,dt,dd,div) { min-width: 0; }
.benefit-oct12 dl,.benefit-oct12 dd { margin: 0; }
.benefit-oct12 .atomic { display: inline-block; white-space: nowrap; }
.sfc-timeline ol { list-style: none; margin: 0 0 0 .35rem; padding: 0 0 0 1.25rem; border-left: 3px solid var(--c-primary); }
.sfc-timeline li { position: relative; margin: 0; padding: .25rem 0 1.6rem; }
.sfc-timeline li::before { content: ""; position: absolute; top: .8rem; left: -1.69rem; width: .7rem; height: .7rem; border: 2px solid var(--c-primary); border-radius: 50%; background: var(--c-surface); }
.sfc-timeline time { display: block; font-weight: 700; color: var(--c-primary-strong); }
.sfc-timeline .sfc-start { padding-bottom: .5rem; }
.sfc-timeline .sfc-start div { padding: .8rem; background: var(--c-primary-pale); border-radius: var(--radius-s); }
.door-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; }
.door-grid>li { border-top: 5px solid var(--c-primary); border-bottom: 1px solid var(--c-border); padding: 1rem .75rem; background: var(--c-primary-pale); }
.door-grid>li+li { border-top-color: var(--c-money); background: var(--c-money-pale); }
.door-grid .door-name { font-size: 1.25rem; font-weight: 750; }
.counter-origin { border: 2px solid var(--c-primary); border-radius: var(--radius-s); padding: 1rem; text-align: center; }
.counter-branches { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; margin-top: 1.4rem; }
.counter-branches>li { border-top: 4px solid var(--c-primary); padding: 1rem; background: var(--c-primary-pale); }
.counter-branches>li+li { border-top-color: var(--c-money); background: var(--c-money-pale); }
.counter-branches strong { font-size: 1.3rem; }
.mile-balance { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem 1.3rem; padding: 1rem; border: 2px solid var(--c-primary); border-radius: var(--radius-s); }
.mile-balance strong { font-size: 1.35rem; }
.mile-paths { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin-top: 1.2rem; }
.mile-paths>li { padding: .3rem .8rem; border-left: 4px solid var(--c-primary); }
.mile-paths>li+li { border-left-color: var(--c-money); }
.mile-value { font-size: 1.4rem; font-weight: 750; }
.kyupo-anchor { padding: 1rem; background: var(--c-primary-pale); text-align: center; border-radius: var(--radius-s); }
.kyupo-anchor strong { display: block; font-size: 1.45rem; }
.kyupo-anchor span { display: block; margin-top: .4rem; }
.threshold-scale { display: grid; grid-template-columns: 1fr 1fr; margin-top: 1.2rem; gap: 1rem; }
.threshold-scale>li { border-top: 4px solid var(--c-primary); padding: .8rem 0; }
.threshold-scale>li+li { border-top-color: var(--c-money); }
.kfc-price { padding: .8rem 1rem; background: var(--c-primary-pale); border-radius: var(--radius-s); }
.kfc-price strong { margin-left: .5rem; }
.kfc-price>span { display: block; }
.kfc-ledgers dl { margin-top: 1rem; }
.kfc-ledgers dl>div { display: grid; grid-template-columns: minmax(8rem,1fr) minmax(0,1.3fr); gap: .6rem; border-bottom: 1px solid var(--c-border); padding: .9rem 0; }
.kfc-ledgers dt { font-weight: 600; }
.kfc-ledgers dd>span { display: block; margin-top: .2rem; }
.kfc-ledgers dl>div:first-child { border-left: 4px solid var(--c-money); padding-left: .7rem; }
.bookoff-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.bookoff-columns>li { padding: 1rem; border: 1px solid var(--c-border); border-top: 4px solid var(--c-primary); }
.bookoff-columns>li+li { border-top-color: var(--c-money); }
.bookoff-columns .receipt-line { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .2rem .75rem; padding-bottom: .4rem; border-bottom: 1px dashed var(--c-border); }
.bookoff-result strong { font-size: 1.3rem; display: block; }
.bookoff-result span { display: block; }
.skylark-layers ol { list-style: none; padding: 0; margin: 0; counter-reset: layer; }
.skylark-layers li { counter-increment: layer; padding: .9rem 1rem .9rem 3rem; position: relative; border-bottom: 1px solid var(--c-border); margin: 0; }
.skylark-layers li::before { content: counter(layer); position: absolute; top: .95rem; left: .3rem; width: 1.75rem; height: 1.75rem; display: grid; place-items: center; border: 1px solid var(--c-primary); color: var(--c-primary-strong); border-radius: 50%; line-height: 1; }
.skylark-layers li>strong,.skylark-layers li>span { display: block; }
.skylark-layers li>strong { font-size: 1.15rem; margin: .25rem 0; }
.layer-title { font-weight: 600; }
.tokyu-products { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.tokyu-products section { padding: 1rem; background: var(--c-primary-pale); border-top: 4px solid var(--c-primary); }
.tokyu-products section+section { background: var(--c-money-pale); border-top-color: var(--c-money); }
.tokyu-products dl>div { padding: .7rem 0; border-bottom: 1px solid var(--c-border); }
.tokyu-products dd { font-weight: 750; font-size: 1.2rem; }
.tokyu-total>strong,.tokyu-total>span { display: block; }
.karaoke-bill { max-width: 34rem; margin: 0 auto; border: 2px solid var(--c-border); padding: 1.2rem; background: var(--c-bg); }
.karaoke-bill dl>div { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .3rem 1rem; padding: .65rem 0; }
.karaoke-bill dl>div:nth-child(2) { color: var(--c-primary-strong); }
.karaoke-bill dd { font-weight: 650; }
.karaoke-bill .karaoke-total { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .4rem 1rem; border-top: 3px double var(--c-ink); padding-top: .8rem; }
.karaoke-total strong { font-size: 1.4rem; }
@media (max-width: 599px) {
  .door-grid,.counter-branches,.mile-paths,.threshold-scale,.bookoff-columns,.tokyu-products { grid-template-columns: minmax(0,1fr); }
  .kfc-ledgers dl>div { grid-template-columns: minmax(0,1fr); }
  .counter-origin,.counter-branches>li,.mile-balance,.kyupo-anchor,.kfc-price,.bookoff-columns>li,.tokyu-products section,.karaoke-bill { padding: 12px; }
  .door-grid>li,.mile-paths>li { padding-left: 12px; padding-right: 12px; }
  .mile-balance strong,.mile-value,.kyupo-anchor strong,.counter-branches strong,.bookoff-result strong,.tokyu-products dd,.karaoke-total strong { font-size: 1.1rem; }
  .skylark-layers li { padding-left: 0; padding-right: 0; padding-top: .75rem; }
  .skylark-layers li::before { position: static; display: inline-grid; margin-bottom: .35rem; }
  .skylark-layers li>strong { font-size: 1rem; }
}

.benefit-oct12 .door-grid,.benefit-oct12 .counter-branches,.benefit-oct12 .mile-paths,.benefit-oct12 .threshold-scale,.benefit-oct12 .bookoff-columns { list-style: none; padding: 0; margin-bottom: 0; }
.benefit-oct12 .door-grid>li,.benefit-oct12 .counter-branches>li,.benefit-oct12 .mile-paths>li,.benefit-oct12 .threshold-scale>li,.benefit-oct12 .bookoff-columns>li { margin: 0; }
.benefit-oct12 .door-grid,.benefit-oct12 .bookoff-columns { margin-top: 0; }
