@charset "UTF-8";
html {
  font-size: 62.5%;
}
body {
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
  background: #f6f6f6;
}
img {
  width: 100%;
}
#container {
  margin: 0 auto;
  max-width: 750px;
  width: 100%;
  height: 100%;
  font-size: 1.5rem;
  background: #ffffff;
  overflow: hidden;
}
#header, #contents {
  margin: 0 auto;
}
h1 {
  padding: 16px 0 10px 0;
  text-align: center;
  background: #ffec02;
}
h1 img {
  width: 70%;
  min-width: 220px;
}
h2 {
  padding: 1em;
  font-family: "M PLUS Rounded 1c";
  line-height: 1.8;
  font-weight: bold;
  text-align: center;
}
h3 img {
  widh: 100%;
  box-shadow: 0 3px 5px #999999;
}
#main_v {
  padding: 0px 0 0 0;
  background-color: #2c685b;
  position: relative;
  overflow: hidden;
}
#main_v img {
  position: absolute;
  left: 0;
}
#main_v .sim {
  position: static;
}

#main_v .oc2 {
	opacity: 0;
  bottom: 0;
  z-index: 3;
  animation: oc-ani 1s 1 forwards;
}

#main_v .oc3 {
	opacity: 0;
  bottom: 0;
  z-index: 4;
  animation: oc2-ani 1s ease-in-out infinite alternate;
}

