@charset "UTF-8";
.page main {
  padding-top: 181px;
}
@media screen and (max-width: 1880px) {
  .page main {
    padding-top: 11vw;
  }
}
@media screen and (max-width: 1080px) {
  .page main {
    padding-top: 7vw;
  }
}
@media screen and (max-width: 800px) {
  .page main {
    padding-top: 22.4vw;
  }
}

.page section {
  scroll-margin-top: 50px;
}

@media screen and (max-width: 930px) {
  .page section {
    scroll-margin-top: 20px;
  }
}
/* page-header */
.page .header-logo .scrolled {
  display: inherit;
}

.page .header-logo .static {
  display: none;
}

.page .header {
  background-color: #fff;
}

.page .header-entry-btn {
  scale: 0.7;
  top: -60%;
  right: 0%;
}

.page .header-entry-btn p {
  padding-top: 10px;
}

.page .header-entry-btn:hover {
  scale: 0.8;
  top: 0;
  right: 0;
}

.page .header-entry-btn:hover p {
  padding-top: 0px;
}

@media screen and (max-width: 1150px) {
  .page .header-entry-btn {
    scale: 1;
    top: -10px;
    right: 8.5%;
  }
  .page .header-entry-btn p {
    padding-top: 0;
    padding: 0.333vw 0;
  }
  .page .header-entry-btn:hover {
    scale: 1.1;
    top: 10px;
    right: 8.5%;
  }
  .page .header-entry-btn p::after {
    width: 5px;
    height: 5px;
  }
}
@media screen and (max-width: 745px) {
  .page .header-entry-btn p {
    line-height: 80px;
  }
}
@media screen and (max-width: 550px) {
  .page .header-entry-btn {
    top: -18%;
    right: 14%;
  }
  .page .header-entry-btn:hover {
    scale: 1.1;
    top: 5%;
    right: 14%;
  }
  .page .header-entry-btn p::after {
    width: 3px;
    height: 3px;
  }
}
.page .header-content {
  justify-content: space-between;
}

.page .menu-item a {
  color: #000;
}

.page .menu-item:hover a {
  color: #fff;
}

.page .header-logo {
  width: 250px;
  padding-top: 30px;
}
@media screen and (max-width: 1880px) {
  .page .header-logo {
    width: 13.29%;
    padding-top: 1.45vw;
  }
}
@media screen and (max-width: 800px) {
  .page .header-logo {
    width: 41vw;
    padding-top: 5vw;
  }
}

.headerColorScroll .page .header-logo {
  width: 230px;
  padding-top: 10px;
}
@media screen and (max-width: 1880px) {
  .headerColorScroll .page .header-logo {
    width: 12.2vw;
    padding-top: 0.53vw;
  }
}
@media screen and (max-width: 800px) {
  .headerColorScroll .page .header-logo {
    width: 40vw;
    padding-top: 2vw;
  }
}

.page .pc-nav {
  margin-right: 5%;
  width: calc(100% - 336px);
}
@media screen and (max-width: 1880px) {
  .page .pc-nav {
    width: 82.2%;
  }
}

.page .menu-item {
  display: inline-block;
  z-index: 100;
  position: relative;
  padding: 35px 30px;
  transition: 0.5s;
  cursor: pointer;
}
@media screen and (max-width: 1880px) {
  .page .menu-item {
    padding: 1.86vw 1.595vw;
  }
}

.page .sub-menu {
  position: absolute;
  width: 100%;
  top: 130px;
}
@media screen and (max-width: 1880px) {
  .page .sub-menu {
    top: 7.1vw;
  }
}

.page .headerColorScroll .sub-menu {
  top: 101px;
}
@media screen and (max-width: 1880px) {
  .page .headerColorScroll .sub-menu {
    top: 5.5vw;
  }
}

.js-header-pg.headerColorScroll .menu-item {
  padding: 20px 30px;
  z-index: 80;
  position: relative;
  transition-delay: 0.3s;
}
@media screen and (max-width: 1880px) {
  .js-header-pg.headerColorScroll .menu-item {
    padding: 1.06vw 1.59vw;
  }
}

.page .pc-nav-en {
  font-family: "Jost", sans-serif;
  font-size: 3rem;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1880px) {
  .page .pc-nav-en {
    font-size: 1.59vw;
    letter-spacing: 0.0026vw;
  }
}

.page .pc-nav-jp {
  font-size: 1.4rem;
}
@media screen and (max-width: 1880px) {
  .page .pc-nav-jp {
    font-size: 0.85vw;
  }
}

@media screen and (max-width: 800px) {
  .page .scrolled {
    padding-bottom: 1vw;
  }
}
.page .hum-open::after {
  color: #000;
}
.page .hum-open span.border {
  background-color: #000;
}
.page .hum-open span.border::after, .page .hum-open span.border::before {
  background-color: #000;
}
.page .hum-open-btn::after {
  color: #fff;
}
.page .hum-open-btn span.border {
  background-color: #fff;
}
.page .hum-open-btn span.border::after, .page .hum-open-btn span.border::before {
  background-color: #fff;
}

/* ページヘッダー（共通） */
.page-head-img {
  width: 58%;
  position: absolute;
  top: 0;
  right: 0;
}

.page-head-img img {
  height: 31.77vw;
  -o-object-fit: cover;
     object-fit: cover;
}

