/* Original white v1 chrome. Source: lp/v1/site/assets/site.css. */
.site-header{ position:sticky; top:0; z-index:50; background:rgba(255,255,255,0.8); backdrop-filter:saturate(180%) blur(20px); -webkit-backdrop-filter:saturate(180%) blur(20px); border-bottom:1px solid #E9EDF4; }
.site-header .bar{ margin:0 auto; padding:0 clamp(24px,3vw,56px); height:60px; display:flex; align-items:center; gap:clamp(24px,3.5vw,56px); }
.site-header .brand{ display:flex; align-items:center; text-decoration:none; flex:0 0 auto; }
.site-header .brand img{ height:30px; width:auto; display:block; }
.site-nav{ display:flex; align-items:center; gap:clamp(18px,2.2vw,30px); flex:1; }
.site-nav a{ font-size:13.5px; color:var(--body); text-decoration:none; font-weight:500; transition:color .15s ease-out; }
.site-nav a:hover, .site-nav a[aria-current="page"]{ color:var(--accent); }
.site-header .actions{ display:flex; align-items:center; gap:20px; flex:0 0 auto; }
.site-header .actions .login{ font-size:13.5px; color:var(--body); text-decoration:none; font-weight:500; transition:color .15s ease-out; }
.site-header .actions .login:hover{ color:var(--accent); }
.site-header .btn{ display:inline-block; font-size:13.5px; font-weight:600; color:#ffffff; background:var(--accent); padding:8px 16px; border-radius:980px; text-decoration:none; border:none; cursor:pointer; transition:background .15s ease-out; }
.site-header .btn:hover{ background:var(--accent-dark); }
.site-header .btn-lg{ font-size:17px; padding:13px 26px; }
.site-header .btn-ghost{ color:var(--accent); background:#ffffff; border:1px solid var(--accent); }
.site-header .btn-ghost:hover{ background:#eef0f9; }
.hamburger{ display:none; align-items:center; justify-content:center; width:40px; height:40px; border:none; background:transparent; cursor:pointer; color:var(--ink); padding:0; margin-left:auto; }
.mobile-menu{ display:none; border-top:1px solid #EDF1F7; background:rgba(255,255,255,0.97); backdrop-filter:saturate(180%) blur(20px); -webkit-backdrop-filter:saturate(180%) blur(20px); padding:14px clamp(18px,4vw,24px) 22px; flex-direction:column; gap:4px; }
.mobile-menu a{ font-size:16px; color:var(--ink); text-decoration:none; font-weight:500; padding:12px 0; border-bottom:1px solid #EDF1F7; }
.mobile-menu .btn{ margin-top:12px; font-size:16px; padding:13px 18px; border-radius:14px; text-align:center; color:#ffffff; border-bottom:none; }
@media (max-width:900px){
  .site-nav, .site-header .actions{ display:none; }
  .hamburger{ display:inline-flex; }
  .mobile-menu.open{ display:flex; }
}
.site-footer{ background:#ffffff; border-top:1px solid var(--line); }
.site-footer .inner{ max-width:1180px; margin:0 auto; padding:clamp(40px,5vw,56px) clamp(20px,5vw,32px) 32px; }
.site-footer .cols{ display:flex; flex-wrap:wrap; justify-content:space-between; gap:32px; }
.site-footer .col-title{ font-size:12.5px; font-weight:700; color:var(--ink); margin-bottom:12px; }
.site-footer .links{ display:flex; flex-direction:column; gap:9px; }
.site-footer .links a{ font-size:13px; color:var(--body); text-decoration:none; transition:color .15s ease-out; }
.site-footer .links a:hover{ color:var(--accent); }
.site-footer .legal{ margin-top:32px; padding-top:20px; border-top:1px solid var(--line); display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; font-size:12px; color:var(--faint); }
.socials{ display:flex; gap:14px; margin-top:16px; }
.socials a{ color:var(--body); display:inline-flex; transition:color .15s ease-out; }
.socials a:hover{ color:var(--accent); }
.nav-drop{ position:relative; display:flex; align-items:center; align-self:stretch; }
.nav-drop .drop{ display:none; position:absolute; top:100%; left:50%; transform:translateX(-50%); min-width:176px; background:rgba(255,255,255,0.92); backdrop-filter:saturate(180%) blur(20px); -webkit-backdrop-filter:saturate(180%) blur(20px); border-radius:0 0 16px 16px; padding:12px 10px; box-shadow:0 28px 44px -30px rgba(11,16,40,0.3); z-index:60; }
.nav-drop .drop-head{ font-size:11px; font-weight:600; letter-spacing:0.04em; color:var(--faint); padding:2px 12px 8px; }
.nav-drop:hover .drop, .nav-drop.open .drop, .nav-drop:focus-within .drop{ display:block; animation:drop-in .18s ease-out; }
@keyframes drop-in{ from{ opacity:0; transform:translate(-50%,-6px);} to{ opacity:1; transform:translate(-50%,0);} }
.nav-drop .drop a{ display:flex; align-items:center; gap:9px; font-size:14px; font-weight:600; color:var(--ink); text-decoration:none; white-space:nowrap; padding:9px 12px; border-radius:10px; transition:color .15s ease-out, background .15s ease-out; }
.nav-drop .drop a:hover{ color:var(--accent); background:#EDF1F7; }
.nav-drop .drop a svg{ color:var(--accent); flex:0 0 auto; }
@media (prefers-reduced-motion: reduce){ .nav-drop .drop{ animation:none; } }
.site-header,.site-footer{--accent:#26369E;--accent-dark:#1B2570;--ink:#12193F;--body:#425466;--muted:#697386;--faint:#8593A6;--surface:#F6F9FC;--line:#E3E8EF;color:var(--ink)}

.site-header,.site-footer{font-family:"Noto Sans JP","Hiragino Sans","Helvetica Neue",Arial,sans-serif;font-size:17px;line-height:1.6;letter-spacing:normal;font-weight:400;text-transform:none}

body{margin:0}*,*:before,*:after{box-sizing:border-box}.site-header img,.site-footer img{max-width:100%}html:not(.js) [data-demo],html:not(.js) [data-signal-demo],html:not(.js) [data-h-conversation],html:not(.js) .hamburger{display:none}@media(max-width:900px){html:not(.js) .mobile-menu{display:flex}.site-header .mobile-menu.open{max-height:calc(100dvh - 61px);overflow-y:auto}}
