:root{color-scheme:light;--green:#0e9456;--green-dark:#087246;--ink:#17252c;--muted:#65737c;--line:#dbe9e1;--pale:#eaf7ef;--soft:#f6faf7;--grey:#ecf0ed;--shadow:0 12px 34px rgba(13,57,39,.045)}
*{box-sizing:border-box}html{font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Hiragino Sans","Noto Sans JP","Yu Gothic",Meiryo,sans-serif;-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:#f5f9f6;color:var(--ink);font-size:15px;line-height:1.72}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,textarea:focus-visible{outline:3px solid #63bca0;outline-offset:3px}svg{display:block}svg .stroke{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.shell{max-width:520px;margin:0 auto;min-height:100svh;background:#fff;box-shadow:0 0 0 1px rgba(12,80,49,.025);display:flex;flex-direction:column}.topbar{padding:19px 22px 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ecf1ed}.brand{font-family:Arial,sans-serif;font-weight:800;letter-spacing:.085em;font-size:17px;color:#087748}.subbrand{font-size:10.5px;color:#7c8980;letter-spacing:.07em;margin-top:-5px}.tag{font-size:11px;color:#53866b;border:1px solid #d8eadf;border-radius:100px;padding:3px 10px}.main{padding:23px 20px 36px;flex:1;background:linear-gradient(165deg,#f4fbf6 0%,#fff 42%,#fff 100%)}.steps{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-bottom:29px}.step{border:1px solid #e1eae4;border-radius:11px;min-height:52px;padding:9px 3px;display:flex;align-items:center;justify-content:center;gap:5px;color:#9ba8a1;background:#fff;font-size:11px;font-weight:700;white-space:nowrap}.step .dot{display:grid;place-items:center;height:22px;min-width:22px;border-radius:50%;background:#a5afa9;color:#fff;font-size:12px}.step.on{color:var(--green-dark);border-color:#8bd0a8;background:#f9fffb}.step.on .dot{background:var(--green)}.step.done{color:#5b9f77;background:#f6fbf7}.step.done .dot{background:#76bd95}.eyebrow{margin:0 0 6px;color:var(--green-dark);font-size:12px;font-weight:800;letter-spacing:.06em}.page-title{font-size:25px;line-height:1.4;letter-spacing:-.025em;color:var(--green-dark);margin:0 0 9px;font-weight:800}.subtitle{margin:0;color:#62736b;font-size:13.5px;line-height:1.8}.hero{margin:2px 2px 26px}.hero.compact{margin-bottom:24px}.backlink{display:inline-flex;align-items:center;gap:6px;color:var(--green-dark);font-weight:700;font-size:12px;margin:0 0 24px}.backlink svg{height:16px;width:16px}.message{display:flex;gap:10px;margin:0 0 21px;align-items:flex-start}.avatar{width:32px;min-width:32px;height:32px;border-radius:50%;display:grid;place-items:center;color:var(--green-dark);font-weight:800;font-size:14px;background:#e8f6ed}.bubble{padding:14px 16px;background:#f1f6f2;border:1px solid #ecf2ed;border-radius:3px 16px 16px 16px;color:#263831;font-size:13.5px;line-height:1.85;flex:1}.bubble p{margin:0}.bubble strong{color:var(--green-dark)}.section-heading{font-size:13px;font-weight:800;margin:0 0 12px;color:#1c3830}.choices{display:grid;gap:12px}.choice{width:100%;text-align:left;background:#fff;border:1.3px solid #cfe4d8;border-radius:17px;padding:16px;display:flex;align-items:center;gap:14px;transition:transform .15s,border-color .15s,background .15s;box-shadow:var(--shadow);color:var(--ink)}.choice:active,.service:active{transform:scale(.992)}.choice:hover,.service:hover{border-color:var(--green);background:#fbfffc}.icon-circle{display:grid;place-items:center;min-width:47px;height:47px;border-radius:50%;background:#eaf8ef;color:#0b8650}.icon-circle svg{width:24px;height:24px}.choice-body{flex:1;min-width:0}.choice-title{display:block;font-weight:800;font-size:16px;letter-spacing:-.015em;line-height:1.5}.choice-desc{display:block;color:var(--muted);font-size:11.5px;margin-top:5px;line-height:1.6}.chevron{width:17px;color:var(--green-dark);height:17px}.note{margin-top:22px;padding:13px 15px;background:#f3f7f4;border-radius:12px;color:#62736b;font-size:12px;line-height:1.85}.footer{padding:16px 22px 21px;text-align:center;font-size:11px;color:#8b9b90;border-top:1px solid #f0f3f0;background:#fff}.footer a{color:#488566;text-decoration:underline}.details{display:grid;gap:12px;margin:0 0 20px}.service{border:1.2px solid #d4e5da;background:#fff;border-radius:17px;padding:17px 16px;text-align:left;width:100%;display:flex;gap:13px;align-items:flex-start;box-shadow:var(--shadow);color:var(--ink)}.service .icon-circle{min-width:41px;height:41px}.service .icon-circle svg{width:22px;height:22px}.service-copy{flex:1;min-width:0}.service-title{font-size:16px;font-weight:800;color:#15442e;margin:1px 0 5px}.service-desc{font-size:12px;color:#62766b;margin:0 0 9px}.service ul{list-style:none;margin:0;padding:0;display:grid;gap:3px}.service li{font-size:12.5px;color:#42574b;padding-left:17px;position:relative}.service li:before{content:"";position:absolute;left:0;top:10px;width:6px;height:6px;border-radius:50%;background:#4ca876}.service .chevron{margin-top:11px;flex-shrink:0}.primary{min-height:53px;width:100%;border:0;border-radius:13px;background:var(--green);color:#fff;font-weight:800;font-size:15px;box-shadow:0 6px 14px rgba(20,136,82,.12)}.primary:hover{background:#0a824c}.secondary{min-height:45px;width:100%;background:white;border:1.3px solid #add8bd;border-radius:11px;color:var(--green-dark);font-weight:800;font-size:13px}.cta{margin-top:15px}.tiny{color:#829087;font-size:11.5px;margin:12px 4px 0;line-height:1.75}.callout{margin:17px 0 0;background:#eef8f1;border-radius:13px;padding:14px 16px;font-size:12px;color:#365f49;line-height:1.85}.consult{display:none;border:1px solid #cfe6d8;border-radius:17px;box-shadow:0 9px 26px rgba(10,67,34,.065);margin-top:22px;background:#fff;overflow:hidden}.consult.open{display:block}.consult-head{display:flex;justify-content:space-between;align-items:center;gap:8px;background:#edf7f0;border-bottom:1px solid #daebe0;padding:12px 14px}.consult-head strong{color:var(--green-dark);font-size:15px}.close{border:0;background:transparent;font-size:22px;line-height:1;color:#456858;padding:3px 7px}.consult-log{padding:16px 13px 2px;display:grid;gap:13px}.chatline{display:flex;gap:8px;align-items:flex-start}.chatline.user{justify-content:flex-end}.chatmsg{max-width:90%;border-radius:13px 13px 13px 3px;background:#f0f6f2;padding:11px 13px;font-size:12.5px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.user .chatmsg{background:#e2f5e9;border-radius:13px 13px 3px 13px;color:#0d5b38}.chatbot{width:22px;height:22px;min-width:22px;background:#dfefe5;border-radius:50%;display:grid;place-items:center;color:var(--green-dark);font-weight:800;font-size:10px}.consult-controls{padding:14px;display:grid;gap:9px}.quick{width:100%;min-height:46px;text-align:left;border:1.3px solid #d4e7da;border-radius:10px;background:#fff;color:#244d37;font-weight:700;padding:10px 13px;font-size:13px}.quick:hover{background:#f5fcf7}.consult-label{display:block;font-size:12px;font-weight:800;color:#344c3e;margin-bottom:5px}.consult-textarea{width:100%;min-height:104px;resize:vertical;border:1.4px solid #cddfd2;border-radius:11px;padding:12px;color:var(--ink);background:#fff;line-height:1.7;outline-color:#64b68a}.consult-note{font-size:11.5px;color:#667d6e;line-height:1.75;margin:0}.email-link{color:var(--green-dark);font-weight:700;text-decoration:underline}.consult-buttons{display:grid;gap:9px}.visually-hidden{position:absolute!important;clip:rect(0,0,0,0)!important;width:1px!important;height:1px!important;overflow:hidden!important;white-space:nowrap!important}.noscript{margin:15px 0;background:#fff3dc;padding:10px;color:#654a25;border-radius:10px}.sr-status{font-size:12px;color:var(--green-dark);margin:0}.link-row{margin:12px 0 0;display:flex;gap:8px;justify-content:center;flex-wrap:wrap;font-size:12px;color:#698272}.link-row a{color:#276e4c;text-decoration:underline}
@media(max-width:365px){.main{padding:19px 15px 30px}.topbar{padding-left:17px;padding-right:17px}.step{font-size:10px;gap:4px}.step .dot{height:20px;min-width:20px}.page-title{font-size:23px}.choice{padding:14px 11px;gap:11px}.choice-title{font-size:14.5px}.service{padding:14px 11px;gap:10px}.service-title{font-size:14.5px}.service li{font-size:11.8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}


/* --- SANCHINA canonical Quiz header (ported from quiz/index.php) --- */

#scLiveHeader{
  position:relative;
  flex:0 0 auto;
  width:100%;
  min-height:90px;
  background:#e6002d;
  overflow:visible;
  z-index:9999;
}
#scLiveHeader.sc-ready{
  min-height:90px;
}
#scLiveHeader > *{
  margin-top:0!important;
}
#scHeaderLoading{
  height:90px;
  background:#e6002d;
}
#scLiveHeader.sc-ready #scHeaderLoading{
  display:none;
}
#scQuizStage{
  position:relative;
  flex:1 1 auto;
  min-height:0;
  width:100%;
  overflow:hidden;
  background:#fff;
  z-index:1;
}
#scQuizFrame{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  border:0;
  margin:0;
  padding:0;
  background:#fff;
}
#scHeaderError{
  display:none;
  width:100%;
  height:90px;
  min-height:90px;
  padding:0 18px 0 20px;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  background:#e6002d;
  color:#fff;
  overflow:hidden;
}
#scHeaderError .sc-fallback-logo{
  display:block;
  width:min(43vw,266px);
  height:auto;
  max-height:68px;
  object-fit:contain;
  object-position:left center;
  flex:0 1 auto;
}
#scHeaderError .sc-fallback-actions{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:22px;
  flex:0 0 auto;
}
#scHeaderError .sc-fallback-phone,
#scHeaderError .sc-fallback-menu{
  position:relative;
  display:block;
  width:44px;
  height:52px;
  color:#fff;
  text-decoration:none;
  opacity:.92;
  -webkit-tap-highlight-color:transparent;
}
#scHeaderError .sc-fallback-phone:before{
  content:"";
  position:absolute;
  left:12px;
  top:8px;
  width:15px;
  height:34px;
  border:3px solid currentColor;
  border-top-width:4px;
  border-bottom-width:4px;
  border-radius:12px 8px 8px 12px;
  transform:rotate(14deg);
}
#scHeaderError .sc-fallback-phone:after{
  content:"";
  position:absolute;
  left:20px;
  top:14px;
  width:11px;
  height:22px;
  background:#e6002d;
  border-radius:8px;
  transform:rotate(14deg);
}
#scHeaderError .sc-fallback-menu:before,
#scHeaderError .sc-fallback-menu:after{
  content:"";
  position:absolute;
  left:2px;
  width:40px;
  height:2px;
  background:currentColor;
  border-radius:2px;
}
#scHeaderError .sc-fallback-menu:before{top:17px}
#scHeaderError .sc-fallback-menu:after{top:35px}
#scLiveHeader.sc-error{height:90px!important;min-height:90px!important}
#scLiveHeader.sc-error #scHeaderLoading{display:none!important}
#scLiveHeader.sc-error #scHeaderError{display:flex!important}

@media(max-width:767px){
  #scLiveHeader{min-height:90px}
  #scHeaderLoading{height:90px}
}

/* Agent displays the Quiz's identical fallback until the real site header arrives. */
#scLiveHeader #scHeaderLoading{display:none!important}
#scLiveHeader #scHeaderError{display:flex}
#scLiveHeader.sc-ready #scHeaderError{display:none!important}
/* The Quiz's canonical site header occupies the full page width; the
   Agent's 520px content column stays independent below it. */
#scLiveHeader{isolation:isolate}


/* Same red SANCHINA avatar asset used by the existing quiz conversation. */
.avatar,.chatbot{object-fit:cover;object-position:center;border-radius:50%;background:#bd2f2a;display:block;flex-shrink:0;}
.avatar{width:32px;height:32px;min-width:32px;}
.chatbot{width:25px;height:25px;min-width:25px;}
.consult-ai-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px;}
.consult-ai-actions .secondary{flex:1;min-width:130px;}
.consult-ai-note{font-size:11px;color:#6b7b70;line-height:1.6;margin:0;}
.consult-ai-busy{opacity:.66;pointer-events:none;}


/* /QA/ only: do not import legacy /agent/ chat positioning. */
