@charset "UTF-8";
/* 共通 =========== */
/* 共通・スマホ =========== */
.body-top .topics,
.body-top .panel-nav li a,
.body-top .panel-nav li a:after,
.wrap_news .news_tool li:first-child a,
.body-top .wrap_sns .sns .sns_list li .icon-textLink {
  background-image: url(../img/img-pad_sp.png);
  background-repeat: no-repeat;
  -webkit-background-size: 160px auto;
  background-size: 160px auto;
}

.body-top .topics {
  display: block;
  margin: 40px 0 20px;
  padding: 0 10px;
  background: url(../img/bg_topics-arrow_sp.png) no-repeat right center;
  -webkit-background-size: 18px 15px;
  background-size: 18px 15px;
}
.body-top .topics dl {
  display: table;
  width: 100%;
}
.body-top .topics dl dt {
  display: table-cell;
  width: 65px;
  background-color: #1e4b79;
  color: #ffffff;
  text-align: center;
  vertical-align: middle;
}
.body-top .topics dl dd {
  display: table-cell;
  padding: 0 15px 0 8px;
}
.body-top .wrap_news .infoHeader {
  margin: 0 10px;
}
.body-top .wrap_news .tabNav {
  display: table;
  width: 100%;
  border-left: 1px solid #dfdfdf;
}
.body-top .wrap_news .tabNav li {
  display: table-cell;
  width: 33.333%;
  border-top: 1px solid #dfdfdf;
  border-right: 1px solid #dfdfdf;
  font-size: 0.857em;
  line-height: 1.3;
  vertical-align: middle;
  background-color: #ededed;
}
.body-top .wrap_news .tabNav li a {
  display: inline-block;
  box-sizing: border-box;
  width: 100%;
  color: #252525;
}
.body-top .wrap_news .tabNav li a:hover {
  text-decoration: none;
}
.body-top .wrap_news .tabBody dt {
  padding: 17px 10px 0;
}
.body-top .wrap_news .tabBody dt .category {
  font-size: 0.857em;
  border: 1px solid #333333;
  margin-bottom: 5px;
  text-align: center;
  display: inline-block;
  padding: 0 10px;
}
.body-top .wrap_news .tabBody dd {
  padding: 0 10px 17px;
  border-bottom: 1px solid #dfdfdf;
}
.body-top .wrap_news#main .news_tool {
  margin: 0 10px 8px;
}
.body-top .wrap_news .news_tool li {
  display: inline-block;
  font-size: 0.857em;
  height: 30px;
  line-height: 30px;
  width: 45px;
  -webkit-transition: background 0.2s ease-in-out;
  -moz-transition: background 0.2s ease-in-out;
  -ms-transition: background 0.2s ease-in-out;
  -o-transition: background 0.2s ease-in-out;
  transition: background 0.2s ease-in-out;
}
.body-top .wrap_news .news_tool li:first-child {
  float: left;
  background-color: #ffcc00;
}
.body-top .wrap_news .news_tool li:first-child:hover {
  background-color: #eba705;
}
.body-top .wrap_news .news_tool li:first-child a {
  height: 30px;
  color: #252525;
  background-position: -145px 10px;
  padding-left: 14px;
}
.body-top .wrap_news .news_tool li:last-child {
  float: right;
  background-color: #333333;
  text-align: center;
}
.body-top .wrap_news .news_tool li:last-child:hover {
  background-color: #000000;
}
.body-top .wrap_news .news_tool li:last-child a {
  color: #ffffff;
  height: 100%;
}
.body-top .wrap_news .news_tool li a {
  display: block;
}
.body-top .wrap_news .news_tool li a:hover {
  text-decoration: none;
}
.body-top .wrap_sns {
  background-color: #edf3f1;
}

