/* --- Base: 共通の変数とリセット --- */
:root {
    --bg-color: #050505;
    --text-main: #e0e0e0;
    --text-muted: #888888;
    --gold: #c5a059;
    --font-display: 'Cinzel', serif;
    --font-body: 'Noto Sans JP', sans-serif;
}

* { margin: 0; padding: 0; box-sizing: border-box; }
body {
    background-color: var(--bg-color);
    color: var(--text-main);
    font-family: var(--font-body);
    line-height: 1.8;
}
a { text-decoration: none; color: inherit; transition: opacity 0.3s; }
img { width: 100%; display: block; }
ul { list-style: none; }

/* Navigation (Common Structure) */
nav {
    padding: 2rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid rgba(255,255,255,0.1);
}
.logo { font-family: var(--font-display); color: var(--gold); letter-spacing: 0.2em; font-weight: 700; }

/* Footer */
footer { text-align: center; padding: 4rem 0; border-top: 1px solid #222; margin-top: 4rem; font-size: 0.8rem; color: #555;}