@charset "utf-8";

/*
******************************************************************
* common.css
******************************************************************/

/*
******************************************************************
* loading
******************************************************************/
/* - loadging */
#loading {
	opacity: 1;
	position: fixed;
	width: 100%;
	height: 100%;
	background: #fff;
	z-index: 99999;
}
#loading:after {
	display: block;
	opacity: 0;
	position: fixed;
	width: 100%;
	height: 100%;
	z-index: -1;
	background: #fff;
	content: '';
}
body.loading > *,
#loading > * {
	opacity: 0;
}
#loading.action .loading-cont,
#loading.action:after {
	opacity: 1;
}
.loading-cont {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-transition: all 0.8s ease;
	transition: all 0.8s ease;
}
.loading-cont .loading-inner {
	position: relative;
	z-index: 1;
	width: 769px;
	margin: 0 auto;
}

/*loading_progressbar*/
.loading_progressbar {
	display: block;
	overflow: hidden;
	position: relative;
	width: 300px;
	height: 14px;
	margin: 18px auto 0;
}
.loading_progressbar span {
	display: block;
	overflow: hidden;
	position: absolute;
	width: 0;
	height: 100%;
}
.loading_progressbar span:after {
	display: block;
	position: absolute;
	top: 0;
	left: -4500px;
	width: 5000px;
	height: 14px;
	background: url(../../common/img/loading_progressbar.png) repeat-x top left;
	background-size: 288px 14px;
	content: '';
}
.load_start .loading_progressbar span:after {
	/*animation*/
	animation-name: progressbar-roll;
	animation-duration: 40s;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
	animation-direction: normal;
	animation-fill-mode: none;
	/*Firefox*/
	-moz-animation-name: progressbar-roll;
	-moz-animation-duration: 40s;
	-moz-animation-timing-function: linear;
	-moz-animation-iteration-count: infinite;
	-moz-animation-direction: normal;
	-moz-animation-fill-mode: none;
	/*Chrome Safari*/
	-webkit-animation-name: progressbar-roll;
	-webkit-animation-duration: 40s;
	-webkit-animation-timing-function: linear;
	-webkit-animation-iteration-count: infinite;
	-webkit-animation-direction: normal;
	-webkit-animation-fill-mode: none;
	/*Opera*/
	-o-animation-name: progressbar-roll;
	-o-animation-duration: 40s;
	-o-animation-timing-function: linear;
	-o-animation-iteration-count: infinite;
	-o-animation-direction: normal;
	-o-animation-fill-mode: none;
	/*IE*/
	-ms-animation-name: progressbar-roll;
	-ms-animation-duration: 40s;
	-ms-animation-timing-function: linear;
	-ms-animation-iteration-count: infinite;
	-ms-animation-direction: normal;
	-ms-animation-fill-mode: none;
}
@keyframes progressbar-roll {
	0%{left: -4500px;}
	100%{left: 0;}
}
@-moz-keyframes progressbar-roll {
	0%{left: -4500px;}
	100%{left: 0;}
}
@-webkit-keyframes progressbar-roll {
	0%{left: -4500px;}
	100%{left: 0;}
}
@-o-keyframes progressbar-roll {
	0%{left: -4500px;}
	100%{left: 0;}
}
@-ms-keyframes progressbar-roll {
	0%{left: -4500px;}
	100%{left: 0;}
}

.load_start .loading_progressbar span {
	/*animation*/
	animation-name: progressbar-collect;
	animation-duration: 2.2s;
	animation-timing-function: linear;
	animation-iteration-count: 1;
	animation-direction: normal;
	animation-fill-mode: forwards;
	/*Firefox*/
	-moz-animation-name: progressbar-collect;
	-moz-animation-duration: 2.2s;
	-moz-animation-timing-function: linear;
	-moz-animation-iteration-count: 1;
	-moz-animation-direction: normal;
	-moz-animation-fill-mode: forwards;
	/*Chrome Safari*/
	-webkit-animation-name: progressbar-collect;
	-webkit-animation-duration: 2.2s;
	-webkit-animation-timing-function: linear;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-direction: normal;
	-webkit-animation-fill-mode: forwards;
	/*Opera*/
	-o-animation-name: progressbar-collect;
	-o-animation-duration: 2.2s;
	-o-animation-timing-function: linear;
	-o-animation-iteration-count: 1;
	-o-animation-direction: normal;
	-o-animation-fill-mode: forwards;
	/*IE*/
	-ms-animation-name: progressbar-collect;
	-ms-animation-duration: 2.2s;
	-ms-animation-timing-function: linear;
	-ms-animation-iteration-count: 1;
	-ms-animation-direction: normal;
	-ms-animation-fill-mode: forwards;
}
@keyframes progressbar-collect {
	0%{width: 0;}
	60%{width: 30%;}
	70%{width: 40%;}
	100%{width: 55%;}
}
@-moz-keyframes progressbar-collect {
	0%{width: 0;}
	60%{width: 30%;}
	70%{width: 40%;}
	100%{width: 55%;}
}
@-webkit-keyframes progressbar-collect {
	0%{width: 0;}
	60%{width: 30%;}
	70%{width: 40%;}
	100%{width: 55%;}
}
@-o-keyframes progressbar-collect {
	0%{width: 0;}
	60%{width: 30%;}
	70%{width: 40%;}
	100%{width: 55%;}
}
@-ms-keyframes progressbar-collect {
	0%{width: 0;}
	60%{width: 30%;}
	70%{width: 40%;}
	100%{width: 55%;}
}

.load_start.load_ending .loading_progressbar span {
	/*animation*/
	animation-name: progressbar-complet;
	animation-duration: 0.5s;
	animation-timing-function: ease-in;
	animation-iteration-count: 1;
	animation-direction: normal;
	animation-fill-mode: forwards;
	/*Firefox*/
	-moz-animation-name: progressbar-complet;
	-moz-animation-duration: 0.5s;
	-moz-animation-timing-function: ease-in;
	-moz-animation-iteration-count: 1;
	-moz-animation-direction: normal;
	-moz-animation-fill-mode: forwards;
	/*Chrome Safari*/
	-webkit-animation-name: progressbar-complet;
	-webkit-animation-duration: 0.5s;
	-webkit-animation-timing-function: ease-in;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-direction: normal;
	-webkit-animation-fill-mode: forwards;
	/*Opera*/
	-o-animation-name: progressbar-complet;
	-o-animation-duration: 0.5s;
	-o-animation-timing-function: ease-in;
	-o-animation-iteration-count: 1;
	-o-animation-direction: normal;
	-o-animation-fill-mode: forwards;
	/*IE*/
	-ms-animation-name: progressbar-complet;
	-ms-animation-duration: 0.5s;
	-ms-animation-timing-function: ease-in;
	-ms-animation-iteration-count: 1;
	-ms-animation-direction: normal;
	-ms-animation-fill-mode: forwards;
}
@keyframes progressbar-complet {
	0%{width: 55%}
	100%{width: 100%;}
}
@-moz-keyframes progressbar-complet {
	0%{width: 55%}
	100%{width: 100%;}
}
@-webkit-keyframes progressbar-complet {
	0%{width: 55%}
	100%{width: 100%;}
}
@-o-keyframes progressbar-complet {
	0%{width: 55%}
	100%{width: 100%;}
}
@-ms-keyframes progressbar-complet {
	0%{width: 55%}
	100%{width: 100%;}
}

