@charset "UTF-8";
/*****************************************************
　コラム一覧ページ専用スタイル
　common.css の変数・命名規則を踏襲
*****************************************************/

.eyebrow-left{justify-content:flex-start;}

.column-archive{
	max-width:1250px;
	padding-top:110px;
}
.archive-head{margin:0 0 40px;}
.archive-head h1{
	font-size:32px;font-size:3.2rem;
	font-weight:700;
	margin:0;
}

/* ===== Filter tabs ===== */
.filter-tabs{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:10px;
	margin:0 0 50px;
}
.filter-tab{
	font-size:15px;font-size:1.5rem;
	font-weight:600;
	color:var(--text-secondary);
	padding:10px 14px;
	border-radius:var(--radius-full);
	transition:color .15s ease,background .15s ease;
	white-space:nowrap;
}
.filter-tab:hover{color:var(--text-basic);}
.filter-tab.active{
	background:var(--accent-lightblue);
	color:#fff;
	padding:10px 24px;
}

/* ===== Grid ===== */
.column-grid{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:24px;
	margin-bottom:50px;
}
.column-card{
	background:var(--card-bg);
	border:1px solid var(--card-border);
	border-radius:var(--radius-lg);
	overflow:hidden;
}
.column-photo{
	position:relative;
	display:block;
	background-size:cover;
	background-position:center;
}
.column-photo img{
	width:100%;
	height:180px;
	object-fit:cover;
	display:block;
}
.column-photo .tag{
	position:absolute;
	left:15px;bottom:-10px;
}
.column-photo .tag span{
	background:var(--accent-lightblue);
	color:#fff;
	font-size:11px;font-size:1.1rem;
	font-weight:600;
	padding:5px 12px;
	border-radius:var(--radius-full);
}
.column-photo .tag span + span{
	margin:0 0 0 0.5em;
}
.column-body{padding:22px 20px 20px;}
.column-body h2{
	font-size:17px;font-size:1.7rem;
	font-weight:700;
	line-height:1.5;
	margin:0 0 12px;
}
.column-body h2 a{color:var(--text-basic);}
.column-body .date{
	font-size:13px;font-size:1.3rem;
	color:var(--text-muted);
	margin:0;
}

/* ===== Pagination ===== */
.pagination{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:10px;
	margin:0 0 40px;
}
.page-num{
	width:40px;height:40px;
	display:flex;align-items:center;justify-content:center;
	font-size:15px;font-size:1.5rem;
	font-weight:600;
	color:var(--text-secondary);
	border-radius:8px;
}
.page-num:hover{color:var(--text-basic);}
.page-num.active{
	background:var(--accent-lightblue);
	color:#fff;
}
.page-dots{
	color:var(--text-muted);
	font-size:15px;font-size:1.5rem;
	padding:0 2px;
}
.page-arrow{
	width:36px;height:36px;
	display:flex;align-items:center;justify-content:center;
	color:var(--text-secondary);
	border-radius:50%;
}
.page-arrow:hover{color:var(--text-basic);background:rgba(255,255,255,0.05);}

/* ===================================================
	 Responsive: <=1024px -> 縦積み
=================================================== */
@media (max-width:1024px){
	.column-archive{padding-top:70px;}
	.archive-head h1{font-size:26px;}

	.filter-tabs{
		flex-wrap:nowrap;
		overflow-x:auto;
		-webkit-overflow-scrolling:touch;
		gap:8px;
		padding-bottom:6px;
		margin-bottom:36px;
	}
	.filter-tab{flex-shrink:0;}
	
	.column-grid{grid-template-columns:1fr;gap:20px;}
	.column-photo img{height:auto;aspect-ratio:16/9;}
}

@media (max-width:520px){
	.pagination{gap:6px;}
	.page-num,.page-arrow{width:34px;height:34px;font-size:14px;}
}
