.faq-single{background:var(--white);padding:60px 24px 80px;}
.faq-single-inner{max-width:780px;margin:0 auto;}
.faq-single-q{background:var(--pink-pale);border-radius:16px;padding:28px 32px;margin-bottom:28px;border-left:4px solid var(--pink-main);}
.faq-q-badge{display:flex;align-items:center;gap:12px;margin-bottom:12px;}
.faq-q-circle{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--pink-main),var(--pink-deep));color:white;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.faq-q-label-text{font-size:13px;font-weight:700;color:var(--pink-main);letter-spacing:.08em;}
.faq-single-q h1{font-family:'Noto Serif JP',serif;font-size:clamp(18px,2.5vw,24px);font-weight:600;color:var(--navy);line-height:1.6;}
.faq-single-a{background:white;border-radius:16px;padding:28px 32px;border:1px solid var(--pink-light);margin-bottom:28px;}
.faq-a-badge{display:flex;align-items:center;gap:12px;margin-bottom:16px;}
.faq-a-circle{width:36px;height:36px;border-radius:50%;background:var(--navy);color:white;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.faq-a-label-text{font-size:13px;font-weight:700;color:var(--navy);letter-spacing:.08em;}
.faq-single-a .answer-body{font-size:15px;color:var(--gray-text);line-height:1.9;}
.faq-single-a .answer-body p{margin-bottom:14px;}
.faq-nav{display:flex;justify-content:space-between;gap:16px;padding-top:32px;border-top:1px solid var(--pink-light);}
.faq-nav a{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--pink-main);border:1px solid rgba(41,182,212,.3);padding:10px 20px;border-radius:50px;transition:background .2s;}
.faq-nav a:hover{background:rgba(41,182,212,.07);}
/* カテゴリラベル */
.faq-category-label {
  display: flex;
  align-items: center;
  gap: 8px;
  background: var(--color-bg-pale, #fdf6f0);
  border-left: 4px solid var(--color-primary, #c0395a);
  padding: 12px 16px;
  margin-bottom: 32px;
  border-radius: 0 6px 6px 0;
}
.faq-category-icon {
  color: var(--color-primary, #c0395a);
  font-size: 1rem;
}
.faq-category-text {
  font-weight: 700;
  font-size: 1rem;
  color: var(--color-text, #333);
}
.faq-category-sub {
  font-size: 0.85rem;
  color: var(--color-text-muted, #888);
}

/* 前後ナビ */
.faq-nav {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-top: 48px;
  padding-top: 24px;
  border-top: 1px solid var(--color-border, #e8ddd5);
}
.faq-nav a {
  font-size: 0.9rem;
  color: var(--color-primary, #c0395a);
  text-decoration: none;
  max-width: 45%;
}
.faq-nav a:hover {
  text-decoration: underline;
}
.faq-nav-empty {
  flex: 1;
}