@charset "UTF-8";
/* ================================================
NEWS共通
================================================ */
.detail-wrap.clm-wrap .txt02 p {
    padding: 0;
    margin: 0;
}
.detail-wrap.clm-wrap .txt02 ul {
    list-style: disc;
    margin: 0 0 1em 1.5em;
    padding: 0;
}
.detail-wrap.clm-wrap .txt02 ol {
    list-style: decimal;
    margin: 0 0 1em 1.5em;
    padding: 0;
}
.detail-wrap.clm-wrap .txt02 li {
    list-style: inherit;
    margin: 0 0 0.25em;
}
.detail-wrap.clm-wrap .txt02 .list-link {
    list-style: none;
    margin-left: 0;
    padding: 1em 0;
}
.detail-wrap.clm-wrap .txt02 .list-link li {
    list-style: none;
}
/* ================================================
NEWS_IDX
================================================ */
/* アンカー遷移時の上余白 */
#NEWS_IDX #news-archive{
    scroll-margin-top: 5em;
}
/*年選択部分　news-year-nav*/
#NEWS_IDX .news-year-nav{
    margin-bottom: 100px;
}
#NEWS_IDX .news-year-list{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}
#NEWS_IDX .news-year-item:not(.news-year-more){
    padding-right: 35px;
    margin-right: 35px;
    border-right: 1px solid #D9D9D9;
}
#NEWS_IDX .news-year-item:nth-last-child(2){
    border-right: none;
}
#NEWS_IDX .news-year-link{
    display: block;
    color: #3A3D43;
    font-size: 1.714em;
    line-height: 1;
    transition: all 0.3s;
}
#NEWS_IDX .news-year-link:hover{
    opacity: 0.6;
}
#NEWS_IDX .news-year-link.is-active{
    font-weight: bold;
}
#NEWS_IDX .news-year-more-inner{
    position: relative;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    border: 1px solid #D9D9D9;
    background-color: #fff;
}
#NEWS_IDX .news-year-select{
    appearance: none;
    width: 100%;
    border: none;
    background: transparent;
    color: #3A3D43;
    font-size: 1.143em;
    line-height: 1;
    padding: 11px 40px 11px 20px;
    cursor: pointer;
}
#NEWS_IDX .news-year-select:focus{
    outline: none;
}
#NEWS_IDX .news-year-more-inner:focus-within{
    outline: 2px solid #004EA2;
    outline-offset: 2px;
}
#NEWS_IDX .news-year-more-inner .ico.arrow{
    position: absolute;
    top: 50%;
    right: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    pointer-events: none;
    transform: translateY(-50%) rotate(90deg);
}
#NEWS_IDX .news-year-more-inner .ico.arrow svg{
    display: block;
    width: 20px;
    height: 20px;
}
/*タブ部分*/
#NEWS_IDX .news-head{
    margin-bottom: 60px;
}
#NEWS_IDX .news-head .ttl3{
    margin-bottom: 60px;
}
/*news一覧部分　news-list*/
#NEWS_IDX .news-list .news-item:first-child{
    padding-top: 0;
    border-top: none;
}

/* ================================================
NEWS_DETAIL
================================================ */
/* 日付・カテゴリ */
#NEWS_DETAIL .date-wrap{
    display: flex;
    align-items: center;
    gap: 60px;
    margin-bottom: 40px;
}
/* 詳細 */
#NEWS_DETAIL .detail-wrap .ttl3{
    border-bottom: 1px solid #D9D9D9;
    padding-bottom: 10px;
    margin-bottom: 60px;
}
/* 関連情報 */
#NEWS_DETAIL .relation-wrap .ttl4{
    border-bottom: 1px solid #D9D9D9;
    margin-bottom: 40px;
}
#NEWS_DETAIL .relation-wrap .relation-link-list{
    display: flex;
    flex-direction: column;
    gap: 20px;
}
#NEWS_DETAIL .relation-wrap .relation-link-item{
    color: #3A3D43;
    font-size: 1.429em;
}
#NEWS_DETAIL .relation-wrap .relation-link-item .relation-link{
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #004EA2;
    text-decoration: underline;
    text-decoration-color: #004EA2;
    text-decoration-thickness: 1px;
    text-underline-offset: 0.12em;
}

/* 引用（common.css の margin/padding/border リセット打ち消し） */
#NEWS_DETAIL .detail-wrap .txt02 blockquote {
    margin: 0.5em 0;
    padding: 0.25em 0 0.25em 0.5em;
    border-left: 4px solid #004EA2;
}

