/* プライバシーポリシー・サポートなど、トップ以外のページ共通スタイル（トップのデザインに合わせる） */
*{margin:0;padding:0;box-sizing:border-box}

body{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:#050816;
  color:#f8fafc;
  line-height:1.8;
}

body::before{
  content:"";
  position:fixed;
  inset:0;
  background:
    radial-gradient(circle at 20% 10%,rgba(6,182,212,.25),transparent 32%),
    radial-gradient(circle at 80% 0%,rgba(37,99,235,.22),transparent 30%);
  z-index:-1;
}

.nav{
  position:sticky;
  top:0;
  z-index:10;
  background:rgba(5,8,22,.78);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(255,255,255,.08);
}

.nav-inner{
  max-width:880px;
  margin:auto;
  padding:16px 24px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
}

.nav-logo{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:800;
  letter-spacing:.08em;
  color:#67e8f9;
  text-decoration:none;
}

.nav-logo img{
  width:34px;
  height:34px;
  border-radius:8px;
}

.nav-links{
  display:flex;
  gap:18px;
  font-size:.9rem;
}

.nav-links a{
  color:#cbd5e1;
  text-decoration:none;
}

main{
  max-width:880px;
  margin:auto;
  padding:56px 24px 80px;
}

h1{
  font-size:clamp(1.8rem,6vw,2.4rem);
  letter-spacing:-.03em;
  margin-bottom:8px;
}

.lead{
  color:#94a3b8;
  margin-bottom:32px;
}

.doc{
  background:rgba(255,255,255,.065);
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  padding:36px;
}

.doc h2{
  font-size:1.2rem;
  color:#e0f2fe;
  margin:32px 0 10px;
}

.doc h2:first-child{
  margin-top:0;
}

.doc h3{
  font-size:1rem;
  margin:18px 0 6px;
}

.doc p,.doc li{
  color:#cbd5e1;
}

.doc ul{
  padding-left:1.4em;
  margin:6px 0;
}

.doc a{
  color:#67e8f9;
  word-break:break-all;
}

.table-wrap{
  overflow-x:auto;
  margin:10px 0;
}

table{
  width:100%;
  border-collapse:collapse;
  font-size:.92rem;
}

th,td{
  text-align:left;
  padding:10px 12px;
  border-bottom:1px solid rgba(255,255,255,.1);
  vertical-align:top;
  color:#cbd5e1;
}

th{
  color:#e0f2fe;
  white-space:nowrap;
}

.contact{
  display:inline-block;
  margin-top:8px;
  padding:12px 18px;
  border-radius:12px;
  background:linear-gradient(90deg,#0891b2,#2563eb,#7c3aed);
  color:#fff !important;
  font-weight:800;
  text-decoration:none;
}

.meta{
  margin-top:32px;
  color:#94a3b8;
  font-size:.9rem;
}

footer{
  padding:36px 24px;
  text-align:center;
  color:#64748b;
  border-top:1px solid rgba(255,255,255,.08);
  font-size:.9rem;
}

footer a{
  color:#94a3b8;
  margin:0 10px;
}

@media(max-width:600px){
  .nav-logo span{
    display:none;
  }

  .doc{
    padding:24px 20px;
  }

  /* スマホでは表を1行ずつカード状に縦並びにする */
  table,tbody,tr,td{
    display:block;
  }

  tr.head{
    display:none;
  }

  tr{
    padding:12px 0;
    border-bottom:1px solid rgba(255,255,255,.1);
  }

  td{
    padding:2px 0;
    border:none;
  }

  td[data-label]::before{
    content:attr(data-label);
    display:block;
    font-size:.78rem;
    color:#67e8f9;
    font-weight:800;
  }

  td br{
    display:none;
  }
}
