@charset "UTF-8";
/* Sass Document */
.p-recruit__content {
  padding-bottom: 15rem;
  overflow-x: hidden;
}

.p-information {
  position: relative;
}
.p-information .p-apply {
  padding-top: 8rem;
  background-color: #fff;
}
@media screen and (max-width: 767.98px) {
  .p-information .p-apply {
    position: static;
    transform: translateY(0);
    padding-top: 0;
  }
}
.p-information .p-apply__content {
  background-color: #b1222f;
}
.p-information .p-apply__content::after {
  background-color: #b1222f;
}

.p-information__inner {
  position: relative;
  overflow: hidden;
}
.p-information__inner::before,
.p-information__inner::after {
  position: absolute;
  content: "";
}
.p-information__inner::before {
  top: 0;
  left: -4rem;
  width: 28.3rem;
  height: 18.3rem;
  background: url(../img/about/bg_upper.svg) no-repeat top left / 100% 100%;
}
.p-information__inner::after {
  bottom: -8.4rem;
  right: 0;
  width: 35.2rem;
  height: 38.2rem;
  background: url(../img/about/bg_bottom2.svg) no-repeat top right / 100% 100%;
}
@media screen and (max-width: 767.98px) {
  .p-information__inner::after {
    width: 38.5rem;
    height: 23.5rem;
    bottom: 0;
    background-size: 100% auto;
  }
}
.p-information__text {
  display: flex;
  flex-direction: column;
  max-width: 84rem;
  margin-left: auto;
  margin-right: auto;
  padding-top: 13.5rem;
  padding-bottom: 9.5rem;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767.98px) {
  .p-information__text {
    padding: 22.7rem 5rem 21.4rem 10rem;
  }
}
.p-information__inner .c-ttl {
  font-size: 6.4rem;
  font-weight: 500;
  line-height: 1.125;
  max-width: 83rem;
  letter-spacing: 0.03em;
}
.p-information__inner .c-sub-ttl {
  font-size: 2.9rem;
  font-weight: 600;
  margin-top: 5.5rem;
}
@media screen and (max-width: 767.98px) {
  .p-information__inner .c-sub-ttl {
    font-size: 4.2rem;
  }
}
.p-information__inner .c-sub-ttl + p {
  margin-top: 3.5rem;
}
@media screen and (max-width: 767.98px) {
  .p-information__inner .c-sub-ttl + p {
    margin-top: 3.1rem;
  }
}
.p-information__inner p {
  max-width: 83rem;
  margin: 4.7rem 0 0 0;
  padding-left: 9rem;
  line-height: 3.225;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 767.98px) {
  .p-information__inner p {
    margin: 5rem 0 0 0;
    line-height: 2;
    padding-left: 0;
  }
}
.p-information__inner .c-txt-large {
  margin-top: 3.3rem;
  font-size: 2.4rem;
  font-weight: 600;
  line-height: 1.3333333333;
}
@media screen and (max-width: 767.98px) {
  .p-information__inner .c-txt-large {
    margin-top: 5.8rem;
    font-size: 3.2rem;
    line-height: 1.5;
  }
}

