@charset "Shift_JIS";


/* main_area
---------------------------------------------------- */
.main_area {
	position: relative;
	overflow: hidden;
	top: 0;
	width: 100%;
	height: 100%;
	text-align: center;
}
.main_area h1 {
	position: absolute;
	top:0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	height: 160px;
	z-index: 1;
	font-size: 60px;
	color: #FFF;
	font-weight: normal;
	letter-spacing: 0.02em;
	font-family: 'gildadisplay';
}
.main_area h1 span {
	display: block;
	font-size: 30px;
	margin-top: 60px;
	font-family: 'hannari';
}
.main_area .rate {
	display: none;
	position: absolute;
	right: 10px;
	bottom: 90px;
	margin: 0 auto;
	padding: 5px;
	background-color: rgba(104,67,23,0.7);
	width: 500px;
	max-width: 100%;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	z-index: 100;
}
.main_area .rate:hover {
	opacity: 0.7;
}
.main_area .rate .rate_inn {
	border: 1px solid #e7d5b0;
	padding: 10px;
	text-align: center;
	font-size: 22px;
	font-family: 'hannari';
	line-height: 30px;
	color: #FFF;
}
.main_area .rate .rate_inn span {
	font-size: 14px;
	display: block;
	font-family: 'mrseaves';
	line-height: 20px;
	margin: 10px 0 5px;
}
.main_area .main_img {
	position: relative;
	top: 0;
	width: 100%;
	height: 100%;
}
.main_area .main_img .img_mv {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	transform: scale(1);
	-webkit-transition:	opacity 3s ease, transform 11s linear;
	-moz-transition: opacity 3s ease, transform 11s linear;
	transition: opacity 3s ease, transform 11s linear;
}
.main_area .main_img .img_mv1 {
	background-image: url(../images/index/main01.jpg);
}
.main_area .main_img .img_mv2 {
	background-image: url(../images/index/main02.jpg);
}
.main_area .main_img .img_mv3 {
	background-image: url(../images/index/main03.jpg);
}
.main_area .main_img .img_mv4 {
	background-image: url(../images/index/main04.jpg);
}
.main_area .main_img .img_mv5 {
	background-image: url(../images/index/main05.jpg);
}
.main_area .main_img .img_mv6 {
	background-image: url(../images/index/main06.jpg);
}
.main_area .main_img .img_mv7 {
	background-image: url(../images/index/main07.jpg);
}
.main_area .main_img .img_mv8 {
	background-image: url(../images/index/main08.jpg);
}
.main_area .main_img .img_mv-current {
	opacity:1;
}
.main_area .main_img .img_mv-scale {
	-webkit-transform: scale(1.2);
	-moz-transform: scale(1.2);
	transform: scale(1.2);
}
.scroll_down {
	position: absolute;
	bottom: 24px;
	right: 0;
	left: 0;
	margin: 0 auto;
	z-index: 200;
	text-align: center;
	cursor: pointer;
}
.scroll_down img {
	display: block;
	margin: 0 auto;
	position: relative;
}


/* btn
---------------------------------------------------- */
.btnarea {
	text-align: center;
}
a.btn {
	display: inline-block;
	font-size: 14px;
	text-align: center;
	color: #453128;
	letter-spacing: 0.05em;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	font-family: 'mplus1p';
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
a.btn:hover {
	opacity: 0.7;
}

a.btn_center {
	padding: 10px 56px 0 0;
	background-image: url(../images/common/btn01.png);
	background-position: right bottom 8px;
	background-repeat: no-repeat;
	background-size: 48px auto;
	line-height: 28px;
}
a.btn_center span {
	position: relative;
	padding-left: 20px;
}
a.btn_center span::before {
	position: absolute;
	bottom: 4px;
	left: 0;
	content: "";
	vertical-align: middle;
	box-sizing: border-box;
	width: 6px;
	height: 6px;
	border: 6px solid transparent;
	border-left: 8px solid #472a1d;
}


/* index_pickup
---------------------------------------------------- */
.index_pickup {
	background-color: #f4f4f4;
	padding: 60px 0;
	position: relative;
	border-bottom: 1px solid #c59d72;
}
.index_pickup .pickup_box {
	background-color: #FFF;
	border-top: 1px solid #232807;
	border-left: 1px solid #232807;
	border-right: 1px solid #232807;
	border-collapse:collapse;
	width: 100%;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
.index_pickup .pickup_box th {
	width: 130px;
	background-image: url(../images/index/pickup.jpg);
	text-align: center;
	font-weight: normal;
	color: #FFF;
	padding: 16px 0;
	border-bottom: 1px solid #232807;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
.index_pickup .pickup_box td {
	padding: 16px;
	border-bottom: 1px solid #232807;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
.index_pickup .pickup_box td a {
	text-decoration: underline;
}
.index_pickup .pickup_box td img {
	max-width: 100%;
	height: auto;
}


/* index_resort
---------------------------------------------------- */
.index_resort {
	background-color: #FFFFFF ;
	padding: 60px 0 100px;
	position: relative;
}
.index_resort h2 {
	text-align: center;
	font-size: 36px;
	color: #453128;
	padding: 70px 0 50px;
	margin-bottom: 50px;
	background-image: url(../images/index/mountain.jpg);
	background-position: center top;
	background-repeat: no-repeat;
	letter-spacing: 0.05em;
	position: relative;
	font-weight: normal;
	font-family: 'hannari';
}
.index_resort h2::after {
	position: absolute;
	content: "";
	width: 90px;
	height: 2px;
	background-color: #453128;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 0 auto;
}
.index_resort p {
	text-align: center;
	line-height: 50px;
	margin-bottom: 50px;
}
.index_resort .rate {
	display: block;
	margin: 0 auto;
	padding: 3px;
	background-color: rgba(104,67,23,0.7);
	width: 460px;
	max-width: 100%;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	z-index: 100;
}
.index_resort .rate:hover {
	opacity: 0.7;
}
.index_resort .rate .rate_inn {
	border: 1px solid #e7d5b0;
	padding: 10px;
	text-align: center;
	font-size: 18px;
	font-family: 'hannari';
	line-height: 24px;
	color: #FFF;
}
.index_resort .rate .rate_inn span {
	font-size: 14px;
	display: block;
	font-family: 'mrseaves';
	line-height: 20px;
	margin: 10px 0 5px;
}


/* index_contents
---------------------------------------------------- */
.index_contents {
	position: relative;
}
.index_contents ul li .contents_img {
	background-size: cover;
	z-index: 100;
	overflow: hidden;
	background-position: center center;
}
.index_contents ul li:nth-child(1) .contents_img {
	background-image: url(../images/index/contents01.jpg);
}
.index_contents ul li:nth-child(2) .contents_img {
	background-image: url(../images/index/contents02.jpg);
}
.index_contents ul li:nth-child(3) .contents_img {
	background-image: url(../images/index/contents03.jpg);
}
.index_contents ul li:nth-child(4) .contents_img {
	background-image: url(../images/index/contents04.jpg);
}
.index_contents ul li:nth-child(5) .contents_img {
	background-image: url(../images/index/contents05.jpg);
}
.index_contents ul li .contents_img p {
	color: #FFF;
	text-align: center;
	font-size: 30px;
	padding: 220px 0;
	font-family: 'hannari';
	position: inherit;
    z-index: 1;
}
.index_contents ul li .contents_img p span {
	font-size: 18px;
	display: block;
	position: relative;
	margin-top: 10px;
	padding-top: 30px;
	letter-spacing: 0.1em;
	font-family: 'gildadisplay';
}
.index_contents ul li .contents_img p span::before {
	position: absolute;
	content: "";
	width: 140px;
	height: 1px;
	background-color: #FFF;
	left: 0;
	right: 0;
	bottom: 55px;
	margin: 0 auto;
}
.index_contents ul li .contents {
	margin: 60px auto 120px;
	position: relative;
}
.index_contents ul li .contents h3 {
	font-size: 30px;
	font-weight: normal;
	color: #829853;
	line-height: 28px;
	background-image: url(../images/common/h3.png);
	background-position: left top;
	background-repeat: no-repeat;
	padding: 10px 0 25px 45px;
	position: relative;
	margin-bottom: 30px;
	letter-spacing: 0.1em;
	font-family: 'hannari';
}
.index_contents ul li .contents h3::after {
	position: absolute;
	content: "";
	width: 90px;
	height: 2px;
	background-color: #829853;
	left: 0;
	bottom: 0;
}
.index_contents ul li .contents p {
	line-height: 40px;
}
.index_contents ul li .contents .btn {
	position: absolute;
	line-height: 28px;
	right: 0;
	bottom: 0;
}
.index_contents ul li:nth-child(even) .contents h3 {
	float: right;
}
.index_contents ul li:nth-child(even) .contents h3::after {
	left: inherit;
	right: 0;
}
.index_contents ul li:nth-child(even) .contents p {
	float: right;
	text-align: right;
	width: 100%;
}
.index_contents ul li:nth-child(even) .contents .btn {
	right: inherit;
	left: 0;
}
.parallax-slider {
     top: 0;
     left: 0;
}

.index_contents ul li .contents .btn span::before {
	position: absolute;
	bottom: 4px;
	left: 0;
	content: "";
	vertical-align: middle;
	box-sizing: border-box;
	width: 6px;
	height: 6px;
	border: 6px solid transparent;
	border-left: 8px solid #472a1d;
}
.index_contents ul li:nth-child(odd) .contents .btn {
	padding: 10px 56px 0 0;
	background-image: url(../images/common/btn01.png);
	background-position: right bottom 8px;
	background-repeat: no-repeat;
	background-size: 48px auto;
}
.index_contents ul li:nth-child(odd) .contents .btn span {
	position: relative;
	padding-left: 20px;
}
.index_contents ul li:nth-child(even) .contents .btn {
	padding: 16px 0 0 52px;
	background-image: url(../images/common/btn02.png);
	background-position: left bottom;
	background-repeat: no-repeat;
	background-size: 42px auto;
}
.index_contents ul li:nth-child(even) .contents .btn span {
	position: relative;
	padding-left: 20px;
}


/* index_news
---------------------------------------------------- */
.index_news {
	width: 100%;
	min-width: 1024px;
	padding: 70px 0;
	background-color: #f0f0f0;
}
.index_news .contents {
	position: relative;
}
.index_news h2 {
	text-align: center;
	color: #453128;
	font-size: 34px;
	font-weight: normal;
	padding-bottom: 60px;
	letter-spacing: 0.1em;
    font-family: 'gildadisplay';
}
.index_news h2:first-letter {
    font-size: 1.3em;
}
.index_news .btnarea {
	position: absolute;
	margin: 0;
	top: 0;
	right: 20px;
}
.index_news .btn {
	background-color: #f0f0f0;
	color: #5d4221;
	width: 182px;
	line-height: 28px;
	border: 1px solid #5d4221;
}
.index_news .btn span {
	background-image: none;
	padding: 1px 0 1px 14px;
	position: relative;
}
.index_news .btn span::before {
	position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
    left: 0;
    width: 6px;
    height: 6px;
    border-top: 1px solid #453128;
    border-right: 1px solid #453128;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

/* instagram */
ul#instafeed {
	margin-left: -2%;
}
ul#instafeed li {
	width: 18%;
	float: left;
	margin-left: 2%;
	position: relative;
    height: auto;
    background: #EEE;
}
ul#instafeed li:before {
    content: "";
    display: block;
    padding-top: 100%;
}
ul#instafeed li .inner {
    position: absolute;
    top: 0; 
    left: 0;
    width: 100%;
    height: 100%;
	overflow: hidden;
}
ul#instafeed li img {
    object-fit: cover;
	width: 100%;
    height: 100%;
}
.object-fit-img {
	object-fit: cover;
	font-family: 'object-fit: cover;'
}


