body.koe-works-cases-ready .elementor-17 .elementor-element.elementor-element-705a473 {
  --padding-top: clamp(82px, 7.4vw, 120px) !important;
  padding-top: clamp(82px, 7.4vw, 120px) !important;
}

body.koe-works-cases-ready .elementor-17 .elementor-element.elementor-element-b45f0b9 {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding-inline: clamp(72px, 6vw, 116px);
  text-align: left !important;
}

body.koe-works-cases-ready .elementor-17 .elementor-element.elementor-element-b45f0b9 .elementor-heading-title {
  width: 100%;
  color: #fff !important;
  font-family: "IBM Plex Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif !important;
  font-size: clamp(48px, 6.8vw, 112px) !important;
  font-weight: 900 !important;
  line-height: 0.9 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
  text-transform: uppercase;
}

body.koe-works-cases-ready .koe-works-typewriter {
  position: relative;
  display: inline-block;
  max-width: 100%;
  overflow: hidden;
  white-space: nowrap;
  clip-path: inset(0 100% 0 0);
  border-right: 0.055em solid transparent;
  font-family: "IBM Plex Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif !important;
  font-weight: 900 !important;
}

body.koe-works-cases-ready .koe-works-typewriter.koe-title-visible {
  border-right-color: currentColor;
  animation:
    koeWorksTypewriter 1.35s steps(16, end) both,
    koeWorksCaret 0.72s steps(1, end) 0s 5 forwards;
}

body.koe-works-cases-ready .koe-works-desktop-text {
  display: inline;
  font-family: inherit !important;
}

body.koe-works-cases-ready .koe-works-mobile-text {
  display: none;
  font-family: inherit !important;
}

body.koe-works-cases-ready .koe-works-mobile-text span {
  font-family: inherit !important;
}

@keyframes koeWorksTypewriter {
  from {
    clip-path: inset(0 100% 0 0);
  }
  to {
    clip-path: inset(0 0 0 0);
  }
}

@keyframes koeWorksCaret {
  50% {
    border-right-color: transparent;
  }
  100% {
    border-right-color: transparent;
  }
}

  body.koe-works-cases-ready .elementor-image-carousel .swiper-slide {
    width: 68vw !important;
    max-width: 68vw !important;
    margin-right: 12px !important;
  }

  body.koe-works-cases-ready .elementor-image-carousel .swiper-slide-inner {
    gap: 8px;
  }

  body.koe-works-cases-ready .elementor-image-carousel .swiper-slide-image {
    aspect-ratio: 4 / 5.35;
  }

  body.koe-works-cases-ready .elementor-widget-image-carousel,
  body.koe-works-cases-ready .elementor-image-carousel-wrapper {
    margin-bottom: 18px !important;
  }

  body.koe-works-cases-ready .elementor-section,
  body.koe-works-cases-ready .elementor-container,
  body.koe-works-cases-ready .e-con {
    row-gap: 18px !important;
  }

  body.koe-works-cases-ready .elementor-image-carousel .swiper-slide {
    height: auto !important;
    overflow: visible !important;
  }

body.koe-works-cases-ready .elementor-image-carousel .swiper-slide::before,
body.koe-works-cases-ready .elementor-image-carousel .swiper-slide::after,
body.koe-works-cases-ready .elementor-image-carousel .swiper-slide:hover::before,
body.koe-works-cases-ready .elementor-image-carousel .swiper-slide:hover::after {
  content: none !important;
  display: none !important;
  opacity: 0 !important;
}

body.koe-works-cases-ready .elementor-image-carousel .swiper-slide-inner {
  display: grid !important;
  gap: clamp(10px, 1vw, 15px);
  height: auto !important;
  margin: 0 !important;
}

body.koe-works-cases-ready .elementor-image-carousel .swiper-slide-image {
  width: 100% !important;
  aspect-ratio: 4 / 5;
  display: block;
  object-fit: cover;
}

body.koe-works-cases-ready .koe-case-caption {
  display: grid;
  gap: 5px;
  direction: ltr;
  unicode-bidi: isolate;
  padding: 0 2px clamp(18px, 1.8vw, 28px);
  color: #fff;
  font-family: var(--koe-chrome-font, "AvenirLTStd-Roman", "Avenir LT Pro", "Helvetica Neue", Arial, sans-serif);
}

