/*
Theme Name: 
Theme URI: NA
Author: T.Oka
Author URI: NA
Description: NA
Version: 1.0.0
*/
@import url("https://fonts.googleapis.com/css2?family=Anton&family=Noto+Sans+JP:wght@300;400;500;700;900&display=swap");
@charset "UTF-8";
html {
  margin: 0 !important;
  padding: 0 !important;
}
body {
  margin: 0;
  padding: 0;
  background: #fff;
  position: relative;
}
ul {
  list-style: none;
  margin-bottom: 0;
  padding: 0 !important;
}
h1 {
  margin: 0;
  padding: 0;
}
.pc {
  display: block;
}
.sp {
  display: none;
}
.wrapper {
  width: 100%;
  display: flex;
  justify-content: center;
}
.heading {
  width: 100%;
  padding-top: 120px;
  padding-left: 11.79%;
  padding-right: 11.79%;
}
.heading2 {
  width: 100%;
  padding-top: 120px;
  padding-left: 2.984%;
  padding-right: 2.984%;
}
.heading h2,
.heading2 h2 {
  text-align: left;
  font: normal normal bold 70px/70px Oswald;
  letter-spacing: 0px;
  color: #000000;
  text-transform: none;
  margin: 0 0 4px 0;
}
.heading2 h2 {
  margin: 0 0 4px 8.806%;
}
.heading h3,
.heading2 h3,
.work_heading h3 {
  text-align: left;
  font: normal normal 900 20px/30px Noto Sans JP;
  letter-spacing: 0px;
  color: #000000;
  text-transform: uppercase;
  margin: 0;
}
.heading2 h3 {
  margin: 0 0 0 8.806%;
}
a:hover {
  opacity: 0.8;
}
figure {
  margin-block-start: 0;
  margin-block-end: 0;
  margin-inline-start: 0;
  margin-inline-end: 0;
}
#work,
#environment,
#recruit,
#contact,
.make_area {
  position: relative;
  width: 100%;
  height: auto;
  z-index: 2;
  background: #fff;
}
img {
  width: 100%;
  height: auto;
}
.d-flex {
  display: flex;
}
@media screen and (max-width: 960px) {
  .sp {
    display: block;
  }
  .pc {
    display: none;
  }
  .heading {
    padding-top: 80px;
    padding-left: 4.65%;
    padding-right: 4.65%;
    text-align: center;
    display: block;
  }
  .heading h2 {
    font: normal normal 900 50px/63px Oswald;
    margin: 0;
  }
  .heading h3 {
    font: normal normal 900 16px/30px Noto Sans JP;
  }
}
/* header */
header {
  width: 90.625%;
  position: fixed;
  top: 3.472vw;
  left: 4.722%;
  z-index: 4;
}
.header {
  display: flex;
  width: 100%;
  height: 77px;
  justify-content: space-between;
  align-items: center;
  background: #ffffff 0% 0% no-repeat padding-box;
  box-shadow: 0px 0px 6px #00000019;
  border-radius: 47px;
}
a.logo {
  display: inline-block;
  width: 15.555%;
  height: auto;
  padding: 3px 0 3px 1.944vw;
}
ul.menu {
  display: flex;
  line-height: 40px;
  height: 40px;
  margin: 0;
}
li.list_entry {
  width: fit-content;
  height: auto;
  line-height: 40px;
  margin: 0;
}
.menu li a.header_text {
  text-align: left;
  font: normal normal bold 14px/28px Noto Sans JP;
  letter-spacing: 0px;
  color: #000000;
  text-decoration: none;
  margin-right: 2.22vw;
}
a.header_contact {
  display: inline-block;
  width: fit-content;
  height: auto;
  margin-right: 2.22vw;
}
a.header_contact img {
  width: 150px;
  height: auto;
}
@media screen and (max-width: 960px) {
  header {
    width: 100%;
    height: auto;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999;
  }
  .header_sp {
    display: flex;
    width: 100%;
    height: auto;
    justify-content: space-between;
    align-items: center;
  }
  a.logo {
    width: 47.2%;
    height: auto;
    padding: 0;
    position: relative;
    z-index: 1001;
  }
  .drawer__button {
    position: relative;
    width: 17.67%;
    height: auto;
    border: none;
    cursor: pointer;
    z-index: 999;
    background: transparent linear-gradient(90deg, #5abee6 0%, #003c8c 100%) 0%
      0% no-repeat padding-box;
    border-radius: 5.349vw;
    margin-right: 6.97%;
    padding: 1.86vw;
  }
  .drawer__button p {
    font: normal normal bold 16px/28px Oswald;
    letter-spacing: 0px;
    color: #ffffff;
    text-transform: uppercase;
    margin: 0;
  }
  .drawer__button > span {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    background: #fff;
    transform: translateX(-50%);
  }
  .drawer__button > span:first-child {
    transform: translate(-50%, calc(-50% - 0.5rem));
    transition: transform 0.3s ease;
  }
  .drawer__button > span:nth-child(2) {
    transform: translate(-50%, -50%);
    transition: opacity 0.3s ease;
  }
  .drawer__button > span:last-child {
    transform: translate(-50%, calc(-50% + 0.5rem));
    transition: transform 0.3s ease;
  }
  .drawer__button.active > span:first-child {
    background: #fff;
    transform: translate(-50%, -50%) rotate(-45deg);
  }
  .drawer__button.active p {
    opacity: 0;
  }
  .drawer__button.active > span:nth-child(2) {
    background: #fff;
    transform: translate(-50%, -50%) rotate(-45deg);
    width: 25px;
    height: 3px;
  }
  .drawer__button.active > span:last-child {
    width: 25px;
    height: 3px;
    background: #fff;
    transform: translate(-50%, -50%) rotate(45deg);
  }
  .drawer__nav {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: opacity 0.3s ease;
    opacity: 0;
    visibility: hidden;
  }
  .drawer__nav.active {
    opacity: 1;
    visibility: visible;
  }
  .drawer__nav__inner {
    position: relative;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.7);
    opacity: 1;
    backdrop-filter: blur(43px);
    -webkit-backdrop-filter: blur(43px);
    margin: 0 0 0 auto;
    overflow: scroll;
    transform: translateX(100%);
    transition: transform 0.3s ease;
  }
  .drawer__nav.active .drawer__nav__inner {
    transform: translateX(0);
  }
  .drawer__nav__menu {
    list-style: none;
    padding-left: 0;
    margin-top: 250px;
  }
  .drawer__nav__link {
    display: block;
    text-align: left;
    font: normal normal bold 18px/28px Noto Sans JP;
    letter-spacing: 0px;
    color: #000000;
    text-decoration: none;
    margin: 0 auto;
    padding-bottom: 40px;
    padding-left: 24px;
  }
  .drawer__nav__link_en {
    display: block;
    text-align: left;
    font: normal normal bold 36px/53px Oswald;
    letter-spacing: 0px;
    text-transform: uppercase;
    color: #000000;
    text-decoration: none;
    margin: 0 auto;
    padding-bottom: 0;
    padding-left: 24px;
  }
  body.active {
    height: 100%;
    overflow: hidden;
  }
}
/* fv */
#fv0 {
  width: 100%;
  height: 56.319vw;
  aspect-ratio: 1440 / 811;
}
#fv1_1 {
  position: fixed;
  width: 51.393%;
  height: 39vw;
  background: transparent
    linear-gradient(180deg, #ffffff 0%, #ffffff 93%, #ffffff00 100%) 0% 0%
    no-repeat padding-box;
  z-index: 1;
}
.fv1_1 {
  width: 85.81%;
  height: auto;
  margin-left: 13%;
  margin-top: 17.569vw;
}
#fv1_2 {
  position: fixed;
  display: flex;
  width: 40.277%;
  height: auto;
  z-index: -1;
  right: 0;
}
.fv1_2 {
  width: 90.344%;
  height: 66.319vw;
  overflow: hidden;
  float: right;
}
.fv1_2_1,
.fv1_2_2 {
  width: 50%;
  height: auto;
}
.fv1_2_1 img,
.fv1_2_2 img {
  margin: -1px 0 0 0;
}
#fv2 {
  position: relative;
  width: 100%;
  height: 76.736vw;
  display: flex;
  z-index: 0;
  background: transparent
    linear-gradient(180deg, #ffffff00 0%, #ffffff 43%, #ffffff 100%) 0% 0%
    no-repeat padding-box;
  opacity: 1;
  backdrop-filter: blur(43px);
  -webkit-backdrop-filter: blur(43px);
  padding: 350px 0;
}
.fv_wrapper {
  width: 100%;
  height: auto;
}
.fv_heading {
  width: 40.277%;
  height: auto;
  float: right;
  padding-right: 8.33%;
}
.fv_heading p {
  text-align: left;
  font: normal normal normal 16px/48px Noto Sans JP;
  letter-spacing: 0px;
  color: #000000;
  margin: 32px 0 0 0;
}
.scrall_area {
  position: absolute;
  left: 19%;
  top: -18vw;
  width: 6.25%;
  height: auto;
}
@media screen and (max-width: 960px) {
  #fv0 {
    position: relative;
    z-index: 3;
  }
  #fv1 {
    width: 100%;
    height: auto;
    aspect-ratio: 430 / 568;
    position: fixed;
    z-index: 0;
    background: transparent
      linear-gradient(to bottom, #ffffff 0%, #ffffff 93%, #ffffff00 100%) 0% 0%
      no-repeat padding-box;
    margin-top: -20px;
  }
  #fv1_1 {
    width: 91.39%;
    left: 2.32%;
    top: 26vw;
    z-index: 0;
  }
  .fv1_2 {
    height: 100vw;
  }
  .fv1_1 {
    width: 100%;
    margin-left: 0;
    margin-top: 0;
  }
  #fv1_2 {
    display: none;
  }
  #fv1_2_sp {
    position: fixed;
    display: block;
    width: 100%;
    top: 72vw;
    margin: 0;
    z-index: 0;
  }
  .fv1_2_1_sp,
  .fv1_2_2_sp {
    display: flex;
    width: 150%;
    height: auto;
  }
  .fv1_2_1_sp img,
  .fv1_2_2_sp img {
    width: 100%;
    margin: 0;
  }
  #fv2 {
    height: 237.21vw;
    padding: 66.512vw 0;
    margin-top: 171vw;
  }
  .fv_heading {
    width: 100%;
    height: auto;
    padding: 0 5.33%;
  }
  .scrall_area {
    z-index: -3;
    position: absolute;
    left: 40%;
    top: 123vw;
    width: 20.93%;
  }
  /* .scrall_area  {
		position: absolute;
		left: 40%;
		top: -46vw;
		width: 20.93%;
	} */
}
/* about */
#about {
  position: relative;
  width: 100%;
  height: auto;
  z-index: 2;
  background: transparent
    linear-gradient(125deg, #5abee6 0%, #003c8c 100%, #000000 100%) 0% 0%
    no-repeat padding-box;
}
.about_heading {
  padding: 145px 0;
}
h2.about_h2 {
  text-align: left;
  font: normal normal bold 70px/70px Oswald;
  letter-spacing: 0px;
  color: #ffffff;
  text-transform: uppercase;
  margin: 0 0 4px 0;
}
h3.about_h3 {
  text-align: left;
  font: normal normal 900 20px/30px Noto Sans JP;
  letter-spacing: 0px;
  color: #ffffff;
  margin: 0 0 6.944vw 0;
}
h4.about_h4 {
  text-align: left;
  font: normal normal bold 24px/58px Noto Sans JP;
  letter-spacing: 0px;
  color: #ffffff;
  margin: 0 0 5.208vw 0;
}
.page01 .content {
  width: 100%;
  display: flex;
}
.page01 .content .contentimg {
  width: 45.2%;
  height: auto;
  padding-top: 1.389vw;
}
.page01 .content .specifically {
  width: 54.8%;
  height: auto;
  padding-left: 11.806vw;
  padding-right: 9.722vw;
}
.page01 .swap .contentimg {
  order: 2;
}
.page01 .swap .specifically {
  order: 1;
}
.view_more1 {
  display: flex;
  justify-content: space-between;
  border-top: 1px solid #7fbcd5;
  border-bottom: 1px solid #7fbcd5;
  padding: 2.778vw 0;
}
.view_more1:last-child {
  border-top: none;
}
.view_more1 a,
.view_more3 p {
  text-align: left;
  font: normal normal bold 18px/40px Noto Sans JP;
  letter-spacing: 0px;
  color: #ffffff;
  margin: 0;
  text-decoration: none;
}
.view_more1 a.more1 {
  width: 7.916%;
  height: auto;
  display: inline-block;
}
@media screen and (max-width: 960px) {
  h2.about_h2 {
    font: normal normal bold 50px/63px Oswald;
    margin: 0;
  }
  h3.about_h3 {
    font: normal normal 900 16px/30px Noto Sans JP;
    margin: 0 0 11.628vw 0;
  }
  h4.about_h4 {
    font: normal normal bold 20px/52px Noto Sans JP;
    margin: 0 0 13.488vw 0;
  }
  .more_block {
    margin-bottom: 62.791vw;
  }
  .view_more1 {
    padding: 9.302vw 0;
  }
  .about_heading {
    padding: 120px 0 0 0;
  }
  .page01 .content {
    display: block;
    z-index: 2;
  }
  #environment .content .contentimg {
    width: 100%;
    height: auto;
    padding: 0 4.65%;
  }
  #about .content .contentimg {
    width: 100%;
    height: auto;
    background: #fff;
    padding: 0 4.65%;
  }
  #environment .content .contentimg {
    width: 100%;
    height: auto;
    padding: 0 4.65%;
  }
  #about .content .contentimg img {
    margin-top: -52vw;
  }
  #environment .content .contentimg img {
    margin-bottom: -5vw;
  }
  .page01 .content .specifically {
    width: 100%;
    height: auto;
    text-align: left;
    padding: 0 4.65%;
    margin-left: 0;
    margin-right: 0;
    display: block;
  }
}
/* page01 work */
a.view_more1 {
  display: inline-block;
  width: 8%;
  height: auto;
  float: right;
  margin-top: 0px;
}
.work_area {
  display: flex;
  justify-content: center;
  width: 100%;
  padding-top: 6.667vw;
}
.work_content {
  width: 35%;
  position: relative;
  margin-right: 3.333vw;
}
.work_content:last-child {
  margin-right: 0;
}
.work_content:hover img:nth-child(2) {
  opacity: 0;
  transition: opacity 0.5s;
}
.work_content img {
  width: 100%;
  height: auto;
  border-radius: 50%;
  margin-right: 3.333vw;
}
.work_content img:last-child {
  margin-right: 0px;
}
.work_content img:nth-child(2) {
  cursor: pointer;
  position: absolute;
  bottom: 0;
  left: 0;
}
.view_more2 {
  display: flex;
  float: right;
  margin: 62px 0 150px 0;
}
.view_more2 p {
  font: normal normal bold 16px/40px Noto Sans JP;
  letter-spacing: 0px;
  color: #000000;
  margin: 0;
}
.view_more2 a {
  width: 240px;
  height: auto;
  display: inline-block;
}
@media screen and (max-width: 960px) {
  #work {
    margin-top: -1px;
  }
  .work_area {
    display: block;
    width: 100%;
    padding-top: 15.385vw;
  }
  .work_content {
    width: 100%;
    position: relative;
    margin-right: 0;
  }
  .view_more2 {
  }
}
/* page01 environment */
#environment {
  background: #fff;
  margin-top: -1px;
}
.environment_area {
  width: 100%;
  height: auto;
  background: #191919 0% 0% no-repeat padding-box;
  border-radius: 80px;
}
h2.environment_h2 {
  text-align: left;
  font: normal normal bold 70px/70px Oswald;
  letter-spacing: 0px;
  color: #6f6f6f;
  text-transform: uppercase;
  margin: 0 0 4px 0;
}
h3.environment_h3 {
  text-align: left;
  font: normal normal 900 20px/30px Noto Sans JP;
  letter-spacing: 0px;
  color: #6f6f6f;
  text-transform: uppercase;
  margin: 0 0 60px 0;
}
h4.enviroment_h4 {
  text-align: left;
  font: normal normal bold 24px/41px Noto Sans JP;
  letter-spacing: 0px;
  color: #ffffff;
  margin: 0 0 60px 0;
}
p.enviroment_p {
  text-align: left;
  font: normal normal normal 16px/31px Noto Sans JP;
  letter-spacing: 0px;
  color: #ffffff;
  margin: 0;
}
.view_more3 {
  width: 290px;
  float: right;
  display: flex;
  justify-content: space-between;
}
.view_more3 a {
  width: 38px;
  height: auto;
  display: inline-block;
}
@media screen and (max-width: 960px) {
  .view_more3 {
    width: 280px;
  }
}
/* page01 crosstalk */
#crosstalk {
  padding-bottom: 100px;
  width: 88.194%;
  height: auto;
  float: right;
}
.crosstalk_area {
  display: flex;
}
.crosstalk_block {
  margin-top: 50px;
  text-align: left;
}
.crosstalk_block:nth-child(2n) {
  margin-right: 0;
}
a.cross_talklink {
  width: 100%;
  height: auto;
  display: inline-block;
  text-decoration: none;
  margin: 0 1%;
}
.crosstalk_img {
  width: 98%;
  height: auto;
  overflow: hidden;
}
.crosstalk_img a {
  width: 100%;
  height: auto;
  display: inline-block;
}
.crosstalk_img:hover img {
  transform: scale(1.1);
  transition: transform 0.8s ease;
}
.crosstalk_name_area {
  display: flex;
}
.crosstalk_name_wrapper {
  width: 50%;
}
p.crosstalk_post {
  font: normal normal normal 12px/15px Noto Sans JP;
  letter-spacing: 0px;
  color: #909090;
  margin: 16px 0 0 0;
}
p.crosstalk_name {
  font: normal normal normal 14px/18px Noto Sans JP;
  letter-spacing: 0px;
  color: #000000;
  margin: 4px 0 0 0;
}
a.crosstalk_content {
  font: normal normal bold 18px/32px Noto Sans JP;
  letter-spacing: 0px;
  color: #000000;
  margin: 16px 0 0 0;
  text-decoration: none;
}
a.crosstalk_content:hover {
  color: #0d6efd;
}
img.next-arrow,
img.prev-arrow {
  width: 38px;
  height: auto;
}
#crosstalk img.next-arrow {
  position: absolute;
  bottom: -64px;
  right: 11.79%;
}
#crosstalk img.prev-arrow {
  position: absolute;
  bottom: -64px;
  right: 16.79%;
}
.page01 #human img.next-arrow {
  position: absolute;
  top: 33%;
  right: -55%;
}
.page01 #human img.prev-arrow {
  position: absolute;
  top: 33%;
  left: -55%;
}
.page02 #human img.next-arrow {
  position: absolute;
  top: 45%;
  right: 0;
  width: 50px;
}
@media screen and (max-width: 960px) {
  #crosstalk,
  #crosstalk2 {
    width: 90.69%;
    float: none;
    margin: 0 4.65%;
  }
  .crosstalk_area {
    display: block;
    flex-wrap: none;
  }
  .crosstalk_block {
    width: 100%;
    margin: 56px 0 0 0;
  }
  .page01 #crosstalk img.next-arrow {
    right: 0;
  }
  .page02 #crosstalk2 img.next-arrow {
    position: absolute;
    top: 45%;
    right: 0;
    width: 50px;
  }

  img.human_sp1 {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
  }
}
/* page01 human */
#human {
  width: 100%;
  height: auto;
  margin-top: -1px;
}
.human_area {
  width: 81%;
  display: flex;
  justify-content: center;
  padding-top: 50px;
}
.employee_area {
  width: 22%;
  display: block;
  margin-right: 4.3333%;
  text-align: left;
}
.employee_area:last-child {
  margin-right: 0;
}
.employee_img {
  width: 100%;
  height: auto;
  overflow: hidden;
}
.employee_img:hover img {
  transform: scale(1.1);
  transition: transform 0.8s ease;
}
.employee_area img {
  width: 100%;
  height: auto;
}
p.employee_name {
  text-align: left;
  font: normal normal bold 18px/32px Noto Sans JP;
  letter-spacing: 0px;
  color: #000000;
  margin: 16px 0 0 0;
}
p.employee_roma {
  text-align: left;
  font: normal normal bold 12px/20px Oswald;
  letter-spacing: 0px;
  color: #cbcbcb;
  text-transform: uppercase;
  margin: 0;
}
a.employee_content {
  font: normal normal bold 18px/32px Noto Sans JP;
  letter-spacing: 0px;
  color: #000000;
  margin: 16px 0 0 0;
  text-decoration: none;
  display: inline-block;
}
a.employee_content:hover {
  color: #0d6efd;
}
.make_wrapper {
  display: flex;
  width: 100%;
  height: auto;
  justify-content: right;
}
.make_heading {
  width: 100%;
  padding: 150px 0 0 0;
}
.make_area {
  background-image: url("../img/make.png");
  background-repeat: no-repeat;
  background-position: 0 70px;
  background-size: auto 80%;
}
h2.make_h2 {
  text-align: left;
  font: normal normal bold 70px/70px Oswald;
  letter-spacing: 0px;
  color: #000000;
  text-transform: uppercase;
}
h3.make_h3 {
  text-align: left;
  font: normal normal 900 20px/30px Noto Sans JP;
  letter-spacing: 0px;
  color: #000000;
  text-transform: uppercase;
}
@media screen and (max-width: 960px) {
  #human {
    width: 100%;
    padding: 0 4.65%;
    margin: 0;
  }
  .human_area {
    width: 100%;
    display: block;
    padding-top: 0;
  }
  .employee_area {
    width: 57.143%;
    margin: 60px auto 0 auto;
  }
  .employee_area:last-child {
    margin-right: auto;
  }
  .human_slider_wrapper {
    display: flex;
    justify-content: center;
    padding-top: 57px;
  }
  .human_area1 {
    width: 46.51%;
    display: flex;
    text-align: left;
    padding-top: 0;
    padding: 0;
    margin: 0;
  }
  .human_area2 {
    display: flex;
    text-align: left;
    padding-top: 0;
    padding: 0;
    margin: 0;
  }
  a.employee_link {
    width: 100%;
    height: auto;
    display: inline-block;
  }
  a.employee_link img {
    width: 100%;
    height: auto;
  }
  .employee_area1 {
    width: 100%;
    height: auto;
    display: block;
    margin: 0 0.1%;
  }
  .employee_area:last-child {
    margin-right: 0;
  }
  .make_area {
    background-position: 0 70px;
    background-size: auto 36.744%;
  }
}
/* page01 recruit */
img.recruit {
  width: 100%;
  height: auto;
}

