
    :root {
      --blue: #0b64ff;
      --text: #292929;
      --muted: #666;
      --line: #d9d9d9;
      --circle-gray: #999;
      --bg: #fff;
    }

    * { box-sizing: border-box; }

/*
   body {
  margin: 0;
  min-width: 920px;
  background: var(--bg);
  color: var(--text);
  font-family: "Yu Gothic UI", "Yu Gothic", YuGothic, sans-serif;
  line-height: 1.6;
}
*/

    .flow {
      width: 920px;
      margin: 0 auto;
      padding: 18px 24px 30px 74px;
      position: relative;
    }

    .flow::before {
      content: "";
      position: absolute;
      left: 33px;
      top: 34px;
      bottom: 84px;
      width: 4px;
      background: var(--blue);
      border-radius: 999px;
    }

    .step {
      position: relative;
      padding: 0 0 36px;
    }

    .step:last-of-type { padding-bottom: 10px; }

    .badge {
      position: absolute;
      left: -60px;
      top: -2px;
      width: 38px;
      height: 38px;
      border-radius: 50%;
      border: 4px solid var(--blue);
      background: #fff;
      color: var(--blue);
      font-weight: 800;
      font-size: 22px;
      line-height: 30px;
      text-align: center;
      z-index: 2;
    }

    .step:not(:first-child) .badge {
      background: var(--blue);
      color: #fff;
      border-width: 2px;
      line-height: 34px;
    }

    h2 {
      margin: 0;
      font-size: 34px;
      line-height: 1.35;
      font-weight: 700;
      letter-spacing: .01em;
    }

    .lead {
      margin: 2px 0 0;
      color: #4f4f4f;
      font-size: 16px;
      font-weight: 600;
    }

    .path {
      margin: 4px 0 0;
      color: #666;
      font-size: 13px;
    }

    .description {
      margin: 8px 0 12px;
      color: #4a4a4a;
      font-size: 15px;
    }

    .note {
      margin: -7px 0 12px;
      color: #777;
      font-size: 13px;
    }

    .table-wrap {
      margin-top: 8px;
      width: 650px;
    }

    table {
      width: 100%;
      border-collapse: collapse;
      font-size: 15px;
    }

    th, td {
      padding: 7px 0;
      border-bottom: 1px solid var(--line);
      vertical-align: top;
    }

    th {
      text-align: left;
      font-weight: 500;
      padding-right: 20px;
    }

    td {
      text-align: right;
      white-space: nowrap;
      color: #444;
    }

.finish {
  position: relative;
  margin-left: -66px;
  padding-left: 68px; /* 42px → 68px */
  min-height: 64px;
  display: flex;
  align-items: center;
}

.finish h2 {
  margin-left: 0; /* 10px → 0 */
  font-size: 34px;
}

 .finish::before {
  content: "";
  position: absolute;
  left: 1px;          /* -1px → 2px */
  top: 3px;           /* -1px → 3px */
  width: 44px;        /* 54px → 44px */
  height: 44px;       /* 54px → 44px */
  border-radius: 50%;
  border: 7px solid var(--circle-gray); /* 8px → 7px */
  background: #fff;
}

    .finish::after {
      content: "";
      position: absolute;
      left: 25px;
      top: -34px;
      width: 4px;
      height: 35px;
      background: var(--blue);
    }

    .arrow {
      position: absolute;
      left: 19px;
      top: -13px;
      width: 15px;
      height: 15px;
      border-right: 4px solid var(--blue);
      border-bottom: 4px solid var(--blue);
      transform: rotate(45deg);
      z-index: 3;
    }

    .finish h2 {
      margin-left: 10px;
      font-size: 34px;
    }
