.elementor-67 .elementor-element.elementor-element-fc5b797{--display:flex;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-67 .elementor-element.elementor-element-cf39e43{--display:flex;--padding-top:80px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-67 .elementor-element.elementor-element-1f6c26a{margin:-10px 0px calc(var(--kit-widget-spacing, 0px) + -30px) 0px;padding:0px 0px 0px 0px;}@media(max-width:767px){.elementor-67 .elementor-element.elementor-element-cf39e43{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-67 .elementor-element.elementor-element-1f6c26a{padding:0px 0px 0px 0px;}}@media(min-width:768px){.elementor-67 .elementor-element.elementor-element-cf39e43{--content-width:1000px;}}/* Start custom CSS for html, class: .elementor-element-1f6c26a */:root{
  --txt:#fff;
  --line:rgba(255,255,255,.35);
  --accent:#BB7EF3; /* リンク＆Q/Aアクセント */
  --fs-pc:16px;
}

/* ベース */
.faq-wrap{
 margin:0 auto;
  color:var(--txt);
  font-family:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI",
              "Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic",Meiryo,sans-serif;
  letter-spacing:2px;
  line-height:1.8;
  font-size:var(--fs-pc);
}

/* h3カテゴリ見出し：背景 #3A4957 */
.faq-cat-title{
  margin:0 0 10px;
  padding:8px 12px;
  background:#3A4957;
  border-radius:8px;
  font-weight:600;
}

/* アコーディオン本体 */
.faq-category{ margin:20px 0 28px; }

.faq-item{
  border-bottom:1px solid var(--line);
  padding:0; margin:0;
}

.faq-item summary{
  cursor:pointer;
  list-style:none;
  padding:16px 36px 16px 44px; /* 右は±アイコン、左はQバッジ分 */
  position:relative;
  outline:none;
}

/* 開閉アイコン（＋／−） */
.faq-item summary::after{
  content:"+";
  position:absolute; right:0; top:50%; transform:translateY(-50%);
  font-weight:600;
}
.faq-item[open] summary::after{ content:"−"; }

/* Qアイコン（塗り） */
.faq-item summary::before{
  content:"Q";
  position:absolute; left:0; top:50%; transform:translateY(-50%);
  width:26px; height:26px; border-radius:50%;
  background:var(--accent);
  color:#fff; font-weight:700; letter-spacing:0;
  display:grid; place-items:center;
}

/* 回答ブロック：グリッド＋相対配置（既存の設定そのままでOK） */
.faq-a{
  position: relative;                /* ← 文字の絶対配置先 */
  display: grid;
  grid-template-columns: 26px 1fr;   /* 左：丸、右：本文 */
  column-gap: 12px;
  align-items: start;
  padding: 0 0 16px;
  opacity: .95;
}

/* 丸（Aバッジの背景）だけを ::before で描く */
.faq-a::before{
  content: "";
  width: 26px; height: 26px; border-radius: 50%;
  border: 2px solid var(--accent);
  background: transparent;
  grid-column: 1; grid-row: 1;
}

/* “A” の文字は ::after に分離して、少し上へ */
.faq-a::after{
  content: "A";
  position: absolute;
  left: 0; top: 0;                   /* 丸と同じ位置に重ねる */
  width: 26px; height: 26px;
  display: grid; place-items: center;
  color: var(--accent); font-weight: 700; letter-spacing: 0;
  transform: translateY(-2px);       /* ← 上に微調整（値はお好みで） */
  z-index: 1; pointer-events: none;  /* 重なり＆クリック無効化 */
}

/* SP：バッジ小さめ＆オフセット微調整 */
@media (max-width:640px){
  .faq-a{ grid-template-columns: 24px 1fr; column-gap: 10px; padding-bottom: 18px; }
  .faq-a::before{ width: 24px; height: 24px; }
  .faq-a::after{
    width: 24px; height: 24px; font-size: 13px;
    transform: translateY(-1px);     /* モバイルは控えめに */
  }
}

/* SP：フォント14px、タップ余白拡大、バッジ若干小さく */
@media (max-width:640px){
  .faq-wrap{ font-size:14px; }/* End custom CSS */