div#leftbox {
	position: relative;
}
	div#leftbox div.img01 {
		width:100%;
		height:100vh;
		background: url(../images/index/topimg1_sp.webp) no-repeat;
		background-size: auto 100%;
		background-position: center center;
		position: absolute;
		left:0;
		top:0;
	}
	div#leftbox div.img02 {
		width:100%;
		height:100vh;
		background: url(../images/index/topimg2_sp.webp) no-repeat;
		background-size: auto 100%;
		background-position: center center;
		position: absolute;
		left:0;
		top:0;
		opacity: 0;
	}
	div#leftbox div.img03 {
		width:100%;
		height:100vh;
		background: url(../images/index/topimg3_sp.webp) no-repeat;
		background-size: auto 100%;
		background-position: center center;
		position: absolute;
		left:0;
		top:0;
		opacity: 0;
	}
	div#leftbox div.logo {
		width:100%;
		height:100vh;
		background: url(../images/cmn/logo01.png) no-repeat;
		background-size: 40vw auto;
		background-position: center center;
		position: absolute;
		left:0;
		top:0;
		z-index: 1;
	}
/* ニュース */
div.newsbox {
	width:90%;
	margin: 50px auto 0 auto;
}
div.newsbox div.newslistbox {}
	div.newsbox div.newslistbox h2 {
		font-size: 16px;
		margin-bottom: 30px;
	}
		div.newsbox div.newslistbox a.list {
			display: block;
			height:40px;
			border-bottom: #d1d1d1 1px solid;
			position: relative;
			text-decoration: none;
			color: #646464;
			background: url(../images/cmn/news_more.png) no-repeat;
			background-size: auto 8px;
			background-position: right center;
		}
			div.newsbox div.newslistbox a.list span {
				display: block;
				height:40px;
				line-height: 40px;
				text-align: left;
				font-size: 14px;
			}
			div.newsbox div.newslistbox a.list span.date {
				width:80px;
				position: absolute;
				top:0;
				left:0px;
			}
			div.newsbox div.newslistbox a.list span.title {
				width:100%;
				overflow: hidden;
				white-space: nowrap;
				text-overflow: ellipsis;
				box-sizing: border-box;
				padding-left: 80px;
				padding-right: 30px;
			}
		div.newsbox div.newslistbox p.nodata {
			height:50px;
			line-height: 50px;
			font-size: 14px;
		}
/* concept */
div.conceptimg {
	width:77vw;
	height:43vw;
	background: url(../images/index/conceptimg.webp) no-repeat;
	background-size: cover;
	background-position: center center;
	margin-top: 20px;
	margin-left: 5%;
}
/* Profile */
div.profilebox {
	width:77vw;
	position: relative;
	margin-left: 5%;
}
	div.profilebox div.profileimg {
		width:23vw;
		height:23vw;
		position: absolute;
		top:-20px;
		right:0;
		background: url(../images/index/profileimg.png) no-repeat;
		background-size: 100% 100%;
	}
	div.profilebox div.infobox {
		box-sizing: border-box;
		padding: 0 23vw 0 0;
	}
		div.profilebox div.infobox p.ptext {
			width:100%;
			margin: 0;
		}
/* コース */
div.coursebox {
	width:77vw;
	margin-left: 5%;
	padding: 20px 0 10px 0;
	border-bottom: #d1d1d1 1px solid;
}
	div.coursebox p.ptext {
		width:100%;
		margin: 0;
	}
	div.coursebox p.price {
		width:100%;
		font-size: 20px;
		margin-top:10px;
		vertical-align: top;
	}
		div.coursebox p.price a {
			font-size: 14px;
			text-decoration: none;
			color: #646464;
			margin-left: 10px;
		}
/* 予約 インスタQR */
a.reservebtn {
	display: block;
	width:200px;
	height:60px;
	line-height: 60px;
	text-decoration: none;
	text-align: center;
	background: #9EC9CC;
	border-radius: 70px;
	color: #fff;
	font-size: 16px;
	margin-top: 40px;
	margin-left: 5%;
}
div.instqrbox {
	width:150px;
	height:150px;
	background: url(../images/cmn/instqr.png) no-repeat;
	background-size: 100% 100%;
	margin-top: 30px;
	margin-left: 5%;
}
/* Access */
div.mapimg {
	width:70vw;
	height:67vw;
	background: url(../images/index/map.png) no-repeat;
	background-size: 100% 100%;
	margin-top: 30px;
	margin-left: 5%;
}
/* 共通 */
h2.title {
	width:90%;
	font-size: 30px;
	letter-spacing: 1px;
	margin: 50px auto 0 auto;
	font-weight: normal;
}
p.ptext {
	width:90%;
	font-size: 12px;
	line-height: 25px;
	margin: 20px auto 0 auto;
	font-weight: bold;
}
p.ptext span.spbr { display: block;}