@charset "utf-8";

/* =================================================================
	Common
================================================================= */

a,
a:hover {
  color: #0000EE;
}


/* base for pc */

@media screen and (min-width: 768px) {
  #key-content {
    padding: 16% 0 13%;
    position: relative;
    z-index: 0;
    overflow: hidden;
  }

  #key-content:before {
    content: '';
    background: inherit;
    position: absolute;
    top: -5px;
    left: -5px;
    right: -5px;
    bottom: -5px;
    z-index: -1;
    -webkit-animation: keyimage 1.5s linear 1;
    animation: keyimage 1.5s linear 1;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }

  @-webkit-keyframes keyimage {
    0% {
      -webkit-filter: blur(8px);
      filter: blur(8px);
    }

    100% {
      -webkit-filter: blur(0);
      filter: blur(0);
    }
  }

  @keyframes keyimage {
    0% {
      -webkit-filter: blur(8px);
      filter: blur(8px);
    }

    100% {
      -webkit-filter: blur(0);
      filter: blur(0);
    }
  }

  #key-content .ttl-content {
    color: #fff;
    font-family: 'Oswald', sans-serif;
    font-weight: lighter;
    font-size: 10em;
    line-height: 1;
    text-align: center;
  }

  .ttl-section {
    font-size: 3.7em;
    line-height: 1;
    font-family: 'Oswald', sans-serif;
    font-weight: normal;
    text-align: center;
    letter-spacing: .1em;
    position: relative;
    margin: 0 0 .2em;
  }

  .ttl-section-jp {
    font-size: 1.2em;
    text-align: center;
    letter-spacing: .2em;
  }

  .conversion {
    background: #f0f0f0 url(../img/parts/bg_lightleak_b.jpg) right top no-repeat;
  }

  .conversion .inner {
    width: 1000px;
    margin: 0 auto;
    padding: 110px 0;
    display: flex;
    justify-content: space-between;
    justify-content: center;
    flex-wrap: wrap;
    align-items: stretch;
  }

  .conversion dl {
    width: 50%;
    text-align: center;
  }

  .conversion .conversion-tel {
    display: none;
  }

  /*採用ページのみ*/
  .recruit .conversion .conversion-tel {
    display: block;
  }

  .conversion dl dt {
    font-size: 1.2em;
    margin: 0 0 18px;
  }

  .conversion-mail dd a {
    display: inline-block;
    text-decoration: none;
    color: #000;
    font-size: 1.4em;
    line-height: 1.4;
    padding: 14px 60px;
    background: transparent url(../img/parts/ico_arrow.png) right 5% center no-repeat;
    border: 2px solid #000;
    transition: all 0.2s;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
  }

  .conversion-mail dd a:hover {
    color: #fff;
    background: #000 url(../img/parts/ico_arrow_wh.png) right 5% center no-repeat;
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
  }

  .conversion-mail dd .note {
    font-size: 1.2em;
    margin-top: 12px;
  }

  .conversion-tel dd {
    font-size: 3.2em;
    line-height: 1;
    letter-spacing: .05em;
    font-family: 'Oswald', sans-serif;
    font-weight: normal;
  }

  #container .btn-toall {
    text-align: center;
    margin: 68px 0 24px;
  }

  #container .btn-toall a {
    font-size: 1.1em;
    border: 2px solid #000;
    text-decoration: none;
    background: transparent url(../img/parts/ico_arrow.png) right 8% center no-repeat;
    color: #000;
    padding: .8em 2.4em .8em 1.9em;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }

  #container .btn-toall a:hover {
    background: #000 url(../img/parts/ico_arrow_wh.png) right 8% center no-repeat;
    color: #fff;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
}


/* base for mobile */

@media screen and (max-width: 767px) {
  #key-content {
    /*padding: 29% 0 25%;*/
    padding: 21% 0 18%;
    position: relative;
    z-index: 0;
    overflow: hidden;
  }

  #key-content:before {
    content: '';
    background: inherit;
    position: absolute;
    top: -5px;
    left: -5px;
    right: -5px;
    bottom: -5px;
    z-index: -1;
    -webkit-animation: keyimage 1.2s linear 1;
    animation: keyimage 1.2s linear 1;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }

  @-webkit-keyframes keyimage {
    0% {
      -webkit-filter: blur(4px);
      filter: blur(4px);
    }

    100% {
      -webkit-filter: blur(0);
      filter: blur(0);
    }
  }

  @keyframes keyimage {
    0% {
      -webkit-filter: blur(4px);
      filter: blur(4px);
    }

    100% {
      -webkit-filter: blur(0);
      filter: blur(0);
    }
  }

  #key-content .ttl-content {
    color: #fff;
    font-family: 'Oswald', sans-serif;
    font-weight: lighter;
    font-size: 6em;
    line-height: 1;
    text-align: center;
  }

  .ttl-section {
    font-size: 2.8em;
    line-height: 1.3;
    font-family: 'Oswald', sans-serif;
    font-weight: normal;
    text-align: center;
    letter-spacing: .1em;
    margin: 0;
  }

  .section .inner {
    width: 88%;
    margin: 0 auto;
  }

  .ttl-section-jp {
    font-size: 1.2em;
    text-align: center;
    letter-spacing: .1em;
  }

  .conversion {
    background: #f0f0f0 url(../img/parts/bg_lightleak_b.jpg) right top / 90% auto no-repeat;
  }

  .conversion .inner {
    padding: 4em 0 2em;
  }

  .conversion dl {
    text-align: center;
    margin: 0 0 2.8em;
  }

  .conversion .conversion-tel {
    display: none;
  }

  /*採用ページのみ*/
  .recruit .conversion .conversion-tel {
    display: block;
  }

  .conversion dl dt {
    font-size: 1.25em;
    margin: 0 0 .5em;
  }

  .conversion-mail dd a {
    display: inline-block;
    text-decoration: none;
    color: #000;
    font-size: 1.25em;
    line-height: 1.4;
    padding: .9em 2em;
    background: url(../img/parts/ico_arrow.png) right 4% center no-repeat;
    border: 2px solid #000;
  }

  .conversion-mail dd .note {
    font-size: 1em;
    margin-top: 10px;
    padding: 0 15px;
  }

  .conversion-tel dd {
    font-size: 2.6em;
    line-height: 1;
    letter-spacing: .05em;
    font-family: 'Oswald', sans-serif;
    font-weight: normal;
  }

  .conversion-tel dd a {
    text-decoration: none;
    color: #000;
  }

  #container .btn-toall {
    text-align: center;
    margin: 2em 0 3em;
  }

  #container .btn-toall a {
    display: inline-block;
    max-width: 86%;
    font-size: 14px;
    line-height: 1.4;
    border: 2px solid #000;
    text-decoration: none;
    background: url(../img/parts/ico_arrow.png) right 6% center no-repeat;
    color: #000;
    padding: .7em 2.4em .5em 1.3em;
    white-space: nowrap;
  }
}


/* =================================================================
	company
================================================================= */

/* company for pc */

@media screen and (min-width: 768px) {
  body.company #key-content {
    background: url(../img/company/key.jpg) center top / cover no-repeat;
  }

  .company-concept {
    position: relative;
    overflow: hidden;
    padding: 90px 0 0;
  }

  .company-concept .ttl-section {
    z-index: 4;
  }

  .company-concept .txt {
    position: relative;
    z-index: 3;
    padding: 0 0 120px;
  }

  .company-concept h3 {
    text-align: center;
    font-size: 2.4em;
    font-weight: 500;
    letter-spacing: .1em;
    margin: 0 0 .8em;
    position: relative;
    z-index: 3;
  }

  .company-concept p {
    font-size: 1.2em;
    text-align: center;
    line-height: 2.8;
    margin: 0 0 20px;
    letter-spacing: .1em;
    position: relative;
    z-index: 3;
  }

  .company-concept .pct-01 img,
  .company-concept .pct-02 img,
  .company-concept .pct-03 img {
    width: 100%;
  }

  .company-concept .pct-01 {
    position: absolute;
    left: -2%;
    top: 60px;
    z-index: 1;
    line-height: 1;
  }

  .company-concept .pct-02 {
    position: absolute;
    left: 0;
    bottom: 200px;
    z-index: 2;
    line-height: 1;
  }

  .company-concept .pct-03 {
    position: absolute;
    right: -8%;
    bottom: -24px;
    z-index: 1;
    line-height: 1;
  }

  .company-officeview {
    position: relative;
    z-index: 1;
  }

  .company-officeview ul {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }

  .company-officeview li {
    width: 25%;
    overflow: hidden;
  }

  .company-officeview li img {
    width: 100%;
  }

  .company-outline {
    padding: 90px 0;
  }

  .tbl-data {
    width: 100%;
    max-width: 1000px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    margin: 0 auto;
  }

  .tbl-data dt,
  .tbl-data dd {
    font-size: 1.3em;
    border-bottom: 1px solid #0088e9;
    padding: 1.9em 0 1.1em;
  }

  .tbl-data dt {
    width: 16%;
    color: #787878;
    font-weight: bold;
  }

  .tbl-data dd {
    width: 84%;
  }

  .tbl-data .btn-link {
    margin-left: .8em;
  }

  .tbl-data .btn-link a {
    font-size: .8em;
    padding: .35em 2.5em .35em 1.4em;
  }

  .company-profile {
    background: #f0f0f0 url(../img/parts/bg_lightleak.jpg) left -32% top 0 no-repeat;
    padding: 90px 0;
  }

  .company-history {
    padding: 90px 0;
  }

  .company-office {
    width: 1000px;
    margin: 0 auto 120px;
  }

  .company-office .inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .company-office .ttl-section {
    width: 1000px;
    height: 300px;
    color: #fff;
    margin: 0 0 18px;
  }

  .company-office .ttl-section h2 {
    color: #fff;
    font-size: 1.6em;
    line-height: 1;
    font-family: 'Oswald', sans-serif;
    font-weight: normal;
    text-align: left;
    padding: 206px 0 0;
  }

  .office-txt {
    width: 464px;
  }

  .office-txt .ttl-section-jp {
    font-size: 2em;
    text-align: left;
    margin-bottom: 24px;
  }

  .office-txt dl {
    margin: 0 0 42px;
  }

  .office-txt dt {
    color: #b9b9b9;
    font-size: 1.7em;
    font-family: 'Oswald', sans-serif;
    font-weight: normal;
    letter-spacing: .05em;
  }

  .office-txt dd {
    font-size: 1.3em;
  }

  .office-pct {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 40px;
  }

  .office-pct li a {
    opacity: 1;
    -webkit-transition: 0.2s;
    transition: 0.2s;
  }

  .office-pct li a:hover {
    opacity: .7;
    -webkit-transition: 0.4s;
    transition: 0.4s;
  }

  .office-map {
    width: 488px;
    margin-top: -100px;
    padding-top: 100px;
  }

  .company-office-ashiya .ttl-section {
    background: url(../img/company/pct_ashiya.jpg) center top no-repeat;
  }

  #googlemap1,
  #googlemap2 {
    width: 488px;
    height: 468px;
  }

  .company-office-zushi .ttl-section {
    background: url(../img/company/pct_zushi.jpg) center top no-repeat;
  }

  .company-office-zushi .ttl-section h2 {
    color: #fff;
    font-size: 1.6em;
    line-height: 1;
    font-family: 'Oswald', sans-serif;
    font-weight: normal;
    text-align: left;
    padding: 206px 0 0;
  }

  .btn-map {
    text-align: center;
    margin: 24px 0 0;
  }

  .btn-map a {
    display: inline-block;
    line-height: 1.4;
    color: #000;
    font-size: 1em;
    text-decoration: none;
    background: transparent url(../img/parts/ico_arrow.png) right 10% center no-repeat;
    border: 2px solid #000;
    padding: 6px 32px 6px 20px;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }

  .btn-map a:hover {
    color: #fff;
    background: #000 url(../img/parts/ico_arrow_wh.png) right 10% center no-repeat;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
}


