@charset "UTF-8";

.p-top {
  color: #ffffff;
  background: #e64848;
  position: relative;
}
.p-top::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url(../images/top-fv-filter.png) no-repeat center center/cover;
  pointer-events: none;
}
.p-fv {
  padding-top: 92px;
  padding-bottom: 300px;
  position: relative;
  max-width: 1366px;
  margin-inline: auto;
}
@media screen and (min-width:1024px) {
  .p-fv {
    padding-bottom: 37px;
  }
}
.p-fv::after {
  content: "";
  position: absolute;
  top: 34%;
  left: 50%;
  translate: -50% -50%;
  width: 100%;
  height: 100%;
  max-width: 1366px;
  background: url(../images/top-bg-white.png) no-repeat center center/cover;
  pointer-events: none;
}
@media screen and (min-width:1024px) {
  .p-fv::after {
    top: 50%;
  }
}


.p-fv__title-en {
  padding-left: clamp(20px, 5.3440702782vw, 73px);
  font-family: "Libertinus Serif", serif;
    color: transparent;
  font-size: clamp(24px, 3.90625vw, 40px);
  line-height: 1.15;
  font-weight: 700;
  -webkit-text-stroke: 0.5px rgba(255, 255, 255, 0.6);
}

.p-fv__swiper {
  width: clamp(300px, 64.2020497804vw, 877px);
  aspect-ratio: 877/461;
  margin-inline: auto;
  position: relative;
  z-index: 2;
}
.p-fv__swiper::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  width: 100%;
  height: auto;
  max-width: 1366px;
  background: url(../images/top-bg-white.png) no-repeat center center/cover;
}

