@charset "UTF-8";
.sec-jobs__bg {
  margin-bottom: 0;
}

.jobs-block {
  background-color: #F3F4F6;
  padding: 100px 0 130px;
}
@media (max-width: 834px) {
  .jobs-block {
    padding: 55px 0 80px;
  }
}
.jobs-block__category-list {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 20px;
}
.jobs-block__list {
  margin-top: 61px;
}
@media (max-width: 640px) {
  .jobs-block__list {
    margin-top: 40px;
  }
}
.jobs-block__item + .jobs-block__item {
  margin-top: 30px;
}
@media (max-width: 640px) {
  .jobs-block__item + .jobs-block__item {
    margin-top: 20px;
  }
}
.jobs-block .wp-pagenavi {
  margin-top: 60px;
}

.job-card {
  display: flex;
  gap: 42px;
  position: relative;
  background-color: #FFFFFF;
  clip-path: polygon(100% 0, 100% calc(100% - 30px), calc(100% - 30px) 100%, 0 100%, 0 0);
  padding: 30px;
}
@media (max-width: 640px) {
  .job-card {
    flex-direction: column;
    gap: 16px;
    padding: 6.25%;
    padding-bottom: 9.375%;
  }
}
.job-card::before {
  content: "募集中";
  width: 113px;
  aspect-ratio: 113/56;
  display: flex;
  justify-content: center;
  align-items: end;
  position: absolute;
  top: 0;
  left: 0;
  transform-origin: top center;
  transform: translate(-34px, -8px) rotate(-45deg);
  transform: translate(-50%, 0) rotate(-45deg);
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.15em;
  color: #FBFBFB;
  background-color: #1D2A61;
  clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}
.job-card.is-closed {
  pointer-events: none;
}
.job-card.is-closed::before {
  content: "終了";
  z-index: 2;
  background-color: #474747;
}
.job-card.is-closed::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background-color: #474747;
  mix-blend-mode: multiply;
  opacity: 0.4;
}
.job-card__image {
  width: 300px;
  aspect-ratio: 300/180;
  overflow: hidden;
}
@media (max-width: 1200px) {
  .job-card__image {
    width: 250px;
  }
}
@media (max-width: 640px) {
  .job-card__image {
    width: 100%;
  }
}
.job-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.job-card__content {
  width: calc(100% - 342px);
  padding-right: 3.9473684211%;
}
@media (max-width: 1200px) {
  .job-card__content {
    width: calc(100% - 292px);
  }
}
@media (max-width: 640px) {
  .job-card__content {
    width: 100%;
  }
}
.job-card__meta {
  display: flex;
  align-items: center;
  gap: 20px;
}
.job-card__date {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #1D2A62;
}
@media (max-width: 834px) {
  .job-card__date {
    font-size: 1.4rem;
  }
}
.job-card__ttl {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.44;
  letter-spacing: 0.1em;
  color: #1D2A61;
  margin-top: 20px;
}
@media (max-width: 1200px) {
  .job-card__ttl {
    font-size: 2.2rem;
  }
}
@media (max-width: 834px) {
  .job-card__ttl {
    font-size: clamp(1.6rem, 2.6378896882vw, 2.2rem);
    margin-top: 8px;
  }
}

.sec-flow__bg {
  margin-bottom: 0;
}

