@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap');

/* top work */
.mainKV{
  padding: 100px 40px 0;
  overflow-x: hidden;
}
@media screen and (max-width: 767.5px) {
  .mainKV{
    padding: 0;
  }
}
.template-work .mainKV{
  background: url(../img/work/top_kv_bg.png) center top / cover no-repeat;
}
@media screen and (max-width: 767.5px) {
  .template-work .mainKV{
    background: url(../img/work/top_kv_bg_sp.png) center bottom / cover no-repeat;
    padding-top: 20px;
  }
}


.template-about .mainKV{
  background: url(../img/recruit/top_kv_bg.png) center top / cover no-repeat;
}
@media screen and (max-width: 767.5px) {
  .template-about .mainKV{
    background: url(../img/recruit/top_kv_bg_sp.png) center bottom / cover no-repeat;
    padding-top: 20px;
  }
}



.template-work .mainKV.lower,
.template-about .mainKV.lower{
  padding: 56px 40px;
}
@media screen and (max-width: 767.5px) {
  .template-work .mainKV.lower,
  .template-about .mainKV.lower{
    padding: 40px 15px;
  }
}


.mainKV .mainKVInner{
  display: flex;
  justify-content: space-between;
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
}
@media screen and (max-width: 767.5px) {
  .mainKV .mainKVInner{
    flex-flow: column-reverse;
    align-items: center;
  }
}

.mainKV.lower .mainKVInner{
  align-items: center;
}
@media screen and (max-width: 767.5px) {
  .template-work .mainKV.lower .mainKVInner,
  .template-about .mainKV.lower .mainKVInner{
    flex-flow: column;
    gap: 40px;
  }
}


.mainKV .mainKVContent{
  width: fit-content;
  padding-bottom: 55px;
  z-index: 5;
}
@media screen and (max-width: 767.5px) {
  .mainKV .mainKVContent{
    padding: 0 15px 20px;
    margin-top: -7vw;
  }

  .template-b2b .mainKV .mainKVContent{
    margin-top: 25px;
    width: 100%;
  }
}

.mainKVContent .mainKVTitle{
  font-size: 4.8rem;
  position: relative;
}
@media screen and (max-width: 767.5px) {
  .mainKVContent .mainKVTitle{
    font-size: 3.4rem;
    text-align: center;
  }
}

.template-work .mainKVContent .mainKVTitle:before{
  content: "";
  position: absolute;
  top: -0.8em;
  left: 2em;
  display: block;
  background: url(../img/work/top_kv_lead.svg) no-repeat;
  width: 350px;
  height: 100%;
}
@media screen and (max-width: 767.5px) {
  .template-work .mainKVContent .mainKVTitle:before{
    background: url(../img/work/top_kv_lead_sp.svg) center top / 100% auto no-repeat;
    left: 0;
    top: -2em;
    right: 0;
    margin: auto;
    width: 90%;
    height: 125%;
  }
}
.template-work .mainKV.lower .mainKVContent .mainKVTitle:before{
  display: none;
}
.mainKVContent .mainKVTitle > p{
  position: relative;
  z-index: 1;
  font-weight: 700;
}

@media screen and (min-width: 767.5px) {
  .sTOP .mainKVContent .mainKVTitle > p,
  .sTOP .mainKVContent .mainKVLead{
    color: #fff;
  }
}

.mainKVContent .mainKVTitle ruby rt{
  font-size: 1.6rem;
  letter-spacing: -1.4em;
  position: relative;
  top: -0.45em;
  left: 0.3em;
}
@media screen and (max-width: 767.5px) {
  .mainKVContent .mainKVTitle ruby rt{
    font-size: 1.2rem;
  }
  @supports (-webkit-touch-callout: none) {
    .mainKVContent .mainKVTitle ruby rt{
      transform: translateY(0.6em);
    }
  }

}

.mainKVContent .mainKVLead{
  font-size: 1.8rem;
  line-height: 1.8em;
  font-weight: 700;
  margin-top: 20px;
}
.template-b2b .mainKVContent .mainKVLead{
  font-size: 1.8rem;
  font-weight: 500;
}
@media screen and (max-width: 767.5px) {
  .mainKVContent .mainKVLead{
    text-align: center;
    font-size: 1.4rem;
    margin-top: 10px;
  }
  .template-b2b .mainKVContent .mainKVLead{
    font-size: 1.6rem;
  }
}
.mainKVBtn{
  margin-top: 50px;
  max-width: 460px;
}
@media screen and (max-width: 767.5px) {
  .mainKVBtn{
    margin-top: 25px;
  }
}
.template-b2b .mainKVBtn{
  max-width: 400px;
}
@media screen and (max-width: 767.5px) {
  .template-b2b .mainKVBtn{
    max-width: 345px;
    margin-left: auto;
    margin-right: auto;
  }
}

.mainKVBtn .lead{
  font-size: 1.5rem;
  text-align: center;
  margin-bottom: 10px;
  line-height: 1em;
}
@media screen and (max-width: 1199.5px) {
  .mainKVBtn .lead{
    font-size: 1.4rem;
  }
}
.mainKVBtn .btnStyle + .btnStyle{
  margin-top: 12px;
}
.mainKVBtn .btnStyle a{
  font-size: 2.4rem;
  min-height: 72px;
  padding: 10px 16.5px;
}
@media screen and (max-width: 767.5px) {
  .mainKVBtn .btnStyle a{
    font-size: 2rem;
  }
  .template-b2b .mainKVBtn .btnStyle a{
    min-height: 68px;
  }
}
.mainKVBtn .btnStyle img{
  width: 43px;
}
@media screen and (max-width: 767.5px) {
  .mainKVBtn .btnStyle img{
    width: 34px;
  }
}

.mainKV .mainKVIlust{
  position: absolute;
  right: -65px;
  bottom: 0;
  max-width: 780px;
  z-index: 1;
}
@media screen and (max-width: 1329.5px) {
  .mainKV .mainKVIlust{
    width: 59vw;
    right: -40px;
  }
}
@media screen and (max-width: 767.5px) {
  .mainKV .mainKVIlust{
    width: 100%;
    position: static;
  }
}




/* top generalContent */
.generalContent{
  padding: 80px 40px;
}
@media screen and (max-width: 767.5px) {
  .generalContent{
    padding: 40px 15px;
  }
}
.template-work .generalContentOuter .generalContent:nth-of-type(2n+1){
  background: #FAE8E8;
}


.generalContent.employment{
  padding-top: 55px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.employment{
    padding-top: 40px;
  }
}

.generalContentInner{
  max-width: 1200px;
  margin: 0 auto;
}

.generalContent .searchBox{
  background: #fff;
  box-shadow: 0 0 6px rgb(0 0 0 / 15%);
  border-radius: 12px;
  padding: 55px 40px;
  margin-bottom: 55px;
}
@media screen and (max-width: 767.5px) {
  .generalContent .searchBox{
    padding: 32px;
    margin-bottom: 40px;
    border-radius: 10px;
  }
}
.generalContent .searchBox .searchBoxInner{
  max-width: 1035px;
  margin: 0 auto;
  position: relative;
}

.generalContent .searchBox .title{
  font-size: 2rem;
  line-height: 1.3em;
  padding-left: 0.5em;
  font-weight: 700;
  border-left: var(--main-color-work) solid 2px;
}
.generalContent .searchBox .searchBoxSelect{
  margin-top: 20px;
  display: flex;
  justify-content: space-between;
  gap: 20px;
}
@media screen and (max-width: 767.5px) {
  .generalContent .searchBox .searchBoxSelect{
    flex-flow: column;
    gap: 16px;
  }
}
.generalContent .searchBox .btnStyle a{
  height: 100%;
  width: clamp(100px, 20vw, 200px);
}
@media screen and (max-width: 767.5px) {
  .generalContent .searchBox .btnStyle a{
    width: 100%;
    height: 52px;
    line-height: 1;
  }
}
.generalContent .searchBox .addSearch{
  position: absolute;
  top: 0;
  right: 0;
  font-size: 1.5rem;
}
@media screen and (max-width: 767.5px) {
  .generalContent .searchBox .addSearch{
    position: static;
    text-align: center;
    margin-top: 13px;
  }
}
.generalContent .searchBox .addSearch a{
  background: url(../img/common/icon_arrow.svg) right center / 18px 18px no-repeat;
  padding-right: 1.8em;
}
.generalContent .searchBox .addSearch a:hover{
  text-decoration: underline;
}

.generalContent .generalLeadouter{
  text-align: center;
  margin-bottom: 60px;
}
@media screen and (max-width: 767.5px) {
  .generalContent .generalLeadouter{
    margin-bottom: 40px;
  }
}
.generalContent .generalLeadouter .title{
  font-size: clamp(2.3rem, 3vw, 2.4rem);;
  font-weight: 700;
  line-height: 1.8em;
}
@media screen and (max-width: 767.5px) {
  .generalContent .generalLeadouter .title{
    font-size: 1.6rem;
  }
}
.generalContent .generalLeadouter .txt{
  margin-top: 15px;
}

.generalContent .generalMainTitle{
  text-align: center;
  margin-bottom: 48px;
}
@media screen and (max-width: 767.5px) {
  .generalContent .generalMainTitle{
    margin-bottom: 3.2rem;
  }
}
.generalContent .generalMainTitle .en{
  font-family: "Lato", sans-serif;
  font-size: clamp(5.3rem, 6.9vw, 8rem);
  font-weight: 600;
  line-height: 0.9em;
  color: #eee;
  position: relative;
  top: -0.11em;
}
@media screen and (max-width: 767.5px) {
  .generalContent .generalMainTitle .en{
    font-size: 4.8rem;
    /* font-weight: 700; */
    left: -15px;
    margin: auto;
    width: 100vw;
  }
  .generalContent.information .generalMainTitle .en{
    left: 0;
  }
}
.generalContentOuter .generalContent:nth-of-type(2n+1) .generalMainTitle .en{
  color: #fff;
}

.generalContentOuter.reverse .generalContent:nth-of-type(2n) .generalMainTitle .en{
  color: #fff;
}
.generalContentOuter.reverse .generalContent:nth-of-type(2n+1) .generalMainTitle .en{
  color: #eee;
}

.generalContent .generalMainTitle h2{
  font-size: 3.2rem;
  line-height: 1.5em;
  font-weight: 700;
  width: fit-content;
  border-bottom: solid 2px;
  margin: -1em auto 0;
  padding-bottom: 0.2em;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767.5px) {
  .generalContent .generalMainTitle h2{
    font-size: 2.2rem;
    margin-top: -0.8em;
    padding-bottom: 0.5em;
    line-height: 1.3;
  }
}

.generalContent .generalMainTitle h2 span{
  font-size: 2.4rem;
}
@media screen and (max-width: 767.5px) {
  .generalContent .generalMainTitle h2 span{
    font-size: 1.8rem;
    display: block;
  }
}

.generalContent.employment .column3Content{
  gap: 5%;
  max-width: 925px;
  margin: 0 auto;
}
@media screen and (max-width: 767.5px) {
  .generalContent.employment .column3Content{
    gap: 10vw 6%;
    flex-flow: wrap;
  }
}
.generalContent.employment .column3Content > div{
  width: 30%;
  text-align: center;
}

@media screen and (max-width: 767.5px) {
  .generalContent.employment .column3Content > div{
    width: 47%;
  }
}

.generalContent.employment .column3Content > div .txt {
  font-size: 1.4rem;
}
@media screen and (max-width: 767.5px) {
  .generalContent.employment .column3Content > div .txt {
    font-size: 1.2rem;
  }
}

@media screen and (max-width: 767.5px) {
  .generalContent.employment .column3Content > div .columnText{
    font-size: 1.2rem;
    padding-top: 18px;
    padding-bottom: 18px;
  }
}
.generalContent.employment .column3Content > div .btnStyle a{
  margin: 0 auto;
  max-width: 208px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.employment .column3Content > div .btnStyle a{
    font-size: 1.3rem;
  }
}
.generalContent.employment .column3Content + .btnStyle a{
  margin: 55px auto 0;
  max-width: 380px;
  height: 64px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.employment .column3Content + .btnStyle a{
    margin-top: 40px;
    font-size: 1.4rem;
    height: 52px;
    max-width: 285px;
  }
}