/* index_link
---------------------------------------------------- */
.index_link {
	width: 100%;
	min-width: 1024px;
	padding: 70px 0;
}
.index_link h2 {
	text-align: center;
	color: #453128;
	font-size: 34px;
	font-weight: normal;
	margin-bottom: 30px;
    font-family: 'gildadisplay';
}
.index_link h2:first-letter {
    font-size: 1.3em;
}
.index_link ul li {
	width: 280px;
	float: left;
	margin: 20px 30px 0;
}
.index_link ul li img {
	width: 100%;
}


/* mv
---------------------------------------------------- */
.mv {
	margin-top: 80px;
	height: 600px;
	background-image: url(../images/baths/mv.jpg);
	background-position: center center;
	background-size: cover;
}
.mv h1 {
    font-size: 18px;
	color: #FFF;
	font-weight: normal;
    margin-top: 10px;
	padding: 247px 0;
    letter-spacing: 0.1em;
    font-family: 'gildadisplay';
	text-align: center;
}
.mv h1 span {
    font-size: 30px;
    font-family: 'hannari';
    position: inherit;
	padding-bottom: 30px;
    z-index: 1;
	display: block;
	position: relative;
}
.mv h1 span::before {
    position: absolute;
    content: "";
    width: 140px;
    height: 1px;
    background-color: #FFF;
    left: 0;
    right: 0;
    top: 55px;
    margin: 0 auto;
}
.mv.room {
	background-image: url(../images/room/mv.jpg);
}
.mv.private-baths {
	background-image: url(../images/private-baths/mv.jpg);
}
.mv.dining {
	background-image: url(../images/dining/mv.jpg);
}
.mv.jurin {
	background-image: url(../images/dining/jurin/mv.jpg);
}
.mv.cr {
	background-image: url(../images/dining/cr/mv.jpg);
}
.mv.win {
	background-image: url(../images/dining/win/mv.jpg);
}
.mv.sha {
	background-image: url(../images/dining/sha/mv.jpg);
}
.mv.lounge_club {
	background-image: url(../images/dining/lounge_club/mv.jpg);
}
.mv.facilities {
	background-image: url(../images/facilities/mv.jpg);
}
.mv.sports {
	background-image: url(../images/facilities/sports/mv.jpg);
}
.mv.public {
	background-image: url(../images/facilities/public/mv.jpg);
}
.mv.relaxation {
	background-image: url(../images/facilities/relaxation/mv.jpg);
}
.mv.shop {
	background-image: url(../images/facilities/shop/mv.jpg);
}
.mv.access {
	background-image: url(../images/access/mv.jpg);
}
.mv.shuttlebus {
	background-image: url(../images/access/shuttlebus/mv.jpg);
}
.mv.rentacar {
	background-image: url(../images/access/rentacar/mv.jpg);
}
.mv.faq {
	background-image: url(../images/faq/mv.jpg);
}
.mv.faq2 {
	background-image: url(../images/faq/mv2.jpg);
}
.mv.skiinfo {
	background-image: url(../images/skiinfo/mv.jpg);
}
.mv.shuttlebus2 {
	background-image: url(../images/skiinfo/shuttlebus/mv.jpg);
}
.mv.reservation {
	background-image: url(../images/skiinfo/reservation/mv.jpg);
}
.mv.school {
	background-image: url(../images/skiinfo/school/mv.jpg);
}

