@charset "UTF-8";
/* Scss Document */
@import url(normalize.css);
/* Scss Document */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

* {
  margin: 0;
  padding: 0; }

/*=======================================================
    font
========================================================*/
@font-face {
  font-family: 'Antonio-Bold';
  src: url("../font/Antonio-Bold.ttf.woff") format("woff"), url("../font/Antonio-Bold.ttf.svg#Antonio-Bold") format("svg"), url("../font/Antonio-Bold.ttf.eot"), url("../font/Antonio-Bold.eot?#iefix") format("embedded-opentype");
  font-weight: normal;
  font-style: normal; }

.font-accent {
  font-family: 'Antonio-Bold'; }


html {
  font-size: 62.5%; }

body {
  font-family: "ヒラギノ角ゴ Pro W3", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif!important;
  font-size: 1.5rem;
  line-height: 1.8;
  -webkit-text-size-adjust: 100%; }
  
  li.phone_m45 a {
    color: #337ab7;
}
  
  @media screen and (max-width: 767px) {
    body {
      font-size: 1.2rem;
      line-height: 1.8; } }

main {
  display: block;
  text-align: center; }

.fade, a, .home .contact, .home .access {
  -webkit-transition: 0.5s ease-in-out;
  -moz-transition: 0.5s ease-in-out;
  -o-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out; }
  .fade:hover, a:hover, .home .contact:hover, .home .access:hover {
    opacity: 0.7;
    filter: alpha(opacity=70); }

.transition, .recruit .box .box_inner.box_inner-01 p::after, .recruit .box .box_inner.box_inner-02 p::after, .recruit .box .box_inner.box_inner-03 p::after {
  -webkit-transition: 0.5s ease-in-out;
  -moz-transition: 0.5s ease-in-out;
  -o-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out; }

.tentyu, .structure .structure_inner h4 {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  /* Safari用 */
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }

a {
  text-decoration: none;
  display: block; }

h1, h2, h3, h4, h5, h6 {
  margin: 0px; }

#wrapper {
  overflow: hidden;
  -webkit-font-smoothing: none;
  -webkit-font-smoothing: antialiased;
  -webkit-font-smoothing: subpixel-antialiased; }

.clearfix {
  *zoom: 1; }
  .clearfix::after {
    content: "";
    display: block;
    clear: both; }

	.content_wrap {
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		width: 100%;
		margin: 0 auto;
		}
li.phone_m45 img {
    vertical-align: unset;
}
  .header #gNav ul li a {
        display: block;
        padding: 35px 15px;
        font-weight: 800;
		color: #19a2b5;
	}
  @media screen and (min-width: 768px) {
    .content_wrap {
      max-width: 980px; } }
  @media screen and (max-width: 1199px) {
    .content_wrap {
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      width: -webkit-calc(calc(100% - calc(3% * 2)));
      width: calc(calc(100% - calc(3% * 2))); } }
  @media screen and (max-width: 767px) {
    .content_wrap {
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      width: -webkit-calc(calc(100% - calc(5% * 2)));
      width: calc(calc(100% - calc(5% * 2))); } }

_:-ms-lang(x), .content_wrap {
  margin: 0px auto; }
  
  @media screen and (max-width: 1199px) {
    _:-ms-lang(x), .content_wrap {
      width: 94%; }	
	  }
	@media screen and (max-width: 970px) {
		.header #gNav ul li a {
			padding: 35px 10px;
		}
	}
  @media screen and (max-width: 767px) {
    _:-ms-lang(x), .content_wrap {
      width: 90%; } }

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

@media screen and (min-width: 768px) {
  .sp {
    display: none !important; } }

@media screen and (max-width: 767px) {
  .sp-01 {
    display: none; } }

@media screen and (min-width: 768px) {
  .sp-01 {
    display: none; } }

@media screen and (min-width: 606px) and (max-width: 767px) {
  .sp-01 {
    display: block !important; } }

.btnTop {
  background: #24bf98;
  text-align: center;
  padding: 30px 0px;
  line-height: 1; }
  @media screen and (max-width: 767px) {
    .btnTop {
      padding: 15px 0px; } }
  .btnTop span {
    background: url(../img/btn_top.svg) no-repeat center center;
    display: inline-block;
    width: 20px;
    height: 20px; }
    @media screen and (max-width: 767px) {
      .btnTop span {
        background: url(../img/btn_top.svg) no-repeat center center;
        background-size: 15px;
        width: 15px;
        height: 15px; } }

.titleStyle {
  font-size: 3.2rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  font-weight: 700; }
  @media screen and (max-width: 767px) {
    .titleStyle {
      font-size: 2.0rem; } }
  .titleStyle span {
    font-size: 1.6rem;
    display: block; }
    @media screen and (max-width: 767px) {
      .titleStyle span {
        font-size: 1.2rem; } }

.titleStyle01 {
  font-size: 2.2rem;
  font-weight: bold; }
  @media screen and (max-width: 767px) {
    .titleStyle01 {
      font-size: 1.5rem; } }
  .titleStyle01 span {
    display: inline-block;
    background: url(../img/img_kakko_left.png) no-repeat left center, url(../img/img_kakko_right.png) no-repeat right center;
    padding: 0px 40px; }
    @media screen and (max-width: 767px) {
      .titleStyle01 span {
        padding: 0px 20px;
        background-size: 4px,4px; } }

.slash, .box .box_inner::before, .recruit .box .box_inner.box_inner-01::before, .recruit .box .box_inner.box_inner-02::before, .recruit .box .box_inner.box_inner-03::before, .businessInner .box01 .box01_inner::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0px auto;
  width: 22px;
  height: 37px;
  z-index: 10; }
  @media screen and (max-width: 767px) {
    .slash, .box .box_inner::before, .recruit .box .box_inner.box_inner-01::before, .recruit .box .box_inner.box_inner-02::before, .recruit .box .box_inner.box_inner-03::before, .businessInner .box01 .box01_inner::before {
      width: 15px;
      height: 30px; } }

