.one-shot-lp {
    width: 100%;
    padding: 0;
    margin: 0;
    overflow-x: hidden;
    background: #000;
}

.one-shot-lp .os-float-btns {
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 9999;
  display: none;
  justify-content: center;
  align-items: center;
  pointer-events: none;
}
.one-shot-lp .os-float-btns.is-visible {
  display: flex;
}
.one-shot-lp .os-float-btns.is-visible .os-float-btns__main {
  animation: floatBtnsPop 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
}
@keyframes floatBtnsPop {
  0%   { transform: scale(0.8) translateY(20px); opacity: 0; }
  100% { transform: scale(1)   translateY(0);    opacity: 1; }
}
@keyframes npcActive {
  0%, 100% { transform: translateY(0)    scale(1);    filter: brightness(1)    drop-shadow(0 0 3px rgba(255,200,0,0.2)); }
  30%      { transform: translateY(-4px) scale(1.02); filter: brightness(1.08) drop-shadow(0 0 8px rgba(255,200,0,0.45)); }
  60%      { transform: translateY(1px)  scale(0.99); filter: brightness(1.04) drop-shadow(0 0 5px rgba(255,200,0,0.3)); }
}
@keyframes npcCalm {
  0%, 100% { transform: translateY(0)   scale(1);    filter: brightness(1)    drop-shadow(0 0 2px rgba(255,200,0,0.12)); }
  50%      { transform: translateY(-1px) scale(1.01); filter: brightness(1.05) drop-shadow(0 0 6px rgba(255,200,0,0.35)); }
}
.one-shot-lp .os-float-btns__main {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 0 5%;
  gap: 2%;
  pointer-events: auto;
}
.one-shot-lp .os-float-btn {
  display: block;
  flex: 0 1 32%;
  transition: transform 0.3s ease;
  pointer-events: auto;
  opacity: 1 !important;
}
.one-shot-lp .os-float-btn:hover {
  transform: scale(1.05);
  opacity: 1 !important;
}
.one-shot-lp .os-float-btn:active {
  transform: scale(0.97);
  opacity: 1 !important;
}
.one-shot-lp .os-float-btn img {
  width: 100%;
  height: auto;
  display: block;
}
.one-shot-lp .os-float-btn .os-float-btn__pc { display: none !important; }
.one-shot-lp .os-float-btn .os-float-btn__sp { display: block !important; }
.one-shot-lp .os-float-btn:first-child img {
  animation: npcActive 2.2s ease-in-out infinite;
}
.one-shot-lp .os-float-btn:last-child img {
  animation: npcCalm 3.5s ease-in-out infinite;
}
@media (max-width: 767.98px) {
  .one-shot-lp .os-float-btns {
    bottom: 12px;
    padding: 10px 5%;
  }
  .one-shot-lp .os-float-btns__main {
    flex-direction: row;
    gap: 2%;
    padding: 0;
  }
  .one-shot-lp .os-float-btn {
    flex: 0 1 48%;
    max-width: 200px;
  }
  .one-shot-lp .os-float-btn img {
    width: 100%;
    height: auto;
  }
}
@media (max-width: 575.98px) {
  .one-shot-lp .os-float-btn {
    max-width: 320px;
  }
}

@media (max-width: 767.98px) {
  .one-shot-lp .pc { display: none; }
  .one-shot-lp .sp {
    background: #000;
    width: 100vw;
    margin-left: calc(-50vw + 50%);
  }
  .tkt_xpost .sp { background: transparent; }
  .one-shot-lp .sp img {
    width: 100%;
    height: auto;
    display: block;
  }
}
@media (min-width: 768px) {
  .one-shot-lp .sp { display: none; }
  .tkt_xpost .sp { display: none; }
  .one-shot-lp .fv__btn { display: none; }
  .one-shot-lp .os-float-btn .os-float-btn__pc { display: block !important; }
  .one-shot-lp .os-float-btn .os-float-btn__sp { display: none !important; }
}
