@charset "UTF-8";


header {display: none;}
html , main , .wp-block-group , .entry-content {
  margin: 0!important;
  padding: 0!important;
}
.wp-block-post-title {
  display: none;
}
:root {
    --wp--style--global--content-size: 100%;
    --wp--style--global--wide-size: 1340px;
}
:root :where(.is-layout-constrained) > * {
    margin-block-start: 0;
    margin-block-end: 0;
}
footer {display: none;}


.frontwrap {
    width: 100%;
    margin: 0 auto;
	  position: relative;
}
.hwrap {
  position: fixed;
  background: #fff;
  box-shadow: 0px 3px 10px rgba(0,0,0,0.2);
  width: 100%;
  max-width: 1400px;
  height: 100px;
  z-index: 10;
}
.Hlogo {
  position: absolute;
  top: 20px;
  left: 30px;
  z-index: 1;
  width: 300px;
}
.Hmenu {
  position: absolute;
  top: 40px;
  right: 30px;
  z-index: 1;
  width: 50%;
}
.Hmenu a {
    /* font-weight: 600; */
    color: #000;
    font-size: 1.1rem;
    letter-spacing: .1rem;
}
.Hmenu a:hover {
    color: #46a547;
}

/* #page {
	display: block!important;
    min-height: unset!important;
    position: unset!important;
}
#ceo_message , #mission , #faq , #team , #voice , #step  {
  padding-top: 80px!important;
}
.site-header {
    z-index: 99;
    position: sticky;
    top: 0;
}
#content .ast-container {
	max-width: 100%;
    margin: 0;
    padding: 0;
}
.ast-plain-container.ast-no-sidebar #primary {
	margin: 0;
}
.ast-no-thumbnail {
	display: none;
}
.entry-content p {
	margin: 0;
} */


.top-slider {
	position: relative;
	width: 100%;
  height: 860px;
  padding-top: 60px;
}

.btnbox-pc {
  position: absolute;
  bottom: 60px;
  left: 50px;
  width: 500px;
}
.btnbox {
  width: 100%;
  padding: 10px;
  background: #d2e6c8;
}
.formred {
  background: #dc3200;
  color: #fff;
  font-size: 10px;
  font-weight: 600;
  padding: 2px 8px;
}
.formtable th {
  width: 30%;
  font-size: .9rem;
  vertical-align: top;
}
.formtable td {
  width: 65%;
  vertical-align: top;
}
.formtable label {
    display: block!important;
}
.wpcf7-textarea , .wpcf7-text , .wpcf7-select {
  width: 100%;
  margin-top: 5px;
}
.wpcf7-textarea {
  height: 80px;
}
.wpcf7-text , .wpcf7-select {
  height: 40px;
}
.wpcf7-submit {
    background: #414042;
    color: #fff;
    border: unset;
    padding: 10px 30px;
    border-radius: 5px;
    margin: 20px 20% 0;
    text-align: center;
    width: 60%;
}

.marker {
  background: linear-gradient(transparent 50%, #fdff00 50%);
}
rt {
      font-size: 1rem;
    color: #000;
}

.gbar {
  position: relative;
  padding-left: 20px;
}
.gbar::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 4px;
  height: 100%;
  background: #00B11D;
}
.profiel {
  width: 100%;
}

.BTN01 a {
  position: relative;
  display: block;
  font-size: 21px;
  font-weight: 600;
  color: #01B11E;
  background: #fff;
  border: solid 1px #fff;
  width: 100%;
  height: 80px;
  line-height: 80px;
  text-align: center;
  border-radius: 40px;
  transition: all 0.6s ease 0s;
  box-shadow: 0px 3px 10px rgba(0,0,0,0.2);

}
.arrow {
  position: absolute;
  top:50%;
  right: 15px;
  transform: translateY(-50%);
  -webkit- transform: translateY(-50%);
  width: 20px;
}
.BTN01 a:hover {
  background: #01B11E;
  color: #fff;
  transition: all 0.6s ease 0s;
}

.BTN02 a {
  position: relative;
  display: block;
  font-size: 21px;
  font-weight: 600;
  color: #01B11E;
  background: #FFE20A;
  border: solid 1px #FFE20A;
  width: 100%;
  height: 80px;
  line-height: 80px;
  text-align: center;
  border-radius: 40px;
  transition: all 0.6s ease 0s;
  box-shadow: 0px 3px 10px rgba(0,0,0,0.2);
}

.BTN02 a:hover {
  background: #01B11E;
  color: #fff;
  transition: all 0.6s ease 0s;
}

