@charset "UTF-8";
/*Reset =============================================*/
/* * {
  box-sizing: border-box;
  background-repeat: no-repeat;
}
html, body, h1, h2, h3, h4, h5, h6, p, ul, ol, li, dl, dt, dd, figure, figcaption, button {
  margin: 0;
  padding: 0;
}
ul, li {
  list-style: none;
}
a {
  text-decoration: none;
  color: inherit;
}
a[href^="tel:"] {
  pointer-events: all;
}
img, svg {
  vertical-align: bottom;
  border: none;
  width: 100%;
  max-width: 100%;
  height: auto;
}
svg {
  vertical-align: bottom;
}
button {
  background-color: inherit;
  border: none;
}
table {
  border-collapse: collapse;
} */

/* Module =============================================*/
/* .pc {
  display: none;
}
.pc-nav {
  display: none;
} */
.c_wide {
  max-width: 1400px;
  margin: auto;
}
/* .sec_bloc {
  padding-top: 4em;
  padding-bottom: 4em;
  padding-left: 2em;
  padding-right: 2em;
}*/
.sec_bloc_bottom {
  padding-bottom: 10em;
} 

@media screen and (min-width: 899px) {
  /* .sec_bloc {
    padding-top: 8em;
    padding-bottom: 8em;
    padding-left: 4em;
    padding-right: 4em;
  } */
  .sec_bloc_bottom {
    padding-bottom: 10em;
  }
}

/* @media screen and (min-width: 899px) {
  .sp {
    display: none;
  }
  .pc {
    display: block;
  }
  .pc-nav {
    display: block;
  }
} */

