html {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 15px;
	line-height: 1.8;
	-webkit-text-size-adjust: none;
	text-size-adjust: none;
	min-width: 1200px;
	overflow-x: hidden;
}
body {
	margin: 2rem;
}
h1 {
	margin: 1rem 0;
	font-size: 150%;
}
h2 {
	margin: 0;
	font-size: inherit;
}
p {
	margin: 0;
}
ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
a {
	color: inherit;
	text-decoration: none;
}

.error {
	color: hsl(0, 80%, 50%);
	font-weight: bold;
}
.mute {
	color: hsl(0, 0%, 50%);
	font-size: 13px;
	line-height: 1.5;
}
.center {
	text-align: center !important;
}
.right {
	text-align: right !important;
}
.bold {
	font-weight: bold;
}
.preserve {
	white-space: pre-wrap;
}
.small {
	font-size: 13px;
}
.b05 {
	margin-bottom: 0.5rem;
}
.b1 {
	margin-bottom: 1rem;
}
.b2 {
	margin-bottom: 2rem;
}
.t05 {
	margin-top: 0.5rem;
}
.t1 {
	margin-top: 1rem;
}
.t2 {
	margin-top: 2rem;
}
.l05 {
	margin-left: 0.5em;
}
.l1 {
	margin-left: 1em;
}
.l15 {
	margin-left: 1.5em;
}
.r05 {
	margin-right: 0.5em;
}
.r1 {
	margin-right: 1em;
}
[hidden] {
	display: none !important;
}
.ib {
	display: inline-block;
}

.link {
	text-decoration: underline;
}
.link.color {
	color: hsl(215, 80%, 55%);
}
@media (pointer: coarse) {
	.tellink {
		text-decoration: underline;
		color: hsl(215, 80%, 55%);
	}
}
button.link {
	border: 0;
	padding: 0;
	background-color: transparent;
	color: inherit;
	font: inherit;
	cursor: pointer;
}
.buttonp {
	display: inline-block;
	box-sizing: border-box;
	border: 0;
	border-radius: 5px;
	padding: 0.2em 0.7em;
	height: 2.3334em;
	background-image: linear-gradient(to right bottom, hsl(215, 80%, 60%), hsl(235, 80%, 55%));
	color: #fff;
	font: inherit;
	cursor: pointer;
}
.buttonn {
	display: inline-block;
	box-sizing: border-box;
	border: 0;
	border-radius: 5px;
	padding: 0.2em 0.7em;
	height: 2.3334em;
	background-color: hsl(0, 0%, 85%);
	color: inherit;
	font: inherit;
	cursor: pointer;
}
.buttonl {
	display: inline;
	border: 0;
	border-radius: 0;
	padding: 0;
	background-color: transparent;
	color: inherit;
	font: inherit;
	text-decoration: underline;
	cursor: pointer;
}
.スタイルなしボタン {
	border: 0;
	border-radius: 0;
	padding: 0;
	background-color: transparent;
	color: inherit;
	font: inherit;
	cursor: pointer;
}
.input {
	box-sizing: border-box;
	border: 1px solid;
	border-radius: 4px;
	padding: 0.2em 0.4em;
	width: 14em;
	max-width: 100%;
	background-color: #fff;
	color: inherit;
	font: inherit;
}
.input[type="date"] {
	width: 10em;
	height: 2.3334em;
	text-align: center;
}
.input[type="month"] {
	width: 10em;
	height: 2.3334em;
	text-align: center;
}
.input.ym {
	width: 6em;
	text-align: center;
}
.select {
	box-sizing: border-box;
	border: 1px solid;
	border-radius: 4px;
	padding: 0.2em 0.4em;
	height: 2.3334em;
	background-color: #fff;
	color: inherit;
	font: inherit;
	cursor: pointer;
}
input[type="checkbox"], input[type="radio"] {
	cursor: pointer;
}
a:focus, button:focus, input:focus, textarea:focus, select:focus {
	outline: 4px solid hsla(205, 85%, 50%, 0.5);
}
:disabled {
	pointer-events: none;
}
button:disabled, .select:disabled {
	opacity: 0.5;
}

.titleflex {
	display: flex;
	justify-content: space-between;
}
.titleflex > h1 {
	margin-top: 0;
	margin-bottom: 1.5rem;
}