@charset "UTF-8";
body {
  font-family: "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #002838;
}

.sp {
  display: none;
}
@media screen and (max-width: 599px) {
  .sp {
    display: block;
  }
}

.header {
  position: fixed;
  z-index: 10;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.07);
  background-color: #fff;
  width: 100%;
  min-height: 50px;
  top: 0;
  left: 0;
}
.header__inner {
  position: relative;
}
.header__logo {
  position: absolute;
  top: 0;
  left: clamp(20px, 5vw, 93px);
}
.header__logoLink img {
  display: block;
  width: 150px;
}
@media screen and (max-width: 1024px) {
  .header__logoLink img {
    width: 50px;
  }
}
.header__upper {
  background-color: #052939;
  color: #fff;
  display: flex;
  gap: 40px;
  justify-content: space-between;
  align-items: center;
  padding-inline: clamp(20px, 5vw, 93px);
  height: 52px;
}
@media screen and (max-width: 1024px) {
  .header__upper {
    display: none;
  }
}
.header__logoCaption {
  font-size: 12px;
  margin-left: 180px;
}
.header__contact {
  border: 1px solid #fff;
  padding: 9px 22px;
  margin-left: auto;
  font-size: 14px;
}
.header__sns {
  display: flex;
}
@media screen and (max-width: 1024px) {
  .header__lower {
    display: none;
  }
}
@media screen and (max-width: 1024px) {
  .header__nav {
    display: none;
  }
}
.header__navList {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 50px;
  padding-inline: clamp(20px, 5vw, 93px);
}
.header__navItem {
  position: relative;
}
.header__navLink {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  gap: 13px;
  padding: 50px 0 15px 0;
  font-size: 14px;
}
.header__navEn {
  font-size: 14px;
  font-weight: bold;
}
.header__navJa {
  font-size: 12px;
  color: #6a92b8;
}

.headerCompany {
  position: relative;
}
.headerCompany:hover {
  width: 200px;
}
.headerCompany:hover .headerCompany__list {
  display: block;
  transition: 0.2s;
}
.headerCompany__list {
  display: none;
  position: absolute;
  top: 100%;
  left: 5%;
  background-color: #d1dde7;
  border: 2px solid #8cabc8;
  font-size: 12px;
  font-weight: bold;
}
.headerCompany__item {
  border-bottom: 1px solid #8cabc8;
  position: relative;
}
.headerCompany__item:first-child::before {
  position: absolute;
  bottom: 100%;
  left: 50%;
  border: solid transparent;
  content: " ";
  border-bottom-color: #8cabc8;
  border-width: 15px;
  margin-left: -15px;
}
.headerCompany__item:last-child {
  border-bottom: none;
}
.headerCompany__link {
  display: block;
  padding: 25px 40px;
  text-align: center;
}

.home .header__navList > li:nth-child(1)::before,
.page-id-19 .header__navList > li:nth-child(2)::before,
.page-id-35 .header__navList > li:nth-child(3)::before,
.page-id-31 .header__navList > li:nth-child(4)::before,
.page-id-25 .header__navList > li:nth-child(5)::before,
.page-id-27 .header__navList > li:nth-child(5)::before,
.page-id-37 .header__navList > li:nth-child(5)::before,
.page-id-29 .header__navList > li:nth-child(5)::before,
.page-id-43 .header__navList > li:nth-child(6)::before,
.page-id-45 .header__navList > li:nth-child(7)::before {
  position: absolute;
  content: "";
  top: 30%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #50e3c3;
  width: 10px;
  height: 10px;
  border-radius: 50%;
}

.spMenu__item--en {
  font-size: 14px;
  font-weight: bold;
  color: #002838;
  display: block;
}
.spMenu__item--ja {
  font-size: 12px;
  color: #6a92b8;
  display: block;
  margin-top: 5px;
}

.section {
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .section__inner--bgWhite {
    padding: 20px;
    background-color: rgba(243, 248, 251, 0.7);
    border-radius: 5px;
  }
}
.section__headline {
  font-size: 60px;
  font-family: "Meiryo UI";
  margin-top: 64px;
}
@media screen and (max-width: 1024px) {
  .section__headline {
    font-size: 40px;
  }
}
.section__headline--ja {
  font-size: 14px;
  color: #6a92b8;
  display: block;
  margin-top: 25px;
}
.section__description {
  font-size: 20px;
  margin-top: 36px;
  line-height: 1.7;
  padding-inline: 20px;
}
@media screen and (max-width: 1024px) {
  .section__description {
    margin-top: 20px;
  }
}
.section__link {
  width: 180px;
  height: 45px;
  color: #fff;
  background-color: #0076dc;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 46px auto 0 auto;
}
@media screen and (max-width: 1024px) {
  .section__link {
    margin-top: 20px;
  }
}
.section__link--left {
  margin-left: 0;
}
@media screen and (max-width: 1024px) {
  .section__link--odd {
    margin-right: 0px;
    margin-left: auto;
  }
}
.section--separate, .section--separateReverse {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-inline: 10vw;
  text-align: left;
}
.section--separate {
  align-items: flex-end;
}
@media screen and (max-width: 1024px) {
  .section--separate {
    text-align: right;
  }
}
.section--separateReverse {
  align-items: flex-start;
}
@media screen and (max-width: 1024px) {
  .section--separateReverse {
    text-align: left;
  }
}
.section--bgGray {
  background-color: #f4f8fb;
}

