.fi-article .fi-action-diagram {
  padding: 24px 22px 20px;
  border-color: #b8cbd9;
  border-radius: 3px;
  background: #fff;
  container-type: inline-size;
  scroll-margin-top: 76px;
}
.fi-article .fi-action-diagram figcaption { font-size: 19px; font-weight: 700; color: #173f5f; }
.fi-article .fi-action-diagram .fi-diagram-question {
  margin: 14px 0 20px;
  font-size: 19px;
  font-weight: 700;
  line-height: 1.8;
  color: #263d50;
}
.fi-diagram-question > span, .fi-diagram-goal > span {
  display: block;
  margin-bottom: 4px;
  color: #4d6070;
  font-size: 13px;
  font-weight: 600;
}
.fi-article .fi-action-diagram svg {
  display: block;
  width: 100%;
  height: auto;
  max-width: none !important;
  margin: 0 !important;
}
.fi-article .fi-action-diagram svg text {
  font-family: Meiryo, "Hiragino Kaku Gothic ProN", sans-serif;
}
.fi-diagram-desktop { display: none; }
.fi-diagram-mobile { display: block; max-width: 340px; margin: 0 auto; }
.fi-article .fi-action-diagram .fi-diagram-goal {
  border-left: 4px solid #e5c54c;
  background: #fffbed;
  margin: 20px 0 16px;
  padding: 13px 16px;
  color: #263d50;
  font-size: 17px;
  line-height: 1.9;
}
.fi-article .fi-diagram-goal strong { background: none; box-shadow: none; color: inherit; }
.fi-diagram-additional {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin: 8px 0 0;
}
.fi-article .fi-diagram-also { margin: 18px 0 8px; padding-top: 16px; border-top: 1px solid #b8cbd9; font-size: 16px; font-weight: 700; color: #173f5f; }
.fi-diagram-additional dt { color: #173f5f; font-size: 16px; font-weight: 700; margin-bottom: 6px; }
.fi-diagram-additional dd { margin: 0; color: #263d50; font-size: 14px; line-height: 1.9; }
.fi-article .fi-action-diagram .fi-figure-description { color: #405669; font-size: 15px; }
.fi-article .fi-diagram-action { margin: 14px 0 0; }
.fi-diagram-action a { display: inline-block; min-height: 44px; padding: 8px 0; font-weight: 700; color: #173f5f; }
.fi-diagram-action a:focus-visible { outline: 3px solid #173f5f; outline-offset: 4px; }
.fi-diagram-anchor { display: block; height: 0; }
@media (max-width: 620px) {
  .fi-article figure.fi-figure.fi-action-diagram {
    box-sizing: border-box;
    width: calc(100% + 28px);
    max-width: calc(100% + 28px);
    margin-left: -14px;
    margin-right: -14px;
    padding: 18px 10px 16px;
  }
  .fi-diagram-desktop { display: none; }
  .fi-diagram-mobile { display: block; max-width: 340px; margin: 0 auto; }
  .fi-article .fi-action-diagram figcaption { font-size: 18px; }
  .fi-article .fi-action-diagram .fi-diagram-question { font-size: 18px; }
  .fi-diagram-additional { grid-template-columns: 1fr; gap: 14px; }
  .fi-diagram-additional dt { font-size: 17px; margin-bottom: 3px; }
  .fi-diagram-additional dd { font-size: 16px; }
  .fi-article .fi-action-diagram .fi-diagram-goal { padding: 11px 12px; font-size: 17px; }
  .fi-article figure.fi-figure.fi-action-diagram .fi-figure-description { font-size: 16px; }
}
@media print {
  .fi-diagram-desktop { display: block !important; }
  .fi-diagram-mobile { display: none !important; }
  .fi-article .fi-action-diagram { break-inside: avoid; }
}
@container (min-width: 700px) {
  .fi-diagram-desktop { display: block; }
  .fi-diagram-mobile { display: none; }
}
@container (max-width: 699px) {
  .fi-diagram-additional { grid-template-columns: 1fr; }
  .fi-diagram-additional dd { font-size: 16px; }
}

/* V3 diagrams: all lettering stays dark on light backgrounds. */
.fi-article figure.fi-figure.fi-action-diagram.fi-diagram-v3{border:0;border-radius:10px;background:#f7f9fb;padding:20px 16px;box-shadow:none;container-type:inline-size;overflow:visible}
.fi-article figure.fi-action-diagram.fi-diagram-v3>figcaption{font-size:21px;font-weight:700;line-height:1.55;color:#173f5f;margin:0 0 18px;padding:0}
.fi-article .fi-diagram-v3 .fi-v3-question{display:block;margin:0 0 8px;font-size:16px;font-weight:400;line-height:1.65;color:#4d6070}
.fi-article .fi-diagram-v3 .fi-v3-number{display:inline-block;vertical-align:baseline;margin:0 8px 0 0;padding:2px 7px;background:#e8eff5;border:1px solid #a4b9c9;border-radius:4px;font-size:13px;font-weight:700;color:#173f5f}
.fi-article .fi-diagram-v3 .fi-v3-title{display:block;font-size:21px;font-weight:700;color:#173f5f}
.fi-article figure.fi-diagram-v3 svg text{font-family:inherit;letter-spacing:0}
.fi-article .fi-diagram-v3 .fi-diagram-desktop{max-width:760px;margin:0 auto}
.fi-article .fi-diagram-v3 .fi-diagram-mobile{max-width:320px;margin:0 auto}
.fi-article figure.fi-diagram-v3 .fi-diagram-goal{margin:14px 0 10px;border-left:3px solid #173f5f;background:#e8eff5;padding:10px 12px;font-size:16px;line-height:1.7;font-weight:400;color:#263d50}
.fi-article figure.fi-diagram-v3 .fi-diagram-goal>span{display:block;margin:0 0 4px;font-size:13px;font-weight:400;color:#4d6070}
.fi-article figure.fi-diagram-v3 .fi-figure-description{margin:10px 0 0;padding:0;font-size:16px;line-height:1.7;color:#4d6070}
@media(max-width:620px){
 .fi-article figure.fi-figure.fi-action-diagram.fi-diagram-v3{width:calc(100% + 60px);max-width:calc(100% + 60px);margin-left:-30px;margin-right:-30px;padding:16px 4px;border-radius:8px}
 .fi-article figure.fi-action-diagram.fi-diagram-v3>figcaption{font-size:19px;margin:0 8px 14px}
 .fi-article .fi-diagram-v3 .fi-v3-title{font-size:19px}
 .fi-article figure.fi-diagram-v3 .fi-diagram-goal,.fi-article figure.fi-diagram-v3 .fi-figure-description{margin-left:8px;margin-right:8px}
}
@container(min-width:650px){.fi-diagram-v3 .fi-diagram-desktop{display:block}.fi-diagram-v3 .fi-diagram-mobile{display:none}}
@media print{.fi-article figure.fi-figure.fi-diagram-v3{background:#fff;border:1px solid #a4b9c9;width:auto;max-width:100%;margin-left:0;margin-right:0;break-inside:avoid}.fi-diagram-v3 .fi-diagram-desktop{display:block!important}.fi-diagram-v3 .fi-diagram-mobile{display:none!important}}
