@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Josefin+Sans:ital,wght@0,100..700;1,100..700&family=Noto+Sans+JP:wght@100..900&display=swap");

/* 全画面表示用のスタイル */
#fullscreen-video {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 9999;
  background-color: black;
}

#fullscreen-video video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

/* テキストフェードイン用のクラス */
.fade-in-text5 {
  opacity: 0;
  /* 初期状態では透明 */
  animation: fadeIn 5s cubic-bezier(0.42, 0, 0.58, 1) forwards;
  /* アニメーションの設定 */
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }

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

.typewriter-img {
  position: absolute;
  top: -10px;
  left: 0;
  display: block;
  width: 100%;
  max-width: 100vw;
  opacity: 0;
  transform: translateY(20px);
  animation: typewriter 1.5s ease-out forwards;
  /* アニメーションの定義 */
}

@keyframes typewriter {
  from {
    opacity: 0;
    transform: translateY(20px);
  }

  to {
    opacity: 0.8;
    transform: translateY(0);
  }
}

@media (max-width: 780px) {
  .typewriter-img {
    top: 55px;
  }
}

/*==================================================
文字のフェードイン
===================================*/
.fade-in-txt {
  opacity: 0;
  transform: translateY(20px);
}

.fade-in-txt.show {
  animation: fadeInTxtTypewriter 5s ease forwards;
}

/* アニメーションの定義 */
@keyframes fadeInTxtTypewriter {
  from {
    opacity: 0;
    transform: translateY(20px);
  }

  to {
    opacity: 0.8;
    transform: translateY(0);
  }
}



/*==================================================
Top パララックス css
===================================*/
#parala {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
  margin: 0 auto;
}

#parala .top_area {
  position: fixed;
  width: 100vw;
  height: 1400px;
  top: 0;
  left: 200px;
  overflow: hidden;
  z-index: -100;
}

#parala .top_area .top_area_img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  transition: opacity 5s ease-in-out;
  opacity: 0;
}

#parala .top_area .wrap {
  position: relative;
  margin-top: 10px;
  padding: 20px;
  box-sizing: border-box;
  color: black;
  z-index: 2;
}

#parala .top_area .wrap p {
  font-size: 2rem;
  line-height: 3em;
}

#parala .top_title {
  width: 60%;
  height: auto;
  max-height: 830px;
  margin: 0 auto;
  /*margin-top: 200px; 20250908*/
  margin-top: 50px;
  margin-left: 50px;
  overflow: hidden;
  text-align: center;
}

#parala .top_title img {
  opacity: 0;
  animation: fadeIn 5s ease-in-out forwards;
  max-width: 70vw;
  height: 100%;
  max-height: 830px;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }

  50% {
    opacity: 0.9;
  }

  100% {
    opacity: 1;
  }
}

.top_area_img {
  width: 100%;
  height: 180vh;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

@media (max-height: 1040px) {
  #parala .top_title {
    width: 60%;
    margin-top: 10vh;
    /*background-color: blueviolet;*/
  }
}

@media (max-width: 780px) {
  #parala .top_area {
    /*margin-top: 60px;*/
    left: 0;
  }

  #parala .top_title {
    width: 100%;
    margin-top: 15vh;
    margin-left: 0;
    /*background-color: violet;*/
  }

  #parala .top_title img {
    max-width: 90vw;
    height: 100%;
  }

  #parala .top_area {
    height: 170vh;
  }
}

/*==================================================
Top スライダーcss
===================================*/
.slider img {
  width: 100%;
  height: auto;
}

.slider .slick-slide {
  margin: 0 10px;
}

*,
*:before,
*:after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html,
body {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 62.5%;
  color: #000;
  margin-top: 0 !important;
}

p {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 3rem;
}

a {
  color: #0a5d8c;
  text-decoration: none;
}

a:hover {
  color: #00a6e3;
  transition: 0.3s;
}

ul {
  list-style: none;
  list-style-position: inside;
}

.pb40 {
  padding-bottom: 40px;
}

.pb120 {
  padding-bottom: 120px;
}

.mt10 {
  margin-top: 10px;
}

.mt20 {
  margin-top: 20px;
}

.mt30 {
  margin-top: 30px;
}

.mt40 {
  margin-top: 40px;
}

.mt60 {
  margin-top: 60px;
}

.mt80 {
  margin-top: 80px;
}

.mt100 {
  margin-top: 100px;
}

.mb10 {
  margin-bottom: 10px;
}

.mb12 {
  margin-bottom: 12px;
}

.mb20 {
  margin-bottom: 20px;
}

.mb30 {
  margin-bottom: 30px;
}

.mb40 {
  margin-bottom: 40px;
}

.mb60 {
  margin-bottom: 60px;
}

.mb100 {
  margin-bottom: 100px;
}

.mb150 {
  margin-bottom: 150px;
}

.br400u {
  display: none;
}

@media (max-width: 480px) {
  p {
    font-size: 1.4rem;
  }

  .br400u {
    display: block;
  }
}

/*　//////////////////////////////////////////////////
　sideber
//////////////////////////////////////////////////　*/
body {
  position: relative;
  display: flex;
  margin: 0;
}

.sidebar {
  width: 200px;
  height: 100vh;
  position: sticky;
  top: 0;
  background-color: #f4f4f4;
  box-sizing: border-box;
  z-index: 100;
}

.content {
  flex-grow: 1;
  /* Example height to make page scrollable */
  box-sizing: border-box;
  overflow-x: hidden;
}

/* サイドバーのスタイリング（PC表示時） */
.sidebar {
  padding: 50px 20px 20px 20px;
  background-color: #fff;
}

.sidebar h2 {
  padding: 0 20px;
  color: #00A4E1;
}

.sidebar .header_title {
  font-family: "Josefin Sans", sans-serif;
  text-align: center;
  font-size: 14px;
}

.sidebar h3 {
  width: 160px;
}

.sidebar h3,
.hum_menu_in h3 {
  position: relative;
  font-size: 16px;
  margin: 25px 0 15px 0;
}

.sidebar h3::before,
.hum_menu_in h3::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  background-image: url("../images/dot_icon.svg");
  background-repeat: no-repeat;
  background-size: contain;
  margin-right: 8px;
  vertical-align: middle;
}

.sidebar h3 a,
.hum_menu_in h3 a,
.sidebar h3 span,
.hum_menu_in h3 span {
  text-decoration: none;
  color: #00A4E1;
}

.sidebar ul,
.hum_menu_in ul {
  list-style: none;
  padding: 0;
  margin: 0 0 0 20px;
  line-height: 2rem;
}

.sidebar ul li,
.hum_menu_in ul li {
  position: relative;
  margin-bottom: 5px;
  font-size: 13px;
}


.sidebar ul li::before,
.hum_menu_in ul li::before {
  position: absolute;
  top: 50%;
  left: -15px;
  content: "";
  width: 8px;
  height: 1px;
  background-color: #000;
}

.sidebar ul li a,
.hum_menu_in ul li a {
  color: #000;
  font-weight: 600;
}

.sidebar ul li a {
  white-space: nowrap;
}

.sidebar ul li a:hover,
.hum_menu_in ul li a:hover {
  text-decoration: underline;
  text-decoration-thickness: 0.5em;
  text-decoration-color: #00A4E1;
  text-underline-offset: -0.2em;
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
}

.entry_btn {
  display: block;
  width: 100%;
  background-color: #fff;
  border: solid 3px #3dc2ea;
  border-radius: 9999px;
  cursor: pointer;
}

.entry_btn_2 {
  background-color: #00A4E1;
  border: solid 3px #3dc2ea;
}

.entry_btn a {
  display: block;
  margin: 12px 5px 12px 5px;
  /* font-family: "Josefin Sans", sans-serif; */
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.3rem;
  font-weight: 500;
  color: #3dc2ea;
  text-align: center;
  white-space: nowrap;
}

.entry_btn_2 a {
  color: #fff;
}

.entry_btn:hover {
  background-color: #00A4E1;
  transition: .3s;
}

.entry_btn_2:hover {
  background-color: #fff;
}

.entry_btn:hover a {
  color: #fff;
  transition: .3s;
}

.entry_btn_2:hover a {
  color: #3dc2ea;
}

@media (max-width: 780px) {
  .sidebar {
    display: none;
  }
}

/*　//////////////////////////////////////////////////
  　hamburger menu
  //////////////////////////////////////////////////　*/
.header_hum_menu {
  display: none;
}

.header_title_sp .header_logo {
  width: 80%;
  margin-top: 10px;
  margin-bottom: 5px;
}

.header_logo a {
  display: inline-block;
  height: 100%;
  width: 100%;
}

.header_title_sp .header_logo img {
  width: 100%;
}

.header_title_sp .header_title {
  font-family: "Josefin Sans", sans-serif;
  font-size: 1.4rem;
  font-weight: 500;
}

.hum_menu_btn {
  font-family: "Josefin Sans", sans-serif;
  margin-top: 8px;
  padding: 12px 50px 8px 50px;
  font-size: 1.6rem;
  font-weight: 500;
  text-align: center;
  color: #3dc2ea;
  background-color: #fff;
  border: solid 3px #3dc2ea;
  border-radius: 9999px;
}

.hum_menu_btn:hover {
  color: #fff;
  background-color: #00A4E1;
  transition: 0.3s;
}

.hum_menu {
  position: relative;
}

.hum_menu_in {
  position: absolute;
  display: none;
  width: 100vw;
  height: 100vh;
  top: 50px;
  right: -20px;
  background-color: #fff;
  white-space: nowrap;
  z-index: 11;
  overflow-y: auto;
  overflow-x: hidden;
}

.hum_menu_in .hum_menu_list {
  width: 100%;
  /* margin: 20px 40px; */
  margin: 60px;
  margin-bottom: 140px;
}

.hum_menu_in .entry_btn {
  max-width: 280px;
}

@media (max-width: 780px) {
  .header_hum_menu {
    padding: 0 20px;
    display: flex;
    justify-content: space-between;
    position: fixed;
    height: 60px;
    width: 100%;
    background-color: #fff;
    z-index: 100;
  }
}

/*　//////////////////////////////////////////////////
　main
//////////////////////////////////////////////////　*/
.top_back_title {
  position: absolute;
  width: 100%;
  top: -10px;
  left: 0;
  z-index: 1;
  /* コンテンツより前に配置 */
}

.top_move {
  max-width: 250px;
  width: 18vw;
  position: absolute;
  bottom: 5%;
  left: 5%;
  text-align: center;
}

.top_move_circle {
  height: auto;
  width: 100%;
  animation: rotate 15s linear infinite;
}

.top_move_arrow {
  height: auto;
  width: 2vw;
  position: absolute;
  top: 51%;
  left: 51%;
  transform: translate(-50%, -50%);
}

.top_move button {
  display: block;
  width: fit-content;
  height: 100%;
  border: 0;
  background-color: rgba(255, 255, 255, 0);
}

.top_move button:hover .top_move_circle {
  animation: zoomIn 0.8s cubic-bezier(0.25, 1, 0.5, 1) forwards;
  -moz-animation: zoomIn 0.8s cubic-bezier(0.25, 1, 0.5, 1) forwards;
  transition: .3s;
}

.top_move_txt {
  margin-top: 10px;
  white-space: nowrap;
  text-align: center;
}

.top_move .top_move_txt a {
  display: inline-block;
  width: 100%;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 400;
  text-decoration: underline;
}

.top_move .top_move_txt a:hover {
  color: #00a6e3;
}

/* クラスが追加された時の指定 */

.modal.top_modal::before {
  display: none;
}

.top_move .modal-close {
  top: 15vh;
  right: 0;
}

/* モーダル内側の指定 */
.modal-container {
  position: relative;
  width: 100%;
  height: 100%;
}

.modal-video {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 1200px;
  width: 100%;
  height: auto;
}

.modal-video video {
  width: 100%;
  height: auto;
}

@keyframes rotate {
  0% {
    transform: rotate(0);
  }

  100% {
    transform: rotate(360deg);
  }
}

@keyframes zoomIn {
  0% {
    transform: scale(1);
    opacity: 1;
  }

  100% {
    opacity: 1;
    transform: scale(1.1);
  }
}

@media (max-width: 980px) {
  .top_move {
    bottom: 160px !important;
  }

  .top_move_txt {
    font-size: 1.4rem;
  }
}

@media (max-width: 780px) {
  .top_move {
    width: 25vw;
    bottom: 200px !important;
  }

  .top_move_txt {
    margin-top: 50px;
  }
}

@media (max-width: 540px) {
  .top_move {
    width: 30vw;
    bottom: 210px !important;
  }

  .top_move_txt {
    margin-top: 70px;
  }

  .top_move_arrow {
    width: 4vw;
  }
}

@media (max-width: 530px) {
  .top_move {
    bottom: 240px !important;
  }

  .top_move_txt {
    margin-top: 70px;
  }
}

@media (max-width: 460px) {
  .top_move_txt {
    margin-top: 60px;
    line-height: 2rem;
  }
}

/* SCROLL DOWN */
.top_scroll_down {
  position: absolute;
  bottom: 250px;
  right: 40px;
  font-family: "Josefin Sans", sans-serif;
  font-style: italic;
  font-size: 1.6rem;
  font-weight: 300;
  transform: rotate(90deg);
}

.top_scroll_down a {
  color: #fff;
}

.top_scroll_down a .arrow_right {
  position: absolute;
  top: -10px;
  right: -45px;
}

.top_scroll_down a .arrow_right {
  position: absolute;
  top: -10px;
  right: -45px;
}

.top_scroll_down a:hover .arrow_right {
  background: #000;
  transform: scale(1.2);
  transition: 0.3s;
}

.top_scroll_down a:hover .arrow_right::before {
  background: #fff;
  width: 10px;
  height: 1px;
  transition: 0;
}

.top_scroll_down a:hover .arrow_right::after {
  border: 1px solid #fff;
  border-left: 0;
  border-bottom: 0;
  width: 8px;
  height: 8px;
  transition: 0;
}

@media (max-width: 780px) {
  .top_scroll_down {
    right: 10px;
  }
}

@media (max-width: 540px) {
  .top_scroll_down {
    right: 0px;
    bottom: 280px;
  }
}

/* TOPICS */
.top_topics_area {
  position: absolute;
  padding: 40px;
  width: 50%;
  display: flex;
  bottom: 0;
  right: 0;
  background-color: #fff;
  border-radius: 20px 0 0 0;
}

.top_topics_area li {
  width: 100%;
  display: flex;
  overflow: hidden;
}