.hero {
  margin-top: 160px;
  background-image: url("../images/top/hero.png");
  background-color: #fff;
  background-position: center center;
  background-repeat: none;
  background-size: cover;
  height: 44.6vw;
}
@media screen and (max-width: 1024px) {
  .hero {
    margin-top: 50px;
  }
}

.serviceList {
  background-color: #c3f2f4;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 32px;
  padding-block: 48px 40px;
  position: relative;
  flex-wrap: wrap;
  margin-top: 43px;
}
.serviceList__cover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 80px);
  background-color: rgba(0, 0, 0, 0.74);
  color: #fff;
  font-size: 20px;
  margin-block: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.serviceList__info {
  margin-top: 34px;
  font-size: 20px;
  color: #fff;
}

.flatWay__button {
  margin-bottom: 120px;
}

.interviews,
.internship,
.remote {
  background-color: #fff;
  background-position: center center;
  background-repeat: none;
  background-size: cover;
  height: 38.7vw;
  margin-top: 80px;
}
@media screen and (max-width: 1024px) {
  .interviews,
.internship,
.remote {
    margin-top: 20px;
  }
}
@media screen and (max-width: 599px) {
  .interviews,
.internship,
.remote {
    height: 350px;
  }
}
.interviews .section__headline,
.internship .section__headline,
.remote .section__headline {
  margin-top: 0;
}
.interviews .section__description,
.internship .section__description,
.remote .section__description {
  padding-inline: 0;
}

.interviews {
  background-image: url("../images/top/bg-interviews.png");
}
@media screen and (max-width: 599px) {
  .interviews {
    background-image: url("../images/top/bg-interviews-sp.png");
  }
}

.internship {
  background-image: url("../images/top/bg-internship.png");
}
@media screen and (max-width: 599px) {
  .internship {
    background-image: url("../images/top/bg-internship-sp.png");
  }
}

.remote {
  background-image: url("../images/top/bg-remote.png");
}
@media screen and (max-width: 599px) {
  .remote {
    background-image: url("../images/top/bg-remote-sp.png");
  }
}

.news {
  margin-top: 120px;
  padding: 80px 0px 120px;
}
@media screen and (max-width: 1024px) {
  .news {
    margin-top: 60px;
  }
}
.news .section__headline {
  margin-top: 0;
}
.newsList {
  margin-top: 43px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 32px;
  flex-wrap: wrap;
}
.newsItem {
  min-width: 224px;
}
.news__link {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 22px;
  background-color: #3c4ec9;
  flex-direction: column;
  width: 210px;
  height: 224px;
  position: relative;
}
.news__link:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  margin-top: -15px;
  border: 15px solid transparent;
  border-left: 15px solid #3c4ec9;
}
.news__link--en {
  font-size: 28px;
  color: #fff;
}
.news__link--ja {
  font-size: 14px;
  color: #fff;
}

.card {
  background-color: #fff;
  border: solid 1px #d1d3df;
}
.card__link {
  display: block;
}
.card__info {
  padding: 16px 16px 19px 16px;
  font-size: 14px;
  text-align: left;
}
.card__image {
  width: 100%;
  max-width: 224px;
  max-height: 150px;
}
.card__headline {
  font-weight: bold;
}
.card__description {
  margin-top: 9px;
}

.footer {
  color: #fff;
  background-color: #002838;
  text-align: center;
}
.footer__list {
  padding: 17px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  border-bottom: 1px solid rgba(244, 247, 250, 0.1);
}
.footer__item {
  border-right: 1px solid #fff;
  padding-inline: 21px;
}
.footer__item:last-child {
  border-right: none;
}
.footer__copyright {
  display: block;
  padding: 38px;
}

.hamburger {
  height: 50px;
  z-index: 20;
  display: none;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .hamburger {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}
.hamburger__icon {
  width: 20px;
  height: 16px;
}
.hamburger__icon span {
  position: absolute;
  display: inline-block;
  transition: 0.3s;
  width: 20px;
  height: 2px;
  background: black;
  right: 15px;
}
.hamburger__icon span:nth-child(1) {
  top: 15px;
}
.hamburger__icon span:nth-child(2) {
  top: 22px;
}
.hamburger__icon span:nth-child(3) {
  top: 29px;
}
.hamburger .active span:nth-child(1) {
  transform-origin: 0 0;
  transform: translateY(6px) rotate(45deg);
  top: 7px;
  right: 11px;
}
.hamburger .active span:nth-child(2) {
  opacity: 0;
}
.hamburger .active span:nth-child(3) {
  transform-origin: 0 100%;
  transform: translateY(-6px) rotate(-45deg);
  top: 33px;
  right: 11px;
}

.spMenu {
  position: absolute;
  width: 100%;
  top: 49px;
  left: 0;
  z-index: 10;
  display: none;
  background-color: white;
}
.spMenu__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
  padding: 0;
  text-align: center;
}
.spMenu__item {
  width: 100%;
  padding-top: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid gray;
}
.spMenu__item:first-child {
  color: black;
}
.spMenu__item:not(:first-child) {
  color: white;
}

