ol.title-line {
    margin: 0 1em;
}

ol.title-line li {
    font-weight: bold;
    list-style-type: decimal;
    font-size: 1.2em;
    margin: 0 0 1em 0;
}


ol.title-line li p,
ol.title-line li div p,
ol.title-line li div table,
ol.title-line li div table th {
    font-weight: normal;
    font-size: 1em;
}

.font_strong_red {
    color: #ff0000;
    font-weight: bold;
}

.font_red {
    color: #ff0000;
}

.font_size_large {
    font-size: 1.5em;
}

.font_size_smalllarge {
    font-size: 1.1em;
}

.info-text-right {
    display: flex;
    justify-content: flex-end;
}

/* .div-right p {
    display: inline-block;
} */

/* テーブル */
table.article-body-table {
    margin: 10px;
    width: 98%;
    text-align: center;
    border-collapse: collapse;
    border-spacing: 0;
}

table.article-body-table th {
    padding: 10px;
    width: 30%;
    text-align: left;
    border-top: solid 1px #778ca3;
}

table.article-body-table td {
    padding: 10px;
    border-top: solid 1px #778ca3;
    border-bottom: solid 1px #778ca3;
    text-align: left;
}

table.article-body-table tbody th:first-child {
    background: #e9faf9;
    border-bottom: solid 1px #778ca3;
}

table.article-body-table tbody td:first-child {
    width: 15%;
}

/* お知らせ News一覧 */

#pagination {
    display: flex;
    margin: 2em;
    justify-content: center;
    align-items: center;
}

#pagination button {
    width: 7rem;
    border-radius: 2px;
    box-sizing: border-box;
    margin: 0.5em;
    padding: 5px;
    background-color: rgba(6, 139, 63, 0.8);
    color: white;
    text-align: center;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

#pagination button:hover {
    background-color: #0056b3;
    box-shadow: unset;
    transform: translateY(2px);
}

@media (max-width: 768px) {
    #pagination button {
        font-size: 0.9em;
    }
}

.counter-number {
    list-style: decimal;
    padding-left: 1.5em;
}

.counter-number li {
    position: relative;
    padding-left: 0.5em;
}

ol.info-li-number {
    list-style: decimal;
    padding-left: 1.5em;
}

ol.info-li-number li {
    position: relative;
}

ol.info-li-number-custom {
    margin: 0;
}

ol.info-li-number-custom li {
    list-style-type: none;
    list-style-position: inside;
    counter-increment: cnt;
    padding-right: 1em;
}

ol.info-li-number-custom li:before {
    display: marker;
    content: "(" counter(cnt) ") ";
}

ul.info-li-disc {
    list-style: disc;
    padding-left: 1.5em;
}

ul.info-li-disc li {
    position: relative;
}

.cate_body_box02 {
    margin: 3em 1em;
}

.cate_body_box03 {
    margin: 0.5em 0em;
}

table.info-text-table {
    margin: 0.5em;
    width: 100%;
    border: none;
    line-height: 1.25em;
}

table.info-text-table tbody th {
    width: 10%;
    border: none;
    font-weight: normal;
}

table.info-text-table tbody td {
    border: none;
}

.info-text-underline {
    text-decoration: underline;
}

/* 
* お知らせなどのタブ表示
*/

/* お知らせタブ */
.news-container {
    width: 100%;
    max-width: 800px;
    /* Adjust as needed */
    margin: 0 auto;
    background-color: #fff;
    padding: 0 5px;
    /* border-radius: 8px; */
    /* box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); */
}

.news-list {
    list-style: none;
    /* Remove default list bullets */
    padding: 0;
    margin: 0;
}

.news-item {
    display: flex;
    /* Use flexbox for layout */
    align-items: baseline;
    /* Align items at the baseline */
    padding: 10px 0;
    border-bottom: 1px dashed #eee;
    /* Light dashed separator */
    position: relative;
    /* Needed for absolute positioning of 'New' mark */
}

