/* /recruit/ — 求人ページ（style.css の部品に合わせた追加分のみ） */
.prose .recruit-tags { list-style: none; display: flex; flex-wrap: wrap; gap: .6em; margin: 1.6em 0 0; padding: 0; }
.recruit-tags li { font-family: var(--font-ui); font-size: .9rem; letter-spacing: .08em; padding: .45em 1em;
  border: 1px solid var(--color-dark-roast); color: var(--color-dark-roast); background: transparent; }
.recruit-terms { max-width: 40em; }
.recruit-terms dd { text-align: left; }
.recruit ol { margin: 1.3em 0 1.3em 1.3em; max-width: 40em; }
.recruit ol li { margin: .5em 0; }

.recruit-form { max-width: 40em; margin: 1.5em 0 2em; font-family: var(--font-ui); }
.recruit-form fieldset { border: 0; margin: 0 0 1.4em; padding: 0; }
.recruit-form legend { font-weight: 700; margin-bottom: .5em; }
.recruit-form > label { display: block; font-weight: 700; margin: 0 0 1.4em; }
.recruit-form input[type="text"], .recruit-form input[type="email"], .recruit-form input[type="tel"], .recruit-form textarea {
  display: block; width: 100%; margin-top: .45em; padding: .7em .8em; font: inherit; font-weight: 400;
  color: var(--color-text-dark); background: #fff; border: 1px solid var(--color-line-light); border-radius: 2px; }
.recruit-form input:focus-visible, .recruit-form textarea:focus-visible { outline: 2px solid var(--color-light-roast); outline-offset: 1px; }
.recruit-form .choice { display: flex; gap: .6em; align-items: flex-start; font-weight: 400; margin: .5em 0; }
.recruit-form .choice input { margin-top: .35em; accent-color: var(--color-commerce); }
.recruit-form .consent { margin: 1.6em 0 1em; font-size: .9rem; }
.recruit-form .req { display: inline-block; margin-left: .6em; font-size: .72rem; font-weight: 700; color: #fff;
  background: var(--color-dark-roast); padding: .1em .5em; vertical-align: .1em; }
.recruit-form .btn--buy { margin: .5em 0 0; cursor: pointer; }
.recruit-form .hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
