@charset "UTF-8";

@font-face {
	font-family: notosansjp;
	font-weight: 400;
	src: url('../fonts/NotoSansJP-Regular.ttf') format("truetype");
}
@font-face {
	font-family: notosansjp;
	font-weight: 700;
	src: url('../fonts/NotoSansJP-Bold.ttf') format("truetype");
}
@font-face {
	font-family: gtplanner;
	font-weight: 400;
	src: url(../fonts/GT-Planar-Regular.woff2) format("woff2"),
		url(../fonts/GT-Planar-Regular.woff) format("woff"),
		url(../fonts/GT-Planar-Regular.otf) format("opentype");
}
html {
	font-size: 62.5%;
	font-size: 10px;
	scrollbar-gutter: stable;
	overflow-x: hidden;
}
body {
	font-family: "gtplanner", "notosansjp", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, -apple-system, BlinkMacSystemFont, sans-serif!important;
	font-size: 1.02vw;
	font-size: 1.02dvw;
	line-height: 1.8;
	letter-spacing: 0;
	color: #231815;
	font-weight: 400;
	font-feature-settings: 'palt';
}
.fs-body {
	font-size: 1.02vw;
	font-size: 1.02dvw;
}
.fs-body.en {
	font-size: 1.07vw;
	font-size: 1.07dvw;
}
.fs-body.en.lh-171 { line-height: 1.71!important; }

@media (max-width: 991.98px) {
	body, .fs-body {
		font-size: 3.65vw!important;
		font-size: 3.65dvw!important;
	}
	.fs-body.en {
		font-size: 3.8vw!important;
		font-size: 3.8dvw!important;
	}
}



ul { list-style: none!important; }
.list-disc li { list-style: disc; }
.list-square li { list-style: square; }



.lh-0 { line-height: 0!important; }
.lh-s { line-height: 1.2!important; }
.lh-sm { line-height: 1.5!important; }
.lh-m { line-height: 2.2!important; }


.ls-2em { letter-spacing: 0.2em; }
.ls-4em { letter-spacing: 0.4em; }
@media (max-width: 575.98px) { .ls-xs { margin-left: -0.5em; } }




