/* ===================================================================
   skycrest_contact.html 固有スタイル（共通部分は common.css 参照）
   =================================================================== */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

#page-hero{padding:130px 5% 80px;background:linear-gradient(rgba(255,255,255,0.45),rgba(255,255,255,0.45)),url('../../../AV080_L.jpg');background-size:cover;background-position:center;background-attachment:fixed;position:relative;overflow:hidden}

.page-hero-bg-text{position:absolute;right:-2%;top:50%;transform:translateY(-50%);font-family:'Outfit',sans-serif;font-size:clamp(5rem,12vw,10rem);font-weight:800;color:rgba(0,0,0,0.18);white-space:nowrap;line-height:1;pointer-events:none}

.breadcrumb{display:flex;align-items:center;gap:8px;font-size:0.78rem;color:#2d3f55;margin-bottom:20px;position:relative;z-index:1}

.breadcrumb a{color:#2d3f55;text-decoration:none;transition:color 0.2s}

.breadcrumb a:hover{color:var(--blue)}

.breadcrumb .sep{color:rgba(45,63,85,0.3);font-size:0.6rem}

.breadcrumb .current{color:#0a2540;font-weight:500}

.page-hero-inner{position:relative;z-index:1;max-width:700px}

.page-tag{display:inline-flex;align-items:center;gap:8px;background:rgba(14,95,168,0.08);border:1px solid rgba(14,95,168,0.18);color:var(--blue);padding:5px 14px;border-radius:50px;font-size:0.72rem;letter-spacing:0.12em;margin-bottom:20px;font-family:'Outfit',sans-serif;font-weight:600;animation:fadeUp 0.7s ease both}

.page-h1{font-size:clamp(2rem,5vw,3rem);font-weight:700;color:#0a2540;line-height:1.25;margin-bottom:16px;animation:fadeUp 0.7s 0.1s ease both}

.page-lead{font-size:1rem;color:#2d3f55;line-height:1.95;max-width:560px;animation:fadeUp 0.7s 0.2s ease both}

#gform-section{padding:80px 5%;background:var(--white)}

.gform-wrap{max-width:900px;margin:48px 0 0;border-radius:16px;overflow:hidden;box-shadow:0 8px 28px rgba(14,95,168,0.1)}

.gform-wrap iframe{display:block;width:100%;height:1200px;border:none}

#contact-info{padding:80px 5%;background:var(--bg)}

.info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:48px}

.info-card{background:var(--white);border:1px solid var(--border);border-radius:18px;padding:28px 24px;text-align:center;transition:box-shadow 0.2s}

.info-card:hover{box-shadow:0 6px 20px rgba(14,95,168,0.08)}

.info-icon{width:52px;height:52px;border-radius:14px;background:rgba(14,95,168,0.07);border:1px solid rgba(14,95,168,0.12);display:flex;align-items:center;justify-content:center;font-size:1.4rem;margin:0 auto 16px}

.info-card h4{font-size:0.9rem;font-weight:700;color:#0a2540;margin-bottom:8px}

.info-card p{font-size:0.82rem;color:var(--muted);line-height:1.75}

.info-card .info-value{font-family:'Outfit',sans-serif;font-size:1.1rem;font-weight:700;color:var(--blue);margin-top:8px}

@media(max-width:900px){
  nav{display:none}.hamburger{display:flex}
  .info-grid{grid-template-columns:1fr 1fr}
  .footer-inner{grid-template-columns:1fr 1fr}
}

@media(max-width:600px){
  .info-grid{grid-template-columns:1fr}
  .footer-inner{grid-template-columns:1fr;gap:28px}
  #gform-section,#contact-info{padding:64px 5%}
  .gform-wrap iframe{height:1150px}
}

@media (max-width:640px){.footer-affiliations .affil-sep{display:none}.footer-affiliations .affil-link{display:inline-block;margin:2px 0}.footer-affiliations .affil-label{display:block;margin-bottom:4px}}