/*=== 9-1-2 丸が動いてスクロールを促す ====*/
/*スクロールダウン全体の場所*/
.scrolldown2 {
  /*描画位置※位置は適宜調整してください*/
  position: absolute;
  bottom: 59px;
  right: 32px;
}

/*Scrollテキストの描写*/
.scrolldown2 span {
  /*描画位置*/
  position: absolute;
  left: -5px;
  bottom: 60px;
  /*テキストの形状*/
  color: #eee;
  font-size: 10px;
  letter-spacing: 0.1em;
  font-family: "Quicksand", sans-serif;
  font-weight: regular;
  /*縦書き設定*/
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}

/* 丸の描写 */
.scrolldown2:before {
  content: "";
  /*描画位置*/
  position: absolute;
  bottom: 0;
  left: -4px;
  /*丸の形状*/
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #eee;
  /*丸の動き1.6秒かけて透過し、永遠にループ*/
  -webkit-animation: circlemove 1.6s ease-in-out infinite, cirlemovehide 1.6s ease-out infinite;
          animation: circlemove 1.6s ease-in-out infinite, cirlemovehide 1.6s ease-out infinite;
}

/*下からの距離が変化して丸の全体が上から下に動く*/
@-webkit-keyframes circlemove {
  0% {
    bottom: 45px;
  }
  100% {
    bottom: -5px;
  }
}
@keyframes circlemove {
  0% {
    bottom: 45px;
  }
  100% {
    bottom: -5px;
  }
}
/*上から下にかけて丸が透過→不透明→透過する*/
@-webkit-keyframes cirlemovehide {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  80% {
    opacity: 0.9;
  }
  100% {
    opacity: 0;
  }
}
@keyframes cirlemovehide {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  80% {
    opacity: 0.9;
  }
  100% {
    opacity: 0;
  }
}
/* 線の描写 */
.scrolldown2:after {
  content: "";
  /*描画位置*/
  position: absolute;
  bottom: 0;
  left: 0;
  /*線の形状*/
  width: 2px;
  height: 50px;
  background: #eee;
}