/*loading_drum*/
.loading_drum {
	overflow: hidden;
	width: 769px;
	height: 418px;
	margin: 0 auto;
}
.drum_item {
	display: block;
	overflow: hidden;
	position: relative;
	float: left;
	width: 227px;
	height: 417px;
	background: url(../../common/img/loading_drum.png) no-repeat bottom center;
	background-size: 199px 1533px;
}
.drum_item .drum_flame {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 3;
	width: 227px;
	height: 418px;
	background: url(../../common/img/loading_drum_flame.png) no-repeat center center;
	background-size: cover;
	content: '';
}

.drum_item + .drum_item {
	margin-left: 44px;
}
.drum_item:before {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 122640px;
	background-image: url(../../common/img/loading_drum.png);
	background-repeat: repeat-y;
	background-size: 199px 1533px;
	content: '';
	-webkit-transition: all 0.8s ease;
	transition: all 0.8s ease;
}
.drum_item.loading_drum01:before {
	background-position: bottom 467px center;
	animation-delay: 0.2s;/*animation*/
	-moz-animation-delay: 0.2s;/*Firefox*/
	-webkit-animation-delay: 0.2s;/*Chrome Safari*/
	-o-animation-delay: 0.2s;/*Opera*/
	-ms-animation-delay: 0.2s;/*IE*/
}
.drum_item.loading_drum02:before {
	background-position: bottom 276px center;
	animation-delay: 0.3s;/*animation*/
	-moz-animation-delay: 0.3s;/*Firefox*/
	-webkit-animation-delay: 0.3s;/*Chrome Safari*/
	-o-animation-delay: 0.3s;/*Opera*/
	-ms-animation-delay: 0.3s;/*IE*/
}
.drum_item.loading_drum03:before {
	background-position: bottom 85px center;
	animation-delay: 0.4s;/*animation*/
	-moz-animation-delay: 0.4s;/*Firefox*/
	-webkit-animation-delay: 0.4s;/*Chrome Safari*/
	-o-animation-delay: 0.4s;/*Opera*/
	-ms-animation-delay: 0.4s;/*IE*/
}

.load_start .drum_item:before {
	/*animation*/
	animation-name: rolling-first-action;
	animation-duration: 30s;
	animation-timing-function: ease-in-out;
	animation-iteration-count: infinite;
	animation-direction: normal;
	animation-fill-mode: none;
	/*Firefox*/
	-moz-animation-name: rolling-first-action;
	-moz-animation-duration: 30s;
	-moz-animation-timing-function: ease-in-out;
	-moz-animation-iteration-count: infinite;
	-moz-animation-direction: normal;
	-moz-animation-fill-mode: none;
	/*Chrome Safari*/
	-webkit-animation-name: rolling-first-action;
	-webkit-animation-duration: 30s;
	-webkit-animation-timing-function: ease-in-out;
	-webkit-animation-iteration-count: infinite;
	-webkit-animation-direction: normal;
	-webkit-animation-fill-mode: none;
	/*Opera*/
	-o-animation-name: rolling-first-action;
	-o-animation-duration: 30s;
	-o-animation-timing-function: ease-in-out;
	-o-animation-iteration-count: infinite;
	-o-animation-direction: normal;
	-o-animation-fill-mode: none;
	/*IE*/
	-ms-animation-name: rolling-first-action;
	-ms-animation-duration: 30s;
	-ms-animation-timing-function: ease-in-out;
	-ms-animation-iteration-count: infinite;
	-ms-animation-direction: normal;
	-ms-animation-fill-mode: none;
}

@keyframes rolling-first-action {
	0%{bottom: 0;}
	100%{bottom: -122640px;}
}
@-moz-keyframes rolling-first-action {
	0%{bottom: 0;}
	100%{bottom: -122640px;}
}
@-webkit-keyframes rolling-first-action {
	0%{bottom: 0;}
	100%{bottom: -122640px;}
}
@-o-keyframes rolling-first-action {
	0%{bottom: 0;}
	100%{bottom: -122640px;}
}
@-ms-keyframes rolling-first-action {
	0%{bottom: 0;}
	100%{bottom: -122640px;}
}

.drum_item:after {
	opacity: 0;
	display: block;
	position: absolute;
	top: 0px;
	left: 14px;
	z-index: 2;
	width: 199px;
	height: 418px;
	background-image: url(../../common/img/loading_drum.png);
	background-repeat: repeat-y;
	background-size: 199px 1533px;
	content: '';
}
.drum_item.loading_drum01:after {
	background-position: top -49px center;
	animation-delay: 1.5s;/*animation*/
	-moz-animation-delay: 1.5s;/*Firefox*/
	-webkit-animation-delay: 1.5s;/*Chrome Safari*/
	-o-animation-delay: 1.5s;/*Opera*/
	-ms-animation-delay: 1.5s;/*IE*/
}
.drum_item.loading_drum03:after {
	background-position: top -49px center;
	animation-delay: 2.5s;/*animation*/
	-moz-animation-delay: 2.5s;/*Firefox*/
	-webkit-animation-delay: 2.5s;/*Chrome Safari*/
	-o-animation-delay: 2.5s;/*Opera*/
	-ms-animation-delay: 2.5s;/*IE*/
}

.load_ending .drum_item.loading_drum01:after,
.load_ending .drum_item.loading_drum03:after {
	/*animation*/
	animation-name: rolling-second-action;
	animation-duration: 0.35s;
	animation-timing-function: ease-in-out;
	animation-fill-mode: forwards;
	/*Firefox*/
	-moz-animation-name: rolling-second-action;
	-moz-animation-duration: 0.35s;
	-moz-animation-timing-function: ease-in-out;
	-moz-animation-fill-mode: forwards;
	/*Chrome Safari*/
	-webkit-animation-name: rolling-second-action;
	-webkit-animation-duration: 0.35s;
	-webkit-animation-timing-function: ease-in-out;
	-webkit-animation-fill-mode: forwards;
	/*Opera*/
	-o-animation-name: rolling-second-action;
	-o-animation-duration: 0.35s;
	-o-animation-timing-function: ease-in-out;
	-o-animation-fill-mode: forwards;
	/*IE*/
	-ms-animation-name: rolling-second-action;
	-ms-animation-duration: 0.35s;
	-ms-animation-timing-function: ease-in-out;
	-ms-animation-fill-mode: forwards;
}
@keyframes rolling-second-action {
	0% {transform:scale3d(3,3,3);}
	70% {transform:scale3d(0.6,0.6,0.6);}
	100% {opacity: 1;transform:scale3d(1,1,1);}
}
@-moz-keyframes rolling-second-action {
	0% {-moz-transform:scale3d(3,3,3);}
	70% {-moz-transform:scale3d(0.6,0.6,0.6);}
	100% {opacity: 1;transform:scale3d(1,1,1);}
}
@-webkit-keyframes rolling-second-action {
	0% {-webkit-transform:scale3d(3,3,3);}
	70% {-webkit-transform:scale3d(0.6,0.6,0.6);}
	100% {opacity: 1;transform:scale3d(1,1,1);}
}
@-o-keyframes rolling-second-action {
	0% {-o-transform:scale3d(3,3,3);}
	70% {-o-transform:scale3d(0.6,0.6,0.6);}
	100% {opacity: 1;transform:scale3d(1,1,1);}
}
@-ms-keyframes rolling-second-action {
	0% {-ms-transform:scale3d(3,3,3);}
	70% {-ms-transform:scale3d(0.6,0.6,0.6);}
	100% {opacity: 1;transform:scale3d(1,1,1);}
}