.page-head-inner {
  background: linear-gradient(90deg, #17E2A4 0%, #25C1A1 58%, transparent 58%, transparent 100%);
  display: flex;
  position: relative;
  justify-content: space-between;
  height: 31.538vw;
}

.page-head-left {
  position: relative;
  margin-left: 10%;
  animation: faderightAnime 0.5s forwards;
  z-index: 10;
  animation-delay: 0.2s;
  opacity: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: visible;
}

@keyframes faderightAnime {
  from {
    opacity: 0;
    transform: translateX(-100px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.page-head-img {
  margin-top: -3.84vw;
  animation: fadedownAnime 0.5s forwards;
  animation-delay: 0.2s;
  opacity: 0;
}

@keyframes fadedownAnime {
  from {
    opacity: 0;
    transform: translateY(-100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.page-title {
  color: #fff;
  top: 20%;
  left: 0;
}

.page-title .pg-h1-jp::before {
  content: "";
  width: 0.5vw;
  height: 0.5vw;
  background-color: #fff;
  border-radius: 50%;
  position: absolute;
  bottom: 0;
  left: -20px;
}

@media screen and (max-width: 930px) {
  .page-title .pg-h1-jp::before {
    width: 5px;
    height: 5px;
    left: -15px;
  }
}
@media screen and (max-width: 550px) {
  .page-title .pg-h1-jp::before {
    width: 4px;
    height: 4px;
    left: -12px;
  }
}
.page-title .pg-h1-en {
  font-size: 8.307vw;
  white-space: nowrap;
  font-family: "Jost", sans-serif;
  letter-spacing: 0.06em;
  font-weight: 700;
}

.page-title .pg-h1-jp {
  font-size: 1.692vw;
  position: relative;
}

#page-head .brunch {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  font-family: "Jost", sans-serif;
  white-space: nowrap;
}

.brunch, .brunch a {
  font-size: 14px;
  color: #fff;
  letter-spacing: 0.06em;
  margin-top: 30px;
}

.brunch-slash {
  padding: 0 5px 0 0;
}

@media screen and (max-width: 930px) {
  .page-title .pg-h1-jp {
    font-size: 18px;
  }
  .page-title::before {
    width: 5px;
    height: 5px;
    left: -10px;
    bottom: 0px;
  }
  .page-head-img {
    margin-top: -30px;
  }
}
@media screen and (max-width: 550px) {
  .page-head-left {
    margin-left: 5%;
  }
  .page-head-img {
    width: 90%;
    margin-left: auto;
  }
  .page-head-img img {
    height: 58vw;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .page-head-inner {
    background: linear-gradient(90deg, #17E2A4 0%, #25C1A1 90%, transparent 90%, transparent 100%);
    display: flex;
    flex-direction: column-reverse;
    justify-content: space-between;
    height: 90.538vw;
  }
  .page-title {
    color: #fff;
    position: relative;
    top: 0;
    left: 5%;
  }
  .page-title::before {
    width: 4px;
    height: 4px;
  }
  .page-title .pg-h1-en {
    font-size: 45px;
  }
  #page-head .brunch {
    margin-left: 5%;
    margin-top: 5%;
    padding-bottom: 10%;
    position: static;
  }
  .brunch, .brunch a {
    font-size: 13px;
  }
  .brunch-slash {
    padding: 0 3px 0 0;
  }
}
/* business 事業内容 */
#business {
  padding: 150px 0;
}

@media screen and (max-width: 930px) {
  #business {
    padding: 100px 0;
  }
}
@media screen and (max-width: 550px) {
  #business {
    padding: 70px 0;
  }
}
.business-content {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}

.business-wrap {
  margin-top: 70px;
}

.a-business {
  display: flex;
  gap: 5%;
  align-items: center;
}

.a-business.reverse {
  flex-direction: row-reverse;
}

.a-business-img,
.a-business-content {
  width: 47.5%;
}

@media screen and (max-width: 720px) {
  .business-wrap {
    margin-top: 50px;
  }
  .a-business {
    display: block;
  }
  .a-business-content {
    width: 80%;
    margin: 0 auto;
    margin-top: 30px;
  }
  .a-business-img {
    width: 60%;
    margin: 0 auto;
  }
}
@media screen and (max-width: 550px) {
  .business-wrap {
    margin-top: 30px;
  }
  .a-business-content {
    width: 100%;
    margin-top: 30px;
  }
  .a-business-img {
    width: 90%;
  }
}
.a-business-title-jp {
  font-size: 35px;
  letter-spacing: 0.06em;
}

.a-business-title-en {
  font-size: 20px;
  letter-spacing: 0.1em;
}

@media screen and (max-width: 1220px) {
  .a-business-title-jp {
    font-size: 2.86vw;
  }
}
@media screen and (max-width: 930px) {
  .a-business-title-jp {
    font-size: 22px;
  }
  .a-business-title-en {
    font-size: 18px;
  }
}
@media screen and (max-width: 550px) {
  .a-business-title-jp {
    font-size: 20px;
  }
  .a-business-title-en {
    font-size: 16px;
  }
}
.business01 .a-business-title-en {
  color: #17E2A4;
}

.business02 .a-business-title-en {
  color: #25C1A1;
}

.business03 .a-business-title-en {
  color: #00A4DB;
}

.business04 .a-business-title-en {
  color: #005ED8;
}

.a-business-title {
  position: relative;
  padding-left: 97px;
}

.business02 .a-business-title {
  padding-left: 75px;
}

.business04 .a-business-title {
  padding-left: 70px;
}

.a-business-title::before {
  content: "";
  width: 88px;
  height: 60px;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

@media screen and (max-width: 930px) {
  .a-business-title {
    padding-left: 65px;
  }
  .business02 .a-business-title {
    padding-left: 50px;
  }
  .business04 .a-business-title {
    padding-left: 45px;
  }
  .a-business-title::before {
    width: 58px;
    height: 40px;
  }
}
@media screen and (max-width: 550px) {
  .a-business-title {
    padding-left: 60px;
  }
  .business02 .a-business-title {
    padding-left: 40px;
  }
  .business04 .a-business-title {
    padding-left: 40px;
  }
  .a-business-title::before {
    width: 50px;
    height: 35px;
  }
}
.business01 .a-business-title::before {
  background-image: url(../img/business-title-01.png);
}

.business02 .a-business-title::before {
  background-image: url(../img/business-title-02.png);
}

.business03 .a-business-title::before {
  background-image: url(../img/business-title-03.png);
}

.business04 .a-business-title::before {
  background-image: url(../img/business-title-04.png);
}

.a-business-text {
  font-size: 16px;
  text-align: justify;
  line-height: 1.95;
  margin-top: 50px;
}

.a-business + .a-business {
  margin-top: 80px;
}

@media screen and (max-width: 720px) {
  .a-business-text {
    margin-top: 30px;
  }
  .a-business + .a-business {
    margin-top: 50px;
  }
}
@media screen and (max-width: 550px) {
  .a-business-text {
    margin-top: 20px;
    line-height: 1.7;
  }
}
/* company */
#company {
  background-color: #F6F4F4;
  padding: 150px 0;
}

@media screen and (max-width: 930px) {
  #company {
    padding: 100px 0;
  }
}
@media screen and (max-width: 550px) {
  #company {
    padding: 70px 0;
  }
}
.company-content {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}

.company-table {
  max-width: 800px;
  width: 100%;
  margin: 0 auto;
  font-size: 16px;
  margin-top: 70px;
}

@media screen and (max-width: 930px) {
  .company-table {
    font-size: 15px;
    margin-top: 50px;
  }
}
@media screen and (max-width: 550px) {
  .company-table {
    font-size: 14px;
    margin-top: 30px;
  }
}
.a-table-row {
  display: flex;
  width: 100%;
  padding: 30px 0;
}
.a-table-row a {
  color: #333;
  transition: all 0.25s;
}
.a-table-row a:hover {
  transition: all 0.25s;
  color: #a6a6a6;
}

@media screen and (max-width: 930px) {
  .a-table-row {
    padding: 20px 0;
  }
}
@media screen and (max-width: 550px) {
  .a-table-row {
    padding: 15px 0;
  }
}
.a-table-row {
  border-top: 1px solid rgba(0, 0, 0, 0.5);
  position: relative;
}

.a-table-row::after {
  content: "";
  width: 188px;
  height: 3px;
  background-color: #00AEA6;
  position: absolute;
  left: 0;
  top: -2px;
}

.a-table-row.last::before {
  content: "";
  width: 188px;
  height: 3px;
  background-color: #00AEA6;
  position: absolute;
  left: 0;
  bottom: -2px;
}

.a-table-row:last-of-type {
  border-bottom: 1px solid #000;
}

.a-table-row dt {
  width: 188px;
  color: #00AEA6;
  font-weight: 500;
  letter-spacing: 0.02em;
}

.a-table-row dd {
  width: calc(100% - 188px);
  letter-spacing: 0.02em;
  line-height: 1.95;
}

@media screen and (max-width: 930px) {
  .a-table-row::after {
    width: 130px;
  }
  .a-table-row.last::before {
    width: 130px;
  }
  .a-table-row dt {
    width: 130px;
  }
  .a-table-row dd {
    width: calc(100% - 130px);
  }
}
@media screen and (max-width: 550px) {
  .a-table-row::after {
    width: 90px;
  }
  .a-table-row.last::before {
    width: 90px;
  }
  .a-table-row dt {
    width: 90px;
  }
  .a-table-row dd {
    width: calc(100% - 90px);
  }
  .a-table-row dd.small {
    font-size: 2.6vw;
  }
}
.a-map-btn.btn02 {
  margin-top: 15px;
}

.a-map-btn.btn02 a {
  width: 220px;
  border: 1px solid #17E2A4;
  background-color: #17E2A4;
  font-size: 16px;
  text-align: left;
  padding-left: 15px;
}

.a-map-btn.btn02 a .btn-maru {
  font-size: 13px;
}

.a-map-btn.btn02 a:hover {
  color: #000;
  background-color: #fff;
}

.a-map-btn.btn02 a::after {
  width: 25px;
  height: 10px;
  top: 38%;
}

.a-map-btn.btn02 a:hover:after {
  background-image: url(../img/read-more-arrow.png);
}

.a-place + .a-place {
  margin-top: 30px;
}

@media screen and (max-width: 930px) {
  .a-map-btn.btn02 {
    margin-top: 10px;
  }
  .a-map-btn.btn02 a {
    scale: 0.9;
    margin-left: -10px;
  }
  .a-place + .a-place {
    margin-top: 20px;
  }
}
@media screen and (max-width: 550px) {
  .a-map-btn.btn02 {
    margin-top: 7px;
  }
  .a-map-btn.btn02 a {
    scale: 0.8;
    margin-left: -30px;
  }
  .a-place + .a-place {
    margin-top: 15px;
  }
}
/* 数字で見る　バナー */
#about-data {
  padding-top: 150px;
  padding-bottom: 250px;
}

@media screen and (max-width: 930px) {
  #about-data {
    padding-top: 100px;
    padding-bottom: 150px;
  }
}
@media screen and (max-width: 550px) {
  #about-data {
    padding-top: 50px;
    padding-bottom: 70px;
  }
}
.data-banner {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
  position: relative;
}

.banner-btn a {
  transition: 0.5s;
  background-color: #fff;
  color: #25C1A1;
  display: block;
  padding: 15px 30px;
  padding-right: 60px;
  border-radius: 300px;
  line-height: 1;
  white-space: nowrap;
  width: -moz-fit-content;
  width: fit-content;
  border: 1px solid #fff;
  transition: 0.5s;
}

.banner-btn a .read-more {
  letter-spacing: 0.1em;
  position: relative;
  padding: 0;
}

.banner-btn a .read-more::after {
  content: "";
  width: 20px;
  height: 10px;
  background-image: url(../img/arrow-green.png);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -30px;
}

.banner-btn a:hover {
  color: #fff;
  background-color: #25C1A1;
}

.banner-btn a:hover .read-more::after {
  background-image: url(../img/data-arrow-white.png);
}

.banner-btn .btn-maru {
  font-size: 10px;
  padding: 0 10px;
}

.banner-btn {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 30px;
}

