@charset "utf-8";

/* float */
#MainContents .hotel .l { float:left; clear:both; }
#MainContents .hotel .r { float:right; }

/* clear */
.clear { clear:both; }

/* clearFix */
.clearfix:after { content: ""; clear: both; display: block;}


/* =================================== */


/* hotel ==== */
#MainContents .hotel {
	background-color: #f4f4f4;
	padding:100px 0;
}
#MainContents .hotel section {
	width: 960px;
	margin: 50px auto 0;
	padding:50px;
	background: #FFF;
}
.hotel div.l,
.hotel div.r { width:470px; }

.hotel div.note {
	margin-top: 50px;
}
@media screen and (max-width:420px) {
	.hotel div.note {
		margin-top: 10px;
	}
}
/* h */
.hotel h2 { font-size:18px; }
.hotel h3 { font-size:18px; margin:1.5em 0 0.8em; }
/* table */
.hotel table { width:470px; }
.hotel th    { font-size:15px; vertical-align:top; white-space:nowrap; padding-right:2em; }
.hotel td, .hotel th { line-height:1.8em; padding-bottom:1.5em; }

/* hotel01 */
.hotel01 {}

/* hotel02 */
.hotel02 {}
.mb { margin-bottom:30px; }

/* hotel_info */
.hotel_info h1 { font-size:18px; line-height:32px; margin-bottom:30px; float:left; }
.hotel_info .prt_btn01 { float:right; }
.hotel_info .clear { font-size:14px; }
/* hotel_map */
.hotel_map    { padding-top:40px; clear:both; }
/* hotel_access */
.hotel_access { padding-top:50px; }


/* activity ==== */
#MainContents .activity { padding:100px 0; }
/* table */
.activity table { width:1060px; margin: 50px auto 0; }
.activity th    { font-size:16px; width:33%; }
.activity td    { font-size:15px; }
.activity td, .activity th { line-height:1.8em; padding:20px 0; text-align:left;  vertical-align:top; border-bottom:1px solid #ededed; }
/* th */
.activity th span {
	display:block;
	width:80px;
	padding:5px 0;
	background:#fff003;
	line-height:1em;
}
.activity .summer th span { background:#fff003; }
.activity .winter th span { background:#03c1ff; }

.activity .winter .prt_btn01.tpy01 > *       { background-color: #03c1ff; color:white; }
.activity .winter .prt_btn01.tpy01 > *:hover { background-color: #fff003; color:black; }

.activity th span img { display:block; margin:0 auto; }
.activity th p strong { line-height:1.5em; padding-top:0.7em; display:block; }
.activity th p img { vertical-align:bottom; float:left; }
/* txt */
.activity td.txt  { margin-top:35px; }
/* btn */
.activity td.btn  { width:15em; padding-bottom:10px; }
.activity td.btn p{ width:100%; margin-bottom:10px; }


/* =================================== */


@media (max-width:420px) {

	#MainContents .hotel01 img,
	#MainContents img.mb,
	#MainContents .hotel_access img,
	#MainContents .activity table img { width:100%; }


	/*----------------*/


	#MainContents table { width:100%; }
	#MainContents th,
	#MainContents td {
		display:block; padding:0; margin:0; width:100%;
	}
	#MainContents th { text-align:left; padding-top:1em; }
	#MainContents td { text-align:justify; }


	/* hotel ==== */
	#MainContents .hotel {
		padding:50px 20px;
	}
	#MainContents .hotel section {
		width: 84%;
		padding:8%;
		margin: 30px 0 0;
	}
	.hotel div.l,
	.hotel div.r { width:100%; }
	.hotel div.googleMap iframe { width:100%; height: 240px; }
	/* h */
	.hotel h3 { margin:1em 0 0; }

	/* hotel02 */
	.r.hotel_info { margin:10px 0 20px; }
	.mb { margin-bottom:1em; }

	/* hotel_info */
	.hotel_info h1 { margin-bottom:10px; float:none; }
	.hotel_info .prt_btn01 { margin:0 0 20px; float:none; }
	/* hotel_map */
	.hotel_map    { padding-top:0; }
	.hotel_map .l { margin-bottom:10px; }
	/* hotel_access */
	.hotel_access { padding-top:50px; }
	#MainContents .hotel_access .r { float:none; }
	#MainContents .hotel_access h2 img { width:40%; margin-right:0.5em; }


	/* activity ==== */
	#MainContents .activity { width:84%; margin:0 auto; padding:50px 0; }
	/* table */
	#MainContents .activity table { margin:0; padding-top:30px; }
	#MainContents .activity th { text-align:left; padding-top:2em; }
	.activity td, .activity th { border-bottom:0; }
	/* th */
	.activity th span {
		width:20%;
		padding:5px 1em;
		margin-bottom:5px;
	}
	#MainContents .activity th p { font-size:18px; padding-bottom:8px; }
	#MainContents .activity th p strong { clear:both; padding-top:0; }
	#MainContents .activity th p img { height:2.5em; width:auto; }
	#MainContents .activity tr:nth-child(5) th p img { height:3.8em; }
	#MainContents .activity tr:nth-child(5) th p br  { display:none; }
	/* btn */
	#MainContents .activity td.btn  { padding:1em 0 2em; border-bottom:1px solid #ededed; }


}


.anchor_wrap {
	margin-top:-180px;
	padding-top:180px;
}
@media screen and (max-width:420px) {
	.anchor_wrap {
		margin-top:-50px;
		padding-top:50px;
	}
}