.loading-cont .loading_panel {
	display: block;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 50%;
	z-index: 4;
	width: 1000px;
	height: 100%;
	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	transform: translateX(-50%);
}

.loading-cont .loading_panel:before,
.loading-cont .loading_panel:after {
	display: block;
	opacity: 0;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 100;
	width: 100%;
	height: 100%;
	background: url(../../common/img/loading_panel.png) no-repeat top center;
	background-size: 100%;
	content: '';
	transform: scale(0);
	-moz-transform: scale(0);
	-webkit-transform: scale(0);
	-o-transform: scale(0);
	-ms-transform: scale(0);
}
.load_ending .loading-cont .loading_panel:before {
	animation-delay: 3.42s;/*animation*/
	-moz-animation-delay: 3.42s;/*Firefox*/
	-webkit-animation-delay: 3.42s;/*Chrome Safari*/
	-o-animation-delay: 3.42s;/*Opera*/
	-ms-animation-delay: 3.42s;/*IE*/
	/*animation*/
	animation-name: load-ending-action-a;
	animation-duration: 0.65s;
	animation-timing-function: ease;
	animation-fill-mode: forwards;
	/*Firefox*/
	-moz-animation-name: load-ending-action-a;
	-moz-animation-duration: 0.65s;
	-moz-animation-timing-function: ease;
	-moz-animation-fill-mode: forwards;
	/*Chrome Safari*/
	-webkit-animation-name: load-ending-action-a;
	-webkit-animation-duration: 0.65s;
	-webkit-animation-timing-function: ease;
	-webkit-animation-fill-mode: forwards;
	/*Opera*/
	-o-animation-name: load-ending-action-a;
	-o-animation-duration: 0.65s;
	-o-animation-timing-function: ease;
	-o-animation-fill-mode: forwards;
	/*IE*/
	-ms-animation-name: load-ending-action-a;
	-ms-animation-duration: 0.65s;
	-ms-animation-timing-function: ease;
	-ms-animation-fill-mode: forwards;
}

@keyframes load-ending-action-a {
	0% {opacity: 1;transform:scale3d(0,0,0);}
	95% {opacity: 0;transform:scale3d(1,1,1);}
	100% {opacity: 0;}
}
@-moz-keyframes load-ending-action-a {
	0% {opacity: 1;-moz-transform:scale3d(0,0,0);}
	95% {opacity: 0;-moz-transform:scale3d(1,1,1);}
	100% {opacity: 0;}
}
@-webkit-keyframes load-ending-action-a {
	0% {opacity: 1;-webkit-transform:scale3d(0,0,0);}
	95% {opacity: 0;-webkit-transform:scale3d(1,1,1);}
	100% {opacity: 0;}
}
@-o-keyframes load-ending-action-a {
	0% {opacity: 1;-o-transform:scale3d(0,0,0);}
	95% {opacity: 0;-o-transform:scale3d(1,1,1);}
	100% {opacity: 0;}
}
@-ms-keyframes load-ending-action-a {
	0% {opacity: 1;-ms-transform:scale3d(0,0,0);}
	95% {opacity: 0;-ms-transform:scale3d(1,1,1);}
	100% {opacity: 0;}
}

.load_ending .loading-cont .loading_panel:after {
	animation-delay: 3.43s;/*animation*/
	-moz-animation-delay: 3.43s;/*Firefox*/
	-webkit-animation-delay: 3.43s;/*Chrome Safari*/
	-o-animation-delay: 3.43s;/*Opera*/
	-ms-animation-delay: 3.43s;/*IE*/
	/*animation*/
	animation-name: load-ending-action-b;
	animation-duration: 0.65s;
	animation-timing-function: ease;
	animation-fill-mode: forwards;
	/*Firefox*/
	-moz-animation-name: load-ending-action-b;
	-moz-animation-duration: 0.65s;
	-moz-animation-timing-function: ease;
	-moz-animation-fill-mode: forwards;
	/*Chrome Safari*/
	-webkit-animation-name: load-ending-action-b;
	-webkit-animation-duration: 0.65s;
	-webkit-animation-timing-function: ease;
	-webkit-animation-fill-mode: forwards;
	/*Opera*/
	-o-animation-name: load-ending-action-b;
	-o-animation-duration: 0.65s;
	-o-animation-timing-function: ease;
	-o-animation-fill-mode: forwards;
	/*IE*/
	-ms-animation-name: load-ending-action-b;
	-ms-animation-duration: 0.65s;
	-ms-animation-timing-function: ease;
	-ms-animation-fill-mode: forwards;
}

@keyframes load-ending-action-b {
	0% {opacity: 0;transform:scale3d(0,0,0);}
	100% {opacity: 1;transform:scale3d(1,1,1);}
}
@-moz-keyframes load-ending-action-b {
	0% {opacity: 0;-moz-transform:scale3d(0,0,0);}
	100% {opacity: 1;-moz-transform:scale3d(1,1,1);}
}
@-webkit-keyframes load-ending-action-b {
	0% {opacity: 0;-webkit-transform:scale3d(0,0,0);}
	100% {opacity: 1;-webkit-transform:scale3d(1,1,1);}
}
@-o-keyframes load-ending-action-b {
	0% {opacity: 0;-o-transform:scale3d(0,0,0);}
	100% {opacity: 1;-o-transform:scale3d(1,1,1);}
}
@-ms-keyframes load-ending-action-b {
	0% {opacity: 0;-ms-transform:scale3d(0,0,0);}
	100% {opacity: 1;-ms-transform:scale3d(1,1,1);}
}

