#career {
  --r-yellow:var(--c-kariyasu);
  --r-brown:#887860;
  --r-darkbrown:#7A6A56;
}
*:focus {outline:none;}
.u-clear {zoom:1;}

/*求人フィルタ（絞り込み機能）*/

#job-filter {
  margin: 10px 0 8px;
  padding: 40px 0;
}

#filterForm {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px 24px;
  align-items: start;
}

#filterForm>div {
  padding: 6px 8px 10px;
}

#filterForm h3 {
  margin: 0 0 6px;
  font-family: "A1明朝";
  font-size: 180%;
  letter-spacing: .02em;
}

#filterForm label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 4px 12px 4px 0;
  line-height: 1.8;
  cursor: pointer;
  user-select: none;
  font-size: 1.3rem;
}

#filterForm input[type="checkbox"] {
  inline-size: 20px;
  block-size: 20px;
  accent-color: var(--c-usumoegi);
}

#result-count {
  margin: 6px 0 0 auto;
  padding: 0 .5em;
  width: fit-content;
  font-size: 1.1em;
  color: var(--c-suzu);
}

#result-count.is-empty {
  background-color: var(--c-kariyasu);
  color: var(--c-nureba);
}

@media screen and (max-width: 767px) {
  #filterForm {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  #job-filter {
    padding: 0 10px;
  }

  #job-filter .wrapper {
    padding: 1em 0;
  }

  #filterForm h3 {
    font-size: 140%;
  }

  #filterForm label {
    font-size: 1.0rem;
  }

  #filterForm input[type="checkbox"] {
    accent-color: var(--c-usumidori);
  }

  #result-count {
    margin: 6px auto 0 0;
    font-size: .9em;
    color: var(--c-nureba);
  }
}

