@charset "UTF-8";
body.over-hidden {
  width: 100%;
  height: 100vh;
  overflow: hidden; }

/*--------------------
 bg_page
---------------------*/
#bg_page {
  background-color: #009DDC;
  opacity: 0.4;
  mix-blend-mode: multiply;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transition: background-color 1s; }

#bg_page.out {
  background-color: transparent; }

/*--------------------
　strength
---------------------*/
.strength {
  position: relative; }
  .strength .row_strength {
    gap: 0;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap; }
    .strength .row_strength .box_img {
      width: 50%;
      height: auto;
      aspect-ratio: 8/7;
      border-radius: var(--size100);
      overflow: hidden; }
      @media (max-width: 1024px) {
        .strength .row_strength .box_img {
          width: 100%;
          margin: 0 8% var(--size60);
          border-radius: var(--size60);
          aspect-ratio: auto; } }
    .strength .row_strength .box_txt {
      width: 37.38%;
      max-width: 600px; }
      @media (max-width: 1024px) {
        .strength .row_strength .box_txt {
          width: 100%;
          padding: 0 8%;
          max-width: 100%; } }
      .strength .row_strength .box_txt .tit_strength {
        display: block; }
        .strength .row_strength .box_txt .tit_strength span.num {
          display: block;
          width: calc(var(--size80) + var(--size100));
          padding-left: calc(80*var(--calc_min1440)); }
          @media (max-width: 1024px) {
            .strength .row_strength .box_txt .tit_strength span.num {
              padding-left: 0; } }
          @media (max-width: 767px) {
            .strength .row_strength .box_txt .tit_strength span.num {
              width: var(--size60);
              margin: 0 auto; } }
        .strength .row_strength .box_txt .tit_strength .ja {
          display: block;
          padding-left: calc(80*var(--calc_min1440));
          border-top: 1px solid #0A2C87;
          font-weight: 600;
          color: #0A2C87;
          padding-top: 1em; }
          @media (max-width: 1024px) {
            .strength .row_strength .box_txt .tit_strength .ja {
              padding-left: 0; } }
      .strength .row_strength .box_txt p.txt {
        padding-left: calc(80*var(--calc_min1440));
        margin-top: 1.5em; }
        @media (max-width: 1024px) {
          .strength .row_strength .box_txt p.txt {
            padding-left: 0; } }
  .strength .row_strength.rev {
    justify-content: flex-start; }
    .strength .row_strength.rev .box_img {
      border-radius: var(--size100) 0 0 var(--size100); }
      @media (max-width: 1024px) {
        .strength .row_strength.rev .box_img {
          border-radius: var(--size60); } }
    .strength .row_strength.rev .box_txt .tit_strength span.num {
      padding-right: calc(80*var(--calc_min1440));
      padding-left: 0; }
      @media (max-width: 1024px) {
        .strength .row_strength.rev .box_txt .tit_strength span.num {
          padding-right: 0; } }
    .strength .row_strength.rev .box_txt .tit_strength .ja {
      padding-right: calc(80*var(--calc_min1440));
      padding-left: 0; }
      @media (max-width: 1024px) {
        .strength .row_strength.rev .box_txt .tit_strength .ja {
          padding-right: 0; } }
    .strength .row_strength.rev .box_txt p.txt {
      padding-right: calc(80*var(--calc_min1440));
      padding-left: 0; }
      @media (max-width: 767px) {
        .strength .row_strength.rev .box_txt p.txt {
          padding-right: calc(80*var(--calc_max767)); } }
  @media (max-width: 767px) and (max-width: 1024px) {
    .strength .row_strength.rev .box_txt p.txt {
      padding-right: 0; } }

  .strength .row_strength + .row_strength {
    margin-top: var(--size80); }

/*--------------------
　flow
---------------------*/
.row_flow {
  gap: var(--size10);
  flex-flow: wrap;
  padding-top: var(--size60); }
  @media (max-width: 1024px) {
    .row_flow {
      gap: var(--size100) var(--size20); } }
  .row_flow .col.box_flow {
    position: relative;
    width: calc(25% - var(--size30)/4); }
    @media (max-width: 1024px) {
      .row_flow .col.box_flow {
        width: calc(50% - var(--size20)/2); } }
    @media (max-width: 500px) {
      .row_flow .col.box_flow {
        width: 100%; } }
    .row_flow .col.box_flow .icn {
      width: var(--size100);
      position: absolute;
      left: calc(50% - var(--size50));
      top: calc(-1*var(--size50));
      z-index: 2; }
    .row_flow .col.box_flow figure {
      border-radius: var(--size20);
      margin-bottom: var(--size20); }
    .row_flow .col.box_flow h5 {
      border-bottom: 1px solid #0A2C87;
      padding-bottom: 0.5em;
      margin-bottom: 1em;
      padding: 0 0.5em 0.5em;
      color: #0A2C87; }
    .row_flow .col.box_flow p {
      padding: 0 0.5em; }

/*--------------------
　interview
---------------------*/
.interview .flexWrap {
  gap: 12%;
  flex-wrap: wrap;
  justify-content: space-between; }
  @media (max-width: 1024px) {
    .interview .flexWrap {
      gap: 8%; } }
  @media (max-width: 767px) {
    .interview .flexWrap {
      gap: 0; } }
  .interview .flexWrap .box_txt {
    width: 38%; }
    @media (max-width: 1024px) {
      .interview .flexWrap .box_txt {
        width: 42%; } }
    @media (max-width: 767px) {
      .interview .flexWrap .box_txt {
        width: 100%; } }

.row_interview_index {
  margin-top: var(--size60);
  position: relative;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between; }
  @media (max-width: 767px) {
    .row_interview_index {
      flex-wrap: wrap; } }
  .row_interview_index .col {
    width: 52.1%;
    position: relative; }
    @media (max-width: 767px) {
      .row_interview_index .col {
        width: 80%; } }
  .row_interview_index .col:first-child {
    clip-path: polygon(0 0, 100% 0, 89% 100%, 0% 100%);
    margin-right: -4.2%; }
    @media (max-width: 767px) {
      .row_interview_index .col:first-child {
        margin-right: 0; } }
  .row_interview_index .col:last-child {
    clip-path: polygon(10% 0, 100% 0, 100% 100%, 0 100%);
    margin-left: -4.2%;
    margin-top: calc(64*var(--calc_min1440)); }
    @media (max-width: 767px) {
      .row_interview_index .col:last-child {
        margin-left: auto;
        margin-right: 0; } }

/*--------------------
　information
---------------------*/
.notop:not(:first-child) .information {
  padding-top: 0; }