.top_topics_area li p {
  width: calc(50vw - 350px);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.top_topics_in {
  display: flex;
}

.top_comment_area {
  position: absolute;
  top: -16px;
  right: 150px;
}

.top_comment {
  position: relative;
  width: 150px;
  margin: 0 auto;
  text-align: center;
  background-color: #000;
  border-radius: 999px;
}

.top_comment::before {
  content: "";
  position: absolute;
  bottom: -11px;
  left: 45%;
  display: block;
  border-style: solid;
  border-color: transparent #000 #000 transparent;
  border-width: 11px;
  border-radius: 0 0 10px 0;
  transform: scaleX(0.5) rotate(45deg);
}

.top_comment a {
  display: block;
  padding: 5px 20px;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 2.8rem;
  text-decoration: underline;
}

.top_comment:hover {
  background-color: #3dc2ea;
  transition: 0.3s;
}

.top_comment:hover::before {
  border-color: transparent #3dc2ea #3dc2ea transparent;
  transition: 0.3s;
}

.top_topics li span {
  margin-right: 10px;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 3rem;
}

.top_topics li .topics_label {
  width: fit-content;
  font-family: "Josefin Sans", sans-serif;
  padding: 8px 20px 5px 20px;
  margin-right: 10px;
  font-size: 1.4rem;
  font-weight: 500;
  color: #fff;
  background-color: #00a6e3;
  border-radius: 9999px;
  line-height: 1.4rem;
}

.top_topics li br {
  display: none;
}

.top_topics li a {
  margin-right: 60px;
  font-size: 1.4rem;
  font-weight: 500;
  color: #000;
  line-height: 1.8;
}

.top_topics li a:hover {
  color: #3dc2ea;
}

.arrow_right {
  position: absolute;
  top: 34%;
  right: 40px;
  display: inline-block;
  place-content: center;
  vertical-align: middle;
  text-align: center;
  background: #00a6e3;
  width: 34px;
  height: 34px;
  border-radius: 100vmax;
}

.arrow_right::before,
.arrow_right::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

.arrow_right::before {
  background: #ffffff;
  width: 12px;
  height: 1px;
}

.arrow_right::after {
  width: 9px;
  height: 9px;
  border: 1px solid #ffffff;
  border-left: 0;
  border-bottom: 0;
  transform: rotate(45deg);
  transform-origin: center;
}

.top_topics li a:hover .arrow_right,
.top_business_content a:hover .arrow_right {
  background: #000;
  transform: scale(1.2);
  transition: 0.3s;
}

.top_topics li a:hover .arrow_right::before,
.top_business_content a:hover .arrow_right::before {
  background: #ffffff;
  width: 10px;
  height: 1px;
  transition: 0;
}

.top_topics li a:hover .arrow_right::after,
.top_business_content a:hover .arrow_right::after {
  width: 8px;
  height: 8px;
  transition: 0;
}

@media (max-width: 1260px) {
  .top_topics_area {
    width: 70%;
  }

  .top_topics_area li p {
    width: calc(60vw - 280px);
  }

}

@media (max-width: 980px) {
  .top_topics_area {
    width: 100%;
    border-radius: 20px 20px 0 0;
  }

  .top_topics_area li p {
    width: calc(100vw - 450px);
  }
}

@media (max-width: 780px) {
  .top_topics_area li p {
    width: calc(100vw - 250px);
  }
}

@media (max-width: 600px) {
  .top_topics_area li {
    flex-wrap: wrap;
  }

  .top_topics_area li p {
    width: calc(100vw - 150px);
  }
}

@media (max-width: 540px) {
  .top_topics li {
    line-height: 3rem;
  }

  .top_topics li a .arrow_right {
    top: 40%;
  }
}

@media (max-width: 520px) {
  .top_comment_area {
    right: 100px;
  }
}

@media (max-width: 410px) {
  .top_topics_area {
    padding: 40px;
  }

  .top_topics li a {
    margin-right: 0;
    font-size: 1.3rem;
  }
}

/* COMPANY */
.top_company {
  position: relative;
  top: 0;
  /* height: 100vh; */
  overflow: hidden;
  padding-top: 150px;
  z-index: 1;
}

.top_company h2 {
  font-family: "Josefin Sans", sans-serif;
  font-style: oblique;
  font-size: 12rem;
  font-weight: 200;
  color: #fff;
}

.top_company h3 {
  margin-left: 70px;
  margin-bottom: 40px;
  position: relative;
  font-size: 4rem;
  font-weight: 500;
  color: #fff;
}

.top_company h3::before {
  content: "";
  display: block;
  width: 50px;
  height: 50px;
  background-image: url("../images/dot_icon.svg");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 9px;
  left: -70px;
}

.top_company p {
  margin-bottom: 60px;
  font-size: 2rem;
  font-weight: 500;
  color: #fff;
  line-height: 4rem;
}

#arch {
  margin-bottom: -8px;
}

@media (max-width: 1200px) {
  .top_company h2 {
    font-size: 9vw;
  }
}

@media (max-width: 980px) {
  .top_company p {
    font-size: 1.8rem;
    line-height: 4rem;
  }
}

@media (max-width: 780px) {
  .top_company h2 {
    font-size: 11vw;
  }

  .top_company h3 {
    margin-left: 50px;
    font-size: 3rem;
  }

  .top_company h3::before {
    width: 35px;
    height: 35px;
    top: 8px;
    left: -50px;
  }
}

@media (max-width: 540px) {
  .top_company {
    height: auto;
    margin-bottom: 150px;
  }

  .top_company h3 {
    margin-left: 40px;
    font-size: 2rem;
  }

  .top_company h3::before {
    width: 30px;
    height: 30px;
    top: 1px;
    left: -40px;
  }

  .top_company p {
    font-size: 1.6rem;
    line-height: 3rem;
  }
}

/* BUSINESS */
.top_business {
  width: 100%;
  background-color: #ffffff;
}

.top_business_wrap {
  padding: 10px 0 200px 0;
  width: 1200px;
  margin: 0 auto;
}

.top_business_container {
  position: relative;
  margin-top: 60px;
}

.top_business_list {
  position: absolute;
  left: 0;
  bottom: 100px;
  width: 80vw;
  max-width: 1700px;
  /* overflow-x: scroll; */
}

.top_business_txt {
  padding-bottom: 40px;
}

.slick-track {
  display: flex;
  align-items: stretch;
}

.slick-slide {
  height: auto !important;
}

.arrow_box_container {
  position: absolute;
  top: -80px;
  left: 0;
  width: 100%;
  z-index: 5;
}

.arrow_box {
  position: relative;
  width: 1200px;
}

.arrow_box .slick-prev {
  position: absolute;
  right: 180px;
  bottom: -100px;
  transform: rotate(180deg);
}

.arrow_box .slick-next {
  position: absolute;
  right: 130px;
  bottom: -100px;
}

.top_business_content {
  margin: 0 15px;
  width: 33vw;
}

.top_business_content a {
  color: #000;
}

.top_business_content_in {
  width: 100%;
  padding: 40px;
  height: 100%;
  display: flex;
  background-color: #f1f9ff;
  border-radius: 20px;
}

.top_business_content_left img {
  width: 14vw;
  max-width: 290px;
  border-radius: 9999px;
}

.top_business_content_right {
  position: relative;
  margin-left: 40px;
}

.top_business_num {
  text-align: right;
}

.top_business_num span {
  padding: 5px 10px 3px 10px;
  font-family: "Josefin Sans", sans-serif;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 1.3rem;
  font-weight: 500;
  color: #00a6e3;
  background-color: #fff;
  border-radius: 9999px;
}

.top_business_content_right h2 {
  margin-bottom: 20px;
  font-size: 2rem;
  font-weight: 500;
}

.top_business_content_right h3 {
  margin-bottom: 20px;
  font-family: "Josefin Sans", sans-serif;
  font-size: 1.3rem;
  font-weight: 500;
  color: #00a6e3;
}

.top_business_label {
  margin-bottom: 10px;
  padding: 5px 10px;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 1.6rem;
  font-weight: 500;
  color: #00a6e3;
  background-color: #fff;
  border-radius: 9999px;
}

.top_business_content_right p {
  font-size: 1.6rem;
  font-weight: 500;
}

.top_business_content a:hover .top_business_btn {
  color: #000;
}

.top_business_btn {
  position: absolute;
  bottom: 0;
  right: 45px;
  font-family: "Josefin Sans", sans-serif;
  font-size: 1.3rem;
  font-weight: 500;
  color: #00a6e3;
}

.top_business_btn .arrow_right {
  position: absolute;
  top: -12px;
  right: -45px;
}

@media (max-width: 1570px) {
  .top_business_list {
    bottom: -0.3vw;
  }

  .top_business_content_right p {
    margin-bottom: 40px;
  }

  .arrow_box_container {
    top: 20px;
  }

  .top_business_txt {
    padding-bottom: 0px;
  }
}

@media (max-width: 1500px) {
  .top_business_wrap {
    padding: 50px 0 200px 0;
    width: 95%;
  }

  .top_business_content_left img {
    width: 90%;
    min-width: 150px;
  }

  .arrow_box {
    width: 95%;
  }
}

@media (max-width: 1262px) {
  .top_business_list {
    bottom: -4vw;
  }

  .arrow_box_container {
    top: 60px;
  }
}

@media (max-width: 1200px) {
  .top_business_wrap {
    width: 90%;
    height: 100%;
  }

  .arrow_box {
    width: 90%;
  }

  .top_business_list {
    width: 100%;
    bottom: -10vw;
  }

  .top_business_content_in {
    flex-wrap: wrap;
  }

  .top_business_content_left {
    display: flex;
    justify-content: center;
  }

  .top_business_content_left img {
    width: 50%;
    max-width: 240px;
    height: auto;
  }

  .top_business_content_left,
  .top_business_content_right {
    width: 100%;
  }

  .top_business_content_right {
    margin-left: 0;
  }

  .arrow_box_container {
    top: 110px;
  }
}

@media (max-width: 1090px) {
  .top_business_list {
    bottom: -12vw;
  }

  .arrow_box_container {
    top: 120px;
  }

  .top_business_content_right p {
    margin-bottom: 30px;
  }
}

@media (max-width: 980px) {
  .top_business_list {
    bottom: -16vw;
  }

  .arrow_box_container {
    top: 160px;
  }

  .arrow_box {
    z-index: 1;
  }
}

@media (max-width: 780px) {
  .top_business_list {
    width: 100%;
    bottom: -17vw;
  }

  .top_business_content_right p {
    font-size: 1.4rem;
  }

  .arrow_box .slick-prev {
    right: 100px;
  }

  .arrow_box .slick-next {
    right: 50px;
  }
}

@media (max-width: 480px) {
  .top_business_content_left img {
    width: 80%;
    height: auto;
  }

  .top_business_list {
    bottom: -35vw;
  }
}

@media (max-width: 368px) {
  .top_business_list {
    bottom: -45vw;
  }
}

/*==================================================
誠実に向き合い次世代に繋げていくcss top_loop
===================================*/
.top_loop,
.top_loop_sp {
  position: relative;
  width: 100%;
  height: 50%;
  overflow: hidden;
  background-color: #ffffff;
  margin: 0;
  padding: 20px;
  z-index: 1;
}

.top_loop #lottie,
.top_loop_sp #lottie {
  background-color: #ffffff;
  width: 100%;
  height: 100%;
  display: block;
  overflow: hidden;
  transform: translate3d(0, 0, 0);
  text-align: center;
  opacity: 1;
}

/* PEOPLE */
.top_people_wrap {
  position: relative;
  background-color: #ffffff;
  padding-top: 200px;
  padding-bottom: 200px;
}

