@media screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }

  .sp {
    display: block !important;
  }

  .br_pc {
    display: none;
  }

  body {
    font-size: 14px;
    border-top: none;
  }

  .inner {
    margin: 0 20px;
  }

  input[type="submit"] {
    border-radius: 0;
    -webkit-box-sizing: content-box;
    -webkit-appearance: button;
    appearance: button;
    border: none;
    box-sizing: border-box;
  }
  input[type="submit"]::-webkit-search-decoration {
    display: none;
  }
  input[type="submit"]::focus {
    outline-offset: -2px;
  }

  /* header
    ------------------------------------------------------ */
  .header_inner {
    width: 100%;
    box-sizing: border-box;
    padding-left: 20px;
    height: 53px;
    position: fixed;
    z-index: 1000;
    background: #fff;
    border-top: 3px solid #009423;
  }
  .header_inner h1, .header_inner .log {
    max-width: 93px;
    margin-top: 9px;
  }
  .header_inner .gnav {
    display: none;
  }
  .header_inner .btn_tell {
    float: right;
    width: 50px;
    height: 50px;
  }
  .header_inner .btn_entry {
    float: right;
    width: 50px;
    height: 50px;
    margin-left: 1px;
  }
  .header_inner .btn_menu {
    display: block;
    float: right;
    background: url(../images/common/btn_menu.png);
    background-size: 50px;
    width: 50px;
    height: 50px;
  }
  .header_inner .close {
    background: url(../images/common/btn_close.png);
    background-size: 50px;
  }
  .header_inner .gnav_sp {
    position: absolute;
    top: 50px;
    left: 0;
    background-color: #333333;
    width: 100%;
  }
  .header_inner .gnav_sp li {
    border-bottom: solid 1px #fff;
  }
  .header_inner .gnav_sp li:last-child {
    border-bottom: none;
  }
  .header_inner .gnav_sp li a {
    position: relative;
    display: block;
    padding: 20px;
    color: #fff;
  }
  .header_inner .gnav_sp li a:after {
    display: block;
    content: '';
    position: absolute;
    top: 23px;
    right: 20px;
    width: 8px;
    height: 8px;
    border-right: 1px solid #009423;
    border-bottom: 1px solid #009423;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }

  /* mainvisual
    ------------------------------------------------------ */
  .mainvisual {
    padding-top: 53px;
    max-height: 400px;
  }
  .mainvisual h2 {
    left: 14%;
    top: 40%;
  }
  .mainvisual h2 .italic {
    font-size: 16px;
  }
  .mainvisual h2 .en {
    font-size: 40px;
  }
  .mainvisual h2 .jp {
    font-size: 12px;
  }

  /* news
   ------------------------------------------------------ */
  .index_news {
    width: 100%;
    margin: 0;
  }
  .index_news .index_news_inner {
    box-sizing: border-box;
    height: 32px;
    position: absolute;
    padding: 10px 0 10px 20px;
    margin-top: 0px;
    height: auto;
  }
  .index_news .index_news_inner h2 {
    display: none;
  }
  .index_news .index_news_inner .index_news_block {
    background: url(../images/common/ico_news.png) left center no-repeat;
    background-size: 15px;
    float: left;
    width: 70%;
    overflow: hidden;
    padding-top: 0;
    padding-left: 25px;
  }
  .index_news .index_news_inner .index_news_block a {
    font-size: 12px;
    text-decoration: underline;
  }
  .index_news .index_news_inner .index_news_block .date {
    font-size: 12px;
  }
  .index_news .index_news_inner .index_news_list {
    display: none;
  }
  .index_news .index_news_inner .index_news_list_sp {
    float: right;
    margin: -10px 0;
    width: 40px;
    height: 40px;
    display: block;
    background: #333333;
  }
  .index_news .index_news_inner .index_news_list_sp:after {
    display: block;
    content: '';
    position: absolute;
    top: 15px;
    right: 15px;
    width: 8px;
    height: 8px;
    border-right: 1px solid #009423;
    border-bottom: 1px solid #009423;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }

  /* work style
   ------------------------------------------------------ */
  .index_ws .inner {
    margin-top: 90px;
  }
  .index_ws .index_ws_list {
    justify-content: center;
  }
  .index_ws .index_ws_block,
  .index_ws .index_ws_ttl {
    margin: 0 0px 15px;
  }
  .index_ws .index_ws_block {
    position: relative;
    width: 100%;
    height: auto;
    padding: 4% 9%;
  }
  .index_ws .index_ws_block h3 {
    font-size: 18px;
  }
  .index_ws .index_ws_block h3 .italic {
    font-size: 36px;
  }
  .index_ws .index_ws_block p {
    display: none;
  }
  .index_ws .index_ws_block .link {
    display: none;
  }
  .index_ws .index_ws_block a {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .index_ws .index_ws_ttl {
    width: 100%;
    height: auto;
    margin-bottom: 30px;
    text-align: center;
  }
  .index_ws .index_ws_ttl h2 {
    margin-bottom: 40px;
  }
  .index_ws .index_ws_ttl h2 strong {
    font-size: 36px;
  }
  .index_ws .index_ws_ttl p {
    font-size: 14px;
  }
  .index_ws .index_ws_ttl p strong {
    font-size: 28px;
    margin-bottom: 30px;
  }
  .index_ws .n01 {
    background: url(../images/index/bg_index_ws_sp_01.png) no-repeat;
    background-size: cover;
  }
  .index_ws .n02 {
    background: url(../images/index/bg_index_ws_sp_02.png) no-repeat;
    background-size: cover;
  }
  .index_ws .n03 {
    background: url(../images/index/bg_index_ws_sp_03.png) no-repeat;
    background-size: cover;
  }
  .index_ws .n04 {
    background: url(../images/index/bg_index_ws_sp_04.png) no-repeat;
    background-size: cover;
  }
  .index_ws .n05 {
    background: url(../images/index/bg_index_ws_sp_05.png) no-repeat;
    background-size: cover;
  }

  /* safrty
   ------------------------------------------------------ */
  .index_safrty {
    padding-top: 40px;
  }
  .index_safrty h2 {
    text-align: center;
    margin-bottom: 30px;
  }
  .index_safrty h2 strong {
    display: block;
    font-size: 36px;
  }
  .index_safrty .index_safrty_wrap {
    background: none;
    height: auto;
    padding: 0;
    margin-bottom: 30px;
  }
  .index_safrty .index_safrty_block {
    width: 100%;
    height: auto;
    float: none;
    background: none;
    box-sizing: border-box;
    padding: 0;
  }
  .index_safrty .index_safrty_block h3 {
    text-align: center;
    font-size: 24px;
    margin-bottom: 30px;
  }
  .index_safrty .index_safrty_block p {
    margin-bottom: 30px;
    line-height: 1.6;
  }

  .btn {
    width: 100%;
    padding-right: 0;
  }

  /* NUMBERS AND KEYWORDS
   ------------------------------------------------------ */
  .index_nak {
    background: url(../images/index/bg_index_nak_sp.png) center center no-repeat;
    background-size: cover;
    padding: 30px 0;
  }
  .index_nak .inner {
    height: auto;
    display: block;
  }
  .index_nak .index_nak_block {
    width: 100%;
    text-align: center;
  }
  .index_nak .index_nak_block h3 {
    font-size: 24px;
    margin-bottom: 20px;
  }
  .index_nak .index_nak_block h3 .en {
    font-size: 36px;
    margin-bottom: 20px;
  }
  .index_nak .index_nak_block p {
    margin-bottom: 10px;
  }
  .index_nak .index_nak_img {
    width: 100%;
    margin-bottom: 20px;
  }
  .index_nak .sp {
    display: block;
  }

  /* recruitment
   ------------------------------------------------------ */
  .index_recruitment .inner {
    height: auto;
    padding: 40px 0;
  }
  .index_recruitment .inner h2 {
    margin-bottom: 40px;
  }
  .index_recruitment .inner h2 strong {
    font-size: 36px;
  }
  .index_recruitment .inner p {
    margin-bottom: 50px;
  }

  footer .inner {
    overflow: hidden;
    padding: 30px 0 10px;
    text-align: center;
  }
  footer .inner .footer_logo {
    width: 160px;
    float: none;
    margin: 0 auto 30px;
  }
  footer .inner .footer_nav {
    float: none;
    margin: 0 0 10px;
  }
  footer .inner .footer_nav li {
    display: inline-block;
    margin: 0 5px;
    text-align: center;
  }
  footer .inner .copyright {
    float: none;
  }

  /*----------------------------------------------------- */
  /*  sub           */
  /*----------------------------------------------------- */
  .sub {
    padding-top: 53px;
  }

  .sub_ttl {
    height: 120px;
  }
  .sub_ttl h1 {
    font-size: 14px;
  }
  .sub_ttl h1 strong {
    font-size: 36px;
  }

  .h_style01 {
    font-size: 14px;
  }
  .h_style01 strong {
    font-size: 32px;
  }

  .lnav ul {
    width: 100%;
    display: block;
  }
  .lnav li {
    width: 100%;
    height: 40px;
    display: block;
  }
  .lnav a {
    width: 100%;
    height: 40px;
    line-height: 40px;
    font-size: 14px;
  }
  .lnav a br {
    display: none;
  }
  .lnav a strong {
    font-size: 18px;
    font-weight: bold;
    display: block;
  }
  .lnav a:after {
    top: 15px;
    right: 10px;
    width: 10px;
    height: 10px;
  }

  /*----------------------------------------------------- */
  /*  safety           */
  /*----------------------------------------------------- */
  .safety .txt_big {
    font-size: 24px;
    margin-bottom: 20px;
  }
  .safety .h2_style01 {
    margin-bottom: 20px;
  }

  .safety_ttl {
    background: url(../images/safety/bg_safety_ttl.png);
    background-size: cover;
  }

  .safety_intro .inner {
    padding: 30px 0;
  }
  .safety_intro h2 {
    font-size: 24px;
    margin-bottom: 20px;
  }
  .safety_intro .txt01 {
    margin-bottom: 20px;
  }
  .safety_intro .txt01 br {
    display: none;
  }
  .safety_intro .img01 {
    margin: 0 auto 20px;
  }

  .safety_education {
    background: url(../images/safety/bg_safrety_01.png) repeat-x;
  }
  .safety_education .education_inner {
    padding: 30px 0 10px;
    margin: 0;
  }
  .safety_education .txt01 {
    margin-bottom: 30px;
  }
  .safety_education .safety_sinjin {
    width: 100%;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 20px;
    background-color: white;
  }
  .safety_education h3 {
    font-size: 18px;
    padding-bottom: 10px;
    margin: 0 auto 20px;
  }
  .safety_education .txt02 {
    margin-bottom: 30px;
    text-align: left;
  }
  .safety_education .wrap {
    width: 100%;
    margin: 0 auto 20px;
    display: flex;
    flex-direction: column;
  }
  .safety_education .txt_block, .safety_education .img_block {
    width: 100%;
  }
  .safety_education .txt_block {
    box-sizing: border-box;
    padding: 20px 0 0;
  }
  .safety_education .txt_block h4 {
    font-size: 18px;
    margin-bottom: 10px;
  }
  .safety_education .num02 {
    order: 1;
  }
  .safety_education .num01 {
    order: 2;
  }

  .safety_support {
    background: #eeeeee;
  }
  .safety_support .inner {
    text-align: center;
    padding: 30px  0;
  }
  .safety_support .txt03 {
    margin-bottom: 30px;
  }
  .safety_support .wrap {
    width: 100%;
    margin: 0 auto 0px;
    display: flex;
    flex-direction: column;
  }
  .safety_support .txt_block, .safety_support .img_block {
    width: 100%;
  }
  .safety_support .txt_block {
    background: #fff;
    box-sizing: border-box;
    padding: 20px 4%;
  }
  .safety_support .txt_block h4 {
    font-size: 16px;
    margin-bottom: 10px;
  }
  .safety_support .num01 {
    order: 1;
  }
  .safety_support .num02 {
    order: 2;
  }
  .safety_support .num03 {
    order: 4;
  }
  .safety_support .num04 {
    order: 3;
  }
  .safety_support .num05 {
    order: 5;
  }
  .safety_support .num06 {
    order: 6;
  }
  .safety_support .num07 {
    order: 8;
  }
  .safety_support .num08 {
    order: 7;
  }

  /*----------------------------------------------------- */
  /*  nak           */
  /*----------------------------------------------------- */
  .nak {
    padding-bottom: 30px;
  }
  .nak .h2_style01 {
    margin-bottom: 30px;
  }

  .nak_intro {
    padding: 30px 0 0;
  }
  .nak_intro h2 {
    font-size: 16px;
    margin-bottom: 20px;
  }
  .nak_intro h2 br {
    display: none;
  }
  .nak_intro p br {
    display: none;
  }

  .sec {
    padding: 30px 0 0;
  }
  .sec .box {
    background-color: rgba(255, 255, 255, 0.7);
  }
  .sec .box h3 {
    font-size: 18px;
    font-weight: bold;
  }
  .sec .wrap {
    display: flex;
  }

  #sec01 .box {
    padding: 15px;
  }
  #sec01 h3 {
    margin-bottom: 20px;
  }
  #sec01 .txt01 {
    margin-bottom: 20px;
  }
  #sec01 .wrap {
    flex-direction: column;
  }
  #sec01 .block_01 {
    width: 45%;
    padding: 0;
    margin: 0 auto 15px;
  }
  #sec01 .block_02 {
    width: 100%;
  }

  #sec02 .box {
    padding: 15px;
  }
  #sec02 h3 {
    margin-bottom: 10px;
    padding-bottom: 10px;
    background: url(../images/nak/ico_q.png) left top no-repeat;
    background-size: 30px;
    padding-left: 35px;
    padding-top: 5px;
  }
  #sec02 .txt01 {
    margin-bottom: 40px;
  }
  #sec02 .wrap {
    flex-direction: column;
  }
  #sec02 .block_01,
  #sec02 .block_02,
  #sec02 .block_03,
  #sec02 .block_04 {
    width: 100%;
  }
  #sec02 .block_01 {
    margin-bottom: 20px;
  }
  #sec02 .block_01 p {
    margin-bottom: 20px;
  }
  #sec02 .block_01 p br {
    display: none;
  }
  #sec02 .block_01 img {
    width: 60%;
    margin: 0 auto;
  }
  #sec02 .block_02 {
    margin-bottom: 20px;
  }
  #sec02 .block_03 p {
    margin-bottom: 10px;
  }
  #sec02 .block_03 p br {
    display: none;
  }
  #sec02 .block_03 img {
    width: 60%;
    margin: 0 auto 20px;
  }
  #sec02 .block_04 {
    padding-bottom: 0px;
  }

  #sec03 h3 {
    margin-bottom: 20px;
  }
  #sec03 h3 .q {
    font-size: 30px;
  }
  #sec03 .txt01 {
    margin-bottom: 40px;
  }
  #sec03 .wrap {
    flex-direction: column;
  }
  #sec03 .block_01,
  #sec03 .block_02,
  #sec03 .block_03,
  #sec03 .block_04 {
    text-align: left;
    width: 100%;
    padding: 15px;
  }
  #sec03 .block_01 img,
  #sec03 .block_02 img,
  #sec03 .block_03 img,
  #sec03 .block_04 img {
    width: 90%;
    margin: 0 auto 20px;
  }
  #sec03 .block_01,
  #sec03 .block_02,
  #sec03 .block_03 {
    border: none;
  }

  #sec04 .box {
    padding: 20px 15px;
  }
  #sec04 h3 {
    margin-bottom: 20px;
  }
  #sec04 img {
    margin-bottom: 20px;
  }
  #sec04 .btn {
    width: 100%;
    margin: 0 auto;
  }