/* スマホ =========== */
@media screen and (max-width: 767px) {
  .panel-nav {
    border-top: 1px solid #dfdfdf;
    border-left: 1px solid #dfdfdf;
    margin: 0 10px 20px;
  }
  .panel-nav li {
    height: 83px;
    width: 50%;
    box-sizing: border-box;
    float: left;
    border-right: 1px solid #dfdfdf;
    border-bottom: 1px solid #dfdfdf;
    position: relative;
    overflow: hidden;
  }
  .panel-nav li a {
    display: block;
    height: 100%;
    position: relative;
    text-indent: 100%;
    white-space: nowrap;
    z-index: 100;
  }
  .panel-nav li a:after {
    content: "";
    display: block;
    width: 15px;
    height: 15px;
    background-position: 1px 0;
    position: absolute;
    top: 0;
    right: 0;
  }
  .panel-nav li a:hover {
    background-color: #edf3f1;
  }
  .panel-nav li:first-child a {
    background-position: center -47px;
  }
  .panel-nav li:nth-child(2) a {
    background-position: center -164px;
  }
  .panel-nav li:nth-child(3) a {
    background-position: center -280px;
  }
  .panel-nav li:last-child a {
    background-position: center -396px;
  }

  .body-top .wrap_news .tabNav li a {
    padding: 17px 0;
  }
  .body-top .wrap_news .tabNav li.line2 a {
    padding: 9px 0;
  }
  .body-top .wrap_news .news_detail dl dd.news_detail_note {
    display: block;
    width: auto;
  }

  .wrap_movie .movie {
    box-sizing: border-box;
    padding: 30px 10px;
    width: 100%;
  }

  .wrap_sns .sns {
    width: 100%;
  }
  .wrap_sns .sns .sns_title {
    text-align: center;
    background-color: #d8e6e2;
    line-height: 37px;
  }
  .wrap_sns .sns .sns_list {
    display: table;
    width: 240px;
    margin: 0 auto;
    padding: 13px 0;
  }
  .wrap_sns .sns .sns_list li {
    display: table-cell;
  }
  .wrap_sns .sns .sns_list li .sns_list_title,
  .wrap_sns .sns .sns_list li .sns_list_window {
    display: none;
  }
  .wrap_sns .sns .sns_list li .sns_list_link {
    width: 50px;
    height: 40px;
    margin-left: 45px;
  }
  .wrap_sns .sns .sns_list li .sns_list_link .icon-textLink {
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    display: block;
    height: 100%;
  }
  .wrap_sns .sns .sns_list li.sns_list_youtube .icon-textLink {
    background-position: 1px -631px;
  }
  .wrap_sns .sns .sns_list li.sns_list_twitter .icon-textLink {
    background-position: 1px -735px;
  }
  .wrap_sns .sns .sns_list li.sns_list_facebook .sns_list_link {
    margin-left: 0;
  }
  .wrap_sns .sns .sns_list li.sns_list_facebook .icon-textLink {
    background-position: 1px -834px;
  }

  .body-top .wrap_service {
    border-bottom: 1px solid #dfdfdf;
  }
  .body-top #js_carousel {
    width: 100%;
    max-width: 949px;
    height: auto;
    max-height: 301px;
  }
  .body-top #js_carousel .cassette li {
    display: none;
  }
  .body-top #js_carousel .cassette li a {
    display: block;
  }
  .body-top #js_carousel .cassette .sp {
    width: 100%;
  }
  .body-top #js_carousel .cassette .default {
    display: block;
  }
  .body-top #js_carousel .cassette .default .pc {
    display: none;
  }
  .body-top #js_carousel.js-on {
    position: relative;
  }
  .body-top #js_carousel.js-on .cassette {
    overflow: hidden;
    position: relative;
    height: auto;
    max-height: 301px;
  }
  .body-top #js_carousel.js-on .cassette ul {
    position: relative;
  }
  .body-top #js_carousel.js-on .cassette li {
    float: left;
    display: block;
  }
  .body-top #js_carousel.js-on .cassette a {
    display: block;
  }
  .body-top #js_carousel.js-on .indicator {
    position: absolute;
    z-index: 2;
    width: 100%;
    text-align: center;
    right: auto;
    bottom: -25px;
  }
  .body-top #js_carousel.js-on .indicator ul {
    position: relative;
  }
  .body-top #js_carousel.js-on .indicator li {
    margin-left: 10px;
    display: inline-block;
  }
  .body-top #js_carousel.js-on .indicator li:first-child {
    margin-left: 0;
  }
  .body-top #js_carousel.js-on .indicator li a {
    background-color: #ccc;
    display: block;
    position: relative;
    width: 34px;
    height: 9px;
  }
  .body-top #js_carousel.js-on .indicator li a .tooltip {
    display: none !important;
  }
  .body-top #js_carousel.js-on .indicator .active a {
    background-color: #1e4b79;
  }
  .body-top #js_carousel.js-on .controller li {
    width: 40px;
    height: 100%;
    position: absolute;
    top: 0;
    z-index: 1;
  }
  .body-top #js_carousel.js-on .controller li .label {
    position: absolute;
    left: 100%;
  }
  .body-top #js_carousel.js-on .controller .btn-prev {
    left: 0;
  }
  .body-top #js_carousel.js-on .controller .btn-prev a:after {
    background-position: -140px -1112px;
  }
  .body-top #js_carousel.js-on .controller .btn-next {
    right: 0;
  }
  .body-top #js_carousel.js-on .controller .btn-next a:after {
    background-position: -140px -1025px;
  }
  .body-top #js_carousel.js-on .controller a {
    background-color: #ffffff;
    opacity: .8;
    height: 100%;
    display: block;
    overflow: hidden;
    position: relative;
  }
  .body-top #js_carousel.js-on .controller a:after {
    content: "";
    display: block;
    width: 14px;
    height: 32px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -16px 0 0 -7px;
    background-image: url(../img/img-pad_sp.png);
    background-repeat: no-repeat;
    -webkit-background-size: 160px auto;
    background-size: 160px auto;
  }
  .body-top #js_carousel.js-on .controller img {
    position: absolute;
    top: 50%;
  }
}
/* 共通・スマホ =========== */
/* 社長メッセージ */
.body-company .lead {
  font-size: 1.57em;
  color: #1c5ba8;
}
.body-company .txt-message {
  line-height: 2;
}