.referenceList {
  margin: 100px;
  color: #000;
  font-size: 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.referenceList a {
  text-decoration: underline;
}

.breadCrumbs__list {
  margin: 0 auto;
  text-align: center;
  background-color: #fff;
  max-width: 1024px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin-top: 160px;
}
@media screen and (max-width: 1024px) {
  .breadCrumbs__list {
    margin-top: 50px;
  }
}
.breadCrumbs__item {
  padding-inline: 20px;
  margin-block: 20px;
  font-size: 14px;
  line-height: 21px;
}
.breadCrumbs__item + .breadCrumbs__item {
  position: relative;
}
.breadCrumbs__item + .breadCrumbs__item::before {
  position: absolute;
  content: "";
  width: 7px;
  height: 7px;
  border-top: 1px solid #002838;
  border-right: 1px solid #002838;
  top: 6px;
  left: -5px;
  transform: rotate(45deg);
}
.breadCrumbs__link {
  display: block;
  color: #7a1ba6;
}
.subPageSection {
  background-image: url("../images/sub/subPageHeader.png");
  background-color: #fff;
  background-position: top center;
  background-repeat: no-repeat;
  background-size: contain;
  padding: 20px;
}
.subPageSection--noneBg {
  background-image: none;
  margin-top: 0;
  padding-top: 0;
}
.subPageSection__inner {
  margin: 0 auto;
  text-align: center;
  background-color: #fff;
  max-width: 1024px;
  width: 100%;
  padding: 56px 20px 125px 20px;
}
.subPageSection__headlineEn {
  font-size: 14px;
  color: #6a92b8;
  display: block;
  font-family: "Meiryo UI";
  font-weight: bold;
}
.subPageSection__headlineJa {
  display: block;
  font-size: 40px;
  margin-top: 28px;
}
@media screen and (max-width: 1024px) {
  .subPageSection__headlineJa {
    font-size: 40px;
  }
}
.subPageSection__headlineSeparate {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 23px auto 0 auto;
  gap: 8px;
}
.subPageSection__headlineCube {
  display: block;
  width: 12px;
  height: 12px;
}
.subPageSection__headlineCube:nth-child(1) {
  background-color: #50e3c2;
}
.subPageSection__headlineCube:nth-child(2) {
  background-color: #3189d0;
}
.subPageSection__headlineCube:nth-child(3) {
  background-color: #964bb8;
}
.subPageSection__linkList {
  text-align: center;
  margin: 40px auto 80px auto;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}
.subPageSection__link {
  padding: 4px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 96px;
  height: 96px;
  font-family: "Meiryo UI";
  font-size: 12px;
  line-height: 18px;
  color: #fff;
}
.subPageSection__linkWrapper:nth-child(1) .subPageSection__link {
  background-color: #007eea;
}
.subPageSection__linkWrapper:nth-child(2) .subPageSection__link {
  background-color: #fff;
  color: #6a92b8;
  border: 2px solid #8cabc8;
}
.subPageSection__linkWrapper:nth-child(3) .subPageSection__link {
  background-color: #50e3c2;
}
.subPageSection__linkWrapper:nth-child(4) .subPageSection__link {
  background-color: #8cdc9f;
}
.subPageSection__linkWrapper:nth-child(5) .subPageSection__link {
  background-color: #964bb8;
}
.subPageSection__linkWrapper:nth-child(6) .subPageSection__link {
  background-color: #60aff2;
}
.subPageSection__linkWrapper:nth-child(7) .subPageSection__link {
  background-color: #3c4ec9;
}
.subPageSection__pagenation {
  margin-top: 45px;
}

.flatWayPage {
  padding-top: 34px;
}
.flatWayPage__description {
  margin-top: 40px;
  line-height: 28px;
}
.flatWayPage__description--strong {
  margin-top: 84px;
  color: #7a1ba6;
  font-size: 20px;
  line-height: 24px;
}
.flatWayPage__list {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 25px;
  margin-top: 29px;
  padding: 30px;
  width: 100%;
  border: 2px solid #0acda1;
  color: #0acda1;
  font-size: 20px;
  font-weight: bold;
}
@media screen and (max-width: 599px) {
  .flatWayPage__list {
    flex-wrap: wrap;
  }
}

.interviewsPage__headline {
  font-size: 20px;
  line-height: 34px;
  margin-top: 74px;
}
.interviewsPage__description {
  line-height: 28px;
  margin-top: 19px;
}
.interviewsPage__contentWrapper {
  margin: 45px calc(50% - 50vw) 0 calc(50% - 50vw);
  background-color: #fff;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  padding-block: 25px;
  color: #fff;
}
.interviewsPage__contentWrapper--1 {
  background-image: url("../images/sub/interviews-01.png");
}
.interviewsPage__contentWrapper--2 {
  margin-top: 24px;
  background-image: url("../images/sub/interviews-02.png");
}
.interviewsPage__contentWrapper--3 {
  margin-top: 24px;
  background-image: url("../images/sub/company01.png");
  background-position: 25% center;
}
.interviewsPage__contentWrapper--4 {
  margin-top: 24px;
  background-image: url("../images/sub/company02.png");
  background-position: 25% center;
}
.interviewsPage__contentWrapper--5 {
  margin-top: 24px;
  background-image: url("../images/sub/company03.png");
  background-position: 60% center;
}
.interviewsPage__content {
  max-width: 1024px;
  width: 100%;
  margin: 0 auto;
}
.interviewsPage__contentInner {
  padding: 44px 22px;
  text-align: left;
  max-width: 300px;
}
.interviewsPage__contentInner--long {
  padding: 86px 22px;
}
.interviewsPage__contentInner--1 {
  background-color: rgba(49, 137, 208, 0.7);
}
.interviewsPage__contentInner--2 {
  background-color: rgba(126, 98, 236, 0.7);
  margin-left: auto;
}
.interviewsPage__contentInner--3 {
  background-color: rgba(80, 227, 194, 0.85);
}
.interviewsPage__contentHeadline {
  font-size: 28px;
  line-height: 36px;
}
.interviewsPage__contentDescription {
  margin-top: 24px;
  font-size: 14px;
  line-height: 24px;
}
.interviewsPage__contentLink {
  display: flex;
  justify-content: left;
  align-items: center;
  margin-top: 45px;
  gap: 12px;
}
.interviewsPage__contentLinkIcon {
  display: block;
  width: 16px;
  height: 16px;
  background-color: #fff;
  color: #3189d0;
  position: relative;
}
.interviewsPage__contentLinkIcon::before {
  position: absolute;
  content: "";
  width: 7px;
  height: 7px;
  border-top: 1px solid #3189d0;
  border-right: 1px solid #3189d0;
  top: 0;
  left: 0;
}
.interviewsPage__contentLinkIcon::before {
  top: 5px;
  left: 3px;
  transform: rotate(45deg);
}

.interviewContent__headline {
  font-size: 20px;
  color: #0acda1;
  margin-top: 74px;
}
.interviewContent__description {
  margin-top: 19px;
  line-height: 28px;
}
.interviewContent__profile {
  margin-top: 45px;
}
.interviewProfile {
  background-color: #f4f7fa;
  padding: 26px 32px;
  text-align: left;
}
@media screen and (max-width: 599px) {
  .interviewProfile {
    padding: 26px 5px;
  }
}
.interviewProfile__headline {
  line-height: 28px;
  color: #6a92b8;
  font-weight: bold;
}
.interviewProfile__info {
  margin-top: 17px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 40px;
}
.interviewProfile__text {
  line-height: 28px;
}
.interviewProfile__name {
  font-weight: bold;
}
.interviewProfile__description {
  margin-top: 9px;
}
.interviewProfile__link {
  display: block;
  color: #7a1ba6;
  line-height: 28px;
  margin-top: 30px;
  text-decoration: underline;
  word-break: break-all;
}

.interviewQuestions {
  text-align: left;
  margin-top: 69px;
}
.interviewQuestions__headline {
  font-size: 32px;
  line-height: 40px;
  position: relative;
  padding-left: 1em;
  border-bottom: 2px solid #002838;
}
.interviewQuestions__headline::before {
  position: absolute;
  top: 50%;
  left: 0.5em;
  transform: translate(-50%, -50%);
  display: block;
  content: "";
  width: 8px;
  height: 8px;
  background-color: #002838;
}
.interviewQuestions__image {
  display: block;
  max-width: 960px;
  width: 100%;
  height: auto;
  margin: 40px auto 0 auto;
}
.interviewQuestions__QandA {
  margin-top: 40px;
}

.interviewQandA__question {
  color: #0acda1;
  font-weight: bold;
  position: relative;
  padding-left: 2em;
  line-height: 24px;
}
.interviewQandA__question::before {
  position: absolute;
  top: 12px;
  left: 0.5em;
  transform: translate(-50%, -50%);
  display: block;
  content: "";
  width: 1em;
  height: 1px;
  background-color: #0acda1;
}
.interviewQandA__answer {
  margin-top: 27px;
  background-color: #f9fbfc;
  padding: 16px;
}
@media screen and (max-width: 599px) {
  .interviewQandA__answer {
    padding: 5px;
  }
}
.interviewQandA__info {
  display: flex;
  justify-content: left;
  align-items: center;
  gap: 16px;
}
.interviewQandA__name {
  font-weight: bold;
}
.interviewQandA__description {
  margin-top: 16px;
  margin-left: 56px;
  line-height: 32px;
}
.interviewQandA__description--strong {
  font-size: 22px;
  font-weight: bold;
  line-height: 32px;
}
.interviewQandA__description + .interviewQandA__description {
  margin-top: 32px;
}

.pagenation {
  border-top: 1px solid #8cabc8;
  padding: 43px 0 20px 0;
}
.pagenation__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #7a1ba6;
  position: relative;
}
.pagenation__link {
  max-width: 260px;
  width: 50%;
  text-align: left;
}
.pagenation__separate {
  position: absolute;
  content: "";
  width: 1px;
  height: 100%;
  background-color: #8cabc8;
  top: 0;
  left: 50%;
  transform: translate(0 -50%);
}
.pagenation__prev {
  padding-left: 36px;
}
.pagenation__prev--hidden {
  visibility: hidden;
}
.pagenation__prev::before {
  position: absolute;
  content: "";
  width: 15px;
  height: 15px;
  border-top: 1px solid #7a1ba6;
  border-right: 1px solid #7a1ba6;
  top: 50%;
  left: 0;
  transform: rotate(225deg);
}
.pagenation__next {
  padding-right: 36px;
}
.pagenation__next--hidden {
  visibility: hidden;
}
.pagenation__next::after {
  position: absolute;
  content: "";
  width: 15px;
  height: 15px;
  border-top: 1px solid #7a1ba6;
  border-right: 1px solid #7a1ba6;
  top: 50%;
  right: 0;
  transform: rotate(45deg);
}
.pagenation__number {
  font-size: 14px;
}
.pagenation__headline {
  font-size: 20px;
  line-height: 24px;
}

