@charset "utf-8";

/* ==================================================
   news（お知らせ：個別記事）
   ================================================== */

/* ---------- 記事コンテナ ---------- */
body.news .news-single {
    margin-top: 1em;
}

/* ---------- h1（記事タイトル） ---------- */
body.news .news-single h1 {
    background: none;
    margin: 0;
    padding: 0.6em 0;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.4;
    color: #333;
    border-top: 2px solid #84b716;
    border-bottom: 2px solid #84b716;
}

/* ---------- 日付（個別記事のみ） ---------- */
body.news .news-single h1 + time {
    display: block;
    margin: 0.2em 0 0.8em;
    font-size: 0.9rem;
    color: #555;
    text-align: right;
}

/* ---------- 見出し共通（h2〜h6） ---------- */
body.news .news-single h2,
body.news .news-single h3,
body.news .news-single h4,
body.news .news-single h5,
body.news .news-single h6 {
    margin: 1.6em 0 0.8em;
    font-weight: bold;
    color: #333;
}

/* ---------- h2 ---------- */
body.news .news-single h2 {
    font-size: 1.4rem;
    padding-left: 0.6em;
    border-left: 4px solid #8b6a2e;
}

/* ---------- h3 ---------- */
body.news #container #content #main h3 {
    background: none !important;
    padding: 0 0 0.3em 0 !important;
    height: auto !important;
    line-height: 1.4 !important;
    color: #333 !important;
    font-size: 1.3rem !important;
    margin: 2em 0 0.8em !important;
    position: static !important;
    box-shadow: none !important;
    border-bottom: 1px solid #ccc;
}

/* ---------- h4 ---------- */
body.news .news-single h4 {
    font-size: 1.2rem;
}

/* ---------- h5 ---------- */
body.news .news-single h5 {
    background: none !important;
    margin: 1.4em 0 0.8em !important;
    padding-bottom: 0.4em;
    font-size: 1.05rem;
    border-bottom: 3px double #ccc;
}

/* ---------- h6 ---------- */
body.news .news-single h6 {
    font-size: 1rem;
}

/* ---------- p ---------- */
body.news .news-single p {
    margin-bottom: 2rem;
}

/* ---------- ul ---------- */
body.news .news-single ul {
    margin: 1em 0 1em 1.5em;
}

body.news .news-single ul li {
    background: none !important;
    padding-left: 0 !important;
    margin-bottom: 0.4em;
    list-style-type: disc !important;
}

/* ---------- ol ---------- */
body.news .news-single ol {
    margin: 1em 0 1em 2em !important;
    padding-left: 0 !important;
}

body.news .news-single ol li {
    background: none !important;
    padding-left: 0 !important;
    margin-bottom: 0.4em !important;
    list-style-type: decimal !important;
}

/* ---------- table ---------- */
body.news .news-single table {
    width: 100%;
    border-collapse: collapse;
    margin: 1.5em 0;
}

body.news .news-single th,
body.news .news-single td {
    border: 1px solid #ccc;
    padding: 0.6em 0.8em;
    font-size: 0.95rem;
}

body.news .news-single th {
    background: #f5f5f5;
}

/* ---------- img ---------- */
body.news .news-single img {
    display: block;
    max-width: 100%;
    margin: 1em 0;
}

/* ---------- blockquote ---------- */
body.news .news-single blockquote {
    margin: 1.5em 0;
    padding: 0.8em 1em;
    background: #f9f9f9;
    border-left: 4px solid #ccc;
    color: #555;
}

/* ---------- 記事下のナビ ---------- */
body.news .news-single .news-pager {
    margin: 3em 0 0;
    padding-top: 1.5em;
    border-top: 1px solid #ddd;
}

body.news .news-single .news-pager ul {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 2em;
    list-style: none !important;
    margin: 0;
    padding: 0;
}

body.news .news-single .news-pager li {
    list-style: none !important;
    background: none !important;
    padding: 0 !important;
    margin: 0;
}

body.news .news-single .news-pager a {
    font-size: 0.95rem;
    color: #333;
    text-decoration: none;
}

body.news .news-single .news-pager a:hover {
    text-decoration: underline;
}

body.news .news-single .news-pager .archive a {
    font-weight: bold;
    padding: 0.4em 1.2em;
    border: 1px solid #ccc;
}



/* ==================================================
   お知らせ一覧（archive-news）
   ================================================== */

/* ---------- h1（記事タイトル） ---------- */
body.news .news-archive h1 {
    background: none;
    margin: 0 0 30px 0;
    padding: 0.6em 0;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.4;
    color: #333;
    border-top: 2px solid #84b716;
    border-bottom: 2px solid #84b716;
}

body.news .news-archive ul.news-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

body.news .news-archive ul.news-list li {
    display: flex;
    align-items: center;
    gap: 1.2em;
    padding: 12px 0;
    border-bottom: 1px solid #ddd;
    position: relative;
    background: none !important;
    padding-left: 0 !important;
    margin-bottom: 0;
    list-style: none !important;
}

body.news .news-archive ul.news-list time {
    flex-shrink: 0;
    min-width: 120px;
    font-size: 0.9rem;
    line-height: 1.5;
    color: #666;
}

body.news .news-archive ul.news-list a {
    flex: 1;
    font-size: 1.05rem;
    line-height: 1.5;
    color: #333;
    text-decoration: none;
    padding-right: 1.5em;
}

/* 矢印 */
body.news .news-archive ul.news-list li::after {
    content: "›";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.4rem;
    color: #999;
}

body.news .news-archive ul.news-list li:hover a {
    text-decoration: underline;
}

body.news .news-archive ul.news-list li:hover::after {
    color: #8b6a2e;
}

body.news .news-archive ul.news-list li:hover::after {
    color: #8b6a2e;
}

/* トップに戻る */
body.news .news-archive .news-back {
    margin: 40px 0;
    text-align: center;
}