<body>
<div class="animation01">
<div class="line_content line_content01">
<div class="line_wrapper line_wrapper01">
<div class="line01"></div>
<div class="line02"></div>
</div>
</div>
<div class="line_content line_content02">
<div class="line_wrapper line_wrapper02">
<div class="line02"></div>
<div class="line01"></div>
</div>
</div>
</div>
<div class="animation02">
<div class="square">
<span class="square_item square_item01"></span>
<span class="square_item square_item02"></span>
<span class="square_item square_item03"></span>
<span class="square_item square_item04"></span>
<span class="square_item square_item05"></span>
<span class="square_item square_item06"></span>
<span class="square_item square_item07"></span>
<span class="square_item square_item08"></span>
<span class="circle_item01"></span>
<span class="circle_item02"></span>
<span class="circle_item03"></span>
<span class="circle_item04"></span>
<span class="circle_item05"></span>
<span class="circle_item06"></span>
<span class="circle_item01_1"></span>
<span class="circle_item02_2"></span>
<span class="circle_item03_3"></span>
<span class="circle_item04_4"></span>
<span class="circle_item05_5"></span>
<span class="circle_item06_6"></span>
</div>
</div>
<div class="animation03">
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
</div>
<div class="animation04">
<div class="name_plate"></div>
<div class="name">KURI-CHAN</div>
</div>
</body>
/*=================
Basic style
==================*/
html, body {
position: relative;
width: 100%;
height: 100%;
margin: 0;
overflow: hidden;
}
img {
vertical-align: bottom;
max-width: 100%;
width: 100%;
}
h1, h2, p {
margin: 0;
}
/*===================
animation01
====================*/
.animation01 {
position: absolute;
width: 100%;
height: 100%;
background-color: #384150;
}
.animation01 .line_content {
width: 100%;
height: 50%;
animation: animation01_content 0.3s ease-in forwards;
}
.animation01 .line_content01 {
transform-origin: bottom;
}
.animation01 .line_content02 {
transform-origin: top;
}
.animation01 .line_wrapper {
width: 100%;
height: 100%;
}
.animation01 .line_wrapper01 {
transform-origin: bottom;
animation: animation01_wrapper01 0.5s ease-in-out 0.2s forwards;
}
.animation01 .line_wrapper02 {
transform-origin: top;
animation: animation01_wrapper02 0.5s ease-in-out 0.2s forwards;
}
.animation01 .line01 {
width: 100%;
height: 50%;
background-color: #d05464;
}
.animation01 .line02 {
width: 100%;
height: 50%;
background-color: #c98b4f;
}
@keyframes animation01_content {
0% {
transform: scale3d(1, 0, 1);
}
100% {
transform: scale3d(1, 1, 1);
}
}
@keyframes animation01_wrapper01 {
0% {
transform: translateY(0);
}
100% {
transform: translateY(-50vw);
}
}
@keyframes animation01_wrapper02 {
0% {
transform: translateY(0);
}
100% {
transform: translateY(50vw);
}
}
/*===================
animation02
====================*/
.animation02 {
position: absolute;
width: 100%;
height: 100%;
}
.square {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
width: 8vw;
height: 8vw;
margin: auto;
background-color: #c03d5c;
animation: square 0.2s ease-in-out 0.6s forwards;
opacity: 0;
z-index: 100;
}
@keyframes square {
0% {
transform: rotate(45deg);
opacity: 0;
}
100% {
transform: rotate(0);
opacity: 1;
}
}
.square_item {
display: block;
position: absolute;
width: 0.5vw;
height: 0.5vw;
margin: auto;
background-color: #c03d5c;
border-radius: 50%;
opacity: 0;
}
.square_item01 {
top: -105%;
right: 0;
bottom: 0;
left: 0;
animation: square_item01 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.8s;
}
.square_item02 {
top: 0;
right: 0;
bottom: 0;
left: 99%;
animation: square_item02 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.8s;
}
.square_item03 {
top: 105%;
right: 0;
bottom: 0;
left: 0;
animation: square_item03 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.8s;
}
.square_item04 {
top: 0;
right: 0;
bottom: 0;
left: -99%;
animation: square_item04 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.8s;
}
.square_item05 {
top: -105%;
right: 0;
bottom: 0;
left: 99%;
animation: square_item05 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.8s;
}
.square_item06 {
top: 105%;
right: 0;
bottom: 0;
left: 99%;
animation: square_item06 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.8s;
}
.square_item07 {
top: 105%;
right: 0;
bottom: 0;
left: -99%;
animation: square_item07 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.8s;
}
.square_item08 {
top: -105%;
right: 0;
bottom: 0;
left: -99%;
animation: square_item08 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.8s;
}
@keyframes square_item01 {
0% {
transform: translateY(0);
opacity: 1;
}
100% {
transform: translateY(-7vw);
opacity: 1;
}
}
@keyframes square_item02 {
0% {
transform: translateX(0);
opacity: 1;
}
100% {
transform: translateX(7vw);
opacity: 1;
}
}
@keyframes square_item03 {
0% {
transform: translateY(0);
opacity: 1;
}
100% {
transform: translateY(7vw);
opacity: 1;
}
}
@keyframes square_item03 {
0% {
transform: translateY(0);
opacity: 1;
}
100% {
transform: translateY(7vw);
opacity: 1;
}
}
@keyframes square_item04 {
0% {
transform: translateX(0);
opacity: 1;
}
100% {
transform: translateX(-7vw);
opacity: 1;
}
}
@keyframes square_item05 {
0% {
transform: translate3d(0, 0, 0);
opacity: 1;
}
100% {
transform: translate3d(3.5vw, -3.5vw, -3.5vw);
opacity: 1;
}
}
@keyframes square_item06 {
0% {
transform: translate3d(0, 0, 0);
opacity: 1;
}
100% {
transform: translate3d(3.5vw, 3.5vw, 3.5vw);
opacity: 1;
}
}
@keyframes square_item07 {
0% {
transform: translate3d(0, 0, 0);
opacity: 1;
}
100% {
transform: translate3d(-3.5vw, 3.5vw, 3.5vw);
opacity: 1;
}
}
@keyframes square_item08 {
0% {
transform: translate3d(0, 0, 0);
opacity: 1;
}
100% {
transform: translate3d(-3.5vw, -3.5vw, 3.5vw);
opacity: 1;
}
}
.circle_item01 {
position: absolute;
top: 150%;
right: 0;
bottom: 0;
left: 90%;
width: 5vw;
height: 5vw;
margin: auto;
background-color: #6f919a;
border-radius: 50%;
animation: circle_item 1.0s cubic-bezier(0.19, 1, 0.22, 1) 1.1s forwards;
opacity: 0;
}
.circle_item02 {
position: absolute;
top: 125%;
right: 0;
bottom: 0;
left: 125%;
width: 5vw;
height: 5vw;
margin: auto;
background-color: #c24a50;
border-radius: 50%;
animation: circle_item 1.0s cubic-bezier(0.19, 1, 0.22, 1) 1.15s forwards;
opacity: 0;
}
.circle_item03 {
position: absolute;
top: 100%;
right: 0;
bottom: 0;
left: 158%;
width: 5vw;
height: 5vw;
margin: auto;
background-color: #d6a2a6;
border-radius: 50%;
animation: circle_item 1.0s cubic-bezier(0.19, 1, 0.22, 1) 1.2s forwards;
opacity: 0;
}
.circle_item04 {
position: absolute;
top: -150%;
right: 0;
bottom: 0;
left: -158%;
width: 5vw;
height: 5vw;
margin: auto;
background-color: #6f919a;
border-radius: 50%;
animation: circle_item 1.0s cubic-bezier(0.19, 1, 0.22, 1) 1.1s forwards;
opacity: 0;
}
.circle_item05 {
position: absolute;
top: -125%;
right: 0;
bottom: 0;
left: -227%;
width: 5vw;
height: 5vw;
margin: auto;
background-color: #c24a50;
border-radius: 50%;
animation: circle_item 1.0s cubic-bezier(0.19, 1, 0.22, 1) 1.15s forwards;
opacity: 0;
}
.circle_item06 {
position: absolute;
top: -100%;
right: 0;
bottom: 0;
left: -298%;
width: 5vw;
height: 5vw;
margin: auto;
background-color: #d6a2a6;
border-radius: 50%;
animation: circle_item 1.0s cubic-bezier(0.19, 1, 0.22, 1) 1.2s forwards;
opacity: 0;
}
@keyframes circle_item {
0% {
transform: scale3d(0, 0, 1);
opacity: 1;
}
75% {
transform: scale3d(1, 1, 1);
opacity: 1;
}
100% {
transform: scale3d(0.5, 0.5, 1);
opacity: 1;
}
}
.circle_item01_1 {
position: absolute;
top: 150%;
right: 0;
bottom: 0;
left: 106%;
width: 2.5vw;
height: 2.5vw;
margin: auto;
background-color: #6f919a;
border-radius: 50%;
animation: circle_twice 0.25s linear 2s forwards;
opacity: 0;
}
.circle_item02_2 {
position: absolute;
top: 175%;
right: 0;
bottom: 0;
left: 141%;
width: 2.5vw;
height: 2.5vw;
margin: auto;
background-color: #c24a50;
border-radius: 50%;
animation: circle_twice 0.245s linear 2.05s forwards;
opacity: 0;
}
.circle_item03_3 {
position: absolute;
top: 200%;
right: 0;
bottom: 0;
left: 175%;
width: 2.5vw;
height: 2.5vw;
margin: auto;
background-color: #d6a2a6;
border-radius: 50%;
animation: circle_twice 0.24s linear 2.1s forwards;
opacity: 0;
}
.circle_item04_4 {
position: absolute;
top: -150%;
right: 0;
bottom: 0;
left: -158%;
width: 2.5vw;
height: 2.5vw;
margin: auto;
background-color: #6f919a;
border-radius: 50%;
animation: circle_third 0.25s linear 2s forwards;
opacity: 0;
}
.circle_item05_5 {
position: absolute;
top: -175%;
right: 0;
bottom: 0;
left: -227%;
width: 2.5vw;
height: 2.5vw;
margin: auto;
background-color: #c24a50;
border-radius: 50%;
animation: circle_third 0.245s linear 2.05s forwards;
opacity: 0;
}
.circle_item06_6 {
position: absolute;
top: -200%;
right: 0;
bottom: 0;
left: -298%;
width: 2.5vw;
height: 2.5vw;
margin: auto;
background-color: #d6a2a6;
border-radius: 50%;
animation: circle_third 0.24s linear 2.1s forwards;
opacity: 0;
}
@keyframes circle_twice {
0% {
transform: translate3d(0, 0, 0);
opacity: 1;
}
25% {
transform: translate3d(75%, -120%, 0);
opacity: 1;
}
50% {
transform: translate3d(100%, -240%, 0);
opacity: 1;
}
75% {
transform: translate3d(75%, -360%, 0);
opacity: 1;
}
100% {
transform: translate3d(0, -480%, 0);
opacity: 1;
}
}
@keyframes circle_third {
0% {
transform: translate3d(0, 0, 0);
opacity: 1;
}
25% {
transform: translate3d(75%, 120%, 0);
opacity: 1;
}
50% {
transform: translate3d(100%, 240%, 0);
opacity: 1;
}
75% {
transform: translate3d(75%, 360%, 0);
opacity: 1;
}
100% {
transform: translate3d(0, 480%, 0);
opacity: 1;
}
}
/*===================
animation03
====================*/
.animation03 {
display: flex;
align-items: center;
flex-wrap: wrap;
position: absolute;
width: 100%;
height: 100%;
}
.animation03 div {
width: 10vw;
height: 10vw;
background-color: #cac9ca;
transform: rotate(45deg);
animation: bg 0.5s linear 2.5s forwards;
opacity: 0;
z-index: 99;
}
@keyframes bg {
0% {
transform: scale3d(0, 0, 0) rotate(45deg);
opacity: 1;
}
75% {
transform: scale3d(1, 1, 1) rotate(45deg);
opacity: 1;
}
100% {
transform: scale3d(1.5, 1.5, 1) rotate(45deg);
opacity: 1;
}
}
/*===================
animation04
====================*/
.animation04 {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 100%;
height: 100%;
z-index: 9998;
}
.name_plate {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
width: 40vw;
height: 16vw;
margin: auto;
background-color: #3d3c3e;
transform-origin: center;
animation: name_plate 1s cubic-bezier(0.165, 0.84, 0.44, 1) 3.1s forwards;
opacity: 0;
}
@keyframes name_plate {
0% {
transform: scale3d(0, 1, 1);
opacity: 1;
}
100% {
transform: scale3d(1, 1, 1);
opacity: 1;
}
}
.name {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
color: #1d80e8;
font-size: 6vw;
font-family: Arial, Helvetica, sans-serif;
animation: name 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) 4.1s forwards;
opacity: 0;
}
@keyframes name {
0% {
opacity: 0;
}
100% {
opacity: 1;
}
}
This Pen doesn't use any external CSS resources.
This Pen doesn't use any external JavaScript resources.