@charset "UTF-8";
/*
	Name: Kiroku - Satoyama Ju-Jo
	Author: Takumi Matsuyama
 */


.concept .feature .wrap {
	margin-top: 14.4rem;
}

.concept .feature .wrap .text_wrap {
	padding-top: 0;
	width: 37vw;
}

.concept .feature .wrap .text_wrap .sentence_wrap {
	padding-right: 3.5rem;
}

.concept .feature .wrap img {
	width: 42vw;
	height: fit-content;
}

@media only screen and (max-width: 796px) {
	.concept .feature .wrap {
		margin-top: 6rem;
	}

	.concept .feature .wrap .text_wrap {
		margin-top: 6rem;
		width: 80%;
		
	}

	.concept .feature .wrap .text_wrap .sentence_wrap {
		padding: 0;
	}

	.concept .feature .wrap img {
		margin: auto;
		width: 80%;
		height: auto;
		order: -1;
	}
}

.room_index .mv ul {
	li {
		width: calc(100% / 3);
		a {
			position: relative;
			display: block;
			height: 44vw;
			img {
				height: 100%;
				object-fit: cover;
			}
			.title {
				position: absolute;
				left: 4rem;
				bottom:  4rem;
				.name {
					font-size: 1.2rem;
				}
				.type_name {
					display: block;
					margin-top: 0.4rem;
					font-size: 3.5rem;
				}
			}
		}
	}
}

.room_index .introduction .title_wrap {
	width: 35vw;
}

.room_index .introduction .sentence_wrap {
	margin-top: 6rem;
}

.room_index .introduction .sentence_wrap .caution {
	font-size: 1.3rem;
}

.room_index .introduction .parallax_img {
	width: 42vw;
	height: 63vw;
}

.room {
	padding-bottom: 15rem;
}

.room .room_type {
	position: relative;
	&:after {
		content:  '';
		position: absolute;
		right: 0;
		bottom: 0;
		display: block;
		width: calc(100% - 7.3vw);
		height: 1px;
		background-color: rgba(0, 0, 0, 0.15);
		z-index: 1;
	}
}

.room .under_layer_header {
	padding-top: 15rem;
}

.room .swiper_wrap {
	padding-bottom: 16rem;
}

.room .swiper_wrap .swiper-slide {
	overflow: initial;
}

.room .swiper_wrap .swiper-pagination {
	bottom: initial;
}

.room .floor .drawing_wrap .floor_map_wrap .floor_num {
	width: 3rem;
}

.room .floor .drawing_wrap .floor_map_wrap .floor_img {
	display: block;
	margin: 4.2rem auto 0;
}

.room .floor .drawing_wrap .floor_map_wrap .sentence {
	margin-top: 6rem;
	font-size: 1.3rem;
}

.room .floor .drawing_wrap .first_floor {
	width: 100%;
	border-right: none;
}

.room .floor .drawing_wrap .secend_floor {
	margin-top: 6rem;
	padding-top: 6rem;
	border-top: 1px solid rgba(0, 0, 0, 0.15);
	width: 100%;
}

.room .floor .drawing_wrap .first_floor .villa_1f {
	width: 100%;
}

.room .floor .drawing_wrap .secend_floor .villa_2f {
	width: 24vw;
}

.room .floor .drawing_wrap .first_floor .kura_img,
.room .floor .drawing_wrap .secend_floor .kura_img {
	width: 43vw;
}

@media only screen and (max-width: 796px) {
	.room_index .mv ul {
		flex-wrap: wrap;
		li {
			width: calc(100%);
			a {
				height: 70vw;
				img {
				}
				.title {
					left: 2.4rem;
					bottom: 2.4rem;
					.name {
						font-size: 1.2rem;
					}
					.type_name {
						font-size: 3rem;
					}
				}
			}
		}
	}

	.room_index .introduction .title_wrap {
		width: 100%;
	}

	.room_index .introduction .sentence_wrap {
		margin-top: 3.5rem;
		padding-left: 0;
	}

	.room_index .introduction .sentence_wrap .caution {
		font-size: 1.1rem;
	}

	.room_index .introduction .parallax_img {
		margin-top: 4.8rem;
		width: 100%;
		height: 120vw;
	}

	.room .under_layer_header {
		padding-top: 8rem;
	}

	.room .floor .inner_wrap {
		width: 100%;
		overflow: hidden;
	}

	.room .floor .text_wrap {
		margin: auto;
		width: 80%;
	}

	.room .floor .drawing_wrap {
		margin-bottom: 6rem;
	}

	.room .floor .drawing_wrap .floor_map_wrap .floor_num {
		margin-left: 10%;
		width: 3rem;
	}

	/* .room .floor .drawing_wrap .floor_map_wrap .floor_img_wrap {
		overflow-x: scroll;
		scrollbar-width: none;
	}

	.room .floor .drawing_wrap .floor_map_wrap .floor_img_wrap::-webkit-scrollbar {
		display: none;
	} */

	.room .floor .drawing_wrap .floor_map_wrap .floor_img {
		display: block;
		margin: 4.2rem auto 0;
		width: 80%;
/* 		padding: 0 10%; */
	}

	.room .floor .drawing_wrap .floor_map_wrap .sentence {
		margin: 3.5rem 10% 0;
		font-size: 1.1rem;
	}

	.room .floor .drawing_wrap .first_floor {
		border-bottom: none;
	}

	/* .room .floor .drawing_wrap .first_floor .floor_img {
		width: auto;
		height: 60rem;
	} */

	.room .floor .drawing_wrap .secend_floor {
		margin-top: 3.5rem;
		padding-top: 4.8rem;
		width: 100%;
	}

	/* .room .floor .drawing_wrap .secend_floor .floor_img {
		width: auto;
		height: 30rem;
	} */

	.room .floor .spec_list {
		margin: auto;
		width: 80%;
	}

	.room .floor .drawing_wrap .first_floor .villa_1f {
		width: 80%;
	}

	.room .floor .drawing_wrap .secend_floor .villa_2f {
		width: 48vw;
	}

	.room .floor .drawing_wrap .first_floor .kura_img,
	.room .floor .drawing_wrap .secend_floor .kura_img {
		width: 80%;
	}

}