#sec05 .box {
    padding: 5%;
    background: url(../images/nak/bg_nak_map_sp.png) center 70% no-repeat;
    background-size: 95%;
    background-color: rgba(255, 255, 255, 0.7);
    height: 70vw;
    background-position: center;
}

  #sec05 .box a {
    color: #333;
    font-size: 12px;
  }

#sec05 .box .map01 {
    position: absolute;
    top: auto;
    right: 10px;
    bottom: 10px;
    padding: 5px 5px;
    background-color: #fff;
    border: 2px solid #009423;
    border-radius: 30px;
}

#sec05 .box .map02 {
    position: absolute;
    top: auto;
    right: 112px;
    bottom: 10px;
    padding: 5px 5px;
    background-color: #fff;
    border: 2px solid #009423;
    border-radius: 30px;
}

  #sec05 .box .map03 {
    position: absolute;
    top: auto;
    right: 202px;
    bottom: 10px;
    padding: 5px 10px;
    background-color: #fff;
    border: 2px solid #009423;
    border-radius: 30px;
  }

#sec05 .box .map04 {
    position: absolute;
    top: auto;
    right: 10px;
    bottom: 50px;
    padding: 5px 5px;
    background-color: #fff;
    border: 2px solid #009423;
    border-radius: 30px;
}

