/* topコラムセクション */
.section-column {
	padding: 80px 0;
	background-color: #f5f5f5; /* 背景色（お好みで変更してください） */
}
.column-list-wrapper {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 30px 2%;
	margin-top: 40px;
}
/* カード本体 */
.column-box {
	width: 32%; /* PCで3列 */
	background: #fff;
	box-shadow: 0 2px 5px rgba(0,0,0,0.05);
	transition: opacity 0.3s;
}
.column-box:hover {
	opacity: 0.8;
}
.column-box a {
	display: block;
	text-decoration: none;
	color: #333;
	height: 100%;
	display: flex;
	flex-direction: column;
}
/* 画像エリア */
.column-box .img-area {
	width: 100%;
	aspect-ratio: 16 / 9; /* 画像比率固定 */
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
}
.column-box .img-area img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.column-box .img-area.is-no-image {
	background-color: #f0f4f7;
	border: 1px solid #8DA7B7; /* 枠線追加 */
	box-sizing: border-box;
}
.column-box .no-image-text {
	font-size: 18px;       /* 少し大きく */
	color: #053E61;        /* 文字色をBXカラー（濃い青）に */
	font-weight: bold;
	letter-spacing: 0.1em; /* 文字間を広げてロゴっぽく */
	text-transform: uppercase;
	opacity: 0.5;          /* 薄くして背景になじませる */
	font-family: sans-serif;
	transform: rotate(-7deg); /* ほんの少し傾けてデザイン性を出す（お好みで） */
}
/* テキストエリア */
.column-box .txt-area {
	padding: 20px;
	flex-grow: 1; /* ボタンを下揃えにするため */
}
.column-box .box-head {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 5px;
	line-height: 1.5;
	color: #053E61; /* 文化シヤッターカラー */
}
.column-box .box-sub-ttl {
	font-size: 14px;
	font-weight: bold;
	color: #053E61; /* 文化シヤッターカラー */
	margin-bottom: 10px;
	padding-bottom: 0px;
}
.column-box .box-txt {
	font-size: 14px;
	line-height: 1.6;
	color: #333;
}
/* ボタンエリア */
.column-box .btn-detail {
	padding: 15px 20px;
	text-align: right;
	font-size: 14px;
	color: #053E61;
	font-weight: bold;
	margin: 0;
	background: #fff;
}
.column-box .btn-detail span {
	position: relative;
	padding-right: 20px;
}
.column-box .btn-detail span::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 0;
	width: 8px;
	height: 8px;
	border-top: 2px solid #053E61;
	border-right: 2px solid #053E61;
	transform: translateY(-50%) rotate(45deg);
}

/* スマホ対応 */
@media (max-width: 768px) {
	.section-column {
		padding: 40px 0;
	}
	.column-box {
		width: 100%; /* スマホで1列 */
		margin-bottom: 20px;
	}
	.column-list-wrapper {
		display: block;
	}
}