@charset "utf-8";

body {
    /*******************************　01　layout　*/

    /*******************************　02　area　*/
    width: 100%;
    min-width: 260px;
    /*******************************　03　background　*/

    /*******************************　04　border　*/

    /*******************************　05　typography　*/
    font-family: "Roboto", "Noto Sans JP", sans-serif;
    /* font-family: "Roboto", "Noto Serif JP", sans-serif; */
    /* font-weight: 300; */
    font-style: normal;
    /*******************************　06　others　*/
}

header {
    /*******************************　01　layout　*/
    display: grid;
    place-content: center;
    /*******************************　02　area　*/
    width: 100%;
    height: 101svh;
    margin-bottom: 50vh;
    /*******************************　03　background　*/

    /*******************************　04　border　*/
    /* border-bottom: 1px solid #000; */
    /*******************************　05　typography　*/

    /*******************************　06　others　*/
}

header h1 {
	/*******************************　01　layout　*/
    position: fixed;
    z-index: 100;
    right: 0.5rem;
    bottom: 0.5rem;
	/*******************************　02　area　*/
    width: 8rem;
    height: 2.3rem;
	/*******************************　03　background　*/
    background-color: #fff;
	/*******************************　04　border　*/
    border-radius: 1.2rem;
    border: 0.05rem solid #000;
	/*******************************　05　typography　*/
    font-size: 0.8rem;
    text-align: center;
    color: #000;
	/*******************************　06　others　*/
}


header h1 a {
	/*******************************　01　layout　*/
    display: grid;
    place-items: center;
	/*******************************　02　area　*/
    width: 100%;
    height: 100%;
	/*******************************　03　background　*/

	/*******************************　04　border　*/

	/*******************************　05　typography　*/

	/*******************************　06　others　*/
}

header h2 {
	/*******************************　01　layout　*/

	/*******************************　02　area　*/
    padding-bottom: 0.3rem;
	/*******************************　03　background　*/

	/*******************************　04　border　*/
    border-bottom: 1px solid #000;
	/*******************************　05　typography　*/
	font-size: 1.2rem;
	text-align: center;
	/*******************************　06　others　*/
}

header h2 mark {
	/*******************************　01　layout　*/

	/*******************************　02　area　*/
    display: block;
    /*******************************　03　background　*/

	/*******************************　04　border　*/

    /*******************************　05　typography　*/
	font-size: 0.7rem;
	text-align: center;
    padding-bottom: 0.3rem;
	/*******************************　06　others　*/
}

header p {
	/*******************************　01　layout　*/
	position: relative;
	/*******************************　02　area　*/
    margin-top: 1rem;
	/*******************************　03　background　*/

	/*******************************　04　border　*/

	/*******************************　05　typography　*/
	font-size: 0.9rem;
	text-align: center;
	/*******************************　06　others　*/
}

header p::before {
	/*******************************　01　layout　*/
	content: "start";
	position: absolute;
	bottom: -2.5rem;
	right: -1.5rem;
	left: 0;

	margin: auto;
	/*******************************　02　area　*/
	width: fit-content;
	height: fit-content;
	/*******************************　03　background　*/

	/*******************************　04　border　*/

	/*******************************　05　typography　*/

	/*******************************　06　others　*/
	transform: rotate(90deg);
}

@keyframes scrollAnimation {
	0% {
		transform: scaleY(0);
		transform-origin: top;
	}

	50% {
		transform: scaleY(1);
		transform-origin: top;
	}

	50.1% {
		transform: scaleY(1);
		transform-origin: bottom;
	}

	100% {
		transform: scaleY(0);
		transform-origin: bottom;
	}
}

header p::after {
	/*******************************　01　layout　*/
	content: "";
	position: absolute;
	bottom: -3.5rem;
	right: 0;
	left: 0;
	margin-inline: auto;
	/*******************************　02　area　*/
	width: 0.035rem;
	height: 3rem;
	/*******************************　03　background　*/
	background-color: #000;
	/*******************************　04　border　*/

	/*******************************　05　typography　*/

	/*******************************　06　others　*/
	animation-name: scrollAnimation;
	animation-duration: 1.8s;
	animation-timing-function: ease-out;
	animation-iteration-count: infinite;
}

footer {
	/*******************************　01　layout　*/
	display: grid;
	place-content: center;
	/*******************************　02　area　*/
	width: 100%;
	min-height: 100vh;
	/* margin-top: 50vh; */
	/*******************************　03　background　*/
	background-color: #000;
	/*******************************　04　border　*/

	/*******************************　05　typography　*/
	color: #fff;
	/*******************************　06　others　*/
}

footer p {
	/*******************************　01　layout　*/
	position: relative;
	/*******************************　02　area　*/
    margin-bottom: 1rem;
	/*******************************　03　background　*/

	/*******************************　04　border　*/
    border-top: 1px solid #000;
	/*******************************　05　typography　*/
	font-size: 0.9rem;
	text-align: center;
	/*******************************　06　others　*/
}