#sec05 .box .map05 {
    position: absolute;
    top: auto;
    right: 112px;
    bottom: 50px;
    padding: 5px 5px;
    background-color: #fff;
    border: 2px solid #009423;
    border-radius: 30px;
}

#sec05 .box .map06 {
    position: absolute;
    top: auto;
    right: 203px;
    bottom: 50px;
    padding: 5px 5px;
    background-color: #fff;
    border: 2px solid #009423;
    border-radius: 30px;
}

  #sec05 .txt01 br {
    display: none;
  }

  .inline-content {
    max-width: 100%;
    overflow: hidden;
  }

  .inline-content .pic {
    width: 100%;
    float: none;
  }

  .inline-content .txt {
    width: 100%;
    box-sizing: border-box;
    float: none;
    padding: 20px;
    margin-top: 0px;
  }

  .inline-content .txt .ttl {
    font-size: 18px;
  }

  .inline-content .txt .add {
    margin-bottom: 10px;
  }

  .inline-content .txt .tel {
    margin-bottom: 10px;
  }

  .inline-content .txt .btn {
    width: 100%;
  }

  .inline-content .txt .btn:after {
    display: block;
    content: '';
    position: absolute;
    top: 50%;
    right: 15px;
    width: 10px;
    height: 10px;
    margin-top: -6px;
    border-right: 2px solid #009423;
    border-bottom: 2px solid #009423;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }

  /*----------------------------------------------------- */
  /*  gallery           */
  /*----------------------------------------------------- */
  .gallery .inner {
    padding-top: 30px;
    text-align: center;
  }
  .gallery .inner h2 {
    font-size: 18px;
    margin-bottom: 10px;
  }
  .gallery .inner p {
    margin-bottom: 30px;
  }
  .gallery .gallery_list {
    margin: 0 -10px 30px;
  }
  .gallery .gallery_list li {
    width: 33%;
    padding: 0 1% 10px;
  }
  .gallery .page_navi {
    margin-bottom: 30px;
  }

  /*----------------------------------------------------- */
  /*  news           */
  /*----------------------------------------------------- */
  .news h2 {
    font-size: 24px;
    padding-bottom: 10px;
    margin-bottom: 30px;
  }

  .pkz {
    width: 100%;
    overflow: hidden;
    margin: 10px -20px 20px -10px;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  .pkz ul.bread_crumb {
    position: relative;
    height: 30px;
  }
  .pkz li {
    font-size: 12px;
    height: 30px;
    padding-top: 0;
  }
  .pkz li:not(:last-child):after {
    margin-top: -8px;
  }
  .pkz li:first-child:after {
    margin-top: -11px;
  }

  .news_inner {
    max-width: 100%;
    margin: 0 20px;
  }
  .news_inner .list {
    font-size: 14px;
    margin-bottom: 30px;
  }
  .news_inner .list dt {
    padding: 10px 0 0;
    clear: both;
    width: 100%;
    float: none;
  }
  .news_inner .list dd {
    padding: 0px 35px 10px 0;
  }
  .news_inner .list dd:after {
    display: block;
    content: '';
    position: absolute;
    top: 50%;
    right: 0;
    width: 14px;
    height: 14px;
    margin-top: -21px;
    border-right: 1px solid #009423;
    border-bottom: 1px solid #009423;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .news_inner .date {
    font-size: 14px;
  }
  .news_inner h3 {
    font-size: 16px;
    margin-bottom: 20px;
  }
  .news_inner .contens {
    margin-bottom: 30px;
    padding-bottom: 30px;
  }
  .news_inner .page_navi {
    margin-bottom: 30px;
  }

  /*----------------------------------------------------- */
  /*  page_navi           */
  /*----------------------------------------------------- */
  .page_navi {
    width: 100%;
    clear: both;
    text-align: center;
  }

  .page_navi li {
    display: inline;
  }

  .page_navi li.current span {
    color: #fff;
    display: inline-block;
    padding: 10px 12px;
    background: #009423;
  }

  .page_navi li a {
    color: #fff;
    padding: 10px 12px;
    background: #cccccc;
    display: inline-block;
    text-decoration: none;
  }

  .page_navi li a:hover {
    color: #009423;
  }

  /*----------------------------------------------------- */
  /*  entry           */
  /*----------------------------------------------------- */
  #entry_mail .inner {
    padding: 30px 0;
  }
  #entry_mail .h2_style01 {
    margin-bottom: 20px;
  }
  #entry_mail h2 + p {
    margin-bottom: 20px;
  }
  #entry_mail h2 + p br {
    display: none;
  }
  #entry_mail .table_wrap {
    width: 100%;
  }
  #entry_mail th {
    box-sizing: border-box;
    display: block;
    width: 100%;
    padding: 10px;
  }
  #entry_mail td {
    box-sizing: border-box;
    display: block;
    width: 100%;
    padding: 10px 0;
  }
  #entry_mail select {
    box-sizing: border-box;
    width: 100%;
    padding: 10px;
  }
  #entry_mail input[type="text"],
  #entry_mail input[type="email"] {
    box-sizing: border-box;
    width: 100%;
  }
  #entry_mail input[type="text"].mr10 {
    margin-right: 4%;
  }
  #entry_mail input[type="text"].half {
    width: 48%;
  }
  #entry_mail input[type="text"].years {
    width: 30%;
  }
  #entry_mail textarea {
    box-sizing: border-box;
    width: 100%;
    padding: 10px;
    height: 8rem;
  }
  #entry_mail input[type="submit"] {
    width: 100%;
    color: #fff;
    font-size: 16px;
    margin-bottom: 20px;
  }
  #entry_mail .submit_wrap {
    width: 100%;
    text-align: center;
    padding-top: 30px;
  }
  #entry_mail .submit_wrap ul {
    margin: 30px auto 0;
  }
  #entry_mail .submit_wrap li {
    display: block;
    text-align: center;
    width: 100%;
    margin: 0;
  }
  #entry_mail .submit_wrap .return {
    display: block;
    box-sizing: border-box;
    font-size: 16px;
    width: 100%;
    height: 40px;
    line-height: 40px;
    margin: 0 auto;
  }
  #entry_mail .exlink {
    background: url(../images/entry/ico_exlink.png) right center no-repeat;
    padding-right: 18px;
    color: #333;
    margin-left: 5px;
  }

  #entry_tel .inner {
    padding: 30px 0;
  }
  #entry_tel .h2_style01 {
    margin-bottom: 20px;
  }
  #entry_tel .txt01 {
    margin-bottom: 20px;
  }
  #entry_tel .txt02 {
    font-size: 30px;
    margin-bottom: 20px;
  }
  #entry_tel .txt04 {
    font-size: 18px;
    margin-bottom: 30px;
  }
  #entry_tel .txt05 {
    margin-bottom: 20px;
  }
  #entry_tel ul {
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
  }
  #entry_tel li {
    width: 100%;
    padding: 8% 0;
    font-size: 16px;
    text-align: center;
  }