body.koe-works-cases-ready .koe-case-title {
  margin: 0;
  color: inherit;
  font-family: var(--koe-chrome-bold-font, "AvenirLTStd-Black", "AvenirLTStd-Roman", "Avenir LT Pro", sans-serif);
  font-size: clamp(13px, 0.96vw, 16px);
  font-weight: 900;
  line-height: 1.18;
  letter-spacing: 0.02em;
}

body.koe-works-cases-ready .koe-case-copy {
  margin: 0;
  color: rgb(255 255 255 / 0.76);
  font-size: clamp(12px, 0.82vw, 14px);
  font-weight: 400;
  line-height: 1.35;
  letter-spacing: 0.01em;
}

@media (min-width: 768px) {
  body.koe-works-cases-ready .elementor-image-carousel .swiper-slide {
    width: clamp(300px, 28vw, 460px) !important;
    max-width: clamp(300px, 28vw, 460px) !important;
    margin-right: clamp(12px, 1.3vw, 22px) !important;
  }

  body.koe-works-cases-ready .elementor-image-carousel .swiper-slide-image {
    aspect-ratio: 4 / 5 !important;
  }
}

body.koe-works-cases-ready .koe-works-contact-wrap {
  position: relative;
  display: flex;
  justify-content: center;
  margin-top: -60px;
  padding: clamp(18px, 1.7vw, 28px) 22px clamp(58px, 7vw, 104px);
  background: #000;
}

body.koe-works-cases-ready .koe-works-contact {
  display: inline-flex;
  align-items: center;
  gap: 18px;
  color: #fff;
  text-decoration: none;
  font-family: var(--koe-chrome-bold-font, "AvenirLTStd-Black", "AvenirLTStd-Roman", "Avenir LT Pro", sans-serif);
  font-size: clamp(15px, 1.1vw, 18px);
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.03em;
}

body.koe-works-cases-ready .koe-works-contact-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 34px;
  border-radius: 999px;
  background: #fff;
  color: #050505;
  transition: transform 180ms ease, background 180ms ease;
}

body.koe-works-cases-ready .koe-works-contact-icon svg {
  display: block;
  width: 18px;
  height: 18px;
  fill: currentColor;
}

body.koe-works-cases-ready .koe-works-contact:hover .koe-works-contact-icon,
body.koe-works-cases-ready .koe-works-contact:focus-visible .koe-works-contact-icon {
  transform: translateX(4px);
}

@media (max-width: 767px) {
  body.koe-works-cases-ready .elementor-17 .elementor-element.elementor-element-705a473 {
    --padding-top: 76px !important;
    padding-top: 76px !important;
  }

  body.koe-works-cases-ready .elementor-17 .elementor-element.elementor-element-b45f0b9 {
    padding-inline: 22px;
    text-align: left !important;
  }

  body.koe-works-cases-ready .elementor-17 .elementor-element.elementor-element-b45f0b9 .elementor-heading-title {
    font-size: clamp(46px, 14vw, 60px) !important;
    line-height: 0.96 !important;
    text-align: left !important;
  }

  body.koe-works-cases-ready .koe-works-typewriter {
    white-space: normal;
    border-right: 0 !important;
    clip-path: inset(0 0 0 0);
    opacity: 0;
  }

  body.koe-works-cases-ready .koe-works-typewriter.koe-title-visible {
    animation: koeWorksMobileFade 0.62s ease-out both;
  }

  body.koe-works-cases-ready .koe-works-desktop-text {
    display: none;
  }

  body.koe-works-cases-ready .koe-works-mobile-text {
    display: grid;
    gap: 0.05em;
  }

  body.koe-works-cases-ready .koe-case-caption {
    gap: 4px;
    padding-bottom: 10px;
  }

  body.koe-works-cases-ready .koe-case-title {
    font-size: 12px;
    line-height: 1.22;
  }

  body.koe-works-cases-ready .koe-case-copy {
    font-size: 11px;
    line-height: 1.35;
  }
}

@keyframes koeWorksMobileFade {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.koe-works-cases-ready .koe-works-typewriter.koe-title-visible {
    animation: none;
    clip-path: inset(0 0 0 0);
    opacity: 1;
  }
}