.recruit_btns {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 10%;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
a.recruit_btn {
  /* position: absolute;
  top: 43%;
  right: 10%;
  width: 16.66%;
  height: auto; */
  width: 240px;
  height: auto;
}
a.recruit_btn img,
a.recruit_btn2 img,
a.recruit_btn3 img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 960px) {
  .recruit_btns {
    right: auto;
    flex-direction: row;
    top: auto;
    bottom: 20%;
    justify-content: center;
  }

  a.recruit_btn {
    width: 40%;
  }
}
/* footer */
.mt-40 {
  margin-top: 40px;
}
#footer {
  position: relative;
  width: 100%;
  height: auto;
  z-index: 2;
  background: #191919;
  padding: 8.333vw 10%;
}
.footer_wrapper {
  width: 100%;
  display: flex;
  justify-content: center;
}
.footer a {
  text-align: left;
  font: normal normal normal 14px/28px Noto Sans JP;
  letter-spacing: 0px;
  color: #a3a3a3;
  text-decoration: none;
}
.footer p,
a.footer_title {
  text-align: left;
  font: normal normal bold 16px/28px Noto Sans JP;
  letter-spacing: 0px;
  color: #ffffff;
  margin: 0;
}
.footer_logo_area {
  width: 25%;
  height: auto;
  margin-right: 19.16666%;
}
.privacy_area {
  width: 100%;
  display: block;
  padding-top: 32px;
}
.privacy_area a.bestventure {
  width: 70%;
  height: auto;
  display: inline-block;
  padding-top: 4px;
}
.privacy_area a.bestventure img {
  width: 100%;
}
.privacy_area a {
  display: inline-block;
  width: 100%;
  margin: 0 0 8px 0;
}
.footer_logo_area img {
  width: 100%;
  height: auto;
}
.footer_content_area {
  width: 30%;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  margin-right: 6.25%;
}
.footer_content_area ul {
  margin: 8px 0 0 0;
}
.footer_content_block {
  width: 47%;
  margin-right: 6%;
}
.footer_content_block:nth-child(2n) {
  margin-right: 0;
}
.footer_entry_area {
  width: 18.75%;
  height: auto;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.footer_entry_area img.footer_entry {
  width: 100%;
  height: auto;
  margin-bottom: 32px;
}
.footer_entry_area .footer_group {
  width: 100%;
}
.footer_entry_area .footer_group a.group1 {
  display: block;
  width: 44.44444%;
  height: auto;
  margin: 12px 0 10px 0;
}
.footer_entry_area .footer_group a.group2 {
  display: block;
  width: 74.44444%;
  height: auto;
  margin-bottom: 10px;
}
.footer_entry_area .footer_group a.group3 {
  display: block;
  width: 45%;
  height: auto;
}
.footer_group img {
  width: 100%;
  height: auto;
}
.cta {
  display: none;
}
@media screen and (max-width: 960px) {
  #footer {
    padding: 10.256vw 5.12% 23.077vw 5.12%;
  }
  .privacy_area a {
    margin: 0;
  }
  .privacy_area a.bestventure {
    width: 45%;
  }
  .footer_wrapper {
    display: block;
  }
  .footer_logo_area {
    width: 100%;
    height: auto;
    margin-right: 0;
  }
  .footer_logo_area img {
    width: 68.57%;
    height: auto;
  }
  .footer_content_area {
    width: 100%;
    height: auto;
    display: block;
    flex-wrap: none;
  }
  .footer_content_block {
    width: 100%;
    margin-right: 0;
    margin-top: 40px;
  }
  .footer_entry_area {
    width: 50%;
    height: auto;
    margin-top: 24px;
  }
  .footer_entry_area img.footer_entry {
    width: 51.428%;
    height: auto;
    margin: 32px 0;
    display: block;
  }
  .footer_entry_area .footer_group a.group1 {
    width: 22.85%;
  }
  .footer_entry_area .footer_group a.group2 {
    width: 38.28%;
  }
  .footer_entry_area .footer_group a.group3 {
    width: 23.35%;
  }
  .cta {
    display: block;
    width: 100%;
    position: fixed;
    left: 2.565%;
    bottom: 0;
    z-index: 3;
  }
  .cta a {
    cursor: pointer;
    width: 94.87%;
    height: auto;
    display: block;
  }
  .cta a img {
    width: 100%;
    height: auto;
  }
}

