/* FAQ（よくある質問）ページ用スタイル
 * 見出しと紹介文・区切り線は page.css の .detail-list（共通）。ここには質問と答えの開閉リストを書く */

/*==================== よくある質問 ====================*/
.faq-group {
	max-width: 1160px;
	margin-inline: auto;
	padding: 48px var(--sec-gutter) 0;
}
.faq-group__title {
	margin-bottom: 32px;
	color: var(--sec-blue);
	font-size: 22px;
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: 0.02em;
}

/* 1問ずつ <details> で開閉する（JSなしで動き、キーボード操作・読み上げにも対応） */
.faq-item {
	border-bottom: 1px solid rgba(0, 0, 0, 0.13);
}
.faq-item:first-of-type {
	border-top: 1px solid rgba(0, 0, 0, 0.13);
}
.faq-item__q {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 16px 40px 16px 0;
	position: relative;
	list-style: none;
	cursor: pointer;
	color: var(--sec-text);
	font-size: 16px;
	font-weight: 500;
	line-height: 1.6;
	letter-spacing: 0.02em;
}
.faq-item__q::-webkit-details-marker {
	display: none;
}
/* 右端の ＋ / − （開いているときは縦棒を消して − にする） */
.faq-item__q::before,
.faq-item__q::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 12px;
	width: 14px;
	height: 2px;
	background: currentColor;
	translate: 0 -50%;
	transition: rotate 0.2s;
}
.faq-item__q::after {
	rotate: 90deg;
}
.faq-item[open]:not(.is-closing) > .faq-item__q::after {
	rotate: 0deg; /* 閉じるアニメーションの間は、先に ＋ へ戻す（faq.js が .is-closing を付ける） */
}
.faq-item__q:hover .faq-item__q-text {
	color: var(--sec-blue);
}
.faq-item__q:focus-visible {
	outline: 3px solid var(--sec-blue);
	outline-offset: 2px;
}
.faq-item__q-text {
	transition: color 0.2s;
}

/* Q・A の丸（Q は線、A は塗り） */
.faq-item__mark {
	display: grid;
	flex-shrink: 0;
	place-items: center;
	width: 40px;
	height: 40px;
	border: 1px solid var(--sec-blue);
	border-radius: 50%;
	box-sizing: border-box;
	color: var(--sec-blue);
	font-size: 24px;
	font-weight: 400;
	line-height: 1;
}
.faq-item__mark--a {
	background: var(--sec-blue);
	color: #fff;
}

/* 答え：A の丸を質問の文頭より一段下げて置く */
.faq-item__a {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 4px 0 24px 24px;
}
.faq-item__a-text {
	padding-top: 4px;
	color: var(--sec-text);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.9;
	letter-spacing: 0.02em;
}

/*==================== タブレット・スマートフォン ====================*/
@media screen and (max-width: 900px) {
	.faq-group {
		max-width: 640px;
		padding-top: 40px;
	}
	.faq-group__title {
		margin-bottom: 24px;
		font-size: 20px;
	}
	.faq-item__q,
	.faq-item__a-text {
		font-size: 15px;
	}
	.faq-item__mark {
		width: 36px;
		height: 36px;
		font-size: 20px;
	}
	.faq-item__a {
		padding-left: 0;
	}
}
