@charset "UTF-8";
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* con_fv */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#con_fv {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100dvh;
  background: url("../img/fv_img.webp") no-repeat center/cover;
}
@media screen and (min-width: 769px) {
  #con_fv {
    height: 100dvh;
  }
}
#con_fv .item {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (min-width: 769px) {
  #con_fv .item {
    width: clamp(500px, 53.6rem, 1500px);
    height: clamp(500px, 53.6rem, 1500px);
  }
}
#con_fv .item {
  overflow: visible;
}
@media screen and (max-width: 768px) {
  #con_fv .item {
    width: 75vw;
    height: 75vw;
    max-width: none;
    max-height: none;
  }
}
#con_fv .item::after {
  content: "";
  position: absolute;
  z-index: 2;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: url("../img/fv_bk.webp") no-repeat center/cover;
  animation: rotateRight 20s linear infinite;
}
#con_fv .item .title_box {
  position: absolute;
  z-index: 3;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#con_fv .item .title_box h1 {
  color: var();
  font-size: clamp(40px, 4.3rem, 72px);
  line-height: clamp(53px, 5.8rem, 97px);
  color: var(--white);
  text-align: center;
  margin-bottom: 1.3rem;
}
@media screen and (max-width: 768px) {
  #con_fv .item .title_box h1 {
    font-size: 2.5rem;
    line-height: 3.6rem;
    margin-bottom: 0.7rem;
  }
}
#con_fv .item .title_box .en {
  display: block;
  font-size: clamp(12px, 1.3rem, 20px);
  color: var(--white);
  text-align: center;
}
@media screen and (max-width: 768px) {
  #con_fv .item .title_box .en {
    font-size: 0.6rem;
  }
}

.ripple {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 98%;
  height: 98%;
  border: 2px solid rgba(255, 255, 255, 0.6);
  border-radius: 50%;
  transform: translate(-50%, -50%) scale(1);
  opacity: 0;
  animation: ripple 3s infinite;
  z-index: 2;
}

.ripple1 {
  animation-delay: 0s;
}

.ripple2 {
  animation-delay: 0.75s;
}

.ripple3 {
  animation-delay: 1.5s;
}

.ripple4 {
  animation-delay: 2.25s;
}

@keyframes ripple {
  0% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 0.6;
  }
  100% {
    transform: translate(-50%, -50%) scale(1.2);
    opacity: 0;
  }
}
/* 回転アニメーション */
@keyframes rotateRight {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 事業・業務を知る */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#con_business {
  position: relative;
  z-index: 3;
  padding: 15rem 0 15rem 0;
  background: url("../common/img/gradation_bk.webp") no-repeat center/cover;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  #con_business {
    padding: 6rem 0;
  }
}
@media screen and (max-width: 768px) {
  #con_business .inner {
    width: 90%;
    margin: auto;
  }
}
@media screen and (min-width: 769px) {
  #con_business .inner .title {
    margin-left: 10rem;
  }
}
#con_business .inner .box {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 769px) {
  #con_business .inner .box {
    display: flex;
    margin: 6rem 10rem 0 0;
  }
}
@media screen and (max-width: 768px) {
  #con_business .inner .box {
    margin-top: 3.3rem;
  }
}
#con_business .inner .box .box_img {
  width: 63rem;
  height: 47rem;
}
@media screen and (max-width: 768px) {
  #con_business .inner .box .box_img {
    width: 100%;
    height: 25rem;
  }
}
#con_business .inner .box .box_img {
  margin-right: 9.5rem;
}
#con_business .inner .box .box_img img {
  width: 100%;
  height: 100%;
  border-radius: 0 2rem 2rem 0;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 768px) {
  #con_business .inner .box .box_img img {
    border-radius: 1.5rem;
  }
}
#con_business .inner .box .box_text {
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  #con_business .inner .box .box_text {
    margin-top: 2.5rem;
  }
}
#con_business .inner .box .box_text p {
  font-size: 1.8rem;
  line-height: 3.4rem;
  margin-bottom: 4rem;
}
@media screen and (min-width: 769px) {
  #con_business .inner .box .box_text p {
    white-space: nowrap;
  }
}
@media screen and (max-width: 768px) {
  #con_business .inner .box .box_text p {
    font-size: 1.7rem;
    line-height: 3rem;
    margin-bottom: 2.5rem;
  }
}
@media screen and (max-width: 768px) {
  #con_business .inner .box .box_text .common_btn {
    margin: 0 auto;
  }
}
#con_business .marquee {
  z-index: 3;
  bottom: 17rem;
}
@media screen and (max-width: 768px) {
  #con_business .marquee {
    z-index: 0;
    bottom: 26.5rem;
  }
}
#con_business .marquee .marquee__item {
  -webkit-text-stroke: 1px var(--white);
}

