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

body {
	background-image: url("images/bg_body.jpg");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 1060px auto;
}

header .inner {
	background-image: url("images/bg_header.png");
	background-repeat: no-repeat;
}

article {
	padding: 85px 0 0;
}


@media screen and (max-width: 767px) {
	body {
		background-image: url("sp-images/bg_body.jpg");
		background-position: center 4%;
		background-size: 100% auto;
	}
	article {
		padding: 5% 0 0;
	}

}

#main {
	text-align: center;
}
#main p {
	display: inline-block;
	width: 250px;
	margin: 0 25px 20px;
	font-size: 14px;
	line-height: 200%;
	text-align: left;
	vertical-align: bottom;
}
#main h2 {
	display: inline-block;
	vertical-align: top;
}
#main h2.sp {
	display: none;
}
#main .images {
	position: relative;
	width: 454px;
	margin: 0 auto;
	border-bottom: 1px solid #584C56;
	padding: 78px 0 78px 406px;
	text-align: left;
}
#main .images .main_image02 {
	position: absolute;
	top: -40px;
	left: -55px;
}

@media screen and (max-width: 767px) {
	#main {
		width: 90%;
		margin: 0 auto;
	}
	#main .main_image {
		width: 80%;
	}
	#main h2.sp {
		display: inline-block;
		width: 16%;
	}
	#main h2.pc {
		display: none;
	}
	#main p {
		display: block;
		width: 70%;
		margin: 4% 0 2% auto;
		font-size: 12px;
		line-height: 150%;
	}
	#main .images {
		width: 100%;
		padding: 8% 0 10%;
	}
	#main .images .main_image02 {
		top: -40%;
		left: -3%;
		width: 30%;
	}
}

#navigation {
	width: 860px;
	margin: 0 auto;
	padding: 70px 0;
	text-align: center;
}
#navigation p {
	margin: 20px 0 50px;
	font-size: 15px;
	line-height: 200%;
}
#navigation ul {
	font-size: 0;
}
#navigation li {
	display: inline-block;
	margin: 0 28px 20px 0;
}
#navigation li:nth-of-type(even) {
	margin-right: 0;
}
@media screen and (max-width: 767px) {
	#navigation {
		width: 90%;
		padding: 7% 0;
	}
	#navigation p {
		margin: 4% 0 10%;
		font-size: 12px;
		line-height: 170%;
	}
	#navigation li {
		width: 48%;
		margin: 0px 4% 4% 0;
	}
}

.price {
	width: 860px;
	margin: 0 auto;
	padding: 70px 0;
	border-bottom: 1px solid #584C56;
}
.price h2 {
	margin-bottom: 30px;
	text-align: center;
}
.price .attention {
	margin-bottom: 10px;
}
.price table tr td.border {
	background-color: transparent !important;
	height: 10px;
	padding: 0 !important;
}
.price .lists {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.price .lists table {
	width: 390px;
	margin-bottom: 45px;
}
.price .lists tr:first-of-type {
	color: #FFF;
}
.price .lists tr:first-of-type th {
	background-color: #E95293;
	width: 50%;
	padding: 10px 0;
	text-align: center;
	font-size: 16px;
}
.price .lists tr:first-of-type th:nth-of-type(even) {
	background-color: #EC7AA7;
}
.price .lists tr:first-of-type th span {
	font-size: 13px;
}
.price .lists th.colspan2 {
	padding: 10px 0 0;
	font-size: 16px;
}
.price .lists tr td {
	background-color: #F7C8D6;
	padding: 10px 0;
	font-size: 16px;
	text-align: center;
}
.price .lists tr td:nth-of-type(n+2) {
	background-color: #DCDDDD;
}
.price .lists tr:nth-of-type(even) td {
	background-color: #FBE6EF;
}
.price .lists tr:nth-of-type(even) td:nth-of-type(n+2) {
	background-color: #EFEFEF;
}

.price .btn {
	margin-top: 15px;
	text-align: center;
}
@media screen and (max-width: 767px) {
	.price {
		width: 90%;
		margin: 0 auto;
		padding: 7% 0;
	}
	.price h2 {
		margin-bottom: 3%;
	}
	
	.price .attention {
		width: 90%;
		margin: 0 auto;
		font-size: 10px;
	}
	
	.price .lists table {
		width: 100%;
		margin-bottom: 10%;
	}
	.price .lists tr:first-of-type th {
		font-size: 13px;
		padding: 2% 0;
	}
	.price .lists tr:first-of-type th span {
		font-size: 10px;
	}
	.price table tr td.border {
		height: 5px;
	}
	.price .lists th.colspan2,
	.price .lists tr td {
		padding: 2% 0;
		font-size: 12px;
	}
	
	.price .btn {
		margin: 0 auto;
	}
	
	#treatment.price .lists {
		width: 260px;
		margin: 0 auto;
	}
	#treatment.price .lists table:nth-of-type(2) {
		order: 4;
	}
	#treatment.price .lists table:nth-of-type(3) {
		order: 2;
	}
	#treatment.price .lists table:nth-of-type(4) {
		order: 6;
	}
	#treatment.price .lists table:nth-of-type(5) {
		order: 3;
	}
	
	#treatment.price .btn {
		width: 35%;
	}
}