/* company for tablet */

@media screen and (max-width: 1180px) {

  .company-concept .pct-01 img,
  .company-concept .pct-02 img,
  .company-concept .pct-03 img {
    width: 89%;
    transition: all 0.6s;
    -webkit-transition: all 0.6s;
    -moz-transition: all 0.6s;
  }

  .company-concept .pct-01 {
    position: absolute;
    left: -12%;
    top: 60px;
  }

  .company-concept .pct-02 {
    position: absolute;
    left: -17%;
  }

  .company-concept .pct-03 {
    position: absolute;
    right: -23%;
  }
}


/* company for mobile */

@media screen and (max-width: 767px) {
  body.company #key-content {
    background: url(../img/company/key.jpg) center top / cover no-repeat;
  }

  .company-concept {
    position: relative;
    overflow: hidden;
    padding: 3em 0 0;
  }

  .company-concept .ttl-section {
    z-index: 3;
  }

  .company-concept .txt {
    position: relative;
    z-index: 3;
    padding: 0 0 3em;
  }

  .company-concept .txt br {
    display: none;
  }

  .company-concept h3 {
    text-align: center;
    font-size: 1.8em;
    letter-spacing: 1.4;
    font-weight: 500;
    letter-spacing: .1em;
    margin: .8em 0;
  }

  .company-concept p {
    font-size: 1.2em;
    text-align: center;
    line-height: 2;
    letter-spacing: .1em;
  }

  .company-concept p.exp:nth-of-type(3) {
    margin-bottom: 2.6em;
  }

  .company-concept .pct-01 img,
  .company-concept .pct-02 img,
  .company-concept .pct-03 img {
    width: 100%;
  }

  .company-concept .pct-01 {
    width: 75%;
    position: absolute;
    left: -22%;
    top: 2.1em;
    z-index: 1;
    line-height: 1;
    opacity: .3;
  }

  .company-concept .pct-02 {
    width: 58%;
    position: absolute;
    left: 33%;
    top: 14em;
    z-index: 2;
    line-height: 1;
    opacity: .2;
  }

  .company-concept .pct-03 {
    width: 110%;
    position: absolute;
    right: 23%;
    bottom: -.1em;
    z-index: 1;
    line-height: 1;
    opacity: .3;
  }

  .company-officeview {
    position: relative;
    z-index: 1;
  }

  .company-officeview ul {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }

  .company-officeview li {
    width: 50%;
    line-height: 0;
  }

  .company-officeview li img {
    width: 100%;
  }

  .company-outline {
    padding: 3.4em 0;
  }

  .tbl-data dt {
    color: #787878;
    font-weight: bold;
    font-size: 1.2em;
    padding: 1.5em 0 0;
  }

  .tbl-data dd {
    font-size: 1.2em;
    border-bottom: 1px solid #0088e9;
    padding: 0 0 .6em;
  }

  .tbl-data .btn-link {
    display: block;
    text-align: left;
    margin: .5em 0 0;
  }

  .tbl-data .btn-link a {
    font-size: .9em;
    padding: .45em 2.5em .45em 1.4em;
  }

  .company-profile {
    background: #f0f0f0 url(../img/parts/bg_lightleak.jpg) left -22% top 0 / 86% auto no-repeat;
    padding: 3.4em 0;
  }

  .company-history {
    padding: 3.4em 0;
  }

  .company-office {
    margin: 0 auto 4.5em;
  }

  .company-office .ttl-section {
    color: #fff;
    margin: 0 0 .4em;
  }

  .company-office .ttl-section h2 {
    color: #fff;
    font-size: 1em;
    line-height: 1.1;
    text-align: center;
    letter-spacing: 0;
    font-family: 'Oswald', sans-serif;
    font-weight: normal;
    padding: 1.8em 0;
  }

  .office-txt .ttl-section-jp {
    font-size: 1.8em;
    text-align: center;
  }

  .office-txt dl {
    margin: 0 0 1.3em;
  }

  .office-txt dt {
    color: #b9b9b9;
    font-size: 1.7em;
    font-family: 'Oswald', sans-serif;
    font-weight: normal;
    letter-spacing: .05em;
  }

  .office-txt dd {
    font-size: 1.2em;
  }

  .office-pct {
    display: none;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 0 1.8em;
  }

  .office-pct li {
    width: 50%;
    line-height: 1;
    line-height: 0;
  }

  .office-pct li img {
    width: 100%;
  }

  .office-map {
    width: 100%;
    margin-top: -60px;
    padding-top: 60px;
  }

  .company-office-ashiya .ttl-section {
    background: url(../img/company/pct_ashiya.jpg) center top / 135% auto no-repeat;
  }

  #googlemap1,
  #googlemap2 {
    width: 100%;
    height: 340px;
  }

  #googlemap1 iframe,
  #googlemap2 iframe {
    width: 100%;
    height: 100%;
  }

  .gmnoprint {
    display: none;
  }

  .company-office-zushi .ttl-section {
    background: url(../img/company/pct_zushi.jpg) center top / 135% auto no-repeat;
  }

  .btn-map {
    text-align: center;
    margin: 1em 0 0;
  }

  .btn-map a {
    display: inline-block;
    line-height: 1.4;
    color: #000;
    font-size: 1.1em;
    text-decoration: none;
    background: url(../img/parts/ico_arrow.png) right 10% center no-repeat;
    border: 2px solid #000;
    padding: 6px 32px 6px 20px;
  }
}


/* =================================================================
	service
================================================================= */

/* service for pc */

@media screen and (min-width: 768px) {
  body.service #key-content {
    background: url(../img/service/key.jpg) center top / cover no-repeat;
  }

  .service-concept {
    position: relative;
    overflow: hidden;
    padding: 90px 0 50px;
    background: url(../img/service/bg_lightleak.jpg) right top no-repeat;
  }

  .service-concept p {
    font-size: 1.4em;
    text-align: center;
    line-height: 2.8;
    letter-spacing: .1em;
    position: relative;
  }

  .service-product .inner {
    width: 1000px;
    margin: 0 auto;
    padding: 5em 0 6.5em;
  }

  .service-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 0 110px;
  }

  .service-block .txt {
    width: 430px;
    font-size: 1em;
  }

  .service-block .pct {
    width: 536px;
    text-align: center;
  }

  .service-block .service-logo {
    text-align: center;
    margin-bottom: 1.2em;
  }

  .service-block .exp {
    font-size: 1.2em;
    margin: 0 0 1.8em;
  }
}


/* service for mobile */

@media screen and (max-width: 767px) {
  body.service #key-content {
    background: url(../img/service/key.jpg) center top / cover no-repeat;
  }

  .service-concept {
    position: relative;
    overflow: hidden;
    background: url(../img/service/bg_lightleak.jpg) right -12% top / 84% auto no-repeat;
    padding: 3em 0;
  }

  .service-concept p {
    font-size: 1.2em;
  }

  .service-concept br {
    display: none;
  }

  .service-block {
    padding: 0 0 2.6em;
    margin: 0 0 2.6em;
    border-bottom: 1px solid #e1e1e1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .inner .service-block:last-child {
    border-bottom: none;
  }

  .service-block .pct {
    width: 80%;
    position: relative;
    left: -1em;
    margin: 1.9em auto 0;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 1;
  }

  .service-block .pct img {
    width: 100%;
  }

  .service-block .txt {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 2;
  }

  .service-block .service-logo {
    width: 84%;
    text-align: center;
    margin-bottom: 1.2em;
    margin: .8em auto .4em;
  }

  .service-block .service-logo img {
    width: 100%;
    max-width: 340px;
  }

  .service-block .exp {
    font-size: 1.2em;
    margin: 0 0 1.4em;
  }

}


/* =================================================================
	news
================================================================= */

/* news for pc */

@media screen and (min-width: 768px) {
  body.news #key-content {
    background: url(../img/news/key.jpg) center top / cover no-repeat;
  }

  .list-news dl {
    width: 1000px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    margin: 90px auto;
  }

  .list-news dt,
  .list-news dd {
    border-bottom: 1px solid #ddd;
    padding: 34px 0;
  }

  .list-news dt {
    width: 15%;
    font-size: 1.4em;
    color: #aaa;
    font-family: 'Oswald', sans-serif;
    font-weight: lighter;
    letter-spacing: .1em;
  }

  .list-news dd {
    width: 85%;
  }

  .list-news dd a,
  .list-news dd span {
    color: #1d3498;
    font-size: 1.4em;
    text-decoration: none;
  }
}


/* news for mobile */

@media screen and (max-width: 767px) {
  body.news #key-content {
    background: url(../img/news/key.jpg) center top / cover no-repeat;
  }

  .list-news dl {
    width: 88%;
    margin: 3em auto 4em;
  }

  .list-news dd {
    border-bottom: 1px solid #ddd;
    line-height: 1.6;
    margin: 0 0 1.4em;
    padding: 0 0 1.4em;
  }

  .list-news dt {
    display: inline;
    font-size: 1.3em;
    color: #aaa;
    font-family: 'Oswald', sans-serif;
    font-weight: lighter;
    letter-spacing: .1em;
    margin-bottom: .3em;
    padding-right: 2.7em;
  }

  .list-news dt.ico-new {
    background: url(../img/parts/ico_new.png) right 0 center / 25% auto no-repeat;
  }

  .list-news dd a,
  .list-news dd span {
    color: #1d3498;
    font-size: 1.3em;
    text-decoration: none;
  }
}


/* =================================================================
	news - post
================================================================= */

/* news post for pc */