footer p::before {
	/*******************************　01　layout　*/
	content: "end";
	position: absolute;
	top: -2.5rem;
	right: -1.5rem;
	left: 0;

	margin: auto;
	/*******************************　02　area　*/
	width: fit-content;
	height: fit-content;
	/*******************************　03　background　*/

	/*******************************　04　border　*/

	/*******************************　05　typography　*/

	/*******************************　06　others　*/
	transform: rotate(90deg);
}

@keyframes scrollAnimation {
	0% {
		transform: scaleY(0);
		transform-origin: top;
	}
	50% {
		transform: scaleY(1);
		transform-origin: top;
	}
	50.1% {
		transform: scaleY(1);
		transform-origin: bottom;
	}
	100% {
		transform: scaleY(0);
		transform-origin: bottom;
	}
}

footer p::after {
	/*******************************　01　layout　*/
	content: "";
	position: absolute;
	top: -3.5rem;
	right: 0;
	left: 0;
	margin-inline: auto;
	/*******************************　02　area　*/
	width: 0.035rem;
	height: 3rem;
	/*******************************　03　background　*/
	background-color: #fff;
	/*******************************　04　border　*/

	/*******************************　05　typography　*/

	/*******************************　06　others　*/
	animation-name: scrollAnimation;
	animation-duration: 1.8s;
	animation-timing-function: ease-out;
	animation-iteration-count: infinite;
}

/***********************************************************
試作
***********************************************************/

/***********************************　main.a02 > section.b01　*/
.a02 .b01 {
	/*******************************　01　配置　*/
	margin: auto;
	/*******************************　02　領域　*/
	width: max(520px, 80vw);
	max-width: 100%;

	padding-top: 50vh;
	/*******************************　03　背景　*/

	/*******************************　04　境界　*/

	/*******************************　05　文字　*/
	color: #fff;
	/*******************************　06　其他　*/
}

/***********************************　main.a02 > section.b01 > h2 */
.a02 .b01 h2 {
	/*******************************　01　配置　*/
	position: relative;
	/*******************************　02　領域　*/
	width: fit-content;
	margin: 0 auto 10vh;
	/*******************************　03　背景　*/

	/*******************************　04　境界　*/

	/*******************************　05　文字　*/
	font-size: 1.3rem;
	/*******************************　06　其他　*/
}

/***********************************　main.a02 > section.b01 > h2 > em */
.a02 .b01 h2 em {
	/*******************************　01　配置　*/
	
	/*******************************　02　領域　*/

	/*******************************　03　背景　*/

	/*******************************　04　境界　*/

	/*******************************　05　文字　*/
	font-weight: 900;
	/*******************************　06　其他　*/
}

.a02 .b01 h2 em::after {
	/*******************************　01　配置　*/
	content: "?";
	position: absolute;
	right: -1.5rem;
	bottom: 0;

	display: grid;
	/*******************************　02　領域　*/
	display: block;
	width: 1.5rem;
	/*******************************　03　背景　*/

	/*******************************　04　境界　*/

	/*******************************　05　文字　*/
	text-align: center;
	font-weight: 900;

	/*******************************　06　其他　*/
}

/***********************************　main.a02 > section.b01 > p */
.a02 .b01 p {
	/*******************************　01　配置　*/

	/*******************************　02　領域　*/
	width: fit-content;
	margin: 0 auto 2rem;
	/*******************************　03　背景　*/

	/*******************************　04　境界　*/

	/*******************************　05　文字　*/

	/*******************************　06　其他　*/
}

.a02 .b01 em {
	/*******************************　01　配置　*/

	/*******************************　02　領域　*/

	/*******************************　03　背景　*/

	/*******************************　04　境界　*/

	/*******************************　05　文字　*/
	font-weight: 900;
	/*******************************　06　其他　*/
}

.a02 .b01 p:last-child {
	/*******************************　02　領域　*/
	margin: 0 auto 0;
}

/***********************************　main.a02 > section.b02　*/
.a02 .b02 {
	/*******************************　01　配置　*/
	margin-inline: auto;
	/*******************************　02　領域　*/	
	width: max(520px, 80vw);
	max-width: 100%;
	padding: 110vh 0 50vh;
	/*******************************　03　背景　*/

	/*******************************　04　境界　*/

	/*******************************　05　文字　*/

	/*******************************　06　其他　*/
}

/***********************************　main.a02 > section.b02 > h2 */
.a02 .b02 h2 {
	/*******************************　01　配置　*/

	/*******************************　02　領域　*/
	width: fit-content;
	height: fit-content;
	margin: 0 auto 10vh;
	/*******************************　03　背景　*/

	/*******************************　04　境界　*/

	/*******************************　05　文字　*/
	/* text-align: center; */
	font-size: 1.2rem;
	/*******************************　06　其他　*/
}

/***********************************　main.a02 > section.b02 > h2 > em */
.a02 .b02 h2 em {
	/*******************************　01　配置　*/

	/*******************************　02　領域　*/
	padding: 0.5rem;
	display: block;
	/*******************************　03　背景　*/

	/*******************************　04　境界　*/

	/*******************************　05　文字　*/
	font-weight: 900;
	/*******************************　06　其他　*/
}