/* ----------------------------------------------------------------------------------------------------
*	仕事を知る
* --------------------------------------------------------------------------------------------------*/
.p-how-we-work {
  padding-top: 8rem;
  padding-bottom: 8rem;
  background-color: #fff;
}
.p-how-we-work__heading {
  margin-bottom: 5.6rem;
}
.p-how-we-work__heading .title {
}
.p-how-we-work__heading .title span {
  display: block;
  text-align: center;
}
.p-how-we-work__heading .title .u-en {
  font-size: 2.8rem;
  color: #c5161d;
  line-height: 1;
  letter-spacing: .05em;
  margin-bottom: 2.4rem;
}
.p-how-we-work__heading .title .u-min {
  font-size: 6.2rem;
  line-height: 1;
  letter-spacing: .1em;
  color: #5c5b5a;
}
.p-how-we-work__heading .summary {
  text-align: center;
  margin-top: 4rem;
}
.p-how-we-work__content {
  width: 82%;
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 2rem 1.4rem ;
}
.p-how-we-work__card {
  display: block;
  text-decoration: none !important;
  color: #222222;
  position: relative;
  background-image: linear-gradient(45deg, #f8f6f7, #f5f3f4);
  padding: 15rem 2.7rem 4rem 2.7rem;
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
  gap: 0;
  position: relative;
}
.p-how-we-work__card .title::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid #c5161d;
  opacity: 0;
  transition: opacity .2s ease;
  pointer-events: none;
  background-color: rgba(64, 9, 7, 0.1);/* 20260414 */
}
a.p-how-we-work__card:hover .title::after {
  opacity: 1;
}
.p-how-we-work__card::before,
.p-how-we-work__card::after {
  display: block;
  content: '';
  position: absolute;
}
.p-how-we-work__card::after {
  content: attr(data-number);
  font-family: "din-2014", sans-serif;
  line-height: 1;
  font-size: 8.8rem;
  font-weight: 300;
  letter-spacing: -.03em;
  color: rgba(34, 24, 21, .11);
  right: 2.4rem;
  top: 2rem;
}
.p-how-we-work__card::before {
  left: 0;
  top: 0;
  width: 7.7rem;
  height: 6rem;
  background: url(../img/recruit/bg_how_we_work_card.svg) no-repeat top left / 100% 100%;
}
.p-how-we-work__card .title {
  color: #c5161d;
  line-height: 1;
  margin-bottom: 4rem;
}
.p-how-we-work__card .title span {
  display: block;
}
.p-how-we-work__card .title .u-jp {
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 1.6rem;
}
.p-how-we-work__card .title .u-en {
  font-size: 3.4rem;
  font-weight: 500;
}
.p-how-we-work__card .catch {
  font-weight: 600;
  line-height: 1.65;
  margin-bottom: 2.4rem;
}
.p-how-we-work__card .summary {
  line-height: 1.85;
}
@media screen and (max-width: 767.98px) {
  .p-how-we-work {
    padding-top: 10rem;
    padding-bottom: 10rem;
  }
  .p-how-we-work__heading .summary {
    margin: 4rem 4.6rem 0;
    line-height: 1.55;
  }
  .p-how-we-work__content {
    grid-template-columns: 1fr;
    gap: 4rem 0;
  }
  .p-how-we-work__card::after {
    font-size: 8.7rem;
    right: 2rem;
    top: 1.2rem;
  }
  .p-how-we-work__card::before {
    width: 9rem;
    height: 7rem;
  }
  .p-how-we-work__card .title {
    margin-bottom: 4.8rem;
  }
  .p-how-we-work__card .title .u-jp {
    font-size: 2.4rem;
    margin-bottom: 1rem;
  }
  .p-how-we-work__card .title .u-en {
    font-size: 4.8rem;
  }
  .p-how-we-work__card .title .u-en br {
    display: none;
  }
  .p-how-we-work__card {
    padding: 13rem 4.8rem 6.4rem 4.8rem;
  }
}

/* ----------------------------------------------------------------------------------------------------
*	社内案内（スライド）
* --------------------------------------------------------------------------------------------------*/
.p-company__inner {
  padding-block: 17.1rem 11rem;
  max-width: 120rem;
  margin-inline: auto;
}
.p-company__inner .p-txt-wrapper {
  margin-bottom: 5rem;
}
@media screen and (max-width: 767.98px) {
  .p-company__inner .p-txt-wrapper {
    padding: 0 3.4rem;
    text-align: center;
    margin-bottom: 3rem;
  }
}
.p-company__inner .c-title {
  font-size: 3.2rem;
  color: #c5161d;
  line-height: 1.3;
}
@media screen and (max-width: 767.98px) {
  .p-company__inner .c-title {
    font-size: 4.8rem;
  }
}
@media screen and (max-width: 767.98px) {
  .p-company__inner {
    padding-block: 10rem;
  }
}

.p-swiper-content {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}

.swiper-main,
.swiper-thumbnail {
  max-width: 84.6rem;
  margin-inline: auto;
}
@media screen and (max-width: 767.98px) {
  .swiper-main,
.swiper-thumbnail {
    max-width: 100vw;
  }
}

.swiper-main .swiper-slide {
  height: auto;
}
.swiper-main .swiper-slide .swiper-block {
  height: 100%;
  display: flex;
  flex-direction: column;
}
.swiper-main .swiper-slide p {
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.3;
}
@media screen and (max-width: 767.98px) {
  .swiper-main .swiper-slide p {
    font-size: 2.4rem;
  }
}

.swiper-thumbnail {
  margin-top: 2rem;
}
@media screen and (max-width: 767.98px) {
  .swiper-thumbnail {
    margin-top: 3rem;
  }
}

.swiper-thumbnail .swiper-slide {
  border: 2px solid transparent;
  cursor: pointer;
}
@media (any-hover) {
  .swiper-thumbnail .swiper-slide {
    transition: 0.3s opacity;
  }
  .swiper-thumbnail .swiper-slide:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767.98px) {
  .swiper-thumbnail .swiper-slide {
    border-width: 1px;
    width: 22rem;
  }
  .swiper-thumbnail .swiper-slide:first-of-type {
    margin-left: 3rem;
  }
  .swiper-thumbnail .swiper-slide:last-of-type {
    margin-right: 3rem;
  }
}
.swiper-thumbnail .swiper-slide .p-thumb-img {
  overflow: hidden;
  margin: 0 auto;
}

