*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4}body{margin:0;font-family:Figtree,Hiragino Sans,Yu Gothic UI,Meiryo,system-ui,sans-serif;font-size:16px;line-height:1.5;color:#1f2937;background-color:#f3f4f6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600}p{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img,svg{display:block;max-width:100%}.app{min-height:100vh;background-color:#f3f4f6}.app__header{background-color:#fff;box-shadow:0 1px 2px #0000000d}.app__header-inner{max-width:80rem;margin:0 auto;padding:1.5rem}.app__main{padding:3rem 0}.container{max-width:80rem;margin:0 auto;padding:0 1.5rem}.guest{min-height:90vh;display:flex;flex-direction:column;align-items:center;padding:1.5rem;background-color:#f3f4f6}@media(min-width:640px){.guest{justify-content:center}}.guest__logo{width:5rem;height:5rem;color:#6b7280;margin-bottom:1.5rem}.guest__logo svg{fill:currentColor;width:100%;height:100%}.guest__panel{width:100%;margin:1.5rem 1.5rem 0;padding:1.5rem;background-color:#fff;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;overflow:hidden}@media(min-width:640px){.guest__panel{max-width:28rem;border-radius:.5rem}}.nav{background-color:#fff;border-bottom:1px solid #e5e7eb}.nav__inner{max-width:80rem;margin:0 auto;padding:0 1.5rem;display:flex;justify-content:space-between;height:4rem}.nav__brand{display:flex;align-items:center}.nav__brand svg{width:auto;height:2.25rem;fill:#1f2937}.nav__links{display:none;margin-left:2.5rem}@media(min-width:640px){.nav__links{display:flex;gap:2rem}}.nav__link{display:inline-flex;align-items:center;padding:0 .25rem;font-size:.875rem;font-weight:500;color:#6b7280;border-bottom:2px solid transparent;transition:all .15s ease-in-out}.nav__link:hover{color:#1f2937;border-bottom-color:#d1d5db}.nav__link--active{color:#1f2937;border-bottom-color:#4f46e5}.nav__user{display:none;align-items:center}@media(min-width:640px){.nav__user{display:flex}}.nav__user-toggle{display:inline-flex;align-items:center;gap:.25rem;padding:.5rem .75rem;background-color:#fff;border:1px solid transparent;border-radius:.375rem;font-size:.875rem;font-weight:500;color:#6b7280;transition:color .15s ease-in-out}.nav__user-toggle:hover{color:#1f2937}.nav__user-toggle svg{width:1rem;height:1rem;fill:currentColor}.nav__hamburger{display:flex;align-items:center;margin-right:-.5rem;background:none;border:none;color:#9ca3af}@media(min-width:640px){.nav__hamburger{display:none}}.nav__hamburger svg{width:1.5rem;height:1.5rem;stroke:currentColor;fill:none}.nav__responsive{display:none}.nav__responsive--open{display:block}@media(min-width:640px){.nav__responsive{display:none!important}}.nav__responsive-section{padding:.5rem 0 .75rem}.nav__responsive-section+.nav__responsive-section{border-top:1px solid #e5e7eb;padding-top:1rem}.nav__responsive-user{padding:0 1rem .75rem}.nav__responsive-user-name{font-size:16px;font-weight:500;color:#1f2937}.nav__responsive-user-email{font-size:.875rem;color:#6b7280}.btn{display:inline-flex;align-items:center;padding:.5rem 1rem;border:1px solid transparent;border-radius:.375rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:background-color .15s ease-in-out,color .15s ease-in-out,box-shadow .15s ease-in-out}.btn:focus{outline:none;box-shadow:0 0 0 2px #fff,0 0 0 4px #4f46e5}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background-color:#1f2937;color:#fff}.btn--primary:hover{background-color:#374151}.btn--primary:active{background-color:#111827}.btn--secondary{background-color:#fff;border-color:#d1d5db;color:#374151;box-shadow:0 1px 2px #0000000d}.btn--secondary:hover{background-color:#f9fafb}.btn--danger{background-color:#dc2626;color:#fff}.btn--danger:hover{background-color:#ef4444}.btn--danger:active{background-color:#b91c1c}.form__group+.form__group{margin-top:1rem}.form__label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.25rem}.form__input{display:block;width:100%;padding:.5rem .75rem;font-size:16px;color:#1f2937;background-color:#fff;border:1px solid #d1d5db;border-radius:.375rem;box-shadow:0 1px 2px #0000000d;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form__input:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e526}.form__checkbox{width:1rem;height:1rem;border:1px solid #d1d5db;border-radius:.25rem;accent-color:#4f46e5}.form__checkbox-wrapper{display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;color:#6b7280}.form__error{margin:.5rem 0 0;padding:0;list-style:none;font-size:.875rem;color:#dc2626}.form__error li{margin-top:.25rem}.form__status{font-size:.875rem;font-weight:500;color:#16a34a;margin-bottom:1rem}.form__actions{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;margin-top:1rem}.form__hint{font-size:.875rem;color:#6b7280;margin-bottom:1rem}.link{font-size:.875rem;color:#6b7280;text-decoration:underline;transition:color .15s ease-in-out}.link:hover{color:#1f2937}.card{background-color:#fff;box-shadow:0 1px 2px #0000000d;border-radius:.5rem;overflow:hidden}.card__body{padding:1.5rem}@media(min-width:640px){.card__body{padding:2rem}}.card__body-narrow{max-width:36rem}.dropdown{position:relative}.dropdown__panel{position:absolute;z-index:50;margin-top:.5rem;background-color:#fff;border-radius:.375rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;min-width:12rem}.dropdown__panel--right{right:0}.dropdown__panel--left{left:0}.dropdown__inner{padding:.25rem 0;border:1px solid rgba(0,0,0,.05);border-radius:.375rem}.dropdown__link{display:block;width:100%;padding:.5rem 1rem;text-align:left;font-size:.875rem;color:#374151;transition:background-color .15s ease-in-out}.dropdown__link:hover{background-color:#f3f4f6}.responsive-nav-link{display:block;width:100%;padding:.5rem 1rem;text-align:left;font-size:16px;font-weight:500;color:#6b7280;border-left:4px solid transparent;transition:all .15s ease-in-out}.responsive-nav-link:hover{color:#1f2937;background-color:#f9fafb;border-left-color:#d1d5db}.responsive-nav-link--active{color:#4338ca;background-color:#eef2ff;border-left-color:#4f46e5}.page-heading{font-size:1.25rem;font-weight:600;color:#1f2937;line-height:1.25}.section__header{margin-bottom:1.5rem}.section__title{font-size:1.125rem;font-weight:500;color:#1f2937;margin-bottom:.25rem}.section__lead{font-size:.875rem;color:#6b7280}.section__form>.form__group+.form__group{margin-top:1.5rem}.form__feedback{font-size:.875rem;color:#6b7280}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;padding:1.5rem 1rem;overflow-y:auto}@media(min-width:640px){.modal{padding:1.5rem 0}}.modal__overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#6b7280bf}.modal__panel{position:relative;margin:0 auto 1.5rem;background-color:#fff;border-radius:.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;overflow:hidden;max-width:42rem}.modal__body{padding:1.5rem}.modal__actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.header_wrap .welcome__header{position:fixed;top:0;left:0;z-index:1000;max-width:1400px;width:100%;background-color:#fff;display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0 auto;padding:.5rem 1.5rem;box-shadow:0 4px 12px #00000014}.welcome__nav{display:flex;gap:.5rem}.welcome__nav-link{padding:.5rem .75rem;border-radius:.375rem;color:#1f2937;transition:color .15s ease-in-out}.welcome__nav-link:hover{color:#6b7280}:root{--primary: #e8508b;--primary-deep: #c93770;--primary-soft: #fde4ef;--primary-softer: #fff2f7;--warm: #E0305B;--warm-deep: #c2254f;--bg: #FEF7F9;--surface: #ffffff;--surface-2: #f1f6fb;--ink: #1c2a3a;--ink-soft: #5a6b7d;--ink-faint: #8a99a8;--line: #e3ebf3;--line-soft: #eef3f8;--good: #2fa86a;--good-soft: #e7f6ee;--gold: #f5a623;--gold-soft: #fdf2dd;--font-head: "Zen Maru Gothic", "Noto Sans JP", system-ui, sans-serif;--font-body: "Noto Sans JP", system-ui, sans-serif;--r-sm: 8px;--r-md: 16px;--r-lg: 24px;--r-xl: 32px;--r-pill: 999px;--space-0: 0px;--space-half: 4px;--space-1: 8px;--space-2: 16px;--space-3: 24px;--space-4: 32px;--space-5: 40px;--space-6: 48px;--space-7: 56px;--space-8: 64px;--sh-sm: 0 1px 2px rgba(28, 42, 58, .05), 0 2px 6px rgba(28, 42, 58, .05);--sh-md: 0 3px 8px rgba(28, 42, 58, .06), 0 10px 24px rgba(28, 42, 58, .07);--sh-lg: 0 8px 20px rgba(28, 42, 58, .08), 0 24px 56px rgba(201, 48, 116, .1);--sh-focus: 0 0 0 4px rgba(232, 80, 139, .18)}body.js-body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;line-height:1.6}body.js-body h1,body.js-body h2,body.js-body h3,body.js-body h4,body.js-body .head{font-family:var(--font-head);font-weight:700;letter-spacing:.01em}body.js-body h1,body.js-body h2,body.js-body h3{line-height:1.3;margin:0}body.js-body button{font-family:inherit;cursor:pointer}body.js-body a{color:inherit;text-decoration:none}body.js-body img{display:block;max-width:100%}body.js-body input,body.js-body select,body.js-body textarea{font-family:inherit;font-size:inherit;color:inherit}body.js-body ::selection{background:#e8508b2e}.js-app{min-height:100vh;display:flex;flex-direction:column}.js-app>main{flex:1}@media(max-width:759px){.js-app>main{padding-bottom:var(--space-8)}}.js-container{max-width:1120px;margin:0 auto;padding:var(--space-0) var(--space-3)}@media(max-width:759px){.js-container{padding:var(--space-0) var(--space-2)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);border:1px solid transparent;border-radius:var(--r-pill);font-weight:700;font-size:15px;padding:var(--space-2) var(--space-3);transition:transform .12s ease,box-shadow .2s ease,background .2s ease;white-space:nowrap}.btn:active{transform:translateY(1px) scale(.99)}.btn-cta{background:var(--warm);color:#fff!important;box-shadow:0 4px 12px #c2254f47}.btn-cta:hover{background:var(--warm-deep);box-shadow:0 6px 18px #c2254f57}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 4px 12px #e8508b38}.btn-primary:hover{background:var(--primary-deep)}.btn-ghost{background:var(--surface);color:var(--primary-deep);border-color:var(--line)}.btn-ghost:hover{border-color:var(--primary);background:var(--primary-softer)}.btn-soft{background:var(--primary-soft);color:var(--primary-deep)}.btn-soft:hover{background:var(--primary-softer)}.btn-block{width:100%}.btn-lg{font-size:16px;padding:var(--space-2) var(--space-4)}.btn-sm{font-size:13px;padding:var(--space-1) var(--space-2)}.btn-header{background:var(--warm);color:#fff!important;box-shadow:0 4px 12px #c2254f47}.btn-header:hover{background:var(--warm-deep);box-shadow:0 6px 18px #c2254f57}@media(max-width:759px){.btn-header{font-size:13px;padding:var(--space-1) var(--space-2)}}.chip{display:inline-flex;align-items:center;gap:var(--space-1);font-size:12.5px;font-weight:600;padding:var(--space-1) var(--space-1);border-radius:var(--r-pill);background:var(--surface-2);color:var(--ink-soft);border:1px solid var(--line-soft);white-space:nowrap}.chip-good{background:var(--good-soft);color:#1d7a4a;border-color:transparent}.chip-blue{background:var(--primary-soft);color:var(--primary-deep);border-color:transparent}.chip-gold{background:var(--gold-soft);color:#a76b08;border-color:transparent}.tag-toggle{display:inline-flex;align-items:center;gap:var(--space-1);font-size:13.5px;font-weight:600;padding:var(--space-1) var(--space-2);border-radius:var(--r-pill);background:var(--surface);color:var(--ink-soft);border:1.5px solid var(--line);transition:all .15s ease;cursor:pointer}.tag-toggle:hover{border-color:var(--primary);color:var(--primary-deep)}.tag-toggle input{position:absolute;width:1px;height:1px;opacity:0}.tag-toggle[aria-pressed=true],.tag-toggle:has(input:checked){background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 3px 9px #e8508b38}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);box-shadow:var(--sh-sm)}.ph{position:relative;background-color:var(--surface-2);background-image:repeating-linear-gradient(-45deg,#e8508b0f 0,#e8508b0f 10px,#e8508b05 10px,#e8508b05 20px);display:flex;align-items:center;justify-content:center;overflow:hidden;color:var(--ink-faint)}.ph .ph-label{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;letter-spacing:.02em;background:#ffffffc7;padding:var(--space-0) var(--space-1);border-radius:99px;border:1px solid var(--line)}.muted{color:var(--ink-soft)}.faint{color:var(--ink-faint)}.salary{color:var(--warm-deep);font-weight:800}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@keyframes riseIn{0%{transform:translateY(12px)}to{transform:none}}.rise{opacity:1}@media(prefers-reduced-motion:no-preference){.rise{animation:riseIn .45s cubic-bezier(.2,.7,.3,1)}}@keyframes pop{0%{transform:scale(1)}40%{transform:scale(1.32)}to{transform:scale(1)}}.pop{animation:pop .32s ease}.site-header{position:sticky;top:0;z-index:40;background:#ffffffeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.site-header__inner{max-width:1120px;margin:0 auto;padding:var(--space-2) var(--space-3);display:flex;align-items:center}.site-header__nav-item{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--space-2);border:none;background:transparent;color:var(--ink-soft);font-weight:700;font-size:14.5px}.site-header__nav-item:hover{background:var(--surface-2)}.site-header__nav-item--active{background:var(--primary-soft);color:var(--primary-deep)}.site-header__actions{margin-left:auto;display:flex;align-items:center;gap:var(--space-1)}.site-header__login{font-size:13.5px;font-weight:600;color:var(--ink-soft);padding:var(--space-1) var(--space-1);border-radius:var(--space-2)}.site-header__login:hover{color:var(--primary-deep);background:var(--primary-softer)}@media(max-width:759px){.site-header__login{display:none}}.brand{display:flex;align-items:center;gap:var(--space-1);flex-shrink:0;transition:all .15s ease}.brand:hover{opacity:.8}.brand__mark{width:34px;height:34px;border-radius:var(--space-2);background:linear-gradient(135deg,var(--primary),var(--primary-deep));color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 8px #e8508b4d}@media(max-width:759px){.brand__mark{width:30px;height:30px}}.brand__logo{display:block;height:60px;width:auto;object-fit:contain}@media(max-width:759px){.brand__logo{height:40px}}.brand__name{font-family:var(--font-head);font-weight:700;font-size:20px;color:var(--ink);letter-spacing:.01em;white-space:nowrap}.brand__name span{color:var(--primary)}@media(max-width:759px){.brand__name{font-size:18px}}.bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:45;background:#fffffff5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line);display:flex;padding-bottom:env(safe-area-inset-bottom)}@media(min-width:760px){.bottom-nav{display:none}}.bottom-nav__item{flex:1;border:none;background:transparent;padding:var(--space-1) var(--space-0) var(--space-1);display:flex;flex-direction:column;align-items:center;gap:var(--space-0);color:var(--ink-faint)}.bottom-nav__item span{font-size:10.5px;font-weight:700}.bottom-nav__item--active{color:var(--primary)}.search-bar{display:flex;gap:var(--space-1);flex-wrap:wrap;background:var(--surface);border-radius:var(--space-2);padding:var(--space-1);box-shadow:var(--sh-sm);border:1px solid var(--line)}.search-bar--big{border-radius:var(--space-3);padding:var(--space-1);box-shadow:var(--sh-lg)}.search-bar__field{flex:2 1 200px;display:flex;align-items:center;gap:var(--space-1);padding:var(--space-0) var(--space-2)}.search-bar__field svg{color:var(--primary);flex-shrink:0}.search-bar__field input,.search-bar__field select{border:none;outline:none;width:100%;padding:var(--space-1) var(--space-0);font-size:15px;background:transparent}.search-bar__field select:invalid,.search-bar__field select.is-empty{color:var(--ink-faint)}.search-bar__field--area{flex:1 1 140px}.search-bar--big .search-bar__field input,.search-bar--big .search-bar__field select{padding:var(--space-2) var(--space-0);font-size:16px}.search-bar__divider{width:1px;background:var(--line);align-self:stretch;margin:var(--space-1) var(--space-0)}@media(max-width:759px){.search-bar__divider{display:none}}.search-bar__submit{flex:1 1 120px;padding:var(--space-1) var(--space-3)}.search-bar--big .search-bar__submit{flex:0 0 auto;padding:var(--space-0) var(--space-4)}@media(max-width:759px){.search-bar--big .search-bar__submit{flex:1 1 100%;padding:var(--space-2) var(--space-3)}}.hero{background:linear-gradient(180deg,var(--primary-soft),var(--bg));padding-top:var(--space-6);padding-bottom:var(--space-7)}@media(max-width:759px){.hero{padding-top:var(--space-4);padding-bottom:var(--space-4)}}.hero__lead{max-width:720px}.hero__badge{margin-bottom:var(--space-2)}.hero__title{font-size:42px;line-height:1.3;color:var(--ink);text-wrap:balance}@media(max-width:759px){.hero__title{font-size:28px}}.hero__desc{font-size:16px;margin:var(--space-2) 0 0;max-width:560px;text-wrap:pretty}@media(max-width:759px){.hero__desc{font-size:14.5px}}.hero__search{margin-top:var(--space-3)}.hero__quick{display:flex;gap:var(--space-1);flex-wrap:wrap;margin-top:var(--space-2);align-items:center}.hero__quick .faint{font-size:12.5px}.hero__quick .tag-toggle{padding:var(--space-1) var(--space-2);font-size:12.5px}.top-sections{display:flex;flex-direction:column;gap:var(--space-7);margin-top:var(--space-6);padding-bottom:var(--space-8)}@media(max-width:759px){.top-sections{gap:var(--space-5);margin-top:var(--space-4)}}.section-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:var(--space-2);gap:var(--space-2)}.section-head__title{font-size:22px;color:var(--ink)}.section-head__sub{font-size:13.5px;margin:var(--space-0) 0 0}.trust-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-2)}@media(max-width:759px){.trust-strip{grid-template-columns:repeat(2,1fr)}}.trust-strip__item{padding:var(--space-2);display:flex;align-items:center;gap:var(--space-2)}.trust-strip__icon{width:42px;height:42px;border-radius:var(--space-2);background:var(--primary-soft);color:var(--primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.trust-strip__num{font-size:17px;color:var(--ink)}.trust-strip__label{font-size:11.5px}.category-tiles{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--space-2)}@media(max-width:759px){.category-tiles{grid-template-columns:repeat(2,1fr)}}.category-tiles__item{padding:var(--space-2) var(--space-1);display:flex;flex-direction:column;align-items:center;gap:var(--space-2);cursor:pointer;border:1px solid var(--line);transition:box-shadow .2s ease,border-color .2s ease}.category-tiles__item:hover{box-shadow:var(--sh-md);border-color:#f7cfe0}.category-tiles__icon{width:46px;height:46px;border-radius:var(--space-2);display:flex;align-items:center;justify-content:center}.category-tiles__label{font-size:13px;color:var(--ink);font-family:var(--font-head);font-weight:700}.category-group{margin-bottom:var(--space-4)}.category-group__title{margin-bottom:var(--space-2);font-size:15px;font-weight:700;color:var(--ink)}.job-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:var(--space-2)}@media(max-width:759px){.job-grid{grid-template-columns:1fr}}.job-card{position:relative;display:block;padding:var(--space-2);transition:box-shadow .2s,transform .12s,border-color .2s}.job-card:hover{box-shadow:var(--sh-md);border-color:#f7cfe0}.job-card__link{color:inherit}.job-card__link:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--r-sm)}.job-card__top{display:flex;gap:var(--space-2)}.job-card__body{flex:1;min-width:0}.job-card__meta{display:flex;align-items:center;gap:var(--space-1);flex-wrap:wrap;margin-bottom:var(--space-1)}.job-card__meta .faint{font-size:12px;white-space:nowrap}.job-card__title{font-size:17px;line-height:1.45;color:var(--ink);text-wrap:pretty}.job-card__company{font-size:13.5px;margin-top:var(--space-1);display:flex;align-items:center;gap:var(--space-1)}.job-card__place{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-3);margin:var(--space-2) 0 var(--space-2);font-size:13.5px}.job-card__place span{display:flex;align-items:center;gap:var(--space-1)}.job-card__role{font-size:11.5px}.job-card__salary{font-size:18px;margin-top:var(--space-1)}.job-card__tags{margin-top:var(--space-2)}.job-logo{font-family:var(--font-head);font-weight:700;width:52px;height:52px;min-width:52px;border-radius:var(--space-2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:22px;box-shadow:inset 0 -3px 8px #0000001f}.job-logo--lg{width:58px;height:58px;min-width:58px;font-size:24px}.feature-tags{display:flex;flex-wrap:wrap;gap:var(--space-1)}.search-page{padding-top:var(--space-4);padding-bottom:var(--space-5)}@media(max-width:759px){.search-page{padding-top:var(--space-2)}}.search-page__bar{margin-bottom:var(--space-3)}.search-page__layout{display:flex;gap:var(--space-3);align-items:flex-start}.search-page__results{flex:1;min-width:0}.search-page__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-2)}@media(max-width:759px){.search-page__grid{grid-template-columns:1fr}}.filter-aside{flex:0 0 268px;position:sticky;top:108px}@media(max-width:759px){.filter-aside{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#121e2d66}.filter-aside.is-open{display:flex;align-items:flex-end;justify-content:center}}.filter-aside__panel{padding:var(--space-3)}@media(max-width:759px){.filter-aside__panel{width:100%;max-width:560px;border-radius:var(--space-3) px var(--space-3) 0 0;max-height:86vh;overflow-y:auto;box-shadow:0 -10px 40px #0003}}.filter-aside__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2)}.filter-aside__head h3{font-size:16px;display:flex;align-items:center;gap:var(--space-1)}.filter-aside__close{border:none;background:var(--surface-2);width:34px;height:34px;border-radius:var(--space-1);display:none;align-items:center;justify-content:center;color:var(--ink-soft)}@media(max-width:759px){.filter-aside__close{display:flex}}.filter-aside__clear{border:none;background:none;font-size:12.5px;text-decoration:underline;cursor:pointer;color:var(--ink-faint)}.filter-group{padding-bottom:var(--space-2);margin-bottom:var(--space-2);border-bottom:1px solid var(--line-soft)}.filter-group:last-child{padding-bottom:0;margin-bottom:0;border-bottom:none}.filter-group__label{font-size:13.5px;color:var(--ink);margin-bottom:var(--space-1);font-family:var(--font-head);font-weight:700}.filter-group__options{display:flex;flex-wrap:wrap;gap:var(--space-1)}.filter-group__options .tag-toggle{font-size:12.5px;padding:var(--space-1) var(--space-2)}.filter-group select{width:100%;padding:var(--space-2) var(--space-2);border:1px solid var(--line);border-radius:var(--space-2);font-size:14px;background:var(--surface)}.filter-trigger-row{display:flex;gap:var(--space-1);align-items:center;margin-bottom:var(--space-2);flex-wrap:wrap}@media(min-width:760px){.filter-trigger-row{display:none}}.filter-trigger-row__count{background:var(--primary);color:#fff;border-radius:99px;padding:0 var(--space-1);font-size:11px;font-family:var(--font-head);font-weight:700}.active-chip{cursor:pointer;padding-right:var(--space-1);border:none}.sort-bar{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-2)}.sort-bar__count{font-size:14px;white-space:nowrap;color:var(--ink-soft)}.sort-bar__count b{color:var(--ink);font-size:18px;font-family:var(--font-head)}.sort-bar__options{margin-left:auto;display:flex;gap:var(--space-1)}.sort-bar__option{font-size:13px;font-weight:700;font-family:var(--font-head);padding:var(--space-1) var(--space-2);border-radius:var(--space-2);border:1px solid var(--line);background:var(--surface);color:var(--ink-soft)}.sort-bar__option--active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-deep)}.empty-result{padding:var(--space-6) var(--space-3);text-align:center}.empty-result__icon{width:60px;height:60px;border-radius:var(--space-3);background:var(--primary-soft);color:var(--primary);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-2)}.empty-result h3{font-size:18px}.empty-result p{font-size:14px;margin:var(--space-1) 0 0}.empty-result .btn{margin-top:var(--space-2)}.pagination{display:flex;gap:var(--space-1);justify-content:center;align-items:center;margin-top:var(--space-4);flex-wrap:wrap}.pagination__num{width:40px;height:40px;border-radius:var(--space-2);font-weight:700;font-size:14.5px;font-family:var(--font-head);border:1px solid var(--line);background:var(--surface);color:var(--ink-soft);display:inline-flex;align-items:center;justify-content:center}.pagination__num--active{border-color:var(--primary);background:var(--primary);color:#fff;box-shadow:0 3px 9px #e8508b40}.pagination__nav--disabled{opacity:.4;pointer-events:none}.detail-page{padding-top:var(--space-2);padding-bottom:var(--space-6)}@media(max-width:759px){.detail-page{padding-bottom:130px}}.detail-page__back{border:none;background:none;font-size:13px;display:inline-flex;align-items:center;gap:var(--space-1);cursor:pointer;margin-bottom:var(--space-2);white-space:nowrap;color:var(--ink-faint)}.detail-page__back:hover{color:var(--primary-deep)}.detail-page__hero{border-radius:var(--space-3);margin-top:var(--space-4);overflow:hidden;aspect-ratio:16/9;background:linear-gradient(135deg,#e8508b14,#e8508b05)}.detail-page__hero--image{border:1px solid var(--line)}.detail-page__hero-image{width:100%;height:100%;object-fit:cover;display:block}.detail-page__layout{display:flex;gap:var(--space-4);align-items:flex-start}.detail-page__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-2)}.detail-page__aside{flex:0 0 312px;position:sticky;top:108px}@media(max-width:759px){.detail-page__aside{display:none}}.detail-head{padding:var(--space-3)}.detail-head__row{display:flex;gap:var(--space-2);align-items:flex-start}.detail-head__body{flex:1}.detail-head__chips{display:flex;gap:var(--space-1);flex-wrap:wrap;margin-bottom:var(--space-1)}.detail-head__title{font-size:26px;line-height:1.4;color:var(--ink);text-wrap:pretty}@media(max-width:759px){.detail-head__title{font-size:21px}}.detail-head__company{font-size:14px;margin-top:var(--space-1);display:flex;align-items:center;gap:var(--space-1)}.detail-head__tags{margin-top:var(--space-2)}.detail-block{padding:var(--space-3)}.detail-block__title{font-size:17px;color:var(--ink);margin-bottom:var(--space-2);display:flex;align-items:center;gap:var(--space-1)}.detail-block__title:before{content:"";width:4px;height:18px;border-radius:4px;background:var(--primary)}.detail-block__text{font-size:14.5px;line-height:1.9;margin:0;text-wrap:pretty}.detail-block__list{margin:var(--space-2) 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--space-2)}.detail-block__list li{display:flex;gap:var(--space-2);font-size:14px;line-height:1.6}.detail-block__list li svg{color:var(--good);flex-shrink:0;margin-top:var(--space-1)}.highlight-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}@media(max-width:759px){.highlight-grid{grid-template-columns:1fr}}.highlight-grid__item{display:flex;gap:var(--space-2);padding:var(--space-2) var(--space-2);background:var(--primary-softer);border-radius:var(--space-2);font-size:13.5px;line-height:1.6}.highlight-grid__num{width:26px;height:26px;border-radius:8px;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:var(--font-head);font-weight:700}.info-row{display:flex;gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--line-soft)}.info-row:last-child{border-bottom:none}.info-row__label{flex:0 0 96px;display:flex;align-items:center;gap:var(--space-1);color:var(--ink-soft);font-size:13.5px;font-weight:600}.info-row__label svg{color:var(--primary)}.info-row__value{flex:1;font-size:14px;color:var(--ink);line-height:1.7}.apply-card{padding:var(--space-3)}.apply-card__role{font-size:11.5px}.apply-card__salary{font-size:22px;margin:var(--space-1) 0 var(--space-1)}.apply-card__place{font-size:13px;display:flex;align-items:center;gap:var(--space-1);margin-bottom:var(--space-2)}.apply-card .btn+.btn{margin-top:var(--space-2)}.apply-card__note{margin-top:var(--space-2);padding:var(--space-2) var(--space-2);background:var(--primary-softer);border-radius:var(--space-2);display:flex;gap:var(--space-2);font-size:12.5px;color:var(--ink-soft);line-height:1.6}.apply-card__note svg{color:var(--primary);flex-shrink:0;margin-top:var(--space-1)}.mobile-apply-bar{position:fixed;bottom:0;left:0;right:0;z-index:44;background:var(--surface);border-top:1px solid var(--line);padding:var(--space-2) var(--space-2);display:flex;gap:var(--space-2);align-items:center;box-shadow:0 -4px 16px #0000000f}@media(min-width:760px){.mobile-apply-bar{display:none}}.mobile-apply-bar__label{font-size:10px}.mobile-apply-bar__salary{font-size:15px}.mobile-apply-bar .btn{flex:1}.related-section__title{font-size:18px;margin-bottom:var(--space-2)!important}.form-field{margin-bottom:var(--space-2);flex:1;min-width:0}.form-field__label{display:block;font-size:13.5px;font-weight:700;font-family:var(--font-head);color:var(--ink);margin-bottom:var(--space-1)}.form-field__required{display:inline-block;font-size:10.5px;font-weight:700;color:#fff;background:var(--warm);border-radius:var(--space-1);padding:var(--space-half) var(--space-1);margin-left:var(--space-1);vertical-align:2px}.form-field__input{width:100%;padding:var(--space-2) var(--space-2);border:1.5px solid var(--line);border-radius:var(--space-1);font-size:14.5px;background:var(--surface);transition:border-color .15s ease,box-shadow .15s ease}.form-field__input:focus{outline:none;border-color:var(--primary);box-shadow:var(--sh-focus)}.form-field textarea.form-field__input{resize:vertical;line-height:1.7}.form-field__radios{display:flex;flex-wrap:wrap;gap:var(--space-1)}.form-field__radios .tag-toggle{font-size:12.5px;padding:var(--space-1) var(--space-2)}.form-field__error{color:#c0392b;font-size:12.5px;margin:var(--space-1) 0 0}.form-field__hint{color:var(--ink-faint);font-size:11.5px;margin:var(--space-1) 0 0;line-height:1.5}.form-field-row{display:flex;gap:var(--space-2)}@media(max-width:759px){.form-field-row{flex-direction:column;gap:0}}.flash-message{background:var(--good-soft);color:#1d7a4a;border:1px solid #c5e8d4;border-radius:var(--space-2);padding:var(--space-2) var(--space-2);font-size:13.5px;font-weight:600;margin-bottom:var(--space-2)}.apply-page{padding-top:var(--space-3);padding-bottom:var(--space-7)}.apply-page__layout{display:flex;gap:var(--space-4);align-items:flex-start}@media(max-width:759px){.apply-page__layout{flex-direction:column-reverse}}.apply-page__main{flex:1;min-width:0}@media(max-width:759px){.apply-page__main{width:100%}}.apply-page__aside{flex:0 0 312px;position:sticky;top:108px}@media(max-width:759px){.apply-page__aside{position:static;flex:none;width:100%}}.apply-page__title{font-size:24px;margin:0 0 18px!important}.apply-page__login-hint{display:flex;align-items:center;gap:var(--space-1);background:var(--primary-softer);border-radius:var(--space-2);padding:var(--space-2) var(--space-2);font-size:13px;color:var(--ink-soft);margin-bottom:16px}.apply-page__login-hint svg{color:var(--primary);flex-shrink:0}.apply-page__login-hint a{color:var(--primary-deep);font-weight:700;text-decoration:underline}.apply-form{padding:var(--space-3)}.apply-form>.btn{margin-top:var(--space-1)}.apply-steps{display:flex;gap:var(--space-1);margin-bottom:var(--space-3)}.apply-steps__step{font-size:12.5px;font-weight:700;font-family:var(--font-head);color:var(--ink-faint);background:var(--surface-2);border-radius:var(--r-pill);padding:var(--space-1) var(--space-2)}.apply-steps__step--active{background:var(--primary);color:#fff}.apply-steps__step--done{background:var(--good-soft);color:#1d7a4a}.apply-summary{display:flex;gap:var(--space-2);align-items:center;margin:var(--space-2) 0}.apply-summary__title{font-size:14px;line-height:1.5;color:var(--ink)}.apply-card__label{font-size:11.5px}.apply-confirm-actions{display:flex;gap:var(--space-2);margin-top:var(--space-3)}@media(max-width:759px){.apply-confirm-actions{flex-direction:column-reverse}}.apply-complete{max-width:560px;margin:var(--space-5) auto var(--space-7);text-align:center}.apply-complete__icon{width:72px;height:72px;border-radius:var(--space-3);background:var(--good-soft);color:var(--good);display:flex;align-items:center;justify-content:center;margin:var(--space-3) auto var(--space-3)}.apply-complete__title{font-size:26px}.apply-complete__text{font-size:14.5px;line-height:1.9;margin:var(--space-2) 0 var(--space-3)}.apply-complete__actions{display:flex;gap:var(--space-2);justify-content:center;flex-wrap:wrap}.apply-complete__recommend{padding-bottom:var(--space-5)}.mypage{padding-top:var(--space-4);padding-bottom:var(--space-7)}.mypage__title{font-size:24px;margin-bottom:var(--space-3)}.mypage__tabs{display:flex;gap:var(--space-1);margin-bottom:var(--space-3)}.mypage__tab{font-size:13.5px;font-weight:700;font-family:var(--font-head);padding:var(--space-2) var(--space-3);border-radius:var(--r-pill);border:1.5px solid var(--line);background:var(--surface);color:var(--ink-soft)}.mypage__tab--active{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 3px 9px #e8508b38}.mypage__detail-grid{display:grid;grid-template-columns:1fr 312px;gap:var(--space-3);align-items:start}@media(max-width:759px){.mypage__detail-grid{grid-template-columns:1fr}}.application-list{display:flex;flex-direction:column;gap:var(--space-2)}.application-item{display:flex;gap:var(--space-2);align-items:center;padding:var(--space-2) var(--space-3)}.application-item__body{flex:1;min-width:0}.application-item__meta{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1)}.application-item__title{font-size:15.5px;line-height:1.45}.application-item__title a{color:var(--ink)}.application-item__title a:hover{color:var(--primary-deep)}.application-item__actions{display:flex;gap:var(--space-1);flex-shrink:0}@media(max-width:759px){.application-item__actions{flex-direction:column}}.status-chip{display:inline-flex;align-items:center;font-size:12px;font-weight:700;padding:var(--space-1) var(--space-2);border-radius:var(--r-pill);white-space:nowrap}.status-chip--new{background:var(--gold-soft);color:#a76b08}.status-chip--in_progress{background:var(--primary-soft);color:var(--primary-deep)}.status-chip--offer{background:var(--good-soft);color:#1d7a4a}.status-chip--rejected{background:#f1f3f5;color:var(--ink-faint)}.portal{display:flex;min-height:100vh}@media(max-width:759px){.portal{flex-direction:column}}.portal__sidebar{flex:0 0 230px;background:#16263a;color:#cdd9e6;display:flex;flex-direction:column;padding:var(--space-3) var(--space-2);position:sticky;top:0;height:100vh}@media(max-width:759px){.portal__sidebar{position:static;height:auto;flex:none;flex-direction:row;align-items:center;gap:var(--space-2);overflow-x:auto;padding:var(--space-2) var(--space-2)}}.portal__brand{display:flex;align-items:center;gap:var(--space-1);padding:0 var(--space-1) var(--space-3)}.portal__brand .brand__name{color:#fff}@media(max-width:759px){.portal__brand{padding:0;flex-shrink:0}}.portal__brand-sub{font-size:10.5px;color:#94a6ba}@media(max-width:759px){.portal__brand-sub{display:none}}.portal__nav{display:flex;flex-direction:column;gap:var(--space-1);flex:1}@media(max-width:759px){.portal__nav{flex-direction:row}}.portal__nav-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-2);border-radius:var(--space-1);font-size:13.5px;font-weight:600;color:#94a6ba;white-space:nowrap}.portal__nav-item:hover{color:#fff;background:#ffffff0f}.portal__nav-item--active{color:#fff;background:var(--primary)}.portal__sidebar-footer{border-top:1px solid rgba(255,255,255,.1);padding:var(--space-3) var(--space-2) 0}@media(max-width:759px){.portal__sidebar-footer{border:none;padding:0;flex-shrink:0}}.portal__user{font-size:12.5px;font-weight:600;color:#fff;margin-bottom:var(--space-1)}@media(max-width:759px){.portal__user{display:none}}.portal__logout{border:none;background:none;color:#94a6ba;font-size:12px;text-decoration:underline;padding:0}.portal__logout:hover{color:#fff}.portal__main{flex:1;min-width:0;padding:var(--space-4) var(--space-4) var(--space-6)}@media(max-width:759px){.portal__main{padding:var(--space-3) var(--space-2) var(--space-5)}}.portal__title{font-size:22px;margin-bottom:18px}.portal__title-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-3)}.portal .portal__title{margin-bottom:0}.portal .portal__title__home{margin-bottom:var(--space-3)}.portal__section-head{display:flex;align-items:center;justify-content:space-between;margin:var(--space-4) 0 var(--space-3)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-2);margin-bottom:var(--space-1)}.stat-card{padding:var(--space-3)}.stat-card__num{font-size:26px;color:var(--ink)}.stat-card__label{font-size:12px;margin-top:var(--space-1)}.portal-search{display:flex;gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap}.portal-search .form-field__input{flex:1;min-width:180px;max-width:340px}.portal-search .btn{flex-shrink:0}.portal-table-wrap{overflow-x:auto}.portal-table{width:100%;border-collapse:collapse;font-size:13.5px}.portal-table th{text-align:left;font-size:12px;font-weight:700;font-family:var(--font-head);color:var(--ink-faint);padding:var(--space-2) var(--space-2);border-bottom:1px solid var(--line);white-space:nowrap}.portal-table td{padding:var(--space-2) var(--space-2);border-bottom:1px solid var(--line-soft);vertical-align:middle}.portal-table tbody tr:last-child td{border-bottom:none}.portal-table tbody tr:hover{background:var(--primary-softer)}.portal-table__truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-table__actions{display:flex;gap:var(--space-1);align-items:center;flex-wrap:wrap}.portal-form{padding:var(--space-3);max-width:860px}.portal-form__actions{display:flex;gap:var(--space-2);justify-content:flex-end;margin-top:var(--space-1);padding-top:var(--space-3);border-top:1px solid var(--line-soft)}.portal-settings{display:flex;flex-direction:column;gap:var(--space-2);max-width:620px}.status-select{border:1.5px solid var(--line);border-radius:9px;padding:var(--space-1) var(--space-2);font-size:12.5px;font-weight:700;background:var(--surface)}.status-select--new{border-color:var(--gold);color:#a76b08}.status-select--in_progress{border-color:var(--primary);color:var(--primary-deep)}.status-select--offer{border-color:var(--good);color:#1d7a4a}.status-select--rejected{color:var(--ink-faint)}.csv-format{padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2)}body .error-page{text-align:center;padding:var(--space-8) var(--space-2) var(--space-8)}body .error-page__code{font-size:84px;line-height:1;color:var(--primary);opacity:.25}body .error-page h1.error-page__title{font-size:26px;margin:var(--space-3) 0 0}body .error-page__text{font-size:14.5px;line-height:1.9;margin:var(--space-3) 0 var(--space-3)}body .error-page__actions{display:flex;gap:var(--space-2);justify-content:center;flex-wrap:wrap}body .static-page{padding:var(--space-4) 0 var(--space-8);max-width:760px}body .static-page h1.static-page__title{font-size:26px;margin-bottom:var(--space-3)}body .static-page__note{font-size:12.5px;color:var(--warm-deep);background:#fff0ec;border-radius:10px;padding:var(--space-2) var(--space-2);display:inline-block;margin:0 0 var(--space-3)}body .static-page__body{padding:var(--space-4) var(--space-4)}body .static-page__body section+section{margin-top:var(--space-3)}body .static-page__body h2{font-size:15.5px;color:var(--ink);margin-bottom:var(--space-1)}body .static-page__body p{font-size:14px;line-height:1.9;margin:0;color:var(--ink-soft);text-indent:-1em;padding-left:1em}body .static-page__body p.noindent{text-indent:0;padding-left:0}.auth-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,var(--primary-soft),var(--bg));padding:var(--space-3) var(--space-2)}.auth-screen__card{width:100%;max-width:420px;padding:var(--space-4) var(--space-4)}.auth-screen__brand{display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin-bottom:var(--space-1)}.auth-screen__heading{text-align:center;font-size:15px;color:var(--ink-soft);margin:0 0 var(--space-3)}.auth-screen__remember{display:flex;align-items:center;gap:var(--space-1);font-size:13px;color:var(--ink-soft);margin:var(--space-1) 0 var(--space-3);cursor:pointer}.site-footer{background:#16263a;color:#cdd9e6;padding-top:var(--space-6)}.site-footer__inner{max-width:1120px;margin:0 auto;padding:0 var(--space-3);display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:var(--space-4)}.site-footer__brand{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}.site-footer__brand .brand__name{color:#fff;font-size:19px}.site-footer__desc{font-size:12.5px;line-height:1.8;color:#94a6ba;max-width:260px;margin:0}.site-footer__item{order:3}.site-footer__head{font-size:13.5px;color:#fff;margin-bottom:var(--space-2);font-family:var(--font-head);font-weight:700}.site-footer ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.site-footer__link{font-size:12.5px;color:#94a6ba}.site-footer__link:hover{color:#fff}.site-footer__copy{border-top:1px solid rgba(255,255,255,.08);margin-top:var(--space-5);padding:var(--space-3) var(--space-3);text-align:center;font-size:11.5px;color:#6f8298}.site-footer .brand__logo{background:#fff;padding:var(--space-1)}@media(max-width:759px){.site-footer{padding-top:var(--space-4)}.site-footer__inner{grid-template-columns:1fr;gap:var(--space-3);padding:0 var(--space-2)}.site-footer__brand{justify-content:center}.site-footer__brand .brand__logo{height:48px}.site-footer__brand .brand__name{display:none}.site-footer__brand{margin-bottom:var(--space-1)}.site-footer__desc{max-width:none;text-align:center;color:var(--ink-soft)}.site-footer ul{gap:var(--space-2);align-items:center;flex-direction:row;flex-wrap:wrap;justify-content:flex-start}.site-footer__head,.site-footer__link{text-align:left}.site-footer__copy{margin-top:var(--space-3);padding:var(--space-2) var(--space-2);color:var(--ink-faint)}}
