/*
padding
*/
.padding5 {
	padding-top: 5px;
	line-height: 5px;
}
.padding10 {
	padding-top: 10px;
	line-height: 10px;
}
.padding15 {
	padding-top: 15px;
	line-height: 15px;
}
.padding20 {
	padding-top: 20px;
	line-height: 20px;
}
.padding25 {
	padding-top: 25px;
	line-height: 25px;
}
.padding30 {
	padding-top: 30px;
	line-height: 30px;
}
.padding40 {
	padding-top: 40px;
	line-height: 40px;
}
.padding50 {
	padding-top: 50px;
	line-height: 50px;
}
.padding60 {
	padding-top: 60px;
	line-height: 60px;
}
.padding70 {
	padding-top: 70px;
	line-height: 70px;
}
.padding80 {
	padding-top: 80px;
	line-height: 80px;
}
.padding90 {
	padding-top: 90px;
	line-height: 90px;
}
.padding100 {
	padding-top: 100px;
	line-height: 100px;
}
/*
section.image03
*/
section.image03 {
	width: 100%;
	position: relative;
	padding-top: 31%;
	font-size: 20px;
	> .back {
		position: absolute;
		top: 0;
		> img {
			width: 100vw;
		}
	}
	> svg {
		position: absolute;
		top: 0;
		width: 100vw;
		> .code {
			font-size: 1.8rem;
			font-family: var(--font-tech);
		}
		> .barcode {
			font-size: 7rem;
			font-family: var(--font-barcode);
		}
		> .pagename {
			font-size: 5rem;
		}
	}
}
/*
section.movie
*/
section.movie {
	background-color: #000;
	> div {
		max-width: 1920px;
		margin-inline: auto;
		> video {
			width: 100%;
			vertical-align: bottom;
		}
	}
}
/*
section.title
*/
section.title {
	padding: 30px 5% 0 5%;
	> h1 {
		text-align: center;
		font-size: 2.6rem;
		font-weight: 400;
		color: #fff;
		@media (width < 480px) {
			font-size: 2rem;
		}
	}
	> div {
		text-align: center;
		margin-top: 10px;
		@media (width < 800px) {
			text-align: left;
		}
		> p {
			margin-top: 3px;
			font-size: 0.9rem;
			line-height: 1.5;
			color: #aaa;
		}
	}
}
/*
section.contentbox
*/
section.contentbox {
	padding: 30px 5% 0 5%;
	> div {
		max-width: 1000px;
		margin-inline: auto;
		background-color: rgba(0,0,0,0.4);
		border-radius: 5px;
		padding: 20px 30px 35px 30px;
		> h2 {
			font-size: 1.3rem;
			font-weight: 500;
			color: #bfc2ff;
			border-bottom: solid 3px rgba(255,255,255,0.1);
			padding-bottom: 4px;
		}
		> h3 {
			margin-top: 20px;
			font-size: 1rem;
			font-weight: 500;
			color: #bfc2ff;
		}
		> p {
			margin-top: 10px;
			font-size: 1rem;
			color: #eee;
			line-height: 1.7;
			text-align: justify;
			> small {
				display: inline-block;
				padding-left: 1.5em;
				text-indent: -0.5em;
			}
		}
		> figure {
			margin-top: 10px;
			> img {
				max-width: 100%;
			}
		}
		> ol {
			margin-top: 5px;
			> li {
				font-size: 0.9rem;
				color: #eee;
				line-height: 1.7;
			}
		}
		> ul {
			list-style: square inside;
			margin-top: 10px;
			margin-left: 20px;
			display: flex;
			flex-direction: column;
			row-gap: 10px;
			> li {
				font-size: 0.9rem;
				color: #ddd;
				line-height: 1.7;
			}
		}
		> .pubdate {
			font-size: 0.9rem;
			line-height: 1.2;
			color: #ccc;
			margin-top: 3px;
		}
		> .button {
			text-align: center;
			margin-top: 15px;
			> a {
				display: inline-block;
				text-decoration: none;
				background-color: #333;
				padding: 10px 3em 8px 2em;
				font-size: 0.8rem;
				color: #fff;
				line-height: 1;
				letter-spacing: 0.1em;
				border-radius: 2px;
				border: solid 3px #444;
				background-image: url(../image/mark_chevron_right_fff.svg);
				background-repeat: no-repeat;
				background-position: right 12px top 50%;
				transition: 0.2s;
				&[target="_blank"] {
					background-image: url(../image/mark_external_fff.svg);
				}
				&:hover {
					border-color: #fff;
				}
			}
		}
	}
}
/*
section.button
*/
section.button {
	padding: 70px 5% 90px 5%;
	> div {
		text-align: center;
		margin-top: 15px;
		> a {
			display: inline-block;
			text-decoration: none;
			background-color: rgba(50,36,106,0.4);
			padding: 20px 3em 18px 2em;
			font-size: 1rem;
			color: #fff;
			line-height: 1;
			letter-spacing: 0.1em;
			border-radius: 2px;
			border: solid 3px #008b99;
			background-image: url(../image/mark_chevron_right_fff.svg);
			background-repeat: no-repeat;
			background-position: right 12px top 50%;
			transition: border-color 0.15s;
			&[target="_blank"] {
				background-image: url(../image/mark_external_fff.svg);
			}
			&:hover {
				border-color: #fff;
			}
		}
	}
}
