/* グリッド：モバイル1カラム、PC2カラム */
.article-list-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
}


.article-card {
    display: flex;
    align-items: stretch;
    gap: 1.25rem;
    height: 100%;
    transition: all 0.3s ease;
    background-color: #fff; /* 任意、必要なら */
    border-radius: 6px; /* 見た目を整える */
}

.article-card:hover {
    filter: brightness(1.05);
    transform: translateY(-2px); /* 軽く浮かせる */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); /* 柔らかい影を付加 */
}


.article-card-thumb {
    width: 160px;
    aspect-ratio: 16 / 9;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    flex-shrink: 0;
}

.article-card-thumb img {
    width: 100%;
    height: 100%;
    object-fit: contain; /* ← coverから変更 */
    display: block;
}

/* テキストエリア */
.article-card-body {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

/* カテゴリ・タグ */
.article-card-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 0.5rem;
}

.article-label {
    font-size: 0.75rem;
    padding: 0.25em 0.5em;
    border-radius: 9999px;
    border: 1px solid #ccc;
}

.article-label.category {
    background: #eef6ff;
    border-color: #007acc;
    color: #007acc;
}

.article-label.tag {
    background: #f9f9f9;
    color: #666;
}

/* タイトル */
.article-card-title {
    font-size: 1rem;
    margin: 0;
}

.article-card-title a {
    text-decoration: none;
    color: inherit;
}


.article-list-featured {
    max-width: 100%;
    margin-bottom: 4rem;
}

.article-list-featured img {
    width: 100%;
    height: auto;
    object-fit: cover; /* 必要に応じて追加：余白なく埋める */
    display: block;
}

.article-list-featured a{
    color: #4d4d4d;
}

.page-numbers {
    display: inline-block;
    margin: 0 4px;
    padding: 0.5em 0.75em;
    border: 1px solid #ccc;
    text-decoration: none;
    color: #007acc;
}

.page-numbers.current {
    background-color: #007acc;
    color: #fff;
    font-weight: bold;
}

@media (min-width: 768px) {
    .article-list-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    main {
        margin-bottom: 4rem;
    }
}