#dock p {
	margin-bottom: 50px;
	font-size: 15px;
	line-height: 200%;
	text-align: center;
}
#dock table {
	width: 100%;
	font-size: 16px;
	line-height: 120%;
	text-align: center;
}
#dock table th {
	background-color: #E95293;
	padding: 8px 0;
	border-left: 2px solid #FFF;
	color: #FFF;
	text-align: center;
}
#dock table tr:first-of-type th:first-of-type {
	background-color: transparent;
	padding: 0;
	border: none;
	color: #584C56;
	font-size: 13px;
	text-align: left;
	vertical-align: bottom;
}
#dock table tr:first-of-type th:nth-of-type(6) {
	border-bottom: 2px solid #FFF;
}
#dock table tr td {
	background-color: #F7C8D6;
	border-right: 2px solid #FFF;
	padding: 10px 0;
}
#dock table tr:nth-of-type(even) td {
	background-color: #FBE6EF;
}
#dock table tr td:last-of-type {
	background-color: #DCDDDD;
	border: none;
}
#dock table tr:nth-of-type(even) td:last-of-type {
	background-color: #EFEFEF;
}

#dock p.attention {
	margin-bottom: 35px;
	font-size: 13px;
	text-align: right;
}

@media screen and (max-width: 767px) {
	#dock p {
		width: 80%;
		margin: 0 auto 5%;
		font-size: 12px;
		line-height: 180%;
	}
	
	#dock table {
		font-size: 12px;
	}
	#dock table tr:first-of-type th,
	#dock table tr:nth-of-type(2) th {
		width: 10%;
		padding: 0;
		vertical-align: middle;
		  text-align: center;
	}
	#dock table tr:first-of-type th:first-of-type {
		width: auto;
	}
	#dock table tr:first-of-type th:first-of-type span {
		display: none;
	}
	#dock table tr:first-of-type th .ib,
	#dock table tr:nth-of-type(2) th .ib {
		-webkit-writing-mode: vertical-rl;
		-moz-writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
		-ms-writing-mode: vertical-rl;
		writing-mode: vertical-rl;
		height: 60px;
		display: inline-block;
		word-break: break-all;
	}
	#dock table tr:first-of-type th .ib {
		height: 90px;
	}
	#dock table tr:first-of-type th:nth-of-type(5) .ib {
		height: 60px;
	}
	
	#dock table tr td {
		padding: 2% 0;
		font-size: 10px;
	}
	
	#dock p.attention {
		width: 100%;
		margin-bottom: 5%;
		font-size: 10px;
	}
	
	#dock.price .btn {
		width: 70%;
	}
	
}

#trimming table {
	margin-bottom: 25px;
}
#trimming table tr:first-of-type th:nth-of-type(n+2) {
	width: 25%;
}
#trimming table tr:first-of-type th:last-of-type {
	background-color: #F19EBC;
}
#trimming .lists + p {
	margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
	#trimming.price .lists {
		width: 260px;
		margin: 0 auto;
	}
	#trimming.price .lists .right {
		width: 100%;
	}
	
	#trimming.price .lists tr:first-of-type th {
		font-size: 12px;
	}

	#trimming .lists + p {
		width: 75%;
		margin: 0 auto 6%;
		font-size: 12px;
	}
	
	#trimming.price .btn {
		width: 50%;
	}
}

#hotel {
	border-bottom: none;
}
#hotel table {
	margin-bottom: 20px;
}
#hotel .lists + p {
	margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
	#hotel.price .lists {
		width: 260px;
		margin: 0 auto;
	}
	#hotel.price .btn {
		width: 45%;
	}
}
