.elementor-83644 .elementor-element.elementor-element-1c2731b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-83644 .elementor-element.elementor-element-a6a2930{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-83644 .elementor-element.elementor-element-f22e5f2{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--gap:0px 10px;--row-gap:0px;--column-gap:10px;--grid-auto-flow:row;--align-items:center;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-83644 .elementor-element.elementor-element-79c1f0d > .elementor-widget-container{margin:0px 0px 0px 20px;}.elementor-83644 .elementor-element.elementor-element-79c1f0d{text-align:start;font-family:"Noto Sans JP", Sans-serif;font-size:20px;font-weight:400;letter-spacing:1px;}.elementor-83644 .elementor-element.elementor-element-78bd993{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-end;}.elementor-83644 .elementor-element.elementor-element-fced7df{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;border-style:solid;--border-style:solid;border-width:2px 2px 2px 2px;--border-top-width:2px;--border-right-width:2px;--border-bottom-width:2px;--border-left-width:2px;border-color:#F1F9FB;--border-color:#F1F9FB;--border-radius:3px 3px 3px 3px;--margin-top:-20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:2px;--padding-bottom:2px;--padding-left:2px;--padding-right:2px;}.elementor-83644 .elementor-element.elementor-element-6ed5c82{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--gap:2px 2px;--row-gap:2px;--column-gap:2px;--grid-auto-flow:row;--justify-items:center;--align-items:center;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-83644 .elementor-element.elementor-element-9d5a165{text-align:start;}.elementor-83644 .elementor-element.elementor-element-9d5a165 .elementor-heading-title{font-family:"Noto Sans JP", Sans-serif;font-size:20px;font-weight:600;color:#0993E3;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-83644 .elementor-element.elementor-element-a261cba .elementor-button{background-color:#0993E3;font-family:"Roboto", Sans-serif;font-weight:700;fill:var( --e-global-color-e8349a3 );color:var( --e-global-color-e8349a3 );padding:10px 15px 10px 15px;}.elementor-83644 .elementor-element.elementor-element-a261cba .elementor-button:hover, .elementor-83644 .elementor-element.elementor-element-a261cba .elementor-button:focus{background-color:#5BD2FA;}.elementor-83644 .elementor-element.elementor-element-a261cba > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-83644 .elementor-element.elementor-element-72e0f7e{--display:flex;}@media(min-width:768px){.elementor-83644 .elementor-element.elementor-element-fced7df{--width:50%;}}@media(max-width:1024px){.elementor-83644 .elementor-element.elementor-element-f22e5f2{--grid-auto-flow:row;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-83644 .elementor-element.elementor-element-6ed5c82{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-83644 .elementor-element.elementor-element-f22e5f2{--e-con-grid-template-columns:repeat(1, 1fr);--gap:10px 10px;--row-gap:10px;--column-gap:10px;--grid-auto-flow:row;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-83644 .elementor-element.elementor-element-79c1f0d{font-size:16px;}.elementor-83644 .elementor-element.elementor-element-6ed5c82{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-83644 .elementor-element.elementor-element-9d5a165 .elementor-heading-title{font-size:16px;}}/* Start custom CSS *//* ============================================
   QA解説ブロック - カスタムCSS（PDFデザイン準拠版）
   WordPress「追加CSS」またはElementor「カスタムCSS」に貼り付けてください
   ============================================ */

/* --- 全体ラッパー --- */
.quiz-section {
  max-width: 1120px;
  margin: 0 auto;
  font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
  font-size: 16px;
  line-height: 1.8;
  color: #333;
}

/* --- 部タイトル h2（例：【第1部】5月の行事・季節クイズ） --- */
h2.quiz-part-title {
  background: #e8f3fb;
  color: #2a5f8a;
  font-size: 17px;
  font-weight: bold;
  padding: 10px 18px;
  border-left: 5px solid #4a8ab5;
  margin: 36px 0 20px;
  letter-spacing: 0.04em;
  /* テーマのh2デフォルトスタイルをリセット */
  border-bottom: none;
  border-top: none;
  border-right: none;
  box-shadow: none;
  line-height: 1.5;
}

/* --- QAブロック1つ分のラッパー --- */
.qa-block {
  padding: 18px 4px 24px;
  margin-bottom: 0;
  border-bottom: 1px solid #e0e0e0;
}
.qa-block:last-child {
  border-bottom: none;
}

/* --- 質問エリア --- */
.qa-question {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 12px;
}

/* Q バッジ（赤） */
.qa-q-label {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  background: #e04040;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  margin-top: 2px;
}

.qa-question-text {
  font-size: 16px;
  font-weight: bold;
  color: #222;
  margin: 0;
  padding-top: 4px;
}

/* --- 回答エリア --- */
.qa-answer {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
  padding: 0;
  background: none;
  border: none;
}

/* A バッジ（水色） */
.qa-a-label {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  background: #5ab4d6;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

.qa-answer-text {
  font-size: 16px;
  font-weight: bold;
  color: #222;
  margin: 0;
}

/* --- ススメちゃん＋吹き出しエリア（解説＋声かけを一体化） --- */
.qa-callout-wrap {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-top: 8px;
}

/* キャラクターアイコン */
.qa-character {
  flex-shrink: 0;
  width: 64px;
  text-align: center;
}

.qa-character img {
  width: 56px;
  height: auto;
  display: block;
  margin: 0 auto;
}


.qa-character-name {
  font-size: 11px;
  color: #888;
  text-align: center;
  margin-top: 5px;
  line-height: 1.3;
}

/* 吹き出し本体（ピンク枠） */
.qa-speech-bubble {
  position: relative;
  background: #fff;
  border: 2px solid #f48fb1;
  border-radius: 12px;
  padding: 14px 18px;
  flex: 1;
  font-size: 14px;
  color: #333;
  line-height: 1.75;
}

/* 吹き出しの三角（左向き） */
.qa-speech-bubble::before {
  content: '';
  position: absolute;
  left: -13px;
  top: 20px;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-right: 13px solid #f48fb1;
}

.qa-speech-bubble::after {
  content: '';
  position: absolute;
  left: -10px;
  top: 21px;
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
  border-right: 11px solid #fff;
}

/* 解説テキスト（吹き出し内） */
.qa-explanation {
  margin: 0 0 10px;
  font-size: 14px;
  color: #444;
}

/* 声かけテキスト（吹き出し内） */
.qa-callout-label {
  font-size: 12px;
  color: #e07090;
  font-weight: bold;
  margin-bottom: 3px;
}

.qa-callout-text {
  margin: 0;
  font-size: 14px;
  color: #555;
}

/* 解説と声かけの区切り線 */
.qa-bubble-divider {
  border: none;
  border-top: 1px dashed #f9c4d4;
  margin: 10px 0;
}

/* --- レスポンシブ対応 --- */
@media (max-width: 600px) {
  .qa-block {
    padding: 14px 0 18px;
  }
  .qa-question-text,
  .qa-answer-text {
    font-size: 15px;
  }
  .qa-speech-bubble {
    padding: 10px 12px;
    font-size: 13px;
  }
  .qa-explanation,
  .qa-callout-text {
    font-size: 13px;
  }
  .qa-character {
    width: 52px;
  }
  .qa-character-icon {
    width: 48px;
    height: 48px;
    font-size: 24px;
  }
}/* End custom CSS */