:root{--white:#fff;--off-white:#FAFBFF;--light-bg:#FAFBFF;--main:#2EBF91;--main-dark:#1A9B73;--main-light:#5DD5AD;--sub:#F0B441;--gold:#F0B441;--gold-dark:#D9A035;--accent:#F0B441;--accent-hover:#D9A035;--text:#2D3440;--text-light:#5A6578;--heading:#1E2D3D;--border:#E8ECF2;--max-w:1200px}
*,*::before,*::after{box-sizing:border-box}body{margin:0;font-family:'Zen Kaku Gothic New',sans-serif;line-height:1.9;color:var(--text);background:#fff}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Zen Old Mincho',serif;font-weight:500;color:var(--heading);line-height:1.6}button,input,textarea{font:inherit}.container{max-width:var(--max-w);margin:auto;padding:0 24px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:15px 36px;border-radius:24px;font-size:.9375rem;font-weight:500;cursor:pointer;border:2px solid transparent}.btn-arrow::after{content:'→';margin-left:8px}a:focus-visible,button:focus-visible{outline:3px solid var(--main-dark);outline-offset:4px}
.community-breadcrumb{max-width:1200px;margin:0 auto;padding:18px 24px;font-size:.75rem;color:var(--text-light)}.community-breadcrumb a{text-decoration:underline}.kirameki [id]{scroll-margin-top:80px}.kirameki [data-community=musubi]{--community-color:var(--gold-dark)}.kirameki [data-community=manabi]{--community-color:var(--main-dark)}.kirameki .hero{text-align:center;padding:72px 24px}.kirameki .kirameki-hero{background:linear-gradient(135deg,#FAFBFF,#E8F5EE 40%,#F5E6C8);padding:64px 24px 60px!important}.kirameki .hero h1{font-size:clamp(2rem,5vw,2.8rem);color:var(--main-dark);margin-top:14px}.kirameki .en{font-family:'Cormorant Garamond',serif;font-size:1rem;letter-spacing:.18em;color:var(--community-color)}.kirameki .copy{font-family:'Klee One',cursive;font-size:clamp(1rem,2.6vw,1.25rem);margin-top:16px;color:var(--community-color)}.kirameki .lead{max-width:38em;margin:24px auto 0;text-align:left;color:var(--text-light);font-size:.9375rem;line-height:2.2}.kirameki .doors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:760px;margin:32px auto 0}.kirameki .door{background:#fff;border:1px solid var(--border);border-top:4px solid var(--main-dark);border-radius:16px;padding:24px;text-align:left;box-shadow:0 8px 24px rgba(30,45,61,.04)}.kirameki .door.musubi{border-top-color:var(--gold-dark)}.kirameki .door small{display:block;font-size:.75rem;color:var(--main-dark)}.kirameki .door.musubi small{color:var(--gold-dark)}.kirameki .door b{display:block;font-family:'Zen Old Mincho',serif;font-size:1.2rem;margin-top:6px}.kirameki .door span{display:block;font-size:.8125rem;color:var(--text-light);margin-top:8px}.kirameki .chip{display:inline-block;border:1px solid var(--community-color);border-radius:999px;padding:5px 16px;font-size:.75rem;color:var(--community-color);margin-bottom:14px}.kirameki .section{padding:64px 0}.kirameki .section.alt{background:var(--off-white)}.kirameki .wrap{max-width:1000px;margin:auto;padding:0 24px}.kirameki .section-label{text-align:center;font-family:'Cormorant Garamond',serif;letter-spacing:.2em;color:var(--community-color);font-size:1rem}.kirameki .section h2{text-align:center;font-size:clamp(1.25rem,3vw,1.65rem);margin-top:12px}.kirameki .story p{font-family:'Zen Old Mincho',serif;line-height:2.3;max-width:34em;margin:24px auto 0}.kirameki .hand{display:block;text-align:center;font-family:'Klee One',cursive;margin-top:26px;color:var(--community-color)}.kirameki .cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:32px}.kirameki .card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:28px 24px;box-shadow:0 4px 16px rgba(30,45,61,.04)}.kirameki .card .no{font-family:'Cormorant Garamond',serif;letter-spacing:.12em;color:var(--community-color)}.kirameki .card b{display:block;font-family:'Zen Old Mincho',serif;font-size:1.05rem;margin-top:8px}.kirameki .card p{font-size:.8125rem;line-height:2;color:var(--text-light);margin-top:12px}.kirameki .fact{display:flex;justify-content:center;flex-wrap:wrap;gap:24px;margin-top:32px}.kirameki .tile{flex:1;max-width:260px;background:#fff;border:1px solid var(--border);border-radius:16px;padding:28px 16px;text-align:center}.kirameki .tile b{display:block;font-family:'Cormorant Garamond',serif;font-size:2.5rem;color:var(--community-color)}.kirameki .tile small{font-family:'Zen Old Mincho',serif;font-size:1rem}.kirameki .tile span{font-size:.75rem;color:var(--text-light)}.kirameki .ctabox{text-align:center;margin-top:32px}.kirameki .ctabox .t{font-family:'Zen Old Mincho',serif}.kirameki .ctabox .btn{background:linear-gradient(135deg,#2EBF91,#1A9B73);color:#fff;margin-top:20px}.kirameki .ctabox p{font-size:.8125rem;color:var(--text-light);margin-top:14px}.kirameki .owner{max-width:620px;margin:32px auto 0;text-align:center}.kirameki .owner .hand{color:var(--heading);line-height:2.2}.kirameki .sign{font-size:.8125rem;color:var(--text-light);margin-top:20px}.kirameki .sign b{font-family:'Zen Old Mincho',serif;color:var(--heading)}
.community-shell{background:linear-gradient(180deg,#FAFBFF,#fff);padding-bottom:72px;min-height:65vh}.community-heading{max-width:860px;margin:auto;padding:40px 24px 28px}.community-label{color:var(--main-dark);font-size:.875rem;letter-spacing:.06em;margin-bottom:12px}.community-heading h1{text-wrap:balance;font-size:clamp(1.5rem,4vw,2rem);color:var(--main-dark)}.community-heading p{margin-top:18px}.community-event{margin-top:24px;padding:24px;background:#fff;border:1px solid var(--border);border-radius:16px;font-size:.875rem}.community-event dl{margin:0;display:grid;grid-template-columns:100px minmax(0,1fr);gap:8px 16px}.community-event dt{font-weight:700}.community-event dd{margin:0;overflow-wrap:anywhere}.community-event-details{white-space:pre-line}.community-notice{margin:18px 0;padding:18px 20px;border-left:4px solid var(--gold);background:#FFF9EA;border-radius:0 10px 10px 0}.community-form{max-width:812px;margin:0 auto;padding:0 24px}.community-form-section{background:#fff;border:1px solid var(--border);border-radius:16px;padding:28px 32px;margin-bottom:20px}.community-form-section h2{font-size:1.15rem;margin-bottom:10px}.community-form-section>p{font-size:.875rem;color:var(--text-light);margin-bottom:24px}.community-field{padding:14px 0;min-width:0}.community-fieldset{border:0;margin:0;padding:0;min-width:0}.community-field-label,.community-fieldset legend{display:block;font-weight:500;font-size:.9375rem;margin-bottom:10px;padding:0;max-width:100%}.community-required,.community-optional{display:inline-block;margin-left:8px;border-radius:4px;padding:1px 6px;font-size:.6875rem;vertical-align:middle;white-space:nowrap}.community-required{background:#EAF8F2;color:#137E5B}.community-optional{background:#F0F2F8;color:var(--text-light)}input.community-input:not([type=checkbox]):not([type=radio]),textarea.community-input,select.community-input{width:100%;border:1px solid #CBD5DF;border-radius:8px;padding:12px 14px;font-size:16px;color:var(--text);background:#fff}.community-input:focus{outline:2px solid var(--main-dark);outline-offset:2px}.community-input[type=radio],.community-input[type=checkbox]{width:19px;height:19px;accent-color:var(--main-dark);vertical-align:middle;flex-shrink:0;margin:0 10px 0 0}.community-choices>div{padding:6px 0}.community-choices label,.community-checkbox{display:flex;align-items:flex-start;gap:2px;padding:10px 12px;background:#FAFBFF;border-radius:8px;font-size:.9375rem;cursor:pointer}.community-choices input,.community-checkbox input{margin-top:5px!important}.community-help{font-size:.8125rem;color:var(--text-light);margin-top:8px;line-height:1.8}.community-error{font-size:.875rem;color:#A72E36;margin-top:8px}.community-error-summary{background:#FFF1F1;border:1px solid #E1B4B7;border-radius:12px;padding:20px;margin-bottom:24px;color:#982C34}.community-error-summary ul{padding-left:22px;margin:8px 0 0}.community-error-summary a{text-decoration:underline}.community-submit{text-align:center;padding:12px 0}.community-submit .btn{background:linear-gradient(135deg,#2EBF91,#1A9B73);color:#fff;min-width:240px}.community-submit .btn:disabled{opacity:.6;cursor:wait}.community-privacy{font-size:.8125rem;color:var(--text-light);margin-bottom:18px}.community-privacy a{text-decoration:underline}.community-complete{max-width:720px;margin:40px auto;background:#fff;border:1px solid var(--border);border-radius:24px;padding:48px 36px;text-align:center}.community-complete h1{font-size:clamp(1.4rem,3vw,2rem);margin:12px 0 24px;color:var(--main-dark)}.community-complete p{margin:16px 0}.community-complete .btn{margin-top:20px;background:var(--main-dark);color:#fff}.community-check{display:inline-flex;justify-content:center;align-items:center;width:64px;height:64px;background:#EAF8F2;border-radius:50%;color:var(--main-dark);font-size:2rem}.community-form [hidden]{display:none!important}
@media(max-width:768px){.kirameki .doors,.kirameki .cards{grid-template-columns:1fr}.kirameki .section{padding:48px 0}.kirameki .hero{padding:48px 20px}.kirameki .wrap{padding:0 20px}.community-heading{padding:24px 20px}.community-form{padding:0 16px}.community-form-section{padding:24px 20px}.community-event{padding:20px}.community-event dl{grid-template-columns:1fr;gap:4px}.community-event dd{margin-bottom:12px}.community-complete{margin:24px 16px;padding:32px 24px}.community-submit .btn{width:100%}.community-breadcrumb{padding:16px 20px}}
@media(prefers-reduced-motion:no-preference){.kirameki .door,.kirameki .btn{transition:transform .2s,box-shadow .2s}.kirameki .door:hover,.kirameki .btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(30,45,61,.08)}}

.community-form[data-community=musubi] [data-field=satisfaction] .community-choices>.community-input{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.community-form[data-community=musubi] [data-field=satisfaction] .community-choices label{flex-direction:column;align-items:center;gap:6px;padding:8px 4px}.community-form[data-community=musubi] [data-field=satisfaction] .community-choices input{margin:0!important}
