@charset "UTF-8";
.work-page .sec_1 {
  padding: 4em 0 0; }
  @media only screen and (max-width: 768px), print and (min-width: 2cm) {
    .work-page .sec_1 {
      padding: 3em 0 0; } }
  .work-page .sec_1 p {
    font-size: 1.8rem;
    text-align: center; }
@media only screen and (max-width: 999px) and (max-width: 768px), print and (max-width: 1cm) and (min-width: 2cm) {
  .work-page .sec_1 p {
    font-size: 1.4rem;
    line-height: 1.6; } }

.work-page .sec_2 {
  padding: 5em 0 0; }
  @media only screen and (max-width: 768px), print and (min-width: 2cm) {
    .work-page .sec_2 {
      padding: 4em 0 0; } }
  .work-page .sec_2 .inner {
    background: #F6F6F6;
    position: relative; }
    @media only screen and (max-width: 1199px), print and (max-width: 2cm) {
      .work-page .sec_2 .inner {
        padding: 0; } }
    .work-page .sec_2 .inner .bt-bd {
      border-bottom: 1px solid #000; }
    .work-page .sec_2 .inner > .flex {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      position: relative; }
      @media only screen and (max-width: 768px), print and (min-width: 2cm) {
        .work-page .sec_2 .inner > .flex {
          border-bottom: none; } }
      .work-page .sec_2 .inner > .flex:nth-child(n+2) {
        margin: 60px 0 0;
        padding: 0 0 60px; }
        @media only screen and (max-width: 768px), print and (min-width: 2cm) {
          .work-page .sec_2 .inner > .flex:nth-child(n+2) {
            margin: 0 0 0;
            padding: 0 0 0; } }
      .work-page .sec_2 .inner > .flex .ttl {
        position: absolute;
        top: 20px;
        left: 0;
        width: 280px; }
        @media only screen and (max-width: 768px), print and (min-width: 2cm) {
          .work-page .sec_2 .inner > .flex .ttl {
            width: 220px;
            top: 30px; } }
        .work-page .sec_2 .inner > .flex .ttl p {
          background: #000;
          color: #fff;
          font-size: 2rem;
          border-left: 6px solid #C80019;
          padding: 5px 0 5px 20px; }
          @media only screen and (max-width: 768px), print and (min-width: 2cm) {
            .work-page .sec_2 .inner > .flex .ttl p {
              font-size: 1.6rem; } }
        .work-page .sec_2 .inner > .flex .ttl h2 {
          background: #C80019;
          color: #fff;
          font-size: 2.4rem;
          font-weight: 600;
          border-left: 6px solid #000;
          padding: 8px 0 8px 20px;
          margin-top: 2px; }
          @media only screen and (max-width: 768px), print and (min-width: 2cm) {
            .work-page .sec_2 .inner > .flex .ttl h2 {
              padding: 5px 0 5px 20px;
              font-size: 2rem; } }
      .work-page .sec_2 .inner > .flex > p {
        width: 50%;
        padding: 150px 40px 0 40px; }
        @media only screen and (max-width: 768px), print and (min-width: 2cm) {
          .work-page .sec_2 .inner > .flex > p {
            padding: 130px 15px 20px 15px;
            width: 100%; } }
      .work-page .sec_2 .inner > .flex img {
        width: 50%; }
        @media only screen and (max-width: 768px), print and (min-width: 2cm) {
          .work-page .sec_2 .inner > .flex img {
            width: 100%; } }
    .work-page .sec_2 .inner .cntnr {
      padding: 60px 40px; }
      @media only screen and (max-width: 768px), print and (min-width: 2cm) {
        .work-page .sec_2 .inner .cntnr {
          padding: 30px 15px; } }
      .work-page .sec_2 .inner .cntnr .flex {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between; }
        .work-page .sec_2 .inner .cntnr .flex:nth-child(n+2) {
          margin-top: 50px; }
          @media only screen and (max-width: 768px), print and (min-width: 2cm) {
            .work-page .sec_2 .inner .cntnr .flex:nth-child(n+2) {
              margin-top: 30px; } }
        .work-page .sec_2 .inner .cntnr .flex:nth-child(odd) {
          flex-direction: row-reverse; }
          @media only screen and (max-width: 768px), print and (min-width: 2cm) {
            .work-page .sec_2 .inner .cntnr .flex:nth-child(odd) {
              flex-direction: row; } }
          .work-page .sec_2 .inner .cntnr .flex:nth-child(odd) .pht {
            padding: 0 40px 0 0; }
            @media only screen and (max-width: 768px), print and (min-width: 2cm) {
              .work-page .sec_2 .inner .cntnr .flex:nth-child(odd) .pht {
                padding: 0 0px 0 0; } }
        .work-page .sec_2 .inner .cntnr .flex .txt {
          width: 50%; }
          @media only screen and (max-width: 768px), print and (min-width: 2cm) {
            .work-page .sec_2 .inner .cntnr .flex .txt {
              width: 100%; } }
          .work-page .sec_2 .inner .cntnr .flex .txt h3 {
            color: #C80019;
            font-size: 2rem;
            font-weight: 600; }
            @media only screen and (max-width: 768px), print and (min-width: 2cm) {
              .work-page .sec_2 .inner .cntnr .flex .txt h3 {
                font-size: 1.8rem; } }
          .work-page .sec_2 .inner .cntnr .flex .txt p {
            font-size: 1.6rem;
            margin-top: 10px; }
            @media only screen and (max-width: 768px), print and (min-width: 2cm) {
              .work-page .sec_2 .inner .cntnr .flex .txt p {
                font-size: 1.4rem;
                line-height: 1.6;
                margin-top: 3px; } }
        .work-page .sec_2 .inner .cntnr .flex .pht {
          width: 50%;
          padding: 0 0 0 40px; }
          @media only screen and (max-width: 768px), print and (min-width: 2cm) {
            .work-page .sec_2 .inner .cntnr .flex .pht {
              width: 100%;
              margin-top: 15px;
              padding: 0 0 0 0px; } }
.work-page .sec_3 {
  padding: 5em 0 0; }
  @media only screen and (max-width: 768px), print and (min-width: 2cm) {
    .work-page .sec_3 {
      padding: 4em 0 0; } }
  .work-page .sec_3 .inner {
    background: #F6F6F6;
    position: relative; }
    @media only screen and (max-width: 1199px), print and (max-width: 2cm) {
      .work-page .sec_3 .inner {
        padding: 0 0 30px; } }
    .work-page .sec_3 .inner .ttl {
      position: absolute;
      top: 20px;
      left: 0;
      width: 280px; }
      @media only screen and (max-width: 768px), print and (min-width: 2cm) {
        .work-page .sec_3 .inner .ttl {
          width: 220px; } }
      .work-page .sec_3 .inner .ttl h2 {
        background: #000;
        color: #fff;
        font-size: 2.4rem;
        font-weight: 600;
        border-left: 6px solid #C80019;
        padding: 8px 0 8px 20px;
        width: 360px; }
        @media only screen and (max-width: 768px), print and (min-width: 2cm) {
          .work-page .sec_3 .inner .ttl h2 {
            width: 320px;
            padding: 5px 0 5px 20px;
            font-size: 2rem; } }
    .work-page .sec_3 .inner > .flex {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      .work-page .sec_3 .inner > .flex p {
        width: 50%;
        padding: 130px 40px 0 40px; }
        @media only screen and (max-width: 768px), print and (min-width: 2cm) {
          .work-page .sec_3 .inner > .flex p {
            padding: 90px 15px 20px 15px;
            width: 100%; } }
      .work-page .sec_3 .inner > .flex img {
        width: 50%; }
        @media only screen and (max-width: 768px), print and (min-width: 2cm) {
          .work-page .sec_3 .inner > .flex img {
            width: 90%;
            margin: auto; } }
.work-page .sec_4 {
  padding: 5em 0 8em; }
  @media only screen and (max-width: 768px), print and (min-width: 2cm) {
    .work-page .sec_4 {
      padding: 4em 0 5em; } }
  .work-page .sec_4 .inner {
    background: #F6F6F6;
    position: relative; }
    @media only screen and (max-width: 1199px), print and (max-width: 2cm) {
      .work-page .sec_4 .inner {
        padding: 0 0 30px; } }
    .work-page .sec_4 .inner .ttl {
      position: absolute;
      top: 20px;
      left: 0;
      width: 280px; }
      @media only screen and (max-width: 768px), print and (min-width: 2cm) {
        .work-page .sec_4 .inner .ttl {
          width: 220px; } }
      .work-page .sec_4 .inner .ttl h2 {
        background: #000;
        color: #fff;
        font-size: 2.4rem;
        font-weight: 600;
        border-left: 6px solid #C80019;
        padding: 8px 0 8px 20px;
        width: 360px; }
        @media only screen and (max-width: 768px), print and (min-width: 2cm) {
          .work-page .sec_4 .inner .ttl h2 {
            width: 320px;
            padding: 5px 0 5px 20px;
            font-size: 2rem; } }
    .work-page .sec_4 .inner > .flex {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      .work-page .sec_4 .inner > .flex p {
        width: 50%;
        padding: 130px 40px 0 40px; }
        @media only screen and (max-width: 768px), print and (min-width: 2cm) {
          .work-page .sec_4 .inner > .flex p {
            padding: 90px 15px 20px 15px;
            width: 100%; } }
      .work-page .sec_4 .inner > .flex img {
        width: 50%; }
        @media only screen and (max-width: 768px), print and (min-width: 2cm) {
          .work-page .sec_4 .inner > .flex img {
            width: 90%;
            margin: auto; } }

.people-page .sec_1 {
  padding: 5em 0 6em; }
  @media only screen and (max-width: 768px), print and (min-width: 2cm) {
    .people-page .sec_1 {
      padding: 3em 0 4em; } }
  .people-page .sec_1 .flex_box__item {
    width: calc((100% - 60px)/3);
    position: relative;
    cursor: pointer; }
    @media only screen and (max-width: 768px), print and (min-width: 2cm) {
      .people-page .sec_1 .flex_box__item {
        width: calc((100% - 20px)/2); } }
    .people-page .sec_1 .flex_box__item:nth-child(n+4) {
      margin-top: 30px; }
    .people-page .sec_1 .flex_box__item:not(:nth-child(3n)) {
      margin-right: 30px; }
    @media only screen and (max-width: 768px), print and (min-width: 2cm) {
      .people-page .sec_1 .flex_box__item:nth-child(n+3) {
        margin-top: 15px; }
      .people-page .sec_1 .flex_box__item:not(:nth-child(3n)) {
        margin-right: 0px; }
      .people-page .sec_1 .flex_box__item:not(:nth-child(2n)) {
        margin-right: 15px; } }
    .people-page .sec_1 .flex_box__item::before {
      content: "";
      position: absolute;
      width: 85px;
      height: 85px;
      background: #C80019;
      clip-path: polygon(0 0, 100% 0%, 0 100%);
      z-index: 10; }
      @media only screen and (max-width: 768px), print and (min-width: 2cm) {
        .people-page .sec_1 .flex_box__item::before {
          width: 65px;
          height: 65px; } }
    .people-page .sec_1 .flex_box__item > p {
      font-size: 1.6rem;
      position: absolute;
      z-index: 10;
      color: #fff;
      padding: 10px; }
@media only screen and (max-width: 999px) and (max-width: 768px), print and (max-width: 1cm) and (min-width: 2cm) {
  .people-page .sec_1 .flex_box__item > p {
    padding: 5px;
    font-size: 1.4rem;
    line-height: 1.6; } }

    .people-page .sec_1 .flex_box__item .pht {
      overflow: hidden; }
      .people-page .sec_1 .flex_box__item .pht img {
        transition: all .4s; }
    .people-page .sec_1 .flex_box__item .txt {
      background: #F6F6F6; }
      .people-page .sec_1 .flex_box__item .txt p {
        position: relative;
        overflow: hidden; }
        .people-page .sec_1 .flex_box__item .txt p:nth-child(1) {
          font-size: 2rem;
          color: #707070;
          padding: 5px 0 0 40px; }
@media only screen and (max-width: 999px) and (max-width: 768px), print and (max-width: 1cm) and (min-width: 2cm) {
  .people-page .sec_1 .flex_box__item .txt p:nth-child(1) {
    font-size: 1.6rem;
    line-height: 1.6; } }

          .people-page .sec_1 .flex_box__item .txt p:nth-child(1)::after {
            position: absolute;
            left: 0;
            top: 0;
            content: "";
            width: 30px;
            height: 80px;
            clip-path: polygon(0 0, 86% 0, 0 100%);
            background-color: #C80019; }
          .people-page .sec_1 .flex_box__item .txt p:nth-child(1)::before {
            position: absolute;
            left: 0;
            top: 0;
            content: "";
            width: 36px;
            height: 90px;
            clip-path: polygon(0 0, 86% 0, 0 100%);
            background-color: #D63F51; }
        .people-page .sec_1 .flex_box__item .txt p:nth-child(2) {
          padding: 18px 20px 30px 20px;
          font-size: 1.6rem; }
@media only screen and (max-width: 999px) and (max-width: 768px), print and (max-width: 1cm) and (min-width: 2cm) {
  .people-page .sec_1 .flex_box__item .txt p:nth-child(2) {
    padding: 15px 10px 20px 10px;
    font-size: 1.4rem;
    line-height: 1.4; } }

    .people-page .sec_1 .flex_box__item:hover .pht img {
      transform: scale(1.04); }

.interview-page .cont02__header_ttl {
  font-size: 1.8rem; }
.interview-page .sec_1 {
  padding: 7em 0 8em; }
  @media only screen and (max-width: 768px), print and (min-width: 2cm) {
    .interview-page .sec_1 {
      padding: 5em 0 4em; } }
  .interview-page .sec_1 .inner > h2 {
    font-size: 2.8rem;
    color: #C80019;
    font-weight: 500;
    line-height: 1.4;
    position: relative;
    margin: 0 auto 30px;
    color: #C80019; }
    .interview-page .sec_1 .inner > h2:nth-child(n+2) {
      margin-top: 50px; }
      @media only screen and (max-width: 768px), print and (min-width: 2cm) {
        .interview-page .sec_1 .inner > h2:nth-child(n+2) {
          margin-top: 40px; } }
@media only screen and (max-width: 999px) and (max-width: 768px), print and (max-width: 1cm) and (min-width: 2cm) {
  .interview-page .sec_1 .inner > h2 {
    margin: 0 auto 10px;
    font-size: 2rem; } }

    .interview-page .sec_1 .inner > h2::after {
      content: "";
      position: absolute;
      top: 50%;
      right: 50%;
      width: 100%;
      height: 1px;
      background-color: #C80019;
      transform: translate(50%, -50%); }
      @media only screen and (max-width: 768px), print and (min-width: 2cm) {
        .interview-page .sec_1 .inner > h2::after {
          content: none; } }
    .interview-page .sec_1 .inner > h2 span {
      background-color: #fff;
      position: relative;
      padding: 0 20px 0 0;
      z-index: 10; }
      @media only screen and (max-width: 768px), print and (min-width: 2cm) {
        .interview-page .sec_1 .inner > h2 span {
          padding: 0 10px 0 0; } }
      .interview-page .sec_1 .inner > h2 span.txt-22 {
        font-weight: 400; }
  .interview-page .sec_1 .flex_box {
    justify-content: space-between; }
    .interview-page .sec_1 .flex_box p {
      width: 50%; }
      @media only screen and (max-width: 768px), print and (min-width: 2cm) {
        .interview-page .sec_1 .flex_box p {
          width: 100%;
          line-height: 1.8; } }
    .interview-page .sec_1 .flex_box .pht {
      width: 50%; }
      @media only screen and (max-width: 768px), print and (min-width: 2cm) {
        .interview-page .sec_1 .flex_box .pht {
          width: 100%;
          margin-top: 20px; } }
    .interview-page .sec_1 .flex_box:nth-child(2) img, .interview-page .sec_1 .flex_box:nth-child(6) img {
      padding-left: 40px; }
      .interview-page .sec_1 .flex_box:nth-child(2) img:nth-child(2), .interview-page .sec_1 .flex_box:nth-child(6) img:nth-child(2) {
        margin-top: 20px; }
      @media only screen and (max-width: 999px), print and (max-width: 1cm) {
        .interview-page .sec_1 .flex_box:nth-child(2) img, .interview-page .sec_1 .flex_box:nth-child(6) img {
          padding-left: 30px; } }
  @media only screen and (max-width: 999px) and (max-width: 768px), print and (max-width: 1cm) and (min-width: 2cm) {
    .interview-page .sec_1 .flex_box:nth-child(2) img, .interview-page .sec_1 .flex_box:nth-child(6) img {
      padding-left: 0; } }

    .interview-page .sec_1 .flex_box:nth-child(4) {
      flex-direction: row-reverse; }
      .interview-page .sec_1 .flex_box:nth-child(4) img {
        padding-right: 40px; }
        @media only screen and (max-width: 999px), print and (max-width: 1cm) {
          .interview-page .sec_1 .flex_box:nth-child(4) img {
            padding-right: 30px; } }
  @media only screen and (max-width: 999px) and (max-width: 768px), print and (max-width: 1cm) and (min-width: 2cm) {
    .interview-page .sec_1 .flex_box:nth-child(4) img {
      padding-right: 0; } }

  .interview-page .sec_1 .cntnr {
    background: #F6F6F6;
    border-radius: 200px;
    padding: 45px 70px 80px;
    text-align: center;
    margin-top: 100px; }
    @media only screen and (max-width: 999px), print and (max-width: 1cm) {
      .interview-page .sec_1 .cntnr {
        border-radius: 100px;
        padding: 30px 30px 50px; } }
  @media only screen and (max-width: 999px) and (max-width: 768px), print and (max-width: 1cm) and (min-width: 2cm) {
    .interview-page .sec_1 .cntnr {
      margin-top: 40px;
      border-radius: 15px;
      padding: 20px 15px 20px; } }

    .interview-page .sec_1 .cntnr h2 {
      color: #C80019;
      font-weight: 500;
      font-size: 2.8rem;
      border-bottom: 4px solid #C80019;
      line-height: 1.4;
      display: inline-block;
      padding-bottom: 5px; }
      @media only screen and (max-width: 768px), print and (min-width: 2cm) {
        .interview-page .sec_1 .cntnr h2 {
          font-size: 2rem;
          border-bottom: 2px solid #C80019; } }
    .interview-page .sec_1 .cntnr p {
      text-align: left;
      margin-top: 18px;
      font-size: 1.6rem; }
      @media only screen and (max-width: 768px), print and (min-width: 2cm) {
        .interview-page .sec_1 .cntnr p {
          font-size: 1.4rem;
          margin-top: 10px;
          line-height: 1.8; } }
.interview-page .sec_2 {
  padding: 5em 0;
  background: #F6F6F6; }
  @media only screen and (max-width: 768px), print and (min-width: 2cm) {
    .interview-page .sec_2 {
      padding: 4em 0; } }
  .interview-page .sec_2 .inner > .flex_box {
    justify-content: space-between;
    align-items: flex-start; }
    .interview-page .sec_2 .inner > .flex_box .flex_box__item {
      width: 50%;
      border: 1px solid #C80019;
      background: #fff; }
      @media only screen and (max-width: 768px), print and (min-width: 2cm) {
        .interview-page .sec_2 .inner > .flex_box .flex_box__item {
          width: 100%; } }
      .interview-page .sec_2 .inner > .flex_box .flex_box__item h2 {
        background: #C80019;
        color: #fff;
        text-align: center;
        padding: 10px 0;
        font-size: 2.2rem;
        font-weight: 500; }
        @media only screen and (max-width: 768px), print and (min-width: 2cm) {
          .interview-page .sec_2 .inner > .flex_box .flex_box__item h2 {
            font-size: 2rem;
            line-height: 1.4; } }
      .interview-page .sec_2 .inner > .flex_box .flex_box__item .txt-area {
        padding: 20px; }
        @media only screen and (max-width: 768px), print and (min-width: 2cm) {
          .interview-page .sec_2 .inner > .flex_box .flex_box__item .txt-area {
            padding: 20px 15px; } }
      .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(1) .txt-area .txt:nth-child(n+2) {
        border-top: dashed 1px #707070;
        margin-top: 20px;
        padding-top: 20px; }
        @media only screen and (max-width: 768px), print and (min-width: 2cm) {
          .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(1) .txt-area .txt:nth-child(n+2) {
            margin-top: 10px;
            padding-top: 10px; } }
      .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(1) .txt-area .txt p:nth-child(1) {
        font-size: 1.4rem; }
      .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(1) .txt-area .txt p:nth-child(2) {
        font-size: 1.6rem; }
        @media only screen and (max-width: 768px), print and (min-width: 2cm) {
          .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(1) .txt-area .txt p:nth-child(2) {
            font-size: 1.4rem;
            line-height: 1.8; } }
      .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) {
        margin-left: 40px;
        width: calc(50% - 40px); }
        @media only screen and (max-width: 999px), print and (max-width: 1cm) {
          .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) {
            margin-left: 20px;
            width: calc(50% - 20px); } }
  @media only screen and (max-width: 999px) and (max-width: 768px), print and (max-width: 1cm) and (min-width: 2cm) {
    .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) {
      margin-left: 0;
      width: 100%;
      margin-top: 20px; } }

        .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area > p {
          text-align: center;
          font-size: 1.8rem;
          line-height: 1.4;
          font-weight: 500;
          margin-bottom: 10px; }
          @media only screen and (max-width: 768px), print and (min-width: 2cm) {
            .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area > p {
              font-size: 1.6rem; } }
          .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area > p span {
            font-size: 1.4rem; }
        .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area ul {
          display: flex;
          justify-content: space-between;
          border-bottom: 1px solid #C80019; }
          .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area ul li {
            width: 48%;
            font-weight: 500;
            padding: 10px 0;
            align-content: center; }
            .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area ul li.tab_w3 {
              width: 32%; }
            .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area ul li p {
              text-align: center; }
              .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area ul li p:nth-child(1) {
                font-size: 1.8rem; }
                @media only screen and (max-width: 768px), print and (min-width: 2cm) {
                  .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area ul li p:nth-child(1) {
                    font-size: 1.6rem;
                    line-height: 1.4; } }
              .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area ul li p:nth-child(2) {
                font-size: 1.4rem; }
                @media only screen and (max-width: 768px), print and (min-width: 2cm) {
                  .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area ul li p:nth-child(2) {
                    font-size: 1.2rem;
                    line-height: 1.6; } }
              .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area ul li p.s-txt {
                font-size: 1.2rem; }
                @media only screen and (max-width: 768px), print and (min-width: 2cm) {
                  .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area ul li p.s-txt {
                    font-size: 1.2rem;
                    line-height: 1.4; } }
              @media only screen and (max-width: 999px), print and (max-width: 1cm) {
                .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area ul li p .sp {
                  display: block; } }
        .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area .tab_cont {
          margin-top: 20px; }
          @media only screen and (max-width: 768px), print and (min-width: 2cm) {
            .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area .tab_cont {
              margin-top: 15px; } }
        .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area .flex_box {
          justify-content: space-between;
          position: relative;
          padding-bottom: 20px; }
          @media only screen and (max-width: 768px), print and (min-width: 2cm) {
            .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area .flex_box {
              padding-bottom: 10px; } }
          .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area .flex_box:not(:last-child)::before {
            content: "";
            position: absolute;
            width: 1px;
            height: 100%;
            background: #C80019;
            left: 10px;
            top: 10px; }
            @media only screen and (max-width: 768px), print and (min-width: 2cm) {
              .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area .flex_box:not(:last-child)::before {
                left: 7px; } }
          .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area .flex_box > p {
            font-size: 2rem;
            font-weight: 600;
            color: #333333;
            font-family: "Roboto", "Noto Sans JP", sans-serif;
            padding-left: 30px;
            position: relative; }
            @media only screen and (max-width: 768px), print and (min-width: 2cm) {
              .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area .flex_box > p {
                padding-left: 25px;
                font-size: 1.8rem; } }
            .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area .flex_box > p::before {
              content: "";
              position: absolute;
              width: 20px;
              height: 20px;
              background: #C80019;
              border-radius: 50vh;
              top: .7rem;
              left: 0; }
              @media only screen and (max-width: 768px), print and (min-width: 2cm) {
                .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area .flex_box > p::before {
                  top: .9rem;
                  width: 15px;
                  height: 15px; } }
          .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area .flex_box .txt {
            width: 75%;
            align-content: center; }
            @media only screen and (max-width: 999px), print and (max-width: 1cm) {
              .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area .flex_box .txt {
                width: 70%; } }
            .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area .flex_box .txt p {
              font-size: 1.6rem;
              font-weight: 500;
              line-height: 2.0; }
              @media only screen and (max-width: 768px), print and (min-width: 2cm) {
                .interview-page .sec_2 .inner > .flex_box .flex_box__item:nth-child(2) .txt-area .flex_box .txt p {
                  font-size: 1.4rem;
                  line-height: 1.8; } }
.interview-page .sec_3 {
  padding: 5em 0 6em; }
  @media only screen and (max-width: 768px), print and (min-width: 2cm) {
    .interview-page .sec_3 {
      padding: 4em 0 4em; } }
  .interview-page .sec_3 h2 {
    font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 2.8rem;
    font-weight: 500;
    color: #C80019;
    text-align: center;
    border-bottom: 1px solid #C80019;
    border-top: 1px solid #C80019;
    margin-bottom: 40px; }
  .interview-page .sec_3 .flex_box__item {
    width: calc((100% - 60px)/3);
    position: relative;
    cursor: pointer; }
    @media only screen and (max-width: 768px), print and (min-width: 2cm) {
      .interview-page .sec_3 .flex_box__item {
        width: calc((100% - 20px)/2); } }
    .interview-page .sec_3 .flex_box__item:nth-child(n+4) {
      margin-top: 30px; }
    .interview-page .sec_3 .flex_box__item:not(:nth-child(3n)) {
      margin-right: 30px; }
    @media only screen and (max-width: 768px), print and (min-width: 2cm) {
      .interview-page .sec_3 .flex_box__item:nth-child(n+3) {
        margin-top: 15px; }
      .interview-page .sec_3 .flex_box__item:not(:nth-child(3n)) {
        margin-right: 0px; }
      .interview-page .sec_3 .flex_box__item:not(:nth-child(2n)) {
        margin-right: 15px; } }
    .interview-page .sec_3 .flex_box__item::before {
      content: "";
      position: absolute;
      width: 85px;
      height: 85px;
      background: #C80019;
      clip-path: polygon(0 0, 100% 0%, 0 100%);
      z-index: 10; }
      @media only screen and (max-width: 768px), print and (min-width: 2cm) {
        .interview-page .sec_3 .flex_box__item::before {
          width: 65px;
          height: 65px; } }
    .interview-page .sec_3 .flex_box__item > p {
      font-size: 1.6rem;
      position: absolute;
      z-index: 10;
      color: #fff;
      padding: 10px; }
@media only screen and (max-width: 999px) and (max-width: 768px), print and (max-width: 1cm) and (min-width: 2cm) {
  .interview-page .sec_3 .flex_box__item > p {
    padding: 5px;
    font-size: 1.4rem;
    line-height: 1.6; } }

    .interview-page .sec_3 .flex_box__item .pht {
      overflow: hidden; }
      .interview-page .sec_3 .flex_box__item .pht img {
        transition: all .4s; }
    .interview-page .sec_3 .flex_box__item .txt {
      background: #F6F6F6; }
      .interview-page .sec_3 .flex_box__item .txt p {
        position: relative;
        overflow: hidden; }
        .interview-page .sec_3 .flex_box__item .txt p:nth-child(1) {
          font-size: 2rem;
          color: #707070;
          padding: 5px 0 0 40px; }
@media only screen and (max-width: 999px) and (max-width: 768px), print and (max-width: 1cm) and (min-width: 2cm) {
  .interview-page .sec_3 .flex_box__item .txt p:nth-child(1) {
    font-size: 1.6rem;
    line-height: 1.6; } }

          .interview-page .sec_3 .flex_box__item .txt p:nth-child(1)::after {
            position: absolute;
            left: 0;
            top: 0;
            content: "";
            width: 30px;
            height: 80px;
            clip-path: polygon(0 0, 86% 0, 0 100%);
            background-color: #C80019; }
          .interview-page .sec_3 .flex_box__item .txt p:nth-child(1)::before {
            position: absolute;
            left: 0;
            top: 0;
            content: "";
            width: 36px;
            height: 90px;
            clip-path: polygon(0 0, 86% 0, 0 100%);
            background-color: #D63F51; }
        .interview-page .sec_3 .flex_box__item .txt p:nth-child(2) {
          padding: 18px 20px 30px 20px;
          font-size: 1.6rem; }
@media only screen and (max-width: 999px) and (max-width: 768px), print and (max-width: 1cm) and (min-width: 2cm) {
  .interview-page .sec_3 .flex_box__item .txt p:nth-child(2) {
    padding: 15px 10px 20px 10px;
    font-size: 1.4rem;
    line-height: 1.4; } }

    .interview-page .sec_3 .flex_box__item:hover .pht img {
      transform: scale(1.04); }