/*求人一覧*/
.list-inner {margin-bottom:0; border-top:solid 1px white;}
.list-item {padding:40px 0 70px; width:100%; border-bottom:1px solid var(--c-nureba);}
.list-item .icon-new {background:var(--yellow); color:var(--r-darkbrown); font-weight:600;}
.id-hidden {display: inline; color:var(--c-sakura)/*same as bg color*/;}
.time {font-size:1.3em; color:var(--c-suzu);}
.tag-wrap {float:right; width:80%; text-align:right;}
.tag-wrap .tag-list {margin-bottom:1.5em;}
.tag-wrap .tag-list .tag-item {display:inline-block; margin:0 0 5px 8px; padding:9px 0 8px; width:140px; line-height:1; text-align:center; font-size:1.3rem; letter-spacing:.040px; background-color:var(--c-ama); color: var(--c-nureba);}
.content .heading {display:inline-block; width:60%;}
.content .heading .title {font-size:26px; font-weight:600; letter-spacing:.2; font-family:'EB Garamond', serif;}
.content .heading .detail {margin-top:13px; font-size:0; letter-spacing:0;}
.content .heading .detail .detail-item {margin-right:23px; display:inline-block; font-size:1.3rem; color:var(--c-usumidori);}
.content .heading .detail .detail-item .detail-item-title {padding:0 5px 0 0; letter-spacing:.40px; color: var(--c-nureba);}
.content .heading .detail .detail-item .detail-item-content {padding:0 0 0 5px; letter-spacing:.20px/*1em*/; color: var(--c-nureba);}
details {margin-bottom:10px;}
details summary {list-style:none; cursor:pointer; -webkit-tap-highlight-color:rgba(0,0,0,0);}
details summary::-webkit-details-marker {display:none;}
.content .btn-box {margin-top:-4rem; display:block; float:right; width:20%; line-height:1.5; text-align:right; font-family:'EB Garamond', serif;}
.content details[open] .btn-box {margin-top:-8rem;}
.content .btn-box .btn {position:relative; display:inline-block; margin-top:4px; padding:.5em; width:150px; height:fit-content; line-height:fit-content; border-radius:40px; font-size:1.2rem; font-weight:600; letter-spacing:.3em; text-align:center; text-decoration:none; transition:all .5s ease;}
.content .btn-box .btn-black {background-color: var(--c-usumoegi); color:var(--c-nureba);}
.content .btn-box .btn-black a {color:var(--c-nureba);}
.content .btn-box .btn-black:hover {background-color:var(--c-kariyasu); color: var(--c-nureba);}
.content .apply {margin-top:inherit;}
.content .apply:hover {border-color:var(--r-yellow); background-color:transparent;}
.content .apply:hover a {color: var(--c-nureba);}
.content .desc-box {margin:40px 0 20px; padding:40px; width:100%; border:solid 1px var(--c-usumidori); color:var(--c-nureba);}
.content details[open] .desc-box {animation:accordion 0.4s linear;}
.content details:not([open]) .desc-box {opacity:0; height:0;}
.content .desc-box .desc {padding:40px 0; font-size:1.3rem; color: var(--c-nureba);}
.content .desc-img-container {margin:1em auto; padding:0; width:100%; display:flex; align-items:center; justify-content:center; flex-wrap:wrap;}
.content .desc-img-container .desc-img {margin:1em; height:200px; width:auto; border-radius:10%;}
.content .desc-box .desc-data {border-collapse:separate; border-spacing:0 40px;}
.content .desc-box .desc-data tr {margin:0; width:100%;}
.content .desc-box .desc-data tr th {padding-top:20px/*1em*/; width:8em; vertical-align:top; text-align:left; font-size:1.3rem; font-weight:normal; color: var(--c-nureba);}
.content .desc-box .desc-data tr td {margin-left:20px/*1em*/; padding:20px/*1em*/ 40px 0;  width:auto; vertical-align:top; text-align:left; font-size:1.3rem; font-weight:normal; color: var(--c-nureba);}
.content .desc-box .desc-data tr td .step_icon {margin:0 5px; padding:0 5px 2px; background:var(--c-kariyasu); border-bottom-right-radius:10px; color:#604C3F; font-family:"A1明朝";}
.content .desc-box .desc-data tr td .address-for-cv {margin:40px 0 40px 40px; padding:20px/*1em*/; display:block; width:fit-content; border:solid 1px var(--c-nureba);}
.content .desc-box .desc-data .desc-data-application td a {padding:0 5px; text-decoration:underline;}
.content .desc-box .desc-data .desc-data-application td a:hover {color:var(--r-yellow);}
.content .desc-box .desc-data tr td .entry-url {margin:0 5px; padding:1px 5px; line-height:14px; text-decoration:none; border-radius:14px; background:var(--c-usumoegi); color:var(--c-nureba); transition:all .2s ease;}
.content .desc-box .desc-data tr td .entry-url:hover {background-color: var(--c-kariyasu); color:var(--c-nureba); opacity: 1;}
/* 印刷画面専用 */
.printer-notice {margin:1em 0; padding: 0 0; font-size:1.2em; display:none;}
.box-printer-qr { margin:0 0 0 auto; padding:1em 0; width:100%; max-width:160px; height:auto; }
.box-printer-qr img { margin:0; padding:0; width:100%; height:auto;}
@media screen and (max-width:1024px){
  .list-item {padding:30px 0;}
  .list-item .icon-new {padding-top:4px; vertical-align:bottom; font-size:11px; line-height:12px;}
  .content .heading .title {font-size:1.4rem;}
  .content .heading .detail .detail-item {display:block; line-height:40px; font-size:1.1rem;}
  .time {line-height:1; vertical-align:bottom; font-size:1rem;}
  .tag-wrap {width:70%;}
  .tag-wrap .tag-list .tag-item {width:30%; font-size:1rem; background-color: var(--c-ama);}
  .content .heading {margin:0 0 20px/*1em*/; width:100%;}
  .content .btn-box {margin:0; float:none; width:100%;}
  .content details[open] .btn-box {margin:0;}
  .content .btn-box .btn {width:fit-content; min-width:90px; font-size:.9rem; letter-spacing:.20px/*1em*/;}
  .content .desc-box {margin:20px 0 0; padding:20px; width:calc(100% - 40px);}
  .content .desc-box .desc {padding:20px/*1em*/ 0 40px; font-size:1.1rem;}
  .content .desc-img-container .desc-img {margin:0.5em; width:calc(50% - 1em); height:auto;}
  .content .desc-box .desc-data {border-spacing:0 0;}
  .content .desc-box .desc-data tr {margin:0; width:100%;}
  .content .desc-box .desc-data tr th {display:block; padding-top:0; text-align:left; font-size:1.1rem; font-weight:600;}
  .content .desc-box .desc-data tr td {padding-left:0; padding:20px 0; display:block; text-align:left; font-size:1.0rem;}
  }
@keyframes accordion {
  0% {opacity:0; height:0;}
  70% {opacity:0; height:200px;}
  100% {opacity:1; height:auto;}
}

  /* 印刷画面用 */
  @media print {
    #head,
    #title-brown,
    #circular-navi,
    .list-item:has(details:not([open])), /* 閉じている details を子孫に持つ .list-item */
    .btn-box,
    .pageTop,
    footer
    {
      display: none!important;
    }

    #header {max-height: 250px;}
    .content .heading {width: 100%;}
    .content .desc-box {width:calc(100% - 40px * 2);}
    .content .desc-box .desc-data {border-spacing: 0 0;}
    .printer-notice {display: block;}

  }
