:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-1:#14043a;--bg-2:#2b0a5c;--bg-3:#4b0f6e;--bg-4:#7a1275;--panel:#1a0645;--row:#09021ceb;--pink:#ff2e8b;--pink-2:#7a2bd6;--cyan:#57e9ff;--violet:#7b3fb0;--lavender:#c79be8;--lavender-lit:#e4ccf7;--lavender-dim:#a98bc9;--white:#fff2fb;--yellow:#ffe05c;--orange:#ff9a3c;--deep:#14043a;--control-bg:#0a021e99;--bad:#ff6b8a;--font-system:system-ui, -apple-system, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Yu Gothic", Meiryo, sans-serif;--font-ui:"Zen Kaku Gothic New", var(--font-system);--font-display:"Orbitron", "Zen Kaku Gothic New", var(--font-system);--font-tag:"Chakra Petch", "Zen Kaku Gothic New", var(--font-system);--columns:220px 1fr 104px 68px 126px;--page-bg:linear-gradient(180deg, #14043a00 0 92px, #1a0645 114px, #1a0645 100%) fixed, linear-gradient(180deg, #14043a 0%, #2b0a5c 42%, #4b0f6e 72%, #7a1275 100%) fixed}@media (min-width:1280px){:root{--columns:300px 1fr 104px 68px 126px}}*{box-sizing:border-box}body{background:var(--page-bg);color:var(--white);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;margin:0;padding:0}body:before{content:"";z-index:0;pointer-events:none;background:linear-gradient(#14043a00 0%,#14043a8c 100%);height:170px;position:fixed;bottom:0;left:0;right:0}a{color:inherit;text-decoration:none}.site-footer{z-index:1;color:var(--lavender-dim);text-align:center;padding:0 30px 12px;font-size:11px;line-height:1.5;position:relative}.site-footer-contact{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.contact-mark-container{left:max(8px, env(safe-area-inset-left));bottom:max(8px, env(safe-area-inset-bottom));z-index:6;max-width:calc(100vw - 16px);display:flex;position:fixed}.contact-mark{overflow-wrap:anywhere;width:32px;height:32px;color:var(--lavender-dim);font:700 17px/1 var(--font-ui);background:var(--control-bg);border:1px solid var(--violet);cursor:pointer;opacity:.35;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0 0 2px;text-decoration:none;transition:opacity .12s;display:inline-flex}.contact-mark:hover,.contact-mark:focus-visible{opacity:1}.contact-mark:focus-visible{outline-offset:2px;outline:2px solid}.contact-mark--revealed{white-space:nowrap;border-radius:16px;width:auto;max-width:calc(100vw - 16px);padding:0 10px;font-size:12px}.topbar{z-index:5;isolation:isolate;background:var(--page-bg);padding:10px 30px 0;position:sticky;top:0;overflow:hidden}.topbar-sun{z-index:-1;pointer-events:none;height:172px;position:absolute;top:0;left:0;right:0;overflow:hidden;-webkit-mask-image:linear-gradient(#000 0 142px,#00000094 159px,#0000 172px);mask-image:linear-gradient(#000 0 142px,#00000094 159px,#0000 172px)}.topbar-sun-disc,.topbar-sun-lines{border-radius:999px;width:340px;height:340px;margin-left:-170px;position:absolute;top:10px;left:50%}.topbar-sun-disc{background:linear-gradient(180deg, var(--yellow) 0%, var(--orange) 42%, var(--pink) 100%) 0 -128px / 340px 340px no-repeat}.topbar-sun-lines{background:repeating-linear-gradient(#0000 16px 32px,#14043ad9 32px 38px)}.topbar-head{justify-content:space-between;align-items:center;gap:24px;margin-bottom:12px;display:flex;position:relative}.brand{min-width:400px}.brand-title{font-family:var(--font-display);letter-spacing:.04em;margin:0;font-size:30px;font-weight:900;line-height:1.1;position:relative}.brand-title-shadow{color:var(--pink);opacity:.9;position:absolute;top:4px;left:4px}.brand-title-front{color:var(--white);text-shadow:0 0 22px #57e9ff99;position:relative}.brand-rule{background:linear-gradient(90deg, var(--pink) 0%, var(--pink-2) 42%, var(--cyan) 78%, var(--cyan) 100%);width:430px;height:4px;margin:12px 0 6px;box-shadow:0 0 10px #57e9ff61,0 0 4px #ff2e8b73,inset 0 0 3px #ffffff4d}.brand-sub{letter-spacing:.3em;color:var(--white);font-size:13px;font-weight:700}.count-box{border:2px solid var(--cyan);text-align:right;background:#0a021e8c;padding:8px 20px;position:relative;top:-4px;box-shadow:0 0 20px #57e9ff80,inset 0 0 20px #57e9ff2e}.count-value{font-family:var(--font-display);color:var(--cyan);font-variant-numeric:tabular-nums;font-size:22px;font-weight:800}.count-label{font-family:var(--font-tag);letter-spacing:.3em;color:var(--lavender);font-size:10px}.filters{gap:8px;margin-bottom:14px;font-weight:600;display:flex;position:relative}.keyword-filter{border:1px solid var(--violet);background:var(--control-bg);width:200px;color:var(--lavender-lit);font:inherit;border-radius:0;padding:8px 16px 8px 14px;font-size:14px}.keyword-filter::placeholder{color:var(--lavender-dim)}.filter-button{border:1px solid var(--violet);width:88px;color:var(--lavender-lit);font:inherit;text-align:start;cursor:pointer;background:0 0;border-radius:0;justify-content:center;align-items:center;padding:7px 0;font-size:13px;display:inline-flex}.filter-button.selected{background:var(--pink);color:var(--deep);letter-spacing:.08em;border:0;padding:8px 0 7px;box-shadow:0 0 16px #ff2e8bb3}.rows-head{grid-template-columns:var(--columns);border-bottom:1px solid var(--violet);letter-spacing:.2em;color:var(--lavender);gap:14px;padding:0 12px 8px;font-size:11px;font-weight:700;display:grid;position:relative}.head-employment{padding-left:4px}.head-location{padding-left:12px}.head-salary{appearance:none;color:inherit;font:inherit;letter-spacing:inherit;text-align:start;cursor:pointer;background:0 0;border:0;padding:0 0 0 12px;display:block}main{padding:0 30px 24px}.rows{flex-direction:column;gap:3px;margin-top:3px;display:flex;position:relative}.row{grid-template-columns:var(--columns);border-left:2px solid var(--pink);background:var(--row);align-items:center;gap:14px;padding:8px 12px;display:grid}.row:hover{border-left-color:var(--cyan);background:#57e9ff1f}.col-company{text-overflow:ellipsis;white-space:nowrap;color:var(--lavender);font-size:13px;font-weight:700;overflow:hidden}.col-title{text-overflow:ellipsis;white-space:nowrap;letter-spacing:.02em;color:var(--white);font-size:13px;font-weight:700;overflow:hidden}.col-employment{justify-self:start;align-items:center;margin-left:4px;display:inline-flex}.employment-tag{background:var(--cyan);color:var(--deep);white-space:nowrap;align-items:center;padding:4px 6px;font-size:12px;font-weight:700;line-height:1;display:inline-flex}.col-location{color:var(--lavender);padding-left:12px;font-size:13px;font-weight:700}.col-salary{font-family:var(--font-display);color:var(--yellow);font-variant-numeric:tabular-nums;white-space:nowrap;padding-left:12px;font-size:12px;font-weight:700;display:flex}.salary-lower{text-align:right;flex:none;width:60px}.table-status{color:var(--lavender-dim);letter-spacing:.08em;justify-content:center;align-items:center;gap:10px;padding:16px 0 24px;font-size:14px;line-height:1.5;display:flex}.table-error{color:var(--bad)}.location-backdrop{z-index:10;background:#09021cb8;position:fixed;inset:0}.location-dialog{z-index:11;border:2px solid var(--cyan);background:var(--panel);width:min(760px,100vw - 24px);max-height:min(720px,100vh - 24px);color:var(--lavender-lit);font-size:14px;line-height:1.5;position:fixed;inset:50% auto auto 50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 0 32px #57e9ff59,0 18px 54px #09021c99}.location-dialog-header,.location-dialog-footer{border-bottom:1px solid var(--violet);justify-content:space-between;align-items:center;gap:8px;padding:12px 14px;display:flex}.location-dialog-footer{z-index:1;border-top:1px solid var(--violet);background:var(--panel);border-bottom:0;flex-wrap:wrap;position:sticky;bottom:0}.dialog-footer-actions{gap:8px;margin-left:auto;display:flex}.location-dialog h2{font-family:var(--font-display);letter-spacing:.14em;color:var(--cyan);margin:0;font-size:15px;font-weight:800}.location-dialog-body{gap:14px;padding:14px;display:grid}.location-dialog-section{gap:8px;display:grid}.option-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.option-group{border:1px solid var(--violet);background:#0a021e73;min-width:0;margin:0;padding:8px 10px 10px}.option-group legend{color:var(--lavender);padding:0 4px;font-size:12px;font-weight:700}label{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.role-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 10px;display:grid}.role-grid label{white-space:normal;align-items:flex-start;min-height:24px;margin:0;line-height:1.35}.prefecture-grid,.salary-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 8px;display:grid}.salary-options.employment-options{grid-template-columns:repeat(2,minmax(0,1fr))}.prefecture-grid label,.salary-options label{min-height:24px;margin:0}.salary-include-missing{min-height:24px;margin-top:10px}.salary-missing-note{min-height:16px;color:var(--lavender-dim);margin:6px 0 0;font-size:12px}input[type=checkbox],input[type=radio]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;accent-color:var(--pink)}.panel-button{border:1px solid var(--violet);background:var(--control-bg);color:var(--lavender-lit);font:inherit;cursor:pointer;border-radius:0;padding:7px 14px;font-weight:600}.panel-button:hover{border-color:var(--cyan);color:var(--cyan)}.panel-button.primary{border-color:var(--pink);background:var(--pink);color:var(--deep);box-shadow:0 0 16px #ff2e8bb3}.panel-button.primary:hover{border-color:var(--pink);color:var(--deep);background:#ff4d9d}@media (max-width:720px){.option-groups,.role-grid{grid-template-columns:1fr}.prefecture-grid,.salary-options{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:960px){.topbar{padding:10px 16px 0}main{padding:0 16px 24px}.topbar-head{flex-wrap:wrap;gap:12px}.brand{flex:220px;min-width:0}.brand-title{font-size:20px}.brand-rule{width:100%;max-width:260px}.filters{flex-wrap:wrap;gap:10px}.keyword-filter{flex:100%;width:100%}.filter-button{flex:140px;width:auto;min-height:44px;padding:10px 8px}.filter-button.selected{padding:10px 8px}.rows-head{display:none}.rows{gap:8px}}@media (min-width:601px) and (max-width:960px){.row{flex-wrap:wrap;align-items:center;gap:2px 10px;padding:10px 12px;display:flex}.col-title{flex:100%;order:1}.col-company{white-space:nowrap;text-overflow:ellipsis;flex:0 auto;order:2;min-width:0;font-size:11px;font-weight:600;overflow:hidden}.col-employment{flex:none;order:3;justify-content:flex-end;width:84px;margin-left:auto}.col-employment .employment-tag{font-size:10px}.col-location{width:46px;color:var(--lavender-dim);text-align:right;flex:none;order:4;padding-left:0;font-size:11px}.col-salary{flex:none;order:5;justify-content:flex-start;width:114px;padding-left:0}}@media (max-width:600px){.row{flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:10px 12px;display:flex}.col-title,.col-title a{-webkit-line-clamp:2;white-space:normal;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.col-title{flex:100%;order:1;height:40px;font-size:14px;line-height:20px}.col-company{flex:100%;order:2;font-size:11px}.col-employment{order:3;margin-left:0}.col-employment .employment-tag{font-size:10px}.col-location{color:var(--lavender-dim);order:4;padding-left:0;font-size:10px}.col-salary{flex:none;order:5;margin-top:2px;margin-left:auto;padding-left:0}}
