/* -------------------------------- 

Primary style

-------------------------------- */
*, *::after, *::before {
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

body {
  font-size: 1.6rem;
  font-family: "Open Sans", sans-serif;
  color: #000;
  background-color: #463f4d;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
body::before {
  /* never visible - this is used in jQuery to check the current MQ */
  content: 'mobile';
  display: none;
}
@media only screen and (min-width: 1050px) {
  body::before {
    /* never visible - this is used in jQuery to check the current MQ */
    content: 'desktop';
  }
}

a {
  color: #267481;
  text-decoration: none;
}

/* -------------------------------- 

Main Components 

-------------------------------- */
@media only screen and (min-width: 1050px) {
  body[data-hijacking="on"] {
    overflow: hidden;
  }
}

.cd-section, .cd-section .left-layout > div {
  height: 100vh;
}

.cd-section.about-main {
  height: 100vh;
  background: url(../img/page/about/introduction/about_main.jpg) no-repeat 50% 50%;
  background-size: cover;
}

.cd-section .left-layout {
  float: left;
  width: 44%;
  height: 100vh;
  background: #eee;
}

.cd-section .right-layout {
  float: right;
  display: table;
  width: 56%;
  height: 100vh;
  background: #f9f9f9;
}

.cd-section .left-layout01 {
  background: #d1d0f0 url(../img/page/about/introduction/about_01.jpg) no-repeat 50% 50%;
  background-size: cover;
}
.cd-section .left-layout02 {
  background: #ffc4ca url(../img/page/about/introduction/about_02.jpg) no-repeat 50% 50%;
  background-size: cover;
}
.cd-section .left-layout03 {
  background: #f8e680 url(../img/page/about/introduction/about_03.jpg) no-repeat 50% 50%;
  background-size: cover;
}
.cd-section .right-layout01 {
  background: #f0f0fa;
}
.cd-section .right-layout02 {
  background: #f4f4f4;
}
.cd-section .right-layout03 {
  background: #faf5e2;
}

.cd-section .about-main-text {
  position: absolute;
  bottom: 10%;
  right: 5%;
  max-width: 524px;
  color: #fff;
}

.cd-section .about-main-text h2 {
  text-align: left;
}
.cd-section .about-main-text h2 img {
  height: 65px;
}
.cd-section .about-main-text p {
  margin: 6% 0 0;
  padding: 0;
  font-size: 2.2rem;
  line-height: 1.4;
  word-break: keep-all;
}

.cd-section .text-group {
  display: table-cell;
  padding: 0 0 5%;
  vertical-align: middle;
  text-align: center;
}

.cd-section h2 {
  font-family: "SpR";
  font-weight: 600;
  font-size: 7rem;
  text-align: center;
  letter-spacing: -0.08em;
}
.cd-section h2 span {
  display: block;
  margin-bottom: 0.5%;
  font-family: "Uni Sans Thin CAPS";
  font-weight: 400;
  font-size: 2.8rem;
  letter-spacing: 0.06em;
}
.cd-section p {
  margin: 2% 0 0;
  padding: 0 25%;
  font-family: "SpL";
  font-weight: 400;
  font-size: 2.5rem;
  line-height: 1.4;
  word-break: keep-all;
  letter-spacing: -0.05em;
}
.cd-section p br {
  display: none;
}
.cd-section:first-of-type > div {
  background-color: #2b334f;
}
.cd-section:first-of-type > div::before {
  /* alert -> all scrolling effects are not visible on small devices */
  content: '';
  position: absolute;
  width: 100%;
  text-align: center;
  top: 20px;
  z-index: 2;
  font-weight: bold;
  font-size: 1.3rem;
  text-transform: uppercase;
  color: #6a7083;
}
.cd-section:nth-of-type(2) > div {
  background-color: #2e5367;
}
.cd-section:nth-of-type(3) > div {
  background-color: #267481;
}
.cd-section:nth-of-type(4) > div {
  background-color: #fcb052;
}
.cd-section:nth-of-type(5) > div {
  background-color: #f06a59;
}
[data-animation="parallax"] .cd-section > div, [data-animation="fixed"] .cd-section > div, [data-animation="opacity"] .cd-section > div {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
[data-animation="parallax"] .cd-section:first-of-type > div, [data-animation="fixed"] .cd-section:first-of-type > div, [data-animation="opacity"] .cd-section:first-of-type > div {
  background-image: url("../img/img-1.jpg");
}
[data-animation="parallax"] .cd-section:nth-of-type(2) > div, [data-animation="fixed"] .cd-section:nth-of-type(2) > div, [data-animation="opacity"] .cd-section:nth-of-type(2) > div {
  background-image: url("../img/img-2.jpg");
}
[data-animation="parallax"] .cd-section:nth-of-type(3) > div, [data-animation="fixed"] .cd-section:nth-of-type(3) > div, [data-animation="opacity"] .cd-section:nth-of-type(3) > div {
  background-image: url("../img/img-3.jpg");
}
[data-animation="parallax"] .cd-section:nth-of-type(4) > div, [data-animation="fixed"] .cd-section:nth-of-type(4) > div, [data-animation="opacity"] .cd-section:nth-of-type(4) > div {
  background-image: url("../img/img-4.jpg");
}
[data-animation="parallax"] .cd-section:nth-of-type(5) > div, [data-animation="fixed"] .cd-section:nth-of-type(5) > div, [data-animation="opacity"] .cd-section:nth-of-type(5) > div {
  background-image: url("../img/img-5.jpg");
}

@media screen and (max-width: 1920px) {
	.cd-section .left-layout {
	  width: 45.5%;
	  background-position: 50% 20%;
	}
	.cd-section .right-layout {
	  width: 54.5%;
	}
	.cd-section .about-main-text {
	  max-width: 404px;
	}
	.cd-section .about-main-text h2 img {
	  height: 55px;
	}
	.cd-section .about-main-text p {
	  font-size: 1.7rem;
	  line-height: 1.5;
	}
	.cd-section h2 {
	  font-size: 5rem;
	}
	.cd-section h2 span {
	  font-size: 2rem;
	}
	.cd-section p {
	  padding: 0 29%;
	  font-size: 2rem;
	  line-height: 1.5;
	}
}

@media screen and (max-width: 1280px) {
	.cd-section .left-layout {
	  width: 45%;
	}
	.cd-section .right-layout {
	  width: 55%;
	}
	.cd-section .about-main-text {
	  max-width: 440px;
	}
	.cd-section .about-main-text h2 img {
	  height: 45px;
	}
	.cd-section .about-main-text p {
	  font-size: 1.5rem;
	}
	.cd-section h2 {
	  font-size: 4.6rem;
	}
	.cd-section h2 span {
	  font-size: 1.7rem;
	}
	.cd-section p {
	  padding: 0 26%;
	  font-size: 1.7rem;
	}
}

@media screen and (max-width: 1024px) {
	.cd-section .left-layout {
	  width: 50%;
	}
	.cd-section .right-layout {
	  width: 50%;
	}
	.cd-section .about-main-text {
	  max-width: 309px;
	}
	.cd-section .about-main-text h2 img {
	  height: 35px;
	}
	.cd-section .about-main-text p {
	  margin: 4% 0 0;
	  font-size: 1.3rem;
	}
	.cd-section h2 {
	  font-size: 4rem;
	}
	.cd-section h2 span {
	  font-size: 1.5rem;
	}
	.cd-section p {
	  padding: 0 21%;
	  font-size: 1.5rem;
	}
}

@media screen and (max-width: 768px) {
	.cd-section, .cd-section .left-layout > div {
	  height: auto;
	}
	.cd-section .left-layout {
	  width: 100%;
	  height: 936px;
	  background-position: 50% 50%;
	}
	.cd-section .left-layout02 {
	  background-position: 50% 25%;
	}
	.cd-section .right-layout {
	  display: block;
	  width: 100%;
	  height: auto;
	}
	.cd-section .text-group {
		display: block;
		padding: 13% 26% 14%;
	}
	.cd-section h2 {
	  font-size: 3.5rem;
	}
	.cd-section h2 span {
	  font-size: 1.3rem;
	}
	.cd-section p {
	  margin: 3% 0 0;
	  padding: 0;
	  font-size: 1.4rem;
	}
}

@media screen and (max-width: 500px) {
	.cd-section .about-main-text {
	  max-width: 100%;
	  right: auto;
	  bottom: 6%;
	  left: 50%;
	  transform: translateX(-50%);
	  text-align: center;
	}
	.cd-section .about-main-text h2 {
	  text-align: center;
	}
	.cd-section .about-main-text h2 img {
	  /*height: 23px;*/
	}
	.cd-section .about-main-text p {
	  margin: 7% -29% 0;
	}
	.cd-section .left-layout {
	  height: 500px;
	}
	.cd-section .text-group {
		padding: 13% 13% 14%;
	}
	.cd-section h2 {
	  font-size: 3rem;
	}
	.cd-section h2 span {
	  margin-bottom: 2%;
	  font-size: 1.1rem;
	}
}

@media screen and (max-width: 360px) {
	.cd-section .about-main-text h2 img {
	  height: 35px;
	}
	.cd-section .about-main-text p {
	  font-size: 1.2rem;
	}
	.cd-section .left-layout {
	  height: 480px;
	}
	.cd-section .text-group {
		padding: 10% 11% 11%;
	}
	.cd-section h2 {
	  font-size: 2.8rem;
	}
	.cd-section h2 span {
	  font-size: 1rem;
	}
	.cd-section p {
	  margin: 3% 0 0;
	  font-size: 1.3rem;
	}
}

@media only screen and (min-width: 1050px) {
  [data-hijacking="on"] .cd-section {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  [data-hijacking="on"] .cd-section > div {
    visibility: visible;
  }
  [data-hijacking="off"] .cd-section > div {
    opacity: 0;
  }
  [data-animation="rotate"] .cd-section {
    /* enable a 3D-space for children elements */
    -webkit-perspective: 1800px;
    -moz-perspective: 1800px;
    perspective: 1800px;
  }
  [data-hijacking="on"][data-animation="rotate"] .cd-section:not(:first-of-type) {
    -webkit-perspective-origin: center 0;
    -moz-perspective-origin: center 0;
    perspective-origin: center 0;
  }
  [data-animation="scaleDown"] .cd-section > div, [data-animation="gallery"] .cd-section > div, [data-animation="catch"] .cd-section > div {
    box-shadow: 0 0 0 rgba(25, 30, 46, 0);
  }
  [data-animation="opacity"] .cd-section.visible > div {
    z-index: 1;
  }
}

@media only screen and (min-width: 1050px) {
  .cd-section:first-of-type > div::before {
    display: none;
  }
}
@media only screen and (min-width: 1050px) {
  .cd-section > div {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    /* Force Hardware Acceleration */
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  [data-hijacking="on"] .cd-section > div {
    position: absolute;
  }
  [data-animation="rotate"] .cd-section > div {
    -webkit-transform-origin: center bottom;
    -moz-transform-origin: center bottom;
    -ms-transform-origin: center bottom;
    -o-transform-origin: center bottom;
    transform-origin: center bottom;
  }
}

.cd-vertical-nav {
  /* lateral navigation */
  position: fixed;
  z-index: 1;
  left: 4.5%;
  top: 50%;
  bottom: auto;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  display: none;
}
.cd-vertical-nav a {
  display: block;
  height: 40px;
  width: 40px;
  /* image replace */
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  background: url(../img/cd-icon-arrow.svg) no-repeat center center;
}
.cd-vertical-nav a.cd-prev {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
  margin-bottom: 10px;
}
.cd-vertical-nav a.inactive {
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity 0.2s 0s, visibility 0s 0.2s;
  -moz-transition: opacity 0.2s 0s, visibility 0s 0.2s;
  transition: opacity 0.2s 0s, visibility 0s 0.2s;
}
@media only screen and (min-width: 1050px) {
  .cd-vertical-nav {
    display: block;
  }
}