@media screen and (min-width: 768px) {
  .post-news {
    width: 900px;
    margin: 90px auto;
  }

  .ttl-post {
    font-size: 2.4em;
    letter-spacing: .1em;
    line-height: 1.4;
    margin: 0 0 .2em;
  }

  .date-post {
    font-size: 1.4em;
    color: #a3a3a3;
    font-family: 'Oswald', sans-serif;
    font-weight: lighter;
    letter-spacing: .1em;
    margin: 0 0 40px;
  }

  .post-news-content {
    margin-bottom: 80px;
  }

  .post-news-content h2 {
    line-height: 1.4;
    margin-bottom: 0.3em;
    border-bottom: #000 1px solid;
    padding: 0 0 13px;
    margin: 0 0 32px;
    font-size: 1.6em;
  }

  .post-news-content h3 {
    line-height: 1.4;
    margin-bottom: 0.3em;
    font-size: 1.3em;
  }

  .post-news-content p {
    font-size: 1.3em;
    line-height: 1.9;
    margin: 0 0 30px;
  }

  .post-news-content div {
    margin: 0 0 50px;
  }

  .post-news-content ul {
    font-size: 1.3em;
  }

  .post-news-content ul li {
    margin-bottom: 6px;
  }

  .post-news-content table {
    font-size: 1.3em;
    line-height: 1.4;
    margin: 0 0 30px;
  }

  .post-news-content table th {
    padding: 10px 18px 10px 0;
  }

  .post-news-content table td {
    padding: 10px 0;
  }
  
  .news-image {
    margin: 0 auto 30px;
    text-align: center;
    transition: 0.3s;
  }
  
  .news-image img,
  .news-image source {
    max-width: 100%;
  }

  .post-news-content .pct {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .post-news-content .pct img {
    max-width: 360px;
    height: auto;
    margin-right: 1.2em;
  }

  .post-news .btn-toall {
    text-align: center;
  }

  .post-news .btn-toall a {
    font-size: 1.3em;
    border: 2px solid #000;
    text-decoration: none;
    background: url(../img/parts/ico_arrow.png) right 8% center no-repeat;
    color: #000;
    padding: .9em 2.4em .7em 1.9em;
  }

  .post-news-content .news-pct-center {
    display: block;
    margin: 0 auto 30px;
    text-align: center;
    transition: 0.3s;
  }

  .news-pct-center:hover {
    opacity: 0.8;
    transition: 0.3s;
  }

}


/* news post for mobile */

@media screen and (max-width: 767px) {
  .post-news {
    width: 88%;
    margin: 3em auto 6em;
  }

  .ttl-post {
    font-size: 1.9em;
    letter-spacing: .1em;
    line-height: 1.3;
    margin: 0 0 .2em;
  }

  .date-post {
    font-size: 1.3em;
    color: #a3a3a3;
    font-family: 'Oswald', sans-serif;
    font-weight: lighter;
    letter-spacing: .1em;
    margin: 0 0 1.5em;
  }

  .post-news-content {
    margin-bottom: 3.6em;
  }

  .post-news-content h2 {
    line-height: 1.4;
    margin-bottom: 0.3em;
    border-bottom: #000 1px solid;
    padding: 0 0 13px;
    margin: 0 0 32px;
    font-size: 1.6em;
  }

  .post-news-content h3 {
    line-height: 1.4;
    margin-bottom: 0.3em;
    font-size: 1.3em;
  }

  .post-news-content p {
    font-size: 1.3em;
    line-height: 1.9;
    margin: 0 0 1.7em;
  }

  .post-news-content p img {
    width: 100%;
  }

  .post-news-content div {
    margin: 0 0 3.2em;
  }

  .post-news-content .pct img {
    width: 80%;
    display: block;
    margin: 0 auto 1.5em;
    border: 1px solid #c9c9c9;
  }

  .post-news-content ul {
    font-size: 1.3em;
  }

  .post-news-content ul li {
    margin-bottom: 0.4em;
  }

  .post-news-content table {
    font-size: 1.3em;
    line-height: 1.4;
    margin: 0 0 30px;
  }

  .post-news-content table th {
    display: block;
    padding: .6em .5em .3em 0;
  }

  .post-news-content table td {
    display: block;
    padding: 0 0 .6em 0;
  }
  
  .news-image {
    margin: 0 auto 26px;
    text-align: center;
    transition: 0.3s;
  }
  
  .news-image img,
  .news-image source {
    max-width: 100%;
  }

  .post-news .btn-toall {
    text-align: center;
  }

  .post-news .btn-toall a {
    font-size: 1.3em;
    border: 2px solid #000;
    text-decoration: none;
    background: url(../img/parts/ico_arrow.png) right 8% center no-repeat;
    color: #000;
    padding: .9em 2.4em .7em 1.9em;
  }

  .post-news-content .news-fish-logo {
    width: 70%;
    margin: 0 auto 16px;
  }
}


/* =================================================================
	recruit
================================================================= */

.consultant-pct {
  width: 76%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 2em auto 0;
}

.consultant-pct figure {
  margin-bottom: 1em;
  line-height: 1;
}

.consultant-pct img {
  width: 100%;
  line-height: 0;
}

.pct-w100 {
  width: 100%;
}

.pct-w49 {
  width: 49%;
}

.consultant-sec-05 .consultant-pct {
  width: 66%;
  margin-top: 0;
}

.consultant-sec-05 .consultant-pct figure {
  border: 6px solid #fff;
  transform: rotate(-4deg);
}

/* recruit for pc */

@media screen and (min-width: 768px) {
  body.recruit #key-content {
    background: url(../img/recruit/key.jpg) center top / cover no-repeat;
  }

  body#recruit-consultant #key-content {
    background: url(../img/recruit/key_consultant.jpg) center top / cover no-repeat;
    margin-bottom: 70px;
    padding: 14% 0 10%;
    /* 業務委託OK訴求用の追加スタイル */
    overflow: visible;
  }

  body#recruit-office-part #key-content {
    background: url(../img/recruit/key_office.jpg) center top / cover no-repeat;
    margin-bottom: 70px;
  }

  body#recruit-accounting-part #key-content {
    background: url(../img/recruit/key_accounting.jpg) center top / cover no-repeat;
    margin-bottom: 70px;
  }

  body#recruit-office-contract #key-content {
    background: url(../img/recruit/key_office_contract.jpg) center top / cover no-repeat;
    margin-bottom: 70px;
  }

  body#recruit-operator-part #key-content {
    background: url(../img/recruit/key_operator.jpg) center top / cover no-repeat;
    margin-bottom: 70px;
  }

  body#recruit-confirmation #key-content {
    background: url(../img/recruit/key_confirmation.jpg) center top / cover no-repeat;
    margin-bottom: 70px;
  }

  .recruit-concept {
    position: relative;
    overflow: hidden;
    padding: 90px 0 45px;
    background: url(../img/recruit/bg_lightleak.jpg) left top no-repeat;
  }

  .recruit-concept p {
    font-size: 1.4em;
    text-align: center;
    line-height: 2.8;
    letter-spacing: .1em;
  }

  .list-recruit-job {
    width: 1000px;
    margin: 0 auto 140px;
  }

  .list-recruit-job li {
    background-color: #fff;
    margin: 0 0 32px;
  }

  .list-recruit-job li a {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }

  .list-recruit-job li a:hover {
    opacity: 0.8;
    filter: alpha(opacity=80);
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }

  .list-recruit-job a {
    text-align: center;
    display: block;
    width: 100%;
    color: #fff;
    font-size: 2.5em;
    letter-spacing: .2em;
    font-weight: bold;
    text-decoration: none;
    position: relative;
    padding: 80px 0;
  }

  .list-recruit-job p.btn-job-status {
    position: absolute;
    left: -14px;
    top: -7px;
    background-color: #e53e7d;
    color: #fff;
    font-size: 0.55em;
    line-height: 1.2;
    text-shadow: none;
    padding: 8px 12px;
  }

  .list-recruit-job p.btn-job-status::after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 14px 14px 0;
    border-color: transparent #bf366a transparent transparent;
    position: absolute;
    left: 0;
    bottom: -14px;
  }

  .list-recruit-job p.btn-job-status span {
    font-size: 0.8em;
    margin-left: 0.6em;
  }

  .list-recruit-job p {
    line-height: 1.15;
    text-align: left;
    text-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
    padding: 0 0 0 44px;
  }

  .list-recruit-job span {
    font-size: .7em;
  }

  .list-recruit-job .feature {
    position: absolute;
    right: 0;
    top: 26%;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 24px 0 0;
  }

  .list-recruit-job .feature li {
    width: 120px;
    height: 120px;
    background-color: rgba(0, 0, 0, .2);
    border: 3px solid #fff;
    color: #fff;
    text-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    font-size: .55em;
    text-align: center;
    letter-spacing: .05em;
    line-height: 1.4;
    margin: 0 0 0 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    /* border-radius */
    border-radius: 60px;
    -moz-border-radius: 60px;
    -webkit-border-radius: 60px;
  }

  .btn-job-office-contract a {
    background: url(../img/recruit/btn_office_contract.jpg) center center no-repeat;
  }

  .btn-job-office-part a {
    background: url(../img/recruit/btn_office.jpg) center center no-repeat;
  }

  .btn-job-accounting-part a {
    background: url(../img/recruit/btn_accounting.jpg) center center no-repeat;
  }

  .btn-job-operator-part a {
    background: url(../img/recruit/btn_operator.jpg) center center no-repeat;
  }

  .btn-job-consultant a {
    background: url(../img/recruit/btn_consultant.jpg) center top 20% no-repeat;
    padding: 100px 0;
  }

  .btn-job-confirmation-part a {
    background: url(../img/recruit/btn_confirmation.jpg) center top 20% no-repeat;
    padding: 100px 0;
  }


  /* consultant */

  /* 業務委託可能キャッチ */
  .key-attention {
    font-weight: bold;
    font-size: 1.2rem;
    line-height: 1.4;
    text-align: center;
    width: 170px;
    height: 170px;
    background-color: #e2ff00;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    position: absolute;
    right: 3%;
    bottom: -30px;
  }

  .ttl-consultant {
    /*  transform: rotate(-8deg);*/
    text-align: center;
  }

  .ttl-consultant-catch {
    font-size: 5.2em;
    line-height: 1.3;
    color: #fff;
    text-shadow: 0 0 8px rgba(0, 0, 0, 1);
    font-weight: bold;
    margin-bottom: 12px;
  }

  .ttl-consultant-catch span {
    font-size: 1.5em;
  }

  .ttl-consultant-lead {
    display: inline-block;
    font-size: 2.8em;
    text-align: center;
    font-weight: bold;
    color: #fff;
    background: rgba(0, 0, 0, 0.9);
    padding: 4px 16px;
  }

  .ttl-consultant-lead span {
    color: #e2ff00;
  }

  .consultant-welcome {
    margin-bottom: 40px;
    text-align: center;
  }

  .consultant-welcome p {
    font-size: 1.7em;
    line-height: 2.2;
    color: #114ec8;
  }

  .consultant-sec {
    width: 900px;
    margin: 0 auto 90px;
  }

  .consultant-sec .inner {
    width: 900px;
    margin: 0 auto;
  }

  .consultant-sec h2 {
    color: #114ec8;
    margin-bottom: 16px;
    width: 100%;
    text-align: center;
  }

  .consultant-sec h2 span {
    position: relative;
    display: inline-block;
    font-size: 1.7em;
    line-height: 1.3;
  }

  .consultant-sec h2 span::before,
  .consultant-sec h2 span::after {
    position: absolute;
    top: 50%;
    width: 1em;
    border-top: 1px solid #4972c3;
    content: "";
  }

  .consultant-sec h2 span::before {
    left: -1.4em;
  }

  .consultant-sec h2 span::after {
    right: -1.4em;
  }

  .consultant-sec .txt p {
    font-size: 1.3em;
    margin: 0 0 18px;
  }

  .consultant-sec-01 {
    width: 100%;
    background: url(../img/recruit/consultant_01.jpg) center top / 100% auto no-repeat;
    margin: 0;
    padding-bottom: 80px;
  }

  .consultant-sec-01 .inner {
    width: 900px;
    margin: 0 auto;
  }

  .consultant-advantage-bloc {
    margin-bottom: 40px;
  }

  .consultant-advantage-ttl {
    font-size: 1.4em;
    margin-bottom: 20px;
  }

  .consultant-sec-02 {
    width: 100%;
    background: #eff0e2;
    padding: 80px 0;
  }

  .consultant-sec-07 {
    width: 100%;
    background: #eff0e2;
    padding: 80px 0;
  }

  .consultant-advantage-bloc {
    margin-bottom: 20px;
    padding-top: 30px;
    padding-bottom: 40px;
    border-bottom: 1px solid #cbccbd;
    position: relative;
  }

  .consultant-advantage-bloc:last-of-type {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
  }

  .consultant-advantage-ttl .num {
    display: block;
    font-size: 14em;
    line-height: 0;
    font-family: 'Marck Script', cursive;
    font-weight: normal;
    text-align: center;
    letter-spacing: .1em;
    margin: 0 0 .6em;
    color: #fffffb;
    position: absolute;
    left: 20px;
    top: 66px;
    transform: rotate(-14deg);
  }

  .consultant-advantage-ttl h3 {
    font-size: 1.5em;
    line-height: 1.5;
    text-align: center;
    position: relative;
  }

  .consultant-advantage-bloc .txt {
    width: 90%;
    position: relative;
    margin: 0 auto;
  }

  .consultant-sec-06 .txt p {
    text-align: center;
  }

  .consultant-conditions-list {
    width: 90%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: stretch;
  }

  .consultant-dowhatyoulove {
    max-width: 1200px;
    text-align: center;
    background: url(../img/recruit/dwyl.jpg) center top / auto 110% no-repeat;
    margin: -120px auto 0;
    padding: 190px 0 120px;
    text-shadow: 0 0 10px rgba(255, 255, 255, 1), 0 0 10px rgba(255, 255, 255, 1), 0 0 10px rgba(255, 255, 255, 1);
  }

  .consultant-dowhatyoulove h3 {
    font-size: 2em;
    margin-bottom: .5em;
  }

  .consultant-dowhatyoulove p {
    font-size: 1.5em;
    line-height: 2;
  }

  .consultant-sec-05 {
    width: 810px;
    margin: 0 auto 90px;
    padding: 60px 22px;
    background: #87dffb;
    background: linear-gradient(#87dffb 0%, #f0f4a0 100%);
    box-sizing: border-box;
    position: relative;
  }

  .consultant-sec-05::before {
    content: "";
    display: block;
    border: 1px solid #fff;
    width: calc(100% - 16px);
    height: calc(100% - 16px);
    margin: 8px auto;
    position: absolute;
    left: 8px;
    top: 0;
    box-sizing: border-box;
  }

  .consultant-sec-05 h2 {
    color: #000;
    font-size: 2.2em;
    margin-bottom: 30px;
    text-align: center;
    font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  }

  .consultant-sec-05 h2 span {
    border-bottom: 1px solid #222;
    padding-bottom: 8px;
  }

  .consultant-sec-06 {
    margin-bottom: 0;
  }

  .consultant-day {
    width: 85%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: center;
  }

  .consultant-day dt {
    color: #052e6d;
    width: 12%;
    font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    margin-bottom: 18px;
    font-size: 1.5em;
  }

  .consultant-day dd {
    width: 88%;
    margin-bottom: 18px;
    font-size: 1.4em;
  }

  .consultant-conditions-list li {
    width: 23%;
    height: 140px;
    font-weight: bold;
    color: #114ec8;
    font-size: 1.3em;
    line-height: 1.6;
    margin-bottom: 18px;
    text-align: center;
    padding: 14px;
    border: 2px solid #0088e9;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }

  .consultant-alliance {
    width: 900px;
    margin: 0 auto 50px;
  }
  
  .consultant-alliance .note {
    text-align: center;
    font-size: 1.2em;
    margin-top: 12px;
  }

  .consultant-alliance p.exp {
    font-size: 1.05rem;
    padding-left: 1em;
    text-indent: -1em;
  }

  #recruit-consultant .recruit-contact {
    margin-bottom: 80px;
  }

  #container .consultant-alliance .btn-toall {
    margin-top: 30px;
  }

  #container .consultant-alliance .btn-toall a {
    font-size: 1.05rem;
  }

  .recruit-office-contract-info {
    padding: 50px 0;
    margin-bottom: 70px;
    background-color: #e6ff91;
  }

  .recruit-office-contract-info .inner {
    max-width: 1000px;
    margin: 0 auto;
  }

  .recruit-office-contract-info .inner p {
    font-size: 1.5em;
    text-align: center;
    font-weight: bold;
  }

}


