@charset "UTF-8";
:root {
	--white: #fff;
	--green-4: #002d04;
}

/* サイズ設定 */
@media (min-width: 769px) {
	html {
		font-size: min(calc(100vw / ( 1280 / 1 )), 1px);
	}
}
@media (max-width: 768px) {
	html {
		font-size: calc(100vw / ( 450 / 1 ));
	}
}

/* PC */
@media (min-width: 769px) {
	.sp_only {
		display: none !important;
	}
	a[href^="tel:"] {
		pointer-events: none;
	}
	header,
	main,
	footer {
		width: 450rem;
		margin-inline: auto;
	}
}
/* SP */
@media (max-width: 768px) {
	.pc_only {
		display: none !important;
	}
}

body {
	font-family: 'Noto Sans JP', sans-serif;
	letter-spacing: .05em;
	text-align: center;
	position: relative;
	overflow-x: clip;
}
img {
	width: 100%;
	max-width: 100%;
	height: auto;
}
strong,
b {
	font-weight: 700;
}
i {
	font-style: normal;
}
iframe {
	width: 100%;
	height: 100%;
}

/* アニメーション */
.ani_over,
.ani_over::before,
.ani_over::after {
	transition: all .3s ease-out;
}
/* テキスト */
.ta_center {
	text-align: center;
}
.ta_left {
	text-align: left;
}
.ta_right {
	text-align: right;
}
/* 背景 */
.bg_wht {
	background-color: var(--white);
}
/* 文字色 */
.fc_wht {
	color: var(--white);
}
/* 画像色変え */
.img_wht {
	filter: brightness(0) invert(1);
}
/* 角丸 */
.round {
	border-radius: 100vmax;
}
/* 袋文字 */
.outline {
	paint-order: stroke;
}
/* 傍点 */
.dot {
	position: relative;

	&::before {
		content: '';
		aspect-ratio: 1;
		border-radius: 100vmax;
		margin-inline: auto;
		position: absolute;
		inset: 0;
	}
}
/* 飛び出しコピー */
.slash {
	display: inline-block;
	position: relative;

	&::before,
	&::after {
		content: '';
		margin-block: auto;
		position: absolute;
		inset: 0 auto;
	}
	&::before {
		left: 0;
	}
	&::after {
		right: 0;
	}
}
/* フキダシ上下 */
.tail_t,
.tail_b {
	position: relative;

	&::after {
		content: '';
		margin-inline: auto;
		position: absolute;
	}
}
.tail_t::after {
	clip-path: polygon(50% 0, 100% 100%, 0 100%);
	inset: auto 0 calc(100% - 1rem);
}
.tail_b::after {
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	inset: calc(100% - 1rem) 0 auto;
}
/* アコーディオン */
.acc-trigger {
	position: relative;
	cursor: pointer;

	&::before,
	&::after {
		content: '';
		margin-block: auto;
		position: absolute;
		inset: 0 auto;
	}
	&::before {
		rotate: -90deg;
	}
	&.open::before {
		background-color: transparent;
		rotate: 0deg;
	}
}
.acc-content {
	display: none;
}
/* 注釈リスト */
.notice li {
	text-align: left;
	display: flex;
}
ul.notice li::before {
	content: '※';
}
ol.notice {
	counter-reset: list-num;

	& li::before {
		content: '※'counter(list-num);
		counter-increment: list-num;
		flex-shrink: 0;
	}
}

/* アニメーション */
@keyframes fade {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}

/* フッター */
#footer {
	padding-block: 72rem 80rem;

	& .footer_logo {
		& .copy {
			font-size: 14rem;
		}
		& img {
			width: 112rem;
			margin-top: 12rem;
			margin-inline: auto;
		}
	}
	& .copyright {
		font-size: 10rem;
		margin-top: 32rem;
	}
}