/*loading-txt*/
.loading-cont .loading-txt {
	display: block;
	position: relative;
	left: 12px;
	width: 220px;
	margin: 55px auto 0;
	/*animation*/
	animation-name: loading-text-in;
	animation-duration: 1.8s;
	animation-timing-function: ease-in;
	animation-delay: 1.8s;
	animation-iteration-count: infinite;
	animation-direction: normal;
	/*Firefox*/
	-moz-animation-name: loading-text-in;
	-moz-animation-duration: 1.8s;
	-moz-animation-timing-function: ease-in;
	-moz-animation-delay: 1.8s;
	-moz-animation-iteration-count: infinite;
	-moz-animation-direction: normal;
	/*Chrome Safari*/
	-webkit-animation-name: loading-text-in;
	-webkit-animation-duration: 1.8s;
	-webkit-animation-timing-function: ease-in;
	-webkit-animation-delay: 1.8s;
	-webkit-animation-iteration-count: infinite;
	-webkit-animation-direction: normal;
	/*Opera*/
	-o-animation-name: loading-text-in;
	-o-animation-duration: 1.8s;
	-o-animation-timing-function: ease-in;
	-o-animation-delay: 1.8s;
	-o-animation-iteration-count: infinite;
	-o-animation-direction: normal;
	/*IE*/
	-ms-animation-name: loading-text-in;
	-ms-animation-duration: 1.8s;
	-ms-animation-timing-function: ease-in;
	-ms-animation-delay: 1.8s;
	-ms-animation-iteration-count: infinite;
	-ms-animation-direction: normal;
}
@keyframes loading-text-in {
	0% {opacity: 1;}
	50% {opacity: 0;}
	100% {opacity: 1;}
}
@-moz-keyframes loading-text-in {
	0% {opacity: 1;}
	50% {opacity: 0;}
	100% {opacity: 1;}
}
@-webkit-keyframes loading-text-in {
	0% {opacity: 1;}
	50% {opacity: 0;}
	100% {opacity: 1;}
}
@-o-keyframes loading-text-in {
	0% {opacity: 1;}
	50% {opacity: 0;}
	100% {opacity: 1;}
}
@-ms-keyframes loading-text-in {
	0% {opacity: 1;}
	50% {opacity: 0;}
	100% {opacity: 1;}
}

/*
******************************************************************
* #nav
******************************************************************/
.top-page .menu_btn_box {
	position: absolute;
}
.menu_btn_box {
	overflow: hidden;
	position: absolute;
	top: 72px;
	left: 50%;
	z-index: 10;
	width: 1000px;
	margin-left: -500px;
	padding: 0;
	box-sizing: border-box;
}
.top-page #contents.action .menu_btn_box {
	opacity: 1;
}
.top-page .menu_btn_box {
	opacity: 0;
	transition: all 0.2s ease-out 0.95S;
	-webkit-transition: all 0.2s ease-out 0.95S;
}
.lower-page .action.menu_btn_box {
	opacity: 1;
}
.lower-page .menu_btn_box {
	opacity: 0;
	transition: all 0.2s ease-out;
	-webkit-transition: all 0.2s ease-out;
}

.menu_btn {
	display: block;
	overflow: hidden;
	position: relative;
	float: right;
	width: 172px;
	height: 158px;
	background: url(../img/btn_menu.png) no-repeat top center;
	background-size: 100%;
	border: none;
	text-indent: -200%;
	cursor: pointer;
	outline: none;
}
.close_btn {
	display: block;
	overflow: hidden;
	position: absolute;
	top: -104px;
	right: 3px;
	z-index: 2;
	width: 172px;
	height: 158px;
	background: url(../img/btn_menu_on.png) no-repeat top center;
	border: none;
	text-indent: -200%;
	cursor: pointer;
	outline: none;
}

.nav_bg {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.5);
}
.device-sp .nav_bg {
	cursor: pointer;
}

.device-sp .nav_box {
	cursor: pointer;
}

