/* My Japan Friend v52.1 · contact channels and partnership page */
.contact-home-strip{display:grid;grid-template-columns:1fr 1.6fr auto;align-items:center;gap:22px;padding:24px 28px;margin:27px 0 35px;border:1px solid #dbe8f2;border-radius:18px;background:linear-gradient(112deg,#f0f8ff,#fff 60%);box-shadow:0 7px 24px rgba(17,80,142,.035)}
.contact-strip-intro>span{font-weight:800;letter-spacing:.12em;color:#2777ba;font-size:10px}
.contact-strip-intro h2{font-size:20px;line-height:1.4;color:#163b60;margin:6px 0 6px}
.contact-strip-intro p{color:#5f7488;line-height:1.6;font-size:12px;margin:0}
.contact-strip-options{display:grid;grid-template-columns:1fr 1fr;gap:9px;min-width:0}
.contact-strip-options>a{min-width:0;display:grid;gap:7px;padding:14px 13px;border:1px solid #ddeaf5;background:#fff;border-radius:10px;text-decoration:none}
.contact-strip-options small{font-size:11px;color:#74879b}.contact-strip-options strong{font-size:12px;color:#145b9c;overflow-wrap:anywhere}
.contact-strip-more{padding:11px 13px;border-radius:9px;border:1px solid #b8d6ed;text-decoration:none;color:#176caa;font-size:12px;font-weight:800;white-space:nowrap}
.contact-home-strip a:hover{border-color:#2789cb;color:#065391}
.contact-main{padding:22px 18px 52px!important}
.contact-back a{color:#5b7e9d;text-decoration:none;font-size:12px;font-weight:700}
.contact-hero{margin:20px 0 18px;padding:39px 42px;display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #dcecf9;border-radius:20px;background:linear-gradient(120deg,#eff8ff,#f7fbfe 65%,#eaf5ff)}
.contact-eyebrow{color:#297ab9;font-size:11px;font-weight:800;letter-spacing:.15em}
.contact-hero h1{color:#183f66;font-size:clamp(26px,3.1vw,42px);line-height:1.25;letter-spacing:-.035em;margin:10px 0 14px}
.contact-hero p{max-width:730px;line-height:1.8;color:#4f6b83;font-size:15px;margin:0}
.contact-hero-art{display:flex;gap:14px;align-items:center;color:#147bc8}.contact-speech{width:80px;height:80px;display:grid;place-items:center;font-size:40px;border-radius:23px;background:#fff;border:1px solid #d3eafa;transform:rotate(-8deg)}
.contact-hero-mark{font-weight:900;font-size:38px;letter-spacing:-.05em}.contact-hero-mark span{color:#ed6972}
.contact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 13px}
.contact-card{border:1px solid #e0eaf3;border-radius:16px;padding:21px;background:white;display:flex;flex-direction:column;min-height:248px;box-shadow:0 6px 18px rgba(31,82,122,.035)}
.contact-card-partner{border-color:#c5e3f7;background:#f2faff}
.contact-card-index{width:33px;height:33px;display:grid;place-items:center;border-radius:50%;color:#1477ca;background:#eaf5ff;font-weight:900;font-size:12px}
.contact-card h2{font-size:18px;margin:15px 0 8px;color:#183b5d}.contact-card p{font-size:12px;line-height:1.7;color:#658097;min-height:44px;margin:0 0 16px}
.contact-card-email{color:#146ab0;font-size:12px;text-decoration:none;overflow-wrap:anywhere;font-weight:750;margin-top:auto}
.contact-card-action{display:flex;justify-content:space-between;align-items:center;gap:7px;border:1px solid #bcd8eb;background:#fff;color:#176eae;border-radius:9px;text-decoration:none;margin-top:15px;padding:11px;font-weight:800;font-size:11px}
.contact-card-action:hover,.contact-partner-cta:hover,.contact-order-cta:hover{filter:brightness(.95)}
.contact-note{font-size:12px;color:#7b8896;margin:8px 0 24px}
.contact-partner{display:grid;grid-template-columns:1.25fr 1fr;gap:36px;align-items:center;border-radius:20px;background:linear-gradient(130deg,#183f68,#1c6194);padding:34px 39px;margin:22px 0 16px;color:white}
.contact-partner .contact-eyebrow{color:#a8ddff}.contact-partner h2{font-size:28px;line-height:1.4;margin:7px 0 11px;color:#fff}
.contact-partner p{font-size:14px;line-height:1.8;color:#d8eaf9;margin:0 0 20px}
.contact-partner ul{margin:0;list-style:none;padding:15px 21px;background:rgba(255,255,255,.09);border-radius:13px}
.contact-partner li{color:#ecf7ff;font-size:13px;line-height:1.6;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.14)}
.contact-partner li:last-child{border-bottom:0}.contact-partner li::before{content:'✓';color:#a7e0ff;margin-right:10px;font-weight:800}
.contact-partner-cta{display:inline-flex;gap:14px;align-items:center;background:#fff;border-radius:9px;padding:12px 18px;text-decoration:none;color:#165a8e;font-size:13px;font-weight:900}
.contact-order{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:20px 0;padding:24px 28px;border:1px solid #e0e9f1;border-radius:16px}
.contact-order h2{margin:0 0 7px;color:#1a3c5e;font-size:20px}.contact-order p{color:#60788d;font-size:13px;margin:0;line-height:1.6}
.contact-order-cta{border-radius:10px;padding:12px 17px;background:#1979c8;color:white;white-space:nowrap;text-decoration:none;font-size:12px;font-weight:750}
.contact-fineprint{color:#7e8995;font-size:11px;line-height:1.7}
@media(max-width:1050px){.contact-home-strip{grid-template-columns:1fr;gap:13px}.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.contact-main{padding:12px 13px 35px!important}.contact-hero{padding:28px 22px;margin-top:15px}.contact-hero-art{display:none}.contact-hero h1{font-size:27px}.contact-hero p{font-size:13px}.contact-partner{grid-template-columns:1fr;gap:14px;padding:26px 23px}.contact-partner h2{font-size:23px}.contact-order{align-items:flex-start;flex-direction:column;padding:22px}.contact-home-strip{padding:21px 15px}}
@media(max-width:470px){.contact-grid{grid-template-columns:1fr}.contact-card{min-height:205px}.contact-strip-options{grid-template-columns:1fr}.contact-home-strip{margin-top:20px}.contact-hero{padding:25px 17px}.contact-partner{padding:25px 19px}.contact-hero h1{font-size:25px}.contact-card h2{font-size:17px}.contact-note{font-size:11px}.contact-page .market-header .header-inner{padding:10px 12px}.contact-page .brand b{font-size:14px}}

/* v54.9 pictorial contact services */
.contact-page .contact-hero-art{display:block!important;width:270px;flex:0 0 270px}.contact-page .contact-hero-art svg{display:block;width:100%;height:auto}.contact-page .mjf-service-explain{margin:20px 0 24px}.contact-page .mjf-service-explain h2{font-size:21px;color:#193e64;margin:0 0 8px}.contact-page .mjf-service-explain>p{color:#63758a;font-size:13px;margin:0 0 13px}.contact-page .mjf-service-types{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.contact-page .mjf-service-type{display:flex;align-items:center;gap:16px;background:#f6fbff;border:1px solid #d0e3f5;border-radius:16px;padding:19px}.contact-page .mjf-service-type.visit{background:#fff9f5;border-color:#eedacc}.contact-page .mjf-service-type>svg{width:94px;height:90px;flex:0 0 94px}.contact-page .mjf-service-type h3{font-size:17px;color:#214364;margin:0 0 7px}.contact-page .mjf-service-type p{font-size:12px;line-height:1.7;color:#647688;margin:0 0 10px}.contact-page .mjf-service-type a{display:inline-block;color:#126eac;border:1px solid #c4d9eb;background:#fff;border-radius:7px;text-decoration:none;font-size:12px;font-weight:750;padding:7px 11px}.contact-page .mjf-visit-highlight{padding:12px 15px;background:#fff3ed;border-left:4px solid #da705d;border-radius:7px;color:#934b39;font-size:12px;line-height:1.75;margin:12px 0 23px}.contact-page .mjf-visit-highlight a{color:#914127;font-weight:800}.contact-page .contact-card{position:relative}.contact-page .mjf-card-picto{position:absolute;top:17px;right:17px;width:40px;height:40px;background:#eff6ff;border-radius:10px;display:grid;place-items:center}.contact-page .mjf-card-picto svg{width:30px;height:30px}@media(max-width:860px){.contact-page .mjf-service-types{grid-template-columns:1fr}}@media(max-width:720px){.contact-page .contact-hero-art{display:none!important}}@media(max-width:420px){.contact-page .mjf-service-type{padding:14px;gap:9px}.contact-page .mjf-service-type>svg{width:70px;flex-basis:70px}.contact-page .mjf-service-type h3{font-size:15px}}
