
@import url("https://fonts.googleapis.com/css?family=Roboto:300,700");

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

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

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

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

html, body {
  font-family: 'Roboto', 'ゴシックMB101 L', sans-serif;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  font-weight: 300; }

a {
  color: inherit; }

@media screen and (max-width: 767px) {
  html, body {
    min-width: auto;
    min-width: initial; } }

.text_bold, .text_heading, .index__news h2, .index__contents__title, .company__section__head, .manufacturing__section__head, .definition__term, .index__news__list__date, .company__section__body__deflsit > dt, .header__hero__lead h2, .header__navigation__main li a, .header__navigation__sub__en, .footer__main__subnav__en, .footer__main__nav__head span, .footer__sidelink ul li a span, .footer__baselink__label span, .haeder--index .header__hero__lead p, .haeder--index .header__skewnav ul li a span, .index__contents__link span, .index__base__label span, .company__section__body__philoutline p strong, .company__section__body__heading, .manufacturing__flow__fig__link, .manufacturing__flow__fig__link--plan, .manufacturing__flow__fig__link--design, .manufacturing__flow__fig__link--prototype, .manufacturing__flow__fig__link--mould, .manufacturing__flow__fig__link--press, .manufacturing__flow__fig__link--assemble, .manufacturing__flow__fig__link--plastic, .manufacturing__flow__fig__link--process, .manufacturing__flow__fig__link--warranty, .manufacturing__section__content h4 span, .products__map__link, .products__map__link--1, .products__map__link--2, .products__map__link--3, .products__map__link--4, .products__map__link--5, .products__map__link--6, .products__contents h4 span, .recruitment__contents h4 span, .recruitment__linkblock, .basement__contents h4 span, .basement__block__address strong, .basement__block__address__link, .overseas__outline h3, .others__body h3 span, .others__contact__terms strong, .others__contact__maillinkblock {
  font-family: 'Roboto', 'ゴシックMB101 M', sans-serif;
  font-weight: 700; }

.text_heading, .index__news h2, .index__contents__title, .company__section__head, .manufacturing__section__head {
  font-size: 48px;
  color: #00a0e9;
  text-align: center; }
  .text_heading span, .index__news h2 span, .index__contents__title span, .company__section__head span, .manufacturing__section__head span {
    display: block;
    font-size: 18px;
    color: #000;
    text-align: center;
    margin-top: 2px; }

@-webkit-keyframes DASH {
  0% {
    stroke-dashoffset: 3000; }
  50% {
    stroke-dashoffset: 2000; }
  70% {
    stroke-dashoffset: 1000; }
  100% {
    stroke-dashoffset: 0; } }

@keyframes DASH {
  0% {
    stroke-dashoffset: 3000; }
  50% {
    stroke-dashoffset: 2000; }
  70% {
    stroke-dashoffset: 1000; }
  100% {
    stroke-dashoffset: 0; } }

body:not(.msie) svg path:nth-of-type(1) {
  -webkit-animation-delay: 0.15s !important;
          animation-delay: 0.15s !important; }

body:not(.msie) svg path:nth-of-type(2) {
  -webkit-animation-delay: 0.3s !important;
          animation-delay: 0.3s !important; }

body:not(.msie) svg path:nth-of-type(3) {
  -webkit-animation-delay: 0.45s !important;
          animation-delay: 0.45s !important; }

body:not(.msie) svg path:nth-of-type(4) {
  -webkit-animation-delay: 0.6s !important;
          animation-delay: 0.6s !important; }

body:not(.msie) svg path:nth-of-type(5) {
  -webkit-animation-delay: 0.75s !important;
          animation-delay: 0.75s !important; }

body:not(.msie) svg path:nth-of-type(6) {
  -webkit-animation-delay: 0.9s !important;
          animation-delay: 0.9s !important; }

body:not(.msie) svg path:nth-of-type(7) {
  -webkit-animation-delay: 1.05s !important;
          animation-delay: 1.05s !important; }

body:not(.msie) svg path:nth-of-type(8) {
  -webkit-animation-delay: 1.2s !important;
          animation-delay: 1.2s !important; }

body:not(.msie) svg path:nth-of-type(9) {
  -webkit-animation-delay: 1.35s !important;
          animation-delay: 1.35s !important; }

body:not(.msie) svg path:nth-of-type(10) {
  -webkit-animation-delay: 1.5s !important;
          animation-delay: 1.5s !important; }

body:not(.msie) svg path:nth-of-type(11) {
  -webkit-animation-delay: 1.65s !important;
          animation-delay: 1.65s !important; }

body:not(.msie) svg path:nth-of-type(12) {
  -webkit-animation-delay: 1.8s !important;
          animation-delay: 1.8s !important; }

body:not(.msie) svg path:nth-of-type(13) {
  -webkit-animation-delay: 1.95s !important;
          animation-delay: 1.95s !important; }

body:not(.msie) svg path:nth-of-type(14) {
  -webkit-animation-delay: 2.1s !important;
          animation-delay: 2.1s !important; }

body:not(.msie) svg path:nth-of-type(15) {
  -webkit-animation-delay: 2.25s !important;
          animation-delay: 2.25s !important; }

body:not(.msie) svg path:nth-of-type(16) {
  -webkit-animation-delay: 2.4s !important;
          animation-delay: 2.4s !important; }

body:not(.msie) svg path:nth-of-type(17) {
  -webkit-animation-delay: 2.55s !important;
          animation-delay: 2.55s !important; }

body:not(.msie) svg path:nth-of-type(18) {
  -webkit-animation-delay: 2.7s !important;
          animation-delay: 2.7s !important; }

body:not(.msie) svg path:nth-of-type(19) {
  -webkit-animation-delay: 2.85s !important;
          animation-delay: 2.85s !important; }

body:not(.msie) svg path:nth-of-type(20) {
  -webkit-animation-delay: 3s !important;
          animation-delay: 3s !important; }

body:not(.msie) svg path:nth-of-type(21) {
  -webkit-animation-delay: 3.15s !important;
          animation-delay: 3.15s !important; }

body:not(.msie) svg path:nth-of-type(22) {
  -webkit-animation-delay: 3.3s !important;
          animation-delay: 3.3s !important; }

body:not(.msie) svg path:nth-of-type(23) {
  -webkit-animation-delay: 3.45s !important;
          animation-delay: 3.45s !important; }

body:not(.msie) svg path:nth-of-type(24) {
  -webkit-animation-delay: 3.6s !important;
          animation-delay: 3.6s !important; }

body:not(.msie) svg path:nth-of-type(25) {
  -webkit-animation-delay: 3.75s !important;
          animation-delay: 3.75s !important; }

body:not(.msie) svg path:nth-of-type(26) {
  -webkit-animation-delay: 3.9s !important;
          animation-delay: 3.9s !important; }

body:not(.msie) svg path:nth-of-type(27) {
  -webkit-animation-delay: 4.05s !important;
          animation-delay: 4.05s !important; }

body:not(.msie) svg path:nth-of-type(28) {
  -webkit-animation-delay: 4.2s !important;
          animation-delay: 4.2s !important; }

body:not(.msie) svg path:nth-of-type(29) {
  -webkit-animation-delay: 4.35s !important;
          animation-delay: 4.35s !important; }

body:not(.msie) svg path:nth-of-type(30) {
  -webkit-animation-delay: 4.5s !important;
          animation-delay: 4.5s !important; }

body:not(.msie) svg path:nth-of-type(31) {
  -webkit-animation-delay: 4.65s !important;
          animation-delay: 4.65s !important; }

body:not(.msie) svg path:nth-of-type(32) {
  -webkit-animation-delay: 4.8s !important;
          animation-delay: 4.8s !important; }

body:not(.msie) svg path:nth-of-type(33) {
  -webkit-animation-delay: 4.95s !important;
          animation-delay: 4.95s !important; }

body:not(.msie) svg path:nth-of-type(34) {
  -webkit-animation-delay: 5.1s !important;
          animation-delay: 5.1s !important; }

body:not(.msie) svg path:nth-of-type(35) {
  -webkit-animation-delay: 5.25s !important;
          animation-delay: 5.25s !important; }

body:not(.msie) svg path:nth-of-type(36) {
  -webkit-animation-delay: 5.4s !important;
          animation-delay: 5.4s !important; }

body:not(.msie) svg path:nth-of-type(37) {
  -webkit-animation-delay: 5.55s !important;
          animation-delay: 5.55s !important; }

body:not(.msie) svg path:nth-of-type(38) {
  -webkit-animation-delay: 5.7s !important;
          animation-delay: 5.7s !important; }

body:not(.msie) svg path:nth-of-type(39) {
  -webkit-animation-delay: 5.85s !important;
          animation-delay: 5.85s !important; }

body:not(.msie) svg path:nth-of-type(40) {
  -webkit-animation-delay: 6s !important;
          animation-delay: 6s !important; }

body:not(.msie) svg.dashwait path {
  stroke-dasharray: 3000;
  stroke-dashoffset: 3000; }

body:not(.msie) svg.dashwait.dashin path {
  -webkit-animation: DASH 3s ease-in 0s forwards;
          animation: DASH 3s ease-in 0s forwards; }

@media screen and (max-width: 767px) {
  .text_heading, .index__news h2, .index__contents__title, .company__section__head, .manufacturing__section__head {
    font-size: 34px; }
    .text_heading span, .index__news h2 span, .index__contents__title span, .company__section__head span, .manufacturing__section__head span {
      font-size: 14px; } }