.news-item:last-child {
    border-bottom: none;
    /* No border for the last item */
}

.news-date {
    flex-shrink: 0;
    /* Prevent date from shrinking */
    width: 15%;
    /* Fixed width for the date column */
    /* font-size: 0.9em; */
    color: #666;
    /* margin-right: 15px; */
    /* Space between date and title */
}

.news-newmark {
    width: 8%;
    padding: 0 10px 0 5px;
    text-align: center;
}

.news-title {
    flex-grow: 1;
    /* Allow title to take up remaining space */
    font-size: 1em;
    color: #333;
}

/* Styling for the 'New' mark */
.news-item.new .news-date::after {
    content: "New";
    background-color: #ff4d4d;
    /* Red background for 'New' */
    color: white;
    font-size: 0.7em;
    padding: 2px 6px;
    border-radius: 3px;
    margin-left: 10px;
    /* Space between date and 'New' tag */
    vertical-align: middle;
    /* Align with text */
    display: inline-block;
    /* Allows padding and margin */
}

.page-info {
    font-size: medium;
    margin: 0 1em;
}


/* Responsive adjustments for smaller screens */
@media (max-width: 768px) {
    .news-item {
        display: flex;
        /* flexコンテナであることを確認 */
        flex-wrap: wrap;
        /* 要素の折り返しを許可 */
        align-items: center;
        /* 要素の垂直方向の位置を中央に揃える */
        row-gap: 5px;
        /* 行間のスペースを確保 */
    }

    .news-date {
        white-space: nowrap;
        flex-shrink: 0;
        margin-bottom: 0;
        /* 下マージンは不要なため削除 */
        /* margin-right: 8px; */
        /* NEWアイコンとの間に余白を追加 */
    }

    .news-newmark {
        width: 40px;
        padding: 0;
        margin-left: auto;
    }

    /* news-titleを強制的に改行させる */
    .news-title {
        flex-basis: 100%;
        /* 幅を100%にして、次の行に送る */
    }

    #newslink {
        font-size: 16px;
        /* 文字サイズを小さくする */
        white-space: nowrap;
        /* テキストを一行で表示（折り返しを防ぐ） */
        overflow: hidden;
        /* はみ出したテキストを非表示にする */
        text-overflow: ellipsis;
        /* はみ出した部分を「...」で表示 */
    }

    .content-title {
        font-size: 16px;
        /* 文字サイズを小さくする */
        white-space: nowrap;
        /* テキストを一行で表示（折り返しを防ぐ） */
        overflow: hidden;
        /* はみ出したテキストを非表示にする */
        text-overflow: ellipsis;
        /* はみ出した部分を「...」で表示 */
    }
}


/* 広報みやこんじょタブ */
.pr-miyakonjo-container {
    width: 100%;
    max-width: 800px;
    /* Adjust as needed */
    margin: 0 auto;
    background-color: #fff;
    padding: 0 5px;
    /* border-radius: 8px; */
    /* box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); */
}

.pr-miyakonjo-list {
    list-style: none;
    /* Remove default list bullets */
    padding: 0;
    margin: 0;
}

.pr-miyakonjo-item {
    display: flex;
    /* Use flexbox for layout */
    align-items: baseline;
    /* Align items at the baseline */
    padding: 10px 0;
    border-bottom: 1px dashed #eee;
    /* Light dashed separator */
    position: relative;
    /* Needed for absolute positioning of 'New' mark */
}

.pr-miyakonjo-item:last-child {
    border-bottom: none;
    /* No border for the last item */
}

.pr-miyakonjo-number {
    flex-shrink: 0;
    /* Prevent date from shrinking */
    width: 10%;
    /* Fixed width for the date column */
    /* font-size: 0.9em; */
    color: #666;
    margin-right: 15px;
    /* Space between date and title */
}