.newsPage__headline {
  margin-top: 74px;
  font-size: 20px;
  line-height: 34px;
}
.newsPage__description {
  margin-top: 22px;
  line-height: 28px;
}
.newsPage__grid {
  margin: 100px auto 0 auto;
}
@media screen and (max-width: 599px) {
  .newsPage__grid {
    margin-top: 40px;
  }
}

.grid {
  display: grid;
  gap: 32px;
  grid-template-columns: repeat(auto-fit, minmax(222px, 1fr));
}
.grid__headline {
  font-size: 14px;
  line-height: 22px;
  font-weight: bold;
  margin-top: 8px;
}
.grid__description {
  font-size: 14px;
  line-height: 22px;
  margin-top: 11px;
  margin-bottom: 25px;
}
.grid__link {
  display: block;
  border: 1px solid #8cabc8;
}
.grid__image {
  display: flex;
  width: 100%;
}

.newsPagenation {
  margin-top: 112px;
}
.newsPagenation__list {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
}
.newsPagenation__link {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  border: 1px solid #002838;
}
.newsPagenation__link--current {
  background-color: #0076dc;
  color: #fff;
}
.newsPagenation__prev, .newsPagenation__next {
  position: relative;
}
.newsPagenation__prev::before, .newsPagenation__next::before {
  position: absolute;
  content: "";
  width: 7px;
  height: 7px;
  border-top: 1px solid #002838;
  border-right: 1px solid #002838;
  top: 42%;
  left: 40%;
  transform: translate(-50%, -50%);
  transform: rotate(45deg);
}
.newsPagenation__prev {
  visibility: hidden;
}
.newsPagenation__prev::before {
  left: 43%;
  transform: rotate(225deg);
}

.history__image {
  margin-top: 80px;
  width: 100%;
  filter: opacity(0.8);
}