#entry_tel li span {
    font-weight: normal;
    padding-left: 40px;
    display: block;
    vertical-align: middle;
    text-align: left;
    margin-top: 15px;
    text-align: center;
    padding: 0 !important;
}

  /*----------------------------------------------------- */
  /*  recruitment           */
  /*----------------------------------------------------- */
  .recruitment {
    padding-bottom: 0px;
  }
  .recruitment .intro {
    padding: 30px 0;
  }
  .recruitment .intro .txt01 {
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 20px;
  }
  .recruitment .intro .txt01 br {
    display: none;
  }
  .recruitment .intro p br {
    display: none;
  }
  .recruitment .ttl01 {
    text-align: center;
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 30px;
  }
  .recruitment .notfound {
    margin-bottom: 30px;
  }

  .choice_wrap {
    width: 100%;
    box-sizing: content-box;
    margin: 0 -20px 30px;
    padding: 0 20px;
  }
  .choice_wrap h3 {
    font-size: 16px;
    margin-bottom: 15px;
  }
  .choice_wrap ul {
    text-align: center;
  }
  .choice_wrap li {
    display: inline-block;
  }
  .choice_wrap a {
    height: 28px;
    padding-top: 0px;
    font-size: 12px;
	  padding-bottom: 8px;
  }
  .choice_wrap .choice01 {
    float: none;
    width: 100%;
    padding: 20px 0;
  }
  .choice_wrap .choice01 li {
    width: 34%;
    margin: 0 2%;
  }
  .choice_wrap .choice02 {
    float: none;
    width: 100%;
    box-sizing: border-box;
    padding: 20px 0;
  }
  .choice_wrap .choice02 li {
    width: 28%;
    margin: 0 0.5%;
  }
  .choice_wrap .choice03 {
    clear: both;
    width: 100%;
    padding: 20px 0;
    height: auto;
    background: none;
  }
  .choice_wrap .choice03 ul {
    position: static;
  }
  .choice_wrap .choice03 li {
    width: 23%;
    margin: 0 0.5%;
  }
  .choice_wrap .choice03 a {
    width: 100%;
    margin: 0;
  }

  .job {
    width: 100%;
    margin: 0 auto 30px;
  }
  .job h3 {
    font-size: 16px;
    font-weight: bold;
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 2px solid #009423;
  }
  .job h3 + p {
    margin-bottom: 20px;
  }
  .job .tb {
    box-sizing: border-box;
    margin-bottom: 20px;
  }
  .job .tb th {
    padding: 10px;
  }
  .job .tb td {
    padding: 10px;
  }
  .job .tb_style01 {
    width: 100%;
    float: none;
  }
  .job .tb_style02 {
    margin-bottom: 10px;
  }
