/* コラムセクション全体のスタイル */
.columns-section {
    max-width: 1200px; /* サイトの最大幅に合わせて調整 */
    margin: 40px auto; /* 上下の余白と中央揃え */
    padding: 0 20px; /* 左右の余白 */
}

/* 3列レイアウトのためのグリッドコンテナ */
.column-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); /* 最小280pxで自動調整、3列表示 */
    gap: 30px; /* アイテム間の間隔 */
    margin-bottom: 30px;
}

/* 各コラム記事アイテムのスタイル */
.column-item {
    background-color: #fff;
    border: 1px solid #eee;
    border-radius: 8px;
    overflow: hidden; /* 画像のはみ出しを防ぐ */
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    transition: transform 0.3s ease;
}

.column-item:hover {
    transform: translateY(-5px); /* ホバーで少し浮き上がる */
}

.column-item a {
    text-decoration: none;
    color: inherit; /* 親要素の色を継承 */
    display: block; /* リンク全体をクリック可能に */
    padding: 15px; /* 内側の余白 */
}

.column-thumbnail {
    width: 100%;
    height: 180px; /* 画像の高さを固定 */
    object-fit: cover; /* 画像をトリミングしてカバー */
    border-radius: 4px;
    margin-bottom: 10px;
}

.column-date {
    font-size: 0.85em;
    color: #777;
    margin-bottom: 5px;
}

.column-title {
    font-size: 1.1em;
    font-weight: bold;
    color: #333;
    line-height: 1.4;
    margin-bottom: 0;
}

/* 「もっと見る」ボタンのスタイル */
.more-button-container {
    text-align: center;
    margin-top: 30px;
}

/* レスポンシブ対応（必要に応じて調整） */
@media (max-width: 768px) {
    .column-grid {
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); /* タブレット以下で調整 */
    }
}

@media (max-width: 480px) {
    .column-grid {
        grid-template-columns: 1fr; /* スマートフォンで1列表示 */
    }
    .columns-section {
        padding: 0 15px;
    }
}