@media screen and (max-width: 1300px) {
  .banner-btn {
    bottom: 2.3vw;
  }
}
@media screen and (max-width: 930px) {
  .banner-btn {
    scale: 0.95;
  }
  .banner-btn a {
    padding: 10px 20px;
    padding-right: 50px;
  }
}
@media screen and (max-width: 550px) {
  .banner-btn {
    scale: 1.2;
    transform-origin: bottom left;
    bottom: 12vw;
  }
}
/* Environment */
/* data */
#data {
  background-color: #25C1A1;
  padding: 100px 0;
  margin-top: 100px;
}

@media screen and (max-width: 930px) {
  #data {
    padding: 70px 0;
    margin-top: 70px;
  }
}
@media screen and (max-width: 550px) {
  #data {
    padding: 50px 0;
    margin-top: 50px;
  }
}
.data-wrap {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
  margin-top: 70px;
}

@media screen and (max-width: 930px) {
  .data-wrap {
    margin-top: 50px;
  }
}
@media screen and (max-width: 550px) {
  .data-wrap {
    margin-top: 30px;
  }
}
.data-row {
  display: flex;
  align-items: center;
  gap: 1%;
}

.data-row + .data-row {
  margin-top: 1%;
}

.a-data {
  background-color: #fff;
}

.data-wrap.sp-data {
  display: none;
}

@media screen and (max-width: 550px) {
  .data-wrap.sp-data {
    display: inherit;
  }
  .data-wrap.pc-data {
    display: none;
  }
  .data-row.mt-05 {
    margin-top: 0;
  }
}
/* benefit 働きやすさについて */
#benefits {
  padding: 100px 0;
}

@media screen and (max-width: 930px) {
  #benefits {
    padding: 70px 0;
  }
}
@media screen and (max-width: 550px) {
  #benefits {
    padding: 50px 0;
  }
}
.benefits-content {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}

.benefits-wrap {
  display: flex;
  align-items: flex-start;
  gap: 30px 3%;
  flex-wrap: wrap;
  margin-top: 70px;
}

.a-benefit {
  width: 31.33333%;
}

.a-benefit .a-benefit-img {
  aspect-ratio: 338/225;
}

.a-benefit .a-benefit-img img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.a-benefit-title {
  margin: 15px 0;
}

.a-benefit-title p {
  font-size: 22px;
  padding-left: 15px;
  position: relative;
  color: #25C1A1;
  font-weight: 500;
}

.a-benefit-title p::before {
  content: "";
  width: 5px;
  height: 80%;
  background-color: #25C1A1;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

.a-benefit-content {
  font-size: 16px;
  line-height: 1.95;
}

@media screen and (max-width: 930px) {
  .benefits-wrap {
    margin-top: 50px;
  }
  .a-benefit {
    width: 48.5%;
  }
  .a-benefit-title {
    margin: 15px 0;
  }
  .a-benefit-title p {
    font-size: 20px;
  }
}
@media screen and (max-width: 550px) {
  .benefits-wrap {
    display: block;
    margin-top: 30px;
  }
  .a-benefit {
    width: 100%;
  }
  .a-benefit-title {
    margin: 10px 0;
  }
  .a-benefit-title p {
    font-size: 18px;
  }
  .a-benefit-content {
    font-size: 15px;
    line-height: 1.7;
  }
  .a-benefit + .a-benefit {
    margin-top: 30px;
  }
}
/* message */
/* recruit-message */
#recruit-message {
  padding: 100px 0;
}

@media screen and (max-width: 930px) {
  #recruit-message {
    padding: 70px 0;
  }
}
@media screen and (max-width: 550px) {
  #recruit-message {
    padding: 50px 0;
  }
}
.recruit-message-content {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}

.recruit-message-img {
  width: 50%;
  margin: 70px auto;
}

.recruit-message-title {
  font-size: 40px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-align: center;
  line-height: 1.4;
}

.green01 {
  color: #17E2A4;
}

.green02 {
  color: #25C1A1;
}

.recruit-message-text {
  font-size: 20px;
  text-align: center;
  line-height: 1.9;
  margin-top: 70px;
}

.recruit-message-text .ex-bold {
  font-weight: 800;
}

@media screen and (max-width: 930px) {
  .recruit-message-img {
    margin: 50px auto;
  }
  .recruit-message-title {
    font-size: 24px;
  }
  .recruit-message-text {
    font-size: 16px;
    margin-top: 50px;
  }
}
@media screen and (max-width: 550px) {
  .recruit-message-img {
    width: 70%;
    margin: 30px auto;
  }
  .recruit-message-title {
    font-size: 18px;
  }
  .recruit-message-text {
    font-size: 16px;
    margin-top: 30px;
    text-align: justify;
  }
}
/* 代表メッセージ　top-message */
.page #top-message {
  padding: 100px 0;
  background: linear-gradient(90deg, #F6F4F4 0%, #F6F4F4 80%, transparent 80%, transparent 100%);
}

@media screen and (max-width: 930px) {
  .page #top-message {
    padding: 70px 0;
  }
}
@media screen and (max-width: 550px) {
  .page #top-message {
    padding: 50px 0;
  }
}
.pres-message-content {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}

.pres-message-flex {
  display: flex;
  align-items: flex-start;
  gap: 2%;
  margin-top: 70px;
}

.pres-message-left {
  width: 55%;
}

.pres-message-right {
  width: 43%;
}

.pres-message-right img {
  height: 39vw;
  max-height: 475px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 60%;
     object-position: 60%;
}

.ratio-img {
  max-width: 495px;
  width: 100%;
  margin: 0 auto;
  margin-top: 70px;
}

.ratio-table {
  max-width: 495px;
  width: 100%;
  margin: 0 auto;
  margin-top: 70px;
}
.ratio-table .ttl {
  font-size: 20px;
  background: #24C1A0;
  text-align: center;
  color: #fff;
  padding: 15px 0;
  font-weight: 300;
}
@media screen and (max-width: 500px) {
  .ratio-table .ttl {
    font-size: 16px;
    padding: 10px 0;
  }
}
.ratio-table .table li {
  display: flex;
  font-size: 18px;
  border-left: 1px solid #24C1A0;
  border-right: 1px solid #24C1A0;
  border-bottom: 1px solid #24C1A0;
}
@media screen and (max-width: 500px) {
  .ratio-table .table li {
    font-size: 14px;
  }
}
.ratio-table .table li:nth-of-type(even) {
  background: #f1f1f1;
}
.ratio-table .table li p {
  text-align: center;
  width: 50%;
  font-weight: 400;
  padding: 15px 0;
}
@media screen and (max-width: 500px) {
  .ratio-table .table li p {
    padding: 10px 0;
  }
}
.ratio-table .table li p:first-of-type {
  border-right: 1px solid #24C1A0;
}
.ratio-table .attention {
  font-size: 18px;
  font-weight: 300;
  margin-top: 20px;
}
@media screen and (max-width: 500px) {
  .ratio-table .attention {
    font-size: 14px;
    margin-top: 10px;
  }
}

.pres-message-title {
  color: #25C1A1;
  font-size: 35px;
  letter-spacing: 0.06em;
  line-height: 1.5;
}

.pres-message-text {
  font-size: 16px;
  line-height: 2.25;
  margin: 30px 0;
}

.top-sign {
  font-size: 18px;
  letter-spacing: 0.06em;
  line-height: 1.75;
}

@media screen and (max-width: 1220px) {
  .pres-message-title {
    font-size: 2.868vw;
  }
}
@media screen and (max-width: 930px) {
  .pres-message-flex {
    flex-direction: column-reverse;
    margin-top: 50px;
  }
  .pres-message-left {
    width: 100%;
    margin-top: 20px;
  }
  .pres-message-right {
    width: 100%;
  }
  .pres-message-right img {
    height: auto;
    max-height: 1000px;
  }
  .pres-message-title {
    font-size: 25px;
  }
  .pres-message-text {
    font-size: 16px;
    line-height: 2;
    margin: 20px 0;
  }
  .top-sign {
    font-size: 16px;
  }
}
@media screen and (max-width: 550px) {
  .pres-message-flex {
    margin-top: 30px;
  }
  .pres-message-title {
    font-size: 20px;
  }
  .pres-message-text {
    font-size: 15px;
    line-height: 1.7;
    margin: 10px 0;
    text-align: justify;
  }
  .top-sign {
    font-size: 16px;
  }
  .pres-message-text .inline-b {
    display: inline;
  }
}
/* 求める人物像　personality */
#personality {
  padding: 100px 0;
}

.personality-content {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}

.personality-flex {
  display: flex;
  gap: 2%;
  margin-top: 70px;
  align-items: center;
}

.personality-left {
  width: 44%;
}

.personality-right {
  width: 55%;
}

@media screen and (max-width: 930px) {
  .personality-flex {
    display: block;
    margin-top: 50px;
  }
  .personality-left {
    width: 100%;
    margin: 0 auto;
  }
  .personality-right {
    width: 100%;
    margin-top: 20px;
  }
}
@media screen and (max-width: 550px) {
  .personality-flex {
    margin-top: 30px;
  }
}
.personality-title {
  color: #25C1A1;
}