.nav_open .nav_box {
	display: block;
	animation: nav-open 0.6s ease 0.1s 1 forwards;
	-moz-animation: nav-open 0.6s ease 0.1s 1 forwards;
	-webkit-animation: nav-open 0.6s ease 0.1s 1 forwards;
	-o-animation: nav-open 0.6s ease 0.1s 1 forwards;
	-ms-animation: nav-open 0.6s ease 0.1s 1 forwards;
}
.nav_open .nav_box:not(:target) {
	opacity: 1\9;/*IE9用*/
}
.nav_box {
	display: none;
	opacity: 0;
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 11;
	width: 994px;
	height: 482px;
	margin: -213px 0 0 -491px;
	background: url(../img/nav_bg.png) no-repeat top center;
	background-size: 100%;
}
@keyframes nav-open {
	0% {
		opacity: 1;
		-webkit-transform: scale(0.5);
		-ms-transform: scale(0.5);
		-o-transform: scale(0.5);
		transform: scale(0.5);
	}
	20% {
		-webkit-transform: scale(1.15);
		-ms-transform: scale(1.15);
		-o-transform: scale(1.15);
		transform: scale(1.15);
	}
	30% {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
	40% {
		-webkit-transform: scale(0.95);
		-ms-transform: scale(0.95);
		-o-transform: scale(0.95);
		transform: scale(0.95);
	}
	50% {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
	100% {
		opacity: 1;
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
}
@-moz-keyframes nav-open {
	0% {
		opacity: 1;
		-webkit-transform: scale(0.5);
		-ms-transform: scale(0.5);
		-o-transform: scale(0.5);
		transform: scale(0.5);
	}
	20% {
		-webkit-transform: scale(1.15);
		-ms-transform: scale(1.15);
		-o-transform: scale(1.15);
		transform: scale(1.15);
	}
	30% {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
	40% {
		-webkit-transform: scale(0.95);
		-ms-transform: scale(0.95);
		-o-transform: scale(0.95);
		transform: scale(0.95);
	}
	50% {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
	100% {
		opacity: 1;
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
}
@-webkit-keyframes nav-open {
	0% {
		opacity: 1;
		-webkit-transform: scale(0.5);
		-ms-transform: scale(0.5);
		-o-transform: scale(0.5);
		transform: scale(0.5);
	}
	20% {
		-webkit-transform: scale(1.15);
		-ms-transform: scale(1.15);
		-o-transform: scale(1.15);
		transform: scale(1.15);
	}
	30% {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
	40% {
		-webkit-transform: scale(0.95);
		-ms-transform: scale(0.95);
		-o-transform: scale(0.95);
		transform: scale(0.95);
	}
	50% {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
	100% {
		opacity: 1;
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
}
@-o-keyframes nav-open {
	0% {
		opacity: 1;
		-webkit-transform: scale(0.5);
		-ms-transform: scale(0.5);
		-o-transform: scale(0.5);
		transform: scale(0.5);
	}
	20% {
		-webkit-transform: scale(1.15);
		-ms-transform: scale(1.15);
		-o-transform: scale(1.15);
		transform: scale(1.15);
	}
	30% {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
	40% {
		-webkit-transform: scale(0.95);
		-ms-transform: scale(0.95);
		-o-transform: scale(0.95);
		transform: scale(0.95);
	}
	50% {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
	100% {
		opacity: 1;
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
}
@-ms-keyframes nav-open {
	0% {
		opacity: 1;
		-webkit-transform: scale(0.5);
		-ms-transform: scale(0.5);
		-o-transform: scale(0.5);
		transform: scale(0.5);
	}
	20% {
		-webkit-transform: scale(1.15);
		-ms-transform: scale(1.15);
		-o-transform: scale(1.15);
		transform: scale(1.15);
	}
	30% {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
	40% {
		-webkit-transform: scale(0.95);
		-ms-transform: scale(0.95);
		-o-transform: scale(0.95);
		transform: scale(0.95);
	}
	50% {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
	100% {
		opacity: 1;
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
}

.nav_box:after {
	display: block;
	position: absolute;
	top: -71px;
	right: 160px;
	width: 159px;
	height: 121px;
	background: url(../img/menu_cara.png) no-repeat top center;
	background-size: 100%;
	content: '';
}
.nav_open .nav_box:after:not(:target) {
	opacity: 1\9;/*IE9用*/
}
.nav_open .nav_box:after {
	animation: nav-cara-anime 0.7s ease 0S 1 forwards;
	-moz-animation: nav-cara-anime 0.7s ease 0S 1 forwards;
	-webkit-animation: nav-cara-anime 0.7s ease 0S 1 forwards;
	-o-animation: nav-cara-anime 0.7s ease 0S 1 forwards;
	-ms-animation: nav-cara-anime 0.7s ease 0S 1 forwards;
}

@keyframes nav-cara-anime {
	from,
	60%,
	75%,
	90%,
	to {
		animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-moz-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-o-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-ms-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	}

	0% {
		opacity: 0;
		transform: translate3d(0, -3000px, 0);
		-moz-transform: translate3d(0, -3000px, 0);
		-webkit-transform: translate3d(0, -3000px, 0);
		-o-transform: translate3d(0, -3000px, 0);
		-ms-transform: translate3d(0, -3000px, 0);
	}

	60% {
		opacity: 1;
		transform: translate3d(0, 25px, 0);
		-moz-transform: translate3d(0, 25px, 0);
		-webkit-transform: translate3d(0, 25px, 0);
		-o-transform: translate3d(0, 25px, 0);
		-ms-transform: translate3d(0, 25px, 0);
	}

	75% {
		opacity: 1;
		transform: translate3d(0, -10px, 0);
		-moz-transform: translate3d(0, -10px, 0);
		-webkit-transform: translate3d(0, -10px, 0);
		-o-transform: translate3d(0, -10px, 0);
		-ms-transform: translate3d(0, -10px, 0);
	}

	90% {
		opacity: 1;
		transform: translate3d(0, 5px, 0);
		-moz-transform: translate3d(0, 5px, 0);
		-webkit-transform: translate3d(0, 5px, 0);
		-o-transform: translate3d(0, 5px, 0);
		-ms-transform: translate3d(0, 5px, 0);
	}

	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
		-moz-transform: translate3d(0, 0, 0);
		-webkit-transform: translate3d(0, 0, 0);
		-o-transform: translate3d(0, 0, 0);
		-ms-transform: translate3d(0, 0, 0);
	}
}
@-moz-keyframes nav-cara-anime {
	from,
	60%,
	75%,
	90%,
	to {
		animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-moz-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-o-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-ms-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	}

	0% {
		opacity: 0;
		transform: translate3d(0, -3000px, 0);
		-moz-transform: translate3d(0, -3000px, 0);
		-webkit-transform: translate3d(0, -3000px, 0);
		-o-transform: translate3d(0, -3000px, 0);
		-ms-transform: translate3d(0, -3000px, 0);
	}

	60% {
		opacity: 1;
		transform: translate3d(0, 25px, 0);
		-moz-transform: translate3d(0, 25px, 0);
		-webkit-transform: translate3d(0, 25px, 0);
		-o-transform: translate3d(0, 25px, 0);
		-ms-transform: translate3d(0, 25px, 0);
	}

	75% {
		opacity: 1;
		transform: translate3d(0, -10px, 0);
		-moz-transform: translate3d(0, -10px, 0);
		-webkit-transform: translate3d(0, -10px, 0);
		-o-transform: translate3d(0, -10px, 0);
		-ms-transform: translate3d(0, -10px, 0);
	}

	90% {
		opacity: 1;
		transform: translate3d(0, 5px, 0);
		-moz-transform: translate3d(0, 5px, 0);
		-webkit-transform: translate3d(0, 5px, 0);
		-o-transform: translate3d(0, 5px, 0);
		-ms-transform: translate3d(0, 5px, 0);
	}

	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
		-moz-transform: translate3d(0, 0, 0);
		-webkit-transform: translate3d(0, 0, 0);
		-o-transform: translate3d(0, 0, 0);
		-ms-transform: translate3d(0, 0, 0);
	}
}
@-webkit-keyframes nav-cara-anime {
	from,
	60%,
	75%,
	90%,
	to {
		animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-moz-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-o-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-ms-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	}

	0% {
		opacity: 0;
		transform: translate3d(0, -3000px, 0);
		-moz-transform: translate3d(0, -3000px, 0);
		-webkit-transform: translate3d(0, -3000px, 0);
		-o-transform: translate3d(0, -3000px, 0);
		-ms-transform: translate3d(0, -3000px, 0);
	}

	60% {
		opacity: 1;
		transform: translate3d(0, 25px, 0);
		-moz-transform: translate3d(0, 25px, 0);
		-webkit-transform: translate3d(0, 25px, 0);
		-o-transform: translate3d(0, 25px, 0);
		-ms-transform: translate3d(0, 25px, 0);
	}

	75% {
		opacity: 1;
		transform: translate3d(0, -10px, 0);
		-moz-transform: translate3d(0, -10px, 0);
		-webkit-transform: translate3d(0, -10px, 0);
		-o-transform: translate3d(0, -10px, 0);
		-ms-transform: translate3d(0, -10px, 0);
	}

	90% {
		opacity: 1;
		transform: translate3d(0, 5px, 0);
		-moz-transform: translate3d(0, 5px, 0);
		-webkit-transform: translate3d(0, 5px, 0);
		-o-transform: translate3d(0, 5px, 0);
		-ms-transform: translate3d(0, 5px, 0);
	}

	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
		-moz-transform: translate3d(0, 0, 0);
		-webkit-transform: translate3d(0, 0, 0);
		-o-transform: translate3d(0, 0, 0);
		-ms-transform: translate3d(0, 0, 0);
	}
}
@-o-keyframes nav-cara-anime {
	from,
	60%,
	75%,
	90%,
	to {
		animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-moz-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-o-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-ms-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	}

	0% {
		opacity: 0;
		transform: translate3d(0, -3000px, 0);
		-moz-transform: translate3d(0, -3000px, 0);
		-webkit-transform: translate3d(0, -3000px, 0);
		-o-transform: translate3d(0, -3000px, 0);
		-ms-transform: translate3d(0, -3000px, 0);
	}

	60% {
		opacity: 1;
		transform: translate3d(0, 25px, 0);
		-moz-transform: translate3d(0, 25px, 0);
		-webkit-transform: translate3d(0, 25px, 0);
		-o-transform: translate3d(0, 25px, 0);
		-ms-transform: translate3d(0, 25px, 0);
	}

	75% {
		opacity: 1;
		transform: translate3d(0, -10px, 0);
		-moz-transform: translate3d(0, -10px, 0);
		-webkit-transform: translate3d(0, -10px, 0);
		-o-transform: translate3d(0, -10px, 0);
		-ms-transform: translate3d(0, -10px, 0);
	}

	90% {
		opacity: 1;
		transform: translate3d(0, 5px, 0);
		-moz-transform: translate3d(0, 5px, 0);
		-webkit-transform: translate3d(0, 5px, 0);
		-o-transform: translate3d(0, 5px, 0);
		-ms-transform: translate3d(0, 5px, 0);
	}

	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
		-moz-transform: translate3d(0, 0, 0);
		-webkit-transform: translate3d(0, 0, 0);
		-o-transform: translate3d(0, 0, 0);
		-ms-transform: translate3d(0, 0, 0);
	}
}
@-ms-keyframes nav-cara-anime {
	from,
	60%,
	75%,
	90%,
	to {
		animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-moz-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-o-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-ms-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	}

	0% {
		opacity: 0;
		transform: translate3d(0, -3000px, 0);
		-moz-transform: translate3d(0, -3000px, 0);
		-webkit-transform: translate3d(0, -3000px, 0);
		-o-transform: translate3d(0, -3000px, 0);
		-ms-transform: translate3d(0, -3000px, 0);
	}

	60% {
		opacity: 1;
		transform: translate3d(0, 25px, 0);
		-moz-transform: translate3d(0, 25px, 0);
		-webkit-transform: translate3d(0, 25px, 0);
		-o-transform: translate3d(0, 25px, 0);
		-ms-transform: translate3d(0, 25px, 0);
	}

	75% {
		opacity: 1;
		transform: translate3d(0, -10px, 0);
		-moz-transform: translate3d(0, -10px, 0);
		-webkit-transform: translate3d(0, -10px, 0);
		-o-transform: translate3d(0, -10px, 0);
		-ms-transform: translate3d(0, -10px, 0);
	}

	90% {
		opacity: 1;
		transform: translate3d(0, 5px, 0);
		-moz-transform: translate3d(0, 5px, 0);
		-webkit-transform: translate3d(0, 5px, 0);
		-o-transform: translate3d(0, 5px, 0);
		-ms-transform: translate3d(0, 5px, 0);
	}

	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
		-moz-transform: translate3d(0, 0, 0);
		-webkit-transform: translate3d(0, 0, 0);
		-o-transform: translate3d(0, 0, 0);
		-ms-transform: translate3d(0, 0, 0);
	}
}

.nav_box .nav_list {
	width: 994px;
	height: 482px;
}
.nav_box li {
	position: absolute;
}
.nav_item.nav_top {
	top: 102px;
	left: 66px;
}
.nav_item.nav_feature {
	top: 102px;
	left: 394px;
}
.nav_item.nav_machine {
	top: 103px;
	right: 62px;
}
.nav_item.nav_gameflow {
	bottom: 62px;
	left: 45px;
}
.nav_item.nav_movie {
	bottom: 99px;
	left: 410px;
}
.nav_item.nav_spec {
	bottom: 103px;
	left: 663px;
}

.nav_box li a {
	display: block;
	overflow: hidden;
	position: relative;
	background-position: top center;
	background-repeat: no-repeat;
	background-size: 100%;
	text-indent: -100%;
	transition: all 0.1s ease-in-out;
	-webkit-transition: all 0.1s ease-in-out;
	-o-transition: all 0.1s ease-in-out;
}
.nav_box li a:hover {
	transform: translateY(10px);
	-ms-transform: translateY(10px);
	-o-transform: translateY(10px);
}

.nav_item.nav_top a {
	width: 218px;
	height: 96px;
	background-image: url(../img/nav_txt_top.png);
}
.nav_item.nav_feature a {
	width: 204px;
	height: 97px;
	background-image: url(../img/nav_txt_feature.png);
}
.nav_item.nav_machine a {
	width: 203px;
	height: 97px;
	background-image: url(../img/nav_txt_machine.png);
}
.nav_item.nav_gameflow a {
	width: 241px;
	height: 175px;
	background-image: url(../img/nav_txt_gameflow.png);
}
.nav_item.nav_movie a {
	width: 173px;
	height: 95px;
	background-image: url(../img/nav_txt_movie.png);
}
.nav_item.nav_spec a {
	width: 304px;
	height: 87px;
	background-image: url(../img/nav_txt_spec.png);
}

.nav_box li a:after {
	display: block;
	opacity: 0;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	height: 100%;
	background-position: top center;
	background-repeat: no-repeat;
	background-size: 100%;
	content: '';
}
.nav_box li a:hover:after {
	opacity: 0.3;
}
.nav_item.nav_top a:after {
	background-image: url(../img/nav_txt_top_hover.png);
}
.nav_item.nav_feature a:after {
	background-image: url(../img/nav_txt_feature_hover.png);
}
.nav_item.nav_machine a:after {
	background-image: url(../img/nav_txt_machine_hover.png);
}
.nav_item.nav_gameflow a:after {
	background-image: url(../img/nav_txt_gameflow_hover.png);
}
.nav_item.nav_movie a:after {
	background-image: url(../img/nav_txt_movie_hover.png);
}
.nav_item.nav_spec a:after {
	background-image: url(../img/nav_txt_spec_hover.png);
}

/*
******************************************************************
* sns_btn
******************************************************************/
.lower-page #contents .sns_btn {
	display: block;
	position: relative;
	z-index: 3;
	max-width: 885px;
	width: 100%;
	margin: 0 auto;
	padding: 40px 0 0;
	transition: all 0.5s ease-out 0.5s;
	-webkit-transition: all 0.5s ease-out 0.5s;
	box-sizing: border-box;
	text-align: right
}
.lower-page #contents .sns_btn ul {
	display: inline-block;
}
.lower-page #contents .sns_btn ul li {
	display: inline-block;
	vertical-align: top;
	margin-left: 10px;
}


/*
******************************************************************
* lower-page
******************************************************************/
.lower-page body {
	min-width: 1100px;
	min-height: 940px;
	background-color: #fadce9;
	color: #4b4b4b;
	line-height: 1.6;
}

.lower-page #wrp-all {
	overflow: hidden;
	position: relative;
	background-image: url(../img/bg_01_r.png),url(../img/bg_01_l.png);
	background-repeat: repeat-y,repeat-y;
	background-position: right top,left top;
	background-size: 228px 830px, 228px 830px;
}

.lower-page #bg-white {
	position: fixed;
	width: 100%;
	height: 100%;
	background: #fff;
	z-index: 999;
}
.lower-page #bg-main02 {
	position: absolute;
	background: url(../img/bg_02.png) no-repeat bottom left;
	background-size: 100%;
	width: 100%;
	height: 100%;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	z-index: 1;
}

.lower-page #contents {
	position: relative;
	min-width: 1100px;
	width: 100%;
	height: 100%;
	margin: 0 auto;
	padding-bottom: 160px;
}
.lower-page #contents .maker_logo {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
}
.lower-page #contents .logo_list {
	width: 1000px;
	margin: 0 auto;
	padding: 8px 0 0;
	box-sizing: border-box;
}
.lower-page #contents .logo_list li {
	display: block;
	float: left;
	margin-right: 35px;
}
.lower-page #contents .logo_list li img {
	display: block;
	position: relative;
	z-index: 2;
	width: 100%;
}
.lower-page #contents .logo_list .logo_bisty {
	position: relative;
	bottom: -2px;
}
.lower-page #contents .logo_list .logo_bisty:before {
	display: block;
	position: absolute;
	z-index: 1;
	top: -34px;
	left: -36px;
	width: 164px;
	height: 90px;
	background: url(../img/balloon_01.png) no-repeat top center;
	background-size: 164px 90px;
	content: '';
}
.lower-page #contents .logo_list .logo_fields {
	float: right;
	position: relative;
	bottom: 5px;
	margin-right: 0;
}
.lower-page #contents .logo_list .logo_fields:before {
	display: block;
	position: absolute;
	z-index: 1;
	top: -26px;
	left: -68px;
	width: 245px;
	height: 89px;
	background: url(../img/balloon_02.png) no-repeat top center;
	background-size: 245px 89px;
	content: '';
}
.lower-page #contents .logo_list .logo_bisty img {
	max-width: 98px;
}
.lower-page #contents .logo_list .logo_fields img {
	max-width: 129px;
}

