@charset "utf-8";

:root {
	--main-color: #FF6E2E;
	--bg-color: #EBD69B;
	--text-color: #1C779F;
	--deco-text: "Poppins";
	--layer-top: 5;
	--layer-mid: 3;
	--layer-bottom: 0;
}

.w1126 {
	width: calc((1126 / 1366) * 100%);
	margin: auto;
}

.w1166 {
	width: calc((1166 / 1366) * 100%);
	margin: auto;
}

@media (min-width:2000px) {
	.cont-wrapper {
		max-width: 1920px;
		margin: auto;
	}

	:is(.w1126, .w1166) {
		max-width: 1920px;
	}

	@media (max-width:767px) {
		:is(.w1126, .w1166) {
			padding: 0 20px;
		}
	}
}

body {
	position: relative;
	font-family: 'ZenKakuGothicNew', 'Noto Sans', 'メイリオ';
	color: #514E4D;
	line-height: 1.5;
}

main {
	position: relative;
}

.btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	transition: 0.3s ease-in-out;
}

.btn01 {
	display: flex;
	justify-content: center;
	width: fit-content;
	font-size: 16px;
	font-weight: 600;
	color: var(--main-color);
	padding: 26.5px 84px;
	background-color: #FFF;
	border: solid #FFF 2px;
	border-radius: 80px;
	transition: 0.3s ease-in-out;
}

:is(.page-404, .page-403, .page-500) .btn01 {
	margin: 20px auto 0;
}

@media (any-hover:hover) {
	.btn01:hover {
		color: #FFF;
		background-color: var(--main-color);
	}
}

/*sp*/
@media (max-width:767px) {
	main.error .error-sec .btn.error {
		width: 100%;
		font-size: 14px;
		padding: 27.5px 0px;
	}
}

.layer-texture {
	position: absolute;
	z-index: var(--layer-mid);
	inset: 0;
	mix-blend-mode: overlay;
	background: url(img/bg.webp) repeat-y center / 100%;
	pointer-events: none;
}

.animation:not(.nomove) {
	opacity: 0;
	translate: var(--offsetX, 0) var(--offsetY, 0);
}

@keyframes fadeIn {
	to {
		translate: 0 0;
		opacity: 1.0;
	}
}

/* PC表示（1025px以上） */
@media screen and (min-width: 1025px) {
	.pc {
		display: block;
	}

	.nopc,
	.tb,
	.s_tb,
	.s_tb_sp,
	.sp {
		display: none;
	}
}

/* タブレット（768px〜1024px） */
@media screen and (min-width: 768px) and (max-width: 1024px) {
	.tb {
		display: block;
	}

	.pc,
	.s_tb,
	.s_tb_sp,
	.sp {
		display: none;
	}
}

/* 小型タブレット（600px〜767px） */
@media screen and (min-width: 600px) and (max-width: 767px) {
	.s_tb {
		display: block;
	}

	.pc,
	.tb,
	.s_tb_sp,
	.sp,
	.no_s_tb_sp {
		display: none;
	}
}

/* スマホ_小型タブレット（〜767px） */
@media screen and (max-width: 767px) {
	.s_tb_sp {
		display: block;
	}

	.pc,
	.tb,
	.s_tb,
	.sp,
	.no_s_tb_sp {
		display: none;
	}
}

/* スマホ（〜599px） */
@media screen and (max-width: 599px) {
	.sp {
		display: block;
	}

	.pc,
	.tb,
	.s_tb,
	.nosp,
	.no_s_tb_sp {
		display: none;
	}
}