
@-ms-viewport
{
	width: auto;
	initial-scale: 1;
}
@viewport
{
	width: device-width;
}

html {
	font-size: 100%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-webkit-overflow-scrolling: touch;
	-webkit-font-smoothing: subpixel-antialiased;
	font-size:15px;
}
html, button, input, select, textarea {
	font-family: 'Noto Sans Japanese', sans-serif;
	letter-spacing: 1px;
}
html, body {
	min-width: 100%;
	width: 100%;
	padding: 0;
	margin: 0;
	height: 100%;
}
body {
	font-family: 'Noto Sans Japanese', sans-serif;
	color: rgba(0,0,0,1.0);
}
* {
	box-sizing: border-box;
}
*:before,
*:after {
	box-sizing: border-box;
}
a:active,
a:focus {
	text-decoration: none;
}
/*-----------------------------------------
** section
-----------------------------------------*/
section {
	margin: 0;
	padding: 0;
}
@media screen and (max-width:768px) {
	section {
		margin: 0;
		padding: 0;
		max-width: 100%;
		min-width: inherit;
	}
}


/*-----------------------------------------
** btn effect
-----------------------------------------*/
.__rotate {
	transition: 0.3s all;
}
.__rotate:hover {
	transform: rotateX(360deg);
}
/* rumble effect */
.__rumble:hover{
	animation: rumble 0.12s linear 2;
}

@keyframes rumble{
	0%	{transform:rotate(0deg)	translate(0,0);}
	12.5%	{transform:rotate(0.4deg)	translate(1px,-1px);}
	25%	{transform:rotate(0.8deg)	translate(0px,1px);}
	37.5%	{transform:rotate(0.4deg)	translate(-1px,0);}
	50%	{transform:rotate(0deg)	translate(0,0);}
	62.5%	{transform:rotate(-0.4deg)	translate(1px,0);}
	75%	{transform:rotate(-0.8deg)	translate(0,1px);}
	87.5%	{transform:rotate(-0.4deg)	translate(-1px,-1px);}
	100%	{transform:rotate(0deg)	translate(0,0);}
}

/* ripple efect */
.ripple__effect {
	/* 値の変更はエフェクト形体・サイズ・スピードに影響する */
	width: 150px;
	height: 150px;
	/* 必須 */
	position: absolute;
	border-radius: 100%;
	pointer-events: none;
	transform: scale(0);
	opacity: 0;
}
/* エフェクト要素の色を指定 */
.ripple__effect.is-orange { background: #FFB700;}
.ripple__effect.is-blue   { background: #4aa3df;}
.ripple__effect.is-black  { background: #999;}
/* classが付与されたらアニメーションを実行 */
.ripple__effect.is-show {
	animation: ripple 0.75s ease-out;
}
@keyframes ripple {
	from {
		opacity: 1;
		background: rgba(255,255,25,,1.0);
	}
	to {
		transform: scale(2);
		opacity: 0;
		background: rgba(255,255,25,,1.0);
	}
}

@keyframes zoomUp {
	0% {
		transform: translateX(50%) scale(1.0);
	}
	50% {
		transform: translateX(50%) scale(1.1);
	}
	100% {
		transform: translateX(50%) scale(1.0);
	}
}

/* blur efect */
@keyframes blurAnimation {
	0% {
		filter: blur(20px);
	}
	100% {
		filter: blur(0);
	}
}
.__blurAnimation {
	animation: blurAnimation 1s linear 0s 1 normal forwards running;
}