/*----------KEY----------*/
.header-wrap {
  position: relative;
  height: 56em;
}
.video-bg {
  position: relative;
  height: 100%;
  /* background: #000; */
  overflow: hidden;
}
.video-bg::after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: rgb(0, 0, 0, 0.3);
  background-size: 4px 4px;
  background-position: 0 0, 2px 2px;
  opacity: .7;
}
#bg-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  /* left: 50%;
  transform: translate(-50%, 0%);
  min-height: 100%;
  min-height: 100vh;
  min-width: 100%;
  min-width: 100vw;
  position: absolute;
  top: 0; */
}
.rtg {
  position: absolute;
  height: fit-content;
  left: 2em;
  top: 0;
  bottom: 0;
  margin: auto;
  color: #fff;
}
.rtgttl {
  font-size: 5em;
}
.rtgttisub {
  color: #fff;
  font-size: 1.5em;
  font-weight: bold;
}
.rtgttisubtxt {
  font-size: 1.2em;
  font-weight: 400;
  line-height: 1.5;
  padding-top: 2em;
  width: 80%;
}
/*----------ABOUT----------*/
.sec_about {
  position: relative;
  overflow: hidden;
}
.rec_top_deco {
  padding: .5em 0;
  display: flex;
  animation: infinity-scroll-left 15s infinite linear 0.5s both;
}
@keyframes infinity-scroll-left {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
.rec_top_deco_box {
  overflow: hidden;
}
.rec_about_ttl_box {
  padding: 2em 0 0 0;
}
.rec_about_ttl {
  padding-left: .5em;
  font-size: 2.5em;
  font-weight: 400;
  color: #fff;
  text-shadow: 1px 1px 0 #2993CA, -1px -1px 0 #2993CA,
    -1px 1px 0 #2993CA, 1px -1px 0 #2993CA,
    0px 1px 0 #2993CA, 0 -1px 0 #2993CA,
    -1px 0 0 #2993CA, 1px 0 0 #2993CA;
}
.sec_about h2 img {
  padding: 0 5em;
  position: relative;
  top: -.5em;
}
.rec_circle_txt {
  width: 30%;
  margin-left: auto;
  animation: 6s linear infinite rotation1;
  position: absolute;
  right: 1em;
  top: 17%;
}
@keyframes rotation1 {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
.rec_about_ph_box {
  position: relative;
}
.rec_about_maintxt {
  padding: 0 2em;
}
.rec_about_ph_cnt {
  display: flex;
  text-align: center;
  justify-content: center;
}
.rec_about_ph_bg {
  position: absolute;
  z-index: -1;
}
.rec_about_ph {
  position: relative;
}
.rec_about_txt {
  padding: 0 2em;
}
.rec_about_txt h3 {
  font-size: 1.5em;
  padding-bottom: 1em;
  line-height: 1.9;
}
.rec_about_txt p {
  font-size: 1.1em;
  font-weight: 100;
  padding-bottom: 1em;
  line-height: 1.75;
}
/*----------WORKS----------*/
.rec_sec_ttl {
  font-size: 3.5em;
  font-weight: 600;
  padding-bottom: 1em;
}
.rec_sec_ttl span {
  display: block;
  font-size: .4em;
  font-weight: 700;
  color: #2993CA;
  margin-top: .2em;
}
.rec_works_box {
  padding-bottom: 2em;
}
.rec_works_ttl_box {
  text-align: center;
  padding-bottom: 1em;
  border-bottom: #2993CA 1px solid;
}
.rec_works_ttl {
  color: #2993CA;
  font-size: 1.5em;
}
.rec_works_ttl_icon {
  width: 2em;
}
.rec_works_ph {
  padding: 2em 0;
}
.rec_works_txt {
  font-size: 1.4em;
  padding: 0 0 .5em 1.5em;
  position: relative;
  border-bottom: #000 1px solid;
}
.rec_works_txt::before {
  content: "";
  border-right: 0 solid transparent;
  border-bottom: 1em solid #2993CA;
  border-left: 1em solid transparent;
  position: absolute;
  left: 0em;
  top: .25em;
}
.rec_works_subtxt {
  padding: .5em 0 2em;
  font-size: 1em;
  line-height: 1.6;
  /* font-weight: 100; */
}
.rec_works_subtxt span {
  display: block;
}
/*----------STAFF----------*/
.rec_sec_staff {
  padding: 0 0 3em;
}
.rec_sec_staff h2 {
  padding: 0 .5em .5em;
}
.rec_staff_ph_box {
  width: 21em;
  display: flex;
  text-align: end;
  justify-content: center;
}
.staff_ph {
  position: relative;
  z-index: 10;
  width: 21em;
}
.staff_ph_bg {
  position: absolute;
  z-index: -1;
  width: 21em;
}
.rec_staff_ph_box::before {
  content: "";
  background-color: #fff;
  display: block;
  z-index: 9;
  position: absolute;
  width: 21em;
  padding: 5.3em .5em;
}
.rec_staff_ph_box.slide {
  /* overflow: hidden; */
  position: relative;
}
.rec_staff_ph_box.slide::after {
  background-color: #2993CA;
  position: absolute;
  top: 5%;
  right: 0;
  content: '';
  width: 100%;
  height: 100%;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: .2s cubic-bezier(0.0, 0, 0, 1);
  z-index: -1;
  transform: skewY(-10deg) scale(1, .5);
  height: 18em;
  mix-blend-mode: color-burn;
}
.rec_staff_ph_box.slide:hover::after {
  transform: skewY(-20deg) scale(1, 1);
}
.rec_staff_box {
  display: flex;
  overflow-x: scroll;
  scroll-snap-type: x mandatory;
  justify-content: space-between;
  padding: 0 2em;
}
.rec_staff_cnt {
  width: 100%;
  padding: 0 1em 2em 0;
  scroll-snap-align: center;
  position: relative;
}
/* .rec_staff_cnt:first-child{
   padding-left: 2em;
  } */
/* .rec_staff_cnt:last-child{
    padding: 0 0 2em 0;
  } */
a:hover img {
  opacity: 1;
}
.rec_staff_maintxt {
  border: #2993CA 1px solid;
  background-color: #fff;
  width: 21em;
  height: 6em;
  position: absolute;
  bottom: 0;
  z-index: 10;
}
.rec_staff_txt {
  color: #2993CA;
  font-size: 1.2em;
  padding-top: .5em;
}
.rec_staff_subtxt {
  color: #2993CA;
  padding: 0 0 .5em;
  border-bottom: #2993CA 1px solid;
}
.triangle {
  border-right: 0 solid transparent;
  border-bottom: 2em solid #2993CA;
  border-left: 2em solid transparent;
  position: absolute;
  bottom: 2em;
  right: 1em;
}
/*----------INFO----------*/
.achievement-ttl {
  font-size: 1.9em;
  text-align: left;
  line-height: 1.3;
  background: none;
  color: #2993CA;
  padding: .5em 0;
}
.achievement-table dt {
  font-size: 1.3em;
  font-weight: 600;
  color: #2993CA;
  padding: .5em 0;
}
.entry_desc_wrap:first-of-type{
  border-top: .5px solid #000;;
}
.entry_desc_wrap{
  border-bottom: .5px solid #000;
  padding: 1.2em 0;
}
.achievement-table dd {
  font-size: 1.05em;
  line-height: 1.7;
  padding-bottom: .5em;
  padding-left: 1em;
}
.achievement-table dd p {
  padding: .2em 0;
}
.f1-ttl22 {
  font-size: 1.2em;
  line-height: 1.7;
  padding: 1em 0 3em;
}
input[name="recruit-entry-tab-item"] {
  display: none;
}
label {
  display: inline-block;
}
.recruit-entry-tabs input:checked + .recruit-entry-tab-item, .recruit-entry-tabs input:checked + .recruit-entry-tab-item span {
  background-color: #2993CA;
  color: #fff;
  transition: all 0.2s ease;
}
.recruit-entry-tab-item:hover {
  opacity: 1;
}
.recruit-entry-tab-item {
  width: 50%;
  border-right: 6px solid #fff;
  background-color: #efefef;
  line-height: 1.3;
  padding: 1.5em 0;
  color: #2993CA;
  display: block;
  float: left;
  text-align: center;
  font-weight: normal;
  transition: all 0.2s ease;
  font-size: 1em;
}
.no-border {
  border-right: 0px solid #fff;
}
.recruit_btn {
  display: block;
  font-size: 1.5em;
  background-color: #333;
  color: #fff;
  text-align: center;
  width: 100%;
  padding: 1em 0;
  cursor: pointer;
}
.recruit-entry-tab-content {
  display: none;
  padding: 0 0 1em;
  clear: both;
  overflow: hidden;
}
#entry1:checked ~ #entry1_content, #entry2:checked ~ #entry2_content {
  display: block;
}
#recForm, #recForm_part {
  display: none;
}
.btnArea {
  width: 100%;
  margin: 5% auto 5%;
  padding: 6% 0;
  border-radius: 5px;
  font-size: 1.5em;
  background: #2993ca;
  color: #fff;
  display: block;
  text-align: center;
}
.entry_btn_wrap {
  padding: 1em 0;
}
.linecolor {
  background: #06c755;
}
.btn_txt {
  padding-bottom: 1em;
  text-align: center;
}
.btn_box {
  border-bottom: #333 .5px solid;
  padding-bottom: 3em;
}
.btn_cnt {
  text-align: center;
  font-size: 1.5em;
  font-weight: 500;
  color: #333;
  margin: 0 2em;
}
.sec_event {
  padding: 4em 2em;
}
.rec_event_txt {
  font-size: 1.5em;
  padding-bottom: 2em;
}

