@import"https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100..900&display=swap";
@import"https://fonts.googleapis.com/css2?family=Arima:wght@100..700&family=Noto+Serif+TC:wght@200..900&display=swap";
@import"https://fonts.googleapis.com/css2?family=Racing+Sans+One&display=swap";
@import"https://fonts.googleapis.com/css2?family=Poly:ital@0;1&display=swap";
@import"https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap";

.table-list {
    width: 100%
}

    .table-list thead {
        color: #fff;
        background-color: #30826c
    }

    .table-list th, .table-list td {
        padding: .75rem;
        vertical-align: middle
    }

    .table-list th {
        padding-block: 1.25rem
    }

    .table-list tbody tr {
        border-bottom: 1px solid #ced4da
    }

@media(max-width: 767.98px) {
    .table-list {
        display: block
    }

        .table-list thead {
            display: none
        }

        .table-list tbody {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
            -ms-flex-direction: column;
            flex-direction: column;
            gap: 1rem
        }

            .table-list tbody tr {
                display: block;
                padding: .75rem;
                border: 1px solid #ced4da
            }

        .table-list td {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -ms-flex-wrap: wrap;
            flex-wrap: wrap;
            padding: .25rem 0
        }
}

@media(max-width: 767.98px) {
    .td-data-label::before {
        content: attr(data-label) "：";
        display: inline-block;
        font-weight: bold;
        padding-right: .25rem
    }
}

.table-hover tbody tr:hover {
    background-color: #f8f9fa
}

.news-dated {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: .25rem .5rem;
    color: #296e5b;
    background-color: rgba(255,193,7,.1);
    border-radius: 4px
}

    .news-dated span:first-child {
        -webkit-margin-end: .25rem;
        margin-inline-end: .25rem
    }

@media(min-width: 768px) {
    .news-dated {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        border-radius: 1rem
    }

        .news-dated span:first-child {
            margin: 0;
            margin-bottom: 2px;
            padding-bottom: 2px;
            border-bottom: 1px solid #d9d9d9
        }
}

.top-news {
    display: block;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 24px;
    height: 24px
}

.txt-link {
    color: #292929;
    vertical-align: middle
}

    .txt-link:hover, .txt-link:focus {
        color: rgb(32.8,88,72.8)
    }

.news-ratio img {
    width: 100%;
    aspect-ratio: 1.47/1;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.table-caption {
    padding-block: .75rem
}

@media(max-width: 767.98px) {
    .table-caption {
        display: block
    }
}

@media(min-width: 992px) {
    .side-sticky {
        position: sticky;
        top: calc(130px + 1.5rem);
        margin-top: 130px
    }
}

.aside-tit {
    padding: 1.5rem 1rem
}

.aside-spots {
    display: grid;
    gap: .75rem;
    padding: 14px 18px 28px
}

.aside-spots-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #292929;
    gap: 20px
}

    .aside-spots-item .ratio-img {
        -ms-flex-negative: 0;
        flex-shrink: 0;
        width: 94px;
        border-radius: 6px;
        overflow: hidden
    }

    .aside-spots-item:hover {
        color: #30826c
    }

        .aside-spots-item:hover .ratio-img img {
            -webkit-transform: scale(1.05);
            transform: scale(1.05)
        }

.btn-outline-primary.is-active {
    color: #fff;
    background-color: #30826c
}

.representative-picture {
    width: 300px;
    margin: 0 auto
}

    .representative-picture img {
        aspect-ratio: 3/4
    }

.activity-dl dl {
    padding-block: .5rem
}

    .activity-dl dl:not(:last-child) {
        border-bottom: 1px dashed #ced4da
    }

@media(min-width: 768px) {
    .activity-dl dt {
        width: 4.5em;
        -webkit-margin-end: 60px;
        margin-inline-end: 60px;
        text-align: justify;
        -moz-text-align-last: justify;
        text-align-last: justify;
        text-wrap: balance
    }
}

@media(min-width: 992px) {
    .activity-dl {
        -webkit-margin-before: 12px;
        margin-block-start: 12px
    }
}

@media(min-width: 1200px) {
    .activity-dl dl {
        padding-block: 1rem
    }
}
