@charset "UTF-8";
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0
}

.slick-list:focus {
  outline: 0
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand
}

.slick-slider .slick-list, .slick-slider .slick-track {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0)
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto
}

.slick-track:after, .slick-track:before {
  content: "";
  display: table
}

.slick-track:after {
  clear: both
}

.slick-loading .slick-track {
  visibility: hidden
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none
}

[dir=rtl] .slick-slide {
  float: right
}

.slick-slide img {
  display: block
}

.slick-slide.slick-loading img {
  display: none
}

.slick-slide.dragging img {
  pointer-events: none
}

.slick-initialized .slick-slide {
  display: block
}

.slick-loading .slick-slide {
  visibility: hidden
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent
}

.slick-arrow.slick-hidden {
  display: none
}

.slick-next, .slick-prev {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0;
  font-size: 0;
  cursor: pointer;
  background: 0 0;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: 0
}

.slick-next:focus, .slick-next:hover, .slick-prev:focus, .slick-prev:hover {
  outline: 0;
  background: 0 0;
  color: transparent
}

.slick-next:focus:before, .slick-next:hover:before, .slick-prev:focus:before, .slick-prev:hover:before {
  opacity: 1
}

.slick-next.slick-disabled:before, .slick-prev.slick-disabled:before {
  opacity: .25
}

.slick-next:before, .slick-prev:before {
  font-family: "";
  font-size: 20px;
  line-height: 1;
  color: #383737;
  opacity: .75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}

.slick-prev {
  left: -25px
}

[dir=rtl] .slick-prev {
  left: auto;
  right: -25px
}

.slick-prev:before {
  content: "←"
}

[dir=rtl] .slick-prev:before {
  content: "→"
}

.slick-next {
  right: -25px
}

[dir=rtl] .slick-next {
  left: -25px;
  right: auto
}

.slick-next:before {
  content: "→"
}

[dir=rtl] .slick-next:before {
  content: "←"
}

.slick-dotted.slick-slider {
  margin-bottom: 30px
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%
}

.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer
}

.slick-dots li button {
  border: 0;
  background: 0 0;
  display: block;
  height: 20px;
  width: 20px;
  outline: 0;
  line-height: 0;
  font-size: 0;
  color: transparent;
  padding: 5px;
  cursor: pointer
}

.slick-dots li button:focus, .slick-dots li button:hover {
  outline: 0
}

.slick-dots li button:focus:before, .slick-dots li button:hover:before {
  opacity: 1
}

.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "•";
  width: 20px;
  height: 20px;
  font-family: "";
  font-size: 6px;
  line-height: 20px;
  text-align: center;
  color: #000;
  opacity: .25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}

.slick-dots li.slick-active button:before {
  color: #000;
  opacity: .75
}

.test-ellipsis {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis
}

.test-triangle-b, .test-triangle-l, .test-triangle-lb, .test-triangle-lt, .test-triangle-r, .test-triangle-rb, .test-triangle-rt, .test-triangle-t {
  display: inline-block;
  background-color: #ff0
}

.test-triangle-b::before, .test-triangle-l::before, .test-triangle-lb::before, .test-triangle-lt::before, .test-triangle-r::before, .test-triangle-rb::before, .test-triangle-rt::before, .test-triangle-t::before {
  display: block;
  content: ""
}

.test-triangle-t::before {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 50px 100px 50px;
  border-color: transparent transparent red transparent
}

.test-triangle-b::before {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 100px 50px 0 50px;
  border-color: red transparent transparent transparent
}

.test-triangle-l::before {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 50px 100px 50px 0;
  border-color: transparent red transparent transparent
}

.test-triangle-r::before {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 50px 0 50px 100px;
  border-color: transparent transparent transparent red
}

.test-triangle-lt::before {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 100px 100px 0 0;
  border-color: red transparent transparent transparent
}

.test-triangle-rt::before {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 100px 100px 0;
  border-color: transparent red transparent transparent
}

.test-triangle-lb::before {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 100px 0 0 100px;
  border-color: transparent transparent transparent red
}

.test-triangle-rb::before {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 100px 100px;
  border-color: transparent transparent red transparent
}

.test-arrow-l {
  width: 100%;
  display: block;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  height: 10px;
  width: 100px;
  height: 100px
}

.test-arrow-l:after, .test-arrow-l:before {
  content: "";
  position: absolute;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto
}

.test-arrow-l:after {
  background-color: red;
  width: 95px;
  height: 11px
}

.test-arrow-l:before {
  width: 70.71068px;
  height: 70.71068px;
  margin-right: 14.64466px;
  vertical-align: middle;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

.test-arrow-l:after {
  margin-right: 0
}

.test-arrow-l:before {
  border-bottom: 10px solid red;
  border-left: 10px solid red
}

.test-arrow-r {
  width: 100%;
  display: block;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  height: 25px;
  width: 100px;
  height: 100px
}

.test-arrow-r:after, .test-arrow-r:before {
  content: "";
  position: absolute;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto
}

.test-arrow-r:after {
  background-color: green;
  width: 87.5px;
  height: 26px
}

.test-arrow-r:before {
  width: 70.71068px;
  height: 70.71068px;
  margin-right: 14.64466px;
  vertical-align: middle;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

.test-arrow-r:after {
  margin-left: 0
}

.test-arrow-r:before {
  border-top: 25px solid green;
  border-right: 25px solid green
}

.test-arrow-t {
  width: 100%;
  display: block;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  height: 20px;
  width: 100px;
  height: 100px
}

.test-arrow-t:after, .test-arrow-t:before {
  content: "";
  position: absolute;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto
}

.test-arrow-t:after {
  background-color: #00f;
  height: 90px;
  width: 20px
}

.test-arrow-t:before {
  width: 70.71068px;
  height: 70.71068px;
  margin-right: 14.64466px;
  vertical-align: middle;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

.test-arrow-t:after {
  margin-bottom: 0
}

.test-arrow-t:before {
  border-top: 20px solid #00f;
  border-left: 20px solid #00f
}

.test-arrow-b {
  width: 100%;
  display: block;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  height: 2px;
  width: 100px;
  height: 100px
}

.test-arrow-b:after, .test-arrow-b:before {
  content: "";
  position: absolute;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto
}

.test-arrow-b:after {
  background-color: #000;
  height: 99px;
  width: 2px
}

.test-arrow-b:before {
  width: 70.71068px;
  height: 70.71068px;
  margin-right: 14.64466px;
  vertical-align: middle;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

.test-arrow-b:after {
  margin-top: 0
}

.test-arrow-b:before {
  border-bottom: 2px solid #000;
  border-right: 2px solid #000
}

.debug {
  border: solid 1px red;
  background-color: rgba(255, 0, 0, .2)
}

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

button, input {
  outline: 0
}

button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0
}

body, html {
  height: 100%;
  min-height: 100%;
  background-color: #fff;
  color: #333;
  -webkit-tap-highlight-color: transparent;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: .05em
}

body {
  position: relative;
  font-size: 13px;
  -webkit-text-size-adjust: 100%
}

a {
  text-decoration: none
}

.is-remove {
  display: none!important
}

.is-hide {
  visibility: hidden!important
}

.is-inline-block {
  display: inline-block
}

.is-locked {
  pointer-events: none
}

@media screen and (max-width:799px) {
  .is-remove-lt-pointA {
    display: none!important
  }
}

@media screen and (min-width:800px) {
  .is-remove-gte-pointA {
    display: none!important
  }
}

.text-gothic {
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Verdana, Roboto, "Droid Sans", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif
}

.text-regular {
  font-weight: 400
}

.text-bold {
  font-weight: 700
}

.text-bold-normal {
  font-weight: 400
}

.text-italic {
  font-style: italic
}

.text-style-normal {
  font-style: normal
}

.text-en {
  font-family: Quicksand, sans-serif;
  font-weight: 400
}

.text-en-bold {
  font-family: Quicksand, sans-serif;
  font-weight: 500
}

.text-align-center {
  text-align: center
}

.text-align-right {
  text-align: right
}

.text-align-justify {
  text-align: justify;
  text-justify: inter-ideograph
}

.color--black {
  color: #000
}

.color--white {
  color: #fff
}

.font-feature {
  -webkit-font-variant-ligatures: no-common-ligatures;
  font-variant-ligatures: no-common-ligatures;
  -webkit-font-feature-settings: "palt", "liga", "clig off";
  font-feature-settings: "palt", "liga", "clig off"
}

.blocked-text>* {
  display: inline-block
}

.inViewFade {
  -webkit-transition: opacity .8s ease-out .1s;
  transition: opacity .8s ease-out .1s;
  opacity: 0
}

.inViewFade.isInview {
  opacity: 1
}

.inViewZoom {
  -webkit-transition: opacity .8s ease-out .1s, -webkit-transform .8s ease-out .1s;
  transition: opacity .8s ease-out .1s, -webkit-transform .8s ease-out .1s;
  transition: opacity .8s ease-out .1s, transform .8s ease-out .1s;
  transition: opacity .8s ease-out .1s, transform .8s ease-out .1s, -webkit-transform .8s ease-out .1s;
  opacity: 0;
  -webkit-transform: scale(.9, .9);
  transform: scale(.9, .9);
  -webkit-transform-origin: 50% 300%;
  transform-origin: 50% 300%
}

.inViewZoom.isInview {
  opacity: 1;
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1)
}

.inView.inViewRiseUpText span {
  display: inline-block;
  overflow: hidden;
  vertical-align: top
}

.inView.inViewRiseUpText span>* {
  display: inline-block;
  vertical-align: top;
  -webkit-transition: -webkit-transform .6s ease-in-out .15s;
  transition: -webkit-transform .6s ease-in-out .15s;
  transition: transform .6s ease-in-out .15s;
  transition: transform .6s ease-in-out .15s, -webkit-transform .6s ease-in-out .15s;
  -webkit-transform: translate(0, 1.3em);
  transform: translate(0, 1.3em)
}

.inView.inViewRiseUpText.isInview span>* {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0)
}

.inViewFadeVBSlide {
  -webkit-transition: opacity .6s ease-out .1s, -webkit-transform .6s ease-out .1s;
  transition: opacity .6s ease-out .1s, -webkit-transform .6s ease-out .1s;
  transition: transform .6s ease-out .1s, opacity .6s ease-out .1s;
  transition: transform .6s ease-out .1s, opacity .6s ease-out .1s, -webkit-transform .6s ease-out .1s;
  opacity: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

@media screen and (max-width:799px) {
  .inViewFadeVBSlide {
    -webkit-transform: translate(0, 50px);
    transform: translate(0, 50px)
  }
  .inViewFadeVBSlide.inViewFadeVBSlide--s {
    -webkit-transform: translate(0, 25px);
    transform: translate(0, 25px)
  }
}

@media screen and (min-width:800px) {
  .inViewFadeVBSlide {
    -webkit-transform: translate(0, 100px);
    transform: translate(0, 100px)
  }
  .inViewFadeVBSlide.inViewFadeVBSlide--s {
    -webkit-transform: translate(0, 40px);
    transform: translate(0, 40px)
  }
}

.inViewFadeVBSlide.isInview {
  opacity: 1;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0)
}

@media screen and (min-width:800px) {
  .inViewFadeVBSlide--pointAOver {
    -webkit-transition: opacity .6s ease-out .1s, -webkit-transform .6s ease-out .1s;
    transition: opacity .6s ease-out .1s, -webkit-transform .6s ease-out .1s;
    transition: transform .6s ease-out .1s, opacity .6s ease-out .1s;
    transition: transform .6s ease-out .1s, opacity .6s ease-out .1s, -webkit-transform .6s ease-out .1s;
    opacity: 0;
    -webkit-transform: translate(0, 30px);
    transform: translate(0, 30px)
  }
  .inViewFadeVBSlide--pointAOver.isInview {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0)
  }
}

.inViewFadeHLSlide {
  -webkit-transition: opacity .6s ease-out .1s, -webkit-transform .6s ease-out .1s;
  transition: opacity .6s ease-out .1s, -webkit-transform .6s ease-out .1s;
  transition: transform .6s ease-out .1s, opacity .6s ease-out .1s;
  transition: transform .6s ease-out .1s, opacity .6s ease-out .1s, -webkit-transform .6s ease-out .1s;
  opacity: 0;
  -webkit-transform: translate(-30px, 0);
  transform: translate(-30px, 0)
}

.inViewFadeHLSlide.isInview {
  opacity: 1;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0)
}

.inViewFadeHRSlide {
  -webkit-transform-style: preserve-3d;
  -webkit-transform: translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transition: opacity .6s ease-out .1s, -webkit-transform .6s ease-out .1s;
  transition: opacity .6s ease-out .1s, -webkit-transform .6s ease-out .1s;
  transition: transform .6s ease-out .1s, opacity .6s ease-out .1s;
  transition: transform .6s ease-out .1s, opacity .6s ease-out .1s, -webkit-transform .6s ease-out .1s;
  opacity: 0;
  -webkit-transform: translate(30px, 0);
  transform: translate(30px, 0)
}

.inViewFadeHRSlide.isInview {
  opacity: 1;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0)
}

.inViewCoverWhite:after {
  display: block;
  position: absolute;
  content: "";
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: width 1.2s ease-in-out .2s;
  transition: width 1.2s ease-in-out .2s;
  z-index: 1;
  background-color: #fff
}

.inViewCoverWhite.inViewCoverWhite--fast:after {
  -webkit-transition-delay: 0ms;
  transition-delay: 0ms;
  -webkit-transition-duration: 1.2s;
  transition-duration: 1.2s
}

.inViewCoverWhite.isInview:after {
  width: 0%
}

.inViewCoverWhite.inViewCoverWhite--reverse:after {
  right: auto;
  left: 0
}

.isInview.jsInviewDelay-1 {
  -webkit-transition-delay: .1s;
  transition-delay: .1s
}

.isInview.jsInviewDelay-2 {
  -webkit-transition-delay: .2s;
  transition-delay: .2s
}

.isInview.jsInviewDelay-3 {
  -webkit-transition-delay: .3s;
  transition-delay: .3s
}

.isInview.jsInviewDelay-4 {
  -webkit-transition-delay: .4s;
  transition-delay: .4s
}

.isInview.jsInviewDelay-5 {
  -webkit-transition-delay: .5s;
  transition-delay: .5s
}

.isInview.jsInviewDelay-6 {
  -webkit-transition-delay: .6s;
  transition-delay: .6s
}

.isInview.jsInviewDelay-7 {
  -webkit-transition-delay: .7s;
  transition-delay: .7s
}

.isInview.jsInviewDelay-8 {
  -webkit-transition-delay: .8s;
  transition-delay: .8s
}

.isInview.jsInviewDelay-9 {
  -webkit-transition-delay: .9s;
  transition-delay: .9s
}

.isInview.jsInviewDelay-10 {
  -webkit-transition-delay: 1s;
  transition-delay: 1s
}

.isInview.jsInviewDelay-11 {
  -webkit-transition-delay: 1.1s;
  transition-delay: 1.1s
}

.isInview.jsInviewDelay-12 {
  -webkit-transition-delay: 1.2s;
  transition-delay: 1.2s
}

.isInview.jsInviewDelay-13 {
  -webkit-transition-delay: 1.3s;
  transition-delay: 1.3s
}

.isInview.jsInviewDelay-14 {
  -webkit-transition-delay: 1.4s;
  transition-delay: 1.4s
}

.isInview.jsInviewDelay-15 {
  -webkit-transition-delay: 1.5s;
  transition-delay: 1.5s
}

.isInview.jsInviewDelay-16 {
  -webkit-transition-delay: 1.6s;
  transition-delay: 1.6s
}

.isInview.jsInviewDelay-17 {
  -webkit-transition-delay: 1.7s;
  transition-delay: 1.7s
}

.isInview.jsInviewDelay-18 {
  -webkit-transition-delay: 1.8s;
  transition-delay: 1.8s
}

.isInview.jsInviewDelay-19 {
  -webkit-transition-delay: 1.9s;
  transition-delay: 1.9s
}

.isInview.jsInviewDelay-20 {
  -webkit-transition-delay: 2s;
  transition-delay: 2s
}