.definition, .index__news__list, .company__section__body__deflsit {
  position: relative;
  height: auto;
  border-top: 1px solid #e5e5e5; }

.definition__term, .index__news__list__date, .company__section__body__deflsit > dt {
  display: block;
  position: absolute;
  left: 0px;
  padding: 21px 14px 21px 14px;
  font-size: 14px;
  color: #00a0e9;
  line-height: 34px;
  z-index: 1; }

.definition__description, .index__news__list__title, .company__section__body__deflsit > dd {
  display: block;
  position: relative;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  padding: 21px 15px 21px 178px;
  border-bottom: 1px solid #e5e5e5;
  font-size: 14px;
  color: #000;
  line-height: 34px;
  z-index: 0; }
  .definition__description:before, .index__news__list__title:before, .company__section__body__deflsit > dd:before {
    content: "";
    display: block;
    width: 140px;
    height: 100%;
    position: absolute;
    left: 0px;
    top: 0px;
    background-color: #f8f8f8; }

@media screen and (max-width: 767px) {
  .definition__term, .index__news__list__date, .company__section__body__deflsit > dt {
    line-height: 24px;
    padding: 16px 8px 16px 8px; }
  .definition__description, .index__news__list__title, .company__section__body__deflsit > dd {
    line-height: 24px;
    padding: 16px 8px 16px 100px; }
    .definition__description:before, .index__news__list__title:before, .company__section__body__deflsit > dd:before {
      width: 90px; } }

.eyecatch, .eyecatch--rev, .company__section:nth-of-type(even) .company__section__visual, .company__section--philosophy:nth-of-type(even) .company__section__visual, .company__section--overview:nth-of-type(even) .company__section__visual, .company__section--history:nth-of-type(even) .company__section__visual, .manufacturing__section:nth-of-type(even) .manufacturing__section__visual, .manufacturing__section--project:nth-of-type(even) .manufacturing__section__visual,
.manufacturing__section--production:nth-of-type(even) .manufacturing__section__visual,
.manufacturing__section--quality:nth-of-type(even) .manufacturing__section__visual, .company__section__visual, .manufacturing__section__visual {
  width: calc(100% - 60px);
  height: 360px;
  position: relative;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  overflow: hidden; }
  .eyecatch:after, .eyecatch--rev:after, .company__section:nth-of-type(even) .company__section__visual:after, .company__section--philosophy:nth-of-type(even) .company__section__visual:after, .company__section--overview:nth-of-type(even) .company__section__visual:after, .company__section--history:nth-of-type(even) .company__section__visual:after, .manufacturing__section:nth-of-type(even) .manufacturing__section__visual:after, .manufacturing__section--project:nth-of-type(even) .manufacturing__section__visual:after,
  .manufacturing__section--production:nth-of-type(even) .manufacturing__section__visual:after,
  .manufacturing__section--quality:nth-of-type(even) .manufacturing__section__visual:after, .company__section__visual:after, .manufacturing__section__visual:after {
    content: "";
    display: block;
    width: 100%;
    height: 0px;
    border-style: solid;
    border-width: 0 0 360px 112px;
    border-color: transparent transparent #FFF transparent;
    position: absolute;
    top: 0px;
    right: 0px;
    transition: width 0.75s cubic-bezier(0.19, 1, 0.22, 1); }
  .eyecatch.wipein:after, .wipein.eyecatch--rev:after, .wipein.company__section__visual:after, .wipein.manufacturing__section__visual:after {
    width: 0%; }

.eyecatch--rev, .company__section:nth-of-type(even) .company__section__visual, .company__section--philosophy:nth-of-type(even) .company__section__visual, .company__section--overview:nth-of-type(even) .company__section__visual, .company__section--history:nth-of-type(even) .company__section__visual, .manufacturing__section:nth-of-type(even) .manufacturing__section__visual, .manufacturing__section--project:nth-of-type(even) .manufacturing__section__visual,
.manufacturing__section--production:nth-of-type(even) .manufacturing__section__visual,
.manufacturing__section--quality:nth-of-type(even) .manufacturing__section__visual {
  margin-left: auto; }
  .eyecatch--rev:after, .company__section:nth-of-type(even) .company__section__visual:after, .company__section--philosophy:nth-of-type(even) .company__section__visual:after, .company__section--overview:nth-of-type(even) .company__section__visual:after, .company__section--history:nth-of-type(even) .company__section__visual:after, .manufacturing__section:nth-of-type(even) .manufacturing__section__visual:after, .manufacturing__section--project:nth-of-type(even) .manufacturing__section__visual:after,
  .manufacturing__section--production:nth-of-type(even) .manufacturing__section__visual:after,
  .manufacturing__section--quality:nth-of-type(even) .manufacturing__section__visual:after {
    right: auto;
    left: 0px;
    border-width: 360px 112px 0 0;
    border-color: #FFF transparent transparent transparent; }
  .eyecatch--rev.wipein:after, .company__section:nth-of-type(even) .wipein.company__section__visual:after, .company__section--philosophy:nth-of-type(even) .wipein.company__section__visual:after, .company__section--overview:nth-of-type(even) .wipein.company__section__visual:after, .company__section--history:nth-of-type(even) .wipein.company__section__visual:after, .manufacturing__section:nth-of-type(even) .wipein.manufacturing__section__visual:after, .manufacturing__section--project:nth-of-type(even) .wipein.manufacturing__section__visual:after,
  .manufacturing__section--production:nth-of-type(even) .wipein.manufacturing__section__visual:after,
  .manufacturing__section--quality:nth-of-type(even) .wipein.manufacturing__section__visual:after {
    width: 0%; }

@media screen and (max-width: 767px) {
  .eyecatch, .eyecatch--rev, .company__section:nth-of-type(even) .company__section__visual, .company__section--philosophy:nth-of-type(even) .company__section__visual, .company__section--overview:nth-of-type(even) .company__section__visual, .company__section--history:nth-of-type(even) .company__section__visual, .manufacturing__section:nth-of-type(even) .manufacturing__section__visual, .manufacturing__section--project:nth-of-type(even) .manufacturing__section__visual,
  .manufacturing__section--production:nth-of-type(even) .manufacturing__section__visual,
  .manufacturing__section--quality:nth-of-type(even) .manufacturing__section__visual, .company__section__visual, .manufacturing__section__visual {
    width: calc(100% - 16px);
    height: 120px; }
    .eyecatch:after, .eyecatch--rev:after, .company__section:nth-of-type(even) .company__section__visual:after, .company__section--philosophy:nth-of-type(even) .company__section__visual:after, .company__section--overview:nth-of-type(even) .company__section__visual:after, .company__section--history:nth-of-type(even) .company__section__visual:after, .manufacturing__section:nth-of-type(even) .manufacturing__section__visual:after, .manufacturing__section--project:nth-of-type(even) .manufacturing__section__visual:after,
    .manufacturing__section--production:nth-of-type(even) .manufacturing__section__visual:after,
    .manufacturing__section--quality:nth-of-type(even) .manufacturing__section__visual:after, .company__section__visual:after, .manufacturing__section__visual:after {
      border-width: 0 0 120px 38px; }
  .eyecatch--rev:after, .company__section:nth-of-type(even) .company__section__visual:after, .company__section--philosophy:nth-of-type(even) .company__section__visual:after, .company__section--overview:nth-of-type(even) .company__section__visual:after, .company__section--history:nth-of-type(even) .company__section__visual:after, .manufacturing__section:nth-of-type(even) .manufacturing__section__visual:after, .manufacturing__section--project:nth-of-type(even) .manufacturing__section__visual:after,
  .manufacturing__section--production:nth-of-type(even) .manufacturing__section__visual:after,
  .manufacturing__section--quality:nth-of-type(even) .manufacturing__section__visual:after {
    border-width: 120px 38px 0 0; } }

.header, .haeder--index {
  position: relative;
  width: 100%;
  height: 607px;
  overflow: hidden; }

.header__title {
  position: fixed;
  top: 0px;
  left: 0px;
  width: 306px;
  height: 110px;
  z-index: 51;
  background-image: url(images/logo_base.png);
  background-size: 377px 110px;
  background-position: right top; }
  .header__title a, .header__title span {
    display: block;
    width: 153px;
    height: 60px;
    position: absolute;
    top: 25px;
    left: 38px; }
    .header__title a img, .header__title span img {
      display: block; }
  .header__title a {
    transition: opacity 0.1s linear; }
    .header__title a:hover {
      transition-duration: 0s;
      opacity: 0.5;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }

.header__hero {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: calc(100% - 92px);
  z-index: 0px;
  background-size: cover;
  background-position: center;
  overflow: hidden; }
  .header__hero:after {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    right: 0px;
    width: 100%;
    height: 0;
    border-style: solid;
    border-width: 0 0 515px 471px;
    border-color: transparent transparent #00a0e9 transparent;
    transition: -webkit-transform 0.8s cubic-bezier(0.19, 1, 0.22, 1);
    transition: transform 0.8s cubic-bezier(0.19, 1, 0.22, 1);
    transition: transform 0.8s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0.8s cubic-bezier(0.19, 1, 0.22, 1); }

.header__hero__lead {
  position: absolute;
  top: 0px;
  left: 45px;
  width: 600px;
  height: 285px;
  z-index: 1; }
  .header__hero__lead:before {
    content: "";
    display: block;
    width: 261px;
    height: 100%;
    background-image: url(images/header_slash.png);
    background-size: 261px 285px;
    background-repeat: no-repeat;
    background-position: left top;
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 0;
    height: 0px;
    transition: height 1s cubic-bezier(0.19, 1, 0.22, 1) 0.4s; }
  .header__hero__lead h2 {
    position: absolute;
    font-size: 48px;
    color: #00a0e9;
    bottom: -4px;
    left: 92px;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
            transform: translateX(-20px);
    transition: opacity 1.5s linear 1.2s, -webkit-transform 1.5s cubic-bezier(0.19, 1, 0.22, 1) 1.2s;
    transition: opacity 1.5s linear 1.2s, transform 1.5s cubic-bezier(0.19, 1, 0.22, 1) 1.2s;
    transition: opacity 1.5s linear 1.2s, transform 1.5s cubic-bezier(0.19, 1, 0.22, 1) 1.2s, -webkit-transform 1.5s cubic-bezier(0.19, 1, 0.22, 1) 1.2s; }
    .header__hero__lead h2 span {
      display: block;
      font-size: 18px;
      color: #000000;
      position: relative;
      margin-top: 6px;
      left: -46px;
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      -webkit-transform: translateX(-30px);
          -ms-transform: translateX(-30px);
              transform: translateX(-30px);
      transition: opacity 0.5s linear 1.4s, -webkit-transform 1.5s cubic-bezier(0.19, 1, 0.22, 1) 1.4s;
      transition: opacity 0.5s linear 1.4s, transform 1.5s cubic-bezier(0.19, 1, 0.22, 1) 1.4s;
      transition: opacity 0.5s linear 1.4s, transform 1.5s cubic-bezier(0.19, 1, 0.22, 1) 1.4s, -webkit-transform 1.5s cubic-bezier(0.19, 1, 0.22, 1) 1.4s; }

.header__hero.wipein:after {
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%); }

.header__hero.wipein .header__hero__lead h2,
.header__hero.wipein .header__hero__lead h2 span {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  -webkit-transform: translateX(0px);
      -ms-transform: translateX(0px);
          transform: translateX(0px); }

.header__hero.wipein .header__hero__lead:before {
  height: 100%; }

.header__navigation {
  position: static; }

.header__navigation__toggle {
  display: none; }

.header__navigation__mainnav {
  width: 100%;
  min-width: 920px;
  height: 110px;
  position: fixed;
  z-index: 50; }

.header__navigation__mainnav__bg {
  position: fixed;
  background-color: #00a0e9;
  width: 100%;
  height: 110px;
  z-index: 49;
  opacity: 0.8;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; }

.header__navigation__main {
  width: auto;
  height: 52px;
  font-size: 0px;
  text-align: right;
  white-space: nowrap;
  position: absolute;
  right: 24px;
  top: 30px;
  z-index: 1; }
  .header__navigation__main li {
    position: relative;
    display: inline-block; }
  .header__navigation__main li a {
    position: relative;
    display: block;
    width: auto;
    height: 52px;
    padding: 0 20px 0 30px;
    position: relative;
    color: #FFF;
    font-size: 18px;
    text-decoration: none; }
    .header__navigation__main li a.current span:before {
      content: "";
      display: block;
      width: 100%;
      height: 4px;
      background-color: #FFF;
      position: absolute;
      left: 0px;
      bottom: -10px; }
    .header__navigation__main li a:hover span:last-child {
      transition-duration: 0;
      opacity: 0.5;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }
  .header__navigation__main li a span {
    display: block;
    position: relative;
    top: 34px;
    z-index: 1;
    transition: opacity 0.1s linear; }

.header__navigation__main__sep {
  display: block;
  width: 47px;
  height: 52px;
  background-image: url(images/header_nav_slash.png);
  background-size: 47px 52px;
  background-repeat: no-repeat;
  position: absolute !important;
  left: 0px !important;
  top: auto !important;
  bottom: 0px !important;
  z-index: 0 !important; }
  .header__navigation__main__sep:before {
    display: none !important; }

.header__navigation__sub, .footer__main__subnav {
  width: 279px;
  height: 92px;
  position: absolute;
  right: 0px;
  bottom: 0px;
  text-align: right;
  font-size: 0px;
  z-index: 48; }
  .header__navigation__sub li, .footer__main__subnav li {
    vertical-align: top;
    display: inline-block;
    width: 92px;
    height: 92px;
    margin-left: 1px;
    background-color: #bfbfbf; }
  .header__navigation__sub li a, .footer__main__subnav li a {
    transition: opacity 0.1s linear; }
    .header__navigation__sub li a:hover, .footer__main__subnav li a:hover {
      transition-duration: 0s;
      opacity: 0.5;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }

.header__navigation__sub__item, .header__navigation__sub__en, .footer__main__subnav__en, .header__navigation__sub__fb, .footer__main__subnav__fb, .header__navigation__sub__contact, .footer__main__subnav__contact {
  display: block;
  width: 92px;
  height: 92px;
  color: #FFF;
  line-height: 92px;
  text-align: center;
  text-decoration: none; }

.header__navigation__sub__en, .footer__main__subnav__en {
  font-size: 16px; }

.header__navigation__sub__fb, .footer__main__subnav__fb {
  display: block;
  text-indent: 200%;
  white-space: nowrap;
  overflow: hidden;
  color: transparent;
  background-size: 30px 30px;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url(images/subnav_fb.png); }

.header__navigation__sub__contact, .footer__main__subnav__contact {
  display: block;
  text-indent: 200%;
  white-space: nowrap;
  overflow: hidden;
  color: transparent;
  background-size: 30px 30px;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url(images/subnav_contact.png); }

@media screen and (max-width: 986px) {
  .header, .haeder--index {
    height: 515px; }
  .header__hero {
    height: 100%; }
    .header__hero:after {
      content: "";
      display: block;
      position: absolute;
      top: 0px;
      right: 0px;
      width: 100%;
      height: 0;
      border-style: solid;
      border-width: 0 0 515px 471px;
      border-color: transparent transparent #00a0e9 transparent;
      transition: -webkit-transform 0.8s cubic-bezier(0.19, 1, 0.22, 1);
      transition: transform 0.8s cubic-bezier(0.19, 1, 0.22, 1);
      transition: transform 0.8s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0.8s cubic-bezier(0.19, 1, 0.22, 1); }
    .header__hero.wipein:after {
      -webkit-transform: translateX(100%);
          -ms-transform: translateX(100%);
              transform: translateX(100%); }
  .header__navigation {
    position: fixed;
    width: 100%;
    height: 0px;
    z-index: 10;
    overflow: hidden;
    transition: height 0.5s cubic-bezier(0.19, 1, 0.22, 1); }
    .header__navigation.open {
      height: 377px; }
      .header__navigation.open .header__navigation__mainnav__bg {
        opacity: 1 !important;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
  .header__navigation__toggle {
    display: block;
    width: 88px;
    height: 88px;
    background-image: url(images/toggle_menu.png);
    background-size: 88px 176px;
    background-position: 0px 0px;
    background-repeat: no-repeat;
    position: fixed;
    top: 11px;
    right: 11px;
    z-index: 51; }
    .header__navigation__toggle.open {
      background-position: 0px -88px; }
  .header__navigation__mainnav {
    position: absolute;
    min-width: auto;
    min-width: initial;
    height: 322px;
    background-color: #f8f8f8; }
  .header__navigation__mainnav__bg {
    height: 110px;
    z-index: 10; }
  .header__navigation__main {
    width: 386px;
    height: auto;
    position: relative;
    right: auto;
    top: auto;
    margin: 140px auto 0;
    z-index: 1; }
    .header__navigation__main li {
      display: block;
      float: left;
      width: 110px;
      height: 52px;
      margin-bottom: 28px; }
      .header__navigation__main li:nth-of-type(3n+1) {
        clear: both;
        margin-right: 28px; }
      .header__navigation__main li:nth-of-type(3n+2) {
        margin-right: 28px; }
    .header__navigation__main li a {
      font-size: 16px;
      color: #000; }
      .header__navigation__main li a.current span:before {
        background-color: #000; }
  .header__navigation__main__sep {
    opacity: 0.5 !important;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    background-image: url(images/footer_nav_slash.png); }
  .header__navigation__sub, .footer__main__subnav {
    height: 55px;
    width: 100%;
    position: absolute;
    top: 322px;
    left: 0px;
    background-color: #bfbfbf; }
    .header__navigation__sub li, .footer__main__subnav li {
      width: 55px;
      height: 55px;
      background-color: #bfbfbf;
      margin-left: 0px;
      border-left: 1px solid #FFF; }
  .header__navigation__sub__item, .header__navigation__sub__en, .footer__main__subnav__en, .header__navigation__sub__fb, .footer__main__subnav__fb, .header__navigation__sub__contact, .footer__main__subnav__contact {
    width: 55px;
    height: 55px;
    line-height: 55px; }
  .header__navigation__sub__en, .footer__main__subnav__en {
    font-size: 10px; }
  .header__navigation__sub__fb, .footer__main__subnav__fb {
    background-size: 25px 25px;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url(images/subnav_fb.png); }
  .header__navigation__sub__contact, .footer__main__subnav__contact {
    background-size: 25px 25px;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url(images/subnav_contact.png); } }

@media screen and (max-width: 767px) {
  .header, .haeder--index {
    position: relative;
    height: 200px;
    overflow: visible; }
  .header__title {
    position: fixed;
    width: 153px;
    height: 55px;
    z-index: 51;
    background-image: url(images/logo_base.png);
    background-size: 189px 55px;
    background-position: right top; }
    .header__title a, .header__title span {
      display: block;
      width: 76px;
      height: 30px;
      position: absolute;
      top: 12px;
      left: 19px; }
      .header__title a img, .header__title span img {
        display: block;
        width: 76px;
        height: 30px; }
  .header__hero {
    height: 100%; }
  .header__hero__lead {
    position: absolute;
    left: 15px;
    width: calc(100% - 15px);
    height: 149px; }
    .header__hero__lead:before {
      background-image: url(images/header_slash_sp.png);
      background-size: 137px 149px; }
    .header__hero__lead h2 {
      font-size: 30px;
      bottom: -3px;
      left: 45px; }
      .header__hero__lead h2 span {
        font-size: 14px;
        margin-top: 3px;
        left: -21px;
        letter-spacing: 0px; }
  .header__navigation.open {
    height: 387px; }
  .header__navigation__toggle {
    width: 44px;
    height: 44px;
    background-size: 44px 88px;
    top: 5px;
    right: 8px; }
    .header__navigation__toggle.open {
      background-position: 0px -44px; }
  .header__navigation__mainnav {
    height: 332px; }
  .header__navigation__mainnav__bg {
    height: 55px; }
  .header__navigation__main {
    margin: 72px auto 0;
    width: 248px; }
    .header__navigation__main li:nth-of-type(odd) {
      clear: both;
      margin: 0 28px 28px 0; }
    .header__navigation__main li:nth-of-type(even) {
      clear: none;
      margin: 0 0 28px 0; }
  .header__navigation__sub, .footer__main__subnav {
    top: 332px; } }

.footer {
  width: 100%;
  height: 100%;
  margin-top: 180px; }

.footer__breadcrumb {
  box-sizing: border-box;
  width: 100%;
  height: 44px;
  border-top: 1px solid #e5e5e5;
  padding: 0 47px; }
  .footer__breadcrumb ul {
    font-size: 0px; }
  .footer__breadcrumb ul li {
    position: relative;
    display: inline-block;
    width: auto;
    height: 43px; }
  .footer__breadcrumb a, .footer__breadcrumb span {
    position: relative;
    display: block;
    height: 43px;
    width: auto;
    font-size: 13px;
    line-height: 43px;
    color: #808080;
    text-decoration: none;
    padding: 0 20px; }
  .footer__breadcrumb a {
    transition: opacity 0.1s linear; }
    .footer__breadcrumb a:hover {
      transition-duration: 0s;
      opacity: 0.5;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }
  .footer__breadcrumb li.home a,
  .footer__breadcrumb li.home span {
    padding: 0 20px 0 30px; }
    .footer__breadcrumb li.home a:before,
    .footer__breadcrumb li.home span:before {
      content: "";
      display: block;
      width: 16px;
      height: 16px;
      background-image: url(images/breadcrumb_home.png);
      background-size: 16px 16px;
      position: absolute;
      left: 0px;
      top: 13px; }
  .footer__breadcrumb li:not(:first-of-type) {
    margin-left: 21px; }
    .footer__breadcrumb li:not(:first-of-type):before {
      content: "";
      display: block;
      width: 21px;
      height: 24px;
      background-image: url(images/breadcrumb_sep.png);
      background-size: 21px 24px;
      position: absolute;
      left: -21px;
      top: 9px; }

.footer__main {
  width: 100%;
  height: 468px;
  background-color: #f8f8f8;
  position: relative; }

.footer__main__logo {
  width: 264px;
  height: 77px;
  background-image: url(images/logo_base.png);
  background-size: 264px 77px;
  background-position: top right;
  position: relative; }
  .footer__main__logo a, .footer__main__logo span {
    display: block;
    width: 109px;
    height: 43px;
    position: absolute;
    left: 47px;
    top: 18px; }
  .footer__main__logo a {
    transition: opacity 0.1s linear; }
    .footer__main__logo a:hover {
      transition-duration: 0s;
      opacity: 0.5;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }

.footer__main__nav {
  width: auto;
  width: calc(100% - 20px);
  max-width: 948px;
  height: auto;
  position: relative;
  margin: 0 auto;
  overflow: hidden;
  top: 15px; }
  .footer__main__nav:after {
    content: "";
    display: block;
    width: 0px;
    height: 0px;
    float: none;
    clear: both;
    visibility: hidden; }
  .footer__main__nav > ul {
    position: relative;
    left: 33px; }

.footer__main__nav__block {
  width: 16.6667%;
  height: auto;
  float: left; }

.footer__main__nav__head {
  display: block;
  width: 100%;
  height: 52px;
  position: relative;
  text-decoration: none; }
  .footer__main__nav__head span {
    display: block;
    font-size: 14px;
    color: #000;
    position: absolute;
    left: 24px;
    bottom: 0px;
    transition: opacity 0.1s linear;
    white-space: nowrap; }
  .footer__main__nav__head:hover span {
    transition-duration: 0s;
    opacity: 0.5;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }
  .footer__main__nav__head:before {
    content: "";
    display: block;
    width: 47px;
    height: 52px;
    background-image: url(images/footer_nav_slash.png);
    background-size: 47px 52px;
    background-repeat: no-repeat;
    position: absolute;
    left: 0px;
    bottom: 0px;
    z-index: 0;
    opacity: 0.5;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }

.footer__main__nav__head__list {
  margin: 12px 0 0 20px; }

.footer__main__nav__head__item a {
  display: block;
  color: #808080;
  text-decoration: none;
  font-size: 13px;
  line-height: 24px;
  transition: opacity 0.1s linear;
  white-space: nowrap; }
  .footer__main__nav__head__item a:hover {
    transition-duration: 0s;
    opacity: 0.5;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }
  .footer__main__nav__head__item a:before {
    content: "・"; }

.footer__main__nav__privacy {
  display: block;
  color: #808080;
  text-decoration: none;
  font-size: 13px;
  line-height: 24px;
  position: absolute;
  bottom: 0px;
  right: 38px;
  transition: opacity 0.1s linear; }
  .footer__main__nav__privacy:hover {
    transition-duration: 0s;
    opacity: 0.5;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }

.footer__main__bottom {
  position: absolute;
  bottom: 0px;
  width: 100%;
  height: 92px;
  background-color: #bfbfbf; }

.footer__main__small {
  display: block;
  width: auto;
  height: 92px;
  position: absolute;
  left: 47px;
  top: 0px;
  line-height: 92px;
  color: #FFF;
  font-size: 12px; }

.footer__main__backtop {
  display: block;
  width: 69px;
  height: 92px;
  background-image: url(images/foot_backtop.png);
  background-size: 69px 42px;
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  top: 0px;
  left: 50%;
  margin-left: -34px;
  transition: opacity 0.1s linear; }
  .footer__main__backtop:hover {
    transition-duration: 0s;
    opacity: 0.5;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }

.footer__main__subnav li {
  margin-left: 0px;
  border-left: 1px solid #FFF;
  background-color: #bfbfbf; }

.footer__main__subnav__en {
  background-color: #bfbfbf; }

.footer__main__subnav__fb {
  background-color: #bfbfbf; }

.footer__main__subnav__contact {
  background-color: #bfbfbf; }

.footer__sidelink {
  width: 100%;
  height: 220px;
  position: relative;
  overflow: hidden; }
  .footer__sidelink ul {
    width: calc(100% + 32px);
    height: 100%;
    position: relative;
    left: -40px;
    font-size: 0px;
    white-space: nowrap;
    text-align: center; }
  .footer__sidelink ul li {
    display: inline-block;
    width: 25%;
    height: 100%;
    margin: 0 6px;
    -webkit-transform: skew(-17.2deg);
        -ms-transform: skew(-17.2deg);
            transform: skew(-17.2deg);
    overflow: hidden; }
    .footer__sidelink ul li a {
      display: block;
      width: 100%;
      height: 100%;
      padding: 0 68px;
      position: relative;
      left: -68px;
      background-size: cover;
      background-position: center;
      -webkit-transform: skew(17.2deg);
          -ms-transform: skew(17.2deg);
              transform: skew(17.2deg); }
      .footer__sidelink ul li a:before {
        content: "";
        position: absolute;
        left: 0px;
        top: 0px;
        width: 100%;
        height: 100%;
        background-color: #00a0e9;
        opacity: 0.7;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
        transition: opacity 0.1s linear; }
      .footer__sidelink ul li a span {
        display: block;
        width: 100%;
        height: 24px;
        font-size: 18px;
        line-height: 24px;
        color: #FFF;
        text-align: center;
        position: absolute;
        left: 0px;
        top: 50%;
        margin-top: -12px;
        z-index: 2;
        transition: color 0.1s linear; }
      .footer__sidelink ul li a:hover span {
        transition-duration: 0s;
        color: #00a0e9; }
      .footer__sidelink ul li a:hover:before {
        transition-duration: 0s;
        opacity: 0;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
      .footer__sidelink ul li a.current span {
        color: #00a0e9; }
      .footer__sidelink ul li a.current:before {
        display: none; }
    .footer__sidelink ul li:nth-of-type(1) a {
      background-image: url(images/company_head_bg.jpg); }
    .footer__sidelink ul li:nth-of-type(2) a {
      background-image: url(images/manufacturing_head_bg.jpg); }
    .footer__sidelink ul li:nth-of-type(3) a {
      background-image: url(images/products_head_bg.jpg); }
    .footer__sidelink ul li:nth-of-type(4) a {
      background-image: url(images/recruitment_head_bg.jpg); }

.footer__baselink {
  position: relative;
  width: 100%;
  height: 120px;
  font-size: 0px;
  text-align: center;
  margin: 0 auto; }
  .footer__baselink:before {
    content: "";
    display: block;
    width: 30px;
    height: 93px;
    background-image: url(images/footer__baselink_slash.png);
    background-size: 30px 93px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin: -46px 0 0 -15px; }

.footer__baselink__label {
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  padding: 35px 50px 35px 0;
  position: relative;
  z-index: 1; }
  .footer__baselink__label span {
    display: block;
    text-align: right; }
  .footer__baselink__label:before {
    content: "";
    display: block;
    width: 132px;
    height: 120px;
    background-size: 132px 117px;
    position: absolute;
    left: 0px;
    top: 0px; }
  .footer__baselink__label:after {
    content: "";
    display: block;
    width: 21px;
    height: 38px;
    background-image: url(images/link_arrow_b.png);
    background-size: 21px 38px;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 50%;
    margin-top: -20px;
    right: 6px; }

.footer__baselink__label__title {
  font-size: 24px;
  color: #00a0e9; }

.footer__baselink__label__sub {
  font-size: 18px;
  line-height: 24px;
  color: #000; }

.footer__baselink__domestic,
.footer__baselink__overseas {
  display: inline-block;
  position: relative;
  width: 316px;
  height: 120px;
  margin: 0 36px;
  text-decoration: none; }

.footer__baselink__domestic .footer__baselink__label {
  transition: opacity 0.1s linear; }
  .footer__baselink__domestic .footer__baselink__label:before {
    background-image: url(images/base_bg_domestic.png); }

.footer__baselink__domestic:hover .footer__baselink__label {
  transition-duration: 0s;
  opacity: 0.5;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }

.footer__baselink__overseas .footer__baselink__label {
  transition: opacity 0.1s linear; }
  .footer__baselink__overseas .footer__baselink__label:before {
    background-image: url(images/base_bg_overseas.png); }

.footer__baselink__overseas:hover .footer__baselink__label {
  transition-duration: 0s;
  opacity: 0.5;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }

@media screen and (max-width: 960px) {
  .footer__main__nav__block {
    width: 15%; }
    .footer__main__nav__block:nth-of-type(3) {
      width: 17.8%; }
  .footer__baselink__domestic,
  .footer__baselink__overseas {
    width: 312px; } }

@media screen and (max-width: 986px) {
  .footer__main__subnav {
    width: 279px;
    height: 92px;
    position: absolute;
    top: auto;
    left: auto;
    right: 0px;
    bottom: 0px;
    text-align: right;
    font-size: 0px; }
    .footer__main__subnav li {
      vertical-align: top;
      display: inline-block;
      width: 92px;
      height: 92px;
      background-color: #89a5cf; }
  .footer__main__subnav__en {
    font-size: 16px;
    display: block;
    width: 92px;
    height: 92px;
    color: #FFF;
    line-height: 92px;
    text-align: center;
    text-decoration: none; }
  .footer__main__subnav__fb {
    display: block;
    width: 92px;
    height: 92px;
    color: #FFF;
    line-height: 92px;
    text-align: center;
    text-decoration: none;
    background-size: 30px 30px;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url(images/subnav_fb.png); }
  .footer__main__subnav__contact {
    display: block;
    width: 92px;
    height: 92px;
    color: #FFF;
    line-height: 92px;
    text-align: center;
    text-decoration: none;
    background-size: 30px 30px;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url(images/subnav_contact.png); } }

@media screen and (max-width: 767px) {
  .footer {
    margin-top: 80px;
    overflow: hidden; }
  .footer__main {
    height: auto;
    padding: 1px 0 76px; }
  .footer__sidelink {
    width: 100%;
    height: 200px; }
    .footer__sidelink ul {
      width: calc(100% + 60px);
      left: -18px; }
    .footer__sidelink ul li {
      display: block;
      width: calc(50% - 18px);
      height: 98px;
      float: left;
      margin: 0 3px 5px; }
    .footer__sidelink ul li a {
      padding: 0 16px;
      left: -16px; }
    .footer__sidelink ul li a span {
      font-size: 14px; }
  .footer__baselink {
    height: 77px; }
    .footer__baselink:before {
      display: none; }
  .footer__baselink__domestic,
  .footer__baselink__overseas {
    width: 160px;
    height: 77px;
    margin: 0; }
  .footer__baselink__label {
    padding: 22px 38px 22px 0;
    position: relative;
    z-index: 1; }
    .footer__baselink__label:after {
      width: 14px;
      height: 26px;
      background-size: 14px 26px;
      right: 17px;
      margin-top: -14px; }
    .footer__baselink__label__title {
      font-size: 14px;
      line-height: 16px; }
    .footer__baselink__label__sub {
      font-size: 12px;
      line-height: 16px; }
  .footer__baselink__domestic .footer__baselink__label:before {
    width: 58px;
    height: 77px;
    background-image: url(images/base_bg_domestic_sp.png);
    background-size: 58px 77px; }
  .footer__baselink__overseas .footer__baselink__label {
    padding-right: 32px; }
    .footer__baselink__overseas .footer__baselink__label:before {
      width: 66px;
      height: 77px;
      background-image: url(images/base_bg_overseas_sp.png);
      background-size: 66px 77px;
      left: -10px; }
    .footer__baselink__overseas .footer__baselink__label:after {
      right: 11px; }
  .footer__breadcrumb {
    height: 44px;
    padding: 0 16px; }
  .footer__breadcrumb li.home a,
  .footer__breadcrumb li.home span {
    padding: 0 10px 0 25px; }
  .footer__breadcrumb a,
  .footer__breadcrumb span {
    padding: 0 10px; }
  .footer__main__logo {
    display: none; }
  .footer__main__nav {
    width: auto;
    margin: 40px 10px;
    padding-bottom: 10px;
    top: 0px; }
    .footer__main__nav > ul {
      position: relative;
      width: 100%;
      left: 0px; }
  .footer__main__nav__block {
    width: 30.6667%;
    margin-bottom: 16px; }
  .footer__main__nav__head {
    height: 43px; }
    .footer__main__nav__head span {
      left: 18px;
      bottom: -1px; }
    .footer__main__nav__head:before {
      width: 39px;
      height: 43px;
      background-size: 39px 43px;
      opacity: 0.5;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }
  .footer__main__nav__head__list {
    margin: 8px 0 0 12px; }
  .footer__main__nav__head__item a {
    white-space: nowrap;
    font-size: 12px;
    line-height: 21px; }
    .footer__main__nav__head__item a:before {
      margin-right: -2px; }
  .footer__main__nav__privacy {
    right: 12px; }
  .footer__main__bottom {
    height: 76px; }
  .footer__main__small {
    width: 100%;
    height: 14px;
    line-height: 14px;
    position: absolute;
    left: 0px;
    top: 18px;
    line-height: auto;
    font-size: 12px;
    text-align: center; }
  .footer__main__backtop {
    width: 32px;
    height: 44px;
    background-size: 32px 20px;
    top: auto;
    bottom: 0px;
    left: 50%;
    margin-left: -16px; }
  .footer__main__subnav {
    display: none; } }

.haeder--index {
  height: 942px; }
  .haeder--index .header__hero {
    height: calc(100% - 192px);
    overflow: hidden;
    z-index: 0; }
    .haeder--index .header__hero:before, .haeder--index .header__hero:after {
      display: none; }
  .haeder--index .header__hero__mask {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0px;
    top: 0px;
    z-index: 10;
    left: 50%; }
    .haeder--index .header__hero__mask div {
      width: 100%;
      height: 100%;
      background-color: #00a0e9; }
    .haeder--index .header__hero__mask.masking {
      transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1); }
  .haeder--index .header__hero__mask__edge {
    display: block;
    width: auto;
    height: 100%;
    position: absolute;
    top: 0px; }
    .haeder--index .header__hero__mask__edge:first-of-type {
      left: 1px; }
    .haeder--index .header__hero__mask__edge:last-of-type {
      right: 1px; }
  .haeder--index .header__hero__view {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    z-index: 0;
    overflow: hidden; }
    .haeder--index .header__hero__view.view_1 .header__hero__view__img {
      background-image: url(images/index_head_image_1.jpg); }
    .haeder--index .header__hero__view.view_2 .header__hero__view__img {
      background-image: url(images/index_head_image_2.jpg); }
    .haeder--index .header__hero__view.view_3 .header__hero__view__img {
      background-image: url(images/index_head_image_3.jpg); }
    .haeder--index .header__hero__view.view_4 .header__hero__view__img {
      background-image: url(images/index_head_image_4.jpg); }
  .haeder--index .header__hero__view__img {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    z-index: 0;
    -webkit-transform-origin: center;
        -ms-transform-origin: center;
            transform-origin: center;
    transition: -webkit-transform 12s linear;
    transition: transform 12s linear;
    transition: transform 12s linear, -webkit-transform 12s linear; }
  .haeder--index .header__hero[data-current="1"] .header__hero__view.view_1 {
    z-index: 1; }
    .haeder--index .header__hero[data-current="1"] .header__hero__view.view_1 .header__hero__lead:before {
      height: 100%; }
    .haeder--index .header__hero[data-current="1"] .header__hero__view.view_1 .header__hero__lead p {
      -webkit-transform: translateX(0px);
          -ms-transform: translateX(0px);
              transform: translateX(0px);
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
  .haeder--index .header__hero__lead {
    width: 810px; }
    .haeder--index .header__hero__lead:before {
      transition: height 1s cubic-bezier(0.19, 1, 0.22, 1) 0.4s; }
    .haeder--index .header__hero__lead svg {
      width: 587px;
      height: 110px;
      display: block;
      position: absolute;
      bottom: 32px;
      left: 92px; }
      .haeder--index .header__hero__lead svg path:nth-of-type(1) {
        -webkit-animation-delay: 1.15s !important;
                animation-delay: 1.15s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(2) {
        -webkit-animation-delay: 1.3s !important;
                animation-delay: 1.3s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(3) {
        -webkit-animation-delay: 1.45s !important;
                animation-delay: 1.45s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(4) {
        -webkit-animation-delay: 1.6s !important;
                animation-delay: 1.6s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(5) {
        -webkit-animation-delay: 1.75s !important;
                animation-delay: 1.75s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(6) {
        -webkit-animation-delay: 1.9s !important;
                animation-delay: 1.9s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(7) {
        -webkit-animation-delay: 2.05s !important;
                animation-delay: 2.05s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(8) {
        -webkit-animation-delay: 2.2s !important;
                animation-delay: 2.2s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(9) {
        -webkit-animation-delay: 2.35s !important;
                animation-delay: 2.35s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(10) {
        -webkit-animation-delay: 2.5s !important;
                animation-delay: 2.5s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(11) {
        -webkit-animation-delay: 2.65s !important;
                animation-delay: 2.65s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(12) {
        -webkit-animation-delay: 2.8s !important;
                animation-delay: 2.8s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(13) {
        -webkit-animation-delay: 2.95s !important;
                animation-delay: 2.95s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(14) {
        -webkit-animation-delay: 3.1s !important;
                animation-delay: 3.1s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(15) {
        -webkit-animation-delay: 3.25s !important;
                animation-delay: 3.25s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(16) {
        -webkit-animation-delay: 3.4s !important;
                animation-delay: 3.4s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(17) {
        -webkit-animation-delay: 3.55s !important;
                animation-delay: 3.55s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(18) {
        -webkit-animation-delay: 3.7s !important;
                animation-delay: 3.7s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(19) {
        -webkit-animation-delay: 3.85s !important;
                animation-delay: 3.85s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(20) {
        -webkit-animation-delay: 4s !important;
                animation-delay: 4s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(21) {
        -webkit-animation-delay: 4.15s !important;
                animation-delay: 4.15s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(22) {
        -webkit-animation-delay: 4.3s !important;
                animation-delay: 4.3s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(23) {
        -webkit-animation-delay: 4.45s !important;
                animation-delay: 4.45s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(24) {
        -webkit-animation-delay: 4.6s !important;
                animation-delay: 4.6s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(25) {
        -webkit-animation-delay: 4.75s !important;
                animation-delay: 4.75s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(26) {
        -webkit-animation-delay: 4.9s !important;
                animation-delay: 4.9s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(27) {
        -webkit-animation-delay: 5.05s !important;
                animation-delay: 5.05s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(28) {
        -webkit-animation-delay: 5.2s !important;
                animation-delay: 5.2s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(29) {
        -webkit-animation-delay: 5.35s !important;
                animation-delay: 5.35s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(30) {
        -webkit-animation-delay: 5.5s !important;
                animation-delay: 5.5s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(31) {
        -webkit-animation-delay: 5.65s !important;
                animation-delay: 5.65s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(32) {
        -webkit-animation-delay: 5.8s !important;
                animation-delay: 5.8s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(33) {
        -webkit-animation-delay: 5.95s !important;
                animation-delay: 5.95s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(34) {
        -webkit-animation-delay: 6.1s !important;
                animation-delay: 6.1s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(35) {
        -webkit-animation-delay: 6.25s !important;
                animation-delay: 6.25s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(36) {
        -webkit-animation-delay: 6.4s !important;
                animation-delay: 6.4s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(37) {
        -webkit-animation-delay: 6.55s !important;
                animation-delay: 6.55s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(38) {
        -webkit-animation-delay: 6.7s !important;
                animation-delay: 6.7s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(39) {
        -webkit-animation-delay: 6.85s !important;
                animation-delay: 6.85s !important; }
      .haeder--index .header__hero__lead svg path:nth-of-type(40) {
        -webkit-animation-delay: 7s !important;
                animation-delay: 7s !important; }
    .haeder--index .header__hero__lead p {
      font-size: 16px;
      color: #FFF;
      position: absolute;
      left: 36px;
      bottom: 0px;
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      -webkit-transform: translateX(-40px);
          -ms-transform: translateX(-40px);
              transform: translateX(-40px);
      transition: opacity 1.5s linear 2.9s, -webkit-transform 1.6s cubic-bezier(0.19, 1, 0.22, 1) 2.8s;
      transition: opacity 1.5s linear 2.9s, transform 1.6s cubic-bezier(0.19, 1, 0.22, 1) 2.8s;
      transition: opacity 1.5s linear 2.9s, transform 1.6s cubic-bezier(0.19, 1, 0.22, 1) 2.8s, -webkit-transform 1.6s cubic-bezier(0.19, 1, 0.22, 1) 2.8s; }
      .haeder--index .header__hero__lead p br {
        display: none; }
  .haeder--index .header__skewnav {
    width: calc(100% - 110px);
    height: 197px;
    position: absolute;
    right: 0px;
    bottom: 92px;
    z-index: 1; }
    .haeder--index .header__skewnav ul {
      font-size: 0px;
      text-align: right; }
    .haeder--index .header__skewnav ul li {
      position: relative;
      display: inline-block;
      height: 197px;
      padding-left: 182px;
      margin-left: -182px;
      background-size: cover;
      background-position: left bottom;
      -webkit-transform: skew(-42.6deg);
          -ms-transform: skew(-42.6deg);
              transform: skew(-42.6deg);
      -webkit-transform-origin: left bottom;
          -ms-transform-origin: left bottom;
              transform-origin: left bottom;
      overflow: hidden; }
      .haeder--index .header__skewnav ul li:nth-of-type(1) {
        width: 22.8916%;
        z-index: 0; }
        .haeder--index .header__skewnav ul li:nth-of-type(1) a {
          background-image: url(images/index_skewnav_1.png); }
      .haeder--index .header__skewnav ul li:nth-of-type(2) {
        width: 22.8916%;
        z-index: 1; }
        .haeder--index .header__skewnav ul li:nth-of-type(2) a {
          background-image: url(images/index_skewnav_2.png); }
      .haeder--index .header__skewnav ul li:nth-of-type(3) {
        width: 22.8916%;
        z-index: 2; }
        .haeder--index .header__skewnav ul li:nth-of-type(3) a {
          background-image: url(images/index_skewnav_3.png); }
      .haeder--index .header__skewnav ul li:nth-of-type(4) {
        width: 17.6205%;
        z-index: 3; }
        .haeder--index .header__skewnav ul li:nth-of-type(4) a {
          background-image: url(images/index_skewnav_4.png); }
        .haeder--index .header__skewnav ul li:nth-of-type(4) a span {
          right: 15px; }
    .haeder--index .header__skewnav ul li a {
      display: block;
      width: 100%;
      height: 100%;
      position: absolute;
      left: 0px;
      top: 0px;
      -webkit-transform: skew(42.6deg);
          -ms-transform: skew(42.6deg);
              transform: skew(42.6deg);
      -webkit-transform-origin: left bottom;
          -ms-transform-origin: left bottom;
              transform-origin: left bottom;
      background-size: cover;
      background-position: left bottom; }
      .haeder--index .header__skewnav ul li a span {
        display: block;
        font-size: 18px;
        color: #00a0e9;
        position: absolute;
        top: 12px;
        right: 45px;
        opacity: 0;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
        transition: opacity 0.1s linear; }
      .haeder--index .header__skewnav ul li a:before {
        content: "";
        display: block;
        width: 100%;
        height: 15px;
        background-color: #00a0e9;
        position: absolute;
        bottom: 0px;
        right: 0px;
        opacity: 0;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
        transition: opacity 0.1s linear; }
      .haeder--index .header__skewnav ul li a:hover span {
        transition-duration: 0s;
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
      .haeder--index .header__skewnav ul li a:hover:before {
        transition-duration: 0s;
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
    .haeder--index .header__skewnav ul li:last-of-type a.active:before {
      width: 100%; }
  .haeder--index .header__scroll {
    width: 30px;
    height: 56px;
    background-image: url(images/scroll.png);
    background-size: 30px 56px;
    position: absolute;
    bottom: 18px;
    left: 50%;
    margin-left: -15px; }
    .haeder--index .header__scroll span {
      display: block;
      width: 8px;
      height: 19px;
      position: absolute;
      left: 11px;
      top: 10px;
      overflow: hidden;
      background-color: #bfbfbf;
      border-radius: 4px; }
      .haeder--index .header__scroll span:before {
        content: "";
        display: block;
        width: 8px;
        height: 38px;
        background-image: url(images/scroll_strip.png);
        background-size: 8px 3px;
        background-position: center top;
        position: absolute;
        left: 0px;
        top: 0px; }
  .haeder--index .header__navigation__mainnav__bg {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }

body:not(.msie) .haeder--index .header__hero[data-current="1"] .header__hero__view.view_1 .cls-1 {
  stroke-dasharray: 3000;
  stroke-dashoffset: 3000;
  -webkit-animation: DASH 3s ease-in 0s forwards;
          animation: DASH 3s ease-in 0s forwards; }

body.msie .haeder--index .header__hero__lead p {
  transition: opacity 1.5s linear 1s, -webkit-transform 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.9s;
  transition: opacity 1.5s linear 1s, transform 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.9s;
  transition: opacity 1.5s linear 1s, transform 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.9s, -webkit-transform 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.9s; }

.index__news {
  width: auto;
  width: calc(100% - 40px);
  max-width: 960px;
  height: auto;
  margin: 90px auto 180px; }

.index__news__list {
  margin-top: 38px; }
  .index__news__list li, .index__news__list a {
    position: relative;
    display: block;
    width: 100%;
    color: #000;
    text-decoration: none; }
  .index__news__list li {
    border-bottom: 1px solid #DDE4F0; }
    .index__news__list li:before {
      content: "";
      display: block;
      width: 140px;
      height: 100%;
      position: absolute;
      left: 0px;
      top: 0px;
      background-color: #f8f8f8; }
  .index__news__list a {
    transition: opacity 0.1s linear; }
    .index__news__list a:hover {
      transition-duration: 0s;
      opacity: 0.5;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }
    .index__news__list a:after {
      content: "";
      display: block;
      width: 12px;
      height: 20px;
      background-image: url(images/link_arrow.png);
      background-size: 12px 20px;
      background-position: center;
      background-repeat: no-repeat;
      position: absolute;
      top: 50%;
      right: 13px;
      margin-top: -10px; }

.index__news__list__title {
  border-bottom: 0px; }
  .index__news__list__title:before {
    display: none; }

.index__section {
  position: relative; }

.index__contents {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  height: 430px;
  margin: 120px 0; }

.index__contents__image {
  height: 100%;
  width: 52.3611%;
  position: absolute;
  top: 0px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  overflow: hidden; }
  .index__contents__image:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: #FFF;
    position: absolute;
    top: 0px;
    transition: width 0.75s cubic-bezier(0.19, 1, 0.22, 1); }
  .index__contents__image:after {
    content: "";
    display: block;
    width: 0px;
    height: 0px;
    position: absolute;
    top: 0px;
    border-style: solid; }

.index__contents__body {
  box-sizing: border-box;
  width: 100%;
  max-width: 760px;
  position: relative;
  height: 100%; }

.index__contents__body__block {
  position: relative;
  box-sizing: border-box;
  max-width: 560px;
  padding: 40px 40px 0 40px;
  margin: 0 auto;
  z-index: 1; }

.index__contents__title {
  text-align: left;
  margin-left: 72px;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  -webkit-transform: translateX(-20px);
      -ms-transform: translateX(-20px);
          transform: translateX(-20px);
  transition: opacity 1.5s linear 0.5s, -webkit-transform 1.5s cubic-bezier(0.19, 1, 0.22, 1) 0.5s;
  transition: opacity 1.5s linear 0.5s, transform 1.5s cubic-bezier(0.19, 1, 0.22, 1) 0.5s;
  transition: opacity 1.5s linear 0.5s, transform 1.5s cubic-bezier(0.19, 1, 0.22, 1) 0.5s, -webkit-transform 1.5s cubic-bezier(0.19, 1, 0.22, 1) 0.5s; }
  .index__contents__title span {
    text-align: left;
    margin-left: -20px;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: translateX(-30px);
        -ms-transform: translateX(-30px);
            transform: translateX(-30px);
    transition: opacity 0.5s linear 0.7s, -webkit-transform 1.5s cubic-bezier(0.19, 1, 0.22, 1) 0.7s;
    transition: opacity 0.5s linear 0.7s, transform 1.5s cubic-bezier(0.19, 1, 0.22, 1) 0.7s;
    transition: opacity 0.5s linear 0.7s, transform 1.5s cubic-bezier(0.19, 1, 0.22, 1) 0.7s, -webkit-transform 1.5s cubic-bezier(0.19, 1, 0.22, 1) 0.7s; }

.index__contents__lead {
  margin: 30px 0 15px 15px; }
  .index__contents__lead svg path:nth-of-type(1) {
    -webkit-animation-delay: 0.85s !important;
            animation-delay: 0.85s !important; }
  .index__contents__lead svg path:nth-of-type(2) {
    -webkit-animation-delay: 1s !important;
            animation-delay: 1s !important; }
  .index__contents__lead svg path:nth-of-type(3) {
    -webkit-animation-delay: 1.15s !important;
            animation-delay: 1.15s !important; }
  .index__contents__lead svg path:nth-of-type(4) {
    -webkit-animation-delay: 1.3s !important;
            animation-delay: 1.3s !important; }
  .index__contents__lead svg path:nth-of-type(5) {
    -webkit-animation-delay: 1.45s !important;
            animation-delay: 1.45s !important; }
  .index__contents__lead svg path:nth-of-type(6) {
    -webkit-animation-delay: 1.6s !important;
            animation-delay: 1.6s !important; }
  .index__contents__lead svg path:nth-of-type(7) {
    -webkit-animation-delay: 1.75s !important;
            animation-delay: 1.75s !important; }
  .index__contents__lead svg path:nth-of-type(8) {
    -webkit-animation-delay: 1.9s !important;
            animation-delay: 1.9s !important; }
  .index__contents__lead svg path:nth-of-type(9) {
    -webkit-animation-delay: 2.05s !important;
            animation-delay: 2.05s !important; }
  .index__contents__lead svg path:nth-of-type(10) {
    -webkit-animation-delay: 2.2s !important;
            animation-delay: 2.2s !important; }
  .index__contents__lead svg path:nth-of-type(11) {
    -webkit-animation-delay: 2.35s !important;
            animation-delay: 2.35s !important; }
  .index__contents__lead svg path:nth-of-type(12) {
    -webkit-animation-delay: 2.5s !important;
            animation-delay: 2.5s !important; }
  .index__contents__lead svg path:nth-of-type(13) {
    -webkit-animation-delay: 2.65s !important;
            animation-delay: 2.65s !important; }
  .index__contents__lead svg path:nth-of-type(14) {
    -webkit-animation-delay: 2.8s !important;
            animation-delay: 2.8s !important; }
  .index__contents__lead svg path:nth-of-type(15) {
    -webkit-animation-delay: 2.95s !important;
            animation-delay: 2.95s !important; }
  .index__contents__lead svg path:nth-of-type(16) {
    -webkit-animation-delay: 3.1s !important;
            animation-delay: 3.1s !important; }
  .index__contents__lead svg path:nth-of-type(17) {
    -webkit-animation-delay: 3.25s !important;
            animation-delay: 3.25s !important; }
  .index__contents__lead svg path:nth-of-type(18) {
    -webkit-animation-delay: 3.4s !important;
            animation-delay: 3.4s !important; }
  .index__contents__lead svg path:nth-of-type(19) {
    -webkit-animation-delay: 3.55s !important;
            animation-delay: 3.55s !important; }
  .index__contents__lead svg path:nth-of-type(20) {
    -webkit-animation-delay: 3.7s !important;
            animation-delay: 3.7s !important; }
  .index__contents__lead svg path:nth-of-type(21) {
    -webkit-animation-delay: 3.85s !important;
            animation-delay: 3.85s !important; }
  .index__contents__lead svg path:nth-of-type(22) {
    -webkit-animation-delay: 4s !important;
            animation-delay: 4s !important; }
  .index__contents__lead svg path:nth-of-type(23) {
    -webkit-animation-delay: 4.15s !important;
            animation-delay: 4.15s !important; }
  .index__contents__lead svg path:nth-of-type(24) {
    -webkit-animation-delay: 4.3s !important;
            animation-delay: 4.3s !important; }
  .index__contents__lead svg path:nth-of-type(25) {
    -webkit-animation-delay: 4.45s !important;
            animation-delay: 4.45s !important; }
  .index__contents__lead svg path:nth-of-type(26) {
    -webkit-animation-delay: 4.6s !important;
            animation-delay: 4.6s !important; }
  .index__contents__lead svg path:nth-of-type(27) {
    -webkit-animation-delay: 4.75s !important;
            animation-delay: 4.75s !important; }
  .index__contents__lead svg path:nth-of-type(28) {
    -webkit-animation-delay: 4.9s !important;
            animation-delay: 4.9s !important; }
  .index__contents__lead svg path:nth-of-type(29) {
    -webkit-animation-delay: 5.05s !important;
            animation-delay: 5.05s !important; }
  .index__contents__lead svg path:nth-of-type(30) {
    -webkit-animation-delay: 5.2s !important;
            animation-delay: 5.2s !important; }
  .index__contents__lead svg path:nth-of-type(31) {
    -webkit-animation-delay: 5.35s !important;
            animation-delay: 5.35s !important; }
  .index__contents__lead svg path:nth-of-type(32) {
    -webkit-animation-delay: 5.5s !important;
            animation-delay: 5.5s !important; }
  .index__contents__lead svg path:nth-of-type(33) {
    -webkit-animation-delay: 5.65s !important;
            animation-delay: 5.65s !important; }
  .index__contents__lead svg path:nth-of-type(34) {
    -webkit-animation-delay: 5.8s !important;
            animation-delay: 5.8s !important; }
  .index__contents__lead svg path:nth-of-type(35) {
    -webkit-animation-delay: 5.95s !important;
            animation-delay: 5.95s !important; }
  .index__contents__lead svg path:nth-of-type(36) {
    -webkit-animation-delay: 6.1s !important;
            animation-delay: 6.1s !important; }
  .index__contents__lead svg path:nth-of-type(37) {
    -webkit-animation-delay: 6.25s !important;
            animation-delay: 6.25s !important; }
  .index__contents__lead svg path:nth-of-type(38) {
    -webkit-animation-delay: 6.4s !important;
            animation-delay: 6.4s !important; }
  .index__contents__lead svg path:nth-of-type(39) {
    -webkit-animation-delay: 6.55s !important;
            animation-delay: 6.55s !important; }
  .index__contents__lead svg path:nth-of-type(40) {
    -webkit-animation-delay: 6.7s !important;
            animation-delay: 6.7s !important; }

body:not(.msie) .index__contents__lead svg .cls-2 {
  stroke-dasharray: 3000;
  stroke-dashoffset: 3000; }

.index__contents__text {
  font-size: 14px;
  line-height: 34px;
  width: auto;
  max-width: 445px; }

.index__contents__link {
  display: block;
  width: 173px;
  height: 64px;
  background-color: #00a0e9;
  position: absolute;
  bottom: -32px;
  text-decoration: none; }
  .index__contents__link span {
    position: relative;
    box-sizing: border-box;
    display: block;
    width: 100%;
    height: 100%;
    color: #FFF;
    font-size: 16px;
    text-decoration: none;
    line-height: 64px;
    padding: 0 0 0 21px;
    z-index: 1;
    transition: opacity 0.1s linear; }
    .index__contents__link span:before {
      content: "";
      display: block;
      width: 21px;
      height: 38px;
      background-image: url(images/link_arrow_w.png);
      background-size: 21px 38px;
      background-position: center;
      background-repeat: no-repeat;
      position: absolute;
      top: 50%;
      right: 7px;
      margin-top: -19px; }
  .index__contents__link:hover span {
    transition-duration: 0s;
    opacity: 0.5;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }
  .index__contents__link:before {
    content: "";
    display: block;
    width: calc(100% + 20px);
    height: 100%;
    position: absolute;
    left: 0px;
    top: 0px;
    -webkit-transform-origin: center;
        -ms-transform-origin: center;
            transform-origin: center;
    -webkit-transform: skew(-17.2deg) translateX(-10px);
        -ms-transform: skew(-17.2deg) translateX(-10px);
            transform: skew(-17.2deg) translateX(-10px);
    background-color: #00a0e9;
    z-index: 0; }

.index__contents.wipein .index__contents__image:before {
  width: 0%; }

.index__contents.wipein .index__contents__title {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  -webkit-transform: translateX(0px) !important;
      -ms-transform: translateX(0px) !important;
          transform: translateX(0px) !important; }
  .index__contents.wipein .index__contents__title span {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -webkit-transform: translateX(0px) !important;
        -ms-transform: translateX(0px) !important;
            transform: translateX(0px) !important; }

.index__contents.wipein .index__contents__lead {
  margin: 30px 0 15px 15px; }
  .index__contents.wipein .index__contents__lead svg .cls-2 {
    -webkit-animation: DASH 3s ease-in 0s forwards;
            animation: DASH 3s ease-in 0s forwards; }

.index__contents:nth-of-type(odd) {
  padding-left: calc(52.3611% - 135px); }
  .index__contents:nth-of-type(odd) .index__contents__image {
    left: 0px; }
    .index__contents:nth-of-type(odd) .index__contents__image:before {
      right: 0px; }
    .index__contents:nth-of-type(odd) .index__contents__image:after {
      right: 100%;
      transition: right 0.75s cubic-bezier(0.19, 1, 0.22, 1);
      border-width: 0 0 430px 135px;
      border-color: transparent transparent #FFF transparent; }
  .index__contents:nth-of-type(odd).wipein .index__contents__image:after {
    right: 0%; }
  .index__contents:nth-of-type(odd) .index__contents__body {
    margin-right: auto; }
  .index__contents:nth-of-type(odd) .index__contents__link {
    left: calc(52.3611% - 215px); }

.index__contents:nth-of-type(even) {
  padding-right: calc(52.3611% - 135px); }
  .index__contents:nth-of-type(even) .index__contents__title {
    -webkit-transform: translateX(20px);
        -ms-transform: translateX(20px);
            transform: translateX(20px); }
    .index__contents:nth-of-type(even) .index__contents__title span {
      -webkit-transform: translateX(30px);
          -ms-transform: translateX(30px);
              transform: translateX(30px); }
  .index__contents:nth-of-type(even) .index__contents__image {
    right: 0px; }
    .index__contents:nth-of-type(even) .index__contents__image:before {
      left: 0px; }
    .index__contents:nth-of-type(even) .index__contents__image:after {
      left: 100%;
      transition: left 0.75s cubic-bezier(0.19, 1, 0.22, 1);
      border-width: 430px 135px 0 0;
      border-color: #FFF transparent transparent transparent; }
  .index__contents:nth-of-type(even).wipein .index__contents__image:after {
    left: 0%; }
  .index__contents:nth-of-type(even) .index__contents__body {
    margin-left: auto; }
  .index__contents:nth-of-type(even) .index__contents__link {
    right: calc(52.3611% - 85px); }

.index__base {
  width: 100%;
  height: 117px;
  font-size: 0px;
  text-align: center;
  margin: 150px auto 180px; }

.index__base__label {
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  padding: 35px 50px 35px 0;
  position: relative;
  z-index: 1; }
  .index__base__label span {
    display: block;
    text-align: right; }
  .index__base__label:before {
    content: "";
    display: block;
    width: 132px;
    height: 117px;
    background-size: 132px 117px;
    position: absolute;
    left: 0px;
    top: 0px; }
  .index__base__label:after {
    content: "";
    display: block;
    width: 21px;
    height: 38px;
    background-image: url(images/link_arrow_b.png);
    background-size: 21px 38px;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 50%;
    margin-top: -20px;
    right: 6px; }

.index__base__label__title {
  font-size: 24px;
  color: #00a0e9; }

.index__base__label__sub {
  font-size: 18px;
  line-height: 24px;
  color: #000; }

.index__base__domestic,
.index__base__overseas {
  display: inline-block;
  position: relative;
  width: 316px;
  height: 117px;
  margin: 0 36px;
  text-decoration: none; }
  .index__base__domestic:before,
  .index__base__overseas:before {
    content: "";
    display: block;
    box-sizing: border-box;
    width: calc(100% + 36px);
    height: 100%;
    border: 1px solid #e5e5e5;
    -webkit-transform: skew(-17.2deg) translateX(-18px);
        -ms-transform: skew(-17.2deg) translateX(-18px);
            transform: skew(-17.2deg) translateX(-18px);
    position: absolute;
    left: 0px;
    top: 0px;
    z-index: 0; }

.index__base__domestic .index__base__label {
  transition: opacity 0.1s linear; }
  .index__base__domestic .index__base__label:before {
    background-image: url(images/base_bg_domestic.png); }

.index__base__domestic:hover .index__base__label {
  transition-duration: 0s;
  opacity: 0.5;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }

.index__base__overseas .index__base__label {
  transition: opacity 0.1s linear; }
  .index__base__overseas .index__base__label:before {
    background-image: url(images/base_bg_overseas.png); }

.index__base__overseas:hover .index__base__label {
  transition-duration: 0s;
  opacity: 0.5;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }

@media screen and (max-width: 1060px) {
  .index__contents:nth-of-type(odd) .index__contents__body__block {
    margin-left: 40px; }
  .index__contents:nth-of-type(even) .index__contents__body__block {
    margin-right: 40px; } }

@media screen and (max-width: 986px) {
  .haeder--index .header__hero__lead svg {
    width: 475.47px;
    height: 89.1px;
    bottom: 32px;
    left: 92px; } }

@media screen and (max-width: 960px) {
  .haeder--index .header__skewnav {
    width: 100%;
    overflow: scroll;
    -webkit-overflow-scrolling: touch; }
    .haeder--index .header__skewnav ul {
      width: 960px;
      overflow: hidden;
      margin: 0 0 0 auto;
      z-index: 1; }
  .haeder--index .header__skewnav ul {
    width: 960px; }
  .haeder--index .header__skewnav ul li:nth-of-type(1),
  .haeder--index .header__skewnav ul li:nth-of-type(2),
  .haeder--index .header__skewnav ul li:nth-of-type(3) {
    width: 20.2%; }
  .haeder--index .header__skewnav ul li:nth-of-type(4) {
    width: 15.6%; }
  .haeder--index .header__skewnav ul li a.active:before {
    width: 100%;
    left: 14px; }
  .haeder--index .header__skewnav ul li a.active:after {
    content: "";
    display: block;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 0 0 15px 15px;
    border-color: transparent transparent #00a0e9 transparent;
    position: absolute;
    left: -1px;
    bottom: 0px; }
  .index__contents__image {
    width: 42%; }
  .index__contents:nth-of-type(odd) {
    padding-left: calc(42% - 135px); }
    .index__contents:nth-of-type(odd) .index__contents__link {
      left: calc(42% - 215px); }
    .index__contents:nth-of-type(odd) .index__contents__body__block {
      padding-left: 50px;
      padding-right: 20px; }
  .index__contents:nth-of-type(even) {
    padding-right: calc(42% - 135px); }
    .index__contents:nth-of-type(even) .index__contents__link {
      right: calc(42% - 85px); }
    .index__contents:nth-of-type(even) .index__contents__body__block {
      padding-left: 20px; }
  .index__base__domestic,
  .index__base__overseas {
    width: 290px; }
    .index__base__domestic .index__base__label,
    .index__base__overseas .index__base__label {
      padding-right: 40px; } }

@media screen and (max-width: 767px) {
  .haeder--index {
    height: 440px !important; }
    .haeder--index .header__hero {
      height: calc(100% - 40px); }
    .haeder--index .header__hero__lead svg {
      width: 293.5px;
      height: 55px;
      display: block;
      position: absolute;
      bottom: 16px;
      left: 48px; }
      .haeder--index .header__hero__lead svg .cls-1 {
        stroke-width: 1.5; }
    .haeder--index .header__hero__lead p {
      font-size: 9px;
      line-height: 12px;
      left: 8px;
      bottom: -2px;
      text-indent: 12px; }
      .haeder--index .header__hero__lead p br {
        display: block; }
    .haeder--index .header__hero:after {
      content: "";
      display: block;
      width: 50%;
      max-width: 400px;
      height: 77px;
      position: absolute;
      background-color: #FFF;
      position: absolute;
      bottom: -40px;
      right: 0px;
      z-index: 0; }
    .haeder--index .header__skewnav {
      width: 100%;
      height: 77px;
      overflow: scroll;
      -webkit-overflow-scrolling: touch;
      bottom: 0px; }
      .haeder--index .header__skewnav ul {
        width: 519px;
        padding-left: 16px;
        overflow: hidden;
        margin: 0 0 0 auto;
        z-index: 1; }
      .haeder--index .header__skewnav ul li {
        height: 77px;
        padding-left: 71px;
        margin-left: -71px; }
        .haeder--index .header__skewnav ul li:nth-of-type(1) {
          width: 119px; }
        .haeder--index .header__skewnav ul li:nth-of-type(2) {
          width: 119px; }
        .haeder--index .header__skewnav ul li:nth-of-type(3) {
          width: 119px; }
        .haeder--index .header__skewnav ul li:nth-of-type(4) {
          width: 91px; }
          .haeder--index .header__skewnav ul li:nth-of-type(4) a span {
            right: 7px; }
      .haeder--index .header__skewnav ul li a span {
        font-size: 12px;
        top: 6px;
        right: 24px; }
      .haeder--index .header__skewnav ul li a:before {
        height: 6px;
        right: 5px; }
      .haeder--index .header__skewnav ul li a.active span {
        display: block; }
      .haeder--index .header__skewnav ul li a.active:before {
        width: 100%;
        left: 5px; }
      .haeder--index .header__skewnav ul li a.active:after {
        content: "";
        display: block;
        width: 0px;
        height: 0px;
        border-style: solid;
        border-width: 0 0 6px 6px;
        border-color: transparent transparent #00a0e9 transparent;
        position: absolute;
        left: -1px;
        bottom: 0px; }
    .haeder--index .header__scroll {
      display: none; }
  .index__news {
    width: 100%;
    height: auto;
    margin: 40px auto 70px; }
  .index__news__list {
    margin: 15px 16px 0; }
    .index__news__list ul li {
      border-bottom: 1px solid #DDE4F0; }
      .index__news__list ul li:before {
        display: none; }
    .index__news__list a {
      box-sizing: border-box;
      padding: 8px 10px; }
      .index__news__list a:after {
        right: 8px; }
  .index__news__list__date {
    position: relative;
    padding: 0; }
  .index__news__list__title {
    padding: 0;
    border-bottom: 0px; }
    .index__news__list__title:before {
      display: none; }
  .index__section {
    min-width: auto;
    min-width: initial; }
  .index__contents,
  .index__contents:nth-of-type(odd),
  .index__contents:nth-of-type(even) {
    width: 100%;
    height: auto;
    margin: 60px 0;
    padding: 0; }
  .index__contents__image {
    height: 160px;
    width: calc(100% - 40px);
    top: 70px; }
  .index__contents__body {
    width: 100%;
    max-width: auto;
    max-width: initial;
    height: auto;
    overflow: hidden; }
    .index__contents__body:before {
      display: none; }
  .index__contents__body__block {
    max-width: auto;
    max-width: initial;
    padding: 270px 16px 0 !important;
    margin: 0 !important; }
  .index__contents__title {
    width: 100%;
    position: absolute;
    left: 0px;
    top: 0px;
    margin: 0px;
    text-align: center; }
    .index__contents__title span {
      text-align: center;
      margin: 2px 0 0 0; }
  .index__contents__link {
    width: 95px;
    height: 44px;
    position: absolute;
    top: 208px; }
    .index__contents__link span {
      font-size: 12px;
      line-height: 44px; }
      .index__contents__link span:before {
        width: 13px;
        height: 24px;
        background-size: 13px 24px;
        right: 5px;
        margin-top: -12px; }
  .index__contents__lead {
    margin: 0 0 10px !important; }
    .index__contents__lead svg {
      width: auto;
      height: 100%; }
  .index__contents__text {
    font-size: 14px;
    line-height: 26px;
    width: auto;
    max-width: auto;
    max-width: initial; }
  .index__contents:nth-of-type(odd) .index__contents__image:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 160px 50px;
    border-color: transparent transparent #FFF transparent;
    position: absolute;
    right: 100%;
    top: 0px; }
  .index__contents:nth-of-type(odd) .index__contents__link {
    left: auto;
    right: 34px; }
  .index__contents:nth-of-type(even) .index__contents__image:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 160px 50px 0 0;
    border-color: #FFF transparent transparent transparent;
    position: absolute;
    left: 100%;
    top: 0px; }
  .index__contents:nth-of-type(even) .index__contents__link {
    right: auto;
    left: 34px; }
  .index__contents:nth-of-type(1) .index__contents__lead {
    width: 100% !important;
    height: 90px !important; }
  .index__contents:nth-of-type(2) .index__contents__lead,
  .index__contents:nth-of-type(3) .index__contents__lead,
  .index__contents:nth-of-type(4) .index__contents__lead {
    width: 100% !important;
    height: 60px !important; }
  .index__base {
    height: auto;
    margin: 70px auto 70px; }
  .index__base__label {
    padding: 19px 30px 20px 0; }
    .index__base__label:before {
      width: 87px;
      height: 77px;
      background-size: 87px 77px; }
    .index__base__label:after {
      width: 14px;
      height: 26px;
      background-size: 14px 26px;
      margin-top: -14px; }
  .index__base__label__title {
    font-size: 19px;
    line-height: 20px; }
  .index__base__label__sub {
    font-size: 14px;
    line-height: 18px; }
  .index__base__domestic,
  .index__base__overseas {
    display: block;
    margin: 10px auto;
    width: 240px;
    height: 77px; } }

.company .header__hero {
  background-image: url(images/company_head_bg.jpg); }

.company__lead {
  width: 100%;
  width: calc(100% - 40px);
  max-width: 768px;
  height: auto;
  margin: 90px auto 120px; }

.company__lead__main {
  width: 735px;
  height: 115px; }

.company__lead__sub {
  font-size: 14px;
  line-height: 34px;
  margin-top: 30px; }

.company__section, .company__section--philosophy, .company__section--overview, .company__section--history {
  margin-bottom: 170px; }

.company__section__visual {
  margin-top: 30px; }

.company__section__body {
  width: 100%;
  width: calc(100% - 40px);
  max-width: 920px;
  height: auto;
  margin: 90px auto 0; }

.company__section__body__philoutline {
  position: relative;
  width: 100%;
  max-width: 960px;
  height: 530px;
  overflow: hidden; }
  .company__section__body__philoutline img {
    display: block;
    position: absolute;
    left: 50%;
    top: 0px;
    margin-left: -480px; }
  .company__section__body__philoutline p {
    font-size: 14px;
    line-height: 28px;
    position: absolute; }
    .company__section__body__philoutline p strong {
      font-size: 18px;
      line-height: 32px; }
  .company__section__body__philoutline__a, .company__section__body__philoutline__c {
    text-align: right; }
  .company__section__body__philoutline__a {
    top: 76px;
    left: 06%; }
  .company__section__body__philoutline__b {
    top: 36px;
    left: 61%; }
  .company__section__body__philoutline__c {
    top: 377px;
    left: 02%; }
  .company__section__body__philoutline__d {
    top: 347px;
    left: 68%; }

.company__section__body__heading {
  font-size: 36px;
  width: 100%;
  max-width: 768px;
  margin: 95px auto 25px; }

.company__section__body__parag {
  font-size: 14px;
  line-height: 34px;
  width: 100%;
  max-width: 768px;
  margin: 0 auto 0; }

.company__section__body__deflsit {
  width: 100%;
  max-width: 768px;
  margin: 0 auto; }
  .company__section__body__deflsit > dd:after {
    content: "";
    display: block;
    width: 0px;
    height: 0px;
    float: none;
    clear: both;
    visibility: hidden; }

.company__section__body__deflsit__half {
  width: 46.6087%;
  margin-right: 7.3%;
  float: left; }

.company__section__body__deflsit__fig {
  width: 46.087%;
  float: left; }
  .company__section__body__deflsit__fig > div {
    font-size: 13px;
    line-height: 24px;
    color: #808080;
    margin-bottom: 24px; }
    .company__section__body__deflsit__fig > div img {
      display: block;
      margin-bottom: 4px; }

.company__section--overview .company__section__body > dl > dd > dl dt {
  float: left;
  clear: both;
  width: 76%; }

.company__section--overview .company__section__body > dl > dd > dl dd {
  float: left;
  width: 24%; }

.company__section--overview .company__section__body > dl > dd > dl > dt:first-of-type,
.company__section--overview .company__section__body > dl > dd > dl > dd:first-of-type {
  float: none;
  width: 100%; }

.company__section--overview .company__section__body > dl > dd > dl > dd > dl > dt {
  box-sizing: border-box;
  padding-left: 1em; }

@media screen and (max-width: 767px) {
  .company__lead {
    width: auto;
    height: auto;
    margin: 45px 15px 40px; }
  .company__lead__main {
    width: 100%;
    max-width: 367px;
    height: auto;
    margin: 0; }
    .company__lead__main svg {
      width: 100%;
      height: auto; }
  .company__lead__sub {
    font-size: 14px;
    line-height: 26px;
    margin-top: 12px; }
  .company__section, .company__section--philosophy, .company__section--overview, .company__section--history {
    margin-bottom: 70px; }
  .company__section__visual {
    margin-top: 20px; }
  .company__section__body {
    width: auto;
    height: auto;
    margin: 30px auto 0; }
  .company__section__body__heading {
    font-size: 24px;
    line-height: 34px;
    width: auto;
    margin: 30px 15px 15px; }
  .company__section__body__parag {
    line-height: 24px;
    width: auto;
    margin: 0 15px 0; }
  .company__section__body__philoutline {
    box-sizing: border-box;
    width: 100%;
    height: auto;
    padding: 243px 16px 0;
    background-image: url(images/company_philosophy_sp.png);
    background-size: 320px 243px;
    background-position: center top;
    background-repeat: no-repeat; }
    .company__section__body__philoutline:after {
      content: "";
      display: block;
      width: 0px;
      height: 0px;
      float: none;
      clear: both;
      visibility: hidden; }
    .company__section__body__philoutline img {
      display: none; }
    .company__section__body__philoutline p {
      position: relative;
      left: auto;
      top: auto;
      text-align: left;
      width: calc(50% - 11px);
      height: auto;
      float: left;
      margin: 20px 0 0;
      font-size: 12px;
      line-height: 21px; }
      .company__section__body__philoutline p strong {
        display: block;
        font-size: 12px;
        line-height: 21px; }
      .company__section__body__philoutline p br {
        display: none; }
      .company__section__body__philoutline p:nth-of-type(odd) {
        clear: both;
        margin-right: 22px; }
  .company__section__body__deflsit {
    width: auto;
    margin: 0 15px; }
  .company__section__body__deflsit__half {
    width: 100%;
    margin-right: 0px;
    float: none; }
    .company__section__body__deflsit__half:after {
      content: "";
      display: block;
      width: 0px;
      height: 0px;
      float: none;
      clear: both;
      visibility: hidden; }
  .company__section__body__deflsit__fig {
    position: relative;
    width: 100%;
    float: none;
    margin-top: 15px; }
    .company__section__body__deflsit__fig:after {
      content: "";
      display: block;
      width: 0px;
      height: 0px;
      float: none;
      clear: both;
      visibility: hidden; }
    .company__section__body__deflsit__fig > div {
      font-size: 13px;
      line-height: 16px;
      color: #808080;
      width: calc(50% - 10px);
      float: left;
      margin-bottom: 10px; }
      .company__section__body__deflsit__fig > div:nth-of-type(odd) {
        clear: both;
        margin-right: 10px; }
      .company__section__body__deflsit__fig > div:nth-last-of-type(1), .company__section__body__deflsit__fig > div:nth-last-of-type(2) {
        margin-bottom: 0px; }
      .company__section__body__deflsit__fig > div img {
        display: block;
        width: 100%;
        height: auto;
        margin-bottom: 4px; } }

.manufacturing .header__hero {
  background-image: url(images/manufacturing_head_bg.jpg); }

.manufacturing__lead {
  width: 100%;
  width: calc(100% - 40px);
  max-width: 768px;
  height: auto;
  margin: 90px auto 50px; }

.manufacturing__lead__main {
  width: 617px;
  height: 115px; }

.manufacturing__lead__sub {
  font-size: 14px;
  line-height: 34px;
  margin-top: 30px; }

.manufacturing__flow {
  width: calc(100% - 20px);
  max-width: 960px;
  margin: 0 auto 120px; }
  .manufacturing__flow p {
    width: 100%;
    max-width: 768px;
    margin: 0 auto;
    font-size: 14px;
    line-height: 34px; }

.manufacturing__flow__fig {
  width: 100%;
  height: 695px;
  position: relative;
  margin-bottom: 50px;
  background-image: url(images/manufacture_flow.png);
  background-size: 960px 695px;
  background-repeat: no-repeat;
  background-position: center; }

.manufacturing__flow__fig__link, .manufacturing__flow__fig__link--plan, .manufacturing__flow__fig__link--design, .manufacturing__flow__fig__link--prototype, .manufacturing__flow__fig__link--mould, .manufacturing__flow__fig__link--press, .manufacturing__flow__fig__link--assemble, .manufacturing__flow__fig__link--plastic, .manufacturing__flow__fig__link--process, .manufacturing__flow__fig__link--warranty {
  display: block;
  box-sizing: border-box;
  width: 47%;
  height: 55px;
  border: 1px solid #b2e2f8;
  background-color: #FFF;
  font-size: 18px;
  color: #000;
  text-decoration: none;
  text-align: center;
  line-height: 53px;
  position: absolute; }
  .manufacturing__flow__fig__link span, .manufacturing__flow__fig__link--plan span, .manufacturing__flow__fig__link--design span, .manufacturing__flow__fig__link--prototype span, .manufacturing__flow__fig__link--mould span, .manufacturing__flow__fig__link--press span, .manufacturing__flow__fig__link--assemble span, .manufacturing__flow__fig__link--plastic span, .manufacturing__flow__fig__link--process span, .manufacturing__flow__fig__link--warranty span {
    transition: opacity 0.1s linear;
    white-space: nowrap; }
    .manufacturing__flow__fig__link span:before, .manufacturing__flow__fig__link--plan span:before, .manufacturing__flow__fig__link--design span:before, .manufacturing__flow__fig__link--prototype span:before, .manufacturing__flow__fig__link--mould span:before, .manufacturing__flow__fig__link--press span:before, .manufacturing__flow__fig__link--assemble span:before, .manufacturing__flow__fig__link--plastic span:before, .manufacturing__flow__fig__link--process span:before, .manufacturing__flow__fig__link--warranty span:before {
      content: "";
      display: inline-block;
      width: 15px;
      height: 13px;
      background-image: url(images/products_map_arrow.png);
      background-size: 15px 13px;
      position: relative;
      vertical-align: middle;
      margin-right: 12px;
      transition: opacity 0.1s linear; }
  .manufacturing__flow__fig__link:hover span, .manufacturing__flow__fig__link--plan:hover span, .manufacturing__flow__fig__link--design:hover span, .manufacturing__flow__fig__link--prototype:hover span, .manufacturing__flow__fig__link--mould:hover span, .manufacturing__flow__fig__link--press:hover span, .manufacturing__flow__fig__link--assemble:hover span, .manufacturing__flow__fig__link--plastic:hover span, .manufacturing__flow__fig__link--process:hover span, .manufacturing__flow__fig__link--warranty:hover span, .manufacturing__flow__fig__link:hover:before, .manufacturing__flow__fig__link--plan:hover:before, .manufacturing__flow__fig__link--design:hover:before, .manufacturing__flow__fig__link--prototype:hover:before, .manufacturing__flow__fig__link--mould:hover:before, .manufacturing__flow__fig__link--press:hover:before, .manufacturing__flow__fig__link--assemble:hover:before, .manufacturing__flow__fig__link--plastic:hover:before, .manufacturing__flow__fig__link--process:hover:before, .manufacturing__flow__fig__link--warranty:hover:before {
    transition-duration: 0s;
    opacity: 0.5;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }

.manufacturing__flow__fig__link--plan:before,
.manufacturing__flow__fig__link--mould:before {
  content: "";
  display: block;
  width: 50%;
  height: 17px;
  border-style: solid;
  border-color: #ccc;
  background-color: #FFF;
  position: absolute;
  bottom: -38px; }

.manufacturing__flow__fig__link--plan:before {
  border-width: 0 1px 0 0;
  left: 0px; }

.manufacturing__flow__fig__link--mould:before {
  border-width: 0 0 0 1px;
  right: 0px; }

.manufacturing__flow__fig__link--plan:after,
.manufacturing__flow__fig__link--design:after,
.manufacturing__flow__fig__link--prototype:after {
  content: "";
  display: block;
  width: 15px;
  height: 20px;
  background-image: url(images/manufacture_flow_arrow.png);
  background-size: 15px 20px;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  margin-top: -10px;
  right: -17.5%; }

.manufacturing__flow__fig__link--design:after {
  margin-right: -3px; }

.manufacturing__flow__fig__link--plan {
  top: 54px;
  left: 0%;
  width: 21%; }

.manufacturing__flow__fig__link--design {
  top: 54px;
  left: 26%;
  width: 21%; }

.manufacturing__flow__fig__link--prototype {
  top: 54px;
  left: 53%;
  width: 21%; }

.manufacturing__flow__fig__link--mould {
  top: 54px;
  left: 79%;
  width: 21%; }

.manufacturing__flow__fig__link--press {
  top: 249px;
  left: 26%; }

.manufacturing__flow__fig__link--assemble {
  top: 462px;
  left: 26%; }

.manufacturing__flow__fig__link--plastic {
  top: 356px;
  left: 53%; }

.manufacturing__flow__fig__link--process {
  top: 356px;
  left: 0%; }

.manufacturing__flow__fig__link--warranty {
  top: 640px;
  left: 26%; }

.manufacturing__section, .manufacturing__section--project,
.manufacturing__section--production,
.manufacturing__section--quality {
  margin-bottom: 170px; }

.manufacturing__section__visual {
  margin-top: 30px; }

.manufacturing__section__body {
  width: 100%;
  max-width: 960px;
  height: auto;
  margin: 0 auto 0;
  overflow: hidden; }

.manufacturing__section__lead {
  font-size: 14px;
  line-height: 34px;
  width: 100%;
  width: calc(100% - 40px);
  max-width: 768px;
  margin: 90px auto; }

.manufacturing__section__block {
  box-sizing: border-box;
  width: 100%;
  width: calc(100% - 40px);
  max-width: 768px;
  height: auto;
  padding: 76px 40px 40px;
  margin: 0 auto;
  background-color: #f8f8f8;
  position: relative;
  z-index: 0; }
  .manufacturing__section__block:after {
    content: "";
    display: block;
    width: 0px;
    height: 0px;
    float: none;
    clear: both;
    visibility: hidden; }
  .manufacturing__section__block img {
    display: block;
    float: right;
    margin-left: 40px; }
  .manufacturing__section__block p {
    font-size: 14px;
    line-height: 34px;
    position: relative;
    top: -6px; }

.manufacturing__section__content {
  position: relative;
  width: 100%;
  height: auto;
  margin: 70px auto; }
  .manufacturing__section__content h4 {
    display: block;
    width: 214px;
    height: 66px;
    position: absolute;
    top: -33px;
    left: 50%;
    margin-left: -440px;
    z-index: 1; }
    .manufacturing__section__content h4 span {
      display: block;
      position: relative;
      z-index: 1;
      font-size: 18px;
      color: #FFF;
      text-align: center;
      line-height: 66px; }
    .manufacturing__section__content h4:before {
      content: "";
      display: block;
      width: calc(100% + 24px);
      height: 100%;
      background-color: #00a0e9;
      position: absolute;
      left: -12px;
      top: 0px;
      -webkit-transform: skew(-17.2deg);
          -ms-transform: skew(-17.2deg);
              transform: skew(-17.2deg); }
  .manufacturing__section__content:nth-of-type(even) h4 {
    left: auto;
    right: 50%;
    margin-left: 0px;
    margin-right: -440px; }
  .manufacturing__section__content:nth-of-type(even) .manufacturing__section__block img {
    float: left;
    margin-left: 0px;
    margin-right: 40px; }
  .manufacturing__section__content:last-of-type {
    margin-bottom: 0px; }

@media screen and (max-width: 940px) {
  .manufacturing__section__content h4 {
    margin-left: 0px;
    left: 30px; }
  .manufacturing__section__content:nth-of-type(even) h4 {
    margin-right: 0px;
    right: 30px; } }

@media screen and (max-width: 767px) {
  .manufacturing__lead {
    width: auto;
    height: auto;
    margin: 45px 15px 40px; }
  .manufacturing__lead__main {
    width: 100%;
    max-width: 308px;
    height: auto; }
    .manufacturing__lead__main svg {
      width: 100%;
      height: auto; }
  .manufacturing__lead__sub {
    font-size: 14px;
    line-height: 26px;
    margin-top: 12px; }
  .manufacturing__flow {
    width: 100%;
    margin: 0 auto 70px; }
    .manufacturing__flow p {
      width: auto;
      margin: 0 16px;
      font-size: 14px;
      line-height: 26px; }
  .manufacturing__flow__fig {
    width: auto;
    height: 573px;
    margin: 0 15px;
    margin-bottom: 20px;
    background-image: url(images/manufacture_flow_sp.png);
    background-size: 291px 573px; }
  .manufacturing__flow__fig__link, .manufacturing__flow__fig__link--plan, .manufacturing__flow__fig__link--design, .manufacturing__flow__fig__link--prototype, .manufacturing__flow__fig__link--mould, .manufacturing__flow__fig__link--press, .manufacturing__flow__fig__link--assemble, .manufacturing__flow__fig__link--plastic, .manufacturing__flow__fig__link--process, .manufacturing__flow__fig__link--warranty {
    width: calc(50% - 21px);
    height: 44px;
    font-size: 13px;
    line-height: 42px;
    left: auto;
    top: auto; }
    .manufacturing__flow__fig__link span:before, .manufacturing__flow__fig__link--plan span:before, .manufacturing__flow__fig__link--design span:before, .manufacturing__flow__fig__link--prototype span:before, .manufacturing__flow__fig__link--mould span:before, .manufacturing__flow__fig__link--press span:before, .manufacturing__flow__fig__link--assemble span:before, .manufacturing__flow__fig__link--plastic span:before, .manufacturing__flow__fig__link--process span:before, .manufacturing__flow__fig__link--warranty span:before {
      margin-right: 8px; }
  .manufacturing__flow__fig__link--plan:before,
  .manufacturing__flow__fig__link--mould:before {
    display: none; }
  .manufacturing__flow__fig__link--plan:after,
  .manufacturing__flow__fig__link--design:after,
  .manufacturing__flow__fig__link--prototype:after {
    display: none; }
  .manufacturing__flow__fig__link--plan {
    top: 40px;
    left: 1px; }
  .manufacturing__flow__fig__link--design {
    top: 40px;
    right: 1px; }
  .manufacturing__flow__fig__link--prototype {
    top: 109px;
    left: 1px; }
  .manufacturing__flow__fig__link--mould {
    top: 109px;
    right: 1px; }
  .manufacturing__flow__fig__link--press {
    top: 245px;
    left: 1px;
    width: 100%; }
  .manufacturing__flow__fig__link--assemble {
    top: 405px;
    left: 1px;
    width: 100%; }
  .manufacturing__flow__fig__link--plastic {
    top: 325px;
    right: 1px; }
  .manufacturing__flow__fig__link--process {
    top: 325px;
    left: 1px; }
  .manufacturing__flow__fig__link--warranty {
    top: 529px;
    left: 1px;
    width: 100%; }
  .manufacturing__section, .manufacturing__section--project,
  .manufacturing__section--production,
  .manufacturing__section--quality {
    margin-bottom: 70px; }
  .manufacturing__section__visual {
    margin-top: 20px; }
  .manufacturing__section__body {
    width: auto;
    height: auto;
    margin: 0 auto 0; }
  .manufacturing__section__lead {
    font-size: 14px;
    line-height: 26px;
    width: auto;
    margin: 20px 16px 30px; }
  .manufacturing__section__block {
    width: auto;
    height: auto;
    padding: 40px 16px 30px; }
    .manufacturing__section__block img {
      display: block;
      float: none;
      width: auto;
      max-width: 100%;
      margin: 0 auto; }
    .manufacturing__section__block p {
      font-size: 14px;
      line-height: 26px;
      top: 0px;
      margin-top: 12px; }
  .manufacturing__section__content {
    width: auto;
    height: auto;
    margin: 40px 16px; }
    .manufacturing__section__content:last-of-type {
      margin-bottom: 0px; }
    .manufacturing__section__content h4 {
      width: 172px;
      height: 44px;
      top: -22px;
      left: 30px; }
      .manufacturing__section__content h4 span {
        font-size: 14px;
        line-height: 44px; }
    .manufacturing__section__content:nth-of-type(even) h4 {
      left: auto;
      right: 30px; }
    .manufacturing__section__content:nth-of-type(even) .manufacturing__section__block img {
      float: none;
      margin: 0 auto; } }

.products .header__hero {
  background-image: url(images/products_head_bg.jpg); }

.products .header__hero__lead:before {
  background-image: url(images/header_slash_bk.png); }

.products__lead {
  width: 100%;
  width: calc(100% - 40px);
  max-width: 768px;
  height: auto;
  margin: 90px auto 50px; }

.products__lead__main {
  width: 641px;
  height: 115px; }

.products__lead__sub {
  font-size: 14px;
  line-height: 34px;
  margin-top: 30px; }

.products__map {
  position: relative;
  width: 100%;
  width: calc(100% - 40px);
  max-width: 960px;
  height: auto;
  margin: 50px auto 90px; }
  .products__map > div {
    width: 100%;
    height: 0px;
    padding-top: 62.5%;
    background-image: url(images/products_map.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat; }

.products__map__link, .products__map__link--1, .products__map__link--2, .products__map__link--3, .products__map__link--4, .products__map__link--5, .products__map__link--6 {
  display: block;
  box-sizing: border-box;
  width: 32.2917%;
  height: 55px;
  border: 1px solid #b2e2f8;
  background-color: #FFF;
  font-size: 13px;
  color: #000;
  text-decoration: none;
  text-align: center;
  line-height: 53px;
  position: absolute; }
  .products__map__link:before, .products__map__link--1:before, .products__map__link--2:before, .products__map__link--3:before, .products__map__link--4:before, .products__map__link--5:before, .products__map__link--6:before {
    content: "";
    display: inline-block;
    width: 15px;
    height: 13px;
    background-image: url(images/products_map_arrow.png);
    background-size: 15px 13px;
    position: relative;
    vertical-align: middle;
    margin-right: 8px;
    transition: opacity 0.1s linear; }
  .products__map__link span, .products__map__link--1 span, .products__map__link--2 span, .products__map__link--3 span, .products__map__link--4 span, .products__map__link--5 span, .products__map__link--6 span {
    transition: opacity 0.1s linear; }
  .products__map__link:hover span, .products__map__link--1:hover span, .products__map__link--2:hover span, .products__map__link--3:hover span, .products__map__link--4:hover span, .products__map__link--5:hover span, .products__map__link--6:hover span, .products__map__link:hover:before, .products__map__link--1:hover:before, .products__map__link--2:hover:before, .products__map__link--3:hover:before, .products__map__link--4:hover:before, .products__map__link--5:hover:before, .products__map__link--6:hover:before {
    transition-duration: 0s;
    opacity: 0.5;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }

.products__map__link--1 {
  top: 0px;
  left: 54%; }

.products__map__link--2 {
  top: 15%;
  left: 20%; }

.products__map__link--3 {
  top: 72%;
  left: 58%; }

.products__map__link--4 {
  top: 90%;
  left: 44%; }

.products__map__link--5 {
  top: 32%;
  left: 0%; }

.products__map__link--6 {
  top: 22%;
  left: 68%; }

.products__body {
  width: 100%;
  max-width: 960px;
  height: auto;
  margin: 0 auto;
  overflow: hidden; }

.products__contents {
  position: relative;
  width: 100%;
  height: auto;
  margin: 0 auto;
  padding-top: 60px; }
  .products__contents h4 {
    display: block;
    width: 224px;
    height: 66px;
    position: absolute;
    top: 27px;
    left: 50%;
    margin-left: -440px;
    z-index: 2; }
    .products__contents h4 span {
      display: block;
      position: relative;
      z-index: 1;
      font-size: 18px;
      color: #FFF;
      text-align: center;
      line-height: 66px; }
    .products__contents h4:before {
      content: "";
      display: block;
      width: calc(100% + 24px);
      height: 100%;
      background-color: #00a0e9;
      position: absolute;
      left: -12px;
      top: 0px;
      -webkit-transform: skew(-17.2deg);
          -ms-transform: skew(-17.2deg);
              transform: skew(-17.2deg); }
  .products__contents:nth-of-type(even) h4 {
    left: auto;
    margin-left: 0px;
    right: 50%;
    margin-right: -440px; }
  .products__contents:nth-of-type(even) .products__block p {
    text-align: right; }

.products__block {
  width: 100%;
  width: calc(100% - 40px);
  max-width: 768px;
  height: auto;
  position: relative;
  margin: 0 auto; }
  .products__block p {
    font-size: 14px;
    line-height: 34px; }

.products__block__image {
  position: relative;
  width: 100%;
  height: auto;
  background-color: #f8f8f8;
  margin-bottom: 8px;
  overflow: hidden; }
  .products__block__image img {
    display: block;
    position: relative;
    z-index: 0; }
  .products__block__image:before {
    content: "";
    display: block;
    width: 100%;
    height: 0px;
    border-style: solid;
    position: absolute;
    top: 0px;
    transition-duration: 1.25s;
    transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
    z-index: 1; }

.products__contents:nth-of-type(odd) .products__block__image:before {
  border-width: 0 0 495px 165px;
  border-color: transparent transparent #FFF transparent;
  left: -165px;
  transition-property: left; }

.products__contents:nth-of-type(odd) .products__block__image.wipein:before {
  left: 100%; }

.products__contents:nth-of-type(even) .products__block__image:before {
  border-width: 495px 165px 0 0;
  border-color: #FFF transparent transparent transparent;
  right: -165px;
  transition-property: right; }

.products__contents:nth-of-type(even) .products__block__image.wipein:before {
  right: 100%; }

@media screen and (max-width: 940px) {
  .products__contents h4 {
    margin-left: 0px;
    left: 30px; }
  .products__contents:nth-of-type(even) h4 {
    margin-right: 0px;
    right: 30px; } }

@media screen and (max-width: 767px) {
  .products .header__hero__lead:before {
    background-image: url(images/header_slash_bk.png); }
  .products__lead {
    width: auto;
    height: auto;
    margin: 45px 15px 40px; }
  .products__lead__main {
    width: 100%;
    max-width: 320px;
    height: auto; }
    .products__lead__main svg {
      width: 100%;
      height: auto; }
  .products__lead__sub {
    font-size: 14px;
    line-height: 26px;
    margin-top: 12px; }
  .products__map {
    position: relative;
    width: 100%;
    height: 473px;
    margin: 50px auto 50px;
    background: none;
    overflow: scroll;
    -webkit-overflow-scrolling: touch; }
    .products__map > div {
      position: relative;
      width: 727px;
      height: 473px;
      padding: 0px;
      margin: 0 auto;
      background-image: url(images/products_map_sp.png);
      background-size: 727px 473px;
      background-position: center;
      background-repeat: no-repeat; }
  .products__map__link, .products__map__link--1, .products__map__link--2, .products__map__link--3, .products__map__link--4, .products__map__link--5, .products__map__link--6 {
    width: 200px;
    height: 44px;
    line-height: 42px; }
  .products__map__link--1 {
    top: 0px;
    left: 366px; }
  .products__map__link--2 {
    top: 52px;
    left: 92px; }
  .products__map__link--3 {
    top: 352px;
    left: 409px; }
  .products__map__link--4 {
    top: 429px;
    left: 260px; }
  .products__map__link--5 {
    top: 133px;
    left: 16px; }
  .products__map__link--6 {
    top: 106px;
    left: 511px; }
  .products__body {
    width: auto; }
  .products__contents {
    width: auto;
    height: auto;
    padding: 0;
    margin: 40px 16px 60px; }
    .products__contents:last-of-type {
      margin-bottom: 0px; }
    .products__contents h4 {
      width: 172px;
      height: 44px;
      top: -22px;
      left: 30px; }
      .products__contents h4 span {
        font-size: 14px;
        line-height: 44px; }
    .products__contents:nth-of-type(even) h4 {
      left: auto;
      right: 30px; }
  .products__block {
    width: auto;
    height: auto; }
    .products__block p {
      font-size: 14px;
      line-height: 26px;
      top: 0px;
      margin-top: 12px;
      text-align: left !important; }
      .products__block p br {
        display: none; }
  .products__block__image img {
    display: block;
    width: 100%;
    height: auto; } }

.recruitment .header__hero {
  background-image: url(images/recruitment_head_bg.jpg); }

.recruitment__lead {
  width: 100%;
  width: calc(100% - 40px);
  max-width: 768px;
  height: auto;
  margin: 90px auto 50px; }

.recruitment__lead__main {
  width: 569px;
  height: 115px; }

.recruitment__lead__sub {
  font-size: 14px;
  line-height: 34px;
  margin-top: 30px; }

.recruitment__body {
  width: 100%;
  max-width: 960px;
  height: auto;
  margin: 0 auto;
  overflow: hidden; }

.recruitment__contents {
  width: 100%;
  height: auto;
  position: relative;
  margin: 70px auto 0; }
  .recruitment__contents h4 {
    display: block;
    width: 214px;
    height: 66px;
    position: absolute;
    top: -33px;
    left: 50%;
    margin-left: -440px;
    z-index: 1; }
    .recruitment__contents h4 span {
      display: block;
      position: relative;
      z-index: 1;
      font-size: 18px;
      color: #FFF;
      text-align: center;
      line-height: 66px; }
    .recruitment__contents h4:before {
      content: "";
      display: block;
      width: calc(100% + 24px);
      height: 100%;
      background-color: #00a0e9;
      position: absolute;
      left: -12px;
      top: 0px;
      -webkit-transform: skew(-17.2deg);
          -ms-transform: skew(-17.2deg);
              transform: skew(-17.2deg); }
  .recruitment__contents:nth-of-type(even) h4 {
    left: auto;
    margin-left: 0px;
    right: 50%;
    margin-right: -440px; }

.recruitment__block {
  width: 100%;
  width: calc(100% - 40px);
  max-width: 768px;
  height: auto;
  position: relative;
  margin: 0 auto; }

.recruitment__block__content, .recruitment__block__content--new, .recruitment__block__content--midterm {
  box-sizing: border-box;
  width: 100%;
  height: auto;
  min-height: 270px;
  padding: 66px 40px;
  background-color: #f8f8f8; }
  .recruitment__block__content p, .recruitment__block__content--new p, .recruitment__block__content--midterm p {
    font-size: 18px;
    line-height: 38px; }

.recruitment__linkblock {
  position: relative;
  box-sizing: border-box;
  display: block;
  widows: auto;
  max-width: 454px;
  height: auto;
  padding: 18px 56px 18px 30px;
  font-size: 16px;
  line-height: 28px;
  color: #00a0e9;
  text-decoration: none;
  border: 1px solid #00a0e9;
  margin: 30px auto 0; }
  .recruitment__linkblock:after {
    content: "";
    display: block;
    width: 21px;
    height: 38px;
    background-image: url(images/link_arrow_b.png);
    background-size: 21px 38px;
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -19px;
    transition: opacity 0.1s linear; }
  .recruitment__linkblock div {
    transition: opacity 0.1s linear; }
  .recruitment__linkblock:hover div, .recruitment__linkblock:hover:after {
    transition-duration: 0s;
    opacity: 0.5;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }

.recruitment__block__content--new p {
  text-align: center; }

.recruitment__block__content--midterm p {
  width: 100%;
  margin-top: 50px;
  text-align: center; }

@media screen and (max-width: 940px) {
  .recruitment__contents h4 {
    margin-left: 0px;
    left: 30px; }
  .recruitment__contents:nth-of-type(even) h4 {
    margin-right: 0px;
    right: 30px; } }

@media screen and (max-width: 767px) {
  .recruitment__lead {
    width: auto;
    height: auto;
    margin: 45px 15px 30px; }
  .recruitment__lead__main {
    width: 100%;
    max-width: 284px;
    height: auto; }
    .recruitment__lead__main svg {
      width: 100%;
      height: auto; }
  .recruitment__lead__sub {
    font-size: 14px;
    line-height: 26px;
    margin-top: 12px; }
  .recruitment__body {
    width: auto; }
  .recruitment__contents {
    position: relative;
    width: auto;
    height: auto;
    padding: 0;
    margin: 40px 16px; }
    .recruitment__contents:last-of-type {
      margin-bottom: 0px; }
    .recruitment__contents h4 {
      width: 172px;
      height: 44px;
      top: -22px;
      left: 30px; }
      .recruitment__contents h4 span {
        font-size: 14px;
        line-height: 44px; }
    .recruitment__contents:nth-of-type(even) h4 {
      left: auto;
      right: 30px; }
  .recruitment__block {
    width: auto;
    height: auto;
    padding: 0; }
  .recruitment__block__content, .recruitment__block__content--new, .recruitment__block__content--midterm {
    box-sizing: border-box;
    width: 100%;
    height: auto;
    min-height: 160px;
    padding: 40px 16px 30px;
    background-color: #f8f8f8; }
    .recruitment__block__content p, .recruitment__block__content--new p, .recruitment__block__content--midterm p {
      font-size: 14px;
      line-height: 26px; }
  .recruitment__linkblock {
    padding: 12px 56px 12px 20px;
    font-size: 14px;
    line-height: 26px;
    color: #00a0e9;
    text-decoration: none;
    border: 1px solid #00a0e9;
    margin: 12px auto 0; }
    .recruitment__linkblock span {
      display: block; }
    .recruitment__linkblock:after {
      width: 11px;
      height: 20px;
      background-size: 11px 20px;
      right: 20px;
      margin-top: -10px; }
  .recruitment__block__content--midterm p {
    margin-top: 30px; } }

.basement .header__hero__lead:after, .basement--domestic .header__hero__lead:after, .basement--overseas .header__hero__lead:after {
  content: "";
  display: block;
  width: 196px;
  height: 106px;
  background-size: 196px 106px;
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  left: 0px;
  bottom: -8px;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  transition: opacity 1.25s linear 1.2s; }

.basement .header__hero__lead h2 span, .basement--domestic .header__hero__lead h2 span, .basement--overseas .header__hero__lead h2 span {
  left: -26px; }

.basement .header__hero.wipein .header__hero__lead:after, .basement--domestic .header__hero.wipein .header__hero__lead:after, .basement--overseas .header__hero.wipein .header__hero__lead:after {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

.basement--domestic .header__hero {
  background-image: url(images/domestic_head_bg.jpg); }

.basement--domestic .header__hero__lead:after {
  background-image: url(images/domestic_head_map.png); }

.basement--domestic .header__hero__lead h2 {
  left: 168px; }

.basement--overseas .header__hero {
  background-image: url(images/overseas_head_bg.jpg); }

.basement--overseas .header__hero__lead:before {
  background-image: url(images/header_slash_bk.png); }

.basement--overseas .header__hero__lead:after {
  background-image: url(images/overseas_head_map_gray.png); }

.basement--overseas .header__hero__lead h2 {
  left: 220px; }

.basement__lead {
  width: 100%;
  width: calc(100% - 40px);
  max-width: 768px;
  height: auto;
  margin: 90px auto 30px; }

.basement__lead__main.domestic {
  width: 784px;
  height: 116px; }

.basement__lead__main.overseas, .basement__lead__main.overseas--usa, .basement__lead__main.overseas--mexico {
  width: 630px;
  height: 116px; }

.basement__lead__sub {
  font-size: 14px;
  line-height: 34px;
  margin-top: 30px; }

.basement__body {
  width: 100%;
  max-width: 960px;
  height: auto;
  margin: 0 auto;
  overflow: hidden; }

.basement__contents {
  width: 100%;
  height: auto;
  position: relative;
  margin: 90px auto 0px; }
  .basement__contents h4 {
    display: block;
    width: 214px;
    height: 66px;
    position: absolute;
    top: -33px;
    left: 50%;
    margin-left: -440px;
    z-index: 2; }
    .basement__contents h4 span {
      display: block;
      position: relative;
      z-index: 1;
      font-size: 18px;
      color: #FFF;
      text-align: center;
      line-height: 66px; }
    .basement__contents h4:before {
      content: "";
      display: block;
      width: calc(100% + 24px);
      height: 100%;
      background-color: #00a0e9;
      position: absolute;
      left: -12px;
      top: 0px;
      -webkit-transform: skew(-17.2deg);
          -ms-transform: skew(-17.2deg);
              transform: skew(-17.2deg); }
  .basement__contents:nth-of-type(even) h4 {
    left: auto;
    margin-left: 0px;
    right: 50%;
    margin-right: -440px; }

.basement__block {
  width: 100%;
  width: calc(100% - 40px);
  max-width: 768px;
  height: auto;
  position: relative;
  margin: 0px auto; }
  .basement__block p {
    font-size: 14px;
    line-height: 34px; }

.basement__block__image {
  width: 100%;
  height: auto;
  background-color: #f8f8f8;
  margin-bottom: 8px;
  position: relative;
  overflow: hidden; }
  .basement__block__image img {
    display: block;
    z-index: 0; }
  .basement__block__image:before {
    content: "";
    display: block;
    width: 100%;
    height: 0px;
    border-style: solid;
    position: absolute;
    top: 0px;
    transition-duration: 1.25s;
    transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
    z-index: 1; }

.basement__contents:nth-of-type(odd) .basement__block__image:before {
  border-width: 0 0 495px 165px;
  border-color: transparent transparent #FFF transparent;
  left: -165px;
  transition-property: left; }

.basement__contents:nth-of-type(odd) .basement__block__image.wipein:before {
  left: 100%; }

.basement__contents:nth-of-type(even) .basement__block__image:before {
  border-width: 495px 165px 0 0;
  border-color: #FFF transparent transparent transparent;
  right: -165px;
  transition-property: right; }

.basement__contents:nth-of-type(even) .basement__block__image.wipein:before {
  right: 100%; }

.basement__block__address {
  position: relative;
  margin-top: 24px;
  position: relative; }
  .basement__block__address p {
    position: relative;
    color: #666666;
    line-height: 26px;
    top: -6px; }
    .basement__block__address p a {
      color: #666666; }
  .basement__block__address strong {
    color: #000; }

.basement__block__address__link {
  box-sizing: border-box;
  display: block;
  width: 244px;
  height: 66px;
  padding: 18px 56px 18px 30px;
  font-size: 16px;
  line-height: 28px;
  color: #00a0e9;
  text-decoration: none;
  border: 1px solid #00a0e9;
  position: absolute;
  top: 0px;
  right: 0px; }
  .basement__block__address__link:after {
    content: "";
    display: block;
    width: 21px;
    height: 38px;
    background-image: url(images/link_arrow_b.png);
    background-size: 21px 38px;
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -19px;
    transition: opacity 0.1s linear; }
  .basement__block__address__link span {
    transition: opacity 0.1s linear; }
  .basement__block__address__link:hover span, .basement__block__address__link:hover:after {
    transition-duration: 0s;
    opacity: 0.5;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }

@media screen and (max-width: 940px) {
  .basement__contents h4 {
    margin-left: 0px;
    left: 30px; }
  .basement__contents:nth-of-type(even) h4 {
    margin-right: 0px;
    right: 30px; } }

@media screen and (max-width: 767px) {
  .basement__lead {
    width: auto;
    height: auto;
    margin: 45px 15px 30px; }
  .basement__lead__main {
    width: 100% !important;
    max-width: 365px;
    height: auto !important; }
    .basement__lead__main svg {
      width: 100%;
      height: auto; }
  .basement__lead__sub {
    font-size: 14px;
    line-height: 26px;
    margin-top: 12px; }
  .basement__body {
    width: auto; }
  .basement__contents {
    width: auto;
    height: auto;
    padding: 0;
    margin: 40px 16px 60px; }
    .basement__contents:last-of-type {
      margin-bottom: 0px; }
    .basement__contents h4 {
      width: 172px;
      height: 44px;
      top: -22px;
      left: 30px; }
      .basement__contents h4 span {
        font-size: 14px;
        line-height: 44px; }
    .basement__contents:nth-of-type(even) h4 {
      left: auto;
      right: 30px; }
  .basement__block {
    width: auto;
    height: auto;
    padding: 0;
    margin: 0; }
    .basement__block p {
      font-size: 14px;
      line-height: 26px; }
      .basement__block p br {
        display: none; }
  .basement__block__image img {
    display: block;
    width: 100%;
    height: auto; }
  .basement__block__address {
    margin-top: 8px; }
    .basement__block__address p {
      font-size: 12px;
      line-height: 21px;
      top: 0; }
      .basement__block__address p br {
        display: block; }
  .basement__block__address__link {
    position: relative;
    width: 100%;
    height: 44px;
    padding: 8px 56px 8px 15px;
    font-size: 14px;
    line-height: 28px;
    top: 0px;
    right: 0px;
    margin: 22px 0 12px; }
    .basement__block__address__link:after {
      width: 11px;
      height: 20px;
      background-size: 11px 20px;
      right: 15px;
      margin-top: -10px; }
  .basement .header__hero__lead:after, .basement--domestic .header__hero__lead:after, .basement--overseas .header__hero__lead:after {
    content: "";
    display: block;
    width: 128px;
    height: 69px;
    background-size: 128px 69px;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    left: 0px;
    bottom: -4px; }
  .basement .header__hero__lead h2 span, .basement--domestic .header__hero__lead h2 span, .basement--overseas .header__hero__lead h2 span {
    left: -16px; }
  .basement--domestic .header__hero__lead h2 {
    left: 110px; }
  .basement--overseas .header__hero__lead:before {
    background-image: url(images/header_slash_sp_bk.png); }
  .basement--overseas .header__hero__lead h2 {
    left: 140px; } }

.overseas .header__hero__lead:after, .overseas--usa .header__hero__lead:after, .overseas--mexico .header__hero__lead:after {
  content: "";
  display: block;
  width: 196px;
  height: 106px;
  background-size: 196px 106px;
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  left: 0px;
  bottom: -8px;
  background-image: url(images/overseas_head_map.png);
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  transition: opacity 1.25s linear 1.2s; }

.overseas .header__hero__lead h2, .overseas--usa .header__hero__lead h2, .overseas--mexico .header__hero__lead h2 {
  left: 220px; }

.overseas .header__hero__lead h2 span, .overseas--usa .header__hero__lead h2 span, .overseas--mexico .header__hero__lead h2 span {
  left: -26px; }

.overseas .header__hero.wipein .header__hero__lead:after, .overseas--usa .header__hero.wipein .header__hero__lead:after, .overseas--mexico .header__hero.wipein .header__hero__lead:after {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

.overseas--usa .header__hero {
  background-image: url(images/america_head_bg.jpg); }

.overseas--mexico .header__hero {
  background-image: url(images/mexico_head_bg.jpg); }

.overseas__outline {
  position: relative;
  width: 100%;
  width: calc(100% - 40px);
  max-width: 800px;
  height: auto;
  margin: 0 auto;
  border-bottom: 1px solid #e5e5e5; }
  .overseas__outline h3 {
    font-size: 48px;
    color: #000;
    margin-top: 20px; }
  .overseas__outline p {
    font-size: 14px;
    color: #666666;
    line-height: 26px;
    margin: 4px 0 14px; }
    .overseas__outline p span {
      display: inline-block;
      padding-right: 18px; }
    .overseas__outline p a {
      color: #666666; }

.overseas__outline__image {
  position: relative;
  width: 83.25%;
  height: 430px;
  overflow: hidden;
  margin: 0 auto;
  -webkit-transform: skew(-17.2deg);
      -ms-transform: skew(-17.2deg);
          transform: skew(-17.2deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center; }
  .overseas__outline__image img {
    display: block;
    width: auto;
    height: 100%;
    position: absolute;
    left: 50%;
    top: 0px;
    -webkit-transform: translateX(-50%) skew(17.2deg);
        -ms-transform: translateX(-50%) skew(17.2deg);
            transform: translateX(-50%) skew(17.2deg);
    -webkit-transform-origin: center;
        -ms-transform-origin: center;
            transform-origin: center; }

.overseas .company__section, .overseas--usa .company__section, .overseas--mexico .company__section, .overseas .company__section--philosophy, .overseas--usa .company__section--philosophy, .overseas--mexico .company__section--philosophy, .overseas .company__section--overview, .overseas--usa .company__section--overview, .overseas--mexico .company__section--overview, .overseas .company__section--history, .overseas--usa .company__section--history, .overseas--mexico .company__section--history,
.overseas .manufacturing__section, .overseas--usa .manufacturing__section, .overseas--mexico .manufacturing__section,
.overseas .manufacturing__section--project, .overseas--usa .manufacturing__section--project, .overseas--mexico .manufacturing__section--project,
.overseas
.manufacturing__section--production, .overseas--usa
.manufacturing__section--production, .overseas--mexico
.manufacturing__section--production,
.overseas
.manufacturing__section--quality, .overseas--usa
.manufacturing__section--quality, .overseas--mexico
.manufacturing__section--quality {
  margin-top: 180px; }

.overseas .company__section__body, .overseas--usa .company__section__body, .overseas--mexico .company__section__body,
.overseas .manufacturing__section__body, .overseas--usa .manufacturing__section__body, .overseas--mexico .manufacturing__section__body {
  margin-top: 30px; }

.overseas .company__section--philosophy, .overseas--usa .company__section--philosophy, .overseas--mexico .company__section--philosophy {
  margin-top: 90px; }

.overseas .company__section__body__philoutline, .overseas--usa .company__section__body__philoutline, .overseas--mexico .company__section__body__philoutline {
  margin-bottom: 30px; }

.overseas .manufacturing__section__lead, .overseas--usa .manufacturing__section__lead, .overseas--mexico .manufacturing__section__lead {
  margin-top: 30px;
  margin-bottom: 120px; }

.overseas .manufacturing__section__content:last-of-type, .overseas--usa .manufacturing__section__content:last-of-type, .overseas--mexico .manufacturing__section__content:last-of-type {
  margin-bottom: 0px; }

@media screen and (max-width: 986px) {
  .overseas__outline {
    margin-top: 40px; } }

@media screen and (max-width: 767px) {
  .overseas .header__hero__lead:after, .overseas--usa .header__hero__lead:after, .overseas--mexico .header__hero__lead:after {
    content: "";
    display: block;
    width: 128px;
    height: 69px;
    background-size: 128px 69px;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    left: 0px;
    bottom: -4px; }
  .overseas .header__hero__lead h2, .overseas--usa .header__hero__lead h2, .overseas--mexico .header__hero__lead h2 {
    left: 140px; }
  .overseas .header__hero__lead h2 span, .overseas--usa .header__hero__lead h2 span, .overseas--mexico .header__hero__lead h2 span {
    left: -16px; }
  .overseas__outline {
    position: relative;
    width: auto;
    width: calc(100% - 32px);
    height: auto;
    margin: 40px auto 0; }
    .overseas__outline h3 {
      font-size: 32px;
      margin: 12px 0 2px; }
    .overseas__outline p {
      font-size: 12px;
      color: #666666;
      line-height: 18px; }
  .overseas__outline__image {
    width: 100%;
    width: calc(100% - 40px);
    max-width: 284px;
    height: 186px; }
  .overseas .company__section--overview .company__section__body > dl > dt span, .overseas--usa .company__section--overview .company__section__body > dl > dt span, .overseas--mexico .company__section--overview .company__section__body > dl > dt span,
  .overseas .company__section--overview .company__section__body > dl > dd > dl dd span, .overseas--usa .company__section--overview .company__section__body > dl > dd > dl dd span, .overseas--mexico .company__section--overview .company__section__body > dl > dd > dl dd span {
    display: block; }
  .overseas .company__section, .overseas--usa .company__section, .overseas--mexico .company__section, .overseas .company__section--philosophy, .overseas--usa .company__section--philosophy, .overseas--mexico .company__section--philosophy, .overseas .company__section--overview, .overseas--usa .company__section--overview, .overseas--mexico .company__section--overview, .overseas .company__section--history, .overseas--usa .company__section--history, .overseas--mexico .company__section--history,
  .overseas .manufacturing__section, .overseas--usa .manufacturing__section, .overseas--mexico .manufacturing__section,
  .overseas .manufacturing__section--project, .overseas--usa .manufacturing__section--project, .overseas--mexico .manufacturing__section--project,
  .overseas
  .manufacturing__section--production, .overseas--usa
  .manufacturing__section--production, .overseas--mexico
  .manufacturing__section--production,
  .overseas
  .manufacturing__section--quality, .overseas--usa
  .manufacturing__section--quality, .overseas--mexico
  .manufacturing__section--quality {
    margin-top: 70px; }
  .overseas .company__section__body, .overseas--usa .company__section__body, .overseas--mexico .company__section__body,
  .overseas .manufacturing__section__body, .overseas--usa .manufacturing__section__body, .overseas--mexico .manufacturing__section__body {
    margin-top: 20px; }
  .overseas .company__section--philosophy, .overseas--usa .company__section--philosophy, .overseas--mexico .company__section--philosophy {
    margin-top: 50px; }
  .overseas .company__section__body__philoutline, .overseas--usa .company__section__body__philoutline, .overseas--mexico .company__section__body__philoutline {
    margin-bottom: 20px; }
  .overseas .manufacturing__section__lead, .overseas--usa .manufacturing__section__lead, .overseas--mexico .manufacturing__section__lead {
    margin-top: 20px;
    margin-bottom: 40px; } }

.others .header, .others .haeder--index {
  height: 290px; }

.others .header__hero {
  overflow: visible;
  height: 0px; }
  .others .header__hero:after {
    display: none; }

.others .header__hero__lead:before {
  background-image: url(images/header_slash_bk.png);
  left: 0px; }

.others .header__hero__lead h2 {
  color: #00a0e9; }

.others .header__navigation__sub, .others .footer__main__subnav {
  bottom: auto;
  top: 110px; }

.others .footer__main__subnav {
  top: auto;
  bottom: 0px; }

.others .header__navigation__mainnav__bg {
  opacity: 0.8 !important;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; }

.others .header__navigation__main__sep {
  opacity: 0.5 !important;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }

.others__body {
  position: relative;
  width: auto;
  margin: 110px auto 0; }
  .others__body h3 {
    display: block;
    width: 214px;
    height: 66px;
    position: absolute;
    top: -33px;
    left: 50%;
    margin-left: -440px;
    z-index: 1; }
    .others__body h3 span {
      display: block;
      position: relative;
      z-index: 1;
      font-size: 18px;
      color: #FFF;
      text-align: center;
      line-height: 66px; }
    .others__body h3:before {
      content: "";
      display: block;
      width: calc(100% + 24px);
      height: 100%;
      background-color: #00a0e9;
      position: absolute;
      left: -12px;
      top: 0px;
      -webkit-transform: skew(-17.2deg);
          -ms-transform: skew(-17.2deg);
              transform: skew(-17.2deg); }

.others__contact {
  box-sizing: border-box;
  width: 100%;
  width: calc(100% - 40px);
  max-width: 768px;
  height: auto;
  padding: 75px 40px 60px;
  background-color: #f8f8f8;
  position: relative;
  margin: 0 auto; }

.others__contact__lead {
  font-size: 14px;
  color: #666666;
  line-height: 34px;
  margin-bottom: 20px; }
  .others__contact__lead strong {
    display: block;
    font-size: 18px;
    color: #000;
    text-align: center;
    margin-bottom: 12px; }

.others__contact__form {
  width: 100%;
  height: auto; }

.others__contact__form__part, .others__contact__form__part--half, .others__contact__form__part--selection {
  position: relative;
  width: 100%;
  margin: 10px 0; }
  .others__contact__form__part input, .others__contact__form__part--half input, .others__contact__form__part--selection input {
    box-sizing: border-box;
    display: block;
    width: 100%;
    height: 41px;
    border: 0px;
    font-size: 14px;
    line-height: 28px;
    padding: 6px 10px;
    border-radius: 0px;
    background-color: #FFF; }
  .others__contact__form__part textarea, .others__contact__form__part--half textarea, .others__contact__form__part--selection textarea {
    box-sizing: border-box;
    display: block;
    width: 100%;
    height: 260px;
    border: 0px;
    font-size: 14px;
    line-height: 28px;
    padding: 6px 10px;
    border-radius: 0px;
    background-color: #FFF; }

::-webkit-input-placeholder {
  color: #000; }

:-ms-input-placeholder {
  color: #000; }

::-moz-placeholder {
  color: #000; }

.others__contact__form__part--half:after {
  content: "";
  display: block;
  width: 0px;
  height: 0px;
  float: none;
  clear: both;
  visibility: hidden; }

.others__contact__form__part--half input {
  width: calc(50% - 4px);
  float: left; }
  .others__contact__form__part--half input:nth-of-type(odd) {
    clear: both;
    margin-right: 8px; }

.others__contact__form__part--selection:after {
  content: "";
  display: block;
  width: 44px;
  height: 44px;
  background-image: url(images/select_arrow.png);
  background-size: 44px 44px;
  position: absolute;
  top: 0px;
  right: 0px;
  z-index: 1; }

.others__contact__form__part--selection select {
  position: absolute;
  display: block;
  width: 100%;
  height: 41px;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  z-index: 2; }

.others__contact__form__part--selection span {
  box-sizing: border-box;
  display: block;
  width: 100%;
  height: 41px;
  border: 0px;
  font-size: 14px;
  line-height: 28px;
  padding: 6px 10px;
  border-radius: 0px;
  background-color: #FFF;
  position: relative;
  z-index: 0; }

.others__contact__form__error,
.others__contact__form__complete {
  display: none;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  padding: 20px;
  font-size: 14px;
  line-height: 24px;
  text-align: center;
  margin: 35px 0; }
  .others__contact__form__error p,
  .others__contact__form__complete p {
    font-weight: bold; }

.others__contact__form__error {
  border: 2px solid #00a0e9;
  color: #000; }
  .others__contact__form__error p {
    display: none; }
  .others__contact__form__error p span {
    display: none; }
    .others__contact__form__error p span:before {
      content: "・"; }

.others__contact__form__complete {
  background-color: #00a0e9;
  color: #FFF; }

.others__contact__terms {
  font-size: 14px;
  line-height: 34px;
  color: #666666;
  margin: 30px 0 40px; }
  .others__contact__terms strong {
    color: #00a0e9; }
  .others__contact__terms:last-child {
    margin-bottom: 0px; }

.others__contact__form__send {
  display: block;
  width: 280px;
  height: 55px;
  color: #FFF;
  background-color: #000;
  font-size: 28px;
  border: 0px;
  margin: 0 auto;
  cursor: pointer; }
  .others__contact__form__send.processing {
    opacity: 0.5;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    pointer-events: none; }
  .others__contact__form__send.done {
    pointer-events: none; }

.others__privacy {
  box-sizing: border-box;
  width: 100%;
  width: calc(100% - 40px);
  max-width: 768px;
  height: auto;
  padding: 75px 40px 60px;
  background-color: #f8f8f8;
  position: relative;
  margin: 0 auto; }
  .others__privacy p {
    font-size: 14px;
    line-height: 34px;
    color: #666666; }
  .others__privacy p.others__privacy__title {
    font-size: 18px;
    color: #000;
    text-align: center;
    margin: 0 0 12px; }

.others__mail {
  box-sizing: border-box;
  width: 100%;
  width: calc(100% - 40px);
  max-width: 768px;
  height: auto;
  padding: 75px 40px 60px;
  background-color: #f8f8f8;
  position: relative;
  margin: 0 auto; }

.others__contact__maillinkblock {
  position: relative;
  box-sizing: border-box;
  display: block;
  widows: auto;
  max-width: 454px;
  height: auto;
  padding: 18px 56px 18px 30px;
  font-size: 16px;
  line-height: 28px;
  color: #00a0e9;
  text-decoration: none;
  border: 1px solid #00a0e9;
  margin: 60px auto; }
  .others__contact__maillinkblock:after {
    content: "";
    display: block;
    width: 21px;
    height: 38px;
    background-image: url(images/link_arrow_b.png);
    background-size: 21px 38px;
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -19px;
    transition: opacity 0.1s linear; }
  .others__contact__maillinkblock div {
    transition: opacity 0.1s linear; }
  .others__contact__maillinkblock:hover div, .others__contact__maillinkblock:hover:after {
    transition-duration: 0s;
    opacity: 0.5;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }

@media screen and (max-width: 986px) {
  .others .header__navigation__sub, .others .footer__main__subnav {
    top: 322px; }
  .others .footer__main__subnav {
    top: auto;
    bottom: 0px; } }

@media screen and (max-width: 940px) {
  .others__body h3 {
    margin-left: 0px;
    left: 30px; } }

@media screen and (max-width: 767px) {
  .others .header, .others .haeder--index {
    height: 154px; }
  .others .header__navigation__sub, .others .footer__main__subnav {
    bottom: auto;
    top: 332px; }
  .others .header__hero__lead:before {
    left: 1px; }
  .others .footer__main__subnav {
    top: auto;
    bottom: 0px; }
  .others .header__navigation__mainnav__bg {
    opacity: 0.8 !important;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; }
  .others__body {
    width: auto;
    margin: 60px 16px 0; }
    .others__body h3 {
      width: 172px;
      height: 44px;
      top: -22px;
      left: 30px; }
      .others__body h3 span {
        font-size: 14px;
        line-height: 44px; }
  .others__privacy {
    box-sizing: border-box;
    width: auto;
    height: auto;
    padding: 40px 16px 30px;
    margin: 40px 0; }
    .others__privacy p {
      font-size: 14px;
      line-height: 26px;
      color: #666666; }
    .others__privacy p.others__privacy__title {
      font-size: 14px;
      line-height: 26px;
      margin: 8px 0 20px; }
      .others__privacy p.others__privacy__title span {
        display: block; }
  .others__contact {
    box-sizing: border-box;
    width: auto;
    height: auto;
    padding: 40px 16px 30px;
    margin: 40px 0; }
  .others__contact__lead {
    font-size: 14px;
    color: #666666;
    line-height: 26px;
    margin: 8px 0 20px; }
    .others__contact__lead strong {
      font-size: 14px;
      margin-bottom: 20px; }
      .others__contact__lead strong span {
        display: block; }
  .others__contact__form__part textarea, .others__contact__form__part--half textarea, .others__contact__form__part--selection textarea {
    height: 130px;
    line-height: 26px; }
  .others__contact__form__part--half input {
    width: 100%;
    float: none; }
    .others__contact__form__part--half input:nth-of-type(odd) {
      clear: both;
      margin-right: 0px;
      margin-bottom: 10px; }
  .others__contact__form__part--selection:after {
    content: "";
    display: block;
    width: 44px;
    height: 44px;
    background-image: url(images/select_arrow.png);
    background-size: 44px 44px;
    position: absolute;
    top: 0px;
    right: 0px;
    z-index: 1; }
  .others__contact__form__part--selection select {
    position: absolute;
    display: block;
    width: 100%;
    height: 41px;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    z-index: 2; }
  .others__contact__form__part--selection span {
    box-sizing: border-box;
    display: block;
    width: 100%;
    height: 41px;
    border: 0px;
    font-size: 14px;
    line-height: 28px;
    padding: 6px 10px;
    border-radius: 0px;
    background-color: #FFF;
    position: relative;
    z-index: 0; }
  .others__contact__terms {
    font-size: 14px;
    line-height: 26px;
    color: #666666;
    margin: 20px 0 30px; }
  .others__contact__form__send {
    display: block;
    width: 280px;
    height: 55px;
    color: #FFF;
    background-color: #000;
    font-size: 24px;
    border: 0px;
    margin: 0 auto; }
  .others__mail {
    box-sizing: border-box;
    width: auto;
    height: auto;
    padding: 40px 16px 30px;
    margin: 40px 0; }
  .others__contact__maillinkblock {
    padding: 12px 56px 12px 20px;
    font-size: 14px;
    line-height: 26px;
    color: #00a0e9;
    text-decoration: none;
    border: 1px solid #00a0e9;
    margin: 30px auto; }
    .others__contact__maillinkblock span {
      display: block; }
    .others__contact__maillinkblock:after {
      width: 11px;
      height: 20px;
      background-size: 11px 20px;
      right: 20px;
      margin-top: -10px; } }
