@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800;900&display=swap');
:root{--yellow:#f8e950;--ink:#243d35;--green:#35594b;--paper:#fffef8;--line:#e5e7dd}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Noto Sans JP',sans-serif;font-size:14px;line-height:1.9}a{color:var(--green);text-underline-offset:5px}header{max-width:1160px;margin:auto;padding:24px 30px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font-size:17px;font-weight:800}.brand-icon{display:grid;place-items:center;background:var(--yellow);border-radius:50%;width:36px;height:36px;font-size:26px;line-height:1;font-family:Georgia;font-style:italic}.header-note{font-size:11px;letter-spacing:.08em}main{max-width:1100px;margin:auto}.hero{position:relative;overflow:hidden;padding:54px 65px 0;background:repeating-linear-gradient(135deg,#fbf6aa 0,#fbf6aa 13px,#fffef8 13px,#fffef8 29px);border-radius:4px}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#fffdebd9,transparent)}.hero>*{position:relative}.eyebrow{font-size:11px;letter-spacing:.22em;font-weight:800}.hero h1{font-size:clamp(36px,4.8vw,57px);line-height:1.5;letter-spacing:.07em;margin:18px 0}.hero h1 span{background:linear-gradient(transparent 69%,var(--yellow) 69%,var(--yellow) 93%,transparent 93%)}.hero-copy{line-height:2.1;font-size:14px}.sun{position:absolute;right:70px;top:48px;font-size:115px;line-height:1;color:#768136;transform:rotate(-12deg)}.hero-bottom{display:flex;justify-content:space-between;gap:15px;margin-top:42px;padding:19px 0;border-top:1px solid #a6aa8055;font-size:11px;font-weight:700;letter-spacing:.11em}.layout{display:grid;grid-template-columns:245px 1fr;gap:65px;padding:55px 28px 70px}aside{align-self:start;position:sticky;top:30px}.aside-title,.section-heading>span,.form-intro>span{font-size:10px;letter-spacing:.2em;font-weight:800;color:#7a8566}aside h2{font-size:28px;line-height:1.6;margin:15px 0}aside p{font-size:12px}aside a{display:block;text-decoration:none;margin:20px 0;font-size:12px;font-weight:600}.aside-flower{font-size:84px;color:#c4c947;margin-top:35px;line-height:1.2}.aside-caption{color:#7a8566;line-height:2}.notice{padding:25px;background:#f8f6df;border:1px solid #eae7c4;border-radius:3px;font-size:12px}.notice-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}.notice-top>span{font-weight:800}.notice-top strong{background:var(--yellow);padding:1px 8px;font-size:11px}.notice p{margin:14px 0}.notice details{border-top:1px solid #dddabb;margin-top:20px;padding-top:16px}.notice summary{cursor:pointer;font-weight:700}.details-body h3{font-size:14px;margin-top:22px}.details-body ul{padding-left:20px}.form-intro{margin-top:36px;padding-bottom:20px}.form-intro p{font-size:11px;color:#748177;margin-bottom:0}.form-section{padding-top:35px}.section-heading h2{font-size:24px;letter-spacing:.02em;margin:5px 0}.section-heading p{font-size:12px;color:#778178;margin:4px 0 25px}fieldset{border:0;border-top:1px solid var(--line);margin:0;padding:26px 0 30px;min-width:0}legend{float:left;width:100%;font-size:14px;font-weight:700;margin-bottom:15px;line-height:1.9}legend+*{clear:both}.qnum{font-size:10px;color:#8f975c;letter-spacing:.07em;margin-right:10px}legend small{display:inline-block;font-size:9px;font-weight:500;white-space:nowrap;background:#f2f0df;color:#7c7b63;border-radius:3px;padding:1px 6px;margin-left:7px}.help{font-size:12px;color:#738074;margin:0 0 18px;line-height:1.9}input[type=text],textarea{display:block;width:100%;padding:14px 15px;border:1px solid #d9dfd2;background:white;border-radius:5px;font:inherit;font-size:13px;color:var(--ink);resize:vertical}input::placeholder,textarea::placeholder{color:#a4aba0;font-size:12px}input:focus-visible,textarea:focus-visible,button:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid #e2ce37;outline-offset:3px}.choice{display:flex;align-items:center;gap:12px;border:1px solid #dfe4d8;border-radius:5px;padding:12px 15px;background:white;cursor:pointer;margin-bottom:9px;font-size:13px;transition:.15s}.choice:hover{border-color:#b0b771;background:#fffef0}.choice:has(input:checked){background:#faf8d7;border-color:#b8bd71}.choice input{accent-color:#537158;width:17px;height:17px;flex-shrink:0}.other{margin-top:10px}.submit-area{text-align:center;background:#f9f6d8;padding:32px 26px;margin-top:25px;border-radius:5px}.submit-area p{font-size:14px;font-weight:600;line-height:2}.submit-area button{width:100%;border:0;border-radius:5px;background:var(--green);color:#fff;padding:18px 25px;font:inherit;font-weight:700;cursor:pointer;text-align:left;display:flex;justify-content:space-between;align-items:center}.submit-area button:hover{background:#25473a}.submit-area small{display:block;margin-top:14px;font-size:10px;color:#758073}#error{color:#a63820;font-size:12px}#error:empty{display:none}footer{border-top:1px solid var(--line);padding:35px 24px;text-align:center}footer>span{font-weight:800}footer p{font-size:11px;margin:8px}footer small{font-size:9px;letter-spacing:.18em;color:#8c957c}@media(max-width:760px){header{padding:19px 20px}.header-note{display:none}.brand{font-size:15px}main{padding:0 14px}.hero{padding:35px 24px 0}.hero h1{font-size:35px}.hero-copy{font-size:12px}.eyebrow{font-size:8px;letter-spacing:.13em}.sun{font-size:55px;right:15px;top:35px}.hero-bottom{margin-top:27px;flex-direction:column;gap:5px;font-size:9px;padding:14px 0}.layout{display:block;padding:28px 3px 40px}aside{display:none}.notice{padding:20px}.section-heading h2{font-size:21px}.form-intro{margin-top:27px}legend{font-size:13px}.submit-area{padding:22px 17px}}
@font-face{font-family:'Yuji Syuku';src:url('yuji-syuku.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
.brand-icon{background:transparent;border-radius:0;color:#ec982f;font-family:inherit;font-style:normal;font-size:36px}.sun{color:#ec982f}.hero h1{font-family:"Yuji Syuku",serif;font-weight:400;font-size:clamp(39px,5.2vw,64px);line-height:1.55;letter-spacing:.035em;transform:rotate(-2deg);transform-origin:left center}.form-intro>span{font-size:19px;color:var(--green);letter-spacing:.04em}.form-intro h2{display:inline;font-size:20px;margin-left:14px;font-weight:600}.form-section{padding-top:0}.form-intro{margin-bottom:28px}.input-label{display:block;font-size:12px;font-weight:600;margin:15px 0 7px}.submit-area strong{font-size:16px}.submit-area p{font-weight:400}.back-button{margin-top:12px!important;background:transparent!important;color:var(--green)!important;border:1px solid #bac6a5!important;justify-content:center!important}.confirmation-question{padding:22px 0;border-bottom:1px solid var(--line)}#answers{margin:12px 0 28px}#answers dt{font-size:13px;font-weight:700;line-height:1.9}#answers dd{font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0 0;color:#57705e}#confirm-title:focus{outline:none}[hidden]{display:none!important}@media(max-width:760px){.hero h1{font-size:36px}.sun{font-size:48px;top:40px;right:13px}.hero-copy{margin-top:25px}.form-intro h2{font-size:19px}.submit-area strong{font-size:15px}}

.hero h1.hero-lettering{transform:none;margin:20px 0 24px;max-width:600px;line-height:0}.hero-lettering img{display:block;width:100%;height:auto}@media(max-width:760px){.hero h1.hero-lettering{max-width:100%;margin:25px 0 20px}}

.hero-bottom>span:last-child{font-size:15px}@media(max-width:760px){.hero-bottom>span:last-child{font-size:13px}}
.complete-card{max-width:650px;margin:60px auto;padding:45px 25px;text-align:center;background:#f9f6d8}.complete-card .complete-sun{font-size:60px;color:#ec982f}.complete-card h1{font-size:25px;line-height:1.7}.complete-card p{font-size:16px;line-height:2}.complete-card a{display:inline-block;margin-top:15px}

button:disabled{opacity:.55;cursor:not-allowed}#send-error{color:#a63820;font-size:12px}

[data-manma-text]{white-space:pre-line}

/* Monthly form: shared design refinements */
.site-link{font-size:11px;text-decoration:none}.layout{display:block;max-width:820px;margin:0 auto;padding:45px 28px 70px}
.hero{display:grid;grid-template-columns:1.15fr 1fr;column-gap:18px;align-items:center;padding:36px 42px 0;border-radius:24px 24px 70px 24px;background:repeating-linear-gradient(135deg,#fbf6b6 0,#fbf6b6 13px,#fffdef 13px,#fffdef 29px)}
.hero:before{background:linear-gradient(90deg,#fffdebe8,#fffdef80)}.hero>.eyebrow,.hero>h1,.hero>.hero-copy{grid-column:1}.hero>.eyebrow{grid-row:1;align-self:end;margin-bottom:0}.hero>h1{grid-row:2}.hero>.hero-copy{grid-row:3;align-self:start;margin-top:0}.hero>.hero-art{grid-column:2;grid-row:1/4;align-self:center}.hero-art img{display:block;width:100%;height:auto}.hero-bottom{grid-column:1/-1;margin-top:24px}
.notice{border-radius:15px}.choice,input[type=text],textarea{border-radius:7px}.submit-area{background:transparent;padding:25px 0}.submit-area button{text-align:center;justify-content:center;gap:12px;border-radius:30px;font-size:13px;font-weight:600}.complete-card{border-radius:25px}.thanks-lettering img{display:block;width:100%;height:auto;max-width:580px;margin:0 auto}
@media(max-width:760px){.site-link{font-size:9px}.layout{padding:28px 4px 40px}.hero{display:flex;flex-direction:column;align-items:stretch;padding:28px 24px 0;border-radius:18px 18px 55px 18px}.hero .hero-art{order:4;width:min(100%,320px);align-self:center;margin:10px 0 0}.hero .eyebrow{align-self:auto;margin:0}.hero h1.hero-lettering{margin:20px 0 18px}.hero .hero-copy{margin:0}.hero .hero-bottom{order:5;width:100%;margin-top:15px}.complete-card{margin:35px 14px;padding:35px 20px}.complete-card p{font-size:14px}}

input[type=email]{display:block;width:100%;padding:14px 15px;border:1px solid #d9dfd2;background:white;border-radius:7px;font:inherit;font-size:13px;color:var(--ink)}

/* No divider before the first survey question. */
#section-0>fieldset:first-child{border-top:0}
