@CHARSET "UTF-8";

@font-face {
	font-family: 'Makinas5';
	src: url('../../font/Makinas-Scrap-5.otf') format('opentype');
}

@font-face {
	font-family: 'GnKillGothic';
	src: url('../../font/GN-KillGothic-U-KanaNA.otf') format('opentype');
}

.scrollable {
	overflow-y: auto;
	height: 100%;
}

.chibiPartsBtnR {
	fill: rgba(255, 255, 255, 0.6);
	stroke: #333;
	stroke-width: 1px;
}

.chibiPartsBtn {
	fill: white;
	opacity: 0;
	cursor: pointer;
}

.chibiPartsBtnR.selected {
	fill: #CCFF00;
}

.chibiCategoryBtnR {
	fill: none;
}

.chibiCategoryBtn {
	fill: white;
	opacity: 0;
	cursor: pointer;
}

.chibiCategoryBtnR.selected {
	/*	fill: #AFAFAF;	*/
}

g.menubutton {
	cursor: pointer;
}

g.resultbutton {
	cursor: pointer;
}

g.movebutton {
	cursor: pointer;
}

svg#chaSvgColor rect {
	cursor: pointer;
}

circle.ccolorbtn {
	cursor: pointer;
}

svg#chaSvgSave {
	overflow: visible;
}

/* キラキラ用 */

.card_holo {
	/* box-shadow: -3px -3px 3px 0 rgba(38, 230, 247, 0.6), 3px 3px 3px 0 rgba(247, 89, 228, 0.6), 0 0 6px 2px rgba(255, 231, 89, 0.6), 0 35px 25px -15px rgba(0, 0, 0, 0.5); */
	background-image: url("../../img/effect/holo01.svg");
}

.card_holo:before, .card_holo:after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	top: 0;
	background-image: linear-gradient(115deg, transparent 0%, #00e7ff 30%, #ff00e7 70%, transparent 100%);
	background-position: 0% 0%;
	background-repeat: no-repeat;
	background-size: 250% 250%;
	mix-blend-mode: color-dodge;
	opacity: 0.2;
	z-index: 1;
}

.card_holo:before {
	animation: reflection 3s linear infinite;
}

.card_holo:after {
	background-image: url("../../img/effect/sparkles.gif");
	background-position: center;
	background-size: 200%;
	mix-blend-mode: color-dodge;
	opacity: 1;
	z-index: 2;
}

.card_holo.active:before {
	opacity: 1;
	animation: none;
	transition: none;
	background-image: linear-gradient(115deg, transparent 0%, transparent 25%, rgba(0, 231, 255, 0.7) 45%, rgba(255, 0, 231, 0.7) 55%, transparent 70%, transparent 100%);
	background-position: 85% 95%;
}

@keyframes holoSparkle {
	0% {
		opacity: 0;
	}

	12% {
		opacity: 1;
	}

	70% {
		opacity: 0.5;
	}

	95% {
		opacity: 0.2;
	}
}

@keyframes holoGradient {
	3% {
		opacity: 0;
	}

	5% {
		background-position: 0% 0%;
	}

	7% {
		opacity: 0.5;
	}

	9% {
		background-position: 100% 100%;
	}

	11% {
		opacity: 0;
	}

	50% {
		opacity: 0;
		background-position: 100% 100%;
	}

	55% {
		opacity: 0.3;
	}

	70% {
		opacity: 0;
		background-position: 0% 0%;
	}
}

@keyframes reflection {
	0% {
		background-position: 100% 100%;
		opacity: 0;
	}

	5% {
		background-position: 75% 75%;
		opacity: 1;
	}

	20% {
		background-position: 0% 0%;
		opacity: 0;
	}

	100% {
		background-position: 0% 0%;
		opacity: 0;
	}
}

.pleasetap p {
	font-size: 0.75rem;
	text-align: center;
	margin: 0;
}

#chaOpacityControl {
	width: 100%;
	height: 100%;
	position: absolute;
	overflow: hidden;
	top: 60px;
	left: 1rem;
}

#opacity {
	position: absolute;
	transform-origin: left top;
	transform: rotate(270deg) translateX(-100%);
	width: 500px;
	left: 0;
	cursor: pointer;
	appearance: none;
	border-radius: 2rem;
}

.tap-effect {
	position: fixed;
	width: 50px;
	height: 50px;
	background-color: rgba(255, 255, 255, 0.6);
	border-radius: 50%;
	animation: tapAnimation 0.8s ease-out;
	pointer-events: none;
	/* ユーザーのアクションに反応しないようにする */
	z-index: 10000;
}

@keyframes tapAnimation {
	0% {
		width: 10px;
		height: 10px;
		opacity: 1;
	}

	100% {
		width: 50px;
		height: 50px;
		opacity: 0;
	}
}

.disabled {
	filter: grayscale(100%);
	pointer-events: none;
	opacity: 0.4;
}

/* SNS share styles are in result.css */