/* 本文の太字・イタリック（common.css の font:inherit 打ち消し） */
#NEWS_DETAIL .detail-wrap .txt02 strong,
#NEWS_DETAIL .detail-wrap .txt02 b {
    font-weight: bold;
}
/*
 * 日本語ゴシック（メイリオ等）は italic 字形がほぼ無く、
 * font-style: italic だけでは画面上判別できないため傾きで明示する。
 */
#NEWS_DETAIL .detail-wrap .txt02 em,
#NEWS_DETAIL .detail-wrap .txt02 i {
    font-style: italic;
    font-synthesis: style;
    display: inline-block;
    transform: skewX(-10deg);
    transform-origin: center bottom;
}

/* 本文画像 */
#NEWS_DETAIL .detail-wrap .txt02 img {
    margin-top: 0.5em;
}

/* 本文のファイル・ページリンクアイコン（共通） */
#NEWS_DETAIL .detail-wrap .txt02 a.file-link .ico,
#NEWS_DETAIL .detail-wrap .txt02 a.page-link .ico {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    vertical-align: -0.13em;
    margin: 0 3px;
    text-decoration: none;
}
#NEWS_DETAIL .detail-wrap .txt02 a.file-link .ico svg,
#NEWS_DETAIL .detail-wrap .txt02 a.page-link .ico svg {
    display: block;
    width: 20px;
    height: 20px;
}

/* 文章中インライン：テキスト行に自然に溶け込む */
#NEWS_DETAIL .detail-wrap .txt02 a.file-link,
#NEWS_DETAIL .detail-wrap .txt02 a.page-link {
    display: inline;
    color: #004EA2;
    text-decoration: underline;
    text-decoration-color: #004EA2;
    text-decoration-thickness: 1px;
    text-underline-offset: 0.12em;
}

/* 「（さらに・・・）」：丸矢印なし・文字色・下線はページリンクと同じ */
#NEWS_DETAIL .detail-wrap .txt02 .kishida-more-toggle {
    display: block;
    margin: 0.5em 0;
}
#NEWS_DETAIL .detail-wrap .txt02 .kishida-more-toggle[hidden] {
    display: none;
}
#NEWS_DETAIL .detail-wrap .txt02 .kishida-more-toggle a.js-kishida-more-expand {
    display: inline;
    color: #004EA2;
    text-decoration: underline;
    text-decoration-color: #004EA2;
    text-decoration-thickness: 1px;
    text-underline-offset: 0.12em;
}

/* 本文テーブル（TinyMCE / Advanced Editor Tools）
 * デフォルト罫線のみ指定。線色・線種・太さはエディタのインライン style を優先（!important 禁止） */
#NEWS_DETAIL .detail-wrap .txt02 table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    margin: 0.5em 0 1em;
    /* デフォルト罫線色。インライン style の border-color があればそちらを優先 */
    border-color: #d9d9d9;
}
/* table → tbody/tr → td へ border-color を伝播させる */
#NEWS_DETAIL .detail-wrap .txt02 tbody,
#NEWS_DETAIL .detail-wrap .txt02 thead,
#NEWS_DETAIL .detail-wrap .txt02 tfoot,
#NEWS_DETAIL .detail-wrap .txt02 tr {
    border-color: inherit;
}
#NEWS_DETAIL .detail-wrap .txt02 th,
#NEWS_DETAIL .detail-wrap .txt02 td {
    border-width: 1px;
    border-style: solid;
    border-color: inherit;
    padding: 8px 12px;
    vertical-align: middle;
    /* common.css の td{text-align:left} を打ち消し、TinyMCE の指定を優先 */
    text-align: unset;
}
#NEWS_DETAIL .detail-wrap .txt02 th[align="left"],
#NEWS_DETAIL .detail-wrap .txt02 td[align="left"] {
    text-align: left;
}
#NEWS_DETAIL .detail-wrap .txt02 th[align="center"],
#NEWS_DETAIL .detail-wrap .txt02 td[align="center"] {
    text-align: center;
}
#NEWS_DETAIL .detail-wrap .txt02 th[align="right"],
#NEWS_DETAIL .detail-wrap .txt02 td[align="right"] {
    text-align: right;
}

/* リスト内リンク：独立した行としてアイコン＋文言を横並び */
#NEWS_DETAIL .detail-wrap .txt02 .list-link a.file-link,
#NEWS_DETAIL .detail-wrap .txt02 .list-link a.page-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
#NEWS_DETAIL .detail-wrap .txt02 .list-link a .ico {
    margin: 0 0 0.18em;
}
#NEWS_DETAIL .relation-wrap .relation-link-item .relation-link .ico {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    margin: 0 0 0.18em;
}
#NEWS_DETAIL .relation-wrap .relation-link-item .relation-link .ico svg {
    display: block;
    width: 20px;
    height: 20px;
}