.p-fv__swiper-slide {
  width: clamp(300px, 64.2020497804vw, 877px);
  aspect-ratio: 877/461;
  overflow: hidden;
}
.p-fv__swiper-slide img {
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: -webkit-transform 6s ease-in;
  transition: -webkit-transform 6s ease-in;
  transition: transform 6s ease-in;
  transition: transform 6s ease-in, -webkit-transform 6s ease-in;
}
.p-fv__swiper-slide.swiper-slide-active img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.p-fv__bg-text {
  margin-top: clamp(-104px, -8.6666666667vw, -36px);
  width: 98vw;
  overflow-x: hidden;
  position: relative;
  left: 50%;
  translate: -50%;
}
.p-fv__bg-text .bg-text__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 48px;
  width: 100%;
}
.p-fv__bg-text .bg-text {
  font-family: "Libertinus Serif", serif;
  font-size: clamp(60px, 11.3469985359vw, 155px);
  line-height: 1.1419354839;
  opacity: 0.2;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -webkit-animation: infinity-scroll-left 50s infinite linear 0.5s both;
          animation: infinity-scroll-left 50s infinite linear 0.5s both;
}
@-webkit-keyframes infinity-scroll-left {
  from {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@keyframes infinity-scroll-left {
  from {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}

.p-fv__service {
  position: absolute;
  bottom: 20px;
  right: 25px;
    width: 100%;
  max-width: 208px;
    z-index: 2;
}
@media screen and (min-width:1024px) {
  .p-fv__service {
    top: clamp(160px, 13.9092240117vw, 190px);
  }
}

.p-fv__service-title {
  padding-bottom: 11px;
  font-family: "Libertinus Serif", serif;
  font-size: clamp(16px, 1.953125vw, 20px);
  line-height: 1.15;
}

.p-fv__service-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
    gap: 10px;
  padding-right: 10px;
  padding-bottom: 8px;
  width: 100%;
  max-width: 208px;
  border-bottom: 1px solid #ffffff;
}
.p-fv__service-link .text {
  width: 100%;
  padding-right: 13px;
  padding-bottom: 3px;
  font-size: clamp(13px, 1.3671875vw, 14px);
  line-height: 1.4285714286;
  font-weight: 500;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  position: relative;
}
.p-fv__service-link .text::after {
  content: "";
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: 0;
  width: 8px;
  height: 5px;
  background: url(../images/icon-arrow-right.svg) no-repeat center center/contain;
}
@media (any-hover: hover) {
  .p-fv__service-link:hover .p-fv__service-img {
    translate: 1px 1px;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .p-fv__service-link:hover .p-fv__service-img::after {
    translate: 1px 1px;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
}
.p-fv__service-link + .p-fv__service-link {
  margin-top: 18px;
}

.p-fv__service-img {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  position: relative;
}
.p-fv__service-img::after {
  content: "";
  position: absolute;
      top: 0;
    left: 0;
    width: 30px;
    height: 30px;
  translate: 2px 2px;
  background: #282828;
  border-radius: 50%;
  pointer-events: none;
    z-index: -1;

}
.p-fv__service-img img {
  border-radius: 50%;
}

.p-fv__title-ja {
  margin-top: -16px;
  font-size: clamp(20px, 2.5390625vw, 26px);
  line-height: 1.4230769231;
  font-weight: 500;
  padding-left: 20px;
}
@media screen and (min-width:768px) {
  .p-fv__title-ja {
    padding-left: clamp(80px, 10.0292825769vw, 137px);
  }
}

.p-about {
  padding-top: 56px;
  padding-bottom: clamp(80px, 9.765625vw, 100px);
    max-width: 1366px;
  margin-inline: auto;
}

.p-about__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  padding-left: 20px;
}
@media screen and (min-width:768px) {
  .p-about__top {
    padding-left: clamp(60px, 8.78477306vw, 120px);
  }
}
@media screen and (min-width:1024px) {
  .p-about__top {
    padding-left: min(360px, 26.3543191801%);
  }
}

.p-about__title .c-section__title-ja::before {
  background: #ffffff;
}
.p-about__top-img {
  width: clamp(96px, 22.4609375vw, 230px);
  aspect-ratio: 23/25;
    margin-left: 16px;

}
@media screen and (min-width:768px) {
  .p-about__top-img {
    margin-left: clamp(60px, 13.1039531479vw, 179px);
  }
}

.p-about__bottom {
  margin-top: clamp(40px, 6.9010416667vw, 53px);
  padding-left: clamp(20px, 5.2083333333vw, 40px);
    padding-right: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 40px;
  position: relative;
}
@media screen and (min-width:1024px) {
  .p-about__bottom {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 0;
        padding-right: 220px;

  }
}

.p-about__bottom-big {
  width: clamp(120px, 40vw, 480px);
  aspect-ratio: 48/56;
  height: 100%;
}

.p-about__content {
  max-width: 500px;
}
@media screen and (min-width:768px) {
  .p-about__content {
    max-width: 600px;
    margin-right: 150px;
  }
}
@media screen and (min-width:1024px) {
  .p-about__content {
    margin-top: 12px;
    max-width: 406px;
    margin-left: clamp(40px, 7.3206442167vw, 100px);
    margin-right: 0;
  }
}

.p-about__content-main {
  font-size: clamp(22px, 2.5390625vw, 26px);
  line-height: 1.5416666667;
  font-weight: 500;
}

.p-about__content-texts {
  margin-top: clamp(36px, 6.0833333333vw, 73px);
}

.p-about__content-text {
  font-size: clamp(14px, 1.953125vw, 15px);
  line-height: 1.9333333333;
  font-weight: 500;
}
.p-about__content-text + .p-about__content-text {
  margin-top: clamp(24px, 4.5572916667vw, 35px);
}

.p-about__bottom-small {
  position: absolute;
  bottom: clamp(-83px, -8.10546875vw, -60px);
  right: 0;
  width: clamp(80px, 17.5695461201vw, 240px);
  aspect-ratio: 240/340;
}
@media screen and (min-width:1367px) {
  .p-about__bottom-small {
    right: calc((100vw - 1366px) / 2);
  }
}

.p-solu {
  padding-top: clamp(104px, 13.671875vw, 140px);
  padding-bottom: clamp(72px, 9.1666666667vw, 110px);
  background: #f4f2f2;
}

.p-solu__main {
  margin-top: 24px;
  padding-inline: clamp(20px, 8.3333333333vw, 100px);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  position: relative;
}
@media screen and (min-width:768px) {
  .p-solu__main {
    margin-top: 12px;
  }
}
.p-solu__main::before, .p-solu__main::after {
  content: "";
  position: absolute;
  top: clamp(-26px, -2.1666666667vw, -18px);
  width: clamp(40px, 8.1666666667vw, 98px);
  aspect-ratio: 1/1;
  pointer-events: none;
}
.p-solu__main::before {
  left: 0;
  background: url(../images/top-solu-l.png) no-repeat center center/cover;
}
.p-solu__main::after {
  right: 0;
  background: url(../images/top-solu-r.png) no-repeat center center/cover;
}

.p-solu__main-text {
  font-size: clamp(18px, 2.5390625vw, 26px);
  line-height: 1.4230769231;
  font-weight: 500;
  text-align: center;
}

.p-solu__items {
  margin-top: 32px;
}
@media screen and (min-width:768px) {
  .p-solu__items .webgene-blog {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    justify-self: center;
    gap: 14px 10px;
  }
}

.p-solu__items .webgene-item + .webgene-item {
  margin-top: 20px;
}
@media screen and (min-width:768px) {
  .p-solu__items .webgene-item + .webgene-item {
    margin-top: 0;
  }
}

.p-solu__item {
  padding-block: clamp(20px, 2.8333333333vw, 34px);
  padding-inline: clamp(16px, 2.9166666667vw, 35px);
  max-width: 470px;
  margin-inline: auto;
  background: #ffffff;
  position: relative;
}
@media screen and (min-width:768px) {
  .p-solu__item {
    margin-inline: 0;
  }
}
.p-solu__item::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 3px solid #E64849;
  pointer-events: none;
  opacity: 0;
}
@media (any-hover: hover) {
  .p-solu__item:hover::after {
    opacity: 1;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
}

.p-solu__item-title {
  padding-left: clamp(32px, 4.5vw, 54px);
  font-size: clamp(16px, 1.5vw, 18px);
  line-height: 1.4444444444;
  font-weight: 500;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  position: relative;
}
.p-solu__item-title::before {
  content: "";
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  left: 0;
  width: clamp(18px, 2.3333333333vw, 28px);
  height: 25px;
  background: url(../images/icon-comment-red.svg) no-repeat top center/contain;
}

.p-service {
  padding-top: clamp(80px, 11.6666666667vw, 140px);
  padding-bottom: clamp(120px, 13.3333333333vw, 160px);
  padding-left: 20px;
}
@media screen and (min-width:768px) {
  .p-service {
    padding-left: clamp(40px, 7.3206442167vw, 100px);
  }
}
@media screen and (min-width:1367px) {
  .p-service {
    padding-left: calc((100vw - 1166px) / 2);
  }
}

.p-service__top {
  padding-right: 20px;
}
@media screen and (min-width:768px) {
  .p-service__top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: end;
    padding-right: clamp(60px, 9.0043923865vw, 123px);
  }
}
@media screen and (min-width:1367px) {
  .p-service__top {
    padding-right: calc(123px + (100vw - 1366px) / 2);
  }
}

.p-service__btn {
  margin-top: 32px;
  margin-bottom: 36px;
  padding-right: 18px;
  font-size: 15px;
  line-height: 1.4;
  font-weight: 500;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  position: relative;
}
@media screen and (min-width:768px) {
  .p-service__btn {
    margin-top: 0;
  }
}
.p-service__btn::after {
  content: "";
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: 0;
  width: 8px;
  height: 5px;
  background: url(../images/icon-arrow-right-red.svg) no-repeat center center/contain;
}
.p-service__btn .text {
  text-decoration: underline;
}

.p-service__swiper-container {
  position: relative;
}
.p-service__swiper-container .swiper-button-prev,
.p-service__swiper-container .swiper-button-next {
  position: absolute;
  bottom: -76px;
  width: 50px;
  height: 50px;
}
.p-service__swiper-container .swiper-button-prev {
  left: 0;
  background: url("../images/swiper-prev.png") center/contain no-repeat;
}
.p-service__swiper-container .swiper-button-next {
  left: 55px;
  background: url("../images/swiper-next.png") center/contain no-repeat;
}

.swiper-pagination-progressbar.swiper-pagination-horizontal {
  top: calc(100% + 53px);
  left: 127px;
  width: min(903px, 100% - 127px);
  height: 2px;
  background: rgba(40, 40, 40, 0.1);
}

.p-service__swiper {
  padding-top: 48px;
  padding-left: 23px;
}

.p-service__swiper-slide {
  max-width: clamp(240px, 44.2708333333vw, 340px);
  aspect-ratio: 340/420;
  height: auto;
  position: relative;
}
.p-service__swiper-slide::before {
  content: "";
  position: absolute;
  inset: 0;
  background: #282828;
  opacity: 0.3;
  pointer-events: none;
}
.p-service__swiper-slide + .p-service__swiper-slide {
  margin-left: clamp(20px, 3.90625vw, 40px);
}

.p-service__slide-num {
  position: absolute;
  top: -23px;
  left: -18px;
  font-family: "Libertinus Serif", serif;
  color: #E64849;
  font-size: clamp(32px, 3.3333333333vw, 40px);
  line-height: 1.15;
  z-index: 2;
}

.p-service__slide-title {
  position: absolute;
  bottom: 20px;
  left: 20px;
  color: #ffffff;
  font-size: clamp(16px, 1.953125vw, 20px);
  line-height: 1.45;
  font-weight: 700;
  text-decoration: underline;
  padding-right: 23px;
  z-index: 2;
}
.p-service__slide-title::after {
  content: "";
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: 0;
  width: 13px;
  height: 8px;
  background: url(../images/icon-arrow-right.svg) no-repeat center center/contain;
}
.swiper-pagination-progressbar.swiper-pagination-horizontal {
  top: calc(100% + 53px);
  left: 127px;
  width: min(903px, 100% - 127px);
  height: 2px;
  background: rgba(40, 40, 40, 0.15);
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  top: -2px;
  height: 6px;
  background: #E64849;
  border: 0.5px solid #707070;
  border-radius: 3px;
}


.p-gray {
  padding-top: clamp(80px, 9.3333333333vw, 112px);
  padding-bottom: clamp(72px, 9.1666666667vw, 110px);
  background: url(../images/top-works-bg.png) no-repeat top center/cover;
  position: relative;
}

.p-works {
  padding-bottom: clamp(60px, 9.1666666667vw, 110px);
  border-bottom: 1px solid rgba(40, 40, 40, 0.15);
}

@media screen and (min-width:768px) {
  .p-works__title {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
  }
}
@media screen and (min-width:768px) {
  .p-works__title .c-section__title-ja {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
  }
}
.p-works__items {
  margin-top: 26px;
}
@media screen and (min-width:768px) {
  .p-works__items .webgene-blog {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
  }
}
.p-works__items .webgene-item + .webgene-item {
  margin-top: 32px;
}
@media screen and (min-width:768px) {
  .p-works__items .webgene-item + .webgene-item {
    margin-top: 0;
  }
}

.p-works__item {
  max-width: 400px;
  margin-inline: auto;
}
@media screen and (min-width:768px) {
  .p-works__item {
    margin-inline: 0;
    max-width: 340px;
  }
}
@media (any-hover: hover) {
  .p-works__item:hover {
    opacity: 1;
  }
  .p-works__item:hover .p-works__item-head img,
  .p-works__item:hover .p-works__item-head::after {
    scale: 1.1;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
}

.p-works__item-head {
  aspect-ratio: 340/240;
  height: 100%;
  overflow: hidden;
  position: relative;
  z-index: 1;
}
.p-works__item-head::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: url("../images/ogp.jpg") center/cover no-repeat;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  z-index: -1;
}
@media screen and (min-width:768px) {
  .p-works__item-head {
    max-width: 340px;
  }
}

.p-works__item-body {
  margin-top: 13px;
}

.p-works__item-meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}

.p-works__item-tag span {
  padding: 2px 5px;
  font-size: 12px;
  height: 1.4166666667;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
  border-radius: 30px;
  background: #ffffff;
  border: 0.5px solid #707070;
  border-radius: 3px;
}

.p-works__item-date {
  padding-left: 10px;
  font-size: 12px;
  line-height: 1.4166666667;
  border-left: 0.5px solid rgba(40, 40, 40, 0.3);
}

.p-works__item-title {
  margin-top: 10px;
  font-size: clamp(14px, 1.46484375vw, 15px);
  line-height: 1.4666666667;
  font-weight: 500;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.p-works__btn {
  margin-top: 40px;
  margin-inline: auto;
}

.p-info {
  padding-top: clamp(80px, 10vw, 120px);
}

.p-info__items {
  margin-top: 25px;
  max-width: 900px;
  margin-inline: auto;
  border-top: 1px solid rgba(40, 40, 40, 0.15);
}

.p-news__item {
  padding-block: 25px;
  border-bottom: 1px solid rgba(40, 40, 40, 0.15);
}

.p-news__item-meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
}

.p-news__item-date {
  padding-left: 10px;
  font-size: 12px;
  line-height: 1.4166666667;
  border-left: 0.5px solid rgba(40, 40, 40, 0.3);
}

.p-news__item-tag span {
  padding: 2px 5px;
  font-size: 12px;
  height: 1.4166666667;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
  border-radius: 30px;
  background: #ffffff;
  border: 0.5px solid #707070;
  border-radius: 3px;
}

.p-news__item-title {
  padding-right: 28px;
  margin-top: 11px;
  font-size: clamp(14px, 1.46484375vw, 15px);
  line-height: 1.4666666667;
  font-weight: 500;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  position: relative;
}
.p-news__item-title::after {
  content: "";
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: 10px;
  width: 8px;
  height: 5px;
  background: url(../images/icon-arrow-right-red.svg) no-repeat center center/contain;
}

.p-info__btn {
  margin-top: 40px;
  margin-inline: auto;
}

.p-company {
  padding-block: clamp(80px, 9.5vw, 114px);
  color: #ffffff;
  position: relative;
}
.p-company .l-inner {
  z-index: 2;
}

.p-company__title-en {
  font-family: "Libertinus Serif", serif;
  font-size: clamp(24px, 3.125vw, 32px);
  line-height: 1.15625;
  text-align: center;
}

.p-company__title {
  margin-top: clamp(32px, 4.00390625vw, 41px);
  padding-inline: clamp(20px, 8.3333333333vw, 100px);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  position: relative;
}
.p-company__title::before, .p-company__title::after {
  content: "";
  position: absolute;
  top: clamp(-26px, -2.1666666667vw, -18px);
  width: clamp(40px, 8.1666666667vw, 98px);
  aspect-ratio: 1/1;
  pointer-events: none;
}
.p-company__title::before {
  left: 0;
  background: url(../images/top-company-l.png) no-repeat center center/cover;
}
.p-company__title::after {
  right: 0;
  background: url(../images/top-company-r.png) no-repeat center center/cover;
}

.p-company__title-ja {
  font-size: clamp(18px, 2.5390625vw, 26px);
  line-height: 1.4230769231;
  font-weight: 500;
  text-align: center;
}

.p-company__text {
  margin-top: clamp(36px, 4.19921875vw, 43px);
  font-size: clamp(14px, 1.46484375vw, 15px);
  line-height: 1.9333333333;
  font-weight: 500;
  max-width: 406px;
  margin-inline: auto;
  text-align: center;
}

.p-company__btn {
  margin-top: clamp(32px, 3.3333333333vw, 40px);
  margin-inline: auto;
  padding-block: 14px;
  font-size: clamp(14px, 1.953125vw, 15px);
  line-height: 1.4;
  font-weight: 500;
  border: 1px solid #ffffff;
  max-width: 226px;
}
.p-company__btn .text {
  padding-right: 18px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  position: relative;
}
.p-company__btn .text::after {
  content: "";
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: 0;
  width: 8px;
  height: 5px;
  background: url(../images/icon-arrow-right.svg) no-repeat center center/contain;
}
@media (any-hover: hover) {
  .p-company__btn:hover .text::after {
    translate: 10px -50%;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
}


.p-company__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.p-company__bg::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url(../images/top-company-filter.png) no-repeat top center/cover;
  pointer-events: none;
}