@charset "utf-8";

/*↓reset↓*/
*, *:before, *:after {
	box-sizing: border-box;
	text-overflow: ellipsis;
	padding: 0;
	margin: 0;
}
html, body {
	width: 100%;
	height: 100%;
}
html {
	font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4 {
	font-weight: normal;
}
a:link, a:visited {
	text-decoration: underline;
}
a:hover, a:active {
	text-decoration: none;
}
ul {
	list-style-type: none;
}
img, iframe {
	border: 0;
}
input, textarea, select {
	display: block;
	outline: none;
	resize: none;
}
button {
	outline: 0;
}
button::-moz-focus-inner,
input[type="button"]::-moz-focus-inner,
input[type="submit"]::-moz-focus-inner,
input[type="reset"]::-moz-focus-inner { /* お呪い */
	padding: 0 !important;
	border: 0 none !important;
}
label, button:hover {
	cursor: pointer;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
section {
	display: block;
}
/*↑reset↑*/
/*↓html,body,#BodyInner↓*/
html,
body,
#BodyInner {
	overflow-x: hidden;
	width: 100vw;
}
body {
	position: relative;
	overflow-y: scroll;
	overflow-scrolling: touch;
	-webkit-overflow-scrolling: touch;
	background: #0F1F26;
}
html.lock,
body.lock,
#BodyInner.lock {
	overflow-y: hidden;
	overflow-scrolling: auto;
	-webkit-overflow-scrolling: auto;
}
@media screen and (max-width:959px) {}
/*↑html,body,#BodyInner↑*/
/*↓回込解除↓*/
.cfix {
	zoom: 1;
}
.cfix:after {
	display: block;
	clear: both;
	content: '';
}
/*↑回込解除↑*/
/*↓画面を暗く↓*/
.window--dark {
	z-index: 3;
	visibility: hidden;
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	background: rgba(0, 0, 0, 0.6);
	opacity: 0.0;
	transition: visibility 0.5s, opacity 0.5s;
}
.window--dark.show {
	visibility: visible;
	opacity: 1.0;
}
/*↑画面を暗く↑*/
/*↓幅944px⇔100%↓*/
.responsive--width {
	width: 928px;
	margin: 0 auto;
}
@media screen and (max-width:959px) {
	.responsive--width {
		width: 100%;
	}
}
/*↑幅944px⇔100%↑*/
/*↓safearea対策(左右 padding:0; 時のみ可)↓*/
@media screen and (max-width:959px) {
	.safearea--LR {
		padding-left: env(safe-area-inset-left);
		padding-right: env(safe-area-inset-right);
	}
}
/*↑iPhoneX対策↑*/
/*↓ページトップ↓*/
.page--top {
	z-index: 1;
	position: fixed;
	bottom: 8px;
	bottom: calc(env(safe-area-inset-bottom) + 8px);
	right: 8px;
	right: calc(env(safe-area-inset-right) + 8px);
	display: none;
	width: 48px;
	height: 48px;
	background: #900;
	border-radius: 4px;
	box-shadow: 0 2px 4px rgba(15, 31, 38, 0.6);
	padding: 8px;
	cursor: pointer;
}
.page--top:after {
	display: block;
	width: 32px;
	height: 32px;
	background: url('/img/icons.png') -32px 0;
	background-size: cover;
	content: '';
}
/*↑ページトップ↑*/

/* border なし */
.no-border {
	border: none !important;
}