.top_people_container {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.top_people_title {
  width: 100%;
  position: absolute;
  top: 350px;
  left: 0;
  z-index: 2;
}

.top_people_label {
  display: flex;
  gap: 3rem;
}

.top_people_label_b {
  padding: 8px 25px;
  height: -moz-fit-content;
  height: fit-content;
  font-size: 1.6rem;
  font-weight: 500;
  color: #00a6e3;
  background-color: #fff;
  border: solid 2px #00a6e3;
  border-radius: 9999px;
  cursor: pointer;
}

.top_people_label_b.btn_active {
  padding: 8px 25px;
  height: -moz-fit-content;
  height: fit-content;
  font-size: 1.6rem;
  font-weight: 500;
  color: #fff;
  background-color: #00a6e3;
  border: solid 2px #00a6e3;
  border-radius: 9999px;
}

.tab_content {
  display: none;
}

.tab_content.show {
  display: block;
}

.top_people_list {
  margin-top: 100px;
  margin-bottom: 150px;
}

.top_people_list_in {
  /* width: 40%; */
  margin-top: 40px;
  padding: 0 30px;
}

.top_people_list_in img {
  width: 100%;
  height: 350px;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 9999px;
}

.top_people_list_label {
  padding: 8px 25px;
  width: -moz-fit-content;
  width: fit-content;
  height: -moz-fit-content;
  height: fit-content;
  font-size: 1.4rem;
  font-weight: 500;
  color: #fff;
  /*background-color: #00a6e3;*/
  border-radius: 9999px;
  white-space: nowrap;
}

.sales {
  background-color: #ec3771 !important;
}

.general {
  background-color: mediumaquamarine !important;
}

.technical {
  background-color: #3fa9f5 !important;
}

.manufacture {
  background-color: #0071bc !important;
}

.equipment {
  background-color: #f77f1e !important;
}

.development {
  background-color: #d58b3b !important;
}

.top_people_list_text,
.top_environment p {
  font-size: 1.6rem;
  font-weight: 500;
  color: #000;
  line-height: 2.5rem;
}

/* slider design */
/* 前へ・次へボタンのベーススタイル */
.top_people_list {
  /* 前へ・次へボタンのベーススタイル */
  /* 前へボタンの位置 */
  /* 次へボタンの位置 */
  /* ボタンのホバー時のスタイル */
  /* ボタンの矢印アイコンスタイル */
  /* デフォルトの矢印を設定 */
}

.top_people_list .slick-prev2,
.top_people_list .slick-next2,
.arrow_box .slick-prev,
.arrow_box .slick-next {
  position: absolute;
  bottom: -60px;
  display: inline-block;
  place-content: center;
  vertical-align: middle;
  text-align: center;
  background: #00a6e3;
  width: 40px;
  height: 40px;
  border-radius: 100vmax;
  border: 2px solid #3dc2ea;
  cursor: pointer;
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}

.top_people_list .slick-prev2 {
  right: 180px;
  transform: rotate(180deg);
}

.top_people_list .slick-next2 {
  right: 130px;
}

.top_people_list .slick-prev2::before,
.top_people_list .slick-prev2::after,
.top_people_list .slick-next2::before,
.top_people_list .slick-next2::after,
.arrow_box .slick-prev::before,
.arrow_box .slick-prev::after,
.arrow_box .slick-next::before,
.arrow_box .slick-next::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

.top_people_list .slick-prev2::before,
.top_people_list .slick-next2::before,
.arrow_box .slick-prev::before,
.arrow_box .slick-next::before {
  background: #ffffff;
  width: 12px;
  height: 1px;
}

.top_people_list .slick-prev2::after,
.top_people_list .slick-next2::after,
.arrow_box .slick-prev::after,
.arrow_box .slick-next::after {
  width: 9px;
  height: 9px;
  border: 1px solid #ffffff;
  border-left: 0;
  border-bottom: 0;
  transform: rotate(45deg);
  transform-origin: center;
}

.top_people_list .slick-prev2:hover,
.top_people_list .slick-next2:hover,
.arrow_box .slick-prev:hover,
.arrow_box .slick-next:hover {
  background: #fff;
  transform: scale(1.2);
  transition: 0.3s;
}

.top_people_list .slick-prev2:hover,
.arrow_box .slick-prev:hover {
  transform: scale(1.2) rotate(180deg);
}

.top_people_list .slick-prev2:hover::before,
.top_people_list .slick-next2:hover::before,
.arrow_box .slick-prev:hover::before,
.arrow_box .slick-next:hover::before {
  background: #00a6e3;
  width: 10px;
  height: 1px;
  transition: 0;
}

.top_people_list .slick-prev2:hover::after,
.top_people_list .slick-next2:hover::after,
.arrow_box .slick-prev:hover::after,
.arrow_box .slick-next:hover::after {
  border: 1px solid #00a6e3;
  border-left: 0;
  border-bottom: 0;
  width: 8px;
  height: 8px;
  transition: 0;
}

.small_text {
  font-size: 1.4rem;
  font-weight: 500;
  color: #ccd9e2;
}

.top_people_talk {
  position: relative;
  margin-bottom: 100px;
}

.top_people_talk_content {
  position: absolute;
  bottom: -30px;
  left: 0;
}

.top_people_talk_text_area {
  position: absolute;
  bottom: 0px;
  left: 0px;
}

.top_people_talk_text_area img {
  width: 400px;
}

.top_people_talk img.top_people_talk_img {
  width: 100%;
}

@media (max-width: 1200px) {
  .top_people_talk_text_area {
    bottom: -1px;
    left: -1px;
  }
}

@media (max-width: 980px) {
  .top_people_talk_text_area img {
    width: 300px;
  }
}

@media (max-width: 882px) {
  .top_people_list {
    margin-top: 200px;
  }

  .top_people_label {
    width: 100%;
    justify-content: left;
  }
}

@media (max-width: 780px) {
  .top_people_wrap {
    padding-top: 100px;
    padding-bottom: 100px;
  }

  .top_people_list .slick-prev2 {
    right: 100px;
  }

  .top_people_list .slick-next2 {
    right: 50px;
  }
}

@media (max-width: 540px) {
  .top_people_talk_text_area {
    left: -48px;
  }

  .top_people_talk_content {
    bottom: -90px;
  }

  .top_people_talk_content .button2 {
    margin-top: 40px;
  }

  .top_people_talk_text_area {
    width: 100%;
  }

  .top_people_talk_text_area img {
    height: 120px;
    -o-object-fit: fill;
    object-fit: fill;
  }
}

/* ENVIRONMENT */
.top_environment {
  position: relative;
  background-color: #f1f9ff;
}

.top_environment .arch_bgi {
  position: absolute;
  top: 0;
  left: 0;
  transform: rotate(180deg);
}

.top_environment section {
  padding-top: 300px;
  padding-bottom: 150px;
}

.top_environment_content {
  display: flex;
  justify-content: space-between;
  gap: 3rem;
}

.top_environment_content img {
  height: 500px;
  width: 500px;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 20px;
}

.top_environment_content_r {
  width: 50%;
}

@media (max-width: 1200px) {
  .top_environment_content img {
    height: 45vw;
    max-height: 500px;
    width: 45vw;
    max-width: 500px;
  }
}

@media (max-width: 1100px) {
  .top_environment_content img {
    height: 30vw;
    max-height: 500px;
    width: 30vw;
    max-width: 500px;
  }
}

@media (max-width: 980px) {
  .top_environment_content {
    flex-wrap: wrap;
  }

  .top_environment_content_l,
  .top_environment_content_r {
    width: 100%;
  }

  .top_environment_content_l {
    text-align: center;
  }
}

@media (max-width: 780px) {
  .top_environment section {
    padding-top: 150px;
    padding-bottom: 100px;
  }

  .top_environment_content img {
    height: 100%;
    width: 90%;
  }
}

/* RECRUIT */
.top_recruit {
  padding-top: 200px;
  padding-bottom: 200px;
  background-color: #ffffff;
}

.top_recruit_in {
  display: flex;
  justify-content: space-between;
}

.top_recruit_in_l,
.top_recruit_in_r {
  position: relative;
  width: 48%;
  max-height: 500px;
  height: 18vw;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 20px;
}

.top_recruit_in_l a,
.top_recruit_in_r a {
  display: block;
  width: 100%;
  max-height: 500px;
  height: 18vw;
}

.top_recruit_in_l {
  background: linear-gradient(rgba(0, 166, 227, 0.7647058824) 0%, rgba(0, 166, 227, 0.7647058824) 100%), url("../images/top_recruit1.png");
  background-size: cover;
}

.top_recruit_in_l:hover {
  background-image: linear-gradient(rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.9)), url("../images/top_recruit1.png");
  background-size: cover;
  transition: 0.3s;
}

.top_recruit_in_r {
  background: linear-gradient(rgba(0, 166, 227, 0.7647058824) 0%, rgba(0, 166, 227, 0.7647058824) 100%), url("../images/top_recruit2.png");
  background-size: cover;
}

.top_recruit_in_r:hover {
  background-image: linear-gradient(rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.9)), url("../images/top_recruit2.png");
  background-size: cover;
  transition: 0.3s;
}

.top_recruit_in_title {
  position: absolute;
  bottom: 10px;
  left: 40px;
}

.top_recruit_bottom {
  position: relative;
  width: 100%;
  background-color: #00a6e3;
  border: solid 2px #00a6e3;
  border-radius: 20px;
  text-align: center;
}

.top_recruit_bottom:hover {
  background-color: #fff;
}

.top_recruit_bottom a {
  padding: 20px;
  display: block;
  width: 100%;
  height: 100%;
  cursor: pointer;
}

.top_recruit_bottom a .title3,
.top_recruit_bottom a .title4 {
  margin-bottom: 0;
  color: #fff;
}

.top_recruit_in_title .title3,
.top_recruit_in_title .title4 {
  color: #fff;
}

.top_recruit_in_l a:hover .title3,
.top_recruit_in_l a:hover .title4,
.top_recruit_in_r a:hover .title3,
.top_recruit_in_r a:hover .title4,
.top_recruit_bottom a:hover .title3,
.top_recruit_bottom a:hover .title4 {
  color: #00a6e3;
}

.top_recruit_in_l a .arrow_right,
.top_recruit_in_r a .arrow_right {
  position: absolute;
  top: auto;
  bottom: 35px;
  right: 40px;
  display: inline-block;
  place-content: center;
  vertical-align: middle;
  text-align: center;
  background: #fff;
  width: 34px;
  height: 34px;
  border-radius: 100vmax;
}

.top_recruit_bottom a .arrow_right {
  position: absolute;
  top: 30px;
  right: 40px;
  display: inline-block;
  place-content: center;
  vertical-align: middle;
  text-align: center;
  background: #fff;
  width: 34px;
  height: 34px;
  border-radius: 100vmax;
}

.page_top a .arrow_right {
  position: absolute;
  top: auto;
  bottom: -10px;
  right: -50px;
  display: inline-block;
  place-content: center;
  vertical-align: middle;
  text-align: center;
  background: #fff;
  width: 34px;
  height: 34px;
  border-radius: 100vmax;
  transform: rotate(-90deg);
}

.top_recruit_in_l a .arrow_right::before,
.top_recruit_in_l a .arrow_right::after,
.top_recruit_in_r a .arrow_right::before,
.top_recruit_in_r a .arrow_right::after,
.top_recruit_bottom a .arrow_right::before,
.top_recruit_bottom a .arrow_right::after,
.page_top a .arrow_right::before,
.page_top a .arrow_right::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

.top_recruit_in_l a .arrow_right::before,
.top_recruit_in_r a .arrow_right::before,
.top_recruit_bottom a .arrow_right::before,
.page_top a .arrow_right::before {
  background: #00a6e3;
  width: 12px;
  height: 1px;
}

.top_recruit_in_l a .arrow_right::after,
.top_recruit_in_r a .arrow_right::after,
.top_recruit_bottom a .arrow_right::after,
.page_top a .arrow_right::after {
  width: 9px;
  height: 9px;
  border: 1px solid #00a6e3;
  border-left: 0;
  border-bottom: 0;
  transform: rotate(45deg);
  transform-origin: center;
}

.top_recruit_in_l a:hover .arrow_right,
.top_recruit_in_r a:hover .arrow_right,
.top_recruit_bottom a:hover .arrow_right {
  background: #00a6e3;
  transform: scale(1.2);
  transition: 0.3s;
}

.page_top a:hover .arrow_right {
  transform: scale(1.2) rotate(-90deg);
  transition: 0.3s;
}

.top_recruit_in_l a:hover .arrow_right::before,
.top_recruit_in_r a:hover .arrow_right::before,
.top_recruit_bottom a:hover .arrow_right::before {
  background: #fff;
  width: 10px;
  height: 1px;
  transition: 0;
}

.page_top a:hover .arrow_right::before {
  background: #00a6e3;
  width: 10px;
  height: 1px;
  transition: 0;
}

.top_recruit_in_l a:hover .arrow_right::after,
.top_recruit_in_r a:hover .arrow_right::after,
.top_recruit_bottom a:hover .arrow_right::after {
  border: 1px solid #fff;
  border-left: 0;
  border-bottom: 0;
  width: 8px;
  height: 8px;
  transition: 0;
}

.page_top a:hover .arrow_right::after {
  border: 1px solid #00a6e3;
  border-left: 0;
  border-bottom: 0;
  width: 8px;
  height: 8px;
  transition: 0;
}

@media (max-width: 1100px) {

  .top_recruit_in_title .title3,
  .top_recruit_title .title3 {
    font-size: 2rem;
  }
}

@media (max-width: 980px) {

  .top_recruit_in_title .title3,
  .top_recruit_title .title3 {
    font-size: 2rem;
  }

  .top_recruit_in {
    flex-wrap: wrap;
  }

  .top_recruit_in_l {
    margin-bottom: 40px;
    width: 100%;
    background-position: 0 30%;
  }

  .top_recruit_in_r {
    width: 100%;
    background-position: 0 20%;
  }

  .top_recruit_in_title {
    width: 100%;
  }

  .top_recruit_bottom a .arrow_right {
    top: 25px;
  }
}

@media (max-width: 800px) {

  .top_recruit_in_l,
  .top_recruit_in_r {
    height: 143px;
  }
}

/*　//////////////////////////////////////////////////
　page共通
//////////////////////////////////////////////////　*/
section {
  width: 1200px;
  margin: 0 auto;
}

.top_title1 {
  font-family: "Josefin Sans", sans-serif;
  font-style: oblique;
  font-size: 12rem;
  font-weight: 200;
  color: #00a6e3;
}

.top_title2 {
  margin-left: 80px;
  margin-bottom: 40px;
  position: relative;
  font-size: 4rem;
  font-weight: 500;
  color: #000;
}

.top_title2::before {
  content: "";
  display: block;
  width: 40px;
  height: 40px;
  background-image: url("../images/dot_icon.svg");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 13px;
  left: -70px;
}

.top_text1 {
  margin-bottom: 60px;
  font-size: 2rem;
  font-weight: 500;
  color: #000;
  line-height: 4rem;
}

.title3 {
  margin-bottom: 20px;
  font-size: 3rem;
  font-weight: 500;
  color: #00a6e3;
}

.title4 {
  margin-bottom: 20px;
  font-family: "Josefin Sans", sans-serif;
  font-size: 1.3rem;
  font-weight: 500;
  color: #00a6e3;
}

.title5 {
  margin-bottom: 40px;
  font-size: 2.5rem;
  font-weight: 500;
  color: #00a6e3;
  line-height: 4rem;
}

.title9 {
  margin-bottom: 40px;
  font-size: 2rem;
  font-weight: 500;
  color: #00a6e3;
  line-height: 3rem;
}

.title9_r {
  display: block;
  width: 100%;
  text-align: right;
}

.title10 {
  margin-bottom: 20px;
  font-size: 1.4rem;
  font-weight: 500;
  color: #000;
  line-height: 3rem;
}

.title10 span {
  padding-left: 20px;
  font-size: 2.5rem;
}

.button1 a {
  display: block;
  width: 250px;
  position: relative;
  padding: 15px 40px;
  font-size: 1.6rem;
  font-weight: 500;
  text-align: center;
  color: #3dc2ea;
  background-color: #fff;
  border: solid 3px #3dc2ea;
  border-radius: 9999px;
}

.button1 a:hover {
  color: #fff;
  background-color: #00a6e3;
}

.button1 a .arrow_right {
  position: absolute;
  top: 20%;
  right: 10px;
  background-color: #fff;
  display: inline-block;
  place-content: center;
  vertical-align: middle;
  text-align: center;
  width: 34px;
  height: 34px;
  border-radius: 100vmax;
}

.button1 a .arrow_right::before,
.button1 a .arrow_right::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

.button1 a .arrow_right::before {
  background: #3dc2ea;
  width: 12px;
  height: 1px;
}

.button1 a .arrow_right::after {
  width: 9px;
  height: 9px;
  border: 1px solid #3dc2ea;
  border-left: 0;
  border-bottom: 0;
  transform: rotate(45deg);
  transform-origin: center;
}

.button1 a:hover .arrow_right {
  background-color: #00a6e3;
  transition: 0.3s;
}

.button1 a:hover .arrow_right::before {
  background: #fff;
}

.button1 a:hover .arrow_right::after {
  border: 1px solid #fff;
  border-left: 0;
  border-bottom: 0;
}

.button2 a,
.button2 button,
.button3 a {
  display: block;
  width: 250px;
  position: relative;
  padding: 15px 40px;
  font-size: 1.6rem;
  font-weight: 500;
  text-align: center;
  color: #fff;
  background-color: #00a6e3;
  border: solid 3px #3dc2ea;
  border-radius: 9999px;
  white-space: nowrap;
}

.button2 a:hover,
.button2 button:hover,
.button3 a:hover {
  color: #3dc2ea;
  background-color: #fff;
}

.button2 a .arrow_right,
.button2 button .arrow_right {
  position: absolute;
  top: 20%;
  right: 10px;
  background-color: #00a6e3;
  display: inline-block;
  place-content: center;
  vertical-align: middle;
  text-align: center;
  width: 34px;
  height: 34px;
  border-radius: 100vmax;
}

.button3 a .arrow_right {
  position: absolute;
  top: 20%;
  left: 10px;
  background-color: #00a6e3;
  display: inline-block;
  place-content: center;
  vertical-align: middle;
  text-align: center;
  width: 34px;
  height: 34px;
  border-radius: 100vmax;
  transform: rotate(180deg);
}

.button2 a .arrow_right::before,
.button2 a .arrow_right::after,
.button2 button .arrow_right::before,
.button2 button .arrow_right::after,
.button3 a .arrow_right::before,
.button3 a .arrow_right::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

.button2 a .arrow_right::before,
.button2 button .arrow_right::before,
.button3 a .arrow_right::before {
  background: #fff;
  width: 12px;
  height: 1px;
}

.button2 a .arrow_right::after,
.button2 button .arrow_right::after,
.button3 a .arrow_right::after {
  width: 9px;
  height: 9px;
  border: 1px solid #fff;
  border-left: 0;
  border-bottom: 0;
  transform: rotate(45deg);
  transform-origin: center;
}