/* 会社概要 */
.body-company #main .textBtn a[target] span.icon-pdf {
  background-image: none;
  padding-left: 0;
}

.company-profile-table {
  width: 100%;
  border-top: 1px solid #dfdfdf;
  border-left: 1px solid #dfdfdf;
}
.company-profile-table th, .company-profile-table td {
  border-right: 1px solid #dfdfdf;
  border-bottom: 1px solid #dfdfdf;
  vertical-align: top;
}
.company-profile-table th {
  text-align: center;
  background-color: #edf3f1;
  padding: 5px 10px;
}
.company-profile-table td {
  padding: 10px;
}
.company-profile-table .show-access {
  text-align: right;
  margin-bottom: 0 !important;
}
.company-profile-table .show-access a {
  background-position: -152px -17px;
  padding-left: 10px;
}
.company-profile-table .company-profile-table_innertable {
  width: 100%;
  margin-bottom: 0 !important;
}
.company-profile-table .company-profile-table_innertable th, .company-profile-table .company-profile-table_innertable td {
  width: 100%;
  border: 0;
  padding: 0;
}
.company-profile-table .company-profile-table_innertable th {
  background-color: transparent;
  text-align: left;
}
.company-profile-table .company-profile-table_innertable td {
  margin-bottom: 5px;
}

.body-company #main .btn_l_space {
  margin: 0;
}

.group-company-list {
  margin: 0 10px;
}
.group-company-list li a {
  background-position: -152px -17px;
  padding-left: 11px;
}

/* アクセス */
.body-company .btn-print-map {
  display: none;
}
.body-company .btn-gmap a {
  display: block;
  height: 44px;
  line-height: 44px;
  margin: 0 80px;
}

/* スマホ =========== */
@media screen and (max-width: 767px) {
  .company-profile-table .show-access a,
  .group-company-list li a {
    background-image: url(../img/img-pad_sp.png);
    background-repeat: no-repeat;
    -webkit-background-size: 160px auto;
    background-size: 160px auto;
  }

  .company-profile-table th, .company-profile-table td {
    display: block;
  }
}
/* 共通・スマホ =========== */
.body-service .lead {
  font-size: 1.57em;
  color: #1c5ba8;
}

.contents-list li {
  display: inline-block;
  margin-right: 40px;
}
.contents-list li a {
  background-position: -152px -17px;
  padding-left: 12px;
}

.border-box {
  border: 1px solid #dfdfdf;
  border-radius: 10px;
  padding: 15px;
  margin: 25px 0;
}
#main .border-box .title-h4 {
  font-weight: bold;
  font-size: 1.142em;
  margin: 0 0 10px 0;
}
#main .border-box .title-h4:before {
  display: none;
}
#main .border-box .imgC {
  margin-bottom: 0;
}

.color-box {
  background-color: #edf3f1;
  padding: 15px;
}
.border-box .color-box {
  margin: -15px;
  margin-top: 10px;
  border-radius: 0 0 10px 10px;
}
#main .color-box .title-h4 {
  margin: 0 0 15px 0;
  border-bottom: 1px solid #555555;
  font-size: 1.142em;
  padding-bottom: 10px;
  font-weight: bold;
}
#main .color-box .title-h4:before {
  display: none;
}
#main .color-box .btn-list {
  margin-bottom: 0;
}
.color-box .btn-list li {
  margin-bottom: 10px;
}
.color-box .btn-list li a {
  display: block;
  padding: 10px 0;
}

.body-service #main .title-h3 {
  margin-top: 60px;
}
.body-service .caution-note {
  margin-top: 15px;
}
.body-service .caution-note li {
  text-indent: -3.6em;
  padding-left: 3.6em;
}
.body-service #main .textBtn a[target] span.blank-mark {
  background-position: -137px -529px;
  padding-left: 0;
}
.body-service .conne h4 {
  text-align: left;
  border-bottom: 0;
}
.body-service .conne .conneTtl {
  text-align: left;
}
.body-service .bizCase a {
  background-position: -152px -17px;
  padding-left: 12px;
}

