/*
Theme Name: WORK NOVA
Theme URI: https://n-medisys.co.jp/worknova/
Author: WORK NOVA
Description: ワークノバ専用求人プラットフォームテーマ。Worknova Core v1.0.0と連携。企業向けページ対応。
Version: 1.2.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: worknova
*/
:root{--green:#164c40;--deep:#103b34;--lime:#d4ee94;--ink:#172e29;--muted:#64736e;--line:#e3eae6;--soft:#f5f8f5;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:white;font-family:'DM Sans',-apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN','Noto Sans JP',Meiryo,sans-serif;font-size:15px;line-height:1.8}a{color:inherit;text-decoration:none}a:hover{opacity:.85}button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%;height:auto}.container,.wrap{max-width:1160px;margin:auto;padding:0 25px}.skip-link{position:absolute;left:-9999px;top:10px;background:#fff;z-index:999}.skip-link:focus{left:10px}.site-header{height:86px;background:white;border-bottom:1px solid #edf0ed;position:relative;z-index:10}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px;white-space:nowrap}.brand-mark{display:grid;place-items:center;background:var(--green);color:#fff;font-weight:800;font-size:23px;width:43px;height:43px;border-radius:13px;position:relative}.brand-mark span{position:absolute;font-size:10px;color:var(--lime);right:5px;top:1px}.brand-text{font-size:17px;letter-spacing:.07em;font-weight:800;line-height:1.25}.brand-text small{display:block;font-size:10px;letter-spacing:.2em;color:var(--muted);font-weight:500;margin-top:3px}.site-nav{display:flex;align-items:center;gap:29px;font-weight:700;font-size:13px}.site-nav>a:not(.button){transition:color .2s}.site-nav>a:hover{color:#328b6a}.button,.btn,button[type=submit],.searchbar button,.apply-panel button{display:inline-flex;justify-content:center;align-items:center;gap:14px;background:var(--green);border:1px solid var(--green);border-radius:10px;color:white;padding:14px 23px;font-weight:700;line-height:1.4;text-decoration:none;transition:transform .2s,background .2s}.button:hover,.btn:hover,button[type=submit]:hover{background:#216f58;transform:translateY(-1px);color:#fff;opacity:1}.button-small{padding:11px 17px;font-size:13px}.button-light{background:var(--lime);border-color:var(--lime);color:var(--deep)}.button-light:hover{background:#e4f6b9;color:var(--deep)}.button-outline{background:#fff;color:var(--green);border-color:#b4ccc2}.button-outline:hover{color:#fff}.menu-toggle{display:none}.hero{background:var(--deep);color:white;padding:74px 0 0;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;min-height:430px;gap:20px}.hero-copy{padding-bottom:75px;position:relative;z-index:2}.eyebrow{display:inline-flex;align-items:center;gap:10px;color:#d9efcc;font-size:13px;letter-spacing:.04em;font-weight:600}.eyebrow-dot{height:8px;width:8px;background:var(--lime);border-radius:50%}.hero h1{font-size:clamp(44px,5.5vw,73px);line-height:1.33;letter-spacing:-.065em;margin:22px 0}.hero h1 em{font-style:normal;color:var(--lime)}.hero-lead{font-size:16px;line-height:2.15;color:#d7e8df}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:30px}.hero-secondary{font-size:13px;font-weight:700;color:#e4eee6}.hero-proof{display:flex;flex-wrap:wrap;gap:18px;margin-top:34px;font-size:12px;color:#cfe2d8}.hero-art{height:440px;position:relative;display:grid;place-items:center}.orbit{position:absolute;border:1px solid #5d8c77;border-radius:50%;transform:rotate(-25deg)}.orbit-one{width:410px;height:410px}.orbit-two{width:300px;height:300px;opacity:.7}.art-star{position:absolute;font-size:380px;line-height:1;color:#2b6955;transform:rotate(-18deg);opacity:.8}.art-word{position:relative;font-size:75px;line-height:1.05;letter-spacing:-.08em;font-weight:800;color:#e2f0df;transform:rotate(-11deg);text-shadow:0 8px 35px #0b302a}.art-word span{color:var(--lime)}.art-card{position:absolute;background:white;color:#255747;border-radius:13px;padding:13px 20px;box-shadow:0 15px 35px #082c2755;font-size:13px;font-weight:700}.art-card span{color:#43a67c}.art-card-top{top:35px;right:10px;transform:rotate(8deg)}.art-card-bottom{bottom:40px;left:20px;transform:rotate(-8deg)}.hero-search{position:relative;transform:translateY(42px);display:grid;grid-template-columns:1.5fr 1fr auto;align-items:end;gap:14px;background:#fff;padding:18px;border-radius:16px;box-shadow:0 15px 42px #0d30251c;color:var(--ink)}.hero-search label{display:flex;flex-direction:column;font-size:12px;font-weight:700;gap:4px}.hero-search input,.hero-search select{border:0;background:#f5f7f5;border-radius:8px;padding:12px 13px;width:100%;color:var(--ink);outline-color:#66a689}.hero-search button{height:46px}.section{padding:94px 0}.intro{padding-top:130px}.section-muted{background:var(--soft)}.kicker{display:block;color:#3b8b6d;font-size:11px;font-weight:800;letter-spacing:.19em;margin-bottom:11px}.section-heading{margin-bottom:31px}.section-heading h2{font-size:clamp(25px,3vw,37px);letter-spacing:-.05em;line-height:1.5;margin:0 0 9px}.section-heading h2 span{color:#3c956c}.section-heading p{color:var(--muted);margin:0;font-size:14px}.heading-inline{display:flex;align-items:end;justify-content:space-between;gap:15px}.text-link{color:var(--green);font-weight:700;font-size:13px}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.category-card{min-height:212px;padding:24px 21px;border:1px solid var(--line);border-radius:17px;display:flex;flex-direction:column;position:relative;background:white;transition:box-shadow .2s,transform .2s}.category-card:hover{box-shadow:0 15px 35px #184c3912;transform:translateY(-4px);opacity:1}.category-icon{width:51px;height:51px;border-radius:13px;background:#e9f3ec;color:var(--green);display:grid;place-items:center;font-size:26px;font-weight:800;margin-bottom:22px}.category-card strong{font-size:17px}.category-card small{color:var(--muted);font-size:11px}.category-arrow{position:absolute;right:20px;top:26px;color:#43886e}.genre-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.genre-grid a{background:white;border:1px solid var(--line);border-radius:12px;padding:20px;display:flex;align-items:center;gap:16px}.genre-grid a span{background:#e8f2eb;color:var(--green);width:42px;height:42px;border-radius:10px;display:grid;place-items:center;font-size:19px}.genre-grid a strong{font-size:14px;flex:1}.genre-grid a b{font-size:18px;color:#56977a}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:0 5px 20px #143c2b08}.cards .card{display:flex;flex-direction:column;align-items:flex-start}.cards .card h3{font-size:18px;line-height:1.55;margin:15px 0 8px}.cards .card p{color:var(--muted);font-size:13px}.cards .card>a:last-child{margin-top:auto;color:var(--green);font-weight:700;font-size:13px}.pill{display:inline-flex;background:#e7f2eb;color:#236b4d;border-radius:50px;padding:5px 12px;font-size:11px;font-weight:700}.meta{color:var(--muted);font-size:12px}.center-action{text-align:center;margin-top:32px}.employer-cta{background:#194c40;color:#fff;padding:60px 70px;border-radius:24px;position:relative;overflow:hidden;min-height:320px;display:flex;align-items:center}.employer-cta>div:first-child{position:relative;z-index:1}.employer-cta .kicker{color:#c4e79d}.employer-cta h2{font-size:clamp(28px,3vw,39px);line-height:1.55;margin:8px 0}.employer-cta p{color:#d6e9dd;font-size:14px;max-width:560px}.employer-cta .button{margin-top:15px}.cta-decoration{position:absolute;right:65px;top:0;font-size:260px;font-weight:800;opacity:.12;transform:rotate(-15deg)}.cta-decoration span{font-size:60px}.site-footer{background:#f5f8f5;padding:60px 0 22px}.footer-top{display:flex;justify-content:space-between;gap:30px;padding-bottom:38px}.footer-brand{font-size:25px;font-weight:800;letter-spacing:.02em}.footer-brand span{color:#459976}.footer-top p{color:var(--muted);font-size:13px}.footer-links{display:flex;flex-wrap:wrap;gap:24px;align-content:center;font-size:12px;font-weight:700}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #dfe7e1;padding-top:20px;color:var(--muted);font-size:12px}.page-container{max-width:920px;min-height:55vh}.page-heading{margin-bottom:28px}.page-heading h1{font-size:36px;margin:0}.page-content{background:white}.page-content h2{margin-top:35px}.page-content form,.apply-panel form{max-width:100%}form label{display:block;font-weight:700;font-size:13px;margin-bottom:5px}form input:not([type=checkbox]):not([type=hidden]),form select,form textarea{max-width:100%;width:100%;border:1px solid #dbe4dd;border-radius:9px;padding:12px 13px;background:white;color:var(--ink)}form input:focus,form select:focus,form textarea:focus{outline:2px solid #9bc8b0}.page-content form p,.apply-panel form p{margin:0 0 17px}.page-content .searchbar{display:grid;grid-template-columns:1.4fr repeat(3,1fr) auto;gap:10px;margin:0 0 22px}.page-content .searchbar input,.page-content .searchbar select{min-width:0}.page-content .searchbar button{white-space:nowrap}.page-content .cards{grid-template-columns:repeat(2,minmax(0,1fr))}.pagination{display:flex;gap:9px;flex-wrap:wrap;margin-top:24px}.pagination a{border:1px solid var(--line);padding:7px 13px;border-radius:8px}.notice,.empty{padding:24px;border:1px dashed #b8d2c4;border-radius:13px;color:var(--muted);background:#f7faf7}.job-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,1fr);gap:25px;align-items:start}.back-link{display:block;color:var(--green);font-size:13px;font-weight:700;margin-bottom:20px}.job-panel,.apply-panel{border:1px solid var(--line);border-radius:18px;padding:32px;background:#fff}.job-panel h1{font-size:31px;line-height:1.5;margin:10px 0 15px}.job-label{color:#28835c;font-size:12px;font-weight:800}.job-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:35px}.job-tags span{border-radius:6px;background:#eff5f0;color:#416c56;padding:4px 10px;font-size:12px}.job-panel h2{border-bottom:1px solid var(--line);padding-bottom:11px;margin-top:34px;font-size:19px}.job-conditions{margin:0}.job-conditions>div{display:grid;grid-template-columns:145px 1fr;border-bottom:1px solid var(--line);padding:14px 0;gap:15px;font-size:13px}.job-conditions dt{font-weight:700}.job-conditions dd{margin:0;overflow-wrap:anywhere}.disclaimer{font-size:12px;color:var(--muted)}.job-sidebar{position:sticky;top:20px}.apply-panel h2{margin:5px 0;font-size:24px}.apply-panel>p{color:var(--muted);font-size:12px}.apply-panel button{width:100%}.post-item{border-bottom:1px solid var(--line);padding:15px 0}.post-item h2{font-size:20px}.wp-block-button__link{border-radius:9px}.page-content .card{margin-bottom:12px}.page-content .cards .card{margin-bottom:0}@media(max-width:950px){.site-nav{gap:15px}.category-grid{grid-template-columns:repeat(2,1fr)}.hero-art{opacity:.65}.hero-grid{grid-template-columns:1fr .75fr}.hero h1{font-size:52px}.page-content .searchbar{grid-template-columns:repeat(2,1fr)}.page-content .searchbar button{grid-column:span 2}.cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.container,.wrap{padding:0 18px}.site-header{height:70px}.brand-mark{width:39px;height:39px}.brand-text{font-size:15px}.menu-toggle{display:flex;width:43px;height:43px;flex-direction:column;justify-content:center;gap:5px;align-items:center;border:1px solid var(--line);background:white;border-radius:10px}.menu-toggle span{height:2px;width:19px;background:var(--deep)}.site-nav{display:none;position:absolute;top:69px;left:0;right:0;background:white;flex-direction:column;align-items:stretch;padding:20px;gap:0;box-shadow:0 20px 25px #0002}.site-nav.is-open{display:flex}.site-nav>a{padding:13px 8px}.site-nav .button{margin-top:10px}.hero{padding-top:54px}.hero-grid{display:block;min-height:0}.hero-copy{padding-bottom:65px}.hero h1{font-size:clamp(42px,11vw,62px)}.hero-lead{font-size:14px}.hero-art{display:none}.hero-actions{flex-wrap:wrap;gap:20px}.hero-proof{gap:10px;font-size:11px}.hero-search{grid-template-columns:1fr;transform:translateY(35px);padding:17px;gap:10px}.hero-search button{width:100%}.section{padding:66px 0}.intro{padding-top:103px}.category-grid,.genre-grid,.cards,.page-content .cards{grid-template-columns:1fr}.category-card{min-height:145px}.category-icon{margin-bottom:10px}.genre-grid a{padding:15px}.heading-inline{align-items:start;flex-direction:column}.employer-cta{padding:34px 24px;min-height:0}.cta-decoration{right:-70px;top:40px}.footer-top,.footer-bottom{flex-direction:column;gap:14px}.footer-links{gap:12px 20px}.job-layout{grid-template-columns:1fr;gap:20px}.job-sidebar{position:static}.job-panel,.apply-panel{padding:22px}.job-panel h1{font-size:25px}.job-conditions>div{grid-template-columns:1fr;gap:3px}.page-heading h1{font-size:29px}.page-content .searchbar{grid-template-columns:1fr}.page-content .searchbar button{grid-column:auto}}

/* v1.2.0: compact hero and search above the fold */
@media(min-width:701px){
.hero{padding-top:34px;padding-bottom:35px;overflow:visible}
.hero-grid{min-height:310px;grid-template-columns:1.1fr .9fr}
.hero-copy{padding-bottom:14px}
.hero h1{font-size:clamp(42px,4.5vw,61px);line-height:1.22;margin:12px 0 15px}
.hero-lead{font-size:14px;line-height:1.9;margin:0}
.hero-actions{margin-top:19px}
.hero-proof{margin-top:17px}
.hero-art{height:295px;transform:scale(.73)}
.hero-search{transform:none;margin:12px 0 0;padding:14px 17px;box-shadow:0 12px 35px #071f1a38}
.intro{padding-top:75px}
}
@media(max-width:700px){
.hero{padding-top:28px;padding-bottom:25px;overflow:visible}
.hero-copy{padding-bottom:16px}
.hero h1{font-size:clamp(37px,10vw,52px);margin:12px 0}
.hero-lead{line-height:1.85;margin:0}
.hero-actions{margin-top:17px}
.hero-proof{margin-top:17px}
.hero-search{transform:none;margin:14px 0 0}
.intro{padding-top:65px}
}
/* Employer landing page */
.employer-hero{background:var(--deep);color:#fff;padding:72px 0 75px;overflow:hidden}
.employer-hero-grid{display:grid;grid-template-columns:1.4fr .8fr;align-items:center;gap:40px}
.employer-hero h1{font-size:clamp(34px,4.2vw,56px);line-height:1.38;letter-spacing:-.04em;margin:14px 0 20px}
.employer-hero h1 span{color:var(--lime)}
.employer-hero p{color:#d6e8dd;line-height:2;max-width:640px}
.employer-hero .hero-proof{margin-top:24px}
.employer-hero .kicker{color:var(--lime)}
.employer-highlight{border:1px solid #619381;background:#ffffff0b;border-radius:24px;padding:32px;text-align:center}
.employer-highlight strong{display:block;font-size:68px;line-height:1.2;color:var(--lime)}
.employer-highlight small{color:#d6e8dd}
.employer-section{padding:78px 0}
.employer-section.soft{background:var(--soft)}
.employer-section h2{font-size:clamp(26px,3vw,38px);line-height:1.45;letter-spacing:-.03em;margin:8px 0 12px}
.employer-section .section-sub{color:var(--muted);margin-bottom:32px}
.employer-features{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.employer-feature{border:1px solid var(--line);border-radius:18px;background:#fff;padding:28px}
.employer-feature .feature-icon{display:grid;place-items:center;width:48px;height:48px;background:#e9f4e9;border-radius:13px;color:var(--green);font-size:23px;margin-bottom:18px}
.employer-feature h3{font-size:19px;margin:0 0 10px}
.employer-feature p{font-size:14px;color:var(--muted);margin:0}
.employer-examples{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.employer-example{padding:18px 20px;background:#fff;border:1px solid var(--line);border-radius:12px;font-weight:700}
.employer-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;counter-reset:step}
.employer-step{border-top:3px solid #c8e7ac;padding:22px 10px 10px 0}
.employer-step .step-number{font-size:12px;font-weight:800;color:#3c8a69;letter-spacing:.1em}
.employer-step h3{margin:10px 0 8px;font-size:18px}
.employer-step p{font-size:13px;color:var(--muted);margin:0}
.employer-faq{max-width:850px}
.employer-faq details{border-bottom:1px solid var(--line);padding:18px 0}
.employer-faq summary{font-weight:700;cursor:pointer;list-style-position:inside}
.employer-faq p{color:var(--muted);margin:12px 0 0 22px}
.employer-bottom-cta{background:var(--deep);color:white;border-radius:24px;padding:55px 45px;text-align:center}
.employer-bottom-cta h2{color:#fff;margin:8px 0}
.employer-bottom-cta p{color:#d7e9dd;margin:0 0 25px}
.employer-note{font-size:12px;color:var(--muted);margin-top:20px}
@media(max-width:800px){.employer-hero-grid{grid-template-columns:1fr}.employer-highlight{max-width:360px}.employer-features,.employer-examples{grid-template-columns:repeat(2,1fr)}.employer-steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.employer-hero{padding:44px 0}.employer-hero h1{font-size:35px}.employer-highlight{padding:20px}.employer-highlight strong{font-size:52px}.employer-section{padding:55px 0}.employer-features,.employer-examples,.employer-steps{grid-template-columns:1fr}.employer-bottom-cta{padding:35px 20px}}
