.home-hero {
  position: relative;
  overflow: hidden;
  padding-top: 6.25rem;
  padding-bottom: 0.625rem;
  background-color: var(--lavender);
  @media screen and (min-width: 1200px) {
    padding-top: 0;
    padding-bottom: 5rem;
    height: clamp(67.5rem, calc(var(--vh, 1vh) * 100 + 240px), 80rem);
  }
  & .home-hero__illust {
    max-height: 100%;
    & img {
      max-height: 100%;
      object-fit: contain;
      object-position: top;
    }
  }
}

.home-work-list .webgene-blog, .home-blog-list .webgene-blog  {
  display: grid;
  gap: 2.5rem;
  @media (min-width: 768px) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    & .webgene-no-items {
      grid-column: 1 / span 2;
    }
  }
  @media (min-width: 1200px) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    & .webgene-no-items {
      grid-column: 1 / span 4;
    }
  }
}

.home-works-cate .webgene-blog {
  display: flex;
  flex-wrap: wrap;
  gap: 2.5rem;
  @media (min-width: 768px) {
    justify-content: flex-end;
  }
}

.home-products-dec-illust {
  position: absolute;
  width: 10rem;
  transform: skew(-24deg);
  box-shadow: 0 2px 6px 1px rgba(0, 0, 0, 0.15), 0 4px 12px 2px rgba(0, 0, 0, 0.15), 0 8px 24px 4px rgba(0, 0, 0, 0.15), 0 16px 48px 8px rgba(0, 0, 0, 0.15);
  @media (min-width: 768px) {
    width: 15rem;
  }
  @media (min-width: 1024px) {
    width: 20rem;
  }
  @media (min-width: 1200px) {
    width: 31.125rem;
  }
  &.home-products-dec-illust--1 {
    top: 1.875rem;
    left: -3rem;
    @media (min-width: 768px) {
      left: -5rem;
    }
  }
  &.home-products-dec-illust--2 {
    bottom: -0.125rem;
    right: -1rem;
    @media (min-width: 768px) {
      bottom: 0.25rem;
      right: -3rem;
    }
    @media (min-width: 1024px) {
      bottom: 2rem;
      right: -5rem;
    }
  }
}

.home-guide-bg-illust {
  position: absolute;
  inset: 0;
  &::after {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    background-color: hsl(0 0 0 / 40%);
    pointer-events: none;
  }
  & img {
    object-fit: cover;
    width: 100%;
    height: 100%;
  }
}

.home-instagram .webgene-blog {
  display: grid;
  gap: 4rem;
  @media (min-width: 768px) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    & .webgene-no-items {
      grid-column: 1 / span 2;
    }
  }
  @media (min-width: 1200px) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    & .webgene-no-items {
      grid-column: 1 / span 4;
    }
  }
}



