@charset "utf-8";

/*-------------------------
CSS変数
---------------------------*/
/* color */
:root {
	--color-red: #da0000;
	--color-yellow: #ffe400;
	--color-blue: #234FAA;
	--color-black:#232323;
	--color-white:#FFFFFF;
}
/* font */
@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@400;500;700&display=swap');
:root {
	--font-default: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
	--font-zenmaru: "Zen Maru Gothic", sans-serif;
	--text-n: 16px;
	--text-s: .875rem;
	--text-m: 1.125rem;
	--text-l: 1.75rem;
	--text-ll: 2.81rem;
}
@media screen and (max-width: 640px) {
	:root {
		--text-m: calc(var(--text-n) * 1.2);
		--text-l: calc(var(--text-n) * 1.4);
		--text-ll: calc(var(--text-n) * 2);
	}
}

/*-------------------------
reset
---------------------------*/
* {
	box-sizing: border-box;
}
html {
	-webkit-text-size-adjust: 100%;
	scroll-behavior: smooth;
	overflow-x: hidden;
	overflow-y: auto;
}
body, input, textarea {
	font-family: var(--font-default);
}
body {
	width: 100vw;
	color: #000;
	font-size: var(--text-n);
	font-feature-settings: "palt";
	line-height: 1.75;
	margin: 0;
	position: relative;
	overflow-x: hidden;
	overflow-y: auto;
}
img,a,ul,li,iframe,fieldset {
	border: none;
	outline: none;
}
img {
	line-height: 0;
}
a {
	color: #000;
	text-decoration: none;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
a,
a img {
	transition: .2s;
}
h1,h2,h3,h4,ol,ul,li,dl,dt,dd,p,figure,from,iframe,fieldset,legend {
	margin: 0;
	padding: 0;
}
ol,ul {
	list-style: none;
}
h1,h2,h3,h4 {
	font-size: 100%;
	font-weight: normal;
}
em {
	font-style: normal;
}
article,aside,footer,header,main,nav,section {
	display: block;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}