.button2 a:hover .arrow_right,
.button2 button:hover .arrow_right,
.button3 a:hover .arrow_right {
  background-color: #fff;
  transition: 0.3s;
}

.button2 a:hover .arrow_right::before,
.button2 button:hover .arrow_right::before,
.button3 a:hover .arrow_right::before {
  background: #3dc2ea;
}

.button2 a:hover .arrow_right::after,
.button2 button:hover .arrow_right::after,
.button3 a:hover .arrow_right::after {
  border: 1px solid #3dc2ea;
  border-left: 0;
  border-bottom: 0;
}

.page_title_area {
  margin-top: 150px;
}

.page_top_title_area {
  position: relative;
}

.page_top_title_area .top_scroll_down {
  bottom: 100px;
}

.page_top_title_area .top_scroll_down a {
  color: #00a6e3;
}

.page_top_title {
  margin-bottom: 80px;
}

.page_top_title h2 {
  margin-bottom: 10px;
  font-family: "Josefin Sans", sans-serif;
  font-style: oblique;
  font-size: 4rem;
  font-weight: 200;
  color: #00a6e3;
  letter-spacing: 0.2rem;
}

.page_top_title h2 span {
  font-family: "Noto Sans JP", sans-serif;
  margin-left: 20px;
  font-size: 1.3rem;
  font-weight: 500;
  font-style: normal;
  color: #00a6e3;
}

.page_top_title h3 {
  font-size: 1.3rem;
  font-weight: 500;
  color: #000;
}

.page_sub_title {
  margin: 100px 0;
  display: flex;
  justify-content: space-between;
  -moz-column-gap: 10rem;
  column-gap: 10rem;
}

.pankuzu ul {
  display: flex;
}

.pankuzu ul li {
  position: relative;
  display: inline-block;
  font-size: 1.3rem;
  font-weight: 500;
  color: #00a6e3;
  padding: 0 5px 0 15px;
}

.pankuzu ul li:first-child {
  padding-left: 0;
}

.pankuzu ul li:first-child::before {
  display: none;
}

.pankuzu ul li::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  width: 10px;
  height: 1px;
  background-color: black;
}

.pankuzu ul li a {
  font-family: "Josefin Sans", sans-serif;
  font-size: 1.3rem;
  font-weight: 500;
  color: #000;
}

.pankuzu ul li a:hover {
  color: #3dc2ea;
}

.page_content_title h4 {
  margin-bottom: 10px;
  font-family: "Josefin Sans", sans-serif;
  font-style: oblique;
  font-size: 4rem;
  font-weight: 200;
  color: #00a6e3;
  letter-spacing: 0.2rem;
}

.page_content_title h5 {
  margin-left: 30px;
  margin-bottom: 40px;
  position: relative;
  font-size: 1.6rem;
  font-weight: 500;
  color: #000;
}

.page_content_title h5::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  background-image: url("../images/dot_icon.svg");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 3px;
  left: -30px;
}

.page_content_title img {
  width: 100%;
  margin: 0 auto;
}

.page_sub_title_col {
  display: flex;
  column-gap: 5rem;
}

.page_sub_title_col .page_content_title {
  width: 70%;
}

.page_content_r {
  width: 30%;
}

.page_content_img {
  width: 100%;
  height: auto;
  display: flex;
  justify-content: center;
}

.page_col_in .page_content_img img {
  margin: 0;
  width: 100%;
  height: auto;
  border-radius: 40px;
}

.page_col_in .page_content_img img:hover {
  transform: scale(1);
  opacity: 1;
}

.page_btn_col {
  display: flex;
  justify-content: space-around;
  column-gap: 1rem;
}

.page_btn_col .button2 button {
  width: 20vw;
  max-width: 250px;
}

.page_btn_col .button2 button:hover {
  transition: .3s;
}

.page_btn_col .button2 button .arrow_right {
  transform: rotate(-45deg);
  background-color: rgba(255, 255, 255, 0);
}

.content_bg_b {
  padding-top: 150px;
  padding-bottom: 150px;
  background-color: #f1f9ff;
}

.content_bg_w {
  padding-top: 150px;
  padding-bottom: 150px;
}

.page_col {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.page_col_in {
  margin-bottom: 60px;
  width: 48%;
}

.page_col_in a {
  display: block;
}

.page_col_in a:hover,
.top_people_list_in a:hover,
.top_people_list_in a:hover img {
  transform: scale(1.1);
  transition: 0.3s;
  cursor: pointer;
}

.page_col_in img {
  margin-bottom: 20px;
  width: 100%;
  height: 350px;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 9999px;
}

.page_col_in h6 {
  margin-bottom: 20px;
  font-size: 1.8rem;
  font-weight: 500;
  color: #00a6e3;
  line-height: 3rem;
}

.page_col_in h6 span {
  font-family: "Josefin Sans", sans-serif;
  font-size: 1.3rem;
}

@media (max-width: 1450px) {
  section {
    width: 95%;
  }
}

@media (max-width: 1370px) {
  .page_sub_title_col .page_content_title {
    width: 60%;
  }

  .page_content_r {
    width: 40%;
  }
}

@media (max-width: 1200px) {
  .top_title1 {
    font-size: 9vw;
  }

  .page_content_img {
    padding: 40px;
  }

  .page_col_in .page_content_img {
    padding: 0;
  }
}

@media (max-width: 1047px) {
  .title9_r {
    text-align: left;
  }
}

@media (max-width: 980px) {
  section {
    width: 90%;
  }

  .top_text1 {
    font-size: 1.6rem;
    line-height: 3rem;
  }

  .page_sub_title {
    display: block;
  }

  .page_col {
    flex-wrap: wrap;
  }

  .page_col_in {
    width: 100%;
  }

  .page_sub_title_col {
    display: flex;
    flex-wrap: wrap;
    row-gap: 4rem;
  }

  .page_sub_title_col .page_content_title {
    width: 100%;
  }

  .page_btn_col .button2 button {
    width: 250px;
  }

  .page_content_r {
    width: 100%;
  }
}

@media (max-width: 780px) {
  .top_title1 {
    font-size: 11vw;
  }

  .top_title2 {
    margin-left: 50px;
    font-size: 3rem;
  }

  .top_title2::before {
    width: 35px;
    height: 35px;
    top: 8px;
    left: -50px;
  }
}

@media (max-width: 600px) {
  .page_btn_col {
    flex-wrap: wrap;
    row-gap: 2rem;
  }
}

@media (max-width: 540px) {
  .page_top_title_area .top_scroll_down {
    bottom: 100px;
  }

  .page_top_title_area .top_scroll_down.environment_page {
    bottom: 0;
  }

  .top_title2 {
    margin-left: 40px;
    font-size: 2rem;
  }

  .top_title2::before {
    width: 30px;
    height: 30px;
    top: 1px;
    left: -40px;
  }

  .top_title2::before {
    width: 30px;
    height: 30px;
    top: 1px;
    left: -40px;
  }

  .page_top_title h2 {
    font-size: 2.8rem;
  }

  .page_content_title h4 {
    font-size: 3rem;
  }
}

@media (max-width: 437px) {
  .title9 br {
    display: none;
  }
}


/*　//////////////////////////////////////////////////
　company
//////////////////////////////////////////////////　*/
/* モーダルと背景の指定 */
.modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  background: rgba(0, 0, 0, 50%);
  padding: 40px 20px;
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  transition: .3s;
  box-sizing: border-box;
  z-index: 101;
}

/* モーダルの擬似要素の指定 */
.modal:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
  margin-left: -0.2em;
}

/* クラスが追加された時の指定 */
.modal.modal-active {
  opacity: 1;
  visibility: visible;
}

/* モーダル内側の指定 */
.modal-container {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  max-width: 1200px;
  width: 90%;
}

/* モーダルを閉じるボタンの指定 */
.modal-close {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: -20px;
  right: -20px;
  width: 40px;
  height: 40px;
  color: #fff;
  background: #000;
  border-radius: 50%;
  cursor: pointer;
}

/* モーダルのコンテンツ部分の指定 */
.modal-content {
  background: #fff;
  text-align: left;
  line-height: 1.8;
  padding: 40px;
  border-radius: 20px;
}

.modal-content .top_title2::before {
  top: 18px;
}

.modal-content .page_content_title {
  text-align: center;
}

.modal-content .page_text img {
  width: 100%;
}

.modal_img {
  text-align: center;
}

.modal_img img {
  width: 40%;
}

.page_col_in img.modal_content_img {
  width: 100%;
  margin-bottom: 0;
  border-radius: 0;
  object-fit: contain;
}

.page_col_in img.modal_content_img:hover {
  transform: scale(1);
  opacity: 1;
}

.company_col .button2 button {
  width: fit-content;
  min-width: 300px;
}

.modal_sub_title {
  width: 100%;
  display: flex;
  justify-content: space-between;
}

.modal_sub_title .page_content_title {
  width: 25%;
}

.modal_sub_title .page_text {
  width: 70%;
}

.modal-container .page_list li {
  margin-bottom: 20px;
  font-size: 1.6rem;
  font-weight: 500;
}

.modal-container .page_list li::before {
  top: 10px;
}

.business_content {
  height: auto;
  width: 100%;
  padding: 40px;
  background-color: #f1f9ff;
  border-radius: 20px;
}

.business_content_in {
  display: flex;
}

.business_img_content img {
  border-radius: 9999px;
}

.business_content_right {
  position: relative;
  margin-left: 40px;
}

.business_num {
  width: 100%;
  display: flex;
  justify-content: end;
}

.business_num span {
  padding: 5px 10px 3px 10px;
  display: block;
  width: 50px;
  font-family: "Josefin Sans", sans-serif;
  font-size: 1.3rem;
  font-weight: 500;
  text-align: center;
  color: #00a6e3;
  background-color: #fff;
  border-radius: 9999px;
}

.business_content_in h2,
.title6 {
  margin-bottom: 20px;
  font-size: 2rem;
  font-weight: 500;
}

.business_content_in h3,
.title7 {
  margin-bottom: 20px;
  font-family: "Josefin Sans", sans-serif;
  font-size: 1.3rem;
  font-weight: 500;
  color: #00a6e3;
}

.business_content_in p {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 3rem;
}

.company_page_bg {
  padding-top: 40px;
  padding-bottom: 150px;
  background-color: #f1f9ff;
}

.arch_bgi.page_arch {
  margin-top: -1px;
  margin-bottom: 150px;
  transform: rotate(180deg);
}

.contents_table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

.contents_table tr {
  font-size: 1.6rem;
  font-weight: 500;
  border-bottom: solid 1px #ccd9e2;
}

.contents_table tr:first-child {
  border-top: solid 1px #ccd9e2;
}

.contents_table tr th {
  padding: 30px;
  width: 20%;
  font-size: 1.6rem;
  font-weight: 500;
  text-align: left;
}

.contents_table tr th span {
  position: relative;
}

.contents_table tr th span::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  background-color: #00a6e3;
  border-radius: 99px;
  position: absolute;
  top: 40%;
  left: -15px;
}

.contents_table tr td {
  padding: 30px;
  font-size: 1.6rem;
  font-weight: 500;
  text-align: left;
}

.table_col {
  display: flex;
  justify-content: space-between;
}

.table_col_in {
  width: 48%;
}

.table_col_in img {
  width: 100%;
  border-radius: 40px;
}

.table_col_in p {
  position: relative;
  margin-left: 20px;
}

.table_col_in p::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  background-color: #00a6e3;
  border-radius: 99px;
  position: absolute;
  top: 40%;
  left: -15px;
}

.page_top_img {
  width: 100%;
  height: auto;
  display: flex;
  justify-content: center;
}

.page_top_img img {
  padding: 50px;
  width: 100%;
  min-width: 300px;
  max-width: 400px;
  height: auto;
  border: solid 1px #ccd9e2;
  border-radius: 20px;
}

.page_float {
  width: 100%;
}

.page_float figure {
  float: left;
  margin: 0 40px 40px 0;
  width: 48%;
}

.page_float figure img {
  width: 100%;
  object-fit: cover;
  border-radius: 40px;
}

@media (max-width: 1200px) {
  .modal_img img {
    width: 60%;
  }
}

@media (max-width: 980px) {

  .modal_sub_title .page_content_title,
  .modal_sub_title .page_text {
    width: 100%;
  }

  .modal_sub_title .page_content_title img {
    width: 70%;
    margin-bottom: 60px;
  }

  .modal_sub_title,
  .business_content_in {
    flex-wrap: wrap;
  }

  .business_content_reverse {
    flex-direction: column-reverse;
  }

  .business_img_content {
    margin-bottom: 20px;
    width: 100%;
    display: flex;
    justify-content: center;
  }

  .business_img_content img {
    width: 50%;
    max-width: 240px;
    height: auto;
  }

  .business_content_left,
  .business_content_right {
    width: 100%;
  }

  .business_content_right {
    margin-left: 0;
  }

  .business_content_right p {
    margin-bottom: 40px;
  }

  .contents_table tr th,
  .contents_table tr td {
    display: block;
    width: 100%;
  }

  .contents_table tr th {
    font-size: 2rem;
    padding-bottom: 0;
  }

  .table_col {
    flex-wrap: wrap;
  }

  .table_col_in {
    width: 100%;
  }

  .table_col_in_b {
    margin-bottom: 20px;
  }

  .page_float figure {
    float: left;
    margin: 0 0 40px 0;
    width: 100%;
  }

  .page_float p {
    .float_none {
      clear: both;
    }
  }

  .modal_img img {
    width: 100%;
  }

  .company_col .button2 button {
    min-width: 250px;
  }
}

@media (max-width: 780px) {
  .modal_sub_title .page_content_title img {
    width: 100%;
  }

  .business_content_in p {
    font-size: 1.4rem;
  }

  .modal-content .top_title2::before {
    top: 10px;
  }
}

@media (max-width: 540px) {
  .modal-content .top_title2::before {
    top: 5px;
  }
}

@media (max-width: 480px) {
  .business_content_in img {
    width: 80%;
    height: auto;
  }
}

/*　//////////////////////////////////////////////////
interview
//////////////////////////////////////////////////　*/
.page_title_area {
  margin-top: 0;
  padding-top: 150px;
}

.interview_top {
  display: flex;
  justify-content: left;
  flex-wrap: wrap;
  width: 50%;
}

.interview_top_l {
  width: 30%;
  text-align: center;
}

.interview_top_r {
  padding-left: 20px;
  width: 70%;
}

.interview_copy {
  width: calc(100% - 520px);
  font-size: 2rem;
  line-height: 4rem;
}

.interview_name {
  margin-top: 60px;
  font-family: "Josefin Sans", sans-serif;
  font-size: 6rem;
  font-weight: 300;
  line-height: 6rem;
  color: #00a6e3;
}

.interview_new {
  line-height: 4rem;
}

.interview_school {
  margin-top: 5px;
  line-height: 4rem;
}

.interview_top_img {
  position: absolute;
  top: 0;
  right: 0;
  width: 40vw;
  max-width: 520px;
  border-radius: 0 0 0 40px;
}

