/*--------------------
recruit.css
--------------------*/


.l-block01{
  padding:9.0rem 0 18.0rem;
}
.l-block01-inner{
  max-width:calc(1920px + 3.0rem);
  width:100%;
  margin:0 auto;
  padding:0 3.0rem 0 0;
}
.l-block01-table{
  width:100%;
  display:table;
}
.l-block01-table > div{
  display:table-cell;
  vertical-align: middle;
  text-align: left;
}
.l-block01-table-left{
  width:101.0rem;
}
.l-block01-table-left picture{
  
}
.l-block01-table-left picture img{
  width:86.0rem;
}
.l-block01-table-right{
  width:91.0rem;
}
.l-block01-table-right h2{
  text-align: left;
  color:#437dd5;

  font-size: clamp(29px, 3.9rem, 39px);
  font-weight:700;
  line-height: 1.53;
  letter-spacing: 0.05em;
}
.l-block01-table-right p{
  padding-top:6.0rem;
  text-align: justify;
  color:#333333;

  font-size:clamp(14px, 1.7rem, 17px);
  font-weight:400;
  line-height: 2.35;
  letter-spacing: 0.05em;
}
.l-block01-table-right p span{
  color:#437dd5;

  font-size:clamp(14px, 1.7rem, 17px);
  font-weight:700;
  line-height: 2.35;
  letter-spacing: 0.05em;
}


@media screen and (max-width: 767.5px) {
  .l-block01{
    padding:9.0rem 0 18.0rem;
  }
  .l-block01-inner{
    max-width:100%;
    width:100%;
    margin:0 auto;
    padding:0 3.0rem;
  }
  .l-block01-table{
    width:100%;
    display:block;
    display:-webkit-box;
    display: -webkit-flex;
    display:-ms-flexbox;
    display: flex;
    -webkit-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
  }
  .l-block01-table > div{
    width:100%;
    display:block;
    vertical-align: middle;
    text-align: left;
  }
  .l-block01-table-left{
    width:100%;
    display:block;
    -webkit-box-ordinal-group:2;
    -ms-flex-order:2;
    -webkit-order:2;
    order:2;
    margin-left:-3.0rem;
  }
  .l-block01-table-left picture{

  }
  .l-block01-table-left picture img{
    width:100%;
  }
  .l-block01-table-right{
    width:100%;
    display:block;
    -webkit-box-ordinal-group:1;
    -ms-flex-order:1;
    -webkit-order:1;
    order:1;
  }
  .l-block01-table-right h2{
    text-align: left;
    color:#437dd5;

    font-size: 4.8rem;
    font-weight:700;
    line-height: 1.53;
    letter-spacing: 0.05em;
  }
  .l-block01-table-right p{
    padding-top:6.0rem;
    text-align: justify;
    color:#333333;

    font-size:2.6rem;
    font-weight:400;
    line-height: 2.35;
    letter-spacing: 0.05em;
  }
  .l-block01-table-right p span{
    color:#437dd5;

    font-size:2.6rem;
    font-weight:700;
    line-height: 2.35;
    letter-spacing: 0.05em;
  }
}


