@charset "UTF-8";

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

html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased
}

body {
  margin: 0
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-weight: 400;
  font-size: inherit
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block
}

img {
  border: 0;
  max-width: 100%;
  height: auto;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  vertical-align: bottom
}

dd,
dl,
dt,
ol,
ul {
  padding: 0;
  margin: 0
}

li,
ol {
  list-style: none
}

a {
  text-decoration: none;
  display: inline-block;
  color: inherit;
  cursor: pointer
}

p {
  margin-top: 0;
  margin-bottom: 0
}

button,
input[type=button],
input[type=reset],
input[type=submit] {
  background: none;
  border: 0;
  color: inherit;
  font: inherit;
  line-height: normal;
  overflow: visible;
  padding: 0;
  -webkit-appearance: button;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  cursor: pointer
}

button:focus {
  outline: 0
}

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

[role=button] {
  color: inherit;
  cursor: default;
  display: inline-block;
  text-align: center;
  text-decoration: none;
  white-space: pre;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none
}

@media (min-width:769px) {
  a[href^=tel] {
    pointer-events: none
  }
}

.swiper-container {
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1
}

.swiper-container-no-flexbox .swiper-slide {
  float: left
}

.swiper-container-vertical>.swiper-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
  flex-direction: column
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: -moz-box;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  -o-transition-property: -o-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform, -o-transform;
  transition-property: transform, -webkit-transform;
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box
}

.swiper-container-android .swiper-slide,
.swiper-wrapper {
  -webkit-transform: translateZ(0);
  transform: translateZ(0)
}

.swiper-container-multirow>.swiper-wrapper {
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.swiper-container-free-mode>.swiper-wrapper {
  -webkit-transition-timing-function: ease-out;
  -o-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  margin: 0 auto
}

.swiper-slide {
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  -o-transition-property: -o-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform, -o-transform;
  transition-property: transform, -webkit-transform
}

.swiper-slide-invisible-blank {
  visibility: hidden
}

.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto
}

.swiper-container-autoheight .swiper-wrapper {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  -moz-box-align: start;
  align-items: flex-start;
  -webkit-transition-property: height, -webkit-transform;
  transition-property: height, -webkit-transform;
  -o-transition-property: transform, height;
  -o-transition-property: height, -o-transform;
  transition-property: transform, height;
  transition-property: transform, height, -webkit-transform, -o-transform;
  transition-property: transform, height, -webkit-transform
}

.swiper-container-3d {
  -webkit-perspective: 1200px;
  perspective: 1200px
}

.swiper-container-3d .swiper-cube-shadow,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-wrapper {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d
}

.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10
}

.swiper-container-3d .swiper-slide-shadow-left {
  background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, .5)), to(transparent));
  background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, .5), transparent);
  background-image: -o-linear-gradient(right, rgba(0, 0, 0, .5), transparent);
  background-image: linear-gradient(270deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-container-3d .swiper-slide-shadow-right {
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .5)), to(transparent));
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .5), transparent);
  background-image: -o-linear-gradient(left, rgba(0, 0, 0, .5), transparent);
  background-image: linear-gradient(90deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-container-3d .swiper-slide-shadow-top {
  background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, .5)), to(transparent));
  background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, .5), transparent);
  background-image: -o-linear-gradient(bottom, rgba(0, 0, 0, .5), transparent);
  background-image: linear-gradient(0deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, .5)), to(transparent));
  background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, .5), transparent);
  background-image: -o-linear-gradient(top, rgba(0, 0, 0, .5), transparent);
  background-image: linear-gradient(180deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-container-wp8-horizontal,
.swiper-container-wp8-horizontal>.swiper-wrapper {
  -ms-touch-action: pan-y;
  touch-action: pan-y
}

.swiper-container-wp8-vertical,
.swiper-container-wp8-vertical>.swiper-wrapper {
  -ms-touch-action: pan-x;
  touch-action: pan-x
}

.swiper-button-next,
.swiper-button-prev {
  position: absolute;
  top: 50%;
  width: 27px;
  height: 44px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  -webkit-background-size: 27px 44px;
  background-size: 27px 44px;
  background-position: 50%;
  background-repeat: no-repeat
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
  opacity: .35;
  cursor: auto;
  pointer-events: none
}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23007aff'/%3E%3C/svg%3E");
  left: 10px;
  right: auto
}

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23007aff'/%3E%3C/svg%3E");
  right: 10px;
  left: auto
}

.swiper-button-prev.swiper-button-white,
.swiper-container-rtl .swiper-button-next.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23fff'/%3E%3C/svg%3E")
}

.swiper-button-next.swiper-button-white,
.swiper-container-rtl .swiper-button-prev.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23fff'/%3E%3C/svg%3E")
}

.swiper-button-prev.swiper-button-black,
.swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z'/%3E%3C/svg%3E")
}

.swiper-button-next.swiper-button-black,
.swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z'/%3E%3C/svg%3E")
}

.swiper-button-lock {
  display: none
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  -webkit-transition: opacity .3s;
  -o-transition: .3s opacity;
  transition: opacity .3s;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  z-index: 10
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0
}

.swiper-container-horizontal>.swiper-pagination-bullets,
.swiper-pagination-custom,
.swiper-pagination-fraction {
  bottom: 10px;
  left: 0;
  width: 100%
}

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transform: scale(.33);
  -ms-transform: scale(.33);
  -o-transform: scale(.33);
  transform: scale(.33);
  position: relative
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  -webkit-transform: scale(.66);
  -ms-transform: scale(.66);
  -o-transform: scale(.66);
  transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  -webkit-transform: scale(.33);
  -ms-transform: scale(.33);
  -o-transform: scale(.33);
  transform: scale(.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  -webkit-transform: scale(.66);
  -ms-transform: scale(.66);
  -o-transform: scale(.66);
  transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  -webkit-transform: scale(.33);
  -ms-transform: scale(.33);
  -o-transform: scale(.33);
  transform: scale(.33)
}

.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  -webkit-border-radius: 100%;
  border-radius: 100%;
  background: #000;
  opacity: .2
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer
}

.swiper-pagination-bullet-active {
  opacity: 1;
  background: #007aff
}

.swiper-container-vertical>.swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  -webkit-transform: translate3d(0, -50%, 0);
  transform: translate3d(0, -50%, 0)
}

.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 6px 0;
  display: block
}

.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 8px
}

.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  -webkit-transition: top .2s, -webkit-transform .2s;
  transition: top .2s, -webkit-transform .2s;
  -o-transition: .2s transform, .2s top;
  -o-transition: .2s top, .2s -o-transform;
  transition: transform .2s, top .2s;
  transition: transform .2s, top .2s, -webkit-transform .2s, -o-transform .2s;
  transition: transform .2s, top .2s, -webkit-transform .2s
}

.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 4px
}

.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  white-space: nowrap
}

.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: left .2s, -webkit-transform .2s;
  transition: left .2s, -webkit-transform .2s;
  -o-transition: .2s transform, .2s left;
  -o-transition: .2s left, .2s -o-transform;
  transition: transform .2s, left .2s;
  transition: transform .2s, left .2s, -webkit-transform .2s, -o-transform .2s;
  transition: transform .2s, left .2s, -webkit-transform .2s
}

.swiper-container-horizontal.swiper-container-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: right .2s, -webkit-transform .2s;
  transition: right .2s, -webkit-transform .2s;
  -o-transition: .2s transform, .2s right;
  -o-transition: .2s right, .2s -o-transform;
  transition: transform .2s, right .2s;
  transition: transform .2s, right .2s, -webkit-transform .2s, -o-transform .2s;
  transition: transform .2s, right .2s, -webkit-transform .2s
}

.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, .25);
  position: absolute
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: #007aff;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  -o-transform-origin: left top;
  transform-origin: left top
}

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  -webkit-transform-origin: right top;
  -ms-transform-origin: right top;
  -o-transform-origin: right top;
  transform-origin: right top
}

.swiper-container-horizontal>.swiper-pagination-progressbar,
.swiper-container-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0
}

.swiper-container-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-container-vertical>.swiper-pagination-progressbar {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0
}

.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #fff
}

.swiper-pagination-progressbar.swiper-pagination-white {
  background: hsla(0, 0%, 100%, .25)
}

.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
  background: #fff
}

.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #000
}

.swiper-pagination-progressbar.swiper-pagination-black {
  background: rgba(0, 0, 0, .25)
}

.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
  background: #000
}

.swiper-pagination-lock {
  display: none
}

.swiper-scrollbar {
  -webkit-border-radius: 10px;
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, .1)
}

.swiper-container-horizontal>.swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%
}

.swiper-container-vertical>.swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, .5);
  -webkit-border-radius: 10px;
  border-radius: 10px;
  left: 0;
  top: 0
}

.swiper-scrollbar-cursor-drag {
  cursor: move
}

.swiper-scrollbar-lock {
  display: none
}

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: -moz-box;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  -moz-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  -moz-box-align: center;
  align-items: center;
  text-align: center
}

.swiper-zoom-container>canvas,
.swiper-zoom-container>img,
.swiper-zoom-container>svg {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
  object-fit: contain
}

.swiper-slide-zoomed {
  cursor: move
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  -webkit-transform-origin: 50%;
  -ms-transform-origin: 50%;
  -o-transform-origin: 50%;
  transform-origin: 50%;
  -webkit-animation: swiper-preloader-spin 1s steps(12) infinite;
  -o-animation: swiper-preloader-spin 1s steps(12) infinite;
  animation: swiper-preloader-spin 1s steps(12) infinite
}

.swiper-lazy-preloader:after {
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%236c6c6c' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E");
  background-position: 50%;
  -webkit-background-size: 100% 100%;
  background-size: 100%;
  background-repeat: no-repeat
}

.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%23fff' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E")
}

@-webkit-keyframes swiper-preloader-spin {
  to {
    -webkit-transform: rotate(1turn);
    transform: rotate(1turn)
  }
}

@-o-keyframes swiper-preloader-spin {
  to {
    -webkit-transform: rotate(1turn);
    -o-transform: rotate(1turn);
    transform: rotate(1turn)
  }
}

@keyframes swiper-preloader-spin {
  to {
    -webkit-transform: rotate(1turn);
    -o-transform: rotate(1turn);
    transform: rotate(1turn)
  }
}

.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000
}

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  -webkit-transition-timing-function: ease-out;
  -o-transition-timing-function: ease-out;
  transition-timing-function: ease-out
}

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  -webkit-transition-property: opacity;
  -o-transition-property: opacity;
  transition-property: opacity
}

.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none
}

.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto
}

.swiper-container-cube {
  overflow: visible
}

.swiper-container-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  -webkit-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  -o-transform-origin: 0 0;
  transform-origin: 0 0;
  width: 100%;
  height: 100%
}

.swiper-container-cube .swiper-slide .swiper-slide {
  pointer-events: none
}

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  -webkit-transform-origin: 100% 0;
  -ms-transform-origin: 100% 0;
  -o-transform-origin: 100% 0;
  transform-origin: 100% 0
}

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto
}

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-next+.swiper-slide,
.swiper-container-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible
}

.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right,
.swiper-container-cube .swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: .6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0
}

.swiper-container-flip {
  overflow: visible
}

.swiper-container-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1
}

.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none
}

.swiper-container-flip .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto
}

.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right,
.swiper-container-flip .swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.swiper-container-coverflow .swiper-wrapper {
  -ms-perspective: 1200px
}

/*!
 * fullPage 2.9.7
 * https://github.com/alvarotrigo/fullPage.js
 * MIT licensed
 *
 * Copyright (C) 2013 alvarotrigo.com - A project by Alvaro Trigo
 */
.fp-enabled body,
html.fp-enabled {
  margin: 0;
  padding: 0;
  overflow: hidden;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

.fp-section {
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

.fp-slide {
  float: left
}

.fp-slide,
.fp-slidesContainer {
  height: 100%;
  display: block
}

.fp-slides {
  z-index: 1;
  height: 100%;
  overflow: hidden;
  position: relative;
  -webkit-transition: all .3s ease-out;
  -o-transition: all .3s ease-out;
  transition: all .3s ease-out
}

.fp-section.fp-table,
.fp-slide.fp-table {
  display: table;
  table-layout: fixed;
  width: 100%
}

.fp-tableCell {
  display: table-cell;
  vertical-align: middle;
  width: 100%;
  height: 100%
}

.fp-slidesContainer {
  float: left;
  position: relative
}

.fp-controlArrow {
  -webkit-user-select: none;
  -moz-user-select: none;
  -khtml-user-select: none;
  -ms-user-select: none;
  position: absolute;
  z-index: 4;
  top: 50%;
  cursor: pointer;
  width: 0;
  height: 0;
  border-style: solid;
  margin-top: -38px;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0)
}

.fp-controlArrow.fp-prev {
  left: 15px;
  width: 0;
  border-width: 38.5px 34px 38.5px 0;
  border-color: transparent #fff transparent transparent
}

.fp-controlArrow.fp-next {
  right: 15px;
  border-width: 38.5px 0 38.5px 34px;
  border-color: transparent transparent transparent #fff
}

.fp-scrollable {
  position: relative
}

.fp-scrollable,
.fp-scroller {
  overflow: hidden
}

.iScrollIndicator {
  border: 0 !important
}

.fp-notransition {
  -webkit-transition: none !important;
  -o-transition: none !important;
  transition: none !important
}

#fp-nav {
  position: fixed;
  z-index: 100;
  margin-top: -32px;
  top: 50%;
  opacity: 1;
  -webkit-transform: translateZ(0)
}

#fp-nav.right {
  right: 17px
}

#fp-nav.left {
  left: 17px
}

.fp-slidesNav {
  position: absolute;
  z-index: 4;
  opacity: 1;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  left: 0 !important;
  right: 0;
  margin: 0 auto !important
}

.fp-slidesNav.bottom {
  bottom: 17px
}

.fp-slidesNav.top {
  top: 17px
}

#fp-nav ul,
.fp-slidesNav ul {
  margin: 0;
  padding: 0
}

#fp-nav ul li,
.fp-slidesNav ul li {
  display: block;
  width: 14px;
  height: 13px;
  margin: 7px;
  position: relative
}

.fp-slidesNav ul li {
  display: inline-block
}

#fp-nav ul li a,
.fp-slidesNav ul li a {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  cursor: pointer;
  text-decoration: none
}

#fp-nav ul li:hover a.active span,
#fp-nav ul li a.active span,
.fp-slidesNav ul li:hover a.active span,
.fp-slidesNav ul li a.active span {
  height: 12px;
  width: 12px;
  margin: -6px 0 0 -6px;
  -webkit-border-radius: 100%;
  border-radius: 100%
}

#fp-nav ul li a span,
.fp-slidesNav ul li a span {
  -webkit-border-radius: 50%;
  border-radius: 50%;
  position: absolute;
  z-index: 1;
  height: 4px;
  width: 4px;
  border: 0;
  background: #333;
  left: 50%;
  top: 50%;
  margin: -2px 0 0 -2px;
  -webkit-transition: all .1s ease-in-out;
  -o-transition: all .1s ease-in-out;
  transition: all .1s ease-in-out
}

#fp-nav ul li:hover a span,
.fp-slidesNav ul li:hover a span {
  width: 10px;
  height: 10px;
  margin: -5px 0 0 -5px
}

#fp-nav ul li .fp-tooltip {
  position: absolute;
  top: -2px;
  color: #fff;
  font-size: 14px;
  font-family: arial, helvetica, sans-serif;
  white-space: nowrap;
  max-width: 220px;
  overflow: hidden;
  display: block;
  opacity: 0;
  width: 0;
  cursor: pointer
}

#fp-nav.fp-show-active a.active+.fp-tooltip,
#fp-nav ul li:hover .fp-tooltip {
  -webkit-transition: opacity .2s ease-in;
  -o-transition: opacity .2s ease-in;
  transition: opacity .2s ease-in;
  width: auto;
  opacity: 1
}

#fp-nav ul li .fp-tooltip.right {
  right: 20px
}

#fp-nav ul li .fp-tooltip.left {
  left: 20px
}

.fp-auto-height.fp-section,
.fp-auto-height .fp-slide,
.fp-auto-height .fp-tableCell,
.fp-responsive .fp-auto-height-responsive.fp-section,
.fp-responsive .fp-auto-height-responsive .fp-slide,
.fp-responsive .fp-auto-height-responsive .fp-tableCell {
  height: auto !important
}

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 15px;
  display: inline-block;
  cursor: pointer;
  -webkit-transition-property: opacity, -webkit-filter;
  transition-property: opacity, -webkit-filter;
  -o-transition-property: opacity, filter;
  transition-property: opacity, filter;
  transition-property: opacity, filter, -webkit-filter;
  -webkit-transition-duration: .15s;
  -o-transition-duration: .15s;
  transition-duration: .15s;
  -webkit-transition-timing-function: linear;
  -o-transition-timing-function: linear;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible
}

.hamburger-box {
  width: 20px;
  height: 13px;
  display: inline-block;
  position: relative
}

@media (min-width:769px) {
  .hamburger-box {
    height: 17px;
    width: 29px
  }
}

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px
}

.hamburger-inner,
.hamburger-inner:after,
.hamburger-inner:before {
  width: 20px;
  height: 2px;
  background-color: #21406d;
  position: absolute;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: -o-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform, -o-transform;
  -webkit-transition-duration: .15s;
  -o-transition-duration: .15s;
  transition-duration: .15s;
  -webkit-transition-timing-function: ease;
  -o-transition-timing-function: ease;
  transition-timing-function: ease
}

@media (min-width:769px) {

  .hamburger-inner,
  .hamburger-inner:after,
  .hamburger-inner:before {
    height: 2px;
    width: 29px
  }
}

.hamburger-inner:after,
.hamburger-inner:before {
  content: "";
  display: block
}

.hamburger-inner:before {
  top: -5px
}

@media (min-width:769px) {
  .hamburger-inner:before {
    top: -8px
  }
}

.hamburger-inner:after {
  bottom: -5px
}

@media (min-width:769px) {
  .hamburger-inner:after {
    bottom: -8px
  }
}

.hamburger--3dx-r .hamburger-box {
  -webkit-perspective: 80px;
  perspective: 80px
}

.hamburger--3dx-r .hamburger-inner {
  -webkit-transition: background-color 0s cubic-bezier(.645, .045, .355, 1) .1s, -webkit-transform .15s cubic-bezier(.645, .045, .355, 1);
  transition: background-color 0s cubic-bezier(.645, .045, .355, 1) .1s, -webkit-transform .15s cubic-bezier(.645, .045, .355, 1);
  -o-transition: background-color 0s .1s cubic-bezier(.645, .045, .355, 1), -o-transform .15s cubic-bezier(.645, .045, .355, 1);
  transition: transform .15s cubic-bezier(.645, .045, .355, 1), background-color 0s cubic-bezier(.645, .045, .355, 1) .1s;
  transition: transform .15s cubic-bezier(.645, .045, .355, 1), background-color 0s cubic-bezier(.645, .045, .355, 1) .1s, -webkit-transform .15s cubic-bezier(.645, .045, .355, 1), -o-transform .15s cubic-bezier(.645, .045, .355, 1)
}

.hamburger--3dx-r .hamburger-inner:after,
.hamburger--3dx-r .hamburger-inner:before {
  -webkit-transition: -webkit-transform 0s cubic-bezier(.645, .045, .355, 1) .1s;
  transition: -webkit-transform 0s cubic-bezier(.645, .045, .355, 1) .1s;
  -o-transition: -o-transform 0s .1s cubic-bezier(.645, .045, .355, 1);
  transition: transform 0s cubic-bezier(.645, .045, .355, 1) .1s;
  transition: transform 0s cubic-bezier(.645, .045, .355, 1) .1s, -webkit-transform 0s cubic-bezier(.645, .045, .355, 1) .1s, -o-transform 0s cubic-bezier(.645, .045, .355, 1) .1s
}

.hamburger--3dx-r.is-active .hamburger-inner {
  background-color: transparent !important;
  -webkit-transform: rotateY(-180deg);
  transform: rotateY(-180deg)
}

