
*{box-sizing:border-box}html{background:#fff;scroll-behavior:smooth}body{margin:0;min-width:1080px;color:#193b32;font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;font-size:17px;line-height:1.85;-webkit-text-size-adjust:100%}a{color:inherit;text-decoration:none}p,h1,h2,h3,h4,figure{margin:0}p{color:#43564f}h1,h2,h3,h4,.brand{font-family:'Hiragino Mincho ProN','Yu Mincho',serif;font-weight:500}.wrap{max-width:1100px;margin:auto;padding:0 24px}header{height:94px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dce5df}.brand>div{display:flex;align-items:center;gap:10px;line-height:1.4;white-space:nowrap}.brand span{font-size:29px}.brand b{font-size:13px;font-weight:600}.brand small{display:block;font-family:Georgia,serif;font-size:13px;line-height:1.5}.global{display:flex;gap:26px;font-size:15px;font-weight:600}.global .active{color:#cc1821;border-bottom:2px solid #cc1821}.hamburger{display:none}.breadcrumb{font-size:14px;color:#65766d;padding-top:18px}.breadcrumb span{margin:0 12px;color:#9ba59e}


.hero{padding:48px 0 41px;display:grid;grid-template-columns:minmax(0,1fr) 280px;align-items:center;gap:55px}.eyebrow{font-size:15px;color:#6b824d;font-weight:600;margin-bottom:16px}h1{font-size:45px;line-height:1.55;letter-spacing:.035em;margin-bottom:23px}.lead{font-size:18px;line-height:1.95}.letter-art{height:192px;display:flex;justify-content:center;align-items:center;position:relative}.letter-art:before{content:'';position:absolute;background:#f4f5eb;width:234px;height:177px;border-radius:54% 46% 48% 52% / 47% 50% 50% 53%;transform:rotate(-7deg)}.letter-art svg{position:relative;width:174px;height:151px}
h2.heading-a{border-left:4px solid #c5222a;padding-left:23px;font-size:32px;font-weight:600;line-height:1.55;letter-spacing:.025em;margin-bottom:23px}.order-note{background:#f1f5eb;border-radius:7px;padding:23px 27px;display:grid;grid-template-columns:36px 1fr 178px;align-items:center;gap:20px;margin-bottom:47px}.order-note svg{width:32px;height:32px;color:#507348}.order-note strong{font-size:18px;font-weight:600;display:block;margin-bottom:6px}.order-note p{font-size:15px;line-height:1.9}.order-note a{font-size:14px;color:#326343;display:flex;align-items:center;justify-content:space-between;padding:11px 0;border-bottom:1px solid #9db28e}.contact-layout{display:grid;grid-template-columns:minmax(0,728px) minmax(0,1fr);gap:36px;padding-bottom:56px;align-items:start}.intro{font-size:16px;line-height:1.9;margin-bottom:24px}.preview-note{padding:12px 17px;background:#faf6ed;border-left:3px solid #ccb99b;font-size:13px;color:#756953;margin-bottom:25px}.form-panel{border:1px solid #dfe5d9;border-radius:8px;padding:30px 31px 32px;background:#fff}.form-field{margin-bottom:28px}.field-label{font-size:17px;font-weight:600;display:flex;align-items:center;gap:12px;margin-bottom:12px}.required{font-size:11px;font-weight:500;color:#ac3430;background:#faece6;padding:2px 7px;border-radius:3px;line-height:1.6}.optional{font-size:11px;font-weight:500;color:#758368;background:#f0f3eb;padding:2px 7px;border-radius:3px;line-height:1.6}.type-options{display:grid;grid-template-columns:1.25fr 1.15fr .8fr;gap:10px}.type-option{border:1px solid #d7e0cf;border-radius:5px;padding:15px 11px;display:flex;gap:9px;align-items:center;font-size:14px;cursor:pointer;color:#425b43;background:#fff}.type-option:has(input:checked){background:#f0f5e8;border-color:#6f8c5c;color:#234b35}.type-option input{accent-color:#406b40;width:16px;height:16px;margin:0;flex:none}.fields-two{display:grid;grid-template-columns:1fr 1fr;gap:22px}input[type=text],input[type=email],input[type=url],textarea{display:block;width:100%;border:1px solid #cbd6c4;border-radius:4px;background:#fdfefb;padding:12px 14px;font-family:inherit;font-size:16px;line-height:1.75;color:#193b32;min-height:51px}input::placeholder,textarea::placeholder{color:#8d9787;font-size:14px}textarea{min-height:203px;resize:vertical}.hint{font-size:13px;color:#77836c;line-height:1.85;margin-top:9px}.form-field:last-of-type{margin-bottom:24px}.privacy-box{background:#f8f8f2;border-radius:5px;padding:19px 21px}.privacy-box details{font-size:14px}.privacy-box summary{cursor:pointer;color:#415f3e;font-weight:600;list-style:none;display:flex;justify-content:space-between;align-items:center;min-height:30px}.privacy-box summary::-webkit-details-marker{display:none}.privacy-box summary:after{content:'＋';font-weight:400}.privacy-box details[open] summary:after{content:'−'}.privacy-box details p{font-size:14px;line-height:1.9;padding-top:12px}.consent{display:flex;gap:11px;align-items:flex-start;font-size:15px;line-height:1.85;margin-top:17px;cursor:pointer}.consent input{width:18px;height:18px;margin:5px 0 0;flex:none;accent-color:#406b40}.submit-area{text-align:center;margin-top:27px}.confirm-button{display:flex;align-items:center;justify-content:space-between;gap:25px;width:325px;min-height:55px;border:0;border-radius:4px;padding:13px 23px;background:#c5222a;color:#fff;font-size:17px;font-weight:600;font-family:inherit;margin:0 auto;cursor:pointer}.confirm-button:hover{background:#ad1d25}.submit-area p{font-size:12px;color:#7b856e;margin-top:11px}.side-note{background:#faf7ed;border-radius:7px;padding:25px 23px;margin-top:4px}.side-note .kicker{font-size:12px;color:#7b8b5f;margin-bottom:10px}.side-note h3{font-size:23px;line-height:1.7;margin-bottom:21px}.side-item{border-top:1px solid #e0e4d4;padding-top:18px;margin-top:19px}.side-item strong{display:block;font-size:15px;font-weight:600;margin-bottom:9px}.side-item p{font-size:14px;line-height:1.95}.side-item:first-of-type{margin-top:0}.reply-note{padding:23px 6px 0}.reply-note h3{font-size:20px;line-height:1.7;margin-bottom:12px}.reply-note p{font-size:14px;line-height:1.95}.back-line{border-top:1px solid #e0e6dc;padding-top:24px;display:flex;justify-content:space-between;align-items:center;font-size:15px;margin-bottom:16px}.back-line a{color:#b72128;border-bottom:1px solid #dbb4a9;padding-bottom:3px}.back-line p{color:#718064}
dialog{width:660px;max-width:90vw;max-height:86vh;border:1px solid #d8e2d0;border-radius:9px;padding:30px 34px;color:#193b32;font-family:inherit;line-height:1.9}dialog::backdrop{background:#18352c70}dialog h2{font-size:27px;margin-bottom:12px}dialog>p{font-size:14px;background:#faf6ed;padding:12px 16px;margin-bottom:19px}dialog dl{margin:0 0 24px}dialog dl>div{padding:13px 0;border-bottom:1px solid #e0e6da}dialog dt{font-size:13px;color:#748365}dialog dd{margin:4px 0 0;font-size:16px;white-space:pre-wrap;overflow-wrap:anywhere}dialog button{display:block;margin:0 auto;background:#edf2e7;border:1px solid #aec2a0;color:#294d35;border-radius:4px;padding:12px 24px;font-family:inherit;font-size:16px;cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #88a86d;outline-offset:3px}

.mobile-break{display:none}.mobile-nav,.mobile-nav[hidden]{display:none}
@media(max-width:700px){
body{min-width:0;font-size:17px;line-height:1.9}.wrap{width:100%;padding:0 20px}header{height:78px}.brand span{font-size:25px}.brand b{font-size:12px}.brand small{font-size:12px}.global{display:none}.hamburger{display:flex;width:44px;height:44px;background:none;border:0;padding:11px 9px;flex-direction:column;justify-content:space-around;cursor:pointer}.hamburger i{display:block;height:1px;width:26px;background:#193b32}.mobile-nav:not([hidden]){display:grid;padding:10px 0 18px;border-bottom:1px solid #dce5df}.mobile-nav a{display:flex;justify-content:space-between;padding:12px 4px;font-size:16px}.mobile-nav span{color:#789067}.breadcrumb{font-size:12px;padding-top:16px}.breadcrumb span{margin:0 9px}
.hero{padding:31px 0 32px;grid-template-columns:minmax(0,1fr) 90px;gap:15px 14px}.hero>div:first-child{display:contents}.eyebrow{grid-column:1/-1;font-size:14px;margin:0}.hero h1{grid-column:1;grid-row:2;font-size:31px;line-height:1.65;letter-spacing:0;margin:0}.hero .lead{grid-column:1/-1;font-size:17px;line-height:1.95;margin-top:4px}.hero .lead br{display:none}.letter-art{grid-column:2;grid-row:2;height:83px;width:90px}.letter-art:before{width:90px;height:76px}.letter-art svg{width:72px;height:64px}
.mobile-break{display:block}h2.heading-a{font-size:28px;line-height:1.6;letter-spacing:.01em;border-left-width:3px;padding-left:17px;margin-bottom:23px}.order-note{grid-template-columns:25px minmax(0,1fr);gap:13px;padding:23px 19px;margin-bottom:45px;align-items:start}.order-note svg{width:25px;height:29px;margin-top:3px}.order-note strong{font-size:17px;line-height:1.85;margin-bottom:11px}.order-note p{font-size:15px;line-height:1.95}.order-note a{grid-column:2;font-size:15px;min-height:48px;margin-top:3px}.contact-layout{grid-template-columns:minmax(0,1fr);gap:38px;padding-bottom:35px}.intro{font-size:17px;line-height:1.95;margin-bottom:24px}.intro br{display:none}.preview-note{padding:15px 17px;font-size:14px;line-height:1.9;margin-bottom:27px}.form-panel{border:0;border-radius:0;padding:0;background:transparent}.form-field{margin-bottom:27px}.field-label{font-size:17px;gap:11px;margin-bottom:13px;line-height:1.7}.required,.optional{font-size:12px;padding:2px 7px;flex:none}.type-options{grid-template-columns:minmax(0,1fr);gap:10px}.type-option{padding:15px 17px;min-height:55px;font-size:16px;gap:13px}.type-option input{width:18px;height:18px}.fields-two{grid-template-columns:minmax(0,1fr);gap:0}input[type=text],input[type=email],input[type=url],textarea{font-size:17px;min-height:55px;padding:13px 14px;line-height:1.7}input::placeholder,textarea::placeholder{font-size:15px}textarea{min-height:220px}.hint{font-size:14px;line-height:1.9;margin-top:10px}.privacy-box{padding:20px 18px}.privacy-box summary{font-size:15px;gap:12px;min-height:44px;line-height:1.8}.privacy-box summary:after{flex:none;font-size:18px}.privacy-box details p{font-size:15px;line-height:1.95;padding-top:13px}.consent{font-size:16px;line-height:1.85;gap:12px;margin-top:18px;min-height:48px}.consent input{width:20px;height:20px;margin-top:5px}.submit-area{margin-top:26px}.confirm-button{width:100%;min-height:57px;padding:14px 19px;font-size:17px;gap:15px}.submit-area p{font-size:13px;line-height:1.85;margin-top:12px}
.side-note{padding:25px 23px;margin-top:0}.side-note .kicker{font-size:13px;line-height:1.8;margin-bottom:13px}.side-note h3{font-size:25px;line-height:1.65;margin-bottom:23px}.side-note h3 br{display:none}.side-item{padding-top:21px;margin-top:21px}.side-item strong{font-size:17px;margin-bottom:11px}.side-item p{font-size:16px;line-height:1.95}.reply-note{padding:26px 0 0}.reply-note h3{font-size:23px;line-height:1.7;margin-bottom:13px}.reply-note p{font-size:16px;line-height:1.95}.back-line{display:block;padding-top:25px;font-size:15px;line-height:1.9;margin-bottom:8px}.back-line a{display:table;margin-top:17px;margin-left:auto;padding-bottom:5px}
dialog{width:calc(100% - 32px);max-width:440px;max-height:calc(100dvh - 40px);padding:24px 21px;border-radius:8px;overscroll-behavior:contain}dialog h2{font-size:26px;line-height:1.65;margin-bottom:17px}dialog>p{font-size:14px;line-height:1.9;padding:14px 15px;margin-bottom:19px}dialog dt{font-size:13px}dialog dd{font-size:17px;line-height:1.9;margin-top:7px}dialog dl>div{padding:14px 0}dialog button{font-size:16px;min-height:54px;width:100%;padding:13px 16px}
}

/* Completion must hide controls even when button display rules are present. */
#confirm-dialog [hidden]{display:none!important}
#confirm-dialog[data-state="complete"]{text-align:center;padding-top:38px;padding-bottom:32px}
#confirm-dialog[data-state="complete"] #confirm-title{font-size:clamp(22px,4.8vw,27px);line-height:1.65;margin:0;overflow-wrap:anywhere}
#confirm-dialog[data-state="complete"] .dialog-actions{justify-content:center;margin-top:26px}
#confirm-dialog[data-state="complete"] #close-confirm{flex:0 1 240px;min-width:0;width:100%;margin:0;min-height:54px}
