.page__recruit .page__visual::after {
  background:url(/assets/img/recruit/visual_recruit.jpg) no-repeat right center / cover;
}

/* top */
#recruit-top {
  position: relative;
  z-index: 3;
}
#recruit-top .title {
  line-height: 1.75;
  margin-bottom: 1.5em;
}
#recruit-top p {
  line-height:1.8;
}
#recruit-top p::after {
  display: block;
  content: "";
  width:100%;
  height:min(110vw,600px);
  margin-top:50px;
  background-image: url(/assets/img/recruit/top_img1.jpg),url(/assets/img/recruit/top_img2.jpg);
  background-repeat: no-repeat;
  background-position: center top,center bottom;
  background-size: contain;
}
@media (min-width: 768px) { 
  #recruit-top {
    text-align: center;
  }
  #recruit-top p::after {
    height:min(28vw,300px);
    margin-top:70px;
    background-position: left bottom,right bottom;
    background-size: calc(50% - 5px);
  }
}

/* benefits */
#recruit-benefits .section__title {
  margin-bottom:3.7em;
}
#recruit-benefits .content__block ul {
  display:flex;
  flex-wrap:wrap;
}
#recruit-benefits .content__block ul li {
  font-size: 1.6rem;
  text-align: center;
  line-height: 1.5;
  width:50%;
  padding:154px 5px 40px;
}
#recruit-benefits .content__block ul li:nth-child(1) {
  background:url(/assets/img/recruit/benefits_list1.png) no-repeat center 40px / auto;
  border-right:1px solid var(--color-gray);
  border-bottom:1px solid var(--color-gray);
}
#recruit-benefits .content__block ul li:nth-child(2) {
  background:url(/assets/img/recruit/benefits_list2.png) no-repeat center 40px / auto;
  border-bottom:1px solid var(--color-gray);
}
#recruit-benefits .content__block ul li:nth-child(3) {
  background:url(/assets/img/recruit/benefits_list3.png) no-repeat center 40px / auto;
  border-right:1px solid var(--color-gray);
}
#recruit-benefits .content__block ul li:last-child {
  background:url(/assets/img/recruit/benefits_list4.png) no-repeat center 40px / auto;
}
#recruit-benefits .content__block ul li small {
  display: block;
  font-size:1.1rem;
}
@media (min-width: 768px) { 
  #recruit-benefits .content__block ul li {
    font-size: 1.8rem;
    width:25%;
    border-top:none;
  }
  #recruit-benefits .content__block ul li:nth-child(1) {
    background:url(/assets/img/recruit/benefits_list1.png) no-repeat center 40px / auto;
    border-left:1px solid var(--color-gray);
    border-bottom:none;
  }
  #recruit-benefits .content__block ul li:nth-child(2) {
    background:url(/assets/img/recruit/benefits_list2.png) no-repeat center 40px / auto;
    border-bottom:none;
    border-right:1px solid var(--color-gray);
  }
  #recruit-benefits .content__block ul li:last-child {
    border-right:1px solid var(--color-gray);
  }
}
/* message */
#recruit-message .wrapper {
  margin-bottom: min(15%, 99px);
}
#recruit-message .content__block {
  max-width: 725px;
  margin:0 auto;
}
#recruit-message .content__block::before {
  display: block;
  content: "";
  width:100%;
  height:min(34vw,185px);
  margin-bottom: 20px;
  background: url(/assets/img/recruit/message_img.png) no-repeat center / contain;
}
#recruit-message .content__block p {
  font-size: 1.4rem;
  line-height: 2.35;
}
@media (min-width: 768px) { 
  #recruit-message .content__block {
    display:flex;
    align-items:center;
  }
  #recruit-message .content__block::before {
    width:185px;
    margin:0 50px 0 0;
    flex-shrink:0;
  }
}
/* job description */
#recruit-description {
  background:#f6f7fd;
}
#recruit-description .wrapper {
  margin-bottom: min(19%,98px);
  padding-top:min(19.5%,88px);
  padding-bottom: min(18%,85px);
}
#recruit-description .section__title {
  margin-bottom:4.7em;
}
#recruit-description .section__title::after {
  font-size: clamp(3rem, 3.5vw, 4.8rem);
}
#recruit-description .content__block dl {
  width:fit-content;
  margin:0 auto;
}
#recruit-description .content__block dl dt {
  font-size:1.5rem;
  margin-bottom: 1em;
  padding-bottom: 0.3em;
  border-bottom: 1px solid;
}
#recruit-description .content__block dl dd {
  font-size: 1.5rem;
  margin-bottom: 2em;
  padding:0 0 1em 0;
}
#recruit-description .content__block dl dd ul.dotted li::before {
  content: "・";
}
#recruit-description .content__block dl dd ul.holiday {
  display: flex;
  flex-wrap: wrap;
}
#recruit-description .content__block dl dd ul.holiday li {
  margin-right:1em;
}
#recruit-description .content__block dl dd ul.holiday li:nth-child(1),
#recruit-description .content__block dl dd ul.holiday li:nth-child(2),
#recruit-description .content__block dl dd ul.holiday li:last-child{
  width:100%;
}

