.recruitJobs { padding:64px 24px 48px; color:#252f35; background:#f5f8f9; line-height:1.9; }
.recruitJobs__inner {max-width:1100px;margin:auto;}
.recruitJobs__eyebrow {color:#00698c;letter-spacing:.16em;font-weight:bold;}
.recruitJobs h2 {font-size:3.4rem;font-weight:bold;margin:8px 0 20px;line-height:1.5;}
.recruitJobs__lead {margin-bottom:32px;}
.recruitJobs__cards {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:64px;}
.recruitJobs__card {display:block;padding:26px;background:white;color:inherit;border:1px solid #d8e4e8;text-decoration:none;}
.recruitJobs__card:hover {border-color:#00698c;background:#edf6f9;}
.recruitJobs__type {display:inline-block;padding:3px 12px;background:#e6f0f4;color:#00698c;font-weight:bold;font-size:1.3rem;}
.recruitJobs h3 {font-size:2.4rem;line-height:1.5;font-weight:bold;margin:16px 0;}
.recruitJobs__card h3 {font-size:2rem;}
.recruitJobs__pay {color:#00698c;font-size:2rem;font-weight:bold;margin:12px 0;}
.recruitJobs__more {display:block;color:#00698c;font-weight:bold;margin-top:20px;}
.recruitJobs__detail,.recruitJobs__common {padding:36px;background:#fff;margin-bottom:32px;scroll-margin-top:80px;}
.recruitJobs dl {margin-top:28px;}
.recruitJobs dl>div {display:grid;grid-template-columns:180px minmax(0,1fr);border-top:1px solid #dce5e9;padding:18px 0;gap:24px;}
.recruitJobs dt {font-weight:bold;color:#00698c;}
.recruitJobs dd {margin:0;overflow-wrap:anywhere;}
.recruitJobs .btn a {width:320px;max-width:100%;height:auto;min-height:50px;line-height:1.6;padding:12px;box-sizing:border-box;margin:24px auto 0;}
.recruitJobs__note {font-size:1.3rem;color:#53656d;line-height:1.8;margin-top:16px;}
.recruitJobs a:focus-visible {outline:3px solid #00698c;outline-offset:4px;}
.recruitApplication {padding:56px 24px;scroll-margin-top:72px;}
.recruitApplication .inner {max-width:1000px;}
.recruitApplication__intro {margin-bottom:24px;line-height:1.8;}
@media(max-width:770px){.recruitJobs{padding:40px 20px;}.recruitJobs h2{font-size:2.5rem;}.recruitJobs__cards{grid-template-columns:1fr;margin-bottom:36px;}.recruitJobs__detail,.recruitJobs__common{padding:24px 18px;}.recruitJobs dl>div{grid-template-columns:1fr;gap:8px;}.recruitJobs h3{font-size:2.1rem;}.recruitApplication{padding:40px 20px;}}

/* 参考ページに合わせた余白・カード・募集要項 */
.recruitJobs { background:#fff;padding:88px 28px; }
.recruitJobs__inner { max-width:1080px; }
.recruitJobs h2 {font-size:3.6rem;line-height:1.7;}
.recruitJobs__eyebrow,.recruitJobs__sectionTitle>p {font-size:1.2rem;color:#00698c;font-weight:bold;letter-spacing:.16em;}
.recruitJobs__lead {margin-top:24px;}
.recruitJobs__badges {display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 72px;list-style:none;padding:0;}
.recruitJobs__badges li {border:1px solid #d6e2e6;padding:8px 14px;color:#00698c;font-size:1.2rem;}
.recruitJobs__sectionTitle {margin:56px 0 32px;}
.recruitJobs__sectionTitle h2 {font-size:2.8rem;margin:16px 0 10px;}
.recruitJobs__sectionTitle span {color:#647077;font-size:1.4rem;}
.recruitJobs__card {padding:28px 24px;}
.recruitJobs__card h3 {min-height:65px;margin:28px 0;font-size:1.9rem;}
.recruitJobs__type {background:none;padding:0 0 8px;border-bottom:2px solid #00698c;}
.recruitJobs__card .recruitJobs__pay {font-size:2.1rem;}
.recruitJobs__card p:not(.recruitJobs__pay) {font-size:1.4rem;}
.recruitJobs__life {padding:40px;background:#f2f7f8;margin:64px 0;}
.recruitJobs__life h2 {font-size:2.8rem;}
.recruitJobs__life ul {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;list-style:none;padding:0;margin-top:32px;}
.recruitJobs__life li {font-size:1.4rem;}
.recruitJobs__life strong {display:block;margin-bottom:10px;color:#00698c;}
.recruitJobs__detail {border:1px solid #dce5e9;padding:0;margin-bottom:40px;}
.recruitJobs__detail>header {padding:32px 36px;background:#f4f8f9;border-bottom:1px solid #dce5e9;}
.recruitJobs__detail h3 {font-size:2.7rem;}
.recruitJobs__columns {display:grid;grid-template-columns:32% minmax(0,1fr);gap:36px;padding:36px;}
.recruitJobs__columns aside {font-size:1.4rem;}
.recruitJobs__columns h4 {font-weight:bold;font-size:1.6rem;margin:0 0 16px;color:#00698c;}
.recruitJobs__columns h4:not(:first-child) {margin-top:32px;}
.recruitJobs__columns ul {padding-left:20px;list-style:disc;margin-bottom:24px;}
.recruitJobs__columns dl {margin:0;font-size:1.4rem;}
.recruitJobs__columns dl>div {grid-template-columns:120px minmax(0,1fr);gap:18px;}
.recruitJobs .btn a {background:#00698c;color:white;font-size:1.4rem;line-height:1.7;}
.recruitJobs .btn a:hover {background:#004c66;}
.recruitJobs__common {padding:32px 0;}
.recruitJobs__cta {text-align:center;padding:48px 24px;background:#f2f7f8;margin-top:48px;}
.recruitJobs__cta h2 {font-size:2.8rem;}
@media(max-width:770px){.recruitJobs{padding:44px 20px;}.recruitJobs h2{font-size:2.6rem;}.recruitJobs__columns{grid-template-columns:1fr;padding:24px 18px;gap:32px;}.recruitJobs__columns dl>div{grid-template-columns:1fr;gap:8px;}.recruitJobs__detail>header{padding:24px 18px;}.recruitJobs__life{padding:28px 20px;}.recruitJobs__life ul{grid-template-columns:1fr;}.recruitJobs__card h3{min-height:0;margin:20px 0;}.recruitJobs__badges{margin-bottom:40px;}}
