body {
    margin: 0;
    font-family: Arial, sans-serif;
    display: flex;
    flex-direction: row;  /* 横並び */
    background: #fff;
    color: #333;
}

/* 左サイドバー */
.sidebar-left {
    width: 250px;
    background: #fafafa;
    padding: 0px;
    box-sizing: border-box;
    border-right: 1px solid #ddd;
    min-height: 100vh; /* 画面全体の高さに固定 */
}

/* メインコンテンツ */
.main {
    flex: 1;
    padding: 20px;
    box-sizing: border-box;
}

/* 右サイドバー */
.sidebar-right {
    width: 250px;
    background: #f0f0f0;
    padding: 20px;
    box-sizing: border-box;
    border-left: 1px solid #ccc;
    min-height: 100vh; /* 画面全体の高さに固定 */
}

/* 見出しなど */
h1, h2 { color: #b12d32; }
a { color: #b12d32; text-decoration: none; }
a:hover { text-decoration: underline; }
.age-warning { background: #fee; border: 1px solid #b12d32; padding: 10px; margin-bottom: 20px; font-weight: bold; }
.article-list { list-style: none; padding-left: 0; }
.article-list li { margin-bottom: 10px; }

/* 左サイドバー内のリンク */
.sidebar-left h2,
.sidebar-right h2 {
    font-size: 1.2em;
    margin-bottom: 10px;
}
.sidebar-left ul,
.sidebar-right ul {
    list-style: none;
    padding: 0;
}
.sidebar-left li,
.sidebar-right li {
    margin-bottom: 8px;
}
.sidebar-left a,
.sidebar-right a {
    color: #1a0dab;
}
.sidebar-left a:hover,
.sidebar-right a:hover {
    text-decoration: underline;
}

.footer {
    margin-top: 40px;
    font-size: 12px;
    color: #999;
    border-top: 1px solid #ccc;
    padding-top: 10px;
}

.toggle-btn {
    cursor: pointer;
    color: blue;
    text-decoration: underline;
    background: none;
    border: none;
    padding: 0;
    font-size: 1em;
}