/* recruit for mobile */

@media screen and (max-width: 767px) {
  body.recruit #key-content {
    background: url(../img/recruit/key.jpg) center top / cover no-repeat;
  }

  .recruit-concept {
    position: relative;
    overflow: hidden;
    background: url(../img/recruit/bg_lightleak.jpg) right -12% top / 90% auto no-repeat;
    padding: 3em 0;
  }

  .recruit-concept p {
    font-size: 1.2em;
    margin: 0 0 1.5em;
  }

  .recruit-concept p br {
    display: none;
  }

  .list-recruit-job {
    width: 88%;
    margin: 0 auto 5em;
  }

  .list-recruit-job li {
    margin: 0 0 1.8em;
  }

  .list-recruit-job a {
    text-align: center;
    display: block;
    width: 100%;
    color: #fff;
    text-decoration: none;
    padding: 1.6em .5em 1.3em;
    position: relative;
  }

  .btn-job-operator-part a {
    padding: 2.4em .5em 1.7em;
  }

  .list-recruit-job p {
    font-size: 1.6em;
    line-height: 1.3;
    text-align: center;
    letter-spacing: .1em;
    font-weight: bold;
    color: #fff;
    text-shadow: 0 0 7px rgba(0, 0, 0, 0.8);
    margin-bottom: .8em;
  }

  .btn-job-office span {
    font-size: .7em;
  }

  .list-recruit-job p.btn-job-status {
    position: absolute;
    left: -14px;
    top: -10px;
    background-color: #e53e7d;
    color: #fff;
    font-size: 1em;
    line-height: 1.2;
    text-shadow: none;
    padding: 0.4em 0.5em;
  }

  .list-recruit-job p.btn-job-status::after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 14px 14px 0;
    border-color: transparent #bf366a transparent transparent;
    position: absolute;
    left: 0;
    bottom: -14px;
  }

  .list-recruit-job p.btn-job-status span {
    font-size: 0.8em;
    margin-left: 0.4em;
  }

  .list-recruit-job .feature {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }

  .list-recruit-job .feature li {
    width: 6em;
    color: #fff;
    background-color: rgba(0, 0, 0, .5);
    text-shadow: 0 0 5px rgba(0, 0, 0, 0.9);
    font-size: 1.1em;
    text-align: center;
    letter-spacing: .05em;
    line-height: 1.4;
    margin: 0 .4em;
    padding: .4em 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }

  .btn-job-office-permanent a {
    background: url(../img/recruit/btn_office.jpg) center center / cover no-repeat;
  }

  .btn-job-office-contract a {
    background: url(../img/recruit/btn_office_contract.jpg) center center / cover no-repeat;
  }

  .btn-job-office-part a {
    background: url(../img/recruit/btn_office.jpg) center center / cover no-repeat;
  }

  .btn-job-accounting-part a {
    background: url(../img/recruit/btn_accounting.jpg) center center / cover no-repeat;
  }

  .btn-job-operator-part a {
    background: url(../img/recruit/btn_operator.jpg) center center / cover no-repeat;
  }

  .btn-job-consultant a {
    background: url(../img/recruit/btn_consultant.jpg) center center / cover no-repeat;
  }

  .btn-job-confirmation-part a {
    background: url(../img/recruit/btn_confirmation.jpg) center center / cover no-repeat;
  }

  /* consultant */

  /* 業務委託可能キャッチ */
  .key-attention {
    height: 3.5em;
    font-weight: bold;
    font-size: 1.1rem;
    line-height: 1.4;
    text-align: center;
    width: 100%;
    background-color: #e2ff00;
    padding: 0 .3em;
    position: absolute;
    right: 0;
    bottom: -3.5em;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .ttl-consultant {
    text-align: center;
    width: 90%;
    margin: 0 6% 0 4%;
  }

  .ttl-consultant-catch {
    font-size: 2.8em;
    line-height: 1.3;
    color: #fff;
    text-shadow: 0 0 8px rgba(0, 0, 0, 1);
    font-weight: bold;
    margin-bottom: 12px;
  }

  .ttl-consultant-catch br {
    display: none;
  }

  .ttl-consultant-catch span {
    font-size: 1.4em;
  }

  .ttl-consultant-lead {
    width: 100%;
    display: inline-block;
    font-size: 1.8em;
    line-height: 1.4;
    text-align: center;
    font-weight: bold;
    color: #fff;
    background: rgba(0, 0, 0, 0.9);
    padding: 4px 16px;
  }

  .ttl-consultant-lead span {
    color: #e2ff00;
  }

  .consultant-welcome {
    margin-bottom: 1.3em;
    text-align: center;
  }

  .consultant-welcome p {
    font-size: 1.4em;
    line-height: 1.8;
    color: #114ec8;
  }

  .consultant-sec {
    width: 88%;
    margin: 0 auto 40px;
  }

  .consultant-sec .inner {
    width: 88%;
    margin: 0 auto;
  }

  .consultant-sec h2 {
    color: #114ec8;
    margin-bottom: 0.8em;
    width: 100%;
    text-align: center;
  }

  .consultant-sec h2 span {
    position: relative;
    display: inline-block;
    font-size: 1.3em;
    line-height: 1.3;
  }

  .consultant-sec h2 span::before,
  .consultant-sec h2 span::after {
    position: absolute;
    top: 50%;
    width: 1em;
    border-top: 1px solid #4972c3;
    content: "";
  }

  .consultant-sec h2 span::before {
    left: -1.4em;
  }

  .consultant-sec h2 span::after {
    right: -1.4em;
  }

  .consultant-sec .txt p {
    font-size: 1.2em;
    margin: 0 0 18px;
  }

  .consultant-sec-01 {
    width: 100%;
    background: url(../img/recruit/consultant_01.jpg) center bottom / cover no-repeat;
    margin: 0;
    padding-bottom: 40px;
  }

  .consultant-sec-01 .inner {
    width: 88%;
    margin: 0 auto;
  }

  .consultant-advantage-bloc {
    margin-bottom: 40px;
  }

  .consultant-advantage-ttl {
    font-size: 1.4em;
    margin-bottom: 20px;
  }

  .consultant-sec-02 {
    width: 100%;
    background: #eff0e2;
    padding: 40px 0;
  }

  .consultant-sec-07 {
    width: 100%;
    background: #eff0e2;
    padding: 40px 0;
  }

  .consultant-advantage-bloc {
    margin-bottom: 10px;
    padding-top: 24px;
    padding-bottom: 20px;
    border-bottom: 1px solid #cbccbd;
    position: relative;
  }

  .consultant-advantage-bloc:last-of-type {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
  }

  .consultant-advantage-ttl .num {
    display: block;
    font-size: 13em;
    line-height: 0;
    font-family: 'Marck Script', cursive;
    font-weight: normal;
    text-align: center;
    letter-spacing: .1em;
    margin: 0 0 .6em;
    color: #fffffb;
    position: absolute;
    left: 0;
    top: 66px;
    transform: rotate(-14deg);
  }

  .consultant-advantage-ttl h3 {
    font-size: 1.1em;
    line-height: 1.5;
    text-align: center;
    position: relative;
  }

  .consultant-advantage-bloc .txt {
    position: relative;
    margin: 0 auto;
  }

  .consultant-sec-06 .txt p {
    text-align: center;
  }

  .consultant-conditions-list {
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: stretch;
  }

  .consultant-sec-05 {
    margin: 0 auto 40px;
    padding: 3em 1em 2em;
    background: #87dffb;
    background: linear-gradient(#87dffb 0%, #f0f4a0 100%);
    box-sizing: border-box;
    position: relative;
  }

  .consultant-sec-05::before {
    content: "";
    display: block;
    border: 1px solid #fff;
    width: calc(100% - 1.6em);
    height: calc(100% - 1.6em);
    margin: 0.8em auto;
    position: absolute;
    left: 0.8em;
    top: 0;
    box-sizing: border-box;
  }

  .consultant-sec-05 h2 {
    color: #000;
    font-size: 1.5em;
    margin-bottom: 20px;
    text-align: center;
    font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  }

  .consultant-sec-05 h2 span {
    border-bottom: 1px solid #222;
    padding-bottom: 8px;
  }

  .consultant-day {
    width: 88%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: stretch;
  }

  .consultant-day dt {
    text-align: left;
    color: #052e6d;
    width: 100%;
    font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    margin-bottom: 0;
    font-size: 1.5em;
    line-height: 1;
  }

  .consultant-day dd {
    width: 100%;
    margin-bottom: 1.4em;
    font-size: 1.2em;
  }

  .consultant-conditions-list li {
    width: 48%;
    font-weight: bold;
    color: #114ec8;
    font-size: 1.2em;
    line-height: 1.5;
    margin-bottom: 0.8em;
    text-align: center;
    padding: 1em 0.6em;
    border: 2px solid #0088e9;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }

  .consultant-sec-06 {
    margin-bottom: 0;
  }

  .consultant-dowhatyoulove {
    background: url(../img/recruit/dwyl.jpg) center top / auto 110% no-repeat;
    margin: -80px auto 0;
    padding: 110px 0 40px;
    text-shadow: 0 0 10px rgba(255, 255, 255, 1), 0 0 10px rgba(255, 255, 255, 1), 0 0 10px rgba(255, 255, 255, 1);
  }

  .consultant-dowhatyoulove h3 {
    font-size: 1.6em;
    margin-bottom: .5em;
    text-align: center;
  }

  .consultant-dowhatyoulove p {
    width: 75%;
    margin: 0 auto;
    font-size: 1.2em;
    line-height: 2;
  }

  #recruit-consultant .recruit-contact {
    margin-bottom: 3em;
  }

  .consultant-alliance {
    width: 88%;
    margin: 0 auto 3em;
  }
  
  .consultant-alliance .note {
    text-align: center;
    font-size: 1em;
    margin-top: 10px;
  }

  .consultant-alliance p.exp {
    font-size: 0.9rem;
    text-indent: -1em;
    padding-left: 1em;
  }

  .consultant-pct {
    width: 100%;
  }

  .consultant-pct figure {
    margin-bottom: 0.4em;
  }

  .consultant-sec-05 .consultant-pct {
    width: 80%;
  }

  #container .consultant-alliance .btn-toall {
    margin: 0.8em 0 0;
  }

  #container .consultant-alliance .btn-toall a {
    font-size: 0.9rem;
  }

}

