/* 支援者ページ専用。共通CSSのキャッシュが残ってもレイアウトが崩れないよう独立。 */
.supporter-main{width:100%;max-width:880px;margin:0 auto;padding:20px 24px 75px}
.supporter-back{display:inline-block;margin:4px 0 20px;color:#202020;font-size:14px;font-weight:800}
.supporter-lead{position:relative;background:#ffd447;border:3px solid #202020;border-radius:14px;box-shadow:7px 7px 0 #202020;padding:32px 32px 36px;overflow:hidden}
.supporter-lead .eyebrow{font-size:13px;letter-spacing:1.5px;font-weight:900;color:#2855e8}
.supporter-lead h1{font-size:clamp(32px,5vw,52px);letter-spacing:-1px;line-height:1.2;margin:12px 0 16px}
.supporter-lead h2{font-size:clamp(23px,3.5vw,32px);line-height:1.4;margin:0 0 18px}
.supporter-lead h2 em{font-style:normal;color:#2855e8}
.supporter-lead p{font-size:15px;font-weight:750;line-height:1.85;max-width:560px;margin:0;padding-right:80px}
.supporter-quakka{position:absolute;right:20px;bottom:12px;width:100px;height:auto}
.supporter-section{background:#fff;border:2px solid #202020;border-radius:12px;margin:24px 0 0;padding:27px 30px;overflow:hidden}
.supporter-section h2{font-size:clamp(21px,3vw,28px);line-height:1.4;margin:3px 0 14px;font-weight:900}
.supporter-section p{font-size:15px;line-height:1.85;margin:12px 0}
.flyer-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start;margin:22px 0}
.flyer-preview figure{margin:0;min-width:0;width:100%}
.flyer-preview img{display:block;width:100%;max-width:100%;height:auto;border:1px solid #ddd;border-radius:5px;background:#fff;object-fit:contain}
.flyer-preview figcaption{font-size:13px;text-align:center;font-weight:800;margin:8px 0 0}
.supporter-download{display:block;width:100%;text-align:center;padding:17px 12px;margin:18px 0 8px;background:#fa693e;color:white;text-decoration:none;border:3px solid #202020;border-radius:9px;box-shadow:4px 4px 0 #202020;font-size:16px;font-weight:900}
.supporter-share{display:flex;gap:12px;align-items:stretch}.supporter-share input{flex:1;min-width:0;width:100%;font-size:14px;padding:12px;border:2px solid #202020;border-radius:8px}.supporter-share button{white-space:nowrap;padding:11px 15px;font-size:13px}.supporter-notes{background:#fffaf0}.supporter-bottom{text-align:center;margin:30px 0}.supporter-footer-link{font-weight:900;color:#2855e8}
@media(max-width:640px){.supporter-main{padding:12px 17px 60px}.supporter-lead{padding:25px 19px 92px;box-shadow:5px 5px 0 #202020}.supporter-lead p{padding-right:0;font-size:14px}.supporter-quakka{width:75px;right:18px;bottom:7px}.supporter-section{padding:20px 17px;margin-top:20px}.supporter-section p{font-size:14px}.flyer-preview{gap:10px;margin:17px 0}.supporter-download{font-size:14px;padding:14px 9px}.supporter-share{flex-direction:column}.supporter-share button{align-self:flex-start}}
@media print{.supporter-main{display:none!important}}
