/* 部品の中身は WordPress が .wp-block-group__inner-container で包むことがあるので、子の指定（>）は使わない */
/* FITA の学習部品（比較表・添削の改善例・チェックリスト・準備ロードマップ・情報確認カード）。記事とエディターで共通 */
.blog-article:has(.fita-study){min-width:0;}
.fita-study > .wp-block-group__inner-container{min-width:0;max-width:100%;}
.fita-study{box-sizing:border-box;max-width:100%;margin:2.4em 0 0;padding:0;border:1px solid #DFE3EA;border-radius:8px;background:#FFFFFF;color:#1B2438;font-size:16px;line-height:1.9;overflow-wrap:anywhere;}
.fita-study *{box-sizing:border-box;}
.fita-study p{margin:0;}
.fita-study p + p{margin-top:10px;}
.fita-study strong{font-weight:700;color:#0F1C3F;}
.fita-study mark{background:linear-gradient(transparent 58%,#F6E2A8 58%);color:inherit;}
.fita-study a{color:#2A4A80;text-decoration:underline;text-underline-offset:3px;}

/* 見出し: 上に部品の種類（小さな金の文字）、下にタイトル */
.fita-study .fita-study__title{margin:0!important;padding:18px 22px 14px;font-family:"Noto Sans JP",sans-serif;font-size:18px;font-weight:700;line-height:1.55;letter-spacing:.03em;color:#0F1C3F;border-bottom:1px solid #E6E9EF;}
.fita-study .fita-study__title::before{display:block;margin-bottom:4px;font-size:11.5px;font-weight:700;letter-spacing:.16em;color:#AD7C1C;}
.fita-study--comparison .fita-study__title::before{content:"比較表";}
.fita-study--revision .fita-study__title::before{content:"添削の改善例";}
.fita-study--checklist .fita-study__title::before{content:"チェックリスト";}
.fita-study--roadmap .fita-study__title::before{content:"準備ロードマップ";}
.fita-study--source .fita-study__title::before{content:"情報の確認";}
.fita-study .fita-study__note{margin:0!important;padding:12px 22px;background:#F7F8FA;border-top:1px solid #E6E9EF;font-size:12.5px;line-height:1.8;color:#566076;}
.fita-study .fita-study__label{margin:0!important;font-size:12.5px;font-weight:700;line-height:1.7;color:#193765;}
.fita-study .fita-study__scroll-note{display:none!important;}

/* ---------- 比較表 ---------- */
.fita-study .fita-study__table{max-width:100%;margin:0!important;overflow-x:auto;}
.fita-study__table table{width:100%;margin:0;border-collapse:collapse;table-layout:fixed;font-size:14px;line-height:1.75;}
.fita-study .fita-study__table th,.fita-study .fita-study__table td{padding:14px 16px;border:0;border-bottom:1px solid #E6E9EF;vertical-align:top;text-align:left;overflow-wrap:anywhere;background:#FFFFFF;}
.fita-study .fita-study__table td + td{border-left:1px solid #E6E9EF;}
.fita-study .fita-study__table thead th{padding:12px 16px;font-size:14.5px;font-weight:700;line-height:1.6;color:#FFFFFF;border-bottom:0;}
.fita-study .fita-study__table thead th:first-child{width:24%;background:#F1F4F9;color:#566076;font-size:12.5px;}
.fita-study .fita-study__table thead th:nth-child(2){background:#193765;}
.fita-study .fita-study__table thead th:nth-child(3){background:#AD7C1C;}
.fita-study .fita-study__table thead th:nth-child(n+4){background:#2B4C82;}
.fita-study .fita-study__table tbody th{background:#F7F8FA;color:#0F1C3F;font-weight:700;font-size:13.5px;}
.fita-study .fita-study__table tbody tr:last-child > *{border-bottom:0;}
.fita-study__table figcaption{padding:8px 16px;margin:0;text-align:left;font-size:12px;color:#566076;}

/* ---------- 添削の改善例 ---------- */
.fita-study--revision .fita-study__title + .fita-study__label{display:inline-block;margin:16px 22px 0!important;padding:1px 10px;border:1px solid #C9D1DE;border-radius:999px;font-size:11.5px;color:#566076;}
.fita-study .wp-block-columns.fita-study__versions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:44px;margin:16px 22px 0!important;align-items:stretch;}
.fita-study .fita-study__version{position:relative;margin:0!important;padding:16px 18px 18px;min-width:0;border-radius:6px;border:1px solid #DFE3EA;background:#F7F8FA;font-size:15px;line-height:1.85;}
.fita-study .fita-study__version--after{border:2px solid #CB9A36;background:#FAF8F2;}
.fita-study .fita-study__version-title{display:inline-block;margin:0 0 10px!important;padding:1px 12px;border-radius:3px;background:#8A94A6;color:#FFFFFF;font-size:12.5px;font-weight:700;letter-spacing:.08em;line-height:1.8;}
.fita-study .fita-study__version--after .fita-study__version-title{background:#CB9A36;}
/* 改善前 → 改善後 の矢印 */
.fita-study .fita-study__version--after::before{content:"";position:absolute;left:-36px;top:50%;width:28px;height:28px;margin-top:-14px;border-radius:50%;background:#193765;}
.fita-study .fita-study__version--after::after{content:"";position:absolute;left:-28px;top:50%;width:8px;height:8px;margin-top:-4px;border-top:2px solid #FFFFFF;border-right:2px solid #FFFFFF;transform:translateX(1px) rotate(45deg);}
.fita-study .fita-study__comment{margin:18px 22px 20px!important;padding:16px 18px;border-radius:6px;background:#F1F4F9;font-size:15px;line-height:1.85;}
.fita-study .fita-study__comment .fita-study__label{display:flex;align-items:center;gap:8px;margin-bottom:6px!important;font-size:13.5px;}
.fita-study .fita-study__comment .fita-study__label::before{content:"";width:6px;height:16px;border-radius:2px;background:#193765;}
.fita-study .fita-study__comment p + p{margin-top:8px;}

/* ---------- チェックリスト ---------- */
.fita-study--checklist{border:2px solid #193765;overflow:hidden;}
.fita-study--checklist .fita-study__title{background:#193765;color:#FFFFFF;border-bottom:0;padding:14px 22px 13px;}
.fita-study--checklist .fita-study__title::before{color:#E9C77B;}
.fita-study .fita-study__checks{list-style:none!important;margin:0!important;padding:6px 22px!important;}
.fita-study .fita-study__checks > li{position:relative;margin:0!important;padding:14px 0 14px 36px;border-bottom:1px dashed #D5DBE5;font-size:14px;line-height:1.8;color:#566076;}
.fita-study .fita-study__checks > li:last-child{border-bottom:0;}
.fita-study .fita-study__checks > li strong{display:inline-block;margin-bottom:2px;font-size:15.5px;line-height:1.65;color:#0F1C3F;}
.fita-study .fita-study__checks > li::before{content:"";position:absolute;left:0;top:16px;width:22px;height:22px;border:2px solid #193765;border-radius:4px;background:#FFFFFF;}
.fita-study .fita-study__checks > li::after{content:"";position:absolute;left:7px;top:19px;width:7px;height:12px;border-right:2.5px solid #CB9A36;border-bottom:2.5px solid #CB9A36;transform:rotate(45deg);}
.fita-study .fita-study__checks > li::marker{content:none;}

/* ---------- 準備ロードマップ ---------- */
.fita-study--roadmap .fita-study__title + .fita-study__stage{margin-top:8px!important;}
.fita-study .fita-study__stage{position:relative;display:grid;grid-template-columns:120px minmax(0,1fr);gap:18px;margin:0 22px!important;padding:12px 0;}
.fita-study__stage > .wp-block-group__inner-container,.fita-study__field > .wp-block-group__inner-container{display:contents;}
/* 段階をつなぐ縦の線 */
.fita-study .fita-study__stage::before{content:"";position:absolute;left:60px;top:0;bottom:0;border-left:2px dashed #C9D1DE;}
.fita-study--roadmap .fita-study__title + .fita-study__stage::before{top:30px;}
.fita-study .fita-study__stage:has(+ .fita-study__note)::before,.fita-study .fita-study__stage:last-child::before{bottom:auto;height:30px;}
.fita-study .fita-study__period{position:relative;z-index:1;align-self:start;margin:6px 0 0!important;padding:6px 8px;border-radius:999px;background:#193765;color:#FFFFFF;font-size:13px;font-weight:700;line-height:1.5;text-align:center;letter-spacing:.04em;}
.fita-study .fita-study__stage-body{margin:0!important;min-width:0;padding:16px 20px;border:1px solid #DFE3EA;border-radius:8px;background:#FFFFFF;font-size:15px;line-height:1.85;}
.fita-study .fita-study__task{margin:0 0 6px!important;font-size:16.5px;font-weight:700;line-height:1.6;color:#0F1C3F;}
.fita-study .fita-study__goal{margin:12px 0 0!important;padding:8px 12px;border-left:3px solid #CB9A36;border-radius:0 4px 4px 0;background:#FAF8F2;font-size:14px;line-height:1.75;}
.fita-study .fita-study__goal strong{color:#AD7C1C;}
.fita-study--roadmap .fita-study__note{margin-top:12px!important;}

/* ---------- 情報確認カード ---------- */
.fita-study--source{border-top:4px solid #CB9A36;}
.fita-study .fita-study__field{display:grid;grid-template-columns:132px minmax(0,1fr);gap:0;margin:0!important;border-bottom:1px solid #E6E9EF;}
.fita-study .fita-study__field:last-child{border-bottom:0;}
.fita-study .fita-study__field-label{display:flex;align-items:flex-start;gap:8px;margin:0!important;padding:13px 14px 13px 22px;background:#F7F8FA;color:#193765;font-weight:700;font-size:13.5px;line-height:1.7;}
.fita-study .fita-study__field-label::before{content:"";flex:none;width:6px;height:6px;margin-top:.62em;border-radius:50%;background:#CB9A36;}
.fita-study .fita-study__field-value{margin:0!important;min-width:0;padding:13px 22px 13px 18px;font-size:14px;line-height:1.8;}

@media(max-width:599px){
  .fita-study{font-size:15px;line-height:1.9;}
  .fita-study .fita-study__title{padding:15px 16px 12px;font-size:16.5px;}
  .fita-study .fita-study__note{padding:10px 16px;}
  /* 比較表は横スクロールなしで収める */
  .fita-study__table table{font-size:13px;line-height:1.7;}
  .fita-study .fita-study__table th,.fita-study .fita-study__table td{padding:10px 9px;}
  .fita-study .fita-study__table thead th{padding:10px 9px;font-size:13px;}
  .fita-study .fita-study__table thead th:first-child{width:25%;font-size:11.5px;}
  .fita-study .fita-study__table tbody th{font-size:12.5px;}
  /* 添削: 縦に並べ、矢印は下向き */
  .fita-study--revision .fita-study__title + .fita-study__label{margin:14px 16px 0!important;}
  .fita-study .wp-block-columns.fita-study__versions{grid-template-columns:minmax(0,1fr);gap:38px;margin:14px 16px 0!important;}
  .fita-study .fita-study__version{padding:14px 15px 15px;font-size:14.5px;}
  .fita-study .fita-study__version--after::before{left:50%;top:-34px;margin:0 0 0 -14px;}
  .fita-study .fita-study__version--after::after{left:50%;top:-25px;margin:0 0 0 -4px;transform:rotate(135deg);}
  .fita-study .fita-study__comment{margin:16px 16px 16px!important;padding:14px 15px;font-size:14.5px;}
  .fita-study .fita-study__checks{padding:4px 16px!important;}
  .fita-study .fita-study__checks > li{padding:12px 0 12px 34px;font-size:13.5px;}
  .fita-study .fita-study__checks > li::before{top:14px;}
  .fita-study .fita-study__checks > li::after{top:17px;}
  .fita-study .fita-study__checks > li strong{font-size:15px;}
  /* ロードマップ: 左に線、時期は札、その下に中身 */
  .fita-study .fita-study__stage{grid-template-columns:minmax(0,1fr);gap:8px;margin:0 16px!important;padding:10px 0 10px 26px;}
  .fita-study .fita-study__stage::before{left:7px;}
  .fita-study--roadmap .fita-study__title + .fita-study__stage::before{top:20px;}
  .fita-study .fita-study__stage:has(+ .fita-study__note)::before,.fita-study .fita-study__stage:last-child::before{height:20px;}
  .fita-study .fita-study__stage::after{content:"";position:absolute;left:1px;top:16px;width:14px;height:14px;border-radius:50%;background:#193765;border:3px solid #FFFFFF;box-shadow:0 0 0 1px #193765;}
  .fita-study .fita-study__period{justify-self:start;margin:0!important;padding:3px 12px;font-size:12.5px;}
  .fita-study .fita-study__stage-body{padding:14px 15px;font-size:14.5px;}
  .fita-study .fita-study__task{font-size:15.5px;}
  .fita-study .fita-study__goal{font-size:13.5px;}
  .fita-study .fita-study__field{grid-template-columns:minmax(0,1fr);}
  .fita-study .fita-study__field-label{padding:9px 16px 7px;}
  .fita-study .fita-study__field-value{padding:9px 16px 12px;}
}

/* Preserve the admission timeline on narrow screens; scroll instead of changing to a list. */
@media(max-width:599px){
 .entry-body .fita-schedule{min-width:0;max-width:100%}
 .entry-body .fita-schedule .fita-schedule__chart{display:block;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;padding:10px 16px 14px}
 .entry-body .fita-schedule__months,.entry-body .fita-schedule__row{min-width:640px}
 .entry-body .fita-schedule .fita-schedule__mobile{display:none}
 .entry-body .fita-schedule__title::after{content:"図は左右にスクロールできます";display:block;margin-top:8px;color:#566076;font-size:12px;font-weight:400;line-height:1.7;letter-spacing:0}
}
