/*! normalize.css v2.1.0 | MIT License | git.io/normalize */
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary {
  display: block; }

audio, canvas, video {
  display: inline-block; }

audio:not([controls]) {
  display: none;
  height: 0; }

[hidden] {
  display: none; }

html {
  font-family: sans-serif;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%; }

body {
  margin: 0; }

a:focus {
  outline: thin dotted; }

a:active, a:hover {
  outline: 0; }

abbr[title] {
  border-bottom: 1px dotted; }

b, strong {
  font-weight: bold; }

dfn {
  font-style: italic; }

hr {
  box-sizing: content-box;
  height: 0; }

mark {
  background: #ff0;
  color: #000; }

code, kbd, pre, samp {
  font-family: monospace, serif;
  font-size: 1em; }

pre {
  white-space: pre-wrap; }

q {
  quotes: "\201C" "\201D" "\2018" "\2019"; }

small {
  font-size: 80%; }

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

img {
  border: 0; }

svg:not(:root) {
  overflow: hidden; }

figure {
  margin: 0; }

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  border: 0;
  padding: 0; }

button, input, select, textarea {
  font-family: inherit;
  font-size: 100%;
  margin: 0; }

button, input {
  line-height: normal; }

button, select {
  text-transform: none; }

button, html input[type="button"], input[type="reset"], input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer; }

button[disabled], html input[disabled] {
  cursor: default; }

input[type="checkbox"], input[type="radio"] {
  box-sizing: border-box;
  padding: 0; }

input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box; }

input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

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

textarea {
  overflow: auto;
  vertical-align: top; }

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

.ir {
  background-color: transparent;
  border: 0;
  overflow: hidden;
  *text-indent: -9999px; }

.ir:before {
  content: "";
  display: block;
  width: 0;
  height: 150%; }

.hidden {
  display: none !important;
  visibility: hidden; }

.visually-hidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

.visually-hidden.focusable:active, .visually-hidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto; }

.invisible {
  visibility: hidden; }

.clearfix {
  *zoom: 1; }

.clearfix:before, .clearfix:after {
  content: " ";
  display: table; }

.clearfix:after {
  clear: both; }

.push {
  margin: 0.5em; }

.push--left {
  margin-left: 0.5em !important; }

.push--right {
  margin-right: 0.5em !important; }

.push--top {
  margin-top: 0.5em !important; }

.push--bottom {
  margin-bottom: 0.5em !important; }

.flush--left {
  margin-left: 0 !important; }

.flush--right {
  margin-right: 0 !important; }

.flush--top {
  margin-top: 0 !important; }

.flush--bottom {
  margin-bottom: 0 !important; }

