/*!
global > color
------------------------------
*/
/*!
global > font
------------------------------
*/
#wrapper {
  padding-top: 0;
}

.c-header {
  background-color: transparent;
  color: var(--color-primary);
  transition: 0.5s;
  transition-property: background-color;
}
.c-header__inner {
  transition: 0.5s;
  transition-property: border-color;
}
.c-header__inner::after {
  opacity: 1;
}
.c-header__logo_bl {
  opacity: 0;
}
.c-header__logo_wh {
  opacity: 1;
}
.c-header.is-fixed {
  color: var(--color-base);
  background-color: var(--color-primary);
}
.c-header.is-fixed .c-header__inner::after {
  opacity: 0;
}
.c-header.is-fixed .c-header__logo_bl {
  opacity: 1;
}
.c-header.is-fixed .c-header__logo_wh {
  opacity: 0;
}
.c-header.is-fixed:has(.c-header__hamburger.is-open) {
  color: var(--color-primary);
}
.c-header.is-fixed:has(.c-header__hamburger.is-open) .c-header__logo_bl {
  opacity: 0;
}
.c-header.is-fixed:has(.c-header__hamburger.is-open) .c-header__logo_wh {
  opacity: 1;
}
.c-header:has(.c-header__hamburger.is-open) .c-header__inner::after {
  opacity: 1;
  background-color: #4a4a4a;
}

.is-loading .p-top__mv_content::before {
  opacity: 0;
}
.is-loading .p-top__mv_ttl {
  opacity: 0;
}
.is-loading .p-top__mv_desc {
  opacity: 0;
  transform: translateY(30px);
}

