.footer-recruit_marquee {
  position: relative;
  z-index: 12;
  display: flex;
  width: 100%;
  overflow: hidden;
  padding: 56px 0 40px;
  background: #f5f4ef;
  color: #1a1a1a;
  user-select: none;
}

.footer-recruit_marquee::before,
.footer-recruit_marquee::after { content:none; display:none; }

.footer-recruit_marquee-single {
  position: relative;
  display: flex;
  flex: none;
  align-items: center;
  gap: clamp(18px, 1.7vw, 30px);
  padding-right: clamp(18px, 1.7vw, 30px);
  will-change: transform;
  animation: recruit-marquee-animation 32s linear infinite;
  font-family: "LINE Seed JP", "LINE Seed", "Arial Rounded MT Bold", sans-serif;
  font-size: clamp(72px, 8vw, 120px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: -.045em;
  white-space: nowrap;
}

.footer-recruit_marquee-single p {
  margin: 0;
}

.footer-recruit_marquee-chara {
  display: block;
  flex: none;
  height: auto;
  object-fit: contain;
}

.footer-recruit_marquee-chara.-no01 { width: clamp(70px, 6.4vw, 96px); }
.footer-recruit_marquee-chara.-no02 { width: clamp(78px, 7.5vw, 113px); }
.footer-recruit_marquee-chara.-no03 { width: clamp(78px, 7.45vw, 112px); }
.footer-recruit_marquee-chara.-no04 { width: clamp(86px, 8.35vw, 125px); }



@keyframes recruit-marquee-animation {
  from { transform: translate3d(0, 0, 0); }
  to { transform: translate3d(-100%, 0, 0); }
}

@media (max-width: 800px) {
  .footer-recruit_marquee {
    padding: 34px 0 24px;
  }

  .footer-recruit_marquee-single {
    gap: 13px;
    padding-right: 13px;
    font-size: clamp(48px, 12.5vw, 62px);
  }

  .footer-recruit_marquee-chara.-no01,
  .footer-recruit_marquee-chara.-no02 { width: 60px; }
  .footer-recruit_marquee-chara.-no03 { width: 68px; }
  .footer-recruit_marquee-chara.-no04 { width: 80px; }
}

@media (prefers-reduced-motion: reduce) {
  .footer-recruit_marquee-single {
    animation: none;
  }

  .footer-recruit_marquee-single:not(:first-child) {
    display: none;
  }
}

.tl-entry-wrap{position:relative}
.tl-entry-character{display:block;flex:none;width:clamp(110px,11vw,170px);height:clamp(110px,11vw,170px);transform-origin:50% 90%;animation:tl-entry-bounce var(--entry-duration,3s) ease-in-out infinite;animation-delay:var(--entry-delay,0s)}
.tl-entry-character svg,.tl-entry-character img{display:block;width:100%;height:100%;object-fit:contain}
.tl-entry-character:nth-of-type(even){animation-name:tl-entry-sway}


.tl-entry-wrap[data-paused] .footer-recruit_marquee-single,.tl-entry-wrap[data-paused] .tl-entry-character,.tl-entry-wrap[data-suspended] .footer-recruit_marquee-single,.tl-entry-wrap[data-suspended] .tl-entry-character,.tl-entry-wrap:focus-within .footer-recruit_marquee-single,.tl-entry-wrap:focus-within .tl-entry-character{animation-play-state:paused}
@keyframes tl-entry-bounce{0%,100%{transform:translateY(0) rotate(-3deg)}45%{transform:translateY(-12px) rotate(3deg)}70%{transform:translateY(-3px) rotate(0)}}
@keyframes tl-entry-sway{0%,100%{transform:translateY(-3px) rotate(4deg)}50%{transform:translateY(-9px) rotate(-4deg)}}
@media(max-width:800px){.tl-entry-character{width:90px;height:90px}}
@media(prefers-reduced-motion:reduce){.tl-entry-character{animation:none}.footer-recruit_marquee{overflow-x:auto}.footer-recruit_marquee-single{will-change:auto}}

.footer-recruit_marquee-single>p{color:#fff!important}

/* Real mascot motion replaces whole-image bobbing. */
.tl-contact-marquee-link{display:block;color:#fff;text-decoration:none}
.tl-contact-marquee-link:focus-visible{outline:3px solid #fff;outline-offset:-5px}
.tl-entry-character,.tl-entry-character:nth-of-type(even){position:relative;animation:none}
.tl-entry-character canvas{position:absolute;inset:0;display:block;width:100%;height:100%;opacity:0}
.tl-entry-character[data-ready] canvas{opacity:1}
.tl-entry-character[data-ready] img{visibility:hidden}
