#etl-welcome-root{position:fixed;inset:0;z-index:2147481000;display:grid;place-items:center;padding:24px;font-family:"Noto Sans JP","BIZ UDPGothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:#2f2b28}#etl-welcome-root[hidden]{display:none}#etl-welcome-root *{box-sizing:border-box}.etl-welcome-backdrop{position:absolute;inset:0;border:0;background:rgba(22,21,19,.6);backdrop-filter:blur(5px)}.etl-welcome-card{position:relative;width:min(880px,100%);max-height:calc(100dvh - 48px);min-height:620px;display:grid;grid-template-columns:.9fr 1.1fr;overflow:auto;border-radius:18px;background:#fff;box-shadow:0 30px 90px rgba(22,21,19,.3)}.etl-welcome-close{position:absolute;z-index:5;top:17px;right:17px;width:38px;height:38px;border:0;border-radius:50%;background:rgba(255,255,255,.94);color:#2f2b28;font-size:24px;line-height:1;cursor:pointer}.etl-welcome-visual{position:relative;min-height:100%;overflow:hidden;background:#f3f7f8}.etl-welcome-visual:after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(to bottom,rgba(243,247,248,.98),rgba(243,247,248,.72) 20%,transparent 36%,transparent 67%,rgba(243,247,248,.82) 84%,rgba(243,247,248,.98));pointer-events:none}.etl-welcome-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:47% 50%}.etl-welcome-offer{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;padding:40px 38px 35px}.etl-welcome-kicker{margin:0 0 11px;color:#6b6256;font-size:9px;font-weight:700;letter-spacing:.2em}.etl-welcome-number{margin:0;color:#b8770a;font-size:76px;font-weight:700;line-height:.82;letter-spacing:-.085em}.etl-welcome-number span{margin-left:7px;font-size:28px}.etl-welcome-label{margin:12px 0 0;font-size:13px;font-weight:700;letter-spacing:.16em}.etl-welcome-note{margin:auto 0 0;color:#4f4944;font-size:11px;font-weight:600;line-height:1.7}.etl-welcome-content{min-width:0;padding:34px 48px 25px;display:flex;flex-direction:column}.etl-welcome-brand{margin:0 0 21px;font-size:18px;font-weight:800;letter-spacing:-.07em}.etl-welcome-content h2{margin:0;font-size:30px;line-height:1.32;letter-spacing:-.045em}.etl-welcome-lead{margin:10px 0 20px;color:#656463;font-size:13px}.etl-welcome-social{width:100%;min-height:66px;display:grid;grid-template-columns:44px 1fr 24px;align-items:center;gap:12px;padding:9px 16px 9px 11px;border-radius:12px;cursor:pointer;text-align:left}.etl-welcome-social:active,.etl-welcome-submit:active,.etl-coupon-copy:active{transform:translateY(1px)}.etl-welcome-line{border:1px solid #05a849;background:#06c755;color:#082c18}.etl-welcome-google{border:1px solid #d2d2ce;background:#fff;color:#2f2b28}.etl-social-logo{width:44px;height:44px;display:grid;place-items:center;border-radius:10px;background:#fff;color:#06a94c;font-size:9px;font-weight:800}.etl-google-logo{color:#4285f4;background:#f3f4f5;font-family:Arial,sans-serif;font-size:23px}.etl-social-copy{display:flex;min-width:0;flex-direction:column;gap:3px}.etl-social-copy strong{font-size:14px;line-height:1.2;white-space:nowrap}.etl-social-copy small{font-size:10px;opacity:.69}.etl-welcome-divider,.etl-email-divider{display:flex;align-items:center;gap:10px;color:#77716b;font-size:10px}.etl-welcome-divider{height:29px}.etl-email-divider{margin:14px 0 10px}.etl-welcome-divider:before,.etl-welcome-divider:after,.etl-email-divider:before,.etl-email-divider:after{content:"";height:1px;flex:1;background:#e0d6c8}.etl-welcome-consent{margin-top:16px;display:grid;grid-template-columns:18px 1fr;align-items:start;gap:9px;font-size:12px;line-height:1.5;cursor:pointer}.etl-welcome-consent input{width:18px;height:18px;margin:0;accent-color:#b8770a}.etl-welcome-help{margin:5px 0 0 27px;color:#74706c;font-size:9.5px}.etl-email-form label{display:block;margin-bottom:6px;font-size:10px;font-weight:700}.etl-email-row{display:grid;grid-template-columns:1fr auto;gap:7px}.etl-email-row input{min-width:0;height:42px;border:1px solid #b8b1aa;border-radius:9px;padding:0 12px;color:#2f2b28;background:#fff;font-size:12px}.etl-email-row input:focus{outline:0;border-color:#b8770a;box-shadow:0 0 0 3px rgba(184,119,10,.14)}.etl-welcome-submit{height:42px;border:1px solid #2f2b28;border-radius:9px;padding:0 16px;background:#2f2b28;color:#fff;font-size:11px;font-weight:700;white-space:nowrap;cursor:pointer}.etl-welcome-error{margin:5px 0 0;color:#a02018;font-size:10px}.etl-welcome-legal{margin:auto 0 0;padding-top:14px;color:#827d78;font-size:9px;line-height:1.6}.etl-welcome-legal a{text-underline-offset:2px}.etl-coupon-modal{position:fixed;inset:0;z-index:2147482000;display:grid;place-items:center;padding:24px}.etl-coupon-modal[hidden]{display:none}.etl-coupon-card{position:relative;width:min(430px,100%);overflow:hidden;border-radius:18px;background:#fff;box-shadow:0 30px 90px rgba(22,21,19,.3)}.etl-coupon-top{padding:34px 38px 30px;color:#fffaf0;background:#2f2b28;text-align:center}.etl-coupon-top h2{margin:7px 0 0;font-size:25px}.etl-coupon-top p{margin:9px 0 0;font-size:11px;opacity:.78}.etl-coupon-ticket{position:relative;margin:26px 28px 0;min-height:126px;display:grid;grid-template-columns:1fr 1.15fr;align-items:center;border:1px solid #d9c39d;border-radius:14px;background:#fffaf0;color:#b8770a;overflow:hidden}.etl-coupon-value{height:100%;display:flex;align-items:center;justify-content:center;gap:5px;border-right:1px dashed #c9ad7e}.etl-coupon-value strong{font-size:64px;line-height:1;letter-spacing:-.08em}.etl-coupon-value span{font-size:14px;font-weight:800;line-height:1.25}.etl-coupon-code{display:flex;flex-direction:column;align-items:center;gap:7px}.etl-coupon-code span{color:#83776f;font-size:9px}.etl-coupon-code strong{font-size:28px;letter-spacing:.14em}.etl-copy-status{min-height:18px;margin:13px 28px 5px;color:#315c3f;font-size:11px;font-weight:700;text-align:center}.etl-coupon-copy{width:calc(100% - 56px);height:48px;margin:0 28px;border:1px solid #2f2b28;border-radius:10px;background:#2f2b28;color:#fff;font-size:12px;font-weight:700;cursor:pointer}.etl-coupon-fine{margin:12px 28px 24px;color:#77716b;font-size:9.5px;text-align:center}
@media(max-width:720px){#etl-welcome-root,.etl-coupon-modal{align-items:end;padding:12px}.etl-welcome-card{max-height:calc(100dvh - 24px);min-height:0;grid-template-columns:1fr;border-radius:16px}.etl-welcome-visual{min-height:150px}.etl-welcome-visual:after{inset:0 43% 0 0;background:linear-gradient(to right,transparent 72%,#f4ece0 100%)}.etl-welcome-photo{width:57%;object-position:49% 50%}.etl-welcome-offer{padding:21px 20px 18px 57%;justify-content:center;background:#f4ece0}.etl-welcome-kicker{font-size:7px}.etl-welcome-number{font-size:52px}.etl-welcome-number span{font-size:20px}.etl-welcome-label{margin-top:8px;font-size:9px}.etl-welcome-note{display:none}.etl-welcome-content{padding:23px 24px 20px}.etl-welcome-brand{display:none}.etl-welcome-content h2{font-size:24px}.etl-welcome-lead{margin:8px 0 18px}.etl-welcome-social{min-height:60px}.etl-coupon-card{border-radius:16px}}
@media(prefers-reduced-motion:reduce){#etl-welcome-root *,.etl-coupon-modal *{scroll-behavior:auto!important;transition:none!important}}

/* Larger close target for older customers. */
.etl-welcome-close{top:14px;right:14px;width:48px;height:48px;display:grid;place-items:center;border:1px solid rgba(47,43,40,.18);padding:0;background:rgba(255,255,255,.96);font-size:31px;box-shadow:0 4px 14px rgba(47,43,40,.12)}
.etl-welcome-close:focus-visible{outline:3px solid rgba(184,119,10,.35);outline-offset:3px}

@media(max-width:720px){.etl-welcome-offer{background:transparent}}

#etl-line-signup{text-decoration:none}

/* Brand refinement: compact hierarchy, official service marks, larger email controls. */
#etl-welcome-root{z-index:2147483645}
.etl-coupon-modal{z-index:2147483646}
#Jrisk-modal{z-index:2147483647!important}
.etl-welcome-card{border:1px solid rgba(41,39,37,.12);box-shadow:0 28px 80px rgba(22,21,19,.28)}
.etl-welcome-brand{margin-bottom:17px;color:#252321;font-size:19px;font-weight:800;letter-spacing:-.045em}
.etl-welcome-content h2{font-size:26px;line-height:1.38;letter-spacing:-.035em}
.etl-welcome-lead{margin:8px 0 18px}
.etl-welcome-social{min-height:68px;grid-template-columns:48px 1fr 24px;gap:13px;padding:9px 17px 9px 10px;border-radius:11px;transition:border-color .18s ease,box-shadow .18s ease,transform .12s ease}
.etl-welcome-social:hover{box-shadow:0 7px 20px rgba(34,32,29,.1)}
.etl-welcome-line{border-color:#05aa49;background:#06c755;color:#07351b}
.etl-welcome-google{border-color:#b9bbb9;background:#fff;color:#1f1f1f}
.etl-social-logo{width:48px;height:48px;overflow:hidden;border-radius:10px;background:#fff}
.etl-social-logo img{display:block;max-width:100%;height:auto}
.etl-line-logo img{width:40px;height:40px}
.etl-google-logo{background:#fff}
.etl-google-logo img{width:24px;height:24px}
.etl-social-copy strong{font-size:14px;font-weight:700;letter-spacing:-.01em}
.etl-social-copy small{font-size:10px;line-height:1.35}
.etl-email-form label{margin-bottom:8px;font-size:11px}
.etl-email-row{gap:9px}
.etl-email-row input{height:50px;border-color:#aaa49e;border-radius:10px;padding:0 15px;font-size:13px}
.etl-welcome-submit{height:50px;border-radius:10px;padding:0 20px;font-size:12px}

@media(max-width:720px){
  #etl-welcome-root,.etl-coupon-modal{align-items:end;padding:12px 12px calc(82px + env(safe-area-inset-bottom))}
  .etl-welcome-card{max-height:calc(100dvh - 106px - env(safe-area-inset-bottom))}
  .etl-welcome-content{padding:21px 22px 20px}
  .etl-welcome-content h2{font-size:21px;line-height:1.38}
  .etl-welcome-lead{margin:6px 0 14px;font-size:12px}
  .etl-welcome-social{min-height:62px;grid-template-columns:44px 1fr 20px;padding:7px 13px 7px 8px}
  .etl-social-logo{width:44px;height:44px}
  .etl-line-logo img{width:40px;height:40px}
  .etl-email-row input,.etl-welcome-submit{height:50px}
}

/* The visible card stays branded; the exact SHOPLINE Google control is the trusted click layer. */
.etl-google-login-slot{position:relative;width:100%}
.etl-google-login-form{position:absolute!important;z-index:2!important;inset:0!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;overflow:visible!important;border:0!important;opacity:.001!important;pointer-events:none!important}
.etl-google-login-form.is-ready{pointer-events:auto!important}
.etl-google-login-form.is-busy{pointer-events:none!important}
#etl-third-login-container,.etl-sdk-google-wrapper,.etl-sdk-google-control{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important}
.etl-sdk-google-control{display:block!important;cursor:pointer!important}
.etl-google-login-slot:focus-within .etl-welcome-google{outline:3px solid rgba(66,133,244,.3);outline-offset:3px}
.etl-google-subscribe-form{position:fixed!important;left:-2px!important;bottom:-2px!important;width:1px!important;height:1px!important;margin:0!important;padding:0!important;overflow:hidden!important;border:0!important;opacity:.001!important;pointer-events:none!important}
.etl-welcome-google:disabled,.etl-welcome-submit:disabled{cursor:wait;opacity:.62;transform:none}
.etl-welcome-error[data-state="status"]{color:#6f4a08;font-weight:600}
.etl-email-form.is-google-busy{pointer-events:none;opacity:.68}
.etl-email-form[data-etl-email-phase="challenge"] .etl-welcome-submit:disabled{cursor:default;opacity:.78}
.etl-email-form[data-etl-email-phase="challenge"] .etl-email-row input{background:#f7f5f2;color:#5f5a55}
.etl-email-challenge-cancel{min-height:44px;margin:8px 0 0;padding:0 14px;border:1px solid #b8770a;border-radius:9px;background:#fffaf0;color:#6f4a08;font-size:11px;font-weight:700;cursor:pointer}
.etl-email-challenge-cancel[hidden]{display:none}
.etl-email-challenge-cancel:focus-visible{outline:3px solid rgba(184,119,10,.3);outline-offset:2px}

/* Brand-balanced hierarchy: one clear offer without turning every line into a headline. */
.etl-welcome-content h2{color:#24211f;font-family:"YuMincho","Hiragino Mincho ProN","Hiragino Mincho Pro","Noto Serif JP",serif;font-size:27px;font-weight:600;line-height:1.34;letter-spacing:-.025em}
.etl-welcome-benefit{align-self:auto;margin:9px 0 0;padding:0;border:0;border-radius:0;background:transparent;color:#986006;font-size:15px;font-weight:700;line-height:1.5;letter-spacing:.01em}
.etl-welcome-lead{margin:3px 0 17px;color:#5e5955;font-size:14px;line-height:1.55}
.etl-welcome-social{min-height:68px}
.etl-social-copy strong{font-size:15px;line-height:1.3;white-space:normal}
.etl-social-copy small{font-size:12px;line-height:1.4;opacity:.78}
.etl-welcome-divider,.etl-email-divider{font-size:11px}
.etl-welcome-consent{grid-template-columns:20px 1fr;gap:9px;font-size:13.5px;line-height:1.5}
.etl-welcome-consent input{width:20px;height:20px}
.etl-welcome-help{margin:5px 0 0 29px;font-size:11px;line-height:1.5}
.etl-email-form label{font-size:13px}
.etl-email-row input{height:52px;font-size:16px}
.etl-welcome-submit{height:52px;font-size:14px}
.etl-welcome-error{font-size:12px;line-height:1.5}
.etl-welcome-legal{font-size:10.5px;line-height:1.6}
.etl-coupon-copy{font-size:15px}

@media(max-width:720px){
  .etl-welcome-visual{min-height:132px}
  .etl-welcome-offer{padding:18px 17px 16px 58%}
  .etl-welcome-kicker{margin-bottom:8px;font-size:8px}
  .etl-welcome-number{font-size:54px}
  .etl-welcome-label{font-size:10px}
  .etl-welcome-content{padding:20px 22px 18px}
  .etl-welcome-content h2{font-size:23px;line-height:1.36}
  .etl-welcome-benefit{margin-top:7px;font-size:15px}
  .etl-welcome-lead{margin:2px 0 14px;font-size:14px;line-height:1.5}
  .etl-welcome-social{min-height:64px;grid-template-columns:44px 1fr 20px;gap:11px;padding:8px 13px 8px 9px}
  .etl-social-logo{width:44px;height:44px}
  .etl-social-copy strong{font-size:15px}
  .etl-social-copy small{font-size:12px}
  .etl-welcome-divider{height:29px}
  .etl-welcome-consent{margin-top:13px;font-size:13.5px}
  .etl-email-divider{margin:13px 0 9px;color:#625c56;font-size:12px;font-weight:600}
  .etl-email-form label{margin-bottom:7px;font-size:13px}
  .etl-email-row{grid-template-columns:minmax(0,1fr) 88px;gap:8px}
  .etl-email-row input,.etl-welcome-submit{height:52px}
  .etl-welcome-submit{padding:0 10px;font-size:14px}
  .etl-welcome-legal{padding-top:11px;font-size:10.5px}
}

/* Keep every signup route visible on shorter phones without shrinking touch targets. */
@media(max-width:720px) and (max-height:720px){
  #etl-welcome-root,.etl-coupon-modal{padding:8px 12px calc(56px + env(safe-area-inset-bottom))}
  .etl-welcome-card{max-height:calc(100dvh - 64px - env(safe-area-inset-bottom))}
  .etl-welcome-visual{min-height:108px}
  .etl-welcome-offer{padding:13px 15px 12px 58%}
  .etl-welcome-kicker{margin-bottom:5px;font-size:7px}
  .etl-welcome-number{font-size:47px}
  .etl-welcome-number span{font-size:18px}
  .etl-welcome-label{margin-top:6px;font-size:9px}
  .etl-welcome-content{padding:15px 20px 14px}
  .etl-welcome-content h2{font-size:21px;line-height:1.32}
  .etl-welcome-benefit{margin-top:5px;font-size:14px}
  .etl-welcome-lead{display:none}
  .etl-welcome-social{min-height:58px;grid-template-columns:42px 1fr 18px;gap:10px;padding:7px 12px 7px 8px}
  .etl-social-logo{width:42px;height:42px}
  .etl-line-logo img{width:38px;height:38px}
  .etl-social-copy strong{font-size:14.5px}
  .etl-social-copy small{font-size:11.5px}
  .etl-welcome-divider{height:25px}
  .etl-welcome-consent{margin-top:10px;font-size:13px}
  .etl-welcome-help{margin-top:3px;font-size:10.5px}
  .etl-email-divider{margin:10px 0 7px;font-size:11.5px}
  .etl-email-form label{margin-bottom:5px;font-size:12.5px}
  .etl-email-row input,.etl-welcome-submit{height:50px}
  .etl-welcome-legal{padding-top:9px;font-size:10px}
}
