@charset "utf-8";
/*
Theme Name: leben-test
Theme URI: テーマ使用サイトのURL
Description: テーマの説明
Author: 作者の名前
Author URI: 作者のサイトのURL
Version: バージョン
*/

.mv {
  position: relative;
  width: 100%;
  height: 100vh; /* 高さは調整 */
  overflow: hidden;
	margin:0 auto 100px;
}

.mv-slide {
  position: absolute;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 1.5s ease;
}

.mv-slide.active {
  opacity: 1;
}

.mv-content {
  position: absolute;
  top:0px;
z-index: 2;
  color: #fff;
	width:70%;
	left:50%;
	transform:translatex(-50%);
}

.hl {
	position:absolute;
	left:0;
}

.hr {
	position:absolute;
	right:0;	
}

.hr img {
	display:inline-block;
}

.p-lp_con {
	width:100%;
	margin:0 auto;
}

.p-fv_con {
	width:960px;
	margin:0 auto;
}

.p-con_image {
	width:960px;
	margin:0 auto;
}

.p-con_image h2 {
	font-size:40pt;
	text-align:center;
	font-family: 'Noto Sans', sans-serif;
	font-weight:400;
	margin-bottom:50px;
}

.p-con_image img {
	margin-bottom:20px;
	width:100%;
}

.p-con_image span {
	font-size:18pt;
	text-align:center;
	font-family: 'Noto Sans', sans-serif;
	font-weight:400;
	margin-top:50px;
	margin-bottom:10px;
	display:block;
}

.p-copy {
	width:100%;
	padding-top:100px;
}

.p-copy img {
	width:100%;
	margin:0 auto;
}

.gallery {
  width: 960px;
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
	margin:0 auto;
}

/* colの箱を消して中身だけ並べる */
.gallery .col {
  display: contents;
}

/* 画像サイズ */
.gallery img {
  width: 310px; /* (960 - 30) / 3 */
  height: auto;
  display: block;
}

.stitle {
		font-size:18pt;
	text-align:center;
	font-family: 'Noto Sans', sans-serif;
	font-weight:400;
	margin-top:50px;
	margin-bottom:10px;
	display:block;
}

.price_t {
	background:#f6f5f3;
	 width: 100%;
	padding:50px 0px;
}

.price_t img {
	display:block;
	margin:0px auto;
	padding:50px;
}

.features {
	width:960px;
	margin:0 auto;
	padding:50px 0px;
	text-align:center;
}

.features img {
	padding:30px 0px;
	margin:0 auto;
}

.camp {
	background:#f6f5f3;
	 width: 100%;
	margin-bottom:50px;
}

.camp2 {
	background:#fff;
	 width: 100%;
	margin-bottom:50px;
}

.ptb_50 {
	padding:50px 0px;
}
.camp2 .ptb_50 img,
.camp .ptb_50 img {
	display:block;
	margin:0px auto;
	padding:50px;
}

.p-fl_image {
	width:960px;
	margin:0 auto;
}

.w960 {
	width:960px;
	margin:0 auto;
}

.p-concept_image img {
	margin:50px auto 0px;
}

.ct {
	color:#a78431;
}

.fs {
	font-size:1.2rem;
}


.back_wave {
	background:#f6f5f3;
}

.back_wave2 {
	background:#fff;
}

.top0 {
	margin-top: -2rem;
}

.pc {
	display:block !important;
}

.sp {
	display:none !important;
}

@media screen and (max-width: 768px) {
.pc {
	display:none !important;
}

.sp {
	display:block !important;
}	
	
	.p-con_image {
	width:100%;
	margin:0 auto;
}

.p-con_image h2 {
	font-size:40pt;
	text-align:center;
	font-family: 'Noto Sans', sans-serif;
	font-weight:400;
	margin-bottom:50px;
}

.p-con_image img {
	margin-bottom:20px;
	width:100%;
}

.p-con_image span {
	font-size:18pt;
	text-align:center;
	font-family: 'Noto Sans', sans-serif;
	font-weight:400;
	margin-top:50px;
	margin-bottom:10px;
	display:block;
}

	.fs {
	font-size:1rem;
}
	
	
.camp {
	background:#f6f5f3;
	 width: 100%;
	margin-bottom:50px;
}

.camp2 {
	background:#fff;
	 width: 100%;
	margin-bottom:50px;
}

.ptb_50 {
	padding:50px 0px;
}
.camp2 .ptb_50 img,
.camp .ptb_50 img {
	display:block;
	margin:0px auto;
	padding:50px;
}

	.back_wave {
	background:#f6f5f3;
		margin-top:-3.5rem;
}

.back_wave2 {
	background:#fff;
		margin-top:-3.5rem;
}

	.m-2 {
		margin-top:-2rem;
	}
}