html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline
}
html {
	scroll-behavior: smooth;
	margin: 0 !important;
	margin-top: 0 !important;
}
body {
	line-height: 1
}
a {
	text-decoration: none;
	text-decoration-skip-ink: auto;
	cursor: pointer;
}
a[href^="tel"] {
	text-decoration: none
}
button {
	outline: 0
}
ol,
ul {
	list-style: none
}
blockquote,
q {
	quotes: none
}
blockquote:before,
blockquote:after,
q:before,
q:after {
	content: '';
	content: none
}
q {
	display: inline;
	font-style: italic
}
q:before {
	content: '"';
	font-style: normal
}
q:after {
	content: '"';
	font-style: normal
}
textarea,
input[type="text"],
input[type="button"],
input[type="submit"],
input[type="reset"],
input[type="search"],
input[type="password"] {
	-webkit-appearance: none;
	appearance: none;
	border-radius: 0
}
input[type="search"] {
	-webkit-appearance: textfield
}
table {
	border-collapse: collapse;
	border-spacing: 0
}
th,
td {
	padding: 2px
}
big {
	font-size: 120%
}
small,
sup,
sub {
	font-size: 80%
}
sup {
	vertical-align: super
}
sub {
	vertical-align: sub
}
dd {
	margin-left: 20px
}
kbd,
tt {
	font-family: courier;
	font-size: 12px
}
ins {
	text-decoration: underline
}
del,
strike,
s {
	text-decoration: line-through
}
dt {
	font-weight: bold
}
address,
cite,
var {
	font-style: italic
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block
}
* {
	box-sizing: border-box;
	-webkit-tap-highlight-color: transparent
}

*,
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
	font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	letter-spacing: .02em;
	line-height: 1.6em;
	word-break: normal;
	font-weight: 600;
}

:root {
	--c-wh: #fff;
	--c-txt: #000;
	--c-gr: #00996E;
}
.txt-gr {
	color: var(--c-gr);
}
.txt-ar {
	font-family: 'Archivo', sans-serif;
	font-weight: 400;
	letter-spacing: .018em;
	line-height: 2em;
}
.mds .txt-ar {
	line-height: 1em;
}

:focus-visible {}

::selection {
	background-color: #ddd;
}

::marker {}

:is(::-webkit-calendar-picker-indicator,
	::-webkit-clear-button,
	::-webkit-inner-spin-button,
	::-webkit-outer-spin-button) {}


body {
	width: 100%;
	margin: 0;
	background-color: var(--c-wh);
	font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
a,
pre,
span,
ul,
li,
table,
td,
tr {
	line-height: 1.7em;
	letter-spacing: 0.05em;
}

img {
	max-width: 100%;
}


p,
a,
input,
span,
td,
pre {
	font-size: 16px;
	letter-spacing: 0.04em;
	font-weight: 400;
	color: var(--c-txt);
}
@media (max-width: 1024px) {
	p,
	a,
	input,
	span,
	td,
	pre {
		font-size: 16px;
	}
}
@media (max-width: 600px) {
	p,
	a,
	input,
	span,
	td,
	pre {
		font-size: 15px;
	}
}

pre {
	word-break: break-all;
	white-space: pre-wrap;
}
a,
a:hover {
	transition: .3s;
}


/* font start */
.f13 {
	font-size: 13px;
}
.f14 {
	font-size: 14px;
}
.f15 {
	font-size: 15px;
}
.f17 {
	font-size: 17px;
}
.f18 {
	font-size: 18px;
}
.f20 {
	font-size: 20px;
}
.f21 {
	font-size: 21px;
}
.f22 {
	font-size: 22px;
}
.f33 {
	font-size: 33px;
}
.f50 {
	font-size: 50px;
}
.f66 {
	font-size: 66px;
}
@media (max-width: 1280px) {
	.f50 {
		font-size: 40px;
	}
	.f66 {
		font-size: 58px;
	}
}
@media (max-width: 1024px) {
	.f15 {
		font-size: 14px;
	}
	.f17 {
		font-size: 16px;
	}
	.f20 {
		font-size: 16px;
	}
	.f21 {
		font-size: 18px;
	}
	.f22 {
		font-size: 18px;
	}
	.f33 {
		font-size: 26px;
	}
	.f50 {
		font-size: 36px;
	}
	.f66 {
		font-size: 48px;
	}
}

@media (max-width: 990px) {}

@media (max-width: 600px) {
	p,
	a,
	input,
	span {
		font-size: 15px;
	}
	.f15 {
		font-size: 13px;
	}
	.f28 {
		font-size: 22px;
	}
	.f50 {
		font-size: 32px;
	}
}

.f-center {
	text-align: center;
}


.fl-m010 {
	letter-spacing: -0.01em;
}

.fl-m020 {
	letter-spacing: -0.02em;
}

.fl-020 {
	letter-spacing: 0.02em;
}
.fl-080 {
	letter-spacing: 0.08em;
}

.fl-100 {
	letter-spacing: 0.1em;
}

.fl-120 {
	letter-spacing: 0.12em;
}

.fl-170 {
	letter-spacing: 0.17em;
}

.fl-210 {
	letter-spacing: 0.21em;
}

.c-wh {
	color: var(--c-wh);
}

.c-txt {
	color: var(--c-txt);
}


/* font weight */
.fw300 {
	font-weight: 300;
}

.fw400 {
	font-weight: 400;
}

.fw500 {
	font-weight: 500;
}

.fw-700 {
	font-weight: 700;
}

.fw900 {
	font-weight: 900;
}

/* font weight */
.fl-50 {
	letter-spacing: .05em;
}

.fl-70 {
	letter-spacing: .07em;
}

.fl-120 {
	letter-spacing: .12em;
}

.fl-160 {
	letter-spacing: .16em;
}

.fl-700 {
	letter-spacing: .7em;
}



/* font end */