:root{--color-primary:#ff4e89;--color-primary-hover:#d94274;--color-secondary:#0160fa;--color-secondary-hover:#0152d5;--color-navy:#003e71;--color-text:#090b34;--color-text-body:#333;--color-text-light:#606060;--color-bg:#fff;--color-bg-gray:#f8f8f8;--color-bg-blue-light:#e8f1fb;--color-border:#cecece;--color-tag-bg:#ececec;--color-tag-text:#0a7abf;--color-footer-bg:#000;--color-footer-text:#ccd0df;--color-kv-subtext:#ffb43b;--font-family:"Noto Sans JP", sans-serif;--font-size-base:16px;--font-size-sm:14px;--font-size-xs:12px;--max-width:1200px;--padding-x:120px;--header-height:119px;--section-py:60px;--gap-card:20px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text-body);background-color:var(--color-bg);margin:0;line-height:1.6}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}ul,ol{margin:0;padding:0;list-style:none}p{margin:0}button{cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit}.pc-only{display:inline}.sp-only{display:none}.site-header{z-index:100;background-color:var(--color-bg);border-bottom:1px solid var(--color-border);height:var(--header-height);position:sticky;top:0}.site-header__inner{max-width:calc(var(--max-width) + var(--padding-x) * 2);padding:0 var(--padding-x);justify-content:space-between;align-items:center;height:100%;margin:0 auto;display:flex}.site-header__logo{align-items:center;display:flex}.site-header__logo-img{width:65px;height:auto;display:block}.site-header__nav{flex-direction:column;align-items:flex-end;gap:12px;display:flex}.site-header__top-row{align-items:center;gap:10px;display:flex}.site-header__corporate-text{color:#3a3a3a;font-size:12px;line-height:1.6}.site-header__corporate-btn{color:#fff;white-space:nowrap;background:#000;border-radius:4px;align-items:center;padding:4px 10px;font-size:12px;line-height:1.6;display:inline-flex}.site-header__btn-row{align-items:center;gap:16px;display:flex}.site-header__corporate-btn-sp{display:none}.site-header__btn{font-size:var(--font-size-sm);color:#fff;white-space:nowrap;border-radius:4px;align-items:center;gap:6px;padding:14px 16px;font-weight:700;display:inline-flex}.site-header__btn-icon{flex-shrink:0;width:18px;height:18px}.site-header__btn--search{background-color:var(--color-primary);background-image:linear-gradient(135deg, var(--color-primary-hover) 50%, transparent 50%);background-position:100%;background-size:300%;transition:background-position .6s ease-in-out}.site-header__btn--register{background-color:var(--color-secondary);background-image:linear-gradient(135deg, var(--color-secondary-hover) 50%, transparent 50%);background-position:100%;background-size:300%;transition:background-position .6s ease-in-out}.site-header__btn--search:hover,.site-header__btn--register:hover{background-position:0}.site-footer{background-color:var(--color-footer-bg);color:#fff;padding-top:48px}.site-footer__inner{max-width:calc(var(--max-width) + var(--padding-x) * 2);padding:0 var(--padding-x);flex-direction:column;gap:35px;margin:0 auto;display:flex}.site-footer__top{justify-content:space-between;align-items:flex-start;display:flex}.site-footer__top-left{flex-direction:column;gap:16px;display:flex}.site-footer__logo{display:block}.site-footer__logo-img{background-color:#fff;width:180px;height:39px;display:block;-webkit-mask-image:url(../images/logo-footer-mask.svg);mask-image:url(../images/logo-footer-mask.svg);-webkit-mask-size:180px 39px;mask-size:180px 39px;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.site-footer__breadcrumb{align-items:center;gap:24px;display:flex}.site-footer__breadcrumb-link{font-size:var(--font-size-xs);color:#fff;align-items:center;gap:4px;line-height:1;transition:opacity .2s;display:inline-flex}.site-footer__breadcrumb-link:hover{opacity:.75}.site-footer__breadcrumb-link img{flex-shrink:0;width:12px;height:12px}.site-footer__badges{align-items:center;gap:24px;display:flex}.site-footer__badge{background-color:#fff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:96px;height:96px;padding:8px;display:flex;overflow:hidden}.site-footer__badge img{object-fit:contain;width:100%;height:100%}.site-footer__nav{border-bottom:1px solid #737c8d;grid-template-columns:repeat(4,1fr);gap:40px;padding-bottom:30px;display:grid}.site-footer__nav-heading{font-size:var(--font-size-xs);color:#fff;margin-bottom:24px;font-weight:700;line-height:1}.site-footer__nav-list{flex-direction:column;gap:8px;display:flex}.site-footer__nav-list a{font-size:var(--font-size-xs);color:var(--color-footer-text);line-height:1.45;transition:color .2s}.site-footer__nav-list a:hover{color:#fff}.site-footer__copyright{font-size:var(--font-size-xs);justify-content:space-between;align-items:center;padding:16px 0 24px;display:flex}.site-footer__copyright-links{flex-shrink:0;gap:20px;display:flex}.site-footer__copyright-links a{color:#fff;transition:opacity .2s}.site-footer__copyright-links a:hover{opacity:.75}.site-footer__copyright-center{font-size:var(--font-size-xs);color:#fff;white-space:nowrap;align-items:center;gap:8px;display:flex}.site-footer__copyright-divider{opacity:.5}.kv{background:#f50948;height:286px;position:relative;overflow:hidden}.kv__bg-photo{pointer-events:none;position:absolute;top:0}.kv__bg-photo--pc{width:auto;max-width:none;height:100%;right:0}.kv__bg-photo--sp{display:none}.kv__deco{mix-blend-mode:overlay;pointer-events:none;z-index:0;width:278px;height:204px;position:absolute;top:0;right:0}.kv__photos-pc{pointer-events:none;z-index:0;width:auto;height:100%;position:absolute;top:0;left:680px}.kv__photos-sp{display:none}.kv__inner{z-index:2;max-width:calc(var(--max-width) + var(--padding-x) * 2);padding:0 var(--padding-x);justify-content:space-between;align-items:flex-end;height:100%;margin:0 auto;padding-bottom:51px;display:flex;position:relative}.kv__content{color:#fff;z-index:1;width:600px;position:relative}.kv__subtext{color:#fff;align-items:center;gap:10px;margin:0 0 30px;font-size:18px;font-weight:400;line-height:1.4;display:flex}.kv__subtext-text{font-weight:700}.kv__subtext-logo{background-color:#fff;flex-shrink:0;width:147px;height:32px;display:inline-block;-webkit-mask-image:url(../images/logo-footer-mask.svg);mask-image:url(../images/logo-footer-mask.svg);-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.kv__heading{color:#fff;margin:0;font-size:36px;font-weight:700;line-height:1.45}.kv__heading-accent{color:#fff;margin-bottom:4px;font-size:20px;font-weight:700;line-height:1.5;display:block}.kv__btn{font-family:var(--font-family);color:#fff;cursor:pointer;border:none;border-radius:4px;justify-content:center;align-items:center;gap:8px;font-weight:700;text-decoration:none;display:inline-flex}.kv__btn--search{background-color:var(--color-primary);background-image:linear-gradient(135deg, var(--color-primary-hover) 50%, transparent 50%);font-size:var(--font-size-base);background-position:100%;background-size:300%;height:48px;padding:12px 24px;transition:background-position .6s ease-in-out}.kv__btn--register{background-color:var(--color-secondary);background-image:linear-gradient(135deg, var(--color-secondary-hover) 50%, transparent 50%);background-position:100%;background-size:300%;padding:0 24px;font-size:18px;transition:background-position .6s ease-in-out}.kv__btn--search:hover,.kv__btn--register:hover{background-position:0}.kv__btn-register-pc{z-index:1;flex-shrink:0;width:336px;height:64px;position:relative}.kv__btn-icon{flex-shrink:0;width:22px;height:22px}.kv__sp-cta{display:none}.clients{background-color:var(--color-bg)}.clients__inner{max-width:calc(var(--max-width) + var(--padding-x) * 2);padding:0 var(--padding-x);align-items:center;height:100px;margin:0 auto 40px;display:flex}.clients__list{justify-content:space-between;align-items:center;width:100%;display:flex}.clients__item{flex-shrink:0;justify-content:center;align-items:center;display:flex}.clients__logo{object-fit:contain;display:block}.clients__logo--kokuyo{width:179px;height:20px}.clients__logo--nbc{width:104px;height:78px}.clients__logo--nipponham{width:120px;height:78px}.clients__logo--yappli{width:100px;height:60px}.clients__logo--chatwork{width:98px;height:60px}.clients__logo--yamaki{width:168px;height:60px}.clients__logo--fif{width:100px;height:78px}.clients__logo--white-essence{width:101px;height:78px}.job-search{background-color:var(--color-bg-gray);padding:48px 0}.job-search__inner{max-width:calc(var(--max-width) + var(--padding-x) * 2);padding:0 var(--padding-x);flex-direction:column;align-items:center;gap:28px;margin:0 auto;display:flex}.job-search__heading{color:var(--color-text);text-align:center;margin:0;font-size:28px;font-weight:700}.job-search__form{flex-direction:column;align-items:flex-start;gap:12px;width:1016px;max-width:100%;display:flex}.job-search__fields{align-items:stretch;gap:4px;width:100%;height:64px;display:flex}.job-search__field{border:1px solid var(--color-border);background:#fff;border-radius:6px;flex:0 0 200px;position:relative;overflow:hidden}.job-search__field:has(select):after{content:"";border-right:2px solid var(--color-text-light);border-bottom:2px solid var(--color-text-light);pointer-events:none;width:7px;height:7px;position:absolute;top:50%;right:14px;transform:translateY(-50%)rotate(45deg)}.job-search__modal-btn{width:100%;height:100%;font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text-light);cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;padding:0 14px 0 16px;display:flex}.job-search__modal-btn-icon{flex-shrink:0;width:20px;height:16px}.job-search__selected-tags{flex-wrap:wrap;gap:8px;width:1016px;max-width:100%;display:flex}.job-search__selected-tags:empty{display:none}.job-search__selected-tags .search-form__tag{font-size:var(--font-size-sm)}.job-search__field--keyword{background:var(--color-tag-bg);border:none;flex:1}.job-search__select,.job-search__input{width:100%;height:100%;font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text);cursor:pointer;-webkit-appearance:none;appearance:none;background:0 0;border:none;outline:none;padding:0 36px 0 16px}.job-search__input{cursor:text}.job-search__input::placeholder{color:var(--color-text-light)}.job-search__btn{background-color:var(--color-primary);background-image:linear-gradient(135deg, var(--color-primary-hover) 50%, transparent 50%);color:#fff;width:200px;height:64px;font-family:var(--font-family);cursor:pointer;background-position:100%;background-size:300%;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;gap:8px;font-size:18px;font-weight:700;transition:background-position .6s ease-in-out;display:inline-flex}.job-search__btn:hover{background-position:0}.job-search__btn-icon{flex-shrink:0;width:20px;height:20px}.job-search__popular{align-items:center;gap:16px;width:1016px;max-width:100%;display:flex}.job-search__popular-label{color:#000;white-space:nowrap;flex-shrink:0;font-size:20px;font-weight:700}.job-search__tags{flex-wrap:wrap;gap:8px;display:flex}.job-search__tag{border:1px solid var(--color-border);height:39px;font-size:var(--font-size-base);color:var(--color-text);background:#fff;border-radius:50px;align-items:center;padding:0 16px;transition:background-color .2s;display:inline-flex}.job-search__tag:hover{background-color:#efefef}.job-search__tag--selected,.job-search__tag--selected:hover{background-color:var(--color-text);color:#fff;border-color:var(--color-text)}.jobs-section{background:var(--color-bg);padding:40px 0}.job-search+.jobs-section{padding-top:80px}.jobs-section:has(+.strengths){padding-bottom:80px}.jobs-section__inner{max-width:calc(var(--max-width) + var(--padding-x) * 2);padding:0 var(--padding-x);margin:0 auto}.jobs-section__body{flex-direction:column;gap:24px;display:flex;overflow-x:auto}.jobs-section__header{align-items:center;gap:24px;display:flex}.jobs-section__heading{white-space:nowrap;align-items:baseline;margin:0;line-height:1;display:flex}.jobs-section__heading-main{color:var(--color-text);font-size:28px;font-weight:700}.jobs-section__heading-sub{color:var(--color-text);font-size:20px;font-weight:700}.jobs-section__meta{flex-shrink:0;align-items:center;gap:8px;display:flex}.jobs-section__new-badge{background:var(--color-primary);color:#fff;border-radius:2px;align-items:center;padding:2px 8px;font-size:12px;font-weight:500;line-height:1.2;display:inline-flex}.jobs-section__update-date{color:var(--color-text);font-size:16px}.jobs-section__divider{background:var(--color-border);border:none;flex:1;height:1px;margin:0}.jobs-section__grid{grid-template-columns:repeat(4,minmax(240px,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.jobs-section__item{min-width:0;display:flex}.jobs-section__more-link{font-size:var(--font-size-sm);color:var(--color-text);white-space:nowrap;flex-shrink:0;align-items:center;gap:4px;font-weight:400;text-decoration:none;transition:color .2s;display:inline-flex}.jobs-section__more-link--sp{display:none}.jobs-section__more-link:hover{color:var(--color-primary)}.jobs-section__more-arrow{background-color:var(--color-text);flex-shrink:0;width:14px;height:14px;transition:background-color .2s;display:inline-block;-webkit-mask-image:url(../images/icon-arrow.svg);mask-image:url(../images/icon-arrow.svg);-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.jobs-section__more-link:hover .jobs-section__more-arrow{background-color:var(--color-primary)}.job-card{background-color:var(--color-bg-gray);border-radius:8px;flex-direction:column;gap:8px;width:100%;padding:24px 16px;display:flex;position:relative}.job-card__title-link{color:inherit;text-decoration:none;display:block}.job-card__title-link:hover .job-card__title{color:var(--color-primary)}.job-card__title{color:var(--color-text);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:14px;font-weight:700;line-height:1.55;transition:color .2s;display:-webkit-box;overflow:hidden}.job-card__body{flex-direction:column;flex:1;gap:8px;display:flex}.job-card__type-tag{color:#0049be;background:#fff;border-radius:4px;padding:4px 6px;font-size:13px;font-weight:700;line-height:1.3;display:block}.job-card__location,.job-card__salary{color:var(--color-text);align-items:flex-start;gap:8px;font-size:13px;line-height:1.4;display:flex}.job-card__icon{flex-shrink:0;width:18px;height:18px;margin-top:1px}.job-card__location span,.job-card__salary span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.job-card__extras{flex-wrap:wrap;align-items:center;gap:4px;font-size:13px;display:flex}.job-card__extra{border:1px solid var(--color-border);color:var(--color-text);background:#fff;border-radius:30px;align-items:center;gap:2px;padding:4px 10px;font-size:12px;text-decoration:none;transition:color .2s,border-color .2s;display:inline-flex}.job-card__extra:before{content:"#";color:var(--color-primary);font-size:13px}.job-card__extra:hover{border-color:var(--color-primary);color:var(--color-primary)}.job-card__badges{flex-wrap:wrap;gap:6px;padding-right:88px;display:flex}.job-card__employment-badge{color:#0049be;background:#fff;border:1px solid #0049be;border-radius:4px;align-items:center;padding:2px 8px 4px;font-size:12px;font-weight:700;line-height:1.2;display:inline-flex}.job-card__employment-badge--seishain{color:#fff;background:#0049be;border-color:#0049be}.job-card__detail-link{font-size:var(--font-size-xs);color:var(--color-text);white-space:nowrap;align-items:center;gap:4px;line-height:1;text-decoration:none;transition:color .2s;display:inline-flex;position:absolute;bottom:16px;right:16px}.job-card__detail-link:after{content:"";background-color:var(--color-text);flex-shrink:0;width:12px;height:12px;transition:background-color .2s;display:inline-block;-webkit-mask-image:url(../images/icon-arrow.svg);mask-image:url(../images/icon-arrow.svg);-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.job-card__detail-link:hover{color:var(--color-primary)}.job-card__detail-link:hover:after{background-color:var(--color-primary)}.strengths{position:relative;overflow:hidden}.strengths:before{content:"";pointer-events:none;z-index:0;background:#f8f8f8;position:absolute;inset:20px 0}.strengths__kv{z-index:1;max-width:1440px;min-height:420px;margin:0 auto;position:relative}.strengths__bounds{pointer-events:none;z-index:0;max-width:1440px;margin:0 auto;position:absolute;inset:0}.strengths__deco{z-index:2;width:166px;height:auto;position:absolute;top:0;left:0}.strengths__deco--right{z-index:0;inset:auto 0 0 auto}.strengths__text-panel{z-index:1;text-align:center;flex-direction:column;align-items:center;width:56%;max-width:none;padding:90px 60px 40px clamp(60px,22vw - 108px,209px);display:flex;position:relative}.strengths__logo-mark{margin-bottom:20px}.strengths__logo-mark-img{width:78px;height:58px}.strengths__heading{color:#49433b;margin:0 0 32px;font-size:36px;font-weight:700}.strengths__body{color:var(--color-text);margin:0;font-size:16px;font-weight:400;line-height:1.8}.strengths__photo-panel{z-index:1;pointer-events:none;width:54%;height:548px;position:absolute;top:20px;left:auto;right:0}.strengths__photo{object-fit:cover;object-position:center top;-webkit-mask-composite:source-in;width:100%;height:100%;display:block;-webkit-mask-image:linear-gradient(90deg,#0000 10%,#000 30%),linear-gradient(#000 65%,#0000 90%);mask-image:linear-gradient(90deg,#0000 10%,#000 30%),linear-gradient(#000 65%,#0000 90%);mask-composite:intersect}.strengths__features{z-index:1;padding:0 0 100px;position:relative}.strengths__features-inner{max-width:calc(var(--max-width) + var(--padding-x) * 2);padding:0 var(--padding-x);flex-direction:column;align-items:center;gap:40px;margin:0 auto;display:flex}.strengths__features-heading{color:var(--color-primary);white-space:nowrap;align-items:center;gap:24px;width:100%;margin:0;font-size:32px;font-weight:700;display:flex}.strengths__features-heading:before,.strengths__features-heading:after{content:"";opacity:.6;background:#d9d9d9;flex:1;height:1px}.strengths__features-grid{grid-template-columns:repeat(3,1fr);gap:60px;width:100%;display:grid}.feature-card{flex-direction:column;gap:16px;display:flex}.feature-card__header{align-items:center;gap:16px;display:flex}.feature-card__number{font-family:"Josefin Sans", var(--font-family);color:var(--color-primary);flex-shrink:0;font-size:38px;font-style:italic;font-weight:700;line-height:1}.feature-card__title{color:var(--color-text);margin:0;font-size:20px;font-weight:700;line-height:1.4}.feature-card__photo-wrap{aspect-ratio:355/225;border-radius:2px;width:100%;overflow:hidden}.feature-card__photo{object-fit:cover;width:100%;height:100%;display:block}.feature-card__body{color:var(--color-text);margin:0;font-size:16px;line-height:1.8}.strengths__cta{align-items:center;gap:32px;margin-top:30px;display:flex}.strengths__cta-btn{width:340px;height:68px;font-family:var(--font-family);color:#fff;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:10px;font-size:18px;font-weight:700;text-decoration:none;display:inline-flex}.strengths__cta-btn--search{background-color:var(--color-primary);background-image:linear-gradient(135deg, var(--color-primary-hover) 50%, transparent 50%);background-position:100%;background-size:300%;transition:background-position .6s ease-in-out}.strengths__cta-btn--register{background-color:var(--color-secondary);background-image:linear-gradient(135deg, var(--color-secondary-hover) 50%, transparent 50%);background-position:100%;background-size:300%;transition:background-position .6s ease-in-out}.strengths__cta-btn--search:hover,.strengths__cta-btn--register:hover{background-position:0}.strengths__cta-icon{flex-shrink:0;width:22px;height:22px}.jobs-by-type{background:#fff;padding:80px 0}.jobs-by-type__inner{max-width:calc(var(--max-width) + var(--padding-x) * 2);padding:0 var(--padding-x);flex-direction:column;gap:30px;margin:0 auto;display:flex}.jobs-by-type__heading-row{align-items:center;gap:24px;display:flex}.jobs-by-type__heading-row:after{content:"";background:var(--color-border);flex:1;height:1px}.jobs-by-type__heading{color:var(--color-text);flex-shrink:0;margin:0;font-weight:700;line-height:1.2}.jobs-by-type__heading-large{font-size:20px}.jobs-by-type__heading-small{font-size:16px}.jobs-by-type__category{flex-direction:column;gap:20px;display:flex;overflow-x:auto}.jobs-by-type__cat-header{justify-content:space-between;align-items:center;display:flex}.jobs-by-type__cat-label{color:var(--color-text);margin:0;font-size:18px;font-weight:700}.jobs-by-type__more-link{font-size:var(--font-size-sm);color:var(--color-text);align-items:center;gap:4px;font-weight:400;text-decoration:none;transition:color .2s;display:inline-flex}.jobs-by-type__more-link--sp{display:none}.jobs-by-type__more-link:hover{color:var(--color-primary)}.jobs-by-type__more-arrow{background-color:var(--color-text);flex-shrink:0;width:14px;height:14px;transition:background-color .2s;display:inline-block;-webkit-mask-image:url(../images/icon-arrow.svg);mask-image:url(../images/icon-arrow.svg);-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.jobs-by-type__more-link:hover .jobs-by-type__more-arrow{background-color:var(--color-primary)}.jobs-by-type__grid{grid-template-columns:repeat(4,minmax(240px,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.jobs-by-type__item{display:contents}.job-filter{background:var(--color-bg-gray);padding:60px 0}.job-filter__inner{max-width:calc(var(--max-width) + var(--padding-x) * 2);padding:0 var(--padding-x);flex-direction:column;align-items:center;gap:32px;margin:0 auto;display:flex}.job-filter__heading{color:var(--color-text);text-align:center;margin:0;font-size:28px;font-weight:700}.job-filter__form{flex-direction:column;align-items:center;gap:32px;width:100%;display:flex}.job-filter__submit{justify-content:center;display:flex}.search-form{border:1px solid var(--color-border);background:#fff;border-bottom:none;width:100%}.search-form__row{border-bottom:1px solid var(--color-border);grid-template-columns:240px 1fr;min-height:64px;display:grid}.search-form__label{font-size:var(--font-size-sm);color:var(--color-text);background:#f0f2f6;align-items:center;padding:16px 20px;font-weight:700;display:flex}.search-form__field{background:#fff;flex-wrap:wrap;align-items:center;gap:8px;padding:16px 20px;display:flex}.search-form__checkboxes{flex-wrap:wrap;gap:8px 24px;padding:4px 0;display:flex}.search-form__check{font-size:var(--font-size-sm);color:var(--color-text);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;display:flex}.search-form__check input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--color-primary)}.search-form__select-btn{color:var(--color-primary);font-size:var(--font-size-sm);border:1px solid var(--color-primary);cursor:pointer;background:#fff;border-radius:4px;flex-shrink:0;align-self:center;padding:8px 24px;font-weight:400}.search-form__select-btn:hover{background:var(--color-primary);color:#fff}.search-form__text-input{border:1px solid var(--color-border);width:100%;height:44px;font-size:var(--font-size-base);color:var(--color-text);background:#fff;border-radius:6px;outline:none;padding:0 14px}.search-form__text-input:focus{border-color:var(--color-primary)}.search-form__text-input::placeholder{color:#aaa}.search-form__select-wrap{min-width:200px;display:inline-block;position:relative}.search-form__native-select{appearance:none;border:1px solid var(--color-border);width:100%;height:44px;font-size:var(--font-size-base);color:var(--color-text);cursor:pointer;background:#fff;border-radius:6px;outline:none;padding:0 40px 0 14px}.search-form__select-wrap:after{content:"";background:var(--color-text);clip-path:polygon(0 0,100% 0,50% 100%);pointer-events:none;width:10px;height:6px;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.search-form__field--salary{flex-wrap:wrap;align-items:center;gap:8px 12px}.search-form__salary-range{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.search-form__salary-range[hidden]{display:none}.search-form__salary-label{font-size:var(--font-size-sm);color:var(--color-text);white-space:nowrap}.search-form__selected-tags{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.search-form__tag{color:#828282;text-align:center;font-size:var(--font-size-sm);background-color:#f4f4f4;border-radius:9px;padding:5px 15px;display:inline-block}.submodal{z-index:1100;width:100%;height:100vh;display:none;position:fixed;top:0;left:0}.submodal--open{display:block}.submodal__overlay{z-index:0;cursor:pointer;background:#ffffffb3;width:100%;height:100vh;position:fixed;top:0;left:0}.submodal__dialog{z-index:1;background:#fff;border:1px solid #ddd;width:60%;height:70%;padding:30px;position:absolute;top:50%;left:50%;overflow-y:scroll;transform:translateY(-50%)translate(-50%)}.submodal--conditions .submodal__dialog{height:40%}.submodal__title{color:var(--color-text);font-size:18px;font-weight:700}.submodal__clear-btn{background-color:var(--color-primary);border:2px solid var(--color-primary);color:#fff;font-size:var(--font-size-sm);cursor:pointer;white-space:nowrap;border-radius:9px;padding:5px 10px;transition:background-color .2s,color .2s;position:absolute;top:22px;right:62px}.submodal__clear-btn:hover{color:var(--color-primary);background-color:#fff}.submodal__close{color:#888;cursor:pointer;background:0 0;border:none;padding:2px 6px;font-size:22px;line-height:1;position:absolute;top:22px;right:16px}.submodal__close:hover{color:var(--color-text)}.submodal__note{color:red;margin-top:15px;font-size:12px;font-weight:700;line-height:1.6}.submodal__subtitle{color:var(--color-text);margin-top:20px;font-size:16px;font-weight:700}.submodal__check-all-label{cursor:pointer;font-size:var(--font-size-sm);align-items:center;gap:4px;margin-bottom:4px;display:flex}.submodal__check-all-label input[type=checkbox]{accent-color:#49bee1;cursor:pointer;flex-shrink:0}.submodal__check-all-label span{font-size:var(--font-size-sm)}.submodal__checks{flex-wrap:wrap;margin-top:4px;display:flex}.submodal__check{cursor:pointer;flex:0 0 20%;align-items:flex-start;gap:4px;margin-bottom:5px;display:flex}.submodal__check input[type=checkbox]{accent-color:#49bee1;cursor:pointer;flex-shrink:0;margin-top:2px}.submodal__check span{font-size:var(--font-size-sm);word-break:break-all;line-height:1.4}.submodal__checks--conditions{margin-top:20px}.submodal__submit-wrap{text-align:center;margin-top:24px}.submodal__submit{background-color:var(--color-primary);background-image:linear-gradient(135deg, var(--color-primary-hover) 50%, transparent 50%);color:#fff;cursor:pointer;background-position:100%;background-size:300%;border:none;border-radius:6px;width:370px;max-width:100%;padding:20px 40px;font-size:16px;font-weight:700;transition:background-position .6s ease-in-out}.submodal__submit:hover{background-position:0}.search-submit-btn{background-color:var(--color-primary);background-image:linear-gradient(135deg, var(--color-primary-hover) 50%, transparent 50%);color:#fff;cursor:pointer;background-position:100%;background-size:300%;border:none;border-radius:8px;justify-content:center;align-items:center;gap:10px;width:200px;height:60px;font-size:18px;font-weight:700;transition:background-position .6s ease-in-out;display:inline-flex}.search-submit-btn:hover{background-position:0}.search-submit-btn__icon{flex-shrink:0;width:20px;height:20px}.modal{z-index:1000;display:none;position:fixed;inset:0}.modal--open{justify-content:center;align-items:flex-start;padding:40px 20px;display:flex;overflow-y:auto}.modal__overlay{z-index:0;cursor:pointer;background:#00000080;position:fixed;inset:0}.modal__dialog{z-index:1;background:#fff;border-radius:12px;flex-direction:column;gap:24px;width:100%;max-width:900px;padding:48px 48px 40px;display:flex;position:relative}.modal__close{border:1px solid var(--color-border);width:40px;height:40px;color:var(--color-text);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;font-size:20px;transition:background .2s;display:flex;position:absolute;top:16px;right:16px}.modal__close:hover{background:var(--color-bg-gray)}.modal__heading{color:var(--color-text);text-align:center;margin:0;font-size:22px;font-weight:700}.modal__form{flex-direction:column;gap:24px;display:flex}.modal__submit{justify-content:center;display:flex}@media (width>=769px) and (width<=1199px){:root{--padding-x:30px}.job-search__form{height:auto}.job-search__fields{flex-wrap:wrap;gap:8px 4px;height:auto}.job-search__field{flex:0 0 calc(50% - 2px);height:57px}.job-search__field--keyword{flex:1;min-width:0;height:57px}.job-search__btn{height:57px;font-size:var(--font-size-base)}.strengths__deco{width:83px}.strengths__photo-panel{width:40%}.strengths__text-panel{width:65%}.job-card,.job-card__extra{padding-left:8px;padding-right:8px}.jobs-section__body{overflow-x:visible}.jobs-section__grid{grid-template-columns:repeat(4,1fr)}.jobs-by-type__category{overflow-x:visible}.jobs-by-type__grid{grid-template-columns:repeat(4,1fr)}}@media (width<=1439px){.kv{height:310px}.kv__inner{flex-direction:column;justify-content:center;align-items:flex-start;gap:16px;padding-bottom:0}.kv__content{width:46vw}.kv__subtext{margin-bottom:8px;font-size:15px}.kv__heading{font-size:28px}.kv__heading-accent{margin-bottom:2px;font-size:17px}.kv__btn-register-pc{width:auto;height:48px;padding:0 24px}.kv__photos-pc{left:clamp(400px,46%,680px)}.strengths__body{text-align:left;align-self:flex-start;width:100%}.strengths__body .pc-only{display:none}}@media (width>=769px) and (width<=1040px){.kv__subtext{font-size:13px}.kv__heading{font-size:22px}.kv__heading-accent{font-size:14px}}@media (width>=769px) and (width<=1199px){.kv{height:330px}}@media (width<=1240px){.clients__inner{height:auto;padding-top:20px;padding-bottom:20px}.clients__list{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.clients__logo--kokuyo,.clients__logo--nbc,.clients__logo--nipponham,.clients__logo--yappli,.clients__logo--chatwork,.clients__logo--yamaki,.clients__logo--fif,.clients__logo--white-essence{width:100%;height:auto;max-height:50px}.site-footer__copyright{flex-direction:column;align-items:flex-start;gap:12px;padding-bottom:20px}.site-footer__copyright-center{white-space:normal;flex-direction:column;align-items:flex-start;gap:4px}.site-footer__copyright-divider{display:none}}@media (width<=768px){:root{--header-height:64px;--padding-x:20px;--section-py:40px}.pc-only{display:none}.sp-only{display:inline}.site-header__inner{padding:0 16px}.site-header__logo-img{width:38px}.site-header__btn{font-size:var(--font-size-xs);gap:4px;padding:8px}.site-header__btn-icon{width:16px;height:16px}.site-header__nav{flex-direction:row;align-items:center;gap:8px}.site-header__top-row{display:none}.site-header__btn-row{gap:8px}.site-header__corporate-btn-sp{color:#fff;text-align:center;background:#000;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:10px;font-weight:700;line-height:1.2;display:inline-flex}.site-footer__inner{padding:0 var(--padding-x);gap:24px}.site-footer__top{flex-direction:column;gap:20px}.site-footer__badges{gap:16px}.site-footer__badge{width:72px;height:72px}.site-footer__nav{grid-template-columns:1fr;gap:24px}.site-footer__copyright{flex-direction:column;align-items:flex-start;gap:12px;padding-bottom:20px}.site-footer__copyright-center{white-space:normal;flex-direction:column;align-items:flex-start;gap:4px}.site-footer__copyright-divider{display:none}.kv{height:auto}.kv__bg-photo--pc{display:none}.kv__bg-photo--sp{object-fit:cover;object-position:top;width:100%;height:100%;display:block;top:0;left:0}.kv__deco{width:208px;height:153px;top:16px;left:179px;right:auto}.kv__photos-pc{display:none}.kv__photos-sp{width:calc(100% + var(--padding-x) * 2);margin-left:calc(-1 * var(--padding-x));object-fit:cover;object-position:left center;height:69px;display:block}.kv__inner{flex-direction:column;justify-content:flex-start;align-items:center;gap:32px;height:auto;padding-top:24px;padding-bottom:32px}.kv__content{text-align:center;width:100%;max-width:none}.kv__subtext{color:#fff;justify-content:center;gap:6px;margin-bottom:32px;font-size:10px}.kv__subtext-text{text-align:center}.kv__subtext-logo{background-color:#fff;width:92px;height:20px}.kv__heading{margin-bottom:0;font-size:20px}.kv__heading-accent{font-size:var(--font-size-sm)}.kv__btn-register-pc{display:none}.kv__sp-cta{flex-direction:column;gap:10px;width:295px;display:flex}.kv__sp-cta .kv__btn{width:100%;height:48px;font-size:var(--font-size-base)}.kv__sp-cta .kv__btn--search{color:var(--color-primary);background-color:#ffffffd9;background-image:none;border:1px solid #ffffffb3}.kv__sp-cta .kv__btn--search .kv__btn-icon{background-color:var(--color-primary);background-image:none;display:inline-block;-webkit-mask-image:url(../images/icon-search.svg);mask-image:url(../images/icon-search.svg);-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.kv__sp-cta .kv__btn--register{width:100%;font-size:var(--font-size-base)}.kv__sp-cta .kv__btn-icon{width:24px;height:24px}.job-search{display:none}.jobs-section{padding:30px 0}.job-search+.jobs-section{padding-top:60px}.jobs-section:has(+.strengths){padding-bottom:60px}.jobs-section__grid{grid-template-columns:1fr}.jobs-section__heading-main{font-size:22px}.jobs-section__heading-sub{font-size:16px}.jobs-section__divider{display:none}.jobs-section__meta{margin-left:auto}.jobs-section__update-date{font-size:var(--font-size-sm)}.jobs-section__more-link--pc{display:none}.jobs-section__more-link--sp{font-size:var(--font-size-sm);align-self:flex-end;display:inline-flex}.job-card__title{-webkit-line-clamp:3}.job-card__extra{padding-top:2px;padding-bottom:2px}.clients{border-bottom:none}.clients__inner{height:auto;margin-bottom:0;padding:20px 20px 0}.clients__list{grid-template-columns:repeat(4,1fr);gap:12px 16px;width:100%;display:grid}.clients__item{justify-content:center;align-items:center;display:flex}.clients__logo--kokuyo,.clients__logo--nbc,.clients__logo--nipponham,.clients__logo--yappli,.clients__logo--chatwork,.clients__logo--yamaki,.clients__logo--fif,.clients__logo--white-essence{width:100%;height:auto;max-height:36px}.strengths__kv{flex-direction:column;min-height:auto}.strengths__bounds{z-index:2}.strengths:before{top:10px;bottom:10px}.strengths__deco{width:83px}.strengths__photo-panel{pointer-events:none;width:100%;height:220px;margin-top:0;display:block;position:relative;top:10px;left:auto}.strengths__photo{mask-image:linear-gradient(#000 60%,#0000 100%);mask-composite:initial;-webkit-mask-composite:initial;-webkit-mask-image:linear-gradient(#000 60%,#0000 100%)}.strengths__text-panel{width:100%;max-width:none;padding:32px var(--padding-x);text-align:left;align-items:flex-start;padding-top:80px}.strengths__logo-mark{align-self:center}.strengths__heading{align-self:center;font-size:26px}.strengths__body{font-size:16px}.strengths__features{padding:20px 0 80px}.strengths__features-heading{gap:16px;font-size:24px}.strengths__features-grid{grid-template-columns:1fr;gap:40px}.feature-card__number{font-size:38px}.feature-card__title{font-size:20px}.feature-card--03 .feature-card__title{font-size:18px}.feature-card__body{font-size:16px}.strengths__cta{z-index:3;flex-direction:column;align-items:center;gap:16px;width:100%;margin-top:20px;position:relative}.strengths__cta-btn{width:100%;max-width:340px;height:68px;font-size:16px}.jobs-by-type{padding:40px 0}.jobs-by-type__grid{grid-template-columns:1fr}.jobs-by-type__more-link--pc{display:none}.jobs-by-type__more-link--sp{align-self:flex-end;font-size:12px;display:inline-flex}.job-filter{padding:40px 0}.job-filter__heading{text-align:left;font-size:22px}.search-form__row{grid-template-columns:1fr;min-height:auto}.search-form__label{border-bottom:1px solid var(--color-border);padding:10px 16px}.search-form__field{padding:14px 16px}.search-form__checkboxes{gap:8px 16px}.search-form__text-input,.search-form__native-select{height:40px;font-size:var(--font-size-sm)}.modal--open{align-items:flex-end;padding:0}.modal__dialog{border-radius:12px 12px 0 0;max-height:90vh;padding:32px 20px 24px;overflow-y:auto}.submodal__dialog{width:90%;height:70%;padding:30px 4%}.submodal--conditions .submodal__dialog{height:60%}.submodal__title{margin-top:40px;font-size:16px}.submodal__subtitle{font-size:14px}.submodal__submit{padding-top:13px;padding-bottom:13px}.submodal__check{flex:0 0 100%}.submodal__check span{word-break:normal}.submodal__check-all-label span{width:90%}}
/* ============================================================
   レビュー(0629) #3 SP: 「職種別で探す」職種別求人カードの横はみ出し対策
   症状: SP で職種別のカードが画面幅を超えて右側が見切れる（レスポンシブが効かない）。
   原因: body は display:flex;flex-direction:column。その flex item である .jobs-by-type
        系が既定 min-width:auto で min-content 幅まで縮まず、SP でカード(width:100%)が
        ビューポートを超過していた。
   対策: section→inner→category→grid→item→card の min-width:0 連鎖で flex/grid アイテムの
        縮小を許可。グリッドは標準構文 @media(max-width:768px) で 1 列固定（既存の range 構文
        @media(width<=768px) を古い環境でも確実に補完）。縮小許可のみのため PC へ非干渉。
   ============================================================ */
@media (max-width: 768px) {
  .jobs-by-type { min-width: 0; }
  .jobs-by-type__inner { min-width: 0; max-width: 100%; }
  .jobs-by-type__category { overflow-x: visible; min-width: 0; }
  .jobs-by-type__grid { grid-template-columns: 1fr; min-width: 0; }
  .jobs-by-type__item { min-width: 0; }
  .jobs-by-type .job-card { min-width: 0; max-width: 100%; }
}