.interview_bg_b {
  padding-top: 10px;
  padding-bottom: 150px;
  background-color: #f1f9ff;
}

.interview_title_area {
  padding: 40px;
  display: flex;
  justify-content: space-between;
  background-color: #00a6e3;
  border-radius: 40px;
}

.interview_title_l {
  width: 30%;
  text-align: center;
}

.interview_title_l p {
  display: inline-grid;
  max-width: 170px;
  max-height: 170px;
  width: 15vw;
  height: 15vw;
  color: #fff;
  background-color: #3dc2ea;
  border-radius: 999px;
  align-items: center;
}

.interview_title_r {
  width: 70%;
}

.interview_title_r p {
  color: #fff;
}

.interview_title_r p.interview_title_r_label span {
  margin-right: 20px;
  padding: 5px 15px;
  color: #00a6e3;
  background-color: #fff;
  border-radius: 99rem;
}

.interview_col_in {
  width: 48%;
}

.interview_col_in img {
  width: 100%;
  border-radius: 40px;
}

.interview_img {
  text-align: center;
}

.interview_img img {
  width: 60%;
  border-radius: 40px;
}

.interview_faq_area {
  padding-bottom: 60px;
  margin-bottom: 60px;
  border-bottom: solid 1px #ccd9e2;
}

.interview_faq {
  font-family: "Josefin Sans", sans-serif;
  margin-left: 30px;
  margin-bottom: 20px;
  position: relative;
  font-size: 1.4rem;
  color: #00a6e3;
}

.interview_faq::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  background-image: url("../images/dot_icon.svg");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 3px;
  left: -30px;
}

.interview_step {
  background-color: #f1f9ff;
  border-radius: 40px;
}

.interview_col_title {
  margin-bottom: 40px;
  font-size: 2.5rem;
}

.interview_time_step .arrow_box_container {
  position: absolute;
  top: -80px;
  left: 0;
  width: 100%;
}

.timeline {
  margin: 40px;
}

.timeline-list {
  padding-top: 60px;
}

.timeline-list-item {
  display: flex;
  line-height: 1.5;
  font-size: 16px;
}

.timeline-list-item .date {
  position: relative;
  width: 20%;
  font-size: 2rem;
  font-weight: 500;
  color: #00a6e3;
  line-height: 2rem;
}

.timeline-list-item .content {
  position: relative;
  width: 80%;
  padding: 0 0 60px 30px;
  border-left: 1px solid #00a6e3;
}

.interview_step_title {
  margin-bottom: 20px;
  font-size: 2rem;
  line-height: 2rem;
}

.timeline-list-item .date::after {
  content: "";
  position: absolute;
  top: 0;
  right: -13px;
  width: 25px;
  height: 25px;
  background-color: #00a6e3;
  border: solid 4px #3dc2ea;
  border-radius: 99px;
  z-index: 1;
}

.timeline-list-item .content::before {
  content: "";
  position: absolute;
  top: 0;
  left: -13px;
  width: 25px;
  height: 25px;
  background-color: #00a6e3;
  border: solid 4px #3dc2ea;
  border-radius: 99px;
  z-index: 1;
}

.slick__inner {
  width: min(100%, 1200px);
  margin: 0 auto;
}

.slick__container {
  position: relative;
  /* インナー幅から片側をはみ出させる */
  width: calc(100% + (100vw - 100%) / 2);
  /* / インナー幅から片側をはみ出させる */
}

.slick-track {
  display: flex;
}

.slick-slide {
  height: auto !important;
}

.slick_content {
  position: relative;
  width: 310px;
  margin-right: 30px;
  padding: 40px;
  background-color: #fff;
  border-radius: 40px;
}

.step_area_time {
  margin-bottom: 10px;
  font-family: "Josefin Sans", sans-serif;
  font-size: 3rem;
  font-weight: 300;
  color: #00a6e3;
}

.step_area_title {
  margin-bottom: 10px;
  font-size: 2rem;
  color: #00a6e3;
}

.interview_people_list {
  position: relative;
}

.interview_people_list .top_people_list_in img {
  height: 250px;
}

.interview_link_btn {
  position: absolute;
  bottom: -80px;
  left: 40%;
}

.interview_career_link .career_link {
  background: linear-gradient(rgba(0, 166, 227, 0.7647058824) 0%, rgba(0, 166, 227, 0.7647058824) 100%), url("../images/interview/crosstalk_link.jpg");
  background-size: cover;
}

.interview_career_link .career_link:hover {
  background-image: linear-gradient(rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.9)), url("../images/interview/crosstalk_link.jpg");
  background-size: cover;
  transition: 0.3s;
}

@media (max-width: 1450px) {
  .slick__container {
    margin-left: 20px;
  }
}

@media (max-width: 1100px) {
  .interview_top {
    width: 50%;
  }

  .interview_link_btn {
    bottom: -130px;
    left: 35%;
  }

  .interview_people_list .top_people_list {
    margin-top: 100px;
    margin-bottom: 200px;
  }

  .interview_top_l {
    width: 25%;
  }

  .interview_top_r {
    width: 75%;
  }
}

@media (max-width: 1060px) {
  .interview_copy {
    width: calc(100% - 426px);
  }

}

@media (max-width: 980px) {
  .interview_title_area {
    flex-wrap: wrap;
  }

  .interview_top,
  .interview_title_l,
  .interview_title_r,
  .interview_col_in {
    width: 100%;
  }

  .interview_top {
    justify-content: space-between;
  }

  .interview_top_img {
    width: 38vw;
  }

  .interview_copy {
    width: calc(100% - 38vw);
    font-size: 1.6rem;
  }

  .interview_title_l p {
    margin-bottom: 20px;
    width: 150px;
    height: 150px;
  }

  .interview_col_in img {
    margin-top: 40px;
  }

  .interview_img img {
    width: 100%;
  }

  .interview_step {
    padding: 40px 20px;
  }

  .timeline {
    margin: 0;
  }

  .timeline-list {
    padding: 0;
  }

  .timeline-list-item {
    flex-wrap: wrap;
  }

  .timeline-list-item .date::after,
  .timeline-list-item .content::before {
    display: none;
  }

  .timeline-list-item .date {
    position: relative;
    margin: 40px 0 20px 0;
    padding: 0;
    padding-left: 30px;
    width: 100%;
  }

  .timeline-list-item .date::before {
    position: absolute;
    top: 2px;
    left: 0;
    display: block;
    content: '';
    width: 20px;
    height: 20px;
    border-radius: 99px;
    background-color: #00a6e3;
    border: solid 4px #3dc2ea;
  }

  .timeline-list-item:first-child .date {
    margin: 0 0 20px 0;
  }

  .timeline-list-item .content {
    padding: 0;
    width: 100%;
    border-left: none;
  }
}

@media (max-width: 790px) {
  .interview_copy {
    font-size: 1.5rem;
  }
}

@media (max-width: 780px) {
  .interview_top_img {
    top: 60px;
    width: 40vw;
  }

  .interview_copy {
    width: calc(100% - 39vw);
    font-size: 1.6rem;
    line-height: 2.8rem;
  }

  .interview_title_area {
    padding: 40px 20px;
  }

  .slick__container {
    margin-left: 15px;
  }

  .interview_link_btn {
    bottom: -140px;
    left: 30%;
  }
}

@media (max-width: 700px) {
  .interview_top_img {
    width: 45vw;
  }
}

@media (max-width: 600px) {
  .interview_link_btn {
    left: 20%;
  }
}

@media (max-width: 580px) {
  .interview_copy {
    width: 49%;
    font-size: 1.4rem;
  }

}

@media (max-width: 500px) {
  .interview_top_img {
    width: 45vw;
  }

  .interview_name {
    margin-top: 0;
  }

  .interview_top_l {
    margin-bottom: 40px;
    width: 100%;
    display: flex;
    align-items: center;
  }

  .interview_top_l .member_label {
    margin: 0;
    font-size: 1.2rem;
    height: fit-content;
  }

  .interview_top_l .interview_name {
    margin-left: 40px;
  }

  .interview_top_r {
    padding-left: 0;
    width: 100%;
  }

  .interview_top_r p {
    font-size: 1.4rem;
  }

  .interview_link_btn {
    left: 15%;
  }

  .interview_time_step .arrow_box_container {
    position: absolute;
    top: -80px;
    left: 20px;
    width: 100%;
  }
}

@media (max-width: 460px) {
  .interview_copy br {
    display: none;
  }

}

/*　//////////////////////////////////////////////////
crosstalk
//////////////////////////////////////////////////　*/
.member_area {
  position: relative;
}

.member_list {
  display: flex;
  justify-content: space-between;
}

.member_list li {
  margin: 0 auto;
  width: 25%;
  text-align: center;
  border-right: solid 1px #ccd9e2;
}

.member_list li:last-child {
  border-right: none;
}

.member_list li img {
  width: 70%;
  border-radius: 99px;
}

.member_list li img:hover {
  transform: scale(1);
  opacity: 1;
}

.member_label {
  margin: 0 auto;
  padding: 3px 25px;
  width: fit-content;
  font-size: 1.4rem;
  font-weight: 500;
  color: #fff;
  background-color: #00a6e3;
  border-radius: 9999px;
  white-space: nowrap;
}

.member_name {
  font-family: "Josefin Sans", sans-serif;
  font-size: 3rem;
  font-weight: 300;
  color: #00a6e3;
}

.member_area .arch_bgi {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}

.crosstalk_faq p {
  margin-left: 50px;
  position: relative;
  font-size: 2rem;
  color: #00a6e3;
}

.crosstalk_faq p::before {
  content: "";
  display: block;
  width: 25px;
  height: 25px;
  background-image: url("../images/dot_icon.svg");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 3px;
  left: -40px;
}

.crosstalk_col,
.crosstalk_area {
  display: flex;
  justify-content: space-between;
}

.crosstalk_col_in {
  width: 48%;
}

.crosstalk_col_in img {
  width: 100%;
  border-radius: 40px;
}

.crosstalk_area {
  width: 100%;
  flex-wrap: wrap;
  row-gap: 4rem;
}

.crosstalk_icon {
  width: 25%;
  text-align: center;
}

.crosstalk_icon img {
  width: 100%;
  border-radius: 99px;
}

.crosstalk_txt {
  width: 69%;
}

@media (max-width: 980px) {
  .member_list {
    flex-wrap: wrap;
  }

  .member_list li {
    width: 50%;
  }

  .member_list li:nth-child(2) {
    border-right: none;
  }

  .member_list li:nth-child(1),
  .member_list li:nth-child(2) {
    padding-bottom: 10px;
    border-bottom: solid 1px #ccd9e2;
  }

  .member_list li:nth-child(3),
  .member_list li:nth-child(4) {
    padding-top: 20px;
  }

  .crosstalk_col {
    flex-wrap: wrap;
  }

  .crosstalk_col_in {
    width: 100%;
  }

  .crosstalk_col_reverse {
    flex-direction: column-reverse;
  }
}

@media (max-width: 400px) {
  .member_list .small_text {
    font-size: 1.2rem;
  }
}

/*　//////////////////////////////////////////////////
number
//////////////////////////////////////////////////　*/

