/*--------------------------------------------------------------
  COMPANY
--------------------------------------------------------------*/
.p-company .l-main {
  overflow: hidden;
}

.p-company .company .inner {
  width: 92%;
  margin-inline: auto;
  padding-top: min(40px, 2.5rem, 10.6666666667vw);
  padding-bottom: min(55px, 3.4375rem, 14.6666666667vw);
}

.p-company .company .list {
  display: flex;
  flex-direction: column;
  row-gap: min(20px, 1.25rem, 5.3333333333vw);
}

.p-company .company .item {
  box-shadow: 0 0 min(15px, 0.9375rem, 4vw) rgba(134, 134, 134, 0.16);
}

.p-company .company .text-container {
  margin-top: min(20px, 1.25rem, 5.3333333333vw);
  padding-inline: min(15px, 0.9375rem, 4vw);
  padding-bottom: min(70px, 4.375rem, 18.6666666667vw);
  position: relative;
}

.p-company .company .lead {
  font-family: sofia-pro, sans-serif;
  font-size: min(13px, 0.8125rem, 3.4666666667vw);
  font-weight: 600;
  line-height: 1.3076923077;
  padding-left: min(9px, 0.5625rem, 2.4vw);
  position: relative;
}

.p-company .company .lead::before {
  content: "";
  display: block;
  background-color: #008e41;
  width: min(4px, 0.25rem, 1.0666666667vw);
  height: min(13px, 0.8125rem, 3.4666666667vw);
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.p-company .company .head {
  font-size: min(20px, 1.25rem, 5.3333333333vw);
  line-height: 1.45;
  margin-top: min(5px, 0.3125rem, 1.3333333333vw);
}

.p-company .company .text {
  /* 9/24 */
  /* font-size: min(14px, 0.875rem, 3.7333333333vw); */
  /* line-height: 1.5714285714; */
  font-size: min(18px, 1.125rem, 4.8vw);
  line-height: calc(32/18);
  /* ------------------ 9/24 */
  font-weight: 500;
  margin-top: min(15px, 0.9375rem, 4vw);
}

.p-company .company .button {
  position: absolute;
  right: 0;
  bottom: 0;
}

.p-company .company .button .c-button {
  font-size: min(13px, 0.8125rem, 3.4666666667vw);
  line-height: 1.3076923077;
  letter-spacing: 0.05em;
  background-image: linear-gradient(13.112deg, #00C85B, #00ADAC);
  border-top-left-radius: min(15px, 0.9375rem, 4vw);
  width: min(165px, 10.3125rem, 44vw);
  height: min(50px, 3.125rem, 13.3333333333vw);
}

.p-company .company .button .c-button::after {
  background-image: linear-gradient(12.818deg, #0FC3C1, #1CFF83);
}

@media (768px <=width) {
  .p-company .company .inner {
    width: min(1200px, 75rem, 83.3333333333vw);
    padding-top: min(110px, 6.875rem, 7.6388888889vw);
    padding-bottom: min(86px, 5.375rem, 5.9722222222vw);
  }

  .p-company .company .list {
    row-gap: min(50px, 3.125rem, 3.4722222222vw);
  }

  .p-company .company .item {
    display: flex;
    box-shadow: 0 0 min(15px, 0.9375rem, 1.0416666667vw) rgba(134, 134, 134, 0.16);
  }

  .p-company .company .item:nth-of-type(2n + 1) {
    flex-direction: row;
  }

  .p-company .company .item:nth-of-type(2n) {
    flex-direction: row-reverse;
  }

  .p-company .company .image-container {
    width: 50%;
  }

  .p-company .company .text-container {
    width: 50%;
    margin-top: 0;
    padding-right: min(83px, 5.1875rem, 5.7638888889vw);
    padding-left: min(77px, 4.8125rem, 5.3472222222vw);
    padding-bottom: 0;
    position: relative;
  }

  .p-company .company .lead {
    font-size: min(16px, 1rem, 1.1111111111vw);
    line-height: 1.25;
    margin-top: min(74px, 4.625rem, 5.1388888889vw);
    padding-left: min(12px, 0.75rem, 0.8333333333vw);
  }

  .p-company .company .lead::before {
    width: min(4px, 0.25rem, 0.2777777778vw);
    height: min(13px, 0.8125rem, 0.9027777778vw);
  }

  .p-company .company .head {
    font-size: min(32px, 2rem, 2.2222222222vw);
    line-height: 1.4375;
    margin-top: min(4px, 0.25rem, 0.2777777778vw);
    padding-left: min(12px, 0.75rem, 0.8333333333vw);
  }

  .p-company .company .text {
    font-size: min(18px, 1.125rem, 1.25vw);
    line-height: 1.7777777778;
    margin-top: min(32px, 2rem, 2.2222222222vw);
  }

  .p-company .company .button .c-button {
    font-size: min(20px, 1.25rem, 1.3888888889vw);
    line-height: 1.25;
    letter-spacing: 0.1em;
    background-image: linear-gradient(12.818deg, #00C85B, #00ADAC);
    border-top-left-radius: 0;
    width: min(273px, 17.0625rem, 18.9583333333vw);
    height: min(90px, 5.625rem, 6.25vw);
  }
}

/* 12.11追記 Video section*/
.p-company .fv .bg video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.p-company .video {
  position: relative;
  overflow: hidden;
}

.p-company .video .inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  background-image: linear-gradient(to bottom, #fff 0 45%, #00C85B 45%, #00ADAC 91%, #fff 91%);
  padding-top: min(70px, 4.375rem, 18.6666666667vw);
  padding-bottom: min(80px, 5rem, 21.3333333333vw);
  position: relative;
  overflow: hidden;
}

.p-company .video .bg-text {
  position: absolute;
  top: 0;
  left: 0;
}

.p-company .video .bg-text p {
  font-family: sofia-pro, sans-serif;
  font-size: min(80px, 5rem, 21.3333333333vw);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0;
  white-space: nowrap;
  color: #d5d5d5;
  opacity: 0.2;
}

.p-company .video .lead {
  font-family: sofia-pro, sans-serif;
  font-size: min(11px, 0.6875rem, 2.9333333333vw);
  font-weight: 600;
  line-height: 1.2727272727;
  text-align: center;
  color: #00ba84;
}

.p-company .video .title {
  font-size: min(20px, 1.25rem, 5.3333333333vw);
  line-height: 1.45;
  letter-spacing: 0.05em;
  text-align: center;
  color: #00ba84;
}

.p-company .video .movie-container {
  width: min(345px, 21.5625rem, 92vw);
  aspect-ratio: 345/200;
  margin-top: min(23px, 1.4375rem, 6.1333333333vw);
}

.p-company .video .movie-container video {
  width: 100%;
  height: 100%;
}

@media (768px <=width) {
  .p-company .video {
    background-image: linear-gradient(to bottom, #fff 0 26.3%, #00C85B 26.3%, #00ADAC 78.2%, #fff 78.2%);
    /* 9/25 */
    overflow: hidden;
  }

  .p-company .video .inner {
    background-image: none;
    margin-inline: auto;
    padding-top: 0;
    padding-bottom: min(270px, 16.875rem, 18.75vw);
    /* 9/25 */
    max-width: 1440px;
    overflow: visible;
  }

  .p-company .video .bg-text {
    top: max(-6px, -0.375rem, -0.4166666667vw);
    left: auto;
    /* 9/25 */
    /* right: 0; */
    right: max(-63px, -3.9375rem, -4.38vw);

  }

  .p-company .video .bg-text p {
    font-size: min(205px, 12.8125rem, 14.2361111111vw);
    line-height: 1.2487804878;
    color: #a3a3a3;
    opacity: 0.11;
  }

  .p-company .video .lead {
    font-size: min(20px, 1.25rem, 1.3888888889vw);
    line-height: 1.25;
  }

  .p-company .video .title {
    font-size: min(36px, 2.25rem, 2.5vw);
    line-height: 1.3888888889;
  }

  .p-company .video .movie-container {
    width: min(740px, 46.25rem, 51.3888888889vw);
    aspect-ratio: 740/429;
    margin-top: min(52px, 3.25rem, 3.6111111111vw);
    position: relative;
    z-index: 1;
  }
}

@media (768px <=width) {
  .company-contact{
    margin-top: -100px;
  }
}