.flow-block {
  background: #EBF1F1;
  padding: 70px 0;
}
@media screen and (max-width: 834px) {
  .flow-block {
    padding: 39px 0 49px;
  }
}
.flow-block--domestic {
  background: #EBF1F1;
}
.flow-block--overseas {
  background: rgba(8, 21, 97, 0.04);
}
.flow-block__wrap {
  background: #FFFFFF;
  padding: 52px 68px 46px 30px;
}
@media screen and (max-width: 834px) {
  .flow-block__wrap {
    width: 92%;
    padding: 35px 25px;
    margin: 0 auto;
  }
}
.flow-block__ttl {
  font-size: 2.5rem;
  color: #07615E;
  letter-spacing: 0.3rem;
  margin-bottom: 8px;
}
@media screen and (max-width: 834px) {
  .flow-block__ttl {
    font-size: 1.6rem;
    padding: 0 8px;
  }
}
.flow-block__ttl--02 {
  color: #1D2A62;
}
.flow-block__list {
  counter-reset: flow-counter;
  display: grid;
  grid-template-columns: repeat(auto-fit, 140px);
  grid-auto-rows: 1fr;
  grid-column-gap: 68px;
  grid-row-gap: 32px;
  justify-content: center;
}
@media screen and (max-width: 834px) {
  .flow-block__list {
    grid-template-columns: repeat(auto-fit, clamp(110px, 32vw, 120px));
    grid-column-gap: clamp(28px, 9.3333333333vw, 35px);
    grid-row-gap: 24px;
  }
}
@media screen and (max-width: 834px) {
  .flow-block__list {
    gap: 30px 35px;
  }
}
.flow-block__list--domestic .flow-block__item::before {
  background-color: #07615E;
}
.flow-block__list--overseas .flow-block__item::before {
  background-color: #1D2A62;
}
.flow-block__item {
  counter-increment: flow-counter;
  position: relative;
}
.flow-block__item::before {
  content: counter(flow-counter);
  width: 38px;
  height: 38px;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  position: absolute;
  top: -6px;
  left: -6px;
  z-index: 2;
  font-size: 2.4rem;
  font-family: "Bebas Neue", sans-serif;
  line-height: 35px;
  color: #FFFFFF;
  border-radius: 50%;
}
.flow-block__item:not(:last-child)::after {
  content: "";
  width: 14px;
  height: 22px;
  position: absolute;
  top: 44px;
  right: -24px;
  transform: translate(100%, 0);
  background-color: #888888;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
@media screen and (max-width: 834px) {
  .flow-block__item:not(:last-child)::after {
    content: none;
  }
}
.flow-block__image {
  width: 100%;
  height: 110px;
  background-color: #F5F5F5;
  padding: 10px;
  clip-path: polygon(45px 0, 100% 0, 100% 100%, 0 100%, 0% 45px);
}
@media screen and (max-width: 834px) {
  .flow-block__image {
    height: auto;
    aspect-ratio: 120/94;
    padding: 8px 9px;
  }
}
.flow-block__label {
  display: block;
  position: relative;
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
  margin-top: 6px;
}
.flow-block__label-note {
  width: max-content;
  display: block;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  font-size: 1.4rem;
  white-space: nowrap;
  margin-top: 1px;
}

.cost-block {
  background: #F3F4F6;
  padding: 70px 0 100px;
}
@media screen and (max-width: 834px) {
  .cost-block__inner {
    padding: 0 9.8666666667%;
  }
}
.cost-block__ttl {
  line-height: 1.4666666667;
  margin-bottom: 1em;
}
@media screen and (max-width: 834px) {
  .cost-block__ttl {
    line-height: 1.45;
    margin-bottom: 1.2em;
  }
}
.cost-block__content {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  color: #FFFFFF;
  background: linear-gradient(120deg, #000D5C 0%, #0E5756 80%, #0E5856 100%);
  padding: 35px 20px;
}
@media screen and (max-width: 834px) {
  .cost-block__content {
    padding: 40px 6.6666666667% 50px;
  }
}
.cost-block__txt {
  width: 41%;
  font-size: clamp(2.4rem, 3.1182795699vw, 2.9rem);
  font-weight: 600;
  line-height: 1.4482758621;
  text-align: center;
  letter-spacing: 0.1em;
  padding-right: 30px;
}
@media screen and (max-width: 834px) {
  .cost-block__txt {
    width: 100%;
    font-size: 1.6rem;
    line-height: 2;
    padding: 0 0 40px;
  }
}
.cost-block__note {
  width: 59%;
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  border-left: 3px solid #FBFBFB;
  padding-left: clamp(30px, 16.279vw - 105.77px, 114px);
}
@media screen and (max-width: 834px) {
  .cost-block__note {
    width: 100%;
    font-size: 1.4rem;
    line-height: 2.2857142857;
    border-left: none;
    border-top: 2px solid #FBFBFB;
    padding: 40px 0 0;
  }
}
.cost-block__note-list {
  margin-top: 13px;
}
@media screen and (max-width: 834px) {
  .cost-block__note-list {
    margin-top: 12px;
  }
}
.cost-block__note-item + .cost-block__note-item {
  margin-top: 13px;
}
@media screen and (max-width: 834px) {
  .cost-block__note-item + .cost-block__note-item {
    margin-top: 0;
  }
}
.cost-block__note-item::before {
  content: "△";
}/*# sourceMappingURL=jobseeker.css.map */