.etr-booking{--etr-ink:#333;--etr-muted:#687987;--etr-blue:#009ef3;--etr-pale-blue:#ebf4f8;--etr-paper:#fff;--etr-line:#d9e8f0;--etr-accent:#ffb36b;min-height:100vh;overflow:hidden;background:linear-gradient(180deg,#f7fbfe 0,#fff 34rem);color:var(--etr-ink);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:16px;line-height:1.6}.etr-booking *{box-sizing:border-box}.etr-booking button,.etr-booking input,.etr-booking textarea,.etr-booking select{font:inherit}.etr-booking button{cursor:pointer}.etr-booking [hidden]{display:none!important}.etr-hero{position:relative}.etr-hero:after{content:"";width:240px;height:240px;border:14px solid #e2f3fd;border-radius:50%;position:absolute;right:12%;top:40px;opacity:.85;pointer-events:none}.etr-hero__inner{max-width:1160px;margin:auto;padding:74px 34px 48px;position:relative;z-index:1}.etr-eyebrow,.etr-step-label{color:var(--etr-blue);font-size:12px;font-weight:800;letter-spacing:.2em}.etr-eyebrow{display:flex;gap:9px;align-items:center}.etr-eyebrow span{width:26px;height:3px;background:var(--etr-accent);border-radius:5px}.etr-hero h1{margin:18px 0;max-width:650px;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:700;font-size:clamp(44px,6vw,70px);line-height:1.17;letter-spacing:-.04em}.etr-hero h1 em{color:var(--etr-blue);font-style:normal}.etr-hero__copy{max-width:520px;margin:0;color:#5f6f7b;font-size:16px;line-height:2}.etr-hero__note{display:inline-flex;align-items:center;gap:8px;margin-top:18px;color:var(--etr-blue);font-size:14px;font-weight:700}.etr-hero__note span{width:7px;height:7px;background:var(--etr-accent);border-radius:50%}.etr-step--calendar{max-width:1080px;margin:0 auto 76px;padding:0 20px;display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.etr-card{background:#fff;border:1px solid var(--etr-line);border-radius:4px;box-shadow:0 20px 45px rgba(0,80,130,.08)}.etr-calendar-card{padding:33px 36px 27px}.etr-request-card{padding:33px 34px}.etr-section-heading{display:flex;justify-content:space-between;gap:20px;align-items:end}.etr-step-label{margin:0 0 10px}.etr-card h2{margin:0;font-size:22px;letter-spacing:.04em;color:var(--etr-ink)}.etr-month-switcher{display:flex;align-items:center;gap:17px;font-size:14px}.etr-month-switcher button{width:32px;height:32px;padding:0;color:var(--etr-blue);border:1px solid var(--etr-line);border-radius:50%;background:#fff;font-size:24px;line-height:1}.etr-month-switcher button:disabled{color:#b8c5ce;border-color:#eaf0f4;background:#fbfcfd;cursor:not-allowed}.etr-helper{color:var(--etr-muted);margin:18px 0 22px;font-size:13px}.etr-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.etr-weekday{color:var(--etr-muted);font-size:12px;text-align:center;padding:7px 0 9px}.etr-weekday.is-weekend{color:#ba6f67}.etr-day{aspect-ratio:1.35;position:relative;border:1px solid #eaf0f4;background:#fbfcfd;color:#a5b0b8;border-radius:3px;font-size:16px;transition:.2s ease}.etr-day--blank{visibility:hidden}.etr-day.is-available{color:var(--etr-ink);background:#f2f8fc;border-color:#d7e8f2}.etr-day.is-available:hover{border-color:var(--etr-blue);transform:translateY(-2px)}.etr-day.is-selected{color:#fff;background:var(--etr-blue);border-color:var(--etr-blue);box-shadow:0 7px 14px rgba(0,158,243,.24)}.etr-day i{position:absolute;width:4px;height:4px;bottom:8px;left:50%;transform:translateX(-50%);background:var(--etr-accent);border-radius:50%}.etr-day.is-selected i{background:#eac483}.etr-legend{display:flex;gap:18px;margin-top:23px;color:var(--etr-muted);font-size:12px}.etr-legend span{display:flex;align-items:center;gap:6px}.etr-legend i{width:8px;height:8px;display:inline-block;border-radius:2px}.etr-legend__open{background:#9fd5f5}.etr-legend__closed{background:#edf1f4}.etr-selected-date{padding:15px 16px;margin:24px 0 21px;background:var(--etr-pale-blue);border-left:3px solid var(--etr-blue);display:flex;flex-direction:column;gap:6px}.etr-selected-date span{font-size:12px;color:var(--etr-muted)}.etr-selected-date strong{font-size:17px;letter-spacing:.05em}.etr-slot-list{display:grid;gap:10px}.etr-slot{width:100%;display:flex;align-items:center;gap:12px;border:1px solid var(--etr-line);border-radius:3px;background:#fff;padding:14px;color:var(--etr-ink);text-align:left}.etr-slot.is-active{border-color:var(--etr-blue);background:#f2f8fc}.etr-slot__icon{width:27px;font-size:19px;color:var(--etr-accent);text-align:center}.etr-slot b,.etr-slot small{display:block}.etr-slot b{font-size:15px}.etr-slot small{margin-top:4px;font-size:12px;color:var(--etr-muted)}.etr-radio{width:14px;height:14px;margin-left:auto;border:1px solid #b8c6cf;border-radius:50%}.etr-slot.is-active .etr-radio{border:4px solid var(--etr-blue)}.etr-notice{display:flex;gap:10px;margin:23px 0;padding:13px;background:#fcf8f0;color:#766a58;font-size:12px;line-height:1.7}.etr-notice>span{flex:0 0 auto;width:17px;height:17px;border:1px solid #cfad78;border-radius:50%;text-align:center;line-height:16px;font-family:Georgia,serif}.etr-notice p{margin:0}.etr-notice strong{color:#a06a28}.etr-primary{width:100%;padding:16px;border:0;border-radius:3px;color:#fff!important;background:var(--etr-blue);font-size:14px;font-weight:700;letter-spacing:.08em;transition:.2s ease}.etr-primary:hover{background:#007bbd}.etr-primary:disabled{cursor:not-allowed;opacity:.5}.etr-primary span{float:right;font-size:18px;line-height:16px}.etr-privacy-note{color:var(--etr-muted);font-size:13px;line-height:1.7;text-align:center}.etr-form-card{max-width:1080px;margin:0 auto 76px;padding:31px 36px 38px}.etr-topline{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--etr-line);padding-bottom:20px;color:var(--etr-muted);font-size:12px}.etr-topline .etr-step-label{margin:0}.etr-back{border:0;background:transparent;padding:0;color:var(--etr-blue);font-size:13px}.etr-form-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:52px;padding:35px 22px 0}.etr-form-main h2{font-size:24px}.etr-form-intro{color:var(--etr-muted);font-size:13px;margin:10px 0 25px}.etr-form-intro span,.etr-field label span{color:#b65d50}.etr-field{margin-bottom:18px}.etr-field label{display:block;margin-bottom:7px;font-size:14px;font-weight:700}.etr-field input,.etr-field textarea,.etr-field select{width:100%;border:1px solid #d5e2ea;border-radius:3px;background:#fcfdfe;color:var(--etr-ink);padding:12px 13px;font-size:15px;outline:none}.etr-field input:focus,.etr-field textarea:focus,.etr-field select:focus{border-color:var(--etr-blue);box-shadow:0 0 0 3px #dceffa}.etr-field textarea{resize:vertical}.etr-field small{display:block;color:var(--etr-muted);font-size:12px;margin-top:5px}.etr-consent{display:flex;gap:9px;align-items:flex-start;padding:14px;margin:23px 0 19px;background:#f2f8fc;color:#5f6f7b;font-size:12px;line-height:1.6}.etr-consent input{accent-color:var(--etr-blue);margin-top:3px}.etr-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.etr-summary{height:max-content;padding:25px;background:var(--etr-pale-blue);border-top:3px solid var(--etr-blue)}.etr-summary h3{margin:0 0 23px;font-family:Georgia,"Yu Mincho",serif;font-size:24px;font-weight:400}.etr-summary>div{display:flex;flex-direction:column;gap:6px;border-top:1px solid #c6dfed;padding:16px 0}.etr-summary span,.etr-summary small{color:var(--etr-muted);font-size:12px}.etr-summary strong{font-size:18px}.etr-summary>p{padding:13px;margin:0;background:#fcf8f0;color:#806b4f;font-size:12px;line-height:1.7}.etr-confirm-card{max-width:760px;margin:0 auto 100px;padding:34px 42px 38px}.etr-confirm-card h2{margin:30px 0 22px;font-size:24px}.etr-confirm-reservation{display:flex;flex-direction:column;gap:7px;padding:18px;background:var(--etr-pale-blue);border-left:3px solid var(--etr-blue)}.etr-confirm-reservation span,.etr-confirm-reservation small{color:var(--etr-muted);font-size:12px}.etr-confirm-reservation strong{color:var(--etr-ink);font-size:18px}.etr-confirm-list{margin:22px 0 27px;border-top:1px solid var(--etr-line)}.etr-confirm-list div{display:grid;grid-template-columns:150px 1fr;gap:15px;padding:15px 5px;border-bottom:1px solid var(--etr-line)}.etr-confirm-list dt{color:var(--etr-muted);font-size:13px}.etr-confirm-list dd{margin:0;color:var(--etr-ink);font-size:15px;white-space:pre-wrap;word-break:break-word}.etr-confirm-actions{display:flex;flex-direction:row-reverse;gap:12px;align-items:center}.etr-confirm-actions .etr-primary{flex:1}.etr-secondary{border:1px solid var(--etr-blue);border-radius:3px;background:#fff;color:var(--etr-blue);padding:12px 25px;font-size:13px;white-space:nowrap}.etr-error{margin:16px 0;padding:13px;border:1px solid #e8b8b2;background:#fff2f0;color:#8c3e36;font-size:13px}.etr-complete{max-width:680px;margin:0 auto 130px;padding:58px 55px;text-align:center}.etr-complete__mark{width:52px;height:52px;margin:0 auto 23px;display:grid;place-items:center;border-radius:50%;background:var(--etr-blue);color:#fff;font-size:27px}.etr-complete h2{margin:12px 0 15px;font-family:Georgia,"Yu Mincho",serif;font-size:30px;font-weight:400}.etr-complete>p:not(.etr-step-label){color:var(--etr-muted);font-size:14px;line-height:2}.etr-complete__summary{display:flex;flex-direction:column;gap:7px;margin:28px 0 0;padding:17px;background:var(--etr-pale-blue);color:var(--etr-blue);font-size:14px}.etr-complete__summary span{color:var(--etr-muted);font-size:12px}@media(max-width:720px){.etr-hero__inner{padding:55px 22px 45px}.etr-hero:after{right:-80px;top:20px;width:190px;height:190px}.etr-hero h1{font-size:48px}.etr-step--calendar{display:block;padding:0 12px}.etr-calendar-card,.etr-request-card{padding:25px 20px}.etr-request-card{margin-top:12px}.etr-section-heading{align-items:flex-start;flex-direction:column}.etr-month-switcher{width:100%;justify-content:space-between}.etr-day{aspect-ratio:1}.etr-form-card{margin:0 12px 60px;padding:24px 20px 30px}.etr-topline{align-items:flex-start;gap:15px;flex-direction:column-reverse}.etr-form-layout{display:block;padding:28px 0 0}.etr-summary{margin-top:32px}.etr-confirm-card{margin:0 12px 70px;padding:25px 20px 30px}.etr-confirm-card h2{font-size:22px}.etr-confirm-list div{grid-template-columns:100px 1fr;gap:10px}.etr-confirm-actions{flex-direction:column-reverse}.etr-confirm-actions .etr-primary,.etr-confirm-actions .etr-secondary{width:100%}.etr-complete{margin:0 20px 80px;padding:45px 23px}.etr-complete h2{font-size:25px}}

