/*---------------------------------

recruit.css

--------------------------------*/


/*---------------------------------
page_ttl
--------------------------------*/
/* スマホ用 750px以下に適用されるCSS */

#page_ttl .innr {
  background-color: #fff;
  background-image:
    url(../images/page_ttl_shadow_sp.webp),
    url(../images/recruit_page_ttl_sp.webp);
  background-position: 0 top, 0 top;
  background-repeat: no-repeat, no-repeat;
  background-size: contain, contain;
}

/* PC用 751px以上に適用されるCSS */
@media (min-width: 751px) {

  #page_ttl .innr {
    background-color: #fff;
    background-image:
      url(../images/page_ttl_shadow.webp),
      url(../images/recruit_page_ttl.webp);
    background-position: right 0, right 0;
    background-repeat: no-repeat, no-repeat;
    background-size: contain, contain;
  }
}



/*---------------------------------
link_area
--------------------------------*/
/* スマホ用 750px以下に適用されるCSS */

.txt_area {
  font-size: 4.615vw;
  padding-bottom: 10vw;
}

.link_area {
  padding: 0 2.666vw;
}

#affairs.link_area {
  padding-bottom: 6vw;
}

.link_area>div {
  background-color: #fff;
  box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.06);
  border-radius: 12px;
  margin-bottom: 5vw;
}

.link_area>div dl {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 7vw 0 6vw;
}

.link_area>div dt {
  font-size: 6.666vw;
  color: var(--main-color);
}

.link_area>div dd {
  font-size: 3.333vw;
  padding: .1rem 1.5rem;
  text-align: center;
  margin-left: 1rem;
}

.link_area>div.full-time dd {
  background-color: #DBF1FD;
  color: var(--sub-color);
}

.link_area>div.part-time dd {
  background-color: #D6F5F1;
  color: var(--accent-color-1);
}

.link_area>div div {
  background-color: #ccc;
  border-bottom-left-radius: 12px;
  border-bottom-right-radius: 12px;
  padding: .3rem 1.5rem;
  text-align: right;
  font-size: 4.102vw;
}

.link_area>div a div {
  transition: 0.3s;
  background: linear-gradient(90deg, rgba(29, 143, 218, 1) 0%, rgba(51, 191, 171, 1) 50%, rgba(29, 143, 218, 1) 100%);
  background-size: 200% 100%;
  padding-right: 11.2vw;
  color: #fff;
  position: relative;
}

.link_area>div a div::after {
  content: "";
  background: url(../images/icon-outside.svg) 0 0 no-repeat;
  background-size: contain;
  width: 4.266vw;
  height: 4.266vw;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  right: 5%;
}

/* PC用 751px以上に適用されるCSS */
@media (min-width: 751px) {
  .txt_area {
    font-size: 1.125rem;
    padding-bottom: 30px;
  }

  .link_area {
    padding: 0;
    display: flex;
    justify-content: space-around;
  }

  #affairs.link_area {
    padding-bottom: 30px;
  }

  .link_area>div {
    width: 45%;
    background-color: #fff;
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.06);
    border-radius: 20px;
    margin-bottom: 50px;
  }

  .link_area>div dl {
    padding: 0;
    margin: 2.2rem 0 1.8rem;
  }

  .link_area>div dt {
    font-size: 2.25rem;
  }

  .link_area>div dd {
    font-size: 1rem;
  }

  .link_area>div div {
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
    padding: .5rem 1.5rem;
    font-size: 1.125rem;
  }

  .link_area>div a div {
    padding-right: 54px;
  }

  .link_area>div a:hover div {
    background-position: 100% 0;
    transition: 0.3s;
  }

  .link_area>div a div::after {
    width: 22px;
    height: 22px;
  }

}