@charset "UTF-8";
.txtEx {
	text-indent: 120%;
	white-space: nowrap;
	overflow: hidden;
}
.PC {display: inherit;}
.SP {display: none;}

:root {
	--font-default: "Noto Sans JP","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", YuGothic, "Yu Gothic Medium", "Yu Gothic", "メイリオ", Meiryo, Osaka, "sans-serif";
	--font-Mincho:  "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;

}

:where(html) {
	scroll-behavior: smooth; /*スムーススクロール*/
	scroll-padding-top: 0rem; /*スクロール位置の調整*/
	font-size: 62.5%; /*1rem = 10px*/
	font-size: 1.333vw; /*defaultFontsize / maxWidth * 100*/
	margin: 0 auto;
}
  /*deviceWidth 750px 以上の時 全体のフォントサイズ 10px に固定*/
  @media screen and (min-width: 750px) {
    :where(html) {
      font-size: 10px; /*defaultFontsize*/
    }
  }
:where(body) {
	font-family: var(--font-default);
	width: 100%;
	margin: 0 auto;
	/*overflow-x: hidden;*/
	height: 200vh;
}
:where(img) {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
:where(picture) {
	display: inline-block;
	vertical-align: bottom;
}

a:where([class]) {
	display: inline-block;
	transition: opacity 0.12s;
}
	a:where([class]):hover {
		opacity: 0.8;
	}

*[class] > mark {
	color: inherit;
	background: none;
}

/*--------------------
No1*/

/*--No2*/

/*No3*/

._img {
	position: relative;
	max-width: 750px;
	width: 100%;
	margin: 0 auto;
	color: #1a1a1a;
}
._img .__bg {
	position: absolute;
		z-index: -1;
	width: 100%;
	height: 100%;
}
		.lp_01 { min-height: 132rem; }
		.lp_02 { min-height: 24rem; }
		.lp_03 { min-height: 67.6rem; }
		.lp_04 { min-height: 90.1rem; }
		.lp_05 { min-height: 90.5rem; }
		.lp_06 { min-height: 116.4rem; }
		.lp_07 { min-height: 95.7rem; }
		.lp_08 { min-height: 109.7rem; }
		.lp_09 { min-height: 61.1rem; }
		.lp_10 { min-height: 82.4rem; }
		.lp_11 { min-height: 90.2rem; }
		.lp_12 { min-height: 81rem; }
		.lp_13 { min-height: 54.8rem; }

.lp_03 {}
	.lp_03 .btn {
		position: absolute;
			z-index: 10;
			left: 50%;
			bottom: 6rem;
			translate: -50% 0;
		width: 58.5rem;
		filter: drop-shadow(1rem 1rem 0.8rem rgba(0 0 0 / 0.4));
	}

.lp_04 {
	padding-top: 6.4rem;
	padding-bottom: 3rem;
}
	.lp_04 .__bg {
		margin-top: -6.4rem;
	}
	.lp_04 .youtube {
		width: 64rem;
		height: 36rem;
		margin: 0 auto;
		margin-bottom: 3rem;
	}
				.lp_04 .youtube:last-child {
					margin-bottom: 0rem;
				}
		.lp_04 .youtube iframe {
			width: 100%;
			height: 100%;
		}

.lp_05 {
	min-height: 0;
	background: #fff;
	padding-top: 73rem;
}
	.lp_05 .__bg {
			z-index: 1;
		height: auto;
		margin-top: -73rem;
	}
	.lp_05 .txt {
		position: relative;
			z-index: 10;
		font-size: 2.8rem;
		text-align: center;
		line-height: 1.92;
	}

.lp_06 {
	background: #fff;
}
	.lp_06 .__bg {
		position: static;
		height: auto;
	}
	.lp_06 .txt {
		position: relative;
			z-index: 10;
		width: 67rem;
		margin: 0 auto;
		margin-top: 4rem;
		font-size: 3rem;
		line-height: 1.86;
	}

.lp_07 {
	padding-top: 28.6rem;
}
	.lp_07 .__bg {
			z-index: 1;
		height: auto;
		margin-top: -28.6rem;
	}
	.lp_07 .txt {
		position: relative;
			z-index: 10;
		width: 40.5rem;
		margin-left: 31rem;
		color: #fff;
		font-size: 2.8rem;
		line-height: 1.92;
	}

.lp_08 {
	padding-top: 91rem;
}
	.lp_08 .__bg {
			z-index: 1;
		height: auto;
		margin-top: -91rem;
	}
	.lp_08 .txt {
		position: relative;
			z-index: 10;
		color: #fff;
		font-size: 2.8rem;
		text-align: center;
		line-height: 1.92;
	}

.lp_09 {
	margin-bottom: -2rem;
	padding-top: 37.6rem;
	background: #e2ded9;
}
	.lp_09 .__bg {
			z-index: 1;
		height: auto;
		margin-top: -37.6rem;
	}
	.lp_09 .lists {
		position: relative;
			z-index: 10;
		display: flex;
			flex-direction: column;
			gap: 4rem 0;
		width: 67rem;
		margin: 0 auto;
	}
		.lp_09 .lists li {
			box-shadow: -1rem 1rem 0.8rem rgba(0 0 0 / 0.2);
		}
			.lp_09 .lists .taxo {
				position: relative;
				display: flex;
					flex-direction: column;
					justify-content: space-between;
				min-height: 18rem;
				padding: 3.2rem 3.6rem 1.6rem 3.6rem;
				background: url("../images/voice_bg.jpg");
			}
				.lp_09 .lists .t01 {
					color: #fff;
					font-size: 3rem;
					font-weight: 700;
				}
				.lp_09 .lists .t02 {
					color: #fff;
					font-size: 2.4rem;
				}
				.lp_09 .lists .icon {
					position: absolute;
						z-index: 10;
						right: 2.8rem;
						bottom: -0.3rem;
					width: 12.4rem;
				}
			.lp_09 .lists .t03 {
				margin: 0 auto;
				padding: 1em;
				font-size: 2.8rem;
				line-height: 1.92;
				background: #fff;
			}

.qawrap {
	max-width: 750px;
	margin: 0 auto;
	background: #051e3d;
}
.lp_11 {
	position: relative;
		z-index: 5;
	padding-top: 33rem;
	margin-bottom: -44rem;
}
	.lp_11 .__bg {
		height: auto;
		margin-top: -33rem;
	}
	.lp_11 .lists {
		position: relative;
			z-index: 10;
		display: flex;
			flex-direction: column;
			gap: 8rem 0;
		width: 67rem;
		margin: 0 auto;
	}
		.lp_11 .lists li {}
			.lp_11 .lists li .q {
				display: flex;
				margin-bottom: 2rem;
				color: #fff;
				font-size: 3.4rem;
				font-weight: 700;
				line-height: 1.23;
			}
						.lp_11 .lists li .q:before {
							content: "";
							display: inline-block;
								flex-shrink: 0;
							width: 7.8rem;
							height: 7.8rem;
							margin-right: 0.7rem;
							vertical-align: middle;
							background: url("../images/qa_q.png") no-repeat;
							background-size: 100%;
						}
				.lp_11 .lists li .q span {
					display: flex;
						align-items: center;
					width: 100%;
					padding-left: 2.2rem;
					border-bottom: 1px solid #fff;
				}
			.lp_11 .lists li .a {
				display: flex;
				color: #fff;
				font-size: 2.8rem;
				line-height: 1.78;
			}
						.lp_11 .lists li .a:before {
							content: "";
							display: inline-block;
								flex-shrink: 0;
							width: 7.8rem;
							height: 5rem;
							margin-right: 0.7rem;
							vertical-align: middle;
							background: url("../images/qa_a.png") no-repeat left center;
							background-size: 100%;
						}
				.lp_11 .lists li .a span {
					width: 100%;
					padding-left: 2.2rem;
				}

.lp_13 {
	position: relative;
		z-index: 1;
}

.fixbg {
	position: fixed;
		z-index: -10;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
	background: url("../images/bg01.jpg") no-repeat center bottom;
	background-size: 200rem;
}