/* lead
---------------------------------------------------- */
.lead {
	text-align: center;
	line-height: 40px;
	margin-bottom: 40px;
}


/* list
---------------------------------------------------- */
.list {
	margin: 0 0 0 -64px;
}
.list li {
	float: left;
	width: 480px;
	margin: 0 0 50px 64px;
	line-height: 28px;
}
.list li img {
	width: 100%;
	margin: 0 0 10px;
}
.list li.end img {
	margin-top: 58px;
}


.list3 {
	margin: 30px 0 0 -47px;
}
.list3 li {
	float: left;
	width: 310px;
	margin: 0 0 0 47px;
	line-height: 28px;
}
.list3 li img {
	width: 100%;
}


/* link_btn
---------------------------------------------------- */
.sblc a.btn {
	padding: 10px 56px 0 0;
	background-image: url(../images/common/btn01.png);
	background-position: right bottom 8px;
	background-repeat: no-repeat;
	background-size: 48px auto;
	line-height: 28px;
	margin-top: 15px;
}
.sblc a.btn span {
	position: relative;
	padding-left: 20px;
}
.sblc a.btn span::before {
	position: absolute;
	bottom: 4px;
	left: 0;
	content: "";
	vertical-align: middle;
	box-sizing: border-box;
	width: 6px;
	height: 6px;
	border: 6px solid transparent;
	border-left: 8px solid #472a1d;
}


