@charset "UTF-8";
/* CSS Document *

/* Styling */
body {
  font-family: sans-serif;
	background-color: #AAD0E5;
	color: white;
  position: relative;
  margin:0;
}

h1{
  font-family: serif;
  z-index: 10;
}

a{
  color:white;
}

a h1, section>a{
  text-decoration: none;
}


/* Nav */
/* The side navigation menu */
.sidenav {
  white-space: nowrap;
    height: 100%; /* 100% Full-height */
    width: 0; /* 0 width - change this with JavaScript */
    position: fixed; /* Stay in place */
    z-index: 99; /* Stay on top */
    top: 0; /* Stay at the top */
    left: 0;
    background-color: #b9acf0; 
    overflow-x: hidden; /* Disable horizontal scroll */
    padding-top: 60px; /* Place content 60px from the top */
    transition: 0.5s; /* 0.5 second transition effect to slide in the sidenav */
}

/* The navigation menu links */
.sidenav a {
    padding: 8px 8px 8px 32px;
    text-decoration: none;
    font-size: 25px;
    color: #FFFFFF;
    display: block;
    transition: 0.3s;
}

/* When you mouse over the navigation links, change their color */
.sidenav a:hover {
    color: #EDEDED;
}

/* Position and style the close button (top right corner) */
.sidenav .closebtn {
    position: absolute;
    top: 0;
    right: 25px;
    font-size: 36px;
    margin-left: 50px;
}

/* Style page content - use this if you want to push the page content to the right when you open the side navigation */
#main {
    transition: margin-left .5s;
    padding: 0;
}


/*floating objects*/
.floating{
	position: absolute;
}

#circle{
	top: 83vh;
	left:-100px;
  width:45%;
  opacity: 0.5;
}

#dots{
	top:23vh;
	right:-200px;
	width:50%;
}

#frame{
	/*top: 142vh;
	right:-550px;*/
  width:100%;
  right: -70%;
  margin-top: 50%;
}

/* Hamburger */
nav{
	position: absolute;
	top:60px;
	left:70px;
	z-index: 98;
}

nav div, nav{
	width:50px;
	height:50px;
}

nav div {
	background-color:#b9acf0;
	margin-top:-50px;
}

#hamburger-icon {
  width: 38px;
  height: 18px;
  position: relative;
  display: block;
  margin: 36px auto 18px auto;
}
#hamburger-icon .line {
  display: block;
  background: #ecf0f1;
  width: 37px;
  height: 4px;
  position: absolute;
  left: 0;
  border-radius: 2px;
  transition: all 0.4s;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
}
#hamburger-icon .line.line-1 {
  top: 0;
}
#hamburger-icon .line.line-2 {
  top: 50%;
}
#hamburger-icon .line.line-3 {
  top: 100%;
}
#hamburger-icon:hover .line-1, #hamburger-icon:focus .line-1 {
  transform: translateY(-2px);
  -webkit-transform: translateY(-2px);
  -moz-transform: translateY(-2px);
}
#hamburger-icon:hover .line-3, #hamburger-icon:focus .line-3 {
  transform: translateY(2px);
  -webkit-transform: translateY(2px);
  -moz-transform: translateY(2px);
}
#hamburger-icon.active .line-1 {
  transform: translateY(9px) translateX(0) rotate(45deg);
  -webkit-transform: translateY(9px) translateX(0) rotate(45deg);
  -moz-transform: translateY(9px) translateX(0) rotate(45deg);
}
#hamburger-icon.active .line-2/*, #hamburger-icon.active .line-1, #hamburger-icon.active .line-3 */{
  opacity: 0;
}
#hamburger-icon.active .line-3 {
  transform: translateY(-9px) translateX(0) rotate(-45deg);
  -webkit-transform: translateY(-9px) translateX(0) rotate(-45deg);
  -moz-transform: translateY(-9px) translateX(0) rotate(-45deg);
}

#animatedContent {
  position: absolute; 
  left: 0; 
  top: 0; 
  width: 100%; 
  height: 100%; 
/*  overflow: hidden; */
  z-index: -2;
}
/* 
.flex{
  display:flex;
  flex-direction: column;
}
*/
sub{
  font-size:1em;
  padding:1em;
  background: rgba(0,0,0,0.4);
  z-index:3;
  display:block;
  
  /*margin:0 -2em -2em -2em*/
  position: absolute;
  bottom:0;
  left:0;
  right:0;
}

/*slider*/
#slider, #slider2 {
  position: absolute;
  bottom:0;
  top:0;
  overflow: hidden;
  margin: auto;
  border-radius: 4px;
 /* flex-shrink: 2;*/
}

#slider ul, #slider2 ul {
  position: relative;
  margin: 0;
  padding: 0;
  /*height: 80%;*/
  list-style: none;
}

#slider ul li ,#slider2 ul li {
  position: relative;
  display: block;
  float: left;
  margin: 0;
  padding: 0;
  /*width: 100%;*/
  /*background: #ccc;*/
  text-align: center;
  line-height: 300px;
}

#slider ul li img{
  max-width: 501px;
  max-height:501px;
}

a.control_prev, a.control_next {
  position: absolute;
  top: 40%;
  z-index: 999;
  display: block;
  padding: 4% 3%;
  width: auto;
  height: auto;
  /*background: #2a2a2a;*/
  color: #fff;
  text-decoration: none;
  font-weight: 600;
  font-size: 18px;
  opacity: 0.8;
  cursor: pointer;
}

