/* DIO FAQ — Flexible FAQ（pretty）と同じ見た目を画像なしで再現 */
.faq-pretty { width: 100%; margin: 0; }
.faq-pretty ul { margin: 15px 0 0; padding: 0; list-style: none; }
.faq-pretty .faq-item { margin: 0 0 10px; padding: 0; list-style: none; }
.faq-pretty .faq-question {
	position: relative;
	padding: 10px 10px 10px 40px;
	background: #fff;
	border: 1px solid #004082;
	color: #004082;
	font-size: 14px;
	font-weight: bold;
	cursor: pointer;
}
.faq-pretty .faq-question::before {
	content: "+";
	position: absolute;
	top: -1px;
	bottom: -1px;
	left: -1px;
	width: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #004082;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	line-height: 1;
}
.faq-pretty .faq-question:focus-visible { outline: 2px solid #cc0066; outline-offset: 2px; }
.faq-pretty .faq-item.highlight .faq-question {
	border-color: #cc0066;
	border-bottom: 0;
	color: #cc0066;
}
.faq-pretty .faq-item.highlight .faq-question::before { content: "\2212"; background: #cc0066; bottom: 0; }
.faq-pretty .faq-answer {
	margin-left: 30px;
	padding: 5px 10px;
	background: #fff;
	border: 1px solid #cc0066;
	border-top: 0;
}
.faq-pretty .faq-answer[hidden] { display: none; }
.faq-pretty .faq-answer p:last-child { margin-bottom: 0; padding-bottom: 0; }

/* style="block"（すべて開いた状態で表示） */
.faq-block ul { margin: 15px 0 0; padding: 0; list-style: none; }
.faq-block .faq-block-item { margin: 0 0 15px; list-style: none; }
.faq-block .faq-block-question { font-weight: bold; color: #004082; margin-bottom: 5px; }