#recruit-description .content__block dl dd ul.slash {
  display: flex;
  flex-wrap: wrap;
}
#recruit-description .content__block dl dd ul.slash li + li::before {
  content: "／";
}
@media (min-width: 768px) {
  #recruit-description .content__block dl div {
    display: flex;
  }
  #recruit-description .content__block dl dt {
    width: 9em;
    flex-shrink:0;
    margin-bottom:0;
    padding-bottom:2em;
    border-bottom:none;
  }
  #recruit-description .content__block dl dd {
    margin-bottom:0;
    padding:0 0 2em 3em;
    border-left: 1px solid ;
  }
  #recruit-description .content__block dl div:last-child dd {
    padding-bottom:0;
  }
}

/* entry or contact*/
#recruit-entry .wrapper {
  margin-bottom: min(18%, 80px);
}
#recruit-entry .section__title {
  margin-bottom:6em;
}
#recruit-entry .section__title::after {
  font-size: clamp(3rem, 3.5vw, 4.8rem);
}
#recruit-entry .content__block .item {
  max-width:397px;
  margin: 0 auto 50px;
}
#recruit-entry .content__block p {
  font-size:clamp(1.4rem , 1.8229vw , 1.8rem);
  font-weight:700;
  margin-bottom:0.5em;
}
#recruit-entry .content__block p.time {
  font-size:clamp(1.6rem , 1.9vw , 2rem);
  margin-top:0.5em;
}
#recruit-entry .contact__information .button {
  grid-template-columns: auto 1em;
  gap: 15px;
  height: 70px;
  line-height: 1;
  border-radius: 15px;
  font-weight: 400;
}
#recruit-entry .contact__information.mail .button {
  font-size:1.8rem;
  background: var(--color-accent);
}
#recruit-entry .contact__information.mail .button:hover {
  color: var(--color-accent);
  background:var(--color-white);
}
#recruit-entry .contact__information.tel .button {
  font-size:clamp(1.6rem , 5vw , 2.3rem);
  background: #8bce00;
  border:2px solid #8bce00;
}
#recruit-entry .contact__information.tel .button:hover {
  color:#8bce00;
  background: var(--color-white);
}
#recruit-entry .contact__information.tel .button span.number{
  font-size: 123%;
}
.recruit-entry .contact__information .button::before {
  display: none;
}
.recruit-entry .contact__information .button::after{
  font-size: clamp(1.6rem , 1.8vw , 2.25rem);
  font-weight: 600;
  font-family: "Font Awesome 6 Free";
  line-height:1;
  content: "\f0a9";
}
@media (min-width: 768px) {
  #recruit-entry .content__block {
    display:flex;
    justify-content:center;
    gap:0 7.5%;
  }
  #recruit-entry .contact__information.mail .button {
    font-size:clamp(1.8rem , 2.5vw , 2.25rem);
  }
  #recruit-entry .contact__information.tel .button {
    font-size:clamp(2.1rem , 2.7vw , 2.6rem);
  }
}
