/* entry/thanks.html 専用スタイル */
:root { --gradient-blue: linear-gradient(to bottom, #004a99 0%, #00aaff 100%); --font-en: system-ui, sans-serif; }
.hero { position: relative; background: #fff; overflow: visible; }
.hero__img { display: block; width: 100%; height: auto; }
.hero__content { position: absolute; top: 40%; left: 80px; transform: translateY(-50%); z-index: 3; }
.hero__en { font-family: 'Barlow Semi Condensed', sans-serif; font-size: 68px; font-weight: 300; color: #fff; letter-spacing: 0.04em; line-height: 1; }
.hero__ja { font-size: 13px; color: rgba(255,255,255,0.9); margin-top: 10px; letter-spacing: 0.15em; font-weight: 400; }
.main { width: 100%; background: #fff; padding: 160px 4vw 120px; }
.main__inner { max-width: 720px; margin: 0 auto; padding: 0 20px; text-align: left; }
.main__title { font-size: 28px; font-weight: 700; color: #0056b3; margin: 0 0 10px 0; letter-spacing: 0.05em; }
.main__line { display: block; width: 100%; height: 2px; background: #66B2FF; margin: 0 0 20px 0; }
.main__message { font-size: 16px; line-height: 1.9; color: #333; margin: 0 0 40px 0; }
.main__btn-wrap { text-align: center; }
.btn-top { display: inline-flex; align-items: center; justify-content: center; min-width: 240px; width: 240px; min-height: 50px; height: 50px; padding: 0 24px; background: var(--gradient-blue); color: #fff; font-family: var(--font-en); font-weight: 700; font-size: 14px; letter-spacing: 0.05em; border: none; cursor: pointer; text-decoration: none; box-shadow: 0 4px 12px rgba(0, 74, 153, 0.35); border-radius: 0; transition: filter 0.2s, box-shadow 0.2s; }
.btn-top:hover { filter: brightness(1.08); box-shadow: 0 6px 16px rgba(0, 74, 153, 0.4); }
@media (max-width: 768px) { .header__nav { display: none; } .header__tabs { display: none; } .header__hamburger { display: flex; margin-left: auto; } .hero__content { left: 24px; } .hero__en { font-size: 48px; } .hero__ja { font-size: 12px; } .main { padding: 120px 4vw 100px; } }
@media (max-width: 768px) { .main { padding: 100px 5vw 80px; } .main__title { font-size: 24px; } .main__line { width: 100%; } .main__message { font-size: 16px; margin-bottom: 32px; } .btn-top { width: 100%; max-width: 280px; min-width: 0; min-height: 48px; height: 48px; } }
@media (max-width: 480px) { .hero__content { left: 16px; top: 35%; } .hero__en { font-size: 34px; } .hero__ja { font-size: 12px; } .main { padding: 80px 4vw 64px; } .main__title { font-size: 24px; } .main__message { font-size: 16px; margin-bottom: 28px; } .btn-top { min-height: 48px; height: 48px; font-size: 14px; } }