.colorRed {
  color: #f03b3d; }

.colorOrange {
  color: #f67d1c; }

.colorYellow {
  color: #f6b71c; }

.box {
  overflow: visible; }
  .box .box_inner {
    overflow: visible;
    position: relative;
    z-index: 1; }
    @media screen and (min-width: 768px) {
      .box .box_inner {
        width: 31%;
        width: -webkit-calc(calc(100% - 7%) / 3);
        width: calc(calc(100% - 7%) / 3);
        float: left;
        margin-right: 3.5%;
        -webkit-box-sizing: border-box;
        box-sizing: border-box; } }
    .box .box_inner:nth-child(3n) {
      margin-right: 0px; }
    .box .box_inner::before {
      background: url(../img/ico_slash_01_2x.png) no-repeat center top;
      background-size: 22px 37px; }
      @media screen and (max-width: 767px) {
        .box .box_inner::before {
          background-size: 15px; } }
    @media screen and (max-width: 767px) {
      .box .box_inner {
        width: 100%;
        clear: both;
        margin-right: 0px; } }
    .box .box_inner a {
      display: block;
      background: #fff; }
      .box .box_inner a .box_innerImg {
        line-height: 0; }
      .box .box_inner a .box_innerText {
        padding: 40px 0px; }
        @media screen and (max-width: 767px) {
          .box .box_inner a .box_innerText {
            text-align: left;
            padding: 25px 15px;
            -webkit-box-sizing: border-box;
            box-sizing: border-box; } }
      .box .box_inner a h3 {
        font-size: 2.2rem;
        font-weight: 600; }
        @media screen and (max-width: 767px) {
			
          .box .box_inner a h3 {
            font-size: 1.5rem; } }
      .box .box_inner a .box_innerImg img {
        width: 100%; }
  @media screen and (min-width: 768px) {
	  .phone_m{
		display:none;
	}
    .box _:-ms-lang(x), .box .box_inner {
      width: 31%; } }

.btnStyle {
  position: relative;
  display: block;
  font-weight: 600;
  padding: 20px 0px;
  line-height: 32px;
  text-align: center;
  border-top: 1px solid #19283C;
  z-index: 0;
  background: #fff;
  margin-top: 40px;
  letter-spacing: 0.05em; }
  .btnStyle::before {
    content: "";
    position: absolute;
    top: -20px;
    left: 50%;
    margin-left: -20px;
    display: block;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 0 20px 20px 20px;
    border-color: transparent transparent #fff transparent;
    z-index: 2; }
  .btnStyle::after {
    content: "";
    position: absolute;
    top: -21px;
    left: 50%;
    margin-left: -21px;
    display: block;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 0 21px 21px 21px;
    border-color: transparent transparent #19283C transparent;
    z-index: 1; }

.btnStyle.active::before {
  content: "";
  position: absolute;
  bottom: -24px;
  left: 50%;
  margin-left: -20px;
  margin-top: 19px;
  border: 20px solid transparent;
  border-top: 20px solid #FFF;
  z-index: 2; }

.btnStyle.active::after {
  content: "";
  position: absolute;
  margin-top: 20px;
  bottom: -30px;
  left: 50%;
  margin-left: -21px;
  border: 21px solid transparent;
  border-top: 21px solid #555;
  z-index: 1; }

a:hover .btnStyle {
  opacity: 1 !important;
  background: #fff; }

.button, .home .business .business_innerText a {
  display: inline-block;
  width: 200px;
  text-align: center;
  text-decoration: none;
  outline: none; }
  .button::before, .home .business .business_innerText a::before, .button::after, .home .business .business_innerText a::after {
    position: absolute;
    z-index: -1;
    display: block;
    content: ''; }
  .button, .home .business .business_innerText a, .button::before, .home .business .business_innerText a::before, .button::after, .home .business .business_innerText a::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s; }
img.sqt {
    padding-top: 18px;
    padding-bottom: 16px;
}
.js-mvslider {
  position: absolute;
  -webkit-animation: mvslideAnime 15s;
  animation: mvslideAnime 15s;
  min-height: 600px;
  max-height: 600px;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite; }
  .js-mvslider img {
    width: 120%; }
    @media screen and (max-width: 767px) {
      .js-mvslider img {
        width: 125%; } }

.common .mainTop {
  text-align: center;
  position: relative; }
  .common .mainTop.mainTop-01 {
    background: url(../img/about/bg_main.jpg) no-repeat top center;
    background-size: 100% 100%; }
    @media screen and (min-width: 1500px) {
      .common .mainTop.mainTop-01 {
        background-size: 100% 100%; } }
  .common .mainTop.mainTop-02 {
    background: url(../img/recruit/bg_main.jpg) no-repeat top center;
    background-size: 100% 100%; }
    @media screen and (min-width: 1500px) {
      .common .mainTop.mainTop-02 {
        background-size: 100% 100%; } }
  .common .mainTop.mainTop-03 {
    background: url(../img/access/bg_main.jpg) no-repeat top center;
    background-size: 100% 100%; }
    @media screen and (min-width: 1500px) {
      .common .mainTop.mainTop-03 {
        background-size: 100% 100%; } }
  .common .mainTop.mainTop-04 {
    background: url(../img/business/bg_main.jpg) no-repeat top center;
    background-size: 100% 100%; }
    @media screen and (min-width: 1500px) {
      .common .mainTop.mainTop-04 {
        background-size: 100% 100%; } }
  .common .mainTop.mainTop-05 {
    background: url(../img/rinen/bg_main.jpg) no-repeat top center;
    background-size: 100% 100%; }
    @media screen and (min-width: 1500px) {
      .common .mainTop.mainTop-05 {
        background-size: 100% 100%; } }
  .common .mainTop.mainTop-06 {
    background: url(../img/medical/bg_main.jpg) no-repeat top center;
    background-size: 100% 100%; }
    @media screen and (min-width: 1500px) {
      .common .mainTop.mainTop-06 {
        background-size: 100% 100%; } }
    .common .mainTop.mainTop-07 {
      background: url(../img/product/bg_main.jpg) no-repeat top center;
      background-size: 100% 100%; }
      @media screen and (min-width: 1500px) {
        .common .mainTop.mainTop-07 {
          background-size: 100% 100%; } }
  .common .mainTop::after {
    content: "";
    position: absolute;
    top: 60%;
    left: 0;
    width: 100%;
    min-height: 165px;
    background: url(../img/bg_main_01.png) repeat-x center bottom;
    z-index: 10; }
    @media screen and (max-width: 767px) {
      .common .mainTop::after {
        background-size: auto 84px;
        top: 10%; } }
  .common .mainTop .titleStyle {
    padding: 90px 0;
    margin: 0px auto; }
    @media screen and (max-width: 767px) {
      .common .mainTop .titleStyle {
        padding: 45px 0; } }
    .common .mainTop .titleStyle span {
      color: #fff; }

.common main {
  padding: 120px 0px 50px 0px; }
  @media screen and (max-width: 767px) {
    .common main {
      padding: 60px 0px 30px; } }

.about .box .box_inner {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 20px; }
  .about .box .box_inner .box_innerBg {
    background-color: #fff; }
  @media screen and (max-width: 767px) {
    .about .box .box_inner {
      padding-top: 15px;
      margin-bottom: 20px;
      clear: both; }
      .about .box .box_inner .box_innerImg {
        background-size: 50%; } }
  @media screen and (max-width: 605px) {
    .about .box .box_inner:nth-child(1) .box_innerImg {
      background: url(../img/sp_thu_about_01.jpg) no-repeat center center;
      background-size: cover; }
    .about .box .box_inner:nth-child(2) .box_innerImg {
      background: url(../img/sp_thu_about_02.jpg) no-repeat center center;
      background-size: cover; }
    .about .box .box_inner:nth-child(3) .box_innerImg {
      background: url(../img/sp_thu_about_03.jpg) no-repeat center center;
      background-size: cover; } }
  .about .box .box_inner .box_innerText {
    background: #f1f0e7; }
    @media screen and (min-width: 768px) {
      .about .box .box_inner .box_innerText {
        padding: 40px 0px 10px; }
        .about .box .box_inner .box_innerText.box_innerText-01 {
          padding: 10px 0px; } }
    @media screen and (max-width: 830px) {
      .about .box .box_inner .box_innerText p {
        font-size: 1.2rem; } }
    @media screen and (max-width: 767px) {
      .about .box .box_inner .box_innerText {
        float: left;
        width: 75%; } }
    @media screen and (max-width: 500px) {
      .about .box .box_inner .box_innerText {
        width: 60%; } }
  @media screen and (max-width: 767px) {
    .about .box .box_inner .box_innerImg {
      float: right;
      line-height: 0;
      width: 25%; } }
  @media screen and (max-width: 500px) {
    .about .box .box_inner .box_innerImg {
      width: 40%; } }

.about .box h3 {
  color: #24bf98; }

.recruit .box .box_inner {
  padding: 20px 0px 0px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }
  @media screen and (max-width: 767px) {
    .recruit .box .box_inner {
      text-align: left;
      padding: 13px 0px 20px; }
      .recruit .box .box_inner:last-child {
        padding: 13px 0px 0px; } }
  .recruit .box .box_inner a {
    display: block;
    padding-top: 40px;
    background: #fff; }
    .recruit .box .box_inner a:hover {
      opacity: 1; }
    @media screen and (min-width: 768px) {
      .recruit .box .box_inner a {
        padding: 40px 0px; } }
    @media screen and (max-width: 767px) {
      .recruit .box .box_inner a {
        padding: 20px 10% 20px 5%; } }
    .recruit .box .box_inner a:hover h3,
    .recruit .box .box_inner a:hover p {
      opacity: 1; }
    .recruit .box .box_inner a p {
      padding-bottom: 120px; }
      @media screen and (max-width: 767px) {
        .recruit .box .box_inner a p {
          padding-right: 100px;
          padding-bottom: 0px; } }
  .recruit .box .box_inner.box_inner-01::before {
    background: url(../img/ico_slash_02_2x.png) no-repeat center top;
    background-size: 22px 37px; }
    @media screen and (max-width: 767px) {
      .recruit .box .box_inner.box_inner-01::before {
        background-size: 15px; } }
  .recruit .box .box_inner.box_inner-01 .box_innerTitle {
    color: #f6b71c; }
  .recruit .box .box_inner.box_inner-01 p {
    position: relative; }
    .recruit .box .box_inner.box_inner-01 p::after {
      content: "";
      background: url(../img/ico_recruit_01_2x.png) no-repeat center bottom;
      background-size: 104px;
      position: absolute;
      width: 104px;
      height: 104px;
      display: block;
      margin: 15px auto;
      left: 0;
      right: 0; }
      @media screen and (max-width: 767px) {
        .recruit .box .box_inner.box_inner-01 p::after {
          background: url(../img/ico_recruit_01_2x.png) no-repeat right center;
          background-size: 68px;
          width: 68px;
          height: 68px;
          right: 0;
          margin-right: 0;
          top: -40px; } }
      @media screen and (min-width: 482px) and (max-width: 767px) {
        .recruit .box .box_inner.box_inner-01 p::after {
          top: -50px; } }
  .recruit .box .box_inner.box_inner-01 a:hover p::after {
    background: url(../img/ico_recruit_01_hover_2x.png) no-repeat center bottom;
    background-size: 104px; }
    @media screen and (max-width: 767px) {
      .recruit .box .box_inner.box_inner-01 a:hover p::after {
        background: url(../img/ico_recruit_01_hover_2x.png) no-repeat right center;
        background-size: 65px; } }
  .recruit .box .box_inner.box_inner-02::before {
    background: url(../img/ico_slash_03_2x.png) no-repeat center top;
    background-size: 22px 37px; }
    @media screen and (max-width: 767px) {
      .recruit .box .box_inner.box_inner-02::before {
        background-size: 15px; } }
  .recruit .box .box_inner.box_inner-02 .box_innerTitle {
    color: #24bf98; }
  .recruit .box .box_inner.box_inner-02 p {
    position: relative; }
    .recruit .box .box_inner.box_inner-02 p::after {
      content: "";
      background: url(../img/ico_recruit_02_2x.png) no-repeat center bottom;
      background-size: 104px;
      position: absolute;
      width: 104px;
      height: 104px;
      display: block;
      margin: 15px auto;
      left: 0;
      right: 0; }
      @media screen and (max-width: 767px) {
        .recruit .box .box_inner.box_inner-02 p::after {
          background: url(../img/ico_recruit_02_2x.png) no-repeat right center;
          background-size: 68px;
          width: 68px;
          height: 68px;
          right: 0;
          margin-right: 0;
          top: -40px; } }
      @media screen and (min-width: 482px) and (max-width: 767px) {
        .recruit .box .box_inner.box_inner-02 p::after {
          top: -50px; } }
  .recruit .box .box_inner.box_inner-02 a:hover p::after {
    background: url(../img/ico_recruit_02_hover_2x.png) no-repeat center bottom;
    background-size: 104px; }
    @media screen and (max-width: 767px) {
      .recruit .box .box_inner.box_inner-02 a:hover p::after {
        background: url(../img/ico_recruit_02_hover_2x.png) no-repeat right center;
        background-size: 65px; } }
    @media screen and (min-width: 482px) and (max-width: 767px) {
      .recruit .box .box_inner.box_inner-02 a:hover p::after {
        top: -50px; } }
  .recruit .box .box_inner.box_inner-03::before {
    background: url(../img/ico_slash_04_2x.png) no-repeat center top;
    background-size: 22px 37px; }
    @media screen and (max-width: 767px) {
      .recruit .box .box_inner.box_inner-03::before {
        background-size: 15px; } }
  .recruit .box .box_inner.box_inner-03 .box_innerTitle {
    color: #f67d1c; }
  .recruit .box .box_inner.box_inner-03 p {
    position: relative; }
    .recruit .box .box_inner.box_inner-03 p::after {
      content: "";
      background: url(../img/ico_recruit_03_2x.png) no-repeat center bottom;
      background-size: 104px;
      position: absolute;
      width: 104px;
      height: 104px;
      display: block;
      margin: 15px auto;
      left: 0;
      right: 0;
      bottom: -10px; }
      @media screen and (max-width: 767px) {
        .recruit .box .box_inner.box_inner-03 p::after {
          background: url(../img/ico_recruit_03_2x.png) no-repeat right center;
          background-size: 68px;
          width: 68px;
          height: 68px;
          right: 0;
          margin-right: 0;
          top: -40px; } }
      @media screen and (min-width: 482px) and (max-width: 767px) {
        .recruit .box .box_inner.box_inner-03 p::after {
          top: -50px; } }
  .recruit .box .box_inner.box_inner-03 a:hover p::after {
    background: url(../img/ico_recruit_03_hover_2x.png) no-repeat center bottom;
    background-size: 104px; }
    @media screen and (max-width: 767px) {
      .recruit .box .box_inner.box_inner-03 a:hover p::after {
        background: url(../img/ico_recruit_03_hover_2x.png) no-repeat right center;
        background-size: 65px; } }
  @media screen and (max-width: 767px) {
    .recruit .box .box_inner h3 {
      font-size: 1.5rem; } }

table.tableStyle {
  border-bottom: 1px solid #e9e9e9;
  width: 100%;
  margin-top: 10px; }
  table.tableStyle th {
    text-align: left;
    font-weight: bold;
    border-top: 1px solid #e9e9e9; }
    @media screen and (min-width: 768px) {
      table.tableStyle th {
        padding: 20px;
        width: 30%; } }
    @media screen and (max-width: 767px) {
	  table.tableStyle th {
        display: block;
        padding: 10px 10px 5px; } }
  table.tableStyle td {
    text-align: left; }
    @media screen and (min-width: 768px) {
      table.tableStyle td {
        padding: 20px;
        width: 70%;
        border-top: 1px solid #e9e9e9; } }
    @media screen and (max-width: 767px) {
      table.tableStyle td {
        display: block;
        padding: 0px 10px 10px; } }
    table.tableStyle td .information_innerBtn {
      display: inline-block;
      font-weight: bold;
      padding: 10px 20px;
      border-radius: 4px;
      line-height: 1;
      margin-left: 1em; }
      table.tableStyle td .information_innerBtn.information_innerBtn-green {
        border: 1px solid #24bf98;
        color: #24bf98; }
      table.tableStyle td .information_innerBtn.information_innerBtn-red {
        border: 1px solid #e12c2c;
        color: #e12c2c; }

.contactMail {
  background: url(../img/bg_yellow.png) repeat left top;
  color: #FFF;
  padding: 60px 0px; }
  @media screen and (max-width: 767px) {
    .contactMail {
      padding: 30px 0px; } }
  .contactMail dt {
    font-size: 2.4rem; }
    @media screen and (max-width: 767px) {
      .contactMail dt {
        font-size: 1.8rem; } }
  .contactMail a {
    color: #FFF;
    border: 2px solid #FFF;
    border-radius: 4px;
    display: inline-block;
    padding: 8px 20px;
    margin-top: 30px; }
    @media screen and (max-width: 767px) {
      .contactMail a {
        margin-top: 15px; } }
    .contactMail a:hover {
      color: #000000;
      background: #fff;
      opacity: 1; }

.topicPath {
  border-top: 1px solid #e9e9e9; }
  .topicPath p {
    font-size: 1.2rem;
    padding: 20px 0px; }
    .topicPath p a {
      display: inline-block;
      line-height: 0;
      margin: 0px 10px;
      text-decoration: underline; }
      .topicPath p a:hover {
        text-decoration: none; }
      .topicPath p a:first-child {
        margin-left: 0px; }

/*=======================================================

     header

========================================================*/
.header {
  background: #fff;
  opacity: 0.9;
  filter: alpha(opacity=90);
  position: relative;
  z-index: 100;
  min-height: 65px; }
  .header h1 {
    position: absolute;
    left: 10px;
    /* top: 18px; */
    top: 0px;
    float: left; }
    @media screen and (min-width: 768px) and (max-width: 784px) {
      .header h1 {
        left: 5%;
        height: 35px;
		}
        .header h1 img {
          height: 35px;
          width: auto; } 
		  }
    @media screen and (max-width: 767px) {
      .header h1 {
         left: 0%;
			 }
		.header h1 img {
		    margin-bottom: 20px;
			margin-top: 0px;
		}
        .header h1 img {
          height: 35px;
          width: auto; 
		  } 
	}
  .header .header_spMenu {
    display: block;
    position: absolute;
    top: 25px;
    right: 5%;
    width: 30px;
    height: 22px;
    background: #000;
    border-top: 10px solid #fff;
    border-bottom: 10px solid #fff;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s; }
    @media screen and (min-width: 992px) {
      .header .header_spMenu {
        display: none; } }
    .header .header_spMenu::before {
      content: '';
      position: absolute;
      width: 30px;
      height: 2px;
      background: #000;
      top: -9px;
      right: 0;
      -moz-transition: all 0.3s;
      -webkit-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s; }
    .header .header_spMenu::after {
      content: '';
      position: absolute;
      width: 30px;
      height: 2px;
      background: #000;
      bottom: -9px;
      right: 0;
      -moz-transition: all 0.3s;
      -webkit-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s; }
    .header .header_spMenu.active {
      background: #FFF; }
      .header .header_spMenu.active::before {
        -moz-transform: rotate(-135deg);
        -webkit-transform: rotate(-135deg);
        -ms-transform: rotate(-135deg);
        transform: rotate(-135deg);
        top: 0;
        right: 0; }
      .header .header_spMenu.active::after {
        -moz-transform: rotate(135deg);
        -webkit-transform: rotate(135deg);
        -ms-transform: rotate(135deg);
        transform: rotate(135deg);
        bottom: 0;
        right: 0; }
  .header #gNav {
    float: right;
    line-height: 1;
    display: block; }
    @media screen and (min-width: 992px) {
      .header #gNav {
        display: block;
        height: 85px; } }
    @media screen and (min-width: 992px) {
      .header #gNav {
        height: 84px;
        position: relative;
        z-index: 100; } }
    @media screen and (min-width: 768px) and (min-width: 783px) {
      .header #gNav {
        display: block !important; } }
    @media screen and (min-width: 992px) {
      .header #gNav ul {
        display: block !important; } }
    @media screen and (max-width: 991px) {
      .header #gNav ul {
        position: absolute;
        top: 65px;
        left: 0;
        width: 100%;
        z-index: 100;
        background: #24bf98;
        display: none; } }
    .header #gNav ul li {
      list-style: none;
      float: left; }
      @media screen and (max-width: 991px) {
        .header #gNav ul li {
          clear: both;
          width: 100%; } }
      
        @media screen and (max-width: 991px) {
          .header #gNav ul li a {
            display: block;
            width: 100%;
            color: #FFF!important;
            padding: 20px;
            font-size: 1.5rem;
            -webkit-box-sizing: border-box;
            box-sizing: border-box;
            position: relative;
            text-align: center;
            border-bottom: 1px solid #FFF; } }
      .header #gNav ul li.gNav_recruit a {
        color: #fff;
        background: #f6b71c; }
        @media screen and (min-width: 768px) {
          .header #gNav ul li.gNav_recruit a {
            margin-left: 5px;
            padding: 35px 15px; } }
        @media screen and (max-width: 991px) {
          .header #gNav ul li.gNav_recruit a {
            border-bottom: 0px; } }

/*=======================================================

     footer

========================================================*/
.footer {
  padding: 65px 0px 30px;
  color: #434343; }
  @media screen and (max-width: 767px) {
    .footer {
      text-align: center;
      padding: 25px 0px; } }
  @media screen and (min-width: 768px) {
    .footer .footer_main {
      width: 35%;
      float: left; } }
  .footer .footer_main h1 {
    font-size: 1.6rem;
    color: #000000;
    font-weight: 600; }
    @media screen and (max-width: 767px) {
      .footer .footer_main h1 {
        font-size: 1.4rem; } }
  .footer .footer_main dl {
    margin-top: 20px; }
    @media screen and (max-width: 767px) {
      .footer .footer_main dl {
        margin-top: 10px; } }
    @media screen and (min-width: 768px) {
      .footer .footer_main dl dt {
        float: left;
        width: 71px; } }
    @media screen and (max-width: 767px) {
      .footer .footer_main dl dt {
        margin-bottom: 10px;
        text-align: center; }
        .footer .footer_main dl dt img {
          width: 50px; } }
    .footer .footer_main dl dd {
      font-size: 1.2rem; }
      @media screen and (min-width: 768px) {
        .footer .footer_main dl dd {
          float: right;
          width: calc(100% - 80px); } }
  @media screen and (min-width: 768px) {
    .footer .footer_nav {
      width: 65%;
      float: right; } }

  .footer .footer_nav .footer_navInner {
    float: left;
    width: 25%; }
    .footer .footer_nav .footer_navInner p {
      margin-bottom: 15px;
      font-weight: 600; }
    .footer .footer_nav .footer_navInner li {
      font-size: 1.2rem; }
      .footer .footer_nav .footer_navInner li a {
        display: inline-block; }
    .footer .footer_nav .footer_navInner a {
      color: #434343; }
      .footer .footer_nav .footer_navInner a:hover {
        text-decoration: underline; }
  .footer .footer_copy {
    clear: both;
    margin-top: 40px; }
    @media screen and (max-width: 767px) {
      .footer .footer_copy {
        margin-top: 20px;
        font-size: 0.5rem; }
	  .footer .footer_nav .footer_navInner {
			float: left;
			width: 100%; 
		}

	}
    .footer .footer_copy p {
      color: #434343; }
      @media screen and (min-width: 768px) {
        .footer .footer_copy p {
          font-size: 1rem; } }

/*=======================================================

     home

========================================================*/
.slider_css {
  margin: 0 auto;
  position: relative;
  overflow: hidden; }
  /* @media screen and (max-width: 767px) { */
    /* .slider_css { */
      /* height: 300px; } } */
  /* @media screen and (min-width: 768px) { */
    /* .slider_css { */
      /* height: 600px; } } */
  .slider_css ul {
    margin: 0;
    padding: 0;
    list-style: none; }
    .slider_css ul li img {
      /* background-size: cover; */
      width: 100%;
      /* position: absolute; */
      /* top: 0; */
      /* left: 0; */
      -webkit-animation-iteration-count: infinite;
      animation-iteration-count: infinite;
      -webkit-animation-duration: 24s;
      animation-duration: 24s; }
      /* @media screen and (max-width: 767px) { */
        /* .slider_css ul li img { */
          /* height: 300px; } } */
      /* @media screen and (min-width: 768px) { */
        /* .slider_css ul li img { */
          /* height: 600px; } } */
      .slider_css ul li img:nth-child(1) {
        -webkit-animation-delay: -3s;
        animation-delay: -3s; }
        /* @media screen and (min-width: 768px) { */
          /* .slider_css ul li img:nth-child(1) { */
            /* background-image: url("../img/img_main_1.jpg"); } } */
        /* @media screen and (max-width: 767px) { */
          /* .slider_css ul li img:nth-child(1) { */
            /* background-image: url("../img/sp_img_main_1.jpg"); } } */
      .slider_css ul li img:nth-child(1) {
        -webkit-animation-name: slider-zoomin;
        animation-name: slider-zoomin; }
      .slider_css ul li img:nth-child(2) {
        -webkit-animation-name: slider-zoomin;
        animation-name: slider-zoomin; }
      .slider_css ul li img:nth-child(3) {
        -webkit-animation-name: slider-zoomin;
        animation-name: slider-zoomin; }
        .slider_css ul li img:nth-child(4) {
          -webkit-animation-name: slider-zoomin;
          animation-name: slider-zoomin; }
		.slider_css ul li img:nth-child(5) {
          -webkit-animation-name: slider-zoomin;
          animation-name: slider-zoomin; }
		.slider_css ul li img:nth-child(6) {
          -webkit-animation-name: slider-zoomin;
          animation-name: slider-zoomin; }
		.slider_css ul li img:nth-child(7) {
          -webkit-animation-name: slider-zoomin;
          animation-name: slider-zoomin; }
		.slider_css ul li img:nth-child(8) {
          -webkit-animation-name: slider-zoomin;
          animation-name: slider-zoomin; } 
          
      .slider_css ul li img:nth-child(2) {
        opacity: 0;
        -webkit-animation-delay: 1s;
        animation-delay: 1s; }
        /* @media screen and (min-width: 768px) { */
          /* .slider_css ul li img:nth-child(2) { */
            /* background-image: url("../img/img_main_2.jpg"); } } */
        /* @media screen and (max-width: 767px) { */
          /* .slider_css ul li img:nth-child(2) { */
            /* background-image: url("../img/sp_img_main_2.jpg"); } } */
      .slider_css ul li img:nth-child(1) {
        -webkit-animation-name: slider-zoomin;
        animation-name: slider-zoomin; }
      .slider_css ul li img:nth-child(2) {
        -webkit-animation-name: slider-zoomin;
        animation-name: slider-zoomin; }
      .slider_css ul li img:nth-child(3) {
        -webkit-animation-name: slider-zoomin;
        animation-name: slider-zoomin; }
        .slider_css ul li img:nth-child(1) {
          -webkit-animation-name: slider-zoomin;
          animation-name: slider-zoomin; }

      .slider_css ul li img:nth-child(3) {
        opacity: 0;
        -webkit-animation-delay: 13s;
        animation-delay: 13s; }
        /* @media screen and (min-width: 768px) { */
          /* .slider_css ul li img:nth-child(3) { */
            /* background-image: url("../img/img_main_3.jpg"); } } */
        /* @media screen and (max-width: 767px) { */
          /* .slider_css ul li img:nth-child(3) { */
            /* background-image: url("../img/sp_img_main_3.jpg"); } } */
      .slider_css ul li img:nth-child(1) {
        -webkit-animation-name: slider-zoomin;
        animation-name: slider-zoomin; }
      .slider_css ul li img:nth-child(2) {
        -webkit-animation-name: slider-zoomin;
        animation-name: slider-zoomin; }
        .slider_css ul li img:nth-child(3) {
          -webkit-animation-name: slider-zoomin;
          animation-name: slider-zoomin; }
          .slider_css ul li img:nth-child(4) {
            -webkit-animation-name: slider-zoomin;
            animation-name: slider-zoomin; }
		.slider_css ul li img:nth-child(5) {
            -webkit-animation-name: slider-zoomin;
            animation-name: slider-zoomin; }
		.slider_css ul li img:nth-child(6) {
            -webkit-animation-name: slider-zoomin;
            animation-name: slider-zoomin; }
		.slider_css ul li img:nth-child(7) {
            -webkit-animation-name: slider-zoomin;
            animation-name: slider-zoomin; }
		.slider_css ul li img:nth-child(8) {
            -webkit-animation-name: slider-zoomin;
            animation-name: slider-zoomin; }
		
		
.slider_css ul li img:nth-child(8) {
        opacity: 0;
        -webkit-animation-delay: -1s;
        animation-delay: -1s; }
      .slider_css ul li img:nth-child(1) {
        -webkit-animation-name: slider-zoomin;
        animation-name: slider-zoomin; }
      .slider_css ul li img:nth-child(2) {
        -webkit-animation-name: slider-zoomin;
        animation-name: slider-zoomin; }
        .slider_css ul li img:nth-child(3) {
          -webkit-animation-name: slider-zoomin;
          animation-name: slider-zoomin; }
          .slider_css ul li img:nth-child(4) {
            -webkit-animation-name: slider-zoomin;
            animation-name: slider-zoomin; }
		.slider_css ul li img:nth-child(5) {
            -webkit-animation-name: slider-zoomin;
            animation-name: slider-zoomin; }
		.slider_css ul li img:nth-child(6) {
            -webkit-animation-name: slider-zoomin;
            animation-name: slider-zoomin; }
		.slider_css ul li img:nth-child(7) {
            -webkit-animation-name: slider-zoomin;
            animation-name: slider-zoomin; }
		.slider_css ul li img:nth-child(8) {
            -webkit-animation-name: slider-zoomin;
            animation-name: slider-zoomin; }
     
  

  @media only screen and (max-width: 768px) {
    /* .slider_css { */
      /* height: 300px; } */
      .slider_css ul li img {
        background-size: cover;
        background-repeat: no-repeat; } }

@-webkit-keyframes slider-zoomin {
  0% {
    opacity: 0;
    -webkit-transform: scale(1);
    transform: scale(1); }
  12.5% {
    opacity: 1; }
  20% {
    opacity: 1; }
  27.5% {
    opacity: 1; }
  55% {
    opacity: 0; }
  100% {
    opacity: 0;
    -webkit-transform: scale(1.3);
    transform: scale(1.3); } }

@keyframes slider-zoomin {
  0% {
    opacity: 0;
    -webkit-transform: scale(1);
    transform: scale(1); }
  12.5% {
    opacity: 1; }
  20% {
    opacity: 1; }
  27.5% {
    opacity: 1; }
  55% {
    opacity: 0; }
  100% {
    opacity: 0;
    -webkit-transform: scale(1.3);
    transform: scale(1.3); } }

@-webkit-keyframes slider-zoomout {
  0% {
    opacity: 0;
    -webkit-transform: scale(1.3);
    transform: scale(1.3); }
  12.5% {
    opacity: 1; }
  20% {
    opacity: 1; }
  27.5% {
    opacity: 1; }
  55% {
    opacity: 0; }
  100% {
    opacity: 0;
    -webkit-transform: scale(1);
    transform: scale(1); } }

@keyframes slider-zoomout {
  0% {
    opacity: 0;
    -webkit-transform: scale(1.3);
    transform: scale(1.3); }
  12.5% {
    opacity: 1; }
  20% {
    opacity: 1; }
  27.5% {
    opacity: 1; }
  55% {
    opacity: 0; }
  100% {
    opacity: 0;
    -webkit-transform: scale(1);
    transform: scale(1); } }

.home .mainTop .mainTop_imgText {
  position: absolute;
  width: 433px;
  height: 262px;
  top: 50%;
  left: 50%;
  z-index: 2;
  -webkit-transform: translate(-50%, -50%);
  /* Safari用 */
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }
  @media screen and (max-width: 767px) {
    .home .mainTop .mainTop_imgText {
      width: 220px;
      height: auto;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      /* Safari用 */
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%); } }
  .home .mainTop .mainTop_imgText img {
    width: 100%; }

.home #top_mainSlider-pc,
.home #top_mainSlider-sp {
  position: relative;
  /* can either be relative, absolute or fixed. If position is not set (i.e. static), it would be set to "relative" by script */
  overflow: hidden;
  /* to bound the empty top space created by inner element's top margin */
  width: 100%;
  min-height: 600px;
  background-color: #999; }
  @media screen and (max-width: 767px) {
    .home #top_mainSlider-pc,
    .home #top_mainSlider-sp {
      min-height: 300px; } }

.home .demo-inner-content {
  position: relative;
  z-index: 2;
  margin: 180px auto;
  padding: 40px;
  max-width: 600px;
  color: #fff;
  text-align: center;
  font-size: 1.5em; }

.home .about {
  padding: 63px 0px 0px;
  position: relative;
  z-index: 10000;
  background: url(../img/bg_about.jpg) repeat-x left top, #FFF; }
  @media screen and (max-width: 767px) {
    .home .about {
      padding: 30px 0px 0px;
      background: url(../img/sp_bg_about.jpg) repeat-x left top, #FFF;
      background-size: 345px; } }
  .home .about .titleStyle {
    position: relative;
    padding: 50px 0px 30px;
    text-align: center; }
    @media screen and (max-width: 991px) {
		.home .about{
				z-index:unset;
			}
      .home .about .titleStyle {
        padding: 30px 0px 20px; } }
    .home .about .titleStyle::after {
      position: absolute;
      content: "";
      background: url(../img/ico_building.svg) no-repeat center top;
      width: 30px;
      margin: 0px auto;
      left: 0;
      right: 0;
      top: 0;
      height: 45px; }
      @media screen and (max-width: 767px) {
        .home .about .titleStyle::after {
          background-size: 20px;
          margin: 0px auto;
          width: 20px;
          height: 35px; } }
    .home .about .titleStyle span {
      color: #24bf98; }
  .home .about .box .box_inner {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 20px; }
    @media screen and (max-width: 767px) {
      .home .about .box .box_inner {
        padding-top: 15px;
        margin-bottom: 20px;
        clear: both; }
        .home .about .box .box_inner .box_innerImg {
          background-size: 50%; } }
    @media screen and (max-width: 605px) {
      .home .about .box .box_inner:nth-child(1) .box_innerImg {
        background: url(../img/sp_thu_about_01.jpg) no-repeat center center;
        background-size: cover; }
      .home .about .box .box_inner:nth-child(2) .box_innerImg {
        background: url(../img/sp_thu_about_02.jpg) no-repeat center center;
        background-size: cover; }
      .home .about .box .box_inner:nth-child(3) .box_innerImg {
        background: url(../img/sp_thu_about_03.jpg) no-repeat center center;
        background-size: cover; } }
    .home .about .box .box_inner .box_innerText {
      background: #f1f0e7; }
      @media screen and (min-width: 768px) {
        .home .about .box .box_inner .box_innerText {
          padding: 40px 0px 10px; }
          .home .about .box .box_inner .box_innerText.box_innerText-01 {
            padding: 10px 0px; } }
      @media screen and (max-width: 830px) {
        .home .about .box .box_inner .box_innerText p {
          font-size: 1.2rem; } }
      @media screen and (max-width: 767px) {
        .home .about .box .box_inner .box_innerText {
          float: left;
          width: 75%; } }
      @media screen and (max-width: 500px) {
        .home .about .box .box_inner .box_innerText {
          width: 60%; } }
    @media screen and (max-width: 767px) {
      .home .about .box .box_inner .box_innerImg {
        float: right;
        line-height: 0;
        width: 25%; } }
    @media screen and (max-width: 500px) {
      .home .about .box .box_inner .box_innerImg {
        width: 40%; } }
  .home .about .box h3 {
    color: #24bf98; }
  .home .about .box a {
    background: #FFF; }

.home .business {
  background: url(../img/bg_business.jpg) no-repeat center top;
  background-size: cover;
  padding: 60px 0px; }
  @media screen and (max-width: 767px) {
    .home .business {
      padding: 30px 5%; } }
  .home .business .business_innerTitle {
    display: block;
    text-align: center;
    position: relative; }
    @media screen and (min-width: 768px) {
      .home .business .business_innerTitle {
        max-width: 646px; } }
    .home .business .business_innerTitle dt {
      line-height: 0; }
      .home .business .business_innerTitle dt img {
        width: 100%; }
    .home .business .business_innerTitle dd {
      position: absolute;
      top: 110px;
      left: 0;
      right: 0; }
      @media screen and (max-width: 399px) {
        .home .business .business_innerTitle dd {
          top: 0px; } }
    .home .business .business_innerTitle h2.titleStyle {
      position: relative;
      margin: 0px auto; }
      @media screen and (max-width: 399px) {
        .home .business .business_innerTitle h2.titleStyle {
          top: 72px; } }
  .home .business .business_innerText {
    background: #fff;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
    @media screen and (min-width: 768px) {
      .home .business .business_innerText {
        max-width: 646px;
        padding: 60px 50px 50px; } }
    @media screen and (max-width: 767px) {
      .home .business .business_innerText {
        max-width: 100%;
        width: 100%;
        padding: 80px 25px 25px; } }
    .home .business .business_innerText a {
      border: 1px solid #000000;
      color: #000000;
      margin-top: 20px;
      display: inline-block;
      width: 200px;
      padding: 27px 30px;
      font-weight: 800; }
      .home .business .business_innerText a:hover {
        opacity: 1; }
      @media screen and (max-width: 767px) {
        .home .business .business_innerText a {
          padding: 21px;
          width: 100%;
          display: block; } }
      .home .business .business_innerText a:hover {
        background-color: #000000;
        border-color: #000000;
        color: #fff; }
  @media screen and (min-width: 768px) {
    .home .business .business_inner {
      display: inline-block; } }
  @media screen and (max-width: 767px) {
    .home .business .business_inner p img {
      width: 100%; } }
  .home .business .business_inner .titleStyle {
    position: relative;
    padding: 50px 0px 30px;
    text-align: center; }
    @media screen and (max-width: 767px) {
      .home .business .business_inner .titleStyle {
        padding: 25px 0px 30px; } }
    .home .business .business_inner .titleStyle::after {
      position: absolute;
      content: "";
      background: url(../img/ico_graph.svg) no-repeat center top;
      width: 44px;
      margin: 0px auto;
      top: 0;
      left: 0;
      right: 0;
      height: 44px; }
      @media screen and (max-width: 767px) {
        .home .business .business_inner .titleStyle::after {
          background-size: 22px;
          width: 22px;
          height: 22px; } }
    .home .business .business_inner .titleStyle span {
      color: #f6b71c; }

.home .recruit {
  background: url(../img/bg_recruit.jpg) no-repeat center top;
  background-size: 100%;
  padding-top: 60px; }
  @media screen and (max-width: 767px) {
    .home .recruit {
      background: url(../img/sp_bg_recruit.jpg) no-repeat center top;
      margin: 0px;
      padding-top: 30px; } }
  .home .recruit .titleStyle {
    color: #fff;
    position: relative;
    padding: 50px 0px 30px;
    text-align: center;
    margin: 0px auto;
    display: block;
    text-align: center; }
    @media screen and (max-width: 767px) {
      .home .recruit .titleStyle {
        padding: 30px 0px 20px; } }
    .home .recruit .titleStyle::after {
      position: absolute;
      content: "";
      background: url(../img/ico_human.png) no-repeat center top;
      width: 32px;
      left: 0;
      right: 0;
      margin: 0px auto;
      top: 0;
      height: 42px; }
      @media screen and (max-width: 767px) {
        .home .recruit .titleStyle::after {
          background-size: 20px;
          width: 20px; } }

.home .contact {
  background: url(../img/img_contact.jpg) no-repeat center top;
  background-size: cover;
  width: 50%;
  float: left;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: left; }
  @media screen and (min-width: 768px) {
    .home .contact a {
      padding: 170px 30px 30px; } }
  @media screen and (max-width: 767px) {
    .home .contact a {
      padding: 85px 0px 15px; } }
  .home .contact a:hover {
    opacity: 1; }
  @media screen and (max-width: 767px) {
    .home .contact h3 img {
      width: 130px; } }

.home .access {
  background: url(../img/img_access.jpg) no-repeat center top;
  background-size: cover;
  width: 50%;
  float: left;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: left; }
  @media screen and (min-width: 768px) {
	  li.phone_m45 {
			font-size: 28px;
			/* margin-right: 74px; */
			margin-top: -6px;
		}
    .home .access a {
      padding: 170px 30px 30px; } }
  @media screen and (max-width: 767px) {
    .home .access a {
      padding: 85px 0px 15px; } }
  .home .access a:hover {
    opacity: 1; }
  @media screen and (max-width: 767px) {
    .home .access h3 img {
      width: 144px; } }

/*=======================================================

    about

========================================================*/
/*=======================================================

    about　message

========================================================*/
.message main {
  background: url(../img/bg_message.jpg) no-repeat center bottom;
   background-size: 100% 100%;  
  }
  .message main h4 {
    font-size: 4.4rem;
    color: #24bf98;
    font-weight: bold;
    padding-top: 60px;
    margin: 60px auto;
    position: relative;
    text-align: center; }
    .message main h4::after {
      content: "";
      background: url(../img/ico_slash_01.png) no-repeat center center;
      width: 22px;
      height: 38px;
      display: block;
      position: absolute;
      left: 0;
      right: 0;
      margin: 0px auto;
      top: 0; }
    @media screen and (max-width: 767px) {
      .message main h4 {
        font-size: 2.1rem;
        padding-top: 30px;
        line-height: 1.4;
        margin: 0px auto 20px; }
        .message main h4::after {
          background-size: 11px;
          width: 11px;
          height: 20px; } }
  .message main .message_innerText {
    text-align: left; }
    @media screen and (min-width: 768px) {
      .message main .message_innerText {
        float: left;
        width: 50%; } }
    .message main .message_innerText dt {
      margin: 35px auto;
      font-weight: bold; }
      @media screen and (max-width: 767px) {
        .message main .message_innerText dt {
          margin: 20px auto; } }
    @media screen and (max-width: 767px) {
      .message main .message_innerText dd img {
        width: 200px; } }
  @media screen and (min-width: 768px) {
	  .message_innerText1 {
			text-align: left;
		}
    .message main .message_innerImg {
      float: right;
      width: 50%; } }
  @media screen and (max-width: 767px) {
    .message main .message_innerImg {
      margin-bottom: 20px; } }
  .message main .message_innerImg img {
    width: 90%;
	}
    @media screen and (max-width: 767px) {
      .message main .message_innerImg img {
        width: 80%; } }
	

/*=======================================================

    about　information

========================================================*/
.information main p {
  text-align: right; }
  @media screen and (max-width: 767px) {
    .information main p {
      font-size: 1.2rem; } }

@media screen and (min-width: 768px) {
  .information main th {
    width: 20%; } }

@media screen and (min-width: 768px) {
  .information main td {
    width: 80%; } }

/*=======================================================

    about　rinen
========================================================*/
.rinen main {
  padding: 0; }

.rinen h3.titleStyle {
  font-family: 'Antonio-Bold';
  font-size: 4.0rem; }
  @media screen and (max-width: 767px) {
    .rinen h3.titleStyle {
      font-size: 2.3rem; } }
  .rinen h3.titleStyle span {
    color: #000000; }

.rinen .rinen_Top {
  background: url(../img/bg_rinen.jpg) no-repeat center top;
  background-size: cover;
  padding: 120px 0px;
  text-align: center; }
  @media screen and (max-width: 767px) {
    .rinen .rinen_Top {
      padding: 60px 5%; } }

.rinen .rinen_inner {
  display: inline-block;
  margin-top: 40px; }
  @media screen and (max-width: 767px) {
    .rinen .rinen_inner {
      margin-top: 0px; } }
  .rinen .rinen_inner .rinen_innerTitle dt {
    line-height: 0; }
    @media screen and (max-width: 767px) {
      .rinen .rinen_inner .rinen_innerTitle dt img {
        width: 100%; } }
  .rinen .rinen_inner .rinen_innerTitle dd {
    background: #fff; }
    .rinen .rinen_inner .rinen_innerTitle dd h2 {
      position: relative;
      top: -30px;
      left: 0;
      right: 0;
      margin: 0px auto -20px; }
      @media screen and (max-width: 767px) {
        .rinen .rinen_inner .rinen_innerTitle dd h2 {
          top: -20px;
          margin: 0px auto -10px; } }
      @media screen and (max-width: 399px) {
        .rinen .rinen_inner .rinen_innerTitle dd h2 {
          top: -10px; } }
  .rinen .rinen_inner .rinen_innerText {
    background: #fff;
    padding-bottom: 40px;
    font-size: 3.2rem;
    font-weight: bold; }
    @media screen and (max-width: 767px) {
      .rinen .rinen_inner .rinen_innerText {
        font-size: 2.2rem;
        padding-bottom: 20px; } }
    @media screen and (max-width: 399px) {
      .rinen .rinen_inner .rinen_innerText {
        font-size: 1.6rem; } }

.rinen .mission {
  padding: 60px 0px 90px; }
  @media screen and (max-width: 767px) {
    .rinen .mission {
      padding: 30px 0px 10px; } }
  .rinen .mission h3.titleStyle {
    color: #37aad0;
    margin-bottom: 30px;
    letter-spacing: 0; }
    .rinen .mission h3.titleStyle span {
      letter-spacing: 0.05em; }
  .rinen .mission .box_inner {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-bottom: 125px;
    border: 4px solid #37aad0; }
    @media screen and (max-width: 767px) {
      .rinen .mission .box_inner {
        padding-bottom: 80px;
        margin-bottom: 30px; } }
    .rinen .mission .box_inner .box_inner:hover a {
      opacity: 1; }
    .rinen .mission .box_inner::before {
      background: url(../img/about/rinen/ico_slash_01_2x.png) no-repeat center top;
      background-size: 22px 37px;
      top: -20px; }
    .rinen .mission .box_inner dl {
      background: #37aad0; }
      .rinen .mission .box_inner dl dt {
        color: #fff;
        font-weight: bold;
        font-size: 3.2rem; }
        @media screen and (max-width: 767px) {
          .rinen .mission .box_inner dl dt {
            font-size: 2.0rem; } }
      .rinen .mission .box_inner dl dd {
        color: #fff;
        padding-bottom: 20px; }
    .rinen .mission .box_inner:nth-child(1) dl {
      position: relative;
      text-align: center; }
      .rinen .mission .box_inner:nth-child(1) dl::after {
        position: absolute;
        content: "";
        background: url(../img/img_mission_01_2x.png) no-repeat center center;
        background-size: 91px;
        width: 91px;
        height: 73px;
        left: 0;
        right: 0;
        margin: 20px auto;
        text-align: center; }
        @media screen and (max-width: 767px) {
          .rinen .mission .box_inner:nth-child(1) dl::after {
            background-size: 45px;
            width: 45px;
            height: 36px; } }
    .rinen .mission .box_inner:nth-child(2) dl {
      position: relative;
      text-align: center; }
      .rinen .mission .box_inner:nth-child(2) dl::after {
        position: absolute;
        content: "";
        background: url(../img/img_mission_02_2x.png) no-repeat center center;
        background-size: 90px;
        width: 90px;
        height: 70px;
        left: 0;
        right: 0;
        margin: 20px auto;
        text-align: center; }
        @media screen and (max-width: 767px) {
          .rinen .mission .box_inner:nth-child(2) dl::after {
            background-size: 45px;
            width: 45px;
            height: 35px; } }
    .rinen .mission .box_inner:nth-child(3) dl {
      position: relative;
      text-align: center; }
      .rinen .mission .box_inner:nth-child(3) dl::after {
        position: absolute;
        content: "";
        background: url(../img/img_mission_03_2x.png) no-repeat center center;
        background-size: 96px;
        width: 96px;
        height: 86px;
        left: 0;
        right: 0;
        margin: 20px auto;
        text-align: center; }
        @media screen and (max-width: 767px) {
          .rinen .mission .box_inner:nth-child(3) dl::after {
            background-size: 48px;
            width: 48px;
            height: 43px; } }
    .rinen .mission .box_inner:nth-child(3) dt {
      padding-top: 25px; }

.rinen .value {
  background: url(../img/bg_yellow.png) repeat left top; }
  .rinen .value .value_innerTitle h3.titleStyle {
    letter-spacing: 0; }
    .rinen .value .value_innerTitle h3.titleStyle span {
      letter-spacing: 0.05em; }
  .rinen .value .value_inner {
    margin: 0px auto;
    display: block; }
    @media screen and (min-width: 768px) {
      .rinen .value .value_inner {
        background: url(../img/img_bg_value_2x.png) no-repeat center center;
        position: relative;
        background-size: 488px 489px;
        width: 500px;
        height: 500px;
        padding: 100px 0px; } }
    @media screen and (max-width: 767px) {
      .rinen .value .value_inner {
        background: 250px;
        padding: 0px 5% 10px; } }
    .rinen .value .value_inner p {
      font-size: 2.5rem;
      line-height: 1.2;
      font-weight: bold; }
      @media screen and (max-width: 767px) {
        .rinen .value .value_inner p {
          font-size: 1.5rem; } }
    .rinen .value .value_inner ul li {
      font-size: 2.8rem;
      font-weight: bold; }
      @media screen and (max-width: 767px) {
        .rinen .value .value_inner ul li {
          background: #FFF;
          border: 4px solid #f3800f;
          border-radius: 4px;
          font-size: 1.8rem;
          margin-top: 20px; } }
      .rinen .value .value_inner ul li p {
        padding: 72px;
        line-height: 1.2; }
        @media screen and (max-width: 767px) {
          .rinen .value .value_inner ul li p {
            padding: 20px; } }
      @media screen and (min-width: 768px) {
        .rinen .value .value_inner ul li.value_innerText-01 {
          background: url(../img/img_value_balloon_01_2x.png) no-repeat center center;
          background-size: 160px 174px;
          position: absolute;
          top: 30px;
          left: 0;
          right: 0; } }
      @media screen and (min-width: 768px) {
        .rinen .value .value_inner ul li.value_innerText-02 {
          background: url(../img/img_value_balloon_02_2x.png) no-repeat center center;
          background-size: 162px 159px;
          position: absolute;
          top: 25%;
          right: -70px; } }
      @media screen and (min-width: 768px) {
        .rinen .value .value_inner ul li.value_innerText-03 {
          background: url(../img/img_value_balloon_03_2x.png) no-repeat center center;
          background-size: 159px 159px;
          position: absolute;
          bottom: 30px;
          right: 0px; } }
      @media screen and (min-width: 768px) {
        .rinen .value .value_inner ul li.value_innerText-04 {
          background: url(../img/img_value_balloon_04_2x.png) no-repeat center center;
          background-size: 159px 159px;
          position: absolute;
          bottom: 30px;
          left: 0px; } }
      @media screen and (min-width: 768px) {
        .rinen .value .value_inner ul li.value_innerText-05 {
          background: url(../img/img_value_balloon_05_2x.png) no-repeat center center;
          background-size: 162px 159px;
          position: absolute;
          top: 25%;
          left: -70px; } }
  .rinen .value .value_innerTitle {
    display: block; }
    @media screen and (min-width: 768px) {
      .rinen .value .value_innerTitle {
        width: 500px;
        height: auto;
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        /* Safari用 */
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%); } }
    @media screen and (max-width: 767px) {
      .rinen .value .value_innerTitle {
        background: url(../img/img_bg_value_2x.png) no-repeat center center;
        background-size: 250px;
        width: 250px;
        height: 250px;
        text-align: center;
        margin: 0px auto 0px; } }
    .rinen .value .value_innerTitle p {
      position: relative;
      padding-bottom: 85px; }
      @media screen and (max-width: 767px) {
        .rinen .value .value_innerTitle p {
          padding-bottom: 50px;
          line-height: 1.6; } }
      .rinen .value .value_innerTitle p::after {
        position: absolute;
        content: "";
        background: url(../img/img_value_staff_2x.png) no-repeat center bottom;
        background-size: 83px;
        margin: 0px auto;
        text-align: center;
        width: 83px;
        height: 71px;
        left: 0;
        right: 0;
        bottom: 0; }
        @media screen and (max-width: 767px) {
          .rinen .value .value_innerTitle p::after {
            background-size: 43px;
            width: 43px;
            height: 42px; } }
      .rinen .value .value_innerTitle p span {
        font-size: 4.0rem;
        color: #f3800f; }
        @media screen and (max-width: 767px) {
          .rinen .value .value_innerTitle p span {
            font-size: 2.0rem; } }
  .rinen .value h3 {
    color: #f3800f; }

/*=======================================================

    recruit

========================================================*/
.recruitTop main {
  background: url(../img/bg_recruit_index.png) repeat-x center top;
  background-size: auto;
  padding: 120px 0px 80px;
  overflow: hidden; }
  @media screen and (max-width: 767px) {
    .recruitTop main {
      padding: 60px 0px 40px;
      background: url(../img/bg_recruit_index.png) repeat center top;
      background-size: 17px; } }
  .recruitTop main dt {
    font-size: 2.4rem;
    color: #FFF; }
    @media screen and (max-width: 767px) {
      .recruitTop main dt {
        font-size: 1.6rem;
        text-align: left; } }
  .recruitTop main dd {
    text-align: left;
    margin: 35px auto 80px;
    color: #434343; }
    @media screen and (max-width: 767px) {
      .recruitTop main dd {
        margin: 15px auto 40px auto; } }

/*=======================================================

    recruit　newgraduate

========================================================*/
.newgraduate .newgraduate_inner p.newgraduate_innerText {
  text-align: left;
  margin-top: 60px; }
  @media screen and (max-width: 767px) {
    .newgraduate .newgraduate_inner p.newgraduate_innerText {
      margin-top: 30px; } }

.newgraduate .box {
  text-align: center;
  margin: 75px auto 80px; }
  @media screen and (max-width: 767px) {
    .newgraduate .box {
      margin: 40px auto; } }
  .newgraduate .box .box_inner {
    width: 31%;
    float: none;
    display: inline-block;
    border: 1px solid #e9e9e9;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
    @media screen and (max-width: 767px) {
      .newgraduate .box .box_inner {
        clear: none;
        float: left !important;
        display: block;
        width: 48%;
        margin-right: 2%;
        -webkit-box-sizing: border-box;
        box-sizing: border-box; } }
    .newgraduate .box .box_inner::before {
      top: -20px; }
    .newgraduate .box .box_inner:last-child {
      margin-right: 0px; }
    @media screen and (max-width: 767px) {
      .newgraduate .box .box_inner.box_inner-01::before {
        top: -15px; } }
    .newgraduate .box .box_inner.box_inner-01 .box_innerTitle {
      color: #27ada9; }
    .newgraduate .box .box_inner.box_inner-01 p {
      position: relative;
      padding-bottom: 40px; }
      .newgraduate .box .box_inner.box_inner-01 p::after {
        content: "";
        position: absolute;
        background: url(../img/arrow_01_2x.png) no-repeat center bottom;
        background-size: 20px;
        width: 20px;
        height: 19px;
        left: 0;
        right: 0;
        bottom: 0;
        margin: 0px auto; }
        @media screen and (max-width: 767px) {
          .newgraduate .box .box_inner.box_inner-01 p::after {
            background: url(../img/arrow_01_2x.png) no-repeat center bottom;
            background-size: 15px;
            width: 15px;
            height: 15px; } }
    .newgraduate .box .box_inner.box_inner-02::before {
      background: url(../img/ico_slash_05.png) no-repeat center top;
      background-size: 22px 37px; }
      @media screen and (max-width: 767px) {
        .newgraduate .box .box_inner.box_inner-02::before {
          background-size: 15px;
          top: -15px; } }
    .newgraduate .box .box_inner.box_inner-02 .box_innerTitle {
      color: #f03b33; }
    .newgraduate .box .box_inner.box_inner-02 p {
      position: relative;
      padding-bottom: 40px; }
      .newgraduate .box .box_inner.box_inner-02 p::after {
        content: "";
        position: absolute;
        background: url(../img/arrow_02_2x.png) no-repeat center bottom;
        background-size: 20px;
        width: 20px;
        height: 19px;
        left: 0;
        right: 0;
        bottom: 0;
        margin: 0px auto; }
        @media screen and (max-width: 767px) {
          .newgraduate .box .box_inner.box_inner-02 p::after {
            background: url(../img/arrow_02_2x.png) no-repeat center bottom;
            background-size: 15px;
            height: 15px;
            width: 15px; } }
    .newgraduate .box .box_inner a {
      padding: 35px 15px;
      display: block;
      -webkit-box-sizing: border-box;
      box-sizing: border-box; }
      .newgraduate .box .box_inner a:hover {
        opacity: 0.7; }
      @media screen and (max-width: 767px) {
        .newgraduate .box .box_inner a {
          padding: 25px 5px; } }

.newgraduate .entry {
  text-align: center;
  margin: 80px auto 120px; }
  @media screen and (max-width: 767px) {
    .newgraduate .entry {
      margin: 40px auto 60px; } }
  .newgraduate .entry a {
    padding: 25px 55px;
    display: inline-block;
    border: 4px solid #f6b71c; }
    @media screen and (max-width: 767px) {
      .newgraduate .entry a {
        padding: 15px 35px;
        display: block; } }
    @media screen and (max-width: 767px) {
      .newgraduate .entry a {
        padding: 15px 15px;
        display: block; } }
    .newgraduate .entry a:hover {
      opacity: 1;
      color: #fff;
      background: #f6b71c; }
      .newgraduate .entry a:hover dt {
        color: #fff; }
  .newgraduate .entry a:hover dl::before {
    background: url(../img/btn_entry_over.png) no-repeat left center;
    background-size: 63px; }
    @media screen and (max-width: 767px) {
      .newgraduate .entry a:hover dl::before {
        background-size: 31px;
        width: 31px;
        height: 29px; } }
  .newgraduate .entry a:hover dl::after {
    background: url(../img/arrow_03_over.png) no-repeat right center;
    background-size: 20px; }
    @media screen and (max-width: 767px) {
      .newgraduate .entry a:hover dl::after {
        background-size: 15px;
        width: 15px;
        height: 15px; } }
  .newgraduate .entry dl {
    padding: 0px 80px;
    text-align: left;
    position: relative; }
    @media screen and (max-width: 767px) {
      .newgraduate .entry dl {
        padding: 0px 40px; } }
    .newgraduate .entry dl::before {
      background: url(../img/btn_entry_2x.png) no-repeat left center;
      background-size: 63px;
      position: absolute;
      content: "";
      left: 0;
      width: 63px;
      height: 59px; }
      @media screen and (max-width: 767px) {
        .newgraduate .entry dl::before {
          background-size: 31px;
          width: 31px;
          height: 29px;
          top: 50%;
          margin-top: -1em; } }
    .newgraduate .entry dl::after {
      background: url(../img/arrow_03_2x.png) no-repeat right center;
      background-size: 20px;
      position: absolute;
      content: "";
      top: 50%;
      margin-top: -0.5em;
      right: 0;
      width: 20px;
      height: 19px; }
      @media screen and (max-width: 767px) {
        .newgraduate .entry dl::after {
          background-size: 15px;
          width: 15px;
          height: 15px; } }
    .newgraduate .entry dl dt {
      color: #f6b71c;
      font-size: 2.6rem;
      line-height: 1;
      padding-top: 8px; }
      @media screen and (max-width: 767px) {
        .newgraduate .entry dl dt {
          font-size: 2.0rem; } }

.tableStyle-01 {
  border-bottom: 1px solid #e9e9e9;
  width: 100%; }
  @media screen and (min-width: 768px) {
    .tableStyle-01 tr:first-child th {
      text-align: center;
      border-right: 1px solid #e9e9e9; }
      .tableStyle-01 tr:first-child th:last-child {
        border-right: 0px; } }
  .tableStyle-01 .color-01 {
    background: #f6b71c;
    color: #fff; }
  .tableStyle-01 .color-02 {
    background: #f4f4f4; }
  .tableStyle-01 .color-03 {
    background: #fcebc0; }
  .tableStyle-01 th {
    font-weight: bold;
    text-align: left;
    padding: 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100px;
    border-top: 1px solid #e9e9e9; }
    @media screen and (max-width: 767px) {
      .tableStyle-01 th {
        display: block;
        width: 100%;
        padding: 10px; } }
  .tableStyle-01 td {
    text-align: left;
    padding: 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: -webkit-calc(calc(100% - 100px) / 2);
    width: calc(calc(calc(100% - 100px) / 2));
    border-top: 1px solid #e9e9e9;
    border-left: 1px solid #e9e9e9; }
    @media screen and (max-width: 767px) {
      .tableStyle-01 td {
        display: block;
        width: 100%;
        border-left: 0px;
        padding: 10px; } }

/*=======================================================

    recruit career

========================================================*/
.career main {
  padding: 120px 0px 0px; }
  @media screen and (max-width: 767px) {
    .career main {
      padding: 60px 0px 0px; } }
  .career main .career_inner {
    margin-top: 60px; }
    @media screen and (max-width: 767px) {
      .career main .career_inner {
        margin-top: 30px; } }
    @media screen and (max-width: 767px) {
      .career main .career_inner table {
        width: 100%; } }
    .career main .career_inner th {
      width: 15%; }
      @media screen and (max-width: 767px) {
        .career main .career_inner th {
          width: 100%;
          -webkit-box-sizing: border-box;
          box-sizing: border-box; } }
    .career main .career_inner p {
      border: 4px solid #f6b71c;
      padding: 30px;
      margin: 60px auto 120px; }
      @media screen and (max-width: 767px) {
        .career main .career_inner p {
          margin: 30px auto;
          padding: 15px; } }

/*=======================================================

    recruit voice

========================================================*/
.voice .voice_Top {
  padding-bottom: 70px; }
  @media screen and (max-width: 767px) {
    .voice .voice_Top {
      padding-bottom: 35px; } }
  .voice .voice_Top p {
    /* text-align: left; */
    margin-top: 60px; }
    @media screen and (max-width: 767px) {
      .voice .voice_Top p {
        margin-top: 30px; } }

@media screen and (max-width: 767px) {
  .voice main #voiceSlide {
    height: 143px;
    width: auto; } }

.voice main ul {
  width: 100%; }
  .voice main ul li {
    float: left;
    width: auto; }
    @media screen and (max-width: 767px) {
      .voice main ul li img {
        height: 143px;
        width: auto; } }

.voice_Inner {
  /*background: url(../img/recruit/voice/bg_voice.jpg) no-repeat center top;
	background-size:100%;
	padding: 200px 0px 0px; */
  /*@include mq-down(md){
		padding: 100px 0px 0px;
	}*/ }
  .voice_Inner .voiceMain_img img {
    width: 100%; }
  .voice_Inner .acordion {
    background: #fff;
    padding: 50px 40px; }
    @media screen and (max-width: 767px) {
      .voice_Inner .acordion {
        padding: 0px 5%; } }
  .voice_Inner .acordion_title dt {
    font-family: 'Antonio-Bold';
    font-size: 6.0rem;
    float: left;
    line-height: 1; }
    @media screen and (max-width: 767px) {
      .voice_Inner .acordion_title dt {
        font-size: 3.3rem; } }
    .voice_Inner .acordion_title dt span {
      font-size: 3.2rem;
      margin: 0px 1rem; }
      @media screen and (max-width: 767px) {
        .voice_Inner .acordion_title dt span {
          margin: 0px 0px 0px 1rem;
          font-size: 1.6rem; } }
  .voice_Inner .acordion_title dd {
    float: left;
    text-align: left;
    margin-left: 1.5rem; }
    @media screen and (max-width: 767px) {
      .voice_Inner .acordion_title dd {
        line-height: 1.3; } }
    .voice_Inner .acordion_title dd p {
      font-size: 2.4rem;
      font-weight: bold; }
      @media screen and (max-width: 767px) {
        .voice_Inner .acordion_title dd p {
          font-size: 1.6rem; } }
  .voice_Inner .acordion_inner {
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
    .voice_Inner .acordion_inner .acordion_innerImg {
      float: left; }
    @media screen and (min-width: 768px) {
      .voice_Inner .acordion_inner img {
        width: 230px; } }
    .voice_Inner .acordion_inner .acordion_innerTxt.acordion_innerTxt-left {
      float: left;
      width: calc(100% - calc(230px + 2em)); }
      @media screen and (max-width: 767px) {
        .voice_Inner .acordion_inner .acordion_innerTxt.acordion_innerTxt-left {
          width: calc(100% - calc(25% + 1em)); } }
    .voice_Inner .acordion_inner .acordion_innerTxt p {
      text-align: left; }
    .voice_Inner .acordion_inner .acordion_innerTxt .acordion_innertxtTitle {
      font-weight: bold;
      font-size: 1.8rem;
      margin-bottom: 1rem; }
      @media screen and (max-width: 767px) {
        .voice_Inner .acordion_inner .acordion_innerTxt .acordion_innertxtTitle {
          font-size: 1.4rem; } }
    .voice_Inner .acordion_inner .acordion_innerTxt .acordion_innerImg-left {
      margin-right: 2em;
      margin-bottom: 2em;
      float: left; }
      @media screen and (max-width: 767px) {
        .voice_Inner .acordion_inner .acordion_innerTxt .acordion_innerImg-left {
          width: 25%;
          margin-right: 1em;
          margin-bottom: 1em; } }
    .voice_Inner .acordion_inner .content_wrap {
      margin: 0px auto 20px;
      width: 100%; }
    .voice_Inner .acordion_inner .acordion_innerImg-right {
      float: right; }
      @media screen and (min-width: 768px) {
        .voice_Inner .acordion_inner .acordion_innerImg-right {
          width: 230px;
          margin-left: 2em;
          margin-bottom: 2em; } }
      @media screen and (max-width: 767px) {
        .voice_Inner .acordion_inner .acordion_innerImg-right {
          width: 25%;
          margin-left: 1em;
          margin-bottom: 1em; } }
      .voice_Inner .acordion_inner .acordion_innerImg-right img {
        width: 100%; }

/*=======================================================

    access

========================================================*/
.access main {
  padding: 120px 0px 0px; }
  @media screen and (max-width: 767px) {
    .access main {
      padding: 60px 0px 0px; } }

.access .tableStyle {
  margin: 60px auto 120px; }
  @media screen and (max-width: 767px) {
    .access .tableStyle {
      margin: 30px auto; } }

.access #ez-map {
  height: 0;
  overflow: hidden;
  padding-bottom: 56.25%;
  position: relative;
}
.access #ez-map iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}

/*
.access #ez-map {
  min-height: 150px;
  min-width: 150px;
  height: 600px;
  width: 100%; }
  @media screen and (max-width: 767px) {
    .access #ez-map {
      height: 300px; } }
*/

/*=======================================================

    business

========================================================*/
.business main {
  padding-top: 60px;
  background: url(../img/bg_business.png) no-repeat center top;
  background-size: 100% auto; }
  @media screen and (max-width: 767px) {
    .business main {
      background: url(../img/sp_bg_business.png) no-repeat center top;
      background-size: 100% auto; } }

.businessTop {
  padding-bottom: 80px; }
  @media screen and (max-width: 767px) {
    .businessTop {
      padding-bottom: 30px; } }
  .businessTop p {
    color: #fff;
    font-size: 2.0rem;
    margin: 90px auto 70px; }
    @media screen and (max-width: 767px) {
      .businessTop p {
        font-size: 1.4rem;
        margin: 0px 5%; } }
  @media screen and (max-width: 767px) {
    .businessTop img {
      width: 90%;
      height: auto;
      margin: 20px 5%; } }
  .businessTop .content_wrap {
    max-width: 790px;
    padding: 25px 30px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center; }
    .businessTop .content_wrap dt {
      background: url(../img/business/img_business_logo_2x.png) no-repeat left center;
      background-size: 79px;
      padding-left: 100px;
      display: inline-block; }
      @media screen and (max-width: 767px) {
        .businessTop .content_wrap dt {
          background-size: 40px;
          padding-left: 50px; } }
    .businessTop .content_wrap ul {
      border-top: 1px solid #e3e3e3;
      padding: 25px 0px 0px;
      text-align: left; }
      .businessTop .content_wrap ul li {
        background: url(../img/business/ico_circle_05.png) no-repeat left top;
        background-position-y: 0.7rem;
        background-size: 8px;
        padding-left: 1.8rem;
        margin-bottom: 15px; }
        .businessTop .content_wrap ul li:last-child {
          margin-bottom: 0px; }

.businessTop_txt {
  border: 4px solid #f03b3d;
  margin: 20px auto;
  position: relative; }
  .businessTop_txt::before {
    content: "";
    position: absolute;
    top: -21px;
    left: 50%;
    margin-left: -12px;
    border: 12px solid transparent;
    border-bottom: 14px solid #fff;
    z-index: 2; }
  .businessTop_txt::after {
    content: "";
    position: absolute;
    top: -30px;
    left: 50%;
    margin-left: -14px;
    border: 14px solid transparent;
    border-bottom: 16px solid #f03b3d;
    z-index: 1; }
  .businessTop_txt dl {
    /*background: url(../img/business/img_business_logo_2x.png) no-repeat left center;*/
    background-size: 79px; }
  .businessTop_txt dt {
    font-size: 2.0rem;
    text-align: left;
    font-weight: bold; }
    @media screen and (max-width: 767px) {
      .businessTop_txt dt {
        font-size: 1.4rem; } }
    .businessTop_txt dt span {
      font-size: 3.2rem;
      display: block; }
      @media screen and (max-width: 767px) {
        .businessTop_txt dt span {
          font-size: 1.6rem; } }

.businessInner {
  padding: 80px 0px;
  background: #f8f7f3; }
  @media screen and (max-width: 767px) {
    .businessInner {
      padding: 40px 0px; } }
  .businessInner h3 {
    margin-bottom: 20px; }
  .businessInner .box01 .box01_inner {
    width: 48%;
    float: left;
    padding: 40px;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: #fff;
    margin-top: 40px; }
    @media screen and (max-width: 767px) {
      .businessInner .box01 .box01_inner {
        width: 100%;
        float: none; } }
    @media screen and (min-width: 768px) {
      .businessInner .box01 .box01_inner:nth-child(2n) {
        float: right; } }
    .businessInner .box01 .box01_inner ul li {
      text-align: left;
      padding-left: 1.5rem;
      margin-top: 15px; }
    .businessInner .box01 .box01_inner h4 {
      font-size: 3.2rem;
      border-bottom: 1px solid #e3e3e3;
      padding: 0px 0px 0px;
      margin-bottom: 20px;
      font-weight: bold;
      padding-bottom: 10px; }
      @media screen and (max-width: 767px) {
        .businessInner .box01 .box01_inner h4 {
          font-size: 2.0rem; } }
    .businessInner .box01 .box01_inner span {
      position: absolute;
      content: "";
      width: 120px;
      height: 96px;
      top: 0;
      left: 0; }
  .businessInner .box01 .box01_inner-01::before {
    background: url(../img/ico_slash_01_2x.png) no-repeat center top;
    background-size: 22px;
    top: -20px; }
  .businessInner .box01 .box01_inner-01 span {
    background: url(../img/ico_01_2x.png) no-repeat left top;
    background-size: 120px; }
    @media screen and (max-width: 767px) {
      .businessInner .box01 .box01_inner-01 span {
        background-size: 60px; } }
  .businessInner .box01 .box01_inner-01 h4 {
    background: url(../img/img_service_01_2x.png) no-repeat center top;
    background-size: 100px;
    padding-top: 100px; }
    @media screen and (max-width: 767px) {
      .businessInner .box01 .box01_inner-01 h4 {
        background-size: 50px;
        padding-top: 50px; } }
  .businessInner .box01 .box01_inner-01 li {
    background: url(../img/ico_circle_01_2x.png) no-repeat left top;
    background-size: 8px;
    background-position: 0px 8px; }
  .businessInner .box01 .box01_inner-02::before {
    background: url(../img/ico_slash_02_2x.png) no-repeat center top;
    background-size: 22px;
    top: -20px; }
  .businessInner .box01 .box01_inner-02 span {
    background: url(../img/ico_02_2x.png) no-repeat left top;
    background-size: 120px; }
    @media screen and (max-width: 767px) {
      .businessInner .box01 .box01_inner-02 span {
        background-size: 60px; } }
  .businessInner .box01 .box01_inner-02 h4 {
    background: url(../img/img_service_02_2x.png) no-repeat center top;
    background-size: 140px;
    padding-top: 100px;
    background-position: 50% 20px; }
    @media screen and (max-width: 767px) {
      .businessInner .box01 .box01_inner-02 h4 {
        background-size: 70px;
        padding-top: 50px; } }
  .businessInner .box01 .box01_inner-02 li {
    background: url(../img/ico_circle_02_2x.png) no-repeat left top;
    background-size: 8px;
    background-position: 0px 8px; }
  .businessInner .box01 .box01_inner-03::before {
    background: url(../img/ico_slash_03_2x.png) no-repeat center top;
    background-size: 22px;
    top: -20px; }
  .businessInner .box01 .box01_inner-03 span {
    background: url(../img/ico_03_2x.png) no-repeat left top;
    background-size: 120px; }
    @media screen and (max-width: 767px) {
      .businessInner .box01 .box01_inner-03 span {
        background-size: 60px; } }
  .businessInner .box01 .box01_inner-03 h4 {
    background: url(../img/img_service_03_2x.png) no-repeat center top;
    background-size: 120px;
    padding-top: 100px; }
    @media screen and (max-width: 767px) {
      .businessInner .box01 .box01_inner-03 h4 {
        background-size: 60px;
        padding-top: 50px; } }
  .businessInner .box01 .box01_inner-03 li {
    background: url(../img/ico_circle_03_2x.png) no-repeat left top;
    background-size: 8px;
    background-position: 0px 8px; }
  .businessInner .box01 .box01_inner-04::before {
    background: url(../img/ico_slash_04_2x.png) no-repeat center top;
    background-size: 22px;
    top: -20px; }
  .businessInner .box01 .box01_inner-04 span {
    background: url(../img/ico_04_2x.png) no-repeat left top;
    background-size: 120px; }
    @media screen and (max-width: 767px) {
      .businessInner .box01 .box01_inner-04 span {
        background-size: 60px; } }
  .businessInner .box01 .box01_inner-04 h4 {
    background: url(../img/img_service_04_2x.png) no-repeat center top;
    background-size: 93px;
    padding-top: 100px; }
    @media screen and (max-width: 767px) {
      .businessInner .box01 .box01_inner-04 h4 {
        background-size: 46px;
        padding-top: 50px; } }
  .businessInner .box01 .box01_inner-04 li {
    background: url(../img/ico_circle_04_2x.png) no-repeat left top;
    background-size: 8px;
    background-position: 0px 8px; }

@media screen and (min-width: 768px) {
  .structure {
    padding: 70px 0px 0px; } }

@media screen and (max-width: 767px) {
  .structure {
    padding: 35px 0px 0px; } }

.structure h3 {
  margin-bottom: 60px; }
  @media screen and (max-width: 767px) {
    .structure h3 {
      margin-bottom: 0px; } }

.structure .box02 .box_inner {
  float: left; }

@media screen and (min-width: 768px) {
  .structure .structure_inner {
    width: 22%;
    float: left;
    margin: 0px 3% 0px 0px; }
    .structure .structure_inner:last-child {
      margin: 0px; }
    .structure .structure_inner::after {
      width: 70px;
      height: 70px;
      right: -50px;
      top: 50%; } }

@media screen and (max-width: 767px) {
  .structure .structure_inner {
    margin: 40px auto 0px; }
    .structure .structure_inner::after {
      width: 67px;
      height: 88px;
      bottom: -50px;
      z-index: 10;
      margin: 0px auto;
      right: 0;
      left: 0; }
    .structure .structure_inner:first-child {
      margin: 0px auto; } }

.structure .structure_inner .structure_innerTit {
  position: relative;
  padding: 40px 0px; }
  .structure .structure_inner .structure_innerTit:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent; }
    @media screen and (max-width: 767px) {
      .structure .structure_inner .structure_innerTit:before {
        margin-left: -7px;
        border: 7px solid transparent; } }

.structure .structure_inner h4 {
  color: #fff;
  width: 100%;
  font-size: 2.0rem;
  line-height: 1.3; }
  @media screen and (max-width: 767px) {
    .structure .structure_inner h4 {
      font-size: 1.6rem; } }

.structure .structure_inner.structure_inner-01 {
  border: 1px solid #24bf98;
  position: relative;
  text-align: center; }
  .structure .structure_inner.structure_inner-01::after {
    position: absolute;
    content: ""; }
    @media screen and (min-width: 768px) {
      .structure .structure_inner.structure_inner-01::after {
        background: url(../img/img_works_arrow_01.png) no-repeat right center;
        background-size: 69px; } }
    @media screen and (max-width: 767px) {
      .structure .structure_inner.structure_inner-01::after {
        background: url(../img/sp_img_works_arrow_01.png) no-repeat center bottom;
        background-size: 67px; } }
  .structure .structure_inner.structure_inner-01 .structure_innerTit {
    background: #24bf98; }
    .structure .structure_inner.structure_inner-01 .structure_innerTit:before {
      border-top: 15px solid #24bf98; }
      @media screen and (max-width: 767px) {
        .structure .structure_inner.structure_inner-01 .structure_innerTit:before {
          border-top: 7px solid #24bf98; } }
    .structure .structure_inner.structure_inner-01 .structure_innerTit span {
      position: absolute;
      top: -105px;
      left: 0;
      right: 0;
      z-index: 8; }
      @media screen and (max-width: 767px) {
        .structure .structure_inner.structure_inner-01 .structure_innerTit span {
          top: -70px; }
          .structure .structure_inner.structure_inner-01 .structure_innerTit span img {
            width: 70px; } }

.structure .structure_inner.structure_inner-02 {
  border: 1px solid #f67d1c;
  position: relative; }
  @media screen and (max-width: 767px) {
    .structure .structure_inner.structure_inner-02 {
      margin-top: 100px; } }
  .structure .structure_inner.structure_inner-02::after {
    position: absolute;
    content: ""; }
    @media screen and (min-width: 768px) {
      .structure .structure_inner.structure_inner-02::after {
        background: url(../img/img_works_arrow_02.png) no-repeat right center;
        background-size: 69px; } }
    @media screen and (max-width: 767px) {
      .structure .structure_inner.structure_inner-02::after {
        background: url(../img/sp_img_works_arrow_02.png) no-repeat center bottom;
        background-size: 67px; } }
  .structure .structure_inner.structure_inner-02 .structure_innerTit {
    background: #f67d1c; }
    .structure .structure_inner.structure_inner-02 .structure_innerTit:before {
      border-top: 15px solid #f67d1c; }
      @media screen and (max-width: 767px) {
        .structure .structure_inner.structure_inner-02 .structure_innerTit:before {
          border-top: 7px solid #f67d1c; } }
    .structure .structure_inner.structure_inner-02 .structure_innerTit span {
      position: absolute;
      top: -100px;
      left: 0;
      right: 0;
      z-index: 8; }
      @media screen and (max-width: 767px) {
        .structure .structure_inner.structure_inner-02 .structure_innerTit span {
          top: -70px; }
          .structure .structure_inner.structure_inner-02 .structure_innerTit span img {
            width: 70px; } }

.structure .structure_inner.structure_inner-03 {
  border: 1px solid #f6b71c;
  position: relative; }
  @media screen and (max-width: 767px) {
    .structure .structure_inner.structure_inner-03 {
      margin-top: 100px; } }
  .structure .structure_inner.structure_inner-03::after {
    position: absolute;
    content: ""; }
    @media screen and (min-width: 768px) {
      .structure .structure_inner.structure_inner-03::after {
        background: url(../img/img_works_arrow_03.png) no-repeat right center;
        background-size: 69px; } }
    @media screen and (max-width: 767px) {
      .structure .structure_inner.structure_inner-03::after {
        background: url(../img/sp_img_works_arrow_03.png) no-repeat center bottom;
        background-size: 67px; } }
  .structure .structure_inner.structure_inner-03 .structure_innerTit {
    background: #f6b71c; }
    .structure .structure_inner.structure_inner-03 .structure_innerTit:before {
      border-top: 15px solid #f6b71c; }
      @media screen and (max-width: 767px) {
        .structure .structure_inner.structure_inner-03 .structure_innerTit:before {
          border-top: 7px solid #f6b71c; } }
    .structure .structure_inner.structure_inner-03 .structure_innerTit span {
      position: absolute;
      top: -105px;
      left: 0;
      right: 0;
      z-index: 8; }
      @media screen and (max-width: 767px) {
        .structure .structure_inner.structure_inner-03 .structure_innerTit span {
          top: -70px; }
          .structure .structure_inner.structure_inner-03 .structure_innerTit span img {
            width: 70px; } }

.structure .structure_inner.structure_inner-04 {
  border: 1px solid #37aad0; }
  @media screen and (max-width: 767px) {
    .structure .structure_inner.structure_inner-04 {
      margin-top: 100px; } }
  .structure .structure_inner.structure_inner-04 .structure_innerTit {
    background: #37aad0; }
    .structure .structure_inner.structure_inner-04 .structure_innerTit:before {
      border-top: 15px solid #37aad0; }
      @media screen and (max-width: 767px) {
        .structure .structure_inner.structure_inner-04 .structure_innerTit:before {
          border-top: 7px solid #37aad0; } }
    .structure .structure_inner.structure_inner-04 .structure_innerTit span {
      position: absolute;
      top: -95px;
      left: 0;
      right: 0;
      z-index: 8; }
      @media screen and (max-width: 767px) {
        .structure .structure_inner.structure_inner-04 .structure_innerTit span {
          top: -70px; }
        .structure .structure_inner.structure_inner-04 .structure_innerTit span img {
            width: 70px; 
			} 
		}

.structure p {
	background: #f8f7f3;
	font-size: 1.6rem;
	line-height: 1.4;
	padding: 15px; 
  }

.structure .structure_innerImg {
  padding: 20px; }
  @media screen and (max-width: 767px) {
    .structure .structure_innerImg {
      padding: 20px 20px 40px; } }
  .structure .structure_innerImg img {
    width: 90%; }
    @media screen and (max-width: 767px) {
      .structure .structure_innerImg img {
        width: 75%; } }
		
.home .business .business_innerTitle dt img {
    width: 100%;
    background: #7420d16b;
}
@media screen and (min-width: 1100px)and (max-width: 1320px) {
	.header_inner h1 img {
		width: 70%;
	}
	.header #gNav ul li a {
		display: block;
		padding: 35px 12px;
		font-weight: 800;
		color: #19a2b5;
	}
	.header h1 {
		left: 0px;
	}
	
}
@media screen and (min-width: 1024px)and (max-width: 1100px) {
	.header_inner h1 img {
		width: 70%;
	}
	.header #gNav ul li a {
		display: block;
		padding: 35px 12px;
		font-weight: 800;
		color: #19a2b5;
		font-size: 12px;
	}
	li.phone_m45 a {
		font-size: 17px!important;
	}
	.header h1 {
		left: 0px;
	}
	li.phone_m45 img {
		vertical-align: middle;
	}
	li.phone_m45 img {
		width: 18px;
	}
}
@media screen and (min-width: 870px)and (max-width: 1024px) {
	.header_inner h1 img {
		width: 70%;
	}
	.header #gNav ul li a {
		display: block;
		padding: 35px 10px;
		font-weight: 800;
		color: #19a2b5;
		font-size: 12px;
	}
	li.phone_m45 a {
		font-size: 14px!important;
	}
	li.phone_m45 img {
		width: 18px;
	}
	.header #gNav ul li.gNav_recruit a {
		margin-left: 0px;
		padding: 36px 15px;
	}
	.header h1 {
		left: 0px;
	}
	
}
@media screen and (min-width: 768px)and (max-width: 869px) {
	.header_inner h1 img {
		width: 60%;
	}
	.header #gNav ul li a {
		display: block;
		padding: 35px 10px;
		font-weight: 800;
		color: #fff;
		font-size: 10px;
	}
	li.phone_m45 a {
		font-size: 14px!important;
	}
	li.phone_m45 img {
		width: 18px;
	}
	.header #gNav ul li.gNav_recruit a {
		margin-left: 0px;
		padding: 37px 15px;
	}
	.header h1 {
		left: 0px;
	}
}
.footer_navInner .fab {
    font-weight: 600;
}
li#youtube_v {
    margin-top: 30px;
}
#youtube_v a {
    padding: 0px!important;
}
.sub_menu {
  visibility: hidden;
  opacity: 0;
  position: absolute;
  transition: all 0.5s ease;
  margin-top: 1rem;
  left: 0;
  display: none;
}
ul li:hover > ul,
ul li ul:hover {
  visibility: visible;
  opacity: 1;
  display: block;
}

ul li ul li {
  clear: both;
  width: 100%;
}
.dropdown {
  position: relative;
  display: inline-block;
}
ul.sub_menu {
    background: #fff;
    width: 200px;
    /* padding-left: 20px; */
    padding-top: 10px;
    margin-top: 0px;
}
ul.sub_menu li {
    border-bottom: 1px solid;
    padding-left: 20px;
}
ul.sub_menu li a {
    padding: 10px 0px!important;
}