#recruit {
  margin-bottom: 1rem;
}
#recruit .box_title {
  font-size: min(26px, 1.625vw);
  font-weight: 700;
  color: #FF0014;
  text-align: center;
  width: min(700px, 43.75vw);
  border: 1px solid #FF0014;
  padding: 9px 0;
  margin: 0 auto min(38px, 2.375vw);
  letter-spacing: 0.15em;
  font-feature-settings: "palt";
}
@media only screen and (max-width: 767px) {
  #recruit .box_title {
    line-height: 1.35;
    font-size: 4.8239895698vw;
    width: 79.1395045632vw;
    margin-bottom: 5.2151238592vw;
    padding: 2.2164276402vw 0 2.8683181226vw;
  }
}
#recruit .lead {
  margin: min(36px, 2.25vw) auto min(50px, 3.125vw);
}
@media only screen and (max-width: 767px) {
  #recruit .lead {
    margin: 5.2151238592vw auto 11.3428943937vw;
  }
}
@media print, screen and (min-width: 768px) {
  #recruit .lead--banner {
    width: min(1100px, 68.75vw);
    margin: auto;
  }
}
#recruit .lead--banner figure {
  position: relative;
}
@media only screen and (max-width: 767px) {
  #recruit .lead--banner figure {
    margin-bottom: 4.8239895698vw;
  }
}
#recruit .lead--banner figure figcaption {
  margin: auto;
}
@media print, screen and (min-width: 768px) {
  #recruit .lead--banner figure figcaption {
    position: absolute;
    top: 27%;
    right: 0;
    left: 0;
    width: min(580px, 36.25vw);
  }
}
#recruit .lead--banner figure figcaption a {
  display: block;
}
#recruit .lead--banner figure figcaption h4 {
  text-align: center;
  color: #fff;
  font-size: min(30px, 1.875vw);
  font-weight: 700;
  background: rgba(255, 0, 20, 0.7);
  padding: min(24px, 1.5vw) 0 min(18px, 1.125vw);
  line-height: 1.466;
}
@media only screen and (max-width: 767px) {
  #recruit .lead--banner figure figcaption h4 {
    font-size: 5.0847457627vw;
    padding: 3.9113428944vw 0;
  }
}
#recruit .lead--banner figure figcaption h4 span {
  font-size: min(34px, 2.125vw);
}
@media only screen and (max-width: 767px) {
  #recruit .lead--banner figure figcaption h4 span {
    font-size: 5.7627118644vw;
  }
}
#recruit .lead--banner .assistant_ttl {
  width: min(296px, 18.5vw);
  margin: min(38px, 2.375vw) auto;
}
@media only screen and (max-width: 767px) {
  #recruit .lead--banner .assistant_ttl {
    width: 57.887874837vw;
    margin: 5.6062581486vw auto 4.6936114733vw;
  }
}
#recruit .lead--link {
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 0 min(40px, 2.5vw);
}
@media print, screen and (min-width: 768px) {
  #recruit .lead--link {
    position: relative;
    top: max(-50px, -3.125vw);
  }
}
@media only screen and (max-width: 767px) {
  #recruit .lead--link {
    gap: 3.9113428944vw;
    width: 89.5697522816vw;
    margin: 0 auto;
  }
}
#recruit .lead--link li {
  width: min(300px, 18.75vw);
  border: 2px solid #fff;
  border-radius: 9999px;
  background: #FF0014;
  height: min(100px, 6.25vw);
  transition: 0.3s;
}
@media print, screen and (min-width: 768px) {
  #recruit .lead--link li:hover {
    background: #fff;
    border-color: #FF0014;
  }
  #recruit .lead--link li:hover a {
    color: #FF0014;
    transition: 0.3s;
  }
  #recruit .lead--link li:hover a::after {
    border-top-color: #FF0014;
    border-right-color: #FF0014;
  }
}
@media only screen and (max-width: 767px) {
  #recruit .lead--link li {
    width: 27.3794002608vw;
    height: 27.3794002608vw;
    padding: 0 0 5vw;
    aspect-ratio: 1/1;
  }
}
@media only screen and (max-width: 767px) {
  #recruit .lead--link li:last-of-type a::after {
    position: relative;
    top: 1vw;
  }
}
#recruit .lead--link li.glay {
  background: #6e6e6e;
}
@media print, screen and (min-width: 768px) {
  #recruit .lead--link li.glay:hover {
    border-color: #6e6e6e;
    background: #fff;
  }
  #recruit .lead--link li.glay:hover a {
    color: #6e6e6e;
  }
  #recruit .lead--link li.glay:hover a::after {
    border-top-color: #6e6e6e;
    border-right-color: #6e6e6e;
  }
}
#recruit .lead--link li.new-graduate {
  border-color: #FF0014;
  background: #fff;
}
@media print, screen and (min-width: 768px) {
  #recruit .lead--link li.new-graduate:hover {
    background: #FF0014;
  }
  #recruit .lead--link li.new-graduate:hover a {
    color: #fff;
  }
  #recruit .lead--link li.new-graduate:hover a::after {
    border-top-color: #fff;
    border-right-color: #fff;
  }
}
#recruit .lead--link li.new-graduate a {
  color: #FF0014;
}
#recruit .lead--link li.new-graduate a::after {
  border-top-color: #FF0014;
  border-right-color: #FF0014;
}
#recruit .lead--link li a {
  text-align: center;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: min(14px, 0.875vw) min(20px, 1.25vw) min(14px, 0.875vw) 0;
  height: 100%;
  font-size: min(24px, 1.5vw);
  font-weight: 700;
  line-height: 1.416;
  position: relative;
}
@media only screen and (max-width: 767px) {
  #recruit .lead--link li a {
    font-size: 4.1720990874vw;
    display: grid;
    grid-template-columns: 1fr;
    align-items: flex-end;
    padding: 0;
    justify-content: center;
    line-height: 1.275;
  }
}
#recruit .lead--link li a::after {
  content: "";
  display: block;
  width: min(10px, 0.625vw);
  height: min(10px, 0.625vw);
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  margin-right: min(5px, 0.3125vw);
  margin: auto;
  transition: 0.3s;
}
@media print, screen and (min-width: 768px) {
  #recruit .lead--link li a::after {
    position: absolute;
    top: 0;
    right: min(40px, 2.5vw);
    bottom: 0;
  }
}
@media only screen and (max-width: 767px) {
  #recruit .lead--link li a::after {
    width: 1.5645371578vw;
    height: 1.5645371578vw;
  }
}
#recruit .about {
  margin: 0 0 min(100px, 6.25vw);
}
@media only screen and (max-width: 767px) {
  #recruit .about {
    margin-bottom: 11.7340286832vw;
  }
}
@media only screen and (max-width: 767px) {
  #recruit .about .inner {
    width: 89.5697522816vw;
    margin: auto;
  }
}
#recruit .about h3 {
  text-align: center;
  font-size: min(30px, 1.875vw);
  font-weight: 700;
  color: #FF0014;
  margin-bottom: min(33px, 2.0625vw);
  letter-spacing: 0.15em;
  font-feature-settings: "palt";
}
@media only screen and (max-width: 767px) {
  #recruit .about h3 {
    font-size: 5.0847457627vw;
    line-height: 1.435;
    margin-bottom: 2.4771838331vw;
  }
}
#recruit .about p {
  text-align: center;
  font-size: min(16px, 1vw);
  font-weight: 500;
  line-height: 1.875;
  margin-bottom: min(73px, 4.5625vw);
}
@media only screen and (max-width: 767px) {
  #recruit .about p {
    font-size: 3.3898305085vw;
    line-height: 1.92;
    text-align: left;
  }
}
@media only screen and (max-width: 767px) {
  #recruit .about p {
    margin-bottom: 8.8657105606vw;
    letter-spacing: 0.05em;
    line-height: 1.847;
  }
}
@media only screen and (max-width: 767px) {
  #recruit .about--single .box_title {
    margin-bottom: 5.7366362451vw;
  }
}
#recruit .about--single ol li {
  counter-increment: mycounter;
  display: flex;
  align-items: center;
  margin-bottom: min(15px, 0.9375vw);
  line-height: 1.66;
  font-size: min(18px, 1.125vw);
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  #recruit .about--single ol li {
    font-size: 3.7809647979vw;
    line-height: 1.72;
    margin-bottom: 2.6075619296vw;
    width: 100%;
    align-items: center;
    letter-spacing: 0.02em;
  }
}
#recruit .about--single ol li::before {
  content: counter(mycounter, decimal-leading-zero);
  width: min(46px, 2.875vw);
  height: min(46px, 2.875vw);
  background: #FF0014;
  color: #fff;
  text-align: center;
  line-height: min(46px, 2.875vw);
  display: block;
  margin-right: min(15px, 0.9375vw);
  border-radius: 999999px;
}
@media only screen and (max-width: 767px) {
  #recruit .about--single ol li::before {
    width: 8.3441981747vw;
    min-width: 8.3441981747vw;
    height: 8.3441981747vw;
    line-height: 8.3441981747vw;
    font-size: 3.9113428944vw;
    margin-right: 1.9556714472vw;
    position: relative;
  }
}
#recruit .about--single p {
  text-align: center;
  font-size: min(16px, 1vw);
  font-weight: 500;
  line-height: 1.875;
  margin-bottom: min(5px, 0.3125vw);
}
@media only screen and (max-width: 767px) {
  #recruit .about--single p {
    font-size: 3.3898305085vw;
    line-height: 1.92;
    text-align: left;
  }
}
@media only screen and (max-width: 767px) {
  #recruit .about--single p {
    margin-bottom: 2.0860495437vw;
    line-height: 1.85;
  }
}
#recruit .about--single p small {
  display: block;
  font-size: min(14px, 0.875vw);
  font-weight: 500;
}
@media only screen and (max-width: 767px) {
  #recruit .about--single p small {
    font-size: 3.1290743155vw;
    margin-top: 1.3037809648vw;
  }
}
#recruit .about--list {
  display: flex;
  justify-content: center;
}
@media only screen and (max-width: 767px) {
  #recruit .point {
    margin-bottom: 13.037809648vw;
  }
}
#recruit .point .point--content {
  margin: 0 0 min(80px, 5vw);
  padding: min(80px, 5vw) 0;
}
@media only screen and (max-width: 767px) {
  #recruit .point .point--content {
    padding: 9.6479791395vw 0 11.2125162973vw;
    margin-bottom: 10.4302477184vw;
  }
}
@media print, screen and (min-width: 768px) {
  #recruit .point .point--content#point2 .text-box {
    width: 39.6vw;
  }
}
#recruit .point .point--content:nth-of-type(odd) {
  background: #fff2f3;
}
#recruit .point .point--content:nth-of-type(odd) .content-box::before {
  right: 0;
}
#recruit .point .point--content:nth-of-type(odd) .title {
  background: #FF0014;
}
#recruit .point .point--content:nth-of-type(even) {
  background: #f2f2f2;
}
@media print, screen and (min-width: 768px) {
  #recruit .point .point--content:nth-of-type(even) .content-box::before {
    left: 0;
  }
}
@media only screen and (max-width: 767px) {
  #recruit .point .point--content:nth-of-type(even) .content-box::before {
    right: 0;
  }
}
#recruit .point .point--content:nth-of-type(even) .content-box .big-image {
  order: 3;
}
#recruit .point .point--content:nth-of-type(even) .content-box .text-box {
  order: 2;
}
#recruit .point .point--content:nth-of-type(even) .content-box .small-image {
  order: 1;
}
#recruit .point .point--content:nth-of-type(even) .title {
  background: #6e6e6e;
}
#recruit .point .point--content#point2 .content-box {
  margin-bottom: max(-70px, -4.375vw);
}
#recruit .point .point--content#point2 .target p {
  line-height: 1.35;
}
@media only screen and (max-width: 767px) {
  #recruit .point .point--content#point2 .target p {
    line-height: 1.714;
  }
}
@media only screen and (max-width: 767px) {
  #recruit .point .point--content#point2 .text-box h4 {
    font-feature-settings: "palt";
    padding-left: 2.2164276402vw;
  }
  #recruit .point .point--content#point2 .text-box p {
    letter-spacing: 0.015em;
    font-feature-settings: normal;
  }
}
#recruit .point--anchor {
  display: grid;
  grid-template-columns: -webkit-max-content -webkit-max-content;
  grid-template-columns: max-content max-content;
  align-items: stretch;
  justify-content: center;
  margin-bottom: min(80px, 5vw);
}
@media only screen and (max-width: 767px) {
  #recruit .point--anchor {
    grid-template-columns: 1fr;
    margin-bottom: 9.1264667536vw;
  }
}
#recruit .point--anchor li {
  counter-increment: mycounter;
  display: flex;
  align-items: stretch;
  font-size: min(20px, 1.25vw);
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  #recruit .point--anchor li {
    font-size: 4.1720990874vw;
    justify-content: center;
    line-height: 1.4;
    text-align: center;
  }
}
@media print, screen and (min-width: 768px) {
  #recruit .point--anchor li:not(:last-of-type) {
    margin-right: min(50px, 3.125vw);
  }
}
@media only screen and (max-width: 767px) {
  #recruit .point--anchor li:not(:last-of-type) {
    margin-bottom: 1.8252933507vw;
  }
}
#recruit .point--anchor li:last-of-type::after {
  content: "";
  display: block;
  width: 1px;
  height: 100%;
  background: #000;
  margin-left: min(50px, 3.125vw);
}
@media only screen and (max-width: 767px) {
  #recruit .point--anchor li:last-of-type::after {
    display: none;
  }
}
#recruit .point--anchor li::before {
  content: "";
  display: block;
  width: 1px;
  height: 100%;
  background: #000;
  margin-right: min(50px, 3.125vw);
}
@media only screen and (max-width: 767px) {
  #recruit .point--anchor li::before {
    display: none;
  }
}
#recruit .point--anchor li a {
  color: #4c4948;
}
#recruit .point--anchor li a:hover {
  text-decoration: underline;
}
#recruit .point--anchor li a::before {
  content: counter(mycounter, decimal-leading-zero);
  font-size: min(24px, 1.5vw);
  font-weight: 700;
  font-family: "Poppins";
  display: inline-block;
  margin-right: min(20px, 1.25vw);
}
@media only screen and (max-width: 767px) {
  #recruit .point--anchor li a::before {
    font-size: 5.0065189048vw;
    margin-right: 3.1290743155vw;
  }
}
#recruit .point--anchor li a span {
  font-size: 70%;
}
#recruit .point .title {
  text-align: center;
  height: min(50px, 3.125vw);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: min(50px, 3.125vw);
}
@media only screen and (max-width: 767px) {
  #recruit .point .title {
    height: 9.1264667536vw;
    margin-bottom: 7.0404172099vw;
  }
  #recruit .point .title.other {
    padding: 1.3037809648vw 0;
    height: auto;
  }
}
#recruit .point .title .num {
  font-family: "Poppins";
  font-size: min(67px, 4.1875vw);
  font-weight: 700;
  line-height: 1;
  margin: auto;
  right: 100%;
  width: min(140px, 8.75vw);
}
@media print, screen and (min-width: 768px) {
  #recruit .point .title .num {
    position: absolute;
    top: max(-20px, -1.25vw);
    bottom: 0;
  }
}
@media only screen and (max-width: 767px) {
  #recruit .point .title .num {
    width: auto;
    font-size: 12.3859191656vw;
    word-wrap: break-word;
    margin-right: 3.9113428944vw;
    line-height: 0.75;
  }
}
#recruit .point .title h3 {
  display: inline-block;
  position: relative;
  color: #fff;
  font-size: min(26px, 1.625vw);
  font-weight: 700;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 767px) {
  #recruit .point .title h3 {
    display: flex;
    text-align: left;
    align-items: center;
    font-size: 4.8239895698vw;
    letter-spacing: 0.15em;
    font-feature-settings: "palt";
    line-height: 1.513;
  }
}
#recruit .point .content-box {
  width: 100vw;
  margin: 0 calc(50% - 50vw);
  position: relative;
}
@media print, screen and (min-width: 768px) {
  #recruit .point .content-box {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
  }
}
#recruit .point .content-box::before {
  content: "";
  position: absolute;
  top: 0;
  width: 59.375vw;
  height: min(410px, 25.625vw);
  background: #fff;
}
@media only screen and (max-width: 767px) {
  #recruit .point .content-box::before {
    width: 94.7848761408vw;
    height: 100%;
  }
}
#recruit .point .content-box .big-image,
#recruit .point .content-box .small-image {
  position: relative;
}
#recruit .point .content-box .big-image {
  width: 43.758vw;
  height: 20.625vw;
  background: no-repeat top center/cover;
}
@media only screen and (max-width: 767px) {
  #recruit .point .content-box .big-image {
    width: 89.5697522816vw;
    height: 42.112125163vw;
    margin-bottom: 5.4758800522vw;
  }
}
#recruit .point .content-box .big-image.img1 {
  background-image: url("../img/recruit_info/point_img1.jpg");
}
#recruit .point .content-box .big-image.img4 {
  background-image: url("../img/recruit_info/point_img4.jpg");
}
#recruit .point .content-box .small-image {
  width: 12.442vw;
  height: 20.625vw;
  background: no-repeat top left/cover;
}
@media only screen and (max-width: 767px) {
  #recruit .point .content-box .small-image {
    display: none;
  }
}
#recruit .point .content-box .small-image.img2 {
  background-image: url("../img/recruit_info/point_img2.jpg");
}
#recruit .point .content-box .small-image.img3 {
  background-image: url("../img/recruit_info/point_img3.jpg");
}
@media print, screen and (min-width: 768px) {
  #recruit .point .content-box .small-image.img3 {
    width: min(250px, 15.625vw);
    height: min(280px, 17.5vw);
  }
}
#recruit .point .content-box .text-box {
  width: 42.8vw;
  padding: 2.5vw 2vw 0 2.5vw;
  margin-right: min(15px, 0.9375vw);
  position: relative;
}
@media only screen and (max-width: 767px) {
  #recruit .point .content-box .text-box {
    width: 79.1395045632vw;
    margin: 0 auto;
    padding: 0;
  }
}
#recruit .point .content-box .text-box h4 {
  font-size: min(22px, 1.375vw);
  font-weight: 700;
  margin-bottom: min(13px, 0.8125vw);
}
@media only screen and (max-width: 767px) {
  #recruit .point .content-box .text-box h4 {
    font-size: 4.1720990874vw;
    margin-bottom: 2.6075619296vw;
  }
}
#recruit .point .content-box .text-box p {
  text-align: center;
  font-size: min(16px, 1vw);
  font-weight: 500;
  line-height: 1.875;
  text-align: left;
}
@media only screen and (max-width: 767px) {
  #recruit .point .content-box .text-box p {
    font-size: 3.3898305085vw;
    line-height: 1.92;
    text-align: left;
  }
}
@media only screen and (max-width: 767px) {
  #recruit .point .content-box .text-box p {
    line-height: 1.85;
  }
}
#recruit .point .content-box .text-box p strong {
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  #recruit .point .content-box .text-box p.text-image1, #recruit .point .content-box .text-box p.text-image2 {
    padding: 0 calc(100% - 56.9752281617vw) 5.2151238592vw 0;
    position: relative;
    font-feature-settings: "palt";
  }
  #recruit .point .content-box .text-box p.text-image1::after, #recruit .point .content-box .text-box p.text-image2::after {
    content: "";
    position: absolute;
    width: 27.3794002608vw;
    height: 42.112125163vw;
    position: absolute;
    bottom: 0;
    left: 62.2vw;
    background: url("../img/recruit_info/point_img2.jpg") no-repeat top left/cover;
  }
}
@media only screen and (max-width: 767px) {
  #recruit .point .content-box .text-box p.text-image2 {
    padding: 0 calc(100% - 52.1512385919vw) 5.2151238592vw 0;
  }
  #recruit .point .content-box .text-box p.text-image2::after {
    width: 33.5071707953vw;
    height: 35.593220339vw;
    left: 56vw;
    background: url("../img/recruit_info/point_img3.jpg") no-repeat top center/cover;
  }
}
#recruit .point .content-box .text-box h5 {
  margin: min(20px, 1.25vw) 0 min(15px, 0.9375vw);
  font-size: min(20px, 1.25vw);
  font-weight: 700;
  color: #FF0014;
  position: relative;
}
#recruit .point .content-box .text-box h5::before, #recruit .point .content-box .text-box h5::after {
  content: "";
  display: inline-block;
  position: relative;
  width: 2px;
  height: min(25px, 1.5625vw);
  background: #ff0014;
  top: 0.3rem;
}
@media only screen and (max-width: 767px) {
  #recruit .point .content-box .text-box h5::before, #recruit .point .content-box .text-box h5::after {
    height: 5vw;
  }
}
#recruit .point .content-box .text-box h5::before {
  transform: rotate(-25deg);
  margin-right: 0.5rem;
}
#recruit .point .content-box .text-box h5::after {
  transform: rotate(25deg);
  margin-left: 0.5rem;
}
@media only screen and (max-width: 767px) {
  #recruit .point .content-box .text-box h5 {
    font-size: 3.9113428944vw;
    margin: 3.9113428944vw 0 1.9556714472vw;
  }
}
#recruit .point--list {
  display: flex;
  align-items: stretch;
  justify-content: center;
  position: relative;
  gap: min(38px, 2.375vw);
  margin: min(22px, 1.375vw) 0 min(32px, 2rem);
}
@media only screen and (max-width: 767px) {
  #recruit .point--list {
    margin: -1.9556714472vw auto 5.2151238592vw;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 3.9113428944vw;
    width: 89.5697522816vw;
  }
}
#recruit .point--list li {
  width: min(230px, 14.375vw);
  aspect-ratio: 1/1;
  background: url("../img/recruit_info/point-bg.svg") no-repeat top center/cover;
  padding: min(20px, 1.25vw) 0 0;
}
@media only screen and (max-width: 767px) {
  #recruit .point--list li {
    width: 42.7640156454vw;
    padding: 3.6505867014vw 0 0;
  }
  #recruit .point--list li:first-of-type {
    grid-column: 1/-1;
    justify-self: center;
  }
}
#recruit .point--list li img {
  width: min(68px, 4.25vw);
  height: min(78px, 4.875vw);
  display: block;
  margin: 0 auto min(8px, 0.5vw);
}
@media only screen and (max-width: 767px) {
  #recruit .point--list li img {
    width: 12.777053455vw;
    height: 14.3415906128vw;
    margin-bottom: 2.6075619296vw;
  }
}
#recruit .point--list li h5 {
  text-align: center;
  font-size: min(24px, 1.5vw);
  font-weight: 700;
  letter-spacing: 0.025em;
  line-height: 1.416;
}
@media only screen and (max-width: 767px) {
  #recruit .point--list li h5 {
    font-size: 4.3807040417vw;
  }
}
#recruit .point--list li h5.other {
  font-size: min(22px, 1.375vw);
}
@media only screen and (max-width: 767px) {
  #recruit .point--list li h5.other {
    font-size: 4.1720990874vw;
  }
}
#recruit .point--list li h5 small {
  display: block;
  font-size: min(16px, 1vw);
  font-weight: 500;
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  #recruit .point--list li h5 small {
    margin-top: 0.3rem;
  }
}
@media only screen and (max-width: 767px) {
  #recruit .point--list li h5 small {
    font-size: 3.1290743155vw;
  }
}
#recruit .point .target {
  width: min(800px, 50vw);
  margin: 0 auto min(30px, 1.875vw);
  display: flex;
  align-items: center;
  padding: min(10px, 0.625vw);
  border: 1px solid #666;
  background: #fff;
}
@media only screen and (max-width: 767px) {
  #recruit .point .target {
    align-items: stretch;
    width: 89.5697522816vw;
    padding: 2.6075619296vw;
    margin-bottom: 5.2151238592vw;
  }
}
#recruit .point .target .title {
  width: min(218px, 13.625vw);
  line-height: min(70px, 4.375vw);
  text-align: center;
  border-radius: min(15px, 0.9375vw);
  margin: 0 min(30px, 1.875vw) 0 0;
  background: #e6e6e6 !important;
  height: auto;
  font-size: min(18px, 1.125vw);
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  #recruit .point .target .title {
    width: 16.6883963494vw;
    line-height: 1.428;
    font-size: 3.6505867014vw;
    border-radius: 1.9556714472vw;
    margin-right: 2.6075619296vw;
    height: auto;
  }
}
#recruit .point .target p {
  font-size: min(18px, 1.125vw);
  font-weight: 500;
  line-height: 1.6;
}
@media only screen and (max-width: 767px) {
  #recruit .point .target p {
    font-size: 3.6505867014vw;
  }
}
#recruit .point .target p small {
  display: block;
  font-size: min(14px, 0.875vw);
}
@media only screen and (max-width: 767px) {
  #recruit .point .target p small {
    font-size: 3.1290743155vw;
    margin-top: 1.3037809648vw;
  }
}
#recruit .link_list {
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: min(20px, 1.25vw);
}
@media only screen and (max-width: 767px) {
  #recruit .link_list {
    width: 51.1082138201vw;
    margin: auto;
    flex-wrap: wrap;
    gap: 5.2151238592vw;
  }
}
#recruit .link_list li {
  width: min(237px, 14.8125vw);
  line-height: min(55px, 3.4375vw);
  border-radius: 9999px;
  background: #FF0014;
  border: 2px solid #FF0014;
  transition: 0.3s;
}
@media print, screen and (min-width: 768px) {
  #recruit .link_list li:hover {
    background: #fff;
  }
  #recruit .link_list li:hover a {
    color: #FF0014;
  }
  #recruit .link_list li:hover a::after {
    border-top-color: #FF0014;
    border-right-color: #FF0014;
  }
}
@media only screen and (max-width: 767px) {
  #recruit .link_list li {
    width: 100%;
    line-height: 11.7340286832vw;
  }
}
#recruit .link_list li.glay {
  background: #6e6e6e;
  border: 2px solid #6e6e6e;
}
@media print, screen and (min-width: 768px) {
  #recruit .link_list li.glay:hover {
    background: #fff;
  }
  #recruit .link_list li.glay:hover a {
    color: #6e6e6e;
  }
  #recruit .link_list li.glay:hover a::after {
    border-top-color: #6e6e6e;
    border-right-color: #6e6e6e;
  }
}
#recruit .link_list li.new-graduate {
  border-color: #FF0014;
  background: #fff;
}
@media print, screen and (min-width: 768px) {
  #recruit .link_list li.new-graduate:hover {
    background: #FF0014;
  }
  #recruit .link_list li.new-graduate:hover a {
    color: #fff;
  }
  #recruit .link_list li.new-graduate:hover a::after {
    border-top-color: #fff;
    border-right-color: #fff;
  }
}
#recruit .link_list li.new-graduate a {
  color: #FF0014;
}
#recruit .link_list li.new-graduate a::after {
  border-top-color: #FF0014;
  border-right-color: #FF0014;
}
#recruit .link_list li a {
  display: block;
  color: #fff;
  height: 100%;
  position: relative;
  text-align: center;
  font-size: min(16px, 1vw);
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  #recruit .link_list li a {
    font-size: 3.4550195567vw;
  }
}
#recruit .link_list li a::after {
  content: "";
  width: min(10px, 0.625vw);
  height: min(10px, 0.625vw);
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: min(20px, 1.25vw);
  bottom: 0;
  margin: auto;
}
@media only screen and (max-width: 767px) {
  #recruit .link_list li a::after {
    width: 2.3468057366vw;
    height: 2.3468057366vw;
    right: 3.9113428944vw;
    border-top-width: 2px;
    border-right-width: 2px;
  }
}
#recruit .pbc-link {
  margin-bottom: min(100px, 6.25vw);
}
@media only screen and (max-width: 767px) {
  #recruit .pbc-link {
    width: 91.5254237288vw;
    margin: 0 0 12.5162972621vw 5.2151238592vw;
  }
}
#recruit .pbc-link .inner {
  background: url("../img/recruit_info/pbc-bg.png") no-repeat top right/contain, repeating-linear-gradient(-45deg, #f4f4f4, #f4f4f4 12px, #fafafa 12px, #fafafa 24px);
  border: 1px solid #b2b2b2;
  border-radius: min(20px, 1.25vw);
  padding: min(25px, 1.5625vw) min(50px, 3.125vw) min(50px, 3.125vw);
  position: relative;
  max-width: 1100px;
}
@media only screen and (max-width: 767px) {
  #recruit .pbc-link .inner {
    padding: 4.5632333768vw 5.2151238592vw 13.8200782269vw;
    background: url("../img/recruit_info/sp/pbc-bg.png") no-repeat top center/cover, repeating-linear-gradient(-45deg, #f4f4f4, #f4f4f4 12px, #fafafa 12px, #fafafa 24px);
    border-radius: 2.6075619296vw;
    width: 89.7001303781vw;
    margin: 0;
  }
}
#recruit .pbc-link .inner::before {
  content: "";
  background: url("../img/recruit_info/pbc-box-bg.png") no-repeat top center/cover;
  border-radius: min(20px, 1.25vw);
  position: absolute;
  right: max(-15px, -0.9375vw);
  bottom: max(-10px, -0.625vw);
  width: 100%;
  height: 100%;
  z-index: -1;
}
@media only screen and (max-width: 767px) {
  #recruit .pbc-link .inner::before {
    bottom: -1.6949152542vw;
    right: -2.0860495437vw;
    border-radius: 2.6075619296vw;
  }
}
#recruit .pbc-link .title {
  margin-bottom: min(25px, 1.5625vw);
}
@media only screen and (max-width: 767px) {
  #recruit .pbc-link .title {
    margin-bottom: 3.520208605vw;
  }
}
#recruit .pbc-link .title h2 {
  color: #FF0014;
  display: flex;
  align-items: center;
  margin-left: min(138px, 8.625vw);
  letter-spacing: 0.02em;
  font-size: min(30px, 1.875vw);
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  #recruit .pbc-link .title h2 {
    font-size: 5.0847457627vw;
    justify-content: center;
    line-height: 1.435;
    letter-spacing: 0.15em;
    font-feature-settings: "palt";
    margin: 0;
    text-align: center;
  }
}
#recruit .pbc-link .title h2::before, #recruit .pbc-link .title h2::after {
  content: "";
  display: block;
  width: min(38px, 2.375vw);
  margin: 0 min(24px, 1.5vw);
}
@media only screen and (max-width: 767px) {
  #recruit .pbc-link .title h2::before, #recruit .pbc-link .title h2::after {
    width: 6.3885267275vw;
    margin: 0 4.6936114733vw;
    margin: 0;
  }
}
#recruit .pbc-link .title h2::before {
  background: url("../img/recruit_info/pbc-icon1.svg") no-repeat center/cover;
  height: min(56px, 3.5vw);
}
@media only screen and (max-width: 767px) {
  #recruit .pbc-link .title h2::before {
    height: 9.517601043vw;
    margin-right: 3.9113428944vw;
  }
}
#recruit .pbc-link .title h2::after {
  background: url("../img/recruit_info/pbc-icon2.svg") no-repeat center/cover;
  height: min(60px, 3.75vw);
}
@media only screen and (max-width: 767px) {
  #recruit .pbc-link .title h2::after {
    height: 9.9087353325vw;
    margin: 0 1.3037809648vw 0 3.9113428944vw;
  }
}
#recruit .pbc-link dl {
  width: min(610px, 38.125vw);
}
@media only screen and (max-width: 767px) {
  #recruit .pbc-link dl {
    width: 100%;
  }
}
#recruit .pbc-link dl dt {
  font-size: min(22px, 1.375vw);
  font-weight: 700;
  margin-bottom: min(15px, 0.9375vw);
}
@media only screen and (max-width: 767px) {
  #recruit .pbc-link dl dt {
    font-size: 4.1720990874vw;
    margin-bottom: 1.9556714472vw;
    text-align: center;
    font-feature-settings: "palt";
    letter-spacing: 0.025em;
  }
}
#recruit .pbc-link dl dd p {
  text-align: center;
  font-size: min(16px, 1vw);
  font-weight: 500;
  line-height: 1.875;
  text-align: left;
  margin-bottom: min(20px, 1.25vw);
}
@media only screen and (max-width: 767px) {
  #recruit .pbc-link dl dd p {
    font-size: 3.3898305085vw;
    line-height: 1.92;
    text-align: left;
  }
}
@media only screen and (max-width: 767px) {
  #recruit .pbc-link dl dd p {
    margin-bottom: 2.6075619296vw;
    line-height: 1.846;
    letter-spacing: 0.025em;
  }
}
@media only screen and (max-width: 767px) {
  #recruit .pbc-link dl dd .link_list {
    margin: 0;
  }
}
@media print, screen and (min-width: 768px) {
  #recruit .pbc-link dl dd .link_list li a:hover::after {
    background-image: url("../img/recruit_info/blank-icon-red.svg");
  }
}
@media only screen and (max-width: 767px) {
  #recruit .pbc-link dl dd .link_list li a {
    padding: 0 0 0 13.037809648vw;
    text-align: left;
  }
}
#recruit .pbc-link dl dd .link_list li a::after {
  width: min(16px, 1vw);
  height: min(16px, 1vw);
  background: url("../img/recruit_info/blank-icon.svg") no-repeat center/cover;
  right: min(25px, 1.5625vw);
  transform: inherit;
  border: none;
}
@media only screen and (max-width: 767px) {
  #recruit .pbc-link dl dd .link_list li a::after {
    width: 3.6505867014vw;
    height: 3.6505867014vw;
    right: 5.2151238592vw;
  }
}
#recruit .plage-info .title {
  margin-bottom: min(20px, 1.25vw);
}
@media only screen and (max-width: 767px) {
  #recruit .plage-info .title {
    margin-bottom: 5.2151238592vw;
  }
}
#recruit .plage-info .title h3 {
  text-align: center;
  font-size: min(18px, 1.125vw);
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  #recruit .plage-info .title h3 {
    font-size: 3.9113428944vw;
  }
}
#recruit .plage-info .info-movie {
  width: min(600px, 37.5vw);
  margin: auto;
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
}
@media only screen and (max-width: 767px) {
  #recruit .plage-info .info-movie {
    width: 89.5697522816vw;
  }
}
#recruit .plage-info .info-movie .single {
  width: min(270px, 16.875vw);
}
@media only screen and (max-width: 767px) {
  #recruit .plage-info .info-movie .single {
    width: 42.3728813559vw;
  }
}
#recruit .plage-info .info-movie .single:nth-of-type(even) {
  margin-left: auto;
}
#recruit .plage-info .info-movie .single figure .thumb {
  position: relative;
  margin-bottom: min(5px, 0.3125vw);
}
@media only screen and (max-width: 767px) {
  #recruit .plage-info .info-movie .single figure .thumb {
    margin-bottom: 1.9556714472vw;
  }
}
#recruit .plage-info .info-movie .single figure .thumb::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: min(38px, 2.375vw);
  height: min(38px, 2.375vw);
  background: url("../img/recruit_info/play-icon.svg") no-repeat center/cover;
  margin: auto;
}
@media only screen and (max-width: 767px) {
  #recruit .plage-info .info-movie .single figure .thumb::after {
    width: 5.9973924381vw;
    height: 5.9973924381vw;
  }
}
#recruit .plage-info .info-movie .single figure figcaption {
  text-align: center;
  font-size: min(16px, 1vw);
  font-weight: 500;
  line-height: 1.875;
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  #recruit .plage-info .info-movie .single figure figcaption {
    font-size: 3.3898305085vw;
    line-height: 1.92;
    text-align: left;
  }
}
@media only screen and (max-width: 767px) {
  #recruit .plage-info .info-movie .single figure figcaption {
    text-align: center;
  }
}