.hamburger--3dx-r.is-active .hamburger-inner:before {
  -webkit-transform: translate3d(0, 10px, 0) rotate(45deg);
  transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--3dx-r.is-active .hamburger-inner:after {
  -webkit-transform: translate3d(0, -10px, 0) rotate(-45deg);
  transform: translate3d(0, -10px, 0) rotate(-45deg)
}

.hamburger--3dy .hamburger-box {
  -webkit-perspective: 80px;
  perspective: 80px
}

.hamburger--3dy .hamburger-inner {
  -webkit-transition: background-color 0s cubic-bezier(.645, .045, .355, 1) .1s, -webkit-transform .15s cubic-bezier(.645, .045, .355, 1);
  transition: background-color 0s cubic-bezier(.645, .045, .355, 1) .1s, -webkit-transform .15s cubic-bezier(.645, .045, .355, 1);
  -o-transition: background-color 0s .1s cubic-bezier(.645, .045, .355, 1), -o-transform .15s cubic-bezier(.645, .045, .355, 1);
  transition: transform .15s cubic-bezier(.645, .045, .355, 1), background-color 0s cubic-bezier(.645, .045, .355, 1) .1s;
  transition: transform .15s cubic-bezier(.645, .045, .355, 1), background-color 0s cubic-bezier(.645, .045, .355, 1) .1s, -webkit-transform .15s cubic-bezier(.645, .045, .355, 1), -o-transform .15s cubic-bezier(.645, .045, .355, 1)
}

.hamburger--3dy .hamburger-inner:after,
.hamburger--3dy .hamburger-inner:before {
  -webkit-transition: -webkit-transform 0s cubic-bezier(.645, .045, .355, 1) .1s;
  transition: -webkit-transform 0s cubic-bezier(.645, .045, .355, 1) .1s;
  -o-transition: -o-transform 0s .1s cubic-bezier(.645, .045, .355, 1);
  transition: transform 0s cubic-bezier(.645, .045, .355, 1) .1s;
  transition: transform 0s cubic-bezier(.645, .045, .355, 1) .1s, -webkit-transform 0s cubic-bezier(.645, .045, .355, 1) .1s, -o-transform 0s cubic-bezier(.645, .045, .355, 1) .1s
}

.hamburger--3dy.is-active .hamburger-inner {
  background-color: transparent !important;
  -webkit-transform: rotateX(-180deg);
  transform: rotateX(-180deg)
}

.hamburger--3dy.is-active .hamburger-inner:before {
  -webkit-transform: translate3d(0, 10px, 0) rotate(45deg);
  transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--3dy.is-active .hamburger-inner:after {
  -webkit-transform: translate3d(0, -10px, 0) rotate(-45deg);
  transform: translate3d(0, -10px, 0) rotate(-45deg)
}

.hamburger--3dy-r .hamburger-box {
  -webkit-perspective: 80px;
  perspective: 80px
}

.hamburger--3dy-r .hamburger-inner {
  -webkit-transition: background-color 0s cubic-bezier(.645, .045, .355, 1) .1s, -webkit-transform .15s cubic-bezier(.645, .045, .355, 1);
  transition: background-color 0s cubic-bezier(.645, .045, .355, 1) .1s, -webkit-transform .15s cubic-bezier(.645, .045, .355, 1);
  -o-transition: background-color 0s .1s cubic-bezier(.645, .045, .355, 1), -o-transform .15s cubic-bezier(.645, .045, .355, 1);
  transition: transform .15s cubic-bezier(.645, .045, .355, 1), background-color 0s cubic-bezier(.645, .045, .355, 1) .1s;
  transition: transform .15s cubic-bezier(.645, .045, .355, 1), background-color 0s cubic-bezier(.645, .045, .355, 1) .1s, -webkit-transform .15s cubic-bezier(.645, .045, .355, 1), -o-transform .15s cubic-bezier(.645, .045, .355, 1)
}

.hamburger--3dy-r .hamburger-inner:after,
.hamburger--3dy-r .hamburger-inner:before {
  -webkit-transition: -webkit-transform 0s cubic-bezier(.645, .045, .355, 1) .1s;
  transition: -webkit-transform 0s cubic-bezier(.645, .045, .355, 1) .1s;
  -o-transition: -o-transform 0s .1s cubic-bezier(.645, .045, .355, 1);
  transition: transform 0s cubic-bezier(.645, .045, .355, 1) .1s;
  transition: transform 0s cubic-bezier(.645, .045, .355, 1) .1s, -webkit-transform 0s cubic-bezier(.645, .045, .355, 1) .1s, -o-transform 0s cubic-bezier(.645, .045, .355, 1) .1s
}

.hamburger--3dy-r.is-active .hamburger-inner {
  background-color: transparent !important;
  -webkit-transform: rotateX(180deg);
  transform: rotateX(180deg)
}

.hamburger--3dy-r.is-active .hamburger-inner:before {
  -webkit-transform: translate3d(0, 10px, 0) rotate(45deg);
  transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--3dy-r.is-active .hamburger-inner:after {
  -webkit-transform: translate3d(0, -10px, 0) rotate(-45deg);
  transform: translate3d(0, -10px, 0) rotate(-45deg)
}

.hamburger--3dxy .hamburger-box {
  -webkit-perspective: 80px;
  perspective: 80px
}

.hamburger--3dxy .hamburger-inner {
  -webkit-transition: background-color 0s cubic-bezier(.645, .045, .355, 1) .1s, -webkit-transform .15s cubic-bezier(.645, .045, .355, 1);
  transition: background-color 0s cubic-bezier(.645, .045, .355, 1) .1s, -webkit-transform .15s cubic-bezier(.645, .045, .355, 1);
  -o-transition: background-color 0s .1s cubic-bezier(.645, .045, .355, 1), -o-transform .15s cubic-bezier(.645, .045, .355, 1);
  transition: transform .15s cubic-bezier(.645, .045, .355, 1), background-color 0s cubic-bezier(.645, .045, .355, 1) .1s;
  transition: transform .15s cubic-bezier(.645, .045, .355, 1), background-color 0s cubic-bezier(.645, .045, .355, 1) .1s, -webkit-transform .15s cubic-bezier(.645, .045, .355, 1), -o-transform .15s cubic-bezier(.645, .045, .355, 1)
}

.hamburger--3dxy .hamburger-inner:after,
.hamburger--3dxy .hamburger-inner:before {
  -webkit-transition: -webkit-transform 0s cubic-bezier(.645, .045, .355, 1) .1s;
  transition: -webkit-transform 0s cubic-bezier(.645, .045, .355, 1) .1s;
  -o-transition: -o-transform 0s .1s cubic-bezier(.645, .045, .355, 1);
  transition: transform 0s cubic-bezier(.645, .045, .355, 1) .1s;
  transition: transform 0s cubic-bezier(.645, .045, .355, 1) .1s, -webkit-transform 0s cubic-bezier(.645, .045, .355, 1) .1s, -o-transform 0s cubic-bezier(.645, .045, .355, 1) .1s
}

.hamburger--3dxy.is-active .hamburger-inner {
  background-color: transparent !important;
  -webkit-transform: rotateX(180deg) rotateY(180deg);
  transform: rotateX(180deg) rotateY(180deg)
}

.hamburger--3dxy.is-active .hamburger-inner:before {
  -webkit-transform: translate3d(0, 10px, 0) rotate(45deg);
  transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--3dxy.is-active .hamburger-inner:after {
  -webkit-transform: translate3d(0, -10px, 0) rotate(-45deg);
  transform: translate3d(0, -10px, 0) rotate(-45deg)
}

.hamburger--3dxy-r .hamburger-box {
  -webkit-perspective: 80px;
  perspective: 80px
}

.hamburger--3dxy-r .hamburger-inner {
  -webkit-transition: background-color 0s cubic-bezier(.645, .045, .355, 1) .1s, -webkit-transform .15s cubic-bezier(.645, .045, .355, 1);
  transition: background-color 0s cubic-bezier(.645, .045, .355, 1) .1s, -webkit-transform .15s cubic-bezier(.645, .045, .355, 1);
  -o-transition: background-color 0s .1s cubic-bezier(.645, .045, .355, 1), -o-transform .15s cubic-bezier(.645, .045, .355, 1);
  transition: transform .15s cubic-bezier(.645, .045, .355, 1), background-color 0s cubic-bezier(.645, .045, .355, 1) .1s;
  transition: transform .15s cubic-bezier(.645, .045, .355, 1), background-color 0s cubic-bezier(.645, .045, .355, 1) .1s, -webkit-transform .15s cubic-bezier(.645, .045, .355, 1), -o-transform .15s cubic-bezier(.645, .045, .355, 1)
}

.hamburger--3dxy-r .hamburger-inner:after,
.hamburger--3dxy-r .hamburger-inner:before {
  -webkit-transition: -webkit-transform 0s cubic-bezier(.645, .045, .355, 1) .1s;
  transition: -webkit-transform 0s cubic-bezier(.645, .045, .355, 1) .1s;
  -o-transition: -o-transform 0s .1s cubic-bezier(.645, .045, .355, 1);
  transition: transform 0s cubic-bezier(.645, .045, .355, 1) .1s;
  transition: transform 0s cubic-bezier(.645, .045, .355, 1) .1s, -webkit-transform 0s cubic-bezier(.645, .045, .355, 1) .1s, -o-transform 0s cubic-bezier(.645, .045, .355, 1) .1s
}

.hamburger--3dxy-r.is-active .hamburger-inner {
  background-color: transparent !important;
  -webkit-transform: rotateX(180deg) rotateY(180deg) rotate(-180deg);
  transform: rotateX(180deg) rotateY(180deg) rotate(-180deg)
}

.hamburger--3dxy-r.is-active .hamburger-inner:before {
  -webkit-transform: translate3d(0, 10px, 0) rotate(45deg);
  transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--3dxy-r.is-active .hamburger-inner:after {
  -webkit-transform: translate3d(0, -10px, 0) rotate(-45deg);
  transform: translate3d(0, -10px, 0) rotate(-45deg)
}

.hamburger--arrow:hover .hamburger-inner:before {
  -webkit-transform: translate3d(-9px, 3px, 0) rotate(-45deg) scaleX(.45);
  transform: translate3d(-9px, 3px, 0) rotate(-45deg) scaleX(.45)
}

.hamburger--arrow:hover .hamburger-inner:after {
  -webkit-transform: translate3d(-9px, -3px, 0) rotate(45deg) scaleX(.45);
  transform: translate3d(-9px, -3px, 0) rotate(45deg) scaleX(.45)
}

.hamburger--arrow-r.is-active .hamburger-inner:before {
  -webkit-transform: translate3d(8px, 0, 0) rotate(45deg) scaleX(.7);
  transform: translate3d(8px, 0, 0) rotate(45deg) scaleX(.7)
}

.hamburger--arrow-r.is-active .hamburger-inner:after {
  -webkit-transform: translate3d(8px, 0, 0) rotate(-45deg) scaleX(.7);
  transform: translate3d(8px, 0, 0) rotate(-45deg) scaleX(.7)
}

.hamburger--arrowalt .hamburger-inner:before {
  -webkit-transition: top .1s ease .1s, -webkit-transform .1s cubic-bezier(.165, .84, .44, 1);
  transition: top .1s ease .1s, -webkit-transform .1s cubic-bezier(.165, .84, .44, 1);
  -o-transition: top .1s .1s ease, -o-transform .1s cubic-bezier(.165, .84, .44, 1);
  transition: top .1s ease .1s, transform .1s cubic-bezier(.165, .84, .44, 1);
  transition: top .1s ease .1s, transform .1s cubic-bezier(.165, .84, .44, 1), -webkit-transform .1s cubic-bezier(.165, .84, .44, 1), -o-transform .1s cubic-bezier(.165, .84, .44, 1)
}

.hamburger--arrowalt .hamburger-inner:after {
  -webkit-transition: bottom .1s ease .1s, -webkit-transform .1s cubic-bezier(.165, .84, .44, 1);
  transition: bottom .1s ease .1s, -webkit-transform .1s cubic-bezier(.165, .84, .44, 1);
  -o-transition: bottom .1s .1s ease, -o-transform .1s cubic-bezier(.165, .84, .44, 1);
  transition: bottom .1s ease .1s, transform .1s cubic-bezier(.165, .84, .44, 1);
  transition: bottom .1s ease .1s, transform .1s cubic-bezier(.165, .84, .44, 1), -webkit-transform .1s cubic-bezier(.165, .84, .44, 1), -o-transform .1s cubic-bezier(.165, .84, .44, 1)
}

.hamburger--arrowalt.is-active .hamburger-inner:before {
  top: 0;
  -webkit-transform: translate3d(-8px, -10px, 0) rotate(-45deg) scaleX(.7);
  transform: translate3d(-8px, -10px, 0) rotate(-45deg) scaleX(.7);
  -webkit-transition: top .1s ease, -webkit-transform .1s cubic-bezier(.895, .03, .685, .22) .1s;
  transition: top .1s ease, -webkit-transform .1s cubic-bezier(.895, .03, .685, .22) .1s;
  -o-transition: top .1s ease, -o-transform .1s .1s cubic-bezier(.895, .03, .685, .22);
  transition: top .1s ease, transform .1s cubic-bezier(.895, .03, .685, .22) .1s;
  transition: top .1s ease, transform .1s cubic-bezier(.895, .03, .685, .22) .1s, -webkit-transform .1s cubic-bezier(.895, .03, .685, .22) .1s, -o-transform .1s cubic-bezier(.895, .03, .685, .22) .1s
}

.hamburger--arrowalt.is-active .hamburger-inner:after {
  bottom: 0;
  -webkit-transform: translate3d(-8px, 10px, 0) rotate(45deg) scaleX(.7);
  transform: translate3d(-8px, 10px, 0) rotate(45deg) scaleX(.7);
  -webkit-transition: bottom .1s ease, -webkit-transform .1s cubic-bezier(.895, .03, .685, .22) .1s;
  transition: bottom .1s ease, -webkit-transform .1s cubic-bezier(.895, .03, .685, .22) .1s;
  -o-transition: bottom .1s ease, -o-transform .1s .1s cubic-bezier(.895, .03, .685, .22);
  transition: bottom .1s ease, transform .1s cubic-bezier(.895, .03, .685, .22) .1s;
  transition: bottom .1s ease, transform .1s cubic-bezier(.895, .03, .685, .22) .1s, -webkit-transform .1s cubic-bezier(.895, .03, .685, .22) .1s, -o-transform .1s cubic-bezier(.895, .03, .685, .22) .1s
}

.hamburger--arrowalt-r .hamburger-inner:before {
  -webkit-transition: top .1s ease .1s, -webkit-transform .1s cubic-bezier(.165, .84, .44, 1);
  transition: top .1s ease .1s, -webkit-transform .1s cubic-bezier(.165, .84, .44, 1);
  -o-transition: top .1s .1s ease, -o-transform .1s cubic-bezier(.165, .84, .44, 1);
  transition: top .1s ease .1s, transform .1s cubic-bezier(.165, .84, .44, 1);
  transition: top .1s ease .1s, transform .1s cubic-bezier(.165, .84, .44, 1), -webkit-transform .1s cubic-bezier(.165, .84, .44, 1), -o-transform .1s cubic-bezier(.165, .84, .44, 1)
}

.hamburger--arrowalt-r .hamburger-inner:after {
  -webkit-transition: bottom .1s ease .1s, -webkit-transform .1s cubic-bezier(.165, .84, .44, 1);
  transition: bottom .1s ease .1s, -webkit-transform .1s cubic-bezier(.165, .84, .44, 1);
  -o-transition: bottom .1s .1s ease, -o-transform .1s cubic-bezier(.165, .84, .44, 1);
  transition: bottom .1s ease .1s, transform .1s cubic-bezier(.165, .84, .44, 1);
  transition: bottom .1s ease .1s, transform .1s cubic-bezier(.165, .84, .44, 1), -webkit-transform .1s cubic-bezier(.165, .84, .44, 1), -o-transform .1s cubic-bezier(.165, .84, .44, 1)
}

.hamburger--arrowalt-r.is-active .hamburger-inner:before {
  top: 0;
  -webkit-transform: translate3d(8px, -10px, 0) rotate(45deg) scaleX(.7);
  transform: translate3d(8px, -10px, 0) rotate(45deg) scaleX(.7);
  -webkit-transition: top .1s ease, -webkit-transform .1s cubic-bezier(.895, .03, .685, .22) .1s;
  transition: top .1s ease, -webkit-transform .1s cubic-bezier(.895, .03, .685, .22) .1s;
  -o-transition: top .1s ease, -o-transform .1s .1s cubic-bezier(.895, .03, .685, .22);
  transition: top .1s ease, transform .1s cubic-bezier(.895, .03, .685, .22) .1s;
  transition: top .1s ease, transform .1s cubic-bezier(.895, .03, .685, .22) .1s, -webkit-transform .1s cubic-bezier(.895, .03, .685, .22) .1s, -o-transform .1s cubic-bezier(.895, .03, .685, .22) .1s
}

.hamburger--arrowalt-r.is-active .hamburger-inner:after {
  bottom: 0;
  -webkit-transform: translate3d(8px, 10px, 0) rotate(-45deg) scaleX(.7);
  transform: translate3d(8px, 10px, 0) rotate(-45deg) scaleX(.7);
  -webkit-transition: bottom .1s ease, -webkit-transform .1s cubic-bezier(.895, .03, .685, .22) .1s;
  transition: bottom .1s ease, -webkit-transform .1s cubic-bezier(.895, .03, .685, .22) .1s;
  -o-transition: bottom .1s ease, -o-transform .1s .1s cubic-bezier(.895, .03, .685, .22);
  transition: bottom .1s ease, transform .1s cubic-bezier(.895, .03, .685, .22) .1s;
  transition: bottom .1s ease, transform .1s cubic-bezier(.895, .03, .685, .22) .1s, -webkit-transform .1s cubic-bezier(.895, .03, .685, .22) .1s, -o-transform .1s cubic-bezier(.895, .03, .685, .22) .1s
}

.hamburger--arrowturn.is-active .hamburger-inner {
  -webkit-transform: rotate(-180deg);
  -ms-transform: rotate(-180deg);
  -o-transform: rotate(-180deg);
  transform: rotate(-180deg)
}

.hamburger--arrowturn.is-active .hamburger-inner:before {
  -webkit-transform: translate3d(8px, 0, 0) rotate(45deg) scaleX(.7);
  transform: translate3d(8px, 0, 0) rotate(45deg) scaleX(.7)
}

.hamburger--arrowturn.is-active .hamburger-inner:after {
  -webkit-transform: translate3d(8px, 0, 0) rotate(-45deg) scaleX(.7);
  transform: translate3d(8px, 0, 0) rotate(-45deg) scaleX(.7)
}

.hamburger--arrowturn-r.is-active .hamburger-inner {
  -webkit-transform: rotate(-180deg);
  -ms-transform: rotate(-180deg);
  -o-transform: rotate(-180deg);
  transform: rotate(-180deg)
}

.hamburger--arrowturn-r.is-active .hamburger-inner:before {
  -webkit-transform: translate3d(-8px, 0, 0) rotate(-45deg) scaleX(.7);
  transform: translate3d(-8px, 0, 0) rotate(-45deg) scaleX(.7)
}

.hamburger--arrowturn-r.is-active .hamburger-inner:after {
  -webkit-transform: translate3d(-8px, 0, 0) rotate(45deg) scaleX(.7);
  transform: translate3d(-8px, 0, 0) rotate(45deg) scaleX(.7)
}

.hamburger--collapse .hamburger-inner {
  top: auto;
  bottom: 0;
  -webkit-transition-duration: .13s;
  -o-transition-duration: .13s;
  transition-duration: .13s;
  -webkit-transition-delay: .13s;
  -o-transition-delay: .13s;
  transition-delay: .13s;
  -webkit-transition-timing-function: cubic-bezier(.55, .055, .675, .19);
  -o-transition-timing-function: cubic-bezier(.55, .055, .675, .19);
  transition-timing-function: cubic-bezier(.55, .055, .675, .19)
}

.hamburger--collapse .hamburger-inner:after {
  top: -20px;
  -webkit-transition: top .2s cubic-bezier(.33333, .66667, .66667, 1) .2s, opacity .1s linear;
  -o-transition: top .2s .2s cubic-bezier(.33333, .66667, .66667, 1), opacity .1s linear;
  transition: top .2s cubic-bezier(.33333, .66667, .66667, 1) .2s, opacity .1s linear
}

.hamburger--collapse .hamburger-inner:before {
  -webkit-transition: top .12s cubic-bezier(.33333, .66667, .66667, 1) .2s, -webkit-transform .13s cubic-bezier(.55, .055, .675, .19);
  transition: top .12s cubic-bezier(.33333, .66667, .66667, 1) .2s, -webkit-transform .13s cubic-bezier(.55, .055, .675, .19);
  -o-transition: top .12s .2s cubic-bezier(.33333, .66667, .66667, 1), -o-transform .13s cubic-bezier(.55, .055, .675, .19);
  transition: top .12s cubic-bezier(.33333, .66667, .66667, 1) .2s, transform .13s cubic-bezier(.55, .055, .675, .19);
  transition: top .12s cubic-bezier(.33333, .66667, .66667, 1) .2s, transform .13s cubic-bezier(.55, .055, .675, .19), -webkit-transform .13s cubic-bezier(.55, .055, .675, .19), -o-transform .13s cubic-bezier(.55, .055, .675, .19)
}

.hamburger--collapse.is-active .hamburger-inner {
  -webkit-transform: translate3d(0, -10px, 0) rotate(-45deg);
  transform: translate3d(0, -10px, 0) rotate(-45deg);
  -webkit-transition-delay: .22s;
  -o-transition-delay: .22s;
  transition-delay: .22s;
  -webkit-transition-timing-function: cubic-bezier(.215, .61, .355, 1);
  -o-transition-timing-function: cubic-bezier(.215, .61, .355, 1);
  transition-timing-function: cubic-bezier(.215, .61, .355, 1)
}

.hamburger--collapse.is-active .hamburger-inner:after {
  top: 0;
  opacity: 0;
  -webkit-transition: top .2s cubic-bezier(.33333, 0, .66667, .33333), opacity .1s linear .22s;
  -o-transition: top .2s cubic-bezier(.33333, 0, .66667, .33333), opacity .1s .22s linear;
  transition: top .2s cubic-bezier(.33333, 0, .66667, .33333), opacity .1s linear .22s
}

.hamburger--collapse.is-active .hamburger-inner:before {
  top: 0;
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  -o-transform: rotate(-90deg);
  transform: rotate(-90deg);
  -webkit-transition: top .1s cubic-bezier(.33333, 0, .66667, .33333) .16s, -webkit-transform .13s cubic-bezier(.215, .61, .355, 1) .25s;
  transition: top .1s cubic-bezier(.33333, 0, .66667, .33333) .16s, -webkit-transform .13s cubic-bezier(.215, .61, .355, 1) .25s;
  -o-transition: top .1s .16s cubic-bezier(.33333, 0, .66667, .33333), -o-transform .13s .25s cubic-bezier(.215, .61, .355, 1);
  transition: top .1s cubic-bezier(.33333, 0, .66667, .33333) .16s, transform .13s cubic-bezier(.215, .61, .355, 1) .25s;
  transition: top .1s cubic-bezier(.33333, 0, .66667, .33333) .16s, transform .13s cubic-bezier(.215, .61, .355, 1) .25s, -webkit-transform .13s cubic-bezier(.215, .61, .355, 1) .25s, -o-transform .13s cubic-bezier(.215, .61, .355, 1) .25s
}

.hamburger--collapse-r .hamburger-inner {
  top: auto;
  bottom: 0;
  -webkit-transition-duration: .13s;
  -o-transition-duration: .13s;
  transition-duration: .13s;
  -webkit-transition-delay: .13s;
  -o-transition-delay: .13s;
  transition-delay: .13s;
  -webkit-transition-timing-function: cubic-bezier(.55, .055, .675, .19);
  -o-transition-timing-function: cubic-bezier(.55, .055, .675, .19);
  transition-timing-function: cubic-bezier(.55, .055, .675, .19)
}

.hamburger--collapse-r .hamburger-inner:after {
  top: -20px;
  -webkit-transition: top .2s cubic-bezier(.33333, .66667, .66667, 1) .2s, opacity .1s linear;
  -o-transition: top .2s .2s cubic-bezier(.33333, .66667, .66667, 1), opacity .1s linear;
  transition: top .2s cubic-bezier(.33333, .66667, .66667, 1) .2s, opacity .1s linear
}

.hamburger--collapse-r .hamburger-inner:before {
  -webkit-transition: top .12s cubic-bezier(.33333, .66667, .66667, 1) .2s, -webkit-transform .13s cubic-bezier(.55, .055, .675, .19);
  transition: top .12s cubic-bezier(.33333, .66667, .66667, 1) .2s, -webkit-transform .13s cubic-bezier(.55, .055, .675, .19);
  -o-transition: top .12s .2s cubic-bezier(.33333, .66667, .66667, 1), -o-transform .13s cubic-bezier(.55, .055, .675, .19);
  transition: top .12s cubic-bezier(.33333, .66667, .66667, 1) .2s, transform .13s cubic-bezier(.55, .055, .675, .19);
  transition: top .12s cubic-bezier(.33333, .66667, .66667, 1) .2s, transform .13s cubic-bezier(.55, .055, .675, .19), -webkit-transform .13s cubic-bezier(.55, .055, .675, .19), -o-transform .13s cubic-bezier(.55, .055, .675, .19)
}

.hamburger--collapse-r.is-active .hamburger-inner {
  -webkit-transform: translate3d(0, -10px, 0) rotate(45deg);
  transform: translate3d(0, -10px, 0) rotate(45deg);
  -webkit-transition-delay: .22s;
  -o-transition-delay: .22s;
  transition-delay: .22s;
  -webkit-transition-timing-function: cubic-bezier(.215, .61, .355, 1);
  -o-transition-timing-function: cubic-bezier(.215, .61, .355, 1);
  transition-timing-function: cubic-bezier(.215, .61, .355, 1)
}

.hamburger--collapse-r.is-active .hamburger-inner:after {
  top: 0;
  opacity: 0;
  -webkit-transition: top .2s cubic-bezier(.33333, 0, .66667, .33333), opacity .1s linear .22s;
  -o-transition: top .2s cubic-bezier(.33333, 0, .66667, .33333), opacity .1s .22s linear;
  transition: top .2s cubic-bezier(.33333, 0, .66667, .33333), opacity .1s linear .22s
}

.hamburger--collapse-r.is-active .hamburger-inner:before {
  top: 0;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transition: top .1s cubic-bezier(.33333, 0, .66667, .33333) .16s, -webkit-transform .13s cubic-bezier(.215, .61, .355, 1) .25s;
  transition: top .1s cubic-bezier(.33333, 0, .66667, .33333) .16s, -webkit-transform .13s cubic-bezier(.215, .61, .355, 1) .25s;
  -o-transition: top .1s .16s cubic-bezier(.33333, 0, .66667, .33333), -o-transform .13s .25s cubic-bezier(.215, .61, .355, 1);
  transition: top .1s cubic-bezier(.33333, 0, .66667, .33333) .16s, transform .13s cubic-bezier(.215, .61, .355, 1) .25s;
  transition: top .1s cubic-bezier(.33333, 0, .66667, .33333) .16s, transform .13s cubic-bezier(.215, .61, .355, 1) .25s, -webkit-transform .13s cubic-bezier(.215, .61, .355, 1) .25s, -o-transform .13s cubic-bezier(.215, .61, .355, 1) .25s
}

.hamburger--elastic .hamburger-inner {
  top: 2px;
  -webkit-transition-duration: .275s;
  -o-transition-duration: .275s;
  transition-duration: .275s;
  -webkit-transition-timing-function: cubic-bezier(.68, -.55, .265, 1.55);
  -o-transition-timing-function: cubic-bezier(.68, -.55, .265, 1.55);
  transition-timing-function: cubic-bezier(.68, -.55, .265, 1.55)
}

.hamburger--elastic .hamburger-inner:before {
  top: 10px;
  -webkit-transition: opacity .125s ease .275s;
  -o-transition: opacity .125s .275s ease;
  transition: opacity .125s ease .275s
}

.hamburger--elastic .hamburger-inner:after {
  top: 20px;
  -webkit-transition: -webkit-transform .275s cubic-bezier(.68, -.55, .265, 1.55);
  transition: -webkit-transform .275s cubic-bezier(.68, -.55, .265, 1.55);
  -o-transition: -o-transform .275s cubic-bezier(.68, -.55, .265, 1.55);
  transition: transform .275s cubic-bezier(.68, -.55, .265, 1.55);
  transition: transform .275s cubic-bezier(.68, -.55, .265, 1.55), -webkit-transform .275s cubic-bezier(.68, -.55, .265, 1.55), -o-transform .275s cubic-bezier(.68, -.55, .265, 1.55)
}

.hamburger--elastic.is-active .hamburger-inner {
  -webkit-transform: translate3d(0, 10px, 0) rotate(135deg);
  transform: translate3d(0, 10px, 0) rotate(135deg);
  -webkit-transition-delay: 75ms;
  -o-transition-delay: 75ms;
  transition-delay: 75ms
}

.hamburger--elastic.is-active .hamburger-inner:before {
  -webkit-transition-delay: 0s;
  -o-transition-delay: 0s;
  transition-delay: 0s;
  opacity: 0
}

.hamburger--elastic.is-active .hamburger-inner:after {
  -webkit-transform: translate3d(0, -20px, 0) rotate(-270deg);
  transform: translate3d(0, -20px, 0) rotate(-270deg);
  -webkit-transition-delay: 75ms;
  -o-transition-delay: 75ms;
  transition-delay: 75ms
}

.hamburger--elastic-r .hamburger-inner {
  top: 2px;
  -webkit-transition-duration: .275s;
  -o-transition-duration: .275s;
  transition-duration: .275s;
  -webkit-transition-timing-function: cubic-bezier(.68, -.55, .265, 1.55);
  -o-transition-timing-function: cubic-bezier(.68, -.55, .265, 1.55);
  transition-timing-function: cubic-bezier(.68, -.55, .265, 1.55)
}

.hamburger--elastic-r .hamburger-inner:before {
  top: 10px;
  -webkit-transition: opacity .125s ease .275s;
  -o-transition: opacity .125s .275s ease;
  transition: opacity .125s ease .275s
}

.hamburger--elastic-r .hamburger-inner:after {
  top: 20px;
  -webkit-transition: -webkit-transform .275s cubic-bezier(.68, -.55, .265, 1.55);
  transition: -webkit-transform .275s cubic-bezier(.68, -.55, .265, 1.55);
  -o-transition: -o-transform .275s cubic-bezier(.68, -.55, .265, 1.55);
  transition: transform .275s cubic-bezier(.68, -.55, .265, 1.55);
  transition: transform .275s cubic-bezier(.68, -.55, .265, 1.55), -webkit-transform .275s cubic-bezier(.68, -.55, .265, 1.55), -o-transform .275s cubic-bezier(.68, -.55, .265, 1.55)
}

.hamburger--elastic-r.is-active .hamburger-inner {
  -webkit-transform: translate3d(0, 10px, 0) rotate(-135deg);
  transform: translate3d(0, 10px, 0) rotate(-135deg);
  -webkit-transition-delay: 75ms;
  -o-transition-delay: 75ms;
  transition-delay: 75ms
}

.hamburger--elastic-r.is-active .hamburger-inner:before {
  -webkit-transition-delay: 0s;
  -o-transition-delay: 0s;
  transition-delay: 0s;
  opacity: 0
}

.hamburger--elastic-r.is-active .hamburger-inner:after {
  -webkit-transform: translate3d(0, -20px, 0) rotate(270deg);
  transform: translate3d(0, -20px, 0) rotate(270deg);
  -webkit-transition-delay: 75ms;
  -o-transition-delay: 75ms;
  transition-delay: 75ms
}

.hamburger--emphatic {
  overflow: hidden
}

.hamburger--emphatic .hamburger-inner {
  -webkit-transition: background-color .125s ease-in .175s;
  -o-transition: background-color .125s .175s ease-in;
  transition: background-color .125s ease-in .175s
}

.hamburger--emphatic .hamburger-inner:before {
  left: 0;
  -webkit-transition: top .05s linear .125s, left .125s ease-in .175s, -webkit-transform .125s cubic-bezier(.6, .04, .98, .335);
  transition: top .05s linear .125s, left .125s ease-in .175s, -webkit-transform .125s cubic-bezier(.6, .04, .98, .335);
  -o-transition: top .05s .125s linear, left .125s .175s ease-in, -o-transform .125s cubic-bezier(.6, .04, .98, .335);
  transition: transform .125s cubic-bezier(.6, .04, .98, .335), top .05s linear .125s, left .125s ease-in .175s;
  transition: transform .125s cubic-bezier(.6, .04, .98, .335), top .05s linear .125s, left .125s ease-in .175s, -webkit-transform .125s cubic-bezier(.6, .04, .98, .335), -o-transform .125s cubic-bezier(.6, .04, .98, .335)
}

.hamburger--emphatic .hamburger-inner:after {
  top: 10px;
  right: 0;
  -webkit-transition: top .05s linear .125s, right .125s ease-in .175s, -webkit-transform .125s cubic-bezier(.6, .04, .98, .335);
  transition: top .05s linear .125s, right .125s ease-in .175s, -webkit-transform .125s cubic-bezier(.6, .04, .98, .335);
  -o-transition: top .05s .125s linear, right .125s .175s ease-in, -o-transform .125s cubic-bezier(.6, .04, .98, .335);
  transition: transform .125s cubic-bezier(.6, .04, .98, .335), top .05s linear .125s, right .125s ease-in .175s;
  transition: transform .125s cubic-bezier(.6, .04, .98, .335), top .05s linear .125s, right .125s ease-in .175s, -webkit-transform .125s cubic-bezier(.6, .04, .98, .335), -o-transform .125s cubic-bezier(.6, .04, .98, .335)
}

.hamburger--emphatic.is-active .hamburger-inner {
  -webkit-transition-delay: 0s;
  -o-transition-delay: 0s;
  transition-delay: 0s;
  -webkit-transition-timing-function: ease-out;
  -o-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  background-color: transparent !important
}

.hamburger--emphatic.is-active .hamburger-inner:before {
  left: -80px;
  top: -80px;
  -webkit-transform: translate3d(80px, 80px, 0) rotate(45deg);
  transform: translate3d(80px, 80px, 0) rotate(45deg);
  -webkit-transition: left .125s ease-out, top .05s linear .125s, -webkit-transform .125s cubic-bezier(.075, .82, .165, 1) .175s;
  transition: left .125s ease-out, top .05s linear .125s, -webkit-transform .125s cubic-bezier(.075, .82, .165, 1) .175s;
  -o-transition: left .125s ease-out, top .05s .125s linear, -o-transform .125s .175s cubic-bezier(.075, .82, .165, 1);
  transition: left .125s ease-out, top .05s linear .125s, transform .125s cubic-bezier(.075, .82, .165, 1) .175s;
  transition: left .125s ease-out, top .05s linear .125s, transform .125s cubic-bezier(.075, .82, .165, 1) .175s, -webkit-transform .125s cubic-bezier(.075, .82, .165, 1) .175s, -o-transform .125s cubic-bezier(.075, .82, .165, 1) .175s
}

.hamburger--emphatic.is-active .hamburger-inner:after {
  right: -80px;
  top: -80px;
  -webkit-transform: translate3d(-80px, 80px, 0) rotate(-45deg);
  transform: translate3d(-80px, 80px, 0) rotate(-45deg);
  -webkit-transition: right .125s ease-out, top .05s linear .125s, -webkit-transform .125s cubic-bezier(.075, .82, .165, 1) .175s;
  transition: right .125s ease-out, top .05s linear .125s, -webkit-transform .125s cubic-bezier(.075, .82, .165, 1) .175s;
  -o-transition: right .125s ease-out, top .05s .125s linear, -o-transform .125s .175s cubic-bezier(.075, .82, .165, 1);
  transition: right .125s ease-out, top .05s linear .125s, transform .125s cubic-bezier(.075, .82, .165, 1) .175s;
  transition: right .125s ease-out, top .05s linear .125s, transform .125s cubic-bezier(.075, .82, .165, 1) .175s, -webkit-transform .125s cubic-bezier(.075, .82, .165, 1) .175s, -o-transform .125s cubic-bezier(.075, .82, .165, 1) .175s
}

.hamburger--emphatic-r {
  overflow: hidden
}

.hamburger--emphatic-r .hamburger-inner {
  -webkit-transition: background-color .125s ease-in .175s;
  -o-transition: background-color .125s .175s ease-in;
  transition: background-color .125s ease-in .175s
}

.hamburger--emphatic-r .hamburger-inner:before {
  left: 0;
  -webkit-transition: top .05s linear .125s, left .125s ease-in .175s, -webkit-transform .125s cubic-bezier(.6, .04, .98, .335);
  transition: top .05s linear .125s, left .125s ease-in .175s, -webkit-transform .125s cubic-bezier(.6, .04, .98, .335);
  -o-transition: top .05s .125s linear, left .125s .175s ease-in, -o-transform .125s cubic-bezier(.6, .04, .98, .335);
  transition: transform .125s cubic-bezier(.6, .04, .98, .335), top .05s linear .125s, left .125s ease-in .175s;
  transition: transform .125s cubic-bezier(.6, .04, .98, .335), top .05s linear .125s, left .125s ease-in .175s, -webkit-transform .125s cubic-bezier(.6, .04, .98, .335), -o-transform .125s cubic-bezier(.6, .04, .98, .335)
}

.hamburger--emphatic-r .hamburger-inner:after {
  top: 10px;
  right: 0;
  -webkit-transition: top .05s linear .125s, right .125s ease-in .175s, -webkit-transform .125s cubic-bezier(.6, .04, .98, .335);
  transition: top .05s linear .125s, right .125s ease-in .175s, -webkit-transform .125s cubic-bezier(.6, .04, .98, .335);
  -o-transition: top .05s .125s linear, right .125s .175s ease-in, -o-transform .125s cubic-bezier(.6, .04, .98, .335);
  transition: transform .125s cubic-bezier(.6, .04, .98, .335), top .05s linear .125s, right .125s ease-in .175s;
  transition: transform .125s cubic-bezier(.6, .04, .98, .335), top .05s linear .125s, right .125s ease-in .175s, -webkit-transform .125s cubic-bezier(.6, .04, .98, .335), -o-transform .125s cubic-bezier(.6, .04, .98, .335)
}

.hamburger--emphatic-r.is-active .hamburger-inner {
  -webkit-transition-delay: 0s;
  -o-transition-delay: 0s;
  transition-delay: 0s;
  -webkit-transition-timing-function: ease-out;
  -o-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  background-color: transparent !important
}

.hamburger--emphatic-r.is-active .hamburger-inner:before {
  left: -80px;
  top: 80px;
  -webkit-transform: translate3d(80px, -80px, 0) rotate(-45deg);
  transform: translate3d(80px, -80px, 0) rotate(-45deg);
  -webkit-transition: left .125s ease-out, top .05s linear .125s, -webkit-transform .125s cubic-bezier(.075, .82, .165, 1) .175s;
  transition: left .125s ease-out, top .05s linear .125s, -webkit-transform .125s cubic-bezier(.075, .82, .165, 1) .175s;
  -o-transition: left .125s ease-out, top .05s .125s linear, -o-transform .125s .175s cubic-bezier(.075, .82, .165, 1);
  transition: left .125s ease-out, top .05s linear .125s, transform .125s cubic-bezier(.075, .82, .165, 1) .175s;
  transition: left .125s ease-out, top .05s linear .125s, transform .125s cubic-bezier(.075, .82, .165, 1) .175s, -webkit-transform .125s cubic-bezier(.075, .82, .165, 1) .175s, -o-transform .125s cubic-bezier(.075, .82, .165, 1) .175s
}

.hamburger--emphatic-r.is-active .hamburger-inner:after {
  right: -80px;
  top: 80px;
  -webkit-transform: translate3d(-80px, -80px, 0) rotate(45deg);
  transform: translate3d(-80px, -80px, 0) rotate(45deg);
  -webkit-transition: right .125s ease-out, top .05s linear .125s, -webkit-transform .125s cubic-bezier(.075, .82, .165, 1) .175s;
  transition: right .125s ease-out, top .05s linear .125s, -webkit-transform .125s cubic-bezier(.075, .82, .165, 1) .175s;
  -o-transition: right .125s ease-out, top .05s .125s linear, -o-transform .125s .175s cubic-bezier(.075, .82, .165, 1);
  transition: right .125s ease-out, top .05s linear .125s, transform .125s cubic-bezier(.075, .82, .165, 1) .175s;
  transition: right .125s ease-out, top .05s linear .125s, transform .125s cubic-bezier(.075, .82, .165, 1) .175s, -webkit-transform .125s cubic-bezier(.075, .82, .165, 1) .175s, -o-transform .125s cubic-bezier(.075, .82, .165, 1) .175s
}

.hamburger--minus .hamburger-inner:after,
.hamburger--minus .hamburger-inner:before {
  -webkit-transition: bottom .08s ease-out 0s, top .08s ease-out 0s, opacity 0s linear;
  -o-transition: bottom .08s 0s ease-out, top .08s 0s ease-out, opacity 0s linear;
  transition: bottom .08s ease-out 0s, top .08s ease-out 0s, opacity 0s linear
}

.hamburger--minus.is-active .hamburger-inner:after,
.hamburger--minus.is-active .hamburger-inner:before {
  opacity: 0;
  -webkit-transition: bottom .08s ease-out, top .08s ease-out, opacity 0s linear .08s;
  -o-transition: bottom .08s ease-out, top .08s ease-out, opacity 0s .08s linear;
  transition: bottom .08s ease-out, top .08s ease-out, opacity 0s linear .08s
}

.hamburger--minus.is-active .hamburger-inner:before {
  top: 0
}

.hamburger--minus.is-active .hamburger-inner:after {
  bottom: 0
}

.hamburger--slider .hamburger-inner {
  top: 2px
}

.hamburger--slider .hamburger-inner:before {
  top: 10px;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  -o-transition-property: opacity, -o-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform, -o-transform;
  -webkit-transition-timing-function: ease;
  -o-transition-timing-function: ease;
  transition-timing-function: ease;
  -webkit-transition-duration: .15s;
  -o-transition-duration: .15s;
  transition-duration: .15s
}

.hamburger--slider .hamburger-inner:after {
  top: 20px
}

.hamburger--slider.is-active .hamburger-inner {
  -webkit-transform: translate3d(0, 10px, 0) rotate(45deg);
  transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--slider.is-active .hamburger-inner:before {
  -webkit-transform: rotate(-45deg) translate3d(-5.71429px, -6px, 0);
  transform: rotate(-45deg) translate3d(-5.71429px, -6px, 0);
  opacity: 0
}

.hamburger--slider.is-active .hamburger-inner:after {
  -webkit-transform: translate3d(0, -20px, 0) rotate(-90deg);
  transform: translate3d(0, -20px, 0) rotate(-90deg)
}

.hamburger--slider-r .hamburger-inner {
  top: 2px
}

.hamburger--slider-r .hamburger-inner:before {
  top: 5px;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  -o-transition-property: opacity, -o-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform, -o-transform;
  -webkit-transition-timing-function: ease;
  -o-transition-timing-function: ease;
  transition-timing-function: ease;
  -webkit-transition-duration: .15s;
  -o-transition-duration: .15s;
  transition-duration: .15s
}

.hamburger--slider-r .hamburger-inner:after {
  top: 10px
}

.hamburger--slider-r.is-active .hamburger-inner {
  -webkit-transform: translate3d(0, 5px, 0) rotate(-45deg);
  transform: translate3d(0, 5px, 0) rotate(-45deg)
}

.hamburger--slider-r.is-active .hamburger-inner:before {
  -webkit-transform: rotate(45deg) translate3d(2.35px, -3px, 0);
  transform: rotate(45deg) translate3d(2.35px, -3px, 0);
  opacity: 0
}

.hamburger--slider-r.is-active .hamburger-inner:after {
  -webkit-transform: translate3d(0, -10px, 0) rotate(90deg);
  transform: translate3d(0, -10px, 0) rotate(90deg)
}

.hamburger--spin .hamburger-inner {
  -webkit-transition-duration: .22s;
  -o-transition-duration: .22s;
  transition-duration: .22s;
  -webkit-transition-timing-function: cubic-bezier(.55, .055, .675, .19);
  -o-transition-timing-function: cubic-bezier(.55, .055, .675, .19);
  transition-timing-function: cubic-bezier(.55, .055, .675, .19)
}

.hamburger--spin .hamburger-inner:before {
  -webkit-transition: top .1s ease-in .25s, opacity .1s ease-in;
  -o-transition: top .1s .25s ease-in, opacity .1s ease-in;
  transition: top .1s ease-in .25s, opacity .1s ease-in
}

.hamburger--spin .hamburger-inner:after {
  -webkit-transition: bottom .1s ease-in .25s, -webkit-transform .22s cubic-bezier(.55, .055, .675, .19);
  transition: bottom .1s ease-in .25s, -webkit-transform .22s cubic-bezier(.55, .055, .675, .19);
  -o-transition: bottom .1s .25s ease-in, -o-transform .22s cubic-bezier(.55, .055, .675, .19);
  transition: bottom .1s ease-in .25s, transform .22s cubic-bezier(.55, .055, .675, .19);
  transition: bottom .1s ease-in .25s, transform .22s cubic-bezier(.55, .055, .675, .19), -webkit-transform .22s cubic-bezier(.55, .055, .675, .19), -o-transform .22s cubic-bezier(.55, .055, .675, .19)
}

.hamburger--spin.is-active .hamburger-inner {
  -webkit-transform: rotate(225deg);
  -ms-transform: rotate(225deg);
  -o-transform: rotate(225deg);
  transform: rotate(225deg);
  -webkit-transition-delay: .12s;
  -o-transition-delay: .12s;
  transition-delay: .12s;
  -webkit-transition-timing-function: cubic-bezier(.215, .61, .355, 1);
  -o-transition-timing-function: cubic-bezier(.215, .61, .355, 1);
  transition-timing-function: cubic-bezier(.215, .61, .355, 1)
}

.hamburger--spin.is-active .hamburger-inner:before {
  top: 0;
  opacity: 0;
  -webkit-transition: top .1s ease-out, opacity .1s ease-out .12s;
  -o-transition: top .1s ease-out, opacity .1s .12s ease-out;
  transition: top .1s ease-out, opacity .1s ease-out .12s
}

.hamburger--spin.is-active .hamburger-inner:after {
  bottom: 0;
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  -o-transform: rotate(-90deg);
  transform: rotate(-90deg);
  -webkit-transition: bottom .1s ease-out, -webkit-transform .22s cubic-bezier(.215, .61, .355, 1) .12s;
  transition: bottom .1s ease-out, -webkit-transform .22s cubic-bezier(.215, .61, .355, 1) .12s;
  -o-transition: bottom .1s ease-out, -o-transform .22s .12s cubic-bezier(.215, .61, .355, 1);
  transition: bottom .1s ease-out, transform .22s cubic-bezier(.215, .61, .355, 1) .12s;
  transition: bottom .1s ease-out, transform .22s cubic-bezier(.215, .61, .355, 1) .12s, -webkit-transform .22s cubic-bezier(.215, .61, .355, 1) .12s, -o-transform .22s cubic-bezier(.215, .61, .355, 1) .12s
}

.hamburger--spin-r .hamburger-inner {
  -webkit-transition-duration: .22s;
  -o-transition-duration: .22s;
  transition-duration: .22s;
  -webkit-transition-timing-function: cubic-bezier(.55, .055, .675, .19);
  -o-transition-timing-function: cubic-bezier(.55, .055, .675, .19);
  transition-timing-function: cubic-bezier(.55, .055, .675, .19)
}

.hamburger--spin-r .hamburger-inner:before {
  -webkit-transition: top .1s ease-in .25s, opacity .1s ease-in;
  -o-transition: top .1s .25s ease-in, opacity .1s ease-in;
  transition: top .1s ease-in .25s, opacity .1s ease-in
}

.hamburger--spin-r .hamburger-inner:after {
  -webkit-transition: bottom .1s ease-in .25s, -webkit-transform .22s cubic-bezier(.55, .055, .675, .19);
  transition: bottom .1s ease-in .25s, -webkit-transform .22s cubic-bezier(.55, .055, .675, .19);
  -o-transition: bottom .1s .25s ease-in, -o-transform .22s cubic-bezier(.55, .055, .675, .19);
  transition: bottom .1s ease-in .25s, transform .22s cubic-bezier(.55, .055, .675, .19);
  transition: bottom .1s ease-in .25s, transform .22s cubic-bezier(.55, .055, .675, .19), -webkit-transform .22s cubic-bezier(.55, .055, .675, .19), -o-transform .22s cubic-bezier(.55, .055, .675, .19)
}

.hamburger--spin-r.is-active .hamburger-inner {
  -webkit-transform: rotate(-225deg);
  -ms-transform: rotate(-225deg);
  -o-transform: rotate(-225deg);
  transform: rotate(-225deg);
  -webkit-transition-delay: .12s;
  -o-transition-delay: .12s;
  transition-delay: .12s;
  -webkit-transition-timing-function: cubic-bezier(.215, .61, .355, 1);
  -o-transition-timing-function: cubic-bezier(.215, .61, .355, 1);
  transition-timing-function: cubic-bezier(.215, .61, .355, 1)
}

.hamburger--spin-r.is-active .hamburger-inner:before {
  top: 0;
  opacity: 0;
  -webkit-transition: top .1s ease-out, opacity .1s ease-out .12s;
  -o-transition: top .1s ease-out, opacity .1s .12s ease-out;
  transition: top .1s ease-out, opacity .1s ease-out .12s
}

.hamburger--spin-r.is-active .hamburger-inner:after {
  bottom: 0;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transition: bottom .1s ease-out, -webkit-transform .22s cubic-bezier(.215, .61, .355, 1) .12s;
  transition: bottom .1s ease-out, -webkit-transform .22s cubic-bezier(.215, .61, .355, 1) .12s;
  -o-transition: bottom .1s ease-out, -o-transform .22s .12s cubic-bezier(.215, .61, .355, 1);
  transition: bottom .1s ease-out, transform .22s cubic-bezier(.215, .61, .355, 1) .12s;
  transition: bottom .1s ease-out, transform .22s cubic-bezier(.215, .61, .355, 1) .12s, -webkit-transform .22s cubic-bezier(.215, .61, .355, 1) .12s, -o-transform .22s cubic-bezier(.215, .61, .355, 1) .12s
}

.hamburger--spring .hamburger-inner {
  top: 2px;
  -webkit-transition: background-color 0s linear .13s;
  -o-transition: background-color 0s .13s linear;
  transition: background-color 0s linear .13s
}

.hamburger--spring .hamburger-inner:before {
  top: 10px;
  -webkit-transition: top .1s cubic-bezier(.33333, .66667, .66667, 1) .2s, -webkit-transform .13s cubic-bezier(.55, .055, .675, .19);
  transition: top .1s cubic-bezier(.33333, .66667, .66667, 1) .2s, -webkit-transform .13s cubic-bezier(.55, .055, .675, .19);
  -o-transition: top .1s .2s cubic-bezier(.33333, .66667, .66667, 1), -o-transform .13s cubic-bezier(.55, .055, .675, .19);
  transition: top .1s cubic-bezier(.33333, .66667, .66667, 1) .2s, transform .13s cubic-bezier(.55, .055, .675, .19);
  transition: top .1s cubic-bezier(.33333, .66667, .66667, 1) .2s, transform .13s cubic-bezier(.55, .055, .675, .19), -webkit-transform .13s cubic-bezier(.55, .055, .675, .19), -o-transform .13s cubic-bezier(.55, .055, .675, .19)
}

.hamburger--spring .hamburger-inner:after {
  top: 20px;
  -webkit-transition: top .2s cubic-bezier(.33333, .66667, .66667, 1) .2s, -webkit-transform .13s cubic-bezier(.55, .055, .675, .19);
  transition: top .2s cubic-bezier(.33333, .66667, .66667, 1) .2s, -webkit-transform .13s cubic-bezier(.55, .055, .675, .19);
  -o-transition: top .2s .2s cubic-bezier(.33333, .66667, .66667, 1), -o-transform .13s cubic-bezier(.55, .055, .675, .19);
  transition: top .2s cubic-bezier(.33333, .66667, .66667, 1) .2s, transform .13s cubic-bezier(.55, .055, .675, .19);
  transition: top .2s cubic-bezier(.33333, .66667, .66667, 1) .2s, transform .13s cubic-bezier(.55, .055, .675, .19), -webkit-transform .13s cubic-bezier(.55, .055, .675, .19), -o-transform .13s cubic-bezier(.55, .055, .675, .19)
}

.hamburger--spring.is-active .hamburger-inner {
  -webkit-transition-delay: .22s;
  -o-transition-delay: .22s;
  transition-delay: .22s;
  background-color: transparent !important
}

.hamburger--spring.is-active .hamburger-inner:before {
  top: 0;
  -webkit-transition: top .1s cubic-bezier(.33333, 0, .66667, .33333) .15s, -webkit-transform .13s cubic-bezier(.215, .61, .355, 1) .22s;
  transition: top .1s cubic-bezier(.33333, 0, .66667, .33333) .15s, -webkit-transform .13s cubic-bezier(.215, .61, .355, 1) .22s;
  -o-transition: top .1s .15s cubic-bezier(.33333, 0, .66667, .33333), -o-transform .13s .22s cubic-bezier(.215, .61, .355, 1);
  transition: top .1s cubic-bezier(.33333, 0, .66667, .33333) .15s, transform .13s cubic-bezier(.215, .61, .355, 1) .22s;
  transition: top .1s cubic-bezier(.33333, 0, .66667, .33333) .15s, transform .13s cubic-bezier(.215, .61, .355, 1) .22s, -webkit-transform .13s cubic-bezier(.215, .61, .355, 1) .22s, -o-transform .13s cubic-bezier(.215, .61, .355, 1) .22s;
  -webkit-transform: translate3d(0, 10px, 0) rotate(45deg);
  transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--spring.is-active .hamburger-inner:after {
  top: 0;
  -webkit-transition: top .2s cubic-bezier(.33333, 0, .66667, .33333), -webkit-transform .13s cubic-bezier(.215, .61, .355, 1) .22s;
  transition: top .2s cubic-bezier(.33333, 0, .66667, .33333), -webkit-transform .13s cubic-bezier(.215, .61, .355, 1) .22s;
  -o-transition: top .2s cubic-bezier(.33333, 0, .66667, .33333), -o-transform .13s .22s cubic-bezier(.215, .61, .355, 1);
  transition: top .2s cubic-bezier(.33333, 0, .66667, .33333), transform .13s cubic-bezier(.215, .61, .355, 1) .22s;
  transition: top .2s cubic-bezier(.33333, 0, .66667, .33333), transform .13s cubic-bezier(.215, .61, .355, 1) .22s, -webkit-transform .13s cubic-bezier(.215, .61, .355, 1) .22s, -o-transform .13s cubic-bezier(.215, .61, .355, 1) .22s;
  -webkit-transform: translate3d(0, 10px, 0) rotate(-45deg);
  transform: translate3d(0, 10px, 0) rotate(-45deg)
}

.hamburger--spring-r .hamburger-inner {
  top: auto;
  bottom: 0;
  -webkit-transition-duration: .13s;
  -o-transition-duration: .13s;
  transition-duration: .13s;
  -webkit-transition-delay: 0s;
  -o-transition-delay: 0s;
  transition-delay: 0s;
  -webkit-transition-timing-function: cubic-bezier(.55, .055, .675, .19);
  -o-transition-timing-function: cubic-bezier(.55, .055, .675, .19);
  transition-timing-function: cubic-bezier(.55, .055, .675, .19)
}

.hamburger--spring-r .hamburger-inner:after {
  top: -20px;
  -webkit-transition: top .2s cubic-bezier(.33333, .66667, .66667, 1) .2s, opacity 0s linear;
  -o-transition: top .2s .2s cubic-bezier(.33333, .66667, .66667, 1), opacity 0s linear;
  transition: top .2s cubic-bezier(.33333, .66667, .66667, 1) .2s, opacity 0s linear
}

.hamburger--spring-r .hamburger-inner:before {
  -webkit-transition: top .1s cubic-bezier(.33333, .66667, .66667, 1) .2s, -webkit-transform .13s cubic-bezier(.55, .055, .675, .19);
  transition: top .1s cubic-bezier(.33333, .66667, .66667, 1) .2s, -webkit-transform .13s cubic-bezier(.55, .055, .675, .19);
  -o-transition: top .1s .2s cubic-bezier(.33333, .66667, .66667, 1), -o-transform .13s cubic-bezier(.55, .055, .675, .19);
  transition: top .1s cubic-bezier(.33333, .66667, .66667, 1) .2s, transform .13s cubic-bezier(.55, .055, .675, .19);
  transition: top .1s cubic-bezier(.33333, .66667, .66667, 1) .2s, transform .13s cubic-bezier(.55, .055, .675, .19), -webkit-transform .13s cubic-bezier(.55, .055, .675, .19), -o-transform .13s cubic-bezier(.55, .055, .675, .19)
}

.hamburger--spring-r.is-active .hamburger-inner {
  -webkit-transform: translate3d(0, -10px, 0) rotate(-45deg);
  transform: translate3d(0, -10px, 0) rotate(-45deg);
  -webkit-transition-delay: .22s;
  -o-transition-delay: .22s;
  transition-delay: .22s;
  -webkit-transition-timing-function: cubic-bezier(.215, .61, .355, 1);
  -o-transition-timing-function: cubic-bezier(.215, .61, .355, 1);
  transition-timing-function: cubic-bezier(.215, .61, .355, 1)
}

.hamburger--spring-r.is-active .hamburger-inner:after {
  top: 0;
  opacity: 0;
  -webkit-transition: top .2s cubic-bezier(.33333, 0, .66667, .33333), opacity 0s linear .22s;
  -o-transition: top .2s cubic-bezier(.33333, 0, .66667, .33333), opacity 0s .22s linear;
  transition: top .2s cubic-bezier(.33333, 0, .66667, .33333), opacity 0s linear .22s
}

.hamburger--spring-r.is-active .hamburger-inner:before {
  top: 0;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transition: top .1s cubic-bezier(.33333, 0, .66667, .33333) .15s, -webkit-transform .13s cubic-bezier(.215, .61, .355, 1) .22s;
  transition: top .1s cubic-bezier(.33333, 0, .66667, .33333) .15s, -webkit-transform .13s cubic-bezier(.215, .61, .355, 1) .22s;
  -o-transition: top .1s .15s cubic-bezier(.33333, 0, .66667, .33333), -o-transform .13s .22s cubic-bezier(.215, .61, .355, 1);
  transition: top .1s cubic-bezier(.33333, 0, .66667, .33333) .15s, transform .13s cubic-bezier(.215, .61, .355, 1) .22s;
  transition: top .1s cubic-bezier(.33333, 0, .66667, .33333) .15s, transform .13s cubic-bezier(.215, .61, .355, 1) .22s, -webkit-transform .13s cubic-bezier(.215, .61, .355, 1) .22s, -o-transform .13s cubic-bezier(.215, .61, .355, 1) .22s
}

.hamburger--stand .hamburger-inner {
  -webkit-transition: background-color 0s linear 75ms, -webkit-transform 75ms cubic-bezier(.55, .055, .675, .19) .15s;
  transition: background-color 0s linear 75ms, -webkit-transform 75ms cubic-bezier(.55, .055, .675, .19) .15s;
  -o-transition: background-color 0s 75ms linear, -o-transform 75ms .15s cubic-bezier(.55, .055, .675, .19);
  transition: transform 75ms cubic-bezier(.55, .055, .675, .19) .15s, background-color 0s linear 75ms;
  transition: transform 75ms cubic-bezier(.55, .055, .675, .19) .15s, background-color 0s linear 75ms, -webkit-transform 75ms cubic-bezier(.55, .055, .675, .19) .15s, -o-transform 75ms cubic-bezier(.55, .055, .675, .19) .15s
}

.hamburger--stand .hamburger-inner:before {
  -webkit-transition: top 75ms ease-in 75ms, -webkit-transform 75ms cubic-bezier(.55, .055, .675, .19) 0s;
  transition: top 75ms ease-in 75ms, -webkit-transform 75ms cubic-bezier(.55, .055, .675, .19) 0s;
  -o-transition: top 75ms 75ms ease-in, -o-transform 75ms 0s cubic-bezier(.55, .055, .675, .19);
  transition: top 75ms ease-in 75ms, transform 75ms cubic-bezier(.55, .055, .675, .19) 0s;
  transition: top 75ms ease-in 75ms, transform 75ms cubic-bezier(.55, .055, .675, .19) 0s, -webkit-transform 75ms cubic-bezier(.55, .055, .675, .19) 0s, -o-transform 75ms cubic-bezier(.55, .055, .675, .19) 0s
}

.hamburger--stand .hamburger-inner:after {
  -webkit-transition: bottom 75ms ease-in 75ms, -webkit-transform 75ms cubic-bezier(.55, .055, .675, .19) 0s;
  transition: bottom 75ms ease-in 75ms, -webkit-transform 75ms cubic-bezier(.55, .055, .675, .19) 0s;
  -o-transition: bottom 75ms 75ms ease-in, -o-transform 75ms 0s cubic-bezier(.55, .055, .675, .19);
  transition: bottom 75ms ease-in 75ms, transform 75ms cubic-bezier(.55, .055, .675, .19) 0s;
  transition: bottom 75ms ease-in 75ms, transform 75ms cubic-bezier(.55, .055, .675, .19) 0s, -webkit-transform 75ms cubic-bezier(.55, .055, .675, .19) 0s, -o-transform 75ms cubic-bezier(.55, .055, .675, .19) 0s
}

.hamburger--stand.is-active .hamburger-inner {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
  background-color: transparent !important;
  -webkit-transition: background-color 0s linear .15s, -webkit-transform 75ms cubic-bezier(.215, .61, .355, 1) 0s;
  transition: background-color 0s linear .15s, -webkit-transform 75ms cubic-bezier(.215, .61, .355, 1) 0s;
  -o-transition: background-color 0s .15s linear, -o-transform 75ms 0s cubic-bezier(.215, .61, .355, 1);
  transition: transform 75ms cubic-bezier(.215, .61, .355, 1) 0s, background-color 0s linear .15s;
  transition: transform 75ms cubic-bezier(.215, .61, .355, 1) 0s, background-color 0s linear .15s, -webkit-transform 75ms cubic-bezier(.215, .61, .355, 1) 0s, -o-transform 75ms cubic-bezier(.215, .61, .355, 1) 0s
}

.hamburger--stand.is-active .hamburger-inner:before {
  top: 0;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: top 75ms ease-out .1s, -webkit-transform 75ms cubic-bezier(.215, .61, .355, 1) .15s;
  transition: top 75ms ease-out .1s, -webkit-transform 75ms cubic-bezier(.215, .61, .355, 1) .15s;
  -o-transition: top 75ms .1s ease-out, -o-transform 75ms .15s cubic-bezier(.215, .61, .355, 1);
  transition: top 75ms ease-out .1s, transform 75ms cubic-bezier(.215, .61, .355, 1) .15s;
  transition: top 75ms ease-out .1s, transform 75ms cubic-bezier(.215, .61, .355, 1) .15s, -webkit-transform 75ms cubic-bezier(.215, .61, .355, 1) .15s, -o-transform 75ms cubic-bezier(.215, .61, .355, 1) .15s
}

.hamburger--stand.is-active .hamburger-inner:after {
  bottom: 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: bottom 75ms ease-out .1s, -webkit-transform 75ms cubic-bezier(.215, .61, .355, 1) .15s;
  transition: bottom 75ms ease-out .1s, -webkit-transform 75ms cubic-bezier(.215, .61, .355, 1) .15s;
  -o-transition: bottom 75ms .1s ease-out, -o-transform 75ms .15s cubic-bezier(.215, .61, .355, 1);
  transition: bottom 75ms ease-out .1s, transform 75ms cubic-bezier(.215, .61, .355, 1) .15s;
  transition: bottom 75ms ease-out .1s, transform 75ms cubic-bezier(.215, .61, .355, 1) .15s, -webkit-transform 75ms cubic-bezier(.215, .61, .355, 1) .15s, -o-transform 75ms cubic-bezier(.215, .61, .355, 1) .15s
}

.hamburger--stand-r .hamburger-inner {
  -webkit-transition: background-color 0s linear 75ms, -webkit-transform 75ms cubic-bezier(.55, .055, .675, .19) .15s;
  transition: background-color 0s linear 75ms, -webkit-transform 75ms cubic-bezier(.55, .055, .675, .19) .15s;
  -o-transition: background-color 0s 75ms linear, -o-transform 75ms .15s cubic-bezier(.55, .055, .675, .19);
  transition: transform 75ms cubic-bezier(.55, .055, .675, .19) .15s, background-color 0s linear 75ms;
  transition: transform 75ms cubic-bezier(.55, .055, .675, .19) .15s, background-color 0s linear 75ms, -webkit-transform 75ms cubic-bezier(.55, .055, .675, .19) .15s, -o-transform 75ms cubic-bezier(.55, .055, .675, .19) .15s
}

.hamburger--stand-r .hamburger-inner:before {
  -webkit-transition: top 75ms ease-in 75ms, -webkit-transform 75ms cubic-bezier(.55, .055, .675, .19) 0s;
  transition: top 75ms ease-in 75ms, -webkit-transform 75ms cubic-bezier(.55, .055, .675, .19) 0s;
  -o-transition: top 75ms 75ms ease-in, -o-transform 75ms 0s cubic-bezier(.55, .055, .675, .19);
  transition: top 75ms ease-in 75ms, transform 75ms cubic-bezier(.55, .055, .675, .19) 0s;
  transition: top 75ms ease-in 75ms, transform 75ms cubic-bezier(.55, .055, .675, .19) 0s, -webkit-transform 75ms cubic-bezier(.55, .055, .675, .19) 0s, -o-transform 75ms cubic-bezier(.55, .055, .675, .19) 0s
}

.hamburger--stand-r .hamburger-inner:after {
  -webkit-transition: bottom 75ms ease-in 75ms, -webkit-transform 75ms cubic-bezier(.55, .055, .675, .19) 0s;
  transition: bottom 75ms ease-in 75ms, -webkit-transform 75ms cubic-bezier(.55, .055, .675, .19) 0s;
  -o-transition: bottom 75ms 75ms ease-in, -o-transform 75ms 0s cubic-bezier(.55, .055, .675, .19);
  transition: bottom 75ms ease-in 75ms, transform 75ms cubic-bezier(.55, .055, .675, .19) 0s;
  transition: bottom 75ms ease-in 75ms, transform 75ms cubic-bezier(.55, .055, .675, .19) 0s, -webkit-transform 75ms cubic-bezier(.55, .055, .675, .19) 0s, -o-transform 75ms cubic-bezier(.55, .055, .675, .19) 0s
}

.hamburger--stand-r.is-active .hamburger-inner {
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  -o-transform: rotate(-90deg);
  transform: rotate(-90deg);
  background-color: transparent !important;
  -webkit-transition: background-color 0s linear .15s, -webkit-transform 75ms cubic-bezier(.215, .61, .355, 1) 0s;
  transition: background-color 0s linear .15s, -webkit-transform 75ms cubic-bezier(.215, .61, .355, 1) 0s;
  -o-transition: background-color 0s .15s linear, -o-transform 75ms 0s cubic-bezier(.215, .61, .355, 1);
  transition: transform 75ms cubic-bezier(.215, .61, .355, 1) 0s, background-color 0s linear .15s;
  transition: transform 75ms cubic-bezier(.215, .61, .355, 1) 0s, background-color 0s linear .15s, -webkit-transform 75ms cubic-bezier(.215, .61, .355, 1) 0s, -o-transform 75ms cubic-bezier(.215, .61, .355, 1) 0s
}

.hamburger--stand-r.is-active .hamburger-inner:before {
  top: 0;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: top 75ms ease-out .1s, -webkit-transform 75ms cubic-bezier(.215, .61, .355, 1) .15s;
  transition: top 75ms ease-out .1s, -webkit-transform 75ms cubic-bezier(.215, .61, .355, 1) .15s;
  -o-transition: top 75ms .1s ease-out, -o-transform 75ms .15s cubic-bezier(.215, .61, .355, 1);
  transition: top 75ms ease-out .1s, transform 75ms cubic-bezier(.215, .61, .355, 1) .15s;
  transition: top 75ms ease-out .1s, transform 75ms cubic-bezier(.215, .61, .355, 1) .15s, -webkit-transform 75ms cubic-bezier(.215, .61, .355, 1) .15s, -o-transform 75ms cubic-bezier(.215, .61, .355, 1) .15s
}

.hamburger--stand-r.is-active .hamburger-inner:after {
  bottom: 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: bottom 75ms ease-out .1s, -webkit-transform 75ms cubic-bezier(.215, .61, .355, 1) .15s;
  transition: bottom 75ms ease-out .1s, -webkit-transform 75ms cubic-bezier(.215, .61, .355, 1) .15s;
  -o-transition: bottom 75ms .1s ease-out, -o-transform 75ms .15s cubic-bezier(.215, .61, .355, 1);
  transition: bottom 75ms ease-out .1s, transform 75ms cubic-bezier(.215, .61, .355, 1) .15s;
  transition: bottom 75ms ease-out .1s, transform 75ms cubic-bezier(.215, .61, .355, 1) .15s, -webkit-transform 75ms cubic-bezier(.215, .61, .355, 1) .15s, -o-transform 75ms cubic-bezier(.215, .61, .355, 1) .15s
}

.hamburger--squeeze .hamburger-inner {
  -webkit-transition-duration: 75ms;
  -o-transition-duration: 75ms;
  transition-duration: 75ms;
  -webkit-transition-timing-function: cubic-bezier(.55, .055, .675, .19);
  -o-transition-timing-function: cubic-bezier(.55, .055, .675, .19);
  transition-timing-function: cubic-bezier(.55, .055, .675, .19)
}

.hamburger--squeeze .hamburger-inner:before {
  -webkit-transition: top 75ms ease .12s, opacity 75ms ease;
  -o-transition: top 75ms .12s ease, opacity 75ms ease;
  transition: top 75ms ease .12s, opacity 75ms ease
}

.hamburger--squeeze .hamburger-inner:after {
  -webkit-transition: bottom 75ms ease .12s, -webkit-transform 75ms cubic-bezier(.55, .055, .675, .19);
  transition: bottom 75ms ease .12s, -webkit-transform 75ms cubic-bezier(.55, .055, .675, .19);
  -o-transition: bottom 75ms .12s ease, -o-transform 75ms cubic-bezier(.55, .055, .675, .19);
  transition: bottom 75ms ease .12s, transform 75ms cubic-bezier(.55, .055, .675, .19);
  transition: bottom 75ms ease .12s, transform 75ms cubic-bezier(.55, .055, .675, .19), -webkit-transform 75ms cubic-bezier(.55, .055, .675, .19), -o-transform 75ms cubic-bezier(.55, .055, .675, .19)
}

.hamburger--squeeze.is-active .hamburger-inner {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition-delay: .12s;
  -o-transition-delay: .12s;
  transition-delay: .12s;
  -webkit-transition-timing-function: cubic-bezier(.215, .61, .355, 1);
  -o-transition-timing-function: cubic-bezier(.215, .61, .355, 1);
  transition-timing-function: cubic-bezier(.215, .61, .355, 1)
}

.hamburger--squeeze.is-active .hamburger-inner:before {
  top: 0;
  opacity: 0;
  -webkit-transition: top 75ms ease, opacity 75ms ease .12s;
  -o-transition: top 75ms ease, opacity 75ms .12s ease;
  transition: top 75ms ease, opacity 75ms ease .12s
}

.hamburger--squeeze.is-active .hamburger-inner:after {
  bottom: 0;
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  -o-transform: rotate(-90deg);
  transform: rotate(-90deg);
  -webkit-transition: bottom 75ms ease, -webkit-transform 75ms cubic-bezier(.215, .61, .355, 1) .12s;
  transition: bottom 75ms ease, -webkit-transform 75ms cubic-bezier(.215, .61, .355, 1) .12s;
  -o-transition: bottom 75ms ease, -o-transform 75ms .12s cubic-bezier(.215, .61, .355, 1);
  transition: bottom 75ms ease, transform 75ms cubic-bezier(.215, .61, .355, 1) .12s;
  transition: bottom 75ms ease, transform 75ms cubic-bezier(.215, .61, .355, 1) .12s, -webkit-transform 75ms cubic-bezier(.215, .61, .355, 1) .12s, -o-transform 75ms cubic-bezier(.215, .61, .355, 1) .12s
}

.hamburger--vortex .hamburger-inner {
  -webkit-transition-duration: .2s;
  -o-transition-duration: .2s;
  transition-duration: .2s;
  -webkit-transition-timing-function: cubic-bezier(.19, 1, .22, 1);
  -o-transition-timing-function: cubic-bezier(.19, 1, .22, 1);
  transition-timing-function: cubic-bezier(.19, 1, .22, 1)
}

.hamburger--vortex .hamburger-inner:after,
.hamburger--vortex .hamburger-inner:before {
  -webkit-transition-duration: 0s;
  -o-transition-duration: 0s;
  transition-duration: 0s;
  -webkit-transition-delay: .1s;
  -o-transition-delay: .1s;
  transition-delay: .1s;
  -webkit-transition-timing-function: linear;
  -o-transition-timing-function: linear;
  transition-timing-function: linear
}

.hamburger--vortex .hamburger-inner:before {
  -webkit-transition-property: top, opacity;
  -o-transition-property: top, opacity;
  transition-property: top, opacity
}

.hamburger--vortex .hamburger-inner:after {
  -webkit-transition-property: bottom, -webkit-transform;
  transition-property: bottom, -webkit-transform;
  -o-transition-property: bottom, -o-transform;
  transition-property: bottom, transform;
  transition-property: bottom, transform, -webkit-transform, -o-transform
}

.hamburger--vortex.is-active .hamburger-inner {
  -webkit-transform: rotate(765deg);
  -ms-transform: rotate(765deg);
  -o-transform: rotate(765deg);
  transform: rotate(765deg);
  -webkit-transition-timing-function: cubic-bezier(.19, 1, .22, 1);
  -o-transition-timing-function: cubic-bezier(.19, 1, .22, 1);
  transition-timing-function: cubic-bezier(.19, 1, .22, 1)
}

.hamburger--vortex.is-active .hamburger-inner:after,
.hamburger--vortex.is-active .hamburger-inner:before {
  -webkit-transition-delay: 0s;
  -o-transition-delay: 0s;
  transition-delay: 0s
}

.hamburger--vortex.is-active .hamburger-inner:before {
  top: 0;
  opacity: 0
}

.hamburger--vortex.is-active .hamburger-inner:after {
  bottom: 0;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg)
}

.hamburger--vortex-r .hamburger-inner {
  -webkit-transition-duration: .2s;
  -o-transition-duration: .2s;
  transition-duration: .2s;
  -webkit-transition-timing-function: cubic-bezier(.19, 1, .22, 1);
  -o-transition-timing-function: cubic-bezier(.19, 1, .22, 1);
  transition-timing-function: cubic-bezier(.19, 1, .22, 1)
}

.hamburger--vortex-r .hamburger-inner:after,
.hamburger--vortex-r .hamburger-inner:before {
  -webkit-transition-duration: 0s;
  -o-transition-duration: 0s;
  transition-duration: 0s;
  -webkit-transition-delay: .1s;
  -o-transition-delay: .1s;
  transition-delay: .1s;
  -webkit-transition-timing-function: linear;
  -o-transition-timing-function: linear;
  transition-timing-function: linear
}

.hamburger--vortex-r .hamburger-inner:before {
  -webkit-transition-property: top, opacity;
  -o-transition-property: top, opacity;
  transition-property: top, opacity
}

.hamburger--vortex-r .hamburger-inner:after {
  -webkit-transition-property: bottom, -webkit-transform;
  transition-property: bottom, -webkit-transform;
  -o-transition-property: bottom, -o-transform;
  transition-property: bottom, transform;
  transition-property: bottom, transform, -webkit-transform, -o-transform
}

.hamburger--vortex-r.is-active .hamburger-inner {
  -webkit-transform: rotate(-765deg);
  -ms-transform: rotate(-765deg);
  -o-transform: rotate(-765deg);
  transform: rotate(-765deg);
  -webkit-transition-timing-function: cubic-bezier(.19, 1, .22, 1);
  -o-transition-timing-function: cubic-bezier(.19, 1, .22, 1);
  transition-timing-function: cubic-bezier(.19, 1, .22, 1)
}

.hamburger--vortex-r.is-active .hamburger-inner:after,
.hamburger--vortex-r.is-active .hamburger-inner:before {
  -webkit-transition-delay: 0s;
  -o-transition-delay: 0s;
  transition-delay: 0s
}

.hamburger--vortex-r.is-active .hamburger-inner:before {
  top: 0;
  opacity: 0
}

.hamburger--vortex-r.is-active .hamburger-inner:after {
  bottom: 0;
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  -o-transform: rotate(-90deg);
  transform: rotate(-90deg)
}

.pagination {
  margin-top: 84px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -moz-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px
}

@media (max-width:768px) {
  .pagination {
    margin-top: 40px;
    gap: 8px
  }
}

.pagination ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 6px
}

.pagination ul li {
  font-family: Lato, sans-serif;
  color: #20406e
}

@media (max-width:768px) {
  .pagination ul li {
    font-size: 14px
  }
}

.pagination ul li.current {
  pointer-events: none;
  color: #bdbdbd;
  font-weight: 700
}

.pagination ul li a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  -webkit-transition: color .2s;
  -o-transition: color .2s;
  transition: color .2s
}

.pagination ul li a:hover {
  color: #f14e1f
}

.pagination .next-page,
.pagination .prev-page {
  width: 42px;
  height: 42px;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background: #062e67;
  cursor: pointer;
  -webkit-transition: opacity .3s;
  -o-transition: opacity .3s;
  transition: opacity .3s
}

@media (max-width:768px) {

  .pagination .next-page,
  .pagination .prev-page {
    width: 22px;
    height: 22px
  }
}

.pagination .next-page:after,
.pagination .prev-page:after {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  -webkit-transition: opacity .3s, -webkit-transform .3s;
  transition: opacity .3s, -webkit-transform .3s;
  -o-transition: opacity .3s, -o-transform .3s;
  transition: transform .3s, opacity .3s;
  transition: transform .3s, opacity .3s, -webkit-transform .3s, -o-transform .3s
}

@media (max-width:768px) {

  .pagination .next-page:after,
  .pagination .prev-page:after {
    width: 3px;
    height: 3px;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff
  }
}

@media (min-width:769px) {

  .pagination .next-page:hover,
  .pagination .prev-page:hover {
    opacity: .7
  }
}

.pagination .next-page.disabled:after,
.pagination .prev-page.disabled:after {
  opacity: .5
}

.pagination .prev-page:after {
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  -o-transform: rotate(135deg);
  transform: rotate(135deg);
  margin-left: 2px
}

@media (min-width:769px) {
  .pagination .prev-page:hover:after {
    -webkit-transform: translateX(-4px) rotate(135deg);
    -ms-transform: translateX(-4px) rotate(135deg);
    -o-transform: translateX(-4px) rotate(135deg);
    transform: translateX(-4px) rotate(135deg)
  }
}

.pagination .next-page:after {
  margin-right: 2px;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg)
}

@media (min-width:769px) {
  .pagination .next-page:hover:after {
    -webkit-transform: translateX(4px) rotate(-45deg);
    -ms-transform: translateX(4px) rotate(-45deg);
    -o-transform: translateX(4px) rotate(-45deg);
    transform: translateX(4px) rotate(-45deg)
  }
}

body {
  font-family: Lato, sans-serif
}

.txt-para,
body {
  color: #001623;
  letter-spacing: .05em
}

.txt-para {
  line-height: 2
}

.container {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  position: relative
}

@media (max-width:768px) {
  .container {
    padding-right: 20px;
    padding-left: 20px
  }
}

.clearfix:after {
  content: "";
  display: table;
  clear: both
}

@media (min-width:769px) {
  .sp-only {
    display: none !important
  }
}

@media (max-width:768px) {
  .pc-only {
    display: none !important
  }
}

@media (min-width:769px) {
  .tablet-only {
    display: none !important
  }
}

@media (max-width:1150px) {
  .origin-only {
    display: none !important
  }
}

@media (min-width:1151px) {
  .tablet2-only {
    display: none !important
  }
}

.u-upper {
  vertical-align: super;
  font-size: smaller
}

.u-fix-zenkaku {
  margin-left: -.5em
}

@media (min-width:769px) {
  .header-ham {
    position: fixed;
    top: 15px;
    right: 30px;
    background: #0098ce;
    height: 56px;
    width: 56px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    z-index: 3;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    -o-transform: translateX(100%);
    transform: translateX(100%);
    opacity: 0;
    -webkit-transition: opacity .4s, -webkit-transform .4s;
    transition: opacity .4s, -webkit-transform .4s;
    -o-transition: opacity .4s, -o-transform .4s;
    transition: transform .4s, opacity .4s;
    transition: transform .4s, opacity .4s, -webkit-transform .4s, -o-transform .4s;
    will-change: transform, opacity
  }

  .header-ham .hamburger {
    font-size: 0
  }

  .header-ham .hamburger-inner,
  .header-ham .hamburger-inner:after,
  .header-ham .hamburger-inner:before {
    background-color: #fff
  }

  .header-ham.is-hidden,
  body.fp-viewing-0 .header-ham {
    display: none
  }

  body:not(.fp-viewing-0) .header-ham {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
    opacity: 1
  }

  .header {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 2;
    background: #fff;
    -webkit-transform: translateX(20%);
    -ms-transform: translateX(20%);
    -o-transform: translateX(20%);
    transform: translateX(20%);
    opacity: 0;
    -webkit-transition: opacity .4s, -webkit-transform .4s;
    transition: opacity .4s, -webkit-transform .4s;
    -o-transition: opacity .4s, -o-transform .4s;
    transition: transform .4s, opacity .4s;
    transition: transform .4s, opacity .4s, -webkit-transform .4s, -o-transform .4s;
    will-change: transform
  }

  .header__logo {
    padding-left: 50px;
    margin-right: auto
  }
}

@media (min-width:769px) and (min-width:641px) and (max-width:1150px) {
  .header__logo {
    padding-left: 20px;
    padding-right: 15px
  }
}

@media (min-width:769px) {
  .header__logo img {
    width: 300px
  }

  .header__nav {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -moz-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    min-width: 505px;
    margin-right: -1px
  }

  .fp-viewing-0 .header,
  .header.is-active {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
    opacity: 1
  }

  .nav {
    margin-right: 30px
  }
}

@media (min-width:769px) and (min-width:641px) and (max-width:1150px) {
  .nav {
    margin-right: 20px
  }
}

@media (min-width:769px) {
  .nav__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex
  }

  .nav__item:not(:last-child) {
    margin-right: 20px
  }
}

@media (min-width:769px) and (min-width:641px) and (max-width:1150px) {
  .nav__item:not(:last-child) {
    margin-right: 10px
  }
}

@media (min-width:769px) {
  .nav__item:hover .nav__link:after {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform: scaleX(1)
  }

  .nav__item:hover .nav__more {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
    pointer-events: auto;
    opacity: 1
  }

  .nav__link {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 85px;
    color: #21406d;
    letter-spacing: .075em;
    text-align: center;
    padding-right: 10px;
    padding-left: 10px;
    position: relative
  }
}

@media (min-width:769px) and (min-width:641px) and (max-width:1150px) {
  .nav__link {
    padding-right: 5px;
    padding-left: 5px
  }
}

@media (min-width:769px) {
  .nav__link:after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 3px;
    background: #21406d;
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: -webkit-transform .4s;
    transition: -webkit-transform .4s;
    -o-transition: -o-transform .4s;
    transition: transform .4s;
    transition: transform .4s, -webkit-transform .4s, -o-transform .4s
  }

  .nav__link:hover:after {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform: scaleX(1)
  }

  .nav__link-en {
    font-family: Lato, sans-serif;
    font-size: 16px;
    font-weight: 700;
    display: block;
    margin-bottom: .25em
  }
}

@media (min-width:769px) and (min-width:641px) and (max-width:1150px) {
  .nav__link-en {
    font-size: 14px
  }
}

@media (min-width:769px) {
  .nav__link-ja {
    font-size: 12px
  }

  .nav__more {
    width: 100%;
    height: 105px;
    background: #f2f4f6;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    top: 85px;
    left: 0;
    -webkit-transform: translateY(-20%);
    -ms-transform: translateY(-20%);
    -o-transform: translateY(-20%);
    transform: translateY(-20%);
    opacity: 0;
    -webkit-transition: opacity .2s, -webkit-transform .2s;
    transition: opacity .2s, -webkit-transform .2s;
    -o-transition: opacity .2s, -o-transform .2s;
    transition: transform .2s, opacity .2s;
    transition: transform .2s, opacity .2s, -webkit-transform .2s, -o-transform .2s;
    will-change: transform, opacity;
    pointer-events: none;
    z-index: -1
  }
}

@media (min-width:769px) and (min-width:641px) and (max-width:1150px) {
  .nav__more {
    padding-right: 20px;
    padding-left: 20px
  }
}

@media (min-width:769px) {
  .nav__more-inner {
    width: 1030px;
    margin-right: auto;
    margin-left: auto
  }

  .nav__sublist {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }

  .nav__subitem:not(:last-child) {
    margin-right: 45px
  }
}

@media (min-width:769px) and (min-width:641px) and (max-width:1150px) {
  .nav__subitem:not(:last-child) {
    margin-right: 20px
  }
}

@media (min-width:769px) {
  .nav__sublink {
    padding: 15px;
    font-size: 16px;
    color: #21406d;
    -webkit-transition: color .2s;
    -o-transition: color .2s;
    transition: color .2s;
    will-change: color
  }
}

@media (min-width:769px) and (min-width:641px) and (max-width:1150px) {
  .nav__sublink {
    padding-right: 10px;
    padding-left: 10px;
    font-size: 14px
  }
}

@media (min-width:769px) {
  .nav__sublink:hover {
    color: #f14e1f
  }

  .nav-secondary__link,
  .nav-secondary__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex
  }

  .nav-secondary__link {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 85px;
    background: #0098ce;
    color: #fff;
    letter-spacing: .075em;
    text-align: center;
    padding-right: 30px;
    padding-left: 30px;
    -webkit-transition: .2s ease-in-out;
    -o-transition: .2s ease-in-out;
    transition: .2s ease-in-out;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    cursor: pointer
  }

  .nav-secondary__link:hover {
    opacity: .7
  }

  .nav-secondary__link:after,
  .nav-secondary__link:before {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
  }
}

