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

@keyframes fadein {
  0%   { opacity: 0}
  100% { opacity: 1}
}

@keyframes translateY {
  0% {
    transform:translateY(3px);
    }
    100% {
    transform:translateY(0px);
    }
}

@keyframes shake {
    0% {
    transform:translateY(0);
    }
    30% {
    transform:translateY(0);
    }
    30.5% {
    transform:translateY(-20%);
    }
    31% {
    transform:translateY(0);
    }
    69.5% {
    transform:translateY(0);
    }
    70% {
    transform:translateY(-15%);
    }
    70.5% {
    transform:translateY(0);
    }
    80% {
    transform:translateY(0);
    }
    81% {
    transform:translateY(-25%);
    }
    81.5% {
    transform:translateY(0);
    }
    99.0% {
    transform:translateY(0);
    }
    99.5% {
        transform:translateY(-15%);
    }
    100% {
        transform:translateY(10px);
    }
}

@keyframes halfspin {
	0% {transform: rotate(0deg);}
	100% {transform: rotate(180deg);}
}


html{
background: rgba(255,255,255,1.00);
 cursor: none;}
body {
	margin: 0;
	padding-bottom: 30px;
	font-style: normal;
	font-weight: 400;
	height: 100%;
    min-height: 100vh;
    font-feature-settings: "palt" 1;
}
main{min-height: 95vh;
   will-change: animation;
animation:fadein 1.5s 0s 1 backwards,translateY 1.5s 0s 1 backwards;}

a{color: #333;}

a:hover{color:rgba(0,0,0,1.00);
	     text-decoration: none;
        cursor: none;
}

#fixedtitle img:hover {filter: invert(100%);
}


#fixedtitle {
	position: fixed;
	font-size: 1em;
	color: #FFFFFF;
	background-color: rgba(40,40,40,0.8);
	width: 100%;
	padding: 0.8em 0 0.4em 2em;
	margin: 0;
	z-index:3
}

.niinulogo {max-width: 70px;    
padding:1px 5px;
             }

h1{font-size: 1em;
   font-weight: 400;
   display: inline-block;
   margin-top: 55px;
   margin-left: 5px;
   letter-spacing: 1.8px;
    animation-name: shake;
   animation-duration: 5s;
   animation-delay: 0.5s; 
   animation-iteration-count: infinite; 
   animation-direction: alternate-reverse; 
   animation-play-state: running;
}

p{letter-spacing: 1.3px;
line-height: 1.7em;
}

header,main,footer {margin:0 auto;
	max-width: 1200px;}

footer {padding-bottom: 20px;}

nav {text-align: right;
     margin: 4px 26px 2px 0;
     font-weight: 400;}

nav a{padding: 4px 12px;
      margin: 10px 8px 0;
	  color:rgba(255,255,255,1.00);
     letter-spacing: 1.5px;
    display: inline-block;
    line-height: 1em;
}

main {padding: 120px 30px;
}

#maincontents{
    margin-top: 50px;
    margin-right: 5px;
    margin-left: 5px;
    margin-bottom: 30px;
}


body {
  position: relative;
  cursor: none;
}


.cursor,
.follower {
  position: fixed;
  top: 0;
  left: 0; 
  pointer-events: none;
  cursor:none;
}
.cursor {
  width: 10px;
  height: 10px;
    border-radius: 50%;  
    background-color: rgba(255,255,255,1.00);
    mix-blend-mode: difference;
  z-index:1055;
}

.follower {
    border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  transition: transform ease .1s;
  text-align: center;
    background-color: rgba(255,255,255,1.00);
    mix-blend-mode: difference;
    z-index:1054;
  
 
}
  .cursor.is-active{
    transform: scale(1);
  }
.cursor.is-active-input{
    height: 1.5em;
    width:3px;
    border-radius: 0;
}

  .follower.is-active{
    transform: scale(2);
      background-color: rgba(35,35,35,1.00);
  }

  .follower.is-active-invert{
    transform: scale(2);
      background-color: rgba(255,255,255,1.00);
  }

.follower.is-active-input {
    transform: scale(2);
      background-color: rgba(35,35,35,1.00);
  }

.cursor.for-modal{
    background-color: rgba(25,25,25,0.9);
    mix-blend-mode:normal;
}

.follower.for-modal{
    background-color: rgba(255,255,255,0.4);
    mix-blend-mode:normal;
}
.cursor.is-active.for-modal{
    background-color: rgba(25,25,25,0.4);
}

.follower.is-active.for-modal{
    background-color: rgba(255,255,255,0.2);
}





@media (max-width: 767px){
	nav {text-align: center;
	     margin:1px auto 0 auto;
		padding:2px 0 0 0;
	     border-top: rgba(200,200,200,1.00) thin solid;
	    }
	nav a{margin:0;
        font-size:0.8em;
          letter-spacing: 1.8px;
        line-height: 0.8em;}
	main {padding: 100px 5px 20px;}
	#fixedtitle{padding: 5px 0px 2px 0px;}
	#maincontents{margin:40px 3% 50px;
	              padding:0 1% }
	h1{margin-left:4%;
    margin-top: 45px;
    }
    .niinulogo{max-width: 57px;
        display:block;
        margin: 2px auto 3px;}
    p{letter-spacing: 1.3px;
line-height: 1.6em;
}
    footer{font-size:80%;}
}
