/* ---------------------------------------------------------------------- */
/* destyle.css（リセットCSS） */
/* ---------------------------------------------------------------------- */
*,::before,::after{border-style:solid;border-width:0;box-sizing:border-box;min-width:0}html{line-height:1.15;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}p,table,blockquote,address,pre,iframe,form,figure,dl{margin:0}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;margin:0}ul,ol{list-style:none;margin:0;padding:0}dt{font-weight:700}dd{margin-left:0}hr{border-top-width:1px;box-sizing:content-box;clear:both;color:inherit;height:0;margin:0;overflow:visible}pre{font-family:monospace,monospace;font-size:inherit}address{font-style:inherit}a{background-color:transparent;color:inherit;text-decoration:none}abbr[title]{text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:inherit}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}svg,img,embed,object,iframe{vertical-align:bottom}button,input,optgroup,select,textarea{-webkit-appearance:none;appearance:none;background:transparent;border-radius:0;color:inherit;font:inherit;margin:0;padding:0;text-align:inherit;text-transform:inherit;vertical-align:middle}button,[type="button"],[type="reset"],[type="submit"]{cursor:pointer}button:disabled,[type="button"]:disabled,[type="reset"]:disabled,[type="submit"]:disabled{cursor:default}:-moz-focusring{outline:auto}select:disabled{opacity:inherit}option{padding:0}fieldset{margin:0;min-width:0;padding:0}legend{padding:0}progress{vertical-align:baseline}textarea{overflow:auto}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}[type="number"]{-moz-appearance:textfield}label[for]{cursor:pointer}details{display:block}summary{display:list-item}[contenteditable]:focus{outline:auto}table{border-collapse:collapse;border-color:inherit}caption{text-align:left}td,th{padding:0;vertical-align:top}th{font-weight:700;text-align:left}

/* ---------------------------------------------------------------------- */
/* 基礎設計 */
/* ---------------------------------------------------------------------- */

/* ベース */
html {
	line-break: strict;
	overflow-x: clip;
}

body {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	min-height: 100svh;
	overflow-wrap: anywhere;
}

/* 画像 */
img {
	height: auto;
	max-width: 100%;
}

/* キーボードフォーカス */
:focus-visible {
	outline: 2px solid;
	outline-offset: 2px;
}

/* グローバルガード */
@media (prefers-reduced-motion: reduce) {

	*,
	::before,
	::after {
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
	}

}

/* ---------------------------------------------------------------------- */
/* 汎用タグ */
/* ---------------------------------------------------------------------- */

/* 文字制御 */
.center {
	text-align: center;
}

.right {
	text-align: right;
}

.left {
	text-align: left;
}

/* スクリーンリーダー */
.sr {
	border: 0;
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

/* 頻出まとめて */
.flex {
	display: flex;
}

.flex-col {
	flex-direction: column;
}

.grid {
	display: grid;
}