/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 先輩社員を知る */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#con_interview {
  position: relative;
  padding: 2rem 2rem 2rem 10rem;
}
@media screen and (max-width: 768px) {
  #con_interview {
    padding: 6rem 0 6rem 0;
  }
}
#con_interview .inner {
  position: relative;
  z-index: 3;
}
@media screen and (min-width: 769px) {
  #con_interview .inner {
    display: flex;
    align-items: flex-start;
  }
}
@media screen and (max-width: 768px) {
  #con_interview .inner {
    width: 90%;
    margin: auto;
  }
}
@media screen and (min-width: 769px) {
  #con_interview .inner .left {
    position: sticky;
    top: 10px;
    padding: 15rem 0;
    margin-right: 16rem;
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
  }
}
#con_interview .inner .left p {
  font-size: 1.6rem;
  line-height: 3rem;
  width: 43.3rem;
  margin: 4rem 0;
}
@media screen and (max-width: 768px) {
  #con_interview .inner .left p {
    margin: 3rem 0 2.5rem 0;
    width: 100%;
  }
}
#con_interview .inner .right {
  flex: 1;
}
#con_interview .inner .right li {
  position: relative;
  z-index: 3;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  width: auto;
  height: 38rem;
  border-radius: 2rem;
  overflow: hidden;
}
#con_interview .inner .right li:hover::after {
  transform: scale(0.85);
}
#con_interview .inner .right li::before {
  content: "";
  position: absolute;
  inset: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  transition: transform 0.6s ease;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  #con_interview .inner .right li {
    height: 20rem;
    border-radius: 1.5rem;
  }
}
#con_interview .inner .right li::after {
  content: "";
  position: absolute;
  width: 5rem;
  height: 5rem;
  bottom: 3rem;
  right: 3rem;
  background: url("../common/img/btn_bule.svg") no-repeat center/cover;
  transition: transform 0.6s ease;
}
#con_interview .inner .right li::after:hover::after {
  transform: scale(0.85);
}
@media screen and (max-width: 768px) {
  #con_interview .inner .right li::after {
    width: 4rem;
    height: 4rem;
    right: 1.5rem;
    bottom: 1.5rem;
  }
}
#con_interview .inner .right li:not(:last-child) {
  margin-bottom: 2rem;
}
#con_interview .inner .right li:hover::before {
  transform: scale(1.1);
}
#con_interview .inner .right li:nth-child(1)::before {
  background-image: url("../common/img/sugihasi.webp");
}
#con_interview .inner .right li:nth-child(2)::before {
  background-image: url("../common/img/sasaki.webp");
}
#con_interview .inner .right li:nth-child(3)::before {
  background-image: url("../common/img/yanagi.webp");
}
#con_interview .inner .right li a {
  display: flex;
  width: 100%;
  height: 100%;
}
#con_interview .inner .right li a .box {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  width: 100%;
  height: 100%;
}
#con_interview .inner .right li a .box h3 {
  width: -moz-fit-content;
  width: fit-content;
  font-size: 3.4rem;
  color: var(--white);
  background-color: var(--black);
  padding: 0.8rem;
  margin-bottom: 1.3rem;
}
@media screen and (max-width: 768px) {
  #con_interview .inner .right li a .box h3 {
    font-size: 2.2rem;
    padding: 0.4rem;
  }
}
#con_interview .inner .right li a .box .text_box:last-of-type {
  margin-bottom: 3rem;
}
@media screen and (max-width: 768px) {
  #con_interview .inner .right li a .box .text_box:last-of-type {
    margin-bottom: 1.5rem;
  }
}
#con_interview .inner .right li a .box .text_box p {
  position: relative;
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 1.6rem;
  background-color: var(--white);
  padding: 0.8rem;
}
@media screen and (max-width: 768px) {
  #con_interview .inner .right li a .box .text_box p {
    font-size: 1.4rem;
    padding: 0.4rem;
  }
}
@media screen and (max-width: 768px) {
  #con_interview .common_btn {
    margin: 2.5rem auto 0 auto;
  }
}
#con_interview .marquee {
  z-index: 2;
  bottom: 32rem;
}
@media screen and (max-width: 768px) {
  #con_interview .marquee {
    z-index: 0;
    bottom: 26.5rem;
  }
}
#con_interview .marquee .marquee__item {
  -webkit-text-stroke: 1px var(--gray);
}