.vhCenter {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.list-columns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.list-columns--5>* {
  width: 20%
}

.list-columns--4>* {
  width: 25%
}

.list-columns--3>* {
  width: 33.3%
}

.list-columns--3>:nth-child(3n) {
  width: 33.4%
}

.list-columns--2>* {
  width: 50%
}

.list-columns--hcenter {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}

.list-columns--vcenter {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.list-columns-4-2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

@media screen and (max-width:799px) {
  .list-columns-4-2>* {
    width: 50%
  }
}

@media screen and (min-width:800px) {
  .list-columns-4-2>* {
    width: 25%
  }
}

.split-group-3-1 {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 auto
}

.split-group-3-1>:nth-child(1), .split-group-3-1>:nth-child(2), .split-group-3-1>:nth-child(3) {
  width: 100%
}

@media screen and (min-width:800px) {
  .split-group-3-1 {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
  }
  .split-group-3-1>:nth-child(1) {
    width: 33.3333%
  }
  .split-group-3-1>:nth-child(2) {
    width: 33.3333%
  }
  .split-group-3-1>:nth-child(3) {
    width: 33.3334%
  }
}

.split-group-2 {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  margin: 0 auto;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap
}

.split-group-2.split-group-2--vMiddleAlign {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.split-group-2>:nth-child(1) {
  width: 50%
}

.split-group-2>:nth-child(2) {
  width: 50%
}

.split-group-2.split-group-2--bordered:before {
  position: absolute;
  display: block;
  content: "";
  left: 50%;
  top: 0;
  width: 1px;
  height: 100%;
  background-color: #eee
}

.split-group-2-1 {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 auto
}

.split-group-2-1>:nth-child(1), .split-group-2-1>:nth-child(2) {
  width: 100%
}

.split-group-2-1.split-group-2-1--vMiddleAlign {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

@media screen and (max-width:799px) {
  .split-group-2-1.split-group-2-1--bordered>:nth-child(1) {
    border-bottom: solid 1px #eee
  }
}

@media screen and (min-width:800px) {
  .split-group-2-1 {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
  }
  .split-group-2-1>:nth-child(1) {
    width: 50%
  }
  .split-group-2-1>:nth-child(2) {
    width: 50%
  }
  .split-group-2-1.split-group-2-1--bordered:before {
    position: absolute;
    display: block;
    content: "";
    left: 50%;
    top: 0;
    width: 1px;
    height: 100%;
    background-color: #eee
  }
}

.picture {
  position: relative;
  overflow: hidden
}

.picture .picture__wrap {
  position: relative;
  width: 100%;
  height: auto;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat
}

.picture .picture__wrap.picture__wrap--positionRight {
  background-position: right center
}

.picture .picture__wrap.picture__wrap--positionLeft {
  background-position: left center
}

@media screen and (min-width:800px) {
  .picture.picture--autoStreatch .picture__wrap {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%
  }
}

.picture.picture--alignRight {
  margin: 0 0 0 auto
}

.picture.picture--alignCenter {
  margin: 0 auto
}

@media screen and (max-width:799px) {
  .picture.picture--split-left .picture__wrap, .picture.picture--split-right .picture__wrap {
    left: 20px;
    width: calc(100% - 40px)
  }
}

@media screen and (min-width:800px) {
  .picture.picture--split-left .picture__wrap {
    right: 50px;
    width: calc(100% - 50px)
  }
  .picture.picture--split-right .picture__wrap {
    left: 50px;
    width: calc(100% - 50px)
  }
}

ul.listStyle-maruNumber li:nth-child(1) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-maruNumber li:nth-child(1)::before {
  position: absolute;
  display: block;
  content: "①";
  left: 0;
  top: 0
}

ul.listStyle-maruNumber li:nth-child(2) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-maruNumber li:nth-child(2)::before {
  position: absolute;
  display: block;
  content: "②";
  left: 0;
  top: 0
}

ul.listStyle-maruNumber li:nth-child(3) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-maruNumber li:nth-child(3)::before {
  position: absolute;
  display: block;
  content: "③";
  left: 0;
  top: 0
}

ul.listStyle-maruNumber li:nth-child(4) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-maruNumber li:nth-child(4)::before {
  position: absolute;
  display: block;
  content: "④";
  left: 0;
  top: 0
}

ul.listStyle-maruNumber li:nth-child(5) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-maruNumber li:nth-child(5)::before {
  position: absolute;
  display: block;
  content: "⑤";
  left: 0;
  top: 0
}

ul.listStyle-maruNumber li:nth-child(6) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-maruNumber li:nth-child(6)::before {
  position: absolute;
  display: block;
  content: "⑥";
  left: 0;
  top: 0
}

ul.listStyle-maruNumber li:nth-child(7) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-maruNumber li:nth-child(7)::before {
  position: absolute;
  display: block;
  content: "⑦";
  left: 0;
  top: 0
}

ul.listStyle-maruNumber li:nth-child(8) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-maruNumber li:nth-child(8)::before {
  position: absolute;
  display: block;
  content: "⑧";
  left: 0;
  top: 0
}

ul.listStyle-maruNumber li:nth-child(9) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-maruNumber li:nth-child(9)::before {
  position: absolute;
  display: block;
  content: "⑨";
  left: 0;
  top: 0
}

ul.listStyle-maruNumber li:nth-child(10) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-maruNumber li:nth-child(10)::before {
  position: absolute;
  display: block;
  content: "⑩";
  left: 0;
  top: 0
}

ul.listStyle-maruNumber li:nth-child(11) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-maruNumber li:nth-child(11)::before {
  position: absolute;
  display: block;
  content: "⑪";
  left: 0;
  top: 0
}

ul.listStyle-maruNumber li:nth-child(12) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-maruNumber li:nth-child(12)::before {
  position: absolute;
  display: block;
  content: "⑫";
  left: 0;
  top: 0
}

ul.listStyle-maruNumber li:nth-child(13) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-maruNumber li:nth-child(13)::before {
  position: absolute;
  display: block;
  content: "⑬";
  left: 0;
  top: 0
}

ul.listStyle-maruNumber li:nth-child(14) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-maruNumber li:nth-child(14)::before {
  position: absolute;
  display: block;
  content: "⑭";
  left: 0;
  top: 0
}

ul.listStyle-maruNumber li:nth-child(15) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-maruNumber li:nth-child(15)::before {
  position: absolute;
  display: block;
  content: "⑮";
  left: 0;
  top: 0
}

ul.listStyle-maruNumber li:nth-child(16) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-maruNumber li:nth-child(16)::before {
  position: absolute;
  display: block;
  content: "⑯";
  left: 0;
  top: 0
}

ul.listStyle-maruNumber li:nth-child(17) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-maruNumber li:nth-child(17)::before {
  position: absolute;
  display: block;
  content: "⑰";
  left: 0;
  top: 0
}

ul.listStyle-maruNumber li:nth-child(18) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-maruNumber li:nth-child(18)::before {
  position: absolute;
  display: block;
  content: "⑱";
  left: 0;
  top: 0
}

ul.listStyle-maruNumber li:nth-child(19) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-maruNumber li:nth-child(19)::before {
  position: absolute;
  display: block;
  content: "⑲";
  left: 0;
  top: 0
}

ul.listStyle-maruNumber li:nth-child(20) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-maruNumber li:nth-child(20)::before {
  position: absolute;
  display: block;
  content: "⑳";
  left: 0;
  top: 0
}

ul.listStyle-kakkoNumber li:nth-child(1) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-kakkoNumber li:nth-child(1)::before {
  position: absolute;
  display: block;
  content: "⑴";
  left: 0;
  top: 0
}

ul.listStyle-kakkoNumber li:nth-child(2) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-kakkoNumber li:nth-child(2)::before {
  position: absolute;
  display: block;
  content: "⑵";
  left: 0;
  top: 0
}

ul.listStyle-kakkoNumber li:nth-child(3) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-kakkoNumber li:nth-child(3)::before {
  position: absolute;
  display: block;
  content: "⑶";
  left: 0;
  top: 0
}

ul.listStyle-kakkoNumber li:nth-child(4) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-kakkoNumber li:nth-child(4)::before {
  position: absolute;
  display: block;
  content: "⑷";
  left: 0;
  top: 0
}

ul.listStyle-kakkoNumber li:nth-child(5) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-kakkoNumber li:nth-child(5)::before {
  position: absolute;
  display: block;
  content: "⑸";
  left: 0;
  top: 0
}

ul.listStyle-kakkoNumber li:nth-child(6) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-kakkoNumber li:nth-child(6)::before {
  position: absolute;
  display: block;
  content: "⑹";
  left: 0;
  top: 0
}

ul.listStyle-kakkoNumber li:nth-child(7) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-kakkoNumber li:nth-child(7)::before {
  position: absolute;
  display: block;
  content: "⑺";
  left: 0;
  top: 0
}

ul.listStyle-kakkoNumber li:nth-child(8) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-kakkoNumber li:nth-child(8)::before {
  position: absolute;
  display: block;
  content: "⑻";
  left: 0;
  top: 0
}

ul.listStyle-kakkoNumber li:nth-child(9) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-kakkoNumber li:nth-child(9)::before {
  position: absolute;
  display: block;
  content: "⑼";
  left: 0;
  top: 0
}

ul.listStyle-kakkoNumber li:nth-child(10) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-kakkoNumber li:nth-child(10)::before {
  position: absolute;
  display: block;
  content: "⑽";
  left: 0;
  top: 0
}

ul.listStyle-kakkoNumber li:nth-child(11) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-kakkoNumber li:nth-child(11)::before {
  position: absolute;
  display: block;
  content: "⑾";
  left: 0;
  top: 0
}

ul.listStyle-kakkoNumber li:nth-child(12) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-kakkoNumber li:nth-child(12)::before {
  position: absolute;
  display: block;
  content: "⑿";
  left: 0;
  top: 0
}

ul.listStyle-kakkoNumber li:nth-child(13) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-kakkoNumber li:nth-child(13)::before {
  position: absolute;
  display: block;
  content: "⒀";
  left: 0;
  top: 0
}

ul.listStyle-kakkoNumber li:nth-child(14) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-kakkoNumber li:nth-child(14)::before {
  position: absolute;
  display: block;
  content: "⒁";
  left: 0;
  top: 0
}

ul.listStyle-kakkoNumber li:nth-child(15) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-kakkoNumber li:nth-child(15)::before {
  position: absolute;
  display: block;
  content: "⒂";
  left: 0;
  top: 0
}

ul.listStyle-kakkoNumber li:nth-child(16) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-kakkoNumber li:nth-child(16)::before {
  position: absolute;
  display: block;
  content: "⒃";
  left: 0;
  top: 0
}

ul.listStyle-kakkoNumber li:nth-child(17) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-kakkoNumber li:nth-child(17)::before {
  position: absolute;
  display: block;
  content: "⒄";
  left: 0;
  top: 0
}

ul.listStyle-kakkoNumber li:nth-child(18) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-kakkoNumber li:nth-child(18)::before {
  position: absolute;
  display: block;
  content: "⒅";
  left: 0;
  top: 0
}

ul.listStyle-kakkoNumber li:nth-child(19) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-kakkoNumber li:nth-child(19)::before {
  position: absolute;
  display: block;
  content: "⒆";
  left: 0;
  top: 0
}

ul.listStyle-kakkoNumber li:nth-child(20) {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-kakkoNumber li:nth-child(20)::before {
  position: absolute;
  display: block;
  content: "⒇";
  left: 0;
  top: 0
}

ul.listStyle-dot li {
  position: relative;
  padding-left: 1.5em
}

ul.listStyle-dot li::before {
  position: absolute;
  display: block;
  content: "・";
  left: 0;
  top: 0;
  padding-left: .5em
}

.iframe {
  position: relative
}

.iframe .iframe__wrap {
  width: 100%
}

.iframe .iframe__wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

.iframe.iframe--16-9 .iframe__wrap {
  padding-bottom: 56.25%
}

dl.basic-definition-list:after {
  content: " ";
  display: block;
  clear: both
}

dl.basic-definition-list dt {
  float: left;
  width: 100px;
  display: block;
  clear: both;
  margin: 0;
  padding: 10px 0 0 0
}

dl.basic-definition-list dd {
  padding: 10px 0 0 0;
  padding-left: 120px;
  margin: 0
}

dl.basic-definition-list dd:after {
  content: " ";
  display: block;
  clear: both
}

@-webkit-keyframes goHide--height100percent {
  0% {
    height: 100%
  }
  99% {
    height: 100%
  }
  100% {
    height: 0%
  }
}

@keyframes goHide--height100percent {
  0% {
    height: 100%
  }
  99% {
    height: 100%
  }
  100% {
    height: 0%
  }
}

@-webkit-keyframes goHide--heightAuto {
  0% {
    height: auto;
    opacity: 1
  }
  99% {
    height: auto;
    opacity: 0
  }
  100% {
    height: 0%;
    opacity: 0
  }
}

@keyframes goHide--heightAuto {
  0% {
    height: auto;
    opacity: 1
  }
  99% {
    height: auto;
    opacity: 0
  }
  100% {
    height: 0%;
    opacity: 0
  }
}

@-webkit-keyframes goShow--height100percent {
  0% {
    height: 0%
  }
  1% {
    height: 100%
  }
  2% {
    height: 100%
  }
  100% {
    height: 100%
  }
}

@keyframes goShow--height100percent {
  0% {
    height: 0%
  }
  1% {
    height: 100%
  }
  2% {
    height: 100%
  }
  100% {
    height: 100%
  }
}

@-webkit-keyframes goShow--heightAuto {
  0% {
    height: 0%;
    opacity: 0
  }
  1% {
    height: auto;
    opacity: 0
  }
  2% {
    height: auto;
    opacity: 0
  }
  100% {
    height: auto;
    opacity: 1
  }
}

@keyframes goShow--heightAuto {
  0% {
    height: 0%;
    opacity: 0
  }
  1% {
    height: auto;
    opacity: 0
  }
  2% {
    height: auto;
    opacity: 0
  }
  100% {
    height: auto;
    opacity: 1
  }
}

@media screen and (max-width:799px) {
  body {
    min-width: 375px
  }
}

@media screen and (min-width:800px) {
  body {
    min-width: 1000px
  }
}

@media screen and (min-width:800px) {
  .limit-width-wrap {
    padding-left: 83px;
    padding-right: 83px
  }
  .limit-width-wrap>* {
    max-width: 1200px;
    margin: 0 auto
  }
  .limit-width-wrap--left {
    padding-left: 83px
  }
  .limit-width-wrap--left>* {
    max-width: 600px;
    margin: 0 0 0 auto
  }
}

@media screen and (min-width:800px) {
  .basic-group {
    max-width: 1366px;
    margin: 0 auto;
    padding-left: 83px;
    padding-right: 83px
  }
}

@media screen and (max-width:799px) {
  .basic-group-sp {
    padding-left: 20px;
    padding-right: 20px
  }
}

@media screen and (max-width:799px) {
  .basic-dt-dd {
    border-top: solid 1px #e0e0e0
  }
  .basic-dt-dd dt {
    font-size: 15px;
    line-height: 1.933;
    color: #006cba;
    padding-top: 10px
  }
  .basic-dt-dd dd {
    border-bottom: solid 1px #e0e0e0;
    font-size: 15px;
    line-height: 1.933;
    margin: 0;
    padding: 0;
    padding-bottom: 10px
  }
  .basic-dt-dd dd .small-text {
    display: inline-block;
    font-size: 10px
  }
}

@media screen and (min-width:800px) {
  .basic-dt-dd {
    border-bottom: solid 1px #e0e0e0
  }
  .basic-dt-dd dt {
    float: left;
    width: 195px;
    display: block;
    clear: both;
    margin: 0;
    padding: 20px 0 0 0
  }
  .basic-dt-dd dd {
    padding: 20px 0 0 0;
    padding-left: 235px;
    margin: 0
  }
  .basic-dt-dd dd:after {
    content: " ";
    display: block;
    clear: both
  }
  .basic-dt-dd dt {
    border-top: solid 1px #e0e0e0;
    font-size: 16px;
    line-height: 2.063;
    color: #006cba
  }
  .basic-dt-dd dd {
    border-top: solid 1px #e0e0e0;
    font-size: 16px;
    line-height: 2.063;
    padding-bottom: 20px
  }
  .basic-dt-dd dd .small-text {
    display: inline-block;
    padding-left: 1em;
    font-size: 12px
  }
}

@media screen and (max-width:799px) {
  .basic-dt-dd-2 dt {
    font-size: 15px;
    color: #006cba;
    font-weight: 700
  }
  .basic-dt-dd-2 dd {
    padding: 0 0 15px 0;
    margin: 0;
    font-size: 15px;
    line-height: 1.667
  }
  .basic-dt-dd-2 dd:last-child {
    padding-bottom: 0
  }
}

@media screen and (min-width:800px) {
  .basic-dt-dd-2 dt {
    font-size: 18px;
    color: #006cba;
    font-weight: 700
  }
  .basic-dt-dd-2 dd {
    padding: 0 0 30px 0;
    margin: 0;
    font-size: 16px;
    line-height: 2.063
  }
  .basic-dt-dd-2 dd:last-child {
    padding-bottom: 0
  }
}

@media screen and (max-width:799px) {
  .common-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 100;
    -webkit-animation: goHide--height100percent .6s ease-out 0ms forwards;
    animation: goHide--height100percent .6s ease-out 0ms forwards
  }
  .common-header #baimosoft-logo {
    fill: #000
  }
  .common-header nav {
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt"
  }
  .common-header nav>:nth-child(1) {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 50px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    z-index: 101;
    background-color: #fff
  }
  .common-header nav>:nth-child(1)::before {
    position: absolute;
    display: block;
    content: '';
    background-color: #000;
    top: 0;
    left: auto;
    right: 0;
    width: 0%;
    height: 100%;
    -webkit-transition: width .3s ease-in-out 0s;
    transition: width .3s ease-in-out 0s
  }
  .common-header nav>:nth-child(2) {
    position: absolute;
    width: 100%;
    height: calc(100% - 20px);
    top: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    overflow: hidden
  }
  .common-header nav>:nth-child(2)::before {
    position: absolute;
    display: block;
    content: '';
    background-color: #000;
    top: 0;
    left: auto;
    right: 0;
    width: 0%;
    height: 100%;
    -webkit-transition: width .3s ease-in-out 0s;
    transition: width .3s ease-in-out 0s
  }
  .common-header h1.common-header__logo {
    display: block;
    font-weight: 400;
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: 0 0
  }
  .common-header .common-header__logo {
    padding: 0;
    margin: 0
  }
  .common-header .common-header__logo a {
    position: relative;
    display: block;
    width: 156px;
    height: 100%;
    z-index: 1;
    margin-left: 20px
  }
  .common-header .common-header__logo a>* {
    display: block;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }
  .common-header .common-header__logo a svg {
    width: 156px!important;
    height: 25px!important
  }
  .common-header .common-header__link {
    text-align: center;
    -webkit-transition: all .3s ease-in;
    transition: all .3s ease-in;
    opacity: 0;
    height: 100%;
    width: 100%
  }
  .common-header .common-header__link .common-header__linkul {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }
  .common-header .common-header__link .common-header__linkul ul {
    width: 100%;
    margin: 0 auto
  }
  .common-header .common-header__link ul li a {
    font-size: 18px;
    font-weight: 400;
    color: #fff
  }
  .common-header .common-header__link .common-header__link-item {
    -webkit-transition: opacity .1s ease-out 0s, -webkit-transform .3s ease-out 0s;
    transition: opacity .1s ease-out 0s, -webkit-transform .3s ease-out 0s;
    transition: opacity .1s ease-out 0s, transform .3s ease-out 0s;
    transition: opacity .1s ease-out 0s, transform .3s ease-out 0s, -webkit-transform .3s ease-out 0s;
    -webkit-transform: translate(-50px, 0);
    transform: translate(-50px, 0);
    opacity: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
  }
  .common-header .common-header__link .common-header__link-item:nth-child(even) {
    -webkit-transform: translate(50px, 0);
    transform: translate(50px, 0)
  }
  .common-header .common-header__link li.common-header__link-item a {
    display: block;
    padding: 8px 0
  }
  .common-header .common-header__link li.common-header__link-item a>span {
    display: inline-block;
    vertical-align: middle;
    padding-right: 4px
  }
  .common-header .btn-contact {
    display: block;
    background-image: -webkit-gradient(linear, left top, right top, color-stop(0, #379ad3), to(#004e9d));
    background-image: -webkit-linear-gradient(left, #379ad3 0, #004e9d 100%);
    background-image: linear-gradient(90deg, #379ad3 0, #004e9d 100%);
    text-align: center;
    height: 60px;
    line-height: 60px;
    color: #fff;
    font-weight: 700;
    font-size: 15px
  }
  .common-header .btn-contact span {
    display: inline-block;
    vertical-align: middle;
    margin-right: 16px;
    padding-bottom: 12px
  }
  .common-header .btn-contact:after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    width: 8px;
    height: 12px;
    background-size: contain;
    background-position: center;
    margin-top: 1px;
    margin-bottom: 12px;
    background-repeat: no-repeat;
    background-image: url(../img/common/arrow-w.svg)
  }
  .common-header .common-header__toggle {
    position: absolute;
    top: 0;
    right: 0;
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: 0;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 50px;
    height: 100%;
    -webkit-transition: all .3s ease-out 0s;
    transition: all .3s ease-out 0s
  }
  .common-header .common-header__toggle div {
    margin-left: 22px;
    width: 5px;
    height: 5px;
    background-color: #000;
    border-radius: 50%;
    overflow: hidden
  }
  .common-header .common-header__toggle div:nth-child(1) {
    -webkit-transition: all .3s ease-out 0s;
    transition: all .3s ease-out 0s;
    -webkit-transform-origin: 0 50%;
    transform-origin: 0 50%
  }
  .common-header .common-header__toggle div:nth-child(2) {
    margin-top: 5px;
    margin-bottom: 5px;
    -webkit-transition: opacity .3s ease-out 0s;
    transition: opacity .3s ease-out 0s
  }
  .common-header .common-header__toggle div:nth-child(3) {
    -webkit-transform-origin: 0 50%;
    transform-origin: 0 50%;
    -webkit-transition: all .3s ease-out 0s;
    transition: all .3s ease-out 0s
  }
  .is-nav-show .common-header {
    -webkit-animation: goShow--height100percent .6s ease-out 0ms forwards;
    animation: goShow--height100percent .6s ease-out 0ms forwards
  }
  .is-nav-show .common-header #baimosoft-logo {
    fill: #fff
  }
  .is-nav-show .common-header .common-header__toggle {
    -webkit-transform: translate(-10px, 0);
    transform: translate(-10px, 0)
  }
  .is-nav-show .common-header .common-header__toggle div {
    border-radius: 5px;
    height: 4px
  }
  .is-nav-show .common-header .common-header__toggle div:nth-child(1) {
    width: 36px;
    background-color: #fff;
    -webkit-transform: rotate(45deg) translate(-5px, 0);
    transform: rotate(45deg) translate(-5px, 0)
  }
  .is-nav-show .common-header .common-header__toggle div:nth-child(2) {
    opacity: 0
  }
  .is-nav-show .common-header .common-header__toggle div:nth-child(3) {
    width: 36px;
    background-color: #fff;
    -webkit-transform: rotate(-45deg) translate(-5px, 0);
    transform: rotate(-45deg) translate(-5px, 0)
  }
  .is-nav-show .common-header nav>:nth-child(1)::before {
    left: 0;
    right: auto;
    width: 100%
  }
  .is-nav-show .common-header nav>:nth-child(2)::before {
    left: 0;
    right: auto;
    width: 100%
  }
  .is-nav-show .common-header .common-header__link {
    opacity: 1;
    margin-top: 0;
    -webkit-transition-delay: .3s;
    transition-delay: .3s
  }
  .is-nav-show .common-header .common-header__link .common-header__link-item {
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    opacity: 1
  }
  .is-nav-show .common-header .common-header__link .common-header__link-item:nth-child(1) {
    -webkit-transition-delay: .25s;
    transition-delay: .25s
  }
  .is-nav-show .common-header .common-header__link .common-header__link-item:nth-child(2) {
    -webkit-transition-delay: .3s;
    transition-delay: .3s
  }
  .is-nav-show .common-header .common-header__link .common-header__link-item:nth-child(3) {
    -webkit-transition-delay: .35s;
    transition-delay: .35s
  }
  .is-nav-show .common-header .common-header__link .common-header__link-item:nth-child(4) {
    -webkit-transition-delay: .4s;
    transition-delay: .4s
  }
  .is-nav-show .common-header .common-header__link .common-header__link-item:nth-child(5) {
    -webkit-transition-delay: .45s;
    transition-delay: .45s
  }
  .is-nav-show .common-header .common-header__link .common-header__link-item:nth-child(6) {
    -webkit-transition-delay: .5s;
    transition-delay: .5s
  }
  .is-nav-show .common-header .common-header__link .common-header__link-item:nth-child(7) {
    -webkit-transition-delay: .55s;
    transition-delay: .55s
  }
  .is-nav-show .common-header .common-header__link .common-header__link-item:nth-child(8) {
    -webkit-transition-delay: .6s;
    transition-delay: .6s
  }
  .is-nav-show .common-header .common-header__link .common-header__link-item:nth-child(9) {
    -webkit-transition-delay: .65s;
    transition-delay: .65s
  }
  .is-nav-show .common-header .common-header__link .common-header__link-item:nth-child(10) {
    -webkit-transition-delay: .7s;
    transition-delay: .7s
  }
}

@media screen and (min-width:800px) {
  .common-header {
    position: relative;
    width: 100%;
    height: 100px;
    z-index: 100;
    position: absolute;
    bottom: 0
  }
  .common-header.fixed {
    position: fixed;
    top: 0;
    bottom: auto;
    left: 0;
    z-index: 100
  }
  .common-header>* {
    position: absolute;
    background-color: #fefefe;
    width: 100%;
    height: 100px;
    min-width: 1000px;
    overflow: hidden;
    left: 0;
    bottom: 0
  }
  .common-header button {
    display: none
  }
  .common-header nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt"
  }
  .common-header h1.common-header__logo {
    display: block;
    font-weight: 400;
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: 0 0
  }
  .common-header .common-header__logo {
    height: 100%;
    padding: 0;
    margin: 0
  }
  .common-header .common-header__logo a {
    position: relative;
    display: block;
    width: 184px;
    height: 100%;
    z-index: 1;
    margin-left: 50px
  }
}

@media screen and (min-width:800px) and (min-width:800px) {
  .common-header .common-header__logo a {
    -webkit-transition: opacity .4s ease;
    transition: opacity .4s ease
  }
  .common-header .common-header__logo a:hover {
    opacity: .6;
    -webkit-transition-duration: 0s;
    transition-duration: 0s
  }
}

@media screen and (min-width:800px) {
  .common-header .common-header__logo a>* {
    display: block;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }
  .common-header .common-header__logo a svg {
    width: 184px!important;
    height: auto!important
  }
  .common-header .common-header__link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }
  .common-header .common-header__link ul {
    display: block
  }
  .common-header .common-header__link ul li {
    display: inline-block
  }
  .common-header .common-header__link li.common-header__link-item {
    display: inline-block;
    padding-right: 20px
  }
  .common-header .common-header__link li.common-header__link-item:last-child {
    padding-right: 52px
  }
  .common-header .common-header__link li.common-header__link-item a {
    position: relative;
    display: inline-block;
    text-decoration: none;
    color: inherit;
    font-size: 16px;
    padding: 10px 0 12px 0;
    line-height: 1
  }
}

@media screen and (min-width:800px) and (min-width:800px) {
  .common-header .common-header__link li.common-header__link-item a {
    -webkit-transition: opacity .4s ease;
    transition: opacity .4s ease
  }
  .common-header .common-header__link li.common-header__link-item a:hover {
    opacity: .6;
    -webkit-transition-duration: 0s;
    transition-duration: 0s
  }
}

@media screen and (min-width:800px) {
  .common-header .common-header__link li.common-header__link-item a>span {
    display: inline-block;
    vertical-align: middle
  }
  .common-header .common-header__link-contact {
    display: none
  }
  .common-header .common-header__contact {
    position: relative;
    display: block;
    width: 220px;
    height: 100%;
    text-align: center;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    background-image: -webkit-gradient(linear, left top, right top, color-stop(0, #379ad3), to(#004e9d));
    background-image: -webkit-linear-gradient(left, #379ad3 0, #004e9d 100%);
    background-image: linear-gradient(90deg, #379ad3 0, #004e9d 100%);
    z-index: 1;
    padding: 4px;
    -webkit-transition: color .3s ease-out 0s;
    transition: color .3s ease-out 0s
  }
  .common-header .common-header__contact div {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    height: 100%;
    background-color: transparent;
    -webkit-transition: background-color .3s ease-out 0s;
    transition: background-color .3s ease-out 0s
  }
  .common-header .common-header__contact div:before {
    position: absolute;
    display: block;
    content: '';
    width: 0%;
    height: 100%;
    top: 0;
    right: 0;
    background-color: #fff;
    z-index: -1;
    -webkit-transition: width .3s ease-out 0s;
    transition: width .3s ease-out 0s
  }
  .common-header .common-header__contact div:after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    width: 9px;
    height: 12px;
    background-size: contain;
    background-position: center;
    margin-top: 1px;
    background-repeat: no-repeat;
    background-image: url(../img/common/arrow-w.svg)
  }
  .common-header .common-header__contact span {
    display: inline-block;
    vertical-align: middle;
    margin-right: 12px;
    padding-bottom: 1px
  }
  .common-header .common-header__contact:hover {
    color: #006cba;
    -webkit-transition-duration: 0s;
    transition-duration: 0s
  }
  .common-header .common-header__contact:hover div {
    -webkit-transition-duration: 0s;
    transition-duration: 0s
  }
  .common-header .common-header__contact:hover div:before {
    width: 100%;
    left: 0;
    right: auto;
    -webkit-transition-duration: 50ms;
    transition-duration: 50ms
  }
  .common-header .common-header__contact:hover div:after {
    background-image: url(../img/common/arrow.svg)
  }
  .short-header .common-header {
    height: 60px
  }
  .short-header .common-header .common-header__logo a>:nth-child(1)>* {
    opacity: 0
  }
  .short-header .common-header .common-header__logo a>:nth-child(2)>* {
    opacity: 1
  }
}

.common-footer {
  position: relative;
  background-color: #000;
  color: #fff;
  overflow: hidden
}

@media screen and (max-width:799px) {
  .common-footer-info {
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt"
  }
  .common-footer-info a {
    color: inherit
  }
}

@media screen and (max-width:799px) and (min-width:800px) {
  .common-footer-info a {
    -webkit-transition: opacity .4s ease;
    transition: opacity .4s ease
  }
  .common-footer-info a:hover {
    opacity: .6;
    -webkit-transition-duration: 0s;
    transition-duration: 0s
  }
}

@media screen and (max-width:799px) {
  .common-footer-info>div {
    padding-top: 7px
  }
  .common-footer-info>div>:nth-child(1) {
    padding: 20px 20px 15px 20px
  }
  .common-footer-info>div>:nth-child(1) svg {
    width: 157px;
    height: auto;
    fill: #fff;
    margin-top: -6px
  }
  .common-footer-info>div>:nth-child(1) p {
    text-decoration: none;
    font-style: normal;
    font-size: 14px;
    line-height: 2
  }
  .common-footer-info>div>:nth-child(1) p>* {
    display: block
  }
  .common-footer-info>div>:nth-child(2) {
    padding: 0 20px
  }
  .common-footer-info>div>:nth-child(2) a {
    display: block;
    color: #fff;
    font-weight: 400
  }
  .common-footer-info>div>:nth-child(2)>ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 12px;
    width: 100%;
    margin: 0 0 0 auto;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-bottom: 12px
  }
  .common-footer-info>div>:nth-child(2)>ul>li {
    width: 100%;
    padding-top: 15px;
    padding-bottom: 15px;
    border-top: solid 1px rgba(255, 255, 255, .2);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
  }
  .common-footer-info>div>:nth-child(2)>ul>li>* {
    width: 50%
  }
  .common-footer-info>div>:nth-child(2)>ul>li>a {
    display: block;
    line-height: 2.583
  }
  .common-footer-info>div>:nth-child(2)>ul ul>li {
    display: block
  }
  .common-footer-info>div>:nth-child(2)>ul li>ul>li {
    font-size: 12px;
    line-height: 2.583
  }
  .common-footer-info>div>:nth-child(2)>ul .common-footer-info__linkwrap--sphalf {
    width: 50%
  }
  .common-footer-info>div>:nth-child(2)>ul .common-footer-info__linkcareer {
    position: relative
  }
  .common-footer-info>div>:nth-child(2)>ul .common-footer-info__linkcareer:after {
    position: absolute;
    display: block;
    content: '';
    width: 25px;
    height: 1px;
    top: 0;
    right: 0;
    background-color: #000;
    margin-top: -1px
  }
  .common-footer-copyright {
    border-top: solid 1px rgba(254, 254, 254, .2)
  }
  .common-footer-copyright>* {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 15px 20px
  }
  .common-footer-copyright>* a {
    color: inherit
  }
  .common-footer-copyright>*>:nth-child(1) {
    font-size: 12px
  }
  .common-footer-copyright>*>:nth-child(2) {
    font-size: 10px;
    color: rgba(255, 255, 255, .5);
    text-align: right
  }
  
  .common-footer-copyright>div>div:first-child {
    padding-top: 135px;
  }
  .common-footer-copyright ul li img{
    width: 150px;
  }
  .common-footer-copyright ul li:first-child {
    padding-top: 30px;
  }
  .common-footer-copyright ul li:last-child {
    padding-top: 20px;
  }
}

@media screen and (min-width:800px) {
  .common-footer-info {
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt"
  }
  .common-footer-info a {
    color: inherit
  }
}

@media screen and (min-width:800px) and (min-width:800px) {
  .common-footer-info a {
    -webkit-transition: opacity .4s ease;
    transition: opacity .4s ease
  }
  .common-footer-info a:hover {
    opacity: .6;
    -webkit-transition-duration: 0s;
    transition-duration: 0s
  }
}

@media screen and (min-width:800px) {
  .common-footer-info>div {
    padding-top: 119px;
    padding-bottom: 65px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
  }
  .common-footer-info>div>:nth-child(1) {
    width: 210px
  }
  .common-footer-info>div>:nth-child(1)>* {
    width: 210px
  }
  .common-footer-info>div>:nth-child(1) svg {
    width: 184px;
    height: auto;
    fill: #fff;
    margin-top: -6px
  }
  .common-footer-info>div>:nth-child(1) p {
    text-decoration: none;
    font-style: normal;
    font-size: 14px;
    line-height: 2
  }
  .common-footer-info>div>:nth-child(1) p>* {
    display: block
  }
  .common-footer-info>div>:nth-child(2) {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
  }
  .common-footer-info>div>:nth-child(2) a {
    color: #fff;
    font-weight: 400
  }
  .common-footer-info>div>:nth-child(2)>ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 14px;
    width: 88%;
    margin: 0 0 0 auto
  }
  .common-footer-info>div>:nth-child(2)>ul>li {
    margin-right: 10px;
    padding-top: 2px;
    padding-right: 5px;
    -webkit-box-flex: 110;
    -ms-flex: 110;
    flex: 110;
    border-top: solid 1px rgba(255, 255, 255, .5)
  }
  .common-footer-info>div>:nth-child(2)>ul>li:nth-child(1), .common-footer-info>div>:nth-child(2)>ul>li:nth-child(2) {
    -webkit-box-flex: 100;
    -ms-flex: 100;
    flex: 100
  }
  .common-footer-info>div>:nth-child(2)>ul>li:nth-child(3) {
    -webkit-box-flex: 190;
    -ms-flex: 190;
    flex: 190
  }
  .common-footer-info>div>:nth-child(2)>ul>li:last-child {
    margin-right: 0
  }
  .common-footer-info>div>:nth-child(2)>ul>li>a {
    display: block;
    line-height: 2.357
  }
  .common-footer-info>div>:nth-child(2)>ul ul>li {
    display: block;
    padding: 7px .5em 7px 0
  }
  .common-footer-info>div>:nth-child(2)>ul .text-small {
    font-size: 10px
  }
}

@media screen and (min-width:800px) and (min-width:800px) and (max-width:1366px) {
  .common-footer-info>div>:nth-child(2) {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
  }
  .common-footer-info>div>:nth-child(2)>ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 88%;
    margin: 0 0 0 auto
  }
  .common-footer-info>div>:nth-child(2)>ul>li {
    position: relative;
    display: block;
    margin-right: 0;
    padding-bottom: 20px;
    padding-top: 2px;
    padding-right: 5px;
    padding-left: 5px;
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
    width: 25%
  }
  .common-footer-info>div>:nth-child(2)>ul>li::after {
    display: block;
    content: '';
    position: absolute;
    top: -1px;
    left: 0;
    width: 5px;
    height: 5px;
    background-color: #000
  }
  .common-footer-info>div>:nth-child(2)>ul>li:last-child {
    margin-right: 0
  }
  .common-footer-info>div>:nth-child(2)>ul>li:nth-child(1), .common-footer-info>div>:nth-child(2)>ul>li:nth-child(2), .common-footer-info>div>:nth-child(2)>ul>li:nth-child(3) {
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none
  }
  .common-footer-info>div>:nth-child(2)>ul>li>a {
    display: block;
    padding-top: 1px;
    line-height: 2.357
  }
  .common-footer-info>div>:nth-child(2)>ul ul>li {
    display: block;
    padding: 7px 0
  }
}

@media screen and (min-width:800px) {
  .common-footer-copyright {
    position: relative;
    border-top: solid 1px #333;
/*    height: 88px;*/
    height: 200px;
    padding-left: 83px;
    padding-right: 83px
  }
}

@media screen and (min-width:800px) and (min-width:800px) {
  .common-footer-copyright a {
    -webkit-transition: opacity .4s ease;
    transition: opacity .4s ease
  }
  .common-footer-copyright a:hover {
    opacity: .6;
    -webkit-transition-duration: 0s;
    transition-duration: 0s
  }
}

@media screen and (min-width:800px) {
  .common-footer-copyright::before {
    position: absolute;
    display: block;
    content: '';
    left: 0;
    bottom: 0;
    width: 50%;
    height: 20px
  }
  .common-footer-copyright>* {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
  }
  .common-footer-copyright>*>:nth-child(1) a {
    display: inline-block;
    color: #fff;
    padding-right: 20px
  }
  .common-footer-copyright>*>:nth-child(2) {
    text-align: right
  }
  .common-footer-copyright>*>* {
/*    line-height: 88px;*/
    line-height: 1;
  }
  .common-footer-copyright>div>div:first-child {
    padding-top: 163px;
  }
  .common-footer-copyright ul li img{
    width: 180px;
  }
  .common-footer-copyright ul li:first-child {
    padding-top: 40px;
  }
  .common-footer-copyright ul li:last-child {
    padding-top: 20px;
  }
}

.btn-more {
  display: inline-block;
  color: inherit
}

.btn-more>* {
  display: inline-block
}

@media screen and (max-width:799px) {
  .btn-more {
    font-size: 15px;
    color: #9fca40
  }
  .btn-more>* {
    position: relative;
    display: block;
    padding-right: 30px
  }
  .btn-more>:before {
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: 1px;
    display: block;
    content: '';
    width: 20px;
    height: 1px;
    background-color: #9fca40
  }
}

@media screen and (min-width:800px) {
  .btn-more {
    font-size: 16px;
    color: #9fca40
  }
  .btn-more>* {
    position: relative;
    display: block;
    padding-right: 30px
  }
  .btn-more>:before {
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: 1px;
    display: block;
    content: '';
    width: 20px;
    height: 1px;
    background-color: #9fca40
  }
}

@media screen and (min-width:800px) {
  a.btn-more>* {
    -webkit-transition: padding-right .4s ease-out 0s;
    transition: padding-right .4s ease-out 0s
  }
  a.btn-more>:before {
    -webkit-transition: width .4s ease-out 0s;
    transition: width .4s ease-out 0s
  }
  a.btn-more:hover>* {
    -webkit-transition-duration: 0ms;
    transition-duration: 0ms;
    padding-right: 50px
  }
  a.btn-more:hover>:before {
    -webkit-transition-duration: 0ms;
    transition-duration: 0ms;
    width: 40px
  }
}

a.btn-big {
  background-color: #000;
  color: #fff;
  display: block;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-weight: 400
}

a.btn-big>* {
  display: inline-block
}

@media screen and (max-width:799px) {
  a.btn-big {
    width: 100%;
    height: 69px;
    font-size: 15px
  }
}

@media screen and (min-width:800px) {
  a.btn-big {
    width: 370px;
    height: 86px;
    font-size: 16px
  }
}

@media screen and (max-width:799px) {
  .page-title-basic {
    margin-bottom: 40px
  }
  .page-title-basic>:nth-child(1) {
    width: 76%;
    height: 200px;
    padding-left: 20px;
    background-color: #000
  }
}

@media screen and (min-width:800px) {
  .page-title-basic {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
  .page-title-basic:before {
    position: absolute;
    display: block;
    content: '';
    background-color: #000;
    width: 100%;
    height: 536px
  }
  .page-title-basic>:nth-child(1) {
    padding-left: 83px;
    width: calc(50% - 290px);
    height: 536px
  }
  .page-title-basic>:nth-child(1)>* {
    max-width: 600px;
    margin: 0 -290px 0 auto
  }
  .page-title-basic>:nth-child(2) {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
  }
}

@media screen and (min-width:800px) and (min-width:800px) and (max-width:1366px) {
  .page-title-basic>:nth-child(1) {
    padding-left: 83px;
    width: 400px
  }
  .page-title-basic>:nth-child(1)>* {
    max-width: auto;
    margin: 0 auto 0 auto
  }
}

@media screen and (max-width:799px) {
  .page-title-basic__title {
    position: relative;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-top: 70px
  }
  .page-title-basic__title>*>span {
    position: relative;
    display: block
  }
  .page-title-basic__title>*>span:nth-child(1) {
    font-size: 26px;
    padding-bottom: 15px;
    color: #fff;
    font-weight: 700;
    letter-spacing: 0
  }
  .page-title-basic__title>*>span:nth-child(1)>:nth-child(2) {
    margin-top: 7px
  }
  .page-title-basic__title>*>span:nth-child(2) {
    font-size: 11px;
    color: #666;
    color: #fff;
    font-weight: 400
  }
}

@media screen and (min-width:800px) {
  .page-title-basic__title {
    position: relative;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }
  .page-title-basic__title:before {
    position: absolute;
    display: block;
    content: '';
    width: 100%;
    height: 100%
  }
  .page-title-basic__title>*>span {
    position: relative;
    display: block
  }
  .page-title-basic__title>*>span:nth-child(1) {
    font-size: 41px;
    padding-top: 9px;
    padding-bottom: 23px;
    color: #fff;
    font-weight: 700;
    letter-spacing: 0
  }
  .page-title-basic__title>*>span:nth-child(1)>:nth-child(2) {
    margin-top: 15px
  }
  .page-title-basic__title>*>span:nth-child(2) {
    font-size: 16px;
    color: #666;
    color: #fff;
    font-weight: 400
  }
}

@media screen and (max-width:799px) {
  .page-title-basic .big-image>:nth-child(1) {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden
  }
  .page-title-basic .big-image>:nth-child(1)>div {
    width: 100%;
    background-color: #fff;
    -webkit-transition: top 1.2s ease-out 0s;
    transition: top 1.2s ease-out 0s;
    background-size: cover;
    background-image: url(../img/home/i1.jpg);
    background-repeat: no-repeat;
    background-position: center
  }
  .page-title-basic .big-image>:nth-child(1)>div:before {
    display: block;
    content: "";
    padding-bottom: 54.66667%
  }
}

@media screen and (min-width:800px) {
  .page-title-basic .big-image {
    position: relative;
    height: 613px;
    margin-top: 157px
  }
  .page-title-basic .big-image>:nth-child(1) {
    position: relative;
    width: 100%;
    height: 100%
  }
  .page-title-basic .big-image>:nth-child(1)>div {
    position: relative;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-image: url(../img/home/i1.jpg);
    background-repeat: no-repeat;
    background-position: center
  }
  .page-title-basic .big-image>:nth-child(2) {
    position: absolute;
    top: -160px;
    height: 160px;
    width: 100%;
    padding-left: 140px
  }
  .page-title-basic .big-image>:nth-child(2):before {
    display: block;
    content: '';
    background-color: #fff;
    width: 100%;
    height: 100%
  }
}

body[data-page-group=product] .page-title-basic .big-image>:nth-child(1)>div {
  background-image: url(../img/home/i2.jpg)
}

body[data-page-group=corporate] .page-title-basic .big-image>:nth-child(1)>div {
  background-image: url(../img/home/i3.jpg)
}

body[data-page-group=career] .page-title-basic .big-image>:nth-child(1)>div {
  background-image: url(../img/home/i4.jpg)
}

.page-intro-title {
  text-align: center
}

@media screen and (max-width:799px) {
  .page-intro-title {
    font-size: 20px;
    line-height: 1.55;
    padding-bottom: 45px
  }
  .page-intro-title span {
    display: inline-block
  }
  .page-intro-title span>span {
    display: inline-block
  }
}

@media screen and (min-width:800px) {
  .page-intro-title {
    font-size: 34px;
    padding-top: 125px;
    line-height: 1.588;
    padding-bottom: 100px
  }
  .page-intro-title span {
    display: inline-block
  }
  .page-intro-title span>span {
    display: inline-block
  }
}

@media screen and (max-width:799px) {
  .basic-sub-title>:nth-child(1) {
    text-align: center;
    font-size: 18px;
    font-weight: 300!important
  }
}

@media screen and (min-width:800px) {
  .basic-sub-title>:nth-child(1) {
    text-align: center;
    font-size: 30px;
    font-weight: 300!important
  }
}

@media screen and (min-width:800px) {
  .basic-simple-title {
    padding-top: 190px
  }
}

@media screen and (max-width:799px) {
  .basic-simple-title__title {
    padding-top: 77px
  }
  .basic-simple-title__title>*>span {
    position: relative;
    display: block
  }
  .basic-simple-title__title>*>span:nth-child(1) {
    font-size: 26px;
    padding-bottom: 15px;
    color: #fff;
    font-weight: 700;
    letter-spacing: 0
  }
  .basic-simple-title__title>*>span:nth-child(1)>:nth-child(2) {
    margin-top: 7px
  }
  .basic-simple-title__title>*>span:nth-child(2) {
    font-size: 11px;
    color: #666;
    color: #fff;
    font-weight: 400
  }
}

@media screen and (min-width:800px) {
  .basic-simple-title__title {
    position: relative;
    padding-bottom: 45px;
    margin-top: -10px
  }
  .basic-simple-title__title:before {
    position: absolute;
    display: block;
    content: '';
    width: 100%;
    height: 100%
  }
  .basic-simple-title__title>*>span {
    position: relative;
    display: block
  }
  .basic-simple-title__title>*>span:nth-child(1) {
    font-size: 41px;
    padding-top: 9px;
    color: #fff;
    font-weight: 700;
    letter-spacing: 0
  }
  .basic-simple-title__title>*>span:nth-child(1)>:nth-child(2) {
    margin-top: 15px
  }
  .basic-simple-title__title>*>span:nth-child(2) {
    padding-top: 23px;
    font-size: 16px;
    color: #666;
    color: #fff;
    font-weight: 400
  }
}

.page-links {
  position: fixed;
  top: 74px;
  width: 100%;
  min-width: 1000px;
  z-index: 49;
  -webkit-transition: top .3s ease-out 0s;
  transition: top .3s ease-out 0s
}

@media screen and (max-width:799px) {
  .page-links {
    display: none
  }
}

@media screen and (min-width:800px) {
  .page-links a {
    -webkit-transition: opacity .4s ease;
    transition: opacity .4s ease
  }
  .page-links a:hover {
    opacity: .6;
    -webkit-transition-duration: 0s;
    transition-duration: 0s
  }
}

.page-links>* {
  position: absolute;
  right: 0;
  top: 0;
  width: 220px;
  background-color: #fff;
  padding: 50px 0 37px 30px
}

.page-links>*>:nth-child(1) {
  font-size: 14px;
  font-weight: 700;
  padding-bottom: 15px
}

.page-links>*>:nth-child(2) {
  font-size: 14px;
  font-size: 14px;
  line-height: 1;
  border-left: solid 1px #f2f2f2
}

.page-links>*>:nth-child(2) li {
  padding-bottom: 10px
}

.page-links>*>:nth-child(2) li a {
  position: relative;
  display: block;
  margin-left: -1px;
  padding-left: 10px;
  color: inherit;
  padding-bottom: 3px;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt"
}

.page-links>*>:nth-child(2) li a:before {
  display: block;
  position: absolute;
  content: '';
  background-color: #006cba;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  opacity: 0
}

.page-links>*>:nth-child(2) li a.is-active:before {
  opacity: 1
}

.short-header .page-links {
  top: 60px
}

#loading {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 79;
  pointer-events: none;
  overflow: hidden;
  background-color: #fff
}

@media screen and (min-width:800px) {
  .covered-loading #loading {
    z-index: 999
  }
}

#loading>* {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100px;
  -webkit-transition: height .4s ease-out 0s;
  transition: height .4s ease-out 0s
}

@media screen and (max-width:799px) {
  #loading>* {
    height: 50px
  }
}

