/* FUNCTION（機能一覧）ページ用スタイル
 * 見出しと紹介文・区切り線は page.css の .detail-list（共通）。ここには4つの機能カードの並びを書く */

/*==================== 4つの機能（2列×2段） ====================*/
.function-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 96px 56px;
	max-width: 1208px;
	margin-inline: auto;
	padding: 96px var(--sec-gutter) 0;
}
/* セレクタを2段にしているのは、style.css の article:last-child { padding-bottom: 0 } と
 * article:nth-last-of-type(1) { margin-bottom: 40px }（最後のカードだけ高さがずれる）に負けないようにするため */
.function-grid > .function-card {
	display: flex;
	flex-direction: column;
	margin: 0;
	padding: 0;
}
/* 青い帯の見出し（アイコン + 機能名） */
.function-card__title {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 16px 24px;
	background: var(--sec-blue);
	color: #fff;
	font-size: 24px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: 0.02em;
}
.function-card__title img {
	flex-shrink: 0;
	width: 40px;
	height: 40px;
}
.function-card__text {
	margin-top: 28px;
}
.function-card__text p + p {
	margin-top: 1.8em; /* 段落の間を1行分あける */
}
.function-card__text strong {
	font-weight: 600;
}
/* 図は文章の量に関係なく下端をそろえる */
.function-card__img {
	width: 100%;
	height: auto;
	margin-top: auto;
	padding-top: 28px;
	box-sizing: content-box;
}
.function-card__action {
	display: flex;
	justify-content: center;
	margin-top: 24px;
}
/* 「〇〇機能の詳細 ▶」の白抜きボタン */
.function-card__link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 16px 40px;
	border: 2px solid var(--sec-blue);
	border-radius: 999px;
	background: #fff;
	color: var(--sec-blue);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.6;
	letter-spacing: 0.02em;
	transition: background-color 0.2s, color 0.2s;
}
.function-card__link::after {
	content: "";
	width: 8px;
	height: 10px;
	background: currentColor;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.function-card__link:hover {
	background: var(--sec-blue);
	color: #fff;
}
.function-card__link:focus-visible {
	outline: 3px solid var(--sec-blue);
	outline-offset: 4px;
}

/*==================== タブレット・スマートフォン：1列 ====================*/
@media screen and (max-width: 900px) {
	.function-grid {
		grid-template-columns: minmax(0, 1fr);
		gap: 64px;
		max-width: 640px;
		padding-top: 48px;
	}
	.function-card__title {
		gap: 12px;
		padding: 12px 16px;
		font-size: 20px;
	}
	.function-card__title img {
		width: 32px;
		height: 32px;
	}
	.function-card__text {
		margin-top: 20px;
	}
	.function-card__img {
		padding-top: 20px;
	}
}
@media screen and (max-width: 600px) {
	/* 狭い画面でもボタンの文字が2行にならないよう、左右の余白を詰める */
	.function-card__link {
		padding-inline: 24px;
	}
}
