@charset "UTF-8";



h3{
	font-size: 2.3rem;
	font-weight: 600;
	line-height: 1.9;
	letter-spacing: 0.06em;
	margin: 80px 0 ;
}
h3.small{
	font-family: gill-sans-nova,sans-serif;
	font-weight: 400;
	font-size: 1.3rem;
	margin: 150px 0 60px;
}
h3.small + h3{
	margin: 0 0 15px;
}

.area1{
	overflow: hidden;
}
.area1 .background_movie{
	display: flex;
	justify-content: center;
	align-items: center;
	height: calc(100vh - 60px);
}
.area1 .background_movie iframe{
	opacity: 0;
	min-height: calc(100vh + 150px);
	height: calc(100vw * (290 / 560) + 150px);
	min-width: 100vw;
	width: calc(100vh * (560 / 290));
	max-width: none;
	margin: -2000px;
	transition: opacity 1s linear;
}
.area1 .background_movie.show iframe{
	opacity: 1;
}

.area1 .front{
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	height: calc(100vh - 60px);
	margin-top: calc((100vh - 60px) * -1);
}
.area1 .front p{
	text-align: center;
	font-size: 2.4rem;
	font-weight: 600;
	line-height: 2.1;
	letter-spacing: 0.06em;
	color: #fff;
}
.area1 .front p small{
	font-size: 0.9rem;
	letter-spacing: 0;
}

.area2{
	color: #fff;
	background-image: url(../img/index/2_bg.jpg);
	background-size: auto max(130%, 72vw); /* 高さを 120% or (縦/幅) のどちらか大きい方にする */
	background-position: 63% 50%;
	background-repeat: no-repeat;
	padding: 250px 0;
}

.area3{
	color: #fff;
	background-image: url(../img/index/3_bg.jpg);
	background-size: auto max(130%, 136vw);
	background-position: 50%;
	background-repeat: no-repeat;
	padding: 250px 0 400px;
}

.area3 .row{
	display: flex;
	justify-content: space-between;
}
html.sp .area3 .row{
	flex-direction: column;
	width: 80%;
	margin: 0 auto;
}
.area3 .row .box{
	flex-basis: 31%;
}
html.sp .area3 .row .box{
	flex-basis: auto;
	margin: 30px 0 0;
}
.area3 .row .box .num{
	font-family: gill-sans-nova,sans-serif;
	font-weight: 400;
	font-size: 3.1rem;
	margin: 0 0 -21px 10px;
}
.area3 .row .box .num img{
	position: relative;
	height: 25px;
	filter: invert(100%) brightness(1.3);
	mix-blend-mode: screen;
	z-index: 2;
}
.area3 .row .box .image{
	position: relative;
	z-index: 1;
}
.area3 .row .box .image img{
	object-fit: cover;
	object-position: center;
	width: 100%;
	height: 100%;
}
.area3 .row .box h4{
	font-size: 1.8rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	margin: 30px 0 5px;
}
.area3 .row .box p{
	margin: 5px 0 10px;
}
html.sp .p3_1{
	margin: 50px 0 0;
}

.area4{
	padding: 100px 0 200px;
}
.area4 .row{
	display: flex;
	justify-content: space-between;
	margin: 50px 0 0;
}
html.sp .area4 .row{
	flex-direction: column;
	width: 80%;
	margin: 0 auto;
}
.area4 .row .box{
	flex-basis: 31%;
}
html.sp .area4 .row .box{
	flex-basis: auto;
	margin: 40px 0 0;
}
.area4 .row .box h4{
	flex-basis: 31%;
	text-align: center;
	font-size: 1.8rem;
	font-weight: 600;
	background-color: #e5eef4;
	padding: 0 10px 17px;
}
.area4 .row .box h4 .image{
	position: relative;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	height: 55px;
	margin: -28px 0 0px;
	top: -5px;
}

a.contact_link{
	display: inline-block;
	text-align: center;
	text-decoration: none;
	font-size: 1.6rem;
	font-weight: 600;
	color: #fff;
	background: rgb(214,52,247);
	background: linear-gradient(135deg, rgba(214,52,247,1) 0%, rgba(54,185,255,1) 100%);
	box-sizing: border-box;
	padding: 20px;
	width: 400px;
	transition: filter 0.2s linear;
	margin-top: 30px;
}
a.contact_link:hover{
	filter: brightness(1.2);
}

.area4 h3.price{
	margin-bottom: 60px;
}

p.chui{
	font-size: 1.3;
	margin: 50px 0;
}


