@charset "utf-8";
/* モーダル コンテンツエリア */
.tenishokuModal {
  box-sizing: border-box;
  width: 950px;
  margin: 0;
  padding: 30px 30px 45px;
  background-color: #fff;
  position: absolute;/*fixed*/
  z-index: 9999;
  font-size: 0;
  display: none;
}

/* モーダル 背景エリア */
.tenishokuModalCover {
  display: none;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  position: absolute;/*fixed;*/
  top: 0;
  left: 0;
  bottom: 0;
  z-index: 9998;
  /*overflow-y: auto;*/
}

.tenishokuModal .modalHeader {
  box-sizing: border-box;
  width: 100%;
  display: block;
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #d9d9d9;
  position: relative;
}

.tenishokuModal .modalHeader h2 {
  font-size: 18px;
  font-weight: bold;
  color: #0f3160;
}

.tenishokuModal .modalHeader a.closeModal {
  position: absolute;
  top: 0;
  right: 0;
  font-size: 14px;
  text-decoration: none;
}

.tenishokuModal .modalHeader a.closeModal span {
  color: #0f3160;
  font-weight: bold;
  font-size: 120%;
}

.tenishokuModal h3 {
  background: #0f3260;
  color: #fff;
  padding: 0.5em;
  margin: 0;
  font-size: 14px;
}

.tenishokuModal .modalFooter {
  padding-top: 50px;
  text-align: center;
}

.tenishokuModal .reset {
  box-sizing: border-box;
  background: #d8d8d8;
  color: #000;
  font-weight: bold;
  font-size: 18px;
  width: 300px;
  height: 50px;
  line-height: 50px;
  display: inline-block;
  vertical-align: top;
  text-decoration: none;
  border-radius: 4px;
  margin-right: 50px;
  -webkit-transition: all .2s;
  transition: all .2s;
  border: 1px solid #d8d8d8;
}

.tenishokuModal .submit {
  box-sizing: border-box;
  background: #de0002;
  color: #fff;
  font-weight: bold;
  font-size: 18px;
  width: 300px;
  height: 50px;
  line-height: 50px;
  display: inline-block;
  vertical-align: top;
  text-decoration: none;
  border-radius: 4px;
  -webkit-transition: all .2s;
  transition: all .2s;
  border: 1px solid #de0002;
}

.tenishokuModal .reset:hover {
  color: #888;
  border-color: #888;
  background: #fff;
}

.tenishokuModal .submit:hover {
  color: #de0002;
  background: #fff;
}

/* 勤務地 */

.tenishokuModal .workplaces .step1 {
  box-sizing: border-box;
  display: inline-block;
  width: 300px;
  margin-right: 10px;
  vertical-align: top;
  border: 2px solid #d9d9d9;
  font-size: 14px;
}

.tenishokuModal .workplaces .step1 ul {
  margin: 0;
  padding: 0;
}

.tenishokuModal .workplaces .step1 ul li {
  position: relative;
  border-bottom: 1px solid #ebebeb;
  padding: 0.5em;
  margin: 0;
  cursor: pointer;
}

.tenishokuModal .workplaces .step1 ul li:last-of-type {
  border-bottom: none;
}

.tenishokuModal .workplaces .step1 ul li span {
  position: absolute;
  top: 5px;
  right: 5px;
  background: #13304c;
  color: #fff;
  font-size: 11px;
  padding: 4px 10px;
  border-radius: 20px;
  text-align: center;
  display: none;
}

.tenishokuModal .workplaces .step1 ul li.hasSelection span {
  display: inline-block;
}

.tenishokuModal .workplaces .scrollBlock {
  overflow: auto;
  /**/
  max-height: 500px;
  /**/
}

.tenishokuModal .workplaces .step2 {
  box-sizing: border-box;
  display: inline-block;
  width: 580px;
  vertical-align: top;
  border: 2px solid #d9d9d9;
  font-size: 14px;
}

.tenishokuModal .workplaces .step2 dl {
  margin: 0;
  padding: 0;
  font-size: 0;
}

.tenishokuModal .workplaces .step2 dl dt {
  background: #ebebeb;
  font-weight: bold;
  font-size: 14px;
  margin: 0;
  padding: 0.5em 0.5em;
  position: relative;
}

.tenishokuModal .workplaces .step2 dl dt label {
  display: block;
  cursor: pointer;
  font-size: 14px;
}

.tenishokuModal .workplaces .step2 dl dt label input {
  margin-right: 0.5em;
}

.tenishokuModal .workplaces .step2 dl dt span {
  background: #13304c;
  color: #fff;
  font-size: 12px;
  position: absolute;
  right: 50px;
  top: calc(50% - 12px);
  padding: 2px 10px;
  border-radius: 10px;
  display: none;
}