.internshipPage__fv {
  background-image: url("../images/sub/internship-fv.png");
  background-color: #fff;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.internshipPage__fvInner {
  margin: 0 auto;
  max-width: 1024px;
  width: 100%;
  padding: 56px 20px 183px 20px;
}
.internshipPage__headline {
  margin-top: 56px;
}
.internshipPage__headlineEn {
  font-size: 60px;
  display: block;
  font-family: "Meiryo UI";
}
.internshipPage__headlineJa {
  font-size: 14px;
  line-height: 24px;
  color: #6a92b8;
  margin-top: 25px;
}
.internshipPage__headlineSeparateWrapper {
  display: inline-block;
  margin-top: 25px;
}
.internshipPage__headlineSeparate {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: 26px;
  gap: 8px;
}
.internshipPage__headlineCube {
  margin-top: 25px;
  display: block;
  width: 12px;
  height: 12px;
}
.internshipPage__headlineCube:nth-child(1) {
  background-color: #50e3c2;
}
.internshipPage__headlineCube:nth-child(2) {
  background-color: #3189d0;
}
.internshipPage__headlineCube:nth-child(3) {
  background-color: #964bb8;
}
.internshipPage__subHeadline {
  font-size: 28px;
  line-height: 34px;
  margin-top: 82px;
}
.internshipPage__description {
  line-height: 28px;
  margin-top: 48px;
}

