@charset "utf-8";
/* CSS Document */

/* greeting
////////////////////////////////*/

.mainColumn .greeting{
	width: 100%;
	height: auto;
	margin: 0 0 20px 0;
	padding: 0;
	line-height: 2.0;
}

.greeting:after{
	content:"";
	display:block;
	clear: both;
	overflow: hidden;
}

.greeting h1{
	width: 100%;
	height: auto;
	color: #842f4f;
	border-bottom: 1px solid #842f4f;
	font-size: 24px;
	font-weight: normal;
	margin-bottom: 10px;
	line-height: 1.5;
}

.greeting figure{
	display: inline;
	float: right;
	padding: 0 0 5px 10px;
}

.greeting figure figcaption{
	text-align: center;
}

/* shopImages
////////////////////////////////*/

.shopImages{
	width: 100%;
	height: auto;
	margin: 0 0 20px 0;
	padding: 0;
}

.shopImages h1{
	width: 100%;
	height: auto;
	color: #842f4f;
	border-bottom: 1px solid #842f4f;
	font-size: 24px;
	font-weight: normal;
	margin-bottom: 10px;	
}

.shopImages h2{
	width: 100%;
	height: auto;
	color: #363636;
	font-size: 18px;
	font-weight: normal;
	margin-bottom: 10px;
}

.shopImages h2 i{
	margin-right: 10px;
}

.shopImages ul{
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
}

.shopImages ul:after{
	content:"";
	display: block;
	clear: both;
	overflow: hidden;
}


.shopImages ul li{
	width: 32%;
	height: auto;
	float: left;
	margin-bottom: 10px;
}

.shopImages ul li{
	margin-right: 2%;
}

.shopImages ul li:nth-child(3n){
	margin-right: 0;
}

.shopImages ul li a{
	display: block;
	width: auto;
	height: auto;
	margin: 0;
	padding: 0;
}

.shopImages ul li a:hover{
	opacity: 0.5;
}

.shopImages ul li a figure{
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
}