@media screen and (max-width: 767px) {
  .contents-list li a,
  #main .textBtn a[target] span.blank-mark,
  .body-service .bizCase a {
    background-image: url(../img/img-pad_sp.png);
    background-repeat: no-repeat;
    -webkit-background-size: 160px auto;
    background-size: 160px auto;
  }
}
/* 共通・スマホ =========== */
.body-csr .lead {
  margin-top: 20px;
}
.body-csr .update-news {
  border: 1px solid #dfdfdf;
  margin: 26px 10px 0;
}
.body-csr .update-news .update-news_title {
  background-color: #dfdfdf;
  font-size: 1.142em;
  height: 50px;
  line-height: 50px;
  position: relative;
  padding-left: 35px;
}
.body-csr .update-news .update-news_title:before {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  background-color: #ffffff;
  position: absolute;
  top: 20px;
  left: 15px;
}
.body-csr .update-news .infoBody {
  padding: 5px 0 0;
}
.body-csr .update-news .infoBody .tabBody {
  height: 220px;
  overflow: auto;
}
.body-csr .update-news .infoBody dt {
  display: inline-block;
  padding: 5px 15px 0;
  margin-bottom: 5px;
}
.body-csr .update-news .infoBody time {
  width: 105px;
  font-size: 0.857em;
  margin-bottom: 5px;
  margin-right: 10px;
}
.body-csr .update-news .infoBody .category {
  font-size: 0.857em;
  border: 1px solid #333333;
  padding: 0 10px;
}
.body-csr .update-news .infoBody dd {
  display: block;
  padding: 0 15px 10px;
}
.body-csr .bnr_report {
  margin-top: 40px;
}

/* スマホ =========== */
@media screen and (max-width: 767px) {
  .body-csr .update-news .news_detail dl {
    margin: 0;
  }
  .body-csr .title-h3, .body-csr .lead {
    margin-left: 10px;
    margin-right: 10px;
  }

  .bnr_report .bnr_report_sp {
    display: block;
    width: 100%;
  }
  .bnr_report .bnr_report_pc {
    display: none;
  }
}
/* 共通・スマホ =========== */
.body-introduce img {
  vertical-align: top;
}

.body-prospectus #main .title-category {
  font-size: 1.24em;
  margin-bottom: 8px;
}
.body-prospectus #main .indexList section h2 {
  margin-bottom: 0;
}
.body-prospectus small.mini_box {
  width: auto;
}

/* スマホ =========== */
@media screen and (max-width: 767px) {
  .recruit_header_entry,
  .recruit_header_localnav {
    display: none;
  }
  #spNav .recruit_header_entry, #spNav
  .recruit_header_localnav {
    display: block;
    font-size: 0.928em;
  }

  #spNav .title-recruit, .title-entry {
    display: none;
  }
}
/* 共通・スマホ =========== */
.grouplink-list {
  line-height: 1.7;
}

/* スマホ =========== */
@media screen and (max-width: 767px) {
  .grouplink-list a {
    background-image: url(../img/img-pad_sp.png);
    background-repeat: no-repeat;
    -webkit-background-size: 160px auto;
    background-size: 160px auto;
  }

  .grouplink-list li {
    text-indent: -11px;
    padding-left: 11px;
  }
  .grouplink-list li a {
    background-position: -152px -17px;
    padding-left: 11px;
  }
}
/* 共通・スマホ =========== */
.body-event .lead {
  margin-top: 20px;
}
.body-event .report-list {
  margin-top: 20px;
}
.body-event .report-list li {
  margin-top: 16px;
}
.body-event .report-list li a {
  color: #252525;
}
.body-event .report-list li a:hover {
  text-decoration: none;
}

/* スマホ =========== */
@media screen and (max-width: 767px) {
  .body-event .report-list li.flag-new:before {
    background-image: url(../img/img-pad_sp.png);
    background-repeat: no-repeat;
    -webkit-background-size: 160px auto;
    background-size: 160px auto;
  }

  .body-event .lead {
    margin-left: 10px;
    margin-right: 10px;
  }
  .body-event .report-list {
    margin-left: 10px;
    margin-right: 10px;
  }
  .body-event .report-list li {
    border: 1px solid #dfdfdf;
    position: relative;
  }
  .body-event .report-list li.flag-new:before {
    content: "";
    display: block;
    width: 65px;
    height: 24px;
    background-position: -64px -1189px;
    position: absolute;
    top: -13px;
    left: -6px;
  }
  .body-event .report-list li a {
    overflow: hidden;
    *zoom: 1;
    padding: 13px 10px;
    display: block;
  }
  .body-event .report-list li a .report-list_thum {
    width: 100px;
    float: right;
    margin-left: 8px;
  }
  .body-event .report-list li a .report-list_thum img {
    width: 100px;
    vertical-align: bottom;
  }
  .body-event .report-list li a .report-list_inner_date {
    font-size: 0.875em;
  }
}