.skill {
  position: relative;
  z-index: 3;
  padding: 120px 20px 0 20px;
}
.skill__inner {
  margin: 0 auto;
  max-width: 1024px;
  width: 100%;
}
.skill__upper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 32px;
}
@media screen and (max-width: 599px) {
  .skill__upper {
    flex-direction: column;
  }
}
.skill__upper--reverse {
  flex-direction: row-reverse;
  align-items: flex-start;
}
@media screen and (max-width: 599px) {
  .skill__upper--reverse {
    flex-direction: column;
  }
}
.skill__info {
  max-width: 50%;
}
@media screen and (max-width: 599px) {
  .skill__info {
    max-width: 90%;
  }
}
.skill__headline {
  font-size: 24px;
  color: #0acda1;
  line-height: 32px;
  position: relative;
}
.skill__headline::after {
  content: "";
  width: 160px;
  height: 2px;
  background-color: #0acda1;
  position: absolute;
  top: 55px;
  left: 0;
}
.skill__subheadline {
  margin-top: 90px;
  font-size: 20px;
  line-height: 34px;
  margin-left: 16px;
  padding-bottom: 12px;
}
.skill__description {
  margin-top: 27px;
  line-height: 28px;
  margin-left: 16px;
}
.skill__image01 {
  display: block;
  max-width: 496px;
  width: calc(50% - 16px);
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (max-width: 599px) {
  .skill__image01 {
    width: 90%;
  }
}
.skill__image02 {
  margin-top: 53px;
  margin-left: 110px;
  max-width: 502px;
  width: 80%;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (max-width: 599px) {
  .skill__image02 {
    margin-left: 20px;
  }
}
.skill__image03 {
  margin-top: 200px;
  outline: 10px solid #fff;
  box-shadow: 0px 0px 6px 12px rgba(0, 0, 0, 0.1);
}
@media screen and (max-width: 599px) {
  .skill__image03 {
    margin-top: 50px;
    max-width: 90%;
  }
}
.skill__image04 {
  position: relative;
  background-image: url("../images/sub/internship-04.png");
  background-color: #fff;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 282px;
  width: 100%;
  filter: opacity(0.6);
  margin-top: -100px;
  z-index: 2;
}

.work__inner {
  margin: 0 auto;
  max-width: 1024px;
  padding: 120px 20px 36px 20px;
}
@media screen and (max-width: 599px) {
  .work__inner {
    padding-top: 40px;
  }
}
.work__grayBg {
  position: relative;
  z-index: 2;
  background-color: #f4f7fa;
  margin: 172px -80px -80px -80px;
  height: 240px;
}
@media screen and (max-width: 1024px) {
  .work__grayBg {
    display: none;
  }
}
.work__image01 {
  position: absolute;
  bottom: 0;
  left: 100px;
  max-width: 496px;
  width: 50%;
}

.workList {
  position: relative;
  z-index: 5;
  margin: 100px auto;
  max-width: 944px;
  width: 100%;
  padding: 5px 32px 83px 32px;
  box-shadow: 0px 0px 6px 3px rgba(0, 0, 0, 0.1);
}
@media screen and (max-width: 1024px) {
  .workList {
    margin-top: 40px;
    padding: 5px 10px 40px 10px;
  }
}
.workList__headline {
  font-size: 24px;
  line-height: 32px;
  margin-top: 75px;
}
.workList__headline::after {
  display: block;
  margin-top: 31px;
  content: "";
  width: 160px;
  height: 2px;
  background-color: #002838;
}
.workList__description {
  font-size: 20px;
  line-height: 34px;
  margin-top: 64px;
}
.workList__terms {
  margin-top: 10px;
}
.workList__itemHeadline {
  font-size: 20px;
  line-height: 34px;
  margin-left: 30px;
  margin-top: 40px;
  display: flex;
  align-items: center;
  position: relative;
}
.workList__itemHeadline::before {
  position: absolute;
  left: -30px;
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
}
.workList__itemHeadline--purple::before {
  background-color: #964bb8;
}
.workList__itemHeadline--blue::before {
  background-color: #3189d0;
}
.workList__itemHeadline--green::before {
  background-color: #50e3c2;
}
.workList__itemDescription {
  margin-top: 30px;
  line-height: 28px;
  margin-left: 30px;
}
.workList__image02 {
  position: absolute;
  bottom: -250px;
  right: 20px;
  max-width: 376px;
  width: 40%;
}
.workList__image03 {
  position: absolute;
  bottom: -300px;
  left: 50px;
  max-width: 360px;
  width: 40%;
}

.faq {
  margin: 200px auto 0 auto;
  background-color: #f4f7fa;
}
.faq__inner {
  margin: 0 auto;
  width: 100%;
  max-width: 1024px;
  padding-block: 92px;
}
@media screen and (max-width: 1024px) {
  .faq__inner {
    padding-block: 30px;
  }
}

.accordion__question {
  margin-top: 16px;
}
.accordion__question, .accordion__answer {
  background-color: #fff;
  padding: 16px 24px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 32px;
}
.accordion__question::before, .accordion__answer::before {
  font-family: "Meiryo UI";
  content: "Q";
  display: flex;
  justify-content: center;
  align-items: center;
  color: #0acda1;
  width: 48px;
  height: 48px;
  padding: 11px;
  border: 2px solid #0acda1;
  font-size: 28px;
}
.accordion__answer {
  background-color: #fdfdfd;
  padding: 16px 24px;
}
.accordion__answer::before {
  border: 2px solid #7a1ba6;
  color: #7a1ba6;
  font-weight: bold;
  content: "A";
}
.accordion__question::after {
  color: #7a1ba6;
  content: "＋";
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 28px;
  font-weight: bold;
  margin-left: auto;
}
.accordion__answerWrapper--hidden {
  display: none;
}

.dataListWrapper {
  margin-top: 80px;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 0 32px;
}
@media screen and (max-width: 1024px) {
  .dataListWrapper {
    flex-direction: column;
    align-items: center;
  }
}

.dataList {
  width: 100%;
  max-width: 480px;
  padding-block: 16px;
  font-size: 14px;
  line-height: 24px;
  display: flex;
  justify-content: left;
  align-items: flex-start;
  border-top: 1px solid #8cabc8;
  text-align: left;
}
.dataList:last-child {
  border-bottom: 1px solid #8cabc8;
}
.dataList__title {
  width: 130px;
  font-weight: normal;
}
.dataList__title--sitemap {
  width: 180px;
  color: #7a1ba6;
}
.dataList__description {
  width: 350px;
}
@media screen and (max-width: 599px) {
  .dataList__description {
    width: 200px;
  }
}
.dataList__description--sitemap {
  width: 300px;
  color: #7a1ba6;
}
@media screen and (max-width: 599px) {
  .dataList__description--sitemap {
    width: 180px;
  }
}
.dataList__link {
  display: block;
}
.dataList__link + .dataList__link {
  margin-top: 6px;
}
.dataList__link--bar::before {
  content: "− ";
}
.dataList__link--arrow::before {
  content: "> ";
}

.access {
  margin-top: 74px;
}
.access__headline {
  font-size: 20px;
  line-height: 34px;
}
.access__figure {
  margin-top: 46px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 64px;
}
@media screen and (max-width: 1024px) {
  .access__figure {
    flex-direction: column;
    align-items: center;
  }
}
.access__googleMap {
  width: 47%;
}
@media screen and (max-width: 1024px) {
  .access__googleMap {
    width: 90%;
  }
}
.access__googleMap iframe {
  width: 100%;
}
.access__info {
  text-align: left;
  width: 100%;
  max-width: 480px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  justify-content: center;
  align-items: flex-start;
}
.access__item {
  display: flex;
  justify-content: left;
  align-items: center;
  gap: 24px;
}

.contact {
  font-size: 20px;
  line-height: 34px;
  margin-top: 76px;
}

.form {
  margin-top: 68px;
  width: 100%;
  max-width: 660px;
  margin-inline: auto;
}
.form__cation {
  text-align: left;
}
.form__strong {
  color: #d21b46;
}
.form input, .form textarea {
  border: 1px solid #8cabc8;
  width: 100%;
  margin-inline: auto;
  margin-top: 11px;
  min-height: 56px;
  padding: 14px;
  font-size: 20px;
  line-height: 28px;
}
.form__table {
  text-align: left;
}
.form__headline {
  display: block;
  margin-top: 24px;
}
.form__button {
  margin: 40px auto 0 auto;
  display: inline-block;
}
.form__submittion {
  color: #fff;
  letter-spacing: 0.2em;
  width: 180px;
  height: 45px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #0076dc;
  margin-bottom: 20px;
}

form input,
form textarea {
  border: 1px solid #8cabc8;
  width: 100%;
  margin-inline: auto;
  margin-top: 11px;
  min-height: 56px;
  padding: 14px;
  font-size: 20px;
  line-height: 28px;
}

.mw_wp_form {
  margin-top: 68px;
  width: 100%;
  max-width: 660px;
  margin-inline: auto;
}

.messageHero__inner {
  margin-top: 156px;
  background-color: #f4f7fa;
  padding: 88px 32px 174px 32px;
  text-align: left;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 599px) {
  .messageHero__inner {
    margin-top: 50px;
    padding-top: 30px;
    padding-bottom: 70px;
  }
}
.messageHero__headline {
  color: #0acda1;
  font-size: 28px;
  line-height: 34px;
  letter-spacing: 0.1em;
  position: relative;
  z-index: 3;
}
.messageHero__headline::after {
  display: block;
  content: "";
  width: 160px;
  height: 2px;
  background-color: #0acda1;
  margin-top: 29px;
}
.messageHero__post {
  margin-top: 64px;
  line-height: 28px;
  color: #6a92b8;
  z-index: 3;
  position: relative;
}
.messageHero__name {
  margin-top: 19px;
  font-size: 20px;
  line-height: 34px;
  position: relative;
  z-index: 3;
}
.messageHero__image {
  position: absolute;
  top: -80px;
  right: 0px;
  z-index: 2;
}
@media screen and (max-width: 1024px) {
  .messageHero__image {
    right: -100px;
  }
}
@media screen and (max-width: 599px) {
  .messageHero__image {
    width: 250px;
    top: 50px;
    right: -60px;
  }
}
.messageHero__descriptionWrapper {
  background-color: #fff;
  padding: 56px 24px;
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.16);
  width: 94%;
  margin-left: auto;
  margin-top: -50px;
  z-index: 3;
  position: relative;
}
.messageHero__description {
  line-height: 32px;
  text-align: left;
}

.messageDetail {
  margin-top: 83px;
  padding: 56px 32px;
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.16);
}
.messageDetail__headline {
  color: #0acda1;
  position: relative;
  padding-left: 2em;
  line-height: 32px;
  font-size: 20px;
  text-align: left;
}
.messageDetail__headline::before {
  position: absolute;
  top: 14px;
  left: 1em;
  transform: translate(-50%, -50%);
  display: block;
  content: "";
  width: 1em;
  height: 1px;
  background-color: #0acda1;
}
.messageDetail__description {
  margin-top: 43px;
  text-align: left;
  line-height: 32px;
  letter-spacing: 0.1em;
}
.messageDetail__sign {
  text-align: right;
  margin-top: 51px;
  line-height: 32px;
  letter-spacing: 0.1em;
}

