.p-top-solution {
  position: relative;
  background: rgba(0, 209, 252, 0.1);
  padding: calc(var(--fs-fluid) * 2) calc(var(--fs-fluid) * 2.4);
  min-height: calc(var(--fs-fluid) * 80);
  display: grid;
  grid-template-columns: 1fr calc(var(--fs-fluid) * 56.6);
  margin-top: calc(var(--fs-fluid) * 10);
  margin-bottom: 0 !important;
  align-items: start;
}
@media only screen and (max-width: 767px) {
  .p-top-solution {
    display: flex;
    flex-direction: column;
    padding: calc(var(--fs-fluid) * 4.5) calc(var(--fs-fluid) * 0) calc(var(--fs-fluid) * 0);
  }
}
.p-top-solution .p-top-solution__heading:first-child {
  margin-top: calc(var(--fs-fluid) * 6.6) !important;
  padding-left: calc(var(--fs-fluid) * 3.5);
  z-index: 1;
}
@media only screen and (max-width: 767px) {
  .p-top-solution .p-top-solution__heading:first-child {
    order: 1;
    padding: 0 calc(var(--fs-fluid) * 1.6);
    margin-top: calc(var(--fs-fluid) * 0) !important;
  }
}
.p-top-solution .p-top-solution__heading:first-child .p-top-solution__reg {
  font-size: calc(var(--fs-fluid) * 3);
  vertical-align: bottom;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .p-top-solution .p-top-solution__heading:first-child .p-top-solution__reg {
    font-size: calc(var(--fs-fluid) * 2.3);
  }
}
.p-top-solution .p-top-solution__heading:first-child .p-top-solution__title-ja {
  margin: 0 !important;
  font-weight: 700;
  line-height: 1.65;
  color: #c6000c;
  font-size: calc(var(--fs-fluid) * 1.8);
}
@media only screen and (max-width: 767px) {
  .p-top-solution .p-top-solution__heading:first-child .p-top-solution__title-ja {
    font-size: calc(var(--fs-fluid) * 1.2);
  }
}
.p-top-solution .p-top-solution__heading:first-child .p-top-solution__title-en {
  line-height: 1;
  color: #c6000c;
  font-size: calc(var(--fs-fluid) * 6);
  margin-top: calc(var(--fs-fluid) * 1.6);
  margin-bottom: 0;
  font-weight: 400;
}
@media only screen and (max-width: 767px) {
  .p-top-solution .p-top-solution__heading:first-child .p-top-solution__title-en {
    font-size: calc(var(--fs-fluid) * 4.5);
    line-height: 1.02;
  }
}
.p-top-solution .p-top-solution__heading:first-child .p-top-solution__title-en .logo {
  width: calc(var(--fs-fluid) * 20.5);
  vertical-align: bottom;
  margin-bottom: calc(var(--fs-fluid) * 0.1);
  margin-right: calc(var(--fs-fluid) * 1);
}
@media only screen and (max-width: 767px) {
  .p-top-solution .p-top-solution__heading:first-child .p-top-solution__title-en .logo {
    width: calc(var(--fs-fluid) * 15.6);
  }
}
.p-top-solution .p-top-solution__heading:first-child .p-top-solution__copy {
  font-weight: 700;
  line-height: 1.6;
  font-size: calc(var(--fs-fluid) * 1.8);
  margin-top: calc(var(--fs-fluid) * 1.6);
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .p-top-solution .p-top-solution__heading:first-child .p-top-solution__copy {
    font-size: calc(var(--fs-fluid) * 1.4);
    margin-top: calc(var(--fs-fluid) * 1.2);
  }
}
.p-top-solution .p-top-solution__items {
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: calc(var(--fs-fluid) * 1);
}
@media only screen and (max-width: 767px) {
  .p-top-solution .p-top-solution__items {
    order: 3;
    padding: calc(var(--fs-fluid) * 2.5) calc(var(--fs-fluid) * 1.6);
    background: #e5e5e7;
  }
}
.p-top-solution .p-top-solution__items .c-solution-item {
  position: relative;
  display: grid;
  align-items: center;
  grid-template-columns: calc(var(--fs-fluid) * 16) 1fr;
  gap: calc(var(--fs-fluid) * 1.6);
  padding: calc(var(--fs-fluid) * 0.6) calc(var(--fs-fluid) * 1.6) calc(var(--fs-fluid) * 0.6) calc(var(--fs-fluid) * 0.8);
  border-radius: calc(var(--fs-fluid) * 0.6);
  background: #ffffff;
  color: #111111;
}
@media only screen and (max-width: 767px) {
  .p-top-solution .p-top-solution__items .c-solution-item {
    grid-template-columns: calc(var(--fs-fluid) * 10) 1fr calc(var(--fs-fluid) * 2);
    padding: calc(var(--fs-fluid) * 0.6) calc(var(--fs-fluid) * 0.8) calc(var(--fs-fluid) * 0.6) calc(var(--fs-fluid) * 0.8);
    gap: calc(var(--fs-fluid) * 1.4);
  }
}
.p-top-solution .p-top-solution__items .c-solution-item .c-solution-item__thumbnail {
  background: #faebec;
  border-radius: calc(var(--fs-fluid) * 0.6);
  aspect-ratio: 160/84;
}
@media only screen and (max-width: 767px) {
  .p-top-solution .p-top-solution__items .c-solution-item .c-solution-item__thumbnail {
    aspect-ratio: 100/82;
  }
}
.p-top-solution .p-top-solution__items .c-solution-item .c-solution-item__thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  vertical-align: bottom;
}
.p-top-solution .p-top-solution__items .c-solution-item .c-solution-item__text {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  align-items: start;
  gap: calc(var(--fs-fluid) * 0.4) calc(var(--fs-fluid) * 0.6);
  line-height: 1.5;
}
@media only screen and (max-width: 767px) {
  .p-top-solution .p-top-solution__items .c-solution-item .c-solution-item__text {
    gap: calc(var(--fs-fluid) * 0.6) calc(var(--fs-fluid) * 0.6);
  }
}
.p-top-solution .p-top-solution__items .c-solution-item .c-solution-item__text .c-solution-item__index {
  font-size: calc(var(--fs-fluid) * 1.3);
  font-weight: 700;
  color: #c6000c;
}
@media only screen and (max-width: 767px) {
  .p-top-solution .p-top-solution__items .c-solution-item .c-solution-item__text .c-solution-item__index {
    font-size: calc(var(--fs-fluid) * 1.1);
    gap: calc(var(--fs-fluid) * 0.4) calc(var(--fs-fluid) * 0.8);
  }
}
.p-top-solution .p-top-solution__items .c-solution-item .c-solution-item__text .c-solution-item__lead {
  font-size: calc(var(--fs-fluid) * 1.3);
  font-weight: 700;
  color: rgba(17, 17, 17, 0.5);
  color: #c6000c;
}
@media only screen and (max-width: 767px) {
  .p-top-solution .p-top-solution__items .c-solution-item .c-solution-item__text .c-solution-item__lead {
    font-size: calc(var(--fs-fluid) * 1.1);
  }
}
.p-top-solution .p-top-solution__items .c-solution-item .c-solution-item__text .c-solution-item__copy,
.p-top-solution .p-top-solution__items .c-solution-item .c-solution-item__text .c-solution-item__copies {
  grid-column: 1/-1;
}
.p-top-solution .p-top-solution__items .c-solution-item .c-solution-item__text .c-solution-item__subcopy {
  font-size: calc(var(--fs-fluid) * 1.4);
  font-weight: 700;
  color: rgba(17, 17, 17, 0.5);
}
@media only screen and (max-width: 767px) {
  .p-top-solution .p-top-solution__items .c-solution-item .c-solution-item__text .c-solution-item__subcopy {
    font-size: calc(var(--fs-fluid) * 1.1);
  }
}
.p-top-solution .p-top-solution__items .c-solution-item .c-solution-item__text .c-solution-item__copy {
  font-size: calc(var(--fs-fluid) * 1.4);
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  .p-top-solution .p-top-solution__items .c-solution-item .c-solution-item__text .c-solution-item__copy {
    font-size: calc(var(--fs-fluid) * 1);
  }
}
.p-top-solution .p-top-solution__items .c-solution-item .c-solution-item__arrow {
  width: calc(var(--fs-fluid) * 2);
  height: 100%;
  position: absolute;
  inset: 0 calc(var(--fs-fluid) * 1.6) 0 auto;
  align-items: center;
  justify-content: center;
  display: flex;
  border-bottom: 1px solid #c6000c;
}
@media only screen and (max-width: 767px) {
  .p-top-solution .p-top-solution__items .c-solution-item .c-solution-item__arrow {
    width: calc(var(--fs-fluid) * 1.5);
    inset: 0 calc(var(--fs-fluid) * 0.6) 0 auto;
  }
}
.p-top-solution .p-top-solution__items .c-solution-item .c-solution-item__arrow svg {
  width: calc(var(--fs-fluid) * 0.86);
}
@media only screen and (max-width: 767px) {
  .p-top-solution .p-top-solution__items .c-solution-item.c-solution-item--multi {
    grid-template-columns: calc(var(--fs-fluid) * 10) 1fr;
  }
}
.p-top-solution .p-top-solution__items .c-solution-item.c-solution-item--multi .c-solution-item__text {
  align-items: stretch;
}
.p-top-solution .p-top-solution__items .c-solution-item.c-solution-item--multi .c-solution-item__copies {
  display: flex;
  flex-direction: column;
  grid-column: 1/-1;
}
.p-top-solution .p-top-solution__items .c-solution-item.c-solution-item--multi .c-solution-item__row {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: calc(var(--fs-fluid) * 0.8);
  padding: calc(var(--fs-fluid) * 0.5) 0 calc(var(--fs-fluid) * 0.1);
  border-bottom: 1px solid rgba(17, 17, 17, 0.1);
}
.p-top-solution .p-top-solution__items .c-solution-item.c-solution-item--multi .c-solution-item__row:first-child {
  padding-top: 0;
}
.p-top-solution .p-top-solution__items .c-solution-item.c-solution-item--multi .c-solution-item__row .c-solution-item__arrow {
  position: static;
  width: calc(var(--fs-fluid) * 2);
  height: calc(100% + var(--fs-fluid) * 0.5 - 1px);
  border-bottom: 1px solid #c6000c;
  flex-shrink: 0;
}
@media only screen and (max-width: 767px) {
  .p-top-solution .p-top-solution__items .c-solution-item.c-solution-item--multi .c-solution-item__row .c-solution-item__arrow {
    width: calc(var(--fs-fluid) * 1.5);
  }
}
.p-top-solution .p-top-solution__items .c-solution-item.c-solution-item--subcopy {
  grid-template-columns: calc(var(--fs-fluid) * 16) 1fr;
}
@media only screen and (max-width: 767px) {
  .p-top-solution .p-top-solution__items .c-solution-item.c-solution-item--subcopy {
    grid-template-columns: calc(var(--fs-fluid) * 10) 1fr;
  }
}
.p-top-solution .p-top-solution__items .c-solution-item.c-solution-item--subcopy .c-solution-item__text {
  grid-template-columns: auto 1fr;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: end;
  margin-top: auto;
}
@media only screen and (max-width: 767px) {
  .p-top-solution .p-top-solution__items .c-solution-item.c-solution-item--subcopy .c-solution-item__text {
    padding-right: calc(var(--fs-fluid) * 2);
  }
}
.p-top-solution .p-top-solution__items .c-solution-item.c-solution-item--subcopy .c-solution-item__text .c-solution-item__index {
  align-self: start;
}
.p-top-solution .p-top-solution__items .c-solution-item.c-solution-item--subcopy .c-solution-item__text .c-solution-item__subcopy {
  align-self: start;
}
.p-top-solution .p-top-solution__items .c-solution-item.c-solution-item--subcopy .c-solution-item__text .c-solution-item__copy {
  grid-column: 2/3;
  padding-bottom: calc(var(--fs-fluid) * 1);
  border-bottom: 1px solid rgba(17, 17, 17, 0.1);
}
@media only screen and (max-width: 767px) {
  .p-top-solution .p-top-solution__items .c-solution-item.c-solution-item--subcopy .c-solution-item__text .c-solution-item__copy {
    padding-bottom: calc(var(--fs-fluid) * 0.4);
  }
}
.p-top-solution .p-top-solution__items .c-solution-item.c-solution-item--subcopy .c-solution-item__arrow {
  position: absolute;
  inset: calc(var(--fs-fluid) * 0.6) calc(var(--fs-fluid) * 1.6) calc(var(--fs-fluid) * 0.6) auto;
  height: auto;
  width: calc(var(--fs-fluid) * 2);
  padding-bottom: calc(var(--fs-fluid) * 0.8);
}
@media only screen and (max-width: 767px) {
  .p-top-solution .p-top-solution__items .c-solution-item.c-solution-item--subcopy .c-solution-item__arrow {
    width: calc(var(--fs-fluid) * 1.5);
    padding-bottom: calc(var(--fs-fluid) * 0.4);
  }
}
.p-top-solution .p-top-solution__image {
  position: absolute;
  inset: auto 0 0;
}
@media only screen and (max-width: 767px) {
  .p-top-solution .p-top-solution__image {
    position: relative;
    order: 2;
    margin-top: calc(var(--fs-fluid) * 2.7);
  }
}
.p-top-solution .p-top-solution__image picture {
  display: block;
}
.p-top-solution .p-top-solution__image img {
  vertical-align: bottom;
  width: 100%;
}
.p-top-solution .p-top-solution__image .p-top-solution__hotspots {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.p-top-solution .p-top-solution__image .p-top-solution__hotspot {
  position: absolute;
  left: var(--x);
  top: var(--y);
  width: calc(var(--fs-fluid) * 4);
  height: calc(var(--fs-fluid) * 4);
  transform: translate(-50%, -50%);
  border-radius: 50%;
  pointer-events: auto;
  cursor: pointer;
}
@media only screen and (max-width: 767px) {
  .p-top-solution .p-top-solution__image .p-top-solution__hotspot {
    left: var(--x-sp, var(--x));
    top: var(--y-sp, var(--y));
    width: calc(var(--fs-fluid) * 2.3);
    height: calc(var(--fs-fluid) * 2.3);
  }
}
.p-top-solution .p-top-solution__image .p-top-solution__hotspots--debug .p-top-solution__hotspot {
  background: rgba(0, 255, 0, 0.4);
  outline: 1px solid #0f0;
}
.p-top-solution .p-top-solution__image .p-top-solution__hotspot-label {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

/*# sourceMappingURL=style.css.map */
