
.fs-l-main, .fs-l-main, .fs-l-pageMain {
	max-width: inherit !important;
	margin: 0 auto;
}
#fs_CustomPage .fs-l-main {
	padding: 0;
}
.fs-c-breadcrumb__listItem {
	display: inline;
}

/* css */
:root {
	--noto: "Noto Sans JP", sans-serif;
	--color_main: #2e2e2e;
	--shadow: drop-shadow(.2em .2em 2em rgba(222,227,229,.7));
	--width: 1200px;
}
@media screen and (max-width: 1380px) {
	:root {
		--width: 92%;
	}
}

.pc_only {
	display: block;
}
@media screen and (max-width: 768px) {
	.pc_only {
		display: none;
	}
}

.sp_only {
	display: none;
}
@media screen and (max-width: 768px) {
	.sp_only {
		display: block;
	}
}

.lp_wrap {
	margin: 0 auto;
	font-weight: 400;
	font-family: var(--noto);
}
.lp_wrap img {
	width: 100%;
	vertical-align: bottom;
}
@media screen and (max-width: 1380px) {
}
@media screen and (max-width: 768px) {
}
.lp_wrap * {
	line-height: 1em;
	font-feature-settings: "palt";
	font-family: var(--font);
	color: var(--color_main);
	font-size: 62.5%;
	line-height: 1.7;
}
.lp_wrap a{
	text-decoration: none;
}
.lp_wrap section{
	position: relative;
	z-index: 2;
}


/*共通*/
.content_wrap{
	position: relative;
	max-width: 900px;
	width: 100%;
	margin: auto;
	padding: 10rem 0;
}
.content_wrap::after{
	position: absolute;
	content: "";
	background-image: url(../img/obi.png);
	background-size: contain;
	background-repeat: no-repeat;
	bottom: -30px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	aspect-ratio: 900 / 42;
	width: 100%;

}
.lead .content_wrap{
	padding-bottom: 0;
}
.lead .content_wrap::after{
	content: none;
}
.lp_bg{
	position: relative;
	background-image: url(../img/background.png);
	background-size: cover;
	background-position: top;
	overflow: hidden;
}
#pair .content_wrap::after{
	content: none;
}
.pc_only{
	display: block;
}
.sp_only{
	display: none;
}
@media screen and (max-width:768px){
	.pc_only{
		display: none;
	}
	.sp_only{
		display: block;
	}
	.content_wrap{
		padding: 10rem 2rem;
	}
	.content_wrap::after{
		width: 90%;
	}
}
@media screen and (max-width:600px){
	.content_wrap{
		padding: 6rem 1rem;
	}
	.content_wrap::after{
		width: 90%;
	}
}


.fv{
	position: relative;
	max-width: 1150px;
	width: 100%;
	margin: 0 auto;
	z-index: 2;
	padding: 10rem 0 0;
}
@media screen and (max-width:600px){
	.fv{
	padding: 10rem 2rem 0;
	}
}


.lead{
	margin: 0;
}
.lead_text{
	font-size: 24px;
	color: #FFF;
	text-align: center;
	line-height: 2;
}
.lead_text span{
	font-size: 24px;
	color: #FFF;
	background-color: #bf9c47;
	padding: 0 5px;
}
@media screen and (max-width:600px){
	.lead_text{
		font-size: 16px;
	}
	.lead_text span{
		font-size: 16px;
		padding: 0;
	}
}

/*ナビゲーション*/
.nav ._ttl{
	max-width: 799px;
	width: 100%;
	margin: 0 auto 60px;
}
.nav_list{
	display: flex;
	justify-content: space-between;
	gap: 20px;
	padding-bottom: 5%;
}
.nav_list li{
	width: calc(100% / 3 - 10px);
	text-align: center;
}
.nav_list li .nav_star{
	max-width: 40px;
	width: 100%;
	margin: 0 auto 10px;
}
.nav_list li .nav_num{
	display: block;
	font-size: 70px;
	font-family: lithos-pro, sans-serif;
	font-weight: 700;
	color: #FFF;
	line-height: 1;
	margin-bottom: 20px;
}
.nav_list li .nav_ttl{
	display: block;
	font-size: 40px;
	font-family: lithos-pro, sans-serif;
	font-weight: 700;
	-webkit-text-stroke: 2px white;
	color: #00000000;
	line-height: 1;
	margin-bottom: 10px;
}
.nav_list li .nav_subttl{
	display: block;
	font-size: 26px;
	color: #FFF;
	text-align: center;
	line-height: 1;
	margin-bottom: 20px;
}
.nav_list li .nav_img{
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
}
.nav_list li .nav_img img{
	width: auto;
	margin: 0 auto;
}