.a-personality-en {
  font-size: 18px;
  letter-spacing: 0.1em;
}

.a-personality-jp {
  font-size: 22.5px;
  letter-spacing: 0.06em;
  font-weight: 500;
  padding-left: 30px;
  position: relative;
}

.a-personality-jp::before {
  content: "";
  width: 26px;
  height: 100%;
  background-image: url(../img/personality-check.png);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  left: 0;
  top: 1px;
}

@media screen and (max-width: 1220px) {
  .a-personality-jp {
    font-size: 1.844vw;
    padding-left: 2.46vw;
  }
  .a-personality-jp::before {
    width: 2.131vw;
  }
}
@media screen and (max-width: 930px) {
  .a-personality-jp {
    font-size: 20px;
    padding-left: 30px;
    margin-top: 5px;
  }
  .a-personality-jp::before {
    width: 24px;
  }
}
@media screen and (max-width: 550px) {
  .a-personality-jp {
    font-size: 18px;
    padding-left: 25px;
  }
  .a-personality-jp::before {
    width: 20px;
  }
}
.a-personality + .a-personality {
  margin-top: 20px;
}

.personality-text {
  font-size: 16px;
  margin-top: 30px;
  line-height: 2.25;
}

@media screen and (max-width: 930px) {
  .a-personality + .a-personality {
    margin-top: 15px;
  }
  .personality-text {
    font-size: 16px;
    margin-top: 20px;
    line-height: 2;
  }
}
@media screen and (max-width: 550px) {
  .a-personality + .a-personality {
    margin-top: 10px;
  }
  .personality-text {
    font-size: 15px;
    margin-top: 15px;
    line-height: 1.9;
  }
}
/* peopleページ */
.page #interview {
  background-color: #fff;
  padding: 100px 0;
  padding-bottom: 200px;
}

.page .a-top-interview-copy {
  color: #000;
}

.page .a-top-interview-label {
  background-color: #F6F4F4;
}

.page #interview .btn01 {
  display: none;
}

.page #crosstalk {
  background-color: #F6F4F4;
  padding: 100px 0;
}

@media screen and (max-width: 930px) {
  .page #interview {
    padding: 70px 0;
  }
  .page #crosstalk {
    padding: 70px 0;
  }
}
@media screen and (max-width: 550px) {
  .page #interview {
    padding: 50px 0;
    padding-bottom: 150px;
  }
  .page #crosstalk {
    padding: 50px 0;
  }
  .page #interview .top-interview-wrap {
    margin-top: 50px;
  }
}
/* worksページ */
#works {
  padding: 100px 0;
}

@media screen and (max-width: 930px) {
  #works {
    padding: 70px 0;
  }
}
@media screen and (max-width: 550px) {
  #works {
    padding: 50px 0;
  }
}
.works-content {
  max-width: 1200px;
  width: 90%;
  margin: 0 auto;
}

.works-btn-wrap {
  display: flex;
  margin-bottom: 100px;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 930px) {
  .works-btn-wrap {
    margin-bottom: 50px;
  }
}

.a-work-btn {
  width: 23.5%;
  height: 80px;
  display: table;
}
@media screen and (max-width: 930px) {
  .a-work-btn {
    width: 24%;
    height: 60px;
  }
}
@media screen and (max-width: 500px) {
  .a-work-btn {
    width: 49%;
    height: 70px;
    margin-bottom: 2%;
  }
}

.a-work-btn a {
  text-decoration: none;
  font-size: 16px;
  letter-spacing: 0.06em;
  line-height: 1.5;
  display: table-cell;
  width: 100%;
  text-align: center;
  color: #fff;
  vertical-align: middle;
  height: -moz-fit-content;
  height: fit-content;
  border-radius: 200px;
  transition: 0.5s;
}
@media screen and (max-width: 930px) {
  .a-work-btn a {
    font-size: 1.9vw;
    letter-spacing: 0em;
    line-height: 1.5;
  }
}
@media screen and (max-width: 500px) {
  .a-work-btn a {
    font-size: 3.6vw;
    letter-spacing: 0em;
    line-height: 1.5;
  }
}

.a-work {
  scroll-margin-top: 150px;
}

@media screen and (max-width: 930px) {
  .a-work {
    scroll-margin-top: 100px;
  }
}
@media screen and (max-width: 550px) {
  .a-work {
    scroll-margin-top: 80px;
  }
}
.work-btn01 a {
  border: 1px solid #17DD9F;
  background-color: #17DD9F;
}

.work-btn02 a {
  border: 1px solid #25BC9C;
  background-color: #25BC9C;
}

.work-btn03 a {
  border: 1px solid #009FD6;
  background-color: #009FD6;
}

.work-btn04 a {
  border: 1px solid #005ED3;
  background-color: #005ED3;
}

.a-work-btn a:hover {
  background-color: #fff;
}

.work-btn01 a:hover {
  color: #17DD9F;
}

.work-btn02 a:hover {
  color: #25BC9C;
}

.work-btn03 a:hover {
  color: #009FD6;
}

.work-btn04 a:hover {
  color: #005ED3;
}

.a-work-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  padding-bottom: 10px;
}

.work01 .a-work-head {
  border-bottom: 1px solid #17DD9F;
}

.work02 .a-work-head {
  border-bottom: 1px solid #25BC9C;
}

.work03 .a-work-head {
  border-bottom: 1px solid #009FD6;
}

.work04 .a-work-head {
  border-bottom: 1px solid #005ED3;
}

.wakaba {
  background-color: #17DD9F;
  width: 180px;
  padding: 10px 30px;
  border-radius: 100px;
}

@media screen and (max-width: 930px) {
  .wakaba {
    width: 150px;
  }
}
@media screen and (max-width: 550px) {
  .a-work-head {
    display: block;
  }
  .wakaba {
    width: 130px;
    padding: 7px 20px;
    margin-left: auto;
    margin-top: 10px;
  }
}
.a-work-title-jp {
  font-size: 30px;
  letter-spacing: 0.06em;
}

.a-work-title-en {
  font-size: 18px;
  letter-spacing: 0.1em;
}

.work01 .a-work-title-en {
  color: #17DD9F;
}

.work02 .a-work-title-en {
  color: #25BC9C;
}

.work03 .a-work-title-en {
  color: #009FD6;
}

.work04 .a-work-title-en {
  color: #005ED3;
}

.a-work-title {
  padding-left: 90px;
  position: relative;
}

.work02 .a-work-title {
  padding-left: 65px;
}

.work03 .a-work-title {
  padding-left: 85px;
}

.work04 .a-work-title {
  padding-left: 60px;
}

.a-work-title::before {
  content: "";
  width: 75px;
  height: 50px;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

@media screen and (max-width: 930px) {
  .a-work-title-jp {
    font-size: 20px;
    letter-spacing: 0.06em;
  }
  .a-work-title-en {
    font-size: 16px;
    letter-spacing: 0.1em;
  }
  .a-work-title {
    padding-left: 70px;
  }
  .work02 .a-work-title {
    padding-left: 50px;
  }
  .work03 .a-work-title {
    padding-left: 65px;
  }
  .work04 .a-work-title {
    padding-left: 45px;
  }
  .a-work-title::before {
    width: 55px;
    height: 40px;
  }
}
@media screen and (max-width: 550px) {
  .a-work-title-jp {
    font-size: 18px;
  }
  .a-work-title-en {
    font-size: 14px;
  }
  .a-work-title {
    padding-left: 52px;
  }
  .work02 .a-work-title {
    padding-left: 38px;
  }
  .work03 .a-work-title {
    padding-left: 50px;
  }
  .work04 .a-work-title {
    padding-left: 35px;
  }
  .a-work-title::before {
    width: 45px;
    height: 30px;
    top: 30%;
  }
  .work02 .a-work-title::before {
    top: 32%;
  }
}
.work01 .a-work-title::before {
  background-image: url(../img/business-title-01.png);
}

.work02 .a-work-title::before {
  background-image: url(../img/business-title-02.png);
}

.work03 .a-work-title::before {
  background-image: url(../img/business-title-03.png);
}

.work04 .a-work-title::before {
  background-image: url(../img/business-title-04.png);
}

#works .system {
  align-items: center;
  margin-top: 35px;
}
#works .system .a-work-title:before {
  width: 74px;
  height: 59px;
  background: url(../img/system_icon.png) no-repeat center/contain;
}
@media screen and (max-width: 930px) {
  #works .system .a-work-title:before {
    width: 54px;
    height: 39px;
  }
}
#works .system .a-work-copy {
  margin-top: 75px;
}
@media screen and (max-width: 930px) {
  #works .system .a-work-copy {
    margin-top: 30px;
  }
}
#works .package {
  align-items: center;
  margin-top: 100px;
}
@media screen and (max-width: 930px) {
  #works .package {
    margin-top: 70px;
  }
}
@media screen and (max-width: 530px) {
  #works .package {
    margin-top: 50px;
  }
}
#works .package .a-work-title:before {
  width: 67px;
  height: 60px;
  background: url(../img/system_package.png) no-repeat center/contain;
}
@media screen and (max-width: 930px) {
  #works .package .a-work-title:before {
    width: 47px;
    height: 40px;
  }
}
#works .package .a-work-copy {
  margin-top: 45px;
}
#works .system .a-work-flex, #works .package .a-work-flex {
  margin-top: 0;
}
@media screen and (max-width: 930px) {
  #works .system .a-work-flex, #works .package .a-work-flex {
    margin-top: 30px;
  }
}
@media screen and (max-width: 930px) {
  #works .system .a-work-copy, #works .package .a-work-copy {
    margin-top: 0;
  }
}
@media screen and (max-width: 930px) {
  #works .system .a-work-title, #works .package .a-work-title {
    padding-left: 65px;
  }
}
#works .scroll-img-box {
  padding: 50px 0 30px;
}

