/* デフォルト */

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

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
li,
dl,
dt,
dd {
	margin: 0;
	padding: 0;
}

html,
body {
	color: #1F1F1F;
	font-family: "Zen Kaku Gothic New", sans-serif;
	position: relative;
	height: auto;
	min-height: 100%;
	min-height: 100dvh;
	width: 100%;
	overflow-x: clip;
}

img {
	display: block;
	max-width: 100%;
}

p {
	color: #1F1F1F;
	margin: 40px 0 10px;

	span {
		margin-left: 1em;
	}
}

a {
	text-decoration: none;
}

ul,
ol {
	list-style: none;
}

main {
	counter-reset: section;
	margin: 110px auto 0;
	width: 90%;
	max-width: 880px;
}

.required {
	color: #ff3300;
}

.any {
	color: #808080;
}

input[type="text"],
select,
textarea {
    background: #fff;
    border: 1px solid #B8B8B8;
    border-radius: 5px;
    box-sizing: border-box;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: .03em;
    line-height: 1.875;
    padding: 16px 20px;
    resize: vertical;
    width: 100%;
}