@media screen and (min-width:800px) {
  #loading>* {
    height: 100px
  }
}

#loading>*>* {
  position: relative;
  width: 100%;
  height: 100%
}

#loading>*>:before {
  position: absolute;
  display: block;
  content: '';
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: width .36s ease-in-out 0s;
  transition: width .36s ease-in-out 0s;
  background-color: #fff
}

@media screen and (max-width:799px) {
  #loading>*>:before {
    -webkit-transition-duration: .2s;
    transition-duration: .2s
  }
}

@media screen and (min-width:800px) {
  #loading>*>:before {
    -webkit-transition-duration: .36s;
    transition-duration: .36s
  }
}

.js-loaded #loading {
  background-color: transparent
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-0:before {
    -webkit-transition-delay: 0s;
    transition-delay: 0s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-0:before {
    -webkit-transition-delay: 0s;
    transition-delay: 0s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-1:before {
    -webkit-transition-delay: 30ms;
    transition-delay: 30ms
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-1:before {
    -webkit-transition-delay: 30ms;
    transition-delay: 30ms
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-2:before {
    -webkit-transition-delay: 60ms;
    transition-delay: 60ms
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-2:before {
    -webkit-transition-delay: 60ms;
    transition-delay: 60ms
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-3:before {
    -webkit-transition-delay: 90ms;
    transition-delay: 90ms
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-3:before {
    -webkit-transition-delay: 90ms;
    transition-delay: 90ms
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-4:before {
    -webkit-transition-delay: .12s;
    transition-delay: .12s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-4:before {
    -webkit-transition-delay: .12s;
    transition-delay: .12s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-5:before {
    -webkit-transition-delay: .15s;
    transition-delay: .15s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-5:before {
    -webkit-transition-delay: .15s;
    transition-delay: .15s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-6:before {
    -webkit-transition-delay: .18s;
    transition-delay: .18s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-6:before {
    -webkit-transition-delay: .18s;
    transition-delay: .18s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-7:before {
    -webkit-transition-delay: .21s;
    transition-delay: .21s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-7:before {
    -webkit-transition-delay: .21s;
    transition-delay: .21s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-8:before {
    -webkit-transition-delay: .24s;
    transition-delay: .24s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-8:before {
    -webkit-transition-delay: .24s;
    transition-delay: .24s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-9:before {
    -webkit-transition-delay: .27s;
    transition-delay: .27s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-9:before {
    -webkit-transition-delay: .27s;
    transition-delay: .27s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-10:before {
    -webkit-transition-delay: .3s;
    transition-delay: .3s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-10:before {
    -webkit-transition-delay: .3s;
    transition-delay: .3s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-11:before {
    -webkit-transition-delay: .33s;
    transition-delay: .33s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-11:before {
    -webkit-transition-delay: .33s;
    transition-delay: .33s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-12:before {
    -webkit-transition-delay: .36s;
    transition-delay: .36s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-12:before {
    -webkit-transition-delay: .36s;
    transition-delay: .36s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-13:before {
    -webkit-transition-delay: .39s;
    transition-delay: .39s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-13:before {
    -webkit-transition-delay: .39s;
    transition-delay: .39s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-14:before {
    -webkit-transition-delay: .42s;
    transition-delay: .42s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-14:before {
    -webkit-transition-delay: .42s;
    transition-delay: .42s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-15:before {
    -webkit-transition-delay: .45s;
    transition-delay: .45s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-15:before {
    -webkit-transition-delay: .45s;
    transition-delay: .45s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-16:before {
    -webkit-transition-delay: .48s;
    transition-delay: .48s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-16:before {
    -webkit-transition-delay: .48s;
    transition-delay: .48s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-17:before {
    -webkit-transition-delay: .51s;
    transition-delay: .51s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-17:before {
    -webkit-transition-delay: .51s;
    transition-delay: .51s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-18:before {
    -webkit-transition-delay: .54s;
    transition-delay: .54s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-18:before {
    -webkit-transition-delay: .54s;
    transition-delay: .54s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-19:before {
    -webkit-transition-delay: .57s;
    transition-delay: .57s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-19:before {
    -webkit-transition-delay: .57s;
    transition-delay: .57s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-20:before {
    -webkit-transition-delay: .6s;
    transition-delay: .6s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-20:before {
    -webkit-transition-delay: .6s;
    transition-delay: .6s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-21:before {
    -webkit-transition-delay: .63s;
    transition-delay: .63s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-21:before {
    -webkit-transition-delay: .63s;
    transition-delay: .63s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-22:before {
    -webkit-transition-delay: .66s;
    transition-delay: .66s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-22:before {
    -webkit-transition-delay: .66s;
    transition-delay: .66s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-23:before {
    -webkit-transition-delay: .69s;
    transition-delay: .69s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-23:before {
    -webkit-transition-delay: .69s;
    transition-delay: .69s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-24:before {
    -webkit-transition-delay: .72s;
    transition-delay: .72s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-24:before {
    -webkit-transition-delay: .72s;
    transition-delay: .72s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-25:before {
    -webkit-transition-delay: .75s;
    transition-delay: .75s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-25:before {
    -webkit-transition-delay: .75s;
    transition-delay: .75s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-26:before {
    -webkit-transition-delay: .78s;
    transition-delay: .78s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-26:before {
    -webkit-transition-delay: .78s;
    transition-delay: .78s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-27:before {
    -webkit-transition-delay: .81s;
    transition-delay: .81s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-27:before {
    -webkit-transition-delay: .81s;
    transition-delay: .81s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-28:before {
    -webkit-transition-delay: .84s;
    transition-delay: .84s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-28:before {
    -webkit-transition-delay: .84s;
    transition-delay: .84s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-29:before {
    -webkit-transition-delay: .87s;
    transition-delay: .87s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-29:before {
    -webkit-transition-delay: .87s;
    transition-delay: .87s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-30:before {
    -webkit-transition-delay: .9s;
    transition-delay: .9s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-30:before {
    -webkit-transition-delay: .9s;
    transition-delay: .9s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-31:before {
    -webkit-transition-delay: .93s;
    transition-delay: .93s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-31:before {
    -webkit-transition-delay: .93s;
    transition-delay: .93s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-32:before {
    -webkit-transition-delay: .96s;
    transition-delay: .96s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-32:before {
    -webkit-transition-delay: .96s;
    transition-delay: .96s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-33:before {
    -webkit-transition-delay: .99s;
    transition-delay: .99s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-33:before {
    -webkit-transition-delay: .99s;
    transition-delay: .99s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-34:before {
    -webkit-transition-delay: 1.02s;
    transition-delay: 1.02s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-34:before {
    -webkit-transition-delay: 1.02s;
    transition-delay: 1.02s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-35:before {
    -webkit-transition-delay: 1.05s;
    transition-delay: 1.05s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-35:before {
    -webkit-transition-delay: 1.05s;
    transition-delay: 1.05s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-36:before {
    -webkit-transition-delay: 1.08s;
    transition-delay: 1.08s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-36:before {
    -webkit-transition-delay: 1.08s;
    transition-delay: 1.08s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-37:before {
    -webkit-transition-delay: 1.11s;
    transition-delay: 1.11s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-37:before {
    -webkit-transition-delay: 1.11s;
    transition-delay: 1.11s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-38:before {
    -webkit-transition-delay: 1.14s;
    transition-delay: 1.14s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-38:before {
    -webkit-transition-delay: 1.14s;
    transition-delay: 1.14s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-39:before {
    -webkit-transition-delay: 1.17s;
    transition-delay: 1.17s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-39:before {
    -webkit-transition-delay: 1.17s;
    transition-delay: 1.17s
  }
}

@media screen and (max-width:799px) {
  .js-loaded #loading>*>.panel-40:before {
    -webkit-transition-delay: 1.2s;
    transition-delay: 1.2s
  }
}

@media screen and (min-width:800px) {
  .js-loaded #loading>*>.panel-40:before {
    -webkit-transition-delay: 1.2s;
    transition-delay: 1.2s
  }
}

.js-loaded #loading>*>:before {
  width: 0
}

.js-will-leave #loading>*>:before {
  right: auto;
  left: 0
}

.js-leave #loading>*>:before {
  width: 100%
}

@media screen and (max-width:799px) {
  body[data-page-group=home] .main {
    padding-bottom: 0
  }
  body[data-page-group=home] .main .bg-white {
    padding-bottom: 75px
  }
}

@media screen and (min-width:800px) {
  body[data-page-group=home] .main .bg-white {
    padding-bottom: 190px
  }
  body[data-page-group=home] .home-news {
    padding-bottom: 90px
  }
}

.intro-movie {
  position: relative;
  height: 100vh;
  height: var(--vh);
  background-color: #000
}

.intro-movie__video {
  position: fixed;
  overflow: hidden;
  width: 100%;
  height: 100vh;
  height: var(--vh)
}

@media screen and (max-width:799px) {
  .intro-movie__video {
    -webkit-transform: translate(0, 0)!important;
    transform: translate(0, 0)!important;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
  }
}

@media screen and (min-width:800px) {
  .intro-movie__video {
    -webkit-transition: -webkit-transform 50ms linear;
    transition: -webkit-transform 50ms linear;
    transition: transform 50ms linear;
    transition: transform 50ms linear, -webkit-transform 50ms linear;
    padding-bottom: 99px
  }
}

.intro-movie__video>div:nth-child(1) {
  position: relative;
  width: 100%;
  height: 100%
}

.intro-movie__video video {
  position: relative;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

@media screen and (max-width:799px) {
  .is-nav-show .intro-movie__video video {
    display: none
  }
}

@media screen and (max-width:799px) {
  .intro-movie--scroll {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    color: #fff
  }
  .intro-movie--scroll>* {
    opacity: 0;
    -webkit-transition: opacity .4s ease-out 1.5s;
    transition: opacity .4s ease-out 1.5s
  }
  .intro-movie--scroll>*>:nth-child(1) {
    color: #fff;
    padding-bottom: 50px;
    font-size: 12px;
    font-weight: 700
  }
  .intro-movie--scroll>*>:nth-child(2) {
    position: absolute;
    bottom: 2px;
    left: 50%;
    width: 1px;
    height: 40px
  }
  .intro-movie--scroll>*>:nth-child(2):before {
    position: absolute;
    display: block;
    content: '';
    background-color: #fff;
    height: 0%;
    width: 100%;
    -webkit-animation: line-animation 1.5s ease-in-out 0ms infinite normal;
    animation: line-animation 1.5s ease-in-out 0ms infinite normal
  }
  .loaded .intro-movie--scroll>* {
    opacity: 1
  }
}

@media screen and (min-width:800px) {
  .intro-movie--scroll {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    color: #fff
  }
  .intro-movie--scroll>* {
    opacity: 0;
    -webkit-transition: opacity .4s ease-out 1.5s;
    transition: opacity .4s ease-out 1.5s
  }
  .intro-movie--scroll>*>:nth-child(1) {
    color: #fff;
    padding-bottom: 150px;
    font-size: 12px;
    font-weight: 700
  }
  .intro-movie--scroll>*>:nth-child(2) {
    position: absolute;
    bottom: 102px;
    left: 50%;
    width: 1px;
    height: 40px
  }
  .intro-movie--scroll>*>:nth-child(2):before {
    position: absolute;
    display: block;
    content: '';
    background-color: #fff;
    height: 0%;
    width: 100%;
    -webkit-animation: line-animation 1.5s ease-in-out 0ms infinite normal;
    animation: line-animation 1.5s ease-in-out 0ms infinite normal
  }
  .loaded .intro-movie--scroll>* {
    opacity: 1
  }
}

@-webkit-keyframes line-animation {
  0% {
    top: 0;
    height: 0%
  }
  49% {
    top: 0;
    height: 100%
  }
  50% {
    top: auto;
    bottom: 0;
    height: 100%
  }
  99% {
    top: auto;
    bottom: 0;
    height: 0%
  }
  100% {
    top: 0;
    bottom: auto;
    height: 0%
  }
}

@keyframes line-animation {
  0% {
    top: 0;
    height: 0%
  }
  49% {
    top: 0;
    height: 100%
  }
  50% {
    top: auto;
    bottom: 0;
    height: 100%
  }
  99% {
    top: auto;
    bottom: 0;
    height: 0%
  }
  100% {
    top: 0;
    bottom: auto;
    height: 0%
  }
}

@media screen and (max-width:799px) {
  .home-text {
    padding: 40px 15px 40px 35px;
    background-color: redz
  }
  .home-text>* {
    text-align: center;
    font-size: 20px;
    line-height: 1.55;
    font-weight: 300;
    margin: 0;
    padding-bottom: 0
  }
}

@media screen and (min-width:800px) {
  .home-text {
    padding: 160px 83px 140px 83px
  }
  .home-text>* {
    text-align: center;
    font-size: 34px;
    line-height: 1.588;
    font-weight: 300;
    margin: 0;
    padding-bottom: 0
  }
}

@media screen and (max-width:799px) {
  .home-news .news-title {
    font-size: 15px;
    padding-bottom: 10px
  }
  .home-news .news-more {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-top: 20px
  }
}

@media screen and (min-width:800px) {
  .home-news>:nth-child(1) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
  }
  .home-news .news-title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 150px;
    font-size: 30px;
    font-weight: 700;
    letter-spacing: 0
  }
  .home-news .news-more {
    height: 70px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }
}

@media screen and (min-width:800px) {
  .home-links .home-link-item {
    padding-bottom: 60px
  }
  .home-links .home-link-item:last-child {
    padding-bottom: 0
  }
}

.home-link-item {
  padding-left: 20px
}

@media screen and (max-width:799px) {
  .home-link-item a {
    display: block;
    color: inherit
  }
  .home-link-item a .home-link-item__info {
    padding-top: 45px;
    padding-bottom: 20px
  }
  .home-link-item a .home-link-item__info>:first-child>* {
    display: block
  }
  .home-link-item a .home-link-item__info>:first-child>:nth-child(1) {
    font-size: 30px;
    padding-bottom: 10px;
    font-weight: 700;
    letter-spacing: 0
  }
  .home-link-item a .home-link-item__info>:first-child>:nth-child(2) {
    font-size: 11px;
    color: #666;
    font-weight: 400;
    padding-bottom: 15px
  }
  .home-link-item a .home-link-item__info p {
    font-size: 15px;
    line-height: 1.6;
    color: #666;
    padding-bottom: 15px;
    padding-right: 20px
  }
  .home-link-item a .home-link-item__image {
    position: relative;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    background-color: #fff;
    -webkit-box-shadow: 0 0 18px 2px rgba(7, 0, 2, .1);
    box-shadow: 0 0 18px 2px rgba(7, 0, 2, .1);
    overflow: hidden
  }
  .home-link-item a .home-link-item__image:before {
    display: block;
    content: "";
    padding-bottom: 46.47887%
  }
  .home-link-item a .home-link-item__image>div {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-size: cover;
    background-position: center
  }
  .home-link-item a .home-link-item__image>div:before {
    display: block;
    content: "";
    padding-bottom: 46.47887%
  }
  .home-link-item:nth-child(1) .home-link-item__image div {
    background-image: url(../img/home/i1.jpg)
  }
  .home-link-item:nth-child(2) .home-link-item__image div {
    background-image: url(../img/home/i2.jpg)
  }
  .home-link-item:nth-child(3) .home-link-item__image div {
    background-image: url(../img/home/i3.jpg)
  }
  .home-link-item:nth-child(4) .home-link-item__image div {
    background-image: url(../img/home/i4.jpg)
  }
}

@media screen and (min-width:800px) {
  .home-link-item a {
    display: block;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: inherit
  }
  .home-link-item a .home-link-item__info {
    width: 395px;
    padding-right: 62px
  }
  .home-link-item a .home-link-item__info>:first-child {
    padding-bottom: 18px
  }
  .home-link-item a .home-link-item__info>:first-child>* {
    display: block
  }
  .home-link-item a .home-link-item__info>:first-child>:nth-child(1) {
    font-size: 30px;
    padding-bottom: 19px;
    font-weight: 700;
    letter-spacing: 0
  }
  .home-link-item a .home-link-item__info>:first-child>:nth-child(2) {
    font-size: 16px;
    padding-bottom: 5px;
    color: #666;
    font-weight: 400
  }
  .home-link-item a .home-link-item__info p {
    font-size: 16px;
    line-height: 1.75;
    color: #666;
    padding-bottom: 46px
  }
  .home-link-item a .home-link-item__image {
    position: relative;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    background-color: #fff;
    min-height: 330px;
    -webkit-box-shadow: 0 0 18px 2px rgba(7, 0, 2, .1);
    box-shadow: 0 0 18px 2px rgba(7, 0, 2, .1);
    overflow: hidden
  }
  .home-link-item a .home-link-item__image>div {
    position: absolute;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    -webkit-transition: opacity .4s ease-out 0s;
    transition: opacity .4s ease-out 0s
  }
  .home-link-item a .home-link-item__image>div:before {
    display: block;
    content: "";
    padding-bottom: 62.13753%
  }
  .home-link-item a .btn-more>* {
    -webkit-transition: padding-right .4s ease-out 0s;
    transition: padding-right .4s ease-out 0s
  }
  .home-link-item a .btn-more>:before {
    -webkit-transition: width .4s ease-out 0s;
    transition: width .4s ease-out 0s
  }
  .home-link-item a .home-link-item__image>div {
    -webkit-transition: opacity .4s ease-out 0s;
    transition: opacity .4s ease-out 0s
  }
  .home-link-item a:hover .btn-more>* {
    -webkit-transition-duration: 0ms;
    transition-duration: 0ms;
    padding-right: 50px
  }
  .home-link-item a:hover .btn-more>:before {
    -webkit-transition-duration: 0ms;
    transition-duration: 0ms;
    width: 40px
  }
  .home-link-item a:hover .home-link-item__image>div {
    -webkit-transition-duration: 0ms;
    transition-duration: 0ms;
    opacity: .5
  }
  .home-link-item:nth-child(1) .home-link-item__image div {
    background-image: url(../img/home/i1.jpg)
  }
  .home-link-item:nth-child(2) .home-link-item__image div {
    background-image: url(../img/home/i2.jpg)
  }
  .home-link-item:nth-child(3) .home-link-item__image div {
    background-image: url(../img/home/i3.jpg)
  }
  .home-link-item:nth-child(4) .home-link-item__image div {
    background-image: url(../img/home/i4.jpg)
  }
}

@media screen and (max-width:799px) {
  body[data-page-group=news] .main {
    padding-bottom: 75px
  }
}

@media screen and (min-width:800px) {
  body[data-page-group=news] .main {
    padding-bottom: 150px
  }
}

@media screen and (min-width:800px) and (min-width:800px) {
  body[data-page-group=news] .news-pagination a {
    -webkit-transition: opacity .4s ease;
    transition: opacity .4s ease
  }
  body[data-page-group=news] .news-pagination a:hover {
    opacity: .6;
    -webkit-transition-duration: 0s;
    transition-duration: 0s
  }
}

@media screen and (max-width:799px) {
  .news-list ul {
    border-bottom: solid 1px rgba(0, 0, 0, .1)
  }
  .news-list li a {
    display: block;
    padding: 10px 0;
    border-top: solid 1px rgba(0, 0, 0, .1);
    font-size: 15px;
    line-height: 1.6;
    text-decoration: none
  }
  .news-list a {
    text-decoration: underline;
    color: inherit
  }
}

@media screen and (min-width:800px) {
  .news-list {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
  }
  .news-list ul {
    border-bottom: solid 1px rgba(0, 0, 0, .1)
  }
  .news-list li {
    border-top: solid 1px rgba(0, 0, 0, .1)
  }
  .news-list li a {
    display: block;
    padding: 20px 0;
    font-size: 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    text-decoration: none;
    padding-left: 10px;
    -webkit-transition: -webkit-transform .1s ease-out;
    transition: -webkit-transform .1s ease-out;
    transition: transform .1s ease-out;
    transition: transform .1s ease-out, -webkit-transform .1s ease-out
  }
  .news-list li a>:nth-child(1) {
    width: 94px
  }
  .news-list li a>:nth-child(2) {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
  }
  .news-list li a:hover {
    -webkit-transition-duration: .1s;
    transition-duration: .1s;
    -webkit-transform: translate(-10px, 0);
    transform: translate(-10px, 0)
  }
  .news-list a {
    text-decoration: underline;
    color: inherit
  }
}

@media screen and (max-width:799px) {
  .news-pagination {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-weight: 400;
    padding-top: 50px
  }
  .news-pagination a {
    display: inline-block;
    color: inherit;
    height: 32px;
    font-size: 15px;
    line-height: 32px
  }
  .news-pagination>a {
    width: 50px
  }
  .news-pagination>a:last-child {
    text-align: right
  }
  .news-pagination>div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
  .news-pagination>div>div {
    height: 32px;
    font-size: 15px;
    padding: 0 10px;
    line-height: 32px;
    text-align: center;
    border-left: solid 1px #333
  }
  .news-pagination>div a {
    height: 32px;
    font-size: 15px;
    padding: 0 10px;
    line-height: 32px;
    text-align: center;
    border-left: solid 1px #333
  }
  .news-pagination>div a:last-child {
    border-right: solid 1px #333
  }
}

@media screen and (min-width:800px) {
  .news-pagination {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-weight: 400;
    padding-top: 100px
  }
  .news-pagination a {
    display: inline-block;
    color: inherit
  }
  .news-pagination>a {
    width: 60px;
    font-size: 16px;
    height: 20px;
    line-height: 20px
  }
  .news-pagination>a:last-child {
    text-align: right
  }
  .news-pagination>div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
  .news-pagination>div>div {
    height: 20px;
    font-size: 16px;
    padding: 0 10px;
    line-height: 20px;
    text-align: center;
    border-left: solid 1px #333
  }
  .news-pagination>div a {
    height: 20px;
    font-size: 16px;
    padding: 0 10px;
    line-height: 20px;
    text-align: center;
    border-left: solid 1px #333
  }
  .news-pagination>div a:last-child {
    border-right: solid 1px #333
  }
}

@media screen and (max-width:799px) {
  .news-detail .news-detail__title>:nth-child(1) {
    font-size: 11px
  }
  .news-detail .news-detail__title>:nth-child(2) {
    font-size: 24px;
    line-height: 1.25;
    font-weight: 300!important
  }
}

@media screen and (min-width:800px) {
  .news-detail .news-detail__title>:nth-child(1) {
    font-size: 16px
  }
  .news-detail .news-detail__title>:nth-child(2) {
    font-size: 36px;
    font-weight: 300!important
  }
}

@media screen and (max-width:799px) {
  .news-detail .news-detail__content {
    padding-top: 10px;
    font-size: 15px;
    line-height: 1.6
  }
  .news-detail .news-detail__content h2, .news-detail .news-detail__content h3, .news-detail .news-detail__content h4, .news-detail .news-detail__content h5, .news-detail .news-detail__content h6 {
    font-weight: 400;
    font-size: 15px;
    margin-top: 33px;
    margin-bottom: 5px
  }
  .news-detail .news-detail__content h2 {
    font-size: 20px
  }
  .news-detail .news-detail__content h3 {
    font-size: 17px
  }
  .news-detail .news-detail__content img {
    display: block;
    position: relative;
    width: auto;
    max-width: 100%;
    height: auto;
    margin: 0 auto
  }
  .news-detail .news-detail__content *+blockquote, .news-detail .news-detail__content *+dl, .news-detail .news-detail__content *+img, .news-detail .news-detail__content *+ol, .news-detail .news-detail__content *+p, .news-detail .news-detail__content *+ul {
    margin-top: 23px
  }
  .news-detail .news-detail__content ul li {
    position: relative;
    padding-left: 1.5em
  }
  .news-detail .news-detail__content ul li::before {
    position: absolute;
    top: 0;
    left: .5em;
    display: block;
    content: '・'
  }
  .news-detail .news-detail__content ol {
    padding-left: 2.5em
  }
  .news-detail .news-detail__content ol li {
    list-style: decimal;
    position: relative
  }
  .news-detail .news-detail__content blockquote {
    margin-left: 0;
    margin-right: 0;
    background-color: #f5f5f5;
    padding: 23px
  }
  .news-detail .news-detail__content *+p {
    margin-top: 23px
  }
  .news-detail .news-detail__content dl dd, .news-detail .news-detail__content dl dt {
    padding: 0;
    margin: 0
  }
  .news-detail .news-detail__content dl dt {
    font-weight: 400
  }
  .news-detail .news-detail__content h2+*, .news-detail .news-detail__content h3+*, .news-detail .news-detail__content h4+*, .news-detail .news-detail__content h5+*, .news-detail .news-detail__content h6+* {
    margin-top: 0
  }
  .news-detail .news-detail__content a {
    color: inherit;
    text-decoration: underline
  }
  .news-detail .news-detail__content>:first-child {
    margin-top: 0
  }
}

@media screen and (min-width:800px) {
  .news-detail .news-detail__content {
    padding-top: 30px;
    font-size: 16px;
    line-height: 1.875
  }
  .news-detail .news-detail__content h2, .news-detail .news-detail__content h3, .news-detail .news-detail__content h4, .news-detail .news-detail__content h5, .news-detail .news-detail__content h6 {
    font-weight: 400;
    font-size: 16px;
    margin-top: 40px;
    margin-bottom: 5px
  }
  .news-detail .news-detail__content h2 {
    font-size: 20px
  }
  .news-detail .news-detail__content h3 {
    font-size: 18px
  }
  .news-detail .news-detail__content img {
    display: block;
    position: relative;
    width: auto;
    max-width: 100%;
    height: auto;
    margin: 0 auto
  }
  .news-detail .news-detail__content *+blockquote, .news-detail .news-detail__content *+dl, .news-detail .news-detail__content *+img, .news-detail .news-detail__content *+ol, .news-detail .news-detail__content *+p, .news-detail .news-detail__content *+ul {
    margin-top: 30px
  }
  .news-detail .news-detail__content ul li {
    position: relative;
    padding-left: 1.5em
  }
  .news-detail .news-detail__content ul li::before {
    position: absolute;
    top: 0;
    left: .5em;
    display: block;
    content: '・'
  }
  .news-detail .news-detail__content ol {
    padding-left: 2.5em
  }
  .news-detail .news-detail__content ol li {
    list-style: decimal;
    position: relative
  }
  .news-detail .news-detail__content blockquote {
    margin-left: 0;
    margin-right: 0;
    background-color: #f5f5f5;
    padding: 30px
  }
  .news-detail .news-detail__content *+p {
    margin-top: 30p
  }
  .news-detail .news-detail__content dl dd, .news-detail .news-detail__content dl dt {
    padding: 0;
    margin: 0
  }
  .news-detail .news-detail__content dl dt {
    font-weight: 400
  }
  .news-detail .news-detail__content h2+*, .news-detail .news-detail__content h3+*, .news-detail .news-detail__content h4+*, .news-detail .news-detail__content h5+*, .news-detail .news-detail__content h6+* {
    margin-top: 0
  }
  .news-detail .news-detail__content a {
    color: inherit;
    text-decoration: underline
  }
}

@media screen and (min-width:800px) and (min-width:800px) {
  .news-detail .news-detail__content a {
    -webkit-transition: opacity .4s ease;
    transition: opacity .4s ease
  }
  .news-detail .news-detail__content a:hover {
    opacity: .6;
    -webkit-transition-duration: 0s;
    transition-duration: 0s
  }
}

@media screen and (min-width:800px) {
  .news-detail .news-detail__content>:first-child {
    margin-top: 0
  }
}

@media screen and (max-width:799px) {
  .news-nav {
    border-top: solid 1px #e5e5e5;
    text-align: center;
    margin-top: 45px;
    padding-top: 25px
  }
/* WPに合わせて修正 */
.news-nav a {
    display: inline-block;
    color: inherit;
    font-size: 15px;
    font-weight: 400;
    margin: 0 10px;
}
}

@media screen and (min-width:800px) {
  .news-nav {
    border-top: solid 1px #e5e5e5;
    text-align: center;
    margin-top: 90px;
    padding-top: 50px;
    padding-bottom: 50px
  }
/* WPに合わせて修正 */
  .news-nav a {
    display: inline-block;
    color: inherit;
    font-size: 16px;
    font-weight: 400;
    margin: 0 10px;
}
}

@media screen and (min-width:800px) and (min-width:800px) {
  .news-nav a {
    -webkit-transition: opacity .4s ease;
    transition: opacity .4s ease
  }
  .news-nav a:hover {
    opacity: .6;
    -webkit-transition-duration: 0s;
    transition-duration: 0s
  }
}

@media screen and (min-width:800px) {
  body[data-page-group=business] .main {
    padding-bottom: 200px
  }
}

@media screen and (max-width:799px) {
  .business-list {
    padding-top: 55px
  }
}

@media screen and (min-width:800px) {
  .business-list {
    padding-top: 170px
  }
}

@media screen and (max-width:799px) {
  .business-item {
    position: relative;
    padding-bottom: 75px
  }
  .business-item:last-child {
    padding-bottom: 0
  }
  .business-item>:nth-child(1)>* {
    top: 0;
    left: 0;
    background-size: cover;
    background-position: center;
    -webkit-transform: translate(0, 0)!important;
    transform: translate(0, 0)!important
  }
  .business-item>:nth-child(1)>:before {
    display: block;
    content: "";
    padding-bottom: 61.6%
  }
  .business-item .business-item_text {
    position: relative;
    padding-left: 20px;
    padding-right: 20px
  }
  .business-item .business-item_text>* {
    -webkit-box-shadow: 0 0 18px 2px rgba(7, 0, 2, .1);
    box-shadow: 0 0 18px 2px rgba(7, 0, 2, .1);
    background-color: #fff;
    padding: 30px 30px 30px 30px;
    margin-top: -40px
  }
  .business-item .business-item_text>*>:nth-child(1) {
    font-size: 18px;
    line-height: 1.6;
    font-weight: 400;
    color: #666;
    padding-bottom: 5px
  }
  .business-item .business-item_text>*>:nth-child(2) {
    font-size: 15px;
    line-height: 1.6;
    color: #666
  }
  .business-item .business-item_text>*>:nth-child(3) {
    padding-top: 25px;
    text-align: right
  }
  .business-item:nth-child(1)>:nth-child(1)>* {
    background-image: url(../img/business/i1-s.jpg)
  }
  .business-item:nth-child(2)>:nth-child(1)>* {
    background-image: url(../img/business/i2.jpg)
  }
  .business-item:nth-child(3)>:nth-child(1)>* {
    background-image: url(../img/business/i3.jpg)
  }
  .business-item:nth-child(4)>:nth-child(1)>* {
    background-image: url(../img/business/i4.jpg)
  }
  .business-item:nth-child(5)>:nth-child(1)>* {
    background-image: url(../img/business/i5.jpg)
  }
}

@media screen and (min-width:800px) {
  .business-item {
    position: relative;
    padding-top: 40px;
    padding-bottom: 100px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
  .business-item:last-child {
    padding-bottom: 0
  }
  .business-item>:nth-child(1) {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
  }
  .business-item>:nth-child(1)>* {
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    background-size: cover;
    background-color: #fff;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
  }
  .business-item>:nth-child(1)>:before {
    display: block;
    content: "";
    padding-bottom: 59.5%
  }
  .business-item>:nth-child(1)>::after {
    position: absolute;
    display: block;
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: solid 1px #fff
  }
  .business-item .business-item_text {
    position: relative;
    width: 53.3%;
    padding: 50px 60px;
    -webkit-box-shadow: 0 0 18px 2px rgba(7, 0, 2, .1);
    box-shadow: 0 0 18px 2px rgba(7, 0, 2, .1);
    background-color: #fff;
    min-height: 360px
  }
  .business-item .business-item_text>*>:nth-child(1) {
    font-size: 28px;
    line-height: 1.714;
    font-weight: 400;
    color: #666;
    padding-bottom: 20px
  }
  .business-item .business-item_text>*>:nth-child(2) {
    font-size: 16px;
    line-height: 1.875;
    color: #666
  }
  .business-item .business-item_text>*>:nth-child(3) {
    padding-top: 45px;
    text-align: right
  }
  .business-item:nth-child(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
  }
  .business-item:nth-child(even)>:nth-child(1)>* {
    left: auto;
    right: 0
  }
  .business-item:nth-child(1)>:nth-child(1)>* {
    background-image: url(../img/business/i1.jpg)
  }
  .business-item:nth-child(2)>:nth-child(1)>* {
    background-image: url(../img/business/i2.jpg)
  }
  .business-item:nth-child(3)>:nth-child(1)>* {
    background-image: url(../img/business/i3.jpg)
  }
  .business-item:nth-child(4)>:nth-child(1)>* {
    background-image: url(../img/business/i4.jpg)
  }
  .business-item:nth-child(5)>:nth-child(1)>* {
    background-image: url(../img/business/i5.jpg)
  }
}

@media screen and (min-width:800px) {
  body[data-page-group=product] .main {
    padding-bottom: 200px
  }
}

@media screen and (max-width:799px) {
  .product-list {
    padding-top: 55px
  }
}

@media screen and (min-width:800px) {
  .product-list {
    padding-top: 210px
  }
}

a.product-item {
  color: inherit;
  display: block
}

@media screen and (max-width:799px) {
  a.product-item {
    position: relative;
    padding-bottom: 75px
  }
  a.product-item:last-child {
    padding-bottom: 0
  }
  a.product-item>:nth-child(1) {
    padding: 0 20px
  }
  a.product-item>:nth-child(1)>* {
    top: 0;
    left: 0;
    background-size: cover;
    background-position: center
  }
  a.product-item>:nth-child(1)>:before {
    display: block;
    content: "";
    padding-bottom: 61.6%
  }
  a.product-item .product-item_text {
    position: relative;
    padding-top: 40px;
    padding-left: 20px;
    padding-right: 20px
  }
  a.product-item .product-item_text>* {
    background-color: #fff
  }
  a.product-item .product-item_text>*>:nth-child(1) {
    padding-bottom: 20px
  }
  a.product-item .product-item_text>*>:nth-child(1) img {
    height: 35px;
    width: auto
  }
  a.product-item .product-item_text>*>:nth-child(2) {
    font-size: 15px;
    line-height: 1.6;
    color: #666
  }
  a.product-item .product-item_text>*>:nth-child(3) {
    padding-top: 20px;
    text-align: right
  }
  a.product-item:nth-child(1)>:nth-child(1)>* {
    background-image: url(../img/product/i1.jpg)
  }
  a.product-item:nth-child(2)>:nth-child(1)>* {
    background-image: url(../img/product/i2.jpg)
  }
}

@media screen and (min-width:800px) {
  a.product-item {
    position: relative;
    padding-top: 40px;
    padding-bottom: 100px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
  a.product-item:last-child {
    padding-bottom: 0
  }
  a.product-item>:nth-child(1) {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
  }
  a.product-item>:nth-child(1)>* {
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    background-size: cover
  }
  a.product-item>:nth-child(1)>:before {
    display: block;
    content: "";
    padding-bottom: 59.5%
  }
  a.product-item .product-item_text {
    position: relative;
    width: 53.3%;
    padding: 60px
  }
  a.product-item .product-item_text>*>:nth-child(1) {
    padding-bottom: 20px
  }
  a.product-item .product-item_text>*>:nth-child(1) img {
    height: 45px;
    width: auto
  }
  a.product-item .product-item_text>*>:nth-child(2) {
    font-size: 16px;
    line-height: 1.875;
    color: #666
  }
  a.product-item .product-item_text>*>:nth-child(3) {
    padding-top: 45px;
    text-align: right
  }
  a.product-item:nth-child(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
  }
  a.product-item:nth-child(even)>:nth-child(1)>* {
    left: auto;
    right: 0
  }
  a.product-item:nth-child(1)>:nth-child(1)>* {
    background-image: url(../img/product/i1.jpg)
  }
  a.product-item:nth-child(2)>:nth-child(1)>* {
    background-image: url(../img/product/i2.jpg)
  }
  a.product-item .btn-more>* {
    -webkit-transition: padding-right .4s ease-out 0s;
    transition: padding-right .4s ease-out 0s
  }
  a.product-item .btn-more>:before {
    -webkit-transition: width .4s ease-out 0s;
    transition: width .4s ease-out 0s
  }
  a.product-item>:nth-child(1)>* {
    -webkit-transition: opacity .4s ease-out 0s;
    transition: opacity .4s ease-out 0s
  }
  a.product-item:hover .btn-more>* {
    -webkit-transition-duration: 0ms;
    transition-duration: 0ms;
    padding-right: 50px
  }
  a.product-item:hover .btn-more>:before {
    -webkit-transition-duration: 0ms;
    transition-duration: 0ms;
    width: 40px
  }
  a.product-item:hover>:nth-child(1)>* {
    opacity: .5;
    -webkit-transition-duration: 0ms;
    transition-duration: 0ms
  }
}

@media screen and (min-width:800px) and (min-width:800px) {
  body[data-page-group=corporate] a {
    -webkit-transition: opacity .4s ease;
    transition: opacity .4s ease
  }
  body[data-page-group=corporate] a:hover {
    opacity: .6;
    -webkit-transition-duration: 0s;
    transition-duration: 0s
  }
}

body[data-page-group=corporate] .corporate-greeting .corporate-greeting__picture {
  width: 100%
}

@media screen and (max-width:799px) {
  body[data-page-group=corporate] .corporate-greeting .corporate-greeting__picture {
    margin-top: 25px;
    width: 100%;
    padding-bottom: 72.53333%;
    background-image: url(../img/corporate/president-s.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center
  }
}

@media screen and (min-width:800px) {
  body[data-page-group=corporate] .corporate-greeting .corporate-greeting__picture {
    margin-top: 35px;
    width: 100%;
    padding-bottom: 39.7755%;
    background-image: url(../img/corporate/president.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center
  }
}

@media screen and (max-width:799px) {
  body[data-page-group=corporate] .corporate-greeting .corporate-greeting__text {
    padding-top: 35px;
    font-size: 15px;
    line-height: 1.6
  }
  body[data-page-group=corporate] .corporate-greeting .corporate-greeting__text>:nth-child(2) {
    padding-top: 25px
  }
  body[data-page-group=corporate] .corporate-greeting .corporate-greeting__text p+p {
    padding-top: 25px
  }
}

@media screen and (min-width:800px) {
  body[data-page-group=corporate] .corporate-greeting .corporate-greeting__text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 75px
  }
  body[data-page-group=corporate] .corporate-greeting .corporate-greeting__text>* {
    width: 50%;
    font-size: 16px;
    line-height: 1.875
  }
  body[data-page-group=corporate] .corporate-greeting .corporate-greeting__text>:nth-child(1) {
    padding-right: 30px
  }
  body[data-page-group=corporate] .corporate-greeting .corporate-greeting__text>:nth-child(2) {
    padding-left: 30px;
    -webkit-transition-delay: .4s;
    transition-delay: .4s
  }
  body[data-page-group=corporate] .corporate-greeting .corporate-greeting__text>* p+p {
    padding-top: 25px
  }
}

@media screen and (max-width:799px) {
  body[data-page-group=corporate] .corporate-greeting .corporate-greeting__name {
    text-align: right;
    font-weight: 400;
    padding-top: 60px
  }
  body[data-page-group=corporate] .corporate-greeting .corporate-greeting__name>:nth-child(1) {
    font-size: 10px
  }
  body[data-page-group=corporate] .corporate-greeting .corporate-greeting__name>:nth-child(2) {
    font-size: 18px
  }
}

@media screen and (min-width:800px) {
  body[data-page-group=corporate] .corporate-greeting .corporate-greeting__name {
    font-weight: 400;
    padding-top: 50px
  }
  body[data-page-group=corporate] .corporate-greeting .corporate-greeting__name>:nth-child(1) {
    font-size: 12px
  }
  body[data-page-group=corporate] .corporate-greeting .corporate-greeting__name>:nth-child(2) {
    font-size: 22px
  }
}

@media screen and (max-width:799px) {
  body[data-page-group=corporate] .corporate-philosophy {
    padding-top: 55px;
    padding-bottom: 60px;
    text-align: center
  }
  body[data-page-group=corporate] .corporate-philosophy .corporate-philosophy__list {
    border-bottom: solid 1px rgba(0, 0, 0, .15);
    margin-top: 20px
  }
  body[data-page-group=corporate] .corporate-philosophy .corporate-philosophy__list dt {
    margin: 0;
    padding: 20px 0 5px 0;
    border-top: solid 1px rgba(0, 0, 0, .15)
  }
  body[data-page-group=corporate] .corporate-philosophy .corporate-philosophy__list dt>* {
    display: block;
    line-height: 1;
    font-size: 10px
  }
  body[data-page-group=corporate] .corporate-philosophy .corporate-philosophy__list dd {
    margin: 0;
    padding: 5px 0 20px 0;
    font-weight: 700
  }
  body[data-page-group=corporate] .corporate-philosophy .corporate-philosophy__list dd span {
    display: inline-block
  }
  body[data-page-group=corporate] .corporate-philosophy .corporate-philosophy__list dd>* {
    display: block;
    font-size: 18px
  }
}

@media screen and (min-width:800px) {
  body[data-page-group=corporate] .corporate-philosophy {
    padding-top: 120px;
    padding-bottom: 140px
  }
  body[data-page-group=corporate] .corporate-philosophy .corporate-philosophy__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    border-bottom: solid 1px rgba(0, 0, 0, .15);
    margin-top: 50px
  }
  body[data-page-group=corporate] .corporate-philosophy .corporate-philosophy__list dt {
    width: 32%;
    margin: 0;
    text-align: right;
    padding: 45px 0;
    border-top: solid 1px rgba(0, 0, 0, .15);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }
  body[data-page-group=corporate] .corporate-philosophy .corporate-philosophy__list dt>* {
    text-align: left;
    display: block;
    width: 110px;
    line-height: 1;
    font-size: 16px
  }
  body[data-page-group=corporate] .corporate-philosophy .corporate-philosophy__list dd {
    width: 68%;
    margin: 0;
    padding: 45px 0;
    border-top: solid 1px rgba(0, 0, 0, .15);
    font-weight: 700;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }
  body[data-page-group=corporate] .corporate-philosophy .corporate-philosophy__list dd>* {
    display: block;
    font-size: 24px
  }
}

@media screen and (max-width:799px) {
  body[data-page-group=corporate] .corporate-slogan {
    padding-top: 60px;
    padding-bottom: 55px;
    background-color: #f7f7f7
  }
  body[data-page-group=corporate] .corporate-slogan .corporate-slogan__slogan {
    text-align: center;
    color: #9fca40;
    line-height: 1.1
  }
  body[data-page-group=corporate] .corporate-slogan .corporate-slogan__slogan>:nth-child(1) {
    padding-top: 16px;
    font-size: 39px
  }
  body[data-page-group=corporate] .corporate-slogan .corporate-slogan__slogan>:nth-child(2) {
    padding-top: 5px;
    padding-bottom: 17px;
    font-size: 26px
  }
  body[data-page-group=corporate] .corporate-slogan .corporate-slogan__slogan+p {
    font-size: 15px;
    line-height: 1.6
  }
}

@media screen and (min-width:800px) {
  body[data-page-group=corporate] .corporate-slogan {
    padding-top: 120px;
    padding-bottom: 130px;
    background-color: #f7f7f7
  }
  body[data-page-group=corporate] .corporate-slogan .corporate-slogan__slogan {
    text-align: center;
    color: #9fca40;
    line-height: 1
  }
  body[data-page-group=corporate] .corporate-slogan .corporate-slogan__slogan>:nth-child(1) {
    padding-top: 40px;
    padding-bottom: 10px;
    font-size: 59px
  }
  body[data-page-group=corporate] .corporate-slogan .corporate-slogan__slogan>:nth-child(2) {
    padding-bottom: 25px;
    font-size: 39px
  }
  body[data-page-group=corporate] .corporate-slogan .corporate-slogan__slogan+p {
    font-size: 16px;
    line-height: 1.875
  }
}

@media screen and (max-width:799px) {
  body[data-page-group=corporate] .corporate-detail {
    padding-top: 60px;
    padding-bottom: 0
  }
  body[data-page-group=corporate] .corporate-detail dl {
    margin-top: 20px
  }
  body[data-page-group=corporate] .corporate-detail dl {
    padding: 0;
    font-size: 15px;
    line-height: 1.6;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 0
  }
  body[data-page-group=corporate] .corporate-detail dl dt {
    margin: 0;
    width: 100%;
    background-color: #f5f5f5;
    padding: 10px 22px
  }
  body[data-page-group=corporate] .corporate-detail dl dd {
    width: 100%;
    margin: 0;
    padding: 15px 22px
  }
  body[data-page-group=corporate] .corporate-detail dl .text-small {
    font-size: 10px
  }
  body[data-page-group=corporate] .corporate-detail dl *+p.list-title {
    margin-top: 25px
  }
  body[data-page-group=corporate] .corporate-detail dl .indent-wrap {
    margin-left: 1em
  }
}

@media screen and (min-width:800px) {
  body[data-page-group=corporate] .corporate-detail {
    padding-top: 145px;
    padding-bottom: 140px
  }
  body[data-page-group=corporate] .corporate-detail dl {
    margin-top: 55px;
    margin-bottom: 0
  }
  body[data-page-group=corporate] .corporate-detail dl {
    border-bottom: solid 1px rgba(0, 0, 0, .15);
    font-size: 16px;
    line-height: 1.875;
    padding: 0
  }
  body[data-page-group=corporate] .corporate-detail dl dt {
    float: left;
    width: 257px;
    display: block;
    clear: both;
    margin: 0;
    padding: 30px 0 0 0
  }
  body[data-page-group=corporate] .corporate-detail dl dd {
    padding: 30px 0 0 0;
    padding-left: 317px;
    margin: 0
  }
  body[data-page-group=corporate] .corporate-detail dl dd:after {
    content: " ";
    display: block;
    clear: both
  }
  body[data-page-group=corporate] .corporate-detail dl:before {
    position: absolute;
    display: block;
    content: '';
    height: 100%;
    width: 257px;
    top: 0;
    left: 0;
    background-color: #f5f5f5;
    z-index: -1
  }
  body[data-page-group=corporate] .corporate-detail dl dt {
    text-align: center;
    margin: 0
  }
  body[data-page-group=corporate] .corporate-detail dl dd {
    width: 100%;
    border-top: solid 1px rgba(0, 0, 0, .15);
    margin-bottom: 30px
  }
}

@media screen and (min-width:800px) and (min-width:800px) {
  body[data-page-group=career] a {
    -webkit-transition: opacity .4s ease;
    transition: opacity .4s ease
  }
  body[data-page-group=career] a:hover {
    opacity: .6;
    -webkit-transition-duration: 0s;
    transition-duration: 0s
  }
}

@media screen and (min-width:800px) {
  body[data-page-group=career] .main {
    padding-bottom: 170px
  }
}

@media screen and (max-width:799px) {
  body[data-page-group=career] .career-detail dl {
    margin-top: 20px
  }
  body[data-page-group=career] .career-detail dl {
    padding: 0;
    font-size: 15px;
    line-height: 1.6;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 0
  }
  body[data-page-group=career] .career-detail dl dt {
    margin: 0;
    width: 100%;
    background-color: #f5f5f5;
    padding: 10px 22px
  }
  body[data-page-group=career] .career-detail dl dd {
    width: 100%;
    margin: 0;
    padding: 15px 22px
  }
  body[data-page-group=career] .career-detail dl .text-small {
    font-size: 10px
  }
  body[data-page-group=career] .career-detail dl *+p.list-title {
    margin-top: 25px
  }
  body[data-page-group=career] .career-detail dl .indent-wrap {
    margin-left: 1em
  }
  body[data-page-group=career] .career-detail a.btn-big {
    margin-top: 40px
  }
}

@media screen and (min-width:800px) {
  body[data-page-group=career] .career-detail dl {
    margin-top: 55px;
    margin-bottom: 0
  }
  body[data-page-group=career] .career-detail dl {
    border-bottom: solid 1px rgba(0, 0, 0, .15);
    font-size: 16px;
    line-height: 1.875;
    padding: 0
  }
  body[data-page-group=career] .career-detail dl dt {
    float: left;
    width: 257px;
    display: block;
    clear: both;
    margin: 0;
    padding: 30px 0 0 0
  }
  body[data-page-group=career] .career-detail dl dd {
    padding: 30px 0 0 0;
    padding-left: 317px;
    margin: 0
  }
  body[data-page-group=career] .career-detail dl dd:after {
    content: " ";
    display: block;
    clear: both
  }
  body[data-page-group=career] .career-detail dl:before {
    position: absolute;
    display: block;
    content: '';
    height: 100%;
    width: 257px;
    top: 0;
    left: 0;
    background-color: #f5f5f5;
    z-index: -1
  }
  body[data-page-group=career] .career-detail dl dt {
    text-align: center;
    margin: 0
  }
  body[data-page-group=career] .career-detail dl dd {
    width: 100%;
    border-top: solid 1px rgba(0, 0, 0, .15);
    margin-bottom: 30px
  }
  body[data-page-group=career] .career-detail *+p.list-title {
    margin-top: 30px
  }
  body[data-page-group=career] .career-detail .indent-wrap {
    margin-left: 1em
  }
  body[data-page-group=career] .career-detail a.btn-big {
    margin: 150px auto 0 auto
  }
}

@media screen and (min-width:800px) and (min-width:800px) {
  body[data-page-group=privacy] a {
    -webkit-transition: opacity .4s ease;
    transition: opacity .4s ease
  }
  body[data-page-group=privacy] a:hover {
    opacity: .6;
    -webkit-transition-duration: 0s;
    transition-duration: 0s
  }
}

@media screen and (min-width:800px) {
  body[data-page-group=privacy] .main {
    padding-bottom: 140px
  }
}

@media screen and (max-width:799px) {
  body[data-page-group=privacy] .privacy-detail {
    font-size: 15px;
    line-height: 1.6
  }
  body[data-page-group=privacy] .privacy-detail h2 {
    font-size: 15px;
    padding-bottom: 15px
  }
  body[data-page-group=privacy] .privacy-detail *+h2 {
    margin-top: 35px
  }
  body[data-page-group=privacy] .privacy-detail address {
    margin-top: 15px;
    font-style: normal
  }
  body[data-page-group=privacy] .privacy-detail h3 {
    font-size: 15px;
    font-weight: 300!important
  }
  body[data-page-group=privacy] .privacy-detail *+h3 {
    margin-top: 35px
  }
  body[data-page-group=privacy] .privacy-detail a {
    text-decoration: underline;
    color: inherit
  }
}

@media screen and (min-width:800px) {
  body[data-page-group=privacy] .privacy-detail {
    font-size: 16px;
    line-height: 1.875
  }
  body[data-page-group=privacy] .privacy-detail h2 {
    font-size: 16px;
    padding-bottom: 15px
  }
  body[data-page-group=privacy] .privacy-detail *+h2 {
    margin-top: 35px
  }
  body[data-page-group=privacy] .privacy-detail *+address {
    margin-top: 15px;
    font-style: normal
  }
  body[data-page-group=privacy] .privacy-detail h3 {
    font-size: 16px;
    font-weight: 300!important
  }
  body[data-page-group=privacy] .privacy-detail *+h3 {
    margin-top: 35px
  }
  body[data-page-group=privacy] .privacy-detail a {
    text-decoration: underline;
    color: inherit
  }
}

@media screen and (max-width:799px) {
  body[data-page-group=contact] .main {
    padding-bottom: 75px
  }
}

@media screen and (min-width:800px) {
  body[data-page-group=contact] .main {
    padding-bottom: 150px
  }
}

@media screen and (max-width:799px) {
  .contact-form .contact-form {
    font-size: 16px
  }
  .contact-form .contact-form-wrap>div {
    margin: 0 auto
  }
  .contact-form .contact-form-wrap .required {
    color: #ff0000;
    font-size:21px;
    vertical-align: top;
    /* display: none */
  }
  .contact-form .contact-form-wrap div[show-if-error] {
    color: #ff0000;
    font-size: 12px;
    font-weight: 700;
    padding-top: 5px;
    padding-bottom: 10px;
    display: none
  }
  .contact-form .contact-form-wrap>div>div>:nth-child(1) {
    font-size: 15px;
    line-height: 2.3;
    padding-top: 20px;
    display: block
  }
  .contact-form .cp_ipselect {
    overflow: hidden;
    width: 100%;
    text-align: center
  }
  .contact-form .cp_ipselect select {
    width: 100%;
    padding-right: 1em;
    cursor: pointer;
    text-indent: .01px;
    text-overflow: ellipsis;
    border: none;
    outline: 0;
    background: 0 0;
    background-image: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
  }
  .contact-form .cp_ipselect select::-ms-expand {
    display: none
  }
  .contact-form .cp_ipselect.cp_sl01 {
    position: relative;
    border: 1px solid #d9d9d9;
    background: #fff;
    padding: 5px 10px 5px 10px
  }
  .contact-form .cp_ipselect.cp_sl01::before {
    position: absolute;
    top: 50%;
    right: 2em;
    width: 0;
    height: 0;
    padding: 0;
    margin-top: -2px;
    content: '';
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid #333;
    pointer-events: none
  }
  .contact-form .cp_ipselect.cp_sl01 select {
    padding: 8px 38px 8px 8px
  }
  .contact-form .contact-form__list {
    padding-top: 10px;
    padding-bottom: 20px
  }
  .contact-form .contact-form__list>* {
    font-size: 15px;
    line-height: 1.7;
    display: block
  }
  .contact-form .contact-form__list>* input {
    margin-right: .5em
  }
  .contact-form input[type=text], .contact-form textarea {
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: 0;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0;
    display: block;
    padding: 10px;
    margin: 0;
    border: solid 1px #d9d9d9
  }
  .contact-form input[type=text] {
    width: 100%
  }
  .contact-form textarea {
    resize: none;
    width: 100%;
    height: 160px
  }
  
  
  
  .contact-form .contact-form-submit {
    text-align: center;
    padding-top: 50px
  }
  .contact-form .contact-form-submit button {
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: 0;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: #000;
    color: #fff;
    width: 100%;
    height: 60px;
    font-size: 15px;
    font-weight: 700
  }
}

@media screen and (min-width:800px) {
  .contact-form {
    font-size: 16px
  }
  .contact-form>:nth-child(1) {
    font-size: 16px;
    line-height: 2.25;
    padding-bottom: 50px
  }
  .contact-form .contact-form-wrap>div {
    margin: 0 auto
  }
  .contact-form .contact-form-wrap .required {
    color: #ff0000;
    font-size:21px;
    vertical-align: top;
    /* display: none */
  }
  .contact-form .contact-form-wrap div[show-if-error] {
    color: #000;
    font-size: 12px;
    font-weight: 700;
    padding-top: 5px;
    padding-bottom: 10px;
    display: none
  }
  .contact-form .contact-form-wrap>div>div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-top: 9px;
    padding-bottom: 9px
  }
  .contact-form .contact-form-wrap>div>div>:nth-child(1) {
    width: 180px;
    padding: 18px 20px 0 0
  }
  .contact-form .contact-form-wrap>div>div>:nth-child(2) {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
  }
  .contact-form .cp_ipselect {
    overflow: hidden;
    width: 100%;
    text-align: center
  }
  .contact-form .cp_ipselect select {
    width: 100%;
    padding-right: 1em;
    cursor: pointer;
    text-indent: .01px;
    text-overflow: ellipsis;
    border: none;
    outline: 0;
    background: 0 0;
    background-image: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
  }
  .contact-form .cp_ipselect select::-ms-expand {
    display: none
  }
  .contact-form .cp_ipselect.cp_sl01 {
    position: relative;
    border: 1px solid #d9d9d9;
    background: #fff;
    padding: 10px 20px 10px 20px
  }
  .contact-form .cp_ipselect.cp_sl01::before {
    position: absolute;
    top: 50%;
    right: 2em;
    width: 0;
    height: 0;
    padding: 0;
    margin-top: -2px;
    content: '';
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid #333;
    pointer-events: none
  }
  .contact-form .cp_ipselect.cp_sl01 select {
    padding: 8px 38px 8px 8px
  }
  .contact-form .contact-form__list {
    padding-top: 10px;
    padding-bottom: 20px
  }
  .contact-form .contact-form__list>* {
    display: block;
    line-height: 1.875
  }
  .contact-form .contact-form__list>* input {
    margin-right: .5em
  }
  .contact-form input[type=text], .contact-form input[type=email], .contact-form textarea {
    display: block;
    padding: 18px;
    margin: 0;
    border: solid 1px #d9d9d9
  }
  .contact-form input[type=text] , .contact-form input[type=email] {
    width: 100%
  }
  .contact-form textarea {
    resize: none;
    width: 100%;
    height: 191px
  }
  .contact-form .contact-form-submit {
    margin-top: 20px;
    text-align: center
  }
  .contact-form .contact-form-submit button {
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: 0;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: #000;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    width: 370px;
    height: 75px
  }
}

.contact-thanks {
  background-color: #f6f6f6;
  text-align: center
}

@media screen and (max-width:799px) {
  .contact-thanks {
    padding: 110px 0;
    font-size: 15px;
    line-height: 1.933;
    font-weight: 700
  }
  .contact-thanks h2 {
    font-size: 15px;
    line-height: 1.933
  }
}

@media screen and (min-width:800px) {
  .contact-thanks {
    padding: 215px 0;
    font-size: 24px;
    line-height: 2;
    font-weight: 700
  }
  .contact-thanks h2 {
    font-size: 24px;
    line-height: 2
  }
}

body {
  background-color: #fefefe
}

.main {
  overflow: hidden
}

@media screen and (max-width:799px) {
  .main {
    margin-top: 50px;
    -webkit-transition: margin-top 1s ease-out 0s;
    transition: margin-top 1s ease-out 0s;
    padding-bottom: 100px
  }
  .loaded .main {
    margin-top: 0
  }
  .will-leave .main {
    -webkit-transition: margin-top 1s ease-in 0s;
    transition: margin-top 1s ease-in 0s;
    margin-top: -50px
  }
}

@media screen and (min-width:800px) {
  .main {
    margin-top: 100px;
    -webkit-transition: margin-top 1s ease-out 0s;
    transition: margin-top 1s ease-out 0s
  }
  .loaded .main {
    margin-top: 0
  }
  .will-leave .main {
    -webkit-transition: margin-top 1s ease-in 0s;
    transition: margin-top 1s ease-in 0s;
    margin-top: -100px
  }
}

.bg-white {
  position: relative;
  background-color: #fff
}

@media screen and (min-width:800px) {
  body[data-page-group=home] .main {
    margin-top: 0;
    min-height: none
  }
}

.text-effect {
  display: block;
  line-height: 1;
  line-height: 1em;
  margin-top: 0;
  margin-bottom: 0;
  overflow: hidden
}

.text-effect>* {
  position: relative;
  display: inline-block;
  color: #000;
  -webkit-transition: color 0s ease-out;
  transition: color 0s ease-out;
  vertical-align: top;
  overflow: hidden;
  padding: 0;
  margin: 0
}

.text-effect>::before {
  position: absolute;
  display: block;
  content: '';
  background-color: #fff;
  top: 0;
  width: 0%;
  height: 100%
}

.text-effect.text-effect--black>* {
  color: #fff
}

.text-effect.text-effect--black>::before {
  background-color: #000
}

.text-effect.text-effect--black-gray>* {
  color: #f7f7f7
}

.text-effect.text-effect--black-gray>::before {
  background-color: #000
}

.text-effect.isInview>* {
  -webkit-animation: text-effect-2 .4s ease-out 0s forwards;
  animation: text-effect-2 .4s ease-out 0s forwards
}

.text-effect.isInview>::before {
  -webkit-animation: text-effect-1 .4s ease-out 0s forwards;
  animation: text-effect-1 .4s ease-out 0s forwards
}

.text-effect.isInview.text-effect--black>* {
  -webkit-animation: text-effect-3 .4s ease-out 0s forwards;
  animation: text-effect-3 .4s ease-out 0s forwards
}

.text-effect.isInview.text-effect--black-gray>* {
  -webkit-animation: text-effect-4 .4s ease-out 0s forwards;
  animation: text-effect-4 .4s ease-out 0s forwards
}

.text-effect.jsInviewDelay-1>* {
  -webkit-animation-delay: .1s!important;
  animation-delay: .1s!important
}

.text-effect.jsInviewDelay-1>::before {
  -webkit-animation-delay: .1s!important;
  animation-delay: .1s!important
}

.text-effect.jsInviewDelay-2>* {
  -webkit-animation-delay: .2s!important;
  animation-delay: .2s!important
}

.text-effect.jsInviewDelay-2>::before {
  -webkit-animation-delay: .2s!important;
  animation-delay: .2s!important
}

.text-effect.jsInviewDelay-3>* {
  -webkit-animation-delay: .3s!important;
  animation-delay: .3s!important
}

.text-effect.jsInviewDelay-3>::before {
  -webkit-animation-delay: .3s!important;
  animation-delay: .3s!important
}

.text-effect.jsInviewDelay-4>* {
  -webkit-animation-delay: .4s!important;
  animation-delay: .4s!important
}

.text-effect.jsInviewDelay-4>::before {
  -webkit-animation-delay: .4s!important;
  animation-delay: .4s!important
}

.text-effect.jsInviewDelay-5>* {
  -webkit-animation-delay: .5s!important;
  animation-delay: .5s!important
}

.text-effect.jsInviewDelay-5>::before {
  -webkit-animation-delay: .5s!important;
  animation-delay: .5s!important
}

.text-effect.jsInviewDelay-6>* {
  -webkit-animation-delay: .6s!important;
  animation-delay: .6s!important
}

.text-effect.jsInviewDelay-6>::before {
  -webkit-animation-delay: .6s!important;
  animation-delay: .6s!important
}

.text-effect.jsInviewDelay-7>* {
  -webkit-animation-delay: .7s!important;
  animation-delay: .7s!important
}

.text-effect.jsInviewDelay-7>::before {
  -webkit-animation-delay: .7s!important;
  animation-delay: .7s!important
}

.text-effect.jsInviewDelay-8>* {
  -webkit-animation-delay: .8s!important;
  animation-delay: .8s!important
}

.text-effect.jsInviewDelay-8>::before {
  -webkit-animation-delay: .8s!important;
  animation-delay: .8s!important
}

.text-effect.jsInviewDelay-9>* {
  -webkit-animation-delay: .9s!important;
  animation-delay: .9s!important
}

.text-effect.jsInviewDelay-9>::before {
  -webkit-animation-delay: .9s!important;
  animation-delay: .9s!important
}

.text-effect.jsInviewDelay-10>* {
  -webkit-animation-delay: 1s!important;
  animation-delay: 1s!important
}

.text-effect.jsInviewDelay-10>::before {
  -webkit-animation-delay: 1s!important;
  animation-delay: 1s!important
}

.text-effect.jsInviewDelay-11>* {
  -webkit-animation-delay: 1.1s!important;
  animation-delay: 1.1s!important
}

.text-effect.jsInviewDelay-11>::before {
  -webkit-animation-delay: 1.1s!important;
  animation-delay: 1.1s!important
}

.text-effect.jsInviewDelay-12>* {
  -webkit-animation-delay: 1.2s!important;
  animation-delay: 1.2s!important
}

.text-effect.jsInviewDelay-12>::before {
  -webkit-animation-delay: 1.2s!important;
  animation-delay: 1.2s!important
}

.text-effect.jsInviewDelay-13>* {
  -webkit-animation-delay: 1.3s!important;
  animation-delay: 1.3s!important
}

.text-effect.jsInviewDelay-13>::before {
  -webkit-animation-delay: 1.3s!important;
  animation-delay: 1.3s!important
}

.text-effect.jsInviewDelay-14>* {
  -webkit-animation-delay: 1.4s!important;
  animation-delay: 1.4s!important
}

.text-effect.jsInviewDelay-14>::before {
  -webkit-animation-delay: 1.4s!important;
  animation-delay: 1.4s!important
}

.text-effect.jsInviewDelay-15>* {
  -webkit-animation-delay: 1.5s!important;
  animation-delay: 1.5s!important
}

.text-effect.jsInviewDelay-15>::before {
  -webkit-animation-delay: 1.5s!important;
  animation-delay: 1.5s!important
}

.text-effect.jsInviewDelay-16>* {
  -webkit-animation-delay: 1.6s!important;
  animation-delay: 1.6s!important
}

.text-effect.jsInviewDelay-16>::before {
  -webkit-animation-delay: 1.6s!important;
  animation-delay: 1.6s!important
}

.text-effect.jsInviewDelay-17>* {
  -webkit-animation-delay: 1.7s!important;
  animation-delay: 1.7s!important
}

.text-effect.jsInviewDelay-17>::before {
  -webkit-animation-delay: 1.7s!important;
  animation-delay: 1.7s!important
}

.text-effect.jsInviewDelay-18>* {
  -webkit-animation-delay: 1.8s!important;
  animation-delay: 1.8s!important
}

.text-effect.jsInviewDelay-18>::before {
  -webkit-animation-delay: 1.8s!important;
  animation-delay: 1.8s!important
}

.text-effect.jsInviewDelay-19>* {
  -webkit-animation-delay: 1.9s!important;
  animation-delay: 1.9s!important
}

.text-effect.jsInviewDelay-19>::before {
  -webkit-animation-delay: 1.9s!important;
  animation-delay: 1.9s!important
}

.text-effect.jsInviewDelay-20>* {
  -webkit-animation-delay: 2s!important;
  animation-delay: 2s!important
}

.text-effect.jsInviewDelay-20>::before {
  -webkit-animation-delay: 2s!important;
  animation-delay: 2s!important
}

.text-effect.jsInviewDelay-21>* {
  -webkit-animation-delay: 2.1s!important;
  animation-delay: 2.1s!important
}

.text-effect.jsInviewDelay-21>::before {
  -webkit-animation-delay: 2.1s!important;
  animation-delay: 2.1s!important
}

.text-effect.jsInviewDelay-22>* {
  -webkit-animation-delay: 2.2s!important;
  animation-delay: 2.2s!important
}

.text-effect.jsInviewDelay-22>::before {
  -webkit-animation-delay: 2.2s!important;
  animation-delay: 2.2s!important
}

.text-effect.jsInviewDelay-23>* {
  -webkit-animation-delay: 2.3s!important;
  animation-delay: 2.3s!important
}

.text-effect.jsInviewDelay-23>::before {
  -webkit-animation-delay: 2.3s!important;
  animation-delay: 2.3s!important
}

.text-effect.jsInviewDelay-24>* {
  -webkit-animation-delay: 2.4s!important;
  animation-delay: 2.4s!important
}

.text-effect.jsInviewDelay-24>::before {
  -webkit-animation-delay: 2.4s!important;
  animation-delay: 2.4s!important
}

.text-effect.jsInviewDelay-25>* {
  -webkit-animation-delay: 2.5s!important;
  animation-delay: 2.5s!important
}

.text-effect.jsInviewDelay-25>::before {
  -webkit-animation-delay: 2.5s!important;
  animation-delay: 2.5s!important
}

.text-effect.jsInviewDelay-26>* {
  -webkit-animation-delay: 2.6s!important;
  animation-delay: 2.6s!important
}

.text-effect.jsInviewDelay-26>::before {
  -webkit-animation-delay: 2.6s!important;
  animation-delay: 2.6s!important
}

.text-effect.jsInviewDelay-27>* {
  -webkit-animation-delay: 2.7s!important;
  animation-delay: 2.7s!important
}

.text-effect.jsInviewDelay-27>::before {
  -webkit-animation-delay: 2.7s!important;
  animation-delay: 2.7s!important
}

.text-effect.jsInviewDelay-28>* {
  -webkit-animation-delay: 2.8s!important;
  animation-delay: 2.8s!important
}

.text-effect.jsInviewDelay-28>::before {
  -webkit-animation-delay: 2.8s!important;
  animation-delay: 2.8s!important
}

.text-effect.jsInviewDelay-29>* {
  -webkit-animation-delay: 2.9s!important;
  animation-delay: 2.9s!important
}

.text-effect.jsInviewDelay-29>::before {
  -webkit-animation-delay: 2.9s!important;
  animation-delay: 2.9s!important
}

.text-effect.jsInviewDelay-30>* {
  -webkit-animation-delay: 3s!important;
  animation-delay: 3s!important
}

.text-effect.jsInviewDelay-30>::before {
  -webkit-animation-delay: 3s!important;
  animation-delay: 3s!important
}

.text-effect.jsInviewDelay-31>* {
  -webkit-animation-delay: 3.1s!important;
  animation-delay: 3.1s!important
}

.text-effect.jsInviewDelay-31>::before {
  -webkit-animation-delay: 3.1s!important;
  animation-delay: 3.1s!important
}

.text-effect.jsInviewDelay-32>* {
  -webkit-animation-delay: 3.2s!important;
  animation-delay: 3.2s!important
}

.text-effect.jsInviewDelay-32>::before {
  -webkit-animation-delay: 3.2s!important;
  animation-delay: 3.2s!important
}

.text-effect.jsInviewDelay-33>* {
  -webkit-animation-delay: 3.3s!important;
  animation-delay: 3.3s!important
}

.text-effect.jsInviewDelay-33>::before {
  -webkit-animation-delay: 3.3s!important;
  animation-delay: 3.3s!important
}

.text-effect.jsInviewDelay-34>* {
  -webkit-animation-delay: 3.4s!important;
  animation-delay: 3.4s!important
}

.text-effect.jsInviewDelay-34>::before {
  -webkit-animation-delay: 3.4s!important;
  animation-delay: 3.4s!important
}

.text-effect.jsInviewDelay-35>* {
  -webkit-animation-delay: 3.5s!important;
  animation-delay: 3.5s!important
}

.text-effect.jsInviewDelay-35>::before {
  -webkit-animation-delay: 3.5s!important;
  animation-delay: 3.5s!important
}

.text-effect.jsInviewDelay-36>* {
  -webkit-animation-delay: 3.6s!important;
  animation-delay: 3.6s!important
}

.text-effect.jsInviewDelay-36>::before {
  -webkit-animation-delay: 3.6s!important;
  animation-delay: 3.6s!important
}

.text-effect.jsInviewDelay-37>* {
  -webkit-animation-delay: 3.7s!important;
  animation-delay: 3.7s!important
}

.text-effect.jsInviewDelay-37>::before {
  -webkit-animation-delay: 3.7s!important;
  animation-delay: 3.7s!important
}

.text-effect.jsInviewDelay-38>* {
  -webkit-animation-delay: 3.8s!important;
  animation-delay: 3.8s!important
}

.text-effect.jsInviewDelay-38>::before {
  -webkit-animation-delay: 3.8s!important;
  animation-delay: 3.8s!important
}

.text-effect.jsInviewDelay-39>* {
  -webkit-animation-delay: 3.9s!important;
  animation-delay: 3.9s!important
}

.text-effect.jsInviewDelay-39>::before {
  -webkit-animation-delay: 3.9s!important;
  animation-delay: 3.9s!important
}

.text-effect.jsInviewDelay-40>* {
  -webkit-animation-delay: 4s!important;
  animation-delay: 4s!important
}

.text-effect.jsInviewDelay-40>::before {
  -webkit-animation-delay: 4s!important;
  animation-delay: 4s!important
}

@-webkit-keyframes text-effect-1 {
  0% {
    left: 0;
    width: 0%
  }
  50% {
    left: 0;
    width: 100%
  }
  51% {
    left: auto;
    right: 0;
    width: 100%
  }
  100% {
    left: auto;
    right: 0;
    width: 0%
  }
}

@keyframes text-effect-1 {
  0% {
    left: 0;
    width: 0%
  }
  50% {
    left: 0;
    width: 100%
  }
  51% {
    left: auto;
    right: 0;
    width: 100%
  }
  100% {
    left: auto;
    right: 0;
    width: 0%
  }
}

@-webkit-keyframes text-effect-2 {
  0% {
    color: #000
  }
  50% {
    color: #000
  }
  51% {
    color: #fff
  }
  100% {
    color: #fff
  }
}

@keyframes text-effect-2 {
  0% {
    color: #000
  }
  50% {
    color: #000
  }
  51% {
    color: #fff
  }
  100% {
    color: #fff
  }
}

@-webkit-keyframes text-effect-3 {
  0% {
    color: #fff
  }
  50% {
    color: #fff
  }
  51% {
    color: #333
  }
  100% {
    color: #333
  }
}

@keyframes text-effect-3 {
  0% {
    color: #fff
  }
  50% {
    color: #fff
  }
  51% {
    color: #333
  }
  100% {
    color: #333
  }
}

@-webkit-keyframes text-effect-4 {
  0% {
    color: #f7f7f7
  }
  50% {
    color: #f7f7f7
  }
  51% {
    color: #333
  }
  100% {
    color: #333
  }
}

@keyframes text-effect-4 {
  0% {
    color: #f7f7f7
  }
  50% {
    color: #f7f7f7
  }
  51% {
    color: #333
  }
  100% {
    color: #333
  }
}

.contact-form-confirm input[type=text], .contact-form-confirm textarea {
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: 0;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0;
    display: block;
    padding: 10px;
    margin: 0;
    border: none 0px;
    font-size:24px;
  }
  .contact-form-confirm input[type=text] {
    width: 100%
  }
  .contact-form-confirm textarea {
    resize: none;
    width: 100%;
    height: 160px
  }

/*# sourceMappingURL=styles.css.map */