.number_col {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.number_col3 {
  margin-bottom: 20px;
  padding: 20px 30px;
  width: 32%;
  background-color: #f1f9ff;
  border-radius: 40px;
}

.number_col2 {
  margin-bottom: 20px;
  padding: 20px 30px;
  width: 49%;
  background-color: #f1f9ff;
  border-radius: 40px;
}

.number_col_content8,
.number_col_content10 {
  height: 100%;
  position: relative;
}

.number_col_content8 .number_col_content_title {
  position: absolute;
  top: 0;
  left: 0;
}

.number_col_content10 .number_col_content_date {
  position: absolute;
  bottom: 0;
  left: 0;
}

.number_col_content8_2 .number_col_content8_in .number_col_content_sub_title {
  margin-top: 65px;
}

.number_col_content8_2 .number_col_content_numkai {
  margin-top: 50px;
}

.number_col_content8_2 .number_col_content_date {
  margin-top: 10px;
}

.number_col_content7_in,
.number_col_content8_in {
  display: flex;
  justify-content: space-around;
}

.number_col_content9_in {
  display: flex;
  justify-content: space-between;
  margin: 20px 0;
  color: #00a6e3;
  text-align: center;
}

.number_col_content1,
.number_col_content2,
.number_col_content3,
.number_col_content4,
.number_col_content5,
.number_col_content6,
.number_col_content7 {
  background-repeat: no-repeat;
  background-position: top right;
  background-size: 50%;
}

.number_col_content8 .number_col_in_l,
.number_col_content8 .number_col_in_r {
  background-repeat: no-repeat;
  background-position: 80%;
  background-size: auto;
}

.number_col_content11 {
  background-repeat: no-repeat;
  background-position: top right;
  background-size: auto;
}

.number_col_content12 {
  background-repeat: no-repeat;
  background-position: top right;
  background-size: 14%;
}

.number_col3 .number_col_content7,
.number_col_content10 {
  background-repeat: no-repeat;
  background-position: center right;
  background-size: 60%;
}

.number_col_content1 {
  background-image: url(../images/numbers/number_bgi1.svg);
}

.number_col_content2 {
  background-image: url(../images/numbers/number_bgi2.svg);
}

.number_col_content3 {
  background-image: url(../images/numbers/number_bgi3.svg);
}

.number_col_content4 {
  background-image: url(../images/numbers/number_bgi4.svg);
}

.number_col_content5 {
  background-image: url(../images/numbers/number_bgi5.svg);
}

.number_col_content6 {
  background-image: url(../images/numbers/number_bgi6.svg);
}

.number_col_content7 {
  background-image: url(../images/numbers/number_bgi7.svg);
}

.number_col_content8 .number_col_in_l,
.number_col_content11 {
  background-image: url(../images/numbers/number_bgi8.svg);
}

.number_col_content8 .number_col_in_r,
.number_col_content12 {
  background-image: url(../images/numbers/number_bgi9.svg);
}

.number_col_content10 {
  background-image: url(../images/numbers/number_bgi10.svg);
}

.number_col_content10_in {
  position: relative;
  height: 100%;
}

.number_col_content10_in .number_col_content_numkai {
  position: absolute;
  height: auto;
  bottom: 80px;
  left: 0;
}

.number_col_content_title {
  position: relative;
  width: fit-content;
}

.number_col_content_title::before {
  margin-right: 10px;
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  background-color: #00a6e3;
  border-radius: 99px;
}

.number_col_content_num {
  margin-top: 40px;
  font-size: 1.6rem;
  font-weight: 500;
  color: #00a6e3;
  line-height: 8rem;
  white-space: nowrap;
}

.number_col_content_num span {
  margin-right: 5px;
  font-family: "Josefin Sans", sans-serif;
  font-style: italic;
  font-size: 7rem;
  font-weight: 300;
}

.number_col_content_num span strong {
  font-family: "Josefin Sans", sans-serif;
  font-style: italic;
  font-size: 10rem;
  font-weight: 300;
}

.number_col_content_date {
  font-size: 1.2rem;
  font-weight: 500;
}

.number_col_content7_in .number_col_content_sub_title {
  margin-top: 10px;
  text-align: center;
  color: #00a6e3;
}

.number_col_content8_in .number_col_content_sub_title {
  margin-top: 40px;
  text-align: center;
  color: #00a6e3;
}

.number_col_content9_in .number_col_content_sub_title {
  margin-top: 20px;
}

.number_col_content9_in .number_col_in_l {
  width: 50%;
  background-color: #fff;
  border-radius: 99px 0 0 99px/99px 0 0 99px;
}

.number_col_content9_in .number_col_in_r {
  width: 50%;
  background-color: #00a6e3;
  border-radius: 0 99px 99px 0%/0 99px 99px 0;
}

.number_col_content9_in .number_col_in_r,
.number_col_content9_in .number_col_in_r .number_col_content_num {
  color: #fff;
}

.number_col_content8_in .number_col_content_num,
.number_col_content9_in .number_col_content_num {
  margin-top: 10px;
  line-height: 7rem;
  font-size: 1.2rem;
}

.number_col_content10 .number_col_content_num {
  margin-bottom: 40px;
}

.number_col_content8_in .number_col_content_num span,
.number_col_content9_in .number_col_content_num span {
  font-size: 5rem;
}

.number_col_content8_in .number_col_content_num span strong,
.number_col_content9_in .number_col_content_num span strong {
  font-size: 8rem;
}

.numbers_top_img {
  width: 100%;
}

.welfare_content {
  margin-bottom: 40px;
  width: 48%;
}

.welfare_content img {
  margin-bottom: 20px;
  width: 100%;
  border-radius: 40px;
}

.welfare_content img:hover {
  transform: scale(1) !important;
  opacity: 1 !important;
}

.welfare_content p {
  font-weight: 400;
}

.welfare_content p.title8 {
  padding-left: 20px;
  margin-bottom: 10px;
  position: relative;
  font-size: 2rem;
  font-weight: 500;
}

.title8::before {
  position: absolute;
  top: 45%;
  left: 0;
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  background-color: #00a6e3;
  border-radius: 99px;
}

@media (max-width: 1200px) {

  .number_col_content8_in .number_col_content_num span strong,
  .number_col_content9_in .number_col_content_num span strong {
    font-size: 7rem;
  }
}

@media (max-width: 1100px) {

  .number_col3 .number_col_content1,
  .number_col3 .number_col_content2,
  .number_col3 .number_col_content3,
  .number_col3 .number_col_content4,
  .number_col3 .number_col_content5,
  .number_col3 .number_col_content6 {
    background-size: 60%;
  }

  .number_col_content_num {
    font-size: 1.2rem;
  }

  .number_col_content_num span {
    font-size: 5rem;
  }

  .number_col_content_num span strong {
    font-size: 8rem;
  }

  .number_col_content8_in .number_col_content_num span,
  .number_col_content9_in .number_col_content_num span {
    font-size: 3rem;
  }

  .number_col_content8_in .number_col_content_num span strong,
  .number_col_content9_in .number_col_content_num span strong {
    font-size: 5rem;
  }
}

@media (max-width: 980px) {
  .number_col3 {
    width: 49%;
  }

  .number_col2,
  .welfare_content {
    width: 100%;
  }

  .number_col_content8_in .number_col_content_num span,
  .number_col_content9_in .number_col_content_num span {
    font-size: 5rem;
  }

  .number_col_content8_in .number_col_content_num span strong,
  .number_col_content9_in .number_col_content_num span strong {
    font-size: 8rem;

  }

  .number_col_content10_in .number_col_content_numkai {
    position: unset;
    margin-bottom: 20px;
  }
}

@media (max-width: 520px) {
  .number_col3 {
    width: 100%;
  }

  .number_col_content_title {
    font-size: 1.2rem;
  }

  .number_col3 .number_col_content1,
  .number_col3 .number_col_content2,
  .number_col3 .number_col_content3,
  .number_col3 .number_col_content4,
  .number_col3 .number_col_content5,
  .number_col3 .number_col_content6,
  .number_col_content10 {
    background-size: 50%;
  }

  .number_col3 .number_col_content1,
  .number_col3 .number_col_content2,
  .number_col3 .number_col_content3,
  .number_col3 .number_col_content4,
  .number_col3 .number_col_content5,
  .number_col3 .number_col_content6 {
    background-size: 40%;
  }

  .number_col_content12 {
    background-size: 17%;
  }

  .number_col_content_num {
    margin-top: 20px;
    line-height: 4rem;
  }

  .number_col_content_num span {
    font-size: 3rem;
  }

  .number_col_content_num span strong {
    font-size: 6rem;
  }

  .number_col_content9_in .number_col_content_sub_title {
    margin-top: 10px;
  }

  .number_col_content9_in .number_col_content_num {
    margin-bottom: 10px;
  }

  .number_col_content10 .number_col_content_num {
    margin-bottom: 30px;
  }

  .number_col_content8_in .number_col_content_num span,
  .number_col_content9_in .number_col_content_num span {
    font-size: 3rem;
  }

  .number_col_content8_in .number_col_content_num span strong,
  .number_col_content9_in .number_col_content_num span strong {
    font-size: 5rem;
  }

}

/*　//////////////////////////////////////////////////
　environment
//////////////////////////////////////////////////　*/
.education_table_pc,
.education_table_sp {
  width: 100%;
  border-collapse: separate;
  border-spacing: 1rem;
}

.education_table_pc tr th,
.education_table_sp tr th {
  padding: 20px;
  font-size: 1.6rem;
  font-weight: 500;
  white-space: nowrap;
  text-align: center;
}

.education_table_pc tr th.table_midashi,
.education_table_sp tr th.table_midashi {
  padding: 10px 20px;
  color: #fff;
  background-color: #3dc2ea;
  border-radius: 99px;
}

.table_midashi_c {
  color: #fff;
  background-color: #00a6e3;
  border-radius: 20px;
  white-space: nowrap;
}

.table_midashi_m {
  color: #fff;
  background-color: #ed1e79;
  border-radius: 20px;
  white-space: nowrap;
}

.table_midashi_y {
  background-color: #fff102;
  border-radius: 20px;
  white-space: nowrap;
}

.education_table_pc tr th {
  padding: 20px;
  font-size: 1.6rem;
  font-weight: 500;
  white-space: nowrap;
  text-align: center;
}

.education_table_pc tr th.table_midashi {
  padding: 10px 20px;
  color: #fff;
  background-color: #3dc2ea;
  border-radius: 99px;
}

.education_table_sp tr th.table_midashi {
  padding: 10px 20px;
  color: #fff;
  background-color: #3dc2ea;
  border-radius: 99px;
  white-space: wrap;
}

.education_table_sp {
  display: none;
}

.education_table_pc tr td,
.education_table_sp tr td {
  padding: 30px 20px;
  font-size: 1.6rem;
  font-weight: 500;
  text-align: left;
  background-color: #f1f9ff;
  border-radius: 20px;
}

.page_list {
  margin-left: 20px;
}

.page_list li {
  position: relative;
}

.page_list li span {
  color: #00a6e3;
}

.page_list li::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  background-color: #00a6e3;
  border-radius: 99px;
  position: absolute;
  top: 8px;
  left: -15px;
}

.page_list_d {
  position: relative;
}

.page_list_d li.list_under_arrow {
  margin-bottom: 35px;
}

.page_list_d li.list_under_arrow::after {
  content: "";
  margin: auto;
  position: absolute;
  top: 36px;
  left: 0;
  /* 要素の左からの距離 */
  width: 0;
  height: 0;
  border-style: solid;
  border-color: #00a6e3 transparent transparent transparent;
  border-width: 12.99px 7.5px 0px 7.5px;
}

.page_list_d li.list_under_arrow:nth-child(2):after {
  top: 95px;
}

@media (max-width: 1314px) {
  .page_list_d li.list_under_arrow:nth-child(2):after {
    top: 117px;
  }
}

@media (max-width: 1052px) {
  .page_list_d li.list_under_arrow:nth-child(2):after {
    top: 140px;
  }
}

@media (max-width: 987px) {
  .page_list_d li.list_under_arrow:after {
    top: 60px;
  }

  .page_list_d li.list_under_arrow:nth-child(2):after {
    top: 162px;
  }
}

@media (max-width: 980px) {
  .education_table_pc {
    display: none;
  }

  .education_table_sp {
    display: block;
  }

  .education_table_sp tr th {
    display: inline-table;
    width: 100%;
    margin-bottom: 10px;
  }

  .education_table_sp tr th.table_midashi,
  .education_table_sp tr th.table_midashi_c,
  .education_table_sp tr th.table_midashi_m,
  .education_table_sp tr th.table_midashi_y {
    padding: 0px 20px;
  }

  .education_table_sp tr td {
    margin-bottom: 20px;
    display: inline-table;
    width: 100%;
    padding: 10px;
    font-size: 1.4rem;
  }

  .page_list_d li.list_under_arrow::after {
    top: 32px;
  }

  .page_list_d li.list_under_arrow:nth-child(2):after {
    top: 88px;
  }
}

/*　//////////////////////////////////////////////////
　recruit
//////////////////////////////////////////////////　*/
.accordion_wrapper {
  margin-top: 50px;
}

.accordion {
  font-size: 1.6rem;
  width: 100%;
  margin: 0 auto;
}

.accordion.accordion_l {
  border-bottom: 1px solid #ccd9e2;
}

.accordion_header,
.accordion_content {
  padding: 30px 20px;
  width: 100%;
  font-weight: 500;
}

.accordion_header {
  padding: 30px 60px 30px 20px;
  position: relative;
  cursor: pointer;
  border-top: 1px solid #ccd9e2;
}

.accordion_content {
  display: none;
}

.accordion_header p,
.accordion_content p {
  position: relative;
  padding-left: 40px;
}

.accordion_header p {
  font-size: 2rem;
}

.accordion_header p::before {
  position: absolute;
  top: 18%;
  left: 0;
  font-family: "Josefin Sans", sans-serif;
  content: 'Q';
  font-size: 3rem;
  font-weight: 300;
  color: #00a6e3;
}

.accordion_content p.accordion_content_t::before {
  position: absolute;
  top: 8%;
  left: 0;
  font-family: "Josefin Sans", sans-serif;
  content: 'A';
  font-size: 3rem;
  font-weight: 300;
  color: #00a6e3;
}

.accordion_header span {
  position: absolute;
  top: 30%;
  right: 20px;
  width: 34px;
  height: 34px;
  background-color: #00a6e3;
  border: solid 2px #3dc2ea;
  border-radius: 99px;
}

.accordion_header span::before {
  position: absolute;
  content: '';
  top: 50%;
  right: 9px;
  width: 12px;
  height: 1px;
  background-color: #fff;
  transform: rotate(90deg);
  transition: all .3s ease-in-out;
}

.accordion_header span::after {
  position: absolute;
  content: '';
  top: 50%;
  right: 9px;
  width: 12px;
  height: 1px;
  background-color: #fff;
  transition: all .3s ease-in-out;
}

.accordion_header.open span::before {
  transform: rotate(180deg);
}

.accordion_header.open span::after {
  opacity: 0;
}

.accordion_list {
  margin: 20px;
  padding-left: 40px;
}

.accordion_list li {
  position: relative;
  margin-bottom: 10px;
}

.accordion_list li::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  background-color: #00a6e3;
  border-radius: 99px;
  position: absolute;
  top: 8px;
  left: -15px;
}

.recruit_flow_container {
  display: flex;
  justify-content: space-between;
}

.recruit_flow_container_in {
  width: 48%;
  height: 100%;
}

.recruit_flow_top,
.recruit_flow_top2 {
  padding: 10px;
  margin-bottom: 20px;
  width: 100%;
  font-size: 2rem;
  color: #fff;
  background-color: #00a6e3;
  border-radius: 99px;
  text-align: center;
}

.recruit_flow_top2 {
  background-color: #ed1e79;
}

.recruit_flow li {
  position: relative;
  margin-bottom: 40px;
  padding: 40px 20px;
  width: 100%;
  background-color: #f1f9ff;
  border-radius: 40px;
}

.recruit_flow li:last-child p.recruit_flow_title,
.recruit_flow2 li:last-child p.recruit_flow_title {
  margin: 0 auto;
}

.recruit_flow2 li {
  background-color: #fef6fa;
}

.recruit_flow li .arrow_right {
  position: absolute;
  top: auto;
  bottom: -15px;
  left: 48%;
  transform: rotate(90deg);
  z-index: 1;
}

.recruit_flow2 li .arrow_right {
  background-color: #ed1e79;
}

.recruit_flow li p {
  font-weight: 400;
}

.recruit_flow li:last-child {
  text-align: center;
  background-color: #00a6e3;
}

.recruit_flow2 li:last-child {
  text-align: center;
  background-color: #ed1e79;
}

.recruit_flow_num {
  height: 25px;
  margin-bottom: 10px;
  padding: 4px 15px 0 15px;
  display: inline-block;
  font-family: "Josefin Sans", sans-serif;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 2rem;
  color: #00a6e3;
  background-color: #fff;
  border-radius: 99px;
}

.recruit_flow2 .recruit_flow_num {
  color: #ed1e79;
  background-color: #fff;
}

.recruit_flow li p.recruit_flow_title {
  position: relative;
  width: fit-content;
  font-size: 2rem;
  font-weight: 500;
  color: #00a6e3;
}

.recruit_flow li p.recruit_flow_txt span {
  color: #00a6e3;
}

.recruit_flow_title span {
  position: absolute;
  font-size: 1rem;
  top: -5px;
  right: -12px;
}

.recruit_flow2 li p.recruit_flow_title,
.recruit_flow2 li p.recruit_flow_txt span {
  color: #ed1e79;
}

.recruit_flow li .recruit_flow_content6 p.recruit_flow_title {
  color: #fff;
}

.recruit_flow_content1,
.recruit_flow_content2,
.recruit_flow_content3,
.recruit_flow_content4,
.recruit_flow_content5,
.recruit_flow2 .recruit_flow_content3 {
  height: 100%;
  position: relative;
  background-repeat: no-repeat;
  background-position: top right;
  background-size: 15%;
}

.recruit_flow2 .recruit_flow_content4,
.recruit_flow .recruit_flow_content3 {
  background-size: 12%;
}

.recruit_flow_content1 {
  background-image: url(../images/recruit/recruit_bgi1.svg);
}

.recruit_flow_content2 {
  background-image: url(../images/recruit/recruit_bgi2.svg);
}

.recruit_flow_content3 {
  background-image: url(../images/recruit/recruit_bgi3.svg);
}

.recruit_flow_content4 {
  background-image: url(../images/recruit/recruit_bgi4.svg);
}

.recruit_flow_content5 {
  background-image: url(../images/recruit/recruit_bgi5.svg);
}

.recruit_flow2 .recruit_flow_content3 {
  background-image: url(../images/recruit/recruit_bgi6.svg);
}

.recruit_flow2 .recruit_flow_content4 {
  background-image: url(../images/recruit/recruit_bgi3.svg);
}

