@charset "UTF-8";
/* ============================================ */
/* recruitment
/* ============================================ */
/* ===== link-list ===== */
#link-list {
  border-bottom: solid 17px var(--color-blue);
  margin: 0 0 150px;
}
#link-list .flex-wrap {
  display: flex;
  justify-content: center;
}
#link-list .item {
  position: relative;
  width: 50%;
  max-width: 650px;
}
#link-list .item::before {
  content: "";
  position: absolute;
  top: 0;
  display: block;
  width: 50vw;
  height: 100%;
  background: #f5f5f5;
}
#link-list .item a {
  position: relative;
  display: block;
  font-size: 30px;
  font-size: 1.875rem;
  line-height: 1.5;
  padding: 1em 0;
  font-weight: 500;
}
#link-list .item.fresh::before {
  right: 0;
}
#link-list .item.career a {
  padding-left: 10%;
}
#link-list .item.career::before {
  left: 0;
}
#link-list .item.is-here {
  color: var(--color-white);
}
#link-list .item.is-here::before {
  background: var(--color-blue);
}

@media screen and (max-width: 1024px) {
  #link-list .item a {
    font-size: 24px;
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 768px) {
  #link-list {
    border-bottom: solid 10px var(--color-blue);
    margin: 0 0 80px;
  }
  #link-list .item a {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media screen and (max-width: 600px) {
  #link-list .item a {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
@media screen and (max-width: 360px) {
  #link-list .item a {
    font-size: 13px;
    font-size: 0.8125rem;
  }
}
/* ===== section共通 ===== */
.section .flex-wrap {
  display: flex;
  gap: 80px;
}
.section .link {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 100px 0 0;
}

@media screen and (max-width: 1024px) {
  .section .flex-wrap {
    flex-direction: column;
    gap: 0;
  }
}
@media screen and (max-width: 768px) {
  .section .link {
    margin: 60px 0 0;
  }
}
/* ===== description ===== */
#description .table {
  margin: 60px 0 0;
}

@media screen and (max-width: 1024px) {
  #description .table {
    margin: 0;
  }
}
/* ===== table ===== */
.g-table {
  width: 100%;
}
.g-table tr + tr {
  border-top: dashed 1px #ccc;
}
.g-table th,
.g-table td {
  padding: 0.9em;
}
.g-table th {
  font-weight: 600;
  white-space: nowrap;
}

@media screen and (max-width: 600px) {
  .g-table tr {
    display: block;
  }
  .g-table th,
.g-table td {
    display: block;
  }
  .g-table th {
    padding: 1.1em 0.7em 0;
  }
  .g-table td {
    padding: 0 0.7em 1.1em;
  }
}
/* ===== flow ===== */
#flow {
  margin: 160px 0 0;
}
#flow .chart {
  display: flex;
  flex-direction: column;
  gap: 25px;
  padding: 40px 0 0;
}
#flow .chart .item {
  position: relative;
  display: flex;
  gap: 40px;
  padding: 15px 40px;
  border: solid 1px var(--color-blue);
  border-radius: 15px;
}
#flow .chart .item .item-name {
  width: 12em;
  color: var(--color-blue);
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.5;
  flex-shrink: 0;
}
#flow .chart .item .text {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 2.2;
}
#flow .chart .item:not(:last-child)::before {
  content: "";
  position: absolute;
  top: 100%;
  left: 90px;
  display: block;
  width: 20px;
  height: 16px;
  -webkit-clip-path: polygon(50% 100%, 0 0, 100% 0);
          clip-path: polygon(50% 100%, 0 0, 100% 0);
  background: var(--color-blue);
}

@media screen and (max-width: 768px) {
  #flow {
    margin: 80px 0 0;
  }
  #flow .chart {
    padding: 20px 0 0;
  }
  #flow .chart .item {
    flex-direction: column;
    gap: 10px;
    padding: 15px 25px;
  }
  #flow .chart .item .item-name {
    width: auto;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 500;
  }
  #flow .chart .item .text {
    font-size: 12px;
    font-size: 0.75rem;
  }
  #flow .chart .item:not(:last-child)::before {
    left: 60px;
  }
}

/*# sourceMappingURL=recruitment.css.map */