@media (max-width:800px){
  body{font-size:14px;overflow-x:hidden;-webkit-text-size-adjust:100%}
  header{height:auto;min-height:64px;padding:12px 14px;flex-wrap:wrap;gap:8px 12px;position:sticky;top:0}
  .brand{font-size:20px}.account{margin-left:auto;max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account a{margin-left:6px}
  nav{order:3;width:calc(100% + 28px);margin:4px -14px -12px;padding:0 14px 10px;overflow-x:auto;gap:8px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  nav::-webkit-scrollbar{display:none}nav a{flex:0 0 auto;background:#f4f7f5;border:1px solid var(--line);border-radius:99px;padding:7px 11px;font-size:12px;white-space:nowrap}
  main{width:100%;padding:24px 14px 64px}.heading{align-items:stretch;gap:14px;flex-direction:column;margin-bottom:20px}.heading h1{font-size:27px;overflow-wrap:anywhere}.heading .button{width:100%;text-align:center}
  .stats,.grid,.steps,.admin-stats,.service-grid,.admin-two,.plan-grid{grid-template-columns:minmax(0,1fr)}.stats{gap:10px}.stats article,.panel{padding:18px;border-radius:10px}.stats strong{font-size:25px}.steps a{border-right:0;border-bottom:1px solid var(--line);padding:13px 4px}
  .form-grid{gap:16px}input,select,textarea{min-height:44px;font-size:16px}input[type="checkbox"],input[type="radio"]{min-height:auto;min-width:20px;width:20px;height:20px}.check{display:flex!important;align-items:flex-start;gap:9px;font-size:14px}
  .button,button{min-height:44px;padding:11px 15px}.form-grid>button,.panel>form>button{width:100%}.inline{width:100%;flex-wrap:wrap;align-items:stretch}.inline>*{flex:1 1 120px}.inline input{width:100%}
  .table{width:calc(100% + 18px);margin-right:-18px;padding-right:18px;overflow-x:auto;-webkit-overflow-scrolling:touch}.table table{min-width:680px}.table:after{content:'横にスクロールできます';display:block;position:sticky;left:0;padding:6px 0;color:var(--muted);font-size:10px}
  .sheet-row{align-items:flex-start;gap:10px;flex-wrap:wrap}.sheet-row>span:first-child{flex:1 1 180px}.sheet-row select,.sheet-row button{width:100%;min-width:0}.actions{flex-wrap:wrap}.actions button{flex:1 1 100px}
  .proposal-tabs{margin-right:-14px;padding-right:14px;-webkit-overflow-scrolling:touch}.score{max-width:none}.score-number{font-size:44px}
  .auth{display:block;min-height:100vh;padding:18px 12px}.auth-card{width:100%;padding:26px 18px;margin:42px auto 20px}.auth-card h1{font-size:25px}
  .tutorial-step{grid-template-columns:42px minmax(0,1fr);gap:12px;padding:15px}.tutorial-step>a{grid-column:1/-1;text-align:center;width:100%}.tutorial-number{width:40px;height:40px}.tutorial-step h2{font-size:17px}
  .service-grid{gap:8px}.section-head{align-items:flex-start;gap:10px}.health{font-size:12px}.usage-row{gap:10px}.usage-row>span{min-width:0;overflow-wrap:anywhere}.plan-grid{gap:12px}.plan-card>strong{font-size:26px}.legal{padding:18px}.disclaimer{font-size:12px}
  footer{padding:22px 14px 34px;overflow-wrap:anywhere}
  .landing-header{padding:12px 14px;margin:0;width:100%}.landing-header nav{display:none}.landing-header .landing-actions{margin-left:auto;gap:8px}.landing-header .landing-actions>a:first-child{display:none}.landing-header .landing-actions .button{min-height:40px;padding:9px 13px}
  .hero{min-height:auto;grid-template-columns:minmax(0,1fr);gap:28px;padding:42px 18px 58px}.hero-copy h1{font-size:clamp(36px,11vw,48px)}.hero-copy>p{font-size:16px}.hero-actions{display:grid;grid-template-columns:1fr;margin-top:24px}.hero-actions a{text-align:center}.hero-visual{margin:8px 4px 22px}.mock-window{transform:none}.mock-body{grid-template-columns:76px 1fr;min-height:280px}.mock-body aside{padding:16px 9px;gap:17px}.mock-calendar{padding:17px}.c2{left:74px}.c3{left:125px}.c4{left:160px}.floating-card{right:-4px;bottom:-35px;padding:12px 15px}.floating-card strong{font-size:26px}
  .trust-row{gap:10px 18px;flex-wrap:wrap;padding:18px 12px}.landing-section{padding:68px 18px}.section-intro{margin-bottom:32px}.section-intro h2,.safety-section h2,.final-cta h2{font-size:30px}.feature-grid,.home-plans,.safety-section{grid-template-columns:minmax(0,1fr)}.feature-grid{gap:12px}.feature-grid article{padding:22px}.how-grid{grid-template-columns:1fr}.how-grid article{padding:8px}.how-grid article:not(:last-child):after{display:none}.safety-section{gap:24px}.final-cta{padding:68px 18px}.final-cta .button{display:block;width:100%}.landing-footer{grid-template-columns:1fr;padding:30px 18px}.landing-footer div{flex-direction:column;gap:7px}
}
@media (max-width:380px){header{padding-left:10px;padding-right:10px}.account{font-size:11px}main{padding-left:10px;padding-right:10px}.panel,.stats article{padding:15px}.heading h1{font-size:24px}}

.mobile-menu-toggle,.mobile-menu-backdrop,.mobile-nav-account{display:none}
@media (max-width:800px){
  body.mobile-nav-open{overflow:hidden}
  body>header{display:flex;align-items:center;flex-wrap:nowrap;z-index:30;padding:10px 14px;min-height:62px}
  body>header .brand{order:1;flex:0 1 auto;min-width:0}
  body>header .mobile-menu-toggle{order:2;display:inline-flex;flex:0 0 44px;width:44px;height:44px;min-height:44px;margin-left:auto;padding:10px;border:1px solid var(--line);border-radius:9px;background:#fff;align-items:center;justify-content:center;flex-direction:column;gap:5px;position:relative;z-index:32}
  .mobile-menu-toggle span{display:block;width:21px;height:2px;border-radius:2px;background:var(--ink);transition:transform .2s ease,opacity .2s ease}
  .mobile-nav-open .mobile-menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .mobile-nav-open .mobile-menu-toggle span:nth-child(2){opacity:0}
  .mobile-nav-open .mobile-menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  body>header>.account,body>header>.landing-actions{display:none}
  body>header nav,body>header.landing-header nav{display:none;position:absolute;z-index:31;top:100%;left:0;right:0;width:100%;max-height:calc(100vh - 62px);margin:0;padding:12px 14px 22px;background:#fff;border-top:1px solid var(--line);box-shadow:0 18px 35px #17251f26;overflow-y:auto;overflow-x:hidden;flex-direction:column;gap:6px}
  body.mobile-nav-open>header nav,body.mobile-nav-open>header.landing-header nav{display:flex}
  body>header nav a{width:100%;padding:12px 14px;border:0;border-radius:8px;background:#f5f7f6;color:var(--ink);font-size:15px;text-align:left}
  body>header nav a:active{background:var(--mint)}
  .mobile-nav-account{display:grid;grid-template-columns:1fr;gap:6px;margin-top:6px;padding-top:12px;border-top:1px solid var(--line)}
  .mobile-nav-account a{background:var(--green);color:#fff;text-align:center}
  .mobile-menu-backdrop{display:none;position:fixed;z-index:29;inset:0;width:100%;height:100%;min-height:0;padding:0;border:0;border-radius:0;background:#10231b70}
  .mobile-nav-open .mobile-menu-backdrop{display:block}
  body>header.landing-header{position:sticky;top:0}
}
