@charset "UTF-8";
.indexPublicBnr:before, #modal-private-job .green-border-box-inner:before, .indexPublicBnr:after, #modal-private-job .green-border-box-inner:after {
  display: table;
  content: "";
  line-height: 0; }

.indexPublicBnr:after, #modal-private-job .green-border-box-inner:after {
  clear: both; }

/* Border Color Scheme */
/*
==============================================================
*	index.css
==============================================================
*/
.contentHead.typeText {
  font-size: 1.33em; }

#indexKeyVisual {
  background-image: -webkit-gradient(linear, left top, left bottom, from(#2da7a7), color-stop(70%, #2da7a7), to(#015b5b));
  background-image: linear-gradient(to bottom, #2da7a7 0%, #2da7a7 70%, #015b5b 100%);
  padding: 12px 0px 0; }
  #indexKeyVisual .indexKeyVisualInner {
    position: relative;
    padding: 5px 0 0;
    width: 961px;
    height: 100%;
    margin: 0 auto;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#57b9b9), color-stop(80%, #57b9b9), to(#419090));
    background-image: linear-gradient(to bottom, #57b9b9 0%, #57b9b9 80%, #419090 100%);
    text-align: center; }
    #indexKeyVisual .indexKeyVisualInner .indexABS {
      position: absolute;
      top: 0;
      left: 0;
      height: 235px;
      width: 100%; }
      #indexKeyVisual .indexKeyVisualInner .indexABS .buttonBox {
        position: absolute;
        top: 0px;
        left: 30px; }
        #indexKeyVisual .indexKeyVisualInner .indexABS .buttonBox .sub {
          padding: 19px 0 12px 10px;
          display: block; }
          #indexKeyVisual .indexKeyVisualInner .indexABS .buttonBox .sub img {
            display: block; }
        #indexKeyVisual .indexKeyVisualInner .indexABS .buttonBox ul li {
          display: block;
          width: 290px;
          height: 58px;
          margin: 0 0 4px; }
          #indexKeyVisual .indexKeyVisualInner .indexABS .buttonBox ul li.btn01 {
            height: 61px; }
          #indexKeyVisual .indexKeyVisualInner .indexABS .buttonBox ul li a {
            display: block;
            height: 100%;
            text-indent: -9999px;
            background: no-repeat left top; }
          #indexKeyVisual .indexKeyVisualInner .indexABS .buttonBox ul li.btn01 a {
            background-image: url(/images/common/btn_kv_01.png); }
          #indexKeyVisual .indexKeyVisualInner .indexABS .buttonBox ul li.btn02 a {
            background-image: url(/images/common/btn_kv_02.png); }
          #indexKeyVisual .indexKeyVisualInner .indexABS .buttonBox ul li.btn03 a {
            background-image: url(/images/common/btn_kv_03.png); }
          #indexKeyVisual .indexKeyVisualInner .indexABS .buttonBox ul li a:hover {
            background-position: left bottom; }
      #indexKeyVisual .indexKeyVisualInner .indexABS .kvCaption {
        position: absolute;
        left: 595px;
        top: 81px; }
      #indexKeyVisual .indexKeyVisualInner .indexABS .txtContaner {
        position: absolute;
        left: 0;
        bottom: 15px;
        width: 100%;
        overflow: hidden; }
      #indexKeyVisual .indexKeyVisualInner .indexABS .txtLink {
        float: right;
        padding-right: 61px !important; }

.gray {
  color: #999;
  font-size: 11px; }

#content .contentInner {
  padding: 15px 0 0; }

#content .contentInner .contentColumn .indexContBox {
  background: #fff; }

