.sec-title{font-family:var(--en);font-weight:400;font-size:clamp(30px,3.6vw,46px);letter-spacing:.06em;color:var(--forest);line-height:1.1}
.sec-title small{display:block;font-family:var(--jp);font-weight:400;font-size:14px;letter-spacing:.24em;color:var(--moss);margin-top:12px}
/* ===== 募集要項 ===== */
.req-tabs{display:flex;gap:8px;margin-bottom:clamp(32px,4vw,48px)}
.req-tabs a{padding:12px 22px;border:1px solid var(--line);font-size:14px;letter-spacing:.1em;color:var(--ink-soft);transition:all .2s}
.req-tabs a:hover{border-color:var(--forest);color:var(--forest)}
.req{padding:0 0 clamp(72px,9vw,120px);scroll-margin-top:96px}
.req + .req{padding-top:clamp(72px,9vw,120px);border-top:1px solid var(--line)}
.req__in{display:grid;grid-template-columns:1fr 2.4fr;gap:clamp(32px,6vw,96px);align-items:start}
.req-table{display:grid;grid-template-columns:9em 1fr;font-size:14px;border-top:1px solid var(--line)}
.req-table dt,.req-table dd{padding:20px 0;border-bottom:1px solid var(--line);line-height:1.95}
.req-table dt{color:var(--moss);letter-spacing:.14em}
.req-table dd ul{list-style:none}
.req-table dd small{display:block;font-size:12px;color:var(--ink-soft);margin-top:4px}
.req-table .note{margin-top:8px;padding:10px 14px;background:rgba(255,255,255,.45);font-size:13px}
.req-comment{margin-top:32px;padding:24px 28px;background:var(--sand);font-size:14px;line-height:2}
.req-comment b{display:block;font-weight:500;font-size:12px;letter-spacing:.18em;color:var(--moss);margin-bottom:6px}
.req-entry{margin-top:36px;display:flex;flex-wrap:wrap;gap:16px 32px;align-items:center}
.btn-entry{display:inline-flex;align-items:center;gap:40px;padding:20px 28px;background:var(--forest);color:#F2ECDF;font-size:15px;letter-spacing:.14em;transition:background .3s}
.btn-entry:hover{background:#31493C}
.btn-entry svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.3}
.other-jobs{padding:clamp(56px,7vw,88px) 0;background:var(--sand)}
.other-jobs ul{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}
.other-jobs a{display:flex;justify-content:space-between;align-items:center;padding:20px 0;border-bottom:1px solid var(--line);font-size:15px;letter-spacing:.1em}
.other-jobs a:hover{color:var(--moss)}
.other-jobs svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.3}
.other-jobs h2{font-family:var(--en);font-weight:400;font-size:clamp(22px,2.4vw,28px);letter-spacing:.08em;color:var(--forest)}
@media (max-width:860px){
  .req__in{grid-template-columns:1fr}
  .req-table{grid-template-columns:6.5em 1fr}
  .other-jobs ul{grid-template-columns:1fr;gap:0}
}
