@font-face{font-family:Kallisto;src:url("fonts/Kallisto-Medium.otf") format("opentype");font-weight:500;font-display:swap}
:root{--navy:#0a2442;--blue:#087db5;--sky:#2bb9df;--green:#13856c;--teal:#13a899;--mint:#79e3c0;--red:#d71920;--ink:#182632;--muted:#687987;--line:#dfeaf0;--paper:#fff;--soft:#f1f8fb;--gold:#b7964b;--max:1160px;--sans:system-ui,-apple-system,"Noto Sans JP","Hiragino Sans","Yu Gothic",Meiryo,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.8 var(--sans)}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}a:hover{color:var(--blue)}.wrap{width:min(var(--max),calc(100% - 48px));margin:auto}.brand{font:500 17px/1.15 Kallisto,var(--sans);letter-spacing:.02em;color:#fff}.brand small{display:block;font:10px/1.4 var(--sans);letter-spacing:.15em;color:#b8d3e1;margin-top:5px}.sitehead{background:var(--navy);color:#fff;position:relative;z-index:10;border-bottom:1px solid #214565}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.navlinks{display:flex;align-items:center;gap:18px;font-size:13px;color:#e9f0f7}.navlinks a{white-space:nowrap}.navlinks a.current{color:var(--mint)}.navlinks a:hover{color:var(--mint)}.navdetails{display:none}.navdetails summary{list-style:none;border:1px solid #6d8098;padding:8px 13px;cursor:pointer}.navdetails summary::-webkit-details-marker{display:none}.menu-panel{position:absolute;top:100%;left:0;right:0;padding:16px 24px 22px;background:var(--navy);display:grid;grid-template-columns:1fr 1fr;gap:0 18px;box-shadow:0 12px 18px #00112655}.menu-panel a{padding:10px 4px;border-bottom:1px solid #334963}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border:1px solid var(--navy);background:var(--navy);color:#fff;font-weight:750;font-size:14px;transition:.2s}.btn:hover{background:var(--blue);border-color:var(--blue);color:#fff}.btn.light{background:#fff;color:var(--navy);border-color:#fff}.btn.line{background:transparent;border-color:#8293a9;color:#fff}.btn.green{background:var(--green);border-color:var(--green)}.hero{background:linear-gradient(115deg,#0a2442 0%,#0b2d50 72%,#0b3653 100%);color:#fff;padding:58px 0 68px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:58px}.eyebrow{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--mint);font-weight:800}.hero h1,.page-hero h1{font:500 clamp(39px,5.7vw,72px)/1.27 Kallisto,var(--sans);letter-spacing:.012em;margin:20px 0}.hero h1 .jp,.page-hero h1 .jp{font:700 clamp(30px,4vw,52px)/1.45 var(--sans);display:block;letter-spacing:0}.hero p{color:#d7e0ea;font-size:17px;max-width:620px;margin:0}.hero .lead{font-size:20px;color:#fff;font-weight:700;border-left:3px solid var(--mint);padding-left:16px;margin:25px 0}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.hero-visual{position:relative;min-height:450px;max-height:590px;overflow:hidden;border:1px solid #536781;background:#0e2d4a}.hero-visual img{width:100%;height:100%;min-height:450px;max-height:590px;object-fit:cover;object-position:center 58%;opacity:.88}.hero-visual:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#061d3bdb)}.hero-caption{position:absolute;z-index:1;bottom:22px;left:24px;right:24px;color:#fff}.hero-caption b{display:block;font:500 21px Kallisto,var(--sans);margin-bottom:3px}.hero-caption span{font-size:13px;color:#dce8f1}.brand-strip{background:#f5fafc;border-bottom:1px solid var(--line);padding:18px 0}.brand-logos{display:flex;align-items:center;justify-content:center;gap:clamp(24px,5vw,64px)}.brand-logos img{object-fit:contain;max-height:46px;width:auto;max-width:25%}.brand-logos .kobe{max-width:190px;max-height:44px}.section{padding:82px 0}.section.soft{background:var(--soft)}.section.dark{background:var(--navy);color:#fff}.kicker{font-size:12px;letter-spacing:.17em;text-transform:uppercase;color:#5c738b;font-weight:800}.dark .kicker{color:var(--mint)}h2{font:500 clamp(30px,4vw,48px)/1.4 Kallisto,var(--sans);margin:14px 0 20px;letter-spacing:.01em}h2 .jp{font:750 clamp(26px,3.5vw,42px)/1.45 var(--sans);display:block;letter-spacing:0}h3{font-size:20px;line-height:1.5;margin:0 0 10px}.intro{max-width:760px;color:#4b5868;font-size:17px}.dark .intro{color:#d7e1eb}.two{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}.photo-frame{background:#e7edf2;overflow:hidden}.photo-frame img{width:100%;height:100%;max-height:520px;object-fit:cover}.photo-frame.tall{aspect-ratio:4/5}.photo-frame.wide{aspect-ratio:16/10}.photo-frame.contain img{object-fit:contain}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:38px}.step{background:#102a49;border-top:3px solid var(--mint);padding:20px 17px;min-height:160px}.step small{color:var(--mint);letter-spacing:.14em}.step h3{margin:10px 0 5px}.step p{color:#d4dfeb;font-size:14px;margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}.card{background:#fff;border:1px solid var(--line);padding:26px;min-height:206px}.card .num{color:var(--green);font:500 14px Kallisto}.card p{color:#4c5a69;margin:0}.card a{display:inline-flex;margin-top:16px;color:var(--blue);font-weight:750;font-size:14px}.quote{font-size:21px;font-weight:750;line-height:1.7;border-left:3px solid var(--green);padding-left:18px}.direction-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:28px}.direction{padding:18px;background:#fff;border:1px solid var(--line);text-align:center}.direction strong{display:block;color:var(--navy);font-size:18px}.direction small{color:var(--muted)}.arrows{height:54px;margin:12px auto;max-width:650px;display:grid;grid-template-columns:1fr 1fr;gap:20px}.arrow-card{position:relative;background:#eaf0f4;border-radius:2px;text-align:center;padding:8px}.arrow-card b{color:var(--blue);font-size:13px}.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:34px}.product{background:#fff;border:1px solid var(--line);overflow:hidden}.product img{width:100%;aspect-ratio:4/3;object-fit:cover;background:#f0f3f5}.product .copy{padding:21px}.product .copy p{margin:0;color:#4c5867}.tag{display:inline-block;background:#eaf3e8;color:#286922;padding:4px 9px;font-size:12px;font-weight:750}.logo-card{display:flex;align-items:center;justify-content:center;background:white;border:1px solid var(--line);padding:18px;min-height:115px}.logo-card img{max-height:68px;max-width:100%;object-fit:contain}.callout{background:#eef5e9;border-left:4px solid var(--green);padding:22px 24px;margin-top:28px}.callout strong{display:block;margin-bottom:4px;color:#1f5426}.table-wrap{overflow-x:auto;margin-top:25px}table{width:100%;border-collapse:collapse;min-width:620px;background:#fff}th,td{text-align:left;padding:13px 15px;border-bottom:1px solid var(--line)}th{background:#edf3f7;color:#183450;font-size:14px}td{font-size:15px}.location-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:28px}.location{background:#fff;border:1px solid var(--line);padding:22px}.location h3{color:var(--navy)}.location p{margin:7px 0;color:#4c5867}.location b{color:#263b53}.badge-row{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.badge{border:1px solid #bccbd8;background:#fff;padding:7px 12px;font-size:13px}.profile-row{display:flex;gap:30px;align-items:flex-start}.profile-row .avatar{width:180px;flex:0 0 180px;border-radius:50%;overflow:hidden;background:#dff5ee}.profile-row .avatar img{width:100%;aspect-ratio:1;object-fit:cover}.profile-copy p{margin-top:4px;color:#4c5867}.credentials{display:flex;align-items:center;gap:18px;margin-top:22px}.credentials img{max-width:180px;max-height:78px;object-fit:contain}.page-hero{background:var(--navy);color:#fff;padding:58px 0 62px}.page-hero .wrap{display:grid;grid-template-columns:1fr .65fr;gap:40px;align-items:center}.page-hero h1{margin:12px 0}.page-hero p{color:#d7e0ea;max-width:700px;font-size:17px}.page-hero img{width:100%;max-width:260px;max-height:180px;justify-self:center;object-fit:contain;background:#fff;padding:14px}.page-hero img[src$="kawakita-k-logo.png"]{max-width:142px;max-height:142px;justify-self:center}.footer-cta{padding:54px 0;background:#dff5f1}.footer-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:28px}.footer-cta h2{margin:0;font-size:clamp(25px,3.3vw,38px)}.footer-cta p{margin:7px 0 0;color:#405044}.footer{background:#09213a;color:#d5e4ec;padding:38px 0 25px}.footer-top{display:grid;grid-template-columns:1.2fr 1fr;gap:30px;align-items:center}.footer-brand{display:flex;align-items:center;gap:20px}.footer-brand img{width:138px;max-height:88px;object-fit:contain;background:#fff}.footer-links{display:flex;flex-wrap:wrap;gap:10px 18px;font-size:13px}.copyright{border-top:1px solid #304159;margin-top:26px;padding-top:16px;font-size:12px;color:#adbac9;display:flex;justify-content:space-between;gap:16px}.contact-types{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:28px 0}.contact-type{background:#fff;border:1px solid var(--line);padding:20px}.contact-type h3{font-size:17px}.contact-type p{margin:0;color:#53606e;font-size:14px}.contact-email{font:500 clamp(19px,2.5vw,28px) Kallisto,var(--sans);color:var(--blue);word-break:break-word}.legal{font-size:13px;color:#65717e}
@media(max-width:1000px){.navlinks{display:none}.navdetails{display:block}.hero-grid{gap:32px}.steps{grid-template-columns:repeat(3,1fr)}.cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.wrap{width:calc(100% - 34px)}.nav{height:72px}.brand{font-size:16px}.hero{padding:42px 0 50px}.hero-grid,.two,.page-hero .wrap{grid-template-columns:1fr;gap:28px}.hero-visual{min-height:370px;max-height:470px}.hero-visual img{min-height:370px;max-height:470px}.section{padding:62px 0}.steps{grid-template-columns:1fr;gap:9px}.step{min-height:auto}.cards,.product-grid,.location-grid,.contact-types{grid-template-columns:1fr}.brand-logos{gap:15px}.brand-logos img{max-width:30%;max-height:42px}.brand-logos .kobe{max-width:30%;max-height:40px}.direction-grid{grid-template-columns:repeat(2,1fr)}.profile-row{align-items:center;gap:20px}.profile-row .avatar{width:120px;flex-basis:120px}.footer-top{grid-template-columns:1fr}.footer-brand img{width:142px}.footer-cta-inner{align-items:flex-start;flex-direction:column}.copyright{flex-direction:column}.page-hero{padding:42px 0}.page-hero img{max-height:210px}}
@media(max-width:420px){.brand-logos{flex-wrap:wrap;justify-content:center}.brand-logos img{max-width:37%}.brand-logos .kobe{max-width:70%;order:3}.actions .btn{width:100%}.profile-row{align-items:flex-start}.profile-row .avatar{width:92px;flex-basis:92px}.contact-email{font-size:18px}}

.reg-mark{font-size:.58em;vertical-align:super;line-height:0;letter-spacing:0}

.approved-photos{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:stretch}.approved-photos figure{margin:0;background:#f3f5f7;overflow:hidden;border-radius:10px}.approved-photos figure:last-child{grid-column:1/-1}.approved-photos img{display:block;width:100%;height:240px;object-fit:contain}.approved-photos figure:last-child img{height:300px}@media(max-width:760px){.approved-photos img{height:210px}.approved-photos figure:last-child img{height:290px}}