/* 業務委託OK訴求用の追加スタイル */
.tbl-recruit-guide .attention {
  display: inline-block;
  font-weight: bold;
  color: #b11a1a;
  text-indent: -1em;
  padding-left: 1em;
}


/* recruit-office for pc */

@media screen and (min-width: 768px) {
  .ttl-content-job {
    font-family: "游ゴシック", "Yu Gothic", YuGothic, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
    font-weight: bold;
    font-size: 5em;
    line-height: 1.2;
    color: #fff;
    letter-spacing: .1em;
    text-align: center;
    text-shadow: 0 0 11px rgba(0, 0, 0, 0.4);
  }

  .ttl-content-job span {
    font-size: .8em;
  }

  .recruit-condition-lead {
    width: 1000px;
    margin: 0 auto;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }

  .recruit-condition-lead li {
    background: #d9f6ff;
    font-size: 1.25em;
    color: #114ec8;
    margin: 0 10px 14px 0;
    padding: 4px 11px;
  }

  .recruit-job-lead {
    position: relative;
    overflow: hidden;
    /*padding: 90px 0 70px;
    background: url(../img/recruit/bg_lightleak.jpg) left top no-repeat;*/
  }

  .recruit-job-lead .inner {
    width: 1000px;
    position: relative;
    margin: 0 auto 70px;
  }

  /*.recruit-job-lead h1 {
    font-size: 2.4em;
    letter-spacing: .2em;
    line-height: 1;
    margin: 0 0 30px;
  }
  .recruit-job-lead h1 span {
    font-size: .6em;
    font-weight: 500;
  }*/
  .recruit-job-lead p.txt-welcome {
    font-size: 1.4em;
    text-align: center;
    line-height: 2.8;
    margin-top: 33px;
  }

  #recruit-view {
    width: 1000px;
    margin: 0 auto;
  }

  .recruit-view-office {
    margin: 0 0 60px;
  }

  .recruit-view-office h2 {
    font-size: 3.4em;
    font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    line-height: 1.4;
    text-align: right;
  }

  .recruit-view-office h3 {
    color: #e97c1d;
  }

  .recruit-view-office .lead {
    margin-bottom: 16px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }

  .recruit-view-office .lead p {
    font-size: 1.2em;
    margin: 0 0 18px;
  }

  .recruit-view-office .lead .txt {
    width: 354px;
  }

  .recruit-view-office .lead .pct {
    width: 601px;
  }

  .recruit-view-office .lead .en {
    font-family: 'Marck Script', cursive;
    font-size: 1.9em;
    line-height: 1.4;
    text-align: right;
    margin: 0 0 22px;
  }

  .recruit-view-office h2 span,
  .recruit-view-office .en {
    color: #e97c1d;
  }

  .recruit-view-block {
    margin-bottom: 12px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .recruit-view-block h3 {
    font-size: 2.1em;
    letter-spacing: .1em;
    font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    line-height: 1.5;
    margin-bottom: 9px;
  }

  .recruit-view-block .exp {
    font-size: 1.2em;
    margin: 0 0 18px;
  }

  .recruit-view-location .txt {
    width: 494px;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    margin-right: 40px;
  }

  .recruit-view-location .pct {
    width: 320px;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }

  .recruit-view-access {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    -ms-grid-row-align: flex-start;
    align-items: flex-start;
    margin-bottom: 20px;
  }

  .recruit-view-access h3 {
    text-align: right;
  }

  .recruit-view-access .txt {
    width: 430px;
  }

  .recruit-view-access .pct {
    width: 528px;
  }

  .recruit-view-breakroom {
    background: url(../img/recruit/bg_breakroomview.png) right center / 35% auto no-repeat;
    margin-bottom: 44px;
  }

  .recruit-view-breakroom .txt {
    width: 482px;
    margin-right: 20px;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }

  .recruit-view-breakroom .pct {
    width: 456px;
    margin-left: -20px;
  }

  .recruit-view-workmates {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    -ms-grid-row-align: flex-end;
    align-items: flex-end;
    margin-bottom: 42px;
  }

  .recruit-view-workmates h3 {
    text-align: right;
  }

  .recruit-view-workmates .txt {
    width: 466px;
    margin-left: 68px;
  }

  .recruit-view-workmates .txt p:nth-last-of-type(1) {
    margin-bottom: 0;
  }

  .recruit-view-workmates .pct {
    width: 426px;
  }

  .recruit-view-work {
    margin: 0;
  }

  .recruit-view-work h2 {
    font-size: 3.4em;
    font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    line-height: 1.4;
  }

  .recruit-view-work h3 {
    color: #218b91;
  }

  .recruit-view-work .lead {
    background: url(../img/recruit/bg_workview.png) right 8px top 28px no-repeat;
    margin-bottom: 42px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .recruit-view-work .lead p {
    font-size: 1.2em;
    margin: 0 0 18px;
  }

  .recruit-view-work .lead ul li {
    font-size: 1.2em;
    list-style: disc inside;
    margin: 0 0 2px 4px;
  }

  .recruit-view-work .lead .txt {
    width: 540px;
    width: 550px;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }

  .recruit-view-work .lead .en {
    font-family: 'Marck Script', cursive;
    font-size: 1.9em;
    line-height: 1.4;
    text-align: left;
    margin: 0 0 22px;
  }

  .recruit-view-work h2 span,
  .recruit-view-work .en {
    color: #3fb4bb;
  }

  .recruit-view-work .lead .pct {
    width: 175px;
    margin-left: -18px;
  }

  .recruit-view-training {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    -ms-grid-row-align: flex-end;
    align-items: flex-end;
    margin-top: -28px;
  }

  .recruit-view-training .txt {
    width: 380px;
  }

  .recruit-view-training .pct {
    width: 575px;
    margin: 0 0 0 30px;
  }

  .recruit-view-alpha {}

  .recruit-view-alpha .txt h3 {
    text-align: center;
  }

  .recruit-view-alpha .txt p {
    font-size: 2em;
    text-align: center;
  }

  .txt-recruit-skillup {
    width: 900px;
    margin: 0 auto;
    padding: 92px 0 118px;
    background: url(../img/recruit/bg_skillup.png) center center no-repeat;
  }

  .txt-recruit-skillup h3 {
    text-align: center;
    font-size: 2.1em;
    letter-spacing: .1em;
    font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    line-height: 1.5;
    color: #218b91;
    margin-bottom: 9px;
  }

  .txt-recruit-skillup p {
    font-size: 1.5em;
    line-height: 2;
    text-align: center;
    margin-bottom: 12px;
  }

  .recruit-environment {
    background: url(../img/recruit/bg_environment.png) repeat;
  }

  .recruit-environment .inner {
    width: 1000px;
    margin: 0 auto;
    padding: 60px 0 64px;
  }

  .recruit-environment .inner:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
    line-height: 0;
  }

  .recruit-environment h2 {
    text-align: center;
    font-size: 2.6em;
    line-height: 1.5;
    letter-spacing: .1em;
    font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    margin: 0 0 28px;
  }

  .recruit-environment h2 span {
    color: #ee2c3c;
  }

  .recruit-environment-block h3 span {
    font-size: 1.7em;
    line-height: 1.8;
    display: inline;
    border-bottom: 1px solid #666;
    margin: 0 0 9px;
    padding: 0 0 3px;
  }

  .recruit-environment-block .exp {
    font-size: 1.3em;
    margin-top: 14px;
  }

  .recruit-environment .pct img {
    width: 374px;
    border: 9px solid #fff;
    box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.2);
  }

  .recruit-environment-01 {
    width: 1000px;
    margin-bottom: 30px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }

  .recruit-environment-01 h3 {
    background: url(../img/recruit/bg_environment_01.png) left center no-repeat;
    margin: 0 0 0 -15px;
    padding: 8px 0 8px 130px;
  }

  .recruit-environment-01 .txt {
    width: 584px;
  }

  .recruit-environment-01 .pct img {
    display: block;
    position: relative;
  }

  .recruit-environment-01 .pct img:nth-child(1) {
    right: -14px;
    transform: rotate(-5deg);
    -moz-transform: rotate(-5deg);
    -webkit-transform: rotate(-5deg);
  }

  .recruit-environment-01 .pct img:nth-child(2) {
    right: -39px;
    transform: rotate(5deg);
    -moz-transform: rotate(5deg);
    -webkit-transform: rotate(5deg);
  }

  .recruit-environment-02 {
    width: 1000px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: -32px 0 12px;
  }

  .recruit-environment-02 h3 {
    background: url(../img/recruit/bg_environment_02.png) left center no-repeat;
    margin: 0 0 0 -15px;
    padding: 8px 0 8px 130px;
  }

  .recruit-environment-02 .txt {
    width: 616px;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }

  .recruit-environment-02 .pct img {
    width: 330px;
    margin-top: -52px;
    transform: rotate(5deg);
    -moz-transform: rotate(5deg);
    -webkit-transform: rotate(5deg);
  }

  .recruit-environment-03 {
    width: 1000px;
    margin-bottom: 20px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .recruit-environment-03 h3 {
    background: url(../img/recruit/bg_environment_03.png) left center no-repeat;
    margin: 0 0 0 -15px;
    padding: 30px 0 30px 130px;
  }

  .recruit-environment-03 .txt {
    width: 594px;
  }

  .recruit-environment-03 .pct {
    width: 374px;
    margin-top: -10px;
  }

  .recruit-environment-03 .pct img:nth-child(1) {
    display: block;
    transform: rotate(-8deg);
    -moz-transform: rotate(-8deg);
    -webkit-transform: rotate(-8deg);
    position: relative;
    z-index: 20;
  }

  .recruit-environment-03 .pct img:nth-child(2) {
    display: block;
    transform: rotate(4deg);
    -moz-transform: rotate(4deg);
    -webkit-transform: rotate(4deg);
    margin-top: -44px;
  }

  .recruit-environment-04 {
    width: 460px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    float: left;
  }

  .recruit-environment-04 h3 {
    width: 390px;
    background: url(../img/recruit/bg_environment_04.png) left center no-repeat;
    position: relative;
    z-index: 2;
    margin-top: 0;
    padding: 30px 0 30px 130px;
  }

  .recruit-environment-04 .txt {
    width: 540px;
    margin-bottom: 22px;
  }

  .recruit-environment-04 .pct {
    margin: 0 auto;
  }

  .recruit-environment-04 .pct img {
    transform: rotate(5deg);
    -moz-transform: rotate(5deg);
    -webkit-transform: rotate(5deg);
  }

  .recruit-environment-05 {
    width: 486px;
    margin-top: 14px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    float: right;
  }

  .recruit-environment-05 h3 {
    background: url(../img/recruit/bg_environment_05.png) left center no-repeat;
    position: relative;
    z-index: 2;
    margin-top: 0;
    padding: 9px 0 9px 130px;
  }

  .recruit-environment-05 .txt {
    width: 540px;
    margin-top: 52px;
  }

  .recruit-environment-05 .pct {
    margin: 20px auto 0;
  }

  .recruit-environment-05 .pct img {
    transform: rotate(-5deg);
    -moz-transform: rotate(-5deg);
    -webkit-transform: rotate(-5deg);
  }

  .recruit-message {
    background: url(../img/recruit/bg_message.jpg) center center / cover no-repeat;
    margin: 0 0 80px;
  }

  .recruit-message .inner {
    padding: 134px 0 80px;
  }

  .recruit-message p {
    text-align: center;
    color: #fff;
    font-size: 1.7em;
    line-height: 2.6;
    font-weight: bold;
    letter-spacing: .2em;
    margin: 0 0 1.4em;
  }

  #recruit-guide {
    width: 1000px;
    margin: 0 auto 150px;
  }

  #recruit-guide h2 {
    font-size: 2.4em;
    letter-spacing: .2em;
    line-height: 1.3;
    text-align: center;
    margin: 0 0 36px;
  }

  #recruit-guide h2 span {
    font-size: .8em;
    font-weight: 500;
    display: block;
    margin-bottom: 6px;
  }

  .recruit-condition {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    margin: 0 0 40px;
  }

  .recruit-condition li {
    background: #d9f6ff;
    font-size: 1.12em;
    color: #114ec8;
    margin: 0 12px 12px 0;
    padding: 4px 11px;
  }

  .tbl-recruit-guide {
    width: 100%;
    border-top: 1px solid #0088e9;
    font-size: 1.3em;
  }

  .tbl-recruit-guide th {
    color: #787878;
    font-weight: bold;
    width: 21%;
    border-bottom: 1px solid #0088e9;
    vertical-align: middle;
    padding: 36px 0;
  }

  .tbl-recruit-guide td {
    width: 79%;
    border-bottom: 1px solid #0088e9;
    vertical-align: middle;
    padding: 32px 0;
  }

  .tbl-recruit-guide td p {
    margin-bottom: 14px;
  }

  .tbl-recruit-guide td p:last-child {
    margin-bottom: 0;
  }

  .tbl-recruit-guide td ol {
    padding-left: 1.5em;
  }

  .tbl-recruit-guide td strong {
    display: block;
    margin-top: 12px;
  }

  .tbl-recruit-guide ul li {
    position: relative;
    padding-left: 1em;
  }

  .tbl-recruit-guide ul li:before {
    content: "・";
    position: absolute;
    left: 0;
    top: 0;
  }

  .tbl-recruit-guide .btn-map {
    font-size: .8em;
    text-decoration: none;
    color: #000;
    background: #f5f5f5 url(../img/parts/ico_arrow.png) right 10% center no-repeat;
    display: inline-block;
    margin: 0 0 0 1em;
    padding: .35em 2em .35em .9em;
    -webkit-transition: 0.2s;
    transition: 0.2s;
  }

  .tbl-recruit-guide .btn-map:hover {
    color: #666;
    background-color: #fafafa;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }

  .tbl-recruit-place::after {
    content: "";
    display: table;
    clear: both;
  }

  .tbl-recruit-place dl {
    clear: both;
  }

  .tbl-recruit-place dl:first-child {
    margin-bottom: 12px;
  }

  .tbl-recruit-place dt {
    float: left;
    width: 5em;
  }

  .recruit-contact {
    width: 1000px;
    margin: 0 auto 120px;
    padding: 0 0 40px;
    background: #87dffb;
    background: -webkit-linear-gradient(top, #87dffb 0%, #e1f7f5 27%, #e1f7f5 82%, #fff 100%);
    background: linear-gradient(180deg, #87dffb 0%, #e1f7f5 27%, #e1f7f5 82%, #fff 100%);
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#87dffb', endColorstr='#e8faf8', GradientType=1);
  }

  .recruit-contact h2 {
    color: #0651ca;
    font-size: 2.3em;
    text-align: center;
    margin: 0 0 20px;
  }

  .recruit-contact p {
    font-size: 1.2em;
    margin: 0 0 14px;
  }

  .txt-recruit-moreinfo {
    width: 70%;
    margin: 0 auto;
    position: relative;
    top: -118px;
    background: url(../img/recruit/recruit_moreinfo.png) right bottom no-repeat;
    padding-bottom: 45px;
  }

  .txt-recruit-moreinfo p {
    font-size: 1.5em;
    background: #fff764;
    padding: 28px 0;
    text-align: center;
    margin: 0 auto;
  }

  .recruit-entry {
    text-align: center;
    margin-top: -120px;
  }

  .recruit-entry p {
    text-align: center;
    margin-bottom: 6px;
  }

  .recruit-entry .tel {
    font-family: 'Oswald', sans-serif;
    font-size: 3em;
    letter-spacing: .05em;
    line-height: 1.2;
  }

  .recruit-entry .person {
    margin-bottom: 40px;
  }

  .recruit-entry .btn-contact a {
    font-size: 1.1em;
    text-decoration: none;
    color: #000;
    display: inline-block;
    background: url(../img/parts/ico_arrow.png) right 5% center no-repeat;
    border: 2px solid #000;
    margin: 12px 0;
    padding: .55em 3em .55em 1.9em;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  
  .recruit-entry .note {
    text-align: center;
    font-size: 1.2em;
    margin-bottom: 60px;
  }

  .recruit-entry .btn-contact a:hover {
    color: #fff;
    background: #000 url(../img/parts/ico_arrow_wh.png) right 5% center no-repeat;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }

  .recruit-selection {
    width: 906px;
    margin: 0 auto;
  }

  .recruit-selection .chart dl {
    margin-bottom: 38px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .recruit-selection .chart dl dt {
    width: 182px;
    color: #fff;
    font-size: 152px;
    line-height: 1;
    font-family: Avenir, "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, sans-serif;
  }

  .recruit-selection .chart dl dd {
    width: 716px;
  }

  .recruit-selection .chart dl dd h3 {
    color: #7b9a97;
    font-size: 1.5em;
    letter-spacing: .1em;
    margin-bottom: 4px;
  }

  /* 一般事務 契約社員 */
  body#recruit-office-contract .recruit-environment-03 {
    margin-top: -62px;
  }

  body#recruit-office-contract .recruit-environment-03 h3 {
    background: url(../img/recruit/bg_environment_02.png) left center no-repeat;
  }

  body#recruit-office-contract .recruit-environment-03 .txt {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }

  body#recruit-office-contract .recruit-environment-03 .pct {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }

  body#recruit-office-contract .recruit-environment-04 h3 {
    background: url(../img/recruit/bg_environment_03.png) left center no-repeat;
  }

  .tbl-recruit-guide td .ttl-license {
    margin: 0.8em 0 0.2em;
  }
}


/* recruit-office for mobile */

@media screen and (max-width: 767px) {
  body#recruit-office-contract #key-content {
    background: url(../img/recruit/key_office_contract.jpg) center top / cover no-repeat;
    margin-bottom: 2.6em;
  }

  body#recruit-office-part #key-content {
    background: url(../img/recruit/key_office.jpg) center top / cover no-repeat;
    margin-bottom: 2.6em;
  }

  body#recruit-accounting-part #key-content {
    background: url(../img/recruit/key_accounting.jpg) center top / cover no-repeat;
    margin-bottom: 2.6em;
  }

  body#recruit-operator-part #key-content {
    background: url(../img/recruit/key_operator.jpg) center top / cover no-repeat;
    margin-bottom: 2.6em;
  }

  body#recruit-consultant #key-content {
    background: url(../img/recruit/key_consultant.jpg) left 30% top / cover no-repeat;
    margin-bottom: 2.6em;
    /* 業務委託OK訴求用の追加スタイル */
    overflow: visible;
    /*margin-bottom: 9em;*/
  }

  body#recruit-confirmation #key-content {
    background: url(../img/recruit/key_confirmation.jpg) left 30% top / cover no-repeat;
    margin-bottom: 2.6em;
  }

  .ttl-content-job {
    font-family: "游ゴシック", "Yu Gothic", YuGothic, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
    font-weight: bold;
    font-size: 2.5em;
    line-height: 1.2;
    color: #fff;
    letter-spacing: .1em;
    text-align: center;
    text-shadow: 0 0 11px rgba(0, 0, 0, 0.4);
  }

  .recruit-condition-lead {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    width: 88%;
    margin: 0 auto;
  }

  .recruit-condition-lead li {
    background: #d9f6ff;
    font-size: 1em;
    color: #114ec8;
    margin: 0 .5em .6em 0;
    padding: .25em .5em;
  }

  .recruit-job-lead .inner p.txt-welcome {
    font-size: 1.3em;
    margin: 2em 0;
  }

  .recruit-job-lead p.txt-welcome br {
    display: none;
  }

  #recruit-view {
    width: 88%;
    margin: 0 auto;
  }

  #recruit-view .pct {
    text-align: center;
  }

  #recruit-view .pct img {
    width: 100%;
  }

  .recruit-view-office {
    margin: 0 0 2em;
  }

  .recruit-view-office h2 {
    font-size: 2.4em;
    font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    line-height: 1.4;
    text-align: center;
  }

  .recruit-view-office h3 {
    color: #e97c1d;
    text-align: center;
  }

  .recruit-view-office .lead {
    margin: 0 0 2.7em;
  }

  .recruit-view-office .lead p {
    font-size: 1.2em;
    margin: 0 0 .9em;
  }

  .recruit-view-office .lead .en {
    text-align: center;
    font-family: 'Marck Script', cursive;
    font-size: 1.4em;
    line-height: 1.4;
    margin: 0 0 1em;
  }

  .recruit-view-office h2 span,
  .recruit-view-office .en {
    color: #e97c1d;
  }

  .recruit-view-block {
    margin: 0 0 2.7em;
  }

  .recruit-view-block h3 {
    font-size: 1.7em;
    letter-spacing: .1em;
    font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    line-height: 1.5;
    margin-bottom: .4em;
  }

  .recruit-view-block .exp {
    font-size: 1.2em;
    margin: 0 0 .9em;
  }

  #recruit-view .recruit-view-location .pct img {
    width: 80%;
  }

  .recruit-view-breakroom {
    background: url(../img/recruit/bg_breakroomview.png) right top / 70% auto no-repeat;
  }

  .recruit-view-work h2 {
    font-size: 2.4em;
    font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    line-height: 1.4;
    text-align: center;
  }

  .recruit-view-work h3 {
    color: #218b91;
  }

  .recruit-view-work .lead {
    background: url(../img/recruit/bg_workview.png) left 0 top 8em / 70% auto no-repeat;
    margin: 0 0 2.7em;
  }

  .recruit-view-work .lead p {
    font-size: 1.2em;
    margin: 0 0 18px;
  }

  .recruit-view-work .lead li {
    font-size: 1.2em;
    list-style: disc inside;
  }

  .recruit-view-work .lead .txt {}

  .recruit-view-work .lead .en {
    text-align: center;
    font-family: 'Marck Script', cursive;
    font-size: 1.4em;
    line-height: 1.4;
    margin: 0 0 1em;
  }

  .recruit-view-work h2 span,
  .recruit-view-work .en {
    color: #3fb4bb;
  }

  .recruit-view-alpha {
    margin-bottom: 0;
  }

  .recruit-view-alpha .txt h3 {
    text-align: center;
  }

  .recruit-view-alpha .txt p {
    text-align: center;
    font-size: 1.35em;
  }

  .txt-recruit-skillup {
    margin: 0 auto;
    padding: 2.3em 1.2em 2.6em;
    background: url(../img/recruit/bg_skillup.png) top center / 104% auto no-repeat;
  }

  .txt-recruit-skillup h3 {
    color: #218b91;
    font-size: 1.7em;
    letter-spacing: .1em;
    font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    line-height: 1.5;
    text-align: center;
    margin-bottom: .4em;
  }

  .txt-recruit-skillup p {
    font-size: 1.2em;
    display: inline;
  }

  .txt-recruit-skillup br {
    display: none;
  }

  .recruit-environment {
    background: url(../img/recruit/bg_environment.png) repeat;
  }

  .recruit-environment br {
    display: none;
  }

  .recruit-environment .inner {
    width: 88%;
    margin: 0 auto;
    padding: 3.6em 0 2em;
  }

  .recruit-environment h2 {
    text-align: center;
    font-size: 1.9em;
    line-height: 1.5;
    letter-spacing: .1em;
    font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    margin: 0 0 .6em;
  }

  .recruit-environment h2 span {
    color: #ee2c3c;
  }

  .recruit-environment-01 h3 {
    background: url(../img/recruit/bg_environment_01.png) left center / 80px auto no-repeat;
    padding: .4em 0 .4em 90px;
  }

  .recruit-environment-block {
    margin: 0 0 3em;
  }

  .recruit-environment-block h3 {
    min-height: 5.2em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .recruit-environment-block h3 span {
    font-size: 1.3em;
    line-height: 1.6;
  }

  .recruit-environment-block .exp {
    font-size: 1.2em;
    margin: .5em 0 1.2em;
  }

  .recruit-environment-block .pct {
    text-align: center;
  }

  .recruit-environment-block .pct img {
    width: 82%;
    border: 9px solid #fff;
    box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.2);
  }

  .recruit-environment-01 {
    margin: 0 0 30px;
  }

  .recruit-environment-01 .txt {
    margin: 0 0 1em;
  }

  .recruit-environment-01 .pct img:nth-child(1) {
    transform: rotate(-5deg);
    -moz-transform: rotate(-5deg);
    -webkit-transform: rotate(-5deg);
    margin-left: 4%;
  }

  .recruit-environment-01 .pct img:nth-child(2) {
    transform: rotate(5deg);
    -moz-transform: rotate(5deg);
    -webkit-transform: rotate(5deg);
    margin-right: 4%;
  }

  .recruit-environment-02 {
    margin: 0 0 2em;
  }

  .recruit-environment-02 h3 {
    background: url(../img/recruit/bg_environment_02.png) left center / 80px auto no-repeat;
    padding: .4em 0 .4em 90px;
  }

  .recruit-environment-02 .pct {
    margin-top: -.4em;
  }

  .recruit-environment-02 .pct img {
    width: 72%;
    transform: rotate(5deg);
    -moz-transform: rotate(5deg);
    -webkit-transform: rotate(5deg);
  }

  .recruit-environment-03 h3 {
    background: url(../img/recruit/bg_environment_03.png) left center / 80px auto no-repeat;
    padding: .4em 0 .4em 90px;
  }

  .recruit-environment-03 .pct img:nth-child(1) {
    transform: rotate(-5deg);
    -moz-transform: rotate(-5deg);
    -webkit-transform: rotate(-5deg);
    position: relative;
    left: -1em;
    z-index: 20;
  }

  .recruit-environment-03 .pct img:nth-child(2) {
    margin-top: -4em;
    position: relative;
    left: 1em;
    transform: rotate(6deg);
    -moz-transform: rotate(6deg);
    -webkit-transform: rotate(6deg);
  }

  .recruit-environment-04 h3 {
    background: url(../img/recruit/bg_environment_04.png) left center / 80px auto no-repeat;
    padding: .4em 0 .4em 90px;
  }

  .recruit-environment-04 .pct img {
    transform: rotate(5deg);
    -moz-transform: rotate(5deg);
    -webkit-transform: rotate(5deg);
  }

  .recruit-environment-05 h3 {
    background: url(../img/recruit/bg_environment_05.png) left center / 80px auto no-repeat;
    padding: .4em 0 .4em 90px;
  }

  .recruit-environment-05 .pct img {
    transform: rotate(-5deg);
    -moz-transform: rotate(-5deg);
    -webkit-transform: rotate(-5deg);
  }

  .recruit-message {
    background: url(../img/recruit/bg_message.jpg) center center / auto 100% no-repeat;
    margin: 0 0 3em;
  }

  .recruit-message .inner {
    padding: 4em 1.6em 2em;
  }

  .recruit-message p {
    color: #fff;
    font-size: 1.3em;
    line-height: 2;
    font-weight: bold;
    letter-spacing: .05em;
    margin: 0 0 1.4em;
  }

  .recruit-message p br {
    display: none;
  }

  #recruit-guide {
    width: 88%;
    margin: 0 auto 2em;
  }

  #recruit-guide h2 {
    font-size: 1.8em;
    letter-spacing: .2em;
    text-align: center;
    margin: 0 0 .6em;
  }

  #recruit-guide h2 span {
    font-size: .7em;
    font-weight: 500;
    display: block;
    line-height: 1.4;
  }

  .recruit-condition {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    margin: 0 0 .8em;
  }

  .recruit-condition li {
    background: #d9f6ff;
    font-size: 1em;
    color: #114ec8;
    margin: 0 .5em .6em 0;
    padding: .25em .5em;
  }

  .tbl-recruit-guide {
    border-top: 1px solid #0088e9;
    font-size: 1.2em;
    margin-bottom: 3em;
  }

  .tbl-recruit-guide th {
    display: block;
    color: #787878;
    font-weight: bold;
    padding: 1em 0 .2em;
  }

  .tbl-recruit-guide th br {
    display: none;
  }

  .tbl-recruit-guide td {
    display: block;
    border-bottom: 1px solid #0088e9;
    vertical-align: middle;
    padding: 0 0 1em;
  }

  .tbl-recruit-guide ul li:before {
    content: "・";
  }

  .tbl-recruit-guide td ol {
    padding-left: 1.5em;
  }

  .tbl-recruit-guide td strong {
    display: block;
    margin-top: .8em;
  }

  .tbl-recruit-guide .btn-map {
    font-size: .8em;
    text-decoration: none;
    color: #000;
    background: #f5f5f5 url(../img/parts/ico_arrow.png) right 10% center no-repeat;
    display: inline-block;
    margin: 0 0 0 1em;
    padding: .35em 2em .35em .9em;
  }

  .tbl-recruit-guide td p {
    margin-bottom: 0.8em;
  }

  .tbl-recruit-place dl {
    clear: both;
  }

  .tbl-recruit-place dl:first-child {
    margin-bottom: 8px;
  }

  .tbl-recruit-place dt {
    float: left;
    width: 5em;
  }

  .recruit-contact {
    padding: 0 0 1em;
    background: #87dffb;
    background: -webkit-linear-gradient(285deg, #87dffb 0%, #e8faf8 27%);
    background: linear-gradient(165deg, #87dffb 0%, #e8faf8 27%);
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#87dffb', endColorstr='#e8faf8', GradientType=1);
  }

  .recruit-contact h2 {
    color: #0651ca;
    font-size: 1.7em;
    text-align: center;
    margin: 0 0 .5em;
  }

  .recruit-contact p {
    font-size: 1.2em;
    margin: 0 0 .6em;
  }

  .txt-recruit-moreinfo {
    width: 90%;
    margin: 0 auto;
    position: relative;
    top: -1.9em;
    background: url(../img/recruit/recruit_moreinfo.png) right bottom / auto 30px no-repeat;
    padding-bottom: 30px;
  }

  .txt-recruit-moreinfo p {
    font-size: 1.2em;
    line-height: 1.6;
    background: #fff764;
    padding: 1.2em 1.4em;
    text-align: center;
    margin: 0 auto;
  }

  .txt-recruit-moreinfo p br {
    display: none;
  }

  .recruit-entry {
    width: 88%;
    text-align: center;
    margin: -18px auto 0;
  }

  .recruit-entry p {
    text-align: left;
    margin-bottom: .3em;
  }

  .recruit-entry p.btn-contact {
    text-align: center;
  }

  .recruit-entry p br {
    display: none;
  }

  .recruit-entry .tel {
    text-align: center;
    font-family: 'Oswald', sans-serif;
    font-size: 2.6em;
    letter-spacing: .05em;
    line-height: 1.2;
  }

  .recruit-entry .person {
    text-align: center;
    margin-bottom: 1.8em;
  }

  .recruit-entry .btn-contact a {
    font-size: 1.1em;
    line-height: 1.5;
    text-decoration: none;
    color: #000;
    display: inline-block;
    background: url(../img/parts/ico_arrow.png) right 5% center no-repeat;
    white-space: nowrap;
    border: 2px solid #000;
    margin: .5em 0 .4em;
    padding: .65em 3em .65em 1.9em;
  }
  
  .recruit-entry .note {
    text-align: center;
    font-size: 1em;
    margin-bottom: 3em;
  }

  .recruit-entry .btn-contact br.sp {
    display: block;
  }

  .recruit-selection {
    width: 90%;
    margin: 0 auto;
  }

  .recruit-selection .chart dl {
    margin-bottom: 1.2em;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }

  .recruit-selection .chart dl dt {
    width: 20%;
    color: #fff;
    font-size: 5em;
    line-height: 1;
    font-family: Avenir, "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, sans-serif;
    font-weight: bold;
  }

  .recruit-selection .chart dl dd {
    width: 78%;
  }

  .recruit-selection .chart dl dd h3 {
    color: #7b9a97;
    font-size: 1.5em;
    margin-bottom: .2em;
  }

  /* 一般事務 契約社員 */
  body#recruit-office-contract .recruit-environment-03 h3 {
    background: url(../img/recruit/bg_environment_02.png) left center / 80px auto no-repeat;
  }

  body#recruit-office-contract .recruit-environment-04 h3 {
    background: url(../img/recruit/bg_environment_03.png) left center / 80px auto no-repeat;
  }

  .tbl-recruit-guide td .ttl-license {
    margin: 0.8em 0 0.2em;
  }
}


