@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,600;1,400&family=Noto+Sans+JP:wght@300;400;500;700&family=Roboto:wght@400;500;700&display=swap";:root{--font-sans: "Noto Sans JP", "Roboto", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", -apple-system, sans-serif;--font-brand: "Cormorant Garamond", "Hiragino Mincho ProN", "Yu Mincho", serif;--bg-main: #FAF8F5;--bg-card: #FFFFFF;--bg-accent-soft: #F5EFE6;--bg-rose-soft: #FDF2F4;--primary: #9E7676;--primary-hover: #865D5D;--primary-light: #E8D5D5;--secondary: #D0B8A8;--accent-gold: #C5A880;--text-dark: #2C2A29;--text-muted: #6E6A66;--text-light: #9C9893;--border-light: #EFECE6;--border-active: #D0B8A8;--shadow-sm: 0 2px 8px rgba(158, 118, 118, .06);--shadow-md: 0 6px 20px rgba(44, 42, 41, .07);--shadow-lg: 0 12px 32px rgba(44, 42, 41, .12);--radius-sm: 8px;--radius-md: 14px;--radius-lg: 24px;--radius-full: 9999px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-main);color:var(--text-dark);line-height:1.6;-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums lining-nums}h1,h2,h3,h4{font-family:var(--font-sans)}.brand-title,.hero-tag{font-family:var(--font-brand)}.app-container{min-height:100vh;display:flex;flex-direction:column}.header{position:sticky;top:0;z-index:100;background:#fffffff0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-light);padding:.85rem 1.5rem}.header-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.brand-logo{display:flex;align-items:center;gap:.5rem;cursor:pointer}.brand-title{font-size:1.6rem;font-weight:600;letter-spacing:.06em;color:var(--primary)}.brand-subtitle{font-size:.7rem;color:var(--text-muted);letter-spacing:.05em}.nav-links{display:flex;align-items:center;gap:1rem}.nav-btn{background:none;border:none;font-size:.9rem;font-weight:500;color:var(--text-muted);cursor:pointer;padding:.5rem .8rem;border-radius:var(--radius-sm);transition:all .2s ease;display:flex;align-items:center;gap:.4rem;white-space:nowrap;flex-shrink:0}.nav-btn:hover,.nav-btn.active{color:var(--primary);background:var(--bg-rose-soft)}.nav-btn-highlight{background:var(--primary);color:#fff!important;padding:.5rem 1.2rem;border-radius:var(--radius-full)}.mobile-menu-toggle{display:none;background:none;border:1px solid var(--border-light);padding:.5rem;border-radius:var(--radius-sm);cursor:pointer;align-items:center;justify-content:center}.mobile-dropdown-menu{display:flex;flex-direction:column;background:#fff;border-top:1px solid var(--border-light);padding:.8rem 1.2rem;gap:.5rem;animation:slideDown .2s ease forwards}.mobile-menu-item{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.85rem 1rem;border-radius:var(--radius-sm);background:var(--bg-main);border:1px solid var(--border-light);color:var(--text-dark);font-size:.95rem;font-weight:600;cursor:pointer;text-align:left;transition:all .2s ease}.mobile-menu-item.active{background:var(--bg-rose-soft);color:var(--primary);border-color:var(--primary-light)}.mobile-menu-admin{background:#2b2a29;color:#fff}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dashboard-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.7rem;margin-bottom:1.5rem;width:100%}.badge-zero-cost{background:linear-gradient(135deg,#fff6e5,#fde6d2);color:#a36b00;font-size:.75rem;font-weight:600;padding:.25rem .6rem;border-radius:var(--radius-full);border:1px solid rgba(197,168,128,.3);display:inline-flex;align-items:center;gap:.3rem}.main-content{flex:1;max-width:1200px;width:100%;margin:0 auto;padding:1.5rem 1rem 4rem}.hero-section{text-align:center;padding:3.2rem 1.5rem 2.8rem;background:linear-gradient(180deg,var(--bg-rose-soft) 0%,var(--bg-main) 100%);border-radius:var(--radius-lg);margin-bottom:2rem}.hero-tag{display:inline-block;color:var(--primary);font-style:italic;font-size:1.15rem;margin-bottom:.4rem}.hero-title{font-size:2.3rem;font-weight:700;color:var(--text-dark);margin-bottom:.8rem;line-height:1.35}.hero-subtitle{font-size:.95rem;color:var(--text-muted);max-width:640px;margin:0 auto 1.8rem}.search-container{background:var(--bg-card);border-radius:var(--radius-md);padding:1.5rem;box-shadow:var(--shadow-md);border:1px solid var(--border-light);margin-bottom:2rem}.category-tabs{display:flex;gap:.8rem;border-bottom:1px solid var(--border-light);padding-bottom:1rem;margin-bottom:1.2rem}.cat-tab{flex:1;padding:.75rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--border-light);background:var(--bg-main);color:var(--text-muted);font-weight:500;font-size:.95rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.cat-tab.active{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:var(--shadow-sm)}.tag-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.6rem}.filter-group{display:flex;flex-direction:column;gap:.45rem}.filter-label{font-size:.88rem;font-weight:700;color:var(--text-dark);display:flex;align-items:center;gap:.4rem}.filter-input,.filter-select{width:100%;padding:.78rem 1rem;border-radius:var(--radius-md);border:1px solid var(--border-light);background:#fff;color:var(--text-dark);font-size:.92rem;font-family:inherit;box-shadow:0 1px 3px #00000008;transition:all .25s ease}.filter-input::placeholder{color:var(--text-muted);opacity:.6}.filter-input:hover,.filter-select:hover{border-color:var(--primary-light)}.filter-input:focus,.filter-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3.5px #9e767626;background:#fff}textarea.filter-input{resize:vertical;min-height:110px;line-height:1.6}.chip{padding:.45rem 1rem;border-radius:var(--radius-full);font-size:.85rem;font-weight:500;border:1px solid var(--border-light);background:#fff;color:var(--text-muted);cursor:pointer;transition:all .25 ease;display:inline-flex;align-items:center;gap:.3rem;box-shadow:0 1px 3px #00000008}.chip:hover{border-color:var(--primary-light);color:var(--primary);background:var(--bg-rose-soft)}.chip.active{background:var(--primary);color:#fff!important;border-color:var(--primary);font-weight:700;box-shadow:0 4px 14px #9e767666;transform:translateY(-2px)}.chip.active:hover{background:var(--primary-hover)}.jobs-list{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:3rem}.job-card{background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);overflow:hidden;transition:all .3s ease;display:flex;flex-direction:row}.job-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--border-active)}.job-card-image{width:280px;min-width:280px;object-fit:cover}.job-card-content{padding:1.5rem;flex:1;display:flex;flex-direction:column}.job-card-header{display:flex;align-items:center;gap:.6rem;margin-bottom:.5rem}.job-badge-category{font-size:.75rem;font-weight:700;padding:.2rem .6rem;border-radius:4px;background:var(--bg-rose-soft);color:var(--primary)}.job-badge-type{font-size:.75rem;font-weight:600;padding:.2rem .6rem;border-radius:4px;background:var(--bg-accent-soft);color:var(--text-dark)}.job-title{font-size:1.2rem;font-weight:700;color:var(--text-dark);margin-bottom:.5rem;line-height:1.4}.job-salon-name{font-size:.9rem;color:var(--text-muted);margin-bottom:.8rem;display:flex;align-items:center;gap:.4rem}.job-salary-highlight{font-size:1.15rem;font-weight:700;color:var(--primary);background:var(--bg-main);padding:.5rem .8rem;border-radius:var(--radius-sm);display:inline-block;margin-bottom:1rem;border:1px dashed var(--primary-light);font-variant-numeric:tabular-nums lining-nums}.job-features-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.2rem}.job-tag{font-size:.75rem;color:var(--text-muted);background:var(--bg-main);padding:.2rem .6rem;border-radius:4px;border:1px solid var(--border-light)}.job-card-actions{margin-top:auto;display:flex;gap:.8rem;justify-content:flex-end}.btn-secondary{background:var(--bg-accent-soft);color:var(--text-dark);border:1px solid var(--border-light);padding:.65rem 1.2rem;border-radius:var(--radius-sm);font-size:.88rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-secondary:hover{background:var(--border-light)}.btn-primary{background:var(--primary);color:#fff;border:none;padding:.65rem 1.4rem;border-radius:var(--radius-sm);font-size:.88rem;font-weight:600;cursor:pointer;transition:background .2s ease}.btn-primary:hover{background:var(--primary-hover)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;display:flex;align-items:center;justify-content:center;padding:1rem;animation:fadeIn .2s ease}.modal-content{background:#fff;border-radius:var(--radius-lg);max-width:640px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg);padding:2rem;position:relative}.modal-close{position:absolute;top:1rem;right:1rem;background:var(--bg-main);border:none;width:32px;height:32px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.dashboard-card{background:#fff;border-radius:var(--radius-md);border:1px solid var(--border-light);padding:1.5rem;margin-bottom:1.5rem}.status-pill{padding:.2rem .6rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:600}.status-new{background:#fef7e0;color:#b06000}.status-contacting{background:#e8f0fe;color:#1a73e8}.status-hired{background:#e6f4ea;color:#137333}.status-rejected{background:#fce8e6;color:#c5221f}@keyframes fadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@media (max-width: 768px){.main-content{padding:1rem .8rem}.header-content{flex-direction:row!important;justify-content:space-between!important;align-items:center!important}.desktop-nav{display:none!important}.mobile-menu-toggle{display:flex!important}.brand-title{font-size:1.4rem}.badge-zero-cost{font-size:.72rem;padding:.2rem .5rem}.hero-section{padding:2.2rem 1rem;border-radius:var(--radius-md);margin-bottom:1.2rem}.hero-title{font-size:1.55rem;line-height:1.4}.hero-subtitle{font-size:.88rem;margin-bottom:1.2rem}.search-container{padding:1.2rem 1rem;border-radius:var(--radius-md)}.category-tabs{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:.5rem!important;overflow-x:visible!important;white-space:normal!important;padding-bottom:.4rem!important;width:100%!important}.category-tabs .cat-tab{flex-shrink:1!important;white-space:normal!important;padding:.6rem .5rem!important;font-size:.78rem!important;line-height:1.35!important;text-align:center!important;height:100%!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:.25rem!important}.chip{padding:.4rem .8rem;font-size:.8rem}.job-card{flex-direction:column;border-radius:var(--radius-md)}.job-card-image{width:100%;height:190px;min-width:100%}.job-card-content{padding:1.2rem}.job-title{font-size:1.1rem}.job-salary-highlight{font-size:1.05rem;padding:.4rem .7rem;width:100%;text-align:center}.job-card-actions{flex-direction:column;gap:.6rem;width:100%}.job-card-actions button{width:100%;padding:.75rem;text-align:center;justify-content:center}.modal-overlay{padding:.5rem}.modal-content{padding:1.4rem 1.1rem;max-height:92vh;border-radius:var(--radius-md)}.dashboard-card{padding:1.1rem .9rem}.dashboard-tabs{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:.5rem!important;overflow-x:visible!important;white-space:normal!important;padding-bottom:0!important;width:100%!important}.dashboard-tabs .cat-tab{flex-shrink:1!important;white-space:normal!important;padding:.65rem .5rem!important;font-size:.78rem!important;line-height:1.35!important;justify-content:center!important;text-align:center!important;height:100%!important;display:flex!important;flex-direction:column!important;align-items:center!important;gap:.25rem!important}.desktop-applicant-table{display:none!important}.mobile-applicant-cards{display:flex!important}.job-spec-row{flex-direction:column!important;gap:.25rem!important}.job-spec-label{width:auto!important;min-width:0!important}.filter-input,.filter-select,textarea.filter-input{font-size:16px!important}.desktop-apply-buttons{display:none!important}.mobile-floating-apply-bar{display:flex!important;position:fixed!important;bottom:0!important;left:0!important;right:0!important;width:100%!important;background:#fffffff5!important;backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important;border-top:1px solid var(--border-light)!important;padding:.75rem 1rem!important;gap:.6rem!important;box-shadow:0 -4px 20px #0000001f!important;z-index:1000!important}}.mobile-floating-apply-bar{display:none}