.work-text-last {
  font-weight: 500x;
}

.a-work-flex {
  display: flex;
  gap: 5%;
  align-items: center;
  margin: 50px 0;
  margin-bottom: 0;
}

.a-work-flex.reverse {
  flex-direction: row-reverse;
}

.a-work-left,
.a-work-right {
  width: 47.5%;
}

@media screen and (max-width: 930px) {
  .a-work-flex {
    flex-direction: column-reverse;
    justify-content: flex-start;
  }
  .a-work-flex.reverse {
    flex-direction: column-reverse;
  }
  .a-work-left,
  .a-work-right {
    width: 100%;
  }
  .a-work-left {
    margin-top: 30px;
  }
}
@media screen and (max-width: 550px) {
  .a-work-flex {
    margin: 30px 0;
    margin-bottom: 0;
  }
}
.a-work-copy {
  font-size: 30px;
  letter-spacing: 0.06em;
  line-height: 1.5;
  font-weight: 500;
}

@media screen and (max-width: 1080px) {
  .a-work-copy {
    font-size: 2.777vw;
  }
}
@media screen and (max-width: 930px) {
  .a-work-copy {
    font-size: 25px;
  }
}
@media screen and (max-width: 550px) {
  .a-work-copy {
    font-size: 20px;
  }
}
.work01 .a-work-copy {
  color: #17DD9F;
}

.work02 .a-work-copy {
  color: #25BC9C;
}

.work03 .a-work-copy {
  color: #009FD6;
}

.work04 .a-work-copy {
  color: #005ED3;
}

.a-work-text {
  font-size: 16px;
  line-height: 1.95;
  margin-top: 30px;
}

@media screen and (max-width: 550px) {
  .a-work-text {
    line-height: 1.7;
    margin-top: 10px;
  }
}
.a-work-bottom-btn-wrap {
  display: flex;
  justify-content: center;
  margin: 0 auto;
  gap: 15px 3%;
  margin-top: 50px;
  flex-wrap: wrap;
}

.a-work-bottom-btn a {
  background-color: #000;
  color: #fff;
  font-size: 18px;
  letter-spacing: 0.1em;
  padding: 15px;
  padding-right: 60px;
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 100px;
  position: relative;
  line-height: 1;
  transition: 0.5s;
  border: 1px solid #000;
}

@media screen and (max-width: 930px) {
  .a-work-bottom-btn-wrap {
    flex-direction: column;
    align-items: center;
  }
  .a-work-bottom-btn a {
    width: 410px;
  }
}
.a-work-bottom-btn a::after {
  content: "";
  width: 25px;
  height: 7px;
  background-image: url(../img/arrow-white.png);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 37%;
  right: 15px;
}

.a-work-bottom-btn a .btn-maru {
  font-size: 10px;
  padding: 0 10px;
  display: block;
}

.a-work-bottom-btn a {
  display: flex;
  align-items: center;
}

@media screen and (max-width: 550px) {
  .a-work-bottom-btn-wrap {
    gap: 10px 3%;
    margin-top: 30px;
  }
  .a-work-bottom-btn a {
    font-size: 15px;
    letter-spacing: 0.04em;
    padding: 10px;
    padding-right: 30px;
    width: 307px;
  }
  .a-work-bottom-btn a::after {
    width: 15px;
    right: 10px;
  }
  .a-work-bottom-btn a .btn-maru {
    font-size: 6px;
    padding: 0 10px;
  }
}
.a-work-bottom-btn a:hover {
  background-color: #fff;
  color: #000;
}

.a-work-bottom-btn a:hover:after {
  background-image: url(../img/read-more-arrow.png);
}

.a-work + .a-work {
  margin-top: 150px;
}

@media screen and (max-width: 930px) {
  .a-work + .a-work {
    margin-top: 100px;
  }
}
@media screen and (max-width: 550px) {
  .a-work + .a-work {
    margin-top: 70px;
  }
}
/* エントリーボタン配置 */
.header-entry-btn.top-right {
  top: 100%;
  right: 0%;
  scale: 1;
}

.header-entry-btn.top-right:hover {
  scale: 1.1;
  top: 110%;
  right: 1%;
}

.header-entry-btn.bottom-right {
  top: 33vw;
  right: -1%;
  scale: 0.7;
}

.header-entry-btn.bottom-right:hover {
  scale: 0.8;
  top: 33vw;
  right: 1%;
}

@media screen and (max-width: 550px) {
  .header-entry-btn.bottom-right {
    top: 60vw;
    right: -1%;
    scale: 1;
  }
  .header-entry-btn.bottom-right:hover {
    scale: 1.1;
    top: 60vw;
    right: 1%;
  }
}
.page .header-entry-btn p {
  padding-top: 0;
}

.page .header-content .pc-nav {
  width: 100%;
  margin-right: 0;
}

.headerColorScroll.js-header-pg .header-content .pc-nav {
  width: calc(100% - 230px);
  margin-right: 130px;
}
@media screen and (max-width: 1880px) {
  .headerColorScroll.js-header-pg .header-content .pc-nav {
    width: calc(100% - 12.2vw);
    margin-right: 8%;
  }
}

.header.headerColorScroll.js-header-pg .header-entry-btn {
  scale: 0.7;
  z-index: 85;
  top: -50px;
  right: -50px;
}
@media screen and (max-width: 1880px) {
  .header.headerColorScroll.js-header-pg .header-entry-btn {
    right: -2.5%;
  }
}
@media screen and (max-width: 1880px) {
  .header.headerColorScroll.js-header-pg .header-entry-btn {
    top: -60%;
  }
}

.header.headerColorScroll.js-header-pg .header-entry-btn:hover {
  top: 0%;
  right: 0%;
  scale: 0.7;
}

@media screen and (max-width: 1880px) {
  .header.headerColorScroll.js-header-pg .header-entry-btn:hover {
    top: -5%;
    right: 0%;
    scale: 0.8;
  }
  .header.headerColorScroll.js-header-pg .header-entry-btn p {
    padding-top: 0.33333vw;
  }
}
@media screen and (max-width: 550px) {
  .header.headerColorScroll.js-header-pg .header-entry-btn {
    top: -18%;
    right: 14%;
    scale: 1;
  }
  .header.headerColorScroll.js-header-pg .header-entry-btn:hover {
    top: 0%;
    right: 14%;
    scale: 1;
  }
}
/* スクロールヒント */
.scroll-img-box {
  overflow-x: auto; /* はみ出した時だけスクロールバーが出現する */
  padding: 50px 0;
}

.scroll.schedule .scroll-img-box {
  padding: 20px 0;
}

.scroll-img-box {
  height: -moz-fit-content;
  height: fit-content;
}

.scroll-img-box img {
  width: 100%;
  height: auto;
  min-width: 900px;
}

@media screen and (max-width: 930px) {
  /* スクロールヒント */
  .scroll-img-box {
    padding: 40px 0;
  }
}
/* growth */
#growth {
  padding: 100px 0;
}

@media screen and (max-width: 930px) {
  #growth {
    padding: 70px 0;
  }
}
@media screen and (max-width: 550px) {
  #growth {
    padding: 50px 0;
  }
}
#pg-se_growth {
  scroll-margin-top: 50px;
}

.growth-content {
  max-width: 1200px;
  width: 90%;
  margin: 0 auto;
}

#growth .works-btn-wrap {
  align-items: center;
}

.a-growth-head {
  padding-bottom: 20px;
  border-bottom: 1px solid #17DC9E;
}

.growth03 .a-growth-head {
  border-bottom: 1px solid #009ED5;
}

.growth04 .a-growth-head {
  border-bottom: 1px solid #005ED3;
}

.a-growth-head.flex {
  display: flex;
  gap: 80px;
  align-items: center;
}

