/* EEAN contact — scoped to the page and matching the approved visual rough. */
.eean-c2, .eean-c2-hero {color:#073c67;font-family:inherit;}
.eean-c2 *,.eean-c2-hero *{box-sizing:border-box}
.eean-c2-container{width:min(90%,1180px);margin-inline:auto}
.eean-c2-hero{min-height:360px;display:flex;align-items:center;background:linear-gradient(90deg,rgba(255,255,255,.70) 0%,rgba(255,255,255,.17) 62%,rgba(255,255,255,0) 100%),var(--eean-contact-hero, url('../images/contact-hero.jpg')) center 53%/cover no-repeat;position:relative}
.eean-c2-hero:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:27px;background:#f1faff;clip-path:polygon(0 45%,22% 95%,45% 58%,72% 92%,100% 40%,100% 100%,0 100%)}
.eean-c2-hero__inner{padding-block:55px 70px;position:relative;z-index:1}
.eean-c2-kicker{font:700 11px/1.5 system-ui,sans-serif;letter-spacing:.24em;color:#1c76b3;display:inline-flex;align-items:center;gap:15px}
.eean-c2-kicker i,.eean-c2-kicker span{display:inline-block;width:33px;height:1px;background:#89bbdb}
.eean-c2-hero h1{font-size:clamp(38px,4.4vw,66px);font-weight:700;line-height:1.2;letter-spacing:.05em;margin:16px 0 14px;color:#063c69}
.eean-c2-hero p:last-child{font-size:clamp(15px,1.5vw,20px);font-weight:600;line-height:1.85;margin:0}
.eean-c2-main{padding:25px 0 85px;background:radial-gradient(ellipse 50% 9% at 0% 24%,#e0f2ff 0%,transparent 100%),radial-gradient(ellipse 60% 10% at 100% 32%,#e0f2ff 0%,transparent 100%),linear-gradient(180deg,#f5fbff,#eaf7ff 63%,#f6fcff)}
.eean-c2-section-head{text-align:center;margin:0 auto 25px}
.eean-c2-section-head h2{font-family:Georgia,'Noto Serif JP',serif;font-size:clamp(28px,3vw,38px);letter-spacing:.07em;color:#073d6b;margin:12px 0 13px;font-weight:700}
.eean-c2-section-head p{color:#446e8b;font-size:15px;line-height:1.9;margin:0}
.eean-c2-contacts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#fff;border-radius:16px;padding:30px 16px;box-shadow:0 12px 35px rgba(25,80,128,.06);margin-bottom:65px}
.eean-c2-contact-card{text-align:center;padding:0 12px;min-width:0;border-right:1px solid #d0e5f5}
.eean-c2-contact-card:last-child{border-right:0}
.eean-c2-circle{height:57px;width:57px;border-radius:50%;display:grid;place-items:center;background:#e5f5ff;color:#0c79c0;font-size:30px;margin:0 auto 12px;font-family:Arial,sans-serif}
.eean-c2-contact-card h3{font-size:15px;color:#073d6b;margin:0 0 12px;font-weight:700}
.eean-c2-contact-card p{font-size:clamp(12px,1.25vw,15px);line-height:1.7;margin:0;overflow-wrap:anywhere;color:#214f79}
.eean-c2-contact-card a:not(.eean-c2-outline-button){color:#07538a;text-decoration:none}
.eean-c2-contact-card small{font-size:11px}
.eean-c2-outline-button{border:1px solid #198bd5;border-radius:100px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 12px;color:#0a77bc;text-decoration:none;font-size:12px;font-weight:700;margin-top:4px;white-space:normal}
.eean-c2-access{padding-top:10px}
.eean-c2-access-notice{background:#d9efff;border-radius:9px;padding:15px 22px;text-align:center;color:#0e77bc;font-weight:650;font-size:15px;margin:23px 0 19px}
.eean-c2-access-notice span{font-size:12px;margin-right:8px}
.eean-c2-routes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:24px}
.eean-c2-route{background:#fff;border-radius:13px;padding:18px;display:grid;grid-template-columns:29% 1fr;gap:20px;box-shadow:0 6px 25px rgba(20,90,135,.035);min-width:0}
.eean-c2-route>img{width:100%;height:100%;min-height:210px;object-fit:cover;border-radius:9px}
.eean-c2-route h3{font-size:16px;line-height:1.6;margin:2px 0 12px;padding-bottom:10px;border-bottom:1px solid #d7e9f4;color:#073d6b;font-weight:700}
.eean-c2-route h3 span{font-size:19px;margin-right:5px}
.eean-c2-route h4{margin:11px 0 6px;display:inline-block;background:#2b9ad5;color:#fff;border-radius:20px;padding:3px 14px;font-size:12px;font-weight:700}
.eean-c2-route p{color:#496d89;font-size:13px;line-height:1.75;margin:0}
.eean-c2-map-panel{background:#fff;border-radius:12px;padding:6px;display:grid;grid-template-columns:38% 62%;overflow:hidden;min-height:280px}
.eean-c2-map-text{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:25px 32px}
.eean-c2-map-text h3{font-family:Georgia,'Noto Serif JP',serif;font-size:25px;margin:0 0 14px;color:#073d6b}
.eean-c2-map-text p{color:#426f8b;line-height:1.9;font-size:14px;margin:0 0 21px}
.eean-c2-solid-button{background:#006caa;color:white!important;min-width:225px;text-align:center;display:inline-flex;gap:15px;justify-content:center;align-items:center;border-radius:60px;padding:14px 18px;font-size:13px;font-weight:700;text-decoration:none}
.eean-c2-map-frame{background:#d9effa;min-height:280px;border-radius:9px;overflow:hidden}
.eean-c2-map-frame iframe{display:block;width:100%;height:100%;min-height:280px;border:0}
.eean-c2-cta{background:linear-gradient(90deg,rgba(241,250,255,.15),rgba(255,255,255,.68)),url('../images/contact-cta.jpg') center center/cover no-repeat;min-height:230px;display:flex;align-items:center;text-align:center}
.eean-c2-cta .eean-c2-container{padding:36px 15px}
.eean-c2-cta h2{font-family:Georgia,'Noto Serif JP',serif;font-size:clamp(22px,2.5vw,32px);line-height:1.55;color:#063e6b;margin:0 0 20px}
@media(max-width:850px){.eean-c2-contacts{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:27px}.eean-c2-contact-card:nth-child(2){border-right:0}.eean-c2-route{grid-template-columns:1fr}.eean-c2-route>img{max-height:190px;min-height:160px}.eean-c2-map-panel{grid-template-columns:1fr}.eean-c2-map-frame{min-height:280px}}
@media(max-width:560px){.eean-c2-container{width:min(92%,1180px)}.eean-c2-hero{min-height:310px;background-position:57% center}.eean-c2-hero__inner{padding-block:55px 75px}.eean-c2-main{padding:35px 0 48px}.eean-c2-section-head p{font-size:13px}.eean-c2-contacts{grid-template-columns:1fr 1fr;padding:26px 8px;row-gap:20px;margin-bottom:40px}.eean-c2-contact-card{padding:0 7px}.eean-c2-contact-card h3{font-size:13px}.eean-c2-contact-card p{font-size:11px}.eean-c2-circle{width:44px;height:44px;font-size:24px}.eean-c2-outline-button{font-size:11px;padding:9px 6px}.eean-c2-routes{grid-template-columns:1fr}.eean-c2-route{grid-template-columns:32% 1fr;padding:12px;gap:13px}.eean-c2-route>img{min-height:180px;height:100%;max-height:none}.eean-c2-route h3{font-size:13px}.eean-c2-route p{font-size:11px}.eean-c2-access-notice{font-size:12px;line-height:1.6}.eean-c2-map-text{padding:22px}.eean-c2-cta{min-height:210px}}
