.flow-list {
  margin-top: 50px;
  padding-bottom: 80px;
  position: relative; }
  .flow-list:before {
    content: "";
    display: block;
    width: 62px;
    height: 815px;
    background-image: url(../../img/flow-list01.svg);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    position: absolute;
    top: 220px;
    left: 90px; }
    @media (max-width: 428px) {
      .flow-list:before {
        content: none; } }
  .flow-list:after {
    content: "";
    display: block;
    width: 62px;
    height: 595px;
    background-image: url(../../img/flow-list02.svg);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    position: absolute;
    top: 220px;
    right: 90px; }
    @media (max-width: 428px) {
      .flow-list:after {
        content: none; } }
  .flow-list--item {
    width: 602px;
    background-color: #40668B;
    padding: 54px 80px 48px;
    margin: auto;
    box-sizing: border-box;
    position: relative;
    margin-top: 40px; }
    @media (max-width: 428px) {
      .flow-list--item {
        width: 100%;
        padding: 25px 20px 20px; } }
    .flow-list--item:first-of-type {
      margin-top: 0; }
      .flow-list--item:first-of-type:before {
        bottom: -104px;
        height: 94px; }
        @media (max-width: 428px) {
          .flow-list--item:first-of-type:before {
            bottom: -200px;
            height: 190px; } }
      .flow-list--item:first-of-type:after {
        bottom: -108px; }
        @media (max-width: 428px) {
          .flow-list--item:first-of-type:after {
            bottom: -205px; } }
    .flow-list--item:before {
      content: "";
      display: block;
      position: absolute;
      bottom: -28px;
      left: 50%;
      transform: translateX(-50%);
      background-color: #BEBEBE;
      width: 5px;
      height: 18px; }
    .flow-list--item:after {
      content: "";
      display: block;
      width: 0;
      height: 0;
      border-left: 7px solid transparent;
      border-right: 7px solid transparent;
      border-top: 8px solid #BEBEBE;
      position: absolute;
      bottom: -30px;
      left: 50%;
      transform: translateX(-50%); }
    .flow-list--item-partner {
      background-color: #C4B37B; }
    .flow-list--item:last-of-type:before, .flow-list--item:last-of-type:after {
      content: none; }
  .flow-list--hd {
    font-size: 17px;
    font-weight: bold;
    color: #fff;
    line-height: 1.76; }
    @media (max-width: 428px) {
      .flow-list--hd {
        font-size: 16px;
        padding-left: 60px; } }
    .flow-list--hd:before {
      color: #fff;
      font-weight: bold;
      line-height: 1.46;
      font-size: 30px;
      position: absolute;
      top: 30px;
      left: 30px;
      font-family: "Josefin Sans", sans-serif;
      letter-spacing: 0.1em;
      letter-spacing: 0.05em; }
      @media (max-width: 428px) {
        .flow-list--hd:before {
          top: 20px;
          left: 20px; } }
    .flow-list--hd-01:before {
      content: "01"; }
    .flow-list--hd-02:before {
      content: "02"; }
    .flow-list--hd-03:before {
      content: "03"; }
    .flow-list--hd-04:before {
      content: "04"; }
    .flow-list--hd-05:before {
      content: "05"; }
    .flow-list--hd-06:before {
      content: "06"; }
    .flow-list--hd-07:before {
      content: "07"; }
    .flow-list--hd-08:before {
      content: "08"; }
  .flow-list--desc {
    font-size: 14px;
    line-height: 2;
    color: #fff;
    margin-top: 20px; }
    @media (max-width: 428px) {
      .flow-list--desc {
        margin-top: 15px; } }
  .flow-list--label {
    color: #fff;
    font-weight: bold;
    border: 2px solid #fff;
    font-size: 13px;
    width: 132px;
    line-height: 26px;
    text-align: center;
    box-sizing: border-box;
    position: absolute;
    top: 10px;
    right: 10px; }
  .flow-list--link_box {
    text-align: right; }
  .flow-list--link {
    font-size: 14px;
    color: #fff;
    font-weight: bold;
    padding-bottom: 15px;
    transform: translate(40px, 10px); }
    @media (max-width: 428px) {
      .flow-list--link {
        transform: none; } }
    .flow-list--link:hover:after {
      transform: translateX(120%) rotate(45deg); }
      @media (max-width: 428px) {
        .flow-list--link:hover:after {
          transform: rotate(45deg); } }

.flow-type_list {
  margin-top: 40px;
  display: flex;
  justify-content: space-between;
  position: relative;
  z-index: 100; }
  @media (max-width: 428px) {
    .flow-type_list {
      display: block; } }
  @media (max-width: 428px) {
    .flow-type_list--item {
      margin-top: 10px; }
      .flow-type_list--item:first-of-type {
        margin-top: 0; } }
  .flow-type_list--item:nth-of-type(2) {
    transform: translateX(30px); }
    @media (max-width: 428px) {
      .flow-type_list--item:nth-of-type(2) {
        transform: none; } }
  .flow-type_list--link {
    font-size: 14px;
    padding: 10px 20px;
    text-align: center;
    border-radius: 40px;
    border: 2px solid #A2A2A2;
    display: inline-block;
    background-color: #fff;
    position: relative; }
    @media (max-width: 428px) {
      .flow-type_list--link {
        display: block;
        width: 250px;
        margin: auto; }
        .flow-type_list--link:before {
          content: "";
          display: block;
          width: 5px;
          height: 5px;
          border: 2px solid;
          border-color: transparent transparent #A2A2A2 #A2A2A2;
          transform: rotate(-45deg);
          position: absolute;
          top: 10px;
          right: 15px; } }
    .flow-type_list--link:hover {
      background-color: #A2A2A2;
      color: #fff; }
      @media (max-width: 428px) {
        .flow-type_list--link:hover {
          background-color: #fff;
          color: #262023; } }

.flow-care {
  background-color: #F8F7F5;
  padding: 60px 80px;
  margin-top: 40px;
  display: flex;
  align-items: flex-start; }
  @media (max-width: 428px) {
    .flow-care {
      display: block;
      padding: 40px 20px 30px; } }
  .flow-care--text {
    width: calc(100% - 365px - 30px);
    margin-right: 30px; }
    @media (max-width: 428px) {
      .flow-care--text {
        width: 100%;
        margin-right: 0; } }
  .flow-care--sub_ttl {
    font-size: 17px;
    font-weight: bold;
    line-height: 1.76;
    position: relative;
    width: 260px;
    text-align: center;
    margin: auto; }
    @media (max-width: 428px) {
      .flow-care--sub_ttl {
        font-size: 16px; } }
    .flow-care--sub_ttl:before {
      content: "";
      display: block;
      width: 3px;
      height: 40px;
      background-color: #C4B37B;
      position: absolute;
      bottom: 0px;
      left: -25px;
      transform: rotate(-20deg); }
      @media (max-width: 428px) {
        .flow-care--sub_ttl:before {
          left: -15px;
          height: 30px; } }
    .flow-care--sub_ttl:after {
      content: "";
      display: block;
      width: 3px;
      height: 40px;
      background-color: #C4B37B;
      position: absolute;
      bottom: 0px;
      right: -25px;
      transform: rotate(20deg); }
      @media (max-width: 428px) {
        .flow-care--sub_ttl:after {
          right: -15px;
          height: 30px; } }
  .flow-care--ttl {
    text-align: center;
    margin-top: 10px;
    font-size: 26px;
    font-weight: bold;
    line-height: 1.84; }
    @media (max-width: 428px) {
      .flow-care--ttl {
        font-size: 22px;
        margin-top: 0; } }
  .flow-care--st {
    font-size: 40px;
    font-weight: 500; }
    @media (max-width: 428px) {
      .flow-care--st {
        font-size: 35px; } }
  .flow-care--desc {
    margin-top: 20px;
    font-size: 14px;
    line-height: 2; }
    @media (max-width: 428px) {
      .flow-care--desc {
        margin-top: 10px; } }
  .flow-care--img {
    width: 365px; }
    @media (max-width: 428px) {
      .flow-care--img {
        width: 100%;
        margin-top: 20px; } }