@keyframes oc-ani{
from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes oc2-ani{
	0% {opacity:0;
	}
	100% {opacity:1;
	}
}

#ul.sakura {
  position: absolute;
  padding: 0;
  margin: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.sakura li{
  position: absolute;
  list-style: none;
  top: -50px;
  background: #ffdbed;
  border-radius: 0% 70%;
  animation: fall 4s linear infinite, sway 2s ease-in-out infinite alternate;
}


@keyframes fall {
  to {
    top: 120%;
  }
}

@keyframes sway1 {
  from {
    transform: translateX(0px) rotate(0deg);
  }
  to {
    transform: translateX(200px) rotate(-45deg);
  }
}

@keyframes sway2 {
  from {
    transform: translateX(200px) rotate(-45deg);
  }
  to {
    transform: translateX(0px) rotate(0deg);
  }
}

.sakura li:nth-child(1){
  left: 0%;
  width: 24px;
  height: 15px;
  animation: fall 10s linear infinite,
             sway1 3s ease-in-out infinite alternate;
  animation-delay: 2s;
}

.sakura li:nth-child(2){
  left: 5%;
  width: 13px;
  height: 9px;
  animation: fall 15s linear infinite,
             sway1 2s ease-in-out infinite alternate;
  animation-delay: 8s;
}

.sakura li:nth-child(3){
  left: 15%;
  width: 16px;
  height: 10px;
  animation: fall 9s linear infinite,
             sway1 3.5s ease-in-out infinite alternate;
  animation-delay: 13s;
}

.sakura li:nth-child(4){
  left: 30%;
  width: 16px;
  height: 10px;
  animation: fall 8s linear infinite,
             sway2 4s ease-in-out infinite alternate;
  animation-delay: 7s;
}
.sakura li:nth-child(5){
  left: 40%;
  width: 16px;
  height: 10px;
  animation: fall 10s linear infinite,
             sway1 4s ease-in-out infinite alternate;
  animation-delay: 0s;
}
.sakura li:nth-child(6){
  left: 55%;
  width: 24px;
  height: 15px;
  animation: fall 11s linear infinite,
             sway2 3s ease-in-out infinite alternate;
  animation-delay: 3s;
}
.sakura li:nth-child(7){
  left: 65%;
  width: 16px;
  height: 10px;
  animation: fall 7s linear infinite,
             sway2 3.5s ease-in-out infinite alternate;
  animation-delay: 7s;
}
.sakura li:nth-child(8){
  left: 50%;
  width: 13px;
  height: 9px;
  animation: fall 7s linear infinite,
             sway1 3s ease-in-out infinite alternate;
  animation-delay: 3s;
}
.sakura li:nth-child(9){
  left: 80%;
  width: 16px;
  height: 10px;
  animation: fall 10s linear infinite,
             sway2 4s ease-in-out infinite alternate;
  animation-delay: 4s;
}

.column {
  line-height: 1.8;
  background: #feeabe;
  position: relative;
  margin: 0 auto;
}
.column ul {
  margin: 0 auto;
  padding: 0.2em 0;
  width: 88%;
  max-width: 632px;
}
.column li {
  padding: 1em 0;
  color: #fff;
  font-size: 2.8rem;
}
.column img {
  width: 100%;
  margin-bottom: 2em;
}
.column h2 {
  color: #ffffff;
  position: absolute;
  top: 60%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  white-space: nowrap;
}
.column-c {
  background: #feeabe;
  max-width: 750px;
  margin: 0 auto !important;
  padding: 0 auto !important;
}
.column-c img{
  width: 100%;
  padding: 1em 0 1em 0;
}

.yt-wrapper {
  /*border-top: solid 4px #000000;
  border-bottom: solid 4px #000000;*/
  background-image: url(./images/mv_bg.png);
  background-size: 120%;
  position: relative;
  width: 100%;
}
.yt-wrapper:before {
  content: "";
  display: block;
  padding-top: 56.25%;
}
.yt-wrapper div {
  /*background-color: rgba(0, 0, 0, 0.50);
  background-image: url("images/bg_dot2.png");*/
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.yt-wrapper iframe {
  padding: 1.2em;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#menu {
  margin: 0 auto;
  padding: 1em;
  width: 100%;
  height: 80px;
  background: #ffec02;
  box-shadow: 0 -3px 5px #999999;
  position: fixed;
  bottom: 0;
  z-index: 999;
}
#menu ul {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  width: 100%;
  max-width: 750px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
#menu ul li {
  /*margin: 1em;
  max-width: 332px;*/

  max-width: 632px;
  background-color: #fff;
  font-size: 1.3em;
  text-align: center;
  line-height: 1.4em;
  /*padding: 20px 25px;*/
  border-radius: 50px;
  margin: 0 auto;
  box-shadow: 0 0 8px gray;

  display: inline-block;
  padding: 1em 9em;
  text-decoration: none;
  color: #67c5ff;
  border: dashed 1px #67c5ff;
  background: #f2fcff;
  /* border-radius: 3px; */
  transition: .4s;
}
#menu ul li:hover {
  background: #58baff;
  color: #FFF;
}
#menu a {
  /*transition: 0.2s;*/
}
#menu li:hover a {
  /*opacity: 0.6;*/
}
#footer {
  padding: 1em 1em 128px 1em;
  font-size: 1.2rem;
  line-height: 1.6;
  text-align: center;
	color: #000;
	background-color: #ffec02;
}
#footer img {
  display: block;
  margin: 1em auto;
  width: 70%;
  max-width: 334px;
}
small {
  font-size: 80%;
}
.maru {
 background-color: #fff;
 height:80px;
 width:80px;
 border-radius:50%;
 line-height:80px;
 text-align:center;
 float: left;
 margin-right: 0.5em;
}
.maru span{
color: #66aade;
font-size: 5rem;
}
.orange {
	color: #f39700 !important;
}
/* Responsive */
@media screen and (min-width: 601px) {
  #container {
    font-size: 3rem;
  }
  h1 img {
    max-width: 320px;
  }
}
@media screen and (max-width: 600px) {
  h1 {
    font-size: 1.5rem;
  }
  h1 img {
    max-width: 220px;
  }
  .maru {
   height:40px;
   width:40px;
   border-radius:50%;
   line-height:40px;
   text-align:center;
   float: left;
   margin-right: 0.5em;
  }
  .maru span{
  color: #66aade;
  font-size: 2rem;
  }
  .column ul {
    margin: 0 auto;
    padding: 0.2em 0;
    width: 95%;
  }
  .column li {
    padding: 0.8em 0;
    font-size: 2rem;
  }
  #menu ul li {
    padding: 0.7em 5em;
  }
}
