.blog-list {
    list-style: none;
    margin: 0;
    padding: 0;
    border-top: 1px solid var(--color-border);
}

.blog-list__item {
    border-bottom: 1px solid var(--color-border);
}

.blog-list__link {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 24px 8px;
    text-decoration: none;
    color: var(--color-text);
    transition: background-color 0.2s ease, padding-left 0.2s ease;
}

.blog-list__link:hover {
    background-color: var(--color-bg-light);
    padding-left: 16px;
}

.blog-list__date {
    display: block;
    font-size: var(--font-body-small);
    color: var(--color-text-muted);
    font-family: 'Barlow', sans-serif;
    letter-spacing: 0.05em;
    flex-shrink: 0;
}

.blog-list__title {
    font-size: var(--font-body);
    font-weight: 600;
    line-height: 1.6;
    color: var(--color-text);
    margin: 0;
}

.blog-list__link:hover .blog-list__title {
    color: var(--color-primary);
}

#blog .pagenavi {
    margin-top: 50px;
}

/* タブレット以上: 日付と見出しを横並び */
@media screen and (min-width: 768px) {
    .blog-list__link {
        flex-direction: row;
        align-items: baseline;
        gap: 32px;
        padding: 28px 12px;
    }

    .blog-list__date {
        min-width: 96px;
    }

    .blog-list__title {
        font-size: 18px;
    }
}

@media screen and (min-width: 1025px) {
    .blog-list__link {
        padding: 32px 16px;
        gap: 40px;
    }

    .blog-list__date {
        min-width: 110px;
    }
}
