@charset "UTF-8";
/* 2026 */
@media screen and (min-width: 769px), print {
    .p-rec-career--lv2:after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        max-width: 1400px;
        height: 353px;
        margin: 0 auto;
        background: url(/assets/img/project/recruit/benefit/main_img-01_pc.jpg) no-repeat right center;
        background-size: auto 100%;
    }

.p-rec-career-section01 {
  width: 1040px;
  margin: 0 auto;
  padding: 114px 20px 125px;
}

.p-rec-career-section02 {
  width: 1040px;
  margin: 0 auto;
  padding: 0 20px;
}
}


.section_baseLeadTxt {
  font-size: 15px;
  font-weight: bold;
  line-height: 1.9;
  letter-spacing: 2px;
}
.section_baseTxt {
  line-height: 1.75;
  letter-spacing: 1px;
}

.p-rec-career-section02 + .p-rec-career-section02{
  margin-top: 80px;
}

.section-ttl-type01 {
  text-align: center;
  margin-bottom: 2em;
}

.section-ttl-type01 span {
  color: #e4002b;
  font-size: 25px;
  font-weight: bold;
  line-height: 2.15;
  letter-spacing: 3px;
  padding-bottom: 2px;
  border-bottom: 5px solid #e4002b;
}

.section-ttl-type02{
  color: #e4002b;
  font-size: 18px;
  font-weight: bold;
}

.flex-block {
  display: flex;
  flex-wrap: wrap;
  justify-content:center;
  gap: 32px;
  margin-bottom: 72px;
}
.flex-block li {
  width: 30%;
  position: relative;
  z-index: 1;
}
.flex-block--item {
  width: 100%;
  height: 100%;
  border: 1px solid #e4002b;
  padding: 32px 28px 24px;
  position: relative;
  border-radius: 24px;
  background: #ffffff;
  /* box-shadow: inset 8px 8px 0px 0 #e4002a14; */
}
.flex-block li::before{
  content: "";
  position: absolute;
  left: 50%;
  bottom: -12px;
  width: calc(100% - 10px);
  height: 100%;
  transform: translateX(-50%);

  /* border-right: 2px solid #e4002b;
  border-bottom: 2px solid #e4002b; */
  /* background-image: repeating-linear-gradient(180deg, #e4000212, #e4000212 6px, transparent 6px, transparent 9px); */
  background-color: #e4002a10;
  border-radius: 24px;
  pointer-events: none;
  z-index: -1;
}

.flex-block--item .--icon{
  width: 80px;
  height: 110px;
  margin: 0 auto;
}
.flex-block--item .--ttl{
  color:#e4002b;
  font-weight: bold;
  font-size: 18px;
  margin-bottom: .5em;
  text-align: center;
  line-height: 1.5;
}
.flex-block--item .--ttl span.s{
  font-size: 80%;
}

.flex-block--item .--txt{
  line-height: 1.75;
  letter-spacing: 1px;
  text-align: justify;
  text-justify: inter-ideograph;
}


.linkBtn02 {
  width: 522px;
  margin: 42px auto 72px;
}

.linkBtn02 a {
  position: relative;
  display: flex;
  width: 100%;
  height: 145px;
  color: #d3002b;
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: 3px;
  background: url(/assets/img/project/recruit/benefit/btn-contents_pc.png) no-repeat center top;
}

.linkBtn02 a p {
  display: flex;
  padding: 10px 0 30px 210px;
  align-items: center;
}



@media screen and (max-width: 768px) {
.p-rec-career--lv2 {
    position: relative;
    margin: 0px 0px 104px 0px;
    margin: 0vw 0vw 13.86667vw 0vw;
    padding: 18px 0px 27px 0px;
    padding: 4.8vw 0vw 7.2vw 0vw;
    background: url(/assets/img/project/recruit/benefit/main_img-01_sp.jpg) no-repeat center center;
    background-size: 100% auto;
  }
.section_baseLeadTxt {
  font-size: 4vw;
  line-height: 7.2vw;
  letter-spacing: 0.26667vw;
}
.section_baseTxt {
  font-size: 3.73333vw;
  line-height: 5.46667vw;
  letter-spacing: 0.13333vw;
}

.p-rec-career-section02 {
  margin: 0vw 5.33333vw ;
}

.p-rec-career-section02 + .p-rec-career-section02{
  margin-top: calc((42 / 390) * 100vw);
}

.section-ttl-type01 span {
  font-size: calc((24 / 390) * 100vw);
  border-width: 3px;
}
.section-ttl-type01 {
    margin-bottom: 1em;
}
.section-ttl-type02{
  font-size: calc((18 / 390) * 100vw);
}

.flex-block {
flex-direction: column;
  gap: calc((32 / 390) * 100vw);
  margin-bottom: calc((72 / 390) * 100vw);
}
.flex-block li {
  width: 100%;
}
.flex-block--item {
  width: 100%;
  height: 100%;
  padding: 6.153vw;
}

.flex-block--item .--icon{
  width: calc((80 / 390) * 100vw);
  height: calc((100 / 390) * 100vw);
}

.flex-block--item .--ttl{
  font-size: calc((18 / 390) * 100vw);
  margin-bottom: .5em;
}

.linkBtn02 {
  width: 85.8974vw;
  margin: 5.06667vw auto 8vw;
}

.linkBtn02 a {
  height: 29.2307vw;
  font-size: calc((17 / 390) * 100vw);
  line-height: 1.5;
  letter-spacing: 0.4vw;
  background: url(/assets/img/project/recruit/benefit/btn-contents_sp.png) no-repeat center top;
  background-size: 100% auto;
}
.linkBtn02 a p {
  display: flex;
  padding: 0 0 2.45vw 43vw;
  align-items: center;
}


}