.nav_list li a{
	position: relative;
	display: block;
	opacity: 1;
}
.nav_list li a:hover{
	position: relative;
	opacity: 0.8;
}
.nav_list li a::after {
  content: "";
  position: absolute;
	bottom: -5%;
	left: 45%;
  width: 30px;
  height: 30px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;

  transform: rotate(45deg);
}

@media screen and (max-width:768px){
	.nav ._ttl{
		max-width: 624px;
		width: 100%;
	}
}

@media screen and (max-width:600px){
	.nav_list li .nav_num{
		font-size: 42px;
	}
	.nav_list li .nav_ttl{
		font-size: 20px;
	}
	.nav_list li .nav_subttl{
		font-size: 16px;
	}
	.nav_list li a::after {
  content: "";
  position: absolute;
	bottom: -5%;
	left: 45%;
  width: 20px;
  height: 20px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
}

}


/*コンテンツ部分*/
.product h2{
	text-align: center;
	margin-bottom: 70px;
}
.product .product_star{
	max-width: 55px;
	width: 100%;
	margin: 0 auto 1rem;
}
.product .product_num{
	display: block;
	font-size: 100px;
	font-family: lithos-pro, sans-serif;
	font-weight: 700;
	color: #FFF;
	line-height: 1;
	margin-bottom: 30px;
}
.product .product_ttl{
	display: block;
	font-size: 65px;
	font-family: lithos-pro, sans-serif;
	font-weight: 700;
	-webkit-text-stroke: 2px white;
	color: #00000000;
	line-height: 1;
	margin-bottom: 20px;
}
.product .product_subttl{
	display: block;
	font-size: 32px;
	color: #FFF;
	text-align: center;
	line-height: 1;
	margin-bottom: 20px;
}
.product .product_text{
	font-size: 22px;
	text-align: center;
	color: #FFF;
	margin-bottom: 70px;
}

.product .product_img{
	text-align: center;
	margin-bottom: 80px;
}
.product .product_btn{
	opacity: 1;
}
.product .product_btn:hover{
	opacity: 0.9;
}
.product .product_img img,
.product .product_btn img{
	display: block;
	width: auto;
	margin: 0 auto;
}

@media screen and (max-width:768px){
	.product h2{
		margin-bottom: 40px;
	}
	.product .product_num{
		font-size: 60px;
		margin-bottom: 20px;
	}
	.product .product_ttl{
		font-size: 42px;
	}
	.product .product_subttl{
		font-size: 22px;
	}
	.product .product_text{
		font-size: 16px;
	}
	.product .product_btn img{
		width: 80%;
	}
}

.footer_bnr{
	background-color: #e5e5e5;
	padding: 60px 0;
}
.footer_bnr li{
	max-width: 900px;
	margin: 0 auto;
}
.footer_bnr li a{
	opacity: 1;
}
.footer_bnr li a:hover{
	opacity: 0.8;
}


  /* 雪エリア */
#snowArea{
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
}

.snow{
  position: absolute;
  will-change: transform;
  animation-name: fall;
  animation-timing-function: linear;
  animation-iteration-count: 1;
}

@keyframes fall {
  0%   { transform: translate3d(0, 0, 0); }
  100% { transform: translate3d(var(--x-move, 0px), var(--fall-y, 110vh), 0); }
}

/* 画像雪 */
.snow--img {
  background: url("../img/snow01.png") no-repeat center center / contain;
}

/* 白丸 */
.snow--dot {
  background: white;
  border-radius: 50%;
}

/* 落下アニメーション（y方向は要素ごとに変える） */
@keyframes fall {
  0%   { transform: translate3d(0, 0, 0); }
  100% { transform: translate3d(var(--x-move, 0px), var(--fall-y, 110vh), 0); }
}


	/*フェードイン*/
.fadein {
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 0.8s ease, transform 0.8s ease;
}

.fadein.show {
	opacity: 1;
	transform: translateY(0);
}