.visual_txt {
margin:0 auto;
padding:2% 0 0 0;
font-size: 3.8em;
font-weight: bold;
display: flex;
align-items: center;
justify-content: center;
opacity: 0;
}



.visual_txt.isLoaded {
opacity: 1;
}



.visual_txt > b {
display: flex;
align-items: center;
}



.visual_txt > b > [data-char] {
display: block;
width: 0;
overflow: hidden;
transition-property: width;
transition-duration: 0s;
}



.visual_txt > b > [data-char="load"] {
width: 1em;
}



.visual_cursor {
display: block;
margin:14px 0 0 0 ;
	width: 2px;
	height: 59px;
	background: #fff;
	animation-name: cursor;
	animation-duration: 0.25s;
	animation-iteration-count: infinite;
	animation-timing-function: steps(1);
	animation-fill-mode: backwards;
	animation-direction: alternate;
}
@keyframes cursor {
	0% {
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}
@media screen and (min-width:1px) and ( max-width:400px) {
	.visual_txt {
		font-size: 7vw;
	}
	.visual_cursor {
	margin:5px 0 0 0 ;
		width: 1px;
		height: 27px;
	}
}



@media screen and (min-width:401px) and ( max-width:640px) {
	.visual_txt {
		font-size: 7vw;
		letter-spacing:1px;
	}
	.visual_cursor {
	margin:3px 0 0 0 ;
		width: 1px;
		height: 29px;
	}
}



@media screen and (min-width:641px) and ( max-width:800px) {
	.visual_txt {
		font-size: 7vw;
	}
	.visual_cursor {
		width: 1px;
		height: 50px;
	}
}
























.visual_txt2 {
margin:0 auto;
padding:0 0 0 0;
font-size: 3.8em;
font-weight: bold;
display: flex;
align-items: center;
justify-content: center;
opacity: 0;
}



.visual_txt2.isLoaded {
opacity: 1;
}



.visual_txt2 > b {
display: flex;
align-items: center;
}



.visual_txt2 > b > [data-char] {
display: block;
width: 0;
overflow: hidden;
transition-property: width;
transition-duration: 0s;
}



.visual_txt2 > b > [data-char="load"] {
width: 1em;
}



.visual_cursor {
display: block;
margin:14px 0 0 0 ;
	width: 2px;
	height: 59px;
	background: #fff;
	animation-name: cursor;
	animation-duration: 0.25s;
	animation-iteration-count: infinite;
	animation-timing-function: steps(1);
	animation-fill-mode: backwards;
	animation-direction: alternate;
}
@keyframes cursor {
	0% {
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}
@media screen and (min-width:1px) and ( max-width:400px) {
	.visual_txt2 {
		font-size: 7vw;
	}
	.visual_cursor {
	margin:5px 0 0 0 ;
		width: 1px;
		height: 27px;
	}
}



@media screen and (min-width:401px) and ( max-width:640px) {
	.visual_txt2 {
		font-size: 7vw;
		letter-spacing:1px;
	}
	.visual_cursor {
	margin:3px 0 0 0 ;
		width: 1px;
		height: 29px;
	}
}



@media screen and (min-width:641px) and ( max-width:800px) {
	.visual_txt2 {
		font-size: 7vw;
	}
	.visual_cursor {
		width: 1px;
		height: 50px;
	}
}