:root{--ink:#333;--ink-soft:#555;--muted:#7a7a7a;--line:#e7e2da;--bg:#fff;--cream:#fbf7f0;--cream-deep:#f3ece0;--beige:#efece6;--accent:#e3908c;--accent-deep:#cf716c;--navy:#2b3a55;--sky:#5aa9d6;--radius:18px;--shadow:0 10px 30px #2b3a5514;--font:"Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Noto Sans JP", "Yu Gothic", "Meiryo", sans-serif;--font-en:"Montserrat", var(--font)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font);color:var(--ink);background:var(--bg);letter-spacing:.04em;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.9;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit}h1,h2,h3{letter-spacing:.06em;word-break:auto-phrase;text-wrap:balance;margin:0;line-height:1.5}.lead,.intro p,.promise p,.cta p{word-break:auto-phrase}p{margin:0 0 1em}.wrap{width:min(1120px,100% - 32px);margin-inline:auto}.narrow{width:min(820px,100% - 32px);margin-inline:auto}.site-header{z-index:50;pointer-events:none;position:fixed;inset:16px 0 auto}.site-header .bar{pointer-events:auto;background:#fffffff5;border-radius:12px;align-items:center;gap:16px;width:min(1180px,100% - 24px);margin-inline:auto;padding:10px 12px 10px 16px;display:flex;box-shadow:0 6px 24px #00000014}.brand{color:#555;align-items:center;gap:10px;text-decoration:none;display:flex}.brand img{width:40px;height:40px}.brand small{letter-spacing:.08em;font-size:11px;line-height:1.3;display:block}.brand strong{letter-spacing:.06em;font-size:16px;font-weight:600;line-height:1.3;display:block}.nav{align-items:center;gap:2px;margin-left:auto;display:flex}.nav a,.nav button,.brand span{white-space:nowrap}.nav>a,.nav>.dd>button{font:inherit;color:#555;cursor:pointer;letter-spacing:.08em;background:0 0;border:0;border-radius:8px;padding:8px 10px;font-size:14px;font-weight:600;text-decoration:none}.nav>a:hover,.nav>.dd>button:hover{background:var(--cream)}.dd{position:relative}.dd-menu{min-width:240px;box-shadow:var(--shadow);background:#fff;border-radius:12px;padding:8px;display:none;position:absolute;top:calc(100% + 8px);right:0}.dd:hover .dd-menu,.dd:focus-within .dd-menu{display:block}.dd-menu a{border-radius:8px;padding:8px 12px;font-size:14px;text-decoration:none;display:block}.dd-menu a:hover,.dd-menu a[aria-current]{background:var(--cream)}.nav>a.btn-recruit{background:var(--accent);letter-spacing:.1em;border-radius:8px;margin-left:6px;padding:10px 16px;font-size:14px;font-weight:700;text-decoration:none;color:#fff!important}.menu-toggle{cursor:pointer;background:0 0;border:0;width:44px;height:44px;margin-left:auto;display:none}.menu-toggle span{background:#555;width:22px;height:2px;margin:5px auto;transition:all .3s;display:block}@media (width<=1180px){.menu-toggle{display:block}.nav{box-shadow:var(--shadow);background:#fff;border-radius:12px;flex-direction:column;align-items:stretch;gap:0;padding:12px;display:none;position:absolute;top:calc(100% + 8px);left:12px;right:12px}.site-header.open .nav{display:flex}.dd-menu{box-shadow:none;min-width:0;padding:0 0 0 12px;display:block;position:static}.dd>button{text-align:left;width:100%}.btn-recruit{text-align:center;margin:8px 0 0}.brand strong{font-size:14px}}@media (width<=480px){.brand small{font-size:10px}.brand strong{letter-spacing:.02em;font-size:12.5px}.brand img{width:34px;height:34px}}.hero{color:#fff;align-items:end;min-height:min(78vh,720px);display:grid;position:relative;overflow:hidden}.hero-bg{position:absolute;inset:0}.hero-bg img{object-fit:cover;width:100%;height:100%;animation:14s ease-out forwards heroZoom;transform:scale(1.06)}.hero:after{content:"";background:linear-gradient(#141c2d26 0%,#141c2d40 45%,#141c2db8 100%);position:absolute;inset:0}.hero-inner{z-index:1;padding:160px 0 72px;position:relative}.eyebrow{letter-spacing:.25em;opacity:.95;align-items:center;gap:10px;font-size:13px;font-weight:600;display:inline-flex}.eyebrow:before{content:"";background:currentColor;width:28px;height:1px}.hero .audience{letter-spacing:.15em;margin:18px 0 10px;font-size:clamp(15px,1.6vw,18px);font-weight:600}.hero h1{text-shadow:0 2px 20px #00000040;max-width:20em;font-size:clamp(26px,4.2vw,46px);font-weight:700}.hero .lead{white-space:pre-line;opacity:.95;max-width:36em;margin-top:20px;font-size:clamp(14px,1.4vw,16px)}@keyframes heroZoom{to{transform:scale(1)}}section{padding:clamp(64px,9vw,120px) 0}.sec-cream{background:var(--cream)}.sec-head{text-align:center;margin-bottom:clamp(36px,5vw,56px)}.sec-head .en{font-family:var(--font-en);letter-spacing:.3em;color:var(--accent-deep);text-transform:uppercase;font-size:13px;font-weight:600}.sec-head h2{margin-top:8px;font-size:clamp(22px,2.8vw,30px)}.sec-head h2:after{content:"";background:var(--accent);border-radius:2px;width:36px;height:2px;margin:18px auto 0;display:block}.intro{grid-template-columns:1.1fr .9fr;align-items:center;gap:clamp(28px,5vw,72px);display:grid}.intro h2{margin-bottom:24px;font-size:clamp(22px,2.6vw,30px)}.intro p{color:var(--ink-soft)}.intro figure{margin:0;position:relative}.intro figure img{border-radius:var(--radius);aspect-ratio:4/5;object-fit:cover;width:100%;box-shadow:var(--shadow)}.intro figure:before{content:"";background:var(--cream-deep);border-radius:var(--radius);z-index:-1;position:absolute;inset:24px -18px -18px 24px}@media (width<=820px){.intro{grid-template-columns:1fr}.intro figure{max-width:480px;margin-inline:auto}}.promises{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.promise{border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;padding:32px 28px 28px;position:relative}.promise .num{font-family:var(--font-en);color:var(--accent);opacity:.35;font-size:40px;font-weight:700;line-height:1;position:absolute;top:20px;right:24px}.promise h3{margin-bottom:12px;padding-right:48px;font-size:18px}.promise p{color:var(--ink-soft);margin:0;font-size:15px}@media (width<=720px){.promises{grid-template-columns:1fr}}.flow{counter-reset:step;grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.step{border:1px solid var(--line);border-radius:var(--radius);text-align:center;background:#fff;padding:28px 20px 22px;position:relative}.step:before{counter-increment:step;content:"STEP " counter(step);font-family:var(--font-en);letter-spacing:.15em;color:#fff;background:var(--navy);border-radius:999px;margin-bottom:14px;padding:4px 12px;font-size:12px;font-weight:700;display:inline-block}.step h3{margin-bottom:8px;font-size:16px}.step p{color:var(--ink-soft);text-align:left;margin:0;font-size:14px}.step:not(:last-child):after{content:"";border-top:2px solid var(--accent);border-right:2px solid var(--accent);z-index:1;width:10px;height:10px;position:absolute;top:50%;right:-13px;transform:translateY(-50%)rotate(45deg)}@media (width<=900px){.flow{grid-template-columns:1fr}.step:not(:last-child):after{top:auto;bottom:-13px;right:50%;transform:translate(50%)rotate(135deg)}}.targets{grid-template-columns:repeat(2,1fr);gap:12px 24px;margin:0;padding:0;list-style:none;display:grid}.targets li{border:1px solid var(--line);background:#fff;border-radius:14px;padding:16px 18px 16px 52px;font-size:15px;position:relative}.targets li:before{content:"";background:var(--accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center / 13px no-repeat;border-radius:50%;width:20px;height:20px;margin-top:-10px;position:absolute;top:50%;left:18px}@media (width<=720px){.targets{grid-template-columns:1fr}}.faq details{border:1px solid var(--line);background:#fff;border-radius:14px;margin-bottom:12px;overflow:hidden}.faq summary{cursor:pointer;padding:20px 56px 20px 60px;font-weight:600;list-style:none;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:before{content:"Q";font-family:var(--font-en);color:var(--accent-deep);font-size:20px;font-weight:700;position:absolute;top:16px;left:20px}.faq summary:after{content:"";border-bottom:2px solid #999;border-right:2px solid #999;width:10px;height:10px;transition:all .3s;position:absolute;top:50%;right:24px;transform:translateY(-70%)rotate(45deg)}.faq details[open] summary:after{transform:translateY(-30%)rotate(-135deg)}.faq .a{color:var(--ink-soft);padding:0 24px 22px 60px;position:relative}.faq .a:before{content:"A";font-family:var(--font-en);color:var(--navy);font-size:20px;font-weight:700;position:absolute;top:-2px;left:22px}.cta{background:var(--cream);border:1px solid var(--line);color:var(--ink);text-align:center;border-radius:24px;padding:clamp(36px,6vw,60px)}.cta h2{margin-bottom:10px;font-size:clamp(20px,2.6vw,28px)}.cta h2:after{content:"";background:var(--accent);border-radius:2px;width:36px;height:2px;margin:16px auto 0;display:block}.cta>p{color:var(--ink-soft);margin-top:16px}.btn{letter-spacing:.08em;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:15px 26px;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-flex}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px #0000001a}.btn-white{color:var(--ink);background:#fff;border:1px solid #555}.btn-line{color:#fff;background:#06c755}.btn-outline{border:1px solid var(--accent);color:var(--accent-deep);background:#fff}.btn .big{font-family:var(--font-en);letter-spacing:.12em;font-size:20px}.cta small{color:var(--muted);margin-top:6px;font-size:13px;display:block}.partners{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;display:grid}.pcard{border-radius:var(--radius);border:1px solid var(--line);text-align:center;background:#fff;flex-direction:column;align-items:center;gap:10px;padding:22px 12px 18px;text-decoration:none;transition:all .25s;display:flex}.pcard:hover{box-shadow:var(--shadow);border-color:#0000;transform:translateY(-4px)}.pcard[aria-current]{border-color:var(--accent)}.pcard .ic{background:var(--cream);width:64px;height:64px;color:var(--navy);border-radius:50%;place-items:center;display:grid}.pcard .ic svg{width:30px;height:30px}.pcard span{font-size:15px;font-weight:700}.pcard small{color:var(--muted);margin-top:-6px;font-size:12px}.site-footer{background:var(--beige);color:#4d4d4d;margin-top:0;padding:72px 0 28px;font-size:14px}.f-grid{grid-template-columns:1fr 1fr;align-items:start;gap:40px;display:grid}.f-actions a{letter-spacing:.12em;background:#ffffff4d;border:1px solid #555;border-radius:999px;justify-content:center;align-items:center;gap:12px;width:min(340px,100%);margin-bottom:14px;padding:16px;font-size:20px;text-decoration:none;display:flex}.f-actions a:hover{background:#fff}.f-map iframe{border:0;border-radius:14px;width:100%;height:260px}.f-links{border-top:1px solid #d9d4cb;flex-wrap:wrap;gap:8px 20px;margin:40px 0 20px;padding-top:28px;display:flex}.f-links a{font-size:13px;font-weight:600;text-decoration:none}.f-bottom{color:#777;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:12px;display:flex}@media (width<=820px){.f-grid{grid-template-columns:1fr}}.fade{opacity:0;transition:opacity 1s,transform 1s;transform:translateY(28px)}.fade.in{opacity:1;transform:none}.fade.d1{transition-delay:.12s}.fade.d2{transition-delay:.24s}.fade.d3{transition-delay:.36s}@media (prefers-reduced-motion:reduce){.fade{opacity:1;transition:none;transform:none}.hero-bg img{animation:none;transform:none}}.breadcrumb{color:var(--muted);padding:18px 0 0;font-size:12px}.breadcrumb a{color:var(--muted)}.to-top{color:#fff;width:48px;height:48px;box-shadow:var(--shadow);z-index:40;opacity:0;pointer-events:none;background:#666;border-radius:50%;place-items:center;text-decoration:none;transition:all .3s;display:grid;position:fixed;bottom:20px;right:20px}.to-top.show{opacity:1;pointer-events:auto}.cta-grid[data-astro-cid-4zgmmfpt]{grid-template-columns:1fr 1fr;gap:20px;margin-top:28px;display:grid}.cta-grid[data-astro-cid-4zgmmfpt]>div[data-astro-cid-4zgmmfpt]{box-shadow:var(--shadow);background:#fff;border-radius:18px;flex-direction:column;align-items:center;gap:12px;padding:26px 24px;display:flex}.cta-label[data-astro-cid-4zgmmfpt]{letter-spacing:.2em;color:var(--accent-deep);margin:0;font-size:13px;font-weight:700}.lw-qr[data-astro-cid-4zgmmfpt]{text-align:left;align-items:center;gap:14px;margin-top:4px;display:flex}.lw-qr[data-astro-cid-4zgmmfpt] img[data-astro-cid-4zgmmfpt]{border:1px solid var(--line);background:#fff;border-radius:10px;padding:6px}.lw-qr[data-astro-cid-4zgmmfpt] p[data-astro-cid-4zgmmfpt]{color:var(--ink-soft);margin:0;font-size:13px;line-height:1.7}.lw-qr[data-astro-cid-4zgmmfpt] span[data-astro-cid-4zgmmfpt]{font-family:var(--font-en);color:var(--muted);margin-top:6px;font-size:12px;display:inline-block}@media (width<=760px){.cta-grid[data-astro-cid-4zgmmfpt]{grid-template-columns:1fr}.lw-qr[data-astro-cid-4zgmmfpt] img[data-astro-cid-4zgmmfpt]{display:none}}