.generalContent.pickup{
  background: radial-gradient(circle, #cccccc 1px, transparent 1px) 0 0 / 22px 22px !important;
  padding: 64px 0;
}

@media screen and (max-width: 767.5px) {
  .generalContent.pickup{
    padding: 40px 0;
  }
}

.generalContent.pickup .generalContentInner{
  padding: 0 40px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.pickup .generalContentInner{
    padding: 0;
  } 
}


@media screen and (max-width: 767.5px) {
  .generalContent.pickup .column3Content > div .title{
    font-size: 1.6rem;
  }
  .generalContent.pickup .column3Content > div .txt {
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 767.5px) {
  .spSlider .generalContentInner{
    padding: 0;
  }
}
@media screen and (max-width: 767.5px) {
  .spSlider.column3Content > div{
    box-shadow: none;
  }
  .spSlider.slick-dotted.slick-slider{
    display: flex;
    flex-wrap: wrap;
    flex-flow: wrap;
    align-items: center;
  }
  
  .spSlider .slick-track{
    display: flex;
  }
  .spSlider .slick-slide{
    margin: 6px 15px;
    background: #fff;
    box-shadow: 0 0 6px rgb(0 0 0 / 15%);
    border-radius: 10px;
    overflow: hidden;
  }
  .spSlider .slick-prev,
  .spSlider .slick-next{
    position: static;
    width: fit-content;
    transform: none;
    height: 30px;
  }
  .spSlider .slick-prev{
    order: 2;
  }
  .spSlider .slick-next{
    order: 4;
  }
  .spSlider .slick-prev::before,
  .spSlider .slick-next::before{
    font-size: 0;
    background: url(../img/common/icon_arrow_gray.svg) center no-repeat;
    background-size: 100%;
    width: 25px;
    height: 30px;
    display: block;
  }
  .spSlider .slick-prev::before{
    transform: rotate(180deg) translateY(-1px);
  }
  .spSlider.slick-dotted.slick-slider .slick-dots{
    position: relative;
    order: 3;
    width: fit-content;
    bottom: auto;
  }
  .spSlider.slick-dotted.slick-slider .slick-dots li{
    margin: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
  }
  .spSlider.slick-dotted.slick-slider .slick-dots li button{
    padding: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #ccc;
  }
  .template-work .spSlider.slick-dotted.slick-slider .slick-dots li.slick-active button{
    background: var(--main-color-work);
  }
}

@media screen and (max-width: 767.5px) {
  .generalContent.pickup .column3Content > div{
    width: 100%;
  }
}

.generalContent .logoCarouselSlider{
  margin-top: 48px;
}
@media screen and (max-width: 767.5px) {
  .generalContent .logoCarouselSlider{
    margin-top: 32px;
  }
}

.generalContent .logoCarouselSlider .slick-slide{
  margin: 0 12px;
  padding: 6px 0
}

.generalContent .logoCarouselSlider .slick-slide .logo a{
  box-shadow: 0 0 6px rgb(0 0 0 / 15%);
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  display: block;
}
@media screen and (max-width: 767.5px) {
  .generalContent .logoCarouselSlider .slick-slide .logo a{
    border-radius: 10px;
  }
}
/* .generalContent .logoCarouselSlider .slick-slide .logo img{
  
}
@media screen and (max-width: 767.5px) {
  .generalContent .logoCarouselSlider .slick-slide .logo img{
    border-radius: 10px;
  }
} */

@media screen and (max-width: 767.5px) {
  .column3Content.reason{
    flex-flow: column;
    gap: 16px;
  }
}
.column3Content.reason > div{
  box-shadow: none;
  border: var(--main-color-work) solid 2px;
}
@media screen and (max-width: 767.5px) {
  .column3Content.reason > div{
    width: 100%;
  }
}
.column3Content.reason > div .columnText{
  padding-top: 32px;
  padding-bottom: 32px;
}
.column3Content.reason > div .title{
  font-size: 2.4rem;
  padding-left: 0.5em;
  border-left: var(--main-color-work) solid 2px;
}
@media screen and (max-width: 767.5px) {
  .column3Content.reason > div .title{
    font-size: 1.8rem;
    margin-bottom: 1.35em;
  }
}
.column3Content.reason .column2Content{
  gap: 0;
  justify-content: space-between;
}
.column3Content.reason .column2Content > .txt{
  width: 60%;
}
@media screen and (max-width: 767.5px) {
  .column3Content.reason .column2Content > .txt{
    font-size: 1.4rem;
    flex: 1;
  }
}
.column3Content.reason .column2Content > .lilust{
  position: relative;
  left: -18px;
  max-width: 150px;
  width: 50%;
}

@media screen and (max-width: 767.5px) {
  .column3Content.reason .column2Content > .lilust{
    max-width: 126px;
    /* left: -24px;
    width: 40%; */
  }
}

.generalContent.features .support3Title{
  display: flex;
  align-items: flex-end;
  justify-content: center;
  margin: 2em 0 1.2em;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1em;
}

@media screen and (max-width: 767.5px) {
  .generalContent.features .support3Title{
    flex-flow: column;
    align-items: center;
    font-size: 2rem;
    margin: 32px auto 16px;
  }
}
.generalContent.features .support3Title > p{
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1em;
  color: var(--main-color-work);
}
@media screen and (max-width: 767.5px) {
  .generalContent.features .support3Title > p{
    font-size: 2rem;
  }
}
.generalContent.features .support3Title > p span{
  font-family: "Lato", sans-serif;
  font-weight: 700;
  font-size: 6.8rem;
  color: var(--main-color-work);
}
@media screen and (max-width: 767.5px) {
  .generalContent.features .support3Title > p span{
    line-height: 1em;
    font-size: 4.8rem;
  }
}


.column4Content.support{
  gap: 40px 3%;
}
@media screen and (max-width: 767.5px) {
  [class*="column"].support{
    flex-wrap: wrap;
    gap: 16px;
  }
}

[class*="column"].support > div{
  box-shadow: none;
  border: solid 2px;
  overflow: hidden;
  border-radius: 12px;
  background: #fff;
}
@media screen and (max-width: 767.5px) {
  [class*="column"].support > div{
    border-radius: 10px;
    width: 100%;
  }
}
@media screen and (min-width: 767.5px) {
  .column4Content.support > div{
    width: 22.75%;
  }
}
.template-work [class*="column"].support > div,
.template-work [class*="column"].support > div .title{
  border-color: var(--main-color-work);
}
.template-b2b [class*="column"].support > div,
.template-b2b [class*="column"].support > div .title{
  border-color: var(--main-color-b2b);
}

[class*="column"].support > div .columnText{
  display: flex;
  flex-direction: column;
  padding: 32px 24px;
  height: 100%;
}
@media screen and (max-width: 767.5px) {
  [class*="column"].support > div .columnText{
    padding: 20px 24px 24px;
  }
}
[class*="column"].support > div .title{
  font-size: 2.2rem;
  width: fit-content;
  border-bottom: solid 2px;
  margin: 0 auto 1em;
  padding-bottom: 0.3em;
}
@media screen and (max-width: 767.5px) {
  [class*="column"].support > div .title{
    font-size: 1.8rem;
    margin-bottom: 24px;
  }
}

[class*="column"].support > div .btnStyle{
  margin: auto 0 0;
}
[class*="column"].support > div .btnStyle a{
  margin: 1em auto 0;
  max-width: 175px;
}
@media screen and (max-width: 767.5px) {
  [class*="column"].support > div .btnStyle a{
    font-size: 1.3rem;
    max-width: 110px;
  }
}

[class*="column"].support > div .note{
  font-size: 1.4rem;
  text-align: center;
  color: #999;
  margin-top: 1.5em;
}
@media screen and (max-width: 767.5px) {
  [class*="column"].support > div .note{
    font-size: 1.3rem;
  }
}


.featuresOther{
  margin-top: 48px;
}
@media screen and (max-width: 767.5px) {
  .featuresOther{
    margin-top: 16px;
  }
}
.featuresOther .column2Content{
  background: #fff;
  padding: 32px 40px;
  border-radius: 12px;
  justify-content: flex-start;
}
@media screen and (max-width: 767.5px) {
  .featuresOther .column2Content{
    flex-flow: column;
    gap: 16px;
    padding: 20px 24px 40px;
    border-radius: 10px;
  }
}
.featuresOther .column2Content + .column2Content{
  margin-top: 32px;
}
@media screen and (max-width: 767.5px) {
  .featuresOther .column2Content + .column2Content{
    margin-top: 16px;
  }
}
.featuresOther .column2Content .icon{
  width: 100px;
  min-width: 100px;
}
@media screen and (max-width: 767.5px) {
  .featuresOther .column2Content .title{
    text-align: center;
    font-size: 1.8rem;
  }
  .featuresOther .column2Content .txt{
    font-size: 1.4rem;
  }
}
.featuresOther .column2Content > div{
  width: auto;
}
.featuresOther .column2Content > div .flexBox{
  margin-top: 16px;
}
@media screen and (max-width: 767.5px) {
  .featuresOther .column2Content > div .flexBox{
    flex-flow: column;
  }
}
.featuresOther .column2Content > div .flexBox a{
  font-weight: 500;
  text-align: left;
  justify-content: flex-start;
}
@media screen and (min-width: 1099.5px) {
  .featuresOther .column2Content > div .flexBox a{
    min-width: 375px;
  }
}
@media screen and (max-width: 767.5px) {
  .featuresOther .column2Content > div .flexBox a{
    display: block;
  }
  .featuresOther .column2Content > div .flexBox a p{
    display: inline;
  }
}


.generalContent.workstyle{
  background: url(../img/work/top_kv_bg.png) center top / cover no-repeat;
  padding-top: 100px;
  padding-bottom: 0;
  position: relative;
}

@media screen and (max-width: 767.5px) {
  .generalContent.workstyle{
    padding-top: 56px;
    background: url(../img/work/top_workstyle_bg_sp.png) center top / cover no-repeat;
    font-size: 1.5rem;
  }
}
.generalContent.workstyle .generalMainTitle{
  text-align: left;
}
.generalContent.workstyle .generalMainTitle h2{
  margin-left: 0;
} 

.generalContent.workstyle .column2Content{
  align-items: flex-start;
  gap: 0;
}
@media screen and (max-width: 1149.5px) {
  .generalContent.workstyle .column2Content{
    align-items: flex-end;
  }
}
.generalContent.workstyle .column2Content > div{
  width: 50%;
  padding-bottom: 40px;
}

@media screen and (max-width: 767.5px) {
  .generalContent.workstyle .column2Content > div{
    width: 100%;
  }
}
@media screen and (max-width: 767.5px) {
  .generalContent.workstyle .column2Content > .lilust{
    position: absolute;
    top: 13px;
    right: 15px;
    max-width: 214px;
    width: 55%;
  }
}
.generalContent.workstyle .column2Content .btnStyle a{
  max-width: 380px;
  height: 64px;
  margin-top: 48px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.workstyle .column2Content .btnStyle a{
    max-width: 285px;
    height: auto;
    margin: 24px auto 0;
    padding: 18px 17px;
    font-size: 1.4rem;
    line-height: 1em;
  }
}


.generalContent.flow{
  padding-bottom: 64px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.flow{
    padding-bottom: 56px;
  }
}

/* .generalContent.flow .column4Content > div{
  overflow: hidden;
} */
@media screen and (max-width: 767.5px) {
  .generalContent.flow .column4Content > div{
    display: flex;
  }
}
.generalContent.flow .column4Content > div:before{
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: -17%;
  margin: auto;
  width: clamp(25px, 3.3vw, 40px);
  height: clamp(25px, 3.3vw, 40px);
  background: url(../img/common/icon_arrow_beige.svg) center center / 100% auto no-repeat;
}
@media screen and (min-width: 767.5px) {
  .generalContent.flow .column4Content > div:nth-of-type(4n):before{
    display: none;
  }
}
@media screen and (max-width: 767.5px) {
  .generalContent.flow .column4Content > div:before{
    right: 0;
    left: 32px;
    transform: translate(-50%,50%) rotate(90deg);
    top: auto;
    bottom: -20px;
    display: block !important;
    width: 32px;
    height: 32px;
  }
  .generalContent.flow .column4Content > div:last-child:before{
    display: none !important;
  }
}

.generalContent .stepTag{
  position: absolute;
  top: 0;
  left: 0;
  background: #B9A385;
  color: #fff;
  padding: 0.4em 0.9em;
  border-radius: 0 0 10px 0;
}
@media screen and (max-width: 767.5px) {
  .generalContent .stepTag{
    font-size: 1.3rem;
    padding: 0.8em 1em;
    line-height: 1;
  }
}
.attentionContentBox div .stepTag,
.generalContent.flow .stepTag{
  font-family: "Lato", sans-serif;
  font-weight: 700;
  border-radius: 10px 0 10px 0;
}
@media screen and (max-width: 767.5px) {
  .attentionContentBox div .stepTag,
  .generalContent.flow .stepTag{
    border-radius: 8px 0 8px 0;
  }
}


@media screen and (max-width: 767.5px) {
  .generalContent.flow .column4Content > div .columnText{
    width: 60%;
    padding: 28px 16px;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767.5px) {
  .generalContent.flow .column4Content > div .photo{
    width: 40%;
    border-radius: 10px 0 0 10px;
    display: flex;
  }
}
@media screen and (max-width: 767.5px) {
  .generalContent.flow .column4Content > div .photo img{
    object-fit: cover;
    object-position: center;
    height: 100%;
    width: 100%;
  }
}
@media screen and (max-width: 767.5px) {
  .generalContent.flow .column4Content > div .title{
    text-align: left;
    font-size: 1.5rem;
  }
}
.generalContent.flow .txtNote{
  margin-top: 48px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.flow .txtNote{
    margin-top: 32px;
    line-height: 1em;
  }
}


.generalContent.faq .generalContentInner{
  max-width: 980px;
}
.generalFAQContent > div:nth-of-type(n+2){
  margin-top: 52px;
}

.generalFAQContent .title{
  font-size: 2rem;
  line-height: 1.3em;
  padding-left: 0.5em;
  font-weight: 700;
  border-left: var(--main-color-work) solid 2px;
  margin-bottom: 1.5em;
}
@media screen and (max-width: 767.5px) {
  .generalFAQContent .title{
    font-size: 1.8rem;
  }
}

.template-b2b .QAopen .generalFAQBox{
  margin-top: 35px;
}
@media screen and (min-width: 767.5px) {
  .template-b2b .QAopen .generalFAQBox{
    margin-top: 25px;
  }
}
.generalFAQBox + .generalFAQBox{
  /* margin-top: 24px; */
}

.generalFAQBox .question{
  padding: 16px 50px 16px 24px;
  box-shadow: 0 0 6px rgb(0 0 0 / 15%);
  border-radius: 12px;
  position: relative;
  margin-bottom: 24px;
  cursor: pointer;
  min-height: 72px;
  background: #fff;
}
@media screen and (max-width: 767.5px) {
  .generalFAQBox .question{
    padding: 12px 46px 12px 16px;
    min-height: 56px;
    font-size: 1.4rem;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    border-radius: 10px;
  }
}
.QAopen .generalFAQBox .question{
  cursor: auto;
  pointer-events: none;
  background: none;
  box-shadow: none;
  padding: 0;
  min-height: auto;
  margin-bottom: 16px;
}
.template-about .QAopen .generalFAQBox .question{
  margin-bottom: 16px;
}

.generalFAQBox .question span,
.generalFAQBox .answer span{
  font-family: "Lato", sans-serif;
  font-weight: 700;
  font-style: italic;
  content: "Q";
  border-radius: 50%;
  width: 40px;
  height: 40px;
  min-width: 40px;
  min-height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8rem;
}
@media screen and (max-width: 767.5px) {
  .generalFAQBox .question span,
  .generalFAQBox .answer span{
    width: 24px;
    height: 24px;
    min-width: 24px;
    min-height: 24px;
    font-size: 1.4rem;
  }
}
.QAopen .generalFAQBox .question span{
  background: #fff;
}

@media screen and (min-width: 767.5px) {
  .template-b2b .QAopen .generalFAQBox .question span,
  .template-b2b .QAopen .generalFAQBox .answer span{
    position: relative;
    top: -6px;
  }
}


.generalFAQBox .question:before{
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 18px;
  margin: auto;
  width: 20px;
  height: 20px;
  background: url(../img/common/icon_arrow.svg) center center / 100% auto no-repeat;
  transform: rotate(90deg);
  transition: 0.2s;
}
.generalFAQBox .question.active:before{
  transform: rotate(-90deg);
}
.QAopen .generalFAQBox .question:before{
  display: none;
}

.generalFAQBox .faqInner{
  display: flex;
  align-items: center;
  gap: 16px;
}
@media screen and (max-width: 767.5px) {
  .generalFAQBox .faqInner{
  }
}

.template-b2b .QAopen .generalFAQBox .faqInner{
  align-items: flex-start;
}
.QAopen .generalFAQBox .question .faqInner{
  font-size: 2rem;
}
@media screen and (max-width: 767.5px) {
  .QAopen .generalFAQBox .question .faqInner{
    font-size: 1.6rem;
  }
}


.generalFAQBox .answer{
  padding-left: 24px;
  padding-right: 0;
  position: relative;
  display: none;
  margin-bottom: 36px;
}
@media screen and (max-width: 767.5px) {
  .generalFAQBox .answer{
    padding-left: 16px;
    font-size: 1.4rem;
    margin-bottom: 24px;
  }
  .generalFAQBox .answer .faqInner{
    align-items: baseline;
  }
}

.QAopen .generalFAQBox .answer{
  display: block;
  padding: 0;
}
.template-about .QAopen .generalFAQBox .answer{
  margin-bottom: 20px;
}
.QAopen .generalFAQBox:last-child .answer{
  margin-bottom: 0;
}

/* .generalFAQBox .answer .faqInner{
  align-items: flex-start;
} */
.generalFAQBox .answer span{
  color: #fff;
}
.template-about .generalFAQBox .answer span{
  background: var(--main-color2-about) !important;
}

.generalFAQBox .answer a{
  text-decoration: underline;
}
.generalFAQBox .answer a:hover{
  text-decoration: none;
}

.generalContent.information{
  background: #fff !important;
  padding-top: 0;
}
@media screen and (max-width: 767.5px) {
  .generalContent.information{
    padding-left: 0;
    padding-right: 0;
  }
}

.generalContent.information .generalContentInner{
  position: relative;
}

.generalContent.information .generalMainTitle{

}
@media screen and (min-width: 767.5px) {
  .generalContent.information .generalMainTitle {
    text-align: left;
    margin-bottom: 0
  }
  .generalContent.information .generalMainTitle h2 {
    margin-left: 0;
  }
}
.generalContent.information .generalMainTitle .en{
  color: #eee !important;
}

@media screen and (min-width: 767.5px) {
  .generalContent.information .btnStyle{
    position: absolute;
    top: 33px;
    right: 0;
  }
}
@media screen and (max-width: 767.5px) {
  .generalContent.information .btnStyle{
    margin-top: 16px;
  }
}

.generalContent.information .btnStyle a{
  width: 208px;
  height: 64px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.information .btnStyle a{
    width: 285px;
    height: 52px;
    margin: 0 auto;
  }
}



.generalContent.information .generalMainTitle + .column3Content{
  margin-top: 48px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.information .generalMainTitle + .column3Content{
    margin-top: 0;
  }
}

.generalContent.information .photo{
  width: 100%;
  aspect-ratio: 4/3;
  overflow: hidden;
  margin-bottom: 0.5rem;
  display: flex;
}

.generalContent.information .photo img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.informationMeta{
  display: flex;
  align-items: center;
  gap: 10px
}
.informationMeta .date{
  color: #999;
}
@media screen and (max-width: 767.5px) {
  .informationMeta .date{
    font-size: 1.5rem;
  }
}
.informationMeta .tag{
  font-size: 1.4rem;
  padding: 0.1em 0.4em;
}
@media screen and (max-width: 767.5px) {
  .informationMeta .tag{
    font-size: 1.2rem;
  }
}
.generalContent.information .column3Content > div .title{
  margin: 0.7em 0 0;
}
@media screen and (max-width: 767.5px) {
  .generalContent.information .column3Content > div .title{
    font-size: 1.6rem;
  }
}

@media screen and (min-width: 767.5px) {
  body.information .column3Content,
  body.information-service .column3Content{
    justify-content: flex-start;
  }
}


.information .column3Content .photo{
  margin-bottom: 0;
}

.template-work .columnText{
  border-top: var(--sub-color-work) solid 1px;
}
.template-b2b .columnText{
  border-top: var(--sub-color-b2b) solid 1px;
}

.template-work.support .columnText{
  border-top: none;
}


.workCTA{
  background: #FAE8E8;
  padding: 36px 40px 60px;
}
@media screen and (max-width: 767.5px) {
  .workCTA{
    padding: 28px 15px 40px;
  }
}
.workCTAInner{
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  position: relative;
}

.workCTA .mainKVContent{
  width: clamp(530px, 70vw, 824px);;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767.5px) {
  .workCTA .mainKVContent{
    width: 100%;
  }
}
.workCTA .mainKVContent .mainKVTitle{
  text-align: center;
  padding-top: 2.1em;
}
@media screen and (max-width: 767.5px) {
  .workCTA .mainKVContent .mainKVTitle{
    font-size: 3.2rem;
    padding-top: 22vw;
  }
}
.workCTA .mainKVContent .mainKVTitle:before{
  background: url(../img/work/top_workcta_lead.svg) no-repeat;
  top: 0;
  left: -0.7em;
  right: 0;
  margin: auto;
  height: 140px;
  width: 550px;
}
@media screen and (max-width: 767.5px) {
  .workCTA .mainKVContent .mainKVTitle:before{
    display: block;
    width: 100%;
    height: 25vw;
    background-size: 100%;
    left: 0;
  }
}
.workCTA .mainKVContent .mainKVLead{
  font-weight: 500;
  font-size: 2rem;
  text-align: center;
}
@media screen and (max-width: 767.5px) {
  .workCTA .mainKVContent .mainKVLead{
    font-size: 1.4rem;
    text-align: left;
    line-height: 2.2em;
    padding-left: 24px;
    padding-bottom: 150px;
    max-width: 345px;
    margin: auto;
    position: relative;
    margin-top: 10px;
  }
}
.workCTA .mainKVBtn{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 24px;
  max-width: none;
}
@media screen and (max-width: 1199.5px) {
  .workCTA .mainKVBtn{
    flex-direction: column;
    align-items: center;
  }
}
@media screen and (max-width: 1199.5px) {
  .workCTA .mainKVBtn{
    margin-top: 24px;
  }
}
.workCTA .mainKVBtn > div{
  width: calc(50% - 12px);
  min-width: 400px;
}
@media screen and (max-width: 767.5px) {
  .workCTA .mainKVBtn > div{
    width: 100%;
    min-width: auto;
  }
}
.workCTA .mainKVBtn > div .btnStyle a{
  white-space: nowrap;
  min-height: 100px;
}
@media screen and (max-width: 1199.5px) {
  .workCTA .mainKVBtn > div .btnStyle a{
    min-height: 82px;
  }
}
@media screen and (max-width: 767.5px) {
  .workCTA .mainKVBtn > div .btnStyle a{
    height: 64px;
    min-height: auto;
  }
}


@media screen and (min-width: 767.5px) {
  .workCTA .mainKVBtn > div .btnStyle a span{
    writing-mode: vertical-rl;
    padding: 11px 7px;
  }
}

.workCTA .workCTAIlust{
  max-width: 390px;
  position: absolute;
  right: -30px;
  top: 20px;
  width: 50vw;
}

@media screen and (max-width: 767.5px) {
  .workCTA .workCTAIlust{
    top: 36%;
    right: 0;
    max-width: 190px;
  }
}


/*work-style*/
.generalContent.work-style{
  padding: 56px 15px;
}
@media screen and (max-width: 767.5px){
  .generalContent.work-style{
    padding-top: 40px;
  }
}
.leadCenter{
  text-align: center;
}
@media screen and (max-width: 767.5px){
  .leadCenter{
    font-size: 1.4rem;
  }
}
.comicBox{
  max-width: 716px;
  margin: 56px auto;
  display: flex;
  flex-flow: column;
  gap: 16px;
}
@media screen and (max-width: 767.5px){
  .comicBox{
    margin: 40px auto;
    gap: 8px;
  }
}

.flowBtn .btnStyle{
  margin: auto;
  max-width: 384px;
}
@media screen and (max-width: 767.5px){
  .flowBtn .btnStyle{
    max-width: 285px;
  }
}

.flowBtn .btnStyle a{
  height: 64px;
}
@media screen and (max-width: 767.5px){
  .flowBtn .btnStyle a{
    font-size: 1.4rem;
    line-height: 1em;
    padding: 18px;
    height: 52px;
  }
}

.generalContent.work-style .workCTA{
  max-width: 824px;
  margin: 0 auto;
  padding: 0;
}

@media screen and (max-width: 767.5px){
  .generalContent.work-style .workCTA .mainKVBtn{
    margin-top: 56px;
  }  
}



/*information*/
body[class*="information"] .generalContent{
  padding: 56px 40px 64px;
}
body.information .generalContent{
  background-color: #FFF7F7 !important;
}
body.information-service .generalContent{
  background-color: var(--sub-color-b2b) !important;
}
@media screen and (max-width: 767.5px) {
  body[class*="information"] .generalContent{
    padding: 40px 15px 56px;
  }
}
@media screen and (max-width: 767.5px) {
  body[class*="information"] .column3Content{
    gap: 24px;
  }
}





.generalContent.information .entryContent{
  background: #fff;
  border-radius: 12px;
  padding: 56px 40px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.information .entryContent{
    padding: 24px;
    border-radius: 10px;
  }
}
.generalContent.information .entryContentInner{
  max-width: 1034px;
  margin: auto;
}

.generalContent.information .entryContent .informationMeta .date,
.generalContent.information .entryContent .informationMeta .tag{
  font-size: 1.6rem;
}
@media screen and (max-width: 767.5px) {
  .generalContent.information .entryContent .informationMeta .date,
  .generalContent.information .entryContent .informationMeta .tag{
    font-size: 1.4rem;
  }
}
.generalContent.information .entryContent .informationMeta .tag{
  padding: 0 0.6em;
}
.generalContent.information .entryContent .columnTitle{
  font-size: 2.1rem;
  font-weight: 500;
  margin-top: 25px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.information .entryContent .columnTitle{
    font-size: 1.8rem;
    margin-top: 15px;
  }
}


.entryContent .entryContentPost{
  line-height: 1.8;
}
.entryContent .entryContentPost p {
  margin: 1em 0;
}
.entryContent .entryContentPost .wp-block-image{
  text-align: center;
}
.entryContent .entryContentPost li {
  list-style: none;
}


.generalContent.information .entryContent .entryContentPost{
  margin-top: 50px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.information .entryContent .entryContentPost{
    margin-top: 40px;
  }
}

.generalContent.information .entryContent .entryContentPost p + p{
  margin-top: 1em;
}
/* .generalContent.information .entryContent .entryContentPost ul.wp-block-list,
.generalContent.information .entryContent .entryContentPost ul.wp-block-list li{
  list-style: disc;
}
.generalContent.information .entryContent .entryContentPost ul.wp-block-list{
  padding-left: 1.5em;
  margin: 1em 0;
} */




.generalContent.information .entryContent + .btnStyle{
  position: static;
  margin: 56px auto 0;
}
@media screen and (max-width: 767.5px) {
  .generalContent.information .entryContent + .btnStyle{
    margin-top: 40px;
  }
}
.generalContent.information .entryContent + .btnStyle a{
  width: 385px;
  margin: 0 auto;
}
@media screen and (max-width: 767.5px) {
  .generalContent.information .entryContent + .btnStyle a{
    width: 285px;
  }
}




/* 福利厚生 */
@media screen and (min-width: 767.5px) {
  .generalContent.benefits .column3Content > div:nth-of-type(1),
  .generalContent.benefits .column3Content > div:nth-of-type(2){
    width: 48.75%;
  }
}


.generalContent.insurance{

}

.generalContent.insurance .workLowerRepetContent .lowerTitle{
  font-size: 2rem;
}

@media screen and (max-width: 767.5px) {
  .insuranceTable{
    position: relative;
    width: 100vw;
    left: -15px;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
  }
  /* .insuranceTable::after{
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    width: 50px;
    background: linear-gradient(90deg,rgba(85, 85, 85, 0) 0%, rgba(85, 85, 85, 1) 100%);
    opacity: 0.3;
  } */
  .insuranceTableIn{
    padding: 0 15px;
    overflow-x: scroll;
  }
}

.insuranceTable table{
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
}
@media screen and (max-width: 767.5px) {
  .insuranceTable table{
    width: 750px;
  }
}
.insuranceTable table tr th,
.insuranceTable table tr td{
  border: #ccc solid 1px;
  line-height: 1.46;
}
@media screen and (max-width: 767.5px) {
  .insuranceTable table tr th,
  .insuranceTable table tr td{
    font-size: 1.4rem;
  }
}

.insuranceTable table tr th{
  text-align: center;
  background: var(--sub-color-work);;
  font-weight: 700;
  padding: 1.3em;
}
.insuranceTable table tr td{
  padding: 1.3em;
}
@media screen and (max-width: 767.5px) {
  .insuranceTable table tr td{
    padding: 1em;
  }
}
.insuranceTable table tr td.bold{
  text-align: center;
}
@media screen and (max-width: 767.5px) {
  .insuranceTable table tr td.bold{
    white-space: nowrap;
  }
}
.insuranceTable table tr td.bold span{
  font-size: 1.4rem;
  font-weight: 700;
}
@media screen and (max-width: 767.5px) {
  .insuranceTable table tr td.bold span{
    font-size: 1.2rem;
  }
}

.insuranceTable + .note{
  font-size: 1.5rem;
  margin-top: 0.7em;
}
@media screen and (max-width: 767.5px) {
  .insuranceTable + .note{
    font-size: 1.4rem;
  }
}


.generalContent.guide{
  background: #FFF7F7 !important;
}
.guideList{
  margin-top: 30px;
}
.guideList li:nth-of-type(n+2){
  margin-top: 1.8em;
}

.guideList li .title{
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 0.3em;
}
@media screen and (max-width: 767.5px) {
  .guideList li .title{
    font-size: 1.8rem;
  }
}
.generalContent.guide .workLowerRepetContent > div:nth-of-type(n+2){
  border-top: #ccc solid 1px;
  padding-top: 30px;
}

@media screen and (max-width: 767.5px) {
  .welfare .mainKV{
    background-image: url(../img/welfare/kv_bg_sp.png);
  }
}
@media screen and (max-width: 767.5px) {
  .welfare .generalContent{
    padding: 60px 15px;
  }
}
@media screen and (max-width: 767.5px) {
  .welfare .mainKVContent .mainKVTitle{
    text-align: left;
  }
}
@media screen and (max-width: 767.5px) {
  .welfare .mainKV.lower .mainKVInner{
    align-items: start;
  }
}
.welfare [class*="column"].support{
  gap: 30px 2%;
}
@media screen and (max-width: 767.5px) {
  .welfare [class*="column"].support{
    gap: 16px;
  }
}
.welfare [class*="column"].support > div{
  width: 32%;
}
@media screen and (max-width: 767.5px) {
  .welfare [class*="column"].support > div{
    width: 100%;
  }
}
.welfare [class*="column"].support > div .columnText{
  font-size: 1.5rem;
}
@media screen and (max-width: 767.5px) {
  .welfare [class*="column"].support > div .columnText{
    font-size: 1.3rem;
  }
}
.welfare [class*="column"].support > div .columnText .textBox + .textBox{
  margin-top: 30px;
}
@media screen and (max-width: 767.5px) {
  .welfare [class*="column"].support > div .columnText .textBox + .textBox{
    margin-top: 20px;
  }
}
.welfare [class*="column"].support > div .columnText .case{
  background: #F6F6F6;
  padding: 24px 16px;
  margin-top: 16px;
  border-radius: 10px;
}
@media screen and (max-width: 767.5px) {
  .welfare [class*="column"].support > div .columnText .case{
    padding: 16px 8px;
    border-radius: 8px;
  }
}



/* キャリアサポート・研修 */
@media screen and (max-width: 767.5px) {
  .support .mainKV{
    background-image: url(../img/welfare/kv_bg_sp.png);
  }
}
.generalContent.support{
  background: #FFF7F7 !important;
}
@media screen and (max-width: 767.5px) {
  .generalContent.support{
    padding: 60px 15px;
  }
}
@media screen and (min-width: 767.5px) {
  .column3Content.career > div{
    width: 100%;
    display: flex;
    align-items: center;
  }
}
.column3Content.career > div .columnText{
  height: auto;
}
.column3Content.career > div .columnText{
  width: 60%;
  flex: 1;
}
@media screen and (max-width: 767.5px) {
  .column3Content.career > div .columnText{
    width: 100%;
  }
}
.column3Content.career > div .title{
  margin: 0 auto 1em 0;
}
@media screen and (max-width: 767.5px) {
  .column3Content.career > div .title{
    margin: 0 auto 1em;
  }
}
[class*="column"].support .photo{
  max-width: 380px;
  width: 40%;
  height: 100%;
  border-radius: 0;
}
@media screen and (max-width: 767.5px) {
  [class*="column"].support .photo{
    width: 100%;
    max-width: none;
    display: flex;
  }
}
[class*="column"].support .photo img{
  object-fit: cover;
  object-position: center;
  height: 100%;
  width: 100%;
}




/* top b2b */
.template-b2b .mainKV{
  background: url(../img/b2b/top_kv.jpg) center top / cover no-repeat;
  padding: 90px 40px;
}
@media screen and (max-width: 767.5px) {
  .template-b2b .mainKV{
    background: url(../img/b2b/top_kv_sp.jpg) center top / 100% auto no-repeat;
    padding: 50% 0 0;
  }
}

.template-b2b .generalContentOuter .generalContent:nth-of-type(2n+1){
  background: var(--sub-color-b2b);
}
.template-b2b .generalContentOuter.reverse .generalContent:nth-of-type(2n){
  background: var(--sub-color-b2b);
}
.template-b2b .generalContentOuter.reverse .generalContent:nth-of-type(2n+1){
  background: #fff;
}


.generalContent.service .column3Content > div .columnText{
  padding-top: 60px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.service .column3Content > div .columnText {
    padding-top: 47px;
  }
}
.generalContent.service .column3Content > div .title {
  text-align: center;
}
@media screen and (max-width: 767.5px) {
  .generalContent.service .column3Content > div .title{
    font-size: 1.6rem;
  }
}

.generalContent.service .column3Content > div .txt {
  text-align: center;
  margin-bottom: 20px;
}

.generalContent.service .column3Content > div .btnStyleOuter{
  max-width: 256px;
  margin: 0 auto;
}
@media screen and (max-width: 767.5px) {
  .generalContent.service .column3Content{
    gap: 32px;

  }
  .generalContent.service .column3Content > div .btnStyleOuter{
    max-width: none;
    display: flex;
    gap: 8px;
    font-size: 1.3rem;
    white-space: nowrap;
  }
  .generalContent.service .column3Content > div .btnStyleOuter .btnStyle{
    width: 50%;
  }
}

@media screen and (min-width: 767.5px) {
.generalContent.service .column3Content > div .btnStyle + .btnStyle{
  margin-top: 8px;
}
}

@media screen and (max-width: 767.5px) {
  .template-b2b .generalContent .generalLeadouter .title{
    font-size: 1.8rem;
  }
  .template-b2b .generalContent .generalLeadouter .txt{
    font-size: 1.5rem;
  }
}

@media screen and (max-width: 767.5px) {
  .template-b2b .spSlider.slick-dotted.slick-slider .slick-dots li.slick-active button{
    background: var(--main-color-b2b);
  }

}


.template-b2b .mainKV.lower{
  background: url(../img/b2b/title_bg.png) center top / cover no-repeat;
  padding: 56px 40px;
}
@media screen and (max-width: 767.5px) {
  .template-b2b .mainKV.lower{
    background-image: url(../img/b2b/title_bg_sp.png);
    padding: 40px 15px;
  }
}

.mainKV.lower .mainKVContent{
  padding: 0;
}

@media screen and (min-width: 767.5px) {
  .template-b2b .mainKV.lower .mainKVContent{
    width: 55%;
  }
}

.template-work .mainKV.lower .mainKVContent,
.template-about .mainKV.lower .mainKVContent{
  padding: 0;
  margin-top: 0;
}

.mainKV.lower .mainKVTitle > *{
}
.template-work .mainKV.lower .mainKVTitle > *,
.template-about .mainKV.lower .mainKVTitle > *{
  font-size: 2.4rem;
  color: #333 !important;
  text-align: left;
}
@media screen and (max-width: 767.5px) {
  .template-work .mainKV.lower .mainKVTitle > *,
  .template-about .mainKV.lower .mainKVTitle > *{
    font-size: 1.8rem;
  }
}
.template-b2b .mainKV.lower .mainKVTitle > *{
  font-size: 3.2rem;
  text-align: center;
  border-bottom: solid 2px;
  width: fit-content;
  margin: 0 auto;
  padding-bottom: 0.3em;
}
@media screen and (max-width: 767.5px) {
  .template-b2b .mainKV.lower .mainKVTitle > *{
    font-size: 2.2rem;
  }
}

.mainKV.lower .mainKVLead{
  font-weight: 500;
  text-align: center;
  margin-top: 25px;
}
.template-about .mainKV.lower .mainKVLead{
  text-align: left;
  font-size: 1.6rem;
}
@media screen and (max-width: 767.5px) {
  .template-about .mainKV.lower .mainKVLead{
    font-size: 1.3rem;
    margin-top: 15px;
  }
}

.mainKV.lower .mainKVLead .step{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px 32px;
  margin-bottom: 0.7em;
}
@media screen and (max-width: 767.5px) {
  .mainKV.lower .mainKVLead .step{
    font-size: 1.4rem;
    max-width: 300px;
    margin-left: auto;
    margin-right: auto;
  }
}
.mainKV.lower .mainKVLead .step li{
  border-radius: 20px;
  color: #1D3557;
  padding: 0.1em 1em 0.2em;
  position: relative;
}
.mainKV.lower .mainKVLead .step li:after{
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: -26px;
  margin: auto;
  width: 20px;
  height: 20px;
  background: url(../img/common/icon_arrow_blue02.svg) center center / 100% auto no-repeat;
}
.mainKV.lower .mainKVLead .step li:last-child:after{
  display: none;
}

.mainKV.lower .mainKVLead .caption{
  font-size: 1.5rem;
  margin-top: 0.5em;
  line-height: 1.5;
}
@media screen and (max-width: 767.5px) {
  .mainKV.lower .mainKVLead .caption{
    font-size: 1.4rem;
  }
}

.mainKV.lower .mainKVBtn{
  text-align: center;
  margin: 32px auto 0;
}
@media screen and (max-width: 767.5px) {
  .template-b2b .mainKV.lower .mainKVBtn{
    margin-top: 18px;
  }
}
.mainKV.lower .mainKVBtn .anchorLink{
  margin-top: 16px;
  text-decoration: underline;
  font-size: 1.5rem;
}
.mainKV.lower .mainKVBtn .anchorLink:hover{
  text-decoration: none;
}
@media screen and (max-width: 767.5px) {
  .mainKV.lower .mainKVBtn .anchorLink{
    font-size: 1.4rem;
  }
}

@media screen and (min-width: 767.5px) {
  .template-work .mainKV.lower .mainKVImage,
  .template-about .mainKV.lower .mainKVImage{
    width: 50%;
  }
  .template-b2b .mainKV.lower .mainKVImage{
    width: 40%;
  }
}

.tabContentOuter{
  margin-top: 48px;
}
@media screen and (max-width: 767.5px) {
  .tabContentOuter{
    margin-top: 25px;
  }
}
.tabContentOuter .tabSelectBtn{
  display: flex;
  gap: 24px;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767.5px) {
  .tabContentOuter .tabSelectBtn{
    gap: 8px;
  }
}
.tabContentOuter .tabSelectBtn:before{
  content: "";
  width: 24px;
  height: 2px;
  background: var(--main-color-b2b);
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
@media screen and (max-width: 767.5px) {
  .tabContentOuter .tabSelectBtn:before{
    width: 8px;
  }
}


.tabContentOuter .tabSelectBtn li{
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
  width: 50%;
  border: solid 2px;
  padding: 0.7em;
  cursor: pointer;
}
@media screen and (max-width: 767.5px) {
  .tabContentOuter .tabSelectBtn li{
    font-size: 1.6rem;
    line-height: 1.5;
  }
}

.template-b2b .tabContentOuter .tabSelectBtn li.active{
  border-top-width: 4px;
  border-color: var(--main-color-b2b);
  border-bottom: var(--sub-color-b2b);
  color: var(--main-color-b2b);
}
.template-b2b .tabContentOuter .tabSelectBtn li{
  border-bottom-color: var(--main-color-b2b);
}

.tabContentOuter .tabSelectContent{
  /* margin-top: -2px; */
}

.template-b2b .tabContentOuter .tabSelectContent{
  /* border-top: var(--main-color-b2b) solid 2px; */
}

.tabContentOuter .tabSelectContent > div{
  visibility: hidden;
  height: 0;
  overflow: hidden;
  /* margin-top: 32px; */
}
@media screen and (max-width: 767.5px) {
  .tabContentOuter .tabSelectContent > div{
    /* margin-top: 24px; */
  }
}
.tabContentOuter .tabSelectContent > div.active{
  visibility: unset;
  height: auto;
  margin-top: 32px;
}

.generalContent.menu .column4Content{
  gap: 40px 2%;
}
@media screen and (max-width: 767.5px) {
  .generalContent.menu .column4Content{
    flex-direction: row;
    gap: 32px 4%;
  }
}
.generalContent.menu .column4Content > div{
  width: 23.5%;
}
@media screen and (max-width: 767.5px) {
  .generalContent.menu .column4Content > div{
    width: 48%;
  }
}
.generalContent.menu .column4Content > div .columnText{
  padding-bottom: 0;
}
@media screen and (max-width: 767.5px) {
  .generalContent.menu .column4Content > div .columnText{
    padding-top: 16px;
  }
}
.generalContent.menu .column4Content > div .title{
  min-height: 3em;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767.5px) {
  .generalContent.menu .column4Content > div .title{
    font-size: 1.4rem;
  }
}
.generalContent.menu .column4Content > div .txt{
  text-align: center;
  font-size: 1.4rem;
  border-bottom: #ccc solid 1px;
  padding-bottom: 1.3em;
}
@media screen and (max-width: 767.5px) {
  .generalContent.menu .column4Content > div .txt{
    font-size: 1.2rem;
  }
}
.generalContent.menu .column4Content > div .disc{
  font-size: 1.4rem;
  margin-top: 1.3em;
}
@media screen and (max-width: 767.5px) {
  .generalContent.menu .column4Content > div .disc{
    font-size: 1.2rem;
  }
}
.generalContent.menu .column4Content > div .indent{
  font-size: 1.4rem;
  padding-left: 1em;
}
@media screen and (max-width: 767.5px) {
  .generalContent.menu .column4Content > div .indent{
    font-size: 1.2rem;
  }
}


.trainingOther{
  background: #fff;
  border-radius: 12px;
  padding: 24px 36px;
  margin-top: 48px;
}
.service.placement .trainingOther{
  background: var(--sub-color-b2b);
}
@media screen and (max-width: 767.5px) {
  .trainingOther{
    padding: 24px;
    margin-top: 21px;
  }
}
.trainingOther .title{
  border-bottom: #ccc solid 1px;
  padding-bottom: 1em;
  margin-bottom: 1.3em;
  font-weight: 700;
  font-size: 2rem;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
@media screen and (max-width: 767.5px) {
  .trainingOther .title{
    font-size: 1.8rem;
  }
}
.trainingOther .title img{
  width: 30px;
}
.trainingOtherList{
  width: fit-content;
  margin: 0 auto;
  display: flex;
  gap: 48px;
}
@media screen and (max-width: 767.5px) {
  .trainingOtherList{
    display: block;
  }
}


.trainingOtherList .disc{
  font-size: 1.5rem;
}
@media screen and (max-width: 767.5px) {
  .trainingOtherList .disc{
    font-size: 1.4rem;
  }
}

@media screen and (min-width: 767.5px) {
  .service.education .trainingOtherList .disc{
    display: flex;
    flex-wrap: wrap;
    max-width: 1000px;
    margin: 0 auto;
  }
  .service.education .trainingOtherList .disc li{
    width: 25%;
  }
}


.operatorTitle{
  font-size: 2.6rem;
  text-align: center;
  font-weight: 700;
}
@media screen and (max-width: 767.5px) {
  .operatorTitle{
    font-size: 2.1rem;
  }
}

.operatorLankOuter{
  display: flex;
  gap: 16px;
  justify-content: space-between;
  margin-top: 25px;
}
@media screen and (max-width: 767.5px) {
  .operatorLankOuter{
    flex-flow: column;
    margin-top: 15px;
  }
}
.operatorLankOuter > div{
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.operatorLankOuter .operatorLeftInner{
  display: flex;
  gap: 16px;
  justify-content: space-between;
  align-items: flex-start;
}
@media screen and (max-width: 767.5px) {
  .operatorLankOuter .operatorLeftInner{
    flex-flow: column;
    gap: 10px;
  }
}

.operatorLankOuter .operatorLankDisc{
  background: #fff;
  border-radius: 12px;
  padding: 20px 24px;
}
@media screen and (max-width: 767.5px) {
  .operatorLankOuter .operatorLankDisc{
    padding: 0;
    background-color: transparent;
    border-radius: 0;
  }
}
.operatorLankOuter .operatorLeft{
  width: 67%;
}
@media screen and (max-width: 767.5px) {
  .operatorLankOuter .operatorRight,
  .operatorLankOuter .operatorLeft{
    width: 100%;
    flex-flow: column-reverse;
  }
}
.operatorLankOuter .operatorLeft .operatorLankDisc:nth-of-type(1){
  margin-top: 64px;
  width: 50%;
}
@media screen and (max-width: 767.5px) {
  .operatorLankOuter .operatorLeft .operatorLankDisc:nth-of-type(1){
    width: 100%;
    margin-top: 0;
  }
}
.operatorLankOuter .operatorLeft .operatorLankDisc:nth-of-type(2){
  margin-top: 32px;
  width: 50%;
}
@media screen and (max-width: 767.5px) {
  .operatorLankOuter .operatorLeft .operatorLankDisc:nth-of-type(2){
    width: 100%;
    margin-top: 0;
  }
}

.operatorLankOuter .operatorLankDisc .title{
  width: fit-content;
  margin: 0 auto 1em;
  font-size: 2rem;
  font-weight: 700;
  color: var(--main-color-b2b);
  background: var(--sub-color-b2b);
  border-radius: 10px;
  padding: 0.4em 1em;
}
@media screen and (max-width: 767.5px) {
  .operatorLankOuter .operatorLankDisc .title{
    font-size: 1.6rem;
    border-radius: 10px;
    box-shadow: 0 0 6px rgb(0 0 0 / 15%);
    position: relative;
    background: #fff;
    margin-bottom: 0.5em;
    padding: 0.7em 1.2em;
    cursor: pointer;
    width: 100%;
    text-align: center;
  }
  .operatorLankOuter .operatorLankDisc .title:before{
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 18px;
    margin: auto;
    width: 20px;
    height: 20px;
    background: url(../img/common/icon_arrow.svg) center center / 100% auto no-repeat;
    transform: rotate(-90deg);
    transition: 0.2s;
  }
  .operatorLankOuter .operatorLankDisc .title.MenuOpen:before {
    transform: rotate(90deg);
  }
  .operatorLankOuter .operatorLankDisc .disc{
    border-radius: 10px;
    background: #fff;
    padding: 2em 1.2em 2.5em 2.7em;
  }
}


.operatorLankOuter .postLank{
  background: var(--main-color-b2b);
  color: #fff;
  border-radius: 12px;
  font-weight: 700;
  font-size: 2rem;
  padding: 0.7em 0.5em 0.6em;
  text-align: center;
  margin-top: 16px;
}

@media screen and (max-width: 767.5px) {
  .operatorLankOuter .postLank{
    margin: 0 0 16px;
    font-size: 1.6rem;
  }
}


@media screen and (max-width: 767.5px) {
  .column2Content.customize{
    flex-direction: column;
    gap: 16px;
  }
}

.column2Content.customize > div{
  border: #1D3557 solid 2px;
  border-radius: 12px;
  overflow: hidden;
}
@media screen and (max-width: 767.5px) {
  .column2Content.customize > div{
    width: 100%;
    border-radius: 10px;
  }
}

.column2Content.customize{
  align-items: inherit;
}

.column2Content.customize .csBalloon{
  background: #1D3557;
  color: #fff;
  text-align: center;
  padding: 16px 20px 30px;
  position: relative;
}
.column2Content.customize .csBalloon:before{
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 14px solid transparent;
  border-left: 14px solid transparent;
  border-top: 18px solid #1d3557;
  border-bottom: 0;
  position: absolute;
  bottom: -18px;
  left: 0;
  right: 0;
  margin: auto; 
}
.column2Content.customize .csBalloon .number{
  width: 40px;
  margin: 0 auto 10px;
}
@media screen and (max-width: 767.5px) {
  .column2Content.customize .csBalloon .number{
    width: 30px;
  }
}
.column2Content.customize .csBalloon .txt{
  font-size: 2.2rem;
  color: #fff;
  font-weight: 700;
}
@media screen and (max-width: 767.5px) {
  .column2Content.customize .csBalloon .txt{
    font-size: 1.8rem;
  }
}

.column2Content.customize .csDetail{
  padding: 42px 32px 32px;
}
@media screen and (max-width: 767.5px) {
  .column2Content.customize .csDetail{
    padding: 42px 24px 24px;
  }
}
.column2Content.customize .csDetail .recommend .title{
  font-size: 2.2rem;
  text-align: center;
}
@media screen and (max-width: 767.5px) {
  .column2Content.customize .csDetail .recommend .title{
    font-size: 2.0rem;
  }
}
.column2Content.customize .csDetail .recommend .recommendTag{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 56px;
  position: relative;
}
@media screen and (max-width: 767.5px) {
  .column2Content.customize .csDetail .recommend .recommendTag{
    flex-direction: column;
    gap: 36px;
  }
}
.column2Content.customize .csDetail .recommend .recommendTag:before{
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 24px;
  height: 24px;
  background: url(../img/common/icon_cross.svg) center center / 100% auto no-repeat;
}
@media screen and (max-width: 767.5px) {
  .column2Content.customize .csDetail .recommend .recommendTag:before{
    width: 20px;
    height: 20px;
  }
}
.column2Content.customize .csDetail .recommend .recommendTag > *{
  text-align: center;
  border-radius: 10px;
  border: solid 2px;
  font-weight: 700;
  font-size: 2rem;
  width: 40%;
  padding: 0.7em 0.5em;
}
@media screen and (max-width: 767.5px) {
  .column2Content.customize .csDetail .recommend .recommendTag > *{
    font-size: 1.8rem;
    width: 95%;
    padding: 0.4em 0.5em;
    border-radius: 8px;
  }
}


.column2Content.customize .csDetail .program{
  padding-top: 20px;
  margin-top: 24px;
  border-top: #ccc solid 1px;
}
.column2Content.customize .csDetail .program .disc{
  margin: 0.5em 0 0.7em;
}

.column2Content.customize .csDetail > .thinBG{
  font-weight: bold;
  border-radius: 10px;
  padding: 16px;
  margin-top: 1em;
}
@media screen and (max-width: 767.5px) {
  .column2Content.customize .csDetail > .thinBG{
    border-radius: 8px;
  }
}

.column2Content.customize .csDetail > .thinBG .colorALink{
  font-size: 2rem;
  font-weight: 700;
  display: flex;
  gap: 6px;
  margin-bottom: 0.5em;
}
@media screen and (max-width: 767.5px) {
  .column2Content.customize .csDetail > .thinBG .colorALink{
    font-size: 1.6rem;
  }
}
.column2Content.customize .csDetail > .thinBG .colorALink img{
  width: 30px;
}


.generalContent.voice{
  background: #fff !important;
  padding-top: 0 !important;
}
.generalContent.voice .generalMainTitle .en{
  color: #eee !important;
}


.voiceListOuter > div{
  display: flex;
  gap: 20px;
}
.voiceListOuter > div:nth-of-type(n+2){
  margin-top: 32px;
}
.voiceListOuter > div:nth-of-type(2n){
  flex-direction: row-reverse;
}

.voiceListOuter > div .icon{
  width: 80px;
  min-width: 80px;
}
@media screen and (max-width: 767.5px) {
  .voiceListOuter > div .icon{
    width: 60px;
    min-width: 60px;
  }
}
.voiceListOuter > div .voiceTextOuter{
  width: 100%;
  border-radius: 12px;
  position: relative;
  padding: 24px;
}
@media screen and (max-width: 767.5px) {
  .voiceListOuter > div .voiceTextOuter{
    border-radius: 10px;
    padding: 16px;
  }
  .template-about .voiceListOuter > div .voiceTextOuter{
    padding: 24px 16px;
  }
}

.voiceListOuter > div .voiceTextOuter:before{
  content: "";
  width: 0;
  height: 0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 0;
  position: absolute;
  top: 27px;
}
.voiceListOuter > div:nth-of-type(2n+1) .voiceTextOuter:before{
  left: -18px;
}
.voiceListOuter > div:nth-of-type(2n) .voiceTextOuter:before{
  right: -18px;
}
.template-b2b .voiceListOuter > div:nth-of-type(2n+1) .voiceTextOuter:before{
  border-right: 18px solid var(--sub-color-b2b);
}
.template-b2b .voiceListOuter > div:nth-of-type(2n) .voiceTextOuter:before{
  border-left: 18px solid var(--sub-color-b2b);
}
@media screen and (min-width: 767.5px) {
  .template-about .voiceListOuter > div:nth-of-type(2n+1) .voiceTextOuter:before{
    border-right: 18px solid var(--sub-color-about);
  }
  .template-about .voiceListOuter > div:nth-of-type(2n) .voiceTextOuter:before{
    border-left: 18px solid var(--sub-color-about);
  }
}
@media screen and (max-width: 767.5px) {
  .template-about .voiceListOuter > div .voiceTextOuter:before{
    top: -18px;
    left: 16px;
    right: auto;
    border-right: 10px solid transparent;
    border-left: 10px solid transparent;
    border-bottom: 18px solid var(--sub-color-about);
    border-top: 0;
  }
}

.voiceListOuter > div .voiceTextOuter .tab{
  background: var(--main-color2-b2b);
  font-weight: 700;
  color: #fff;
  font-size: 2rem;
  width: fit-content;
  border-radius: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0.7em;
  margin-bottom: 1em;
}
@media screen and (max-width: 767.5px) {
  .voiceListOuter > div .voiceTextOuter .tab{
    font-size: 1.6rem;
    border-radius: 8px;
    line-height: 1.5;
    padding: 0.3em 0.7em;
    min-height: 48px;
    width: auto;
    justify-content: center;
    text-align: center;
  }
}
.template-about .voiceListOuter > div .voiceTextOuter .tab{
  background: var(--main-color2-about);
}
.voiceListOuter > div .voiceTextOuter .tab img{
  width: 30px;
}
@media screen and (max-width: 767.5px) {
  .voiceListOuter > div .voiceTextOuter .tab img{
    width: 24px;
  }
}

.voiceListOuter > div .voiceTextOuter .title{
  font-size: 2rem;
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: 700;

}
@media screen and (min-width: 767.5px) {
  .voiceListOuter > div .voiceTextOuter .title{
    border-bottom: solid 2px;
    padding-bottom: 0.7em;
    margin-bottom: 1.5em;
  }
}
@media screen and (max-width: 767.5px) {
  .voiceListOuter > div .voiceTextOuter .title{
    font-size: 1.8rem;
    position: absolute;
    top: -81px;
    left: 72px;
  }
}
.voiceListOuter > div .voiceTextOuter .title img{
  width: 30px;
}
@media screen and (max-width: 767.5px) {
  .voiceListOuter > div .voiceTextOuter .title img{
    display: none;
  }
}



.generalContent.attention{
  background: var(--sub-color-b2b) !important;
}
.generalContent.attention .generalMainTitle .en{
  color: #fff !important;
}


.attentionListOuter{
  display: flex;
  flex-wrap: wrap;
  gap: 80px 2%;
}
@media screen and (max-width: 767.5px) {
  .attentionListOuter{
    flex-direction: column;
    gap: 56px;
  }
}
.attentionListOuter > div{
  width: 49%;
}
@media screen and (max-width: 767.5px) {
  .attentionListOuter > div{
    width: 100%;
  }
}

.attentionListOuter .attentionContentBox{
  display: none;
}

.attentionListOuter .attentionTitle{
  font-size: 2rem;
  font-weight: 700;
  border-radius: 12px;
  box-shadow: 0 0 6px rgb(0 0 0 / 15%);
  position: relative;
  background: #fff;
  padding: 1.2em;
  cursor: pointer;
}
@media screen and (max-width: 767.5px) {
  .attentionListOuter .attentionTitle{
    border-radius: 10px;
    font-size: 1.6rem;
  }
}
.attentionListOuter .attentionTitle:before{
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 18px;
  margin: auto;
  width: 20px;
  height: 20px;
  background: url(../img/common/icon_arrow.svg) center center / 100% auto no-repeat;
  transform: rotate(90deg);
  transition: 0.2s;
}
.attentionListOuter .attentionTitle.MenuOpen:before{
  transform: rotate(-90deg);
}

.attentionListOuter .attentionTitle span{
  font-size: 1.6rem;
  font-weight: 700;
}
@media screen and (max-width: 767.5px) {
  .attentionListOuter .attentionTitle span{
    font-size: 1.3rem;
    display: block;
  }
}

.generalContent.attention .attentionContentBox{
  padding: 32px 24px 0;
  display: none;
}
@media screen and (max-width: 767.5px) {
  .generalContent.attention .attentionContentBox{
    padding: 24px 16px 0;
  }
}

.attentionContentBox .photoArea{
  border-radius: 12px;
  overflow: hidden;
  max-height: 280px;
  height: 21.5vw;
  background-color: ;
  background: #ccc center center / 100% auto no-repeat;
}
@media screen and (max-width: 767.5px) {
  .attentionContentBox .photoArea{
    height: 43vw;
  }
}
.attentionListOuter > div:nth-of-type(1) .attentionContentBox .photoArea{
  background-image: url(../img/service-education/attention_01.jpg);
}
.attentionListOuter > div:nth-of-type(2) .attentionContentBox .photoArea{
  background-image: url(../img/service-education/attention_02.jpg);
}
.attentionListOuter > div:nth-of-type(3) .attentionContentBox .photoArea{
  background-image: url(../img/service-education/attention_03.jpg);
}
.attentionListOuter > div:nth-of-type(4) .attentionContentBox .photoArea{
  background-image: url(../img/service-education/attention_04.jpg);
}

.attentionListOuter .attentionContentInner > div{
  margin-top: 36px;
}
.attentionListOuter .attentionContentInner > div:nth-of-type(n+2){
  border-top: #ccc solid 1px;
  padding-top: 24px;
}
.attentionListOuter .attentionContentInner .attentionSubTitle{
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 0.7em;
}
.attentionListOuter .attentionContentInner .attentionSubTitle img{
  width: 30px;
}
@media screen and (max-width: 767.5px) {
  .attentionListOuter .attentionContentInner .attentionSubTitle img{
    width: 24px;
  }
}
.attentionListOuter .attentionContentInner .attentionSubTitle.fontsize01{
  font-size: 2rem;
}
@media screen and (max-width: 767.5px) {
  .attentionListOuter .attentionContentInner .attentionSubTitle.fontsize01{
    font-size: 1.8rem;
  }
}
.attentionListOuter .attentionContentInner .attentionSubTitle.fontsize02{
  font-size: 1.8rem;
}
@media screen and (max-width: 767.5px) {
  .attentionListOuter .attentionContentInner .attentionSubTitle.fontsize02{
    font-size: 1.6rem;
  }
}
.attentionListOuter .attentionContentInner .txt + .attentionSubTitle{
  margin-top: 1em;
}

.attentionListOuter .attentionContentInner .attentionNoteBox{
  margin-top: 30px;
  border-radius: 10px;
  background: #fff;
  padding: 24px;
}
@media screen and (max-width: 767.5px) {
  .attentionListOuter .attentionContentInner .attentionNoteBox{
    padding: 16px;
  }
}
.attentionListOuter .attentionContentInner .attentionNoteBox .attentionNoteTitle{
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 6px;
}
.attentionListOuter .attentionContentInner .attentionNoteBox .attentionNoteTitle img{
  width: 24px;
}
.attentionListOuter .attentionContentInner .attentionNoteBox .txt{
  margin-top: 0.7em;
}

.attentionListOuter .attentionBalloonOuter > div{
  background: #fff;
  border-radius: 10px;
  width: 95%;
  margin: 0 auto;
  padding: 24px;
  position: relative;
}
@media screen and (max-width: 767.5px) {
  .attentionListOuter .attentionBalloonOuter > div{
    padding: 16px;
  }
}
.attentionListOuter .attentionBalloonOuter > div:before{
  content: "";
  width: 0;
  height: 0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 0;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}
.attentionListOuter .attentionBalloonOuter > div:nth-of-type(2n+1):before{
  left: -18px;
  border-right: 18px solid #fff;
}
.attentionListOuter .attentionBalloonOuter > div:nth-of-type(2n):before{
  right: -18px;
  border-left: 18px solid #fff;
}
.attentionListOuter .attentionBalloonOuter > div:nth-of-type(n+2){
  margin-top: 16px;
}

.attentionListOuter .attentionBalloonOuter > div .txt:before{
  content: "";
  display: block;
}
.attentionListOuter > div:nth-of-type(1) .attentionBalloonOuter > div.comment1 .txt:before{ 
  content: "リーダーとは一人でリーダーシップを発揮していかなければならないと思っていたが、周囲を巻き込むリーダーシップがあると知り、新鮮だった。";
}
.attentionListOuter > div:nth-of-type(1) .attentionBalloonOuter > div.comment2 .txt:before{ 
  content: "多様性が重視される中で、それぞれの強みを活かしながらビジョンを示すリーダーになりたいと思った。";
}
.attentionListOuter > div:nth-of-type(1) .attentionBalloonOuter > div.comment3,
.attentionListOuter > div:nth-of-type(3) .attentionBalloonOuter > div.comment3,
.attentionListOuter > div:nth-of-type(4) .attentionBalloonOuter > div.comment3{ 
  display: none;
}
.attentionListOuter > div:nth-of-type(2) .attentionBalloonOuter > div.comment1 .txt:before{ 
  content: "1on1を実施する理由が腹落ちし、どう進めると部下が話しやすいのか具体的に理解できた。";
}
.attentionListOuter > div:nth-of-type(2) .attentionBalloonOuter > div.comment2 .txt:before{ 
  content: "進め方がステップで示されていて、その通りに行えば形になる安心感を持てた。";
}
.attentionListOuter > div:nth-of-type(2) .attentionBalloonOuter > div.comment3 .txt:before{ 
  content: "ロールプレイを通じて、「傾聴」の大切さを改めて学んだ。8割こちらが話していたことに気づくことができ、部下の言葉を引き出す大切さを理解できた。";
}
.attentionListOuter > div:nth-of-type(3) .attentionBalloonOuter > div.comment1 .txt:before{ 
  content: "50代を過ぎて「あとは定年を待つだけ」と思っていたが「モダンエルダー」という考え方に出会い視界が開けた。";
}
.attentionListOuter > div:nth-of-type(3) .attentionBalloonOuter > div.comment2 .txt:before{ 
  content: "新しい貢献の仕方という考えを学び、自分の今後のキャリアや職場での在り方を考えるきっかけになった。";
}
.attentionListOuter > div:nth-of-type(4) .attentionBalloonOuter > div.comment1 .txt:before{ 
  content: "クレームとカスハラの差が紙一重であり、防げることがわかった。また、必ずしもお客様の要求・要望に応えなくて良いことを学べた。";
}
.attentionListOuter > div:nth-of-type(4) .attentionBalloonOuter > div.comment2 .txt:before{ 
  content: "今までは、とにかく謝罪することが当たり前だと思い、自身の経験則で対応してきたが、理論的にカスハラを学べてよかった。対応するフレーズも数多く具体的に学べ、実践的な内容で、実用性が高いと感じた。";
}


.attentionBnr{
  border-radius: 12px;
  overflow: hidden;
  margin-top: 80px;
  height: 300px;
  background: url(../img/service-education/attention_bnr_bg.jpg) center center / cover no-repeat;
  display: flex;
  align-items: center;
  padding: 0 40px;
}
@media screen and (max-width: 767.5px) {
  .attentionBnr{
    border-radius: 10px;
    padding: 40px 15px;
    height: auto;
    margin-top: 64px;
  }
}
.attentionBnrInner{
  width: 100%;
  max-width: 1034px;
  margin: 0 auto;
}
.attentionBnr .attentionBnrTitle{
  font-size: 3.2rem;
  font-weight: 700;
  color: #fff;
}
@media screen and (max-width: 767.5px) {
  .attentionBnr .attentionBnrTitle{
    font-size: 2.2rem;
  }
}
.attentionBnr .txt{
  font-size: 2rem;
  margin-top: 0.5em;
  color: #fff;
}
@media screen and (max-width: 767.5px) {
  .attentionBnr .txt{
    font-size: 1.4rem;
    margin-top: 0.7em;
  }
}

.attentionBnr .btnStyle{
  margin-top: 30px;
}
@media screen and (max-width: 767.5px) {
  .attentionBnr .btnStyle{
    margin-top: 24px;
  }
}
.attentionBnr .btnStyle a{
  background: #fff;
  width: 384px;
  height: 64px;
}
@media screen and (max-width: 767.5px) {
  .attentionBnr .btnStyle a{
    width: 285px;
    height: 52px;
  }
}


.service.education .generalContent.flow{
  background: #fff !important;
}
.service.education .generalContent.flow .generalMainTitle .en{
  color: #eee !important;
}

.generalContent.flow .attentionListOuter{
  max-width: 980px;
  margin: 0 auto;
}
@media screen and (max-width: 767.5px) {
  .generalContent.flow .attentionListOuter{
    gap: 40px;
  }
}
.generalContent.flow .attentionListOuter > div{
  width: 100%;
}
.attentionContentBox{
  max-width: 888px;
  margin: 0 auto; 
  /* display: none; */
}
@media screen and (max-width: 767.5px) {
  .attentionContentBox{
    padding: 0;
  }
}

.attentionContentBox .column3Content{
  gap: 40px 5%;
  justify-content: flex-start;
}
.attentionContentBox .column3Content > div{
  width: 30%;
  border: #ccc solid 2px;
  box-shadow: none;
  position: relative;
}
@media screen and (max-width: 767.5px) {
  .attentionContentBox .column3Content > div{
    width: 100%;
  }
}
.attentionContentBox .column3Content > div:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: -17%;
  margin: auto;
  width: clamp(25px, 3.3vw, 40px);
  height: clamp(25px, 3.3vw, 40px);
  background: url(../img/common/icon_arrow_blue.svg) center center / 100% auto no-repeat;
}
@media screen and (max-width: 767.5px) {
  .attentionContentBox .column3Content > div:before {
    right: 0;
    left: 32px;
    transform: translate(-50%,50%) rotate(90deg);
    top: auto;
    bottom: -20px;
    display: block !important;
    width: 32px;
    height: 32px;
  }
  .attentionContentBox .column3Content > div:last-child:before{
    display: none !important;
  }
}

@media screen and (min-width: 767.5px) {
  .attentionContentBox .column3Content > div .columnText{
    padding-top: 40px;
  }
}

@media screen and (max-width: 767.5px) {
  .attentionContentBox .column3Content > div .columnText{
    padding: 16px 20px;
  }
  .attentionContentBox .column3Content > div .columnText .icon{
    width: 50px;
    margin-bottom: 8px;
  }
}
.attentionContentBox .column3Content > div .stepTag{
  background: var(--main-color2-b2b);
}
.attentionContentBox .column3Content > div .title{
  text-align: center;
}
@media screen and (max-width: 767.5px) {
  .attentionContentBox .column3Content > div .title{
    font-size: 1.8rem;
    margin-bottom: 0.5em;
  }
}

.attentionContentBox .column3Content > div .txt{
  text-align: left !important;
}

.attentionContentBox .column3Content.end5 > div:nth-of-type(5):before{
  display: none;
}
@media screen and (min-width: 767.5px) {
  .attentionContentBox .column3Content > div:nth-of-type(3n):before{
    display: none;
  }
}
@media screen and (max-width: 767.5px) {
  .attentionContentBox .column3Content > div:before{
    right: auto;
    left: 50%;
    transform: translate(-50%,50%) rotate(90deg);
    top: auto;
    bottom: -20px;
    display: block !important;
  }
  .attentionContentBox .column3Content > div:last-child:before{
    display: none !important;
  }
}



.service.education .generalContent.faq{
  background: var(--sub-color-b2b) !important;
}
.service.education .generalContent.faq .generalMainTitle .en{
  color: #fff !important;
}


.generalContent.others{
  background: radial-gradient(circle, #cccccc 1px, transparent 1px) 0 0 / 22px 22px !important;
  padding: 64px 0;
}
@media screen and (max-width: 767.5px) {
  .generalContent.others{
    padding: 40px 15px;
  }
}

.generalContent.others .column4Content > div .columnText{
  padding-bottom: 0;
}

@media screen and (max-width: 767.5px) {
  .generalContent.others .column4Content{
    flex-direction: row;
        gap: 32px 4%;
  }
  .generalContent.others .column4Content > div{
    width: 48%;
  }
  .generalContent.others .column4Content > div .title{
    font-size: 1.4rem;
  }
  .generalContent.others .column4Content > div .columnText{
    padding-top: 16px;
  }
}

.generalContent.others .btnStyle{
  max-width: 176px;
  margin: 0 auto;
}
@media screen and (max-width: 767.5px) {
  .generalContent.others .btnStyle{
    width: 70%;
  }
}
.service.education .generalContentOuter.reverse .generalContent:nth-of-type(2n){
  padding-top: 80px
}
@media screen and (max-width: 767.5px) {
  .service.education .generalContentOuter.reverse .generalContent:nth-of-type(2n){
    padding-top: 40px;
  }
}

.temporary-staffing .generalContent.others .temporary-staffing,
.placement .generalContent.others .placement,
.specified-skilled-worker .generalContent.others .specified-skilled-worker,
.education .generalContent.others .education,
.outsourcing .generalContent.others .outsourcing {
  display: none;
}



/* 働く人の意識調査 */

.template-b2b.survey .mainKV.lower .mainKVContent{
  width: 100%;
  text-align: center;
}
@media screen and (max-width: 767.5px) {
  .template-b2b.survey .mainKV.lower .mainKVContent{
    padding: 0;
  }
}
.template-b2b.survey .mainKV.lower .mainKVTitle{
  margin: 10px auto;
}
.template-b2b.survey .mainKV.lower .mainKVTitle > *{
  border-bottom: none;
  padding-bottom: 0;
  font-size: 2.4rem;
  font-weight: 700;
}
@media screen and (max-width: 767.5px) {
  .template-b2b.survey .mainKV.lower .mainKVTitle > *{
    font-size: 1.8rem;
  }
}
.template-b2b.survey .graphTitle > *{
  font-size: 2.4rem;
  font-weight: 700;
}
@media screen and (min-width: 767.5px) {
  .template-b2b.survey .graphTitle > *{
    text-align: center;
  }
}
@media screen and (max-width: 767.5px) {
  .template-b2b.survey .graphTitle > *{
    font-size: 1.8rem;
  }
}
.template-b2b.survey .graphTitle span{
  font-size: 1.6rem;
  font-weight: normal;
}
@media screen and (max-width: 767.5px) {
  .template-b2b.survey .graphTitle span{
    font-size: 1.4rem;
  }
}

.template-b2b.survey .surveyGraph{
  margin-top: 80px;
}
@media screen and (max-width: 767.5px) {
  .template-b2b.survey .surveyGraph{
    margin-top: 40px;
  }
}
.template-b2b.survey .surveyGraph .surveyGraphPhoto.year,
.template-b2b.survey .surveyGraph .surveyGraphPhoto:first-child{
  margin: 0 auto 48px;
  max-width: 480px;
}
@media screen and (max-width: 767.5px) {
  .template-b2b.survey .surveyGraph .surveyGraphPhoto.year,
  .template-b2b.survey .surveyGraph .surveyGraphPhoto:first-child{
    margin-bottom: 24px;
  }
}
.template-b2b.survey .surveyGraph .surveyGraphPhoto.age,
.template-b2b.survey .surveyGraph .surveyGraphPhoto:nth-of-type(2){
  margin: 0 auto;
  max-width: 888px;
}
.template-b2b.survey .surveyGraph .surveyGraphPhoto img{
  width: 100%;
  height: auto;
}

.template-b2b.survey .generalContent .generalLeadouter{
  margin: 40px auto;
}
@media screen and (max-width: 767.5px) {
  .template-b2b.survey .generalContent .generalLeadouter{
    margin: 27px auto;
  }
}

.template-b2b.survey .generalContent .generalLeadouter .title{
  font-size: 2rem;
  line-height: 1.5em;
}
@media screen and (max-width: 767.5px) {
  .template-b2b.survey .generalContent .generalLeadouter .title{
    font-size: 1.6rem
  }
}
.template-b2b.survey .informationOther{
  font-size: 1.5rem;
  padding: 20px;
  max-width: 995px;
  margin: 0 auto 56px;
  background: #fff;
  border-radius: 12px;
}
@media screen and (max-width: 767.5px) {
  .template-b2b.survey .informationOther{
    font-size: 1.4rem;
    padding: 24px 16px;
    margin-bottom: 40px;
    border-radius: 10px;
  }
}
.btnStyle.survey a{
  max-width: 380px;
  height: 64px;
  margin: 0 auto;
}
@media screen and (max-width: 767.5px) {
  .btnStyle.survey a{
    max-width: 285px;
    height: 52px;
  }
}

.template-b2b.survey .generalContent p:empty,
.template-b2b.survey .generalContent br + br{
  display: none;
}


/* ⼈材派遣・紹介予定派遣 */
.occupationAreaBox{
  display: flex;
  gap: 16px;
  max-width: 980px;
  margin: 0 auto;
}
@media screen and (max-width: 767.5px) {
  .occupationAreaBox{
    flex-direction: column;
  }
}
.occupationAreaBox .trainingOther{
  margin-top: 0;
}
@media screen and (min-width: 767.5px) {
  .occupationAreaBox > div:first-child{
    width: 75%;
  }
  .occupationAreaBox > div:last-child{
    width: 25%;
  }
}
.generalContent.occupation .trainingOtherList{
  gap: 5%;
  margin: 0;
}
@media screen and (max-width: 767.5px) {
  .generalContent.occupation .trainingOtherList{
    width: 100%;
  }

  .generalContent.occupation .trainingOtherList > div:nth-of-type(n+2){
    margin-top: 20px;
  }
}

.generalContent.occupation .trainingOtherList .flexBox{
  flex-wrap: wrap;
  gap: 0;
  margin-top: 0.7em;
}
@media screen and (min-width: 767.5px) {
  .generalContent.occupation .trainingOtherList.jobtype > div:first-child{
    width: 55%;
  }
  .generalContent.occupation .trainingOtherList.jobtype > div:last-child{
    width: 40%;
  }
  .generalContent.occupation .trainingOtherList .flexBox.w01 li{
    width: 46%;
  }
  .generalContent.occupation .trainingOtherList .flexBox.w01 li:nth-of-type(2n){
    margin-left: 8%;
  }
  .generalContent.occupation .trainingOtherList .flexBox.w02 li:nth-of-type(2n+1){
    width: 65%;
  }
  .generalContent.occupation .trainingOtherList .flexBox.w02 li:nth-of-type(2n){
    width: 30%;
  }
}

@media screen and (max-width: 767.5px) {
  .generalContent.occupation .trainingOtherList > div .disc{
    display: flex;
    flex-wrap: wrap;
  }
  .generalContent.occupation .trainingOtherList > div .disc li{
    white-space: nowrap;
  }
  .generalContent.occupation .trainingOtherList > div .disc li:nth-of-type(2n+1){
    width: 50%;
  }
  .generalContent.occupation .trainingOtherList > div .disc li:nth-of-type(2n){
    width: 45%;
    margin-left: 5%;
  }
}


.column2Content.howitworks{
  max-width: 980px;
  margin: 0 auto;
}
@media screen and (max-width: 767.5px) {
  .column2Content.howitworks{
    flex-wrap: wrap;
    gap: 38px;
  }
}
.column2Content.howitworks > div{
  border: var(--main-color-b2b) solid 2px;
  border-radius: 12px;
  padding: 48px 32px 32px;
  position: relative;
}
@media screen and (max-width: 767.5px) {
  .column2Content.howitworks > div{
    width: 100%;
    padding: 30px 24px 24px;
  }
}
.column2Content.howitworks .balloon{
  border: solid 2px;
  border-radius: 50px;
  text-align: center;
  width: fit-content;
  padding: 0.4em 1em;
  position: absolute;
  top: -1.5em;
  left: 0;
  right: 0;
  margin: auto;
  background: #fff;
  font-weight: 700;
}
@media screen and (max-width: 767.5px) {
  .column2Content.howitworks .balloon{
    font-size: 1.5rem;
  }
}
.column2Content.howitworks > div .title{
  font-size: 2.2rem;
  border-bottom: solid 2px;
  width: fit-content;
  padding-bottom: 0.2em;
  margin: 0 auto 1em;
}
@media screen and (max-width: 767.5px) {
  .column2Content.howitworks > div .title{
    font-size: 1.8rem;
  }
  .column2Content.howitworks > div .text{
    font-size: 1.5rem;
  }
}
.column2Content.howitworks > div ul{
  margin-top: 20px;
}
.column2Content.howitworks > div .btnStyle {
  margin-top: 30px;
}
@media screen and (max-width: 767.5px) {
  .column2Content.howitworks > div .btnStyle {
    margin-top: 20px;
  }
}
.column2Content.howitworks > div .btnStyle a{
  height: 64px;
}
@media screen and (max-width: 767.5px) {
  .column2Content.howitworks > div .btnStyle a{
    height: 52px;
  }
}

.column2Content.howitworks ul li{
  padding-left: 28px;
  position: relative;
  font-size: 1.5rem;
}
@media screen and (max-width: 767.5px) {
  .column2Content.howitworks ul li{
    font-size: 1.4rem;
  }
}
.column2Content.howitworks ul li:before{
  content: "";
  background: url(../img/b2b/number_01.svg) center top / 100% auto no-repeat;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 24px;
  height: 24px;
}
.column2Content.howitworks ul li:nth-of-type(2):before{
  background-image: url(../img/b2b/number_02.svg);
}
.column2Content.howitworks ul li:nth-of-type(3):before{
  background-image: url(../img/b2b/number_03.svg);
}
.column2Content.howitworks ul li:nth-of-type(n+2){
  margin-top: 0.3em;
}

.howitworksLink{
  text-align: center;
  margin-top: 50px;
  font-size: 1.5rem;
}
@media screen and (max-width: 767.5px) {
  .howitworksLink{
    margin-top: 30px;
    font-size: 1.4rem;
  }
}


.triangleContent > div:nth-of-type(n+2){
  margin-top: 80px;
}
@media screen and (max-width: 767.5px) {
  .triangleContent > div:nth-of-type(n+2){
    margin-top: 56px;
  }
}

.triangleContent .triangleTitle{
  font-size: 2.6rem;
  font-weight: 700;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  margin-bottom: 0.7em;
}
@media screen and (max-width: 767.5px) {
  .triangleContent .triangleTitle{
    font-size: 2.1rem;
  }
}
.triangleContent .triangleTitle img{
  width: 40px;
}
@media screen and (max-width: 767.5px) {
  .triangleContent .triangleTitle img{
    width: 30px;
  }
}

[class*="column"].support > div .columnText .triangleTitle{
  font-size: 2rem;
}
@media screen and (max-width: 767.5px) {
  [class*="column"].support > div .columnText .triangleTitle{
    font-size: 1.8rem;
  }
}
[class*="column"].support > div .columnText  .triangleTitle img{
  width: 30px;
}

.triangleContent .triangleTxt{
  text-align: center;
  margin-bottom: 2em;
}

.triangleContent .triangleFigure{
  max-width: 640px;
  margin: 0 auto;
}

.guidelineOuter{
  display: flex;
  justify-content: center;
  gap: 16px;
}
@media screen and (max-width: 767.5px) {
  .guidelineOuter{
    flex-wrap: wrap;
    gap: 8px;
  }
}
.guidelineOuter > div{
  background: #F6F6F6;
  border-radius: 10px;
  padding: 24px;
  text-align: center;
  width: 100%;
}
@media screen and (max-width: 767.5px) {
  .guidelineOuter > div{
    border-radius: 8px;
    padding: 16px 24px 24px;
  }
}

.guidelineOuter > div .tag{
  width: fit-content;
  border-radius: 50px;
  margin: 0 auto 1em;
  padding: 0.6em 2em;
  background: #fff;
  font-weight: 700;
}
@media screen and (max-width: 767.5px) {
  .guidelineOuter > div .tag{
    font-size: 1.5rem;
  }
}
.guidelineOuter > div .bold{
  font-size: 1.8rem;
}
@media screen and (max-width: 767.5px) {
  .guidelineOuter > div .bold{
    font-size: 1.6rem;
  }
}
.guidelineOuter > div .txt{
  font-size: 1.4rem;
}



/*人材紹介*/
.generalContent.expense .btnStyle {
  max-width: 400px;
  margin: 48px auto 0;
}
@media screen and (max-width: 767.5px) {
  .generalContent.expense .btnStyle{
    margin-top: 32px;
  }
}

.generalContent.expense .btnStyle a{
  font-size: 2.4rem;
  min-height: 72px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.expense .btnStyle a{
    min-height: 68px;
    font-size: 2rem;
  }
}
.generalContent.expense .btnStyle img{
  width: 43px;
}


/* アウトソーシング */
.generalContent.businessdomain [class*="column"] > div .title,
.generalContent.solve [class*="column"] > div .title{
  margin-bottom: 0;
  padding-bottom: 0;
  border: none;
  text-align: center;
}



.generalContent.solve .column3Content{
  margin-top: 70px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.solve .column3Content{
    margin-top: 53px;
    gap: 53px;
  }
}
.generalContent.solve .column3Content > div{
  background: none;
  box-shadow: none;
}
.generalContent.solve .column3Content > div .columnText{
  border-radius: 12px;
  background: #fff;
  position: relative;
  padding-top: 40px;
}
.generalContent.solve .column3Content > div .columnText:last-child{
  margin-top: 82px;
  border: var(--main-color-b2b) solid 2px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.solve .column3Content > div .columnText:last-child{
    margin-top: 70px;
  }
}
.generalContent.solve .column3Content > div .columnText:last-child:before{
  content: "";
  position: absolute;
  top: -71px;
  left: 0;
  right: 0;
  margin: auto;
  width: 40px;
  height: 40px;
  background: url(../img/common/icon_arrow_blue02.svg) center center / 100% auto no-repeat;
  transform: rotate(90deg);
}
@media screen and (max-width: 767.5px) {
  .generalContent.solve .column3Content > div .columnText:last-child:before{
    top: -59px;
    width: 30px;
    height: 30px;
  }
}

.generalContent.solve .column3Content > div .columnText .tag{
  font-weight: 700;
  position: absolute;
  top: -1.3em;
  left: 0;
  right: 0;
  margin: auto;
  width: fit-content;
  border-radius: 50px;
  border: solid 2px;
  background: #fff;
  padding: 0.4em 1.3em;
}
@media screen and (max-width: 767.5px) {
  .generalContent.solve .column3Content > div .columnText .tag{
    font-size: 1.5rem;
  }
}
.generalContent.solve .column3Content > div .columnText:last-child .tag{
  background: var(--main-color-b2b);
  color: #fff;
  border-color: var(--main-color-b2b);
}
.generalContent.solve .column3Content > div .columnText:first-child .title{
  font-size: 1.8rem;
}
@media screen and (max-width: 767.5px) {
  .generalContent.solve .column3Content > div .columnText:first-child .title{
    font-size: 1.6rem;
  }
  .generalContent.solve .column3Content > div .columnText:last-child .title{
    font-size: 1.8rem;
  }

}


.generalContent.solve .btnStyleOuter{
  margin-top: 40px;
  text-align: center;
}
@media screen and (max-width: 767.5px) {
  .generalContent.solve .btnStyleOuter{
    margin-top: 32px;
  }
}



/* 特定技能外国人就労支援 */
.specified-skilled-worker .insuranceTable{
  margin: 80px auto 0;
}
@media screen and (max-width: 767.5px) {
  .specified-skilled-worker .insuranceTable{
    margin-top: 50px;
    /* margin-left: -15px; */
    width: 100vw;
  }
}
.specified-skilled-worker .insuranceTable table thead tr th:not(.colorBG){
  background-color: #999;
  color: #fff;
}
.specified-skilled-worker .insuranceTable table thead tr th.borderNone{
  border: none;
  background: none;
}
.specified-skilled-worker .insuranceTable table thead tr th.colorBG,
.specified-skilled-worker .insuranceTable table tbody tr td:first-of-type{
  border-left: solid 3px var(--main-color-b2b);
  border-right: solid 3px var(--main-color-b2b);
}
.specified-skilled-worker .insuranceTable table tbody tr td:first-of-type{
  color: var(--main-color-b2b);
  font-weight: 700;
}
.specified-skilled-worker .insuranceTable table tr:last-child td:first-of-type{
  border-bottom: solid 3px var(--main-color-b2b);
}

.specified-skilled-worker .insuranceTable table tbody tr th{
  background: #f6f6f6;
}
.specified-skilled-worker .insuranceTable table tbody tr td{
  color: #999;
  background: #fff;
}
/* .specified-skilled-worker .insuranceTable table tbody tr td ul{
  padding-left: 1.5em;
}
.specified-skilled-worker .insuranceTable table tbody tr td ul li{
  list-style: disc;
}
.specified-skilled-worker .insuranceTable table tbody tr td:first-of-type ul li{
  font-weight: 700;
} */

.specified-skilled-worker .triangleContent{
  margin-top: 70px;
}
@media screen and (max-width: 767.5px) {
  .specified-skilled-worker .triangleContent{
    margin-top: 50px;
  }

  .specified-skilled-worker .generalContent.interview .triangleContent{
    margin-top: 40px;
  }
}


.generalContent.foreigner [class*="column"]{
  gap: 8px 2%;
}
@media screen and (max-width: 767.5px) {
  .generalContent.foreigner [class*="column"]{
    flex-direction: row;
  }
}

@media screen and (min-width: 767.5px) {
  .generalContent.foreigner [class*="column"] > div{
    width: 15%;
  }
}
@media screen and (max-width: 767.5px) {
  .generalContent.foreigner [class*="column"] > div{
    width: 32%;
  }
}

.generalContent.foreigner [class*="column"] > div .columnText{
  padding-left: 0;
  padding-right: 0;
}
@media screen and (max-width: 767.5px) {
  .generalContent.foreigner [class*="column"] > div .columnText{
    padding: 14px 0;
    justify-content: center;
  }
}
.generalContent.foreigner [class*="column"] > div .title{
  margin-bottom: 0;
  padding-bottom: 0;
  border: none;
  text-align: center;
  font-size: 2rem;
}
@media screen and (max-width: 767.5px) {
  .generalContent.foreigner [class*="column"] > div .title{
    font-size: 1.4rem;
  }

  .generalContent.foreigner [class*="column"] > div .icon{
    width: 40px;
    margin-bottom: 0;
  }
}







.rootFigure{
  max-width: 980px;
  margin: 0 auto 80px;
}
@media screen and (max-width: 767.5px) {
  .rootFigure{
    margin-bottom: 40px;
  }
}

.generalContent.root .column2Content.customize > div{
  border-color: var(--main-color-b2b);
}
.generalContent.root .column2Content.customize .csDetail{
  padding-top: 30px;
}
.column2Content.customize .csTitleArea{
  display: flex;
  align-items: center;
  gap: 16px;
}
@media screen and (max-width: 767.5px) {
  .column2Content.customize .csTitleArea{
    gap: 12px;
  }
}
.column2Content.customize .csTitleArea .icon{
  width: 70px;
}
@media screen and (max-width: 767.5px) {
  .column2Content.customize .csTitleArea .icon{
    width: 50px;
  }
}
.column2Content.customize .csTitleArea .title{
  font-size: 2.4rem;
  margin-bottom: 0.2em;
}
@media screen and (max-width: 767.5px) {
  .column2Content.customize .csTitleArea .title{
    font-size: 2.1rem;
  }
}
.generalContent.root .column2Content.customize .csDetail .program .bold{
  font-size: 2rem;
  margin-bottom: 0.5em;
}
@media screen and (max-width: 767.5px) {
  .generalContent.root .column2Content.customize .csDetail .program .bold{
    font-size: 1.6rem;
  }
}
.generalContent.root .column2Content.customize .csDetail .program li:nth-of-type(n+2){
  margin-top: 25px;
}

.generalContent.root > * > .thinBG{
  margin-top: 48px;
  font-size: 2rem;
  font-weight: 700;
  padding: 0.7em;
  text-align: center;
  border-radius: 12px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.root > * > .thinBG{
    margin-top: 32px;
    font-size: 1.6rem;
    border-radius: 10px;
    padding: 1em 0.7em;
  }
}



.generalContent.sending-organization{
  overflow: hidden;
}

.column3Content.employ_sending{
  margin-top: 40px;
}
@media screen and (max-width: 767.5px) {
  .column3Content.employ_sending{
    margin-top: 30px;
    flex-direction: row;
    justify-content: center;
    gap: 8px 2%;
  }

  .column3Content.employ_sending > div{
    width: 49%;
  }
}

.column3Content.employ_sending .photo{
  border-radius: 0;
}

.specified-skilled-worker .generalContent.support {
  background: #fff !important;
}

.workerSupportTitle{
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: center;
  color: #fff;
  border-radius: 12px;
  background: var(--main-color2-b2b);
  margin-top: 40px;
  padding: 0.8em;
}
@media screen and (max-width: 767.5px) {
  .workerSupportTitle{
    font-size: 1.5rem;
    gap: 6px;
    border-radius: 10px;
    margin-top: 30px;
  }
}


.workerSupportTitle img{
  width: 40px;
}
@media screen and (max-width: 767.5px) {
  .workerSupportTitle img{
    width: 30px;
  }
}



.supportListOuter{
  position: relative;
  margin-top: 16px;
}
.supportListOuter::before{
  content: "";
  position: absolute;
  width: 4px;
  height: 96%;
  left: 36px;
  top: 2%;
  background: #ccc;
}
@media screen and (max-width: 767.5px) {
  .supportListOuter::before{
    left: 27px;
    width: 3px;
    height: 95%;
  }
}
.supportListOuter > div{
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 20px;
  position: relative;
}
@media screen and (max-width: 767.5px) {
  .supportListOuter > div{
    align-items: flex-start;
    gap: 6px;
    margin-bottom: 16px;
  }
}
.supportListOuter > div .icon{
  width: 72px;
  height: 72px;
  background: #fff;
  border-radius: 12px;
  border: var(--main-color-b2b) solid 2px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767.5px) {
  .supportListOuter > div .icon{
    width: 58px;
    height: 58px;
    border-radius: 10px;
  }
}
.supportListOuter > div .icon img{
  width: 40px;
}
@media screen and (max-width: 767.5px) {
  .supportListOuter > div .icon img{
    width: 30px;
  }
}
.supportTextTitle{
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 1.8rem;
  font-weight: 700;
  color: var(--main-color-b2b);
}
@media screen and (max-width: 767.5px) {
  .supportTextTitle{
    gap: 6px;
    font-size: 1.5rem;
  }
}
.supportTextTitle img{
  width: 40px;
}
@media screen and (max-width: 767.5px) {
  .supportTextTitle img{
    width: 30px;
  }
}
.supportTextOuter{
  border: solid 2px var(--main-color-b2b);
  border-radius: 12px;
  padding: 1em 1.5em;
  display: flex;
  gap: 24px;
  align-items: center;
  flex: 1;
  box-sizing: border-box;
  min-height: 72px;
}
@media screen and (max-width: 767.5px) {
  .supportTextOuter{
    border-radius: 10px;
    padding: 0.7em 1em 1em;
    gap: 6px; 
    flex-direction: column;
    align-items: flex-start;
    min-height: auto;
  }

  .supportTextBox{
    padding-left: 36px;
  }
}


.generalContent.situation .column3Content .photo{
  border-radius: 0;
}
@media screen and (max-width: 767.5px) {
  .generalContent.situation .column3Content .columnText{
    padding: 15px;
  }
}

.generalContent.situation .column3Content .title{
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  margin-bottom: 1em;
}
@media screen and (max-width: 767.5px) {
  .generalContent.situation .column3Content .title{
    margin-bottom: 0.7em;
    font-size: 1.8rem;
  }
}
.generalContent.situation .column3Content .title img{
  width: 30px;
}
.generalContent.situation .column3Content .btnStyle{
  max-width: 176px;
  margin: 0 auto;
}
@media screen and (max-width: 767.5px) {
  .generalContent.situation .column3Content .btnStyle{
    max-width: 109px;
  }
}


.workerInterviewToggle{
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 0 6px rgb(0 0 0 / 15%);
  position: relative;
  padding: 24px 40px 30px 24px;
  cursor: pointer;
}
@media screen and (max-width: 767.5px) {
  .workerInterviewToggle{
    padding: 16px 40px 20px 16px;
  }
}
.workerInterviewToggle:before{
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 18px;
  margin: auto;
  width: 20px;
  height: 20px;
  background: url(../img/common/icon_arrow.svg) center center / 100% auto no-repeat;
  transform: rotate(-90deg);
  transition: 0.2s;
}
@media screen and (max-width: 767.5px) {
  .workerInterviewToggle:before{
    right: 16px;
    width: 16px;
    height: 16px;
  }
}
.workerInterviewToggle.MenuOpen:before{
  transform: rotate(90deg);
}


.workerInterviewToggle .toggleTitle{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  font-size: 2.6rem;
  font-weight: 700;
  margin-bottom: 0.5em;
}
@media screen and (max-width: 767.5px) {
  .workerInterviewToggle .toggleTitle{
    font-size: 2.1rem;
  }
}
.workerInterviewToggle .toggleTitle img{
  width: 40px;
}


.workerInterviewPerson{
  display: flex;
  align-items: center;
  gap: 48px;
}
@media screen and (max-width: 767.5px) {
  .workerInterviewPerson{
    flex-direction: column;
    gap: 20px;
  }
}
.workerInterviewPerson .photo{
  border-radius: 12px;
  width: 380px;
  overflow: hidden;
}
@media screen and (max-width: 767.5px) {
  .workerInterviewPerson .photo{
    border-radius: 10px;
    width: 100%;
  }
}
.workerInterviewPerson .postOuter .post{
  font-size: 3.2rem;
  font-weight: 700;
  border-bottom: solid 2px;
  width: fit-content;
  margin: 0 auto;
}
@media screen and (max-width: 767.5px) {
  .workerInterviewPerson .postOuter .post{
    font-size: 2.2rem;
  }
}
.workerInterviewPerson .postOuter .note{
  margin-top: 20px;
}
@media screen and (max-width: 767.5px) {
  .workerInterviewPerson .postOuter .note{
    margin-top: 12px;
    text-align: center;
  }
}


.specified-skilled-worker .generalContent.achievement .triangleContent{
  margin-top: 0;
}

.generalContent.achievement .triangleFigure{
  max-width: 980px;
}


.skilledWorkerCTA{
  border-radius: 12px;
  border: var(--main-color-b2b) solid 2px;
  padding: 40px;
  text-align: center;
  background: #fff;
}
@media screen and (max-width: 767.5px) {
  .skilledWorkerCTA{
    padding: 30px 24px;
  }
}

.skilledWorkerCTA .mainKVTitle > *{
  font-size: 3.2rem;
  line-height: 1.5;
  text-align: center;
  border-bottom: solid 2px;
  width: fit-content;
  margin: 0 auto;
  padding-bottom: 0.3em;
}
@media screen and (max-width: 767.5px) {
  .skilledWorkerCTA .mainKVTitle > *{
    font-size: 2.2rem;
  }
}

.skilledWorkerCTA .mainKVBtn{
  margin: 32px auto 0;
}



/* お問い合わせ */
.generalContent.contactform .column3Content > div{
  box-shadow: none;
  overflow: hidden;
}
.generalContent.contactform .generalContentInner > .column3Content > div:first-child{
  width: 100%;
}


.generalContent.contactform .column3Content .contactTitle{
  color: #fff;
  font-size: 3rem;
  text-align: center;
  background: var(--main-color2-b2b);
  font-weight: 700;
  padding: 0.5em 0;
}
@media screen and (max-width: 767.5px) {
  .generalContent.contactform .column3Content .contactTitle{
    font-size: 2.2rem;
  }
}

@media screen and (min-width: 767.5px) {
  .generalContent.contactform .generalContentInner > .column3Content > div .columnText{
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .generalContent.contactform .generalContentInner > .column3Content > div .columnText > *{
    max-width: 760px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 767.5px) {
  .generalContent.contactform .generalContentInner > .column3Content > div .columnText > *{
    flex-direction: row;
  }
  .generalContent.contactform .generalContentInner > .column3Content .column3Content{
    gap: 32px 4%;
  }
  .generalContent.contactform .generalContentInner > .column3Content .column3Content > div{
    width: 48%;
  }
}
.generalContent.contactform .generalContentInner > .column3Content > div .columnText div:not([class]){
  max-width: 232px;
  margin: 0 auto;
}

.generalContent.contactform .title{
  text-align: center;
  margin: 20px auto 0;
  line-height: 1em;
}
@media screen and (max-width: 767.5px) {
  .generalContent.contactform .title{
    margin-top: 17px;
  }
}
.generalContent.contactform .photo{
  border-radius: 12px;
}
.generalContent.contactform .btnStyle{
  margin-top: 24px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.contactform .btnStyle{
    margin-top: 18px;
    max-width: 168px;
    margin-left: auto;
    margin-right: auto;
    white-space: nowrap;
    font-size: 1.3rem;
  }
}

.generalContent.contactform .generalContentInner > .btnStyle{
  margin: 48px auto 0;
  font-size: 2.4rem;
  max-width: 400px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.contactform .generalContentInner > .btnStyle{
    margin-top: 32px;
    font-size: 2.1rem;
  }
}
.generalContent.contactform .generalContentInner > .btnStyle a{
  height: 72px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.contactform .generalContentInner > .btnStyle a{
    height: 68px;
  }
}
.generalContent.contactform .generalContentInner > .btnStyle img{
  width: 43px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.contactform .generalContentInner > .btnStyle img{
    width: 34px;
  }
}



/* top about */
.template-about .generalContentOuter .generalContent:nth-of-type(2n+1){
  background: var(--sub-color-about);
}
.template-about .generalContentOuter.reverse .generalContent:nth-of-type(2n){
  background: var(--sub-color-about);
}
.template-about .generalContentOuter.reverse .generalContent:nth-of-type(2n+1){
  background: #fff;
}



.generalContent.aboutLead{
  padding-top: 50px;
  padding-bottom: 50px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.aboutLead {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
.generalContent.aboutLead .generalLeadouter{
  margin-bottom: 0;
}
.generalContent.aboutLead .generalLeadouter .title{
  font-size: 3.2rem;
}
@media screen and (max-width: 767.5px) {
  .generalContent.aboutLead .generalLeadouter .title{
    font-size: 2.2rem;
    line-height: 1.4;
  }
}
.generalContent.aboutLead .generalLeadouter a{
  display: block;
  margin-top: 0.5em;
}


@media screen and (max-width: 767.5px) {
  .generalContent.philosophy .column2Content{
    flex-direction: column-reverse;
    gap: 40px;
  }
  .generalContent.philosophy .column2Content > * {
    width: 100%;
  }
}

.generalContent.philosophy .column2Content ul{
  padding-left: 0;
}
.generalContent.philosophy .column2Content li:before{
  content: "";
  width: 5px;
  height: 5px;
  background: var(--main-color-about);
  border-radius: 50%;
  top: 15px;
  left: 0;
}
@media screen and (max-width: 767.5px) {
  .generalContent.philosophy .column2Content li:before{
    top: 11px;
  }
}

.generalContent.philosophy .column2Content .en{
  font-size: 2rem;
  font-family: "Lato", sans-serif;
  margin-bottom: 0.2em;
  padding-left: 13px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.philosophy .column2Content .en{
    font-size: 1.6rem;
  }
}
.generalContent.philosophy .column2Content > div .title {
  font-size: 2.2rem;
  margin-bottom: 0.3em;
}
@media screen and (max-width: 767.5px) {
  .generalContent.philosophy .column2Content > div .title {
    font-size: 1.8rem;
  }
}

.generalContent.philosophy .column2Content ul.disc > li{
  padding-left: 0;
}
.generalContent.philosophy .column2Content ul.disc > li:nth-of-type(n+2){
  margin-top: 45px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.philosophy .column2Content ul.disc > li:nth-of-type(n+2){
    margin-top: 25px;
  }
}
.generalContent.philosophy .column2Content ul ul li{
  color: #333 !important;
}


.sloganOuter{
  text-align: center;
}
.sloganOuter .title{
  font-size: 3.2rem;
  font-weight: 700;
}
@media screen and (max-width: 767.5px) {
  .sloganOuter .title{
    font-size: 2.2rem;
  }
}
.sloganOuter .leadCenter{
  font-size: 2rem;
  font-weight: 700;
  margin-top: 1.5em;
}
@media screen and (max-width: 767.5px) {
  .sloganOuter .leadCenter{
    font-size: 1.8rem;
    margin-top: 0.5em;
  }
}

.aboutListOuter > ul > li:nth-of-type(n+2){
  margin-top: 35px;
}
@media screen and (max-width: 767.5px) {
  .aboutListOuter > ul > li:nth-of-type(n+2){
    margin-top: 30px;
  }
}
.aboutListOuter ul .title{
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 0.5em;
}
@media screen and (max-width: 767.5px) {
  .aboutListOuter ul .title{
    font-size: 1.8rem;
  }
}

.about .aboutListOuter ul ul li{
  margin-top: 0.5em;
  text-indent: -2.5em;
  padding-left: 2.5em;
}

.aboutListOuter ul .txt > * + *{
  margin-top: 1em;
}

.aboutListOuter ul + .right{
  margin-top: 45px;
}
@media screen and (max-width: 767.5px) {
  .aboutListOuter ul + .right{
    margin-top: 35px;
  }
}

.aboutListOuter .right + .right{
  margin-top: 1em;
}


.generalContent.behavioral .disc li:nth-of-type(n+2){
  margin-top: 0.7em;
}


.generalContent.behavioral .featuresOther{
  margin-top: 25px;
}
.template-about .featuresOther .column2Content{
  border: #ccc solid 1px;
}
.template-about .featuresOther .column2Content .txt + .txt{
  margin-top: 0.5em;
}

.profileTable table{
  width: 100%;
  border-top: #ccc solid 1px;
}
.profileTable table tr th,
.profileTable table tr td{
  padding: 25px 0;
  border-bottom: #ccc solid 1px;
}
@media screen and (max-width: 767.5px) {
  .profileTable table tr th,
  .profileTable table tr td{
    padding: 20px 0;
    display: block;
  }
}
.profileTable table tr th{
  font-weight: 700;
  text-align: center;
  width: 9em;
}
@media screen and (max-width: 767.5px) {
  .profileTable table tr th{
    width: auto;
    border: none;
    padding-bottom: 0;
    text-align: left;
  }
}

@media screen and (min-width: 767.5px) {
  .profileTable table tr td{
    padding-left: 40px;
  }
}
@media screen and (max-width: 767.5px) {
  .profileTable table tr td{
    padding-top: 15px;
  }
}


@media screen and (max-width: 767.5px) {
  .generalContent.ir .column2Content{
    flex-direction: column;
    gap: 30px;
  }
  .generalContent.ir .column2Content > * {
    width: 100%;
  }
}
.irTable .title{
  font-size: 2.6rem !important;
  text-align: center;
}
@media screen and (max-width: 767.5px) {
  .irTable .title{
    font-size: 2.1rem !important;
  }
}
.irTable table{
  width: 100%;
}
.irTable table tr th,
.irTable table tr td{
  padding: 25px 0;
  border-bottom: #ccc solid 1px;
  text-align: center;
}
@media screen and (max-width: 767.5px) {
  .irTable table tr th,
  .irTable table tr td{
    padding: 20px 0;
  }
}
.irTable table tr th{
  font-weight: 700;
  text-align: center;
  background: var(--main-color-about);
  color: #fff;
}
.irTable table tr > *:first-child{
  width: 9em;
}
.irTable table tr td{
  background: #fff;
}


.generalContent.ir .column2Content{
  align-items: flex-start;
}


/* 採用情報 */
.generalContent.recruitment .column2Content{
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 50px 2%;
}
@media screen and (max-width: 767.5px) {
  .generalContent.recruitment .column2Content{
    flex-direction: column;
  }
}
.generalContent.recruitment .column2Content > *{
  overflow: hidden;
  border-radius: 12px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.recruitment .column2Content > *{
    width: auto;
  }
}
.generalContent.recruitment .stepTag{
  font-size: 1.8rem;
  font-weight: 700;
  padding: 0.5em 1.7em;
}
@media screen and (max-width: 767.5px) {
  .generalContent.recruitment .stepTag{
    font-size: 1.6rem;
    padding: 0.8em 1.5em;
  }
}
.generalContent.recruitment .photo{
  overflow: hidden;
  border-radius: 12px;
  aspect-ratio: 2/1;
  display: flex;
}
.generalContent.recruitment .photo img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.generalContent.recruitment .column2Content > div .title{
  font-size: 2.4rem;
  margin-top: 1em;
}
@media screen and (max-width: 767.5px) {
  .generalContent.recruitment .column2Content > div .title{
    font-size: 1.8rem;
    margin-bottom: 0.4em;
  }
}
.generalContent.recruitment .column2Content > div .note{
  font-size: 1.4rem;
  margin-top: 1em;
}
@media screen and (max-width: 767.5px) {
  .generalContent.recruitment .column2Content > div .note{
    font-size: 1.2rem;
    margin-top: 0.7em;
  }
}

.generalContent.recruitment .column2Content > div .btnStyle{
  margin: 25px auto 0;
  max-width: 256px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.recruitment .column2Content > div .btnStyle{
    max-width: 160px;
  }
}

.generalContent.recruitment > * > .btnStyle{
  margin: 72px auto 0;
  max-width: 520px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.recruitment > * > .btnStyle{
    margin-top: 45px;
  }
}
.generalContent.recruitment > * > .btnStyle a{
  font-size: 2.4rem;
  height: 72px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.recruitment > * > .btnStyle a{
    font-size: 1.8rem;
    height: 68px;
    white-space: nowrap;
  }
}
.generalContent.recruitment > * > .btnStyle a img{
  width: 43px;
}
@media screen and (max-width: 767.5px) {
  .generalContent.recruitment > * > .btnStyle a img{
    width: 34px;
  }
}


@media screen and (max-width: 767.5px) {
  .template-about .voiceListOuter > div{
    flex-direction: column;
    position: relative;
  }
}


/* プライバシーポリシー */
.privacy_policy .aboutListOuter{
  margin-top: 35px;
}

.privacyTable table{
  width: 100%;
}
.privacyTable table tr th,
.privacyTable table tr td{
  padding: 25px 20px;
  border: #ccc solid 1px;
}
@media screen and (max-width: 767.5px) {
  .privacyTable table tr th,
  .privacyTable table tr td{
    padding: 15px;
  }
}
.privacyTable table tr th{
  font-weight: 700;
  text-align: center;
  background: #F6F6F6;
  text-align: center;
}
.privacyTable table tr *:first-child{
  width: 37%;
  text-align: center;
}
@media screen and (max-width: 767.5px) {
  .privacyTable table tr *:first-child{
    width: 50%;
  }
}

.privacyTable .note{
  color: #999;
  font-size: 1.5rem;
  margin-top: 1em;
}
@media screen and (max-width: 767.5px) {
  .privacyTable .note{
    font-size: 1.4rem;
  }
}



/* 404 */
.page404 .pageHeader{
  padding-bottom: 33px;
}
@media screen and (max-width: 767.5px) {
  .page404 .pageHeader{
    padding-bottom: 24px;
  }
}
.page404NotFound{
  background: #F6F6F6;
  padding: 56px 40px;
  text-align: center;
}
@media screen and (max-width: 767.5px) {
  .page404NotFound{
    padding: 40px 15px;
  }
}
.page404NotFound .image{
  max-width: 300px;
  margin: 0 auto;
}
@media screen and (max-width: 767.5px) {
  .page404NotFound .image{
    max-width: 140px;
  }
}
.page404NotFound .title{
  font-size: 2.4rem;
  margin-top: 1.5em;
}
@media screen and (max-width: 767.5px) {
  .page404NotFound .title{
    font-size: 2.1rem;
  }
}
.page404NotFound .txt{
  margin-top: 1em;
}
.page404NotFound .btnStyle{
  margin: 1.5em auto 0;
  max-width: 384px;
}
@media screen and (max-width: 767.5px) {
  .page404NotFound .btnStyle{
    margin-top: 1em;
    max-width: 285px;
  }
}
.page404NotFound .btnStyle a{
  height: 64px;
  background: #fff;
}
@media screen and (max-width: 767.5px) {
  .page404NotFound .btnStyle a{
    height: 52px;
  }
}