﻿/* ===== xavan4 FAQ スタイル ===== */
.xavan-faq {
  max-width: 980px;
  margin: 2rem auto;
  padding: 0 1rem;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
  color: #000; /* 本文は黒で視認性を高く */
  font-size: 18px; /* 年配の方向けに少し大きめ */
  line-height: 1.9;
}
.xavan-faq__title { font-size: clamp(1.6rem, 2.3vw, 2.2rem); margin: 0 0 .5rem; color: #000; font-weight: 800; }
.xavan-faq__lead { color: #111; margin: 0 0 1rem; }
.xavan-faq__controls { display: flex; gap: .5rem; margin: .5rem 0 1.25rem; flex-wrap: wrap; }
.xavan-faq__btn {
  background: #008663; color: #fff; border: none;
  padding: .6rem 1rem; border-radius: .6rem; cursor: pointer; font-weight: 700; font-size: 16px;
}
.xavan-faq__btn--secondary { background: #e5f3ee; color: #005945; }

.xavan-faq__item {
  border: 2px solid #e6e6e6;
  border-radius: .8rem;
  margin: .9rem 0;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 1px 2px rgba(0,0,0,.03);
}
.xavan-faq__q { margin: 0; }
.xavan-faq__toggle {
  width: 100%; text-align: left;
  display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .75rem;
  background: #f8fbfa; border: 0; padding: 1rem 1.1rem; cursor: pointer;
  font-size: 19px; color: #000; /* 質問も黒で視認性 */
}
.xavan-faq__toggle:focus-visible { outline: 4px solid #8bd6c0; outline-offset: 2px; }
.xavan-faq__qmark {
  background: #008663; color: #fff;
  width: 1.8rem; height: 1.8rem; display: inline-flex; align-items: center; justify-content: center;
  border-radius: .4rem; font-weight: 800;
}
.xavan-faq__icon { position: relative; width: 1.2rem; height: 1.2rem; }
.xavan-faq__icon::before, .xavan-faq__icon::after { content: ""; position: absolute; inset: 0; margin: auto; background: #008663; }
.xavan-faq__icon::before { width: 1.2rem; height: .16rem; }
.xavan-faq__icon::after { width: .16rem; height: 1.2rem; transition: transform .2s ease; }
/* 開いている時は “−” に見えるよう縦棒を回転 */
.xavan-faq__toggle[aria-expanded=true] .xavan-faq__icon::after { transform: rotate(90deg); }

.xavan-faq__a { padding: 0 1.1rem 1.1rem; color: #000; }
.xavan-faq__a p { margin: .8rem 0 0; }
.xavan-faq__a ul { margin: .5rem 0 0 1.2rem; }

/* 赤強調（数字・重要語句に） */
.xavan-faq-em { color: #c62828; font-weight: 800; }

/* モバイル */
@media (max-width: 480px) {
  .xavan-faq { font-size: 17px; }
  .xavan-faq__toggle { padding: .9rem .9rem; font-size: 18px; }
  .xavan-faq__qmark { width: 1.6rem; height: 1.6rem; font-size: .95rem; }
}
.auto-style133 {
	font-weight: bold;
	font-size: x-large;
	text-align: center;
}
.auto-style134 {
	color: #111;
	text-align: center;
}