.swiper-thumbnail .swiper-slide-thumb-active {
  opacity: 1;
  border-color: #707070;
}

.swiper-thumbnail .swiper-slide img {
  width: 100%;
  height: 100%;
  vertical-align: middle;
  -o-object-fit: cover;
     object-fit: cover;
}

.swiper-button-prev,
.swiper-button-next {
  top: auto;
  bottom: 18rem;
}
@media (any-hover) {
  .swiper-button-prev,
.swiper-button-next {
    transition: 0.3s opacity;
  }
  .swiper-button-prev:hover,
.swiper-button-next:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767.98px) {
  .swiper-button-prev,
.swiper-button-next {
    bottom: 14rem;
  }
}
.swiper-button-prev::before,
.swiper-button-next::before {
  position: absolute;
  width: 3.2rem;
  height: 4rem;
  content: "";
  background-color: rgba(72, 72, 72, 0.76);
  top: 0;
}
@media screen and (max-width: 767.98px) {
  .swiper-button-prev::before,
.swiper-button-next::before {
    width: 6.1rem;
    height: 7.9rem;
  }
}
.swiper-button-prev::after,
.swiper-button-next::after {
  content: "";
  width: 0.6rem;
  height: 1rem;
  transform: translateY(-20%);
  background-color: #fff;
}
@media screen and (max-width: 767.98px) {
  .swiper-button-prev::after,
.swiper-button-next::after {
    width: 1.3rem;
    height: 2rem;
  }
}

.swiper-button-prev {
  left: -4.5rem;
}
@media screen and (max-width: 767.98px) {
  .swiper-button-prev {
    left: 0;
  }
}
.swiper-button-prev::before {
  left: 0;
}
.swiper-button-prev::after {
  -webkit-clip-path: polygon(100% 0, 0 50%, 100% 100%);
          clip-path: polygon(100% 0, 0 50%, 100% 100%);
}

.swiper-button-next {
  right: -4.5rem;
  left: auto;
}
@media screen and (max-width: 767.98px) {
  .swiper-button-next {
    right: 0;
  }
}
.swiper-button-next::after {
  -webkit-clip-path: polygon(0 0, 100% 50%, 0 100%);
          clip-path: polygon(0 0, 100% 50%, 0 100%);
}

.p-system__content .c-section__ttl {
  border-bottom: 1px solid #707070;
  padding-bottom: 4.6rem;
  margin-bottom: 5.6rem;
}
@media screen and (max-width: 767.98px) {
  .p-system__content .c-section__ttl {
    border-color: #d6d5d5;
    text-align: center;
    padding-bottom: 5rem;
    margin-bottom: 5rem;
  }
}

.p-system__inner {
  max-width: 120rem;
  margin-inline: auto;
  width: 100%;
  position: relative;
  background-color: #ededed;
  padding: 9.6rem 0 9.4rem 8rem;
}
@media screen and (max-width: 767.98px) {
  .p-system__inner {
    margin: 0;
    padding: 10rem 3.4rem 8.9rem;
  }
}
.p-system__inner * {
  position: relative;
  z-index: 2;
}
.p-system__inner::after {
  top: 0;
  left: 50%;
  width: 100vw;
  height: 100%;
  background-color: #ededed;
  content: "";
  position: absolute;
}
@media screen and (max-width: 767.98px) {
  .p-system__inner::after {
    display: none;
  }
}

.p-benefits {
  position: relative;
}
.p-benefits .p-anchor {
  position: absolute;
  top: 0;
  z-index: 20;
  height: 1px;
  width: 100%;
}
.p-benefits .p-apply {
  margin-top: 9rem;
}
@media screen and (max-width: 767.98px) {
  .p-benefits .p-apply .p-apply__content {
    padding-bottom: 6.1rem;
  }
}

.p-p-benefit__list {
  display: flex;
  flex-wrap: wrap;
  gap: 6rem 5.8035714286%;
}
@media screen and (max-width: 767.98px) {
  .p-p-benefit__list {
    justify-content: space-between;
    row-gap: 5rem;
  }
}

.p-benefit__item {
  width: 20.625%;
}
@media screen and (max-width: 767.98px) {
  .p-benefit__item {
    width: 47.0588235294%;
  }
}

.p-benefit__img-wrapper {
  aspect-ratio: 230/157;
  overflow: hidden;
}
.p-benefit__img-wrapper img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.c-benefit__ttl {
  font-size: 1.6rem;
  font-weight: 400;
  position: relative;
  padding-left: 1.6rem;
  margin-bottom: 0.6rem;
  line-height: 1.375;
}
@media screen and (max-width: 767.98px) {
  .c-benefit__ttl {
    font-size: 2.8rem;
    padding-left: 2rem;
  }
}
.c-benefit__ttl::before {
  height: 0.8em;
  width: 0.6rem;
  background-color: #c5161d;
  content: "";
  position: absolute;
  left: 0;
  top: 0.35em;
}
@media screen and (max-width: 767.98px) {
  .c-benefit__ttl::before {
    width: 1rem;
  }
}