/* =================================================================
	entry --common style for articles
================================================================= */

.entry-txt p {
  font-size: 1.2em;
  line-height: 2;
  margin: 0 0 40px;
}

.entry-title {
  font-size: 2em;
  line-height: 1.6;
  margin: 0 0 14px;
  padding: 18px 0;
  background-image: url("../img/parts/line_green.png"), url("../img/parts/line_green.png");
  background-repeat: no-repeat, no-repeat;
  background-position: left top, left bottom;
}

.entry-header .column-category {
  font-size: 1em;
  margin: 0 0 28px;
  padding: 2px 6px;
}

.entry-txt {
  margin: 0 0 66px;
}

.entry-pagenavi {
  text-align: center;
  font-size: 1.2em;
}

.entry-pagenavi a {
  text-decoration: none;
  padding: 6px 18px;
  background: #e4f5df;
  display: inline-block;
}

.archive-ttl {
  font-size: 1.3em;
  line-height: 1.6;
  margin: 0 0 28px;
  padding: 18px 0;
  background-image: url("../img/parts/line_green.png"), url("../img/parts/line_green.png");
  background-repeat: no-repeat, no-repeat;
  background-position: left top, left bottom;
}


/*  Alignments */

.alignleft {
  display: inline;
  float: left;
  margin-right: 2.1em;
}

