@charset "UTF-8";
@import url("index_page.css");
@import url("detail_page.css");
.block_issues .columns {
  --logoSize:105px;
  --columnColumnGap:calc( var(--logoSize) + var(--space4) * 2 );
  --columnRowGap:calc( var(--logoSize) + var(--space2) * 2 );
  position: relative; }
  .block_issues .columns .column {
    position: relative; }
    .block_issues .columns .column:first-child::after {
      content: "";
      position: absolute;
      width: var(--logoSize);
      height: var(--logoSize);
      background: url("../images/service/logo_plus_arrow_down.png") no-repeat center center;
      background-size: contain;
      top: calc( 100% + ( var(--columnRowGap) - var(--logoSize) ) / 2 );
      left: 0;
      right: 0;
      margin: auto; }
.block_issues .list_wrap .list {
  --contWidth:100% !important; }
  .block_issues .list_wrap .list .inner {
    width: 100%;
    height: 100%;
    border: 1px solid var(--primaryColor);
    border-radius: var(--radius); }
    .block_issues .list_wrap .list .inner .cont {
      padding: var(--space1) var(--space2);
      display: flex;
      justify-content: center;
      box-sizing: border-box; }
@media (min-width: 768px) {
  .block_issues .columns .column:first-child::after {
    background-image: url("../images/service/logo_plus_arrow.png");
    top: 0;
    bottom: 0;
    right: auto;
    left: calc( 100% + ( var(--columnColumnGap) - var(--logoSize) ) / 2 ); } }

.block_flow,
.block_madoguchi {
  padding-top: var(--space5);
  padding-bottom: var(--space5);
  position: relative; }
  .block_flow::before,
  .block_madoguchi::before {
    width: 100dvw;
    height: 100%;
    background: var(--colorLightGray);
    content: "";
    position: absolute;
    top: 0;
    left: min(calc( -1 * var(--cont_margin) ), calc( ( var(--wrapMaxWidth) - 100dvw ) / 2 )); }
  .block_flow > *,
  .block_madoguchi > * {
    position: relative; }

.block_madoguchi {
  padding-top: calc( var(--space5) * 1.5 );
  padding-bottom: calc( var(--space5) * 1.5 );
  color: #FFF; }
  .block_madoguchi::before {
    background: var(--primaryColor); }

.block_flow .head {
  margin-bottom: var(--space4); }
.block_flow .body .steps {
  margin-top: var(--space4);
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: flex-start;
  grid-gap: var(--space2) var(--space2);
  flex-wrap: wrap; }
  .block_flow .body .steps .step {
    width: 180px;
    display: flex;
    flex-direction: column;
    grid-gap: var(--space1);
    justify-content: flex-start;
    align-items: center;
    position: relative; }
    .block_flow .body .steps .step .num {
      font-size: var(--fontSize_h2); }
    .block_flow .body .steps .step::before {
      width: 100%;
      height: 24px;
      background: url("../images/service/arrow_mini.png") no-repeat center bottom;
      background-size: contain;
      left: 0;
      right: 0;
      top: calc( var(--fontSize_h2) - 24px + var(--space1) );
      margin: auto;
      position: absolute;
      content: ""; }
@media (max-width: 520px) {
  .block_flow .body .steps .step {
    width: 140px; }
    .block_flow .body .steps .step .text {
      font-size: var(--fontSize_s); } }
@media (min-width: 768px) {
  .block_flow {
    margin-bottom: calc( var(--space5) * 1.5 ); } }

.block_support .head {
  margin-bottom: var(--space3);
  position: relative; }
  .block_support .head::before {
    width: 20dvw;
    max-width: 309px;
    height: 73px;
    content: "";
    position: absolute;
    bottom: 0;
    background: url("../images/service/arrow.png") no-repeat right bottom;
    background-size: auto 100%;
    left: min(calc( -1 * var(--cont_margin) ), calc( ( var(--wrapMaxWidth) - 100dvw ) / 2 )); }
.block_support .body > .text {
  margin-bottom: var(--space4); }
.block_support .body .columns {
  justify-content: center; }
  .block_support .body .columns .column .label .title_wrap {
    margin-bottom: -6px;
    flex-direction: row;
    align-items: center; }
    .block_support .body .columns .column .label .title_wrap > * {
      line-height: normal; }
  .block_support .body .columns .column .cont {
    height: calc( 100% - var(--space3) );
    background: var(--primaryColor);
    padding: var(--space3);
    color: #FFF;
    box-sizing: border-box; }
  .block_support .body .columns .column ul {
    display: flex;
    flex-direction: column;
    grid-gap: var(--space2);
    margin-bottom: 0; }
    .block_support .body .columns .column ul li {
      padding-left: var(--space3);
      position: relative; }
      .block_support .body .columns .column ul li::before {
        content: "★";
        position: absolute;
        left: 0; }
@media (max-width: 520px) {
  .block_support {
    --fontSize_h2:2rem; } }
@media (min-width: 768px) {
  .block_support {
    margin-bottom: calc( var(--space5) * 1.5 ); } }

.archives.archives_with_bg .archive .inner {
  background: var(--primaryColor); }