/* page02 know */
.page02 .human_area {
  width: 100%;
}
.crosstalk_area1 {
  display: flex;
  flex-wrap: wrap;
}
.crosstalk_block1 {
  width: 47.3%;
  height: auto;
  margin-right: 5.26%;
  margin-top: 50px;
}
.crosstalk_block1:nth-child(2n) {
  margin-right: 0;
}
.mb-120 {
  margin-bottom: 120px;
}
/* page02 entry */
.statue_area {
  display: flex;
}
.statue_area img {
  width: 31.25%;
  height: auto;
  margin-right: 3.125%;
}
.statue_area img:last-child {
  margin-right: 0;
}
.flow_heading {
  width: 100%;
  padding-top: 6.667vw;
  padding-bottom: 10vw;
  padding-left: 10%;
  padding-right: 10%;
}
a.recruit_btn2 {
  position: absolute;
  top: 24%;
  right: 10%;
  width: 20%;
  height: auto;
}
a.recruit_btn3 {
  position: absolute;
  top: 54%;
  right: 10%;
  width: 20%;
  height: auto;
}
a.recruit_btn4 {
  position: absolute;
  top: 21%;
  left: 17%;
  width: 20%;
  height: auto;
}
a.recruit_btn5 {
  position: absolute;
  top: 21%;
  left: 39%;
  width: 20%;
  height: auto;
}
.recruit_btn4 img,
.recruit_btn5 img {
  width: 100%;
  height: auto;
}
.block2 {
  background: #f2f2f2 0% 0% no-repeat padding-box;
  width: 100%;
  height: 200px;
  text-align: center;
  font: normal normal bold 40px/200px Noto Sans JP;
  letter-spacing: 0px;
  color: #000000;
  margin-top: 120px;
}
.flow_area {
  position: relative;
  width: 100%;
  height: auto;
}
.flow img {
  width: 100%;
  height: auto;
}
.unofficial_offer {
  background: #fafafa 0% 0% no-repeat padding-box;
  border: 1px solid #003c8c;
  width: 100%;
  height: auto;
  padding: 2.667vw 10vw;
}
p.unofficial_offer_title {
  text-align: center;
  font: normal normal bold 32px/30px Oswald;
  letter-spacing: 0px;
  color: #003c8c;
}
p.unofficial_offer_content {
  text-align: center;
  font: normal normal normal 16px/28px Noto Sans JP;
  letter-spacing: 0px;
  color: #000000;
}
p.unofficial_offer_greeting {
  text-align: center;
  font: normal normal bold 16px/28px Noto Sans JP;
  letter-spacing: 0px;
  color: #000000;
}
@media screen and (max-width: 960px) {
  .flow_heading {
    padding: 25.641vw 5.333%;
  }
  .statue_area {
    display: block;
  }
  .statue_area img {
    width: 100%;
    height: auto;
    margin-bottom: 30px;
    margin-right: 0;
  }
  a.recruit_btn2 {
    position: absolute;
    top: 46%;
    right: 15.715%;
    width: 68.57%;
    height: auto;
  }
  a.recruit_btn3 {
    position: absolute;
    top: 69%;
    right: 15.715%;
    width: 68.57%;
    height: auto;
  }
  a.recruit_btn4 {
    top: 21%;
    left: 19%;
    width: 68.57%;
    height: auto;
  }
  a.recruit_btn5 {
    top: 34%;
    left: 19%;
    width: 68.57%;
    height: auto;
  }
  p.unofficial_offer_content,
  p.unofficial_offer_greeting {
    text-align: left;
  }
  .mb-120 {
    margin-bottom: 80px;
  }
  .unofficial_offer {
    padding: 10.256vw;
  }
}
/* page02 entry */
#kv img {
  width: 100%;
  height: auto;
}
.picture_block {
  margin-top: 80px;
}
.picture_block img {
  width: 100%;
  height: auto;
}
.content2 p {
  text-align: left;
}
@media screen and (max-width: 960px) {
}
/* page02 others */
.others_bg {
  background: #f2f2f2;
  width: 100%;
  height: auto;
  position: relative;
}
.others_title,
.others_title2 {
  width: 18%;
  position: absolute;
  left: 41%;
}
.others_title {
  top: -12%;
}
.others_title2 {
  top: -7%;
}
.others_title img,
.others_title2 img {
  width: 100%;
  height: auto;
}
.other_member_area {
  width: 41.666%;
  display: block;
  padding-top: 8.333vw;
  text-align: center;
}
.other_member {
  display: flex;
}
.other_member img {
  width: 100%;
  height: auto;
  display: block;
}
.other_member a {
  width: 48%;
  height: auto;
  margin-right: 4%;
  display: inline-block;
}
.other_member a:last-child {
  margin-right: 0;
}
a.view_more5 {
  margin-top: 3.333vw;
  margin-bottom: 6.667vw;
  width: 38%;
  height: auto;
  display: inline-block;
}
.view_more5 img {
  width: 100%;
  height: auto;
  display: block;
}
@media screen and (max-width: 960px) {
  .others_title,
  .others_title2 {
    width: 55.38%;
    left: 22.31%;
  }
  .others_title {
    top: -9%;
  }
  .others_title2 {
    top: -7%;
  }
  .other_member {
    display: block;
  }
  .other_member_area {
    width: 61.53%;
    padding-top: 25.641vw;
  }
  .other_member a {
    width: 100%;
    margin: 0 0 20px 0;
  }
  a.view_more5 {
    width: 100%;
    margin-bottom: 20.513vw;
  }
}
/* page02 crosstalk */
#crosstalk2 {
  margin-bottom: 120px;
}
.crosstalk_heading {
  padding-top: 100px;
  width: 100%;
  height: auto;
}
.specifically p.cross_name,
.crosstalk2_block p.cross_name {
  text-align: left !important;
  font: normal normal bold 20px/36px Noto Sans JP !important;
  letter-spacing: 0px !important;
  color: #000000 !important;
  margin: 40px 0 16px 0 !important;
}
.specifically p.cross_name:first-child {
  margin: 0 0 16px 0;
}
.pr-10 {
  padding-right: 10%;
}
.pl-10 {
  padding-left: 10%;
}
.mr-20 {
  margin-right: 20px;
}
.crosstalk2_area {
  width: 100%;
  height: auto;
  display: flex;
  padding-bottom: 120px;
}
.crosstalk2_block {
  width: 45.83%;
  height: auto;
  margin-right: 8.33%;
}
.crosstalk2_block:last-child {
  margin-right: 0;
}
.other_member_area2 {
  display: block;
  padding: 8.333vw 10%;
}
.other_member_area_wrapper {
  display: flex;
}
@media screen and (max-width: 960px) {
  .other_member_area_wrapper {
    display: block;
  }
  .crosstalk_heading {
    padding: 0 5.128%;
  }
  .pr-10 {
    padding-right: 0;
  }
  .pl-10 {
    padding-left: 0;
  }
  .mr-20 {
    margin-right: 0;
  }
  .crosstalk2_area {
    display: block;
  }
  .other_member_area2 {
    padding: 25.641vw 5.128% 0 5.128%;
  }
  .crosstalk2_block {
    width: 100%;
  }
}