.food {
	padding-bottom: 15rem;
}

.food .introduction_food .wrap {
	width: 48%;
}

.food .kiroku_food {
	position: relative;
	padding-top: 15rem;
	padding-bottom: 15rem;
}

.food .kiroku_food:before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	display: block;
	margin: auto;
	height: 1px;
	background-color: rgba(16, 19, 21, 0.15);
}

.food .dinner:before {
	width: calc(100vw - 7.3vw);
}

.food .breakfast:before {
	left: 0;
	width: calc(100vw - 14.6vw);
}

.food .kiroku_food .title_wrap {
	width: 35vw;
}

.food .kiroku_food .title_wrap h2 {
	margin: 3.5rem 0;
	font-size: 2.5rem;
	line-height: 1.75;
}

.food .kiroku_food .title_wrap b {
	margin-bottom: 0.4rem;
	line-height: 1.5;
}

.food .kiroku_food .title_wrap p {
	margin-bottom: 2.4rem;
	font-size: 1.5rem;
}

.food .kiroku_food .img_wrap {
	width: 42vw;
	height: 63vw;
}

.food .kiroku_food .title_wrap .caution {
	margin-top: 3.5rem;
	font-size: 1.3rem;
}

.food .kitchen .text_inner_wrap .caution {
	margin-top: 3.5rem;
	font-size: 1.3rem;
}

@media only screen and (max-width: 796px) {
	.food {
		padding-bottom: 7rem;
	}

	.food .introduction_food .wrap {
		width: 100%;
	}

	.food .introduction_food .wrap:last-of-type {
		margin-top: 2.4rem;
	}

	.food .kiroku_food {
		padding-top: 7rem;
		padding-right: 4vw;
		padding-bottom: 4.8rem;
	}

	.food .dinner:before {
		width: calc(100vw - 4vw);
	}

	.food .breakfast:before {
		width: calc(100vw - 8vw);
	}

	.food .kiroku_food .title_wrap {
		margin: 4.8rem auto 0;
		width: calc(100vw - 16vw);
	}

	.food .kiroku_food .title_wrap h2 {
		margin: 1.6rem 0 2.4rem;
		font-size: 2rem;
	}

	.food .kiroku_food .title_wrap p {
		margin-bottom: 1.6rem;
		font-size: 1.3rem;
	}

	.food .kiroku_food .img_wrap {
		margin: auto;
		width: calc(100vw - 16vw);
		height: 120vw;
		order: -1;
	}

	.food .kiroku_food .title_wrap .caution {
		margin-top: 3.5rem;
		font-size: 1.3rem;
	}

	.food .kitchen .text_inner_wrap .caution {
		margin-top: 1.6rem;
		font-size: 1.1rem;
	}
}

.art_design .introduction .sentence_wrap .sentence {
	display: -webkit-box;
	-webkit-line-clamp: 10;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.art_design .introduction .sentence_wrap.open .sentence {
	display: block;
	-webkit-line-clamp: initial;
	overflow: initial;
}

.art_design .introduction .sentence_wrap .more_button {
	position: relative;
	display: inline-block;
	margin-top: 0.4rem;
	padding-left: 2rem;
	line-height: 1;
}

.art_design .introduction .sentence_wrap .more_button:before {
	content: '▼';
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	display: block;
	margin: auto;
	font-size: 1.3rem;
	line-height: 1.6rem;
}

.art_design .introduction .sentence_wrap.open .more_button {
	display: none;
}

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

	.art_design .introduction .sentence_wrap .more_button {
		padding-left: 1.6rem;
	}

	.art_design .introduction .sentence_wrap .more_button:before {
		font-size: 1rem;
		line-height: 1.5rem;
	}
	
}


.spa .facility .inner_wrap:first-of-type {
	margin-bottom: 10rem;
}

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

	.spa .mv {
		padding-left: 4vw;
		height: 138vw;
	}

	.spa .mv img {
/* 		width: auto; */
		height: 120%;
		object-fit: cover;
	}

	.spa .facility .inner_wrap:first-of-type {
		margin-bottom: 6rem;
	}
	
}

.access .introduction h2 {
	margin-bottom: 3.5rem;
}

.access .introduction .caution {
	font-size: 1.3rem;
}

@media only screen and (max-width: 796px) {
	.access .introduction .caution {
		font-size: 1.1rem;
	}

	.access .route .access_route_wrap:first-of-type .access_wrap .access_route li:nth-of-type(even) {
		height: calc((35vw * 4 + 24vw + 2px) / 3);
	}

	.access .route .access_route_wrap:first-of-type .access_wrap .access_route li:nth-of-type(even) .arrow {
		width: calc((35vw * 4 + 24vw + 2px) / 3.5);
	}

	.access .route .access_route_wrap:first-of-type .access_wrap .access_route li:nth-of-type(4) span.block span.block {
		margin-left: -1rem;
		margin-right: 0.4rem;
	}

}