a.control_prev:hover, a.control_next:hover {
  opacity: 1;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

a.control_prev {
  border-radius: 0 2px 2px 0;
}

a.control_next {
  right: 0;
  border-radius: 2px 0 0 2px;
}


/*snapping*/
.docScroller {
  overflow-x: hidden;
  position: absolute;
  top: 0;
  width: 100%;
  height: 100vh;
  overflow: auto;
          scroll-snap-type: y mandatory;
          margin:0;
}


body.pc .docScroller {
    scroll-snap-type: none;

}


ul.content{
          margin:0;
}


ul.content>li {
  float: left;
  min-width: 100vw;
  min-height: 100vh;
  display:flex;
  justify-content: center;
  align-items:center;
  scroll-snap-align: start;
}


section {
	background-color: #b9acf0;
 /* max-height:80%;*/
	margin:auto;
	position: relative;
  padding:2em;
  width:80vh;height:80vh;
}

section a>img{
  max-width:calc(100% - 2em);
  max-height:100%;
  margin:auto;
  display:block;
}

section h1{
  font-size:3em;
  display:block;
  margin:0;margin-left:0.3em;
}

section.home{
font-size: 5vh;overflow: scroll;left:0;overflow:hidden;
padding:0.5em 1em;
}

section#coming h1{
  height:50%;
  font-size:7em;
  position:initial;
  padding:10vh;
  margin:0;
}

section.playful {
  width:70%;
  height:auto;
  background: none;
  position: relative;
}

#split img#mockup{
  max-height:80vh;width:auto;
}

#split img#split1{
  float:right;
  width:40vh;
  box-shadow: rgba(0,0,0,0.2) 5px 5px 15px;
  max-width:60vw;
  margin: 2em 0;
}
#split {
  display:flex;
  justify-content: space-around;
}

#split .square{
  right: 7rem;
left: 5rem;
height: 17rem;
width:auto !important;
}

#split div {float:right;margin-left: 4rem;}

#section1 h1{width:160px;float: left;}

#worder h1{width:200px;float: left;}

#worder img{
  width:calc(100% - 230px);margin:0;
  min-width: 14rem;
}

#istrain h1, #origin h1{
  width:280px;
  float:right;
}


#istrain, #origin{
  text-align: right;
}

#origin h1{
  width:220px;
  position: absolute;
  right:2rem;
}

#origin img{
  width:calc(100% - 120px);margin:0;
  min-width: 14rem;
}

#taiko h1, #taiko .square{
  z-index:1;
}

#taiko #slider2{
  position:relative;
}

#taiko h1 {
  bottom:1em;
  margin-left:0.5em;
  position: absolute;
}

#taiko .square{
  height:20%;
  top:40%;
}

#section2 {
  overflow: hidden;
}

.square{background-color: #b9acf0;position: absolute;top:0;left:0;height:100%;z-index: -1;}

#istrain .square, #origin .square{
  left:initial;
  right:0;
}

#section1 img {
  display: inline-block;
  width:calc(100% - 180px);margin:0;
  margin-left:-6%}

#istrain img{
  width:calc(100% - 300px);margin:0;
}

  /* On smaller screens, where height is less than 450px, change the style of the sidenav (less padding and a smaller font size) */
@media screen and (max-height: 450px) {
  .sidenav {padding-top: 15px;}
  .sidenav a {font-size: 18px;}
  #origin h1 {position: initial;}
}

  @media screen and (max-width:1580px) {
  #section1 img {margin-left:initial;
  }
}
@media screen and (orientation: portrait), screen and (max-width:1000px) {

  #split img#split1{
    float:none;
  }

  #split div{
    float:none;
    text-align: center;
    margin-left: 0;
  }

#slider {margin-top:2em;}
#slider img{
  position: absolute;
left: 0;
right: 0;
margin: auto;
}
#origin h1 {position: initial;}
  section#coming h1{font-size: 10vw;height:initial;padding:0;width:100%;}
  section h1{font-size: 1.5em;}
  section h1{position:initial;}
  section.contact h1{font-size:5vw;} 
  section, #section1 {display:block;left:0;padding:1em;}
  nav#mainNav div {
    background-color: #a392ec;
  }
  
  .page{
    height:initial;
  }
  section, section.playful{
    background-color: #b9acf0;
    max-height:initial;height:auto;margin-top:5vh;
    width:60%;
    text-align: left;
  }
#taiko h1{bottom:0;}
  #taiko{
    background: none;
  }
#section2 sub{position: relative;margin:auto -2em -2em -2em;padding:2em;padding-top:1em;margin-top:1em;}
.square {display:none;}
section.playful img, #section1 img, #istrain img{width:100%;display:block;margin:auto;}
section.playful h1 , #istrain h1{float:none;width:initial;margin-bottom:1em;
  display: inline-block;}
  section.playful a {text-decoration-style: none;}
  ul.content>li{
    height:initial;
    min-height:initial;
  }
  nav#mainNav{
    left:5vw;
  }
  .docScroller {
    -webkit-scroll-snap-type: initial;
        -ms-scroll-snap-type: initial;
            scroll-snap-type: initial;
  }


}
/*
@media screen and (max-width:1000px) {
  #section2 {
    width:80vh;
    height:80vh;
  }
}

@media screen and (orientation: portrait){
  #section2{
    height:auto;
    width:60%;
  }
}*/