:root{--bg:#fff;--bg-soft:#fdf3f6;--bg-tint:#f9e4eb;--text:#2a2730;--text-sub:#5c5763;--line:#ecdfe4;--accent:#b8446b;--accent-dark:#933253;--line-green:#04803a;--line-green-dark:#036a30;--radius:14px;--maxw:1080px;--maxw-narrow:720px;--gutter:16px;--section-gap:40px;--sticky-h:76px}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--bg);color:var(--text);margin:0;font-family:Hiragino Sans,Hiragino Kaku Gothic ProN,Yu Gothic,Noto Sans JP,system-ui,-apple-system,Segoe UI,sans-serif;font-size:17px;line-height:1.8}body.has-sticky{padding-bottom:var(--sticky-h)}html:lang(ja) body{line-break:strict;word-break:auto-phrase}h1,h2,h3,p,ul,ol,dl,dd{margin:0}h1,h2,h3{line-height:1.4}h1{font-size:1.7rem}h2{font-size:1.35rem}h3{font-size:1.05rem}ul,ol{padding:0;list-style:none}a{color:var(--accent-dark)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.container{width:100%;max-width:calc(var(--maxw) + var(--gutter) * 2);padding:0 var(--gutter);margin:0 auto}.container--narrow{max-width:calc(var(--maxw-narrow) + var(--gutter) * 2)}.section{padding:var(--section-gap) 0}.section--soft{background:var(--bg-soft)}.section__title{border-left:5px solid var(--accent);margin-bottom:20px;padding-left:12px}.section__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;margin-bottom:20px;display:flex}.section__head .section__title{margin-bottom:0}.section__meta{color:var(--text-sub);font-size:.9rem}.section__more{max-width:360px;margin:24px auto 0}.lead{color:var(--text-sub)}.stack>*+*{margin-top:16px}.header{border-bottom:1px solid var(--line);background:var(--bg)}.header__inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:0 12px;padding-top:10px;padding-bottom:4px;display:flex}.logo{flex-direction:column;justify-content:center;min-height:44px;line-height:1.25;text-decoration:none;display:flex}.logo__main{color:var(--accent);letter-spacing:.01em;font-size:1.1rem;font-weight:700;display:block}.logo__sub{color:var(--text-sub);font-size:.75rem;display:block}.lang-switch{border:1px solid var(--line);min-height:44px;color:var(--text);border-radius:999px;flex-shrink:0;align-items:center;padding:0 14px;font-size:.9rem;text-decoration:none;display:inline-flex}.nav{order:3;width:100%}.nav__list{gap:4px 20px;display:flex}.nav__list a{min-height:44px;color:var(--text);align-items:center;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.nav__list a:hover{color:var(--accent-dark)}.btn{text-align:center;border:2px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:56px;padding:10px 20px;font-size:1.05rem;font-weight:700;line-height:1.3;text-decoration:none;display:flex}.btn--line{background:var(--line-green);color:#fff}.btn--line:hover{background:var(--line-green-dark)}.btn--primary{background:var(--accent);color:#fff}.btn--primary:hover{background:var(--accent-dark)}.btn--ghost{border-color:var(--accent);background:var(--bg);color:var(--accent-dark)}.btn--ghost:hover{background:var(--bg-soft)}.btn__icon{flex-shrink:0;width:24px;height:24px}.cta-note{color:var(--text-sub);text-align:center;margin-top:6px;font-size:.85rem}.hero{background:linear-gradient(180deg, var(--bg-tint) 0%, var(--bg-soft) 100%);padding:32px 0 36px}.hero--compact{padding:24px 0 28px}.hero__inner{gap:24px;display:grid}.search-box{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);padding:20px}.search-box__title{font-size:1.05rem}.search-chips{flex-wrap:wrap;gap:8px;display:flex}.search-chip{border:1px solid var(--accent);background:var(--bg);min-height:44px;color:var(--accent-dark);border-radius:999px;align-items:center;padding:0 16px;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.search-chip:hover{background:var(--bg-soft)}.search-chip[aria-current=true]{background:var(--accent);color:#fff}.icon{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:28px;height:28px}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);padding:20px}.features{gap:16px;display:grid}.feature{align-items:flex-start;gap:14px;display:flex}.feature__icon{background:var(--bg-tint);width:52px;height:52px;color:var(--accent-dark);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.feature p{color:var(--text-sub);font-size:.95rem}.job-list{gap:16px;display:grid}.job-card,.job-card__main,.job-card__side{flex-direction:column;gap:12px;display:flex}.job-card__employer{color:var(--text-sub);font-size:.85rem}.job-card__title{font-size:1.15rem}.job-card__title a{color:var(--text);text-decoration:none}.job-card__title a:hover{color:var(--accent-dark);text-decoration:underline}.job-card__facts>div{border-top:1px solid var(--line);grid-template-columns:5.5em 1fr;gap:8px;padding:8px 0;display:grid}.job-card__facts>div:last-child{border-bottom:1px solid var(--line)}.job-card__facts dt{color:var(--text-sub);font-size:.85rem;line-height:1.9}.job-card__facts dd{font-size:.95rem}.job-card__pay{flex-wrap:wrap;align-items:baseline;gap:2px 8px;display:flex}.job-card__pay-unit{color:var(--text-sub);font-size:.9rem}.job-card__pay-amount{color:var(--accent-dark);font-size:1.45rem;font-weight:700;line-height:1.3}.job-card__foot{color:var(--text-sub);flex-wrap:wrap;gap:2px 16px;font-size:.8rem;display:flex}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{background:var(--bg-tint);color:var(--accent-dark);border-radius:999px;padding:2px 10px;font-size:.8rem;font-weight:600}.job-layout{padding-top:24px;padding-bottom:var(--section-gap);gap:24px;display:grid}.job-layout__side{order:-1}.job-layout__desktop-only{display:none}.job-block+.job-block{margin-top:var(--section-gap)}.highlights{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.highlight{border:1px solid var(--line);background:var(--bg);color:var(--accent-dark);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;font-size:.95rem;font-weight:700;line-height:1.4;display:flex}.highlight span{color:var(--text)}.steps{counter-reset:step;gap:16px;display:grid}.step{counter-increment:step;min-height:44px;padding-left:60px;position:relative}.step:before{content:counter(step);background:var(--accent);color:#fff;border-radius:50%;place-items:center;width:44px;height:44px;font-size:1.15rem;font-weight:700;display:grid;position:absolute;top:0;left:0}.step p{color:var(--text-sub);font-size:.95rem}.info{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);overflow:hidden}.info__row{padding:14px 16px}.info__row+.info__row{border-top:1px solid var(--line)}.info dt{color:var(--accent-dark);font-size:.85rem;font-weight:700}.info dd{overflow-wrap:anywhere;font-size:1.05rem}.faq details{border:1px solid var(--line);background:var(--bg);border-radius:12px}.faq details+details{margin-top:10px}.faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:12px 16px;font-weight:700;line-height:1.5;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--accent);flex-shrink:0;font-size:1.4rem;line-height:1}.faq details[open] summary:after{content:"−"}.faq__answer{color:var(--text-sub);padding:0 16px 16px}.notice{border-left:5px solid var(--accent);background:var(--bg-soft);border-radius:8px;padding:12px 16px;font-size:.95rem}.text-link{align-items:center;min-height:44px;font-weight:600;display:inline-flex}.consult__action{max-width:420px}.footer{border-top:1px solid var(--line);background:var(--bg-soft);color:var(--text-sub);padding:28px 0;font-size:.85rem}.footer__links{flex-wrap:wrap;gap:4px 16px;display:flex}.footer__links a{align-items:center;min-height:44px;display:inline-flex}.sticky-cta{z-index:10;padding:10px 0 calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fffffff5;position:fixed;bottom:0;left:0;right:0}.relay{text-align:center;place-items:center;min-height:70vh;display:grid}html[data-ttj-test]:after{content:"TEST";z-index:20;background:var(--text);color:#fff;padding:2px 8px;font-size:.7rem;font-weight:700;position:fixed;top:0;right:0}@media (width>=640px){:root{--gutter:24px}.job-card{flex-direction:row;align-items:stretch;gap:24px}.job-card__main{flex:1;min-width:0}.job-card__side{border-left:1px solid var(--line);flex:0 0 220px;justify-content:center;padding-left:24px}.job-card__foot{flex-direction:column}.highlights{grid-template-columns:repeat(3,1fr)}.info__row{grid-template-columns:9em 1fr;align-items:baseline;gap:16px;display:grid}}@media (width>=960px){:root{--gutter:32px;--section-gap:72px}h1{font-size:2.3rem}h2{font-size:1.6rem}.header__inner{flex-wrap:nowrap;gap:32px;padding-top:12px;padding-bottom:12px}.nav{order:0;width:auto;margin-left:auto}.hero{padding:64px 0}.hero--compact{padding:40px 0}.hero__inner{grid-template-columns:1fr 1fr;align-items:center;gap:48px}.hero .lead{font-size:1.1rem}.search-box{padding:28px}.section__title,.section__head{margin-bottom:28px}.features,.steps{grid-template-columns:repeat(3,1fr);gap:24px}.feature{flex-direction:column}.job-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:48px;padding-top:48px}.job-layout__side{order:0;position:sticky;top:24px}.job-layout__desktop-only{display:block}.sticky-cta{display:none}body.has-sticky{padding-bottom:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
