/* Reset CSS */
*{
	margin: 0;
	padding: 0;
}

.background{
	position: relative;
	width: 100vw;
	height: 100vh;
	background-image: url("night.webp");
	background-size: cover;
	background-repeat: no-repeat;
	overflow: hidden;
}
.background::before{
	content: '';
	position: absolute;
	background: inherit;
	filter: blur(5px);
	top: -5px;
	left: -5px;
	right: -5px;
	bottom: -5px;
}
.wrapper{
	position: fixed;
	inset: 0;
	margin: auto;
	padding: 0 2em;
	width: 700px;
	height: 520px;
	background-color: white;
	background-image: url("rusk.webp");
	background-size: 56%;
	background-repeat: no-repeat;
	background-position: left bottom;
	box-shadow: 0 0 10px black;
	border: 0px solid white;
	border-radius: 9px;
}
.name{
	margin-top: 50px;
	margin-bottom: 20px;
	text-align: center;
}
h1 svg {
    height: 1.5em;
    width: auto;
}


.maintext{
	width: 500px;
	margin: 25px auto;
	text-align: left;
	font-family: sans-serif;
	/*detail turning*/
	margin-left: 17%;
	font-size: 1rem;
}

.link{
	margin: 0 auto;
	text-align: center;
	text-decoration: none;
	color: black;
	font-family: "Consolas","Courier New";
	width: 50%;
	letter-spacing: -1.5px;
	transition: color 1s;
	transition: background-color 0.5s;
}
.link a:hover{
	background-color: dimgray;
	color: khaki;
}
.link a{
	font-size: 1.4rem;
}

.hidden{
	text-align: center;
	height: 0px;
	opacity: 0;
	font-family: sans-serif;
}
.contact{
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 30px auto;
	height: 100px;
	display: flex;
	justify-content: center;
	align-items: center; }
a.sns-logo{
	margin: auto 30px;
	width: 60px;
}
.sns-logo>img{
	width: 60px;
	vertical-align: middle;
}
.hr-deco{
	margin: 2.5em auto;
	height: 2px;
	width: 60%;
	background: linear-gradient(to right, white, gray, white);
}
footer{
	position: absolute;
	margin: 5px auto;
	bottom: 0;
	right: 0;
	left: 0;
	text-align: center;
	font-size: .8rem;
	color: dimgray;
	font-family: sans-serif;
}

/*
 * Responsive
 */
@media screen and (max-width: 480px){
	.wrapper{
		margin: 0;
		padding: 0;
		width: 100vw;
		height: 100vh;
		background: url("snowmiku2025.webp");
		background-repeat: no-repeat;
		background-size: 30%;
		background-position: right bottom;
		box-shadow: none;
		border-radius: 0;
		overflow: auto;
	}
	.name{
		margin-top: 10vh;
		margin-bottom: 40px;
		text-align: center;
	}
	.name>svg {
	    width: 55%;
	    fill: white;
	}
	.maintext{
		width: 90vw;
		margin: 10% auto;
		text-align: center;
		line-height: 1.2rem;
		font-size: 0.70rem;
		color: #DDDDDD;
	}
	.link{
		margin: 5% auto;
		background-color: paleturquoise;
	}
	.link a{
		font-size: 1em;
	}

	.hr-deco{
		margin: 5% auto;
		background: linear-gradient(to right, transparent, white, transparent);
	}

	.contact{
		position: relative;
		margin: 0 auto;
	}
	a.sns-logo{
		margin: auto 5%;
		width: 15vw;
	}
	.sns-logo>img{
		width: 100%;
		vertical-align: middle;
	}
	img[alt="email"]{
		width: 100%;
		background-color: white;
		border-radius: 50%;
	}

	footer{
		font-size: .6rem;
		color: white;
	}
}