@media (min-width:768px){
  .site-header{height:88px;padding:12px 5vw}.brand strong{font-size:1.35rem}.menu-button{display:none}
  .drawer{position:static;transform:none;box-shadow:none;display:flex;justify-content:center;gap:20px;padding:0;background:#fff}
  .drawer a{border:0;padding:13px 4px;font-size:.88rem}
  .hero{min-height:610px}.hero>img{height:610px}.hero-copy{position:absolute;left:7vw;top:50%;transform:translateY(-50%);width:min(590px,48vw);padding:45px;background:rgba(255,255,255,.91);border-radius:28px;box-shadow:0 16px 40px rgba(23,65,95,.12)}
  .hero-actions{grid-template-columns:1fr 1fr}.section{padding:100px 6vw}.section h2{font-size:2.35rem}.lead{max-width:760px;margin:auto;font-size:1.18rem}
  .service-grid{grid-template-columns:repeat(3,1fr)}.service-grid article{min-height:190px}
  .doctor,.access-grid{grid-template-columns:1fr 1fr;align-items:center;max-width:1120px;margin:auto}.doctor-image img{height:480px}
  .hours-card{max-width:1000px;margin:auto;padding:32px}.map-placeholder img{height:420px}.news-item{grid-template-columns:160px 1fr;max-width:950px;margin:auto}
  .fixed-footer{display:none}.site-footer{padding-bottom:55px}
}
@media (min-width:1100px){
  .site-header{display:grid;grid-template-columns:auto 1fr}.drawer{position:fixed;top:17px;right:5vw;left:auto;z-index:35}
  .service-grid{grid-template-columns:repeat(5,1fr)}.service-grid article{min-height:230px}
}

/* v0.7 responsive top-page layout */
@media (min-width:768px){
  .home-renewal .menu-button{display:none}
  .home-renewal .fixed-footer{display:grid}
}
@media (max-width:1099px){
  .home-renewal .home-header{height:90px;padding:10px 18px}
  .home-renewal .home-header .brand-image img{width:min(460px,58vw);max-height:68px}
  .header-contact p{display:none}.header-phone{font-size:1.35rem}
  .home-nav a{padding:0 18px;font-size:.88rem}.home-nav .nav-reserve{margin-left:10px}
  .home-dashboard{grid-template-columns:205px 1fr}.access-map-panel{grid-column:2}.quick-cards{grid-template-columns:1fr 1fr}.online-card{grid-column:1 / -1}
}
@media (max-width:767px){
  .home-renewal .home-header{position:sticky;top:0;height:74px;padding:8px 12px;box-shadow:0 3px 14px rgba(0,62,116,.12);border-bottom:2px solid #1785dc;z-index:35}
  .home-renewal .home-header .brand-image img{width:min(285px,72vw);max-height:55px}
  .header-contact{display:none}
  .home-renewal .menu-button{display:grid;width:44px;height:44px;flex:0 0 auto}
  .home-nav{position:fixed;inset:74px 0 auto 0;display:block;padding:12px 18px;background:#fff;box-shadow:0 12px 20px rgba(0,0,0,.12);transform:translateY(-130%);transition:.3s;z-index:32}
  .home-nav.open{transform:translateY(0)}
  .home-nav a,.home-nav .nav-reserve{justify-content:flex-start;min-height:48px;margin:0;padding:0 10px;border:0;border-bottom:1px solid #cfe5f5;border-radius:0;background:#fff;color:#164a79;box-shadow:none}
  .home-nav a.is-current{color:#1477c8;box-shadow:none}
  .renewal-hero{height:470px}
  .renewal-hero-inner{background-image:linear-gradient(180deg,rgba(238,249,255,.96) 0%,rgba(238,249,255,.82) 42%,rgba(238,249,255,.08) 67%),url('../images/hero-buildings.jpg');background-position:center bottom;background-size:auto 58%}
  .renewal-hero-copy{width:auto;padding:32px 22px 0;text-align:center}
  .renewal-hero h1{font-size:2.25rem;letter-spacing:.05em}.renewal-hero-copy>p:last-of-type{font-size:.95rem;line-height:1.8}
  .hero-dots{left:50%;transform:translateX(-50%);bottom:10px}
  .hero-mobile-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.hero-mobile-actions a{padding:10px;border-radius:7px;background:#147cd0;color:#fff;text-decoration:none;font-weight:800}.hero-mobile-actions a:last-child{background:#ffe478;color:#0965b6}
  .home-dashboard{display:grid;grid-template-columns:1fr;gap:14px;margin:14px auto 20px;padding:0 12px}.home-side{display:grid;grid-template-columns:1fr 1fr;gap:9px}.medical-menu-panel{grid-column:1 / -1}.side-action{margin:0;padding:10px;font-size:.9rem;justify-content:center}.access-map-panel{grid-column:auto}.news-panel{min-height:0}.news-list article{grid-template-columns:1fr;gap:2px;padding:10px 2px}.map-visual img{height:210px}
  .quick-cards{grid-template-columns:1fr;gap:14px;margin-bottom:24px;padding:0 12px}.online-card{grid-column:auto}.quick-card{min-height:0}.quick-card table{font-size:.68rem}.doctor-summary-inner{grid-template-columns:82px 1fr}.doctor-summary-inner img{width:82px;height:100px}
  .compact-related{padding:42px 14px}.home-site-footer{padding-bottom:92px}
  .home-renewal .fixed-footer{display:grid}.home-renewal .fixed-footer a{min-height:62px;font-size:.73rem;flex-direction:column;gap:1px}.home-renewal .fixed-footer span{font-size:1.2rem}.home-renewal .fixed-footer b{display:none}
}

@media(max-width:1099px){.home-header{display:flex!important}.home-nav .nav-reserve{margin-left:8px}.home-site-footer,.site-footer{padding-bottom:120px!important}}
@media(max-width:767px){.page-hero-image{min-height:220px;padding:24px 20px 32px;background-position:center}.page-subtitle{font-size:.9rem}.home-site-footer,.site-footer{padding-bottom:105px!important}.full-hours{min-width:650px}.important-notice{padding:18px}.hours-detail .button{width:100%}}

/* v0.9 responsive navigation: no floating white strip over content */
@media (min-width:768px){
  .home-renewal .home-header{position:relative!important}
  .home-renewal .home-nav{position:static!important;display:flex!important;transform:none!important}
}
@media (max-width:1099px){
  .font-size-tools{margin-left:8px}
  .font-size-tools__label{display:none}
  .home-nav a,.home-nav .nav-reserve{padding:8px 12px!important;font-size:.78rem}
}
@media (max-width:767px){
  .home-renewal .home-header{position:sticky!important;top:0!important}
  .font-size-tools{position:fixed;right:64px;top:19px;z-index:40;background:rgba(255,255,255,.94);padding:2px;border-radius:6px}
  .font-size-tools button{min-width:29px;height:31px;padding:0 5px;font-size:.72rem}
  .home-nav{position:fixed!important;inset:74px 0 auto 0!important;display:block!important;padding:12px 18px!important;background:#fff!important;box-shadow:0 12px 20px rgba(0,0,0,.12)!important;transform:translateY(-130%)!important;z-index:32!important}
  .home-nav.open{transform:translateY(0)!important}
  .home-nav a,.home-nav .nav-reserve{justify-content:flex-start!important;min-height:48px;margin:0!important;padding:0 10px!important;border:0!important;border-bottom:1px solid #cfe5f5!important;background:#fff!important;color:#164a79!important}
  .home-nav a:first-child{border-left:0!important}
  .home-nav .nav-reserve{background:#fff8c8!important;color:#095f9f!important}
  .compact-related .banner-grid{grid-template-columns:1fr}
}

/* Dev v1.0 access responsive */
@media (max-width:767px){
  .access-v1{grid-column:auto}
  .access-map-embed{aspect-ratio:4/3}
  .access-photo-grid,.access-actions{grid-template-columns:1fr}
  .access-actions .map-button:last-child{grid-column:auto}
}

@media(max-width:700px){.access-summary-link{grid-template-columns:1fr;min-height:0}.access-summary-map iframe{min-height:150px}.access-summary-text{padding:18px}.subpage-nav>div{grid-template-columns:1fr}}

/* Dev v1.2 responsive */
@media(max-width:760px){.site-header{flex-wrap:wrap}.site-header .font-size-tools{order:3;width:100%;justify-content:flex-end;margin:5px 0 0;padding:0 8px}.vaccine-table{min-width:650px}.vaccine-total{bottom:70px;flex-wrap:wrap}.vaccine-total strong{font-size:1.45rem}.vaccine-total button{width:100%}.page-hero-image{min-height:235px}.page-hero-image::before{background-position:center}}

/* Dev v1.3 responsive */
@media(min-width:768px){.dev-v13 .menu-button{display:none}.dev-v13 .fixed-footer{display:none}}
@media(max-width:980px){.v13-header .brand-image img{width:min(440px,58vw)}.v13-header .header-contact{display:none}.global-nav>a{padding:7px 10px!important;font-size:.78rem}.nav-font-size{padding:5px}.nav-font-size .font-size-tools__label{display:none}.aoyama-story{margin:45px 18px}}
@media(max-width:767px){.dev-v13{padding-bottom:68px}.v13-header{position:sticky!important;top:0!important;min-height:72px;padding:7px 10px;z-index:40}.v13-header .brand-image img{width:min(305px,72vw);max-height:56px}.dev-v13 .menu-button{display:grid}.global-nav{position:fixed!important;inset:72px 0 auto 0!important;display:block!important;padding:10px 16px!important;transform:translateY(-130%)!important;z-index:38;max-height:calc(100vh - 72px);overflow:auto}.global-nav.open{transform:translateY(0)!important}.global-nav>a{justify-content:flex-start!important;min-height:44px;padding:6px 10px!important;border-left:0!important;border-bottom:1px solid var(--line)!important}.nav-font-size{justify-content:flex-start;padding:9px 10px;border-left:0;border-bottom:1px solid var(--line)}.nav-font-size .font-size-tools__label{display:inline}.page-visual-accent{grid-template-columns:1fr}.page-visual-accent>img{height:175px}.page-visual-accent>div{padding:17px}.aoyama-story{grid-template-columns:1fr;margin:35px 12px}.aoyama-story-image img{min-height:230px}.aoyama-story-copy{padding:28px 22px}.access-photo-grid img{height:260px}.dev-v13 .fixed-footer{display:grid}.fixed-footer a{min-height:62px;flex-direction:column;font-size:.76rem}.fixed-footer a span{font-size:1.25rem}}


@media (max-width: 900px){.role-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width: 640px){.role-card-grid,.course-cards{grid-template-columns:1fr}.role-card{min-height:auto}.health-check-table td:nth-child(2){min-width:260px}}


/* Dev v1.6 responsive */
@media(max-width:767px){
 html{scroll-padding-top:76px}.sticky-global-nav{position:fixed!important;top:72px!important}.medical-layout{display:block}.medical-sidebar{position:relative;top:auto;margin:0 0 18px}.medical-sidebar h2{cursor:default}.medical-sidebar nav{display:grid;grid-template-columns:1fr 1fr}.medical-sidebar a{font-size:.86rem}.doctor-detail-card-grid{grid-template-columns:1fr}.fixed-footer a{min-height:62px;flex-direction:column;gap:1px;font-size:.76rem}.fixed-footer span{font-size:1.2rem}
}
@media(min-width:768px){.site-footer{padding-bottom:105px!important}}
@media(max-width:520px){.medical-sidebar nav{grid-template-columns:1fr}}
