@charset "UTF-8";
.l-recruit br.pc {
  display: none; }
  @media screen and (min-width: 651px) {
    .l-recruit br.pc {
      display: inline; } }
@media screen and (min-width: 651px) {
  .l-recruit br.sp {
    display: none; } }
.l-recruit .title .en {
  font-family: "Cardo", serif;
  font-weight: bold;
  font-size: 6.923vw;
  color: #95ac99;
  line-height: 1; }
  @media screen and (min-width: 651px) {
    .l-recruit .title .en {
      font-size: 2vw; } }
  @media screen and (min-width: 1201px) {
    .l-recruit .title .en {
      font-size: 24px; } }
.l-recruit .title h2 {
  font-size: 6.923vw;
  font-weight: normal;
  line-height: 1.2;
  color: #1c2943; }
  @media screen and (min-width: 651px) {
    .l-recruit .title h2 {
      font-size: 2.5vw; } }
  @media screen and (min-width: 1201px) {
    .l-recruit .title h2 {
      font-size: 30px; } }
@media screen and (min-width: 651px) {
  .l-recruit__container {
    width: 100%;
    max-width: 100vw;
    margin: 0 auto;
    padding: 0 9.167vw; } }
@media screen and (min-width: 1201px) {
  .l-recruit__container {
    max-width: 1200px;
    padding: 0 110px; } }
.l-recruit__container .box-2 .txt {
  color: #1c2943; }
.l-recruit__container .box-1 .row h3 span {
  color: #1c2943; }
.l-recruit-hero {
  position: relative;
  z-index: 0;
  margin-top: 3.077vw; }
  @media screen and (min-width: 651px) {
    .l-recruit-hero {
      margin-top: 1.667vw; } }
  .l-recruit-hero .bg {
    position: relative;
    z-index: -1; }
    .l-recruit-hero .bg img {
      width: 100%; }
  .l-recruit-hero .txt {
    position: absolute;
    top: 4.615vw;
    left: 7.692vw;
    color: #1c2943; }
    @media screen and (min-width: 651px) {
      .l-recruit-hero .txt {
        top: 2.5vw;
        left: 14.167vw; } }
    .l-recruit-hero .txt .en {
      font-family: "Cardo", serif;
      font-size: 4.615vw;
      font-weight: bold;
      color: #95ac99;
      line-height: 1;
      letter-spacing: 0.1em; }
      @media screen and (min-width: 651px) {
        .l-recruit-hero .txt .en {
          font-size: 2.5vw; } }
    .l-recruit-hero .txt h1 {
      position: relative;
      font-size: 9.231vw;
      font-weight: normal;
      line-height: 1;
      letter-spacing: 0.15em; }
      @media screen and (min-width: 651px) {
        .l-recruit-hero .txt h1 {
          margin-top: 1.333vw;
          font-size: 5vw; } }
      .l-recruit-hero .txt h1::before {
        content: "";
        position: absolute;
        bottom: -2vw;
        left: 0;
        width: 17.846vw;
        height: 1px;
        background-color: #95ac99; }
        @media screen and (min-width: 651px) {
          .l-recruit-hero .txt h1::before {
            bottom: -1.083vw;
            width: 9.667vw; } }
    .l-recruit-hero .txt .txt-1 {
      margin-top: 3.077vw;
      font-size: 3.692vw; }
      @media screen and (min-width: 651px) {
        .l-recruit-hero .txt .txt-1 {
          margin-top: 2.5vw;
          font-size: 2vw; } }
    .l-recruit-hero .txt .txt-2 {
      margin-top: 20vw;
      font-size: 3.077vw;
      line-height: 1.5; }
      @media screen and (min-width: 651px) {
        .l-recruit-hero .txt .txt-2 {
          margin-top: 1.667vw;
          font-size: 1.333vw; } }
.l-recruit-opening {
  background-color: #d9e9e7;
  padding: 4.615vw 4.615vw; }
  @media screen and (min-width: 651px) {
    .l-recruit-opening {
      padding: 2.5vw 0; } }
  @media screen and (min-width: 1201px) {
    .l-recruit-opening {
      padding: 30px 0; } }
  @media screen and (min-width: 651px) {
    .l-recruit-opening .box {
      display: grid;
      grid-template-columns: 28.333vw 1fr;
      width: 100%;
      max-width: 80vw;
      margin: 0 auto; } }
  @media screen and (min-width: 1201px) {
    .l-recruit-opening .box {
      grid-template-columns: 340px 1fr;
      max-width: 960px; } }
  .l-recruit-opening .title {
    padding-left: 3.077vw; }
    @media screen and (min-width: 651px) {
      .l-recruit-opening .title {
        padding-left: 0.833vw; } }
    @media screen and (min-width: 1201px) {
      .l-recruit-opening .title {
        padding-left: 10px; } }
    .l-recruit-opening .title .en {
      font-size: 4.154vw; }
      @media screen and (min-width: 651px) {
        .l-recruit-opening .title .en {
          font-size: 2vw; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-opening .title .en {
          font-size: 24px; } }
    .l-recruit-opening .title h2 {
      font-size: 4.154vw;
      color: #1c2943; }
      @media screen and (min-width: 651px) {
        .l-recruit-opening .title h2 {
          margin-top: 0.2em;
          font-size: 2vw; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-opening .title h2 {
          font-size: 24px; } }
  .l-recruit-opening .list {
    margin-top: 4.615vw;
    color: #1c2943; }
    @media screen and (min-width: 651px) {
      .l-recruit-opening .list {
        margin-top: 0; } }
    .l-recruit-opening .list ul {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 1.846vw 2.308vw; }
      @media screen and (min-width: 651px) {
        .l-recruit-opening .list ul {
          grid-template-columns: repeat(3, 1fr);
          gap: 1vw 1.25vw; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-opening .list ul {
          gap: 12px 15px; } }
    .l-recruit-opening .list li a {
      position: relative;
      display: block;
      background-color: #fff;
      padding: 2.308vw 4.615vw;
      line-height: 1;
      box-shadow: 0.231vw 0.231vw 0.462vw rgba(35, 24, 21, 0.3);
      letter-spacing: 0.04em; }
      @media screen and (min-width: 651px) {
        .l-recruit-opening .list li a {
          padding: 1.25vw 2.5vw;
          box-shadow: 0.125vw 0.125vw 0.25vw rgba(35, 24, 21, 0.3); } }
      @media screen and (min-width: 1201px) {
        .l-recruit-opening .list li a {
          padding: 15px 30px;
          box-shadow: 1.5px 1.5px 3px rgba(35, 24, 21, 0.3); } }
      .l-recruit-opening .list li a::after {
        content: "≫";
        position: absolute;
        top: 50%;
        right: 4.615vw;
        transform: translateY(-50%); }
        @media screen and (min-width: 651px) {
          .l-recruit-opening .list li a::after {
            right: 2.5vw; } }
        @media screen and (min-width: 1201px) {
          .l-recruit-opening .list li a::after {
            right: 30px; } }
      .l-recruit-opening .list li a:hover {
        opacity: 0.7; }
.l-recruit-message {
  padding: 10.154vw 7.692vw 15.385vw; }
  @media screen and (min-width: 651px) {
    .l-recruit-message {
      padding: 5vw 0; } }
  @media screen and (min-width: 1201px) {
    .l-recruit-message {
      padding: 60px 0; } }
  .l-recruit-message .box {
    display: grid;
    grid-auto-flow: row;
    gap: 9.231vw;
    margin-top: 9.231vw; }
    @media screen and (min-width: 651px) {
      .l-recruit-message .box {
        gap: 5vw;
        margin-top: 3.333vw;
        padding: 0 0.833vw; } }
    @media screen and (min-width: 1201px) {
      .l-recruit-message .box {
        gap: 60px;
        margin-top: 40px;
        padding: 0 10px; } }
    .l-recruit-message .box .row h3 {
      position: relative;
      display: grid;
      grid-template-columns: 9.231vw 1fr;
      gap: 4.615vw;
      padding-bottom: 0.7em;
      font-size: 6.308vw;
      font-weight: normal;
      line-height: 1.2;
      color: #1c2943; }
      @media screen and (min-width: 651px) {
        .l-recruit-message .box .row h3 {
          grid-template-columns: 5.833vw 1fr;
          gap: 0;
          padding-bottom: 0.4em;
          font-size: 2vw;
          font-weight: 500; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-message .box .row h3 {
          grid-template-columns: 70px 1fr;
          font-size: 24px; } }
      @media screen and (min-width: 651px) {
        .l-recruit-message .box .row h3 span {
          display: inline-block;
          text-align: center; } }
      .l-recruit-message .box .row h3::after {
        content: "";
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 1px;
        background: linear-gradient(to right, #231815 1.846vw, transparent 1.231vw) repeat-x;
        background-size: 3.077vw 1px; }
        @media screen and (min-width: 651px) {
          .l-recruit-message .box .row h3::after {
            background: linear-gradient(to right, #231815 0.5vw, transparent 0.333vw) repeat-x;
            background-size: 0.833vw 1px; } }
        @media screen and (min-width: 1201px) {
          .l-recruit-message .box .row h3::after {
            background: linear-gradient(to right, #231815 6px, transparent 4px) repeat-x;
            background-size: 10px 1px; } }
    .l-recruit-message .box .row .txt {
      padding-top: 4.615vw;
      line-height: 1.8; }
      @media screen and (min-width: 651px) {
        .l-recruit-message .box .row .txt {
          padding: 0.5em 0 0 1em;
          line-height: 1.6; } }
      .l-recruit-message .box .row .txt span {
        font-weight: bold;
        color: #192842; }
  .l-recruit-message .name {
    margin-top: 7.692vw;
    text-align: right; }
    @media screen and (min-width: 651px) {
      .l-recruit-message .name {
        margin-top: 1em; } }
.l-recruit-about {
  position: relative;
  padding: 10.154vw 7.692vw 18.462vw; }
  @media screen and (min-width: 651px) {
    .l-recruit-about {
      padding: 5vw 0 8.333vw; } }
  @media screen and (min-width: 1201px) {
    .l-recruit-about {
      padding: 60px 0 100px; } }
  .l-recruit-about::before {
    content: "";
    position: absolute;
    top: 0;
    left: 6.154vw;
    width: calc(100% - 12.308vw);
    height: 2px;
    background-color: #231815; }
    @media screen and (min-width: 651px) {
      .l-recruit-about::before {
        left: 8.333vw;
        width: calc(100% - 16.667vw);
        height: 1px; } }
    @media screen and (min-width: 1201px) {
      .l-recruit-about::before {
        left: 50%;
        width: 980px;
        transform: translateX(-50%); } }
  .l-recruit-about .box-1 {
    margin-top: 12.308vw; }
    @media screen and (min-width: 651px) {
      .l-recruit-about .box-1 {
        margin-top: 4.167vw; } }
    @media screen and (min-width: 1201px) {
      .l-recruit-about .box-1 {
        margin-top: 50px; } }
    .l-recruit-about .box-1 ul {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      gap: 2.308vw 9.231vw; }
      @media screen and (min-width: 651px) {
        .l-recruit-about .box-1 ul {
          gap: 1.25vw 5vw;
          width: 100%;
          max-width: 73.333vw;
          margin: 0 auto; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-about .box-1 ul {
          gap: 15px 60px;
          max-width: 880px; } }
    .l-recruit-about .box-1 li {
      position: relative;
      font-size: 3.692vw;
      line-height: 1; }
      @media screen and (min-width: 651px) {
        .l-recruit-about .box-1 li {
          font-size: 1.5vw; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-about .box-1 li {
          font-size: 18px; } }
      .l-recruit-about .box-1 li::before {
        content: "｜";
        position: absolute;
        top: 0;
        left: -6.462vw; }
        @media screen and (min-width: 651px) {
          .l-recruit-about .box-1 li::before {
            left: -3.167vw; } }
        @media screen and (min-width: 1201px) {
          .l-recruit-about .box-1 li::before {
            left: -38px; } }
      .l-recruit-about .box-1 li:nth-child(2n + 1)::before {
        display: none; }
        @media screen and (min-width: 651px) {
          .l-recruit-about .box-1 li:nth-child(2n + 1)::before {
            display: block; } }
      @media screen and (min-width: 651px) {
        .l-recruit-about .box-1 li:nth-child(4n + 1)::before {
          display: none; } }
  .l-recruit-about .box-2 {
    display: grid;
    grid-auto-flow: row;
    gap: 6.154vw;
    margin-top: 7.692vw; }
    @media screen and (min-width: 651px) {
      .l-recruit-about .box-2 {
        grid-template-columns: repeat(2, 1fr);
        gap: 1.667vw;
        width: 100%;
        max-width: 70vw;
        margin: 0 auto;
        margin-top: 4.167vw; } }
    @media screen and (min-width: 1201px) {
      .l-recruit-about .box-2 {
        gap: 20px;
        margin-top: 50px; } }
    .l-recruit-about .box-2 .row {
      display: flex;
      justify-content: center;
      align-items: center;
      background-color: #f4f3f2;
      padding: 1.538vw; }
      @media screen and (min-width: 651px) {
        .l-recruit-about .box-2 .row {
          padding: 0.833vw;
          font-size: 1.667vw; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-about .box-2 .row {
          padding: 10px;
          font-size: 20px; } }
      .l-recruit-about .box-2 .row:nth-child(1) {
        gap: 7.692vw; }
        @media screen and (min-width: 651px) {
          .l-recruit-about .box-2 .row:nth-child(1) {
            gap: 3.333vw; } }
        @media screen and (min-width: 1201px) {
          .l-recruit-about .box-2 .row:nth-child(1) {
            gap: 40px; } }
      .l-recruit-about .box-2 .row:nth-child(2) {
        gap: 5px; }
.l-recruit-person {
  position: relative;
  padding: 10.154vw 7.692vw 12.308vw; }
  @media screen and (min-width: 651px) {
    .l-recruit-person {
      padding: 5vw 0 8.333vw; } }
  @media screen and (min-width: 1201px) {
    .l-recruit-person {
      padding: 60px 0 100px; } }
  .l-recruit-person::before {
    content: "";
    position: absolute;
    top: 0;
    left: 6.154vw;
    width: calc(100% - 12.308vw);
    height: 2px;
    background-color: #231815; }
    @media screen and (min-width: 651px) {
      .l-recruit-person::before {
        left: 8.333vw;
        width: calc(100% - 16.667vw);
        height: 1px; } }
    @media screen and (min-width: 1201px) {
      .l-recruit-person::before {
        left: 50%;
        width: 980px;
        transform: translateX(-50%); } }
  .l-recruit-person .box {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 9.231vw 10.769vw;
    margin-top: 4.615vw; }
    @media screen and (min-width: 651px) {
      .l-recruit-person .box {
        grid-template-columns: repeat(5, 1fr);
        gap: 2.5vw;
        margin-top: 2.5vw;
        padding: 0 2.5vw; } }
    @media screen and (min-width: 1201px) {
      .l-recruit-person .box {
        gap: 30px;
        margin-top: 30px;
        padding: 0 30px; } }
    .l-recruit-person .box .col .txt {
      margin-top: 1.538vw;
      font-size: 3.538vw;
      line-height: 1.3;
      text-align: center; }
      @media screen and (min-width: 651px) {
        .l-recruit-person .box .col .txt {
          margin-top: 0.833vw;
          font-size: 1.333vw; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-person .box .col .txt {
          margin-top: 10px;
          font-size: 16px; } }
.l-recruit-layout-1 {
  position: relative; }
  @media screen and (min-width: 651px) {
    .l-recruit-layout-1 {
      display: grid;
      grid-template-columns: 3fr 2fr;
      width: 100%;
      max-width: 100vw;
      margin: 0 auto;
      padding: 5vw 9.167vw 8.333vw; } }
  @media screen and (min-width: 1201px) {
    .l-recruit-layout-1 {
      max-width: 1200px;
      padding: 60px 110px 100px; } }
  .l-recruit-layout-1::before {
    content: "";
    position: absolute;
    top: 0;
    background-color: #231815; }
    @media screen and (min-width: 651px) {
      .l-recruit-layout-1::before {
        left: 8.333vw;
        width: calc(100% - 16.667vw);
        height: 1px; } }
    @media screen and (min-width: 1201px) {
      .l-recruit-layout-1::before {
        left: 50%;
        width: 980px;
        transform: translateX(-50%); } }
.l-recruit-schedule {
  position: relative;
  padding: 10.154vw 7.692vw 12.308vw; }
  @media screen and (min-width: 651px) {
    .l-recruit-schedule {
      padding: 0; } }
  .l-recruit-schedule::before {
    content: "";
    position: absolute;
    top: 0;
    left: 6.154vw;
    width: calc(100% - 12.308vw);
    height: 2px;
    background-color: #231815; }
    @media screen and (min-width: 651px) {
      .l-recruit-schedule::before {
        display: none; } }
  .l-recruit-schedule .box {
    display: grid;
    grid-auto-flow: row;
    gap: 6.154vw;
    margin-top: 7.692vw; }
    @media screen and (min-width: 651px) {
      .l-recruit-schedule .box {
        gap: 2.5vw;
        margin-top: 4.167vw;
        padding-left: 3.333vw; } }
    @media screen and (min-width: 1201px) {
      .l-recruit-schedule .box {
        gap: 30px;
        margin-top: 50px;
        padding-left: 40px; } }
    .l-recruit-schedule .box .row {
      position: relative;
      z-index: 0;
      display: grid;
      grid-template-columns: 26.154vw 1fr;
      align-items: center;
      line-height: 1; }
      @media screen and (min-width: 651px) {
        .l-recruit-schedule .box .row {
          grid-template-columns: 11.25vw 1fr; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-schedule .box .row {
          grid-template-columns: 135px 1fr; } }
      .l-recruit-schedule .box .row .year {
        position: absolute;
        top: -3.077vw;
        left: 2.308vw;
        font-size: 3.385vw;
        color: #95ac99; }
        @media screen and (min-width: 651px) {
          .l-recruit-schedule .box .row .year {
            top: -1.667vw;
            left: 1.25vw;
            font-size: 1.333vw; } }
        @media screen and (min-width: 1201px) {
          .l-recruit-schedule .box .row .year {
            top: -20px;
            left: 15px;
            font-size: 16px; } }
      .l-recruit-schedule .box .row .date {
        padding-left: 6.154vw;
        font-size: 3.385vw; }
        @media screen and (min-width: 651px) {
          .l-recruit-schedule .box .row .date {
            padding-left: 3.333vw;
            font-size: 1.333vw; } }
        @media screen and (min-width: 1201px) {
          .l-recruit-schedule .box .row .date {
            padding-left: 40px;
            font-size: 16px; } }
      .l-recruit-schedule .box .row .txt {
        position: relative;
        margin-right: -1em;
        padding-left: 9.231vw;
        font-size: 3.846vw; }
        @media screen and (min-width: 651px) {
          .l-recruit-schedule .box .row .txt {
            padding-left: 3.333vw;
            font-size: 1.5vw; } }
        @media screen and (min-width: 1201px) {
          .l-recruit-schedule .box .row .txt {
            padding-left: 40px;
            font-size: 18px; } }
        .l-recruit-schedule .box .row .txt::before {
          content: "";
          position: absolute;
          top: -0.615vw;
          left: 0;
          z-index: 2;
          width: 5.231vw;
          height: 5.231vw;
          background-color: #95ac99;
          border-radius: 50%; }
          @media screen and (min-width: 651px) {
            .l-recruit-schedule .box .row .txt::before {
              top: -0.167vw;
              width: 2vw;
              height: 2vw; } }
          @media screen and (min-width: 1201px) {
            .l-recruit-schedule .box .row .txt::before {
              top: -2px;
              width: 24px;
              height: 24px; } }
        .l-recruit-schedule .box .row .txt::after {
          content: "";
          position: absolute;
          top: 50%;
          left: 2.615vw;
          z-index: 1;
          width: 0.154vw;
          height: 200%;
          background-color: #231815; }
          @media screen and (min-width: 651px) {
            .l-recruit-schedule .box .row .txt::after {
              left: 1vw;
              width: 0.083vw;
              height: 220%; } }
          @media screen and (min-width: 1201px) {
            .l-recruit-schedule .box .row .txt::after {
              left: 12px;
              width: 1px; } }
      .l-recruit-schedule .box .row:last-child .txt::after {
        display: none; }
.l-recruit-recruit {
  position: relative;
  padding: 10.154vw 7.692vw 12.308vw; }
  @media screen and (min-width: 651px) {
    .l-recruit-recruit {
      padding: 0; } }
  .l-recruit-recruit::before {
    content: "";
    position: absolute;
    top: 0;
    left: 6.154vw;
    width: calc(100% - 12.308vw);
    height: 2px;
    background-color: #231815; }
    @media screen and (min-width: 651px) {
      .l-recruit-recruit::before {
        display: none; } }
  .l-recruit-recruit .box {
    display: grid;
    grid-auto-flow: row;
    gap: 4.615vw;
    margin: 0 -3.077vw; }
    @media screen and (min-width: 651px) {
      .l-recruit-recruit .box {
        grid-template-columns: repeat(2, 1fr);
        gap: 2.5vw;
        align-items: center;
        margin: 0 -1.667vw;
        padding: 0 1.667vw; } }
    @media screen and (min-width: 1201px) {
      .l-recruit-recruit .box {
        gap: 30px;
        margin: 0 -20px;
        padding: 0 20px; } }
    .l-recruit-recruit .box .list {
      margin-top: 6.154vw; }
      @media screen and (min-width: 651px) {
        .l-recruit-recruit .box .list {
          margin-top: 3.333vw; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-recruit .box .list {
          margin-top: 40px; } }
      .l-recruit-recruit .box .list ul {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 1.846vw 2.308vw; }
        @media screen and (min-width: 651px) {
          .l-recruit-recruit .box .list ul {
            grid-template-columns: 1fr;
            gap: 1vw 1.25vw; } }
        @media screen and (min-width: 1201px) {
          .l-recruit-recruit .box .list ul {
            gap: 12px 15px; } }
      .l-recruit-recruit .box .list li a {
        position: relative;
        display: block;
        background-color: #fff;
        padding: 2.308vw 4.615vw;
        line-height: 1;
        box-shadow: 0.231vw 0.231vw 0.462vw rgba(35, 24, 21, 0.5);
        letter-spacing: 0.04em;
        color: #1c2943; }
        @media screen and (min-width: 651px) {
          .l-recruit-recruit .box .list li a {
            padding: 0.833vw 1.667vw;
            box-shadow: 0.125vw 0.125vw 0.25vw rgba(35, 24, 21, 0.5); } }
        @media screen and (min-width: 1201px) {
          .l-recruit-recruit .box .list li a {
            padding: 10px 20px;
            box-shadow: 1.5px 1.5px 3px rgba(35, 24, 21, 0.5); } }
        .l-recruit-recruit .box .list li a::after {
          content: "≫";
          position: absolute;
          top: 50%;
          right: 4.615vw;
          transform: translateY(-50%); }
          @media screen and (min-width: 651px) {
            .l-recruit-recruit .box .list li a::after {
              right: 0.833vw; } }
          @media screen and (min-width: 1201px) {
            .l-recruit-recruit .box .list li a::after {
              right: 10px; } }
        .l-recruit-recruit .box .list li a:hover {
          opacity: 0.7; }
    .l-recruit-recruit .box .txt {
      display: flex;
      justify-content: center; }
      .l-recruit-recruit .box .txt .txt-1 {
        display: flex;
        justify-content: center;
        align-items: center;
        background-color: #97ad9a;
        border-radius: 50%;
        width: 45.231vw;
        height: 45.231vw;
        color: #fff;
        text-align: center; }
        @media screen and (min-width: 651px) {
          .l-recruit-recruit .box .txt .txt-1 {
            width: 14.167vw;
            height: 14.167vw;
            font-size: 1.75vw;
            line-height: 1.2; } }
        @media screen and (min-width: 1201px) {
          .l-recruit-recruit .box .txt .txt-1 {
            width: 170px;
            height: 170px;
            font-size: 21px; } }
        @media screen and (min-width: 651px) {
          .l-recruit-recruit .box .txt .txt-1 span span {
            margin-right: 0.1em;
            font-size: 2.5vw; } }
        @media screen and (min-width: 1201px) {
          .l-recruit-recruit .box .txt .txt-1 span span {
            font-size: 30px; } }
.l-recruit-flow {
  position: relative;
  padding: 10.154vw 7.692vw 12.308vw; }
  @media screen and (min-width: 651px) {
    .l-recruit-flow {
      padding: 5vw 0 8.333vw; } }
  @media screen and (min-width: 1201px) {
    .l-recruit-flow {
      padding: 60px 0 100px; } }
  .l-recruit-flow::before {
    content: "";
    position: absolute;
    top: 0;
    left: 6.154vw;
    width: calc(100% - 12.308vw);
    height: 2px;
    background-color: #231815; }
    @media screen and (min-width: 651px) {
      .l-recruit-flow::before {
        left: 8.333vw;
        width: calc(100% - 16.667vw);
        height: 1px; } }
    @media screen and (min-width: 1201px) {
      .l-recruit-flow::before {
        left: 50%;
        width: 980px;
        transform: translateX(-50%); } }
  .l-recruit-flow .box {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 9.231vw;
    width: 100%;
    margin-top: 6.154vw;
    overflow-x: scroll; }
    @media screen and (min-width: 651px) {
      .l-recruit-flow .box {
        gap: 2.75vw;
        margin: 2.5vw -1.667vw 0;
        overflow-x: scroll; } }
    @media screen and (min-width: 1201px) {
      .l-recruit-flow .box {
        gap: 30px;
        margin: 30px -5px 0;
        overflow-x: visible; } }
    .l-recruit-flow .box .col {
      position: relative;
      display: flex;
      justify-content: center;
      align-items: center;
      border: 0.462vw solid #97ad9a;
      border-radius: 50%;
      width: 53.846vw;
      height: 53.846vw;
      text-align: center;
      line-height: 1.2; }
      @media screen and (min-width: 651px) {
        .l-recruit-flow .box .col {
          border: 1px solid #97ad9a;
          width: 15vw;
          height: 15vw; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-flow .box .col {
          width: 145px;
          height: 145px; } }
      .l-recruit-flow .box .col::after {
        content: "";
        position: absolute;
        top: 50%;
        right: -8.462vw;
        transform: translateY(-50%);
        background: url(/assets/img/recruit/arr.png) no-repeat;
        background-size: cover;
        width: 5.692vw;
        height: 5.846vw; }
        @media screen and (min-width: 651px) {
          .l-recruit-flow .box .col::after {
            right: -2.333vw;
            width: 1.667vw;
            height: 1.667vw; } }
        @media screen and (min-width: 1201px) {
          .l-recruit-flow .box .col::after {
            right: -24px;
            width: 15px;
            height: 15px; } }
      .l-recruit-flow .box .col:last-child::after {
        display: none; }
      .l-recruit-flow .box .col .no {
        position: absolute;
        top: 3.846vw;
        left: 50%;
        transform: translateX(-50%);
        font-family: "M PLUS 1p", sans-serif;
        font-size: 6.615vw;
        font-weight: 700;
        line-height: 1; }
        @media screen and (min-width: 651px) {
          .l-recruit-flow .box .col .no {
            top: 0.833vw;
            font-size: 1.833vw; } }
        @media screen and (min-width: 1201px) {
          .l-recruit-flow .box .col .no {
            top: 10px;
            font-size: 22px; } }
      .l-recruit-flow .box .col .txt {
        padding-top: 1.538vw; }
        @media screen and (min-width: 651px) {
          .l-recruit-flow .box .col .txt {
            padding-top: 0.833vw; } }
        @media screen and (min-width: 1201px) {
          .l-recruit-flow .box .col .txt {
            padding-top: 5px; } }
        .l-recruit-flow .box .col .txt.p2 {
          padding-top: 4.615vw; }
          @media screen and (min-width: 651px) {
            .l-recruit-flow .box .col .txt.p2 {
              padding-top: 1.667vw; } }
          @media screen and (min-width: 1201px) {
            .l-recruit-flow .box .col .txt.p2 {
              padding-top: 20px; } }
        .l-recruit-flow .box .col .txt .txt-1 {
          font-size: 5.077vw;
          font-weight: 500;
          line-height: 1.2; }
          @media screen and (min-width: 651px) {
            .l-recruit-flow .box .col .txt .txt-1 {
              font-size: 1.5vw; } }
          @media screen and (min-width: 1201px) {
            .l-recruit-flow .box .col .txt .txt-1 {
              font-size: 15px; } }
          .l-recruit-flow .box .col .txt .txt-1.b {
            font-size: 6.923vw; }
            @media screen and (min-width: 651px) {
              .l-recruit-flow .box .col .txt .txt-1.b {
                font-size: 2vw; } }
            @media screen and (min-width: 1201px) {
              .l-recruit-flow .box .col .txt .txt-1.b {
                font-size: 20px; } }
        @media screen and (min-width: 651px) {
          .l-recruit-flow .box .col .txt .txt-2 {
            font-size: 1.167vw; } }
        @media screen and (min-width: 1201px) {
          .l-recruit-flow .box .col .txt .txt-2 {
            font-size: 14px; } }
        .l-recruit-flow .box .col .txt .txt-3 {
          margin-top: 2.308vw;
          font-size: 4.769vw; }
          @media screen and (min-width: 651px) {
            .l-recruit-flow .box .col .txt .txt-3 {
              margin-top: 0.833vw;
              font-size: 1.333vw; } }
          @media screen and (min-width: 1201px) {
            .l-recruit-flow .box .col .txt .txt-3 {
              margin-top: 10px;
              font-size: 16px; } }
        .l-recruit-flow .box .col .txt .txt-4 {
          position: absolute;
          left: 50%;
          transform: translateX(-50%);
          background-color: #192842;
          border-radius: 1.538vw;
          width: max-content;
          margin-top: 3.077vw;
          padding: 0.308vw 0 0.769vw 2.308vw;
          font-size: 4.769vw;
          color: #fff; }
          @media screen and (min-width: 651px) {
            .l-recruit-flow .box .col .txt .txt-4 {
              border-radius: 0.833vw;
              margin-top: 0.833vw;
              padding: 0.167vw 0 0.417vw 0.833vw;
              font-size: 1.333vw; } }
          @media screen and (min-width: 1201px) {
            .l-recruit-flow .box .col .txt .txt-4 {
              border-radius: 10px;
              margin-top: 10px;
              padding: 2px 5px 3px 8px;
              font-size: 14px; } }
    .l-recruit-flow .box .col2 {
      margin-top: 20px;
      width: 41.846vw;
      height: 41.846vw;
      border: 0.83vw dashed #97ad9a; }
      @media screen and (min-width: 651px) {
        .l-recruit-flow .box .col2 {
          width: 13.5vw;
          height: 13.5vw;
          margin-top: 6px;
          border: 0.33vw dashed #97ad9a; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-flow .box .col2 {
          width: 130px;
          height: 130px;
          margin-top: 10px;
          border: 0.13vw dashed #97ad9a; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-flow .box .col2 .txt-11 {
          font-size: 13px;
          color: #040000; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-flow .box .col2 .txt-13 {
          padding-top: 10px;
          font-size: 13px; } }
  .l-recruit-flow .coment {
    margin-top: 30px; }
.l-recruit-job {
  position: relative;
  padding: 10.154vw 7.692vw 12.308vw; }
  @media screen and (min-width: 651px) {
    .l-recruit-job {
      padding: 5vw 0 8.333vw; } }
  @media screen and (min-width: 1201px) {
    .l-recruit-job {
      padding: 60px 0 100px; } }
  .l-recruit-job::before {
    content: "";
    position: absolute;
    top: 0;
    left: 6.154vw;
    width: calc(100% - 12.308vw);
    height: 2px;
    background-color: #231815; }
    @media screen and (min-width: 651px) {
      .l-recruit-job::before {
        left: 8.333vw;
        width: calc(100% - 16.667vw);
        height: 1px; } }
    @media screen and (min-width: 1201px) {
      .l-recruit-job::before {
        left: 50%;
        width: 980px;
        transform: translateX(-50%); } }
  .l-recruit-job .box-1 {
    display: grid;
    grid-auto-flow: row;
    gap: 9.231vw;
    margin-top: 6.154vw; }
    @media screen and (min-width: 651px) {
      .l-recruit-job .box-1 {
        gap: 5vw;
        margin-top: 3.333vw; } }
    @media screen and (min-width: 1201px) {
      .l-recruit-job .box-1 {
        gap: 60px;
        margin-top: 40px; } }
    .l-recruit-job .box-1 .row {
      background-color: #d9e9e7;
      margin: 0 -4.615vw;
      padding: 6.154vw 3.077vw; }
      @media screen and (min-width: 651px) {
        .l-recruit-job .box-1 .row {
          margin: 0 -0.833vw;
          padding: 4.167vw 5vw; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-job .box-1 .row {
          margin: 0 -10px;
          padding: 50px 55px; } }
      .l-recruit-job .box-1 .row h3 {
        display: inline-block;
        background-color: #fff;
        border-radius: 3.077vw;
        padding: 1.538vw 9.231vw;
        font-size: 6.462vw;
        font-weight: normal;
        line-height: 1; }
        @media screen and (min-width: 651px) {
          .l-recruit-job .box-1 .row h3 {
            border-radius: 1.25vw;
            padding: 0.833vw 3.75vw;
            font-size: 2vw; } }
        @media screen and (min-width: 1201px) {
          .l-recruit-job .box-1 .row h3 {
            border-radius: 15px;
            padding: 10px 45px;
            font-size: 24px; } }
    .l-recruit-job .box-1 .box-tab {
      margin-top: 4.615vw; }
      @media screen and (min-width: 651px) {
        .l-recruit-job .box-1 .box-tab {
          margin-top: 2.5vw; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-job .box-1 .box-tab {
          margin-top: 30px; } }
      .l-recruit-job .box-1 .box-tab-head ul {
        display: flex;
        gap: 1.538vw; }
        @media screen and (min-width: 651px) {
          .l-recruit-job .box-1 .box-tab-head ul {
            gap: 0.833vw; } }
        @media screen and (min-width: 1201px) {
          .l-recruit-job .box-1 .box-tab-head ul {
            gap: 10px; } }
      .l-recruit-job .box-1 .box-tab-head li {
        width: 40vw; }
        @media screen and (min-width: 651px) {
          .l-recruit-job .box-1 .box-tab-head li {
            width: 21.667vw; } }
        @media screen and (min-width: 1201px) {
          .l-recruit-job .box-1 .box-tab-head li {
            width: 260px; } }
      .l-recruit-job .box-1 .box-tab-head .tab {
        display: flex;
        justify-content: center;
        align-items: center;
        background-color: #192842;
        padding: 2.308vw 1.538vw;
        font-size: 4.308vw;
        line-height: 1;
        color: #fff;
        text-align: center;
        cursor: pointer; }
        @media screen and (min-width: 651px) {
          .l-recruit-job .box-1 .box-tab-head .tab {
            padding: 1.25vw 0.833vw;
            font-size: 1.583vw; } }
        @media screen and (min-width: 1201px) {
          .l-recruit-job .box-1 .box-tab-head .tab {
            padding: 15px 10px;
            font-size: 19px; } }
        .l-recruit-job .box-1 .box-tab-head .tab.active {
          background-color: #fff;
          color: #192842;
          cursor: default; }
      .l-recruit-job .box-1 .box-tab-body {
        background-color: #fff;
        padding: 6.154vw; }
        @media screen and (min-width: 651px) {
          .l-recruit-job .box-1 .box-tab-body {
            padding: 1.667vw 0.833vw 3.333vw 6.667vw; } }
        @media screen and (min-width: 1201px) {
          .l-recruit-job .box-1 .box-tab-body {
            padding: 20px 10px 40px 75px; } }
        .l-recruit-job .box-1 .box-tab-body .tab {
          display: none; }
          .l-recruit-job .box-1 .box-tab-body .tab.active {
            display: block; }
        .l-recruit-job .box-1 .box-tab-body table {
          border-spacing: 0;
          border-collapse: collapse;
          width: 100%;
          line-height: 1.4; }
        .l-recruit-job .box-1 .box-tab-body tr:last-child th,
        .l-recruit-job .box-1 .box-tab-body tr:last-child td {
          border: none; }
        .l-recruit-job .box-1 .box-tab-body th,
        .l-recruit-job .box-1 .box-tab-body td {
          border-bottom: 1px solid #231815;
          padding: 4.615vw 3.077vw;
          font-weight: normal; }
          @media screen and (min-width: 651px) {
            .l-recruit-job .box-1 .box-tab-body th,
            .l-recruit-job .box-1 .box-tab-body td {
              padding: 2.5vw 2.5vw 2.5vw 1.667vw;
              font-size: 1.333vw; } }
          @media screen and (min-width: 1201px) {
            .l-recruit-job .box-1 .box-tab-body th,
            .l-recruit-job .box-1 .box-tab-body td {
              padding: 20px 20px 20px 30px;
              font-size: 16px; } }
        .l-recruit-job .box-1 .box-tab-body th {
          background-color: #f4f3f2;
          width: 23.077vw;
          text-align: left;
          vertical-align: top; }
          @media screen and (min-width: 651px) {
            .l-recruit-job .box-1 .box-tab-body th {
              width: 14.167vw; } }
          @media screen and (min-width: 1201px) {
            .l-recruit-job .box-1 .box-tab-body th {
              width: 178px; } }
        .l-recruit-job .box-1 .box-tab-body td span {
          display: none; }
          @media screen and (min-width: 651px) {
            .l-recruit-job .box-1 .box-tab-body td span {
              display: inline-block; } }
          @media screen and (min-width: 1201px) {
            .l-recruit-job .box-1 .box-tab-body td span {
              display: inline-block; } }
    .l-recruit-job .box-1 .link-1 {
      margin-top: 6.154vw;
      text-align: center; }
      @media screen and (min-width: 651px) {
        .l-recruit-job .box-1 .link-1 {
          margin-top: 3.333vw; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-job .box-1 .link-1 {
          margin-top: 40px; } }
      .l-recruit-job .box-1 .link-1 a {
        background-color: #192842;
        border-radius: 3.077vw;
        padding: 0.769vw 12.308vw;
        color: #fff;
        line-height: 1; }
        @media screen and (min-width: 651px) {
          .l-recruit-job .box-1 .link-1 a {
            border-radius: 1.667vw;
            padding: 0.417vw 6.667vw; } }
        @media screen and (min-width: 1201px) {
          .l-recruit-job .box-1 .link-1 a {
            border-radius: 20px;
            padding: 5px 80px; } }
        .l-recruit-job .box-1 .link-1 a:hover {
          opacity: 0.7; }
  .l-recruit-job .box-2 {
    border: 1px solid #231815;
    margin-top: 9.231vw;
    padding: 3.077vw 3.077vw 6.154vw;
    font-size: 3.846vw;
    line-height: 1.4; }
    @media screen and (min-width: 651px) {
      .l-recruit-job .box-2 {
        width: 100%;
        max-width: 55vw;
        margin: 8.333vw auto 0;
        padding: 1.667vw 1.667vw 3.333vw;
        font-size: 1.5vw; } }
    @media screen and (min-width: 1201px) {
      .l-recruit-job .box-2 {
        max-width: 660px;
        margin: 100px auto 0;
        padding: 20px 20px 40px;
        font-size: 18px; } }
.l-recruit-entry {
  position: relative;
  padding: 10.154vw 7.692vw 12.308vw; }
  @media screen and (min-width: 651px) {
    .l-recruit-entry {
      padding: 5vw 0 8.333vw; } }
  @media screen and (min-width: 1201px) {
    .l-recruit-entry {
      padding: 60px 0 100px; } }
  .l-recruit-entry::before {
    content: "";
    position: absolute;
    top: 0;
    left: 6.154vw;
    width: calc(100% - 12.308vw);
    height: 2px;
    background-color: #231815; }
    @media screen and (min-width: 651px) {
      .l-recruit-entry::before {
        left: 8.333vw;
        width: calc(100% - 16.667vw);
        height: 1px; } }
    @media screen and (min-width: 1201px) {
      .l-recruit-entry::before {
        left: 50%;
        width: 980px;
        transform: translateX(-50%); } }
  .l-recruit-entry .box-1 {
    display: grid;
    grid-auto-flow: row;
    gap: 18.462vw;
    margin-top: 4.615vw;
    padding: 0 1.538vw; }
    @media screen and (min-width: 651px) {
      .l-recruit-entry .box-1 {
        grid-auto-flow: column;
        gap: 3.333vw;
        margin-top: 4.167vw;
        padding: 0 6.667vw; } }
    @media screen and (min-width: 1201px) {
      .l-recruit-entry .box-1 {
        gap: 40px;
        margin-top: 50px;
        padding: 0 80px; } }
    .l-recruit-entry .box-1 .col h3 {
      background-color: #95ac99;
      width: 70.769vw;
      padding: 3.077vw;
      font-size: 4.615vw;
      font-weight: normal;
      color: #fff;
      line-height: 1;
      text-align: center; }
      @media screen and (min-width: 651px) {
        .l-recruit-entry .box-1 .col h3 {
          width: 23.333vw;
          padding: 1.25vw;
          font-size: 1.583vw; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-entry .box-1 .col h3 {
          width: 280px;
          padding: 15px;
          font-size: 19px; } }
    .l-recruit-entry .box-1 .col .txt-1 {
      margin-top: 4.615vw;
      line-height: 1.3; }
      @media screen and (min-width: 651px) {
        .l-recruit-entry .box-1 .col .txt-1 {
          margin-top: 1.667vw; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-entry .box-1 .col .txt-1 {
          margin-top: 20px; } }
    .l-recruit-entry .box-1 .col .txt-2 {
      margin: 3.077vw -4.615vw 0 -1.538vw;
      font-size: 4.615vw;
      font-weight: 500;
      color: #1c2943; }
      @media screen and (min-width: 651px) {
        .l-recruit-entry .box-1 .col .txt-2 {
          margin: 1.667vw -2.5vw 0 -0.833vw;
          font-size: 1.75vw; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-entry .box-1 .col .txt-2 {
          margin: 20px -30px 0 -10px;
          font-size: 21px; } }
    .l-recruit-entry .box-1 .col .txt-3 {
      margin-top: 3.077vw;
      line-height: 1.3; }
      @media screen and (min-width: 651px) {
        .l-recruit-entry .box-1 .col .txt-3 {
          display: inline-block;
          justify-content: center;
          margin-top: 1.667vw;
          font-size: 1.167vw;
          text-align: center; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-entry .box-1 .col .txt-3 {
          margin-top: 20px;
          font-size: 14px; } }
    .l-recruit-entry .box-1 .col .txt-4 {
      display: flex;
      justify-content: center;
      margin-top: 6.154vw; }
      @media screen and (min-width: 651px) {
        .l-recruit-entry .box-1 .col .txt-4 {
          justify-content: flex-start;
          margin-top: 3.333vw; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-entry .box-1 .col .txt-4 {
          margin-top: 40px; } }
      .l-recruit-entry .box-1 .col .txt-4 a {
        display: inline-block;
        background-color: #192842;
        border-radius: 3.077vw;
        padding: 3.077vw 4.615vw;
        color: #fff; }
        @media screen and (min-width: 651px) {
          .l-recruit-entry .box-1 .col .txt-4 a {
            border-radius: 1.333vw;
            padding: 1.667vw 2.5vw; } }
        @media screen and (min-width: 1201px) {
          .l-recruit-entry .box-1 .col .txt-4 a {
            border-radius: 16px;
            padding: 20px 30px; } }
        .l-recruit-entry .box-1 .col .txt-4 a:hover {
          opacity: 0.7; }
  .l-recruit-entry .box-2 {
    border: 1px solid #231815;
    margin-top: 9.231vw;
    padding: 3.077vw 3.077vw 6.154vw;
    font-size: 3.846vw;
    line-height: 1.4; }
    @media screen and (min-width: 651px) {
      .l-recruit-entry .box-2 {
        width: 100%;
        max-width: 55vw;
        margin: 8.333vw auto 0;
        padding: 1.667vw 1.667vw 3.333vw;
        font-size: 1.5vw; } }
    @media screen and (min-width: 1201px) {
      .l-recruit-entry .box-2 {
        max-width: 660px;
        margin: 100px auto 0;
        padding: 20px 20px 40px;
        font-size: 18px; } }
    .l-recruit-entry .box-2 h3 {
      font-size: 3.846vw;
      font-weight: normal; }
      @media screen and (min-width: 651px) {
        .l-recruit-entry .box-2 h3 {
          font-size: 1.5vw;
          font-weight: 500; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-entry .box-2 h3 {
          font-size: 18px; } }
    @media screen and (min-width: 651px) {
      .l-recruit-entry .box-2 ul {
        padding-left: 1em; } }
    .l-recruit-entry .box-2 li {
      position: relative;
      padding-left: 1.1em; }
      .l-recruit-entry .box-2 li::before {
        content: "〇";
        position: absolute;
        top: 0;
        left: 0; }
  .l-recruit-entry .link-1 {
    margin-top: 10.615vw;
    padding: 0 3.077vw; }
    @media screen and (min-width: 651px) {
      .l-recruit-entry .link-1 {
        margin-top: 2.5vw;
        padding: 0 1.667vw; } }
    @media screen and (min-width: 1201px) {
      .l-recruit-entry .link-1 {
        margin-top: 80px;
        padding: 0 20px; } }
    .l-recruit-entry .link-1 a {
      position: relative;
      z-index: 0;
      display: block;
      background-color: #192842;
      padding: 3.077vw;
      font-size: 4vw;
      line-height: 1.2;
      color: #fff;
      text-align: center;
      letter-spacing: 0.02em; }
      @media screen and (min-width: 651px) {
        .l-recruit-entry .link-1 a {
          width: 100%;
          max-width: 33.333vw;
          margin: 0 auto;
          padding: 1.167vw;
          font-size: 1.583vw; } }
      @media screen and (min-width: 1201px) {
        .l-recruit-entry .link-1 a {
          max-width: 400px;
          padding: 14px;
          font-size: 19px; } }
      .l-recruit-entry .link-1 a::before {
        content: "";
        position: absolute;
        top: 0.615vw;
        left: 0.615vw;
        right: 0.615vw;
        bottom: 0.615vw;
        border: 1px solid #fff; }
        @media screen and (min-width: 651px) {
          .l-recruit-entry .link-1 a::before {
            top: 0.333vw;
            left: 0.333vw;
            right: 0.333vw;
            bottom: 0.333vw; } }
        @media screen and (min-width: 1201px) {
          .l-recruit-entry .link-1 a::before {
            top: 4px;
            left: 4px;
            right: 4px;
            bottom: 4px; } }
      .l-recruit-entry .link-1 a:hover {
        opacity: 0.7; }