@media screen and (max-width: 1150px) {
  .a-growth-head.flex .a-growth-title {
    width: 48%;
  }
}
@media screen and (max-width: 730px) {
  .a-growth-head.flex .a-growth-title {
    width: 100%;
  }
  .a-growth-head.flex {
    display: block;
  }
}
.a-growth-title-jp {
  font-size: 28px;
  letter-spacing: 0.06em;
}

.a-growth-title-en {
  font-size: 18px;
  letter-spacing: 0.1em;
}

@media screen and (max-width: 1150px) {
  .a-growth-title-jp {
    font-size: 25px;
  }
  .a-growth-title-en {
    font-size: 16px;
  }
}
@media screen and (max-width: 730px) {
  .a-growth-title-jp {
    font-size: 18px;
  }
  .a-growth-title-en {
    font-size: 14px;
  }
}
.growth01 .a-growth-title-en {
  color: #08CD8F;
}

.growth02 .a-growth-title-en {
  color: #25BB9B;
}

.growth03 .a-growth-title-en {
  color: #009ED5;
}

.growth04 .a-growth-title-en {
  color: #005ED3;
}

.a-growth-title {
  padding-left: 97px;
  position: relative;
}

@media screen and (max-width: 730px) {
  .a-growth-title + .a-growth-title {
    margin-top: 20px;
  }
}
.a-growth-title.growth02 {
  padding-left: 70px;
}

.a-growth-title::before {
  content: "";
  width: 88px;
  height: 60px;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: 0;
}

@media screen and (max-width: 1150px) {
  .a-growth-title {
    padding-left: 68px;
    position: relative;
  }
  .a-growth-title.growth02 {
    padding-left: 58px;
  }
  .a-growth-title::before {
    content: "";
    width: 60px;
    height: 50px;
  }
}
@media screen and (max-width: 730px) {
  .a-growth-title {
    padding-left: 60px;
    position: relative;
  }
  .a-growth-title.growth02 {
    padding-left: 50px;
  }
  .a-growth-title::before {
    content: "";
    width: 50px;
    height: 40px;
  }
}
.a-growth-title.growth01::before {
  background-image: url(../img/business-title-01.png);
}

.a-growth-title.growth02::before {
  background-image: url(../img/business-title-02.png);
}

.a-growth-title.growth03::before {
  background-image: url(../img/business-title-03.png);
}

.a-growth-title.growth04::before {
  background-image: url(../img/business-title-04.png);
}

.a-growth-title.growth01::after {
  content: "";
  width: 60px;
  height: 1px;
  background-color: #17DC9E;
  rotate: -55deg;
  position: absolute;
  top: 30px;
  right: -60px;
}

@media screen and (max-width: 730px) {
  .a-growth-title.growth01::after {
    display: none;
  }
}
.a-growth-content {
  padding: 50px 0;
  padding-bottom: 0;
}

.a-growth + .a-growth {
  margin-top: 100px;
}

@media screen and (max-width: 930px) {
  .a-growth-content {
    padding: 30px 0;
    padding-bottom: 0;
  }
  .a-growth + .a-growth {
    margin-top: 70px;
  }
}
@media screen and (max-width: 550px) {
  .a-growth-content {
    padding: 20px 0;
    padding-bottom: 0;
  }
  .a-growth + .a-growth {
    margin-top: 10px;
  }
}
.a-growth-img {
  max-width: 700px;
  width: 100%;
  margin: 0 auto;
}

.a-growth-course {
  display: flex;
  align-items: center;
  max-width: 500px;
  width: 100%;
  margin: 0 auto;
  justify-content: space-between;
  margin-top: 20px;
}

.a-growth-arrow {
  width: 50px;
}

.growth-arrow-p {
  text-align: center;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.5;
}

@media screen and (max-width: 930px) {
  .growth-arrow-p {
    font-size: 18px;
  }
}
.growth-flex {
  display: flex;
  gap: 5%;
  margin-top: 50px;
}

.growth {
  display: flex;
  gap: 70px;
  align-items: end;
}
@media screen and (max-width: 930px) {
  .growth {
    flex-direction: column;
    gap: 50px;
  }
}
@media screen and (max-width: 550px) {
  .growth {
    gap: 20px;
  }
}
.growth .a-growth-title {
  padding-left: 65px;
}
.growth .a-growth-title .a-growth-title-jp {
  font-size: 25px;
}
@media screen and (max-width: 730px) {
  .growth .a-growth-title .a-growth-title-jp {
    font-size: 18px;
  }
}
.growth .a-growth-title .a-growth-title-en {
  font-size: 16px;
}
@media screen and (max-width: 730px) {
  .growth .a-growth-title .a-growth-title-en {
    font-size: 14px;
  }
}
.growth .a-growth-title.growth01 {
  margin-bottom: 30px;
}
.growth .a-growth-title.growth01:before {
  background: url(../img/system_icon.png) no-repeat center/contain;
  width: 55px;
  height: 44px;
}
.growth .a-growth-title.growth01:after {
  display: none;
}
.growth .a-growth-title.growth02:before {
  background: url(../img/system_package.png) no-repeat center/contain;
  width: 49px;
  height: 44px;
  top: 5px;
}
@media screen and (max-width: 920px) {
  .growth .a-growth-title.growth02:before {
    top: 0;
  }
}

.growth-text-last p {
  margin-top: 35px;
}
@media screen and (max-width: 930px) {
  .growth-text-last p {
    margin-top: 30px;
  }
}
@media screen and (max-width: 550px) {
  .growth-text-last p {
    margin-top: 20px;
  }
}

.a-growth-step {
  max-width: 670px;
  margin: 0 auto;
}

.growth-flex .a-growth-step {
  width: 47.5%;
}

.a-growth {
  scroll-margin-top: 100px;
}

/* タブウィンドウ */
/*tabの形状*/
.tab-content {
  margin-top: 30px;
}

.tab_wrap {
  width: 100%;
  margin: 0px auto;
}

.tab_wrap input[type=radio] {
  display: none;
}

.tab_area {
  font-size: 0;
  margin: 0;
  display: flex;
  align-items: center;
}

.tab_area label {
  width: 50%;
  height: 60px;
  box-sizing: border-box;
  margin: 0;
  display: block;
  padding: 10px 0;
  color: #333;
  font-weight: 600;
  text-align: center;
  font-size: 16px;
  transition: 0.5s;
}

.tab_area label.infra {
  padding: 20px 0;
}

@media screen and (max-width: 550px) {
  .tab_area label {
    height: 50px;
    padding: 8px 0;
    font-size: 14px;
  }
  .tab_area label.infra {
    padding: 16px 0;
  }
}
.tab_panel {
  width: 100%;
  display: none;
}

.tab_label {
  cursor: pointer;
  background-color: #F4F1F1;
}

#tab1:checked ~ .panel_area #panel1 {
  display: block;
}

#tab2:checked ~ .panel_area #panel2 {
  display: block;
}

#tab3:checked ~ .panel_area #panel3 {
  display: block;
}

.panel-content {
  width: 100%;
  margin: 0 auto;
  padding: 50px 0;
}

#tab1:checked ~ .tab_area label.tab1_label {
  background-color: #08CD8F;
  color: #fff;
}

#tab2:checked ~ .tab_area label.tab2_label {
  background-color: #25BB9B;
  color: #fff;
}

.growth-wrap .tab-content {
  display: none;
}

@media screen and (max-width: 930px) {
  .growth01-2-pc {
    display: none;
  }
  .growth-wrap .tab-content {
    display: inherit;
  }
}
#careerplanning {
  padding: 50px 0 100px 0;
}

@media screen and (max-width: 930px) {
  #careerplanning {
    padding: 30px 0 70px 0;
  }
}
@media screen and (max-width: 550px) {
  #careerplanning {
    padding: 30px 0 50px 0;
  }
}
.planning-h3 {
  font-size: 32px;
  color: #00D795;
  line-height: 1.5;
  letter-spacing: 0.06em;
  font-weight: 500;
}

@media screen and (max-width: 1150px) {
  .planning-h3 {
    font-size: 25px;
    color: #00D795;
    line-height: 1.5;
    letter-spacing: 0.06em;
  }
}
@media screen and (max-width: 930px) {
  .planning-h3 {
    font-size: 28px;
  }
}
@media screen and (max-width: 550px) {
  .planning-h3 {
    font-size: 20px;
  }
}
.planning-flex {
  display: flex;
  align-items: center;
  width: 90%;
  margin-left: auto;
  margin-top: 70px;
  gap: 5%;
}

.planning-left,
.planning-right {
  width: 47.5%;
}

@media screen and (max-width: 930px) {
  .planning-flex {
    display: block;
    margin: 0 auto;
    margin-top: 50px;
  }
  .planning-left,
  .planning-right {
    width: 100%;
  }
  .planning-right {
    margin-top: 30px;
  }
}
.planning-text {
  font-size: 16px;
  line-height: 2.25;
  margin-top: 30px;
  text-align: justify;
}