@media (min-width:769px) and (min-width:641px) and (max-width:1150px) {
  .nav-secondary__link {
    padding-right: 10px;
    padding-left: 10px
  }
}

@media (min-width:769px) {
  .nav-secondary__link--black {
    background: #000
  }
}

@media (min-width:769px) and (min-width:641px) and (max-width:1150px) {
  .nav-secondary__link--black {
    padding-right: 20px;
    padding-left: 20px
  }
}

@media (min-width:769px) {
  .nav-secondary__link-en {
    font-family: Lato, sans-serif;
    font-size: 16px;
    font-weight: 700;
    display: block
  }
}

@media (min-width:769px) and (min-width:641px) and (max-width:1150px) {
  .nav-secondary__link-en {
    font-size: 14px
  }
}

@media (min-width:769px) {
  .nav-secondary__link-ja {
    font-size: 12px
  }
}

@media (max-width:768px) {
  .header {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 48px;
    background: #fff;
    position: relative;
    z-index: 3
  }

  .header.is-fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%
  }
}

@media (max-width:768px) and (orientation:landscape) {
  .header.is-fixed {
    position: absolute
  }
}

@media (max-width:768px) {
  .header .hamburger {
    position: relative;
    z-index: 3;
    margin-left: auto
  }

  .header__logo {
    padding-left: 18px
  }

  .header__logo img {
    height: 34px
  }

  .header__nav {
    position: fixed;
    top: 0;
    width: 100%;
    padding-top: 100px;
    padding-bottom: 115px;
    background: hsla(0, 0%, 100%, .95);
    z-index: 2;
    -webkit-transform: translateY(-10%);
    -ms-transform: translateY(-10%);
    -o-transform: translateY(-10%);
    transform: translateY(-10%);
    -webkit-transition: opacity .2s, -webkit-transform .4s;
    transition: opacity .2s, -webkit-transform .4s;
    -o-transition: opacity .2s, -o-transform .4s;
    transition: transform .4s, opacity .2s;
    transition: transform .4s, opacity .2s, -webkit-transform .4s, -o-transform .4s;
    will-change: transform, opacity;
    opacity: 0;
    pointer-events: none
  }

  .header__nav.is-active {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
    pointer-events: auto
  }
}