.p-top__mv {
  position: relative;
  z-index: 0;
}
.p-top__mv_media video,
.p-top__mv_media img {
  height: 100vh;
  height: 100dvh;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.p-top__mv_content {
  position: absolute;
  bottom: 0;
  color: var(--color-primary);
  z-index: 1;
  padding-inline: 13px;
  padding-block: 34px;
}
.p-top__mv_content::before {
  content: "";
  aspect-ratio: 281/177;
  position: absolute;
  z-index: -1;
  -webkit-mask: url(../images/common/img_logo_act.svg) center/contain no-repeat;
  mask: url(../images/common/img_logo_act.svg) center/contain no-repeat;
  background-image: linear-gradient(135deg, #aae1e6 20%, #ec97c5);
  background-size: 120%;
  opacity: 0.6;
  left: 22%;
  bottom: 62%;
  width: 281px;
  transition: opacity 1s ease;
  transition-delay: 0.6s;
}
.p-top__mv_ttl {
  line-height: 1.3;
  letter-spacing: 0.18em;
  font-size: 2.5rem;
  font-weight: 700;
  margin-bottom: 23px;
  transition-delay: 0.3;
  transition: opacity 1s ease;
  opacity: 1;
}
.p-top__mv_desc {
  line-height: 1.8;
  letter-spacing: 0.1em;
  font-size: 0.8125rem;
  transition: 1s;
  transition-property: opacity, transform;
  transition-delay: 1s;
}
.p-top__service {
  position: relative;
  z-index: 0;
  overflow: clip;
  padding-block: 105px 130px;
}
.p-top__service::after {
  position: absolute;
  inset: 0;
  z-index: -1;
  content: "";
  background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.68) 0%, rgba(241, 244, 244, 0.9) 42%, #e2edec 100%);
}
.p-top__service .c-circle {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: -2;
  transform: translate(-55.2%, -52.3%);
}
.p-top__service_list {
  counter-reset: service-list 0;
  margin-top: 67px;
}
.p-top__service_list .item {
  counter-increment: service-list;
}
.p-top__service_list .item + .item {
  margin-top: 94px;
}
.p-top__service_list .item_heading {
  color: var(--color-accent);
  letter-spacing: 0.04em;
  line-height: 1.6;
  display: flex;
  align-items: center;
  font-size: 0.9375rem;
  gap: 20px;
  margin-bottom: 6px;
}
.p-top__service_list .item_heading::before {
  content: counter(service-list, decimal-leading-zero);
  font-family: "Anek Latin", sans-serif;
  letter-spacing: 0.04em;
  font-size: 1rem;
}
.p-top__service_list .item_content {
  padding-top: 33px;
}
.p-top__service_list .item_ttl {
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  font-size: 2.25rem;
}
.p-top__service_list .item_desc {
  letter-spacing: 0.1em;
  margin-block: 25px 38px;
}
.p-top__service_list .item_more {
  text-align: center;
}
.p-top__contact {
  margin-top: 48px;
  background: url(../images/top/bg_contact.webp) center/cover no-repeat;
  padding-block: 45px 81px;
  padding-inline: 18px;
  color: var(--color-primary);
}
.p-top__contact_img {
  margin-top: 35px;
  overflow: clip;
  position: relative;
  z-index: 0;
  opacity: 1;
  visibility: visible;
  animation: none;
  aspect-ratio: 339/334;
}
.p-top__contact_img img {
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  max-width: unset;
  width: 123.598820059%;
  transition: transform 1s ease;
  transform: translateX(-19.0930787589%);
}
.p-top__contact_img.inview img {
  transform: translateX(0);
}
.p-top__contact_block {
  width: 100%;
}
.p-top__contact_content {
  width: 100%;
}
.p-top__contact_more {
  margin-top: 34px;
}
.p-top__contact_more .c-btn02 {
  width: 100%;
  text-align: left;
}

.p-top__company {
  margin-top: 105px;
}
.p-top__company_block {
  margin-top: 59px;
}
.p-top__company_lead {
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.04em;
  font-size: 2rem;
}
.p-top__company_desc {
  letter-spacing: 0.1em;
  margin-top: 51px;
}
.p-top__company_more {
  text-align: right;
  margin-top: 73px;
}
.p-top__company_picture {
  position: relative;
  z-index: 0;
  margin-top: 70px;
  padding-bottom: 44px;
  position: relative;
  z-index: 2;
}
.p-top__company_decor {
  background: url(../images/top/bg_company.webp) center/cover no-repeat;
  position: absolute;
  right: 0;
  left: 0;
  bottom: 0;
  top: 117px;
  z-index: -1;
  overflow: clip;
}
.p-top__company_decor .c-circle {
  top: 100%;
  left: 50%;
  transform: translate(-50.6%, -72.5%);
  mix-blend-mode: screen;
}
.p-top__recruit {
  margin-top: 80px;
}
.p-top__recruit_inner {
  background: url(../images/top/bg_recruit.webp) center/cover no-repeat;
  width: 100%;
  padding-block: 89px 66px;
  border-radius: 8px;
}
.p-top__recruit_garelly {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-top: 45px;
  gap: 8px;
  margin-bottom: -6%;
}
.p-top__recruit_box {
  background-color: var(--color-primary);
  margin-inline: auto;
  border-radius: 16px;
  position: relative;
  z-index: 1;
  width: calc(100% - 18px);
  padding-block: 47px 46px;
  padding-inline: 20px;
}
.p-top__recruit_content {
  width: 100%;
}
.p-top__recruit_desc {
  letter-spacing: 0.1em;
  font-size: 0.9375rem;
}
.p-top__recruit_more {
  width: 100%;
  text-align: center;
  margin-top: 43px;
}
.p-top__recruit_more .c-btn01 {
  width: 100%;
  min-width: 0;
  max-width: 300px;
}
.p-top__news {
  margin-top: 115px;
}
.p-top__news .c-posts {
  margin-top: 65px;
}
.p-top__news_more {
  text-align: right;
  margin-top: 50px;
}
@media screen and (max-width: 767px) {
  .p-top__service .c-circle {
    width: 536px;
    width: max(536px, 142.9333333333vw);
  }
  .p-top__service_list .item + .item .item_heading {
    font-size: 1rem;
  }
  .p-top__company_decor .c-circle {
    width: 355px;
  }
}
@media screen and (min-width: 768px) {
  .p-top__mv_content {
    left: max(0px, 50% - 720px);
    max-width: 1440px;
    padding-inline: 34px;
    padding-block: 0 max(25px, 33.3333333333vh - 258px);
  }
  .p-top__mv_content::before {
    bottom: auto;
    width: clamp(15rem, 16.015625vw + 7.3125rem, 17.5625rem);
    top: 35px;
    left: calc(100% - clamp(8.75rem, 7.8125vw + 5rem, 10rem));
  }
  .p-top__mv_ttl {
    font-size: clamp(3.375rem, 3.90625vw + 1.5rem, 4rem);
    margin-bottom: 19px;
  }
  .p-top__mv_desc {
    font-size: 1rem;
  }
  .p-top__service {
    padding-block: clamp(7.5rem, 11.5740740741vw + 1.9444444444rem, 10.625rem) clamp(7.5rem, 13.8888888889vw + 0.8333333333rem, 11.25rem);
  }
  .p-top__service .c-circle {
    transform: translate(-55.2%, -52.3%);
  }
  .p-top__service_list {
    margin-top: 75px;
  }
  .p-top__service_list .item + .item {
    margin-top: 83px;
  }
  .p-top__service_list .item_heading {
    font-size: 1.625rem;
    margin-bottom: 10px;
  }
  .p-top__service_list .item_heading::before {
    font-size: 2rem;
  }
  .p-top__service_list .item_block {
    display: flex;
    gap: clamp(1.875rem, 35.7954545455vw + -21.0340909091rem, 5.8125rem);
  }
  .p-top__service_list .item_content {
    flex-shrink: 0;
    padding-top: 0;
    display: flex;
    flex-direction: column;
    max-width: 510px;
    width: 50%;
  }
  .p-top__service_list .item_ttl {
    font-size: clamp(2.25rem, 1.5625vw + 1.5rem, 2.5rem);
  }
  .p-top__service_list .item_desc {
    margin-block: 23px;
  }
  .p-top__service_list .item_more {
    margin-top: auto;
  }
  .p-top__service_list .item_more .c-btn01 {
    width: 100%;
  }
  .p-top__contact {
    padding: 0;
    background-image: none;
    display: flex;
    margin-top: 80px;
  }
  .p-top__contact_img {
    aspect-ratio: 562/728;
    margin-top: 0;
    flex-shrink: 0;
    width: 45%;
    max-width: max(50% - 158px, 562px);
    max-height: 800px;
  }
  .p-top__contact_img img {
    transition-delay: 0.1s;
    width: 125.9786476868%;
    transform: translateX(-20.6214689266%);
  }
  .p-top__contact_block {
    background: url(../images/top/bg_contact.webp) center/cover no-repeat;
  }
  .p-top__contact_content {
    max-width: 878px;
    margin-left: auto;
    display: flex;
    height: 100%;
    flex-direction: column;
    padding-inline: 37px clamp(2.5rem, 6.25vw + -0.5rem, 3.5rem);
    padding-block: 37px clamp(3.125rem, 4.6875vw + 0.875rem, 3.875rem);
  }
  .p-top__contact_more {
    text-align: right;
    margin-top: auto;
  }
  .p-top__contact_more .c-btn02 {
    max-width: 594px;
  }
  .p-top__company {
    margin-top: 110px;
  }
  .p-top__company_block {
    display: flex;
    flex-wrap: wrap;
    margin-top: 112px;
    gap: 40px clamp(2.5rem, 30.1136363636vw + -16.7727272727rem, 5.8125rem);
  }
  .p-top__company_content {
    flex: 610px;
  }
  .p-top__company_lead {
    font-size: clamp(2.125rem, 3.4090909091vw + -0.0568181818rem, 2.5rem);
  }
  .p-top__company_desc {
    margin-top: 48px;
  }
  .p-top__company_more {
    margin-top: auto;
    padding-bottom: clamp(0rem, 3.9772727273vw + -2.5454545455rem, 0.4375rem);
  }
  .p-top__company_picture {
    margin-top: 63px;
    padding-bottom: clamp(6.25rem, 19.140625vw + -2.9375rem, 9.3125rem);
  }
  .p-top__company_decor {
    top: clamp(6.25rem, 19.140625vw + -2.9375rem, 9.3125rem);
    max-height: 483px;
  }
  .p-top__company_decor .c-circle {
    transform: translate(-50.6%, -72.5%);
  }
  .p-top__recruit {
    margin-top: clamp(10rem, 11.5740740741vw + 4.4444444444rem, 13.125rem);
  }
  .p-top__recruit_inner {
    border-radius: 32px;
    padding-block: clamp(3.75rem, 5.5555555556vw + 1.0833333333rem, 5.25rem) clamp(6.25rem, 3.2407407407vw + 4.6944444444rem, 7.125rem);
  }
  .p-top__recruit_garelly {
    gap: clamp(1.875rem, 3.125vw + 0.375rem, 2.375rem);
    margin-top: 73px;
    margin-bottom: -9.6%;
  }
  .p-top__recruit_box {
    align-items: center;
    flex-wrap: wrap;
    display: flex;
    gap: 30px 0;
    width: calc(100% - 40px);
    max-width: 1196px;
    padding-block: 46px 47px;
    padding-inline: clamp(2.5rem, 20.4545454545vw + -10.5909090909rem, 4.75rem) clamp(2.5rem, 23.2954545455vw + -12.4090909091rem, 5.0625rem);
  }
  .p-top__recruit_content {
    flex-shrink: 0;
    padding-right: 40px;
    margin-right: clamp(2.5rem, 21.5909090909vw + -11.3181818182rem, 4.875rem);
    padding-block: clamp(0px, (100vw - 1000px) * 100, 22px) 23px;
    border-right: clamp(0px, (100vw - 1000px) * 10, 1px) solid #A6A6A6;
    border-bottom: clamp(0px, (1000px - 100vw) * 10, 1px) solid #A6A6A6;
    max-width: clamp(592px, (1000px - 100vw) * 10000, 100%);
    width: clamp(100% - 295px, (1000px - 100vw) * 10000, 100%);
  }
  .p-top__recruit_desc {
    font-size: clamp(1rem, 0.462962963vw + 0.7777777778rem, 1.125rem);
  }
  .p-top__recruit_more {
    margin-top: 0;
    flex: clamp(220px, (1000px - 100vw) * 1000, 500px);
  }
  .p-top__recruit_more .c-btn01 {
    max-width: clamp(300px, (100vw - 1000px) * 10000, 100%);
  }
  .p-top__news {
    margin-top: 120px;
  }
  .p-top__news .c-posts {
    margin-top: 0;
    padding-top: 28px;
  }
  .p-top__news .c-post__link {
    padding-inline: clamp(1.875rem, 10.15625vw + -3rem, 3.5rem);
  }
  .p-top__news_more {
    margin-top: 0;
    text-align: left;
  }
  .p-top__news_more .c-btn01 {
    min-width: clamp(13.75rem, 25.390625vw + 1.5625rem, 17.8125rem);
  }
  .p-top__news_head {
    flex-shrink: 0;
  }
  .p-top__news_more {
    margin-top: 92px;
  }
  .p-top__news_inner {
    display: flex;
    align-items: center;
    gap: clamp(2.5rem, 28.4722222222vw + -11.1666666667rem, 10.1875rem);
  }
}
/*# sourceMappingURL=maps/top.css.map */
