.jp-brochure { max-width: 1200px; margin: 0 auto; padding: 48px 24px 80px; color: #172936; font-size: 17px; line-height: 1.8; }
.jp-brochure h1 { font-size: clamp(32px, 4vw, 48px); margin: 24px 0; }
.jp-brochure h2 { font-size: 24px; line-height: 1.5; margin: 0 0 20px; }
.jp-brochure p { margin: 0 0 20px; }
.jp-brochure a { color: #007a70; text-decoration: underline; text-underline-offset: 4px; overflow-wrap: anywhere; }
.brochure-notice { background: #f1f6f5; border-left: 4px solid #087f74; padding: 24px; margin: 24px 0 32px; }
.brochure-notice p:last-child { margin-bottom: 0; }
.brochure-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; margin-top: 40px; }
.jp-brochure fieldset { min-width: 0; border: 1px solid #bac9c6; padding: 24px; }
.brochure-field { margin-bottom: 20px; }
.brochure-field label, .brochure-field > span { display: block; font-size: 16px; line-height: 1.7; }
.brochure-field input:not([type=checkbox]), .brochure-field textarea { display: block; width: 100%; box-sizing: border-box; padding: 12px; border: 1px solid #b3c2bf; border-radius: 4px; background: #f4f6f6; }
.jp-brochure .brochure-option { display: inline-block; margin-right: 16px; }
.jp-brochure button:disabled { background: #e2e7e6; color: #43544f; border: 1px solid #acbdb8; padding: 12px 24px; cursor: not-allowed; opacity: 1; }
@media (max-width: 767px) { .brochure-columns { grid-template-columns: 1fr; gap: 24px; } .jp-brochure { padding: 32px 20px 64px; } .brochure-notice, .jp-brochure fieldset { padding: 20px; } }