.recruit_flow2 .recruit_flow_content5 {
  background-image: url(../images/recruit/recruit_bgi4.svg);
}

.recruit_br1 {
  display: none;
}

@media (max-width: 1450px) {

  .recruit_flow_content1,
  .recruit_flow_content2,
  .recruit_flow_content3,
  .recruit_flow_content4,
  .recruit_flow_content5,
  .recruit_flow2 .recruit_flow_content3 {
    background-size: 23%;
  }

  .recruit_flow2 .recruit_flow_content4,
  .recruit_flow2 .recruit_flow_content5,
  .recruit_flow .recruit_flow_content3 {
    background-size: 19%;
  }

}

@media (max-width: 1439px) {
  .recruit_br3 {
    display: none;
  }
}

@media (max-width: 1284px) {
  .recruit_br2 {
    display: none;
  }
}

@media (max-width: 1283px) {
  .recruit_br1 {
    display: block;
  }
}

@media (max-width: 1243px) {
  .recruit_br1 {
    display: none;
  }
}

@media (max-width: 1179px) {
  .recruit_br3 {
    display: block;
  }
}

@media (max-width: 1004px) {
  .recruit_br2 {
    display: block;
  }
}

@media (max-width: 980px) {
  .recruit_flow_container {
    flex-wrap: wrap;
  }

  .recruit_flow_container_in {
    width: 100%;
  }

  .recruit_flow_content1,
  .recruit_flow_content2,
  .recruit_flow_content3,
  .recruit_flow_content4,
  .recruit_flow_content5,
  .recruit_flow2 .recruit_flow_content3 {
    background-size: 15%;
  }

  .recruit_flow2 .recruit_flow_content4,
  .recruit_flow2 .recruit_flow_content5,
  .recruit_flow .recruit_flow_content3 {
    background-size: 12%;
  }

  .recruit_br2,
  .recruit_br3 {
    display: none;
  }
}


@media (max-width: 780px) {

  .accordion_header {
    padding: 30px 50px 30px 10px;
  }

  .accordion_header p {
    font-size: 1.6rem;
  }

  .accordion_content {
    padding: 30px 10px;
  }

  .accordion_content p {
    font-size: 1.4rem;
  }

  .accordion_header span {
    position: absolute;
    top: 30%;
    right: 20px;
    width: 34px;
    height: 34px;
    background-color: #00a6e3;
    border: solid 2px #3dc2ea;
    border-radius: 99px;
  }

  .accordion_header span::before {
    position: absolute;
    content: '';
    top: 50%;
    right: 9px;
    width: 12px;
    height: 1px;
    background-color: #fff;
    transform: rotate(90deg);
    transition: all .3s ease-in-out;
  }

  .accordion_header span::after {
    position: absolute;
    content: '';
    top: 50%;
    right: 9px;
    width: 12px;
    height: 1px;
    background-color: #fff;
    transition: all .3s ease-in-out;
  }

  .accordion_list {
    margin: 10px;
  }

}

@media (max-width: 640px) {

  .recruit_flow_content1,
  .recruit_flow_content2,
  .recruit_flow_content3,
  .recruit_flow_content4,
  .recruit_flow_content5,
  .recruit_flow2 .recruit_flow_content3 {
    background-size: 19%;
  }

  .recruit_flow2 .recruit_flow_content4,
  .recruit_flow2 .recruit_flow_content5,
  .recruit_flow .recruit_flow_content3 {
    background-size: 16%;
  }
}

/*　//////////////////////////////////////////////////
　highschool
//////////////////////////////////////////////////　*/

.highschool_container {
  position: relative;
  background-color: #f1f9ff;
  background-image: radial-gradient(circle, rgba(0, 166, 227, 0.17) 3px, transparent 3px);
  background-position: 0 0;
  background-size: 16px 16px;
  background-attachment: fixed;
  z-index: 0;
}

.highschool_container .top_scroll_down {
  bottom: 100px;
  z-index: 2;
}

.highschool_container .top_scroll_down a {
  color: #00a6e3;
  text-shadow: 1px 1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, -1px -1px 0 #fff;
}

.header_nav_content {
  position: fixed;
  width: calc(100% - 200px);
  top: 40px;
  right: 0%;
  display: flex;
  justify-content: center;
  z-index: 3;
}

.header_nav_content_in {
  padding: 20px 30px;
  width: 70%;
  display: flex;
  justify-content: space-between;
  background-color: #fff;
  border-radius: 99px;
}

.header_nav .header_logo a img {
  padding-top: 2px;
  width: 160px;
}

.header_nav_list {
  display: flex;
  column-gap: 3rem;
}

.header_nav_list li a,
.footer_nav_list li a {
  display: flex;
  column-gap: 3rem;
  font-size: 1.3rem;
  font-weight: 600;
  color: #00a6e3;
}

.header_nav_list li a:hover,
.footer_nav_list li a:hover {
  color: #000;
}

.highschool_container #lottie {
  width: 100%;
  height: 100%;
  display: block;
  overflow: hidden;
  transform: translate3d(0, 0, 0);
  text-align: center;
  opacity: 1;
}

.highschool_video {
  width: 100%;
  max-width: 1200px;
  height: 100%;
  margin-top: 100px;
  margin-bottom: 100px;
  text-align: center;
  overflow: hidden;
  aspect-ratio: 16 / 9;
}

.highschool_video iframe {
  width: 100%;
  height: 100%;
}

.highschool_message {
  margin-top: 100px;
  margin-bottom: 100px;
}

.highschool_message_title {
  position: relative;
}

.highschool_message_title .highschool_bgi {
  position: absolute;
  top: 27%;
  left: -40px;
  width: 108%;
  z-index: -1;
}

.highschool_about_title .highschool_bgi,
.highschool_member .highschool_bgi {
  position: absolute;
  top: 45%;
  left: -40px;
  width: 70%;
  z-index: -1;
}

.highschool_title1 {
  width: 50%;
  margin: 0 auto;
  margin-bottom: 40px;
}

.highschool_title1 img {
  width: 100%;
}

.highschool_container p {
  font-weight: 600;
  line-height: 3rem;
}

.highschool_message p {
  text-align: center;
}

.highschool_title2 {
  width: 100%;
}

.highschool_title2 img {
  width: 100%;
}

.highschool_about {
  margin-bottom: 100px;
}

.highschool_about_title {
  position: relative;
  padding-bottom: 80px;
}

.highschool_about_txt {
  position: absolute;
  top: 55%;
  left: 20px;
}

.highschool_member {
  position: relative;
  background-color: #00a6e3;
  z-index: 0;
}

.highschool_member section {
  position: relative;
}

.highschool_member .highschool_about_txt {
  color: #fff;
}

.highschool_col {
  padding-bottom: 40px;
  width: 100%;
  display: flex;
  justify-content: space-between;
}

.highschool_col_in {
  width: 48%;
}

.highschool_col_in .highschool_col_img {
  width: 100%;
  border-radius: 40px;
}

.highschool_col_in .highschool_col_img2 {
  width: 100%;
}

.highschool_col_in .highschool_col_img3 {
  width: 100%;
  border-radius: 0;
}

.highschool_col_in .highschool_col_title {
  margin-bottom: 40px;
  width: 80%;
}

.highschool_col_txt span {
  color: #00a6e3;
  font-weight: 700;
}

.highschool_member .highschool_col_txt {
  color: #fff;
}

.highschool_step,
.highschool_step2 {
  padding: 30px 40px;
  background-color: #fff;
  border: solid 2px #3dc2ea;
  border-radius: 40px;
}

.highschool_step ul li {
  padding: 20px 0 10px 0;
  border-bottom: solid 1px #ccd9e2;
}

.highschool_step2 ul li {
  padding: 20px 0 10px 0;
}

.highschool_step ul li:last-child {
  border-bottom: 0;
}

.highschool_step2 ul li .highschool_step2_label {
  display: flex;
}

.highschool_step ul li span,
.highschool_step2 ul li span {
  height: fit-content;
  padding: 5px 20px;
  font-size: 1.4rem;
  font-weight: 500;
  color: #fff;
  border-radius: 99px;
}

.highschool_step ul li span.step_b,
.highschool_step2 ul li span.step_b {
  background-color: #00a6e3;
}

.highschool_step ul li span.step_m,
.highschool_step2 ul li span.step_m {
  background-color: #ed1e79;
}

.highschool_step ul li span.step_c,
.highschool_step2 ul li span.step_c {
  background-color: #3dc2ea;
}

.highschool_step ul li span.step_y,
.highschool_step2 ul li span.step_y {
  color: #000;
  background-color: #fff102;
}

.highschool_step ul li p {
  font-size: 1.4rem;
  margin-top: 10px;
}

.highschool_step2 ul li p {
  font-size: 1.4rem;
  font-weight: 500;
  margin-top: 10px;
}

.highschool_step2 ul li .highschool_step2_label p {
  margin-top: 0;
  margin-left: 20px;
  font-weight: 700;
}

.highschool_environment {
  padding-bottom: 150px;
}

.highschool_sub_title img {
  width: 35%;
  margin-bottom: 40px;
}

.highschool_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.highschool_list li {
  position: relative;
  margin-bottom: 20px;
  vertical-align: middle;
  height: 100px;
  width: 31%;
  text-align: center;
  color: #00a6e3;
  background-color: #fff;
  border: solid 2px #3dc2ea;
  border-radius: 20px;
}

.highschool_list li p {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  white-space: nowrap;
}

.highschool_list li p span {
  font-size: 1.4rem;
}

.footer_highschool_nav {
  display: none;
}

@media (max-width: 1480px) {
  .highschool_video {
    width: 90%;
    height: auto;
    aspect-ratio: 16 / 9;
  }

}

@media (max-width: 1350px) {
  .highschool_about_txt p {
    max-width: 50vw;
  }

  .highschool_about_title {
    padding-bottom: 130px;
  }

  .highschool_about_txt {
    top: 50%;
  }

}

@media (max-width: 1240px) {
  .highschool_about_title {
    padding-bottom: 20%;
  }

  .highschool_about_txt {
    top: 45%;
  }

}

@media (max-width: 1150px) {
  .header_nav_content_in {
    width: 90%;
  }

  .highschool_about_title {
    padding-bottom: 25%;
  }

  .highschool_about_txt {
    top: 40%;
  }
}

@media (max-width: 1050px) {
  .highschool_about_txt p {
    font-size: 1.4rem;
  }

  .highschool_list li p span {
    font-size: 1.2rem;
  }
}

@media (max-width: 980px) {
  .highschool_container .top_scroll_down {
    display: none;
  }

  .header_nav_list {
    column-gap: 2rem;
  }

  .header_nav_list li a {
    font-size: 1.2rem;
  }

  .highschool_container p {
    font-size: 1.4rem;
  }

  .highschool_message_title .highschool_bgi {
    top: 34%;
    left: -40px;
    width: 112%;
  }

  .highschool_title1 {
    width: 70%;
  }

  .highschool_about_title {
    padding-bottom: 28%;
  }

  .highschool_about_txt {
    top: 35%;
  }

  .highschool_about_txt p {
    width: 43vw;
  }

  .highschool_sub_title img {
    width: 80%;
  }

  .highschool_list li {
    width: 48%;
  }
}

@media (max-width: 945px) {
  .highschool_about_title {
    padding-bottom: 35%;
  }

  .highschool_about_txt {
    top: 32%;
  }
}

@media (max-width: 880px) {
  .header_nav_list {
    column-gap: 1rem;
  }

  .header_nav .header_logo a img {
    width: 120px;
  }

  .header_nav_list li a {
    font-size: 1rem;
  }

  .highschool_about_title {
    padding-bottom: 45%;
  }

  .highschool_about_txt {
    top: 30%;
  }
}

@media (max-width: 780px) {

  .highschool_container #lottie {
    margin-top: 60px;
  }

  .highschool_about_title {
    padding-bottom: 35%;
  }

  .highschool_about_txt {
    top: 57%;
    left: -3px;
  }

  .highschool_about_txt p {
    max-width: 100%;
    width: 100%;
    line-height: 2.5rem;
  }

  .footer_highschool_nav {
    display: block;
    position: fixed;
    width: 100%;
    bottom: 0px;
    right: 0;
    opacity: 1;
    background-color: #fff;
    z-index: 3;
  }

  .footer_nav_list {
    width: 100%;
    display: flex;
    justify-content: space-around;
  }

  .footer_nav_list li {
    padding: 20px;
  }

  .footer_nav_list li a br {
    display: none;
  }

  .header_nav {
    display: none;
  }

  .highschool_col {
    flex-wrap: wrap;
  }

  .highschool_col_in {
    width: 100%;
    margin-bottom: 40px;
  }

  .highschool_col_reverse {
    flex-direction: column-reverse;
  }
}

@media (max-width: 703px) {
  .highschool_about_title {
    padding-bottom: 53%;
  }

  .highschool_about_txt {
    top: 48%;
  }
}

@media (max-width: 680px) {
  .highschool_message .highschool_bgi {
    top: 30%;
    left: -30px;
  }

  .highschool_about .highschool_bgi,
  .highschool_member .highschool_bgi {
    left: -30px;
  }
}

@media (max-width: 590px) {
  .highschool_about_title {
    padding-bottom: 60%;
  }

  .highschool_about_txt {
    top: 43%;
  }
}

@media (max-width: 540px) {
  .highschool_message_title .highschool_bgi {
    top: 24%;
  }
}

@media (max-width: 500px) {
  .highschool_about_title {
    padding-bottom: 70%;
  }

  .highschool_about_txt {
    top: 38%;
  }
}

@media (max-width: 491px) {
  .highschool_message_title .highschool_bgi {
    top: 20%;
    left: -20px;
  }

  .highschool_about_title .highschool_bgi,
  .highschool_member .highschool_bgi {
    left: -20px;
  }

  .footer_nav_list li a br {
    display: block;
  }

  .highschool_list li p span {
    font-size: 1rem;
  }
}

@media (max-width: 430px) {
  .highschool_about_title {
    padding-bottom: 90%;
  }

  .highschool_about_txt {
    top: 32%;
  }
}

@media (max-width: 370px) {
  .highschool_about_title {
    padding-bottom: 120%;
  }

  .highschool_about_txt {
    top: 30%;
  }
}

/*　//////////////////////////////////////////////////
　career
//////////////////////////////////////////////////　*/

.career_flow {
  display: flex;
  justify-content: space-between;
}

.career_flow li {
  position: relative;
  margin-bottom: 40px;
  padding: 20px;
  width: 18%;
  background-color: #fff;
  border-radius: 40px;
}

.career_flow li .arrow_right {
  position: absolute;
  top: 60px;
  right: -15px;
  z-index: 1;
}

.career_flow li p {
  font-weight: 400;
}

.career_flow li:last-child {
  background-color: #00a6e3;
}

.career_flow_num {
  height: 25px;
  margin-bottom: 10px;
  padding: 4px 15px 0 15px;
  display: inline-block;
  font-family: "Josefin Sans", sans-serif;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 2rem;
  color: #fff;
  background-color: #00a6e3;
  border-radius: 99px;
}