/* /recruit/staff/ form ========== */
.recruit_staff_page #recForm{
  display: block;
}
.recruit_staff_page .rec_info_form_ttl,
.recruit_staff_page .recruit_btn,
.recruit_staff_page .recruit-entry-tab-item{
  display: none;
}

.recruit_trainner_page #recForm_part{
  display: block;
}
.recruit_trainner_page .rec_info_form_ttl,
.recruit_trainner_page .recruit_btn,
.recruit_trainner_page .recruit-entry-tab-item{
  display: none;
}
.recruit_trainner_page #entry1_content {
  display: block !important;
}
.recruit_trainner_page #entry2_content {
  display: block;
}




@media screen and (min-width: 899px) {
  /*----------KEY----------*/
  .rtgttisubtxt {
    font-size: 1.5em;
    width: 40%;
  }
  .rtg {
    left: 5vw;
  }
  /*----------ABOUT----------*/
  .sec_about {
    padding-bottom: 5em;
  }
  .rec_top_deco {
    width: 50%;
  }
  .rec_about_ttl_box {
    padding: 4em 0 0 0;
  }
  .rec_about_ttl {
    padding-left: 2em;
    font-size: 4em;
  }
  .sec_about h2 img {
    padding: 0 18em;
    position: relative;
    top: -1em;
    mix-blend-mode: multiply;
  }
  .rec_about_ph_box {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: end;
  }
  .rec_about_ph_cnt {
    position: absolute;
    top: -25%;
    z-index: -1;
  }
  .rec_circle_txt {
    width: 15%;
    right: 5%;
    top: -30%;
  }
  .rec_about_maintxt {
    filter: var(--filter-w);
    width: 55%;
    padding: 0 5% 2% 0;
  }
  .rec_about_txt {
    padding: 0 5% 0 0;
    width: 45%;
  }
  .rec_about_txt h3 {
    font-size: 1.4em;
    padding-bottom: 1em;
    line-height: 2;
    color: #fff;
  }
  .rec_about_txt p {
    font-size: 1.2em;
    line-height: 2;
    font-weight: 400;
  }
  /*----------WORKS----------*/
  .rec_sec_staff h2 {
    padding: 0 0 .5em;
  }
  .rec_sec_ttl {
    font-size: 5em;
  }
  .rec_sec_ttl span{
    font-size: .35em;
  }
  .rec_works_bloc {
    display: flex;
    justify-content: space-between;
    padding: 0 6rem;
  }
  .rec_works_box {
    padding-bottom: 2em;
    width: 46%;
  }
  .rec_works_txt {
    font-size: 1.5em;
  }
  .rec_works_subtxt {
    font-size: 1.2em;
    line-height: 1.75;
  }
  .rec_works_ttl {
    font-size: 1.8em;
  }
  .rec_works_ttl_icon {
    width: 1.5em;
  }
  .pc_br {
    padding-bottom: 4rem;
  }
  /*----------STAFF----------*/
  .rec_sec_staff {
    padding: 0 0 5em;
  }
  .rec_staff_ph_box {
    width: 100%;
  }
  .rec_staff_maintxt {
    width: 100%;
    height: inherit;
  }
  .rec_staff_cnt {
    width: 24%;
    padding: 0;
  }
  .rec_staff_cnt:first-child {
    padding-left: 0;
  }
  .rec_staff_cnt:last-child {
    padding-right: 0;
  }
  .rec_staff_box {
    padding: 0;
    overflow-x: hidden;
  }
  .rec_staff_ph_box::before {
    width: 100%;
    padding: 26% 1%;
  }
  .rec_staff_ph_box.slide::after {
    height: 60%;
  }
  .staff_ph {
    width: 100%;
  }
  .staff_ph_bg {
    width: 100%;
  }
  .rec_sec_staff {
    /* max-width: 1400px; */
    margin: auto;
  }
  .rec_staff_txt {
    font-size: 1.2em;
    font-weight: 600;
  }
  .triangle {
    bottom: 0;
    right: 0;
  }
  /*----------INFO----------*/
  /* .rec_info_txt {
    padding: 0 6em;
  }
  .recruit-entry-tabs {
    padding: 0 6em;
  } */
  .recruit-entry-tab-item {
    font-size: 1.4em;
  }

  .btnArea {
    width: 42%;
    margin: 5% auto 3%;
    padding: 3% 0;
    border-radius: 5px;
    font-size: 1.6em;
    display: block;
    text-align: center;
  }
  .entry_btn_wrap{
    display: flex;
    justify-content: center;
    gap: 3em;
    padding: 2em 0;
  }
  .entry_btn_wrap .btnArea {
    padding: 2.5% 0;
    margin: 3% 0  2%;
  }

  .btn_txt {
    font-size: 1.2em;
  }
  .btn_cnt {
    font-size: 2em;
  }
  .achievement-ttl {
    font-size: 2em;
  }
  .achievement-lede3 li {
    font-size: 1.5em;
  }

  .entry_desc_wrap{
    display: flex;
    padding: 2em 0;
  }
  .achievement-table dt {
    width: 30%;
    font-size: 1.3em;
    padding: 0;
  }
  .achievement-table dd {
    width: 70%;
    font-size: 1.15em;
    padding: 0;
  }
}