.lower-page #contents h1 {
	position: absolute;
	top: 24px;
	left: 50%;
	z-index: 4;
	width: 356px;
	margin: 0 0 0 -177px;
}
.lower-page #contents h1 img {
	display: block;
	width: 100%;
}
.lower-page .action .rainbow {
	height: 906px;
}
.lower-page .rainbow {
	position: absolute;
	overflow: hidden;
	top: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 0;
	-webkit-transition: all 450ms ease;
	transition: all 450ms ease;
}
.lower-page .rainbow:before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 906px;
	background: url(../img/lower/bg_rainbow.png) no-repeat bottom center;
	background-size: cover;
	content: '';
}

.lower-page .main_area {
	position: relative;
	z-index: 3;
}
.lower-page .action.main_drum {
	opacity: 1;
}
.lower-page .main_drum {
	opacity: 0;
	position: relative;
	max-width: 885px;
	width: 100%;
	min-height: 733px;
	margin: 0 auto;
	padding: 0 0 13px;
	background: url(../img/lower/main_drum.png) no-repeat bottom center;
	background-size: 885px 396px;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.lower-page .main_cara {
	position: absolute;
	bottom: 13px;
}
.lower-page .main_cara img {
	display: block;
	width: 100%;
}
.lower-page .main_ttl {
	position: absolute;
	bottom: 81px;
	z-index: 2;
}

.lower-page .action.deco_light {
	opacity: 1;
	height: 723px;
}
.lower-page .deco_light {
	opacity: 0;
	overflow: hidden;
	position: absolute;
	top: 31px;
	left: 50%;
	width: 1150px;
	height: 0;
	margin: 0 0 0 -582px;
	-webkit-transition: all 300ms ease-out;
	transition: all 300ms ease-out;
}
.lower-page .deco_light:before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 1150px;
	height: 723px;
	background: url(../img/lower/bg_light.png) no-repeat bottom center;
	background-size: 1150px 723px;
	content: '';
}