body {
  font-family: Helvetica, Arial, sans-serif;
  line-height: 1.5;
  background-color: #fff;
  color: #292f36; }

h1, h2, h3, h4, h5, h6 {
  font-family: Helvetica, Arial, sans-serif;
  font-weight: bold;
  color: #1e2328;
  text-rendering: optimizelegibility; }

h1, h2, h3, h4, .alpha, .beta, .gamma, .delta {
  line-height: 1.25; }

h1, .alpha {
  font-size: 2em; }

h2, .beta {
  font-size: 1.5em; }

h3, .gamma {
  font-size: 1.25em;
  font-weight: normal; }

h4, .delta {
  font-size: 1.125em; }

.peta {
  font-size: 5.25em; }

.tera {
  font-size: 4.5em; }

.giga {
  font-size: 3.5em; }

.mega {
  font-size: 2.5em; }

.micro {
  font-size: 0.9em; }

.nano {
  font-size: 0.8em; }

.pico {
  font-size: 0.75em; }

@media screen and (min-width: 40em) {
  body {
    font-size: 104%; }
 }

@media screen and (min-width: 50em) {
  body {
    font-size: 108%; }
 }

a {
  text-decoration: none;
  -webkit-transition: border-color 0.2s linear;
  transition: border-color 0.2s linear;
  color: #292f36; }

a:hover, a:focus {
  border-color: #ff6b6b; }

a:target, a:focus {
  outline: 0; }

code[class*="language-"], pre[class*="language-"] {
  color: #f8f8f2;
  text-shadow: 0 1px rgba(0, 0, 0, 0.3);
  font-family: Consolas, Monaco, 'Andale Mono', monospace;
  direction: ltr;
  text-align: left;
  white-space: pre;
  word-spacing: normal;
  -moz-tab-size: 4;
  -o-tab-size: 4;
  tab-size: 4;
  -webkit-hyphens: none;
  -moz-hyphens: none;
  -ms-hyphens: none;
  hyphens: none; }

pre[class*="language-"] {
  border-radius: 0.3em; }

:not(pre) > code[class*="language-"], pre[class*="language-"] {
  background: #1e2328; }

:not(pre) > code[class*="language-"] {
  padding: 0.1em;
  border-radius: 0.3em; }

.token.comment, .token.prolog, .token.doctype, .token.cdata {
  color: slategray; }

.token.punctuation {
  color: #f8f8f2; }

.namespace {
  opacity: 0.7; }

.token.property, .token.tag {
  color: #ff6b6b; }

.token.boolean, .token.number {
  color: #ae81ff; }

.token.selector, .token.attr-name, .token.string {
  color: #c7f464; }

.token.operator, .token.entity, .token.url, .language-css .token.string, .style .token.string {
  color: #f8f8f2; }

.token.atrule, .token.attr-value {
  color: #e6db74; }

.token.keyword {
  color: #4ecdc4; }

.token.regex, .token.important {
  color: #fd971f; }

.token.important {
  font-weight: bold; }

.token.entity {
  cursor: help; }

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

body {
  margin: 0; }

.container {
  max-width: 41em;
  margin: 0 auto;
  padding: 0 1.5em; }

.container--wide {
  max-width: 51em; }

.block {
  margin-bottom: 1.5em; }

.block--mini {
  margin-bottom: 0.5em; }

.main {
  margin-top: 1.5em; }

.grid {
  margin-left: -1em;
  margin-bottom: 0;
  *zoom: 1;
  list-style: none; }

.grid:before, .grid:after {
  content: " ";
  display: table; }

.grid:after {
  clear: both; }

.grid--rev > .grid__item {
  float: right; }

.grid > .grid {
  margin-left: 0; }

.grid__item {
  float: left;
  padding-left: 1em; }

.one-whole {
  width: 100%; }

.one-half {
  width: 50%; }

.one-third {
  width: 33.333%; }

.two-thirds {
  width: 66.666%; }

.one-quarter {
  width: 25%; }

.two-quarters {
  width: 50%; }

.three-quarters {
  width: 75%; }

.one-fifth {
  width: 20%; }

.two-fifths {
  width: 40%; }

.three-fifths {
  width: 60%; }

.four-fifths {
  width: 80%; }

@media screen and (min-width: 40em) {
  .lap--one-whole {
    width: 100%; }

  .lap--one-half {
    width: 50%; }

  .lap--one-third {
    width: 33.333%; }

  .lap--two-thirds {
    width: 66.666%; }

  .lap--one-quarter {
    width: 25%; }

  .lap--two-quarters {
    width: 50%; }

  .lap--three-quarters {
    width: 75%; }

  .lap--one-fifth {
    width: 20%; }

  .lap--two-fifths {
    width: 40%; }

  .lap--three-fifths {
    width: 60%; }

  .lap--four-fifths {
    width: 80%; }
 }

@media screen and (min-width: 50em) {
  .desk--one-whole {
    width: 100%; }

  .desk--one-half {
    width: 50%; }

  .desk--one-third {
    width: 33.333%; }

  .desk--two-thirds {
    width: 66.666%; }

  .desk--one-quarter {
    width: 25%; }

  .desk--two-quarters {
    width: 50%; }

  .desk--three-quarters {
    width: 75%; }

  .desk--one-fifth {
    width: 20%; }

  .desk--two-fifths {
    width: 40%; }

  .desk--three-fifths {
    width: 60%; }

  .desk--four-fifths {
    width: 80%; }
 }

pre, code {
  font-family: Consolas, Monaco, 'Andale Mono', monospace;
  direction: ltr;
  text-align: left;
  white-space: pre;
  word-spacing: normal;
  -moz-tab-size: 4;
  -o-tab-size: 4;
  tab-size: 4;
  -webkit-hyphens: none;
  -moz-hyphens: none;
  -ms-hyphens: none;
  hyphens: none; }

pre {
  overflow: auto;
  padding: 1em;
  margin: 1.5em 0; }

code {
  font-size: 0.9em; }

@media screen and (min-width: 50em) {
  code {
    font-size: 0.8em; }
 }

:not(pre) > code[class*="language-"] {
  white-space: pre-wrap;
  white-space: -moz-pre-wrap;
  white-space: -pre-wrap;
  white-space: -o-pre-wrap;
  word-wrap: break-word; }

@font-face {
  font-family: 'icomoon';
  src: url('fonts/icomoon.eot'); }

@font-face {
  font-family: 'icomoon';
  src: url(data:application/font-woff;charset=utf-8;base64,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) format('woff'), url(data:application/x-font-ttf;charset=utf-8;base64,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) format('truetype');
  font-weight: normal;
  font-style: normal; }

.icon {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased; }

.icon--twitter:before {
  content: "\e000"; }

.icon--github:before {
  content: "\e001"; }

.icon--download:before {
  content: "\e002"; }

@media print {
  * {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important; }

  a, a:visited {
    text-decoration: underline; }

  a[href]:after {
    content: " (" attr(href) ")"; }

  abbr[title]:after {
    content: " (" attr(title) ")"; }

  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after {
    content: ""; }

  pre, blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }

  thead {
    display: table-header-group; }

  tr, img {
    page-break-inside: avoid; }

  img {
    max-width: 100% !important; }

  @page {
    margin: 0.5cm; }

  p, h2, h3 {
    orphans: 3;
    widows: 3; }

  h2, h3 {
    page-break-after: avoid; }

  .hide-from-print {
    display: none; }
 }

.nav {
  padding: 0;
  list-style: none;
  margin-bottom: 0;
  float: right; }

.nav__item {
  display: inline-block; }

@media screen and (min-width: 40em) {
  .nav__item {
    display: inline-block; }
 }

.nav__item:hover {
  background-color: rgba(78, 205, 196, 0.1); }

.nav__item a {
  display: inline-block;
  padding: 1em;
  border: 0; }

.btn {
  padding: 0.5em 1em;
  margin: 0;
  display: inline-block;
  border-radius: 0.25em;
  border: 1px solid rgba(41, 47, 54, 0.2);
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2) inset, 0 1px 2px -1px rgba(41, 47, 54, 0.2);
  text-decoration: none;
  text-align: center;
  -webkit-transition: background-color 0.2s linear;
  transition: background-color 0.2s linear; }

.btn--primary {
  color: #292f36;
  background-color: #4ecdc4; }

.btn--primary:hover, .btn--primary:focus {
  border: 1px solid rgba(41, 47, 54, 0.2);
  color: #292f36;
  background-color: #3ac7bd; }

.btn--primary:focus {
  border-color: #292f36;
  outline: 0; }

.btn--secondary {
  color: #fff;
  background-color: #ff6b6b;
  text-shadow: 1px 1px 1px rgba(41, 47, 54, 0.5); }

.btn--secondary:hover, .btn--secondary:focus {
  border: 1px solid rgba(41, 47, 54, 0.2);
  color: #fff;
  background-color: #ff5252; }

.btn--secondary:focus {
  border-color: #292f36;
  outline: 0; }

.btn--plain {
  border: 0;
  box-shadow: none;
  color: #556270; }

.btn:active {
  box-shadow: inset 0 1px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
  outline: 0; }

.btn--full {
  display: block; }

.island {
  margin-top: 1em;
  margin-bottom: 1em;
  padding: 0.5em;
  border-radius: 0.3em;
  background-color: #dee2e6; }

@media screen and (min-width: 40em) {
  .island {
    padding: 1em; }
 }

.island--large {
  margin-top: 2em;
  margin-bottom: 2em;
  padding: 1em; }

.feature {
  background-color: #4ecdc4;
  padding: 5em 0 2em 0;
  text-align: center; }

@media screen and (min-width: 50em) {
  .feature {
    padding-top: 5.5em;
    padding-bottom: 2.5em; }
 }

.feature a {
  text-decoration: underline;
  color: #292f36; }

.feature strong {
  color: #fff;
  font-weight: normal;
  text-shadow: 1px 1px 1px #292f36; }

.feature__title {
  font-size: 2.5em;
  color: #fff;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
  line-height: 1;
  display: block; }

@media (min-width: 30em) {
  .feature__title {
    font-size: 4.5em; }
 }

@media screen and (min-width: 65em) {
  .feature__title {
    font-size: 5.25em; }
 }

.feature__subtitle {
  font-size: 1em;
  font-weight: normal;
  color: #292f36;
  margin: 0; }

@media (min-width: 30em) {
  .feature__subtitle {
    line-height: 1.25;
    font-size: 1.125em; }
 }

@media screen and (min-width: 50em) {
  .feature__subtitle {
    line-height: 1.25;
    font-size: 1.25em;
    font-weight: normal; }
 }

.brand {
  display: inline-block;
  text-decoration: none;
  padding: 1em 0;
  color: #fff;
  -webkit-font-smoothing: antialiased; }

.brand__forename {
  font-weight: bold;
  color: #4ecdc4; }

.brand__surname {
  font-weight: normal;
  color: #fff; }

.header {
  background-color: #fff; }

.header__link {
  color: #fff;
  text-decoration: none;
  border: 0; }

.header__link:focus {
  outline: 0;
  background-color: rgba(78, 205, 196, 0.1); }

.header__link:hover .icon {
  color: #4ecdc4; }

.header--fixed {
  position: fixed;
  z-index: 10;
  right: 0;
  left: 0;
  top: 0; }

.footer {
  background-color: #292f36;
  border-top: 3px solid #4ecdc4;
  box-shadow: 0 2px 2px -1px #292f36 inset; }

.footer a {
  color: #fff;
  text-decoration: none;
  padding-top: 1em;
  padding-bottom: 1em; }

.btt {
  display: none;
  position: fixed;
  left: 0;
  bottom: 0;
  font-size: 0.9em;
  -webkit-transform: translateY(4em);
  -ms-transform: translateY(4em);
  transform: translateY(4em); }

@media screen and (min-width: 50em) {
  .btt {
    display: block; }
 }

@media screen and (min-width: 65em) {
  .btt {
    left: 0.5em; }
 }

.slide {
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out; }

.slide--reset {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0); }

.slide--up {
  -webkit-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
  transform: translateY(-100%); }

.icon:before {
  font-size: 0.9em;
  display: inline-block;
  height: 1em;
  width: 1em;
  line-height: 1; }

.icon--up:before {
  content: "\25B2"; }

.sharing__button {
  font-size: 0.8em; }

@media screen and (min-width: 40em) {
  .sharing__button {
    font-size: 0.9em; }
 }

@media screen and (min-width: 50em) {
  .sharing__button {
    font-size: 1em; }
 }

.question-set {
  border: 0;
  padding: 0;
  margin-bottom: 1.5em; }

.question-set__title {
  display: block;
  margin-bottom: 0.75em; }

.question-set__input {
  width: 100%;
  padding: 0.25em;
  border: 1px solid #a4afba; }

.question-set__input:focus {
  outline: 0;
  box-shadow: #4ecdc4 0 0 3px 0; }

.question-set__label {
  display: inline-block;
  margin-bottom: 0.25em; }

.question-set__label--block {
  display: block; }

.question-set__label input[type=radio] {
  margin-right: 0.75em; }

:not(pre) > code {
  background-color: #d0d5db;
  padding: 0.3em 0.2em 0.1em;
  border-radius: 0.25em; }

p + h2, p + h3 {
  margin-top: 1.5em; }

.complimentary {
  display: none; }

@media screen and (min-width: 40em) {
  .complimentary {
    display: inline; }
 }

.subdued {
  opacity: 0.6;
  text-shadow: none; }

a.subdued:hover {
  color: #fff; }

.downloads {
  margin-bottom: 1.5em; }

.animated {
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both; }

@-webkit-keyframes slideDown {
  0% {
    -webkit-transform: translateY(-100%); }

  100% {
    -webkit-transform: translateY(0); } }

@keyframes slideDown {
  0% {
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%); }

  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

.animated.slideDown {
  -webkit-animation-name: slideDown;
  animation-name: slideDown; }

@-webkit-keyframes slideUp {
  0% {
    -webkit-transform: translateY(0); }

  100% {
    -webkit-transform: translateY(-100%); } }

@keyframes slideUp {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0); }

  100% {
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%); } }

.animated.slideUp {
  -webkit-animation-name: slideUp;
  animation-name: slideUp; }

@-webkit-keyframes swingInX {
  0% {
    -webkit-transform: perspective(400px) rotateX(-90deg); }

  100% {
    -webkit-transform: perspective(400px) rotateX(0deg); } }

@keyframes swingInX {
  0% {
    -webkit-transform: perspective(400px) rotateX(-90deg);
            transform: perspective(400px) rotateX(-90deg); }

  100% {
    -webkit-transform: perspective(400px) rotateX(0deg);
            transform: perspective(400px) rotateX(0deg); } }

.animated.swingInX {
  -webkit-transform-origin: top;
  -ie-transform-origin: top;
  -ms-transform-origin: top;
      transform-origin: top;
  -webkit-backface-visibility: visible !important;
  -webkit-animation-name: swingInX;
  -moz-backface-visibility: visible !important;
  -moz-animation-name: swingInX;
  -o-backface-visibility: visible !important;
  -o-animation-name: swingInX;
  -webkit-backface-visibility: visible !important;
          backface-visibility: visible !important;
  -webkit-animation-name: swingInX;
          animation-name: swingInX; }

@-webkit-keyframes swingOutX {
  0% {
    -webkit-transform: perspective(400px) rotateX(0deg); }

  100% {
    -webkit-transform: perspective(400px) rotateX(-90deg); } }

@keyframes swingOutX {
  0% {
    -webkit-transform: perspective(400px) rotateX(0deg);
            transform: perspective(400px) rotateX(0deg); }

  100% {
    -webkit-transform: perspective(400px) rotateX(-90deg);
            transform: perspective(400px) rotateX(-90deg); } }

.animated.swingOutX {
  -webkit-transform-origin: top;
  -webkit-animation-name: swingOutX;
  -webkit-backface-visibility: visible !important;
  -moz-animation-name: swingOutX;
  -moz-backface-visibility: visible !important;
  -o-animation-name: swingOutX;
  -o-backface-visibility: visible !important;
  -webkit-animation-name: swingOutX;
          animation-name: swingOutX;
  -webkit-backface-visibility: visible !important;
          backface-visibility: visible !important; }

@-webkit-keyframes flipInX {
  0% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    opacity: 0; }

  100% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    opacity: 1; } }

@keyframes flipInX {
  0% {
    -webkit-transform: perspective(400px) rotateX(90deg);
            transform: perspective(400px) rotateX(90deg);
    opacity: 0; }

  100% {
    -webkit-transform: perspective(400px) rotateX(0deg);
            transform: perspective(400px) rotateX(0deg);
    opacity: 1; } }

.animated.flipInX {
  -webkit-backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
  -moz-backface-visibility: visible !important;
  -moz-animation-name: flipInX;
  -o-backface-visibility: visible !important;
  -o-animation-name: flipInX;
  -webkit-backface-visibility: visible !important;
          backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
          animation-name: flipInX; }

@-webkit-keyframes flipOutX {
  0% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    opacity: 1; }

  100% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    opacity: 0; } }

@keyframes flipOutX {
  0% {
    -webkit-transform: perspective(400px) rotateX(0deg);
            transform: perspective(400px) rotateX(0deg);
    opacity: 1; }

  100% {
    -webkit-transform: perspective(400px) rotateX(90deg);
            transform: perspective(400px) rotateX(90deg);
    opacity: 0; } }

.animated.flipOutX {
  -webkit-animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  -moz-animation-name: flipOutX;
  -moz-backface-visibility: visible !important;
  -o-animation-name: flipOutX;
  -o-backface-visibility: visible !important;
  -webkit-animation-name: flipOutX;
          animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
          backface-visibility: visible !important; }

@-webkit-keyframes bounceInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-200px); }

  60% {
    opacity: 1;
    -webkit-transform: translateY(30px); }

  80% {
    -webkit-transform: translateY(-10px); }

  100% {
    -webkit-transform: translateY(0); } }

@keyframes bounceInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-200px);
            transform: translateY(-200px); }

  60% {
    opacity: 1;
    -webkit-transform: translateY(30px);
            transform: translateY(30px); }

  80% {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px); }

  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

.animated.bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown; }

@-webkit-keyframes bounceOutUp {
  0% {
    -webkit-transform: translateY(0); }

  30% {
    opacity: 1;
    -webkit-transform: translateY(20px); }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-200px); } }

@keyframes bounceOutUp {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0); }

  30% {
    opacity: 1;
    -webkit-transform: translateY(20px);
            transform: translateY(20px); }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-200px);
            transform: translateY(-200px); } }

.animated.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp; }

/* ==================================
b a s e 
================================== */
body {
  margin: 0;
  padding: 0;
  font-size: 13px; }

/* ==================================
h e a d e r
================================== */
.headroom {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  -webkit-transition: all 0.2s ease-in-out;
          transition: all 0.2s ease-in-out; }

.headroom--unpinned {
  top: -100px; }

.headroom--pinned {
  top: 0; }

header {
  box-shadow: 0px 9px 3px -3px rgba(0, 0, 0, 0.05);
  -webkit-box-shadow: 0px 9px 3px -3px rgba(0, 0, 0, 0.05);
  -moz-box-shadow: 0px 9px 3px -3px rgba(0, 0, 0, 0.05); }

.headercontent {
  width: 1000px;
  margin: 0 auto;
  padding-top: 20px;
  /* ==================================
g l o b a l n a v i
================================== */ }
  .headercontent h1 {
    width: 100px;
    float: left;
    margin-bottom: 20px; }
    .headercontent h1 img {
      width: 100%; }
  .headercontent .globalnavi {
    float: right;
    width: 613px;
    font-size: 14px;
    padding-top: 6px; }
    .headercontent .globalnavi li {
      border-right: 1px solid #ccc;
      float: left;
      padding-left: 20px;
      padding-right: 20px; }

.img-holder p {
  z-index: 100; }

/* ==================================
s e c t i o n 
================================== */
section {
  width: 1000px;
  padding-top: 50px;
  padding-bottom: 50px;
  margin: 0 auto; }

@media screen and (max-width: 640px) {
  section {
    width: 100%;
    padding: 20px;
    margin: 0 auto; }
 }

h2 {
  text-align: center;
  margin-bottom: 50px; }

h3 {
  font-size: 18px;
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: 1px dotted #ccc;
  text-align: center;
  font-weight: bold; }

.text_center {
  text-align: center;
  margin-bottom: 50px;
  line-height: 2em; }

.list2 li {
  border: 1px solid #0c65af;
  padding: 20px;
  float: left;
  margin-left: 15px;
  margin-right: 15px;
  width: 48.5%;
  margin-bottom: 30px; }
  .list2 li h4 {
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px dotted #ccc;
    font-size: 18px; }
  .list2 li h5 {
    font-weight: bold;
    font-size: 14px;
    margin-bottom: 10px; }
  .list2 li img {
    width: 100%; }
  .list2 li p {
    line-height: 2em;
    padding-bottom: 20px; }
  .list2 li .pb10 {
    line-height: 1em;
    padding-bottom: 10px;
    margin-bottom: 10px; }
.list2 li:first-child {
  margin-left: 0px; }
.list2 li:last-child {
  margin-right: 0px; }

.list3 li {
  border: 1px solid #0c65af;
  padding: 20px;
  float: left;
  margin-left: 15px;
  margin-right: 15px;
  margin-bottom: 30px;
  width: 31.3%; }
  .list3 li h4 {
    font-size: 18px;
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px dotted #ccc; }
  .list3 li h5 {
    font-weight: bold;
    font-size: 14px;
    margin-bottom: 10px; }
  .list3 li img {
    width: 100%; }
  .list3 li p {
    line-height: 2em;
    padding-bottom: 20px; }
  .list3 li .pb10 {
    line-height: 1em;
    padding-bottom: 10px;
    margin-bottom: 10px; }
.list3 li:first-child {
  margin-left: 0px; }
.list3 li:last-child {
  margin-right: 0px; }

@media screen and (max-width: 640px) {
  .list2 li {
    float: none;
    margin-left: 0px;
    margin-right: 0px;
    width: 100%; }

  .list3 li {
    float: none;
    margin-left: 0px;
    margin-right: 0px;
    width: 100%; }
 }

section table {
  width: 100%;
  margin-bottom: 50px; }

section th, section td {
  padding: 10px;
  border: 1px solid #ddd; }

section th {
  background: #f4f4f4; }

/*----------------------------------------------------
    .demo01
----------------------------------------------------*/
section th {
  width: 30%;
  text-align: left; }

@media screen and (max-width: 640px) {
  .company th, .company td {
    width: 100%;
    display: block;
    border-top: none; }

  .company tr:first-child th {
    border-top: 1px solid #ddd; }
 }

form {
  width: 80%;
  margin: 0 auto; }
  form dl dt {
    font-size: 16px;
    margin-bottom: 10px; }
  form .text01 {
    border: 0;
    padding: 10px;
    font-size: 1.3em;
    font-family: Arial, sans-serif;
    color: #aaa;
    border: solid 1px #ccc;
    margin: 0 0 20px;
    width: 100%; }
  form .text02 {
    border: 0;
    height: 100px;
    padding: 10px;
    font-size: 1.3em;
    font-family: Arial, sans-serif;
    color: #aaa;
    border: solid 1px #ccc;
    margin: 0 0 20px;
    width: 100%; }

.wpcf7-submit {
  text-align: center;
  background-color: #3bb3e0;
  padding: 10px;
  position: relative;
  text-decoration: none;
  color: #fff;
  margin: 0 auto;
  width: 100px;
  border: none;
  margin-bottom: 30px;
  background-image: linear-gradient(bottom, #2ca0ca 0%, #3eb8e5 100%);
  background-image: -webkit-linear-gradient(bottom, #2ca0ca 0%, #3eb8e5 100%);
  background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #2ca0ca), color-stop(1, #3eb8e5));
  -o-box-shadow: inset 0px 1px 0px #7fd2f1, 0px 6px 0px #156785;
  box-shadow: inset 0px 1px 0px #7fd2f1, 0px 6px 0px #156785;
  border-radius: 5px; }

.wpcf7-submit::before {
  background-color: #072239;
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  padding-left: 2px;
  padding-right: 2px;
  padding-bottom: 4px;
  left: -2px;
  top: 5px;
  z-index: -1;
  border-radius: 6px;
  -o-box-shadow: 0px 1px 0px #fff;
  box-shadow: 0px 1px 0px #fff; }

.wpcf7-submit:active {
  color: #156785;
  text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.3);
  background: #2ca0ca;
  -o-box-shadow: inset 0px 1px 0px #7fd2f1, inset 0px -1px 0px #156785;
  box-shadow: inset 0px 1px 0px #7fd2f1, inset 0px -1px 0px #156785;
  top: 7px; }

.wpcf7-submit:active::before {
  top: -2px; }

.w100 {
  width: 100%; }

.contactbutton {
  clear: both;
  width: 100%;
  text-align: center;
  background-color: #3bb3e0;
  padding: 10px;
  position: relative;
  text-decoration: none;
  color: #fff;
  border: none;
  margin-bottom: 30px;
  background-image: linear-gradient(bottom, #2ca0ca 0%, #3eb8e5 100%);
  background-image: -webkit-linear-gradient(bottom, #2ca0ca 0%, #3eb8e5 100%);
  background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #2ca0ca), color-stop(1, #3eb8e5));
  -o-box-shadow: inset 0px 1px 0px #7fd2f1, 0px 6px 0px #156785;
  box-shadow: inset 0px 1px 0px #7fd2f1, 0px 6px 0px #156785;
  border-radius: 5px; }
  .contactbutton a {
    text-decoration: none;
    color: #fff; }

.contactbutton::before {
  background-color: #072239;
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  padding-left: 2px;
  padding-right: 2px;
  padding-bottom: 4px;
  left: -2px;
  top: 5px;
  z-index: -1;
  border-radius: 6px;
  -o-box-shadow: 0px 1px 0px #fff;
  box-shadow: 0px 1px 0px #fff; }

.contactbutton:active {
  color: #fff;
  text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.3);
  background: #2ca0ca;
  -o-box-shadow: inset 0px 1px 0px #7fd2f1, inset 0px -1px 0px #156785;
  box-shadow: inset 0px 1px 0px #7fd2f1, inset 0px -1px 0px #156785;
  top: 7px; }

.contactbutton:active::before {
  top: -2px; }

.mb80px {
  margin-bottom: 80px; }

.groupcompany {
  border: 3px solid #5d92d8;
  padding: 20px;
  margin-bottom: 30px; }
  .groupcompany h4 {
    text-align: center;
    font-size: 16px;
    border-bottom: 1px dotted #ccc;
    padding-bottom: 10px;
    margin-bottom: 10px; }
  .groupcompany ul.company1 li {
    text-align: center; }
  .groupcompany ul.company2 li {
    float: left;
    width: 257px;
    margin-left: 110px;
    margin-right: 110px; }
  .groupcompany ul.company3 li {
    float: left;
    width: 278px;
    margin-left: 20px;
    margin-right: 20px; }

.groupcompany:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden; }

.groupcompany2 {
  margin-bottom: 50px; }
  .groupcompany2 ul li {
    float: left;
    width: 293px;
    margin-left: 20px;
    margin-right: 20px; }

.groupcompany2:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden; }

@media screen and (max-width: 640px) {
  .groupcompany {
    border: 3px solid #5d92d8;
    padding: 20px;
    margin-bottom: 30px;
    width: 100%; }
    .groupcompany h4 {
      text-align: center;
      font-size: 16px;
      border-bottom: 1px dotted #ccc;
      padding-bottom: 10px;
      margin-bottom: 10px; }
    .groupcompany ul.company1 li {
      text-align: center; }
      .groupcompany ul.company1 li img {
        width: 100%; }
    .groupcompany ul.company2 li {
      float: none;
      width: 100%;
      margin: 0px; }
      .groupcompany ul.company2 li img {
        width: 100%; }
    .groupcompany ul.company3 li {
      float: none;
      width: 100%;
      margin: 0px; }
      .groupcompany ul.company3 li img {
        width: 100%; }

  .groupcompany2 {
    margin-bottom: 50px; }
    .groupcompany2 ul li {
      float: none;
      width: 100%;
      margin: 0px; }
      .groupcompany2 ul li img {
        width: 100%; }

  .w100_smt {
    width: 100%; }
 }
