@charset "UTF-8";

.recru__main {
  display: flex;
  flex-direction: column;
  gap: 2.7777777778rem;
  margin-top: 10px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .recru__main {
    flex-direction: row;
    gap: 0;
    justify-content: space-between;
  }
}
.recru__main .cmn__gradi-button {
  flex: 0 0 auto;
}
@media screen and (min-width: 768px) {
  .recru__main .cmn__gradi-button {
    margin-left: 0;
    margin-right: 0;
  }
}
.recru__main .cmn__gradi-button > a {
  display: grid;
  grid-template-columns: 10rem 11.1111111111rem;
  justify-content: space-between;
  padding: 1.6666666667rem 1.4444444444rem 1.6666666667rem 1.8333333333rem;
  width: 26.7777777778rem;
}
@media screen and (min-width: 768px) {
  .recru__main .cmn__gradi-button > a {
    padding-left: 3.8888888889rem;
    padding-right: 4.4444444444rem;
    width: 33.3333333333rem;
  }
}
.recru__main .cmn__gradi-button > a span.label-1 {
  align-items: center;
  aspect-ratio: 1/1;
  background-color: #fffa81;
  border-radius: 50%;
  color: #505050;
  display: flex;
  height: 100%;
  justify-content: center;
  font-size: 1.8888888889rem;
  font-weight: 400;
  text-shadow: none;
}
.recru__main .cmn__gradi-button > a span.label-2 {
  display: flex;
  flex-direction: column;
  line-height: 1;
}
.recru__main .cmn__gradi-button > a span.label-2 span.year {
  font-size: 2rem;
  font-weight: 400;
  letter-spacing: 0.03em;
  margin-bottom: 0.3611111111em;
  text-shadow: none;
}
.recru__main .cmn__gradi-button > a span.label-2 span.title-l {
  font-size: 2.5555555556rem;
  font-weight: 400;
  letter-spacing: 0.05em;
}
.recru__main .cmn__gradi-button > a span.label-2 span.title-s {
  font-size: 1.3333333333rem;
  font-weight: 500;
  margin-top: 0.625em;
}


.cmn__gradi-button {
  background-color: #3375FF;
  border-radius: 1.1111111111rem;
  box-shadow: 2px 4px 0px rgba(0, 0, 0, 0.3);
  margin: 0 auto;
  overflow: hidden;
  position: relative;
  transition: filter 0.1s ease-out;
}
.cmn__gradi-button:active {
  filter: contrast(2.5);
}
.cmn__gradi-button .gradient {
  background: linear-gradient(#33DBFF, #3375FF);
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  transition: width 0.2s ease-in-out;
  width: 100%;
  z-index: 1;
}
.cmn__gradi-button .link {
  align-items: center;
  color: white;
  display: flex;
  font-weight: 700;
  height: 100%;
  justify-content: center;
  position: relative;
  text-align: center;
  text-decoration: none;
  text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.3);
  width: 100%;
  z-index: 2;
}
@media (pointer: fine) {
  .cmn__gradi-button .link:hover ~ .gradient {
    width: 0;
  }
}




