.cwd-faq {
	--closed-bg: #cceffc;
	--closed-text: #004281;
	--open-head-bg: #595959;
	--open-head-text: #ffffff;
	--body-bg: #ffffff;
	--body-text: #1d1d1d;
	--radius: 15px;
	--q-size: 1.12rem;
	--a-size: 16px;
	border-radius: var(--radius);
	overflow: hidden;
	margin-bottom: 12px;
	background: var(--body-bg);
}
.cwd-faq__q {
	padding: 20px 50px 20px 28px;
	background: var(--closed-bg);
	color: var(--closed-text);
	font-size: var(--q-size);
	font-weight: 700;
	line-height: 1.25;
	cursor: pointer;
	user-select: none;
	position: relative;
	transition: background-color .25s ease, color .25s ease;
}
.cwd-faq__q::after {
	content: '+';
	position: absolute;
	right: 28px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 1.2em;
	line-height: 1;
	color: inherit;
	transition: transform .25s ease;
}
.cwd-faq.is-open .cwd-faq__q::after {
	transform: translateY(-50%) rotate(45deg);
}
.cwd-faq.is-open .cwd-faq__q {
	background: var(--open-head-bg);
	color: var(--open-head-text);
}
.cwd-faq__a {
	max-height: 0;
	overflow: hidden;
	background: var(--body-bg);
	transition: max-height .3s ease;
}
.cwd-faq__a-inner {
	padding: 22px 28px 26px;
	color: var(--body-text);
	font-size: var(--a-size);
	line-height: 1.42;
}
.cwd-faq__a-inner p { margin: 0 0 1em; color: inherit; }
.cwd-faq__a-inner p:last-child { margin-bottom: 0; }
.cwd-faq.is-open { box-shadow: 0 6px 18px rgba(0,0,0,.12); }
.cwd-faq__q:focus-visible { outline: 2px solid var(--closed-text); outline-offset: -2px; }