.tenishokuModal .workplaces .step2 dl dt a.toggleCategory {
  color: #888;
  font-size: 18px;
  position: absolute;
  right: 10px;
  top: calc(50% - 18px);
  padding: 5px 5px;
  text-decoration: none;
  display: none;
}

.tenishokuModal .workplaces .step2 dl dd {}

.tenishokuModal .workplaces .step2 dl dd ul {
}

.tenishokuModal .workplaces .step2 dl dd ul li {
  box-sizing: border-box;
  margin: 0;
  width: 100%;
  border-bottom: 1px solid #d9d9d9;
}

.tenishokuModal .workplaces .step2 dl dd ul li:last-of-type {
  border-bottom: none;
}

.tenishokuModal .workplaces .step2 dl dd ul li label {
  position: relative;
  padding: 0.5em 0.5em 0.5em 0.5em;
  font-size: 14px;
  line-height: 1.4;
  display: block;
  cursor: pointer;
}

.tenishokuModal .workplaces .step2 dl dd ul li label input {
  margin-right:0.5em;
}

/* 職種 */

.tenishokuModal .occupations .step1 {
  box-sizing: border-box;
  display: inline-block;
  width: 300px;
  margin-right: 10px;
  vertical-align: top;
  border: 2px solid #d9d9d9;
  font-size: 14px;
}

.tenishokuModal .occupations .step1 dl {
  margin: 0;
  padding: 0;
}

.tenishokuModal .occupations .step1 dl dt {
  background: #ebebeb;
  color: #000;
  margin: 0;
  padding: 0.65em 0.5em;
  font-weight: bold;
  cursor: pointer;
}

.tenishokuModal .occupations .step1 dl dd {
  position: relative;
  border-bottom: 1px solid #d9d9d9;
  padding: 0.5em;
  margin: 0;
  cursor: pointer;
}

.tenishokuModal .occupations .step1 dl dd:last-of-type {
  border-bottom: none;
}

.tenishokuModal .occupations .step1 dl dd span {
  position: absolute;
  top: 5px;
  right: 5px;
  background: #13304c;
  color: #fff;
  font-size: 11px;
  padding: 4px 10px;
  border-radius: 20px;
  text-align: center;
  display: none;
}

.tenishokuModal .occupations .step1 dl dd.hasSelection span {
  display: inline-block;
}

.tenishokuModal .occupations .scrollBlock {
  overflow: auto;
  /**/
  max-height: 500px;
  /**/
}

.tenishokuModal .occupations .step2 {
  box-sizing: border-box;
  display: inline-block;
  width: 580px;
  vertical-align: top;
  border: 2px solid #d9d9d9;
  font-size: 14px;
}

.tenishokuModal .occupations .step2 dl {
  margin: 0;
  padding: 0;
  font-size: 0;
}

.tenishokuModal .occupations .step2 dl dt {
  background: #ebebeb;
  /*#13304c;*/
  /*color: #fff;*/
  margin: 0;
  padding: 0.65em 0.5em;
  font-weight: bold;
  font-size: 14px;
}

.tenishokuModal .occupations .step2 dl dt.topCategory {
  background: #ebebeb;
  color: #000;
  font-size: 20px;
  position: relative;
  display: none;
  /**/
}

.tenishokuModal .occupations .step2 dl dt.topCategory span {
  background: #13304c;
  color: #fff;
  font-size: 12px;
  position: absolute;
  right: 50px;
  top: calc(50% - 12px);
  padding: 2px 10px;
  border-radius: 10px;
}

.tenishokuModal .occupations .step2 dl dt.topCategory a.toggleCategory {
  color: #888;
  font-size: 18px;
  position: absolute;
  right: 10px;
  top: calc(50% - 18px);
  padding: 5px 5px;
  text-decoration: none;
}

.tenishokuModal .occupations .step2 dl dd {}

.tenishokuModal .occupations .step2 dl dd ul {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.tenishokuModal .occupations .step2 dl dd ul li {
  box-sizing: border-box;
  margin: 0;
  width: 50%;
  border-bottom: 1px solid #d9d9d9;
}

.tenishokuModal .occupations .step2 dl dd ul li.bottom {
  border-bottom: none;
}

.tenishokuModal .occupations .step2 dl dd ul li label {
  position: relative;
  padding: 0.5em 0.5em 0.5em 2em;
  font-size: 14px;
  line-height: 1.4;
  display: block;
  cursor: pointer;
}

.tenishokuModal .occupations .step2 dl dd ul li label input {
  position: absolute;
  top: 0.5em;
  left: 0.5em;
}
