body {
  background-color: #fff;
}
section.digitalReturnContents {
    margin: 30px 0 0;
  }
  .position-relative{
    position: relative;
  }
  .position-absolute{
    position: absolute;
  }
  .form-text-position{
    top: 24%;
    left: 7%;
  }
  .return_case_flow--family p,
  .return_case_flow--pudo p {
    text-align: left;
  }
  @media screen and (max-width: 960px) {
    section.digitalReturnContents {
      margin: 20px 0 0;
    }
    .container {
      max-width: 100%!important;
    }
  }
  @media screen and (max-width: 639px) {
    .form-text-position {
      top: 16%;
      left: 14%;
    }
  }
  @media screen and (max-width: 480px) {
    .form-text-position {
      left: 4%;
    }
  }
  /* JSYS-1554対応 */
  .header_text {
    text-shadow: 2px 2px 10px #fff, -2px 2px 10px #fff, 2px -2px 10px #fff, -2px -2px 10px #fff;
  }
  .header_text p {
    font-size: 24px;
    font-weight: bold;
  }
  .header_text_sub {
    font-size: 48px;
    font-weight: bold;
    margin-top: 25px;
    color: #EF7C28;
    text-shadow: 2px 2px 10px #fff, -2px 2px 10px #fff, 2px -2px 10px #fff, -2px -2px 10px #fff;
  }


  .digital_return_wrap {
    text-align: center;
    margin-top: 60px;
  }
  .digital_return_wrap:last-of-type{
    margin-bottom: 80px;
  }

  .digital_return_wrap .digital_return_title {
    font-size: 28px;
    font-weight: bold;
    width: 400px;
    margin: 0 auto 30px;
  }
  .digital_return_about {
    display: flex;
    justify-content: space-between;
    margin-top: 40px;
    gap: 20px;
  }
  .digital_return_about_left {
    width: 65%;
    display: flex;
    flex-direction: column;
  }
  .digital_return_about_right {
    width: 35%;
  }
  .digital_return_about_left_text {
    font-size: 14px;
    line-height: 24px;
    text-align: left;
  }

  .line-with-dots {
    position: relative;
    padding-bottom: 20px;
    height: auto;
    background: none;
  }
  .line-with-dots .dot-right {
    position: absolute;
    right: -7px;
    bottom: -5px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: #7BBF4F;
  }
  .line-with-dots::before {
    content: "";
    position: absolute;
    left: -7px;
    bottom: -5px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: #7BBF4F;
  }
  .line-with-dots::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 4px;
    background: #7BBF4F;
    border-radius: 2px;
  }

  @media screen and (min-width: 600px) and (max-width: 820px) {
    .digital_return_wrap {
      padding: 0 10px;
    }
  }
  @media screen and (max-width: 768px) {
    .header_text p {
      font-size: 16px;
    }
    .header_text_sub {
      font-size: 36px;
      margin-top: 15px;
    }
    .form-text-position {
      top: 27%;
    }
    .digital_return_wrap .digital_return_title {
      font-size: 22px;
      width: 310px;
    }
    .digital_return_wrap {
      margin-top: 40px;
    }
    .digital_return_about {
      flex-direction: column-reverse;
      align-items: center;
    }
    .digital_return_about_right {
      width: 35%;
    }
    .digital_return_about_left {
      width: 90%;
    }
    .digital_return_about_left_text {
      margin: 20px 0;
      font-size: 14px;
      line-height: 22px;
    }
  }

  .caption_color {
    color: #e11714;
  }
  .fs16 {
    font-size: 16px;
  }
  .fs14 {
    font-size: 14px;
  }
  .fs12 {
    font-size: 12px!important;
  }

  .digital_return_about_left_description {
    background-color: #e4efd7;
    padding: 10px 20px;
    width: fit-content;
    border-radius: 10px;
    display: flex;
    margin-top: 20px;
    align-items: center;
    gap: 70px;
    justify-content: space-between;
  }
  .w-150 {
    width: 150px;
  }
  .w-200 {
    width: 200px;
  }
  .w-100px {
    width: 100px;
  }
  .bold {
    font-weight: bold;
  }
  .digital_return_about_left_description .text_area {
    text-align: left;
  }
  .digital_return_about_left_description .text_area .text_green {
    color: #75ac57;
  }

  .title_chip {
    display: inline-flex;
    align-items: center;
    background-color: #7BBF4F;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    padding: 4px 8px 4px 12px;
    border-radius: 0;
    position: relative;
    line-height: 1.4;
  }
  .title_chip::after {
    content: "";
    position: absolute;
    top: 0;
    right: -14px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 14px 0 14px 14px;
    border-color: transparent transparent transparent #7BBF4F;
  }
  .return_location {
    margin-top: 40px;
    text-align: left;
  }
  .location_icons {
    display: flex;
    gap: 10px;
  }
  .icon_box_text {
    text-align: center;
    font-size: 12px;
    font-weight: bold;
    line-height: 1.2;
  }

  .caption_list {
    border: 1px solid #e11714;
    border-radius: 8px;
    padding: 10px 15px;
    margin-top: 40px;
    text-align: left;
  }
  .caption_list_title {
    font-size: 16px;
    font-weight: bold;
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 12px;
  }
  .caption_list_title::before {
    content: "!";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #e11714;
    color: #fff;
    font-size: 14px;
    font-weight: 900;
    line-height: 1;
    flex-shrink: 0;
  }
  .caption_list_content {
    list-style: disc;
    padding-left: 1.5em;
    margin: 0;
    font-size: 13px;
    line-height: 1.8;
  }

  .flow_section {
    text-align: left;
    margin-top: 30px;
  }
  .flow_section_title {
    font-size: 24px;
    font-weight: bold;
    border-left: 5px solid #7BBF4F;
    padding-left: 12px;
    line-height: 1.3;
  }
  .flow_section_description {
    font-size: 14px;
    line-height: 1.8;
    margin-top: 15px;
  }
  .flow_steps {
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
    gap: 10px;
    margin-top: 30px;
  }
  .flow_step {
    text-align: center;
    flex: 1;
    max-width: 170px;
    display: flex;
    flex-direction: column;
    position: relative;
    padding-top: 20px;
    padding-bottom: 10px;
    border-radius: 10px;
  }
  .flow_step1 {
    border: 1px solid #98c048;
  }
  .flow_step1 .flow_step_label {
    background-color: #98c048;
  }
  .flow_step2 {
    border: 1px solid #85b341;
  }
  .flow_step2 .flow_step_label {
    background-color: #85b341;
  }
  .flow_step3 {
    border: 1px solid #70a840;
  }
  .flow_step3 .flow_step_label {
    background-color: #70a840;
  }
  .flow_step4 {
    border: 1px solid #5d9c38;
  }
  .flow_step4 .flow_step_label {
    background-color: #5d9c38;
  }
  .flow_step5 {
    border: 1px solid #489137;
  }
  .flow_step5 .flow_step_label {
    background-color: #489137;
  }
  .flow_step_label {
    font-size: 14px;
    font-weight: bold;
    position: absolute;
    display: inline-block;
    left: 40px;
    padding: 2px 16px;
    top: -13px;
    color: #fff;
    border-radius: 25px;
  }
  .flow_step_icon {
    margin: 0 auto;
  }
  .flow_step_icon img {
    /* width: 80px; */
    height: 100px;
  }
  .flow_step_icon--text {
    border-radius: 10px;
    padding: 15px 10px;
    min-height: 130px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .flow_step_icon--text p {
    font-size: 13px;
    line-height: 1.6;
  }
  .flow_step_text {
    font-size: 13px;
    line-height: 1.5;
    margin-top: 10px;
  }
  .flow_step_arrow {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8px 0 8px 12px;
    border-color: transparent transparent transparent #323232;
    flex-shrink: 0;
    align-self: center;
    margin-left: 4px;
    margin-right: 4px;
  }
  .flow_note {
    margin-top: 30px;
    text-align: left;
  }
  .flow_note_title {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 10px;
  }
  .flow_note_text {
    font-size: 13px;
    line-height: 1.8;
  }

  @media screen and (max-width: 768px) {
    .flow_section_title {
      font-size: 20px;
    }
    .flow_step_icon img {
      width: 80px;
    }
    .flow_step_text {
      font-size: 12px;
    }
    .flow_step_icon--text p {
      font-size: 12px;
    }
  }

  @media screen and (max-width: 600px) {
    .digital_return_about_left_description {
        flex-direction: column;
        width: 100%;
        gap: 6px;
    }
    .digital_return_about_left_description .text_area {
        text-align: center;
    }
    .return_location {
        width: 95%;
        margin: 20px auto;
    }
    .caption_list {
     width: 95%;
     margin: 0 auto;
    }
    .location_icons .icon_box img {
      width: 75px;
    }
    .flow_section {
      width: 95%;
      margin: 20px auto 0;
    }
    .flow_steps {
      display: grid;
      grid-template-columns: 1fr auto 1fr;
      row-gap: 25px;
      column-gap: 0;
    }
    .flow_step {
      max-width: 100%;
    }
    .flow_step_arrow--even {
      display: none;
    }
    .flow_step_arrow--odd {
      align-self: center;
    }
    .flow_step_label {
      left: 50%;
      transform: translateX(-50%);
    }
    .flow_step_icon img {
      height: 80px;
    }
    .flow_step_text {
      font-size: 12px;
    }
    .flow_note {
      width: 100%;
    }
    .title_chip {
      background-color: transparent;
      color: #333;
      font-size: 20px;
      padding: 0;
      display: flex;
      align-items: center;
      gap: 6px;
    }
    .title_chip::before {
      content: "";
      display: inline-block;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 6px 0 6px 9px;
      border-color: transparent transparent transparent #7BBF4F;
    }
    .title_chip::after {
      display: none;
    }
  }

  /* 返却ケース（セブンイレブン・ファミリーマート） */
  .return_cases {
    margin-top: 40px;
    text-align: left;
    background: #e4efd8;
    padding: 20px;
    border-radius: 10px;
  }
  .return_case {
    margin-bottom: 30px;
  }
  .return_case_title {
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    padding: 5px 10px;
    border-radius: 0;
    text-align: left;
    position: relative;
    width: fit-content;
    margin-bottom: 10px;
  }
  .return_case_title::after {
    content: '';
    position: absolute;
    right: -10px;
    top: 0;
    width: 0;
    height: 0;
    border-top: 18px solid transparent;
    border-bottom: 18px solid transparent;
  }
  .return_case_title--seven {
    background-color: #f18e00;
  }
  .return_case_title--seven::after {
    border-left: 10px solid #f18e00;
  }
  .return_case_title--family {
    background-color: #00a948;
  }
  .return_case_title--family::after {
    border-left: 10px solid #00a948;
  }
  .return_case_title--pudo {
    background-color: #98c048;
  }
  .return_case_title--pudo::after {
    border-left: 10px solid #98c048;
  }
  .return_case_description {
    font-size: 14px;
    margin-top: 10px;
    line-height: 1.6;
  }
  .return_case_flow {
    display: flex;
    align-items: flex-start;
    gap: 0;
    margin-top: 15px;
  }
  .return_case_flow_item {
    text-align: center;
    width: 165px;
  }
  .return_case_flow_item img {
    width: 120px;
    height: auto;
  }
  .return_case_flow_item p {
    font-size: 13px;
    line-height: 1.5;
    margin-top: 8px;
  }
  .return_case_flow_arrow {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 7px 0 7px 10px;
    border-color: transparent transparent transparent #333;
    flex-shrink: 0;
    margin: 40px 4px 0;
  }

  @media screen and (max-width: 600px) {
    .return_case_title {
      font-size: 16px;
    }
    .return_case_flow {
      display: grid;
      grid-template-columns: 1fr auto 1fr;
      row-gap: 20px;
      column-gap: 0;
    }
    .return_case_flow_arrow--even {
      display: none;
    }
    .return_case_flow_arrow--odd {
      align-self: start;
      margin-top: 40px;
    }
    .return_case_flow_item img {
      width: 145px;
    }
    .return_cases {
        border-radius: 0;
    }
    .return_case_flow_item p {
      font-size: 12px;
    }
    .return_case_notice_text {
        padding: 10px!important;
        text-align: left!important;
    }
    .return_case_flow_item p {
      text-align: left;
    }
  }

  .return_case_notice {
    border: 1px solid #e11714;
    border-radius: 10px;
    margin-top: 30px;
    overflow: hidden;
  }
  .return_case_notice_title {
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    background-color: #e11714;
    text-align: center;
    padding: 8px 10px;
  }
  .return_case_notice_text {
    font-size: 14px;
    line-height: 1.6;
    text-align: center;
    padding: 15px 30px;
    background-color: #fff;
  }