.lower-page .main_deco {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.lower-page .deco_note img {
	opacity: 0;
	position: absolute;
}
.lower-page .action.deco_note img:not(:target) {
	opacity: 1\9;/*IE9用*/
}

.lower-page .note01 {
	top: 68px;
	left: 50%;
	margin: 0 0 0 -282px;
}
.lower-page .note02 {
	top: 86px;
	right: 50%;
	margin: 0 -242px 0 0;
}
.lower-page .note03 {
	top: 306px;
	left: 50%;
	margin: 0 0 0 -612px;
}
.lower-page .note04 {
	top: 257px;
	left: 50%;
	margin: 0 0 0 -33px;
}
.lower-page .note05 {
	top: 446px;
	right: 50%;
	margin: 0 -559px 0 0;
}
.lower-page .note06 {
	top: 630px;
	left: 50%;
	margin: 0 0 0 -176px;
}
.lower-page .note07 {
	top: 678px;
	right: 50%;
	margin: 0 -455px 0 0;
}

.lower-page .action.deco_note .note01 {
	animation: main-note-anime 0.5s ease 50ms 1 forwards;
	-moz-animation: main-note-anime 0.5s ease 50ms 1 forwards;
	-webkit-animation: main-note-anime 0.5s ease 50ms 1 forwards;
	-o-animation: main-note-anime 0.5s ease 50ms 1 forwards;
	-ms-animation: main-note-anime 0.5s ease 50ms 1 forwards;
}
.lower-page .action.deco_note .note02 {
	animation: main-note-anime 0.5s ease 150ms 1 forwards;
	-moz-animation: main-note-anime 0.5s ease 150ms 1 forwards;
	-webkit-animation: main-note-anime 0.5s ease 150ms 1 forwards;
	-o-animation: main-note-anime 0.5s ease 150ms 1 forwards;
	-ms-animation: main-note-anime 0.5s ease 150ms 1 forwards;
}
.lower-page .action.deco_note .note03 {
	animation: main-note-anime 0.5s ease 0S 1 forwards;
	-moz-animation: main-note-anime 0.5s ease 0S 1 forwards;
	-webkit-animation: main-note-anime 0.5s ease 0S 1 forwards;
	-o-animation: main-note-anime 0.5s ease 0S 1 forwards;
	-ms-animation: main-note-anime 0.5s ease 0S 1 forwards;
}
.lower-page .action.deco_note .note04 {
	animation: main-note-anime 0.5s ease 100ms 1 forwards;
	-moz-animation: main-note-anime 0.5s ease 100ms 1 forwards;
	-webkit-animation: main-note-anime 0.5s ease 100ms 1 forwards;
	-o-animation: main-note-anime 0.5s ease 100ms 1 forwards;
	-ms-animation: main-note-anime 0.5s ease 100ms 1 forwards;
}
.lower-page .action.deco_note .note05 {
	animation: main-note-anime 0.5s ease 50ms 1 forwards;
	-moz-animation: main-note-anime 0.5s ease 50ms 1 forwards;
	-webkit-animation: main-note-anime 0.5s ease 50ms 1 forwards;
	-o-animation: main-note-anime 0.5s ease 50ms 1 forwards;
	-ms-animation: main-note-anime 0.5s ease 50ms 1 forwards;
}
.lower-page .action.deco_note .note06 {
	animation: main-note-anime 0.5s ease 150ms 1 forwards;
	-moz-animation: main-note-anime 0.5s ease 150ms 1 forwards;
	-webkit-animation: main-note-anime 0.5s ease 150ms 1 forwards;
	-o-animation: main-note-anime 0.5s ease 150ms 1 forwards;
	-ms-animation: main-note-anime 0.5s ease 150ms 1 forwards;
}
.lower-page .action.deco_note .note07 {
	animation: main-note-anime 0.5s ease 0S 1 forwards;
	-moz-animation: main-note-anime 0.5s ease 0S 1 forwards;
	-webkit-animation: main-note-anime 0.5s ease 0S 1 forwards;
	-o-animation: main-note-anime 0.5s ease 0S 1 forwards;
	-ms-animation: main-note-anime 0.5s ease 0S 1 forwards;
}

@keyframes main-note-anime {
	0% {
		opacity: 1;
		-webkit-transform: scale(0.5);
		-ms-transform: scale(0.5);
		-o-transform: scale(0.5);
		transform: scale(0.5);
	}
	20% {
		-webkit-transform: scale(1.15);
		-ms-transform: scale(1.15);
		-o-transform: scale(1.15);
		transform: scale(1.15);
	}
	30% {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
	40% {
		-webkit-transform: scale(0.95);
		-ms-transform: scale(0.95);
		-o-transform: scale(0.95);
		transform: scale(0.95);
	}
	50% {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
	100% {
		opacity: 1;
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
}
@-moz-keyframes main-note-anime {
	0% {
		opacity: 1;
		-webkit-transform: scale(0.5);
		-ms-transform: scale(0.5);
		-o-transform: scale(0.5);
		transform: scale(0.5);
	}
	20% {
		-webkit-transform: scale(1.15);
		-ms-transform: scale(1.15);
		-o-transform: scale(1.15);
		transform: scale(1.15);
	}
	30% {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
	40% {
		-webkit-transform: scale(0.95);
		-ms-transform: scale(0.95);
		-o-transform: scale(0.95);
		transform: scale(0.95);
	}
	50% {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
	100% {
		opacity: 1;
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
}
@-webkit-keyframes main-note-anime {
	0% {
		opacity: 1;
		-webkit-transform: scale(0.5);
		-ms-transform: scale(0.5);
		-o-transform: scale(0.5);
		transform: scale(0.5);
	}
	20% {
		-webkit-transform: scale(1.15);
		-ms-transform: scale(1.15);
		-o-transform: scale(1.15);
		transform: scale(1.15);
	}
	30% {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
	40% {
		-webkit-transform: scale(0.95);
		-ms-transform: scale(0.95);
		-o-transform: scale(0.95);
		transform: scale(0.95);
	}
	50% {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
	100% {
		opacity: 1;
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
}
@-o-keyframes main-note-anime {
	0% {
		opacity: 1;
		-webkit-transform: scale(0.5);
		-ms-transform: scale(0.5);
		-o-transform: scale(0.5);
		transform: scale(0.5);
	}
	20% {
		-webkit-transform: scale(1.15);
		-ms-transform: scale(1.15);
		-o-transform: scale(1.15);
		transform: scale(1.15);
	}
	30% {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
	40% {
		-webkit-transform: scale(0.95);
		-ms-transform: scale(0.95);
		-o-transform: scale(0.95);
		transform: scale(0.95);
	}
	50% {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
	100% {
		opacity: 1;
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
}
@-ms-keyframes main-note-anime {
	0% {
		opacity: 1;
		-webkit-transform: scale(0.5);
		-ms-transform: scale(0.5);
		-o-transform: scale(0.5);
		transform: scale(0.5);
	}
	20% {
		-webkit-transform: scale(1.15);
		-ms-transform: scale(1.15);
		-o-transform: scale(1.15);
		transform: scale(1.15);
	}
	30% {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
	40% {
		-webkit-transform: scale(0.95);
		-ms-transform: scale(0.95);
		-o-transform: scale(0.95);
		transform: scale(0.95);
	}
	50% {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
	100% {
		opacity: 1;
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
		transform: scale(1);
	}
}

.content_box {
	position: relative;
	z-index: 2;
	text-align: center;
}

.lower-page .btn_next_box {
	position: relative;
	z-index: 2;
}
.lower-page .btn_next {
	display: block;
	position: relative;
	max-width: 783px;
	width: 100%;
	margin: 0 auto;
	transition: all 0.1s ease-in-out;
	-webkit-transition: all 0.1s ease-in-out;
	-o-transition: all 0.1s ease-in-out;
}
.lower-page .btn_next:after {
	display: block;
	opacity: 0;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	width: 783px;
	height: 236px;
	background: url(../img/btn_next_hover.png) no-repeat top center;
	background-size: 783px 236px;
	content: '';
	transition: all 0.1s ease-in-out;
	-webkit-transition: all 0.1s ease-in-out;
	-o-transition: all 0.1s ease-in-out;
}
.lower-page .btn_next:hover {
	transform: translateY(10px);
	-ms-transform: translateY(10px);
	-o-transform: translateY(10px);
}
.lower-page .btn_next:hover:after {
	opacity: 0.3;
}

.lower-page .btn_next img {
	display: block;
	width: 100%;
}

/*footer*/
.lower-page #footer {
	position: absolute;
	bottom: 33px;
	left: 0;
	right: 0;
	z-index: 3;
	padding: 10px;
	width: 100%;
	margin: auto;
	text-align: center;
	box-sizing: border-box;
}
.lower-page #footer .box-copy{
	display: block;
	width: 1000px;
	margin: 0 auto;
	vertical-align: middle;
}
.lower-page #footer .box-copy li {
	display: inline-block;
	font-family: Verdana, "Droid Sans";
	color: #fff;
	position: relative;
	left: 33px;
	font-weight: bold;
	font-size: 15px;
	line-height: 1;
	text-shadow: 0px 0px 5px #cf2874,0px 0px 5px #cf2874,0px 0px 5px #cf2874,0px 0px 5px #cf2874,0px 0px 5px #cf2874;
}
.lower-page #footer .box-copy li + li {
	display: inline-block;
	margin-left: 3px;
}

/*
******************************************************************
* utility
******************************************************************/
/* 要素アクション */
*[data-sf] {
	opacity: 0;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
	-webkit-transition-delay: 0.3s;
	transition-delay: 0.3s;
}

*[data-sf="slide-top"] {
	-webkit-transform: translate(0, 100px);
	transform: translate(0, 100px);
}
*[data-sf="slide-left"] {
	-webkit-transform: translate(-300px, 0);
	transform: translate(-300px, 0);
}
*[data-sf="slide-right"] {
	-webkit-transform: translate(300px, 0);
	transform: translate(300px, 0);
}

*.animated[data-sf="fade-in"] {
	opacity: 1;
}
*.animated[data-sf="slide-top"],
*.animated[data-sf="slide-left"],
*.animated[data-sf="slide-right"] {
	opacity: 1;
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0);
}