/*----------STAFF 個人ページ----------*/
/*----------KEY----------*/
.rec_staff_key {
  position: relative;
  overflow: hidden;
  padding-bottom: 2em;
}
.rec_staff_key_ph_box {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.rec_staff_key_ph_box::before {
  content: "";
  background-color: #2993CA;
  mix-blend-mode: multiply;
  width: 100vw;
  height: 95%;
  position: absolute;
  z-index: 1;
  bottom: 2.5%;
  left: 0;
  opacity: 1;
  animation: .75s forwards rec_staff_top_bg;
}
@keyframes rec_staff_top_bg {
  0% {
    transform: skewY(-4.5deg) translate(-100%, 0)
  }
  100% {
    transform: skewY(-4.5deg) translate(0, 0)
  }
}
.rec_staff_ph_b {
  width: 100vw;
}
.rec_staff_ph_f {
  position: absolute;
  z-index: 3;
  width: 100vw;
}
.rec_staff_info {
  position: absolute;
  top: 8rem;
  filter: var(--filter-w);
  z-index: 2;
}
.rec_staff_ttl img {
  width: 100vw;
  padding: 0 1.5rem 2rem;
}
.rec_staff_info_txt {
  font-size: 1.1rem;
  padding-bottom: .5rem;
}
.rec_staff_info_txt span {
  display: block;
}
.rec_staff_info_subtxt {
  border-top: #000 1px solid;
  font-size: .8rem;
}
.rec_staff_info_txtbox {
  padding-left: 2rem;
}
.rec_staff_circle_txt {
  width: 30%;
  margin-left: auto;
  animation: 6s linear infinite rotation1;
  position: absolute;
  right: 2em;
  bottom: 0;
  z-index: 4;
}


/*----------PROFILE----------*/
.rec_staff_pro_sec {
  padding: 6rem 2rem 2rem;
}
.rec_staff_pro_box {
  background-color: #efefef;
  padding: 3rem 2rem 2rem;
  position: relative;
}
.rec_staff_pro_box h2 {
  width: 30%;
  position: absolute;
  left: -1rem;
  top: -2rem;
}
.rec_staff_pro_txtbox {
  display: flex;
  align-items: center;
  justify-content: center;
}
.rec_staff_pro_txtbox p {
  width: 60%;
  font-weight: 100;
  margin-right: 1rem;
  font-size: .9rem;
  line-height: 1.75;
}
.rec_staff_map {
  width: 40%;
}


/*----------CONTENTS----------*/
.rec_staff_sec {
  padding: 0 2rem 4rem;
}
.rec_staff_int {
  padding: 2rem 0;
}
.rec_staff_int_future {
  padding: 4rem 0;
}
.rec_staff_int_ttl {
  padding: 1rem 0;
}
.rec_staff_int_ttl h3 {
  padding: 1rem;
  font-size: 1.5rem;
  background: linear-gradient(to right, #004d9f, #2993ca);
  color: #fff;
  display: inline;
  /* animation: 1s forwards rec_staff_h3_bg; */
}
/* @keyframes rec_staff_h3_bg {
  0% {
  transform:translate(-100%,0)
 }
 100% {
  transform:translate(0,0)
 }
 } */
.rec_staff_int_ttlsub {
  padding-top: 1rem;
  font-size: 1.4rem;
  color: #2993ca;
}
.rec_staff_int_ttlsub_future {
  padding: 1rem 0 .5rem;
  font-size: 1.4rem;
  color: #2993ca;
  border-bottom: #2993CA .5px solid;
}
.rec_staff_int_txt {
  padding-top: 1rem;
  line-height: 1.75;
}
.rec_staff_int_ph {
  padding: 2rem 0 0;
}
.rec_staff_int_box {
  border: #2993CA 1px solid;
  padding: 2.5rem 1.5rem 1.5rem;
  position: relative;
}
._future {
  position: absolute;
  top: -2rem;
  left: -1px;
}

@media screen and (min-width: 899px) {
  /*----------KEY----------*/
  .rec_staff_ph_b {
    width: 100vw;
  }
  .rec_staff_ph_f {
    width: 100vw;
  }
  .rec_staff_key_ph_box::before {
    bottom: 5.5%;
    height: 89%;
  }
  @keyframes rec_staff_top_bg {
    0% {
      transform: skewY(-4.3deg) translate(-100%, 0)
    }
    100% {
      transform: skewY(-4.3deg) translate(0, 0)
    }
  }
  .rec_staff_circle_txt {
    width: 15%;
    right: 4rem;
  }
  .rec_staff_info {
    top: 22rem;
  }
  .rec_staff_ttl img {
    padding: 0 45vw 2rem 3rem;
  }
  .rec_staff_info_txtbox {
    padding-left: 4rem;
  }
  .rec_staff_info_txt {
    font-size: 1.5rem;
  }
  .rec_staff_info_subtxt {
    font-size: 1.2rem;
  }
  /*----------PROFILE----------*/
  .rec_staff_pro_sec {
    padding: 8rem 10rem 8rem;
  }
  .rec_staff_pro_box h2 {
    width: 15%;
    top: -3rem;
  }
  .rec_staff_pro_txtbox p {
    margin-right: 4rem;
    font-size: 1.5rem;
    line-height: 2;
  }
  .rec_staff_pro_box {
    padding: 4rem 5rem 4rem;
  }
  .rec_staff_map {
    width: 30%;
  }
  /*----------INTERVIEW----------*/
  .rec_staff_sec {
    padding: 0 4rem 4rem;
  }
  .flex_box {
    display: flex;
    justify-content: space-between;
  }
  .rec_staff_int {
    padding: 4rem 0;
  }
  .rec_staff_int_left {
    width: 49%;
  }
  .rec_staff_int_ph {
    width: 49%;
    padding: 0;
  }
  .rec_staff_int_ttl h3 {
    padding: 1rem 2rem;
    font-size: 2rem;
  }
  .rec_staff_int_ttlsub {
    padding-top: 2rem;
    font-size: 2rem;
  }
  .rec_staff_int_txt {
    padding-top: 2rem;
    font-size: 1.4rem;
    line-height: 1.8;
  }
  .rec_staff_int_ph_box {
    display: flex;
    justify-content: space-between;
    padding-top: 2rem;
  }
  .rec_staff_int_ttlsub_future {
    padding: 2rem 0;
    font-size: 2rem;
  }
  .rec_staff_int_box {
    padding: 3.5rem 2.5rem 2.5rem;
  }
}



/* sec_rec_job =========== */
.sec_rec_job{
  background-color: #efefef;
}

.rec_job_list_box {
  padding: 1.4em 1.4em;
  background-color: #fff;
  margin: 1.5em 0;
  transition: background-color .5s;
}
.rec_job_list_box:hover{
  background-color: var(--c-blue);
  color: var(--color-white);
}
.rec_job_list_box:hover .top_feature_link_btn{
  color: var(--c-gray) !important;
}

.rec_job_list_box2{
  position: relative;
  z-index: 1;
  aspect-ratio: 3/4;
  color: #fff;
  margin: 0 0 2em;
}

.rec_job_list_box2::before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  background-color: var(--c-blue);
  mix-blend-mode: screen;
}
.rec_job_list_box2::after{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background-color: var(--c-blue);
  mix-blend-mode: multiply;
  transition: .5s opacity;
}

.rec_job_list_box2:hover::before,
.rec_job_list_box2:hover::after{
  opacity: .7;
}

.rec_job_list_box_img{
  position: absolute;
  top: 0;
  left: 0;
  z-index: -3;
  width: 100%;
  height: 100%;
}
.rec_job_list_box_img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: right bottom;
}
._staff .rec_job_list_box_img img{
  object-position: right bottom;
}
._trainer .rec_job_list_box_img img{
  object-position: -9em top;
}