@media (max-width:768px) and (orientation:landscape) {
  .header__nav {
    position: absolute
  }
}

@media (max-width:768px) {
  .nav {
    padding-right: 22px;
    padding-left: 22px;
    margin-bottom: 45px
  }
}

@media (max-width:768px) and (min-width:641px) {
  .nav {
    padding-right: 40px;
    padding-left: 40px
  }
}

@media (max-width:768px) {
  .nav__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
  }

  .nav__item {
    width: 50%;
    padding-left: 10px
  }

  .nav__item:not(:nth-child(-n+2)) {
    margin-top: 20px
  }
}

@media (max-width:768px) and (min-width:641px) {
  .nav__item:not(:nth-child(-n+2)) {
    margin-top: 40px
  }
}

@media (max-width:768px) {
  .nav__link {
    color: #21406d;
    margin-bottom: 10px
  }
}

@media (max-width:768px) and (min-width:641px) {
  .nav__link {
    margin-bottom: 20px
  }
}

@media (max-width:768px) {
  .nav__link-en {
    line-height: 1;
    font-size: 16px;
    font-weight: 700;
    display: block
  }
}

@media (max-width:768px) and (min-width:641px) {
  .nav__link-en {
    font-size: 26px;
    margin-bottom: 5px
  }
}

@media (max-width:768px) {
  .nav__link-en--splink {
    position: relative
  }

  .nav__link-en--splink:before {
    content: "";
    display: block;
    position: absolute;
    border-left: 4px solid #f14e1f;
    border-top: 3px solid transparent;
    border-bottom: 3px solid transparent;
    top: .3em;
    left: -10px
  }
}