.career_flow li p.career_flow_title {
  font-size: 2rem;
  font-weight: 500;
  color: #00a6e3;
}

.career_flow li .career_flow_content5 p,
.career_flow li .career_flow_content5 p.career_flow_title {
  color: #fff;
}

.career_flow li .career_flow_content5 p.career_flow_num {
  color: #00a6e3;
  background-color: #fff;
}

.career_flow_content1,
.career_flow_content2,
.career_flow_content3,
.career_flow_content4 {
  position: relative;
  background-repeat: no-repeat;
  background-position: top right;
  background-size: 50%;
}

.career_flow_content2 {
  background-size: 40%;
}

.career_flow_content1 {
  background-image: url(../images/career/career_bgi1.svg);
}

.career_flow_content2 {
  background-image: url(../images/career/career_bgi2.svg);
}

.career_flow_content3 {
  background-image: url(../images/career/career_bgi3.svg);
}

.career_flow_content4 {
  background-image: url(../images/career/career_bgi4.svg);
}

.career_mail {
  color: #000;
  text-decoration: underline;
}

.career_mail:hover {
  text-decoration: none;
  transition: .3s;
}

.career_link {
  position: relative;
  width: 100%;
  max-height: 500px;
  min-height: 150px;
  height: 18vw;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 20px;
}

.career_link a {
  display: block;
  width: 100%;
  max-height: 500px;
  height: 18vw;
}

.career_link {
  background: linear-gradient(rgba(0, 166, 227, 0.7647058824) 0%, rgba(0, 166, 227, 0.7647058824) 100%), url("../images/career/career_link_bg.jpg");
  background-size: cover;
}

.career_link:hover {
  background-image: linear-gradient(rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.9)), url("../images/career/career_link_bg.jpg");
  background-size: cover;
  transition: 0.3s;
}

.career_link_title {
  position: absolute;
  bottom: 10px;
  left: 40px;
}

.career_link_title .title3,
.career_link_title .title4 {
  color: #fff;
}

.career_link a:hover .title3,
.career_link a:hover .title4 {
  color: #00a6e3;
}

.career_link a .arrow_right {
  position: absolute;
  top: auto;
  bottom: 35px;
  right: 40px;
  display: inline-block;
  place-content: center;
  vertical-align: middle;
  text-align: center;
  background: #fff;
  width: 34px;
  height: 34px;
  border-radius: 100vmax;
}

.career_link a .arrow_right::before,
.career_link a .arrow_right::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

.career_link a .arrow_right::before {
  background: #00a6e3;
  width: 12px;
  height: 1px;
}

.career_link a .arrow_right::after {
  width: 9px;
  height: 9px;
  border: 1px solid #00a6e3;
  border-left: 0;
  border-bottom: 0;
  transform: rotate(45deg);
  transform-origin: center;
}

.career_link a:hover .arrow_right {
  background: #00a6e3;
  transform: scale(1.2);
  transition: 0.3s;
}

.career_link a:hover .arrow_right::before {
  background: #fff;
  width: 10px;
  height: 1px;
  transition: 0;
}

.career_link a:hover .arrow_right::after {
  border: 1px solid #fff;
  border-left: 0;
  border-bottom: 0;
  width: 8px;
  height: 8px;
  transition: 0;
}

@media (max-width: 980px) {
  .career_flow {
    flex-wrap: wrap;
  }

  .career_flow li {
    padding: 40px 20px;
    width: 100%;
  }

  .career_flow li .arrow_right {
    top: auto;
    bottom: -15px;
    left: 48%;
    transform: rotate(90deg);
  }

  .career_flow_content1,
  .career_flow_content3,
  .career_flow_content4 {
    background-size: 15%;
  }

  .career_flow_content2 {
    background-size: 12%;
  }
}

@media (max-width: 640px) {

  .career_flow_content1,
  .career_flow_content3,
  .career_flow_content4 {
    background-size: 24%;
  }

  .career_flow_content2 {
    background-size: 19%;
  }
}

@media (max-width: 480px) {

  .career_link_title .title3 {
    font-size: 2.5rem;
  }
}


/*　//////////////////////////////////////////////////
　entry
//////////////////////////////////////////////////　*/
.contact_container .contents_table tr th {
  width: 30%;
}

.contents_table td input,
.contents_table td select {
  font-family: "Noto Sans JP", sans-serif;
  padding: 10px 20px;
  width: 100%;
  font-weight: 500;
  background-color: #f1f9ff;
  border: solid 1px #ccd9e2;
  border-radius: 99px;
}

.contents_table td input::placeholder {
  color: #ccd9e2;
}

.contents_table td textarea {
  font-family: "Noto Sans JP", sans-serif;
  padding: 10px 20px;
  width: 100%;
  min-height: 150px;
  background-color: #f1f9ff;
  border: solid 1px #ccd9e2;
  border-radius: 20px;
  resize: none;
}

.contact_select {
  position: relative;
}

.contact_select::after {
  content: "";
  position: absolute;
  top: 15px;
  right: 20px;
  width: 8px;
  height: 8px;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  transform: rotate(45deg);
  pointer-events: none;
}

.contact_select:active::after {
  content: "";
  position: absolute;
  top: 20px;
  right: 20px;
  width: 8px;
  height: 8px;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  transform: rotate(225deg);
  pointer-events: none;
}

.contact_select select {
  -webkit-appearance: none;
  appearance: none;
}

.contact_text_area {
  text-align: center;
}

/* .contact_text_area input[type=checkbox] {
  display: none;
} */

.check_label {
  padding-left: 20px;
  box-sizing: border-box;
  cursor: pointer;
  display: inline-block;
  padding: 5px 30px;
  position: relative;
  width: auto;
  font-size: 1.6rem;
  font-weight: 500;
}

.check_label::before {
  position: absolute;
  margin-top: -12px;
  content: '';
  display: block;
  height: 25px;
  width: 25px;
  left: -10px;
  top: 50%;
  background: #f1f9ff;
  border: 1px solid #ccd9e2;
  border-radius: 8px;
}

.check_label::after {
  position: absolute;
  margin-top: -7px;
  content: '';
  display: block;
  height: 12px;
  width: 8px;
  left: -2px;
  top: 50%;
  opacity: 0;
  border-right: 3px solid #00a6e3;
  border-bottom: 3px solid #00a6e3;
  transform: rotate(45deg);
}

.check_label.clicked::after {
  opacity: 1;
}

.contact_small_txt {
  font-size: 1.4rem;
}

.contact_send_btn {
  margin: 0 auto;
  display: block;
  width: 250px;
  position: relative;
  padding: 15px 40px;
  font-size: 1.6rem;
  font-weight: 500;
  text-align: center;
  color: #fff;
  background-color: #00a6e3;
  border: solid 3px #3dc2ea;
  border-radius: 9999px;
}

.contact_send_btn input {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
  font-weight: 500;
  text-align: center;
  color: #fff;
  background-color: rgba(0, 166, 227, 0);
  border: none;
}

.wpcf7-spinner {
  display: none;
}

.contact_send_btn:hover {
  color: #3dc2ea;
  background-color: #fff;
}

.contact_send_btn:hover input {
  color: #3dc2ea;
}

.contact_send_btn .arrow_right {
  position: absolute;
  top: 20%;
  right: 10px;
  background-color: rgba(0, 166, 227, 0);
  display: inline-block;
  place-content: center;
  vertical-align: middle;
  text-align: center;
  width: 34px;
  height: 34px;
  border-radius: 100vmax;
}

.contact_send_btn .arrow_right::before,
.contact_send_btn .arrow_right::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

.contact_send_btn .arrow_right::before {
  background: #fff;
  width: 12px;
  height: 1px;
}

.contact_send_btn .arrow_right::after {
  width: 9px;
  height: 9px;
  border: 1px solid #fff;
  border-left: 0;
  border-bottom: 0;
  transform: rotate(45deg);
  transform-origin: center;
}

.contact_send_btn:hover .arrow_right::before {
  background: #3dc2ea;
  transition: 0.3s;
}

.contact_send_btn:hover .arrow_right::after {
  border: 1px solid #3dc2ea;
  border-left: 0;
  border-bottom: 0;
}

@media (max-width: 980px) {
  .contact_container .contents_table tr th {
    width: 100%;
  }

  .contents_table tr td {
    padding: 30px 20px;
  }
}

/*　//////////////////////////////////////////////////
　footer
//////////////////////////////////////////////////　*/
footer {
  width: 100%;
  background-color: #00a6e3;
}

.footer_in {
  width: 1200px;
  margin: 0 auto;
  padding-top: 200px;
  display: flex;
  justify-content: space-between;
  gap: 3rem;
}

.footer_l {
  width: 300px;
}

.footer_l .entry_btn,
.footer_r .entry_btn {
  max-width: 250px;
}

.footer_l .entry_btn a {
  display: block;
  font-size: 1.6rem;
  width: 100%;
  height: 100%;
  margin: 15px auto;
  white-space: nowrap;
}

.footer_logo img {
  width: 300px;
}

.footer_title {
  font-family: "Josefin Sans", sans-serif;
  font-size: 1.6rem;
  font-weight: 500;
  color: #fff;
}

.footer_r {
  width: 65%;
}

.footer_nav {
  display: flex;
  justify-content: space-between;
}

.footer_nav h3 a,
.footer_nav h3 span {
  font-size: 1.6rem;
  font-weight: 500;
  color: #fff;
}

.footer_nav h3.footer_nav_title {
  padding-bottom: 10px;
  border-bottom: solid 1px #fff;
}

.footer_nav h3 a:hover,
.footer_nav ul li a:hover {
  color: #000;
}

.footer_nav ul {
  border-top: solid 1px #fff;
  padding-top: 20px;
  line-height: 3rem;
}

.footer_nav ul li {
  position: relative;
  margin-left: 15px;
}

.footer_nav ul li::before {
  position: absolute;
  top: 50%;
  left: -15px;
  content: "";
  width: 8px;
  height: 1px;
  background-color: #fff;
}

.footer_nav ul li a {
  color: #fff;
  font-size: 1.4rem;
  font-weight: 500;
  color: #fff;
}

.footer_r .entry_btn {
  display: none;
}

.footer_b {
  position: relative;
  width: 1200px;
  margin: 0 auto;
  padding-bottom: 200px;
}

.footer_b_in {
  position: relative;
  display: flex;
}

.footer_k_logo img {
  width: 120px;
}

.footer_k_title {
  position: absolute;
  top: 35%;
  left: 140px;
  font-family: "Josefin Sans", sans-serif;
  font-size: 1.6rem;
  font-weight: 500;
  color: #fff;
}

.copy_right {
  font-size: 1.4rem;
  font-weight: 500;
  color: #fff;
}

.page_top {
  position: absolute;
  right: 50px;
  top: 73px;
}

.page_top a {
  position: relative;
  font-size: 1.4rem;
  font-weight: 500;
  color: #fff;
}

@media (max-width: 1450px) {

  .footer_in,
  .footer_b {
    width: 95%;
  }

  .footer_nav {
    flex-wrap: wrap;
    justify-content: left;
    gap: 3rem;
  }

  .footer_nav ul li a {
    white-space: nowrap;
  }
}

@media (max-width: 1040px) {
  .footer_l {
    width: 240px;
  }

  .footer_logo img {
    width: 240px;
  }
}

@media (max-width: 980px) {

  .footer_in,
  .footer_b {
    width: 90%;
  }

  .footer_in {
    flex-wrap: wrap;
  }

  .footer_l,
  .footer_r {
    width: 100%;
  }

  .footer_l .entry_btn {
    display: none;
  }

  .footer_r .entry_btn {
    display: block;
  }

  .footer_logo img {
    width: 300px;
  }
}

@media (max-width: 540px) {
  .footer_in {
    padding-top: 100px;
  }

  .footer_b {
    padding-bottom: 100px;
  }

  .page_top {
    top: -120px;
  }

  .copy_right {
    font-size: 1.2rem;
  }
}

/*==================================================
虹アニメーション関連css
===================================*/
aside {
  z-index: 2;
}

/* 各コンテナのスタイル */
.full-screen {
  height: 100vh;
}

.container-ver1,
.container-ver2,
.container-ver3,
.container-ver3-3,
.container-people,
#trigger-route-1 {
  position: relative;
  width: 100%;
  height: 100%;
}

.container-ver3,
.container-ver3-3 {
  height: 600px;
}

/* 事業紹介 #niji3 .container-ver3 .niji-ver3 */
.niji-ver3 {
  width: 2000px;
  top: 0;
  left: -580px;
}

.top_business h2,
.top_business h3,
.top_business h4,
.top_business h5,
.top_business .top_business_content {
  z-index: 1;
}

/* 社員を知る #niji1 .container-ver1 .niji-ver1 */
.niji-ver1 {
  width: 2000px;
  top: -700px;
  left: -500px;
}

.top_people h2,
.top_people h3,
.top_people h4,
.top_people h5,
.top_people .top_people_container,
.top_people .tab_content {
  z-index: 1;
}

/* 若手座談会 #niji-ver3-2 .container-ver3-3 .niji-ver3 */
#niji-ver3-2 {
  top: -100px;
  left: -550px;
}

.top_people_talk img h4,
.top_people_talk img h5,
.top_people_talk img div,
.top_people_talk_content h4,
.top_people_talk_content h5,
.top_people_talk_content div {
  z-index: 1;
}

/* 採用情報 #niji2 .container-ver2 .niji-ver2 */
#niji2 {
  top: -200px;
  right: 0;
}

/* 環境を知る #niji1_whitetokade .niji-ver-whitetokade .niji-ver-whitetokade */
#niji1_whitetokade {
  top: 300px;
  right: 0;
}

.top_environment h2,
.top_environment h3,
.top_environment h4,
.top_environment h5,
.top_environment .top_environment_content,
.top_environment .top_environment_content_r,
.top_environment div {
  z-index: 1;
}

/* 社員インタビュー #nijipeople .container-ver1 .niji-people */
.niji-people {
  width: 2000px;
  top: -450px;
  left: -500px;
}



.page_content_title,
.page_text {
  z-index: 1;
}

/* 事業紹介 #nijibusiness #trigger-route-1 .niji-page */
/* 社員インタビュー #nijipeople #trigger-route-1 .niji-page */


@media (min-width: 980px) {

  #nijibusiness,
  #nijipeople {
    width: 2000px;
    top: -400px;
    right: 0;
  }
}

@media (max-width: 989px) {

  #nijibusiness,
  #nijipeople {
    width: 2000px;
    top: -500px;
    left: -1000px;
  }
}


.page_top_title_area,
.business_img_content img,
/* bisiness */
.page_col_in a img

/* people */
  {
  position: relative;
  z-index: 1;
}

/* 虹のスタイル */
.niji-ver1,
.niji-ver2,
.niji-ver3,
.niji-ver-whitetokade,
.niji-page {
  position: absolute;
  height: auto;
}

/* 虹の位置関係 */
#niji-ver1,
#niji-ver2,
#niji-ver3,
#niji-ver3-2,
#niji1_whitetokade,
.niji-page {
  z-index: 0;
}