.rec_job_list_box2 a{
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 2em;
}
.rec_job_list_box_ttl{
  font-size: 1em;
  padding: 1.5em 0;
  letter-spacing: .03em;
}
.rec_job_list_box_ttl .ja{
  display: block;
  font-size: 2.8em;
  line-height: 1.3;
}
.rec_job_list_box_ttl .en{
  display: block;
  font-size: 1.2em;
  font-weight: 300;
  margin-top: .5em;
}


.rec_job_list_ttl{
  font-size: 1em;
  padding: 1em 0;
  margin-bottom: .5em;
}
.rec_job_list_ttl .en{
  display: block;
  font-size: 3em;
  font-weight: 300;
}
.rec_job_list_ttl .ja{
  display: block;
  font-size: 1.2em;
}
.rec_job_list_img{
  width: 100%;
  aspect-ratio: 1.414 / 1;
  margin: .8em 0;
}
.rec_job_list_img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.rec_job_list_desc{
  font-size: 1.1em;
  font-weight: 500;
  line-height: 1.8;
  padding: 1em 0 .5em;
}


@media screen and (min-width: 899px) {
  .rec_job_list{
    display: flex;
    justify-content: space-between;
    padding: 0 6rem;
    gap: 3em;
  }
  .rec_job_list_box{
    width: 48%;
    padding: 1.4em 2em;
  }
  .rec_job_list_box2{
    width: 48%;
    margin-bottom: 0;
    aspect-ratio: 4 / 5;
  }
  .rec_job_list_ttl {
    font-size: 1.05em;
    padding: 1.2em 0;
  }
  .rec_job_list_box_ttl .ja {
    font-size: 3em;
  }
  /* .rec_job_list_desc {
    min-height: 10.5em;
  } */
  .rec_job_list_desc {
    min-height: 7.5em;
    padding: 1em 3em .5em;
  }
}/*  */




