.snav { display:none; }
@media (min-width:900px) {
  .snav { position:sticky; top:0; z-index:100; height:60px; padding:0 40px; display:flex; align-items:center; justify-content:space-between;
    background:rgba(255,255,255,.92); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); border-bottom:1px solid var(--line, #EEEEEC);
    font-family:'Noto Sans JP',sans-serif; line-height:1.8; }
  .snav-logo { display:flex; align-items:center; text-decoration:none; }
  .snav-logo img { height:30px; width:auto; display:block; }
  .snav-links { display:flex; gap:24px; list-style:none; align-items:center; margin:0; padding:0; }
  .snav-links a { color:var(--sub, #777); text-decoration:none; font-size:13px; font-weight:700; letter-spacing:.04em; transition:color .25s; }
  .snav-links a:hover, .snav-links a.current { color:var(--cherry, #FF2D55); }
  .snav-links a.snav-cta { background:var(--cherry, #FF2D55); color:#fff; padding:9px 22px; border-radius:999px; font-weight:900; box-shadow:0 6px 16px -6px rgba(255,45,85,.6); }
  .snav-links a.snav-cta:hover { color:#fff; }
  .snav-sns { display:flex; align-items:center; gap:14px; margin-left:18px; }
  .snav-sns a { color:var(--sub, #777); display:flex; align-items:center; transition:color .25s; }
  .snav-sns a:hover { color:var(--cherry, #FF2D55); }
  .snav ~ .app .topbar { top:60px; }
  .snav ~ .app .tabwrap { top:110px; }
  .snav ~ .app.hub .tabwrap { top:60px; }
}
@media (min-width:900px) and (max-width:1180px) {
  .snav { padding:0 24px; }
  .snav-links { gap:16px; }
  .snav-links a { font-size:12px; }
  .snav-sns { display:none; }
}