.job .tb_style02 th, .job .tb_style02 td {
    display: block;
    width: 100%;
    box-sizing: border-box;
}
  .job .pic {
    float: none;
    max-width: 100%;
    margin-bottom: 0px;
  }
  .job .btn_wrap {
    background: none;
    padding: 20px 0;
  }
  .job .btn_wrap .btn {
    width: 100%;
    height: 60px;
    line-height: 60px;
    font-size: 18px;
  }
  .job .btn_wrap .btn:after {
    content: '';
    position: absolute;
    top: 50%;
    margin-top: -9px;
    right: 15px;
    width: 18px;
    height: 18px;
  }
  .job .mb60 {
    margin-bottom: 30px;
  }
  .job h4 {
    font-size: 18px;
    margin-bottom: 20px;
  }
  .job h4:after {
    display: block;
    content: '';
    width: 80px;
    margin: 5px auto 0;
  }
  .job .pic02 {
    text-align: center;
    margin-bottom: 20px;
    width: 100%;
  }
  .job .pic02 li {
    display: inline-block;
    width: 31%;
    margin: 0 0.5%;
  }
  .job .feature {
    margin-bottom: 30px;
  }
  .job .feature h5 {
    background: url(../images/recruitment/ico_01.png) left center no-repeat;
    background-size: 20px;
    padding-left: 25px;
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 10px;
    line-height: 1.6;
  }
  .job .return {
    padding-top: 10px;
  }
  .job .return .btn {
    width: 100%;
    height: 60px;
    line-height: 60px;
    font-size: 18px;
  }
  .job .return .btn:after {
    content: '';
    position: absolute;
    top: 50%;
    margin-top: -9px;
    right: 15px;
    width: 18px;
    height: 18px;
  }

  /*----------------------------------------------------- */
  /*  work sryle           */
  /*----------------------------------------------------- */
  .ws_ttl {
    background: url(../images/ws/bg_ws_ttl.png);
    background-size: cover;
  }

  .bg_ws_01 {
    background: #eeeeee;
    padding: 30px 0 1px;
  }

  .bg_ws_02 {
    background: #eeeeee;
    padding: 30px 0 1px;
  }

  .ws .lnav li {
    width: 100%;
  }
  .ws .lnav a {
    padding: 0 10px;
  }
  .ws h2 {
    padding: 20px 0;
    font-size: 18px;
  }
  .ws h2 strong {
    font-size: 36px;
  }
  .ws .catch {
    padding-top: 30px;
    height: 220px;
    color: #fff;
  }
  .ws .catch .txt01 {
    margin: 0;
    font-size: 36px;
    font-style: italic;
    font-weight: bold;
  }
  .ws .catch .txt02 {
    margin: 0 0 10px 0;
    font-size: 18px;
    font-weight: bold;
  }
  .ws .catch .txt02 br {
    display: none;
  }
  .ws .catch .txt03 {
    width: 100%;
    margin: 0;
    font-size: 12px;
  }
  .ws .catch .txt03 br {
    display: none;
  }
  .ws .page_link {
    display: none;
  }
  .ws .h_style01 {
    text-align: center;
    margin-bottom: 20px;
  }

  .work_contents {
    width: 100%;
    display: flex;
    flex-direction: column;
  }

  .txt_block, .img_block {
    width: 100%;
  }

  .txt_block {
    box-sizing: border-box;
    padding: 20px 4%;
  }
  .txt_block h3 {
    font-size: 18px;
  }
  .txt_block h3:after {
    width: 50px;
    margin: 2px auto 10px;
  }
  .txt_block p {
    margin-bottom: 15px;
  }

  .num01 {
    order: 1;
  }

  .num02 {
    order: 2;
  }

  .num03 {
    order: 4;
  }

  .num04 {
    order: 3;
  }

  .num05 {
    order: 5;
  }

  .num06 {
    order: 6;
  }

  .btn_ws {
    margin: 30px auto;
  }

  .img_ws_01 {
    box-sizing: border-box;
    width: 100%;
    background: #fff;
    padding: 10px 5px;
    margin-bottom: 30px;
  }
  .img_ws_01 img {
    width: 100%;
  }

  .img_ws_02 {
    box-sizing: border-box;
    width: 100%;
    background: #fff;
    padding: 10px 5px;
    margin: 30px 0;
  }
  .img_ws_02 img {
    width: 100%;
  }

  .img_ws_03 {
    width: 100%;
    margin-bottom: 30px;
  }

  .interview_catch {
    height: auto;
    background: url(../images/common/bg_01.png);
    margin-bottom: 0px;
  }
  .interview_catch .wrap {
    float: none;
    width: 100%;
    box-sizing: border-box;
    padding: 20px 0;
  }
  .interview_catch .ttl {
    font-size: 18px;
    margin-bottom: 15px;
  }
  .interview_catch h4 {
    font-size: 24px;
    padding-bottom: 10px;
    border-bottom: 3px solid #009423;
    margin-bottom: 15px;
    letter-spacing: 0;
    line-height: 1.4;
  }
  .interview_catch h4 br {
    display: none;
  }
  .interview_catch .name {
    font-size: 15px;
    margin-bottom: 10px;
  }

  .interview_catch_sp {
    margin-bottom: 30px;
  }

  .question {
    margin: 0 auto 30px;
  }
  .question dl {
    border-bottom: 2px solid #009423;
    overflow: hidden;
    font-weight: bold;
    font-size: 14px;
    padding-bottom: 5px;
    margin-bottom: 10px;
  }
  .question dt {
    color: #009423;
    font-style: italic;
    font-size: 16px;
    float: none;
    width: 100%;
    padding-top: 0;
    margin-bottom: 5px;
  }
  .question dd {
    font-weight: bold;
    margin-left: 0;
  }
  .question .btn {
    margin: 0 auto;
  }

  .pic_question {
    margin: 0 auto 30px;
  }

  .btn_wrap_ws03 {
    background: url(../images/ws/bg_ws_03_01.png) 10px center no-repeat #fff;
    background-size: contain;
    height: auto;
    text-align: center;
    padding: 20px 10px;
    margin-bottom: 30px;
  }
  .btn_wrap_ws03 p {
    margin-bottom: 20px;
    font-size: 14px;
  }
  .btn_wrap_ws03 .btn {
    margin: 0 auto;
  }

  .mb110 {
    margin-bottom: 30px;
  }

  .zadankai_wrap {
    margin: 0 auto 30px;
  }
  .zadankai_wrap .pic01 {
    margin-bottom: 30px;
  }
  .zadankai_wrap .pic02 {
    margin-top: 30px;
  }

  .acc-menu dt {
    position: relative;
    display: block;
    cursor: pointer;
    background: #fff;
    height: 46px;
    line-height: 1.4;
    font-size: 13px;
    font-weight: bold;
    margin-top: 10px;
    padding: 10px 0 0 10px;
  }
  .acc-menu dt .italic {
    font-size: 14px;
    padding-right: 10px;
    display: block;
  }
  .acc-menu dt:after {
    display: block;
    content: '';
    position: absolute;
    top: 50%;
    right: 10px;
    width: 10px;
    height: 10px;
    margin-top: -10px;
  }
  .acc-menu dd {
    display: none;
    padding: 10px 10px 1px;
  }

  #tab li {
    width: 50%;
    height: 60px;
  }
  #tab a {
    position: relative;
    box-sizing: border-box;
    text-align: left;
    height: 60px;
    font-size: 14px;
    line-height: 1.4;
    padding: 12px 0 0 12px;
  }
  #tab a:after {
    display: block;
    content: '';
    position: absolute;
    top: 30px;
    right: 10px;
    width: 10px;
    height: 10px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    margin-top: -5px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }

  .mb50 {
    margin-bottom: 30px;
  }
	
/*-----170915-----*/	
	
	
	.header_inner .btn_entry_sp {
    float: right;
    width: 50px;
    height: 50px;
    margin-right: 1px;
		display: block;
}
	
/*-----170915_e-----*/	
	
	
	
	
}
