/* 家計の質問受付（/openchat/）: 講義LPと同じ生成り＋白カードのトンマナ */
body:has(.oc-page) { background:#fbf7ef; color:#2b2521; }
body:has(.oc-page) .money-header { position:relative; }
.oc-page { font-size:16px; line-height:1.8; }
.oc-page * { box-sizing:border-box; }
.oc-hero { padding:32px 20px 8px; }
.oc-hero__inner { max-width:640px; margin:auto; }
.oc-hero h1 { font-family:'Zen Kaku Gothic New','Noto Sans JP',sans-serif; font-size:clamp(26px,6.4vw,36px); font-weight:900; line-height:1.5; margin:0; color:#2b2521; }
.oc-body { max-width:680px; margin:0 auto; padding:16px 20px 56px; }
.oc-card { background:#fff; border:1px solid #d9dfd9; border-radius:16px; padding:28px 22px 24px; }
.oc-page .oc-card h2 { font-family:'Zen Kaku Gothic New','Noto Sans JP',sans-serif; font-size:clamp(18px,4.8vw,20px); line-height:1.5; font-weight:900; color:#114a3f; background:none; border:0; border-left:3px solid #114a3f; box-shadow:none; padding:0 0 0 12px; margin:0 0 16px; }
.oc-page .oc-card h2::before, .oc-page .oc-card h2::after { display:none; }
.oc-page .oc-card p { margin:0 0 18px; line-height:1.85; }
.oc-page .oc-card > :last-child { margin-bottom:0; }
.oc-page .oc-card .swell-block-button { margin:24px 0 20px; }
.oc-page .oc-card a:not(.swell-block-button__link) { color:#114a3f; text-decoration:underline; text-underline-offset:4px; }
@media (min-width:800px) {
	.oc-hero { padding:56px 20px 12px; }
	.oc-card { padding:36px 40px 32px; }
}
