@charset "utf-8";

.sec_01 .teacher {
    width: clamp( 200px, 50%, 600px );
    margin-inline: auto;
}


.sec_02 ol li{
  position: relative;
  background: var(--c_lbln);
  border-radius: var(--br20);
  padding: 1.5em 2em;
}
.sec_02 ol li:not(:last-child){
  margin-bottom: 5em;
  position: relative;
}
.sec_02 ol li:not(:last-child)::after{
  content: "";
  border-left: 4px dotted var(--c_bln);
  height: 2.5em;
  position: absolute;
  bottom: -3.5em;
  left: 50%;
  transform: translateX(-50%);
  margin: auto;
}




.sec_02 ol li .img_area{
  background: var(--c_main);
  width: 5em;
  height: 5em;
  border-radius: 50%;
  padding: 1em;
  display: flex;
  justify-content: center;
  align-items: center;
}
.sec_02 ol li .img_area img{
  width: 100%;
  max-width: 3em;
  height: auto;
  max-height: 3em;
}

.sec_02 ol li .txt_area{
  width: calc(100% - 5em - 2em);
}
.sec_02 ol li .txt_area h3{
  text-align: left;
  margin-bottom: .25em;
}
.sec_02 ol li .txt_area .step_num{
  display: block;
  width: fit-content;
  padding: .1em .5em;
  border-radius: 4px;
  background: var(--c_org);
  color: #fff;
  font-size: 80%;
}





.recruit_commmon .sh1{margin-bottom: 3em}
.recruit_commmon .box{
  background: #d1dd70;
  padding: 3.5em 3em 2.5em;
  border-radius: var(--br20);
  position: relative;
}

.recruit_commmon .box h3{
  min-width: 30%;
  padding: .5em;
  color: #fff;
  border-radius: 10em;
  position: absolute;
  top: -.25em;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  margin: auto;
  background: #6ebb1c;
  border: 2px solid #fff;
}


.recruit_commmon .rec_list{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: .75em;
}
.recruit_commmon .rec_list li{
  background: #eaf9be;
  padding: 1em;
  text-align: center;
  border-radius: var(--br10);
  display: flex;
  justify-content: center;
  align-items: center;
}
.recruit_commmon .rec_list li:nth-of-type(odd){
  background: #fff;
}


/*最後「他」用記述*/
.recruit_commmon .rec_list li:last-child{
  background: none;
}


.recruit_commmon .rec_list li .add{
  font-size: clamp(0.75rem, 0.659rem + 0.45vw, 1rem);
  display: inline-block;
}


@media (max-width: 799px){




.recruit_commmon .box{padding: 2.5em 2em 1.5em;}
.recruit_commmon .rec_list{grid-template-columns: repeat(2, 1fr);}




}


@media (max-width: 599px){

.sec_02 ol li{padding: 1em 1.5em;}
.sec_02 ol li .img_area{
  width: 4.5em;
  height: 4.5em;
  margin-left: 0;
}
.sec_02 ol li .txt_area{width: calc(100% - 4.5em - 1em);}


.recruit_commmon .box h3{min-width: 50%;}
.recruit_commmon .box{padding: 2.5em 1.5em 1.25em;}

}