@charset "UTF-8";


/* パンくず・ページネーション
---------------------------------------------------------*/
.breadcrumbs__lists{
  display: flex;
  flex-wrap: wrap;
  margin-top:var(--c-mg8);
  padding:0 0 0 var(--cont-pd-w);
}
.breadcrumbs__lists li {
  width:fit-content;
  font-size:1.1rem;
  font-weight: var(--fw-b);
  position: relative;
  display: flex;
  align-items: center;
  padding:12px 18px 12px 0;
}

.breadcrumbs__lists li::after{
  content:"";
  display: block;
  width:10px;
  height:2px;
  background:var(--clr-lbl);
  position: absolute;
  top:50%;
  right:4px;
}

.breadcrumbs__lists li:last-child::after{
  display: none;
}

.wp-pagenavi{
  display: flex;
  justify-content: center;
  align-items: center;
  gap:8px;
}

.wp-pagenavi .pages{
  display: none;
}

.wp-pagenavi a, .wp-pagenavi span{
  border:1px solid var(--clr-dnv)!important;
  width:35px;
  height:35px;
  font-family: var(--ff-fig);
  display: grid;
  place-items: center;
  font-size:var(--fs-st-txt30);
  font-weight: var(--fw-r);
  margin:0 !important;
  padding:0 !important;
}

.wp-pagenavi span.current{
background:var(--clr-dnv);
border:none;
color:var(--clr-wh);
font-weight: var(--fw-r) !important;
}

.wp-pagenavi a.nextpostslink ,.wp-pagenavi a.previouspostslink {
  text-indent: 200%;
  white-space: nowrap;
  overflow: hidden;
  border:none !important;
  width:19px;
  height:14px;
  background:var(--svg-arrow-bl);
}

.wp-pagenavi a.previouspostslink{
  transform: scale(-1, -1);
}


@media screen and (min-width: 768px) {

  .breadcrumbs__lists{
    margin-top:0;
    position: absolute;
    bottom:calc(var(--c-mg96) * 2);
    left:0;
    }

    .breadcrumbs__lists li {
    font-size:var(--fs-txt18);
    padding:12px 39px 12px 0;
    }

    .breadcrumbs__lists li::after{
    width:15px;
    height:2px;
    right:12px;
    }


.wp-pagenavi{
  gap:24px;
}

.wp-pagenavi a, .wp-pagenavi span{
  width:64px;
  height:64px;
}

.wp-pagenavi a.nextpostslink ,.wp-pagenavi a.previouspostslink {
  width:32px;
  height:24px;
}




}
/* l-mainVisual・page title
---------------------------------------------------------*/

.l-main{
width:100%;
padding-top:55px;
}

.l-heading__wrapper{
padding:var(--c-mg40) 0 ;
margin-bottom:var(--c-mg40);
position: relative;
}

.l-heading__wrapper::before{
content:"";
display: block;
width:16.41vw;
height:100%;
background:var(--bg-clr-lgy);
position: absolute;
top:0;
right:0;
z-index:1;
}

.l-heading__inner{
width:100%;
position: relative;
z-index:10;
padding:0 0 0 var(--cont-pd-w);
}

.l-heading__image{
width:74.87vw;
height:45.38vw;
margin:0 0 0 auto;
position: relative;
z-index:100;
}

.l-heading__inner::after{
content:"";
display: block;
width:100%;
height:1px;
background:var(--clr-dnv);
position: absolute;
left:0;
bottom:var(--c-mg64);
z-index:1;
}

.l-heading{
padding:0 0 0 var(--cont-pd-w);
margin-bottom:var(--c-mg24);
}

.l-heading-en p{
color:var(--clr-bl);
font-size:var(--fs-heading110);
}

.l-heading-en.wh p{
  color:var(--clr-wh);
}

.l-heading-en p span{
color:var(--clr-lbl);
}

.l-heading-jp{
font-size:var(--fs-st-txt20);
font-weight: var(--fw-b);
margin-top:var(--c-mg8);
display: flex;
align-items: center;
}

.l-heading-jp.wh{
  color:var(--clr-wh);
}

.l-heading-jp span{
display: block;
width:6px;
height:6px;
background:var(--clr-lbl);
margin-right:8px;
}

.l-sub-heading{
margin-bottom:var(--c-mg40);
color:var(--clr-bl);
}

.l-sub-heading.center{
  text-align: center;
}

.l-sub-heading.wh{
color:var(--clr-wh);
}

.l-sub-heading-en{
font-size:var(--fs-l-sub-heading);
}

