﻿.breadcrumb {
  padding: 20px 0px;
}
.breadcrumb:after {
  content: "";
  display: block;
  clear: both;
}
.breadcrumb li {
  display: inline-block;
  float: left;
}
.breadcrumb li::after {
  font-family: "fontello";
  content: "\f105";
  color: #262927;
  margin: 0px 10px;
  text-decoration: none;
}
.breadcrumb li:last-of-type::after {
  display: none;
}
.breadcrumb li > * {
  display: inline-block;
  font-size: 1.4rem;
  color: #262927;
}
.breadcrumb li.current > * {
  color: #022f8b;
}
.no-touch .breadcrumb a:hover {
  color: #a9a8a8;
}
button,
option,
select,
textarea,
input[type="button"],
input[type="submit"],
input[type="number"],
input[type="email"],
input[type="tel"],
input[type="text"],
input[type="password"],
input[type="select"],
input[type="option"],
input[type="checkbox"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  appearance: none;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
  border: none;
  outline: 0;
  margin: 0;
  background: #fff;
}
input[type="radio"],
input[type="checkbox"] {
  display: none;
}
select {
  text-indent: 0.01px;
  text-overflow: "";
}
select::-ms-expand {
  display: none;
}
.form-select {
  display: inline-block;
  position: relative;
  width: 350px;
  height: 38px;
  border: 1px solid #a9a8a8;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  border-radius: 4px;
  background-color: #ecf7fb;
  margin-left: 20px;
}
.form-select:first-child {
  margin-left: 0px;
}
.form-select:after {
  position: absolute;
  display: block;
  content: "";
  width: 0;
  height: 0;
  border-top: 6px solid transparent;
  border-left: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #333;
  top: 50%;
  right: 10px;
  margin-top: -3px;
  pointer-events: none;
}
.form-select select {
  width: inherit;
  height: inherit;
  padding: 0 10px;
  border: none;
  font-size: 1.4rem;
  position: relative;
  background-color: #ecf7fb;
}
.form-radio input[type="radio"] + label {
  position: relative;
  display: inline-block;
  font-size: 1.4rem;
  cursor: pointer;
  padding: 9px 5px 8px 28px;
  margin-right: 0px;
  white-space: nowrap;
}
.form-radio input[type="radio"] + label::before,
.form-radio input[type="radio"] + label::after {
  position: absolute;
  display: block;
  content: "";
  top: 50%;
  left: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
.form-radio input[type="radio"] + label::before {
  width: 22px;
  height: 22px;
  margin-top: -12px;
  background: #ecf7fb;
  border: 1px solid #a9a8a8;
}
.form-radio input[type="radio"] + label::after {
  left: 6px;
  width: 10px;
  height: 10px;
  margin-top: -6px;
  background: #f4f4f4;
}
.form-radio input[type="radio"]:checked + label::after {
  background: #022f8b;
}
.form-checkbox label {
  position: relative;
  display: inline-block;
  font-size: 1.4rem;
  cursor: pointer;
  padding: 6px 5px 8px 30px;
}
.form-checkbox label::before,
.form-checkbox label::after {
  position: absolute;
  display: block;
  content: "";
  top: 50%;
  left: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.form-checkbox label::before {
  width: 20px;
  height: 20px;
  margin-top: -12px;
  background: #ecf7fb;
  border: 1px solid #a9a8a8;
  -webkit-border-radius: 2;
  -moz-border-radius: 2;
  -ms-border-radius: 2;
  border-radius: 2;
}
.form-checkbox input[type="checkbox"] + label::after {
  width: 24px;
  height: 24px;
  top: 2px;
}
.form-checkbox input[type="checkbox"]:checked + label::after {
  position: absolute;
  display: block;
  font-family: "fontello";
  content: "\e805";
  font-size: 1.8rem;
  color: #022f8b;
  left: 1px;
  top: -1px;
}
textarea,
input[type="number"],
input[type="text"],
input[type="password"] {
  width: 90%;
  padding: 10px 15px;
  font-size: 1.4rem;
  font-family: "fontello";
  border: 1px solid #a9a8a8;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  border-radius: 4px;
}
textarea {
  height: 200px;
}
textarea:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
input[type="text"]:focus,
input[type="password"]:focus {
  border: 1px solid #5bc9d9;
}
section.form-area {
  padding: 15px;
}
section.form-area option,
section.form-area label {
  font-size: 1.4rem;
}
section.form-area ol.flex li,
section.form-area ol.float li {
  margin-right: 10px;
}
section.form-area ol.flex li:last-child,
section.form-area ol.float li:last-child {
  margin-right: 0px;
}
section.form-area table {
  width: 100%;
  margin-top: 15px;
}
section .arrow,
section .bt-area {
  text-align: center;
  margin-top: 20px;
}
section .bt-area .bt,
section .bt-area .submit {
  padding: 20px 60px;
  box-shadow: 1px 1px 0px 0px #944c18;
}
ul.error li {
  color: #9f0202;
}
.required {
  position: relative;
}
.required:after {
  position: absolute;
  right: 10px;
  color: #9f0202;
  content: "※必須";
  font-size: 1.2rem;
  top: 22px;
}
.required.requiredpadBtm:after {
  top: 37px;
}
.required.requiredpad5per:after {
  top: 60px;
}
.required.requiredpad15per:after {
  top: 80px;
}
.required.requiredpad40per:after {
  top: 165px;
}
.pagination {
  background-color: #f1f1f1;
  padding: 10px;
  margin-bottom: 20px;
  width: 760px;
}
.pagination .search-number {
  font-size: 3rem;
  font-family: "Roboto", sans-serif;
}
.pagination .search-number span {
  font-size: 1.5rem;
  font-family: "Noto Sans JP", "メイリオ", Meiryo, "Hiragino Sans",
    "ヒラギノ角ゴシック", YuGothic, "Yu Gothic", "ＭＳ Ｐゴシック", "MS PGothic";
  padding-left: 5px;
}
.pagination .search-page-na {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}
.pagination .search-page-na .page-na-bt a {
  padding: 10px;
  background-color: #fff;
  text-decoration: none;
}
.pagination .search-page-na .page-na-bt a.prev:before {
  font-family: "fontello";
  content: "\f104";
  color: #022f8b;
  padding-right: 10px;
}
.pagination .search-page-na .page-na-bt a.next:after {
  font-family: "fontello";
  content: "\f105";
  color: #022f8b;
  padding-left: 10px;
}
.pagination .search-page-na .no-select-prev {
  background-color: #b0b0b0;
  padding: 10px;
  color: #696d65;
}
.pagination .search-page-na .no-select-prev:before {
  font-family: "fontello";
  content: "\f104";
  color: #696d65;
  padding-right: 10px;
}
.pagination .search-page-na .no-select-next {
  background-color: #b0b0b0;
  padding: 10px;
  color: #696d65;
}
.pagination .search-page-na .no-select-next:after {
  font-family: "fontello";
  content: "\f105";
  color: #696d65;
  padding-left: 10px;
}
.pagination .search-page-na .page-na-number {
  padding: 0 20px;
}
#sort,
#sort_block {
  width: 760px;
  padding: 10px;
  margin-bottom: 20px;
}
#sort ul,
#sort_block ul {
  justify-content: center;
}
#sort ul li,
#sort_block ul li {
  margin-left: 10px;
}
#sort ul li a,
#sort_block ul li a {
  border: 1px solid #a9a8a8;
  padding: 5px 10px;
  text-decoration: none;
}
#sort ul li a:before,
#sort_block ul li a:before {
  font-family: "fontello";
  content: "\f105";
  color: #022f8b;
  padding-right: 10px;
}
#sort ul li.sort-title,
#sort_block ul li.sort-title {
  background-color: #f1f1f1;
  padding: 5px 10px;
}
#search_header,
#sort_header {
  position: relative;
  padding: 10px 10px;
}
#search_header:after,
#sort_header:after {
  content: "－";
  font-size: 1.6rem;
  line-height: 28px;
  color: #022f8b;
  background-color: #fff;
  top: 8px;
  right: 10px;
  position: absolute;
  padding: 0px 2px;
  width: 22px;
  text-align: center;
  border-radius: 4px;
}
#search_header.closed:after,
#sort_header.closed:after {
  content: "＋";
}
.company-list article {
  background-color: rgba(255, 255, 255, 0.8);
  box-shadow: 0px 0px 6px 3px #e0e0e0;
  padding: 10px;
  margin-bottom: 40px;
}
.company-list article:first-child {
  margin-top: 0px;
}
.company-list article .comp-list-info {
  display: flex;
  justify-content: space-between;
  color: #022f8b;
  background-color: #ecf7fb;
  padding: 10px;
  margin-bottom: 10px;
}
.company-list article .comp-list-info .comp-list-name {
  font-size: 1.8rem;
  width: 80%;
}
.company-list article .comp-list-info .comp-list-data {
  padding-left: 10px;
  color: #262927;
}
.company-list article .box-l,
.company-list article .box-r {
  background-color: #f1f1f1;
  padding: 10px;
}
.company-list article .box-l {
  width: 455px;
}
.company-list article .box-l .industry-list-title {
  width: 50px;
}
.company-list article .box-r {
  position: relative;
  margin-left: 10px;
  width: 300px;
}
.company-list article .box-r .comp-list-area {
  background-color: #022f8b;
  color: #fff;
  padding: 5px 10px;
  position: absolute;
  top: 0;
  left: 0;
}
.company-list article .box-r .comp-list-icon {
  margin-top: 40px;
  font-size: 1.2rem;
  font-weight: normal;
}
.company-list article .box-r .comp-list-icon ul {
  flex-wrap: wrap;
}
.company-list article .box-r .comp-list-icon ul li {
  background-color: #fff;
  padding: 3px 5px;
  margin-left: 5px;
  margin-bottom: 5px;
  border: 1px solid #a9a8a8;
}
.company-list article .box-r .comp-list-icon ul.icon01 li {
  color: #9f0202;
  line-height: 1.45;
}
.company-list article .box-r .comp-list-icon ul.icon01 li span {
  font-size: 1.1rem;
}
#page section h2 {
  background-color: #022f8b;
  color: #fff;
  font-size: 2.4rem;
  margin-bottom: 0;
}
#page section h3 {
  background-color: #ecf7fb;
  border-top: 2px solid #022f8b;
  font-size: 2rem;
  margin-bottom: 15px;
}
#page section h4 {
  background-color: #f1f1f1;
  font-size: 1.8rem;
  margin-bottom: 15px;
  line-height: 1.5;
}
#page section h5 {
  border-bottom: 2px solid #022f8b;
  font-size: 1.8rem;
  padding: 10px 10px;
  margin-bottom: 15px;
}
#page section h6 {
  font-size: 1.5rem;
  margin-bottom: 0px;
}
#page h2 {
  font-family: "Noto Sans JP", "メイリオ", Meiryo, "Hiragino Sans",
    "ヒラギノ角ゴシック", YuGothic, "Yu Gothic", "ＭＳ Ｐゴシック", "MS PGothic";
  font-style: normal;
}
#page header {
  border-bottom: 1px solid #a9a8a8;
}
#page .page-title {
  background-image: url(../image/title-bg.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  height: 120px;
}
#page .page-title .content {
  display: flex;
  align-items: center;
  height: 120px;
}
#page .page-title h2 {
  margin: 0px;
  padding: 0px;
  color: #fff;
}
#page main {
  background-image: url(../image/page-bg.jpg);
  background-position: center top;
  background-repeat: no-repeat;
}
#page main .contentwrap {
  display: flex;
  justify-content: space-between;
  width: 1050px;
  margin: auto;
}
#page main #main {
  width: 780px;
}
#page main #main section {
  background-color: rgba(255, 255, 255, 0.8);
  box-shadow: 0px 0px 6px 3px #e0e0e0;
  margin-bottom: 40px;
}
#page main #main section .sec-box {
  padding: 15px;
}
#page main #main section .sec-box p {
  padding: 0 10px;
}
#page main #side {
  width: 220px;
}
#page main #side nav ul {
  background-color: rgba(255, 255, 255, 0.8);
  box-shadow: 0px 0px 6px 3px #e0e0e0;
}
#page main #side nav ul.main-navi li {
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: solid 1px #a9a8a8;
  padding: 1px;
}
#page main #side nav ul.main-navi li .icon-home,
#page main #side nav ul.main-navi li .icon-event,
#page main #side nav ul.main-navi li .icon-entry,
#page main #side nav ul.main-navi li .icon-search {
  width: 60px;
  height: 60px;
  color: #fff;
  position: relative;
}
#page main #side nav ul.main-navi li .icon-home:before,
#page main #side nav ul.main-navi li .icon-event:before,
#page main #side nav ul.main-navi li .icon-entry:before,
#page main #side nav ul.main-navi li .icon-search:before {
  font-size: 2.8rem;
  position: absolute;
  top: 50%;
  left: 40%;
  -webkit-transform: translateY(-50%) translateX(-50%);
  -ms-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
}
#page main #side nav ul.main-navi li a {
  font-size: 2rem;
  padding-left: 10px;
}
#page main #side nav ul.main-navi li a.home,
#page main #side nav ul.main-navi li a.search,
#page main #side nav ul.main-navi li a.event,
#page main #side nav ul.main-navi li a.entry {
  width: 100%;
}
#page main #side nav ul.main-navi li a:before {
  height: 60px;
}
#page main #side nav ul.sub-navi {
  margin-top: 60px;
}
#page main #side nav ul.sub-navi li {
  display: table;
  width: 100%;
}
#page main #side nav ul.sub-navi li a {
  font-size: 1.6rem;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: solid 1px #a9a8a8;
  padding: 1px;
  position: relative;
  height: 52px;
  display: table-cell;
  vertical-align: middle;
  text-decoration: none;
  padding-left: 10px;
}
#page main #side nav ul.sub-navi li a:before {
  content: "";
  background: #32c4d9;
  background: -webkit-linear-gradient(top, #32c4d9 0%, #5b9cd9 100%);
  background: linear-gradient(to bottom, #32c4d9 0%, #5b9cd9 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#32c4d9', endColorstr=' #5b9cd9', GradientType=0);
  width: 5px;
  height: 50px;
  position: absolute;
  left: 0;
  top: 1px;
}
#page main #side nav ul.sub-navi li a:after {
  top: 15px;
}
.placeinfowrap {
  display: flex;
  justify-content: space-between;
  width: 760px;
}
.placenote {
  width: 340px;
}
.placemap {
  width: 420px;
  padding-right: 20px;
}
.placemap iframe {
  border: none;
  width: 100%;
  height: 300px;
}
.recruit_info_wrap {
  display: flex;
}
.recruit_info_wrap .recruit_label {
  padding: 0 0px;
  width: 440px;
  margin-left: 10px;
}
.recruit_info_wrap .recruit_label .recruit_catategory .clear {
  clear: both;
  display: block;
}
.recruit_info_wrap .recruit_label .recruit_catategory ul {
  clear: both;
  padding: 0;
  margin: 0;
}
.recruit_info_wrap .recruit_label .recruit_catategory ul li {
  float: left;
}
.recruit_info_wrap .recruit_label .recruit_catategory ul.labels li {
  width: 95px;
  min-height: 22px;
  font-size: 14px;
  letter-spacing: 1px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  text-shadow: 1px 1px grey;
  padding: 3px 2px;
  margin: 5px 3px;
  display: inline-block;
}
.recruit_info_wrap .recruit_label .recruit_catategory ul.labels.green li {
  background: linear-gradient(to bottom, #a0cf3d 0%, #6cb320 100%);
}
.recruit_info_wrap .recruit_label .recruit_catategory ul.labels.blue li {
  background: linear-gradient(to bottom, #00aada 0%, #0981a2 100%);
}
.recruit_info_wrap .recruit_label .recruit_catategory ul.labels.orange li {
  background: linear-gradient(to bottom, #fdb056 0%, #f38b12 100%);
}
.recruit_info_wrap .recruit_label .recruit_catategory ul.labels.purple li {
  background: linear-gradient(to bottom, #de9dd7 0%, #b469ae 100%);
}
.recruit_info_wrap .recruit_label .recruit_catategory ul.labels.aqua li {
  background: linear-gradient(to bottom, #9dd7de 0%, #69aeb4 100%);
}
.recruit_info_wrap .recruit_pdf {
  width: 300px;
  margin-top: 70px;
}