@media (max-width:768px) and (min-width:641px) {
  .nav__link-en--splink:before {
    border-left: 8px solid #f14e1f;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    left: -15px
  }
}

@media (max-width:768px) {
  .nav__link-ja {
    font-size: 9px;
    letter-spacing: .1em
  }
}

@media (max-width:768px) and (min-width:641px) {
  .nav__link-ja {
    font-size: 18px
  }
}

@media (max-width:768px) and (max-width:460px) {
  .nav__subitem {
    height: 30px
  }
}

@media (max-width:768px) {
  .nav__sublink {
    font-size: 10px;
    line-height: 2.4;
    color: #21406d;
    padding-left: 8px;
    position: relative
  }
}

@media (max-width:768px) and (max-width:460px) {
  .nav__sublink {
    line-height: 1.5;
    vertical-align: top
  }
}

@media (max-width:768px) and (min-width:641px) {
  .nav__sublink {
    font-size: 14px;
    padding-left: 16px
  }
}

@media (max-width:768px) {
  .nav__sublink:before {
    content: "";
    display: block;
    position: absolute;
    border-left: 4px solid #f14e1f;
    border-top: 3px solid transparent;
    border-bottom: 3px solid transparent;
    top: .9em;
    left: 0
  }
}

@media (max-width:768px) and (max-width:460px) {
  .nav__sublink:before {
    top: .4em
  }
}

@media (max-width:768px) and (min-width:641px) {
  .nav__sublink:before {
    border-left: 8px solid #f14e1f;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent
  }
}

@media (max-width:768px) {
  .nav-secondary {
    padding-right: 35px;
    padding-left: 35px
  }

  .nav-secondary__item:not(:last-child) {
    margin-bottom: 5px
  }

  .nav-secondary__link {
    padding-top: .75em;
    padding-bottom: .75em;
    color: #fff;
    line-height: 1;
    background: #0098ce;
    display: block;
    text-align: center
  }
}

@media (max-width:768px) and (min-width:641px) {
  .nav-secondary__link {
    padding-top: 1.5em;
    padding-bottom: 1.5em
  }
}

@media (max-width:768px) {
  .nav-secondary__link--black {
    background: #000
  }

  .nav-secondary__link-en {
    font-family: Lato, sans-serif;
    font-size: 15px;
    display: block
  }
}

@media (max-width:768px) and (min-width:641px) {
  .nav-secondary__link-en {
    font-size: 30px
  }
}

@media (max-width:768px) {
  .nav-secondary__link-ja {
    font-size: 8px
  }
}

@media (max-width:768px) and (min-width:641px) {
  .nav-secondary__link-ja {
    font-size: 16px
  }
}

@media (min-width:641px) {
  .footer {
    background-color: #ededec;
    padding: 80px 65px
  }
}

@media (min-width:641px) and (min-width:641px) and (max-width:1150px) {
  .footer {
    padding: 40px
  }
}

@media (min-width:641px) and (min-width:641px) and (max-width:1150px) {
  .footer__menu {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
  }
}

@media (min-width:641px) {
  .footer__wrap {
    max-width: 1450px;
    margin: 0 auto;
    position: relative
  }

  .footer__top:after {
    display: block;
    clear: both;
    content: ""
  }

  .footer__menulist {
    float: left;
    width: 15.5%;
    margin-right: 20px
  }
}

@media (min-width:641px) and (min-width:641px) and (max-width:1150px) {
  .footer__menulist {
    width: 30%
  }
}

@media (min-width:641px) and (min-width:641px) and (max-width:1150px) {
  .footer__menuwrap {
    float: left;
    width: 25%
  }

  .footer__menuwrap .footer__menulist {
    width: 100%
  }

  .footer__menuwrap .footer__menulist:not(:last-child) {
    margin-bottom: 35px
  }
}

@media (min-width:641px) {
  .footer__menuitem {
    color: #21406d;
    font-size: 12px;
    margin-bottom: 10px
  }
}

@media (min-width:641px) and (min-width:641px) and (max-width:1150px) {
  .footer__menuitem {
    font-size: 14px;
    margin-bottom: 1em
  }
}

@media (min-width:641px) {
  .footer__menutitle {
    margin-bottom: 30px
  }

  .footer__menutitle--en {
    font-family: Lato, sans-serif;
    font-size: 20px;
    display: block
  }
}

@media (min-width:641px) and (min-width:641px) and (max-width:1150px) {
  .footer__menutitle--en {
    font-size: 20px;
    margin-bottom: 5px
  }
}

@media (min-width:641px) {
  .footer__menutitle--ja {
    font-size: 12px;
    display: block
  }
}

@media (min-width:641px) and (min-width:641px) and (max-width:1150px) {
  .footer__menutitle--ja {
    font-size: 16px
  }
}

@media (min-width:641px) {
  .footer__menulink a {
    -webkit-transition: color .4s;
    -o-transition: color .4s;
    transition: color .4s;
    will-change: color
  }

  .footer__menulink a:hover {
    color: #f14e1f
  }

  .footer a.footer__menulink {
    -webkit-transition: color .4s;
    -o-transition: color .4s;
    transition: color .4s;
    will-change: color
  }

  .footer a.footer__menulink:hover {
    color: #f14e1f
  }

  .footer__links {
    float: right
  }

  .footer__links a:nth-child(2) img,
  .footer__links a:nth-child(3) img {
    height: 18px
  }
}

@media (min-width:641px) and (min-width:641px) and (max-width:1150px) {
  .footer__links {
    float: none;
    position: absolute;
    bottom: 50px;
    right: 0
  }
}

@media (min-width:641px) {
  .footer__linkimg {
    margin-left: 35px;
    display: inline-block;
    vertical-align: middle
  }

  .footer__bottom {
    margin-top: 60px
  }

  .footer__bottom:after {
    content: "";
    display: table;
    clear: both
  }
}

@media (min-width:641px) and (min-width:641px) and (max-width:1150px) {
  .footer__bottom {
    margin-top: 80px
  }
}

@media (min-width:641px) {
  .footer__pp {
    float: left;
    font-size: 14px;
    color: #21406d;
    -webkit-transition: color .4s;
    -o-transition: color .4s;
    transition: color .4s;
    will-change: color
  }

  .footer__pp:hover {
    color: #f14e1f
  }

  .footer__copyright {
    float: right;
    font-size: 13px;
    color: #21406d
  }
}

@media (max-width:640px) {
  .footer {
    background: #ededec;
    padding: 30px 18px
  }

  .footer__top {
    position: relative
  }

  .footer__menu {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-bottom: 30px;
    margin-right: -2px;
    margin-left: -2px
  }

  .footer__menu>* {
    padding-right: 2px;
    padding-left: 2px
  }

  .footer__menulist {
    margin-right: 10px
  }

  .footer__menuitem {
    color: #21406d;
    padding-bottom: 5px
  }

  .footer__menulink {
    font-size: 8px;
    vertical-align: top
  }

  .footer__menutitle {
    line-height: 1;
    margin-bottom: 10px;
    display: inline-block
  }
}

@media (max-width:640px) and (max-width:374px) {
  .footer__menutitle {
    display: block;
    height: 30px
  }
}

@media (max-width:640px) {
  .footer__menutitle--en {
    font-family: Lato, sans-serif;
    font-size: 12px;
    font-weight: 700;
    display: block;
    line-height: 1
  }

  .footer__menutitle--ja {
    font-size: 7px;
    letter-spacing: .1em
  }

  .footer__menuwrap .footer__menulist:not(:last-child) {
    margin-bottom: 25px
  }

  .footer__links {
    position: absolute;
    bottom: -20px;
    right: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }
}

@media (max-width:640px) and (max-width:768px) {
  .footer__links a {
    margin: 0 5px
  }
}

@media (max-width:640px) {
  .footer__linkimg:first-child {
    height: 8px
  }

  .footer__linkimg:nth-child(2) {
    height: 12px
  }

  .footer__linkimg:nth-child(3) {
    height: 19px
  }

  .footer__linkimg:not(:last-child) {
    margin-right: 15px
  }

  .footer__pp {
    font-size: 9px;
    color: #21406d;
    margin-bottom: 25px;
    display: inline-block
  }

  .footer__copyright {
    font-family: Roboto, sans-serif;
    font-size: 8px;
    color: #21406d;
    display: block
  }
}

.page-ttl {
  width: 100%;
  margin-top: 85px;
  height: 250px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  letter-spacing: .1em;
  padding-top: 85px;
  padding-bottom: 85px
}

@media (max-width:768px) {
  .page-ttl {
    margin-top: 0;
    height: 90px
  }
}

.page-ttl--primary-color {
  background: #0098ce
}

.page-ttl--philospphy {
  background: url(../img/company/philosophy/hero.jpg) 50%/cover no-repeat
}

.page-ttl--message {
  background: url(../img/company/message/hero.jpg) 50%/cover no-repeat
}

.page-ttl--company {
  background: url(../img/company/hero.jpg) 50%/cover no-repeat
}

.page-ttl--organization {
  background: url(../img/company/organization/hero.jpg) 50%/cover no-repeat
}

.page-ttl--news {
  background: url(../img/company/news/hero.jpg) 50%/cover no-repeat
}

.page-ttl--upstream {
  background: url(../img/work/upstream/hero.jpg) 50%/cover no-repeat
}

.page-ttl--downstream {
  background: url(../img/work/downstream/hero.jpg) 50%/cover no-repeat
}

.page-ttl--trading {
  background: url(../img/work/trading/hero.jpg) 50%/cover no-repeat
}

.page-ttl--Ingprocurementsolution {
  background: url(../img/work/Ingprocurementsolution/hero.jpg) 50%/cover no-repeat
}

.page-ttl--contribution {
  background: url(../img/sustainability/contribution/hero.jpg) 50%/cover no-repeat
}

.heading01 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #fff;
  font-size: 40px;
  font-weight: 700;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin: 0 auto;
  letter-spacing: .1em
}

@media (max-width:768px) {
  .heading01 {
    font-size: 16px
  }
}

.heading01__eng {
  font-family: Lato, sans-serif;
  font-size: 20px;
  letter-spacing: .03em;
  padding-bottom: 5px
}

@media (max-width:768px) {
  .heading01__eng {
    font-size: 7px;
    padding-bottom: 8px
  }
}

.heading01__ja {
  font-size: 16px;
  display: inline-block;
  padding-left: 20px
}

@media (max-width:768px) {
  .heading01__ja {
    font-size: 8px;
    padding-left: 10px
  }
}

.heading02 {
  font-size: 32px;
  color: #21406d;
  font-weight: 700;
  padding-bottom: 60px;
  text-align: center;
  letter-spacing: .05em
}

@media (max-width:768px) {
  .heading02 {
    font-size: 16px;
    padding-bottom: 30px
  }
}

.heading02--pdbsmall {
  padding-bottom: 35px
}

@media (max-width:768px) {
  .heading02--pdbsmall {
    padding-bottom: 20px
  }
}

.heading03 {
  font-size: 16px
}

@media (max-width:768px) {
  .heading03 {
    padding-top: 5px;
    font-size: 7px
  }
}

.breadcrumb {
  background: #eee
}

.breadcrumb--white {
  margin-bottom: 0;
  background: #fff
}

@media (max-width:768px) {
  .breadcrumb {
    margin-bottom: 0
  }
}

.breadcrumb-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  padding: 20px 30px
}

@media (max-width:768px) {
  .breadcrumb-list {
    padding: 10px 15px;
    display: block
  }
}

@media (max-width:768px) {
  .breadcrumb-item {
    display: inline
  }
}

.breadcrumb-item:not(:last-of-type) {
  position: relative;
  margin-right: 47px
}

.breadcrumb-item:not(:last-of-type):after {
  content: ">";
  display: block;
  position: absolute;
  color: #001623;
  font-size: 15px;
  top: 2px;
  right: -28px
}

@media (max-width:768px) {
  .breadcrumb-item:not(:last-of-type):not(:last-of-type) {
    margin-right: 36px;
    position: relative
  }

  .breadcrumb-item:not(:last-of-type):not(:last-of-type):after {
    content: ">";
    display: block;
    position: absolute;
    color: #001623;
    font-size: 12px;
    top: 5px;
    right: -21px
  }

  .breadcrumb-item:not(:last-of-type):nth-child(2) {
    min-width: 50.5px
  }
}

.breadcrumb-item:last-of-type {
  font-weight: 700
}

.breadcrumb-link {
  color: #001623;
  font-size: 15px;
  letter-spacing: .05em
}

@media (max-width:768px) {
  .breadcrumb-link {
    font-size: 12px;
    display: inline
  }
}

.hero-wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 100%
}

.hero {
  position: relative;
  padding-top: 85px;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -moz-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1
}

@media (max-width:768px) {
  .hero {
    padding-top: 0
  }
}

.hero .swiper-container {
  height: 100%
}

.hero .swiper-slide {
  overflow: hidden;
  width: 100vw !important
}

.hero .swiper-slide.swiper-slide-active .hero__img,
.hero .swiper-slide.swiper-slide-prev .hero__img {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1)
}

.hero__img {
  height: 100%;
  -webkit-background-size: cover;
  background-size: cover;
  background-position: 50%;
  background-repeat: no-repeat;
  -webkit-transform: scale(1.4);
  -ms-transform: scale(1.4);
  -o-transform: scale(1.4);
  transform: scale(1.4);
  -webkit-transition: -webkit-transform 12s linear;
  transition: -webkit-transform 12s linear;
  -o-transition: -o-transform 12s linear;
  transition: transform 12s linear;
  transition: transform 12s linear, -webkit-transform 12s linear, -o-transform 12s linear;
  will-change: transform
}

@media (max-width:768px) {
  .hero__img {
    height: 330px
  }
}

.hero__copy {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  white-space: nowrap;
  z-index: 2;
  color: #fff;
  font-weight: 700;
  text-align: center;
  text-shadow: 0 0 10px rgba(0, 0, 0, .4), 0 0 10px rgba(0, 0, 0, .4)
}

.hero__copy--en {
  font-size: 90px;
  font-family: Lato, sans-serif;
  display: block
}

