@font-face {
	font-family:"NotoSerifCJKjp";
	src:url("../fonts/NotoSerifCJKjp-SemiBold.otf"),
		url("../fonts/NotoSerifCJKjp-SemiBold.woff") format("woff");
	font-weight: 600;
	font-style: normal;
}

@font-face {
	font-family:"NotoSerifCJKjp";
	src:url("../fonts/NotoSerifCJKJP-ExtraLight.otf"),
		url("../fonts/NotoSerifCJKJP-ExtraLight.woff") format("woff");
	font-weight: 200;
	font-style: normal;
}


@font-face {
	font-family:"NotoSerifCJKjp";
	src:url("../fonts/NotoSerifCJKjp-Regular.otf"),
		url("../fonts/NotoSerifCJKjp-Regular.woff") format("woff");
	font-weight: 400;
	font-style: normal;
}


::selection {
	background: rgba(128,128,128,0.15);
}
 
::-moz-selection {
	background: rgba(128,128,128,0.15);
}
		
* {
	margin:0;
	padding:0;
	font-family:NotoSerifCJKjp,serif;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-weight: 200;
	font-style: normal;
}

body {
	width:100%;
	height:100%;
	font-size:16px;
	overflow-x:hidden;
}

div {
	overflow:hidden;
}

div.box {
	position:fixed;
	top:0px;
	left:calc(50% - 128px);
	z-index:100;
	width:256px;
	height:512px;
	background-repeat: no-repeat;
	pointer-events:none;
}

div.mask01 {
	display:none;
	overflow:hidden;
	position:fixed;
	z-index:106;
	pointer-events:none;
}

div.mask02 {
	display:none;
	overflow:hidden;
	position:fixed;
	z-index:105;
}

div.wrapper {
	position:relative;
	z-index:100;
}

div.content {
	z-index:100;
}

div.section {
	width:101%;
	margin-left:-0.5%;
}

span.credit a {
	font-weight: 600;
	font-size:18px;
	color:#00F;
	vertical-align:8px;
	letter-spacing:-0.025em;
	margin-left:0.3em;
}

.content h1.title {
	font-weight:400;
	text-align:left;
 	word-wrap: break-word;
}

.content p.text {
	text-indent:0.35em;
	text-align:justify;
	text-justify: inter-ideograph;
	text-align-last:left;
	/*background-color:rgba(255,0,0,0.5);*/
}

.content p.link {
	text-align:justify;
	text-justify: inter-ideograph;
	text-align-last:left;	
}

.content a {
	word-wrap: break-word;
	word-break : break-all;
}

.border {
	border: 1px #DDD solid;
}


a:link { color: #00F; text-decoration:none; }
a:visited { color: #00F; text-decoration:none; }
a:hover { color: #00F; text-decoration:none; }
a:active { color: #00F; text-decoration:none; }

.img {
	display:inline-block;
}


img {
	vertical-align:bottom;	
}

ul {
	width:auto;
	white-space:nowrap;
	line-height:0;
}

ul img {
	/*opacity:0.8;*/
}

li {
	opacity:0.85;
	display:block;
}

a#contact {
	position:fixed;
	top:0;
	right:0;
	z-index:999;
	opacity:0;
}

#contact div {
	background-color:#00F;
	opacity:0;
	width:8px;
	height:2px;
}
