@charset "UTF-8";

/* =============================================================================
   ニュースページ専用CSS
   ページID: 1482（ニュース）/ 351（旧NEWS）
   ============================================================================= */


/* =============================================================================
   アーカイブレイアウト
   ============================================================================= */

.swell-block-fullWide__inner {
    overflow: hidden;
}

.archive .top_news .p-postList .p-postList__item {
    margin: 1em 32px 0 0;
    width: calc(50% - 32px);
}

@media screen and (min-width: 600px) {
    .top_news .c-tabBody {
        padding: 2em 0;
    }
}

/* タブリスト下線の右方向への延長 */
.c-tabList {
    position: relative;
}

.c-tabList::before {
    content: "";
    background-color: #CFE9F5;
    width: 1000px;
    height: 1px;
    position: absolute;
    bottom: 0;
    right: -1000px;
}

.archive h3.is-style-section_ttl {
    font-size: 1.1em;
    padding-top: 76px;
    text-align: left;
}

.is-style-default > .c-tabList .c-tabList__button {
    opacity: 1;
}

.p-postList__cat {
    font-size: 14px;
}

.top_news .p-postList.-type-card {
    margin-left: 0;
    margin-right: 0;
}

/* ニュース一覧：カードタイトル下線 */
.swell-block-tab.top_news .p-postList__item h3.c-postTitle {
    padding-bottom: 12px;
    border-bottom: 0.5px solid rgba(0, 0, 0, 0.15);
}

/* SP */
@media screen and (max-width: 959px) {
    .post_content .is-style-section_ttl.h2_news {
        margin: 0 auto 40px;
        width: fit-content;
        font-size: 40px;
        padding-right: 85px;
    }

    .post_content .is-style-section_ttl.h2_news::before {
        left: auto !important;
        right: 0;
        top: 18px;
        height: 16px;
        width: fit-content;
    }

    .archive.swell-block-fullWide {
        padding-top: 100px;
        padding-bottom: 0 !important;
    }

    .archive .top_news .p-postList .p-postList__item {
        margin: 1em 0 0 0;
        width: 100%;
    }

    .top_news {
        overflow: hidden;
    }

    .l-content {
        margin: 0 auto;
    }

    .top_news.is-style-default .c-tabBody {
        padding-left: 0;
        padding-right: 0;
    }

    .top_news .p-postList__body {
        max-width: 100%;
    }

    .c-tabList button,
    .is-style-default > .c-tabList .c-tabList__button[aria-selected=true] {
        color: #126CB1;
    }
}


/* =============================================================================
   Content Views プラグイン（pt-cv-*）
   ============================================================================= */

/* 表示順序：サムネイル → メタ → タイトル → 本文 */
.archive .pt-cv-content-item .pt-cv-ifield {
    display: flex;
    flex-direction: column;
}

.archive .pt-cv-content-item .pt-cv-ifield a                { order: 1; }
.archive .pt-cv-content-item .pt-cv-ifield .pt-cv-meta-fields { order: 2; }
.archive .pt-cv-content-item .pt-cv-ifield h4               { order: 3; margin-top: 12px !important; }
.archive .pt-cv-content-item .pt-cv-ifield .pt-cv-content   { order: 4; }

/* サムネイル */
.archive .pt-cv-thumbnail {
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

@media screen and (max-width: 959px) {
    .archive .pt-cv-thumbnail {
        width: 100%;
    }
}

/* タイトル */
.archive h4.pt-cv-title {
    padding: 0;
    border-left: none;
}

.archive h4.pt-cv-title a {
    color: #333;
    font-size: 24px;
    font-weight: bold;
}

/* メタ情報エリア（カテゴリ + 日付） */
.pt-cv-meta-fields {
    display: flex;
    justify-content: space-between;
}

.pt-cv-meta-fields > span:nth-of-type(2) {
    display: none;
}

.pt-cv-meta-fields .terms        { order: 1; }
.pt-cv-meta-fields .entry-date   { order: 2; }

.pt-cv-meta-fields .terms a {
    padding: 4px 8px;
    color: #ffffff;
}

/* カテゴリ別バッジカラー */
.pt-cv-meta-fields .pt-cv-tax-nourakudou { background-color: #D79E3B; }
.pt-cv-meta-fields .pt-cv-tax-econowa   { background-color: #3BA6D7; }
.pt-cv-meta-fields .pt-cv-tax-news      { background-color: #126CB1; }

/* 投稿日時 */
time {
    color: #99C9E6;
}

/* ページネーション */
.pt-cv-pagination-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
}

.pt-cv-pagination-wrapper .pagination li.cv-pageitem-number a,
.pt-cv-pagination-wrapper .pagination li.cv-pageitem-next a,
.pt-cv-pagination-wrapper .pagination li.cv-pageitem-prev a {
    border: none;
    color: #333;
    opacity: 0.5;
}

.pt-cv-pagination-wrapper .pagination li.cv-pageitem-number.active a {
    color: #000;
    background-color: #ffffff;
    font-weight: bold;
    opacity: 1;
}