.pr-miyakonjo-date {
    flex-shrink: 0;
    /* Prevent date from shrinking */
    width: 25%;
    /* Fixed width for the date column */
    /* font-size: 0.9em; */
    color: #666;
    margin-right: 15px;
    /* Space between date and title */
}

.pr-miyakonjo-title {
    flex-grow: 1;
    /* Allow title to take up remaining space */
    /* font-size: 1em; */
    color: #333;
}

/* Responsive adjustments for smaller screens */
@media (max-width: 600px) {
    .pr-miyakonjo-item {
        flex-direction: column;
        /* Stack date and title vertically */
        align-items: flex-start;
    }

    .pr-miyakonjo-date {
        width: auto;
        /* Remove fixed width */
        margin-bottom: 5px;
        /* Add space below date */
        margin-right: 0;
    }
}

/* MINT ニュースタブ */
.mint-news-container {
    width: 100%;
    max-width: 800px;
    /* Adjust as needed */
    margin: 0 auto;
    background-color: #fff;
    padding: 0 5px;
    /* border-radius: 8px; */
    /* box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); */
}

.mint-news-list {
    list-style: none;
    /* Remove default list bullets */
    padding: 0;
    margin: 0;
}

.mint-news-item {
    display: flex;
    /* Use flexbox for layout */
    align-items: baseline;
    /* Align items at the baseline */
    padding: 10px 0;
    border-bottom: 1px dashed #eee;
    /* Light dashed separator */
    position: relative;
    /* Needed for absolute positioning of 'New' mark */
}

.mint-news-item:last-child {
    border-bottom: none;
    /* No border for the last item */
}

.mint-news-number {
    flex-shrink: 0;
    /* Prevent date from shrinking */
    width: 15%;
    /* Fixed width for the date column */
    /* font-size: 0.9em; */
    color: #666;
    margin-right: 15px;
    /* Space between date and title */
}

.mint-news-date {
    flex-shrink: 0;
    /* Prevent date from shrinking */
    width: 15%;
    /* Fixed width for the date column */
    /* font-size: 0.9em; */
    color: #666;
    margin-right: 15px;
    /* Space between date and title */
}

.mint-news-title {
    flex-grow: 1;
    /* Allow title to take up remaining space */
    /* font-size: 1em; */
    color: #333;
}

/* Responsive adjustments for smaller screens */
@media (max-width: 600px) {
    .mint-news-item {
        flex-direction: column;
        /* Stack date and title vertically */
        align-items: flex-start;
    }

    .mint-news-date {
        width: auto;
        /* Remove fixed width */
        margin-bottom: 5px;
        /* Add space below date */
        margin-right: 0;
    }
}

/* 市民ギャラリー */
table.table_green {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}

table.table_green tbody th {
    background: #e9faf9;
    text-align: left;
    vertical-align: middle;
    border: solid 1px #778ca3;
    font-weight: bold;
    width: 15%;
    padding: 5px;
}

table.table_green tbody td {
    border: solid 1px #778ca3;
    padding: 5px;
}

/* 出前講座 */
table.demaekouza-table {
    margin: 1em;
    width: 60%;
}

table.demaekouza-table th {
    width: 40%;
}

@media (max-width: 600px) {
    table.demaekouza-table {
        width: 90%;
    }

    table.demaekouza-table th {
        width: 40%;
    }
}

/* 市民ギャラリー */
.contact-info-list {
    list-style: none;
    padding: 0;
    margin: 0;
    width: 90%;
}

.item {
    display: flex;
    align-items: flex-start;
    position: relative;
    margin-left: 1em;
}

.label {
    white-space: nowrap;
    min-width: 10%;
    flex-shrink: 0;
    padding-right: 4px;
}

.separator {
    flex-shrink: 0;
    padding: 0 4px;
}

.content {
    flex: 1;
    padding-left: 4px;
}

ul.notice-list li {
    list-style-type: disc;
    margin-left: 1.5em;
}