.shopImages ul li a figure img{
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

.shopImages ul li a figure figcaption{
	background: rgba(0,0,0,1.0);
	color: #FFF;
	text-align: center;
	font-size: 12px;
	padding: 5px 0;
}


/* shopVideo
////////////////////////////////*/

.shopVideo{
	width: 100%;
	height: auto;
	margin: 0 0 20px 0;
	padding: 0;
}

.shopVideo h2{
	width: 100%;
	height: auto;
	color: #363636;
	font-size: 18px;
	font-weight: normal;
	margin-bottom: 10px;	
}

.shopVideo h2 i{
	margin-right: 10px;
}

.shopVideo iframe{
	width: 100%;
	height: 515px;
}

/* shopInfo
////////////////////////////////*/

.shopInfo{
	width: 100%;
	height: auto;
	margin: 0 0 20px 0;
	padding: 0;
}

.shopInfo h1{
	width: 100%;
	height: auto;
	color: #842f4f;
	border-bottom: 1px solid #842f4f;
	font-size: 24px;
	font-weight: normal;
	margin-bottom: 10px;	
}

.shopInfo table{
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	border-collapse:collapse;
	border: 1px solid #842f4f;
}

.shopInfo table tr th{
	width: 30%;
	height: auto;
	padding: 5px 10px;
	text-align: left;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
	background: #fdeef6;
	border-bottom: 1px solid #842f4f;
}

.shopInfo table tr td{
	width: 70%;
	height: auto;
	padding: 5px 10px;
	text-align: left;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
	border-bottom: 1px solid #842f4f;
}

.shopInfo table tr td a{
	text-decoration: underline;
	color: #842f4f;
}

.shopInfo table tr td a:hover{
	text-decoration: none;
}

/* fee
////////////////////////////////*/
.fee{
	width: 100%;
	height: auto;
	margin: 0 0 20px 0;
	padding: 0;
}

.fee h1{
	width: 100%;
	height: auto;
	color: #842f4f;
	border-bottom: 1px solid #842f4f;
	font-size: 24px;
	font-weight: normal;
	margin-bottom: 10px;
}

.fee > h2{
	color: #842F4F;
	font-weight: bold;
	font-size: 18px;
	margin-bottom: 10px;
}

.fee table{
	width: 100%;
	height: auto;
	margin: 0 0 20px 0;
	padding: 0;
	border-collapse: collapse;
	border: 1px solid #842f4f;
}

.fee table th{
	background: #fdeef6;
	border-right: 1px solid #842f4f;
	border-bottom: 1px solid #842f4f;
	padding: 5px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
	width: 30%;
	height: auto;
}

.fee table td{
	padding: 5px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
	width: 70%;
	height: auto;
	text-align: center;
	border-bottom: 1px solid #842f4f;
}

.fee aside{
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
}

.fee aside h2{
	width: 100%;
	height: auto;
	font-size: 18px;
	font-weight: normal;
	margin-bottom: 10px;
	line-height: 1.5;
	color: #FF0000;
}

.fee aside h2 i{
	margin-right: 10px;
}

.fee aside ul{
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
}

.fee aside ul li{
	line-height: 2.0;
}

.price-table{
	width: 100%;
	height: auto;
	border-collapse: collapse;
	border: 1px solid #842f4f;
}

.price-table tbody th, td{
	box-sizing: border-box;
	padding: 3px 5px;
	border: 1px solid #842f4f;
	text-align: center;
}

.price-table tbody th{
	background:#D297AB;
	color: #FFF;
	font-weight: normal;
	width: 30%;
}

.price-table tbody td{
	width: 35%;
}

/* 2023年9月~　紹介キャンペーン用
////////////////////////////////*/

.price-tokuten {
	width: 100%;
	height: auto;
	border-collapse: collapse;
	border: 1px solid #842f4f;
}

.price-tokuten tbody th, td{
	box-sizing: border-box;
	padding: 3px 5px;
	border: 1px solid #842f4f;
	text-align: center;
}

.price-tokuten tbody th{
	background:#DD666D;
	color: #FFF;
	font-weight: normal;
	width: 30%;
}

.price-tokuten tbody td{
	width: 35%;
}


/* Access
////////////////////////////////*/
.access{
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
}

.access h1{
	width: 100%;
	height: auto;
	color: #842f4f;
	border-bottom: 1px solid #842f4f;
	font-size: 24px;
	font-weight: normal;
	margin-bottom: 10px;
}

.access p{
	width: 100%;
	height: auto;
	margin: 0 0 10px 0;
	padding: 0;
}

.access iframe{
	width: 100%;
	height: 515px;
	padding: 0;
	margin: 0;
}

.access span{
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
}

.access span a{
	color: #842f4f;
	text-decoration: underline;
}

.access span a:hover{
	text-decoration: none;
}

.access span a i{
	margin-right: 10px;
}

/* sideNav
///////////////////////////////////////////////////
snsBox
/////////////////////////////////////////////////*/
.snsBox{
	width: 100%;
	height: auto;
	margin: 0 0 20px 0;
	padding: 0;
}

/* sideNav
///////////////////////////////////////////////////
bannerBox
/////////////////////////////////////////////////*/
.bannerBox{
	width: 100%;
	height: auto;
	margin: 0 0 20px 0;
	padding: 0;
}

.bannerBox ul{
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
}

.bannerBox ul li{
	width: 100%;
	height: auto;
	margin: 0 0 10px 0;
	padding: 0;
}

.bannerBox ul li a:hover{
	opacity: 0.5;
}

.fbImage{
	display: none;
}

/*
******************************************************
media query
********************************************************
*/
@media screen and (max-width: 1023px){
	.snsBox .fbTimeLine{
		display: none;
	}
	.fbImage{
		display: block;
	}
	.shopVideo iframe{
		height: 315px;
	}
	.access iframe{
		height: 315px;
	}
}

@media screen and (max-width: 789px){
	
	.bannerBox ul:after{
		content:"";
		display: block;
		clear: both;
		overflow: hidden;
	}
	
	.bannerBox ul li{
		width: 49%;
		float: left;
		margin-right: 2%;
	}
	
	.bannerBox ul li:nth-child(2n){
		margin-right: 0;
	}
}

@media screen and (max-width: 560px){
	
	.greeting figure{
		text-align: right;
		width: 50%;
	}
	
	.greeting figure img{
		width: 100%;
	}
	.fee table td span{
		display: block;
	}
	.shopImages ul li{
		width: 49%;
		height: auto;
		float: left;
		margin-bottom: 10px;
	}

	.shopImages ul li{
		margin-right: 0;
	}

	.shopImages ul li:nth-child(3n){
		margin-right: 0;
	}
	
	.shopImages ul li:nth-child(odd){
		margin-right: 2%;
	}
	
	.shopInfo table tr th, .shopInfo table tr td{
		display: block;
		width: 100%;
	}
	
	.shopVideo iframe{
		height: 255px;
	}
	.access iframe{
		height: 255px;
	}
	
	.shopInfo table tr:last-child td{
		border-bottom: none;
	}
}