

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;600;800&family=Orbitron:wght@500;700;900&display=swap');
:root{
  --txt:#eaf3ff; --muted:#9fb3ffcc; --primary:#2bd8ff; --secondary:#7a00ff; --accent:#ff2bd6;
  --radius-base:22px;
}
html,body{font-family:'Noto Sans JP', system-ui, -apple-system, Segoe UI, Arial, 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;color:var(--txt);}
.topbar{position:sticky;top:0;z-index:10;backdrop-filter:blur(10px) saturate(140%);background:linear-gradient(90deg,rgba(6,12,32,.7),rgba(6,12,32,.35));border-bottom:1px solid rgba(255,255,255,.06)}
.container{max-width:1120px;margin:0 auto;padding:14px 16px;display:flex;align-items:center;gap:16px}
.brand{font:900 20px/1 'Orbitron';letter-spacing:.2em}
.panel{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-base);box-shadow:0 20px 60px rgba(0,0,0,.45)}
.panel-header{padding:18px;border-bottom:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:space-between}
.panel-title{font:900 16px/1 'Orbitron';letter-spacing:.18em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.panel-body{padding:18px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 16px;border-radius:14px;border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(90deg,var(--primary),#76f5ff);color:#031016;font-family:'Orbitron';font-weight:800;letter-spacing:.18em;text-transform:uppercase;cursor:pointer}
.btn.secondary{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));color:var(--txt)}

:root{ --safe-pad: clamp(10px, 3vw, 22px); }
img,video,canvas{ max-width:100%; height:auto; }
.container{ padding-inline: var(--safe-pad) !important; }
.shell{ padding: clamp(12px, 3vw, 22px) !important; }
.panel{ width: min(1100px, 100%) !important; margin-inline:auto; }
.two{ display:grid; grid-template-columns:1fr 1fr; gap: clamp(8px, 2.4vw, 12px) }
@media (max-width:1024px){ .two{ grid-template-columns:1fr } .panel-header{flex-wrap:wrap;gap:10px} }
@media (max-width:640px){ .btn{ width:100% } .panel-body{ padding: clamp(12px, 3vw, 18px) !important } }
html,body{ overflow-x:hidden; }


html, body { background:#ffffff !important; background-image:none !important; }




input[type="date"] {
  font-variant-numeric: tabular-nums;
}
input[type="date"]::-webkit-datetime-edit { padding: 0 8px; }
input[type="date"]::-webkit-datetime-edit-year-field,
input[type="date"]::-webkit-datetime-edit-month-field,
input[type="date"]::-webkit-datetime-edit-day-field {
  padding: 0 2px;
}

input[type="date"]::-webkit-datetime-edit-text {
  padding: 0 6px; 
  opacity: .8;
}


@supports (-moz-appearance: none) {
  input[type="date"] { padding-left: 10px; letter-spacing: 0; }
}



.input.is-error { outline: 2px solid #ff4d4f !important; box-shadow: 0 0 0 4px rgba(255,77,79,.15) !important; }



.site-footer{ border-top:1px solid var(--border); padding:0; background:transparent; }
.site-footer .container{
  max-width:1100px; margin:0 auto; padding:18px 20px;
  display:flex; align-items:center; justify-content:space-between; gap:12px;
}
.site-footer .company{ font-weight:600; font-size:13px; line-height:1.5; }
.site-footer .copyright{ font-size:12px; color:var(--muted); }
.site-footer .foot-nav{ display:flex; align-items:center; gap:10px; font-size:12px; }
.site-footer .foot-nav a{ color:var(--muted); text-decoration:none; }
.site-footer .foot-nav a:hover{ text-decoration:underline; }
.site-footer .dot{ color:var(--muted); }
@media (max-width:640px){
  .site-footer .container{ flex-direction:column; align-items:flex-start; gap:6px; }
  .site-footer .foot-nav{ gap:8px; }
}