/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 働く環境を知る */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#con_programs_benefits {
  overflow: hidden;
  position: relative;
  padding: 12rem 0;
  background: #EEF3F7;
}
@media screen and (max-width: 768px) {
  #con_programs_benefits {
    padding: 6rem 0;
  }
}
#con_programs_benefits .common_inner {
  margin-bottom: 9.6rem;
}
@media screen and (max-width: 768px) {
  #con_programs_benefits .common_inner {
    margin-bottom: 9rem;
  }
}
#con_programs_benefits .common_inner .title {
  margin-bottom: 1rem;
}
@media screen and (max-width: 768px) {
  #con_programs_benefits .common_inner .title {
    margin-bottom: 3.3rem;
  }
}
#con_programs_benefits .common_inner .title h2 {
  color: var(--black);
}
#con_programs_benefits .common_inner .title .en {
  color: var(--black);
}
@media screen and (min-width: 769px) {
  #con_programs_benefits .common_inner .box {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
  }
}
#con_programs_benefits .common_inner .box .con_programs_benefits_img {
  width: auto;
  height: 35rem;
}
@media screen and (max-width: 768px) {
  #con_programs_benefits .common_inner .box .con_programs_benefits_img {
    width: 100%;
    height: 25rem;
  }
}
#con_programs_benefits .common_inner .box .con_programs_benefits_img img {
  border-radius: 2rem;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 768px) {
  #con_programs_benefits .common_inner .box .con_programs_benefits_img img {
    border-radius: 1.5rem;
  }
}
#con_programs_benefits .common_inner .box .text_box h3 {
  font-size: 2.4rem;
  line-height: 3.8rem;
  margin-top: 4rem;
  color: var(--black);
}
@media screen and (max-width: 768px) {
  #con_programs_benefits .common_inner .box .text_box h3 {
    font-size: 2.2rem;
    line-height: 3.4rem;
    margin-top: 2.5rem;
  }
}
#con_programs_benefits .common_inner .box .text_box p {
  font-size: 1.6rem;
  line-height: 3rem;
  width: 56rem;
  margin: 3rem 0 5rem 0;
  color: var(--black);
}
@media screen and (max-width: 768px) {
  #con_programs_benefits .common_inner .box .text_box p {
    width: 100%;
    margin: 1.7rem 0 2.5rem 0;
  }
}
@media screen and (max-width: 768px) {
  #con_programs_benefits .common_inner .box .text_box .common_btn {
    margin: 0 auto;
  }
}
#con_programs_benefits .marquee {
  z-index: 1;
  bottom: -2.2rem;
}
#con_programs_benefits .marquee .marquee__item {
  -webkit-text-stroke: 1px var(--gray);
}

/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* footer */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#footer {
  padding-top: 0;
}/*# sourceMappingURL=compile.css.map */