.l-block02{
  padding-bottom:14.0rem;
}
.l-block02-inner{
  max-width:calc(1200px + 6.0rem);
  width:100%;
  margin:0 auto;
  padding:0 3.0rem;
  text-align: center;
}
.l-block02-inner > h2{
  padding-bottom:1.0rem;
  border-bottom:0.5rem solid #cccccc;
  display:inline-block;
  text-align: center;
  color:#333333;

  font-size: clamp(29px, 3.9rem, 39px);
  font-weight:700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.l-block02-inner > ul{
  padding-top:10.0rem;
  display:block;
  text-align: left;
  font-size:0;
}
.l-block02-inner > ul li{
  width:33.3%;
  display:inline-block;
  vertical-align: top;
}
.l-block02-inner > ul li:nth-of-type(3n+1){
  padding-right:2.0rem;
}
.l-block02-inner > ul li:nth-of-type(3n+2){
  padding-left:1.0rem;
  padding-right:1.0rem;
}
.l-block02-inner > ul li:nth-of-type(3n){
  padding-left:2.0rem;
}
.l-block02-inner > ul li a{
  display:block;
  border-radius:4.5rem;
  padding:2.2rem 2.2rem;
  text-align: center;
  background:#f4f9ff;
  color:#808080;

  font-size:clamp(14px, 1.8rem, 18px);
  font-weight:700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.l-block02-inner > ul li a.current{
  background:#437dd5;
  color:#FFFFFF;
}
.l-block02-wrapper{
  max-width:calc(1200px + 6.0rem);
  width:100%;
  margin:0 auto;
  padding:0 3.0rem;
  text-align: center;
}
.l-block02-block{
  padding-top:9.0rem;
}
.l-block02-block h3{
  background:#f4f9ff;
  border-left:5px solid #f4f9ff;
  border-image: linear-gradient(to bottom, #a4348d, #6996dd) 1;
  padding:2.5rem 6.0rem;
  text-align: left;
  color:#437dd5;

  font-size: clamp(22px, 3.0rem, 30px);
  font-weight:700;
  line-height: 1.2;
  letter-spacing: 0.05em;
  
  margin-bottom:5.0rem;
}
.l-block02-block h3 span{
  display:inline-block;
  padding-left:0.8rem;
  vertical-align: bottom;
  text-align: left;
  color:#4d4d4d;

  font-size:clamp(14px, 1.7rem, 17px);
  font-weight:700;
  line-height: 1.47;
  letter-spacing: 0.05em;
}
.l-block02-block table{
  width:100%;
}
.l-block02-block table tr{
  border-top:1px solid #b3b3b3;
}
.l-block02-block table tr:last-of-type{
  border-bottom:1px solid #b3b3b3;
}
.l-block02-block table tr th{
  width:25.5rem;
  text-align: left;
  vertical-align: top;
  padding:4.5rem 4.5rem 0 0;
  text-align: left;
  color:#437dd5;

  font-size:clamp(14px, 1.7rem, 17px);
  font-weight:700;
  line-height: 1.47;
  letter-spacing: 0.05em;
}
.l-block02-block table tr td{
  width:auto;
  vertical-align: top;
  padding:4.0rem 0 4.5rem;
  text-align: left;
  color:#333333;

  font-size:clamp(14px, 1.7rem, 17px);
  font-weight:400;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block02-block table tr td span{
  padding-top:1.5rem;
  padding-bottom:1.0rem;
  display:block;
  text-align: left;
  color:#333333;

  font-size:clamp(14px, 1.7rem, 17px);
  font-weight:700;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block02-block table tr td ul{
  display:block;
}
.l-block02-block table tr td ul li{
  padding:0.5rem 0;
  display:block;
  border-bottom: 3px dashed #f2f2f2;
  text-align: left;
  color:#333333;

  font-size:clamp(14px, 1.7rem, 17px);
  font-weight:400;
  line-height: 1.75;
  letter-spacing: 0.05em;
  
  text-indent:-0.8rem;
  padding-left:0.8rem;
}
.l-block02-block table tr td ul li:last-of-type{
  border-bottom: none;
}


@media screen and (max-width: 767.5px) {
  .l-block02{
    padding-bottom:14.0rem;
  }
  .l-block02-inner{
    max-width:100%;
    width:100%;
    margin:0 auto;
    padding:0 3.0rem;
    text-align: center;
  }
  .l-block02-inner > h2{
    padding-bottom:1.0rem;
    border-bottom:0.5rem solid #cccccc;
    display:inline-block;
    text-align: center;
    color:#333333;

    font-size: 4.8rem;
    font-weight:700;
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
  .l-block02-inner > ul{
    padding-top:10.0rem;
    display:block;
    text-align: left;
    font-size:0;
  }
  .l-block02-inner > ul li{
    width:50%;
    display:inline-block;
    vertical-align: top;
    padding-bottom:3.0rem;
  }
  .l-block02-inner > ul li:nth-of-type(3n+1){
    padding-right:0;
  }
  .l-block02-inner > ul li:nth-of-type(3n+2){
    padding-left:0;
    padding-right:0;
  }
  .l-block02-inner > ul li:nth-of-type(3n){
    padding-left:0;
  }
  .l-block02-inner > ul li:nth-of-type(2n+1){
    padding-right:1.5rem;
  }
  .l-block02-inner > ul li:nth-of-type(2n){
    padding-left:1.5rem;
  }
  .l-block02-inner > ul li a{
    display:block;
    border-radius:4.5rem;
    padding:2.2rem 2.2rem;
    text-align: center;
    background:#f4f9ff;
    color:#808080;

    font-size:2.6rem;
    font-weight:700;
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
  .l-block02-inner > ul li a.current{
    background:#437dd5;
    color:#FFFFFF;
  }
  .l-block02-wrapper{
    max-width:100%;
    width:100%;
    margin:0 auto;
    padding:0 0;
    text-align: center;
  }
  .l-block02-block{
    padding-top:9.0rem;
  }
  .l-block02-block h3{
    background:#f4f9ff;
    border-left:5px solid #f4f9ff;
    border-image: linear-gradient(to bottom, #a4348d, #6996dd) 1;
    padding:2.5rem 5.0rem;
    text-align: left;
    color:#437dd5;

    font-size: 3.8rem;
    font-weight:700;
    line-height: 1.2;
    letter-spacing: 0.05em;

    margin-bottom:5.0rem;
  }
  .l-block02-block h3 span{
    display:block;
    padding-left:0.8rem;
    vertical-align: bottom;
    text-align: left;
    color:#4d4d4d;

    font-size:2.6rem;
    font-weight:700;
    line-height: 1.47;
    letter-spacing: 0.05em;
  }
  .l-block02-block table{
    width:100%;
    display:block;
  }
  .l-block02-block table tbody{
    width:100%;
    display:block;
  }
  .l-block02-block table tr{
    width:100%;
    display:block;
    border-top:1px solid #b3b3b3;
  }
  .l-block02-block table tr:last-of-type{
    border-bottom:1px solid #b3b3b3;
  }
  .l-block02-block table tr th{
    width:100%;
    display:block;
    text-align: left;
    vertical-align: top;
    padding:4.5rem 4.5rem 0 0;
    text-align: left;
    color:#437dd5;

    font-size:2.8rem;
    font-weight:700;
    line-height: 1.47;
    letter-spacing: 0.05em;
  }
  .l-block02-block table tr td{
    width:100%;
    display:block;
    vertical-align: top;
    padding:2.0rem 0 4.5rem;
    text-align: left;
    color:#333333;

    font-size:2.6rem;
    font-weight:400;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block02-block table tr td span{
    padding-top:1.5rem;
    padding-bottom:1.0rem;
    display:block;
    text-align: left;
    color:#333333;

    font-size:2.6rem;
    font-weight:700;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block02-block table tr td ul{
    display:block;
  }
  .l-block02-block table tr td ul li{
    padding:0.5rem 0;
    display:block;
    border-bottom: 3px dashed #f2f2f2;
    text-align: left;
    color:#333333;

    font-size:2.6rem;
    font-weight:400;
    line-height: 1.75;
    letter-spacing: 0.05em;

    text-indent:-1.7rem;
    padding-left:1.7rem;
  }
  .l-block02-block table tr td ul li:last-of-type{
    border-bottom: none;
  }
}


.l-block03{
  padding:4.0rem 3.0rem;
  background:#4d4d4d;
}
.l-block03-inner{
  
}
.l-block03-btn{
  text-align: center;
}
.l-block03-btn a{
  min-width:30.0rem;
  display:inline-block;
  background: linear-gradient(90deg, #6996dd 0%, #a4348d 100%);
  border-radius:6.0rem;
  padding:2.5rem 5.0rem;
  text-align: left;
}
.l-block03-btn a span{
  display:block;
  background: url("../images/common/common-icon01_pc.png") right center no-repeat transparent;
  background-size: 1.8rem auto;
  min-height:1.8rem;
  padding-right:0;
  text-align: center;
  color:#FFFFFF;

  font-size:clamp(14px, 1.7rem, 17px);
  font-weight:700;
  line-height: 1.75;
  letter-spacing: 0.05em;
}


@media screen and (max-width: 767.5px) {
  .l-block03{
    padding:4.0rem 3.0rem;
    background:#4d4d4d;
  }
  .l-block03-inner{

  }
  .l-block03-btn{
    text-align: center;
  }
  .l-block03-btn a{
    min-width:30.0rem;
    display:inline-block;
    background: linear-gradient(90deg, #6996dd 0%, #a4348d 100%);
    border-radius:6.0rem;
    padding:2.5rem 5.0rem;
    text-align: left;
  }
  .l-block03-btn a span{
    background: url(../images/common/common-icon01_pc.png) right top 1.0rem no-repeat transparent;
    background-size: 2.7rem auto;
    min-height: 2.7rem;
    padding-right: 5.8rem;
    text-align: center;
    color: #FFFFFF;
    
    font-size: 2.8rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
}



@media screen and (max-width: 767.5px) {
  
}



@media screen and (max-width: 767.5px) {
  
}