.p-benefit__body {
  padding-top: 1.3rem;
}
@media screen and (max-width: 767.98px) {
  .p-benefit__body {
    padding-top: 2.1rem;
  }
}
.p-benefit__body .c-txt {
  line-height: 1.75;
}
@media screen and (max-width: 767.98px) {
  .p-benefit__body .c-txt {
    line-height: 1.7692307692;
  }
}

/* ----------------------------------------------------------------------------------------------------
*	評価制度
* --------------------------------------------------------------------------------------------------*/
.p-evaluation-system {
  margin-top: 10.3rem;
}
@media screen and (max-width: 767.98px) {
  .p-evaluation-system {
    margin-top: 12.6rem;
  }
}
@media screen and (max-width: 767.98px) {
  .p-evaluation-system p {
    line-height: 1.6153846154;
  }
}

.p-apply {
  position: relative;
}
.p-apply .c-ttl {
  width: 24rem;
  text-align: center;
  font-size: 3.2rem;
  color: #fff;
  line-height: 0;
  z-index: 2;
}
@media screen and (max-width: 767.98px) {
  .p-apply .c-ttl {
    font-size: 6.2rem;
    width: auto;
    padding-bottom: 4rem;
  }
}

.p-apply__wrapper {
  overflow: hidden;
}

.p-apply__content {
  padding: 1rem 2.4rem 1rem 0;
  background-color: #a7161d;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 136.6rem;
  min-width: 109.6rem;
  margin-inline: auto;
  position: relative;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767.98px) {
  .p-apply__content {
    padding: 6rem 3.2rem 9rem 3.2rem;
    display: block;
    min-width: inherit;
    width: auto;
    max-width: inherit;
  }
}
.p-apply__content * {
  position: relative;
  z-index: 2;
}

.p-apply__inner {
  display: flex;
  flex-direction: column;
  position: relative;
  padding: 2rem 0 2rem 2.4rem;
  flex: 1;
}
@media screen and (max-width: 767.98px) {
  .p-apply__inner {
    padding: 5rem 0 0;
    display: block;
  }
}
.p-apply__inner::before {
  position: absolute;
  content: "";
  width: 1px;
  height: 100%;
  left: 0;
  top: 0;
  background-color: rgba(255, 255, 255, .1);
}
@media screen and (max-width: 767.98px) {
  .p-apply__inner::before {
    width: 100%;
    height: 1px;
    top: 0;
    left: 0;
    right: 0;
    margin-inline: auto;
  }
}

.p-apply__list {
  color: #fff;
}
.p-apply__list a {
  display: block;
}
.p-apply__list.fresh {
  margin-bottom: 2.4rem;
  padding-bottom: 2.4rem;
  border-bottom: 1px solid rgba(255, 255, 255, .1);
}
.p-apply__list a img {
  width: 100%;
}
@media screen and (max-width: 767.98px) {
  .p-apply__list.fresh {
    margin-bottom: 5.6rem;
    padding-bottom: 0;
    border-bottom: none;
  }
}
.p-apply__list dl {
  display: flex;
}
@media screen and (max-width: 767.98px) {
  .p-apply__list dl {
    flex-direction: column;
    width: 100%;
  }
}
.p-apply__list dt {
  writing-mode: vertical-rl;
  font-weight: 400;
  font-size: 1.8rem;
}
@media screen and (max-width: 767.98px) {
  .p-apply__list dt {
    font-size: 3.2rem;
    letter-spacing: .04em;
    writing-mode: horizontal-tb;
    text-align: center;
  }
}
.p-apply__list dd {
  display: flex;
  margin-left: 2rem;
  flex: 1;
}
.p-apply__list dd ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0 2rem;
}
@media screen and (max-width: 767.98px) {
  .p-apply__list dd ul {
    gap: 3.2rem;
    width: 100%;
  }
}
.p-apply__list dd ul li {
  width: 24rem;
}
@media screen and (max-width: 767.98px) {
  .p-apply__list dd ul li {
    width: calc((100% - 3.22rem) / 2);
  }
}

@media screen and (max-width: 767.98px) {
  .p-apply__list dd {
    margin-left: 0;
    margin-top: 2.6rem;
  }
}
@media (any-hover) {
  .p-apply__list a {
    transition: 0.3s opacity;
  }
  .p-apply__list a:hover {
    opacity: 0.7;
  }
}
/*# sourceMappingURL=recruit.css.map */