@charset "utf-8";
/* ============================================
	reset.css - リセット用スタイル
	Normalize.css v8.0.1 ベース
	============================================ */

*,
*::before,
*::after {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
	scroll-behavior: smooth;
}

body {
	margin: 0;
}

/* HTML5要素の表示統一 */
main, article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

/* リストのリセット */
ul, ol {
	list-style: none;
}

/* リンクのリセット */
a {
	background-color: transparent;
	text-decoration: none;
	color: inherit;
}

a:active,
a:hover {
	outline: 0;
}

/* 画像のリセット */
img {
	max-width: 100%;
	height: auto;
	display: block;
	border-style: none;
	vertical-align: middle;
}

/* ボタンのリセット */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

button,
input {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
	appearance: button;
	cursor: pointer;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/* テーブルのリセット */
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* フォントレンダリングの最適化 */
h1, h2, h3, h4, h5, h6 {
	font-weight: normal;
}

/* スクロールの最適化 */
* {
	-webkit-overflow-scrolling: touch;
}