@charset "UTF-8";

/* Reset
   ----------------------------------------------------------------- */
* {
	margin: 0px;
	padding: 0px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
a {
	margin: 0;
	padding: 0;
	font-size:inherit;
	color: inherit;
	vertical-align:baseline;
	background:transparent;
	text-decoration: underline;
}
a:hover{
	text-decoration: none;
}
ul,li{
	list-style-type: none;
}
/* ==========================================================================
   Layout
========================================================================== */




/* アニメーション */

@keyframes bgRotate{
	0% {
		transform:rotate(0deg);
	}
	100% { transform:rotate(360deg);
	}
}

@keyframes bgRotate_2{
	0%  {
		transform:rotate(0deg);
	}
	100% { transform:rotate(-360deg);
	}
}


/* 無限ループアニメーション */

@keyframes bound{
	0% {transform: translateY(0px);}
	100% {transform: translateY(-2px);}
}

@keyframes infinity-loop {
  0%   { transform: translate(0, 0); }
  8%  { transform: translate(93.6px, -5px);}
  9%  { transform: translate(105.3px, 0);}
  10%   { transform: translate(117px, 0) rotate(1deg); }
  20%  { transform: translate(234px, 0) rotate(-1deg); }
  30%  { transform: translate(351px, 0) rotate(1deg); }
  31%  { transform: translate(362.7px, -5px);}
  32%  { transform: translate(374.4px, 0);}
  40%  { transform: translate(468px, 0) rotate(-1deg); }
  50%  { transform: translate(585px, 0) rotate(1deg); }
  60%  { transform: translate(702px, 0) rotate(-1deg); }
  61%  { transform: translate(713.7px, -5px);}
  62%  { transform: translate(725.4px, 0);}
  70%  { transform: translate(819px, 0) rotate(1deg); }
  80%  { transform: translate(936px, 0) rotate(-1deg); }
  90%  { transform: translate(1053px, 0) rotate(1deg); }
  91%  { transform: translate(1064.7px, -5px);}
  92%  { transform: translate(1076.4px, 0);}
  100% { transform: translate(1170px, 0) rotate(0deg); }
}
@keyframes drop_down{
0% {transform: translateY(-400px);}
25% { transform: translateY(400px)rotate(-6deg);}
50% {transform: translateY(360px)rotate(6deg);}
100% {transform: translateY(400px)rotate(0deg);}
}

@keyframes slideDown {
	0% { transform:translateY(0) scale(0,0); }
	100% { transform:translateY(150px) scale(1,1); }
}

@keyframes slideUp{
	0% { transform:translateY(0px) scale(1,1); }
	100% { transform:translateY(-200px) scale(1.5,1.5); }
}

/* @keyframes lever {
	0% { transform:translateY(-200px) scale(1.5,1.5); }
	50% { transform:translateY(-180px) scale(1.5,1.5); }
	100% { transform:translateY(-200px) scale(1.5,1.5); }
} */
@keyframes lever{
	0% {
		transform:translateY(-200px) scale(1.5,1.5);
	}
	50% {
		transform:translate(50px, -140px) rotate(40deg) scale(1.5,1.5);
	}
	100% {
		transform:translate(10px, -200px) rotate(0deg) scale(1.5,1.5);
	}
}


@keyframes scaleUp {
	0% { transform:translateY(150px); }
	100% { transform:translateY(-160px) scale(2.5,2.5); }
}


@keyframes slideDown_2 {
	0% { transform:translateY(0); }
	100% { transform:translateY(380px); }
}
/* @keyframes slideUp_3 {
	0% { transform:translateY(0); }
	100% { transform:translateY(-310px); }
} */

@keyframes fadeUp {
	0% { transform:translateY(0); }
	100% { transform:translateY(-300px); }
}


/* style */
.main {
    width: 930px;
    margin: 130px auto;
    overflow: hidden;
}

.rakuten_omikuji {
  position: relative;
}
.rakuten_omikuji_item {
  position: absolute;
}
/* .rakuten_omikuji_bg {
    background: #000;
}
.rakuten_omikuji_bg img {
  display: block;
} */
.gear1 {
  top: -220px;
  left: -150px;
  animation: bgRotate_2 100s linear infinite;
}
.gear2 {
  top: 10px;
  left: 460px;
  animation: bgRotate_2 100s linear infinite;
}
.gear3 {
  top: 220px;
  left: 256px;
  animation: bgRotate 100s linear infinite;
}

.treasure_chest {
  top: 144px;
  left: -210px;
  z-index: 10;
  animation: infinity-loop 12s linear infinite;
}
.treasure_chest_2{
  animation-delay: 3s;
}
.treasure_chest_3{
  animation-delay: 6s;
}
.treasure_chest_4{
  animation-delay: 9s;
}
.treasure_chest_5{
  animation-delay: 12s;
}

.paused{
  animation-play-state: paused;
}


.conveyor {
  top: 294px;
  right: 0;
  left: 0;
  text-align: center;
  animation: bound 0.4s ease-out infinite alternate;
}



.omikuji_btn {
	animation: slideUp 1.2s ease-out forwards;
}

.omikuji_btn_push {
	animation: lever 1s ease forwards;
}
.btn{
  top: 402px;
  left: 320px;
  z-index: 10;
}
.btn_head{
  top: 402px;
  left: 350px;
  z-index: 10;
}

.select_chest {
	top: -200px;
	left: 0;
	right: 0;
	text-align: center;
	display: none;
	animation: drop_down 2s ease 2.4s forwards;
}
.select_chest_op {
	top: 200px;
	left: 0;
	right: 0;
	text-align: center;
	display: none;
}

.makimono {
	top: 260px;
	left: 0;
	right: 0;
	text-align: center;
	z-index: 30;
	animation: slideDown 1s ease-in-out forwards;
	display: none;
}
.scale_up {
	animation: scaleUp 1s ease forwards;
}
.makimono_btm {
	top: 74px;
	left: 0;
	right: 0;
	text-align: center;
	display: none;
	z-index: 20;
	animation: slideDown_2 2s ease-in-out forwards;
}

.makimono_bg {
	top: 146px;
	left: 0;
	right: 0;
	text-align: center;
	display: none;
	z-index: 10;
	animation: slideDown_2 2s ease-in-out forwards;
}
.makimono_bg{
  animation-delay: 1s;
}
.makimono_top {
	top: 90px;
	left: 0;
	right: 0;
	text-align: center;
	display: none;
	z-index: 20;
}
.makimono_mid {
	top: 154px;
	left: 0;
	right: 0;
	text-align: center;
	display: none;
}