.ff-sans { font-family: "Arial", "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif!important; } 

.fc-white { color: #fff; }

.fw-100 { font-weight: 100!important; }
.fw-300 { font-weight: 300!important; }
.fw-normal { font-weight: 400!important; }
.fw-bold { font-weight: 700!important; }
.text-justify {
	text-align: justify!important;
	text-justify: auto!important;
}
.underline {
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-decoration-skip-ink: none;
}


.tategaki {
	writing-mode: vertical-rl;
}



a {
	color: #231815!important;
	text-decoration: none!important;
	opacity: 1!important;
	transition: opacity .5s ease!important;
}
a > * { transition: opacity .5s ease!important; }
a:hover { opacity: .5!important; }
a:hover img { opacity: .85!important; }
img {
	white-space: pre;
	line-height: 1;
}
img.svg { vertical-align: baseline!important; }








.border-top { border-top: 1px solid #231815!important; }
.border-end { border-right: 1px solid #231815!important; }
.border-bottom { border-bottom: 1px solid #231815!important; }
.border-start { border-left: 1px solid #231815!important; }
.border { border: 1px solid #231815!important; }
.border-w3 { border-width: 3px!important; }





.w-20 { width: 20%!important; }
.w-30 { width: 30%!important; }
.w-35 { width: 35%!important; }
.w-40 { width: 40%!important; }
.w-45 { width: 45%!important; }
.w-40vw { width: 40vw!important; }
.w-40vw { width: 40dvw!important; }
.w-50 { width: 50%!important; }
.w-60 { width: 60%!important; }
.w-65 { width: 65%!important; }
.w-80 { width: 80%;!important; }
.w-90 { width: 90%!important; }
.w-100 { width: 100%!important; }





@media (min-width: 992px) {
	.w-lg-2s { width: calc(50% - 1em)!important; }
	.w-lg-2 { width: calc(50% - 2em)!important; }
	.w-lg-10 { width: 10%!important; }
	.w-lg-20 { width: 20%!important; }
	.w-lg-30 { width: 30%!important; }
	.w-lg-35 { width: 35%!important; }
	.w-lg-40 { width: 40%!important; }
	.w-lg-475 { width: 47.5%!important; }
	.w-lg-55 { width: 55%!important; }
	.w-lg-60 { width: 60%!important; }
	.w-lg-65 { width: 65%!important; }
	.w-lg-75 { width: 75%!important; }
	.w-lg-90 { width: 90%!important; }
	.w-lg-95 { width: 95%!important; }
	.w-lg-100 { width: 100%!important; }
}








@media (min-width: 390px) {
	.d-s-flex { display: flex!important; }
	.d-s-block { display: block!important; }
	.d-s-none { display: none!important; }
}
@media (min-width: 576px) {
	.d-sm-flex { display: flex!important; }
	.d-sm-block { display: block!important; }
	.d-sm-none { display: none!important; }
}
@media (min-width: 640px) {
	.d-m-flex { display: flex!important; }
	.d-m-block { display: block!important; }
	.d-m-none { display: none!important; }
}
@media (min-width: 768px) {
	.d-md-flex { display: flex!important; }
	.d-md-block { display: block!important; }
	.d-md-none { display: none!important; }
}
@media (min-width: 992px) {
	.d-lg-flex { display: flex!important; }
	.d-lg-block { display: block!important; }
	.d-lg-none { display: none!important; }
}











.mt-10 { margin-top: 1em!important; }
.mt-15 { margin-top: 1.5em!important; }
.mt-20 { margin-top: 2em!important; }
.mt-30 { margin-top: 3em!important; }
.mt-38 { margin-top: 3.8em!important; }
.mt-40 { margin-top: 4em!important; }

.mb-0 { margin-bottom: 0!important; }
.mb-5 { margin-bottom: .5em!important; }
.mb-075 { margin-bottom: .75em!important; }
.mb-10 { margin-bottom: 1em!important; }
.mb-20 { margin-bottom: 2em!important; }
.mb-30 { margin-bottom: 3em!important; }
.mb-38 { margin-bottom: 3.8em!important; }
.mb-015vw { margin-bottom: 1.5vw!important; }
.mb-015vw { margin-bottom: 1.5dvw!important; }

.ms-10 { margin-left: 1em!important; }
.ms-50per { margin-left: 50%!important; }

.pt-10 { padding-top: 1em!important; }
.pb-5 { padding-bottom: .5em!important; }
.py-5 {
	padding-top: .5em!important;
	padding-bottom: .5em!important;
}

@media (min-width: 992px) {
	.mt-lg-m025 { margin-top: -0.25vw!important; }
	.mt-lg-m025 { margin-top: -0.25dvw!important; }
	.mt-lg-0 { margin-top: 0!important; }
	.mt-lg-10 { margin-top: 1em!important; }
	.mt-lg-20 { margin-top: 2em!important; }
	.mt-lg-40 { margin-top: 4em!important; }
	.mt-lg-48 { margin-top: 4.8em!important; }
	.mt-lg-60 { margin-top: 6em!important; }
	.mt-lg-100 { margin-top: 10em!important; }
	.mt-lg-025per { margin-top: 2.5%!important; }
	.mt-lg-2vw { margin-top: 2vw!important; }
	.mt-lg-2vw { margin-top: 2dvw!important; }
	.ms-lg-0 { margin-left: 0!important; }
	.ms-lg-5per { margin-left: 5%!important; }
	.mb-lg-0 { margin-bottom: 0!important; }
	.mb-lg-10 { margin-bottom: 1em!important; }
	.mb-lg-015vw { margin-bottom: 1.5vw!important; }
	.mb-lg-015vw { margin-bottom: 1.5dvw!important; }
	.mb-lg-40 { margin-bottom: 4em!important; }
	.mb-lg-48 { margin-bottom: 4.8em!important; }
	.mb-lg-60 { margin-bottom: 6em!important; }
}