.privacy__description {
  margin-top: 80px;
  line-height: 28px;
}
.privacy__info {
  margin-top: 68px;
  border: 1px solid #002838;
  padding: 24px 32px;
}
.privacy__name {
  font-size: 20px;
  line-height: 25px;
}
.privacy__name--small {
  font-size: 18px;
}
.privacy__number {
  border-top: 1px solid #002838;
  padding-top: 16px;
  margin-top: 19px;
  font-size: 14px;
  line-height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px 40px;
  flex-wrap: wrap;
}

.privacyList {
  margin: 69px auto 0 auto;
  text-align: left;
}
.privacyList__item {
  margin-top: 44px;
}
.privacyList__item:first-child {
  margin-top: 0;
}
.privacyList__headline {
  font-size: 24px;
  line-height: 32px;
}
.privacyList__headline--green {
  color: #50e3c2;
  font-weight: bold;
}
.privacyList__description {
  font-size: 14px;
  line-height: 28px;
  margin: 12px 32px 0 32px;
}
@media screen and (max-width: 599px) {
  .privacyList__description {
    margin-inline: 0;
  }
}

.remotePage__headline {
  font-size: 20px;
  line-height: 28px;
  color: #0acda1;
  margin-top: 74px;
}
.remotePage__inner {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 32px;
  margin-top: 43px;
}
@media screen and (max-width: 599px) {
  .remotePage__inner {
    flex-direction: column;
    align-items: center;
  }
}
.remotePage__image {
  max-width: 496px;
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (max-width: 1024px) {
  .remotePage__image {
    max-width: 350px;
  }
}
@media screen and (max-width: 599px) {
  .remotePage__image {
    max-width: 90%;
  }
}
.remotePage__info {
  text-align: left;
  max-width: 480px;
  width: 100%;
}
@media screen and (max-width: 599px) {
  .remotePage__info {
    max-width: 90%;
  }
}
.remotePage__description {
  line-height: 28px;
  margin-top: 29px;
}
.remotePage__description:first-child {
  margin-top: 0;
}
.remotePage__description--bold {
  font-weight: bold;
}
.remotePage__item {
  line-height: 28px;
  font-weight: bold;
  margin-top: 20px;
}
.remotePage__link {
  color: #7a1ba6;
  margin-top: 9px;
}
.remotePage__linkInner {
  text-decoration: underline;
}

.newsSingle {
  padding: 40px;
}
.newsSingle p {
  padding: 20px;
  text-align: left;
  line-height: 20px;
}
/*# sourceMappingURL=style.css.map */