@charset "UTF-8";

*, *::before, *::after {
	margin:0; padding:0;
	box-sizing: border-box;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	--color-red: #e65555;
	--color-navy:#52658c;
	--color-navy-rgb:82,101,140;
}

a {
	text-decoration:none;
}
a:link {
	text-decoration: none;
}
ul, ol {list-style: none;}

body {
	font-family:"noto-sans-cjk-jp", sans-serif;
	letter-spacing:.05em;
	font-size:100%;
	line-height:1.5;
	font-feature-settings: "palt" on;
	font-kerning: normal;
	min-height:100svh;
	position:relative;
	color:#fff;
}

#bg {
	position:fixed;
	height:100svh;
	z-index:-1;
	top:0; right:0; bottom:0; left:0;
	background-color: rgba(255,255,255,.5);
}

#bg video {
	position:fixed;
	z-index:-2;
	top:50%; left:50%;
	transform:translate(-50%,-50%);
	width:auto;
	height:auto;
	min-width:100%;
	min-height:100%;
}

header {
	height:100svh;
	position:relative;
}
header > div {
	position:absolute;
	width:100%;
	top:50%;
	transform: translateY(-50%);
	text-align:center;
}
header p {
	font-weight:bold;
	color:#fff;
	letter-spacing:.2em;
	margin-bottom:1em;
}
h1 {
	line-height:0;
	margin-bottom:1em;
}
h1 img {
	width:50%;
	opacity:.65;
}

.tri {
	text-align:center;
	line-height:1;
}
.tri img {
	width:10%;
	opacity:.85;
}
main {
	display:block;
}
section {
	width:100%;
	margin:0 auto;
	padding:2em;
	/*background-color:rgba(255,255,255,.75);*/
	background-color:rgba(var(--color-navy-rgb),.85);
	border-radius:0;
	transition: opacity 1s;
	overflow: hidden;
	color:rgba(255,255,255,.9);
}
section > div {
	width:80%;
	margin:0 auto;
}
section > div ul {}
section > div ul li {}
section > div ul li:not(:last-of-type) {
	margin-bottom:2em;
}
section > div ul li h3 {
	padding-bottom:.25em;
	border-bottom:1px solid rgba(255,255,255,.25);
	margin-bottom:.25em;
	font-size:125%;
}
section > div ul li div {
	padding-left:1em;
}
section > div ul li div a {
	color:#ff6;
}

section:not(:last-of-type) {
	margin-bottom:4em;
}

h2 {
	text-align:center;
	font-size:200%;
	margin-bottom:1em;
	font-family:"futura-pt", sans-serif;
}
.company dl {
	width:100%;
	margin:0 auto;
	overflow:hidden;
	line-height:2;
}
@media screen and (max-width:720px) {
	.section {
		width:100%;
	}
}
.company dl dt {
	clear:both;
	width:6em;
	float:left;
	font-weight:bold;
}
.company dl dd {
	padding-left:6em;
}
@media screen and (max-width:720px) {
	.company dl dt {
		float:none;
		width:100%;
	}
	.company dl dd {
		padding-left:1em;
	}
	.company dl dt+dd:not(:last-of-type) {
		margin-bottom:.5em;
	}
}
.company a {
	margin-top:1em;
	display:block;
	text-align:center;
	color:rgba(255,255,255,.75);
	text-decoration: underline;
}

.studio {
	aspect-ratio: 2/1;
	position:relative;
}
.studio::before {
	content:'';
	display:block;
	position:absolute;
	top:0; left:0; right:0; bottom:0;
	background:url(./img/20221220_113820.jpg) no-repeat scroll center center / cover;
	opacity:.35;
}
.studio a {
	display:block;
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	width:50%;
	line-height:0;
}
.studio a img {
	width:100%;
}
footer {
	text-align:center;
	margin-top:2em;
	padding:1em;
}