@media screen and (max-width: 550px) {
  .planning-flex {
    margin-top: 30px;
  }
  .planning-h3 {
    font-size: 20px;
  }
  .planning-text {
    font-size: 15px;
    line-height: 1.8;
    margin-top: 20px;
  }
  .planning-right {
    margin-top: 20px;
  }
}
/* recruit */
#recruit {
  padding: 100px 0;
}

@media screen and (max-width: 930px) {
  #recruit {
    padding: 70px 0;
  }
}
@media screen and (max-width: 550px) {
  #recruit {
    padding: 50px 0;
  }
}
.recruit-content {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}

#recruit .tab_area {
  gap: 1%;
}

#recruit .tab_area label {
  width: 33%;
  font-weight: 400;
  letter-spacing: 0.06em;
}

#recruit .tab-label-en {
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0.06em;
}

#recruit .panel-content {
  width: 100%;
  margin: 0 auto;
  padding: 70px 30px;
}

#recruit .video-content p.txt {
  text-align: center;
  font-size: 14px;
  letter-spacing: 0.06em;
  line-height: 1.9375;
}
@media screen and (max-width: 930px) {
  #recruit .video-content p.txt {
    font-size: 13px;
  }
}
@media screen and (max-width: 550px) {
  #recruit .video-content p.txt {
    font-size: 12px;
  }
}
#recruit .video-content p.txt:nth-of-type(1) {
  font-size: 18px;
  line-height: 1.7222222222;
  margin-top: 40px;
}
@media screen and (max-width: 930px) {
  #recruit .video-content p.txt:nth-of-type(1) {
    margin-top: 30px;
    font-size: 16px;
  }
}
@media screen and (max-width: 550px) {
  #recruit .video-content p.txt:nth-of-type(1) {
    margin-top: 20px;
    font-size: 14px;
  }
}
#recruit .video-content p.txt:not(:nth-of-type(1)) {
  margin-top: 40px;
}
@media screen and (max-width: 930px) {
  #recruit .video-content p.txt:not(:nth-of-type(1)) {
    margin-top: 30px;
  }
}
@media screen and (max-width: 550px) {
  #recruit .video-content p.txt:not(:nth-of-type(1)) {
    margin-top: 20px;
  }
}
#recruit .video-content p.ttl {
  font-size: 30px;
  letter-spacing: 0.06em;
  color: #00dd9b;
  font-weight: 500;
  text-align: center;
  margin-top: 50px;
}
@media screen and (max-width: 930px) {
  #recruit .video-content p.ttl {
    font-size: 25px;
    margin-top: 30px;
  }
}
@media screen and (max-width: 550px) {
  #recruit .video-content p.ttl {
    font-size: 20px;
    margin-top: 20px;
  }
}
#recruit .video-content iframe {
  width: 100%;
  max-width: 1220px;
  margin: 0 auto;
  height: 100%;
  aspect-ratio: 1220/674;
  max-height: 674px;
  margin-top: 40px;
}
@media screen and (max-width: 930px) {
  #recruit .video-content iframe {
    margin-top: 30px;
  }
}
@media screen and (max-width: 550px) {
  #recruit .video-content iframe {
    margin-top: 20px;
  }
}
#recruit .video-content .point {
  text-align: end;
  margin-top: 10px;
  font-size: 14px;
  letter-spacing: 0.05em;
}
#recruit .video-content .btn03 {
  margin-left: auto;
  margin-right: auto;
  margin-top: 40px;
}
@media screen and (max-width: 930px) {
  #recruit .video-content .btn03 {
    margin-top: 30px;
  }
}
@media screen and (max-width: 550px) {
  #recruit .video-content .btn03 {
    margin-top: 20px;
  }
}

#recruit .flow-content {
  margin-top: 70px;
}
@media screen and (max-width: 930px) {
  #recruit .flow-content {
    margin-top: 50px;
  }
}
@media screen and (max-width: 550px) {
  #recruit .flow-content {
    margin-top: 30px;
  }
}

#recruit #tab1:checked ~ .tab_area label.tab1_label,
#recruit #tab2:checked ~ .tab_area label.tab2_label,
#recruit #tab3:checked ~ .tab_area label.tab3_label {
  background-color: #25C1A1;
  color: #fff;
}

@media screen and (max-width: 930px) {
  #recruit .panel-content {
    padding: 50px 20px;
  }
}
@media screen and (max-width: 550px) {
  #recruit .panel-content {
    padding: 30px 0px;
  }
}
/* flow */
.flow-wrap {
  margin-top: 70px;
  position: relative;
}

.flow-wrap::before {
  content: "";
  width: 3px;
  height: 95%;
  background-color: #25C1A1;
  position: absolute;
  left: 97px;
  z-index: -1;
  top: 50%;
  transform: translateY(-50%);
}

.a-flow {
  display: flex;
  align-items: flex-start;
  gap: 2%;
}

.a-flow.al-center {
  align-items: center;
}

.a-flow-img {
  width: 190px;
  height: auto;
  border-radius: 50%;
  overflow: hidden;
  border: 15px solid #fff;
  background-color: #25C1A1;
}

.a-flow-right {
  width: calc(100% - 190px - 2%);
  margin-top: 15px;
}

.a-flow.al-center .a-flow-right {
  margin-top: 0;
}

@media screen and (max-width: 930px) {
  .flow-wrap {
    margin-top: 50px;
  }
  .flow-wrap::before {
    left: 60px;
  }
  .a-flow-img {
    width: 150px;
    margin-left: -15px;
  }
  .a-flow-right {
    width: calc(100% - 150px - 2%);
  }
}
@media screen and (max-width: 550px) {
  .flow-wrap {
    margin-top: 30px;
  }
  .flow-wrap::before {
    left: 45px;
  }
  .a-flow-img {
    width: 120px;
    margin-left: -15px;
    border: 10px solid #fff;
  }
  .a-flow-right {
    width: calc(100% - 135px);
    margin-left: 10px;
  }
  .a-flow.al-center .a-flow-right {
    margin-top: 0;
  }
}
.a-flow-head {
  font-size: 25px;
  letter-spacing: 0.06em;
  font-weight: 500;
}

.a-flow-head-en {
  font-weight: 400;
  color: #25C1A1;
}

.a-flow-text {
  font-size: 16px;
  line-height: 2;
  background-color: #F4F1F1;
  padding: 20px;
  margin-top: 20px;
  width: 100%;
  text-align: justify;
}

.a-flow + .a-flow {
  margin-top: 50px;
}

.underline {
  text-decoration: underline;
}

.a-flow .underline {
  font-weight: 500;
}

.a-flow-green {
  font-size: 15px;
  color: #25C1A1;
  margin-top: 15px;
  font-weight: 500;
  line-height: 1.5;
  text-align: justify;
}

.a-flow.al-center .a-flow-green {
  font-size: 16px;
  margin-top: 20px;
}

@media screen and (max-width: 930px) {
  .a-flow-head {
    font-size: 20px;
  }
  .a-flow-text {
    padding: 15px;
    margin-top: 15px;
  }
  .a-flow + .a-flow {
    margin-top: 40px;
  }
}
@media screen and (max-width: 550px) {
  .a-flow-head {
    font-size: 18px;
    line-height: 1.3;
  }
  .a-flow-text {
    padding: 15px;
    margin-top: 10px;
    font-size: 15px;
  }
  .a-flow + .a-flow {
    margin-top: 30px;
  }
  .a-flow-green {
    font-size: 14px;
    margin-top: 10px;
  }
  .a-flow.al-center .a-flow-green {
    margin-top: 10px;
    font-size: 15px;
  }
}
.newgrade-entry {
  padding: 100px 0;
  padding-bottom: 0;
}
.newgrade-entry--text {
  font-size: 2rem;
  line-height: 3rem;
  text-align: center;
  padding-top: 70px;
}
@media screen and (max-width: 930px) {
  .newgrade-entry--text {
    font-size: 1.8rem;
    line-height: 2.5rem;
  }
}
@media screen and (max-width: 550px) {
  .newgrade-entry--text {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 930px) {
  .newgrade-entry {
    padding: 70px 0;
    padding-bottom: 0;
  }
}
@media screen and (max-width: 550px) {
  .newgrade-entry {
    padding: 50px 0;
    padding-bottom: 0;
  }
}
.entry-banner-wrap {
  display: flex;
  gap: 5%;
  margin-top: 50px;
}

.entry-banner-wrap a {
  width: 47.5%;
  display: block;
  transition: 0.5s;
}

@media screen and (max-width: 930px) {
  .entry-banner-wrap {
    margin-top: 30px;
    display: block;
  }
  .entry-banner-wrap a {
    width: 100%;
  }
  .entry-banner-wrap a + a {
    margin-top: 10px;
  }
}
.entry-banner-wrap a:hover {
  opacity: 0.7;
}

/* 中途採用 */
/* アコーディオン */
/* 全体の幅調整 */
#recruit .accordion {
  max-width: 800px;
  margin: 0 auto;
}