/* VOICE TRAINNER INTRO ==================== */
.vt_intro_sec {
  background-color: #f6f6f6;
}
.vt_intro_ttl {
  font-size: 1em;
  font-weight: 600;
  padding: 1.2em 0;
  color: var(--c-blue);
}
.vt_intro_ttl .ja {
  display: block;
  font-size: 1.9em;
  letter-spacing: .02em;
  line-height: 1.7;
}
.vt_intro_txt_wrap{
  padding-left: 1em;
}
.vt_intro_desc {
  font-size: 1.2em;
  font-weight: 500;
  line-height: 1.9;
  padding: 0 0 1em;
}
.vt_intro_desc p {
  padding: .3em 0;
}
.vt_intro_img_wrap {
  position: relative;
  padding: 3em 0;
}
.vt_intro_img._01 {
  position: relative;
  width: 84%;
  margin-left: auto;
  margin-right: -2em;
}
.vt_intro_img._03 {
  width: 70%;
  margin-top: -1em;
}
.vt_intro_script{
  position: absolute;
  right: -1em;
  bottom: .5em;
  width: 19em;
}
.vt_intro_script img {
  transform: rotateZ(-14deg);
}

@media (min-width: 899px) {
  .vt_intro_pc_flex {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .vt_intro_txt_wrap {
    width: 36%;
    font-size: 1.1em;
  }
  .vt_intro_desc{
    font-size: 1.15em;
  }
  .vt_intro_img_wrap {
    width: 46%;
    margin: 0;
  }
  .vt_intro_img._01 {
    width: 80%;
  }
  .vt_intro_img._03 {
    width: 60%;
    margin-left: 5%;
    margin-top: -2em;
  }
  .vt_intro_script{
    right: -6em;
    bottom: 1em;
    width: 23em;
  }
}/*  */


/* VOICE TRAINNER PROFILE ==================== */
.vt_profile_ttl{
  font-size: 1.6em;
  margin-bottom: .5em;
}
.vt_profile_ttl.before_point::before {
  background-color: var(--c-blue);
}
.vt_profile_desc{
  font-size: 1.2em;
  line-height: 1.9;
  padding: 1em 0;
}
.vt_profile_desc p{
  padding: .2em 0;
}

.vt_profile_pc_flex {
  margin-bottom: 1.5em;
}
.vt_profile_list li{
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: .8em;
  background-color: #f6f6f6;
  margin: 1em 0;
}
.vt_profile_list_num{
  display: block;
  width: 5.6rem;
  font-size: 2em;
  line-height: 2.8;
  font-weight: 300;
  text-align: center;
  aspect-ratio: 1/1;
  background-color: var(--c-blue);
  color: #fff;
  border-radius: .2em;
}
.vt_profile_list_txt{
  width: calc(100% - 6.5rem);
  font-size: 1.2em;
  font-weight: 600;
  line-height: 1.6;
}

.vt_profile_link_block{
  padding: 3em 2em;
  background-color: #f6f6f6;
  text-align: center;
  border-radius: .5em;
}
.vt_border{
  display: block;
  width: 100%;
  height: 1px;
  background-color: var(--color-grey-txt);
  margin: 2.5em 0;
}
.vt_profile_link_ttl {
  font-size: 1.3em;
  margin-bottom: 1em;
}
.vt_profile_link_btn{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  font-size: 1.2em;
  font-weight: 500;
  letter-spacing: 0.02em;
  padding: 1.2em 0;

  background-color: var(--c-blue);
  color: #fff;
}
.vt_profile_link_btn .txt{
  position: relative;
  display: block;
  padding-left: 1.3em;
  transition: transform .5s;
}
.vt_profile_link_btn .txt::before{
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  display: block;
  width: .9em;
  height: .9em;
  background-image: url(/imgs/icon_arrow_right.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  filter: var(--filter-w);
}
.vt_profile_link_btn:hover .txt{
  transform: translateX(.5em);
}

@media (min-width: 899px) {

  .vt_profile_pc_flex{
    display: flex;
    justify-content: space-between;
    margin-bottom: 2.5em;
  }
  .flex_left_box{
    width: 46%;
  }
  .flex_right_box{
    width: 48%;
  }
  .vt_profile_list:first-child{
    margin-bottom: 0;
  }
  /* .vt_profile_list{
    display: flex;
    justify-content: space-between;
    margin-bottom: 1em;
  }
  .vt_profile_list li {
    width: 32%;
  } */
  .vt_profile_img {
    aspect-ratio: 4/3;
  }
  .vt_profile_list_txt {
    width: calc(100% - 7rem);
    font-size: 1.3em;
  }
  .vt_profile_pc_flex + .sec_desc{
    font-size: 1.6em;
  }

  .vt_profile_link_block{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 3em 3em;
  }
  .vt_profile_link_box{
    width: 45%;
  }
  .vt_border{
    width: 1px;
    height: 10em;
    margin: 0;
  }
}/*  */


/*  ============================ */
.rec_desc {
  font-size: 1.6em;
  font-weight: 600;
  line-height: 1.7;
  padding: .5em 0;
}
.rec_txt{
  font-size: 1.1em;
  font-weight: 400;
  line-height: 1.7;
  padding: .5em 0;
}
.rec_txt p{
  padding: .3em 0;
}
@media (min-width: 899px) {
  .rec_desc {
    font-size: 2.1em;
  }
}

/* HOW TO DEBUT ============================ */
.rec_debut_sec {
  padding: 4em 0;
  background-color: #f6f6f6;
}
.debut_step_pc_flex{
  padding: 2em 0 0;
}

.debut_step_img{
  width: 100%;
  aspect-ratio: 4 / 3;
  margin: 0 0 3em;
}
.debut_step_img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.debut_step_list{
  padding: .5em 0 0;
}
.debut_step_list_box{
  position: relative;
  padding: 2em 1em ;
}
.debut_step_list_box:first-child{
  border-top: 1px solid var(--color-grey-txt)  ;
}
.debut_step_list_box:not(:last-child){
  border-bottom: 1px solid var(--color-grey-txt)  ;
  margin-bottom: 1.2em;
}
.debut_step_list_box:not(:last-child)::after{
  position: absolute;
  top: calc(100% - 1.45em);
  left: 0;
  right: 0;
  margin: auto;
  content: "";
  display: block;
  width: 3em;
  height: 3em;
  border-bottom: 1px solid var(--color-grey-txt);
  border-right: 1px solid var(--color-grey-txt);
  transform: rotateZ(45deg) ;
}

.debut_step_list_num{
  position: relative;
  display: block;
  font-size: 1.5em;
  font-weight: 500;
  color: var(--c-gold);
  margin-bottom: .4em;
}
.debut_step_list_ttl{
  font-size: 1em;
  padding: .7em 0;
}
.debut_step_list_ttl .step_wrap {
  font-family: var(--font-en);
  font-size: 1.2em;
  margin-bottom: .2em;
  color: var(--c-blue);
}
.step_wrap {
  font-family: var(--font-en);
  font-size: 1.2em;
  color: var(--c-blue);
  margin-left: -1rem;
}
.step_wrap .txt {
  vertical-align: .18em;
}
.step_wrap .num{
  font-size: 1.65em;
  line-height: 1;
}
.debut_step_list_ttl .en{
  display: block;
  font-size: 2.2em;
  font-weight: 400;
  margin: .1em 0;
  color: var(--c-blue);
}
.debut_step_list_ttl .ja{
  display: block;
  font-size: 1.2em;
}
.debut_step_list_img{
  margin: 1em 0;
}
.debut_step_txt {
  font-size: 1.05em;
  font-weight: 400;
  line-height: 1.7;
  padding: .5em 0;
}
.debut_step_txt p {
  padding: .3em 0;
}

@media (min-width:899px){
  .rec_debut_sec {
    padding: 5em 0;
  }
  .debut_step_pc_flex{
    display: flex;
    justify-content: space-between;
  }
  /* .debut_step_img{
    height: 100vh;
    aspect-ratio: initial;
    max-height: 59em;
  } */
  .debut_step_list_num {
    /* width: 15%; */
    font-size: 1.8em;
    /* margin-top: -.75em; */
  }
  .debut_step_img_wrap{
    position: sticky;
    top: 8em;
    width: 47%;
    height: fit-content;
  }
  .debut_step_wrap {
    width: 48%;
  }
  .debut_step_pc_flex {
    padding: 5em 0 1.5em;
  }
  .debut_step_list_ttl {
    font-size: 1.1em;
  }
  .debut_step_list_box{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.8em 1.5em;
  }
  .debut_step_list_detail_box{
    width: 100%;
    margin-bottom: .5em;
  }
  .debut_step_list_img{
    width: 44%;
  }
  .debut_step_txt {
    font-size: 1.1em;
  }
}/*  */


/* les_key_block ==================== */
.les_key_block {
  padding: 1.5em 1.8em 1.3em;
  margin-top: 2em;
  /* border: 1px solid var(--c-blue); */
  border: 1px solid var(--color-grey2);
  background-color: #fff;
}
.les_key_block_ttl{
  font-size: 1em;
  margin: 1.2em 0 2em;
}
.les_key_block_ttl span{
  display: block;
}
.les_key_block_ttl .en{
  font-size: 1.2em;
  font-weight: 400;
  margin-bottom: 0.5em;
  color: var(--c-blue);
}
.les_key_block_ttl .ja{
  font-size: 1.7em;
  letter-spacing: 0.02em;
}
.les_key_list_box{
  padding: 1.8em 0 1em;
  border-bottom: 1px solid var(--c-gray3);
}
.les_key_list_box:first-child{
  border-top: 1px solid var(--c-gray3);
}
.les_key_list_box_inner{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: flex-end;
  padding: .2em 0;
}
.les_key_img_wrap{
  width: 25%;
}
.les_key_detail_wrap{
  width: 70%;
}
.les_key_list_ttl{
  font-size: 1em;
  color: var(--c-blue);
  margin-bottom: 0.2em;
}
.les_key_list_ttl .en{
  display: block;
  font-size: 1.9em;
  font-weight: 500;
  line-height: 1;
}
.les_key_list_ttl .ja{
  display: inline-block;
  font-size: 1.1em;
  font-weight: 500;
  margin-top: 0.2em;
  color: var(--c-navy);
}
.les_key_list_desc {
  padding: .7em 0;
  margin-bottom: .3em;
  line-height: 1.6;
}
.les_foot_desc {
  font-size: 1.1em;
  font-weight: 500;
  line-height: 1.7;
  padding: 1.5em 0 1em;
}
@media (min-width:769px){
  .les_key_block {
    padding: 1.2em 2.5em 1.3em;
  }
  .les_key_block_ttl{
    font-size: 1.1em;
    text-align: center;
  }
  .les_key_list {
    display: flex;
    justify-content: space-between;
  }
  .les_key_list_box {
    position: relative;
    width: 30%;
    border: none;
    padding: 1.2em 0 0;
  }
  .les_key_list_box:first-child {
    border: none;
  }
  .les_key_list_box:not(:last-child)::before{
    content: "";
    position: absolute;
    top: .5em;
    right: -8%;
    display: block;
    width: 1px;
    height: 92%;
    background-color: var(--c-gray3);
  }
  
  .les_key_img_wrap {
    width: 24%;
  }
  .les_key_detail_wrap {
    width: 73%;
  }
  .les_foot_desc {
    font-size: 1.25em;
  }
}/*  */



/* RECRUIT VOICE TRAINNER */
.rec_vt_keyvis.header-wrap {
  height: 58em;
}
.rec_vt_keyvis.header-wrap .video-bg img{
  height: 100%;
  object-fit: cover;
}
.rec_vt_key_ttl_box{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  color: #fff;
  height: fit-content;
  text-align: center;
}
.rec_vt_key_ttl{
  font-size: 5.2em;
  font-weight: 600;
  line-height: 1.1;
}
.rec_vt_key_script {
  display: block;
  width: 15em;
  margin: -1.5em auto 0;
}
.rec_vt_key_desc{
  font-size: 1.45em;
  font-weight: 600;
  margin-top: 1em;
}

.vt_profile_img{
  width: 100%;
  aspect-ratio: 3/2;
  margin: 2em 0;
}
.vt_profile_img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (min-width:899px){
  .rec_vt_key_ttl_box {
    font-size: 1.3vw;
    top: 2em;
  }
  .rec_vt_keyvis.header-wrap {
    height: 58vw;
  }
  .rec_vt_keyvis.header-wrap .video-bg img{
    object-position: top;
  }

}


/* /recruit/staff/ SCHOOL STAFF ================== */
._staff .video-bg::after{
  display: none;
}
._staff .rec_vt_key_script {
  filter: var(--filter-gold);
}
._staff .rec_vt_key_ttl_box{
  text-align: left;
  margin-left: 1em;
}
._staff .rec_vt_key_script {
  width: 10em;
  margin: -4em auto 0;
}
._staff .rec_vt_key_script img{
  transform: rotateZ(-10deg);
}

.staff_bg_img{
  width: 100%;
  aspect-ratio: 10 / 9.0625;
}
.staff_bg_img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
}


@media (max-width:898px){

  ._staff .staff_bg_img:first-child::after{
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    aspect-ratio: 10 / 9.0625;
    background: rgb(0, 0, 0, 0.3);
    background: linear-gradient(0deg, rgb(54 91 113) 0%, rgba(255, 255, 255, 1) 32%);
    /* background-size: 4px 4px;
    background-position: 0 0, 2px 2px; */
    opacity: .7;
    mix-blend-mode: multiply;
  }

}/*  */

@media (min-width:899px){
  .rec_vt_keyvis.header-wrap {
    height: 59vw;
  }
  ._staff .rec_vt_key_ttl_box {
    text-align: center;
  }
  ._staff .rec_vt_key_script {
    margin: -2em auto 0;
  }

  .staff_bg{
    display: flex;
  }
  .staff_bg_img{
    aspect-ratio: 5 / 6;
  }
  ._staff .staff_bg_img:first-child img{
    object-position: bottom;
  }


}/*  */