.l-sub-heading-jp{
margin-top:var(--c-mg8);
font-size:var(--fs-l-sub-heading-jp);
}

.l-contact-btm{
  border-top:1px solid var(--clr-dnv);
  padding:0;

}

.l-contact-btm__inner{
  padding-top:var(--c-mg64);
}

.l-contact-btm__txt{
font-size:var(--fs-txt20);
margin-bottom:var(--c-mg24);
text-align: center;
font-weight: var(--fw-b);
}

.l-cont-layer{
  background:var(--clr-wh);
  position: relative;
  z-index:1000;
}

.l-cont-layer.btm-pd{
  padding-bottom:var(--c-mg64);
}


@media screen and (min-width: 768px) {

  .l-main{
  padding-top:90px;
  }

  .l-heading__wrapper{
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  padding:var(--c-mg96) 0 calc(var(--c-mg96) * 2);
  margin-bottom:0;
  }

  .l-heading__wrapper::before{
  width:12.5vw;
  height:calc(100% - var(--c-mg96));
  }

  .l-heading__inner{
  padding:0;
  }

  .l-heading__image{
  width:43.75vw;
  height:27.08vw;
  }

  .l-heading__inner::after{
  width:180%;
  left:-180%;
  bottom:var(--c-mg96);
  }

  .l-heading{
  padding:0 0 0 var(--cont-pd-w);
  margin-bottom:var(--c-mg64);
  }

  .l-heading-jp{
  margin-top:var(--c-mg24);
  }

  .l-heading-jp span{
  width:12px;
  height:12px;
  margin-right:16px;
  }

  .l-sub-heading{
  margin-bottom:var(--c-mg80);
  }

  .l-sub-heading-jp{
  margin-top:var(--c-mg16);
  }

  .l-contact-btm__inner{
    padding-top:var(--c-mg120)
  }

  .l-contact-btm__txt{
    margin-bottom:var(--c-mg40);
    }

  .l-cont-layer.btm-pd{
  padding-bottom:var(--c-mg96);
  }

  }
  