.alignright {
  display: inline;
  float: right;
  margin-left: 2.1em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

img.alignleft,
img.alignright,
img.aligncenter {
  margin-bottom: 40px;
}


/* =================================================================
	column
================================================================= */

#column-list li {
  width: 230px;
  float: left;
  margin: 0 30px 40px 0;
}

#column-list li:nth-child(3n) {
  margin-right: 0;
}

#column-list li a {
  text-decoration: none;
}

#column-list li img {
  width: 100%;
  height: auto;
  display: block;
  margin: 0 0 8px;
}

#column-list li a img:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
}

.column-category {
  display: inline-block;
  background: #5aac47;
  color: #fff;
  font-size: .85em;
  margin: 0 0 4px;
  padding: 1px 4px;
}

.column-ttl {
  font-size: 1.1em;
  line-height: 1.6;
}

.side-nav {
  margin: 0 0 50px;
  position: relative;
}

.side-nav .btn-toall {
  position: absolute;
  right: 0;
  top: .2em;
  font-size: .9em;
  padding: 1px 9px;
  background: #e7f0db;
  text-decoration: none;
  /* border-radius */
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
}

.side-nav dt {
  color: #6f4e39;
  margin: 7px 0 0;
}

.side-nav dd {
  margin: 0 0 14px;
}

