*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

body {
  font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', 'Hiragino Sans', sans-serif;
  background: #f5f5f7;
  color: #1d1d1f;
  line-height: 1.8;
}

header {
  background: #111214;
  border-bottom: 1px solid #2a2b2f;
  padding: 24px;
  text-align: center;
}

header h1 {
  font-size: 1.4rem;
  font-weight: 700;
  color: #d4af6a;
  letter-spacing: 0.08em;
}

header p {
  font-size: 0.9rem;
  color: #9a9aa0;
  margin-top: 6px;
}

nav {
  background: #fff;
  border-bottom: 1px solid #e0e0e0;
  padding: 12px 16px;
  text-align: center;
}

nav a {
  font-size: 0.9rem;
  margin: 0 10px;
  white-space: nowrap;
}

main { max-width: 720px; margin: 32px auto; padding: 0 16px 64px; }

section {
  background: #fff;
  border-radius: 12px;
  padding: 24px;
  margin-bottom: 20px;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.08);
}

h2 { font-size: 1.1rem; font-weight: 700; margin-bottom: 12px; }
h3 { font-size: 0.98rem; font-weight: 700; margin: 16px 0 6px; }
p { font-size: 0.95rem; color: #3a3a3c; margin-bottom: 8px; }
ul { margin: 8px 0 8px 20px; }
li { font-size: 0.95rem; color: #3a3a3c; margin-bottom: 4px; }

a { color: #a07c34; text-decoration: none; }
a:hover { text-decoration: underline; }

.note {
  background: #fdf7e8;
  border-left: 3px solid #d4af6a;
  padding: 12px 16px;
  border-radius: 6px;
  margin: 12px 0;
}

table { width: 100%; border-collapse: collapse; margin: 12px 0; font-size: 0.9rem; }
th, td { border: 1px solid #e0e0e0; padding: 8px 10px; text-align: left; }
th { background: #fafafa; font-weight: 700; }

footer { text-align: center; font-size: 0.8rem; color: #6e6e73; padding: 24px 16px; }