/* page02 ENVIRONMENT */
.page02 #top,
.page02 #top2,
.page02 #top3 {
  position: relative;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 43.056vw;
}
.page02 #top {
  background-image: url(../img/kv_enviroment.png);
}
.page02 #top2 {
  background-image: url(../img/kv_entry.png);
}
.page02 #top3 {
  background-image: url(../img/kv_job.png);
}
.kv_area {
  width: 100%;
  height: 43.056vw;
  opacity: 1;
  backdrop-filter: blur(30px);
  -webkit-backdrop-filter: blur(30px);
}
img.kv_mini {
  position: absolute;
  width: 57.77%;
  height: auto;
  bottom: 0;
  left: 0;
}
.page02 #top h1,
.page02 #top2 h1,
.page02 #top3 h1 {
  position: absolute;
  font: normal normal bold 70px/70px Oswald;
  letter-spacing: 0px;
  color: #ffffff;
  margin: 0;
  top: 11.875vw;
  left: 8.33%;
}
.page02 #top h1,
.page02 #top3 h1 {
  top: 11.875vw;
  left: 8.33%;
}
.page02 #top2 h1 {
  top: 15.875vw;
  left: 8.33%;
}
.page02 #top h2,
.page02 #top2 h2,
.page02 #top3 h2 {
  position: absolute;
  font: normal normal 900 20px/30px Noto Sans JP;
  letter-spacing: 0px;
  color: #ffffff;
  margin: 0;
  top: 24.236vw;
  left: 8.33%;
}
.page02 #top p,
.page02 #top2 p,
.page02 #top3 p {
  position: absolute;
  width: 27%;
  font: normal normal bold 16px/34px Noto Sans JP;
  letter-spacing: 0px;
  color: #ffffff;
  margin: 0;
  bottom: 4.375vw;
  right: 11.79%;
}
.point_block {
  width: 100%;
  background: transparent linear-gradient(277deg, #003c8c 0%, #5abee6 100%) 0%
    0% no-repeat padding-box;
  box-shadow: 0px 0px 10px #00000033;
  border-radius: 25px;
  padding: 32px 0;
  display: flex;
  align-items: center;
  margin-bottom: 30px;
}
.point_block._last {
  margin-bottom: 0;
}
.ml-3 {
  margin-left: 3px;
}
.point_section1 {
  width: 16%;
  height: auto;
  margin-left: 7.27%;
}
.point_section1 h2 {
  text-align: left;
  font: normal normal bold 31px/31px Oswald;
  letter-spacing: 0px;
  color: #ffffff;
  opacity: 0.53;
  margin: 0;
  display: block;
}
.point_section1 h2 span {
  text-align: left;
  font: normal normal bold 86px/86px Oswald;
  letter-spacing: 0px;
  color: #ffffff;
  opacity: 0.53;
  margin: 0;
  display: block;
}
.point_section1 h2 span.letter_space {
  letter-spacing: -4px;
}
.point_section2 {
  width: 20.18%;
  height: auto;
}
.point_section2 h3 {
  text-align: left;
  font: normal normal bold 30px/47px Noto Sans JP;
  letter-spacing: 0px;
  color: #ffffff;
  margin: 0;
}
.point_section3 {
  width: 43.09%;
  height: auto;
  padding-right: 5.9%;
}
.point_section3 p {
  text-align: left;
  font: normal normal normal 16px/30px Noto Sans JP;
  letter-spacing: 0px;
  color: #ffffff;
  margin: 0;
}
.point_section4 {
  width: 10.27%;
  height: auto;
}
#welfare {
  margin-bottom: 120px;
}
.block3 {
  padding-top: 120px;
}
.block3 img,
.image_wrapper img,
img.section {
  width: 100%;
  height: auto;
}
h2.h2_enviroment {
  text-align: left;
  font: normal normal bold 40px/60px Noto Sans JP;
  letter-spacing: 0px;
  color: #000000;
  margin: 0 0 32px 0;
}
p.enviroment_text {
  text-align: left;
  font: normal normal normal 16px/28px Noto Sans JP;
  letter-spacing: 0px;
  color: #000000;
  margin: 0 0 60px 0;
}
#open_modal:hover,
#open_modal2:hover,
#open_modal3:hover {
  opacity: 0.8;
}
#modal_area,
#modal_area2,
#modal_area3 {
  z-index: 1000;
}
.modal_area {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.modal_bg {
  width: 100%;
  height: 100%;
  background-color: rgba(100, 100, 100, 0.9);
}
.modal_wrapper,
.modal_wrapper2 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: auto;
  /* background:; */
}
.modal_wrapper,
.modal_wrapper2 {
  width: 72%;
}
.modal_img {
  position: relative;
}
.close_modal,
.close_modal2 {
  position: absolute;
  top: 7%;
  right: 4%;
  width: 55px;
  height: 55px;
  cursor: pointer;
  text-align: center;
  background: transparent linear-gradient(180deg, #5abee6 0%, #003c8c 100%) 0%
    0% no-repeat padding-box;
  border-radius: 45px;
  color: #fff;
  font-size: 40px;
  margin: 0;
  line-height: 46px;
}
.careerstep_area {
  display: flex;
}
.careerstep_area img,
.open_modal {
  width: 100%;
  height: auto;
}
.open_modal img {
  width: 100%;
  height: auto;
}
.careerstep_area img:last-child {
  margin-right: 0;
}
.modal_img img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 1134px) {
  .middle {
    display: none;
  }
}
@media screen and (max-width: 960px) {
  .kv_area,
  .page02 #top,
  .page02 #top2,
  .page02 #top3 {
    height: 151.86vw;
  }
  img.kv_mini {
    width: 100%;
  }
  .page02 #top h1,
  .page02 #top2 h1,
  .page02 #top3 h1 {
    font: normal normal bold 44px/50px Oswald;
    top: 145px;
    left: 4.65%;
  }
  .page02 #top h2,
  .page02 #top2 h2,
  .page02 #top3 h2 {
    font: normal normal 900 16px/24px Noto Sans JP;
    top: 283px;
    left: 4.65%;
  }
  .page02 #top p,
  .page02 #top2 p,
  .page02 #top3 p {
    width: 90.69%;
    font: normal normal bold 16px/16px Noto Sans JP;
    top: 356px;
    /* right: none; */
    left: 4.65%;
  }
  h2.h2_enviroment {
    font: normal normal bold 24px/36px Noto Sans JP;
  }
  .block3 {
    padding-top: 80px;
  }
  .careerstep_area {
    display: block;
  }
  .careerstep_area img,
  .open_modal {
    width: 100%;
  }
  .tab_label {
    width: 50%;
  }
  .point_block {
    display: block;
  }
  .point_sp {
    display: flex;
    margin-bottom: 16px;
  }
  .point_section1 {
    width: 30.07%;
    margin-left: 7.43%;
  }
  .point_section1 h2 {
    font: normal normal bold 23px/23px Oswald;
  }
  .point_section1 h2 span {
    font: normal normal bold 65px/65px Oswald;
  }
  .point_section2 {
    width: 63.07%;
  }
  .point_section2 h3 {
    font: normal normal bold 24px/88px Noto Sans JP;
  }
  .point_section3 {
    width: 100%;
    padding: 0 7.43%;
    margin-bottom: 16px;
  }
  .point_section4 {
    width: 100%;
    padding: 0 7.43%;
    display: inline-block;
  }
  .modal_wrapper {
    width: 42%;
  }
  .modal_wrapper2 {
    width: 91%;
  }
  .open_modal img {
    width: 28.97%;
    float: right;
  }
  .close_modal,
  .close_modal2 {
    top: 5%;
    right: 9%;
    width: 36px;
    height: 36px;
    font-size: 32px;
    line-height: 29px;
  }
  .close_modal {
    top: 5%;
    right: 9%;
  }
  .close_modal2 {
    top: 5%;
    right: 4%;
  }
}
@media screen and (max-width: 510px) {
  .modal_wrapper {
    width: 80%;
  }
}
/* page02 interview */
.page02 .environment_heading {
  padding-top: 120px;
  padding-right: 10%;
}
.page02 .content {
  width: 100%;
  display: flex;
  padding-bottom: 120px;
  padding-top: 80px;
}
.page02 .specifically h4,
.page02 .specifically2 h4 {
  text-align: left;
  font: normal normal bold 24px/36px Noto Sans JP;
  letter-spacing: 0px;
  color: #000000;
  margin: 40px 0 32px 0;
}
.page02 .specifically h2,
.page02 .specifically2 h2 {
  text-align: left;
  font: normal normal bold 24px/36px Noto Sans JP;
  letter-spacing: 0px;
  color: #000000;
  margin: 0 0 24px 0;
}
.page02 .content .contentimg {
  width: 55.55555%;
  height: auto;
}
.page02 .content .contentimg img {
  width: 100%;
  height: auto;
}
.page02 .content .specifically {
  width: 47%;
  height: auto;
  margin-left: 4.392vw;
}
.page02 .content .specifically2 {
  width: 47%;
  height: auto;
  margin-right: 4.392vw;
}
.page02 .content .specifically p,
.crosstalk2_block p,
.page02 .content .specifically2 p {
  text-align: left;
  font: normal normal normal 16px/28px Noto Sans JP;
  letter-spacing: 0px;
  color: #000000;
  margin: 0;
}
.page02 .swap .contentimg {
  order: 2;
}
.page02 .swap .specifically {
  order: 1;
  margin-right: 4.392vw;
  margin-left: 0;
}
.page02 a.view_more4 {
  padding-top: 40px;
  width: 50%;
  height: auto;
  display: inline-block;
}
.page02 .view_more4 img {
  width: 100%;
  height: auto;
  display: block;
}
@media screen and (max-width: 960px) {
  .page02 .environment_heading {
    padding-right: 0;
  }
  .page02 .content {
    display: block;
    padding-bottom: 0px;
    padding-top: 40px;
  }
  .page02 .content .contentimg {
    width: 100%;
    height: auto;
    padding-bottom: 120px;
  }
  .page02 .content .specifically,
  .page02 .content .specifically2 {
    width: 100%;
    height: auto;
    text-align: left;
    padding: 0;
    margin-left: 0;
    margin-right: 0;
    display: block;
  }
  .page02 .specifically h4 {
    margin: 32px 0;
  }
  .page02 a.view_more4 {
    padding-top: 32px 0 40px 0;
    width: 68.57%;
    height: auto;
  }
  .page02 .content .specifically p,
  .crosstalk2_block p,
  .page02 .content .specifically2 p {
    margin: 0 0 40px 0;
  }
}