.btn-bg {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: -1;
}


.voiceph {
  border-radius: 0 30px 0 30px;
}
.voicecatch {
  border-left: solid 2px #00B11D;
  padding-left: 10px;
}


.Flogo {
  width: 200px;
}



.animetext {
  /* margin: 50px 0; */
  padding: 20px 0;
  display:inline-block;
  overflow:hidden;
  position:relative;
}
.animetext:after{  
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height : 100% ;
  background-color:#01B11E;
  /*アニメーションの設定*/
  animation: secondaryImageOverlayIn 0.6s 0s cubic-bezier(.77,0,.175,1),
             secondaryImageOverlayOut 0.6s 0.6s cubic-bezier(.77,0,.175,1);
  animation-fill-mode: both;
}
.animetext span {
  margin: 10px 0;
  line-height:1;
  /*アニメーションの設定*/
  animation:fadeIn 0.1s 0.5s; 
  animation-fill-mode: both;
  padding: 20px;
  background: #434343;
  color: #fff;
}

/*keyframesの設定*/
/*文字が消えている状態から現れるアニメーション*/
@keyframes fadeIn {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
  }
/*はじめにブロックを伸ばすアニメーション*/
@keyframes secondaryImageOverlayIn {
    0% {
      width: 0;
    }
    100% {
      width:  100%;
    }
  }
/*のび太ブロックを横に追いやるアニメーション*/
  @keyframes secondaryImageOverlayOut {
    0% {
      transform: translateX(0);
    }
    100% {
      transform: translateX(102%);
    }
  }

.upbox {
  width: 50%;
}