.l-heading-def{
  background:var(--bg-clr-lgy);
  height:20vw;
  min-height:120px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.l-heading-def__wrapper{
  max-width:var(--cont-max);
  margin:0 auto;
  display: flex;
  align-items: center;
}

.l-heading-def h1{
  font-size:var(--fs-st-txt30);
  position: relative;
  padding-left:20px;
}

.l-heading-def__wrapper h1::before{
  content:"";
  display: block;
  width:12px;
  height:2px;
  background:var(--clr-lbl);
  position: absolute;
  left:0;
  top:0;
  bottom:0;
  margin:auto 0;
}

@media screen and (min-width: 768px) {

  .l-heading-def{
    height:10vw;
  }

  .l-heading-def__wrapper h1::before{
    width:15px;

  }

  .l-heading-def h1{
    padding-left:24px;
  }

}



/* about us
-----------------------------------------*/

.l-about__bg__wrapper {
  position: fixed;
  top: 0; left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 1;
  pointer-events: none;
  overflow: hidden;
}

.bg-philosophy,
.bg-outline {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: opacity 1.5s ease-in-out;
  opacity: 0;
  z-index: -1;
}


.bg-philosophy {
  opacity: 1;
}

.philosophy{
  position: relative;
  padding:0;
}

.philosophy::before,
.philosophy::after{
  content:"";
  display: block;
  width:100%;
  height:100%;
  position: fixed;
  top:0;
  left:0;
}

.philosophy::before{
  background:var(--clr-overlay);
  z-index:10;
}

.philosophy::after{
  background:var(--clr-overlay-grd);
  mix-blend-mode: multiply;
  z-index:20;
}


.philosophy__cont{
  padding:var(--sec-pd) 0 ;
  color:var(--clr-wh);
  position: relative;
  z-index:500;
}

.philosophy__cont .l-sub-heading-en{
  display: grid;
  gap:4px;
}

.philosophy__cont .l-sub-heading-en,.philosophy__cont .l-sub-heading-jp{
  text-align: center;
}

.philosophy__txt p{
  font-size:var(--fs-txt20);
  font-weight: var(--fw-b);
  line-height: var(--lh3);
  text-align: center;
  letter-spacing: 0.15em;

}

.philosophy__txt span{
  display: block;
  width:8px;
  height:8px;
  background:var(--clr-lbl);
  margin:var(--c-mg32) auto;
}

.message{
  width:100%;
  padding:var(--sec-pd) 0;
  position: relative;
}

.message::after{
  content:"";
  display: block;
  width:100%;
  height:0;
  padding-top:95.897%;
  background:url(../img/about/about-pers.png) no-repeat center center/contain;
  position: absolute;
  left:0;
  bottom:0;
  z-index:1;
}


.message__cont-top,.message__cont-btm{
  width:100%;
  position: relative;
  padding:0 var(--cont-pd-w);
  z-index:100;
}

.message__cont-btm{
  margin-top:var(--c-mg40);
}

.message__copy{
  font-size:var(--fs-st-txt30);
  font-weight: var(--fw-sb);
  letter-spacing: 0.1em;
  margin-bottom:var(--c-mg24);
}

.message__cont-top::before{
  content:"";
  display: block;
  width:32.05vw;
  height:46.15vw;
  background:var(--bg-grd-bl);
  position: absolute;
  top:calc(-1 * var(--c-mg40));
  right:0;
  z-index:1;

}

.message__image{
  position: relative;
  z-index:10;
  margin-bottom:var(--c-mg24);
}

.message__name{
  color:var(--clr-bl);
  font-weight: var(--fw-sb);
  margin-top:var(--c-mg24);
}

.outline{
  position: relative;
  z-index: 1000;
  padding:var(--sec-pd) 0;
}

.outline__wrapper{
  position: relative;
  z-index:2000;
}

.outline .l-sub-heading{
  text-align: center;
}

.outline__cont{
  background:var(--clr-wh);
  padding:var(--c-mg40) var(--cont-pd-w);

}

.outline__cont dl{
  font-size:var(--fs-txt18);
}

.outline__cont dt{
  font-weight: var(--fw-b);
  margin:0 0 8px;

}

.outline__cont dd{
  border-bottom:1px solid var(--clr-lbl);
  padding:0 0 8px;
  margin-bottom:var(--c-mg24);
  line-height: var(--lh1);
}

.outline__cont dd:last-of-type{
  margin:0;
}

@media screen and (min-width: 768px) {


  .philosophy__cont .l-sub-heading-en{
    display: flex;
    justify-content: center;
    gap:24px;
  }

  .philosophy__txt span{
    width:12px;
    height:12px;
    margin:var(--c-mg40) auto;
  }

  .message__cont-top,.message__cont-btm{
    display: flex;
    align-items: center;
    
  }

  .message::after{
    padding-top:49.8612%;
    background:url(../img/about/about-pers-pc.png) no-repeat center center/contain;

  }


  .message__cont-top::before{
    width:25vw;
    height:100%;
    top:var(--c-mg96);
    left:0;
  }
  .message__cont-btm{
    flex-direction: row-reverse;
    margin-top:calc(var(--c-mg96) *2);
  }

  .message__copy{
    margin-bottom:var(--c-mg40);
  }

  .message__image{
    margin-bottom:0;
    width:50%;
  }

  .message__txt{
    width:50%;
  }

  .message__cont-top .message__txt{
    padding:0 0 0 var(--c-mg120);
  }

  .message__cont-btm .message__txt{
    padding:0 var(--c-mg120) 0 0;
  }

  .message__name{
    margin-top:var(--c-mg40);
  }

  .outline__cont{
    max-width:1114px;
    margin:0 auto;
    padding:var(--c-mg96);
  }

  .outline__cont dl{
    display: grid;
    grid-template-columns: 12.65vw 1fr;
  }
  
  .outline__cont dt{
    border-bottom:1px solid var(--clr-dnv);
    padding:0 0 var(--c-mg16) 0;
    line-height: var(--lh1);
    margin:0 0 var(--c-mg40) 0;
  }

  .outline__cont dd{
    padding:0 0 var(--c-mg16) var(--c-mg16);
    margin:0 0 var(--c-mg40) 0;
  }

  .outline__cont dt:last-of-type,.outline__cont dd:last-of-type{
    margin:0;
  }


}


/* Business・Case
-----------------------------------------*/


.l-business__copy{
  font-size:var(--fs-st-txt64);
  font-weight: var(--fw-sb);
  letter-spacing: 0.1em;
  line-height: var(--lh1);
  margin-bottom:var(--c-mg40);
}

.l-business__copy span{
  color:var(--clr-bl);
}

.l-business__nav ul ,.case__filter{
  display: grid;
  gap:8px;
}

.l-business__nav ul li a, .case__filter li a{
  border-bottom:1px solid var(--clr-dnv);
  border-right:1px solid var(--clr-dnv);
  padding:var(--c-mg12);
  font-weight: var(--fw-b);
  font-size:var(--fs-txt25);
  display: grid;
  grid-template-columns: 1fr auto;
  gap:8px;
  align-items: center;
}

.l-business__nav ul li a span, .case__filter li a span{
  display: block;
  width:16px;
  height:12px;
  background:var(--svg-arrow-bl);
}

.l-business__txt__wrapper{
  margin-bottom:var(--c-mg24);
}

.l-business__ttl__wrapper{
  width: 100%;
  display: grid;
  gap:12px;
  grid-template-columns: auto 1fr;
  align-items: center;
  margin-bottom:var(--c-mg40);
  padding:0 0 0 var(--common-pd-w);
}


.l-business__num{
  font-size:22.56vw;
  color:var(--clr-bl);
  opacity: 0.1;
}

.l-business__ttl p{
  font-size:var(--fs-st-txt20);
  font-weight: var(--fw-b);
  margin-bottom:var(--c-mg8);
  font-family: var(--ff-en);
}

.l-business__ttl h2{
  position: relative;
}

.l-business__ttl h2 span{
  display: inline-block;
  width:fit-content;
  padding:0 8px  0 0;
  font-size:var(--fs-st-txt48);
  color:var(--clr-bl);
  background:var(--clr-wh);
  position: relative;
  z-index:2;
}

.l-business__ttl h2::after{
  content:"";
  display: block;
  width:100%;
  height:1px ;
  background:var(--clr-dnv);
  position: absolute;
  top:0;
  bottom:0;
  margin:auto;
  z-index:1;
}

.l-business__note{
  border:1px solid var(--clr-dnv);
  width:90%;
  height: max-content;
  padding:var(--c-mg32) var(--c-mg24);
  margin:var(--c-mg24) auto 0;
}

.l-business__note__ttl{
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap:8px;
  font-size: var(--fs-txt20);
  color:var(--clr-bl);
  font-weight: var(--fw-b);
  margin-bottom:var(--c-mg8);
}

.l-business__note__ttl span{
  display: block;
  width:20px;
}

.l-business__note__txt{
  font-size: var(--fs-txt18);
  margin-bottom:var(--c-mg16);
  font-weight: var(--fw-m);
}

.l-business__note__txt:last-of-type{
  margin-bottom:0;
}

section.consulting{
	margin-bottom:var(--sec-pd);
}

.c-txt .st-txt{
	font-weight:var(--fw-b);
	font-size:var(--fs-txt20);
}

.c-txt .line{
	display:inline-block;
	border-bottom:1px solid var(--clr-bk);
	background:var(--bg-clr-lbl);
	padding:0 4px;
}

.l-business__txt-list{
	display:grid;
	gap:8px;
}


@media screen and (min-width: 768px) {

  .l-business__copy{
    margin-bottom:var(--c-mg80);
  }

  .l-business__nav ul ,.case__filter{
    grid-template-columns: 1fr 1fr 1fr 1fr; 
    gap:var(--c-mg40);
  }


  
.l-business__nav ul li a, .case__filter li a{
  padding:var(--c-mg24) var(--c-mg16);
  transition: 0.2s;
}

.l-business__nav ul li a:hover, .case__filter li a:hover{
  background:var(--clr-lbl);
  color:var(--clr-wh);
}


.l-business__nav ul li a span, .case__filter li a span{
  width:20px;
  height:16px;
}

.l-business__nav ul li a:hover span, .case__filter li a:hover span{
  background:var(--svg-arrow-wh) !important;
}

.l-business__ttl__wrapper{
  gap:var(--c-mg32);
  margin-bottom:var(--c-mg80);
  padding:0 0 0 var(--cont-pd-w);
}

.l-business__num{
  font-size:clamp(10rem, 10.41vw, 20rem);
}

.l-business__ttl p{
  margin-bottom:var(--c-mg16);
}

.l-business__ttl h2 span{
  padding:0 32px  0 0;
}

.l-business__txt__wrapper{
  display: grid;
  grid-template-columns: 1fr auto;
  gap:var(--c-mg120);
  margin-bottom:var(--c-mg64);
}

.l-business__note{
  width:fit-content;
  padding:var(--c-mg40) var(--c-mg32);
  margin:0;
}

.l-business__note__ttl{
  gap:12px;
  margin-bottom:var(--c-mg12);
}

.l-business__note__ttl span{
  width:25px;
}

.l-business__note__txt{
  margin-bottom:var(--c-mg24);
}

}

/* Case
-----------------------------------------*/

.case__lists__wrapper{
  padding:0 var(--cont-pd-w) var(--c-mg96) var(--cont-pd-w) ;
}

.case__lists{
  margin:var(--c-mg40) 0;
  display: grid;
  gap:var(--c-mg40);
}

.case__item{
  padding-top: 60px; 
  margin-top: -60px;
}

.case__item__inner{
  position: relative;
  background:var(--bg-clr-lbl);
  padding:var(--c-mg56) var(--cont-pd-w) var(--c-mg40);
}

.case__item-category{
  background:var(--clr-dnv);
  width:fit-content;
  color:var(--clr-wh);
  font-size:var(--fs-txt20);
  font-weight: var(--fw-b);
  position: absolute;
  line-height: 32px;
  top:0;
  left:0;
  height:32px;
  padding:0 12px;
}

.case__item-category::before{
  content: "";
  display: block;
  border: 16px solid var(--clr-dnv);
  border-right-color: transparent;
  border-bottom-color: transparent;
  height: 0;
  width: 0;
  position: absolute;
  transform: scaleX(0.5);
  right: -24px;
  top:0;
}


.case__item-ttl{
  font-size:var(--fs-txt25);
  letter-spacing: 0.1em;
  font-weight: var(--fw-b);
  line-height: var(--lh1);
  margin:var(--c-mg12) 0 var(--c-mg16);
}

.case__item-img{
  width:100%;
  height:51.28vw;
}

.case__item-txt dt{
  color:var(--clr-bl);
  font-weight: var(--fw-b);
  font-size:var(--fs-txt18);
  display: flex;
  align-items: center;
  margin-bottom:var(--c-mg8);
  position: relative;
  padding:var(--c-mg12) 0 0;
}

.case__item-txt dt::before{
  content:"";
  display: block;
  width:12px ;
  height:2px;
  background:var(--clr-bl);
  position: absolute;
  top:0;
  left:0;

}
.case__item-txt dt span{
  display: inline-block;
  width:15px;
  height:15px;
  background:url(../img/common/trouble-icon.svg) no-repeat center center/contain;
  margin:0 4px 0 0;
}

.case__item-txt dt:nth-of-type(2) span{
  background:url(../img/common/solution-icon.svg) no-repeat center center/contain;
}

.case__item-txt dt:nth-of-type(3) span{
  background:url(../img/common/result-icon.svg) no-repeat center center/contain;
}

.case__item-txt dd{
  font-size:var(--fs-txt16);
  line-height: var(--lh2);
  margin-bottom:var(--c-mg16);
  white-space: normal;
}

.case__item-txt dd:last-of-type{
  margin-bottom:0;
}

@media screen and (min-width: 768px) {

  .case__lists__wrapper{
    padding:0 var(--cont-pd-w) var(--sec-pd) var(--cont-pd-w) ;
  }


.case__lists{
  margin:var(--c-mg120) 0 var(--c-mg96);
  gap:var(--c-mg80);
}

.case__item{
  padding-top: 100px; 
  margin-top: -100px;
}


.case__item__inner{
  padding:var(--c-mg96) var(--c-mg80) var(--c-mg80);
  display: grid;
  grid-template-columns:32.70vw 1fr;
  gap:var(--c-mg96);
}

.case__item-category{
  font-size:var(--fs-txt25);
  line-height: 64px;
  height:64px;
  padding:0 var(--c-mg40);
}

.case__item-category::before{
  border: 32px solid var(--clr-dnv);
  border-right-color: transparent;
  border-bottom-color: transparent;
  right: -48px;
}

.case__item-ttl{
  font-size:var(--fs-st-txt30);
  margin:0 0 var(--c-mg32);
}

.case__item-img{
  width:100%;
  height:22.39vw;
}

.case__item-txt dt{
  margin-bottom:var(--c-mg12);
  padding:var(--c-mg16) 0 0;
}

.case__item-txt dt::before{
  width:18px ;
}

.case__item-txt dt span{
  width:20px;
  height:20px;
  margin:0 12px 0 0;
}


.case__item-txt dd{
  margin-bottom:var(--c-mg24);
}


}

/* Recruit
-----------------------------------------*/

.l-recruit__heading{
  width:100%;
  height:50vh;
  position: relative;
  background:url(../img/recruit/recruit-bg-image.jpg) no-repeat left bottom/cover;
}



.l-recruit__heading::before,
.l-recruit__heading::after{
  content:"";
  display: block;
  width:100%;
  height:100%;
  position: absolute;
  top:0;
  left:0;
}

.l-recruit__heading::before{
  background:var(--clr-overlay);
  z-index:10;
}

.l-recruit__heading::after{
  background:var(--clr-overlay-grd);
  mix-blend-mode: multiply;
  z-index:20;
}

.l-recruit__heading-img{
  width:80%;
  height:50vh;
  background:#ccc;
  clip-path: polygon(50% 0, 100% 0, 100% 100%, 0% 100%);
  background:url(../img/recruit/recruit-image-sp.jpg) no-repeat center bottom/cover;
  position: absolute;
  right:0;
  bottom:0;
  z-index:100;
}

.l-recruit__heading .l-heading{
  position: absolute;
  z-index:1000;
  top:var(--c-mg64);
}

.l-recruit__heading__copy{
  color:var(--clr-wh);
  font-weight: var(--fw-sb);
  font-size: var(--fs-st-txt48);
  position: absolute;
  z-index:1000;
  left:var(--cont-pd-w);
  bottom:var(--c-mg24);
  line-height: 1.4;
  letter-spacing: 0.1em;
}

.l-recruit__heading__copy span{
  display: inline-block;
  padding:4px 8px;
  background:var(--bg-grd-bl2);
}


.personality{
  padding:calc(var(--sec-pd) - 12px) 0 var(--sec-pd);
}


.personality__lists{
  display: grid;
  padding:0 var(--common-pd-w);
  gap:var(--c-mg12);
}

.personality__item{
  border-top:1px solid var(--clr-dnv);
  border-bottom:1px solid var(--clr-dnv);
  border-right:1px solid var(--clr-dnv);
  border-left:3px solid var(--clr-lbl);
  position: relative;
  overflow: hidden;
  padding:var(--c-mg16) var(--c-mg24);
}


.personality__item span{
  font-size:30.76vw;
  font-family:var(--ff-fig);
  font-weight: var(--fw-m);
  color: var(--clr-bl);
  opacity: 0.1;
  position: absolute;
  top:-15px;
  right:-10px;
}

.personality__item:first-of-type span{
  right:5px;
}

.personality__ttl-en{
  font-size: var(--fs-txt20);
  color:var(--clr-bl);
  margin-bottom:var(--c-mg24);
}

.personality__ttl{
  font-size:var(--fs-st-txt30);
  font-weight: var(--fw-b);
  letter-spacing: 0.1em;
  margin-bottom:var(--c-mg12);
}

.personality__txt{
  font-size:var(--fs-txt18);
  line-height: var(--lh2);
}

.personality__btm{
  position: relative;
  padding:var(--c-mg32) var(--c-mg12);
  margin-top:var(--c-mg40);
}

.personality__btm::before,
.personality__btm::after{
  content:"";
  display: block;
  width:40px;
  height:40px;
  position: absolute;
}

.personality__btm::before{
  border-top:1px solid var(--clr-dnv);
  border-left:1px solid var(--clr-dnv);
  top:0;
  left:0;
}

.personality__btm::after{
  border-bottom:1px solid var(--clr-dnv);
  border-right:1px solid var(--clr-dnv);
  bottom:0;
  right:0;
}

.personality__btm-copy{
  font-size:var(--fs-st-txt30);
  letter-spacing: 0.1em;
  font-weight: var(--fw-sb);
  line-height: var(--lh2);
  text-align: center;

}

.personality__btm-copy span{
  width:fit-content;
  background:var(--bg-grd-bl);
  color:var(--clr-wh);
}


.entry{
  background:var(--bg-clr-lbl);
  padding:var(--sec-pd) 0 calc(var(--sec-pd) - var(--c-mg24));
}

@media screen and (min-width: 768px) {

  .l-recruit__heading{
    height:calc(100vh - 90px);
    background:url(../img/recruit/recruit-bg-image.jpg) no-repeat left bottom/cover;
  }

  .l-recruit__heading-img{
    width:60%;
    height:calc(100vh - 90px);
    clip-path: polygon(40% 0, 100% 0, 100% 100%, 0% 100%);
    background:url(../img/recruit/recruit-image.jpg) no-repeat center bottom/cover;
  }

  .l-recruit__heading .l-heading{
    top:11.45vw;
  }

  .l-recruit__heading__copy{
    bottom:var(--c-mg120);
    /* line-height: 1.4; */
  }

  .l-recruit__heading__copy span{
    display: inline-block;
    padding:24px 32px;
  }

  .l-recruit .breadcrumbs__lists{
    position: static;
    margin-top:var(--c-mg32);
  }
  
  .personality{
    padding:calc(var(--sec-pd) - var(--c-mg32)) 0 var(--sec-pd);
  }

  .personality__lists{
    grid-template-columns: 1fr 1fr 1fr;
    padding:0;
    gap:var(--c-mg40);
  }

  .personality__item{
    border-left:4px solid var(--clr-lbl);
    padding:var(--c-mg32) var(--c-mg32) var(--c-mg40) var(--c-mg32);
  }

  .personality__item span{
    font-size:clamp(120px, 8.80vw ,160px );
    top:-20px;
    right:-15px;
  }
  
  .personality__item:first-of-type span{
    right:10px;
  }


  .personality__ttl-en{
    font-size: var(--fs-txt25);
    margin-bottom:var(--c-mg56);
  }

  .personality__ttl{
    margin-bottom:var(--c-mg24);
  }

  .personality__btm{
    width:fit-content;
    padding:var(--c-mg40) var(--c-mg80);
    margin:var(--c-mg80) auto 0;
  }

  .personality__btm::before,
  .personality__btm::after{
    width:64px;
    height:64px;
  }

  .personality__btm-copy{
    font-size:var(--fs-st-txt48);
  }


}


/* お問い合わせフォーム・エントリーフォーム
-----------------------------------------*/

.l-contact{
  padding:0 0 var(--sec-pd);
}

.l-contact__wrapper{
  padding:0 var(--cont-pd-w);
}

.l-contact__cont{
}

.l-contact__txt{
  font-weight: var(--fw-sb);
  margin-bottom:var(--c-mg16);
  }
.l-contact__txt-hosoku{
  color:var(--clr-red);
  font-size:var(--fs-txt16);
}

.contact__form__wrapper{
  margin-top:var(--c-mg24);
}

.contact__form input,.contact__form textarea {
  width:100%;
  font-size:var(--fs-txt16);
  margin: 0;
  padding:12px;
  border:1px solid var(--clr-lgy);
  background:rgb(242, 244, 251, 0.8);
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.entry .contact__form input,
.entry .contact__form textarea{
  background:var(--clr-wh);
}

.contact__form textarea{
  line-height: var(--lh1);
}

.contact__form{
}

.contact__form dt{
  font-weight: var(--fw-sb);
  margin-bottom:var(--c-mg8);
}

.contact__form dd{
  margin-bottom:var(--c-mg24);
}

.contact__form dt:last-child,
.contact__form dd:last-child{
  display: none;
}

.contact__form dt span{
  display:inline-block;
  color:var(--clr-red);
  margin-left:8px;
}

input[type="radio"], input[type="checkbox"] {
  opacity: 0;
  visibility: hidden;
  position: absolute;
}

.contact__form__bottomTxt{
  text-align: center;
  font-size:var(--fs-txt14);
  line-height: var(--lh2);
  font-weight: var(--fw-sb);

}

.contact__form__bottomTxt a{
  display: inline-block;
  text-decoration: underline;
  color:var(--clr-bl);
}

.contact__form__check{
  text-align: center !important;
  width:fit-content;
  margin:var(--c-mg16) auto;
}

.contact__form__check .wpcf7-list-item{
  display: block;
  width: 100%;
}

.contact__form__check span.wpcf7-list-item-label{
  position: relative;
  display: flex;
  align-items: center;
  cursor: pointer;
  font-size:var(--fs-txt16);
  font-weight: var(--fw-sb);
}

.contact__form__check span.wpcf7-list-item-label::before {
  display: block;
  content: "";
  width: 14px;
  height: 14px;
  margin-right: 8px;
  border:1px solid var(--clr-bk);
}

.contact__form__check span.wpcf7-list-item-label::after {
  display: block;
  position: absolute;
  content: "✔︎";
  color:var(--clr-bl);
  left: 2px;
  top: 50%;
  transform: translateY(-50%);
  display: none;
}

input[type="radio"]:checked + span.wpcf7-list-item-label::after,input[type="checkbox"]:checked + span.wpcf7-list-item-label::after {
  display: block;
}

::placeholder {
  color: var(--clr-gy);
}

.contact__btn__wrapper{
  margin-top:var(--c-mg40);
  }

  .contact__btn__wrapper p{
    margin:0 auto;
    display: grid;
    place-items: center;
  }

  input[type="submit"] {
    appearance: none;
    -webkit-appearance: none;
    }
  input[type="button"]{
    appearance: none;
    -webkit-appearance: none;
  }

  .btn-submit{
    width: fit-content;
    background:var(--bg-grd-bl);
    color:var(--clr-wh);
    outline: none;
      -webkit-appearance: none !important;
      -moz-appearance: none !important;
    appearance: none !important;
    min-width:280px !important;
    max-width:370px !important;
    border:0;
    height:48px;
    letter-spacing: 0.1em;
    font-size:var(--fs-txt18);
    font-weight: var(--fw-sb);
    box-shadow: var(--shadow);
    margin:0 auto;
    }

    .wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output{
      background:rgb(247, 47, 47 , 0.1);
      color:var(--clr-red);
      font-weight: bold;
      border:none;
      text-align: center;
      font-size:1.4rem;
      padding:16px;
		line-height:1.5;
    }

    .email-error {
      display: none;
      color: var(--clr-red);
      font-size: 1.4rem;
      margin: -16px 0 16px;
    }


.email-confirm-txt .wpcf7-not-valid-tip{
	display:none;
}

.wpcf7 form.sent .wpcf7-response-output{
      background:var(--bg-grd-bl);
      border:none;
      color:var(--clr-wh);
      font-size: var(--fs-st-txt30);
		line-height:1.5;
      padding:16px;
	text-align:center;
	font-weight:var(--fw-b);
    }


    .l-contact__btm-tel{
      max-width:640px;
      margin:var(--c-mg40) auto 0;
      display: flex;
      justify-content: center;
      align-items: center;
      background:var(--bg-grd-bl);
      padding:6px;
    }

    
    .l-contact__btm-tel div{
      background:var(--clr-wh);
      width:100%;
      text-align: center;
      padding:var(--c-mg32);
      font-weight: var(--fw-sb);
    }

    .l-contact__btm-tel div p:first-child{
      font-size:var(--fs-txt25);
    }

    .l-contact__btm-tel div p:nth-child(2){
      font-size:var(--fs-txt16);
      line-height: var(--lh1);
      margin:var(--c-mg24) 0 var(--c-mg12);
      font-weight: var(--fw-r);
    }

    .l-contact__btm-tel div p:nth-child(3) span:first-child{
      font-size: var(--fs-st-txt20);
    }

    .l-contact__btm-tel div p:nth-child(3) span:last-child{
      font-size: var(--fs-st-txt48);
      color:var(--clr-bl);
    }

    .l-contact__btm-tel div p:last-child{
      font-size: var(--fs-txt18);
      margin:var(--c-mg12) 0 0;
    }
    

  @media screen and (min-width: 768px) {

    .l-contact__cont{
      max-width:850px;
      margin:0 auto;
    }

    .l-contact__txt{
      margin-bottom:var(--c-mg32);
      }

    .l-contact__txt-hosoku{
      text-align: right;
    }

    .contact__form__wrapper{
      margin-top:var(--c-mg32);
    }

    .contact__form dd{
      margin-bottom:var(--c-mg32);
    }

    .contact__form__check{
      margin:var(--c-mg24) auto;
    }

    .contact__form__check span.wpcf7-list-item-label::before {
      width: 16px;
      height: 16px;
    }

    .btn-submit{
      height:60px;
      }

  }

/* 404・プライバシーポリシー・
-----------------------------------------*/

section.l-page-def{
  padding:var(--c-mg64) 0;
  font-size:var(--fs-txt16);
  line-height: var(--lh2);
}

.l-page-def__cont{
  max-width:850px;
  margin:0 auto;
}

.l-page-def__cont .wp-block-heading{
  border-bottom:1px solid var(--clr-lgy);
  padding-bottom:4px;
  margin:var(--c-mg40) 0 var(--c-mg16) ;
}

.l-page-def__cont .wp-block-list{
  margin-bottom:var(--c-mg16);
}

.l-page-def__cont .wp-block-list li{
  position: relative;
  text-indent: 12px;
}

.l-page-def__cont .wp-block-list li::before{
  content:"";
  display: block;
  width:6px;
  height:6px;
  background:var(--clr-lbl);
  position: absolute;
  top:calc((var(--fs-txt16) + 4px) / 2);
  left:0;
}


.l-404 p{
line-height: var(--lh2);
}

.l-404 p a{
  color:var(--clr-bl);
  display: inline-block;
  text-decoration: underline;
}

@media screen and (min-width: 768px) {

  .l-page-def__cont .wp-block-list li::before{
    width:8px;
    height:8px;
    top:calc((var(--fs-txt16) + 10px) / 2);
  }

  .l-page-def__cont .wp-block-list li{
    text-indent: 16px;
  }

}