@media (max-width:768px) {
  .hero__copy--en {
    font-family: Roboto, sans-serif;
    font-size: 33px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .hero__copy--en {
    font-size: 66px
  }
}

.hero__copy--ja {
  font-size: 40px;
  letter-spacing: .025em;
  display: inline-block
}

@media (max-width:768px) {
  .hero__copy--ja {
    font-size: 18px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .hero__copy--ja {
    font-size: 36px
  }
}

.hero__copy-sep {
  margin-right: .5em;
  margin-left: .5em
}

@media (max-width:768px) {
  .hero__copy-sep {
    margin-right: 0;
    margin-left: 0;
    display: block
  }
}

.animate-en .letter,
.animate-ja .letter {
  display: inline-block
}

.news {
  background-color: #0098ce;
  color: #fff;
  font-weight: 700
}

.news__wrap {
  max-width: 1200px;
  margin: 0 auto;
  padding: 15px 26px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

@media (max-width:768px) {
  .news__wrap {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    height: auto;
    padding: 8px 20px 18px
  }
}

.news__ttl {
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-size: 20px;
  padding-right: 48px;
  font-weight: 700
}

@media (max-width:768px) {
  .news__ttl {
    -webkit-align-self: flex-start;
    -ms-flex-item-align: start;
    align-self: flex-start;
    padding-top: 6px;
    width: 48px;
    font-size: 10px;
    padding-right: 20px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .news__ttl {
    font-size: 16px;
    padding-top: 10px;
    padding-right: 20px;
    width: 68px
  }
}

.news__list {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -moz-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  font-weight: 700;
  padding-right: 32px
}

@media (max-width:768px) {
  .news__list {
    padding-right: 20px;
    width: -webkit-calc(100% - 88px);
    width: calc(100% - 88px)
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .news__list {
    width: -webkit-calc(100% - 108px);
    width: calc(100% - 108px)
  }
}

.news__list .swiper-container {
  height: 144px
}

@media (max-width:768px) {
  .news__list .swiper-container {
    height: 96px
  }
}

.news__list .swiper-slide {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}

.news__item,
.news__list .swiper-slide {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex
}

.news__item {
  padding: 4px 0;
  font-size: 14px
}

@media (max-width:768px) {
  .news__item {
    font-size: 8px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .news__item {
    font-size: 10px
  }
}

.news__date {
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  padding-right: 40px;
  letter-spacing: .1em
}

@media (max-width:768px) {
  .news__date {
    padding-right: 20px
  }
}

.news__txt,
.news__txt a {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden
}

.news__actions {
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 8px;
  margin-left: auto
}

@media (max-width:768px) {
  .news__actions {
    width: 40px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -moz-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -moz-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    gap: 4px
  }
}

.news__nav {
  width: 42px;
  height: 42px;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background: #00729b;
  cursor: pointer;
  -webkit-transition: opacity .3s;
  -o-transition: opacity .3s;
  transition: opacity .3s
}

@media (max-width:768px) {
  .news__nav {
    width: 22px;
    height: 22px
  }
}

.news__nav:after {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  -webkit-transition: opacity .3s, -webkit-transform .3s;
  transition: opacity .3s, -webkit-transform .3s;
  -o-transition: opacity .3s, -o-transform .3s;
  transition: transform .3s, opacity .3s;
  transition: transform .3s, opacity .3s, -webkit-transform .3s, -o-transform .3s
}

@media (max-width:768px) {
  .news__nav:after {
    width: 3px;
    height: 3px;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff
  }
}

@media (min-width:769px) {
  .news__nav:hover {
    opacity: .7
  }
}

.news__nav.swiper-button-disabled:after {
  opacity: .5
}

.news__nav--prev:after {
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  -o-transform: rotate(135deg);
  transform: rotate(135deg);
  margin-left: 2px
}

@media (max-width:768px) {
  .news__nav--prev:after {
    margin: 0;
    -webkit-transform: rotate(-135deg);
    -ms-transform: rotate(-135deg);
    -o-transform: rotate(-135deg);
    transform: rotate(-135deg)
  }
}

@media (min-width:769px) {
  .news__nav--prev:hover:after {
    -webkit-transform: translateX(-4px) rotate(135deg);
    -ms-transform: translateX(-4px) rotate(135deg);
    -o-transform: translateX(-4px) rotate(135deg);
    transform: translateX(-4px) rotate(135deg)
  }
}

.news__nav--next:after {
  margin-right: 2px;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg)
}

@media (max-width:768px) {
  .news__nav--next:after {
    margin: 0 0 2px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg)
  }
}

@media (min-width:769px) {
  .news__nav--next:hover:after {
    -webkit-transform: translateX(4px) rotate(-45deg);
    -ms-transform: translateX(4px) rotate(-45deg);
    -o-transform: translateX(4px) rotate(-45deg);
    transform: translateX(4px) rotate(-45deg)
  }
}

.news__all {
  margin-left: 22px;
  padding-right: 16px
}

@media (max-width:768px) {
  .news__all {
    margin-left: auto;
    padding-right: 0
  }
}

.news__btn {
  width: 248px;
  height: 42px;
  background: #00729b;
  font-size: 14px;
  font-weight: 700;
  color: #fff;
  -webkit-border-radius: 24px;
  border-radius: 24px;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding-right: 20px;
  padding-bottom: 2px;
  -webkit-transition: opacity .3s;
  -o-transition: opacity .3s;
  transition: opacity .3s
}

@media (max-width:768px) {
  .news__btn {
    font-size: 10px;
    width: 180px;
    height: 30px;
    padding-right: 16px
  }
}

.news__btn:before {
  content: "";
  display: block;
  position: absolute;
  top: 21px;
  right: 24px;
  width: 10px;
  height: 2px;
  background: #fff;
  -webkit-transform-origin: 0 50%;
  -ms-transform-origin: 0 50%;
  -o-transform-origin: 0 50%;
  transform-origin: 0 50%;
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  -o-transition: -o-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s, -o-transform .3s
}

@media (max-width:768px) {
  .news__btn:before {
    top: 14px;
    right: 16px;
    width: 6px;
    height: 1px
  }
}

.news__btn:after {
  content: "";
  display: block;
  position: absolute;
  top: 18px;
  right: 24px;
  width: 6px;
  height: 6px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  -o-transition: -o-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s, -o-transform .3s
}

@media (max-width:768px) {
  .news__btn:after {
    top: 12px;
    right: 16px;
    width: 4px;
    height: 4px;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff
  }
}

@media (min-width:769px) {
  .news__btn:hover {
    opacity: .7
  }

  .news__btn:hover:before {
    -webkit-transform: scaleX(1.2);
    -ms-transform: scaleX(1.2);
    -o-transform: scaleX(1.2);
    transform: scaleX(1.2)
  }

  .news__btn:hover:after {
    -webkit-transform: translateX(4px) rotate(-45deg);
    -ms-transform: translateX(4px) rotate(-45deg);
    -o-transform: translateX(4px) rotate(-45deg);
    transform: translateX(4px) rotate(-45deg)
  }
}

.page-nav__container {
  max-width: 1450px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  height: 100vh;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -moz-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -moz-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}

.page-nav__container.coming:after {
  content: "";
  display: block;
  position: absolute;
  top: 44%;
  left: 15%;
  color: #fff;
  font-size: 40px
}

@media (max-width:768px) {
  .page-nav__container.coming:after {
    content: ""
  }
}

@media (max-width:768px) {
  .page-nav__container {
    height: auto
  }
}

@media (min-width:769px) and (max-height:600px) {
  .page-nav__container {
    height: auto
  }
}

.page-nav__main {
  width: 50%;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  align-self: center;
  padding-right: 65px;
  padding-left: 65px
}

@media (max-width:768px) {
  .page-nav__main {
    -webkit-flex-shrink: 1;
    -ms-flex-negative: 1;
    flex-shrink: 1;
    width: auto;
    padding-top: 20px;
    padding-right: 20px;
    padding-left: 20px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .page-nav__main {
    padding-top: 20px;
    padding-right: 30px;
    padding-left: 30px
  }
}

@media (min-width:769px) and (max-height:600px) {
  .page-nav__main {
    padding-top: 65px;
    padding-bottom: 65px
  }
}

.page-nav__ttl {
  color: #21406d;
  margin-bottom: 40px
}

@media (max-width:768px) {
  .page-nav__ttl {
    margin-bottom: 10px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .page-nav__ttl {
    margin-bottom: 10px
  }
}

.page-nav__ttl-en {
  font-family: Lato, sans-serif;
  font-size: 56px;
  display: block
}

@media (max-width:768px) {
  .page-nav__ttl-en {
    font-size: 24px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .page-nav__ttl-en {
    font-size: 40px
  }
}

.page-nav__ttl-ja {
  font-size: 18px;
  display: block
}

@media (max-width:768px) {
  .page-nav__ttl-ja {
    font-size: 14px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .page-nav__ttl-ja {
    font-size: 16px
  }
}

.page-nav__desc {
  font-size: 15px;
  line-height: 2
}

@media (max-width:768px) {
  .page-nav__desc {
    font-size: 12px;
    line-height: 1.5;
    margin-bottom: 20px
  }
}

.page-nav__list {
  margin: 90px 0 0 105px
}

@media (min-width:641px) and (max-width:1150px) {
  .page-nav__list {
    margin: 40px -10px 0 40px
  }
}

@media (min-width:641px) and (max-width:1150px) and (orientation:landscape) {
  .page-nav__list {
    margin: 60px 0 0 90px
  }
}

@media (max-width:768px) {
  .page-nav__list {
    margin: 0 -20px
  }
}

.page-nav__item:not(:last-child) {
  margin-bottom: 1px
}

@media (min-width:769px) {
  .page-nav__link {
    font-size: 20px;
    color: #21406d;
    margin-bottom: 25px
  }

  .page-nav__link:before {
    content: "▶︎";
    display: inline-block;
    position: relative;
    font-size: 20px;
    margin-left: -1em;
    left: -15px;
    color: transparent;
    -webkit-transition: color .2s;
    -o-transition: color .2s;
    transition: color .2s;
    will-change: color
  }

  .page-nav__link.is-active:before,
  .page-nav__link:hover {
    color: #f14e1f
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .page-nav__link {
    margin-bottom: 10px
  }
}

@media (max-width:768px) {
  .page-nav__link {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    height: 25vw;
    font-size: 12px;
    font-weight: 700;
    color: #fff;
    text-align: center;
    background-position: 50% 0;
    -webkit-background-size: cover;
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
    margin-bottom: 0
  }
}

@media (max-width:768px) and (min-width:641px) and (max-width:1150px) {
  .page-nav__link {
    font-size: 24px
  }
}

@media (max-width:768px) {
  .page-nav__link:before {
    content: "";
    position: absolute;
    display: block;
    background: rgba(0, 0, 0, .3);
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
  }

  .page-nav__link:after {
    display: block;
    border-left: 6px solid #f14e1f;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    margin-top: 5px;
    position: relative;
    z-index: 0
  }
}

@media (max-width:768px) and (min-width:641px) and (max-width:1150px) {
  .page-nav__link:after {
    border-left: 12px solid #f14e1f;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    margin-top: 20px
  }
}

@media (max-width:768px) {
  .page-nav__link span {
    position: relative;
    z-index: 0
  }

  .page-nav__link--conduct {
    background-image: url(../img/top/nav_conduct_sp.jpg)
  }

  .page-nav__link--greeting {
    background-image: url(../img/top/nav_greeting_sp.jpg)
  }
  .page-nav__link--greeting_02 {
    background-image: url(../img/top/nav_greeting_sp_02.jpg)
  }

  .page-nav__link--history {
    background-image: url(../img/top/nav_history_sp.jpg)
  }

  .page-nav__link--org {
    background-image: url(../img/top/nav_org_sp.jpg)
  }

  .page-nav__link--news {
    background-image: url(../img/top/nav_news_sp.jpg)
  }

  .page-nav__link--upstream {
    background-image: url(../img/top/nav_upstream_sp.jpg)
  }

  .page-nav__link--downstream {
    background-image: url(../img/top/nav_downstream_sp.jpg)
  }

  .page-nav__link--trading {
    background-image: url(../img/top/nav_trading_sp.jpg)
  }

  .page-nav__link--solution {
    background-image: url(../img/top/nav_solution_sp.jpg)
  }

  .page-nav__link.is-offline span {
    color: #fff
  }
}

.page-nav--reverse .nav-desc {
  -webkit-box-ordinal-group: 0;
  -webkit-order: -1;
  -moz-box-ordinal-group: 0;
  -ms-flex-order: -1;
  order: -1
}

@media (min-width:1450px) {
  .page-nav--reverse .nav-desc__link {
    padding-left: 65px;
    margin-right: 0;
    padding-right: 65px;
    padding-top: calc(50vh + 50px);
    margin-left: calc(-50vw + 725px)
  }
}

.nav-desc {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  width: 50%;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  position: relative
}

@media (max-width:768px) {
  .nav-desc {
    display: none
  }
}

.nav-desc__link {
  position: absolute;
  opacity: 0;
  display: block;
  height: 100%;
  background-position: 50%;
  -webkit-background-size: cover;
  background-size: cover;
  background-repeat: no-repeat;
  padding-top: calc(50vh + 50px);
  padding-right: 65px;
  padding-left: 65px;
  -webkit-transition: background-image .4s, opacity .4s;
  -o-transition: background-image .4s, opacity .4s;
  transition: background-image .4s, opacity .4s;
  will-change: background-image;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0
}

@media (min-width:1450px) {
  .nav-desc__link {
    padding-top: calc(50vh + 50px);
    padding-left: 65px;
    padding-right: 65px;
    margin-right: calc(-50vw + 725px)
  }
}

.nav-desc__link:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(80%, rgba(0, 0, 0, .6)), to(rgba(0, 0, 0, .6)));
  background: -webkit-linear-gradient(top, transparent, rgba(0, 0, 0, .6) 80%, rgba(0, 0, 0, .6));
  background: -o-linear-gradient(top, transparent 0, rgba(0, 0, 0, .6) 80%, rgba(0, 0, 0, .6) 100%);
  background: linear-gradient(180deg, transparent 0, rgba(0, 0, 0, .6) 80%, rgba(0, 0, 0, .6))
}

.nav-desc__link.is-default {
  opacity: 1
}

.nav-desc__link.is-active {
  opacity: 1;
  z-index: 1
}

.nav-desc__link.is-active .nav-desc__ttl,
.nav-desc__link.is-active .nav-desc__txt {
  opacity: 1
}

.nav-desc__link.is-active:hover {
  opacity: .7 !important
}

.nav-desc__link--conduct {
  background-image: url(../img/top/nav_conduct_off.jpg)
}

.nav-desc__link--conduct.is-active {
  background-image: url(../img/top/nav_conduct_on.jpg)
}

.nav-desc__link--greeting,
.nav-desc__link--greeting.is-active {
  background-image: url(../img/top/nav_greeting_on.jpg)
}
.nav-desc__link--greeting_02,
.nav-desc__link--greeting_02.is-active {
  background-image: url(../img/top/nav_greeting_on_02.jpg)
}

.nav-desc__link--history,
.nav-desc__link--history.is-active {
  background-image: url(../img/top/nav_history_on.jpg)
}

.nav-desc__link--org,
.nav-desc__link--org.is-active {
  background-image: url(../img/top/nav_org_on.jpg)
}

.nav-desc__link--news,
.nav-desc__link--news.is-active {
  background-image: url(../img/top/nav_news_on.jpg)
}

.nav-desc__link--upstream {
  background-image: url(../img/top/nav_upstream_off.jpg)
}

.nav-desc__link--upstream.is-active {
  background-image: url(../img/top/nav_upstream_on.jpg)
}

.nav-desc__link--downstream,
.nav-desc__link--downstream.is-active {
  background-image: url(../img/top/nav_downstream_on.jpg)
}

.nav-desc__link--trading,
.nav-desc__link--trading.is-active {
  background-image: url(../img/top/nav_trading_on.jpg)
}

.nav-desc__link--solution,
.nav-desc__link--solution.is-active {
  background-image: url(../img/top/nav_solution_on.jpg)
}

.nav-desc__ttl {
  opacity: 0;
  font-size: 30px;
  font-weight: 700;
  text-align: center;
  color: #fff;
  position: relative;
  margin-bottom: 70px;
  -webkit-transition: opacity .4s;
  -o-transition: opacity .4s;
  transition: opacity .4s;
  will-change: opacity
}

.nav-desc__ttl:after {
  content: "";
  display: block;
  position: absolute;
  height: 2px;
  width: 100px;
  background: #f14e1f;
  left: 50%;
  bottom: -10px;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%)
}

.nav-desc__txt {
  opacity: 0;
  font-size: 15px;
  line-height: 2;
  text-align: center;
  color: #fff;
  letter-spacing: .05em;
  -webkit-transition: opacity .4s;
  -o-transition: opacity .4s;
  transition: opacity .4s;
  will-change: opacity;
  position: relative;
  z-index: 1
}

.top-sustain {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  height: 100vh;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -moz-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  background: url(../img/top/sustainability_bg.jpg) 50%/cover no-repeat
}

@media (min-width:769px) {
  .top-sustain {
    background-attachment: fixed
  }
}

@media (max-width:768px) {
  .top-sustain {
    height: auto;
    padding-top: 150px;
    background-image: url(../img/top/sustainability_bg_sp.jpg)
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .top-sustain {
    padding-top: 300px
  }
}

.top-sustain__cont {
  width: 100%;
  margin-top: auto;
  background-color: hsla(0, 0%, 40.4%, .93);
  padding: 65px
}

@media (max-width:768px) {
  .top-sustain__cont {
    padding: 25px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .top-sustain__cont {
    padding: 40px
  }
}

@media (min-width:769px) {
  .top-sustain__wrap {
    max-width: 1450px;
    margin-right: auto;
    margin-left: auto
  }

  .top-sustain__wrap:after {
    content: "";
    display: table;
    clear: both
  }
}

@media (min-width:769px) {
  .top-sustain__text {
    color: #fff;
    float: left;
    width: 50%;
    padding-right: 40px
  }
}

@media (max-width:768px) {
  .top-sustain__text {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #fff;
    margin-bottom: 20px;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
  }
}

@media (max-width:768px) {
  .top-sustain__ttl {
    margin: 0 auto;
    line-height: 1
  }
}

.top-sustain__ttl-en {
  font-family: Lato, sans-serif;
  font-size: 56px;
  display: block
}

@media (max-width:768px) {
  .top-sustain__ttl-en {
    font-size: 24px;
    margin-bottom: .1em
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .top-sustain__ttl-en {
    font-size: 40px
  }
}

.top-sustain__ttl-ja {
  font-size: 18px
}

@media (max-width:768px) {
  .top-sustain__ttl-ja {
    font-size: 14px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .top-sustain__ttl-ja {
    font-size: 16px
  }
}

.top-sustain__desc {
  font-size: 15px;
  line-height: 2;
  margin-top: 60px
}

@media (max-width:768px) {
  .top-sustain__desc {
    font-size: 12px;
    line-height: 1.875;
    margin-top: 1em
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .top-sustain__desc {
    font-size: 16px;
    margin-top: 40px
  }
}

.top-sustain__img {
  display: block
}

@media (min-width:769px) {
  .top-sustain__img {
    width: 50%;
    float: right
  }
}

.top-sustain__img img {
  width: 100%;
  margin-bottom: 25px
}

@media (min-width:769px) {
  .top-sustain__img img {
    -webkit-transition: .2s ease-in-out;
    -o-transition: .2s ease-in-out;
    transition: .2s ease-in-out;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    cursor: pointer
  }

  .top-sustain__img img:hover {
    opacity: .7
  }

  .top-sustain__img img:after,
  .top-sustain__img img:before {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
  }
}

@media (max-width:768px) {
  .top-sustain__img img {
    margin-bottom: 5px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .top-sustain__img img {
    margin-bottom: 15px
  }
}

.top-sustain__img-link {
  color: #fff;
  font-size: 20px;
  -webkit-transition: color .2s;
  -o-transition: color .2s;
  transition: color .2s;
  will-change: color
}

@media (min-width:769px) {
  .top-sustain__img-link:hover {
    color: #f93b05
  }
}

@media (max-width:768px) {
  .top-sustain__img-link {
    font-size: 12px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .top-sustain__img-link {
    font-size: 18px
  }
}

.top-sustain__img-link:before {
  content: "▶︎";
  color: #f93b05;
  font-size: 20px;
  margin-right: 15px
}

@media (max-width:768px) {
  .top-sustain__img-link:before {
    font-size: 12px;
    margin-right: .5em
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .top-sustain__img-link:before {
    font-size: 16px
  }
}

.privacypolicy-content {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  padding-bottom: 140px
}

@media (max-width:768px) {
  .privacypolicy-content {
    padding-right: 20px;
    padding-left: 20px;
    padding: 35px 20px 40px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .privacypolicy-content {
    padding-top: 35px;
    padding-bottom: 20px;
    padding-left: 60px
  }
}

@media (min-width:641px) {
  .privacypolicy-content {
    padding-top: 90px;
    padding-bottom: 20px
  }
}

.privacypolicy-content__about {
  padding-bottom: 80px
}

@media (max-width:768px) {
  .privacypolicy-content__about {
    padding-bottom: 40px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .privacypolicy-content__about {
    padding-bottom: 60px
  }
}

.privacypolicy-content__ttl {
  padding-bottom: 60px;
  text-align: center
}

.privacypolicy-content__txt {
  font-size: 15px
}

.privacypolicy-content__txt:not(:last-of-type) {
  padding-bottom: 60px;
  letter-spacing: .05em
}

@media (max-width:768px) {
  .privacypolicy-content__txt {
    font-size: 12px;
    line-height: 1.9
  }
}

.privacypolicy-content__subttl {
  font-size: 20px;
  color: #21406d;
  padding-bottom: 20px
}

@media (max-width:768px) {
  .privacypolicy-content__subttl {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .05em;
    padding-bottom: 10px
  }
}

.privacypolicy-content__wrap {
  padding-bottom: 50px
}

@media (max-width:768px) {
  .privacypolicy-content__wrap {
    padding-bottom: 0
  }

  .privacypolicy-content__wrap:not(:last-of-type) {
    padding-bottom: 40px
  }
}

.privacypolicy-content__li {
  font-size: 12px;
  letter-spacing: .05em;
  list-style-type: none;
  list-style-position: inside;
  counter-increment: cnt;
  line-height: 1.9
}

.privacypolicy-content__li:before {
  display: marker;
  content: counter(cnt, lower-roman) " ) "
}

.philosophy-content {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  padding-bottom: 140px;
  padding-top: 90px
}

@media (max-width:768px) {
  .philosophy-content {
    padding-right: 20px;
    padding-left: 20px;
    padding: 30px 20px 40px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .philosophy-content {
    padding-right: 20px;
    padding-left: 20px
  }
}

@media (min-width:641px) {
  .philosophy-content {
    padding-right: 20px;
    padding-left: 20px
  }
}

.philosophy-content__li-around {
  font-size: 15px;
  padding-bottom: 10px;
  line-height: 2
}

.philosophy-content__li-around:nth-of-type(3) {
  padding-bottom: 0
}

@media (max-width:768px) {
  .philosophy-content__li-around {
    font-size: 12px;
    padding-bottom: 5px
  }
}

.philosophy-content__ol {
  padding-bottom: 10px
}

.philosophy-content__li {
  font-size: 15px;
  list-style-type: none;
  list-style-position: inside;
  counter-increment: cnt;
  line-height: 2.1;
  letter-spacing: .05em
}

@media (max-width:768px) {
  .philosophy-content__li {
    line-height: 1.9;
    font-size: 12px
  }
}

.philosophy-content__li:before {
  display: marker;
  content: "" counter(cnt) ". "
}

.philosophy-flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -moz-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 90px
}

@media (max-width:768px) {
  .philosophy-flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-bottom: 40px
  }
}

.philosophy-flex__ttl {
  font-size: 32px;
  font-weight: 700;
  line-height: 1.8;
  color: #21406d;
  padding-bottom: 40px;
  letter-spacing: .05em
}

@media (min-width:641px) and (max-width:1150px) {
  .philosophy-flex__ttl {
    padding-bottom: 0;
    font-size: 20px
  }
}

@media (max-width:768px) {
  .philosophy-flex__ttl {
    padding-bottom: 0;
    font-size: 14px;
    line-height: 1.5;
    text-align: center
  }
}

.philosophy-flex__inner01 {
  width: 55%
}

.philosophy-flex__inner01--ttl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding-bottom: 20px
}

@media (max-width:768px) {
  .philosophy-flex__inner01 img {
    width: 23%
  }
}

@media (max-width:374px) {
  .philosophy-flex__inner01 img {
    width: 20%
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .philosophy-flex__inner01 {
    width: 50%
  }
}

@media (max-width:768px) {
  .philosophy-flex__inner01 {
    width: 100%;
    padding-bottom: 20px
  }
}

.philosophy-flex__inner02 {
  width: 39%
}

.philosophy-flex__inner02 img {
  width: 100%
}

@media (min-width:641px) and (max-width:1150px) {
  .philosophy-flex__inner02 {
    width: 45%;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center
  }
}

@media (max-width:640px) {
  .philosophy-flex__inner02 {
    width: 60%;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center
  }
}

.message-wrap__bg {
  background: url(../img/company/message/bg01.jpg) 50% 100%/auto no-repeat
}

@media (max-width:768px) {
  .message-wrap__bg {
    background: none
  }
}

@media (max-width:768px) {
  .message-wrap__bg--sp {
    content: "";
    width: 100%;
    background: url(../img/company/message/bg01_sp.png) 50%/cover no-repeat;
    -webkit-background-size: 90vw auto;
    background-size: 90vw auto;
    background-position: top;
    padding-top: 50vw
  }
}

.message-wrap__bg_02 {
  background: url(../img/company/message/bg02.jpg) 50% 100%/auto no-repeat
}

@media (max-width:768px) {
  .message-wrap__bg_02 {
    background: none
  }
}

@media (max-width:768px) {
  .message-wrap__bg_02--sp {
    content: "";
    width: 100%;
    background: url(../img/company/message/bg02_sp.png) 50%/cover no-repeat;
    -webkit-background-size: 90vw auto;
    background-size: 90vw auto;
    background-position: top;
    padding-top: 50vw
  }
}

.message-container {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  position: relative
}

@media (max-width:768px) {
  .message-container {
    padding-right: 20px;
    padding-left: 20px;
    padding-top: 35px;
    padding-bottom: 40px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .message-container {
    padding-top: 35px;
    padding-bottom: 40px
  }
}

@media (min-width:641px) {
  .message-container {
    padding-right: 40px;
    padding-left: 40px
  }
}

.message-content {
  width: 57%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding-top: 75px;
  padding-bottom: 75px
}

@media (max-width:768px) {
  .message-content {
    width: 100%;
    padding-top: 0;
    padding-bottom: 0
  }
}

.message-content__ttl {
  font-size: 32px;
  font-weight: 700;
  line-height: 1.8;
  color: #21406d;
  padding-bottom: 60px;
  letter-spacing: .05em;
  -webkit-align-self: flex-start;
  -ms-flex-item-align: start;
  align-self: flex-start
}

@media (min-width:769px) {
  .message-content__ttl {
    margin-right: -2em
  }

  .is-ie .message-content__ttl {
    max-width: 110%
  }
}

@media (max-width:768px) {
  .message-content__ttl {
    text-align: center;
    font-size: 14px;
    line-height: 1.6;
    padding-bottom: 25px;
    width: 100%
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .message-content__ttl {
    font-size: 20px
  }
}

.message-content__txt {
  line-height: 2;
  font-size: 15px;
  letter-spacing: .05em;
  -webkit-align-self: stretch;
  -ms-flex-item-align: stretch;
  align-self: stretch;
  padding-bottom: 50px
}

@media (max-width:768px) {
  .message-content__txt {
    font-size: 12px;
    padding-bottom: 30px
  }
}

.message-content__txt p:not(:last-child) {
  margin-bottom: 1em
}

.message-content .ceo {
  -webkit-align-self: flex-end;
  -ms-flex-item-align: end;
  align-self: flex-end;
  font-size: 16px;
  color: #21406d;
  letter-spacing: .05em
}

@media (max-width:768px) {
  .message-content .ceo {
    font-size: 12px
  }
}

.company-wrap {
  background: #f7f7f8
}

.company-content {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  padding-top: 90px;
  padding-bottom: 140px
}

@media (max-width:768px) {
  .company-content {
    padding-right: 20px;
    padding-left: 20px
  }
}

.company-content:not(:last-of-type) {
  padding-bottom: 100px
}

@media (max-width:768px) {
  .company-content {
    padding: 35px 20px 40px
  }

  .company-content:not(:first-of-type) {
    padding-bottom: 40px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .company-content {
    padding-right: 20px;
    padding-left: 20px
  }
}

@media (min-width:641px) {
  .company-content {
    padding-right: 20px;
    padding-left: 20px
  }
}

.company-content__toptxt {
  padding-bottom: 50px
}

@media (max-width:768px) {
  .company-content__toptxt {
    font-size: 12px;
    padding-bottom: 2em
  }
}

.company-content .timeline__ul {
  padding-bottom: 100px
}

@media (max-width:768px) {
  .company-content .timeline__ul {
    padding-bottom: 50px
  }
}

.company-content .timeline__li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  padding-top: 10px;
  padding-bottom: 10px
}

.company-content .timeline__txt {
  font-size: 14px;
  vertical-align: middle;
  width: 90%
}

@media (max-width:768px) {
  .company-content .timeline__txt {
    font-size: 12px;
    width: 75%
  }
}

.company-content .year {
  padding-left: 22px;
  margin-right: 20px;
  color: #21406d;
  font-weight: 700;
  width: 12%
}

@media (max-width:768px) {
  .company-content .year {
    width: 25%;
    margin-right: 10px;
    padding-left: 10px
  }
}

.company-content .year:before {
  content: "";
  display: block;
  border: 2px solid #21406d;
  height: 32px;
  position: absolute;
  top: 4px;
  left: 0
}

.company-content img {
  width: 100%
}

.org-content {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  padding-top: 90px;
  padding-bottom: 90px
}

@media (max-width:768px) {
  .org-content {
    padding-right: 20px;
    padding-left: 20px;
    padding-top: 30px;
    padding-bottom: 40px
  }
}

.org-content p {
  text-align: right;
  margin-right: 110px;
  position: relative;
  z-index: 0
}

@media (max-width:768px) {
  .org-content p {
    margin-right: 2em;
    font-size: 12px;
    margin-top: 2em
  }
}

.company-info {
  background: #e1e4ea
}

.company-info__li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  border-top: 1px solid #21406d;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -moz-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  font-size: 14px;
  line-height: 1.7
}

.company-info__li:last-child {
  border-bottom: 1px solid #21406d
}

.company-info__li .item {
  width: 25%;
  -webkit-align-self: flex-start;
  -ms-flex-item-align: start;
  align-self: flex-start;
  word-break: break-word
}

@media (max-width:768px) {
  .company-info__li .item {
    min-width: 29%
  }
}

.company-info__li .item p {
  color: #21406d;
  font-weight: 700;
  padding: 20px
}

@media (max-width:768px) {
  .company-info__li .item p {
    padding: 20px 10px
  }
}

.company-info__li .detail {
  width: 100%;
  background: #f7f7f8;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -moz-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 20px 0 20px 20px
}

@media (max-width:768px) {
  .company-info__li .detail {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 20px;
    font-size: 12px
  }
}

.company-info__li .detail--wrap {
  padding: 0
}

.company-info__li .detail__li {
  position: relative;
  margin-left: 20px
}

@media (max-width:768px) {
  .company-info__li .detail__li {
    margin-left: 10px
  }
}

.company-info__li .detail__li:before {
  content: "・";
  display: block;
  position: absolute;
  top: 0;
  left: -18px
}

.company-info__li .address-outer {
  padding: 20px 0 20px 20px
}

@media (max-width:768px) {
  .company-info__li .address-outer {
    padding-right: 20px
  }
}

.company-info__li .address-outer:not(:last-of-type) {
  border-bottom: 1px solid #21406d
}

.company-info__li .address-inner {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -moz-box-orient: horizontal;
  -moz-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  width: 40%
}

@media (max-width:768px) {
  .company-info__li .address-inner {
    width: 100%
  }
}

.company-info__li .address-inner--large {
  width: 60%
}

@media (max-width:768px) {
  .company-info__li .address-inner--large {
    width: 100%
  }
}

.company-info__li .address {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -moz-box-orient: horizontal;
  -moz-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row
}

@media (max-width:768px) {
  .company-info__li .address {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
  }
}

.company-info__li .address__left {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column
}

.company-info__li .address__para {
  line-height: 1.7;
  padding-bottom: 20px
}

@media (max-width:768px) {
  .company-info__li .address__para {
    padding-bottom: 15px
  }
}
.company-info__li .place-01 {
  font-weight: 700;
  margin: 10px 5px 0;
}

.company-info__li .address__para .place {
  font-weight: 700
}

.company-info__li .address__para .space-row {
  height: .5em
}

@media (max-width:768px) {
  .company-info__li .address-btn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex
  }

  .company-info__li .address-btn .btn-inner:not(:last-child) {
    margin-right: 10px
  }

  .company-info__li .address-btn .btn-inner a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 12px;
    height: 100%
  }

  .company-info__li .address-btn .btn-inner--accessbtn {
    display: none
  }
}

.company-info__li .sp-btnflex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex
}

@media (max-width:768px) {
  .company-info__li .sp-btnflex {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
  }
}

.company-info__li .access {
  width: 60%;
  background: #e1e4ea;
  padding: 20px;
  -webkit-align-self: flex-start;
  -ms-flex-item-align: start;
  align-self: flex-start;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex
}

@media (max-width:768px) {
  .company-info__li .access {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-top: 15px;
    width: 100%;
    padding: 10px
  }
}

.company-info__li .access-inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -moz-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}

.company-info__li .access-inner__left {
  width: 12%;
  min-width: 70px;
  margin-right: 20px;
  font-family: Lato, sans-serif;
  font-size: 18px;
  -webkit-align-self: flex-start;
  -ms-flex-item-align: start;
  align-self: flex-start;
  line-height: 1.2
}

@media (max-width:768px) {
  .company-info__li .access-inner__left {
    margin-bottom: 10px
  }
}

.company-info__li .access-inner__right {
  font-size: 14px
}

@media (max-width:768px) {
  .company-info__li .access-inner__right {
    font-size: 12px
  }
}

.company-info__li .grades {
  width: 100%;
  background: #f7f7f8;
}
.company-info__li .grades__year {
  background: #21406d;
  color: #fff;
  text-align: center;
}
.company-info__li .grades__1 {
  background: #f7f7f8;
}
.company-info__li .grades__2 {
  background: #e1e4ea;
}
.company-info__li .grades th {
  font-weight: 500;
  padding: 2px;
}
.company-info__li .grades td {
  text-align: right;
}

@media (max-width:768px) {
  .company-info__li table.grades {
    font-size: 12px;
  }
}

.btn-inner a {
  padding: 15px 25px;
  background: #0098ce;
  font-size: 16px;
  color: #fff;
  font-weight: 700;
  -webkit-transition: all .3s;
  -o-transition: all .3s;
  transition: all .3s;
  max-width: 190px;
  text-align: center
}

@media (max-width:768px) {
  .btn-inner a {
    padding: 15px;
    width: 100%
  }
}

.btn-inner a:hover {
  opacity: .8
}

.btn-inner--accessbtn a {
  background: #ccc;
  color: #21406d
}

.news-content {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  padding-top: 90px;
  padding-bottom: 140px
}

@media (max-width:768px) {
  .news-content {
    padding-right: 20px;
    padding-left: 20px;
    padding-top: 30px;
    padding-bottom: 40px
  }
}

.news-list__item {
  border-bottom: 1px solid #e6e6e6
}

.news-list__link {
  display: block;
  color: #20406e;
  padding: 32px 0 40px;
  -webkit-transition: color .2s;
  -o-transition: color .2s;
  transition: color .2s;
  position: relative
}

@media (max-width:768px) {
  .news-list__link {
    padding: 20px 0 24px
  }
}

@media (min-width:769px) {
  .news-list__link:hover {
    color: #f14e1f
  }

  .news-list__link:hover .news-list__icon:before {
    -webkit-transform: scaleX(1.5);
    -ms-transform: scaleX(1.5);
    -o-transform: scaleX(1.5);
    transform: scaleX(1.5)
  }

  .news-list__link:hover .news-list__icon:after {
    -webkit-transform: translateX(4px) rotate(-45deg);
    -ms-transform: translateX(4px) rotate(-45deg);
    -o-transform: translateX(4px) rotate(-45deg);
    transform: translateX(4px) rotate(-45deg)
  }
}

.news-list__date {
  display: block;
  border-left: 8px solid;
  font-size: 14px;
  font-weight: 700;
  padding: 4px 14px;
  margin-bottom: 16px
}

@media (max-width:768px) {
  .news-list__date {
    border-left-width: 6px;
    font-size: 12px;
    padding: 4px 12px;
    margin-bottom: 12px
  }
}

.news-list__txt {
  display: block;
  padding-left: 20px;
  padding-right: 86px
}

@media (max-width:768px) {
  .news-list__txt {
    font-size: 14px;
    padding-left: 16px;
    padding-right: 44px
  }
}

.news-list__icon {
  width: 48px;
  height: 48px;
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -8px;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background: #eee
}

@media (max-width:768px) {
  .news-list__icon {
    width: 24px;
    height: 24px;
    margin-top: 4px
  }
}

.news-list__icon:before {
  content: "";
  display: block;
  position: absolute;
  top: 23px;
  right: 20px;
  width: 10px;
  height: 2px;
  background: currentColor;
  -webkit-transform-origin: 0 50%;
  -ms-transform-origin: 0 50%;
  -o-transform-origin: 0 50%;
  transform-origin: 0 50%;
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  -o-transition: -o-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s, -o-transform .3s
}

@media (max-width:768px) {
  .news-list__icon:before {
    top: 11px;
    right: 10px;
    width: 6px;
    height: 1px
  }
}

.news-list__icon:after {
  content: "";
  display: block;
  position: absolute;
  top: 20px;
  right: 19px;
  width: 6px;
  height: 6px;
  border-right: 2px solid;
  border-bottom: 2px solid;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  -o-transition: -o-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s, -o-transform .3s
}

@media (max-width:768px) {
  .news-list__icon:after {
    top: 9px;
    right: 10px;
    width: 4px;
    height: 4px;
    border-right: 1px solid;
    border-bottom: 1px solid
  }
}

.contact-content {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  max-width: 970px;
  padding-bottom: 140px;
  padding-top: 50px
}

@media (max-width:768px) {
  .contact-content {
    padding-right: 20px;
    padding-left: 20px;
    font-size: 12px;
    padding-top: 20px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .contact-content {
    padding-right: 20px;
    padding-left: 20px
  }
}

@media (min-width:641px) {
  .contact-content {
    padding-right: 20px;
    padding-left: 20px
  }
}

.contact-toptxt:not(:first-of-type) {
  margin-bottom: 40px
}

.contact-toptxt:not(:last-child) {
  margin-bottom: 20px
}

.contact-toptxt a {
  color: #21406d;
  text-decoration: underline
}

.nessesary-txt {
  font-size: 12px;
  color: red;
  text-align: right;
  margin-bottom: 10px
}

.contact-form,
.nessesary-txt {
  max-width: 970px;
  margin-right: auto;
  margin-left: auto
}

.contact-form {
  border: 1px solid #ccc;
  margin-bottom: 40px;
  padding: 60px 70px
}

@media (max-width:768px) {
  .contact-form {
    padding: 40px 20px
  }
}

.form__row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -moz-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  padding-top: 30px;
  padding-bottom: 30px
}

.form__row:not(:last-child) {
  border-bottom: 1px dashed #ccc
}

.form__label {
  min-width: 18%;
  font-size: 16px;
  font-weight: 700;
  color: #21406d;
  margin-right: 20px;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex
}

@media (max-width:768px) {
  .form__label {
    font-size: 12px
  }

  .form__row .form__label {
    min-width: 70px;
    width: 25%
  }
}

.form__label .req {
  position: relative
}

.form__label .req:after {
  content: "※";
  display: block;
  position: absolute;
  top: 0;
  right: -18px;
  color: red;
  font-size: 12px;
  font-weight: 400
}

.form__label .req--clear:after {
  content: ""
}

.form__label .req--mail:after {
  content: "※";
  position: relative;
  top: 10%;
  right: -5px;
  color: red;
  font-size: 12px;
  font-weight: 400
}

.form__input {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex
}

.form__input input[type=email],
.form__input input[type=kana],
.form__input input[type=name],
.form__input input[type=phone],
.form__input input[type=text] {
  width: 100%;
  padding: .8em;
  font-size: 16px;
  background: #fcfcfb;
  border: 1px solid #ccc;
  font-size: 12px;
  position: relative;
  font-family: inherit
}

.form__input--small {
  width: 40%;
  height: 40px;
  font-size: 12px;
  position: relative
}

@media (max-width:768px) {
  .form__input--small {
    width: 100%
  }

  .form__input--small:after {
    display: block;
    top: 44px;
    left: 0;
    font-size: 12px;
    position: absolute
  }
}

.form__input--txtarea {
  position: relative
}

.form__input .req-txt {
  position: absolute;
  color: red;
  top: 45px;
  left: 0;
  font-size: 12px
}

.form__input .req-txt--txtarea {
  top: 205px;
  left: 0
}

.form .note {
  font-size: 14px;
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  align-self: center;
  padding-left: 20px
}

.form textarea {
  min-height: 200px;
  width: 100%;
  padding: .8em;
  font-size: 12px;
  background: #fcfcfb;
  border: 1px solid #ccc;
  position: relative;
  font-family: inherit
}

.form__check {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 14px;
  margin-bottom: 30px
}

.form__check a {
  color: #21406d;
  text-decoration: underline
}

.form__check input[type=checkbox] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  position: absolute;
  height: 0;
  width: 0;
  display: none
}

.form__check input[type=checkbox]:checked+span:after {
  opacity: 1
}

.form__check span {
  position: relative
}

.form__check span:before {
  content: "";
  display: block;
  position: absolute;
  top: -3px;
  left: -35px;
  height: 20px;
  width: 20px;
  border: 1px solid #999;
  background-color: #f8f8f8
}

.form__check span:after {
  content: "";
  display: block;
  position: absolute;
  top: -6px;
  left: -38px;
  height: 23px;
  width: 33px;
  background: url(../img/icon_check.png) 50%/contain no-repeat;
  opacity: 0;
  -webkit-transition: opacity .4s;
  -o-transition: opacity .4s;
  transition: opacity .4s;
  will-change: opacity
}

@media (max-width:768px) {
  .form__check span:after {
    height: 18px;
    width: 25px;
    top: -3px
  }
}

.form__btnarea {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}

@media (max-width:768px) {
  .form__btnarea {
    width: 100%
  }
}

.form__reset {
  display: block;
  text-align: center;
  width: 190px;
  padding-top: 20px;
  padding-bottom: 20px;
  background: #666;
  color: #fff !important;
  margin-right: 20px;
  -webkit-transition: all .3s;
  -o-transition: all .3s;
  transition: all .3s;
  text-decoration: none !important
}

.form__reset:hover {
  opacity: .8
}

.form__submit {
  display: block;
  text-align: center;
  width: 190px;
  padding-top: 20px;
  padding-bottom: 20px;
  background: #0098ce;
  color: #fff !important;
  -webkit-transition: all .3s;
  -o-transition: all .3s;
  transition: all .3s;
  text-decoration: none !important
}

.form__submit:hover {
  opacity: .8
}

.thanks-btnarea {
  text-align: center;
  padding-top: 40px;
  padding-bottom: 0
}

@media (max-width:768px) {
  .thanks-btnarea {
    padding-bottom: 20px
  }
}

.thanks-btnarea .thanks-btn a {
  padding: 15px 50px;
  background: #0098ce;
  font-size: 16px;
  color: #fff;
  font-weight: 700;
  -webkit-transition: all .3s;
  -o-transition: all .3s;
  transition: all .3s
}

.thanks-btnarea .thanks-btn a:hover {
  opacity: .8
}

.form-confirm__wrap {
  border: 1px solid #ccc;
  max-width: 970px;
  margin-right: auto;
  margin-bottom: 40px;
  margin-left: auto;
  padding: 60px 70px
}

@media (max-width:768px) {
  .form-confirm__wrap {
    padding: 40px 20px
  }
}

.form-confirm__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -moz-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  padding-top: 30px;
  padding-bottom: 30px
}

.form-confirm__item:not(:last-child) {
  border-bottom: 1px dashed #ccc
}

.form-confirm__label {
  min-width: 18%;
  font-size: 16px;
  font-weight: 700;
  color: #21406d;
  margin-right: 20px;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  position: relative
}

@media (max-width:768px) {
  .form-confirm__label {
    font-size: 12px
  }
}

.form-confirm__input pre {
  margin: 0;
  font-size: 16px;
  white-space: pre-wrap;
  font-family: inherit
}

@media (max-width:768px) {
  .form-confirm__input pre {
    font-size: 12px
  }
}

.form-confirm .req {
  position: relative
}

.form-confirm .req:after {
  content: "※";
  display: block;
  position: absolute;
  right: -16px;
  top: 0;
  color: red;
  font-size: 12px
}

.form-error {
  max-width: 970px;
  margin-right: auto;
  margin-bottom: 40px;
  margin-left: auto;
  padding: 60px 70px;
  background: rgba(255, 0, 0, .05)
}

@media (max-width:768px) {
  .form-error {
    padding: 40px 20px
  }
}

.form-error__txt {
  margin-bottom: 1.5em
}

.form-error__list li,
.form-error__txt {
  color: red;
  line-height: 2;
  letter-spacing: .05em
}

.form-error__list li {
  padding-left: 1em
}

.careers-content {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  padding-top: 200px;
  padding-bottom: 200px
}

@media (max-width:768px) {
  .careers-content {
    padding-right: 20px;
    padding-left: 20px;
    padding: 100px 20px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .careers-content {
    padding-right: 20px;
    padding-left: 20px
  }
}

@media (min-width:641px) {
  .careers-content {
    padding-right: 20px;
    padding-left: 20px
  }
}

.careers-content .small-txt {
  font-size: 15px;
  letter-spacing: .05em;
  text-align: center
}

@media (max-width:768px) {
  .careers-content .small-txt {
    font-size: 12px
  }
}

.upstream {
  padding-bottom: 163px
}

@media (min-width:641px) and (max-width:1150px) {
  .upstream {
    padding-bottom: 80px
  }
}

@media (max-width:768px) {
  .upstream {
    padding-bottom: 0
  }
}

.upstream__wrap {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  max-width: 1280px
}

@media (max-width:768px) {
  .upstream__wrap {
    padding-right: 20px;
    padding-left: 20px;
    padding-top: 25px;
    padding-bottom: 70px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .upstream__wrap {
    padding-top: 35px;
    padding-bottom: 40px
  }
}

@media (min-width:641px) {
  .upstream__wrap {
    padding-right: 40px;
    padding-left: 40px
  }
}

.upstream__title {
  border-left: 12px solid #21406d;
  padding: 4px 0 4px 14px;
  font-size: 32px;
  font-weight: 700;
  color: #21406d;
  line-height: 1;
  margin-bottom: 40px
}

@media (min-width:641px) and (max-width:1150px) {
  .upstream__title {
    margin-bottom: 30px
  }
}

@media (max-width:768px) {
  .upstream__title {
    border-left: 6px solid #21406d;
    padding: 0 0 4px 5px;
    font-size: 16px;
    margin-bottom: 16px
  }
}

@media (max-width:768px) {
  .upstream__sp-br {
    display: none
  }
}

.up-commitment {
  margin: 80px auto 105px;
  text-align: center
}

@media (min-width:641px) and (max-width:1150px) {
  .up-commitment {
    margin: 50px auto 60px
  }
}

@media (max-width:768px) {
  .up-commitment {
    margin: 0 auto 53px
  }
}

.up-commitment__title {
  font-size: 32px;
  font-weight: 700;
  color: #21406d;
  margin-bottom: 40px
}

@media (min-width:641px) and (max-width:1150px) {
  .up-commitment__title {
    margin-bottom: 30px
  }
}

@media (max-width:768px) {
  .up-commitment__title {
    margin-bottom: 16px;
    font-size: 16px
  }
}

.up-commitment__text {
  font-size: 24px;
  text-align: left;
  display: inline-block;
  line-height: 2
}

@media (max-width:768px) {
  .up-commitment__text {
    font-size: 12px;
    text-align: center
  }
}

.up-expertise {
  padding-bottom: 73px
}

@media (max-width:768px) {
  .up-expertise {
    padding-bottom: 54px
  }
}

.up-expertise__text {
  font-size: 15px;
  line-height: 2
}

@media (max-width:768px) {
  .up-expertise__text {
    line-height: 23px;
    font-size: 12px
  }
}

.up-projects__title {
  font-size: 31px;
  font-weight: 700;
  text-align: center;
  line-height: 1.9em;
  padding: 70px 0 68px
}

@media (max-width:768px) {
  .up-projects__title {
    font-size: 16px;
    padding: 37px 0 24px
  }
}

.up-projects__image {
  width: 100%
}

.up-projects__image:nth-of-type(n+1) {
  margin-bottom: 55px
}

@media (max-width:768px) {
  .up-projects__image:nth-of-type(n+1) {
    margin-bottom: 20px
  }
}

.up-projects__image:nth-of-type(2n) {
  margin-bottom: 55px
}

@media (max-width:768px) {
  .up-projects__image:nth-of-type(2n) {
    margin-bottom: 25px;
  }
}

.up-projects__image:nth-of-type(4) {
  margin: 24px 0 19px
}

@media (max-width:768px) {
  .up-projects__image:nth-of-type(4) {
    margin: 13px 0 29px
  }
}

.up-projects__image:nth-of-type(5) {
  margin-bottom: 83px
}

@media (max-width:768px) {
  .up-projects__image:nth-of-type(6) {
    margin-bottom: 19px
  }
}

.up-projects__image:nth-of-type(7) {
  margin-bottom: 16px
}

@media (max-width:768px) {
  .up-projects__image:nth-of-type(7) {
    margin-bottom: 20px
  }
}

@media (max-width:768px) {
  .up-projects__image:nth-of-type(8) {
    margin-bottom: 22px
  }
}

.down-projects__image {
  width: 100%;
  margin-bottom: 55px;
}

@media (max-width:768px) {
  .down-projects__image {
    margin-bottom: 20px;
  }
}

.up-projects__text {
  margin-bottom: 30px;
  font-size: 15px;
  line-height: 2
}

@media (max-width:768px) {
  .up-projects__text {
    margin-bottom: 24px;
    font-size: 12px;
    line-height: 1.95em
  }
}

.up-projects__text:last-of-type {
  margin-bottom: 106px
}

@media (max-width:768px) {
  .up-projects__text:last-of-type {
    margin-bottom: 33px
  }
}

.up-projects__buttons {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 58px
}

@media (max-width:768px) {
  .up-projects__buttons {
    display: block;
    padding: 0 30px;
    margin-top: 25px
  }
}

.up-projects__detail {
  padding-top: 6px
}

.up-projects__button {
  border: 2px solid #21406d;
  margin-right: 20px;
  padding: 15px 0 15px 24px;
  width: 360px;
  -webkit-transition: color .2s;
  -o-transition: color .2s;
  transition: color .2s
}

.up-projects__button:hover {
  -webkit-transition: .2s;
  -o-transition: .2s;
  transition: .2s;
  border: 2px solid #f14e1f
}

.up-projects__button:hover .up-projects__button--text {
  color: #f14e1f
}

.up-projects__button:hover .up-projects__button--text:before {
  -webkit-transition: .2s;
  -o-transition: .2s;
  transition: .2s;
  border-left: 1px solid #f14e1f;
  border-bottom: 1px solid #f14e1f
}

@media (min-width:641px) and (max-width:1150px) {
  .up-projects__button {
    padding: 15px 0 15px 24px
  }
}

@media (max-width:768px) {
  .up-projects__button {
    padding: 5px 0 10px 35px;
    width: 100%;
    margin-right: 0
  }

  .up-projects__button:not(:last-child) {
    margin-bottom: 20px
  }
}

.up-projects__button--text {
  position: relative;
  left: 46px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.7em;
  color: #21406d;
  -webkit-transition: color .2s;
  -o-transition: color .2s;
  transition: color .2s;
  will-change: color
}

@media (max-width:768px) {
  .up-projects__button--text {
    font-size: 12px
  }
}

@media (max-width:374px) {
  .up-projects__button--text {
    left: 0
  }
}

.up-projects__button--text:before {
  width: 12px;
  height: 12px;
  border-left: 1px solid #21406d;
  border-bottom: 1px solid #21406d;
  position: absolute;
  content: "";
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  left: -44px;
  top: 15px
}

@media (max-width:768px) {
  .up-projects__button--text:before {
    width: 8px;
    height: 8px;
    border-left: 2px solid #21406d;
    border-bottom: 2px solid #21406d;
    left: -52px;
    top: 12px
  }
}

@media (max-width:374px) {
  .up-projects__button--text:before {
    left: -23px
  }
}

.up-projects__datas {
  padding: 40px 50px 30px;
  background-color: #f7f7f8
}

@media (max-width:768px) {
  .up-projects__datas {
    padding: 15px 5px;
    text-align: center
  }
}

@media (max-width:374px) {
  .up-projects__datas {
    overflow: scroll
  }
}

.up-projects__datas--first {
  background-color: #f7f7f8
}

@media (min-width:641px) and (max-width:1150px) {
  .up-projects__datas--second,
  .up-projects__datas--third {
    margin-top: 61px;
    padding-right: 16px;
    padding-left: 16px
  }
}

@media (max-width:768px) {
  .up-projects__datas--second,
  .up-projects__datas--third {
    margin-top: 61px;
    padding-right: 15px;
    padding-left: 15px
  }
}

@media (max-width:374px) {
  .up-projects__datas--second,
  .up-projects__datas--third {
    padding-right: 5px;
    padding-left: 5px
  }
}

.up-projects__datas-title {
  text-align: center;
  margin-bottom: 24px;
  padding-left: 5px
}

@media (min-width:641px) and (max-width:1150px) {
  .up-projects__datas-title {
    padding-left: 0;
    margin-bottom: 16px
  }
}

@media (max-width:768px) {
  .up-projects__datas-title {
    padding-left: 0;
    margin-bottom: 16px
  }
}

.up-projects__datas-title h3 {
  display: inline-block;
  font-size: 20px;
  font-weight: 700;
  padding: 7px 27px;
  color: #fff;
  background: #21406d;
  line-height: 1
}

@media (min-width:641px) and (max-width:1150px) {
  .up-projects__datas-title h3 {
    font-size: 12px;
    padding: 1px 19px
  }
}

@media (max-width:768px) {
  .up-projects__datas-title h3 {
    font-size: 12px;
    padding: 1px 19px
  }
}

.up-projects__data {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -moz-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}

@media (max-width:768px) {
  .up-projects__data {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    max-width: 300px;
    margin: 0 auto
  }
}

.up-projects__data-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex
}

@media (min-width:641px) and (max-width:1150px) {
  .up-projects__data-box {
    padding-left: 10px;
    min-width: 184px
  }
}

@media (max-width:768px) {
  .up-projects__data-box {
    padding-left: 10px;
    min-width: 184px
  }
}

.up-projects__data-lists {
  width: 30.8%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -moz-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  margin-bottom: 20px
}

@media (min-width:641px) and (max-width:1150px) {
  .up-projects__data-lists {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex
  }
}

@media (max-width:768px) {
  .up-projects__data-lists {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    padding-bottom: 15px;
    padding-right: 10px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    margin-bottom: 0
  }
}

.up-projects__data-lists:not(:first-of-type) {
  position: relative
}

@media (min-width:641px) and (max-width:1150px) {
  .up-projects__data-lists:not(:first-of-type) {
    padding-left: 0;
    border: none
  }
}

@media (max-width:768px) {
  .up-projects__data-lists:not(:first-of-type) {
    padding-left: 0;
    border: none
  }
}
.up-projects__data-lists_01 {
  letter-spacing: 0.02em;
}
.up-projects__data-lists:first-of-type {
  position: relative
}
.up-projects__data-lists_01:first-of-type {
  position: relative
}

.up-projects__data-lists:first-of-type:before {
  content: "";
  display: block;
  position: absolute;
  width: 1px;
  height: 110%;
  bottom: -13px;
  right: 15px;
  background: #21406d
}
.up-projects__data-lists_01:first-of-type:before {
  content: "";
  display: block;
  position: absolute;
  width: 1px;
  height: 110%;
  bottom: -13px;
  right: -40px;
  background: #21406d
}

@media (max-width:768px) {
  .up-projects__data-lists:first-of-type:before {
    display: none
  }
  .up-projects__data-lists_01:first-of-type:before {
    display: none
  }
}

.up-projects__data-lists:nth-of-type(2) {
  position: relative;
  padding-right: 30px
}

@media (min-width:641px) and (max-width:1150px) {
  .up-projects__data-lists:nth-of-type(2) {
    padding-right: 0
  }
}

@media (max-width:768px) {
  .up-projects__data-lists:nth-of-type(2) {
    padding-right: 0
  }
}

.up-projects__data-lists:nth-of-type(3) {
  position: relative
}
.up-projects__data-lists_01:nth-of-type(3) {
  position: relative
}

.up-projects__data-lists:nth-of-type(3):before {
  content: "";
  display: block;
  position: absolute;
  width: 1px;
  height: 110%;
  bottom: -13px;
  left: -15px;
  background: #21406d
}
.up-projects__data-lists_01:nth-of-type(3):before {
  content: "";
  display: block;
  position: absolute;
  width: 1px;
  height: 110%;
  bottom: -13px;
  left: -40px;
  background: #21406d
}

@media (min-width:641px) and (max-width:1150px) {
  .up-projects__data-lists:nth-of-type(3) {
    padding-right: 0
  }
}

@media (max-width:768px) {
  .up-projects__data-lists:nth-of-type(3) {
    padding-right: 0
  }

  .up-projects__data-lists:nth-of-type(3):before {
    display: none
  }
  .up-projects__data-lists_01:nth-of-type(3):before {
    display: none
  }
}

.up-projects__data-lists:not(:last-of-type) {
  padding-right: 30px
}

@media (max-width:768px) {
  .up-projects__data-lists:not(:last-of-type) {
    padding-right: 0
  }
}

@media (min-width:641px) and (max-width:1150px) {

  .up-projects__data-lists:first-child,
  .up-projects__data-lists:first-child .up-projects__data-list {
    margin-left: 0
  }
}

.up-projects__data-item {
  font-size: 19px
}

@media (min-width:641px) and (max-width:1150px) {
  .up-projects__data-item {
    font-size: 12px
  }
}

@media (max-width:768px) {
  .up-projects__data-item {
    font-size: 11.5px;
    text-align: left;
    white-space: normal
  }
}

@media (max-width:374px) {
  .up-projects__data-item {
    white-space: normal
  }
}

.up-projects__data-item--title {
  color: #21406d;
  font-weight: 700;
  margin: 3px 0 13px
}

@media (min-width:641px) and (max-width:1150px) {
  .up-projects__data-item--title {
    min-width: 100px;
    padding-left: 6px
  }
}

@media (max-width:768px) {
  .up-projects__data-item--title {
    min-width: 80px;
    text-align: left
  }
}

.up-projects__data-item--first {
  text-align: right;
  margin-left: 50px
}

@media (min-width:641px) and (max-width:1150px) {
  .up-projects__data-item--first {
    margin-left: 44px
  }
}

@media (max-width:768px) {
  .up-projects__data-item--first {
    margin-left: 44px
  }
}

.up-projects__data-item--red {
  color: red
}

.up-projects__data-item--total {
  border-top: 1px solid #000;
  margin-top: 10px;
  padding-top: 10px
}

@media (min-width:641px) and (max-width:1150px) {
  .up-projects__data-item--total {
    margin: 8px 0;
    padding-top: 4px
  }
}

@media (max-width:768px) {
  .up-projects__data-item--total {
    margin: 8px 0;
    padding-top: 4px
  }
}

.up-projects__data-comment {
  font-size: 15px
}

@media (min-width:641px) and (max-width:1150px) {
  .up-projects__data-comment {
    font-size: 10px;
    margin-left: 10px
  }
}

@media (max-width:768px) {
  .up-projects__data-comment {
    font-size: 10px;
    padding-bottom: 13px;
    text-align: left;
    padding-left: 112px
  }
}

.up-projects__datas--first .up-projects__data-lists:nth-child(2) .up-projects__data-item--total {
  padding-left: 5px
}

@media (min-width:641px) and (max-width:1150px) {
  .up-projects .up-projects__datas--second .up-projects__data-item--first,
  .up-projects .up-projects__datas--third .up-projects__data-item--first {
    margin-left: 57px
  }
}

@media (max-width:768px) {
  .up-projects .up-projects__datas--second .up-projects__data-item--first,
  .up-projects .up-projects__datas--third .up-projects__data-item--first {
    margin-left: 57px
  }
}

.up-projects .up-projects__datas--second .up-projects__data-box,
.up-projects .up-projects__datas--third .up-projects__data-box {
  margin-bottom: 13px
}

@media (min-width:641px) and (max-width:1150px) {
  .up-projects .up-projects__datas--second .up-projects__data-box,
  .up-projects .up-projects__datas--third .up-projects__data-box {
    margin-bottom: 10px
  }
}

@media (max-width:768px) {
  .up-projects .up-projects__datas--second .up-projects__data-box,
  .up-projects .up-projects__datas--third .up-projects__data-box {
    margin-bottom: 10px
  }
}

.up-projects .up-projects__datas--second .up-projects__data-lists,
.up-projects .up-projects__datas--third .up-projects__data-lists {
  padding-bottom: 10px
}

@media (min-width:769px) {
  .up-projects .up-projects__datas--second .up-projects__data-lists,
  .up-projects .up-projects__datas--third .up-projects__data-lists {
    width: 33%;
    padding-bottom: 5px
  }
}

@media (min-width:769px) {
  .up-projects .up-projects__datas--second .up-projects__data-lists:first-of-type,
  .up-projects .up-projects__datas--third .up-projects__data-lists:first-of-type {
    padding-left: 10px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .up-projects .up-projects__datas--second .up-projects__data-lists:first-of-type,
  .up-projects .up-projects__datas--third .up-projects__data-lists:first-of-type {
    padding-left: 0;
    padding-bottom: 2px
  }
}

@media (max-width:768px) {
  .up-projects .up-projects__datas--second .up-projects__data-lists:first-of-type,
  .up-projects .up-projects__datas--third .up-projects__data-lists:first-of-type {
    padding-left: 0;
    padding-bottom: 50px
  }
}

.up-projects .up-projects__datas--second .up-projects__data-item--first,
.up-projects .up-projects__datas--third .up-projects__data-item--first {
  margin-left: 45px
}

@media (min-width:641px) and (max-width:1150px) {
  .up-projects .up-projects__datas--second .up-projects__data-item--first,
  .up-projects .up-projects__datas--third .up-projects__data-item--first {
    margin-left: 40px
  }
}

@media (max-width:768px) {
  .up-projects .up-projects__datas--second .up-projects__data-item--first,
  .up-projects .up-projects__datas--third .up-projects__data-item--first {
    margin-left: 40px
  }
}

.notice {
  position: absolute;
  font-size: 10px;
  top: -48px;
  left: 90px;
  display: inline-block
}

.downstream {
  padding-bottom: 140px
}

@media (min-width:641px) and (max-width:1150px) {
  .downstream {
    padding-bottom: 80px
  }
}

@media (max-width:768px) {
  .downstream {
    padding-bottom: 0
  }
}

.downstream__wrap {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  max-width: 1280px
}

@media (max-width:768px) {
  .downstream__wrap {
    padding-right: 20px;
    padding-left: 20px;
    padding-top: 24px;
    padding-bottom: 47px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .downstream__wrap {
    padding-top: 35px;
    padding-bottom: 40px
  }
}

@media (min-width:641px) {
  .downstream__wrap {
    padding-right: 40px;
    padding-left: 40px
  }
}

.downstream__title {
  border-left: 12px solid #21406d;
  padding: 3px 0 3px 15px;
  font-size: 32px;
  font-weight: 700;
  color: #21406d;
  line-height: 1;
  margin-bottom: 50px
}

@media (min-width:641px) and (max-width:1150px) {
  .downstream__title {
    margin-bottom: 30px
  }
}

@media (max-width:768px) {
  .downstream__title {
    border-left: 6px solid #21406d;
    padding: 0 0 4px 5px;
    font-size: 16px;
    margin-bottom: 12px
  }
}

.down-commitment {
  margin: 83px auto 66px;
  text-align: center
}

@media (min-width:641px) and (max-width:1150px) {
  .down-commitment {
    margin: 50px auto 60px
  }
}

@media (max-width:768px) {
  .down-commitment {
    margin: 0 auto 55px
  }
}

.down-commitment__title {
  font-size: 32px;
  font-weight: 700;
  color: #21406d;
  margin-bottom: 86px
}

@media (min-width:641px) and (max-width:1150px) {
  .down-commitment__title {
    margin-bottom: 30px
  }
}

@media (max-width:768px) {
  .down-commitment__title {
    margin-bottom: 16px;
    font-size: 16px
  }
}

.down-commitment__text {
  font-size: 24px;
  text-align: left;
  display: inline-block;
  line-height: 2;
  padding-left: 33px
}

@media (max-width:768px) {
  .down-commitment__text {
    font-size: 12px;
    text-align: center;
    line-height: 1.95em;
    padding-left: 0
  }
}

.down-expertise {
  padding-bottom: 71px
}

@media (max-width:768px) {
  .down-expertise {
    padding-bottom: 54px
  }
}

.down-expertise__text {
  font-size: 15px;
  line-height: 2
}

@media (max-width:768px) {
  .down-expertise__text {
    font-size: 12px
  }
}

.down-bbg {
  margin-top: 71px;
  padding-bottom: 71px
}

@media (max-width:768px) {
  .down-bbg {
    margin-top: 54px;
    padding-bottom: 54px
  }
  .down-bbg__title {
    text-align: center;
  }
}

.down-bbg__text {
  font-size: 15px;
  line-height: 2;
}

@media (max-width:768px) {
  .down-bbg__text {
    font-size: 12px
  }
}

.down-projects__titles {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 0 30px;
}

@media (max-width:768px) {
  .down-projects__titles {
    display: block
  }
}

.down-projects__title {
  font-size: 31px;
  font-weight: 700;
  margin: 0px 0px 30px;
}

@media (max-width:768px) {
  .down-projects__title {
    font-size: 16px;
    margin: 0 0 12px;
    padding-top: 5px
  }
}

.down-projects__detail {
  text-align: center
}

.down-projects__text {
  margin-left: 100px;
  font-size: 15px;
  line-height: 2em;
  text-align: left
}

@media (max-width:768px) {
  .down-projects__text {
    margin-left: 0;
    font-size: 12px
  }
}

.down-projects__box {
  position: relative;
  padding: 35px 25px 48px 33px;
  background-color: #f7f7f8;
  display: inline-block
}

@media (max-width:768px) {
  .down-projects__box {
    padding: 16px 5px 45px;
    display: block
  }
}

.down-projects__box-title {
  font-size: 18px;
  font-weight: 700;
  color: #fff;
  display: inline-block;
  background: #21406d;
  padding: 8px 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  width: 275px;
  margin: 0 auto
}

@media (max-width:768px) {
  .down-projects__box-title {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    width: 165px;
    margin: 0 auto;
    font-size: 9px;
    padding: 8px 0;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
  }
}

.down-projects__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex
}

@media (max-width:768px) {
  .down-projects__list {
    max-width: 350px;
    margin: 0 auto
  }
}

.down-projects__item {
  margin-right: 120px;
  margin-top: 24px
}

@media (max-width:768px) {
  .down-projects__item:last-child {
    margin-top: 10px
  }
}

@media (max-width:768px) {
  .down-projects__item {
    margin-right: 0;
    margin-top: 15px
  }
}

.down-projects__item:first-of-type {
  margin-right: 170px
}

@media (max-width:768px) {
  .down-projects__item:first-of-type {
    margin-right: 16px;
    margin-top: 13px;
    padding-left: 20px
  }
}

@media (max-width:374px) {
  .down-projects__item:first-of-type {
    padding-left: 10px
  }
}

.down-projects__item-text {
  text-align: left
}

@media (max-width:768px) {
  .down-projects__item-text {
    font-size: 10px;
    line-height: 1.1em
  }
}

.down-projects__item-text:not(:last-of-type) {
  margin-bottom: 6px
}

.down-projects__note {
  position: absolute;
  bottom: 1.5em;
  right: 1.75em;
  text-align: right
}

@media (max-width:768px) {
  .down-projects__note {
    font-size: 10px;
    line-height: 1.1em
  }
}

.is-ie .down-projects__box,
.is-ie .up-projects__datas,
.is-ie .up-projects__datas--first {
  background-color: #dcdcdc
}

.trading {
  padding-bottom: 150px
}

@media (min-width:641px) and (max-width:1150px) {
  .trading {
    padding-bottom: 80px
  }
}

@media (max-width:768px) {
  .trading {
    padding-bottom: 0
  }
}

.trading__wrap {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  max-width: 1280px
}

@media (max-width:768px) {
  .trading__wrap {
    padding-right: 20px;
    padding-left: 20px;
    padding-top: 24px;
    padding-bottom: 40px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .trading__wrap {
    padding-top: 35px;
    padding-bottom: 40px
  }
}

@media (min-width:641px) {
  .trading__wrap {
    padding-right: 40px;
    padding-left: 40px
  }
}

.trading__title {
  border-left: 12px solid #21406d;
  padding: 0 0 7px 14px;
  font-size: 32px;
  font-weight: 700;
  color: #21406d;
  line-height: 1;
  margin-bottom: 32px
}

@media (min-width:641px) and (max-width:1150px) {
  .trading__title {
    margin-bottom: 30px
  }
}

@media (max-width:768px) {
  .trading__title {
    border-left: 6px solid #21406d;
    padding: 0 0 4px 5px;
    font-size: 16px;
    margin-bottom: 10px
  }
}

.trading-commitment {
  margin: 82px auto 113px;
  text-align: center
}

@media (min-width:641px) and (max-width:1150px) {
  .trading-commitment {
    margin: 50px auto 60px
  }
}

@media (max-width:768px) {
  .trading-commitment {
    margin: 0 auto 54px
  }
}

.trading-commitment__title {
  font-size: 32px;
  font-weight: 700;
  color: #21406d;
  margin-bottom: 39px
}

@media (min-width:641px) and (max-width:1150px) {
  .trading-commitment__title {
    margin-bottom: 30px
  }
}

@media (max-width:768px) {
  .trading-commitment__title {
    margin-bottom: 16px;
    font-size: 16px
  }
}

.trading-commitment__text {
  font-size: 24px;
  text-align: left;
  display: inline-block;
  line-height: 2
}

@media (max-width:768px) {
  .trading-commitment__text {
    font-size: 12px;
    text-align: center
  }
}

.trading-expertise__text {
  font-size: 15px;
  line-height: 2
}

@media (max-width:768px) {
  .trading-expertise__text {
    font-size: 12px
  }
}

.Ingprocurementsolutionstream {
  padding-bottom: 195px
}

@media (min-width:641px) and (max-width:1150px) {
  .Ingprocurementsolutionstream {
    padding-bottom: 80px
  }
}

@media (max-width:768px) {
  .Ingprocurementsolutionstream {
    padding-bottom: 0
  }
}

.Ingprocurementsolutionstream__wrap {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  max-width: 1280px
}

@media (max-width:768px) {
  .Ingprocurementsolutionstream__wrap {
    padding-right: 20px;
    padding-left: 20px;
    padding-top: 27px;
    padding-bottom: 32px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .Ingprocurementsolutionstream__wrap {
    padding-top: 35px;
    padding-bottom: 40px
  }
}

@media (min-width:641px) {
  .Ingprocurementsolutionstream__wrap {
    padding-right: 40px;
    padding-left: 40px
  }
}

.Ingprocurementsolutionstream__title {
  border-left: 12px solid #21406d;
  padding: 0 0 7px 14px;
  font-size: 32px;
  font-weight: 700;
  color: #21406d;
  line-height: 1;
  margin-bottom: 40px
}

@media (min-width:641px) and (max-width:1150px) {
  .Ingprocurementsolutionstream__title {
    margin-bottom: 30px
  }
}

@media (max-width:768px) {
  .Ingprocurementsolutionstream__title {
    border-left: 6px solid #21406d;
    padding: 0 0 4px 5px;
    font-size: 16px;
    margin-bottom: 16px
  }
}

.Ingprocurementsolution-commitment {
  margin: 83px auto 110px;
  text-align: center
}

@media (min-width:641px) and (max-width:1150px) {
  .Ingprocurementsolution-commitment {
    margin: 50px auto 60px
  }
}

@media (max-width:768px) {
  .Ingprocurementsolution-commitment {
    margin: 0 auto 29px
  }
}

.Ingprocurementsolution-commitment__title {
  font-size: 32px;
  font-weight: 700;
  color: #21406d;
  margin-bottom: 40px
}

@media (min-width:641px) and (max-width:1150px) {
  .Ingprocurementsolution-commitment__title {
    margin-bottom: 30px
  }
}

@media (max-width:768px) {
  .Ingprocurementsolution-commitment__title {
    margin-bottom: 16px;
    font-size: 16px
  }
}

.Ingprocurementsolution-commitment__text {
  font-size: 24px;
  text-align: left;
  display: inline-block;
  line-height: 2;
  padding-left: 15px
}

@media (max-width:768px) {
  .Ingprocurementsolution-commitment__text {
    font-size: 12px;
    text-align: center
  }
}

.Ingprocurementsolution-expertise__text {
  font-size: 15px;
  line-height: 2
}

@media (max-width:768px) {
  .Ingprocurementsolution-expertise__text {
    font-size: 12px
  }
}

.contribution {
  padding-top: 90px;
  padding-bottom: 125px
}

@media (min-width:641px) and (max-width:1150px) {
  .contribution {
    padding-top: 60px;
    padding-bottom: 60px
  }
}

@media (max-width:768px) {
  .contribution {
    padding-top: 0;
    padding-bottom: 0
  }
}

.contribution__wrap {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  max-width: 1280px
}

@media (max-width:768px) {
  .contribution__wrap {
    padding-right: 20px;
    padding-left: 20px;
    padding-top: 25px;
    padding-bottom: 23px
  }
}

@media (min-width:641px) and (max-width:1150px) {
  .contribution__wrap {
    padding-top: 35px;
    padding-bottom: 40px
  }
}

@media (min-width:641px) {
  .contribution__wrap {
    padding-right: 40px;
    padding-left: 40px
  }
}

.contribution__main-ttlbox {
  position: relative
}

.contribution__main-ttl {
  font-size: 32px;
  font-weight: 700;
  color: #21406d;
  margin-bottom: 80px;
  text-align: center
}

@media (max-width:768px) {
  .contribution__main-ttl {
    text-align: left;
    color: #21406d;
    padding-bottom: 20px;
    margin-bottom: 6px;
    font-size: 16px;
    text-align: center
  }
}
.contribution section{
  margin-bottom: 50px;
}
.contribution .more_info{
  font-size: 15px;
  margin-bottom: 35px;
  line-height: 1.7em;
}
@media (max-width: 768px){
  .contribution .more_info{
    font-size: 14px;
    margin-bottom: 20px;
  }
}
.contribution .more_info_link{
  transition: .3s;
  border-bottom: 1px solid #21406d;
  font-weight: bold;
  color: #21406d;
}
.contribution .more_info_link:hover{
  color: #f14e1f;
  border-bottom: 1px solid #f14e1f;
}

.contribution__sub-ttl {
  font-size: 26px;
  font-weight: 700;
  color: #21406d;
  margin-bottom: 36px
}

@media (max-width:768px) {
  .contribution__sub-ttl {
    margin-top: 28px;
    margin-bottom: 18px;
    font-size: 16px
  }
}

.contribution__text {
  font-size: 15px;
  margin-bottom: 35px;
  line-height: 1.9em
}

@media (max-width:768px) {
  .contribution__text {
    margin-bottom: 25px;
    font-size: 12px;
    line-height: 1.95em
  }
}

.contribution iframe{
  margin-bottom: 30px;
  width: 65%;
  height: auto;
  transition: .3s;
  aspect-ratio: 16 / 9;
}
.contribution iframe:hover{
  opacity: .7;
}
@media (max-width:768px) {
  .contribution iframe{
    width: 100%;
  }
}

.contribution__images {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -moz-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 77px
}

@media (max-width:768px) {
  .contribution__images {
    display: block;
    margin-top: 33px
  }
}

.contribution__images img {
  width: 50%;
  height: auto;
  object-fit: cover;
  padding-bottom: 40px
}

.contribution__images img:nth-of-type(odd) {
  padding-right: 15px
}

.contribution__images img:nth-of-type(2n) {
  padding-left: 15px
}

@media (max-width:768px) {
  .contribution__images img {
    width: 100%;
    height: 100%;
    padding: 0 0 20px
  }

  .contribution__images img:nth-of-type(odd) {
    padding-right: 0
  }

  .contribution__images img:nth-of-type(2n) {
    padding-left: 0
  }
}

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