/*////////////////////////*/
/* 共通のfadeIn */
/*////////////////////////*/
.fadeIn-all {
animation-name: fadeInAnime;/*1で解説*/
animation-fill-mode:forwards;
animation-duration:1.5s;/*3で解説*/
animation-timing-function:ease;/*5で解説*/
animation-delay: 0.5s;/*6で解説*/
animation-direction:normal;/*7で解説*/
opacity: 0;
}
/*1で解説*/
@keyframes fadeInAnime{
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.fadeInTrigger {
  opacity: 0;
}

/*////////////////////////*/
/* 共通のfadeUp */
/*////////////////////////*/
.fadeUp-all {
animation-name: fadeUpallAnime;
animation-duration:1s;/*3で解説*/
animation-timing-function:ease;/*5で解説*/
animation-delay: 0.3s;/*6で解説*/
animation-fill-mode:forwards;
opacity: 0;
}
@keyframes fadeUpallAnime{
  from {
    opacity: 0;
  transform: translateY(100px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}
.fadeUpTrigger {
  opacity: 0;
}

/*////////////////////////*/
/* 共通のテキストアニメ テキストを滑らかに出現させるためのCSS*/
/*////////////////////////*/
span.smoothText-all {
overflow: hidden;
display: block;
}
/* アニメーションで傾斜がついている文字列を水平に戻す*/
span.smoothTextTrigger-all{
transition: .8s ease-in-out;
transform: translate3d(0,100%,0) skewY(12deg);
transform-origin: left;
display: block;
}
span.smoothTextTrigger-all.smoothTextAppear-all{
    transform: translate3d(0,0,0) skewY(0);
}


/*////////////////////////*/
/* シャッ（背景色が伸びて出現） */
/*////////////////////////*/

/*背景色が伸びて出現（共通）*/
.bgextend{
  animation-name:bgextendAnimeBase;
  animation-duration:1s;
  animation-fill-mode:forwards;
  position: relative;
  overflow: hidden;/*　はみ出た色要素を隠す　*/
  opacity:0;
}
@keyframes bgextendAnimeBase{
  from {
    opacity:0;
  }

  to {
    opacity:1;  
  }
}

/*中の要素*/
.bgappear{
  animation-name:bgextendAnimeSecond;
  animation-duration:1s;
  animation-delay: 0.6s;
  animation-fill-mode:forwards;
  opacity: 0;
}
@keyframes bgextendAnimeSecond{
  0% {
  opacity: 0;
  }
  100% {
  opacity: 1;
  }
}

/*左から*/
.bgLRextend::before{
  animation-name:bgLRextendAnime;
  animation-duration:1s;
  animation-fill-mode:forwards;
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #666;/*伸びる背景色の設定*/
}
@keyframes bgLRextendAnime{
  0% {
    transform-origin:left;
    transform:scaleX(0);
  }
  50% {
    transform-origin:left;
    transform:scaleX(1);
  }
  50.001% {
    transform-origin:right;
  }
  100% {
    transform-origin:right;
    transform:scaleX(0);
  }
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
.bgappearTrigger,
.bgUDextendTrigger,
.bgDUextendTrigger,
.bgRLextendTrigger,
.bgLRextendTrigger{
    opacity: 0;
}


.btn01 {
  display: block;
  width: 100%;
  height: 60px;
  line-height: 60px;
  background: #7EC703;
  color: #fff;
  text-align: center;
  font-size: 18px;
  border-radius: 40px 0 0 40px;
  transition: all 0.6s ease 0s;
}
.btn02 {
  display: block;
  width: 100%;
  height: 60px;
  line-height: 60px;
  background: url(https://engenius.jp/recruit/eng/wp-content/uploads/2025/08/arrow01.png) no-repeat center right 20px / 15px #01B11E;
  color: #fff;
  text-align: center;
  font-size: 28px;
  font-weight: 600;
  border-radius: 0 40px 40px 0;
  transition: all 0.6s ease 0s;
}

.btn01:hover {
  transition: all 0.6s ease 0s;
  background: #434343;
}
.btn02:hover {
  transition: all 0.6s ease 0s;
  background: url(https://engenius.jp/recruit/eng/wp-content/uploads/2025/08/arrow01.png) no-repeat center right 20px / 15px #434343;
}

.catchbox {
  position: relative;
  width: 100%;
  height: 130px;
}
.catch01 {
  position: absolute;
  top: 0;
  left: 0;
  color: #E1F5CE;
}
.catch02 {
  position: absolute;
  top: 40px;
  left: 0;
}

.bgwrap {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
}

.catch03 {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit- transform: translateX(-50%);
  color: #fff;
  mix-blend-mode: soft-light;
  width: 100%;
  text-align: center;
}
.catch04 {
  position: absolute;
  top: 40px;
  left: 50%;
  transform: translateX(-50%);
  -webkit- transform: translateX(-50%);
  width: 100%;
  text-align: center;
  color: #fff;
}

.box01 {
  background: rgba(255, 255, 255, 0.85);
}

.catch05 {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit- transform: translateX(-50%);
  width: 100%;
  color: #E1F5CE;
  text-align: center;
}
.catch06 {
  position: absolute;
  top: 40px;
  left: 50%;
  transform: translateX(-50%);
  -webkit- transform: translateX(-50%);
  width: 100%;
  text-align: center;
}


.accordion  {
  margin-inline: 0;
  border-bottom:1px solid #a9a9a9
}
.accordion_title {
  position: relative;
  border: none;
  display: block;
  list-style: none;
  width: 100%;
  cursor: pointer;
  padding: 30px 20px 30px 55px ;
  line-height: 1.6em;
  background: url(http://ma-zero.com/img/iconq.svg) no-repeat top 30px left 10px / 35px;
  color: #01b11e;
}
summary.accordion_title::-webkit-details-marker {
  display:none;
}
.accordion_title:after {
  content: "+";
  position: absolute;
  top: calc(50% - 0.5em);
  right: 20px;
  line-height: 1;
  padding: 0;
  pointer-events: none;
  color: #01B11E;
}
.accordion::details-content {
  opacity: 0;
  block-size: 0;
  transition: .3s;
  transition-property: display, opacity, block-size, padding;
  transition-behavior: allow-discrete;
  line-height: 1.6em;
  transition: all 0.6s ease 0s;
}
.accordion .accordion_contents {
  padding: 30px 20px 30px 55px ;
  background: url(http://ma-zero.com/img/icona.svg) #f2f2f2 no-repeat top 30px left 10px / 35px;
}
.accordion .accordion_contents > *:first-of-type {
  margin-top: 0;
}
.accordion .accordion_contents > *:last-of-type {
  margin-bottom: 0;
}
.accordion[open]::details-content {
  opacity: 1;
  block-size: auto;
  block-size: calc-size(auto, size);
  transition: all 0.6s ease 0s;
}
.accordion[open] .accordion_contents {
  padding: 30px 20px 30px 55px ;
}
.accordion[open] .accordion_title:after {
  content: "−";
  color: #01B11E;
}

.rubi {
  position: relative;
}
.rubi::before {
content: "ゼロ";
    position: absolute;
    top: 15%;
    left: 50%;
    font-size: 14px;
    text-align: center;
    width: 30px;
    color: #000;

  transform: translateX(-50%) translateY(-50%);
  -webkit- transform: translateX(-50%) translateY(-50%);
}


@media (max-width: 768px) {


  .formbox-pc {
    display: none;
  }
  .btnbox-pc {
    display: none;
  }
  .accordion_title:after {
    right: 0px;
  }
  .formbox-sp {
    width: 100%;
    height: 100%;
    padding: 10px;
    background: #fff;
    z-index: 1;
  }
  #entry-sp {
    scroll-margin-top: 50px;
  }

}


.slider1 .swiper-slide {
	height: unset;
}
.swiper-custom-parent {
  position: relative;
}
.slider1 {
  position: unset;
  width: 100%;
  height: 100%;
}
.swiper-pagination-bullet {
	width: 8%;
    height: 3px;
    border-radius: unset;
    background: #808080;
}

/*slider3*/
.slider3 .slider-box {
	position: relative;
	height: 150px;
}
/*slider2*/
.slider2 {
	width: 90%;
}
.slider2 .slider-box {
  width: 100px;
	height: 100px;
}
.slider2-cap {
	position: absolute;
	left: 15px;
	bottom: 10px;
	padding-left: 15px;
	background: url(https://engenius.jp/recruit/eng/wp-content/uploads/2025/08/icon-arrow02.png) no-repeat left center / 6px 10px;
}

.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
    left: 0;
    background: #00B11D;
}
.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
    right: 0;
    background: #00B11D;
}
.swiper-button-next:after, .swiper-button-prev:after {
    font-size: 1.4rem;
    color: #fff;
}

    .upbox-sp {
		  display: none;
      position: fixed;
		  position: -webkit-fixed;
      bottom: 30px;
      right: 10px;
      width: 70%;
      z-index: 99;
      margin: 0;
      padding: 0;
    }
    .upbox-sp .btn01 {
        font-size: 14px;
    }
    .upbox-sp .btn02 {
        font-size: 18px;
		background: url(https://engenius.jp/recruit/eng/wp-content/uploads/2025/08/arrow01.png) no-repeat center right 10px / 15px #01B11E;
    }

/*PCのみ*/
@media (min-width: 768px) {

  .formbox-pc {
    position: absolute;
    top: 0;
    right: 0;
    width: 450px;
    height: 100%;
    padding: 120px 20px 0 20px;
    background: #fff;
    z-index: 1;
  }
  .formbox-sp {
    display: none;
  }

  #reason , #flow , #company , #faq {
    scroll-margin-top: 50px;
  }



  .br-md-s40 {
    border-radius: 40px 0 0 40px;
  }
  .br-md-e40 {
    border-radius: 0 40px 40px 0;
  }
  .frontwrap {
      max-width: 1400px;
      min-width: 1200px;
  }
  .top-catch {
    position: absolute;
    z-index: 1;
    top: 100px;
    left: 43%;
    width: 53%;
    padding: 5%;
  }
  .btnwrap {
    position: absolute;
    z-index: 1;
    top: 750px;
    left: 0;
    width: 100%;
  }
  .h-md-400 {
    height: 400px;
  }

  .voicebox {
    position: relative;
  }
  .voicebox::after {
      content: "";
      position: absolute;
      top: 17%;
      left: 5%;
      width: 95%;
      height: 83%;
      background: #fff;
      z-index: -1;
  }












}


@media (max-width: 768px) {
  .top-slider {
    padding-top: 50px;
    height: auto;
  }
  .hwrap {
    height: 80px;
  }
  .Hlogo {
    position: absolute;
    top: 10px;
    left: 50%;
    transform: translateX(-50%);
    -webkit- transform: translateX(-50%);
    width: 300px;
  }
  .Hmenu , .btnbox {
    display: none!important;
  }
  .top-catch {
    padding: 5%;
  }

  .btnbox-sp {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 15px 0;
    background: #d2e6c8;
    z-index: 10;
  }
  .btnwrap {
    position: relative;
  }
  .bg-bt {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: -1;
  }



    .upbox {
      width: 100%;
    }

    .animetext {
      /* margin: 50px 0; */
      padding: 10px 0;
    }

    .animetext span {
      margin: 10px 0;
      line-height:1;
      /*アニメーションの設定*/
      animation:fadeIn 0.1s 0.5s; 
      animation-fill-mode: both;
      padding: 10px;
      background: #434343;
      color: #fff;
    }
    .accordion_title:after {
      right: 0px;
    }
    /*slider3*/
    .slider3 .slider-box {
      height: 100px;
    }

    .br-sp-40 {
      border-radius: 40px;
    }


}