.side-nav h3 {
  font-size: 1.2em;
  color: #5aac47;
  border-bottom: 1px dashed #999;
  margin: 0 0 4px;
  padding: 0 0 11px;
}

.side-nav li {
  font-size: 1.15em;
  border-bottom: 1px dashed #999;
  margin: 0;
}

.side-nav li a {
  display: block;
  padding: 8px 0 10px;
  text-decoration: none;
}

.side-nav li a:before {
  color: #e86f25;
  margin-right: 5px;
  font-family: "FontAwesome";
  content: "\f138";
  font-size: 14px;
  position: relative;
  display: inline-block;
}

.side-banner li {
  margin: 0 0 18px;
}

.side-banner li a img:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
}

.entry-column-txt img {
  max-width: 750px;
  height: auto;
}

.columnist-wrap {
  border: solid 6px #cceec4;
  background: url(../img/column/bg_columnist.png) left top repeat;
  margin: 0 0 52px;
  padding: 22px 26px;
}

.columnist-wrap h2 {
  font-size: 1.2em;
  font-weight: normal;
  color: #458064;
  background: url("../img/parts/line_green.png") left bottom no-repeat;
  margin: 0 0 20px;
  padding: 0 0 10px;
}

.columnist-wrap .columnist-pct {
  width: 150px;
  float: left;
}

.columnist-wrap .columnist-data {
  width: 506px;
  float: right;
}

.columnist-wrap .columnist-data .name {
  font-size: 1.4em;
  font-weight: bold;
  margin: 0 0 3px;
}


/* =================================================================
	company
================================================================= */

table.tbl-data {
  width: 100%;
}

table.tbl-data th {
  padding: 28px 14px 14px 0;
  width: 190px;
  white-space: nowrap;
  font-weight: normal;
  border-bottom: solid 1px #e3d9c3;
}

table.tbl-data td {
  padding: 28px 6px 14px 0;
  border-bottom: solid 1px #e3d9c3;
}

.company-vision .pct {
  margin: 0 0 12px;
}

#googlemap {
  width: 100%;
  height: 400px;
  border: 1px solid #5aac47;
  margin: 0 0 16px;
}


/* =================================================================
	contact
================================================================= */

.btn-form-contact-wrap {
  text-align: center;
  margin: 48px 0 80px;
}

.btn-form-contact-wrap .note {
  font-size: 1.2em;
}

.btn-form-contact {
  display: inline-block;
  text-decoration: none;
  color: #000;
  font-size: 1.4em;
  line-height: 1.4;
  padding: 14px 64px;
  background: transparent url(../img/parts/ico_arrow.png) right 10% center no-repeat;
  border: 2px solid #000;
  transition: all 0.2s;
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  margin-bottom: 16px;
}

.btn-form-contact:hover {
  color: #fff;
  background: #000 url(../img/parts/ico_arrow_wh.png) right 10% center no-repeat;
  transition: all 0.4s;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
}

/* contact for pc */

@media screen and (min-width: 768px) {
  body.contact #key-content {
    background: url(../img/contact/key.jpg) center top / cover no-repeat;
  }

  .lead-contact {
    width: 1000px;
    margin: 90px auto 0;
  }

  .lead-contact p {
    font-size: 1.3em;
    line-height: 1.9;
    margin: 0 0 24px;
  }

  .list-contact-kind {
    font-size: 1.3em;
    line-height: 1.9;
    margin-bottom: 16px;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }

  .list-contact-kind li {
    list-style: disc outside;
    margin: 0 36px 4px 1em;
    padding: 0;
  }

  .tbl-mailform {
    width: 1000px;
    margin: 0 auto 48px;
  }

  .tbl-mailform th {
    width: 25%;
    font-size: 1.3em;
    border-bottom: 1px solid #ddd;
    vertical-align: middle;
    padding: 44px 0;
  }

  .tbl-mailform th.must {
    background: url(../img/contact/ico_must.png) right 18px center no-repeat;
  }

  .tbl-mailform td {
    width: 74%;
    font-size: 1.3em;
    border-bottom: 1px solid #ddd;
    padding: 38px 0;
  }

  .tbl-mailform input,
  .tbl-mailform textarea {
    background: #f2f2f2;
    border: 1px solid #d4d4d4;
    padding: 3px 4px;
  }

  .input-txt-s {
    width: 140px;
  }

  .input-txt-m {
    width: 400px;
  }

  .input-txt-l {
    width: 600px;
  }

  .tbl-mailform .note {
    margin: 0 0 0 14px;
  }

  p.error {
    color: #c00;
    margin: 0 0 4px;
  }

  .contact-privacy {
    width: 1000px;
    height: 360px;
    margin: 0 auto 60px;
    padding: 30px;
    overflow-x: hidden;
    border: 1px solid #ccc;
  }

  .contact-privacy h3 {
    text-align: center;
    font-size: 1.4em;
    margin: 0 0 18px;
  }

  .contact-privacy p {
    font-size: 1em;
    line-height: 1.9;
  }

  .contact-privacy dl {
    font-size: 1em;
    line-height: 1.9;
  }

  .contact-privacy dd {
    margin: 0 0 26px;
  }

  .submit-area {
    width: 1000px;
    text-align: center;
    position: relative;
    margin: 0 auto 80px;
  }

  .submit-area input {
    font-size: 1.7em;
    padding: 14px 72px 18px;
    background-color: #000;
    color: #fff;
    font-weight: bold;
    cursor: pointer;
    text-align: center;
    border: none;
    -webkit-transition: 0.2s;
    transition: 0.2s;
  }

  .submit-area input:hover {
    background-color: #444;
    -webkit-transition: 0.4s;
    transition: 0.4s;
  }

  .submit-area .back {
    position: absolute;
    left: 0;
    top: 35%;
    font-size: 1.2em;
  }

  .contact-finished {
    width: 600px;
    margin: 0 auto;
    padding: 60px 0;
  }

  .contact-finished h3 {
    text-align: center;
    font-size: 1.4em;
    margin: 0 0 22px;
  }

  .contact-finished p {
    font-size: 1.3em;
    margin: 0 0 22px;
  }

  .contact-finished p:nth-last-of-type(1) {
    margin-bottom: 60px;
  }

  .contact-finished .btn-tohome {
    text-align: center;
  }

  .contact-finished .btn-tohome a {
    font-size: 1.3em;
    border: 2px solid #000;
    text-decoration: none;
    background: url(../img/parts/ico_arrow_preview.png) left 8% center no-repeat;
    color: #000;
    padding: .9em 1.9em .7em 2.4em;
  }
}


/* contact for mobile */

@media screen and (max-width: 767px) {
  body.contact #key-content {
    background: url(../img/contact/key.jpg) center top / cover no-repeat;
  }

  .btn-form-contact-wrap {
    margin: 48px 15px 80px;
    margin-bottom: 40px; /*コンテンツ削除による追加調整*/
  }

  .btn-form-contact-wrap .note {
    font-size: 1.1em;
  }

  .btn-form-contact {
    width: 85%;
    font-size: 1.25em;
    padding: 14px;
    background-position: right 5% center;
  }

  .lead-contact {
    width: 88%;
    margin: 3em auto 0;
  }

  .lead-contact p {
    font-size: 1.2em;
    margin: 0 0 1.3em;
  }

  .lead-contact br {
    display: none;
  }

  .list-contact-kind {
    font-size: 1.2em;
    margin-bottom: .8em;
  }

  .list-contact-kind li {
    list-style: disc outside;
    margin: 0 0 .3em 1em;
    padding: 0;
  }

  .tbl-mailform {
    width: 88%;
    margin: 0 auto 48px;
  }

  .tbl-mailform th {
    display: block;
    font-size: 1.3em;
    padding: 1em 0 .3em;
  }

  .tbl-mailform th.must {
    background: url(../img/contact/ico_must.png) right center no-repeat;
  }

  .tbl-mailform td {
    display: block;
    font-size: 1.3em;
    border-bottom: 1px solid #ddd;
    padding: 0 0 1em;
  }

  .tbl-mailform input,
  .tbl-mailform textarea {
    background: #f2f2f2;
    border: 1px solid #d4d4d4;
    padding: 1px 2px;
  }

  .input-txt-s {
    width: 8em;
  }

  .input-txt-m {
    width: 100%;
  }

  .input-txt-l {
    width: 100%;
  }

  .tbl-mailform .note {
    display: block;
    font-size: .85em;
    margin: .3em 0 0;
  }

  p.error {
    color: #c00;
    margin: 0 0 .3em;
  }

  .contact-privacy {
    width: 88%;
    height: 16em;
    margin: 0 auto 3.6em;
    padding: 1.4em .9em .6em;
    overflow-x: hidden;
    border: 1px solid #ccc;
  }

  .contact-privacy h3 {
    text-align: center;
    font-size: 1.3em;
    margin: 0 0 .8em;
  }

  .contact-privacy p {
    font-size: 1.15em;
    line-height: 1.8;
  }

  .contact-privacy dl {
    font-size: 1.15em;
    line-height: 1.8;
  }

  .contact-privacy dd {
    margin: 0 0 1.2em;
  }

  .submit-area {
    margin-bottom: 2em;
    text-align: center;
  }

  .submit-area input {
    width: 70%;
    font-size: 1.4em;
    background-color: #000;
    color: #fff;
    font-weight: bold;
    cursor: pointer;
    text-align: center;
    border: none;
    margin: 0 auto 2em;
    padding: .9em 0;
  }

  .submit-area .back {
    width: 52%;
    font-size: 1.1em;
    text-decoration: none;
    color: #666;
    border: 1px solid #666;
    padding: .5em;
    display: block;
    margin: 0 auto 1.8em;
  }

  .contact-finished {
    width: 80%;
    margin: 0 auto;
    padding: 2.5em 0 4em;
  }

  .contact-finished h3 {
    text-align: center;
    font-size: 1.4em;
    margin: 0 0 1em;
  }

  .contact-finished p {
    font-size: 1.25em;
    margin: 0 0 1.1em;
  }

  .contact-finished p:nth-last-of-type(1) {
    margin-bottom: 2.5em;
  }

  .contact-finished .btn-tohome {
    text-align: center;
  }

  .contact-finished .btn-tohome a {
    font-size: 1.3em;
    border: 2px solid #000;
    text-decoration: none;
    background: url(../img/parts/ico_arrow_preview.png) left 8% center no-repeat;
    color: #000;
    padding: .9em 1.9em .7em 2.4em;
  }
}


/* =================================================================
	404 notfound
================================================================= */

.notfound #key-content {
  padding: 22% 0 0;
}

.notfound-wrap {
  margin-bottom: 22vh;
}

.notfound-wrap::before {
  content: "404";
  width: 100%;
  position: absolute;
  left: 0;
  top: -6%;
  text-align: center;
  font-family: 'Oswald', sans-serif;
  font-size: 26vw;
  line-height: 1;
  color: #f2f2f2;
  z-index: -1;
}

.notfound-wrap p {
  font-size: 1.4em;
  text-align: center;
}

/* for mobile */
@media screen and (max-width: 767px) {

  .notfound-wrap {
    width: 90%;
    margin: 0 auto;
    padding: 18vh 0 14vh;
    position: relative;
  }

  .notfound-wrap::before {
    top: 37%;
    font-size: 52vw;
  }



}
