@charset "UTF-8";
*:where(:not(iframe, canvas, img, svg, video):not(svg *)) {
	all: unset;
	display: revert;
	font-size: 100%;
	vertical-align: baseline;
}

html {
	-webkit-text-size-adjust: 100%;
}

body {
	line-height: 1;
}

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

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
picture,
section {
	display: block;
}

ol,
ul {
	list-style: none;
}

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

a {
	display: inline-block;
	cursor: pointer;
}

table {
	border-collapse: collapse;
}

summary {
	list-style: none;
	cursor: pointer;
}
summary::-webkit-details-marker {
	display: none;
}

ins {
	background: #ebf9f8;
	color: #001d38;
}

mark {
	background: #ebf9f8;
	color: #001d38;
	font-style: italic;
	font-weight: bold;
}

del {
	text-decoration: line-through;
}

abbr[title],
dfn[title] {
	border-bottom: 1px dotted #a4b8c4;
	cursor: help;
}

hr {
	display: block;
	height: 1px;
	border-top: 1px solid #a4b8c4;
	margin: 1em 0;
}

sub,
sup {
	line-height: 0;
	position: relative;
	vertical-align: baseline;
	font-size: 65%;
}

sup {
	top: -0.4em;
}

::-moz-selection {
	background: #e6effd;
	color: #0b1633;
}

::selection {
	background: #e6effd;
	color: #0b1633;
}

::-moz-selection {
	background: #e6effd;
	color: #0b1633;
}

html,
body,
textarea,
input,
select,
option {
	color: #001d38;
	font-family: YakuHanJP, "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", Meiryo, メイリオ, sans-serif;
	font-size: 16px;
	line-height: 1;
}

body {
	min-width: 320px;
}

.l-base_wide {
	max-width: 1200px;
	margin: 0 auto;
}
.l-base {
	max-width: 1000px;
	margin: 0 auto;
}

@media print {
	html {
		zoom: 70%;
	}
	html {
		width: 100% !important;
		min-width: 100% !important;
	}
	body {
		width: 100% !important;
		min-width: 1280px !important;
	}
	body.is-tracking_header {
		display: block !important;
		padding-top: 0 !important;
	}
	body:not(.l-home) .l-root {
		margin-bottom: clamp(72px, 10vw, 120px);
	}
	.l-header {
		position: relative !important;
		-webkit-box-shadow: none !important;
		        box-shadow: none !important;
		height: 100px !important;
		width: 100% !important;
	}
	.is-tracking_header .l-header {
		position: relative !important;
		top: auto !important;
	}
	.l-header_menu {
		display: none !important;
	}
	.l-footer {
		position: static !important;
		top: auto !important;
	}
	.l-page_top {
		display: none !important;
	}
}