/* anc_link
---------------------------------------------------- */
.anc_link {
	text-align: center;
}
.anc_link ul li {
	display: inline-block;
	width: 160px;
	margin-top: 20px;
	font-size: 12px;
	position: relative;text-align: center;
}
.anc_link ul li img {
	width: 100%;
}
.anc_link ul li::before {
    position: absolute;
    bottom: 50px;
	right: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
	left: 3px;
    width: 8px;
    height: 8px;
    border-top: 3px solid #FFF;
    border-right: 3px solid #FFF;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}

/* ?初?疑似セレクタだけ位置調整 ----------*/
  .anc_link ul li:first-child::before {
	bottom: 40px;
}

.anc_link ul li:first-child {
	position:relative;
	top: 1px;
}

@media screen and (max-width: 740px) {
	.anc_link ul li:first-child {
		top: 0;
	}
}
/* ?初?疑似セレクタだけ位置調整 ここまで ----------*/

/* room
---------------------------------------------------- */
.room_name {
	background-image: url(../images/room/h3.png);
	color: #492010;
}
.room_blc {
	margin: 0 0 0 -5%;
}
.room_blc li {
	float: left;
	width: 45%;
	margin: 0 0 0 5%;
	line-height: 28px;
}
.room_blc li .txt {
	margin: 0 0 15px 0;
}
.room_blc li img {
	width: 100%;
	margin-bottom: 30px;
}
.room_img {
	margin: 0 0 30px -3%;
}
.room_img li {
	float: left;
	width: 30.333333%;
	margin: 0 0 0 3%;
}
.room_img li img {
	width: 100%;
}


/* pdf_btn
---------------------------------------------------- */
a.pdf_btn {
	display: inline-block;
	margin: 0 10px 0;
	font-family: 'mplus1p';
	background-color: #FFF;
	border: 1px solid #5d4514;
	padding: 3px 0;
	width: 200px;
	color: #5d4221;
}
a.pdf_btn span {
	background-image: url(../images/common/pdf.png);
	background-position: left center;
	background-repeat: no-repeat;
	padding: 1px 0 1px 30px;
}
a.pdf_btn:hover {
	opacity: 0.7;
}

/* free_btn
---------------------------------------------------- */
a.free_btn {
	display: inline-block;
	margin: 0 10px 0;
	font-family: 'mplus1p';
	background-color: #5d4221;
	border: 1px solid #5d4514;
	padding: 10px 60px 10px 60px;
	/*width: 200px;*/
	color: #FFF;
	font-size:1.2em;
}
a.free_btn:hover {
	opacity: 0.7;
}


/* table
---------------------------------------------------- */
table.type01 {
	width: 100%;
	margin-bottom: 40px;
	border-collapse: collapse;
	border-top: 1px solid #c39d72;
	line-height: 28px;
	font-family: 'mplus1p';
}
table.type01 tr {
	border-bottom: 1px solid #c39d72;
}
table.type01 th {
	padding: 15px 10px;
	text-align: left;
	color: #96652d;
	width: 130px;/*  110px */
	font-weight: normal;
}
table.type01 td {
	padding: 15px 0;
}
table.type01 td span {
	border-left: 3px solid #c39d72;
	padding-left: 15px;
	display: block;
}

/* type02 */
table.type02 {
	width: 100%;
	border-collapse: collapse;
	border-top: 1px solid #c39d72;
	border-left: 1px solid #c39d72;
	line-height: 24px;
	font-size: 14px;
	font-family: 'mplus1p';
	table-layout: fixed;
}
table.type02 th,
table.type02 td {
	padding: 12px 10px;
	text-align: center;
	font-weight: normal;
	border-right: 1px solid #c39d72;
	border-bottom: 1px solid #c39d72;
}
table.type02 th {
	background-color: #453128;
	color: #FFF;
}
table.type02 td {
	background-color: #FFF;
}
table.type02 tr td:first-child {
	background-color: #d2ae86;
	color: #FFF;
}

/* type03 */
table.type03 {
	width: 100%;
	border-collapse: collapse;
	border-top: 1px solid #c39d72;
	border-left: 1px solid #c39d72;
	line-height: 28px;
	font-family: 'mplus1p';
	table-layout: fixed;
}
table.type03 th,
table.type03 td {
	padding: 15px 10px;
	text-align: center;
	font-weight: normal;
	border-right: 1px solid #c39d72;
	border-bottom: 1px solid #c39d72;
}
table.type03 th {
	background-color: #d2ae86;
	color: #FFF;
}
table.type03 td {
	background-color: #FFF;
}

/* type04 */
table.type04 {
	width: 100%;
	border-collapse: collapse;
	border-top: 1px solid #FFF;
	border-left: 1px solid #FFF;
	line-height: 28px;
	font-family: 'mplus1p';
	table-layout: fixed;
}
table.type04 th,
table.type04 td {
	padding: 15px 10px;
	text-align: center;
	font-weight: normal;
	border-right: 1px solid #FFF;
	border-bottom: 1px solid #FFF;
}
table.type04 th {
	background-color: #4E95CE;
	color: #FFF;
}
table.type04 th.line {
	width: 15%;
}
table.type04 th.line2 {
	width: 30%;
}
table.type04 td {
	background-color: #bdd7ee;
}
table.type04 td.label {
	background-color: #e8e8e8;
}

.img_table table {
	float: left;
	width: 560px;
}
.img_table img {
	float: right;
}

/* price_table */
table.price_table {
	width: 100%;
	margin-bottom: 40px;
	border-collapse: collapse;
	line-height: 28px;
	font-family: 'mplus1p';
}
table.price_table tr {
	border-bottom: 1px solid #c39d72;
}
table.price_table tr:last-child {
	border-bottom: none;
}
table.price_table tr td {
	text-align: center;
	border-left: 1px solid #c39d72;
}
table.price_table tr th {
	text-align: center;
	font-weight: normal;
	color: #6d502f;
}


/* att
---------------------------------------------------- */
.att {
	padding-left: 1em;
    text-indent: -1em;
	font-family: 'mplus1p';
}


/* facilities
---------------------------------------------------- */
.facilities li {
	margin-bottom: 50px;
}
.facilities li:last-child {
	margin-bottom: 0;
}
.facilities li img {
	width: 600px;
}
.facilities li:nth-child(odd) img {
	float: left;
}
.facilities li:nth-child(even) img {
	float: right;
}
.facilities li .inner {
	width: 370px;
	margin-top: 30px;
}
.facilities li:nth-child(odd) .inner {
	float: right;
}
.facilities li:nth-child(even) .inner {
	float: left;
}
.facilities li .inner a.btn {
	padding: 10px 56px 0 0;
	background-image: url(../images/common/btn01.png);
	background-position: right bottom 8px;
	background-repeat: no-repeat;
	background-size: 48px auto;
	line-height: 28px;
	margin-top: 15px;
	float: right;
}
.facilities li .inner a.btn span {
	position: relative;
	padding-left: 20px;
}
.facilities li .inner a.btn span::before {
	position: absolute;
	bottom: 4px;
	left: 0;
	content: "";
	vertical-align: middle;
	box-sizing: border-box;
	width: 6px;
	height: 6px;
	border: 6px solid transparent;
	border-left: 8px solid #472a1d;
}

/* price_txt */
.price_txt {
	font-family: 'mplus1p';
	margin-top: 50px;
}

.sblc .list li a.btn {
    display: table;
	margin: 10px auto 0;
	line-height: 24px;
	background-image: none;
	padding: 10px 0 0;
}
.sblc .list li a.btn span::before {
    bottom: 50%;
	margin-bottom: -5px;
}
.sblc .list li .att {
	padding-left: 0;
    text-indent: 0;
    text-align: center;
	margin-top: 15px;
	font-size: 14px;
}

/* public */
.public_inner .capacity {
	font-weight: bold;
	margin-bottom: 15px;
}
.public_inner table.type01 th {
    width: 200px!important;
}


/* page_nav
---------------------------------------------------- */
.page_nav {
	margin: -60px 0 80px;
}
.page_nav div {
	display: none;
}
.page_nav ul {
	text-align: center;
}
.page_nav ul li {
	display: inline-block;
	margin-right: 30px;
}
.page_nav ul li a {
	padding-bottom: 10px;
	border-bottom: 1px solid #6d502f;
}
.page_nav ul li a:hover {
	border-bottom: 1px solid #c39d72;
}
.page_nav ul li.stay a {
	color: #c39d72;
	border-bottom: 3px solid #c39d72;
}
.page_nav_blc {
	padding: 30px 0 40px;
}
.page_nav_blc .page_nav {
	margin: 0;
	font-family: 'mplus1p';
}


/* dining
---------------------------------------------------- */
.restaurants {
	    margin: 0 0 0 -64px;
}
.restaurants li {
	float: left;
	width: 480px;
    margin: 0 0 50px 64px;
}
.restaurants li a {
	display: block;
	padding: 15px;
	background-color: #f0f0f0;
}
.restaurants li a .restaurants_img {
	float: left;
	width: 180px;
}
.restaurants li a .inner {
	padding: 0 0 10px 200px;
}
.restaurants li a .inner .ttl {
    font-size: 18px;
    font-weight: normal;
    color: #6d502f;
    letter-spacing: 0.1em;
}
.restaurants li a .btn {
    color: #333333;
    line-height: 28px;
    margin: 15px auto 0;
	display: table;
}
.restaurants li a .btn span {
    position: relative;
    padding-left: 20px;
}
.restaurants li a .btn span::before {
    position: absolute;
    bottom: 4px;
    left: 0;
    content: "";
    vertical-align: middle;
    box-sizing: border-box;
    width: 6px;
    height: 6px;
    border: 6px solid transparent;
    border-left: 8px solid #472a1d;
}
.restaurants li a .restaurants_logo {
	height: 50px;
}
.restaurants li a:hover {
	opacity: 0.7;
}

/* dining_fair */
.dining_fair {
	padding: 2px 0;
	border-top: 2px solid #97624d;
	border-bottom: 2px solid #97624d;
}
.dining_fair .blc {
	background-color: #f7f1ee!important;
	border-top: 1px solid #97624d;
	border-bottom: 1px solid #97624d;
}
.dining_fair .ttlh2 {
    color: #492010;
    display: table;
    margin: 0 auto 50px;
    background-image: none;
    padding: 0 50px;
    position: relative;
}
.dining_fair .ttlh2 span {
	margin-left: 30px;
}
.dining_fair .ttlh2::before,
.dining_fair .ttlh2::after {
    position: absolute;
	content: "";
	width: 40px;
	height: 2px;
	top: 58%;
	background-color: #492010;
}
.dining_fair .ttlh2::before {
	left: 0;
}
.dining_fair .ttlh2::after {
	right: 0;
}
.dining_fair .ttl {
	font-size: 22px;
    font-weight: normal;
    color: #97624d;
    display: table;
    margin: 0 auto 30px;
    letter-spacing: 0.1em;
}
.dining_fair .ttl br {
	display: none;
}
.dining_fair .lead {
	margin: 0 auto;
	font-weight: bold;line-height:1.8em;padding-bottom:20px;
}
.dining_fair .lead br {
	/*display: none;*/
}
.dining_fair ul {
	margin: 30px 0 0 -40px;
}
.dining_fair ul li {
	float: left;
    width: 462px;
    margin: 0 0 0 40px;
    line-height: 28px;
}
.dining_fair ul li img {
    width: 100%;
}
.dining_fair ul li p {
	margin-bottom: 30px;
}
.dining_fair ul li p:last-child {
	margin-bottom: 0;
}

/* restaurants_name */
.restaurants_name {
	font-size: 20px;
}
.restaurants_name img {
	margin: 0 20px -18px 0;
    height: 80px;
}
.restaurants_name span {
	font-size: 16px;
	color: #96652d;
	background-color: #FFF;
	border: 1px solid #96652d;
	margin-left: 10px;
	padding: 5px 15px;
}

/* restaurants_list */
.restaurants_list {
	margin: 0 0 0;
}
.restaurants_list li {
	margin: 50px 0 0;
    line-height: 28px;
}
.restaurants_list li .img_blc {
	float: left;
    width: 500px;
}
.restaurants_list li:nth-child(even) .img_blc {
	float: right;
}
.restaurants_list li .img_blc img {
    width: 100%;
}
.restaurants_list li .img_blc2 img {
    width: 238px;
	float: left;
}
.restaurants_list li .img_blc2 img:nth-child(2) {
	margin-left: 24px;
}
.restaurants_list li .inner {
	float: right;
    width: 500px;
}
.restaurants_list li:nth-child(even) .inner {
	float: left;
}
.restaurants_list li .inner table.type01 {
	margin-bottom: 10px;
}
.restaurants_list li .inner table.type01 th {
	width: 130px;
}

/* restaurants_gallery */
.restaurants_gallery {
	margin: 0 0 0 -24px;
}
.restaurants_gallery li {
	float: left;
	width: 238px;
	margin: 24px 0 0 24px;
}
.restaurants_gallery li img {
	width: 100%;
}

/* restaurants_reservation */
.restaurants_reservation .ttl {
	background-color: #472a1d;
	text-align: center;
	color: #FFF;
	font-size: 20px;
	padding: 5px 0 10px;
	font-family: 'hannari';
}
.restaurants_reservation .inner {
	padding: 10px 25px;
	text-align: center;
	background-color: #FFF;
	border-left: 1px solid #472a1d;
	border-right: 1px solid #472a1d;
	border-bottom: 1px solid #472a1d;
}
.restaurants_reservation .inner .tel {
	display: inline-block;
	font-size: 32px;
	margin: 15px 40px 0 0;
}
.restaurants_reservation .inner .tel span {
	font-size: 16px;
}


/* form
---------------------------------------------------- */
.form_att {
	font-size: 20px;
	color: #FF0000;
	margin-bottom: 20px;
}
table.form {
	width: 100%;
    margin: 40px 0;
    border-collapse: collapse;
    border-top: 1px solid #c39d72;
    line-height: 28px;
    font-family: 'mplus1p';
}
table.form th {
	vertical-align: middle;
	padding: 15px 10px;
    text-align: left;
    color: #96652d;
    width: 200px;
    font-weight: normal;
	border-bottom: 1px solid #c39d72;
}
table.form td {
	padding: 15px 10px;
    text-align: left;
	border-bottom: 1px solid #c39d72;
}
table.form td ul li {
	margin-right: 20px;
	display: inline-block;
}
table td input[type=text], table td input[type=email] {
    width: 100%;
    height: 34px;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    padding: 0 10px 0 10px;
    border: #cacaca solid 1px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    margin-top: 0px;
    font-size: 16px;
	display: inline-block;
    font-family: 'notosansjp';
	border-radius: 2px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
}
table td input[type=text].zip {
    width: 150px;
	margin-bottom: 10px;
}
table td select {
    height: 40px;
	padding: 0 0 0 10px;
    border: #cacaca solid 1px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    margin: 0 10px 0 0;
    font-size: 14px;
	display: inline-block;
    font-family: 'notosansjp';
	border-radius: 2px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
}
table td textarea {
    width: 100%;
    height: 200px;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
	display: block;
    padding: 5px 10px 5px 10px;
    border: #cacaca solid 1px;
    font-size: 16px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    font-family: 'notosansjp';
	border-radius: 2px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
}
table td input[type=text].half {
    width: 60px;
	margin: 10px 5px 0
}
table td input[type=text].zip {
    width: 150px;
	margin-bottom: 10px;
}
table td label {
	display: inline-block;
}
input::placeholder {
	color: #a4a4a4;
}
input:-ms-input-placeholder {
	color: #a4a4a4;
}
input::-ms-input-placeholder {
	color: #a4a4a4;
}
.req {
	background-color: #FF0000;
    font-size: 14px;
    font-weight: normal;
    color: #FFF;
    margin: 2px 10px 0 0;
    line-height: 26px;
    padding: 0px 10px 2px;
	border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
}
table .req {
	float: right;
	margin: 0;
}
.formBt {
    display: block;
	margin: 50px auto 0;
	font-size: 16px;
	width: 350px;
	padding: 2px;
	background-color: #453128;
	cursor: pointer;
    border: none;
}
.formBt input {
    display: block;
	padding: 20px 0;
	font-size: 16px;
	width: 350px;
	background-color: #453128;
	color: #FFFFFF;
	cursor: pointer;
    border: 1px solid #FFF;
}
.formBt:hover {
	opacity: 0.7;
}
.form_thank .btn {
	display: table;
	margin:  30px auto 0;
	padding: 10px 56px 0 0;
    background-image: url(../images/common/btn01.png);
    background-position: right bottom 8px;
    background-repeat: no-repeat;
    background-size: 48px auto;
    line-height: 28px;
}
.form_thank .btn span {
    position: relative;
    padding-left: 20px;
}
.form_thank .btn span::before {
    position: absolute;
    bottom: 4px;
    left: 0;
    content: "";
    vertical-align: middle;
    box-sizing: border-box;
    width: 6px;
    height: 6px;
    border: 6px solid transparent;
    border-left: 8px solid #472a1d;
}
.form_thank .tel {
    font-size: 32px;
    margin: 15px 40px 0 0;
}
.form_thank .tel span {
    font-size: 16px;
}
span.tel {
	font-size: 24px;
}

/*radio*/
.radio-input{
	display: none;
}
.radio-parts{
  padding-left: 20px;
  position:relative;
  margin-right: 20px;
  line-height:1;
}
.radio-parts::before{
  content: "";
  display: block;
  position: absolute;
  top: 2px;
  left: 0;
  width: 15px;
  height: 15px;
  border: 1px solid #999;
  background-color: #FFF;
  border-radius: 50%;
}
.radio-input:checked + .radio-parts{
  color: #453128;
}
.radio-input:checked + .radio-parts::after{
  content: "";
  display: block;
  position: absolute;
  top: 5px;
  left: 3px;
  width: 11px;
  height: 11px;
  background: #453128;
  border-radius: 50%;
}


/* rentacar
---------------------------------------------------- */
table.rentacar {
	width: 100%;
	border-right: 1px solid #c39d72;
	border-collapse: collapse;
	line-height: 28px;
	font-size: 14px;
	font-family: 'mplus1p';
}
table.rentacar thead th {
	background: #453128;
	color: #FFF;
	padding: 10px 10px;
	line-height: 24px;
	font-weight: normal;
	border-right: 1px solid #c39d72;
	border-bottom: 1px solid #c39d72;
}
table.rentacar thead th span {
	display: block;
	font-size: 13px;
}
table.rentacar tbody th {
	background: #d2ae86;
	color: #FFF;
	width: 120px;
	padding: 15px 10px;
	border-bottom: 1px solid #c39d72;
	vertical-align: middle;
}
table.rentacar tbody td {
	background: #FFF;
	padding: 10px 10px;
	border-left: 1px solid #c39d72;
	border-bottom: 1px solid #c39d72;
	vertical-align: middle;
	text-align: right;
}
table.rentacar tbody td ul {
	width: 420px;/*600px*/
	margin: 0 auto;
}
table.rentacar tbody td ul li {
	float: left;
	width: 50%;/*33.3333%*/
	display: table;
}
table.rentacar tbody td ul li img {
	float: left;
	width: 90px;
}
table.rentacar tbody td ul li p {
	display: table-cell;
    vertical-align: middle;
    width: 110px;/*102px*/
	font-size: 13px;
    line-height: 20px;
	text-align: left;
}


/* access
---------------------------------------------------- */
.access img {
	width: 100%;
}
.gmap {
	margin-top: 10px;
}


/* fair
---------------------------------------------------- */
.fair {
	padding: 2px 0;
	border-top: 2px solid #97624d;
	border-bottom: 2px solid #97624d;
}
.fair .blc {
	background-color: #f7f1ee!important;
	border-top: 1px solid #97624d;
	border-bottom: 1px solid #97624d;
}
.fair .ttlh2 {
    color: #492010;
    display: table;
    margin: 0 auto 50px;
    background-image: none;
    padding: 0 50px;
    position: relative;
}
.fair .ttlh2::before,
.fair .ttlh2::after {
    position: absolute;
	content: "";
	width: 40px;
	height: 2px;
	top: 58%;
	background-color: #492010;
}
.fair .ttlh2::before {
	left: 0;
}
.fair .ttlh2::after {
	right: 0;
}
.fair .ttlh3 {
	color: #97624d;
	margin-bottom: 10px;
}
.fair .ttlh3::before,
.fair .ttlh3::after {
	display: none;
}


/* faq
---------------------------------------------------- */
.faq_list {
	margin-top: 25px;
}
.faq_list li {
	padding-left: 30px;
	position: relative;
}
.faq_list li::before {
	position: absolute;
	left: 0;
}
.faq_list li:nth-child(1) {
	color: #96652d;
	font-size: 16px;
}
.faq_list li:nth-child(1)::before {
	content: "pD";
}
.faq_list li:nth-child(2)::before {
	content: "`D";
}


/* privacy
---------------------------------------------------- */
.privacy {
	margin-top: 40px;
}
.privacy .name {
	text-align: right;
}


/* sitemap
---------------------------------------------------- */
.sitemap li {
	margin-top: 20px;
}
.sitemap li p {
    display: inline-block;
    font-size: 14px;
    text-align: center;
    color: #453128;
    letter-spacing: 0.05em;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    font-family: 'mplus1p';
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.sitemap li p span {
    position: relative;
    padding-left: 20px;
}
.sitemap li p span::before {
    position: absolute;
    bottom: 4px;
    left: 0;
    content: "";
    vertical-align: middle;
    box-sizing: border-box;
    width: 6px;
    height: 6px;
    border: 6px solid transparent;
    border-left: 8px solid #472a1d;
}
.sitemap li a {
    display: inline-block;
    font-size: 14px;
    text-align: center;
    color: #453128;
    letter-spacing: 0.05em;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    font-family: 'mplus1p';
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.sitemap li a:hover {
	opacity: 0.7;
}
.sitemap li a span {
    position: relative;
    padding-left: 20px;
}
.sitemap li a span::before {
    position: absolute;
    bottom: 4px;
    left: 0;
    content: "";
    vertical-align: middle;
    box-sizing: border-box;
    width: 6px;
    height: 6px;
    border: 6px solid transparent;
    border-left: 8px solid #472a1d;
}
.sitemap_blc {
	width: 50%;
	float: left;
}
.sitemap li ul li {
	margin: 0 0 0 20px;
}
.sitemap li ul li a {
	color: #97624d;
}
.sitemap li ul li a span::before {
	position: absolute;
	bottom: 29px;
	left: 0;
	content: "[";
	vertical-align: inherit;
	box-sizing: border-box;
	width: 0;
	height: 0;
	border: none;
}


/* 404error
---------------------------------------------------- */
.found_btn {
	text-align: center;
	margin-top: 60px;
}
.found_btn a.btn {
	display: inline-block;
	padding: 10px 56px 0 0;
	background-image: url(../images/common/btn01.png);
	background-position: right bottom 8px;
	background-repeat: no-repeat;
	background-size: 48px auto;
	line-height: 28px;
	margin: 0 50px;
}
.found_btn a.btn span {
	position: relative;
	padding-left: 20px;
}
.found_btn a.btn span::before {
	position: absolute;
	bottom: 4px;
	left: 0;
	content: "";
	vertical-align: middle;
	box-sizing: border-box;
	width: 6px;
	height: 6px;
	border: 6px solid transparent;
	border-left: 8px solid #472a1d;
}


/* skiinfo
---------------------------------------------------- */
.skiinfo_h3 {
	font-size: 24px;
    font-weight: normal;
    color: #4E95CE;
	text-align: center;
	letter-spacing: 0.1em;
	position: relative;
	padding-bottom: 15px;
	margin-bottom: 20px;
}
.skiinfo_h3::after {
	position: absolute;
	content: "";
	height: 3px;
	width: 100px;
	background-color: #4E95CE;
	left: 50%;
	bottom: 0;
	margin-left: -50px;
}
table.skiinfo_table th {
	width: 200px;
}

.rental1 {
	margin-bottom: 10px;
}
.rental1 p {
	float: left;
    line-height: 40px;
    width: 240px;
    display: block;
}
.rental1 select {
    width: 530px;
}
ul.rental2 li {
	float: left;
	width: 25%;
	margin: 0!important;
    display: flex !important;
    align-items: center;
    flex-wrap: wrap;
}
ul.rental2 li p {
	float: left;
    line-height: 40px;
    margin-right: 10px;
    display: block;
	text-align: right;
}
ul.rental2 li select {
    width: 82px;
}

table.school_table th {
	width: 470px;
}
.caution {
	font-size: 20px;
	margin-bottom: 20px;
	color: #ff1e00;
}

.school_info {
	margin-bottom: 10px;
}
.school_info p {
	float: left;
    line-height: 40px;
    width: 200px;
    display: block;
}
.school_info p span.req {
	margin: 3px 20px 0 0;
}
.school_info select {
    width: 570px;
}
.school_info input[type=text] {
    width: 570px;
}


@media only screen and (max-width: 740px) {

/* main_area
---------------------------------------------------- */
.main_area .main_copy .copy_mv {
}
.main_area h1 {
	height: 160px;
	font-size: 36px;
	line-height: 40px;
}
.main_area h1 span {
	font-size: 20px;
	margin-top: 10px;
	line-height: 30px;
}
.main_area .rate {
	display: block;
	right: 0;
	bottom: 0;
	padding: 3px;
}
.main_area .rate .rate_inn {
	padding: 5px;
	font-size: 15px;
	line-height: 20px;
	letter-spacing: -0.05em;
}
.main_area .rate .rate_inn span {
	font-size: 12px;
	line-height: 18px;
	margin: 5px 0 0;
	letter-spacing: 0;
}
.scroll_down img {
	width: 60px;
	height: auto;
}


/* btn
---------------------------------------------------- */
.btnarea {
    margin-top: 20px;
}
a.btn {
	display: block;
	margin: 0 auto;
	padding: 10px;
	font-size: 13px;
	background-size: 30px 100%;
}

a.btn_center {
	display: table;
    margin: 20px auto 0;
	background-size: 48px auto;
	padding: 10px 56px 0 0;
}



/* index_pickup
---------------------------------------------------- */
.index_pickup {
	padding: 30px 0;
}
.index_pickup .pickup_box span {
	width: 100%;
	float: none;
	padding: 8px 0;
}
.index_pickup .pickup_box th,
.index_pickup .pickup_box td {
	display: block;
	width: 100%;
	padding: 3px 10px;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
.index_pickup .pickup_box td {
	padding: 6px 10px;
}


/* index_resort
---------------------------------------------------- */
.index_resort {
	padding: 50px 0;
}
.index_resort h2 {
	font-size: 24px;
	line-height: 34px;
	padding: 50px 0 20px;
	margin-bottom: 20px;
	background-size: auto 30px;
}
.index_resort p {
	line-height: 34px;
	margin-bottom: 0;
}
.index_resort .rate {
	display: none;
}


/* index_contents
---------------------------------------------------- */
.index_contents ul li .contents_img p {
    font-size: 22px;
    padding: 60px 0 50px;
}
.index_contents ul li .contents_img p span {
    font-size: 14px;
	padding-top: 10px;
}
.index_contents ul li .contents_img p span::before {
    width: 130px;
	bottom: 40px;
}
.index_contents ul li .contents {
	margin: 20px auto 80px;
}
.index_contents ul li .contents h3 {
	font-size: 20px;
	line-height: 30px;
	padding: 10px 0 15px 35px;
	margin-bottom: 20px;
	letter-spacing: 0.05em;
}
.index_contents ul li .contents p {
	line-height: 30px;
	margin-bottom: 30px;
}
.index_contents ul li .contents .btn {
	position: inherit;
	right: 0;
	bottom: 0;
}
.index_contents ul li .contents .btn span {
	display: inline-block;
}
.index_contents ul li .contents .btn span::before {
    bottom: 8px;
}
.index_contents ul li:nth-child(even) .contents h3 {
	float: none;
}
.index_contents ul li:nth-child(even) .contents h3::after {
	left: 0;
	right: inherit;
}
.index_contents ul li:nth-child(even) .contents p {
	float: none;
	text-align: left;
}
.index_contents ul li:nth-child(even) .contents .btn {
	right: inherit;
	left: 0;
}
.parallax-slider {
     top: 0;
     left: 0;
}
.index_contents ul li:nth-child(odd) .contents .btn {
	display: table;
	margin: 0 auto;
	background-position: right bottom 6px;
}
.index_contents ul li:nth-child(even) .contents .btn {
	display: table;
    margin: 0 auto;
}


/* index_news
---------------------------------------------------- */
.index_news {
	min-width: inherit;
	padding: 40px 0;
}
.index_news h2 {
	font-size: 24px;
	padding-bottom: 0;
	line-height: 34px;
}
.index_news .btnarea {
    position: inherit;
    top: 0;
    right: 0;
	margin: 20px 0 30px;
}
.index_news .btnarea .btn {
    width: 190px;
    padding: 4px 10px;
}

/* instagram */
ul#instafeed {
	margin: -4% 0 0 -4%;
}
ul#instafeed li {
	width: 46%;
	margin: 4% 0 0 4%;
}
ul#instafeed li:nth-child(5) {
	display: none;
}


/* index_link
---------------------------------------------------- */
.index_link {
	min-width: inherit;
	padding: 40px 0;
}
.index_link h2 {
	font-size: 24px;
	margin-bottom: 0;
}
.index_link ul {
	margin-left: 0;
}
.index_link ul li {
	width: 70%;
	float: none;
	margin: 10px auto 0;
}
.index_link ul li img {
	width: 100%;
}


/* mv
---------------------------------------------------- */
.mv {
	margin-top: 40px;
	height: auto;
}
.mv h1 {
    padding: 80px 0;
}
.mv h1 span {
	display: none;
}


/* lead
---------------------------------------------------- */
.lead {
	text-align: left;
	line-height: 32px;
	margin-bottom: 20px;
}


/* list
---------------------------------------------------- */
.list {
	margin: 0 0 0 0;
}
.list li {
	float: none;
	width: 100%;
	margin: 0 0 30px 0;
	line-height: 28px;
}
.list li img {
	margin: 0 0 5px;
}

.list3 {
	margin: 0 0 0 0;
	padding-bottom: 30px;
	background-color: #494949;
}
.list3 li {
	float: none;
	width: 90%;
	margin: 20px auto 0;
}
.list3 li img {
	width: 100%;
}


/* link_btn
---------------------------------------------------- */
.sblc a.btn {
	display: table;
    margin: 20px auto 0;
}


/* anc_link
---------------------------------------------------- */
.anc_link {
	text-align: left;
}
.anc_link ul {
	margin: -3% 0 0 -2%;
}
.anc_link ul li {
	display: block;
	float: left;
	width: 48%;
	margin: 3% 0 0 2%;
	position: relative;
}
.anc_link ul li img {
	width: 100%;
}
.anc_link ul li p {
	display: none;
}
.anc_link ul li::before {
    display: none;
}


/* room
---------------------------------------------------- */
.room_blc {
	margin: 0;
}
.room_blc li {
	float: none;
	width: 100%;
	margin: 0 0 0 0;
}
.room_blc li img {
	margin-bottom: 10px;
}
.room_img {
	margin: 0 0 30px -2%;
}
.room_img li {
	float: left;
	width: 48%;
	margin: 20px 0 0 2%;
}
.room_img li:first-child {
	float: none;
	width: 100%;
}


.private-baths {
	padding-bottom: 0;
}
.private-baths .contents {
	width: 100%;
}
.private-baths .ttlh2,
.private-baths .lead,
.private-baths .list li {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
.private-baths .list li.end {
	width: 100%;
	margin: 60px auto 0;
	background-color: #494949;
}
.private-baths .list li.end img {
	width: 90%;
	display: block;
	margin: 0 auto;
	padding: 30px 0 0;
}



/* pdf_btn
---------------------------------------------------- */
a.pdf_btn {
	margin: 0 auto 20px;
	padding: 8px 0;
}


/* free_btn
---------------------------------------------------- */
a.free_btn {
	margin: 0 auto 20px;
	padding: 15px 15px;
}


/* table
---------------------------------------------------- */
table.type01 {
    margin-bottom: 20px;
	font-size: 14px;
}
table.type01 th {
	padding: 10px;
	width: 80px;
}
table.type01 td {
	padding: 10px 0;
}
table.type01 td span {
	padding-left: 10px;
}

/* type02 */
table.type02 {
	margin-top: 30px;
}
table.type02 th,
table.type02 td {
	padding: 5px 10px;
	font-size: 14px;
}

/* type03 */
table.type03 {
	line-height: 24px;
}
table.type03 th,
table.type03 td {
	padding: 5px 10px;
	font-size: 14px;
}

/* type04 */
table.type04 {
	line-height: 24px;
	margin-top: 10px;
}
table.type04 th,
table.type04 td {
	padding: 5px 0;
	font-size: 14px;
}
table.type04 th.line {
    width: 38px;
}
table.type04 th.line2 {
    width: 18%;
}


table.table_sp {
	font-size: 13px;
	line-height: 24px;
}

.img_table table {
	float: none;
	width: 100%;
}
.img_table img {
	float: none;
	width: 100%;
	margin-bottom: 20px;
}

.att {
    font-size: 14px;
}


/* facilities
---------------------------------------------------- */
.facilities li {
	margin-bottom: 50px;
}
.facilities li img {
	width: 100%;
	margin-bottom: 10px;
}
.facilities li:nth-child(odd) img {
	float: none;
}
.facilities li:nth-child(even) img {
	float: none;
}
.facilities li .inner {
	width: 100%;
	margin: 0 0 20px;
}
.facilities li:nth-child(odd) .inner {
	float: none;
}
.facilities li:nth-child(even) .inner {
	float: none;
}
.facilities li .inner a.btn {
	display: table;
    margin: 20px auto 0;
	float: none;
}
.facilities li .inner a.btn span {
	display: inline-block;
}
.facilities li .inner a.btn span::before {
    bottom: 8px;
}

/* public */
.public_inner table.type01 th {
    width: 160px!important;
}

/* price_txt */
.price_txt {
	margin-top: 20px;
}


/* page_nav
---------------------------------------------------- */
.page_nav {
	text-align: left;
	margin: -10px 0 40px;
}
.page_nav div {
	display: block;
	background-color: #5d4514;
	text-align: center;
	color: #FFF;
	padding: 12px 0;
	position: relative;
}
.page_nav div::after {
	position: absolute;
	right: 10px;
	top: 12px;
	content: "{";
}
.page_nav div.open::after {
	content: "\";
}
.page_nav ul {
	display: none;
}
.page_nav ul li {
	display: block;
	width: 100%;
	margin-top: 0;
	font-size: 14px;
	position: relative;
	text-align: left;
	background-color: #FFF;
}
.page_nav ul li a {
	display: block;
	width: 100%;
	padding: 12px;
	color: #5d4514;
	border-left: 1px solid #5d4514;
	border-right: 1px solid #5d4514;
	border-bottom: 1px solid #5d4514;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
.page_nav ul li.stay a {
	border-bottom: 1px solid #5d4514;
}
.page_nav ul li img {
	display: none;
}
.page_nav ul li::before {
	position: absolute;
	content: "";
    bottom: 0;
	top: 0;
	right: 15px;
    margin: auto 0;
    border-top: 2px solid #5d4514;
    border-right: 2px solid #5d4514;
	width: 6px;
    height: 6px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.page_nav ul li.stay::before {
    border-top: 2px solid #c39d72;
    border-right: 2px solid #c39d72;
}
.page_nav_blc {
	padding: 30px 0;
}


/* dining
---------------------------------------------------- */
.restaurants {
	margin: -10px 0 0;
}
.restaurants li {
	float: none;
	width: 100%;
    margin: 20px 0 0;
}
.restaurants li a {
    padding: 20px;
}
.restaurants li a .restaurants_img {
	width: 100%;
	float: none;
	margin-bottom: 10px;
}
.restaurants li a .restaurants_logo {
    width: auto;
	height: 44px;
	display: block;
	margin: 10px auto;
}
.restaurants li a .inner {
	padding: 0 0 10px 0;
}
.restaurants li a .inner .ttl {
    text-align: center;
}

/* dining_fair */
.dining_fair .ttlh2 {
	text-align: center;
	margin: 0 auto 30px;
}
.dining_fair .ttlh2 span {
	margin-left: 0;
	display: block;
}
.dining_fair .ttl {
	font-size: 18px;
	line-height: 32px;
	text-align: center;
    margin: 0 auto 20px;
}
.dining_fair .ttl br {
	display: block;
}
.dining_fair .lead {
	text-align: center;
	line-height: 28px;
}
.dining_fair .lead br {
	display: block;
}
.dining_fair ul {
	margin: 20px 0 0 0;
}
.dining_fair ul li {
	float: none;
    width: 100%;
    margin: 0 0 0 0;
}
.dining_fair ul li img {
    width: 100%;
	margin-bottom: 15px;
}
.dining_fair ul li p {
	margin-bottom: 15px;
}

/* restaurants_name */
.restaurants_name {
	font-size: 18px;
	text-align: center;
}
.restaurants_name img {
	margin: 0 auto 10px;
	display: block;
	height: 54px;
}
.restaurants_name span {
	font-size: 14px;
}

/* restaurants_list */
.restaurants_list li {
	margin: 40px 0 0;
}
.restaurants_list li .img_blc {
	float: none;
    width: 100%;
}
.restaurants_list li:nth-child(even) .img_blc {
	float: none;
}
.restaurants_list li .img_blc2 img {
    width: 48%;
}
.restaurants_list li .img_blc2 img:nth-child(2) {
	margin-left: 2%;
}
.restaurants_list li .inner {
	float: none;
    width: 100%;
	margin-top: 10px;
}
.restaurants_list li:nth-child(even) .inner {
	float: none;
}
.restaurants_list li .inner table.type01 th {
	width: 100px;
}

/* restaurants_gallery */
.restaurants_gallery {
	margin: 3% 0 0 -2%;
}
.restaurants_gallery li {
	width: 48%;
	margin: 2% 0 0 2%;
}

/* restaurants_reservation */
.restaurants_reservation .ttl {
	font-size: 18px;
	padding: 5px 15px 10px;
}
.restaurants_reservation .inner {
	padding: 10px 15px;
	text-align: left;
}
.restaurants_reservation .inner .tel {
	font-size: 24px;
	margin: 15px 0 0 0;
	line-height: 32px;
	text-align: center;
	width: 100%;
}
.restaurants_reservation .inner .tel span {
	font-size: 14px;
	display: block;
}
.restaurants_reservation .inner a.btn {
    margin: 10px auto 0!important;
}


/* form
---------------------------------------------------- */
.form_att {
	font-size: 18px;
	line-height: 30px;
}
table.form th {
	padding: 10px 0 0;
    width: 100%;
	display: block;
	border-bottom: none;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
table.form td {
	padding: 10px 0;
    width: 100%;
	display: block;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
table.form td ul li {
	margin: 10px 0 0;
	display: block;
}
table td input[type=text].half {
    margin: 0 5px 0;
}
.formBt {
	margin: 30px auto 0;
	width: 80%;
}
.formBt input {
	padding: 15px 0;
	width: 100%;
}
table .req {
	line-height: 24px;
}

.form_thank .tel {
	font-size: 24px;
	margin: 15px 0 0 0;
	line-height: 32px;
	text-align: center;
}
.form_thank .tel span {
	font-size: 14px;
	display: block;
}
span.tel {
    font-size: 22px;
    display: block;
    margin-top: 5px;
}


/* rentacar
---------------------------------------------------- */
table.rentacar {
	margin-top: 10px;
}
table.rentacar thead {
	display: none;
}
table.rentacar tbody th {
	display: block;
	padding: 10px 10px;
	width: 100%;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
table.rentacar tbody th br {
	display: none;
}
table.rentacar tbody td {
	display: block;
	text-align: left;
}
table.rentacar tbody td::before {
	content: attr(label);
	clear: both;
	font-weight: bold;
}
table.rentacar tbody td ul {
	width: 100%;
}
table.rentacar tbody td ul li {
	float: none;
	width: 100%;
}
table.rentacar tbody td ul li img {
	float: left;
	width: 90%;
}
table.rentacar tbody td ul li p {
	width: 68%;
}
table.rentacar tbody td ul li p br {
	display: none;
}


/* access
---------------------------------------------------- */
.gmap {
	position: relative;
	padding-bottom: 70%;
	height: 0;
	overflow: hidden;
}
.gmap p {
	transform: inherit;
}
.gmap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}


/* fair
---------------------------------------------------- */
.fair .ttlh2 {
    margin: 0 auto 30px;
}
.fair .ttlh3 {
	padding-bottom: 0;
}
.fair .list li {
	text-align: center;
}
.fair .list li:last-child {
    margin: 0;
}


/* faq
---------------------------------------------------- */
.faq_list li:nth-child(1) {
	margin-bottom: 5px;
	font-size: 15px;
}


/* sitemap
---------------------------------------------------- */
.sitemap_blc {
	width: 100%;
	float: none;
}
.sitemap li ul li {
	margin-top: 10px;
}
.sitemap li ul li a span::before {
	bottom: 21px;
}


/* 404error
---------------------------------------------------- */
.found_btn {
	margin-top: 30px;
}
.found_btn a.btn {
	display: table;
	margin: 20px auto;
}


/* skiinfo
---------------------------------------------------- */
.skiinfo_h3 {
	font-size: 18px;
}
.skiinfo_h3::after {
	height: 2px;
	width: 60px;
	margin-left: -30px;
}
table.skiinfo_table th {
	width: 80px;
}

.rental1 p {
	float: none;
    width: 100%;
}
.rental1 select {
    width: 100%;
}
ul.rental2 {
	margin: 10px 0 10px;
}
ul.rental2 li {
	float: none;
	width: 100%;
	margin: 10px 0 0!important;
}
ul.rental2 li p {
	float: left;
    margin-right: 0;
	text-align: left;
	width: 110px;
}
ul.rental2 li select {
    width: 100px;
}

table.school_table th,
table.school_table td{
	width: 100%;
	display: block;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
table.school_table th {
	padding: 10px 10px 0;
}
table.school_table td {
	padding: 0 10px 10px;
}
table.school_table td span {
	padding: 0;
	border: none;
}

.caution {
    font-size: 16px;
}
.school_info {
    margin-bottom: 10px!important;
}
.school_info p {
	float: none;
    width: 100%;
}
.school_info p span.req {
	margin: 3px 0 0 0;
}
.school_info select {
    width: 100%;
}
.school_info input[type=text] {
    width: 100%;
}



}


@media only screen and (min-width: 741px) {

.page_nav ul {
	display: block!important;
}

.anc_link {
	padding:0px 80px 0px 80px;
}


}
