/* 基本スタイル */
body {
    background-color: #e1e1d7;
    background-image: url("back_001.gif");
    color: #535353;
    font-family: "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
    line-height: 1.6;
    margin: 0;
    padding: 20px 0;
}

.container {
    width: 726px; /* 元のテーブル最大幅に合わせる */
    margin: 0 auto;
}

/* リンク色 */
a { color: #535353; text-decoration: underline; }
a:visited { color: #535353; }
a:active { color: #aaaaaa; }

.center-box { text-align: center; margin: 20px 0; }

/* 見出しの帯 */
.section-title-box {
    width: 382px;
    height: 28px;
    background-color: #aaaaaa;
    background-image: url("title_s.gif");
    display: flex;
    align-items: center;
    padding-left: 10px;
    margin-bottom: 20px;
}

.main-title {
    font-size: 14px;
    color: #e8e8e8;
    margin: 0;
}

.sub-header-bar {
    background-color: #e0e0d6;
    text-align: center;
    padding: 5px 0;
    margin-bottom: 20px;
}

/* 紹介文エリア（2カラムレイアウト） */
.intro-content {
    display: flex;
    justify-content: space-between;
    text-align: left;
    margin-bottom: 40px;
}

.text-block {
    width: 62%;
    font-size: 13px;
}

.image-block {
    width: 38%;
    text-align: center;
}

/* ターコイズ色のラベル見出し */
.label-teal {
    background-color: #00bdbd;
    color: #e8e8e8;
    width: 206px;
    font-size: 14px;
    text-align: center;
    padding: 4px 0;
    margin: 20px 0 10px 0;
}

.note {
    font-size: 12px;
    margin-top: 15px;
}

/* 検索セクション */
.search-section {
    text-align: center;
    margin: 30px 0;
}

.custom-hr {
    border: none;
    border-top: 1px solid #535353;
    width: 660px;
    margin: 20px auto;
}

/* 法律講座リスト */
.lecture-header {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}

.lecture-icon-box {
    background-color: #9370db;
    width: 225px;
    height: 94px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.lecture-desc {
    padding-left: 20px;
    font-size: 13px;
}

.lecture-label {
    width: 225px;
    text-align: center;
    margin: 10px 0;
}

/* 記事一覧の行 */
.article-item {
    display: flex;
    align-items: baseline;
    font-size: 13px;
    margin-bottom: 8px;
    padding-left: 225px; /* 左側の列幅分空ける */
}

.bullet { color: #8080c0; margin-right: 5px; }
.title { white-space: nowrap; }
.dots { color: #535353; overflow: hidden; margin: 0 5px; }
.author { white-space: nowrap; }

/* ナビゲーション */
.footer-nav ul {
    list-style: none;
    padding: 0;
    margin: 20px 0;
}
.footer-nav li {
    display: inline-block;
    margin: 0 5px;
    font-size: 12px;
}

footer {
    margin-top: 40px;
    font-size: 12px;
}