/* アコーディオンの見た目 */
#recruit .accordion__item {
  margin-top: 20px;
  cursor: pointer;
}

/* アコーディオンのタイトル文字 */
#recruit .accordion__title {
  position: relative;
  padding: 15px 60px 15px 20px;
  font-weight: 400;
  cursor: pointer;
  background-color: #25C1A1;
  color: #fff;
  font-size: 18px;
  letter-spacing: 0.06em;
}

/* 開くアイコン */
#recruit .accordion__title::before,
#recruit .accordion__title::after {
  content: "";
  position: absolute;
  width: 2px;
  height: 20px;
  background-color: #fff;
  transition: all 0.3s;
  top: 15px;
}

#recruit .accordion__title::before {
  right: 30px;
}

#recruit .accordion__title::after {
  transform: rotate(90deg);
  right: 30px;
}

@media screen and (max-width: 550px) {
  #recruit .accordion__item {
    margin-top: 10px;
    cursor: pointer;
  }
  #recruit .accordion__title {
    position: relative;
    padding: 10px 40px 10px 15px;
    font-size: 16px;
  }
  /* 開くアイコン */
  #recruit .accordion__title::before,
  #recruit .accordion__title::after {
    width: 2px;
    height: 17px;
    top: 11px;
  }
  #recruit .accordion__title::before {
    right: 20px;
  }
  #recruit .accordion__title::after {
    right: 20px;
  }
}
/* 閉じるアイコン */
#recruit .accordion__item.is-active .accordion__title::before {
  transform: rotate(90deg);
}

/* アコーディオンのコンテンツ（中身） */
#recruit .accordion__content {
  padding: 30px;
  display: none;
  cursor: pointer;
  background-color: #F4F1F1;
  font-size: 16px;
  line-height: 2;
}

#recruit .accordion__content.is-open {
  display: block;
}

#recruit dd.open {
  display: block;
}

.a-mid-table-row {
  display: flex;
  align-items: flex-start;
  padding: 15px 0;
}

.a-mid-table-row dt {
  width: 150px;
}

.a-mid-table-row dd {
  width: calc(100% - 150px);
  text-align: justify;
}

@media screen and (max-width: 550px) {
  /* アコーディオンのコンテンツ（中身） */
  #recruit .accordion__content {
    padding: 20px 15px;
    font-size: 15px;
    line-height: 1.8;
  }
  .a-mid-table-row {
    display: flex;
    align-items: flex-start;
    padding: 10px 0;
  }
  .a-mid-table-row dt {
    width: 90px;
  }
  .a-mid-table-row dd {
    width: calc(100% - 90px);
    text-align: left;
  }
}
.a-mid-table-row + .a-mid-table-row {
  border-top: 1px solid #000;
}

.recruit-entry-btn a {
  display: flex;
  align-items: center;
  font-size: 20px;
  color: #fff;
  background-color: #25BB9B;
  width: -moz-fit-content;
  width: fit-content;
  padding: 20px 80px;
  padding-right: 130px;
  border-radius: 200px;
  margin: 20px auto;
  border: 1px solid #25BB9B;
  position: relative;
  transition: 0.5s;
}

.recruit-entry-btn a::after {
  content: "";
  width: 30px;
  height: 10px;
  background-image: url(../img/arrow-white.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  right: 30px;
  top: 48%;
  transform: translateY(-50%);
}

.recruit-entry-btn a:hover {
  background-color: #fff;
  color: #000;
}

.recruit-entry-btn a:hover:after {
  background-image: url(../img/read-more-arrow.png);
}

.recruit-entry-btn span {
  display: block;
  font-size: 10px;
  padding-right: 15px;
}

.recruit-entry-btn a:hover span {
  color: #25BB9B;
}

@media screen and (max-width: 550px) {
  .recruit-entry-btn a {
    font-size: 16px;
    padding: 15px 40px;
    padding-right: 80px;
    margin: 15px auto;
  }
  .recruit-entry-btn a::after {
    width: 25px;
  }
}
.faq_area .faq_menu {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 100px;
}
.faq_area .faq_menu--item {
  width: 31.5%;
  border-bottom: 1px solid #000;
  color: #000;
  font-size: 2rem;
  position: relative;
  line-height: 3rem;
  padding-bottom: 10px;
}
@media screen and (max-width: 1080px) {
  .faq_area .faq_menu--item {
    width: 48%;
    font-size: 1.8rem;
    line-height: 2.6rem;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 800px) {
  .faq_area .faq_menu--item {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 500px) {
  .faq_area .faq_menu--item {
    width: 100%;
  }
}
@media screen and (max-width: 1080px) {
  .faq_area .faq_menu--item:last-child {
    margin-bottom: initial;
  }
}
.faq_area .faq_menu--item::after {
  position: absolute;
  content: "";
  width: 18px;
  height: calc(100% - 10px);
  background-image: url("../img/faq-y.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  right: 0;
  margin-bottom: 10px;
}

.faq_box--ttl {
  font-size: 3rem;
  line-height: 4rem;
  border-bottom: 1px solid #000;
  padding-bottom: 20px;
}
.faq_box--content.u-mb100 {
  margin-bottom: 100px;
}
.faq_box--item {
  border-bottom: 1px solid #000;
  padding: 50px 0;
}
.faq_box--item--q, .faq_box--item--a {
  display: flex;
  line-height: 3.5rem;
  font-size: 2rem;
}
.faq_box--item--q--img, .faq_box--item--a--img {
  width: 30px;
  margin-right: 15px;
  padding-top: 3px;
  width: 35px;
}
.faq_box--item--q--text, .faq_box--item--q h4, .faq_box--item--a--text, .faq_box--item--a h4 {
  display: block;
  width: calc(100% - 35px);
}
.faq_box--item--q {
  color: #25BB9B;
  font-weight: 500;
  margin-bottom: 10px;
}
.faq_box--btn {
  display: inline-block;
  position: relative;
  background-color: #25BB9B;
  padding: 10px 65px 10px 50px;
  border-radius: 100px;
  text-align: center;
  font-size: 1.8rem;
  color: #fff;
  margin-top: 20px;
}
.faq_box--btn::after, .faq_box--btn::before {
  position: absolute;
  content: "";
}
.faq_box--btn::after {
  width: 6px;
  height: 6px;
  background-color: #fff;
  border-radius: 100px;
  left: 30px;
  top: 23px;
}
.faq_box--btn::before {
  width: 25px;
  height: 7px;
  background-image: url(../img/arrow-white.png);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  padding-bottom: 5px;
}

#training {
  padding-top: 100px;
}
@media screen and (max-width: 767px) {
  #training {
    margin-bottom: 50px;
  }
}
@media screen and (max-width: 500px) {
  #training {
    margin-bottom: 0px;
  }
}
#training h2 {
  margin-bottom: 70px;
}
@media screen and (max-width: 767px) {
  #training h2 {
    margin-bottom: 40px;
  }
}
#training .training-content {
  max-width: 1200px;
  width: 90%;
  margin: 0 auto;
}
#training .training-text {
  text-align: center;
  font-size: 1.8rem;
  line-height: 3.3rem;
  margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
  #training .training-text {
    font-size: 1.6rem;
    line-height: 3rem;
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 550px) {
  #training .training-text {
    font-size: 1.5rem;
    line-height: 2.5rem;
  }
}
@media screen and (max-width: 800px) {
  #training .js-scrollable img {
    width: 800px;
  }
}

.growth-top {
  max-width: 1200px;
  width: 90%;
  margin: 0 auto;
}
.growth-top--main {
  width: 100%;
  margin-bottom: 30px;
  padding-left: 50px;
  padding-right: 30px;
  box-sizing: border-box;
}
@media screen and (max-width: 500px) {
  .growth-top--main {
    padding-left: 0px;
    padding-right: 0px;
    margin-bottom: 0px;
  }
}
.growth-top--main .growth-arrow-p {
  padding-top: 15px;
}
@media screen and (max-width: 500px) {
  .growth-top--main--img-pc {
    display: none;
  }
}
.growth-top--main--img-sp {
  display: none;
}
@media screen and (max-width: 500px) {
  .growth-top--main--img-sp {
    display: block;
  }
}
.growth-top--course {
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px;
  padding-top: 30px;
}
@media screen and (max-width: 500px) {
  .growth-top--course {
    padding-top: 0px;
  }
}
.growth-top--course--y {
  width: 24%;
  display: flex;
  justify-content: center;
}
.growth-top--course--y img {
  width: 50px;
}
@media screen and (max-width: 500px) {
  .growth-top--course--y img {
    display: none;
  }
}

@media screen and (max-width: 930px) {
  .page-interview-mg .a-top-interview {
    margin-bottom: 50px;
  }
}
@media screen and (max-width: 930px) {
  .page-interview-mg .a-top-interview:last-child {
    margin-bottom: initial;
  }
}/*# sourceMappingURL=page.css.map */