@charset "UTF-8";

.page-enrollment-nav .enroll-nav-main {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: calc(100vh - 200px);
  min-height: calc(100dvh - 200px);
  padding: clamp(40px, 6vh, 80px) clamp(20px, 4vw, 48px);
  box-sizing: border-box;
}

.enroll-nav-grid {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: clamp(20px, 4vw, 48px);
  width: 100%;
  max-width: 92vw;
}

.enroll-nav-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: clamp(14px, 2vh, 28px);
  width: clamp(280px, 38vw, 520px);
  height: clamp(220px, 42vh, 480px);
  border-radius: clamp(16px, 2vw, 28px);
  color: #fff;
  text-decoration: none;
  text-align: center;
  box-shadow: 0 12px 40px rgba(114, 52, 137, 0.14);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.enroll-nav-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 48px rgba(114, 52, 137, 0.2);
  color: #fff;
}

.enroll-nav-card__ttl {
  font-size: clamp(22px, 2.8vw, 40px);
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.06em;
}

.enroll-nav-card__hint {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: clamp(6px, 0.6vw, 10px);
  font-size: clamp(14px, 1.2vw, 18px);
  font-weight: 400;
  letter-spacing: 0.04em;
  opacity: 0.92;
}

.enroll-nav-card__arrow {
  display: inline-block;
  width: clamp(18px, 1.4vw, 24px);
  height: clamp(18px, 1.4vw, 24px);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") no-repeat center center;
  background-size: contain;
  transition: transform 0.25s ease;
}

.enroll-nav-card:hover .enroll-nav-card__arrow {
  transform: translateX(4px);
}

.enroll-nav-card--junior {
  background: linear-gradient(145deg, #b5a0c6 0%, #a894b6 55%, #9a88aa 100%);
}

.enroll-nav-card--high {
  background: linear-gradient(145deg, #a4c8c4 0%, #8fb8b4 55%, #7ea8a4 100%);
}

@media (max-width: 768px) {
  .page-enrollment-nav .enroll-nav-main {
    min-height: 0;
    padding: 1.2rem 0.4rem 1.3rem;
  }

  .enroll-nav-grid {
    flex-direction: column;
    gap: 0.4rem;
    max-width: 100%;
  }

  .enroll-nav-card {
    width: 88vw;
    height: clamp(2.4rem, 28vh, 4.2rem);
    border-radius: 0.24rem;
    gap: 0.2rem;
  }

  .enroll-nav-card__ttl {
    font-size: 0.42rem;
  }

  .enroll-nav-card__hint {
    font-size: 0.28rem;
    gap: 0.1rem;
  }

  .enroll-nav-card__arrow {
    width: 0.32rem;
    height: 0.32rem;
  }
}