.supportBox {
  background: url(/images/index/bg_support_b.gif) no-repeat left bottom;
  overflow: hidden;
  margin: -10px 0 25px;
  padding: 0 0 20px;
  position: relative;
  line-height: 1.6; }
  .supportBox .supportBoxInner {
    background: url(/images/index/bg_support_t.gif) no-repeat left top;
    padding: 41px 0 0; }
    .supportBox .supportBoxInner .leftCol,
    .supportBox .supportBoxInner .rightCol {
      width: 338px;
      float: left; }
    .supportBox .supportBoxInner .leftCol {
      padding: 5px 0 0 132px; }
      .supportBox .supportBoxInner .leftCol img {
        position: absolute;
        top: 24px;
        left: 24px; }
    .supportBox .supportBoxInner .rightCol {
      padding: 7px 0 0 137px; }
      .supportBox .supportBoxInner .rightCol img {
        position: absolute;
        top: 18px;
        left: 510px;
        border: 1px solid #dcdcdc; }

.privateJobsBox {
  border: 1px solid #dcdcdc;
  background: #9cd2d2;
  padding: 1px;
  margin: 0 0 15px; }
  .privateJobsBox .privateJobsBoxCont {
    border: solid 5px #fff;
    background: #deeeee;
    overflow: hidden; }
    .privateJobsBox .privateJobsBoxCont .privateJobsBoxContInner {
      background: #deeeee;
      overflow: hidden; }
  .privateJobsBox .txtPrivateJobs {
    width: 614px;
    height: 84px;
    background: url(/images/index/txt_private_jobs.gif) no-repeat left top;
    overflow: hidden;
    float: left; }
    .privateJobsBox .txtPrivateJobs .txt {
      display: none; }
    .privateJobsBox .txtPrivateJobs .num {
      font-size: 2.66em;
      padding: 28px 0 0 471px;
      font-weight: bold;
      color: #e12a00; }
      .privateJobsBox .txtPrivateJobs .num .unit {
        font-weight: normal;
        font-size: 0.62em;
        margin-left: 5px;
        color: #333333; }
  .privateJobsBox .txtNo1 {
    float: left; }
  .privateJobsBox .btnAboutPJ {
    float: left;
    padding: 12px 0 0; }

.jobSearchListBox {
  padding: 0px 15px 30px 15px; }
  .jobSearchListBox ul {
    width: 250px;
    display: inline-block; }
    .jobSearchListBox ul.last {
      width: 350px; }

.contractBoxCont {
  border: 1px solid #dcdcdc;
  margin: 0 0 30px; }
  .contractBoxCont .listBox {
    background: #f3f3f3;
    border-bottom: 1px solid #dcdcdc; }
    .contractBoxCont .listBox dt {
      text-align: center;
      font-weight: bold;
      padding: 14px 0 8px; }
    .contractBoxCont .listBox dd {
      overflow: hidden;
      padding: 0 0 10px 25px; }
      .contractBoxCont .listBox dd ul {
        width: 105%;
        overflow: hidden; }
        .contractBoxCont .listBox dd ul li {
          float: left;
          width: 147px;
          margin: 0 10px 0 0;
          padding: 0 0 13px 0;
          text-align: center; }
          .contractBoxCont .listBox dd ul li .bnr {
            text-align: center;
            margin: 0 0 6px; }
          .contractBoxCont .listBox dd ul li .caption {
            display: inline-block; }
  .contractBoxCont .buttons {
    padding: 15px 0 12px 43px;
    overflow: hidden; }
    .contractBoxCont .buttons .btnSearch,
    .contractBoxCont .buttons .btnJobs {
      width: 294px;
      height: 54px;
      float: left; }
    .contractBoxCont .buttons .btnSearch a,
    .contractBoxCont .buttons .btnJobs a {
      display: block;
      height: 100%;
      line-height: 54px;
      color: #333333;
      font-weight: bold;
      text-decoration: none;
      font-size: 1.16em;
      background: url(/images/common/btn_green_edge.gif) no-repeat left top;
      text-align: center; }
      .contractBoxCont .buttons .btnSearch a:hover,
      .contractBoxCont .buttons .btnJobs a:hover {
        color: #c55936;
        background-position: left bottom; }
    .contractBoxCont .buttons .btnSearch {
      margin: 0 8px 0 0; }
      .contractBoxCont .buttons .btnSearch a .icon {
        display: inline-block; }
    .contractBoxCont .buttons .btnJobs a .icon {
      display: inline-block; }
    .contractBoxCont .buttons .btnSearch a .icon {
      padding: 0 0 0 28px;
      background: url(/images/common/icon_roupe.png) no-repeat left 14px; }
    .contractBoxCont .buttons .btnJobs a .icon {
      padding: 0 0 0 54px;
      background: url(/images/common/icon_persons.png) no-repeat left 14px; }

.featBox {
  margin: 0 0 30px; }
  .featBox .rectGoldBoxStep {
    padding: 12px 15px 0 15px; }
    .featBox .rectGoldBoxStep ul li {
      width: 214px;
      float: left; }
      .featBox .rectGoldBoxStep ul li:firstchild {
        width: 205px; }
      .featBox .rectGoldBoxStep ul li p {
        font-size: 0.83em;
        line-height: 1.4;
        padding: 0 5px 10px 35px; }
  .featBox .txtSupport {
    width: 660px;
    margin: 0 auto;
    background: url(/images/common/bg_grad_03.gif) repeat-y left top;
    text-align: center;
    padding: 14px 0 11px; }
  .featBox .linkBox {
    padding: 16px 0 14px; }
    .featBox .linkBox .btnSearchOffer a {
      margin: 0 auto; }

.trendBox {
  margin: 0 26px 30px;
  padding: 8px 0 0; }
  .trendBox .trendList {
    margin: 0 0 5px;
    overflow: hidden;
    line-height: 1.9; }
    .trendBox .trendList li {
      float: left;
      margin: 0 22px 0 0;
      white-space: nowrap; }

.jobOfferContainer {
  margin: 0 0 30px;
  padding: 5px 15px 15px 15px;
  overflow: hidden;
  border: 3px solid #dcdcdc; }
  .jobOfferContainer .leftCol,
  .jobOfferContainer .rightCol {
    margin-bottom: 10px; }
  .jobOfferContainer .leftCol {
    float: left;
    width: 480px; }
  .jobOfferContainer .rightCol {
    float: right;
    width: 430px; }
    .jobOfferContainer .rightCol .inner {
      padding-left: 80px;
      background: url(/images/index/beginner.png) no-repeat 0 50%;
      min-height: 110px; }
    .jobOfferContainer .rightCol .label {
      display: inline-block;
      background: #AF2F05;
      color: #fff;
      border-radius: 3px;
      padding: 2px 10px; }
  .jobOfferContainer .head {
    font-weight: bold;
    padding: 14px 0 5px;
    font-size: 1.16em; }
  .jobOfferContainer .listContainer {
    overflow: hidden;
    padding: 3px 0 0; }
    .jobOfferContainer .listContainer li {
      line-height: 1.3;
      display: inline-block;
      margin: 0 10px 10px 0; }
  .jobOfferContainer .pushText {
    font-size: 1.9em;
    text-align: center;
    font-weight: bold;
    clear: both;
    border: 1px solid #dcdcdc;
    background: #FEFEF5;
    -webkit-box-shadow: 0 0 0 2px #fff inset;
    box-shadow: 0 0 0 2px #fff inset;
    padding: 10px; }
  .jobOfferContainer .leftCol .listContainer ul li.lastRow {
    margin-bottom: 0; }

.downArrow {
  text-align: center;
  margin-bottom: 10px;
  margin-top: -55px; }

.counterMeasureContainer {
  border: 1px solid #dcdcdc;
  margin: 0 0 30px; }
  .counterMeasureContainer .stepFlowBox {
    background: #f3f3f3;
    border-bottom: 1px solid #dcdcdc; }
    .counterMeasureContainer .stepFlowBox .stepFlowBoxInner {
      margin: 0 23px;
      padding: 21px 0 10px;
      overflow: hidden; }
    .counterMeasureContainer .stepFlowBox ol {
      overflow: hidden;
      width: 105%;
      padding-bottom: 9px; }
      .counterMeasureContainer .stepFlowBox ol li {
        float: left;
        margin: 0 8px 0 0; }
        .counterMeasureContainer .stepFlowBox ol li .link {
          text-align: center;
          padding-top: 9px; }
          .counterMeasureContainer .stepFlowBox ol li .link .iconArrow {
            display: inline;
            background-position: 0 2px; }
  .counterMeasureContainer .buttonBox {
    width: 824px;
    margin: 0 auto; }
    .counterMeasureContainer .buttonBox ul {
      overflow: hidden; }
      .counterMeasureContainer .buttonBox ul li {
        float: left;
        width: 50%;
        padding-bottom: 19px; }
        .counterMeasureContainer .buttonBox ul li p {
          text-align: center;
          font-weight: bold;
          padding: 19px 0 10px; }
        .counterMeasureContainer .buttonBox ul li a {
          display: block;
          width: 346px;
          height: 69px;
          margin: 0 auto;
          text-indent: -9999px; }
        .counterMeasureContainer .buttonBox ul li.btn01 a {
          background: url(/images/index/btn_cm_01.gif) no-repeat left top; }
        .counterMeasureContainer .buttonBox ul li.btn02 a {
          background: url(/images/index/btn_cm_02.gif) no-repeat left top; }
        .counterMeasureContainer .buttonBox ul li a:hover {
          background-position: left bottom; }

.indexPublicBox {
  margin-bottom: 20px;
  padding-bottom: 5px;
  background: -webkit-gradient(linear, left top, left bottom, from(#034c4b), to(#008382));
  background: linear-gradient(to bottom, #034c4b 0%, #008382 100%);
  -webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.15);
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.15); }
  .indexPublicBox .indexPublicBody {
    margin: 0 5px 0;
    -webkit-box-shadow: 0 0 25px rgba(0, 0, 0, 0.03);
    box-shadow: 0 0 25px rgba(0, 0, 0, 0.03); }
    .indexPublicBox .indexPublicBody ul {
      display: table;
      border: 2px solid #fff;
      border-bottom: none;
      background: #ebebeb;
      background: -webkit-gradient(linear, left top, left bottom, from(#ebebeb), color-stop(60%, white));
      background: linear-gradient(to bottom, #ebebeb 0%, white 60%); }
    .indexPublicBox .indexPublicBody li {
      display: table-cell;
      width: 25%;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      border-right: 1px solid #E5E5E5; }
      .indexPublicBox .indexPublicBody li:last-child {
        border-right: none; }
    .indexPublicBox .indexPublicBody a {
      display: block;
      padding: 20px 20px 15px;
      line-height: 1.4;
      text-decoration: none;
      color: #333; }
      .indexPublicBox .indexPublicBody a:hover {
        color: #c55936; }
        .indexPublicBox .indexPublicBody a:hover h3 {
          color: #c55936; }
    .indexPublicBox .indexPublicBody .iconPublic {
      position: relative; }
      .indexPublicBox .indexPublicBody .iconPublic:after {
        position: absolute;
        top: -5px;
        left: -6px;
        content: '';
        display: inline-block;
        width: 76px;
        height: 24px;
        background: url(/images/index/icon_public.png) 0 0 no-repeat; }
    .indexPublicBox .indexPublicBody .indexPublicImg {
      position: relative;
      overflow: hidden;
      height: 115px;
      margin-bottom: 14px; }
      .indexPublicBox .indexPublicBody .indexPublicImg img {
        position: absolute;
        width: 100%;
        top: -999px;
        bottom: -999px;
        margin: auto;
        vertical-align: top; }
    .indexPublicBox .indexPublicBody h3 {
      margin-bottom: 8px;
      color: #0d6c6c;
      font-weight: bold; }
    .indexPublicBox .indexPublicBody p {
      margin-bottom: 6px; }
      .indexPublicBox .indexPublicBody p:last-child {
        margin-bottom: 0; }
  .indexPublicBox .indexPublicBtn {
    padding: 14px 20px 16px;
    background: #edf2f2;
    text-align: center; }
    .indexPublicBox .indexPublicBtn a {
      display: block;
      width: 280px;
      height: 52px;
      padding: 0;
      margin: 0 auto;
      text-indent: -9999px;
      background: url(/images/index/btn_result_list.png) 0 0 no-repeat; }
      .indexPublicBox .indexPublicBtn a:hover {
        background-position: 0 -52px; }

.indexPublicBnr {
  padding: 0 0 20px; }
  .indexPublicBnr li {
    float: left;
    width: 465px;
    height: 130px;
    border: 5px solid #008382;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
    .indexPublicBnr li:last-child {
      float: right; }
  .indexPublicBnr a {
    display: table;
    width: 100%;
    height: 120px;
    background: #fff;
    text-decoration: none;
    font-weight: bold;
    color: #333; }
    .indexPublicBnr a:hover {
      color: #c55936; }
    .indexPublicBnr a .indexPublicBnrTxt,
    .indexPublicBnr a .indexPublicBnrImg {
      display: table-cell;
      vertical-align: middle;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      padding-top: 2px; }
    .indexPublicBnr a .indexPublicBnrTxt {
      width: 244px;
      padding: 0 32px;
      border-right: 1px solid #d6d6d6;
      background: -webkit-gradient(linear, left top, left bottom, from(#ebebeb), color-stop(60%, white));
      background: linear-gradient(to bottom, #ebebeb 0%, white 60%);
      line-height: 1.2;
      font-size: 20px; }
      .indexPublicBnr a .indexPublicBnrTxt b {
        display: block;
        font-size: 24px; }
    .indexPublicBnr a .indexPublicBnrImg {
      width: 210px; }
      .indexPublicBnr a .indexPublicBnrImg img {
        width: 100%; }

.indexArticleBox {
  margin-bottom: 40px; }
  .indexArticleBox__head {
    border-top: #0e8e8e 5px solid;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#c7e0e0), color-stop(60%, #f3f9f9), to(#fff));
    background-image: linear-gradient(to bottom, #c7e0e0 0%, #f3f9f9 60%, #fff 100%);
    -webkit-box-shadow: 0 -2px 0px 0px #006262;
    box-shadow: 0 -2px 0px 0px #006262;
    margin: 0 0 17px;
    padding: 15px 26px;
    position: relative; }
    .indexArticleBox__head__title {
      font-size: 1.33em; }
    .indexArticleBox__head .iconArrow {
      position: absolute;
      top: 15px;
      right: 26px; }
  .indexArticleBox__list {
    padding: 0 16px; }
    .indexArticleBox__list li {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      border-top: 1px solid #dcdcdc;
      padding: 10px 20px;
      font-size: 14px; }
      .indexArticleBox__list li:first-child {
        border-top: none; }
    .indexArticleBox__list__date {
      width: 6em;
      color: #555; }
    .indexArticleBox__list__label {
      width: 8em;
      text-align: center; }
      .indexArticleBox__list__label__column {
        display: inline-block;
        border: #ccc solid 2px;
        color: #666;
        padding: 2px 20px;
        text-align: center; }
    .indexArticleBox__list__title {
      -webkit-box-flex: 1;
      -ms-flex: 1;
      flex: 1;
      font-size: 14px; }

.indexRankingBox {
  border: 5px solid #dcdcdc;
  padding: 15px;
  margin-bottom: 40px; }
  .indexRankingBox__head {
    position: relative;
    min-height: 80px;
    padding-left: 35px; }
    .indexRankingBox__head:before {
      content: "";
      width: 32px;
      height: 90px;
      display: block;
      background: url(/images/index/bg_indexRankingBox__head.png) 0 0 no-repeat;
      position: absolute;
      top: -24px;
      left: 0; }
    .indexRankingBox__head .txtLink {
      position: absolute;
      top: 15px;
      right: 0; }
    .indexRankingBox__head__title {
      font-size: 24px;
      font-weight: bold;
      line-height: 1.1; }
    .indexRankingBox__head__description {
      font-size: 15px; }
  .indexRankingBox__categoryList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    .indexRankingBox__categoryList li {
      width: 291px;
      font-weight: bold; }
    .indexRankingBox__categoryList a {
      display: block; }
    .indexRankingBox__categoryList img {
      max-width: 100%;
      margin: 0 0 5px; }

/* フッター固定メッセージ
----------------------------------------------------------*/
#announcement-message {
  position: fixed;
  bottom: 0;
  padding: 20px;
  font-weight: bold;
  background: rgba(0, 0, 0, 0.8);
  color: #fff;
  font-size: 15px;
  width: 100%; }
  #announcement-message p {
    text-align: center; }

/* モーダル
----------------------------------------------------------*/
#lean_overlay {
  position: fixed;
  z-index: 100;
  top: 0px;
  left: 0px;
  height: 100%;
  width: 100%;
  background: #000;
  display: none; }

.modal {
  display: none;
  text-align: center;
  border: 1px solid #dcdcdc;
  padding: 1px; }
  .modal .modal-inner {
    background: #fff;
    border: 1px solid #dcdcdc;
    width: 700px;
    padding: 20px;
    margin: 0 auto; }

#modal-private-job table {
  border-top: 1px solid #dcdcdc;
  border-right: 1px solid #dcdcdc; }
  #modal-private-job table th,
  #modal-private-job table td {
    border-bottom: 1px solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
    padding: 10px; }
  #modal-private-job table th {
    background: #f3f3f3;
    font-weight: normal;
    text-align: center; }
  #modal-private-job table td {
    text-align: left; }

#modal-private-job th {
  width: 140px; }

#modal-private-job .green-border-box {
  background-color: #058b8b;
  padding: 5px; }

#modal-private-job .green-border-box-inner {
  background: #fff url("/images/common/badge-shakehands.png") no-repeat 600px 6px;
  padding: 20px; }

#modal-private-job .box-left {
  float: left;
  width: 290px;
  padding-top: 10px;
  font-weight: bold; }
  #modal-private-job .box-left a {
    display: block;
    width: 290px;
    height: 61px;
    margin: auto;
    text-indent: -9999px;
    background: url(/images/buttons/privatejoboffer.gif) no-repeat left top; }
    #modal-private-job .box-left a:hover {
      background-position: left -61px; }

#modal-private-job .box-right {
  float: right;
  width: 340px;
  text-align: left; }
  #modal-private-job .box-right h3 {
    margin: 6px 0 25px 0; }
