*{/*横スクロール防止*/
	box-sizing: border-box;
}
.header{/*ヘッダー*/
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:70px;
	z-index:1000;
	background-color:white;
	padding: 0 50px;
	color:white;
	font-family:'メイリオ';
	text-decoration:none;
	justify-content:space-between;
	align-items:center;
	display:flex;
}
.secret .header{/*職員サイト版ヘッダー*/
	background-color:black;
}
.logo a{/*ヘッダーの文字*/
	font-size:20px;
	line-height:35px;
	text-decoration:none;
	font-weight:bold;
}
.logo a:visited{/*ヘッダーの文字(移動後)*/
	color:white;
	text-decoration:none;
}
.logo{/*ヘッダーのロゴ関係*/
	display:inline-block;
}
.logo img{/*ヘッダーの画像*/
	height:70px;
	width:auto;
	display:block;
}
.searchbox{/*検索窓*/
	position:relative;
	line-height:40px;
}
.searchbox input[type=submit]{/*検索ボタン*/
	right:10px;
	top:50%;
	transform:translateY(-50%);
	border:none;
	cursor:pointer;
	background:none;
	position:absolute;
	font-family: FontAwesome;
}
.searchbox input[type=search]{/*入力フォーム*/
	width:260px;
	height:40px;
	padding:0 30px 0 15px;
	border-radius:300px;
	border:1px solid black;
}
.title{/*ページタイトル*/
	position:relative;
	width:100%;
	padding:15px 20px;
	margin-top:-70px;
	padding-top:85px;
	background-color:white;
	box-shadow: 0 4px 12px rgba(0,0,0,0.2);
	font-family:'游明朝';
}
body{/*本文*/
	display:flex;
	flex-direction:column;
	min-height:100vh;
	margin:0;
	padding-top:70px;
	background-color:#f5ecdc;
	font-family:'游ゴシック';
}
.maintext{/*本文*/
	padding:20px 100px;
	flex:1;
}
.footer{/*フッター*/
	background-color:black;
	color:white;
	text-align:center;
	padding:5px 0;
	font-family:'メイリオ';
	margin-bottom:0;
}
table,th,tr,td{
	border-collapse:collapse;
	border-color:black;
	border:1px solid;
}
#searchresult{/*検索結果*/
	display:flex;
	justify-content:space-between;
	align-items:center;
	font-family:'ヒラギノ角ゴ ProN W3';
	padding:0 100px;
	position: relative;
}
#searchresult::after{/*検索結果*/
	content:"";
	border-bottom:1px solid #ccc;
	position:absolute;
	left:100px;
	right:100px;
	bottom:0;
	height:1px;
	background:#ccc;
}
#resulttitle{
}
#resultcount{
}
.resultcard{/*検索結果一覧*/
	background-color:white;
	padding:20px;
	margin-bottom:20px;
	box-shadow:0 2px 8px rgba(0,0,0,0.2);
	font-family:'ＭＳ ゴシック';
	color:gray;
}
#result a{
	text-decoration:none;
}
.pageNo{/*ページ番号*/
	text-align:right;
	margin-right:10px;
	font-family:'Courier';
}
.finallink{/*最後の秘密ページ行きリンク*/
	color:inherit;
	text-decoration:none;
}
body.secret{/*隠しサイト*/
	background-color:black;
	color:white;
}
body.secret .title{/*隠しサイトタイトル*/
	background-color:inherit;
	box-shadow:none;
	border-bottom: 2px solid #ccc;
}
.production{/*製作実績*/
	display:block;
	width:480px;
	text-decoration:none;
	color:inherit;
}
.production-list{/*製作実績並べかた*/
	display:flex;
	gap:20px;
	flex-wrap:wrap;
}
.production-img{/*製作実績の画像枠*/
	overflow:hidden;
	box-shadow: 0 0 12px rgba(0,0,0,0.2);
	width:480px;
	height:320px;
}
.production-img img{/*製作実績の画像*/
	width:100%;
	height:100%;
	object-fit:cover;
	transition: transform 0.5s ease;
}
.production:hover .production-img img{/*製作実績の画像(カーソル時)*/
	transform:scale(1.1);
}
.production-title{/*製作実績のタイトル*/
	margin-top:8px;
	text-align:center;
	font-weight:bold;
}
.slideshow{/*スライドショー*/
	width:960px;
	height:540px;
	overflow:hidden;
	margin:auto;
}
#slides{/*スライドショー内画像*/
	display:flex;
	transition: transform 0.8s ease;
}
.slide{/*スライドショー画像単品*/
	min-width:100%;
	display:block;
	line-height:0;
}
.slide img{
	display:block;
	width:100%;
	height:540px;
	object-fit:cover;
}
.typing{/*最終ページの装飾*/
	display:inline-block;
	padding-right:4px;
}
.typing::after{
	content:"|";
	animation:blink 1s steps(1) infinite;
}
@keyframes blink{
	0%{opacity:1;}
	50%{opacity:0;}
	100%{opacity:1;}
}
.glitch{/*グリッチエフェクト*/
	position:absolute;
	z-index:999;
	animation:glitch 0.4s steps(2) 3;
	pointer-events: none;
	box-shadow:3px -2px cyan,-3px 2px lime;
	transform-origin:center;
}
@keyframes glitch{
	0%{transform:translate(0);
	opacity:80%;}
	15%{transform:translate(calc(var(--dx)),calc(var(--dy)));}
	30%{transform:translate(calc(var(--dx))*-1,calc(var(--dy)*-1));}
	45%{transform:translate(calc(var(--dx))*0.7,calc(var(--dy)*0.7));}
	60%{transform:translate(calc(var(--dx))*-0.5,calc(var(--dy)*-0.5));}
	75%{transform:translate(calc(var(--dx))*0.3,calc(var(--dy)*0.3));}
	100%{transform:translate(0,0);
	opacity:0;}
}
.sharebutton{/*共有ボタン*/
	display: inline-flex;
	background-color:black;
	color:white;
	border-radius:20px;
	margin:10px;
	padding:8px 16px;
	border:1px solid white;
	text-decoration:none;
	position:relative;
	overflow:hidden;
	height:40px;
	width:auto;
	font-size:25px;
	align-items: center;
}
.caption{/*見出し*/
	background: linear-gradient(transparent 0%,transparent 70%, #a7d6ff 70%,rgba(167,214,255,0) 100%);
	font-family:serif;
	font-weight:bold;
	display:inline-block;
	font-size:4em;
}
.box{/*枠*/
	--size:100px;
	border:10px solid;
	border-color:#8b5a2b;
	background:linear-gradient(#f8eacf, #f3e2bd);
	height:var(--size);
	overflow-y:auto;
	color:black;
	border-image:linear-gradient(90deg,#6b3f1a,#a06a3b,#5a3415,#8b5a2b)1;
	box-shadow:inset 0 0 6px rgba(0,0,0,0.6),0 5px 10px rgba(0,0,0,0.6);
}
.box::before{
	content:"";
	position:relative;
	inset:0;
}
.news{/*ニュース*/
	display:grid;
	grid-template-columns:200px 1fr 200px;
}
.button{/*メンテナンス中ボタン*/
	display:flex;
	justify-content:center;
	cursor:pointer;
	width:500px;
	height:auto;
	margin:0 auto;
}
.heading{/*見出し*/
	position: relative;
	padding: 5px 7px;
	color: #5a3b1a;
	background: linear-gradient(#f8eacf, #f3e2bd);
	overflow: hidden;
	border:1.5px solid #6f4b3e;
	font-weight:bold;
}
.heading::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 10px;
	background: linear-gradient(
		to bottom,
		rgba(120,80,40,0.35),
		rgba(120,80,40,0.15),
		transparent
	);
	filter: blur(6px);
	pointer-events: none;
}
.heading::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 10px;
	background: linear-gradient(
		to top,
		rgba(120,80,40,0.35),
		rgba(120,80,40,0.15),
		transparent
	);

	filter: blur(6px);

	pointer-events: none;
}
#dialog{/*隠しダイアログ*/
	position:fixed;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	padding:20px 40px;
	background:black;
	color:green;
	border:2px solid green;
	display:none;
	z-index:9999;
}
#overlay{
	position:fixed;
	inset:0;
	background:rgba(0,0,0,0.4);
	display:none;
	z-index:9998;
}
#dialog.show,#overlay.show{
	display:block;
}
.personalfolder,.personalfolder.after{/*隠しページのフォルダ名*/
	color:white;
	background-color:inherit;
	border:solid 1px;
	border-color:white;
	text-decoration:none;
	padding:10px;
	width:80%;
	max-width:900px;
	height:auto;
	box-sizing:border-box;
	display:block;
	font-weight:bold;
}
.next{
	background-color:black;
	color:white;
	text-align:center;
	padding:500px 0 100px;
	margin:0;
}
.systemtext{/*復元コード適応中*/
	color:green;
	font-weight:bold;
	border-color:green;
}
.AMaSSresult{/*実験結果*/
	padding:0.5em 1em;
	margin:2em 0;
	font-weight:bold;
	border:solid 3px;
}