Merge pull request #7 from yuki540net/feature/gab-animation__sp
Feature/gab animation sp
This commit is contained in:
commit
2241e45737
@ -172,25 +172,27 @@
|
||||
<section><div></div><div></div></section>
|
||||
</div>
|
||||
<div class="gab-animation__palette">
|
||||
<section class="paint">
|
||||
<div></div><div></div><div></div><div></div>
|
||||
<section class="char char-1"></section>
|
||||
</section>
|
||||
<section class="paint">
|
||||
<div></div><div></div><div></div><div></div>
|
||||
<section class="char char-2"></section>
|
||||
</section>
|
||||
<section class="paint">
|
||||
<div></div><div></div><div></div><div></div>
|
||||
<section class="char char-3"></section>
|
||||
</section>
|
||||
<section class="paint">
|
||||
<div></div><div></div><div></div><div></div>
|
||||
<section class="char char-4"></section>
|
||||
</section>
|
||||
<section class="paint">
|
||||
<div></div><div></div><div></div><div></div>
|
||||
<section class="char char-5"></section>
|
||||
<section class="paint-box">
|
||||
<section class="paint">
|
||||
<div></div><div></div><div></div><div></div>
|
||||
<section class="char char-1"></section>
|
||||
</section>
|
||||
<section class="paint">
|
||||
<div></div><div></div><div></div><div></div>
|
||||
<section class="char char-2"></section>
|
||||
</section>
|
||||
<section class="paint">
|
||||
<div></div><div></div><div></div><div></div>
|
||||
<section class="char char-3"></section>
|
||||
</section>
|
||||
<section class="paint">
|
||||
<div></div><div></div><div></div><div></div>
|
||||
<section class="char char-4"></section>
|
||||
</section>
|
||||
<section class="paint">
|
||||
<div></div><div></div><div></div><div></div>
|
||||
<section class="char char-5"></section>
|
||||
</section>
|
||||
</section>
|
||||
<section class="frame frame-top">
|
||||
<div></div><div></div><div></div><div></div><div></div>
|
||||
|
||||
206
src/scss/keyframes/sp/_gab-animation.scss
Normal file
206
src/scss/keyframes/sp/_gab-animation.scss
Normal file
@ -0,0 +1,206 @@
|
||||
@keyframes gab-animation__fall-frame {
|
||||
0% { top: -100px; }
|
||||
50% { top: calc(50% + 180px); transform: scale(1); }
|
||||
60% { top: calc(50% + 180px); transform: scale(1.4, 0.8); }
|
||||
70% { transform: scale(1); }
|
||||
100% { top: calc(50% - 50px); }
|
||||
}
|
||||
@keyframes gab-animation__scale-frame {
|
||||
0% { transform: scale(1); opacity: 1; }
|
||||
25% { transform: scale(3,2); opacity: 0.5; }
|
||||
50% { transform: scale(1); opacity: 1; }
|
||||
75% { transform: scale(2,3); opacity: 0.5; }
|
||||
100% { transform: scale(1); opacity:1; }
|
||||
}
|
||||
@keyframes gab-animation__open-frame {
|
||||
from {
|
||||
top: calc(50% - 50px); left: calc(50% - 50px);
|
||||
width: 100px; height: 100px;
|
||||
border-radius: 50%;
|
||||
}
|
||||
to {
|
||||
top: 40px; left: 40px;
|
||||
width: calc(100% - 80px); height: calc(100% - 80px);
|
||||
border-radius: 0%;
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes gab-animation__move-y1-area-1 {
|
||||
from { transform: translate(0, 0); }
|
||||
to { transform: translate(0, -50px); }
|
||||
}
|
||||
@keyframes gab-animation__move-y2-area-1 {
|
||||
from { transform: translate(calc(-100% + 5px), -50px); }
|
||||
to { transform: translate(calc(-100% + 5px), 100%); }
|
||||
}
|
||||
@keyframes gab-animation__move-y1-area-2 {
|
||||
from { transform: translate(0, 0); }
|
||||
to { transform: translate(0, 50px); }
|
||||
}
|
||||
@keyframes gab-animation__move-y2-area-2 {
|
||||
from { transform: translate(calc(100% - 5px), 50px); }
|
||||
to { transform: translate(calc(100% - 5px), -100%); }
|
||||
}
|
||||
@keyframes gab-animation__move-x-area-1 {
|
||||
from { transform: translate(0, -50px); }
|
||||
to { transform: translate(calc(-100% + 5px), -50px); }
|
||||
}
|
||||
@keyframes gab-animation__move-x-area-2 {
|
||||
from { transform: translate(0, 50px); }
|
||||
to { transform: translate(calc(100% - 5px), 50px); }
|
||||
}
|
||||
|
||||
@keyframes gab-animation__move-y-area-bg-1 {
|
||||
from { transform: translate(calc(-100% + 5px), -100%); }
|
||||
to { transform: translate(calc(-100% + 5px), 0%); }
|
||||
}
|
||||
@keyframes gab-animation__move-y-area-bg-2 {
|
||||
from { transform: translate(calc(100% - 5px), 100%); }
|
||||
to { transform: translate(calc(100% - 5px), 0%); }
|
||||
}
|
||||
@keyframes gab-animation__move-x-area-bg-1 {
|
||||
from { transform: translate(calc(-100% + 5px), 0%); }
|
||||
to { transform: translate(0, 0%); }
|
||||
}
|
||||
@keyframes gab-animation__move-x-area-bg-2 {
|
||||
from { transform: translate(calc(100% - 5px), 0%); }
|
||||
to { transform: translate(0, 0%); }
|
||||
}
|
||||
|
||||
@keyframes gab-animation__radius-frame {
|
||||
from { border-radius: 0; }
|
||||
to { border-radius: 8px; }
|
||||
}
|
||||
|
||||
@keyframes gab-animation__show-bg {
|
||||
from { opacity: 0; }
|
||||
to { opacity: 0.2; }
|
||||
}
|
||||
|
||||
@keyframes gab-animation__x-paint-ball-1 {
|
||||
from { transform: translateX(0); }
|
||||
to { transform: translateX(calc(100% + 50px)); }
|
||||
}
|
||||
@keyframes gab-animation__y-paint-ball-1 {
|
||||
0% { transform: translateY(0); }
|
||||
50% { transform: translateY(-300px); }
|
||||
100% { transform: translateY(0px); }
|
||||
}
|
||||
@keyframes gab-animation__x-paint-ball-2 {
|
||||
from { transform: translateX(0); }
|
||||
to { transform: translateX(calc(-100% + -50px)); }
|
||||
}
|
||||
@keyframes gab-animation__y-paint-ball-2 {
|
||||
0% { transform: translateY(0); }
|
||||
50% { transform: translateY(-300px); }
|
||||
100% { transform: translateY(0px); }
|
||||
}
|
||||
|
||||
@keyframes gab-animation__rotate-illust {
|
||||
0% { transform: rotateY(90deg); }
|
||||
50% { transform: rotateY(-2deg); }
|
||||
100% { transform: rotateY(0deg); }
|
||||
}
|
||||
|
||||
@keyframes gab-animation__fall-ball-effect {
|
||||
from { top: -60px; }
|
||||
to { top: calc(100% - 250px); }
|
||||
}
|
||||
@keyframes gab-animation__scale-ball-effect {
|
||||
from { transform: scale(1); opacity: 1; }
|
||||
to { transform: scale(4); opacity: 0; }
|
||||
}
|
||||
|
||||
@keyframes gab-animation__attack-gab {
|
||||
from { transform: translateY(0); opacity: 1; }
|
||||
to { transform: translateY(8px); opacity: 0.8; }
|
||||
}
|
||||
@keyframes gab-animation__down-gab {
|
||||
from { transform-origin: center bottom; transform: rotateX(0deg); opacity: 1; }
|
||||
to { transform-origin: center bottom; transform: rotateX(90deg); opacity: 0; }
|
||||
}
|
||||
|
||||
@keyframes gab-animation__message {
|
||||
from { transform: scale(3) rotate(35deg); opacity: 0; }
|
||||
to { transform: scale(0.7) rotate(-8deg); opacity: 1; }
|
||||
}
|
||||
|
||||
@keyframes gab-animation__fall-paint-1 {
|
||||
0% { top: -100px; transform: scaleX(1); }
|
||||
60% { transform: scaleX(1); }
|
||||
100% { top: calc(50% - 70px); transform: scaleX(1.2); }
|
||||
}
|
||||
@keyframes gab-animation__fall-paint-2 {
|
||||
0% { top: -100px; transform: scaleX(1); }
|
||||
60% { transform: scaleX(1); }
|
||||
100% { top: calc(50% - 30px); transform: scaleX(1.2); }
|
||||
}
|
||||
|
||||
@keyframes gab-animation__show-clock-frame {
|
||||
from { transform: scale(0); }
|
||||
to { transform: scale(1); }
|
||||
}
|
||||
@keyframes gab-animation__show-clock-hand {
|
||||
from { height: 0; top: 50%; }
|
||||
to { height: 100%; top: 0%; }
|
||||
}
|
||||
|
||||
@keyframes gab-animation__reverse-clock-hand {
|
||||
from { transform: rotate(0deg); }
|
||||
to { transform: rotate(-30deg); }
|
||||
}
|
||||
@keyframes gab-animation__rotate-clock-hand {
|
||||
from { transform: rotate(-30deg); }
|
||||
to { transform: rotate(360deg); }
|
||||
}
|
||||
@keyframes gab-animation__scale-clock-hand {
|
||||
from { width: 10px; left: calc(50% - 5px); }
|
||||
to { width: 100%; left: 0; }
|
||||
}
|
||||
|
||||
@keyframes gab-animation__camera {
|
||||
from { perspective: 20px; }
|
||||
to { perspective: 400px; }
|
||||
}
|
||||
@keyframes gab-animation__show-layer {
|
||||
0% { transform: translateY(-100%); }
|
||||
70% { transform: translateY(0%); }
|
||||
85% { transform: translateY(-10px); }
|
||||
100% { transform: translateY(0%); }
|
||||
}
|
||||
|
||||
@keyframes gab-animation__effect {
|
||||
from { transform: translateY(60px); }
|
||||
to { transform: translateY(-50px); }
|
||||
}
|
||||
@keyframes gab-animation__scale-ball {
|
||||
from { transform: scale(0); }
|
||||
to { transform: scale(1.4); }
|
||||
}
|
||||
|
||||
@keyframes gab-animation__move-end-block-1__sp {
|
||||
0% { transform: translateY(0) scale(1); opacity: 1; }
|
||||
90% { opacity: 1; }
|
||||
100% { transform: translateY(-100px) scale(0.4); opacity: 0; }
|
||||
}
|
||||
@keyframes gab-animation__move-end-block-2__sp {
|
||||
0% { transform: translateY(0) scale(1); opacity: 1; }
|
||||
90% { opacity: 1; }
|
||||
100% { transform: translateY(100px) scale(0.4); opacity: 0; }
|
||||
}
|
||||
@keyframes gab-animation__show-end-block__sp {
|
||||
from { height: 0; top: 50%; }
|
||||
to { height: 200px; top: calc(50% - 100px); }
|
||||
}
|
||||
@keyframes gab-animation__close__sp {
|
||||
from {
|
||||
width: 200px; height: 200px;
|
||||
top: calc(50% - 100px); left: calc(50% - 100px);
|
||||
border-radius: 50%;
|
||||
}
|
||||
to {
|
||||
width: 100%; height: 100%;
|
||||
top: 0; left: 0;
|
||||
border-radius: 0%;
|
||||
}
|
||||
}
|
||||
868
src/scss/modules/sp/_gab-animation.scss
Normal file
868
src/scss/modules/sp/_gab-animation.scss
Normal file
@ -0,0 +1,868 @@
|
||||
@include sp-layout {
|
||||
.gab-animation {
|
||||
position: absolute;
|
||||
top: 0; left: 0;
|
||||
width: 100%; height: 100%;
|
||||
background-color: $theme-light-pink;
|
||||
overflow: hidden;
|
||||
z-index: 999;
|
||||
}
|
||||
|
||||
/*** bg ***/
|
||||
.gab-animation__bg {
|
||||
position: absolute;
|
||||
top: 0; left: 0;
|
||||
width: 100%; height: 100%;
|
||||
|
||||
div {
|
||||
width: 100%; height:12.5%;
|
||||
background-color: $theme-bg;
|
||||
transform: translateX(-100%);
|
||||
}
|
||||
}
|
||||
|
||||
/*** frame ***/
|
||||
.gab-animation__frame {
|
||||
position: absolute;
|
||||
top: -100px; left: calc(50% - 50px);
|
||||
width: 100px; height: 100px;
|
||||
border-radius: 50%;
|
||||
overflow: hidden;
|
||||
|
||||
.area {
|
||||
position: relative;
|
||||
float: left;
|
||||
width: 50%; height: 100%;
|
||||
overflow: hidden;
|
||||
|
||||
&::before,
|
||||
&::after {
|
||||
content: ""; display: block;
|
||||
position: absolute;
|
||||
top: 0; left: 0;
|
||||
width: 100%; height: 100%;
|
||||
}
|
||||
&::before { background-color: $theme-light-pink; }
|
||||
&::after { background-color: $theme-purple; }
|
||||
}
|
||||
.area:nth-child(1) {
|
||||
&::after { transform: translate(calc(-100% + 5px), -100%); }
|
||||
}
|
||||
.area:nth-child(2) {
|
||||
&::after { transform: translate(calc(100% - 5px), 100%); }
|
||||
}
|
||||
|
||||
&::after {
|
||||
content: ""; display: block;
|
||||
position: absolute;
|
||||
width: 100%; height: 100%;
|
||||
background-image: url(../images/gab-animation/bg.png);
|
||||
background-size: 30px;
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.gab-animation__illust {
|
||||
position: absolute;
|
||||
top: 0; left: 0;
|
||||
width: 100%; height: 100%;
|
||||
|
||||
.paint-balls {
|
||||
position: absolute;
|
||||
top: 0; left: 0;
|
||||
width: 100%; height: 100%;
|
||||
|
||||
div {
|
||||
float: left;
|
||||
width: 50%; height: 100%;
|
||||
|
||||
&::after {
|
||||
position: absolute;
|
||||
top: calc(50% - 50px);
|
||||
content: ""; display: block;
|
||||
width: 100px; height: 100px;
|
||||
background-color: #F0DB9E;
|
||||
border-radius: 50%;
|
||||
}
|
||||
}
|
||||
div:nth-child(1) { &::after { left: -100px; } }
|
||||
div:nth-child(2) { &::after { right: -100px; } }
|
||||
}
|
||||
|
||||
.illust {
|
||||
position: absolute;
|
||||
top: 0; left: 0;
|
||||
width: 100%; height: 100%;
|
||||
perspective: 400px;
|
||||
|
||||
&::after {
|
||||
content: ""; display: block;
|
||||
width: 100%; height: 100%;
|
||||
background-image: url(../images/gab-animation/gab.png);
|
||||
background-size: auto 90%;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center bottom;
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.gab-animation__effects {
|
||||
position: absolute;
|
||||
top: 0; left: 0;
|
||||
width: 100%; height: 100%;
|
||||
|
||||
.ball {
|
||||
position: absolute;
|
||||
border-radius: 50%;
|
||||
}
|
||||
.ball:nth-child(2n - 1) { top: -60px; width: 60px; height: 60px; }
|
||||
.ball:nth-child(2n) { top: -45px; width: 45px; height: 45px; }
|
||||
.ball:nth-child(1) { background-color: $theme-light-pink; left: calc(50% - 150px); }
|
||||
.ball:nth-child(2) { background-color: $theme-light-purple; left: calc(50% - 30px); }
|
||||
.ball:nth-child(3) { background-color: $theme-gray; left: calc(50% + 45px); }
|
||||
.ball:nth-child(4) { background-color: $theme-light-pink; left: calc(50% - 150px); }
|
||||
.ball:nth-child(5) { background-color: $theme-light-purple; left: calc(50% - 30px); }
|
||||
.ball:nth-child(6) { background-color: $theme-gray; left: calc(50% + 45px); }
|
||||
.ball:nth-child(7) { background-color: $theme-light-pink; left: calc(50% - 150px); }
|
||||
.ball:nth-child(8) { background-color: $theme-light-purple; left: calc(50% - 30px); }
|
||||
}
|
||||
|
||||
.gab-animation__gauge {
|
||||
position: absolute;
|
||||
bottom: 50px; left: calc(50% - 150px);
|
||||
width: 300px; height: 50px;
|
||||
overflow: hidden;
|
||||
|
||||
.name {
|
||||
width: 100px; height: 18px;
|
||||
font-size: 14px;
|
||||
color: $theme-purple;
|
||||
line-height: 18px;
|
||||
padding: 0 5px;
|
||||
font-weight: bold;
|
||||
box-sizing: border-box;
|
||||
border: solid 2px $theme-purple;
|
||||
border-bottom: none;
|
||||
background-color: #eee;
|
||||
transform: translateX(-100%);
|
||||
}
|
||||
.gauge {
|
||||
width: 100%; height: 32px;
|
||||
box-sizing: border-box;
|
||||
border: solid 2px $theme-purple;
|
||||
background-color: #ff2600;
|
||||
transform: translateX(-100%);
|
||||
overflow: hidden;
|
||||
|
||||
&::after {
|
||||
width: 100%; height: 100%;
|
||||
content: ""; display: block;
|
||||
background-color: #86c351;
|
||||
transform: translateX(0%);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.gab-animation__back-overray {
|
||||
position: absolute;
|
||||
top: 0; left: 0;
|
||||
width: 100%; height: 100%;
|
||||
|
||||
section {
|
||||
position: absolute;
|
||||
top: 0; left: 0;
|
||||
width: 100%; height: 100%;
|
||||
|
||||
div {
|
||||
float: left;
|
||||
content: ""; display: block;
|
||||
width: 50%; height: 100%;
|
||||
overflow: hidden;
|
||||
|
||||
&::after {
|
||||
content: ""; display: block;
|
||||
width: 100%; height: 100%;
|
||||
}
|
||||
}
|
||||
div:nth-child(1):after { transform: translateX(100%); }
|
||||
div:nth-child(2):after { transform: translateX(-100%); }
|
||||
}
|
||||
section:nth-child(1) { div:after { background-color: $theme-pink; } }
|
||||
section:nth-child(2) { div:after { background-color: $theme-light-pink; } }
|
||||
section:nth-child(3) { div:after { background-color: $theme-bg; } }
|
||||
}
|
||||
|
||||
.gab-animation__message {
|
||||
position: absolute;
|
||||
top: calc(50% - 74.5px); left: calc(50% - 200px);
|
||||
width: 400px; height: 149px;
|
||||
background-image: url(../images/gab-animation/message.png);
|
||||
background-size: 100%;
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
.gab-animation__front-overray {
|
||||
position: absolute;
|
||||
top: 0; left: 0;
|
||||
width: 100%; height: 100%;
|
||||
|
||||
section {
|
||||
position: absolute;
|
||||
top: 0; left: 0;
|
||||
width: 100%; height: 100%;
|
||||
|
||||
div {
|
||||
float: left;
|
||||
content: ""; display: block;
|
||||
width: 50%; height: 100%;
|
||||
overflow: hidden;
|
||||
|
||||
&::after {
|
||||
content: ""; display: block;
|
||||
width: 100%; height: 100%;
|
||||
background-color: $theme-purple;
|
||||
}
|
||||
}
|
||||
div:nth-child(1):after { transform: translateX(100%); }
|
||||
div:nth-child(2):after { transform: translateX(-100%); }
|
||||
}
|
||||
}
|
||||
|
||||
.gab-animation__palette {
|
||||
position: absolute;
|
||||
top: 0; left: 0;
|
||||
width: 100%; height: 100%;
|
||||
|
||||
.paint-box {
|
||||
position: absolute;
|
||||
top: 0; left: 0;
|
||||
width: 100%; height: 100%;
|
||||
transform: scale(0.5);
|
||||
}
|
||||
|
||||
.paint {
|
||||
position: absolute; top: -100px;
|
||||
width: 100px; height: 100px;
|
||||
border-radius: 50%;
|
||||
background-color: $theme-bg;
|
||||
opacity: 0;
|
||||
|
||||
div {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
overflow: hidden;
|
||||
|
||||
&::after {
|
||||
content: ""; display: block;
|
||||
position: absolute;
|
||||
top: 0; left: 0;
|
||||
width: 100%; height: 100%;
|
||||
background-color: $theme-bg;
|
||||
transform: translateY(-100%);
|
||||
}
|
||||
}
|
||||
div:nth-child(1) {
|
||||
left: calc(50% - 5px);
|
||||
width: 10px; height: 120px;
|
||||
&::after { border-radius: 10px; }
|
||||
}
|
||||
div:nth-child(2) {
|
||||
left: 2px;
|
||||
width: 18px; height: 70px;
|
||||
&::after { border-radius: 15px; }
|
||||
}
|
||||
div:nth-child(3) {
|
||||
right: 20px;
|
||||
width: 15px; height: 75px;
|
||||
&::after { border-radius: 10px; }
|
||||
}
|
||||
div:nth-child(4) {
|
||||
right: 0px;
|
||||
width: 10px; height: 50px;
|
||||
&::after { border-radius: 10px; }
|
||||
}
|
||||
|
||||
.char {
|
||||
position: absolute;
|
||||
top: 0; left: 0;
|
||||
width: 100%; height: 100%;
|
||||
border-radius: 50%;
|
||||
overflow: hidden;
|
||||
background-size: 80%;
|
||||
background-position: center;
|
||||
background-repeat: no-repeat;
|
||||
|
||||
&::after {
|
||||
content: ""; display: block;
|
||||
position: absolute;
|
||||
top: 0; left: 0;
|
||||
width: 100%; height: 100%;
|
||||
background-color: $theme-bg;
|
||||
}
|
||||
}
|
||||
.char-1 { background-image: url(../images/gab-animation/name/1.png); }
|
||||
.char-2 { background-image: url(../images/gab-animation/name/2.png); }
|
||||
.char-3 { background-image: url(../images/gab-animation/name/3.png); }
|
||||
.char-4 { background-image: url(../images/gab-animation/name/4.png); }
|
||||
.char-5 { background-image: url(../images/gab-animation/name/5.png); }
|
||||
}
|
||||
.paint:nth-child(1) { left: calc(50% - 330px); }
|
||||
.paint:nth-child(2) { left: calc(50% - 190px); }
|
||||
.paint:nth-child(3) { left: calc(50% - 50px); }
|
||||
.paint:nth-child(4) { left: calc(50% + 90px); }
|
||||
.paint:nth-child(5) { left: calc(50% + 230px); }
|
||||
|
||||
.frame {
|
||||
position: absolute; left: 0;
|
||||
width: 100%; height: calc((100% - 300px) / 2);
|
||||
overflow: hidden;
|
||||
|
||||
div {
|
||||
position: absolute;
|
||||
top: 0; left: 0;
|
||||
width: 100%; height: 100%;
|
||||
}
|
||||
div:nth-child(1) { background-color: $theme-gray; }
|
||||
div:nth-child(2) { background-color: $theme-bg; }
|
||||
div:nth-child(3) { background-color: $theme-light-pink; }
|
||||
div:nth-child(4) { background-color: $theme-pink; }
|
||||
div:nth-child(5) { background-color: $theme-mint; }
|
||||
}
|
||||
.frame-top {
|
||||
top: 0;
|
||||
div { transform: translateY(100%); }
|
||||
}
|
||||
.frame-bottom {
|
||||
bottom: 0;
|
||||
div { transform: translateY(-100%); }
|
||||
}
|
||||
|
||||
.clock {
|
||||
position: absolute;
|
||||
top: calc((100% - 300px) / 2); left: 0;
|
||||
width: 100%; height: 300px;
|
||||
|
||||
&::before,
|
||||
&::after {
|
||||
content: ""; display: block;
|
||||
position: absolute;
|
||||
transform: scale(0);
|
||||
}
|
||||
&::before {
|
||||
top: calc(50% - 100px);
|
||||
left: calc(50% - 100px);
|
||||
width: 200px; height: 200px;
|
||||
border-radius: 50%;
|
||||
box-sizing: border-box;
|
||||
border: dashed 5px $theme-mint;
|
||||
}
|
||||
&::after {
|
||||
top: calc(50% - 125px);
|
||||
left: calc(50% - 125px);
|
||||
width: 250px; height: 250px;
|
||||
border-radius: 50%;
|
||||
box-sizing: border-box;
|
||||
border: solid 10px $theme-mint;
|
||||
border-top-color: transparent;
|
||||
border-bottom-color: transparent;
|
||||
}
|
||||
|
||||
div {
|
||||
position: absolute;
|
||||
left: calc(50% - 5px); top: 50%;
|
||||
width: 10px; height: 0;
|
||||
background-color: $theme-mint;
|
||||
z-index: 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.gab-animation__camera {
|
||||
position: absolute;
|
||||
top: 0; left: 0;
|
||||
width: 100%; height: 100%;
|
||||
perspective: 20px;
|
||||
z-index: 2;
|
||||
|
||||
.layer {
|
||||
position: absolute;
|
||||
top: calc(50% - 225px); left: calc(50% - 325px);
|
||||
width: 650px; height: 450px;
|
||||
border-radius: 30px;
|
||||
overflow: hidden;
|
||||
box-shadow: 0 0 10px #aaa;
|
||||
|
||||
&::before,
|
||||
&::after {
|
||||
content: ""; display: block;
|
||||
position: absolute;
|
||||
top: 0; left: 0;
|
||||
width: 100%; height: 100%;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
&::before {
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
}
|
||||
&::after {
|
||||
border: solid 25px #fff;
|
||||
box-shadow: 0 0 10px #aaa inset;
|
||||
}
|
||||
}
|
||||
.layer-1 {
|
||||
transform: translateZ(20px) scale(calc(1 - (20 / 100)));
|
||||
&::before { background-image: url(../images/gab-animation/comic/1.png); }
|
||||
}
|
||||
.layer-2 {
|
||||
transform: translateZ(120px) scale(calc(1 - (120 / 200)));
|
||||
&::before {
|
||||
transform: translateY(-100%);
|
||||
background-image: url(../images/gab-animation/comic/2.png);
|
||||
}
|
||||
}
|
||||
.layer-3 {
|
||||
transform: translateZ(220px) scale(calc(1 - (220 / 300)));
|
||||
&::before {
|
||||
transform: translateY(100%);
|
||||
background-image: url(../images/gab-animation/comic/3.png);
|
||||
}
|
||||
}
|
||||
.layer-4 {
|
||||
transform: translateZ(320px) scale(calc(1 - (320 / 400)));
|
||||
&::before {
|
||||
transform: translateY(-100%);
|
||||
background-image: url(../images/gab-animation/comic/4.png);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.gab-animation__close {
|
||||
position: absolute;
|
||||
top: 0; left: 0;
|
||||
width: 100%; height: 100%;
|
||||
z-index: 6;
|
||||
|
||||
.effect {
|
||||
position: absolute;
|
||||
width: 100px; height: 100px;
|
||||
border-radius: 50%;
|
||||
transform: scale(1.5);
|
||||
overflow: hidden;
|
||||
|
||||
div {
|
||||
position: absolute;
|
||||
top: 0; left: 0;
|
||||
width: 100%; height: 100%;
|
||||
&:after {
|
||||
content: ""; display: block;
|
||||
position: absolute;
|
||||
top: 5px; left: calc(50% - 8.75px);
|
||||
width: 0; height: 0;
|
||||
border: solid 5px transparent;
|
||||
border-top: solid 17.5px $theme-purple;
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
div:nth-child(1) { transform: rotate(0deg); }
|
||||
div:nth-child(2) { transform: rotate(30deg); }
|
||||
div:nth-child(3) { transform: rotate(60deg); }
|
||||
div:nth-child(4) { transform: rotate(90deg); }
|
||||
div:nth-child(5) { transform: rotate(120deg); }
|
||||
div:nth-child(6) { transform: rotate(150deg); }
|
||||
div:nth-child(7) { transform: rotate(180deg); }
|
||||
div:nth-child(8) { transform: rotate(210deg); }
|
||||
div:nth-child(9) { transform: rotate(240deg); }
|
||||
div:nth-child(10) { transform: rotate(270deg); }
|
||||
div:nth-child(11) { transform: rotate(300deg); }
|
||||
div:nth-child(12) { transform: rotate(330deg); }
|
||||
}
|
||||
.effect-1 { top: calc(50% - 50px); left: calc(50% - 50px); }
|
||||
.effect-2 { top: 20px; right: 20px; }
|
||||
.effect-3 { bottom: 20px; left: 20px; }
|
||||
|
||||
.ball {
|
||||
position: absolute;
|
||||
width: 250px; height: 250px;
|
||||
border-radius: 50%;
|
||||
background-color: $theme-purple;
|
||||
transform: scale(0);
|
||||
|
||||
&::after {
|
||||
content: ""; display: block;
|
||||
position: absolute;
|
||||
top: 20%; left: 20%;
|
||||
width: 60%; height: 60%;
|
||||
border-radius: 50%;
|
||||
background-color: $theme-light-purple;
|
||||
}
|
||||
}
|
||||
.ball-1 { top: calc(20px - 125px); right: calc(20px - 125px); }
|
||||
.ball-2 { top: calc(50% - 125px); left: calc(50% - 125px); }
|
||||
.ball-3 { bottom: calc(20px - 125px); left: calc(20px - 125px); }
|
||||
|
||||
.end-block {
|
||||
position: absolute;
|
||||
top: 0; left: 0;
|
||||
width: 100%; height: 100%;
|
||||
|
||||
.paint-ball {
|
||||
position: absolute;
|
||||
top: calc(50% - 20px); left: calc(50% - 20px);
|
||||
width: 40px; height: 40px;
|
||||
border-radius: 50%;
|
||||
background-color: $theme-purple;
|
||||
transform: scale(0);
|
||||
}
|
||||
|
||||
&::before,
|
||||
&::after {
|
||||
position: absolute;
|
||||
content: ""; display: block;
|
||||
}
|
||||
&::before {
|
||||
left: calc(50% - 1px); top: 50%;
|
||||
width: 2px; height: 0;
|
||||
background-color: $theme-purple;
|
||||
}
|
||||
&::after {
|
||||
width: 200px; height: 200px;
|
||||
border-radius: 50%;
|
||||
background-color: $theme-purple;
|
||||
top: calc(50% - 100px); left: calc(50% - 100px);
|
||||
transform: scale(0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*************************************************************************************************
|
||||
* animation
|
||||
*************************************************************************************************/
|
||||
.gab-animation[data-state="start"] {
|
||||
.gab-animation__bg {
|
||||
div:nth-child(1) { animation: slide-right 0.4s ease 0s forwards; }
|
||||
div:nth-child(2) { animation: slide-right 0.4s ease 0.1s forwards; }
|
||||
div:nth-child(3) { animation: slide-right 0.4s ease 0.2s forwards; }
|
||||
div:nth-child(4) { animation: slide-right 0.4s ease 0.3s forwards; }
|
||||
div:nth-child(5) { animation: slide-right 0.4s ease 0.4s forwards; }
|
||||
div:nth-child(6) { animation: slide-right 0.4s ease 0.5s forwards; }
|
||||
div:nth-child(7) { animation: slide-right 0.4s ease 0.6s forwards; }
|
||||
div:nth-child(8) { animation: slide-right 0.4s ease 0.7s forwards; }
|
||||
}
|
||||
|
||||
.gab-animation__frame {
|
||||
animation:
|
||||
gab-animation__fall-frame 0.5s ease-out 1.1s forwards,
|
||||
gab-animation__scale-frame 0.7s ease-in-out 1.6s forwards,
|
||||
gab-animation__open-frame 0.4s ease-in-out 2.3s forwards,
|
||||
gab-animation__radius-frame 1s ease-in-out 3.8s forwards;
|
||||
|
||||
&::after { animation: gab-animation__show-bg 0.4s ease 3.8s forwards; }
|
||||
|
||||
.area:nth-child(1) {
|
||||
&::before {
|
||||
animation:
|
||||
gab-animation__move-y1-area-1 0.3s ease 2.7s forwards,
|
||||
gab-animation__move-x-area-1 0.4s ease 3s forwards,
|
||||
gab-animation__move-y2-area-1 0.3s ease 3.4s forwards;
|
||||
}
|
||||
&::after {
|
||||
animation:
|
||||
gab-animation__move-y-area-bg-1 0.3s ease 3.5s forwards,
|
||||
gab-animation__move-x-area-bg-1 0.4s ease 3.8s forwards;
|
||||
}
|
||||
}
|
||||
.area:nth-child(2) {
|
||||
&::before {
|
||||
animation:
|
||||
gab-animation__move-y1-area-2 0.3s ease 2.7s forwards,
|
||||
gab-animation__move-x-area-2 0.4s ease 3s forwards,
|
||||
gab-animation__move-y2-area-2 0.3s ease 3.4s forwards;
|
||||
}
|
||||
&::after {
|
||||
animation:
|
||||
gab-animation__move-y-area-bg-2 0.3s ease 3.5s forwards,
|
||||
gab-animation__move-x-area-bg-2 0.4s ease 3.8s forwards;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.gab-animation__illust {
|
||||
.paint-balls {
|
||||
div:nth-child(1) {
|
||||
animation: gab-animation__x-paint-ball-1 0.4s ease-in-out 4s forwards;
|
||||
&::after {
|
||||
animation:
|
||||
gab-animation__y-paint-ball-1 0.4s ease-in-out 4s forwards,
|
||||
fadeout 0.1s ease 4.4s forwards;
|
||||
}
|
||||
}
|
||||
div:nth-child(2) {
|
||||
animation: gab-animation__x-paint-ball-2 0.4s ease-in-out 4s forwards;
|
||||
&::after {
|
||||
animation:
|
||||
gab-animation__y-paint-ball-2 0.4s ease-in-out 4s forwards,
|
||||
gab-animation__scale-frame 0.8s ease-in-out 4.4s forwards,
|
||||
scale10 0.5s ease 5.2s forwards,
|
||||
fadeout 0.5s ease 5.2s forwards;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.illust {
|
||||
&::after {
|
||||
animation:
|
||||
fadein 0.1s ease 5.2s forwards,
|
||||
gab-animation__rotate-illust 0.6s ease 5.2s forwards,
|
||||
gab-animation__attack-gab 0.1s ease 5.7s alternate 10 forwards,
|
||||
gab-animation__down-gab 0.8s ease 6.7s forwards;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.gab-animation__effects {
|
||||
.ball:nth-child(1) {
|
||||
animation:
|
||||
gab-animation__fall-ball-effect 0.2s ease-out 5.6s forwards,
|
||||
gab-animation__scale-ball-effect 0.3s ease 5.8s forwards;
|
||||
}
|
||||
.ball:nth-child(2) {
|
||||
animation:
|
||||
gab-animation__fall-ball-effect 0.2s ease-out 5.7s forwards,
|
||||
gab-animation__scale-ball-effect 0.3s ease 5.9s forwards;
|
||||
}
|
||||
.ball:nth-child(3) {
|
||||
animation:
|
||||
gab-animation__fall-ball-effect 0.2s ease-out 5.8s forwards,
|
||||
gab-animation__scale-ball-effect 0.3s ease 6s forwards;
|
||||
}
|
||||
.ball:nth-child(6) {
|
||||
animation:
|
||||
gab-animation__fall-ball-effect 0.2s ease-out 5.9s forwards,
|
||||
gab-animation__scale-ball-effect 0.3s ease 6.1s forwards;
|
||||
}
|
||||
.ball:nth-child(5) {
|
||||
animation:
|
||||
gab-animation__fall-ball-effect 0.2s ease-out 6s forwards,
|
||||
gab-animation__scale-ball-effect 0.3s ease 6.2s forwards;
|
||||
}
|
||||
.ball:nth-child(4) {
|
||||
animation:
|
||||
gab-animation__fall-ball-effect 0.2s ease-out 6.1s forwards,
|
||||
gab-animation__scale-ball-effect 0.3s ease 6.3s forwards;
|
||||
}
|
||||
.ball:nth-child(7) {
|
||||
animation:
|
||||
gab-animation__fall-ball-effect 0.2s ease-out 6.2s forwards,
|
||||
gab-animation__scale-ball-effect 0.3s ease 6.4s forwards;
|
||||
}
|
||||
.ball:nth-child(8) {
|
||||
animation:
|
||||
gab-animation__fall-ball-effect 0.2s ease-out 6.3s forwards,
|
||||
gab-animation__scale-ball-effect 0.3s ease 6.5s forwards;
|
||||
}
|
||||
}
|
||||
|
||||
.gab-animation__gauge {
|
||||
animation: fadeout 0.8s ease 6.7s forwards;
|
||||
.name { animation: slide-right 0.35s ease 5.4s forwards; }
|
||||
.gauge {
|
||||
animation: slide-right 0.35s ease 5.5s forwards;
|
||||
&::after { animation: slide-right 1s ease 5.7s reverse forwards; }
|
||||
}
|
||||
}
|
||||
|
||||
.gab-animation__back-overray {
|
||||
section:nth-child(1) {
|
||||
div:nth-child(1):after { animation: slide-left 0.5s ease 7.3s forwards; }
|
||||
div:nth-child(2):after { animation: slide-right 0.5s ease 7.3s forwards; }
|
||||
}
|
||||
section:nth-child(2) {
|
||||
div:nth-child(1):after { animation: slide-left 0.5s ease 7.4s forwards; }
|
||||
div:nth-child(2):after { animation: slide-right 0.5s ease 7.4s forwards; }
|
||||
}
|
||||
section:nth-child(3) {
|
||||
div:nth-child(1):after { animation: slide-left 0.5s ease 7.5s forwards; }
|
||||
div:nth-child(2):after { animation: slide-right 0.5s ease 7.5s forwards; }
|
||||
}
|
||||
}
|
||||
|
||||
.gab-animation__message { animation: gab-animation__message 0.4s ease 6.9s forwards; }
|
||||
|
||||
.gab-animation__front-overray {
|
||||
section {
|
||||
div:nth-child(1):after { animation: slide-left 0.7s ease 7.8s forwards; }
|
||||
div:nth-child(2):after { animation: slide-right 0.7s ease 7.8s forwards; }
|
||||
}
|
||||
}
|
||||
|
||||
.gab-animation__palette {
|
||||
.paint:nth-child(1) {
|
||||
animation:
|
||||
fadein 0.1s ease 9s forwards,
|
||||
gab-animation__fall-paint-1 0.2s ease 9s forwards;
|
||||
div:nth-child(1):after { animation: slide-bottom 2s ease 9.2s forwards; }
|
||||
div:nth-child(2):after { animation: slide-bottom 1s ease 9.2s forwards; }
|
||||
div:nth-child(3):after { animation: slide-bottom 1.8s ease 9.2s forwards; }
|
||||
div:nth-child(4):after { animation: slide-bottom 0.9s ease 9.2s forwards; }
|
||||
.char:after { animation: slide-top 1.8s ease-out 9.2s reverse forwards; }
|
||||
}
|
||||
.paint:nth-child(2) {
|
||||
animation:
|
||||
fadein 0.1s ease 10s forwards,
|
||||
gab-animation__fall-paint-2 0.2s ease 10s forwards;
|
||||
div:nth-child(1):after { animation: slide-bottom 2s ease 10.2s forwards; }
|
||||
div:nth-child(2):after { animation: slide-bottom 1s ease 10.2s forwards; }
|
||||
div:nth-child(3):after { animation: slide-bottom 1.8s ease 10.2s forwards; }
|
||||
div:nth-child(4):after { animation: slide-bottom 0.9s ease 10.2s forwards; }
|
||||
.char:after { animation: slide-top 1.8s ease-out 10.2s reverse forwards; }
|
||||
}
|
||||
.paint:nth-child(3) {
|
||||
animation:
|
||||
fadein 0.1s ease 8.5s forwards,
|
||||
gab-animation__fall-paint-1 0.2s ease 8.5s forwards;
|
||||
div:nth-child(1):after { animation: slide-bottom 2s ease 8.7s forwards; }
|
||||
div:nth-child(2):after { animation: slide-bottom 1s ease 8.7s forwards; }
|
||||
div:nth-child(3):after { animation: slide-bottom 1.8s ease 8.7s forwards; }
|
||||
div:nth-child(4):after { animation: slide-bottom 0.9s ease 8.7s forwards; }
|
||||
.char:after { animation: slide-top 1.8s ease-out 8.7s reverse forwards; }
|
||||
}
|
||||
.paint:nth-child(4) {
|
||||
animation:
|
||||
fadein 0.1s ease 10.5s forwards,
|
||||
gab-animation__fall-paint-2 0.2s ease 10.5s forwards;
|
||||
div:nth-child(1):after { animation: slide-bottom 2s ease 10.7s forwards; }
|
||||
div:nth-child(2):after { animation: slide-bottom 1s ease 10.7s forwards; }
|
||||
div:nth-child(3):after { animation: slide-bottom 1.8s ease 10.7s forwards; }
|
||||
div:nth-child(4):after { animation: slide-bottom 0.9s ease 10.7s forwards; }
|
||||
.char:after { animation: slide-top 1.8s ease-out 10.7s reverse forwards; }
|
||||
}
|
||||
.paint:nth-child(5) {
|
||||
animation:
|
||||
fadein 0.1s ease 9.5s forwards,
|
||||
gab-animation__fall-paint-1 0.2s ease 9.5s forwards;
|
||||
div:nth-child(1):after { animation: slide-bottom 2s ease 9.7s forwards; }
|
||||
div:nth-child(2):after { animation: slide-bottom 1s ease 9.7s forwards; }
|
||||
div:nth-child(3):after { animation: slide-bottom 1.8s ease 9.7s forwards; }
|
||||
div:nth-child(4):after { animation: slide-bottom 0.9s ease 9.7s forwards; }
|
||||
.char:after { animation: slide-top 1.8s ease-out 9.7s reverse forwards; }
|
||||
}
|
||||
|
||||
.frame-top {
|
||||
div:nth-child(1) { animation: slide-top 0.4s ease 12.5s forwards; }
|
||||
div:nth-child(2) { animation: slide-top 0.4s ease 12.6s forwards; }
|
||||
div:nth-child(3) { animation: slide-top 0.4s ease 12.7s forwards; }
|
||||
div:nth-child(4) { animation: slide-top 0.4s ease 12.8s forwards; }
|
||||
div:nth-child(5) { animation: slide-top 0.4s ease 12.9s forwards; }
|
||||
}
|
||||
.frame-bottom {
|
||||
div:nth-child(1) { animation: slide-bottom 0.4s ease 12.5s forwards; }
|
||||
div:nth-child(2) { animation: slide-bottom 0.4s ease 12.6s forwards; }
|
||||
div:nth-child(3) { animation: slide-bottom 0.4s ease 12.7s forwards; }
|
||||
div:nth-child(4) { animation: slide-bottom 0.4s ease 12.8s forwards; }
|
||||
div:nth-child(5) { animation: slide-bottom 0.4s ease 12.9s forwards; }
|
||||
}
|
||||
|
||||
.clock {
|
||||
&::before {
|
||||
animation:
|
||||
gab-animation__show-clock-frame 0.5s ease 13.3s forwards,
|
||||
rotate360 4s linear 13.8s infinite;
|
||||
}
|
||||
&::after {
|
||||
animation:
|
||||
gab-animation__show-clock-frame 0.5s ease 13.4s forwards,
|
||||
rotate360 3s linear 13.9s infinite;
|
||||
}
|
||||
div {
|
||||
animation:
|
||||
gab-animation__show-clock-hand 0.3s ease 14s forwards,
|
||||
gab-animation__reverse-clock-hand 0.4s ease 14.3s forwards,
|
||||
gab-animation__rotate-clock-hand 0.3s ease-out 14.7s forwards,
|
||||
gab-animation__scale-clock-hand 0.4s ease 14.8s forwards;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.gab-animation__camera {
|
||||
animation:
|
||||
gab-animation__camera 2.8s ease-in-out 15.2s forwards,
|
||||
fadeout 0.1s ease 19s forwards;
|
||||
.layer-2:before { animation: slide-bottom 0.6s ease 16.2s forwards; }
|
||||
.layer-3:before { animation: slide-top 0.6s ease 16.6s forwards; }
|
||||
.layer-4:before { animation: gab-animation__show-layer 0.8s ease 17.1s forwards; }
|
||||
}
|
||||
|
||||
.gab-animation__close {
|
||||
.effect-1 {
|
||||
div:after {
|
||||
animation:
|
||||
gab-animation__effect 0.6s ease-out 18.3s reverse forwards,
|
||||
fadein 0.1s ease 18.3s forwards,
|
||||
fadeout 0.1s ease 18.8s forwards,
|
||||
gab-animation__effect 0.6s ease-out 19.7s forwards,
|
||||
fadein 0.1s ease 19.7s forwards,
|
||||
fadeout 0.1s ease 20.2s forwards;
|
||||
}
|
||||
}
|
||||
.effect-2 {
|
||||
div:after {
|
||||
animation:
|
||||
gab-animation__effect 0.6s ease-out 17.7s reverse forwards,
|
||||
fadein 0.1s ease 17.7s forwards,
|
||||
fadeout 0.1s ease 18.2s forwards,
|
||||
gab-animation__effect 0.6s ease-out 19.1s forwards,
|
||||
fadein 0.1s ease 19.1s forwards,
|
||||
fadeout 0.1s ease 19.6s forwards;
|
||||
}
|
||||
}
|
||||
.effect-3 {
|
||||
div:after {
|
||||
animation:
|
||||
gab-animation__effect 0.6s ease 18s reverse forwards,
|
||||
fadein 0.1s ease 18s forwards,
|
||||
fadeout 0.1s ease 18.5s forwards,
|
||||
gab-animation__effect 0.6s ease 19.4s forwards,
|
||||
fadein 0.1s ease 19.4s forwards,
|
||||
fadeout 0.1s ease 19.9s forwards;
|
||||
}
|
||||
}
|
||||
.ball-1 {
|
||||
animation: gab-animation__scale-ball 0.5s ease 18.2s alternate 2 forwards;
|
||||
&::after { animation: gab-animation__scale-ball 0.4s ease 18.3s alternate 2 forwards; }
|
||||
}
|
||||
.ball-2 {
|
||||
animation: gab-animation__scale-ball 0.5s ease 18.8s alternate 2 forwards;
|
||||
&::after { animation: gab-animation__scale-ball 0.4s ease 18.9s alternate 2 forwards; }
|
||||
}
|
||||
.ball-3 {
|
||||
animation: gab-animation__scale-ball 0.5s ease 18.5s alternate 2 forwards;
|
||||
&::after { animation: gab-animation__scale-ball 0.4s ease 18.6s alternate 2 forwards; }
|
||||
}
|
||||
|
||||
.end-block {
|
||||
.paint-ball:nth-child(1) {
|
||||
animation:
|
||||
scale0-1 0.4s ease 20s forwards,
|
||||
gab-animation__move-end-block-1__sp 0.4s ease 20.4s forwards;
|
||||
}
|
||||
.paint-ball:nth-child(2) {
|
||||
animation:
|
||||
scale0-1 0.4s ease 20s forwards,
|
||||
gab-animation__move-end-block-2__sp 0.4s ease 20.4s forwards;
|
||||
}
|
||||
&::before {
|
||||
animation:
|
||||
gab-animation__show-end-block__sp 0.4s ease 20.4s forwards,
|
||||
rotate360 0.6s ease-in-out 20.8s forwards;
|
||||
}
|
||||
&::after {
|
||||
animation:
|
||||
scale0-1 0.6s ease-out 20.8s forwards,
|
||||
scale1dot5 0.3s ease 21.4s 2 alternate forwards,
|
||||
gab-animation__close__sp 0.5s ease 22s forwards;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -5,6 +5,7 @@
|
||||
width: 100%; height: 100%;
|
||||
background-color: $theme-pink;
|
||||
overflow: hidden;
|
||||
z-index: 1000;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Loading…
Reference in New Issue
Block a user