/* 本文画像：クリックで拡大 */
#NEWS_DETAIL .detail-wrap .txt02 img.js-news-lightbox-img {
    cursor: zoom-in;
}

/* ライトボックス */
body.is-news-lightbox-open {
    position: fixed;
    left: 0;
    right: 0;
    width: 100%;
    overflow: hidden;
}

.news-lightbox {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    box-sizing: border-box;
    background: rgba(0, 0, 0, 0.85);
}

.news-lightbox__stage {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 900px;
    max-height: 90vh;
}

.news-lightbox__img {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 90vh;
    object-fit: contain;
    transform-origin: center center;
    will-change: transform, opacity;
}

.news-lightbox__close {
    position: fixed;
    top: 16px;
    right: 16px;
    z-index: 10001;
    width: 44px;
    height: 44px;
    margin: 0;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.92);
    color: #3A3D43;
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
}

.news-lightbox__close:hover {
    opacity: 0.8;
}

@media only screen and (max-width: 768px) {
    /* ================================================
    NEWS共通
    ================================================ */

    /* ================================================
    NEWS_IDX
    ================================================ */
    /*年選択部分　news-year-nav*/
    #NEWS_IDX .news-year-nav{
        margin-bottom: 12.813vw;
    }
    #NEWS_IDX .news-year-list{
        /* flex-direction: column; */
        /* align-items: stretch; */
        /* gap: 3.906vw; */
        justify-content: space-between;
        gap: 2.906vw 0;
    }
    #NEWS_IDX .news-year-item:not(.news-year-more){
        /* justify-content: center; */
        /* padding-right: 3vw; */
        /* margin-right: 3vw; */
        border-right: none;
        /* padding-bottom: 3.906vw; */
        /* border-bottom: 1px solid #D9D9D9; */
        padding-right: 0;
        margin-right: 0;
        position: relative;
    }
    #NEWS_IDX .news-year-item:not(.news-year-more)::after{
        content: "";
        width: 1px;
        height: 100%;
        background-color: #D9D9D9;
        right: -3.451vw;
        top: 50%;
        transform: translateY(-50%);
        position: absolute;
    }
    #NEWS_IDX .news-year-item:nth-last-child(2)::after{
        display: none;
    }
    #NEWS_IDX .news-year-link{
        font-size: 3.646vw;
    }
    #NEWS_IDX .news-year-select{
        font-size: 2.604vw;
        padding: 2.214vw 6.161vw 2.214vw 1.302vw;
    }
    #NEWS_IDX .news-year-more-inner .ico.arrow{
        right: 1.953vw;
        width: 3.255vw;
        height: 3.255vw;
    }
    #NEWS_IDX .news-year-more-inner .ico.arrow svg{
        width: 3.255vw;
        height: 3.255vw;
    }
    /*タブ部分*/
    #NEWS_IDX .news-head{
        margin-bottom: 11vw;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 3.906vw;
    }
    #NEWS_IDX .news-head .ttl3{
        margin-bottom: 0;
    }
    #NEWS_IDX .news-head .news-tab{
        flex: 0 0 44.271vw;
    }
    #NEWS_IDX .news-head .news-tab-sp-inner{
        width: 46.271vw;
    }
    /*news一覧部分　news-list*/
    #NEWS_IDX .news-item:first-child{
        padding-top: 0;
    }

    /* ================================================
    NEWS_DETAIL
    ================================================ */
    /* 日付・カテゴリ */
    #NEWS_DETAIL .date-wrap{
        flex-direction: column;
        align-items: flex-start;
        gap: 2.506vw;
        margin-bottom: 7.813vw;
    }
    /* 詳細 */
    #NEWS_DETAIL .detail-wrap .ttl3{
        padding-bottom: 1vw;
        margin-bottom: 13.021vw;
    }
    /* 関連情報 */
    #NEWS_DETAIL .relation-wrap .ttl4{
        margin-bottom: 7.813vw;
    }
    #NEWS_DETAIL .relation-wrap .relation-link-list{
        gap: 2.604vw;
    }
    #NEWS_DETAIL .relation-wrap .relation-link-item{
        font-size: 3.646vw;
    }
    #NEWS_DETAIL .relation-wrap .relation-link-item .relation-link{
        gap: 2.604vw;
    }

    /* ライトボックス SP */
    .news-lightbox {
        padding: 0;
    }

    .news-lightbox__stage {
        width: 100vw;
        height: 100dvh;
        max-width: none;
        max-height: none;
    }

    .news-lightbox__img {
        width: 100%;
        height: 100%;
        max-width: 100%;
        max-height: 100%;
        object-fit: contain;
    }

    .news-lightbox__close {
        top: 12px;
        right: 12px;
    }



}