@charset "UTF-8";
/* archive-event.css — イベント一覧（archive-event.php / section#page-event 配下） */

section#page-event {

    hgroup.common-cover{
        background-image: url(../img/event_cover.jpg);
    }

    div#event-archive {
        max-width: calc(var(--bw) + 48px);
        margin-inline: auto;
        padding: 80px 24px;

        @media (max-width: 768px) {
            padding: 56px 16px;
        }

        ul {
            display: flex;
            flex-wrap: wrap;
            gap: 24px;

            li {
                width: calc((100% - 48px) / 3);

                @media (max-width: 960px) { width: calc((100% - 24px) / 2); }
                background: var(--c-white);
                border-radius: var(--radius);
                box-shadow: var(--shadow);
                overflow: hidden;
                transition: transform .25s ease, box-shadow .25s ease;

                &:hover {
                    transform: translateY(-6px);
                    box-shadow: 0 14px 30px rgba(0, 0, 0, .18);
                }

                @media (max-width: 768px) {
                    width: 100%;
                }
            }

            div {
                display: flex;
                flex-direction: column;

                figure {
                    margin: 0;
                    padding: 12px;
                    overflow: hidden;

                    img {
                        aspect-ratio: 16 / 11;
                        width: 100%;
                        height: 100%;
                        object-fit: cover;
                        border-radius: 4px;
                    }
                }

                div {
                    padding: 0 12px;

                    dl {
                        display: flex;
                        justify-content: center;
                        gap: 8px;
                        font-size: 1.25rem;
                        font-weight: 500;
                        line-height: 2;

                        @media (max-width: 480px) {
                            font-size: 1rem;
                        }
                    }

                    h3 {
                        padding-top: 12px;
                        border-top: 1px solid var(--c-text);
                        font-size: 1.25rem;
                        padding: 8px 0 32px;
                        line-height: 1.5;

                        @media (max-width: 480px) {
                            font-size: 1.125rem;
                        }
                    }
                }
            }
        }

        .pagination {
            display: flex;
            justify-content: center;
            align-items: center;          /* PREV/NEXTと数字の縦位置を揃える */
            gap: 8px;
            margin-top: 48px;

            @media (max-width: 768px) {
                gap: 6px;
                margin-top: 36px;
            }

            .page-numbers {
                display: inline-flex;
                align-items: center;
                justify-content: center;
                box-sizing: border-box;
                min-width: 40px;
                height: 40px;
                padding: 0 8px;
                border: 2px solid var(--c-navy);
                border-radius: 999px;
                font-family: var(--ff-en);
                font-size: 1.25rem;
                line-height: 1;           /* フォント差による縦ズレ防止 */
                color: var(--c-navy);

                @media (max-width: 768px) {
                    min-width: 32px;
                    height: 32px;
                    font-size: 1rem;
                }

                @media (max-width: 480px) {
                    min-width: 28px;
                    height: 28px;
                    font-size: 1rem;
                }

                &.current {
                    background: var(--c-navy);
                    color: #fff;
                    border-color: var(--c-navy);
                }

                &.next,
                &.prev {
                    font-weight: 600;
                    padding: 0 12px;
                }

                &.dots{
                    border:none;
                }
            }
        }
    }
}
