@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:ital,wght@0,100..900;1,100..900&family=Roboto+Condensed:wght@100..900&display=swap');
.main__index .access {
    margin: 0;
}
.c-header .navbar-toggle {
    top: 30px;
    left: 0;
    &.open-navi{
	    top: 60px;
    }
}
.home{
.c-header .navbar-toggle {
    top: 30px;
    left: 0;
    &.open-navi{
	    top: 30px;
    }
}	
}
.main__index .access .access__body .access__body__inner {
    margin: 0;
}
.main__index .access .access__subheading{
	font-weight: bold;
	margin-bottom: 2px;
	font-size: 125%;
}
.sp-header-link{
	top: auto!important;
	bottom: 10px;
}
.main__index .topics{
	.topics__body{
		display: flex;
		justify-content: space-between;
		@media(max-width:576px){
			margin: 40px 0 25px;
		}
	}
	.group-img{
		overflow: hidden;
		width: 100%;       /* 親の幅は画面や外側に合わせる */
		aspect-ratio: 1/1;
		a{
			display: inline;

		}
		img{
			width: 100%;
			height: 100%;
			object-position: left center;
		}
	}
	.topics__body .topics__body__group{
		max-width: 100%;
		width: 32%;
		.group-text{
		a{
		@media(max-width:576px){
			font-size: .75rem;
            line-height: 1.4;
            display: inline-block;
            text-decoration: none;
		}			
		}

	}
	}

}
.main__topics__single .section__topics__article {
	.article-heading{
		@media(max-width:576px){
			font-size: 1.1rem;
			margin: 0 0 15px;
		}
	}
	.article-body p{
		font-size: .9rem;
	}
	
}
.home{
	.sec-villa{
		background: #fff;
		padding: 100px 0;
		@media(max-width:576px){
			padding: 50px 0;
		}
	}
	.villa-group{
		.list{
			display:flex;
			justify-content: center;
			@media(max-width:576px){
				flex-wrap: wrap;
				}
			.item{
				position: relative;
				text-align: center;
				font-weight: bold;
				width: 50%;
				@media(max-width:576px){
					width: 100%;
				}
				&::before{
					content:"";
					display: block;
					position: absolute;
					width: 100%;
					height: 100%;
					display: block;
					background: rgba(0,0,0,.45);
					pointer-events: none;
				}
				@media(max-width:576px){
				}

				.item-img{
					line-height: 0;
				}
				.item-text{
					text-align: center;
					position: absolute;
					z-index: 2;
					top: 50%;
					  left: 50%;
					  transform: translate(-50%, -50%);
					margin: auto;
					@media(max-width:576px){
						width: 100%;
				}
					.name{
						font-family: "Sawarabi Mincho",serif;
						font-weight: 200;
						font-size: 1.2rem;
						color: #fff;
					}
					.en{
						font-family: "Sawarabi Mincho",serif;
						color: #fff;
						letter-spacing: .1em;
						font-size: .95rem;
						margin: 7px 0 20px 0;
					}
				}
			}
		}
		.c-button.-secondary{
			margin: 10px auto 0;
			
			a{	
				border:1px solid #fff;
				color: #fff;
				max-width: 240px;
				&::before,&::after{
					    content: "";
						border-top: 1px solid #fff;
				}
			}
		}
	}
.main__index .access {
    margin: 0;
}
}
.main__index .lead .lead__heading,
.main__index .block__subheading,
.main__index .block__heading {
    letter-spacing: .1rem;
}
.c-header{
	.navbar-mobile {
	    width: 100%;
	    @media(max-width:576px){
		    overflow-y: scroll;
	    }
	}
	.navbar-mobile .navbar-fullscreen {
	    padding: 50px 0 100px;
	    width: 90%;
	    margin: auto;
	}
	.navbar-content{
		justify-content:flex-start;
		width: 100%;
		@media(max-width:576px){
			display: block;
			padding: 3vh 0 0;
		}
	}
	.navbar-group{
		display: none;
	}
	.navbar-content .navbar-content-inner{
		width: fit-content;
		margin: 0;
	}
	.navbar-content .navbar-content-inner a .en{
		letter-spacing: .2rem;
		font-size: 1.2rem;
	}
	.navbar-content .navbar-content-inner a {
	    margin: 12px 0;
	    display: block;
	    @media(max-width:576px){
		    margin: 10px 0;
	    }
	}
	.navbar-content .navbar-content-inner a small{
		display: none;
	}	
	.villa-group{
		margin-left: 50px;
		@media(max-width:576px){
			margin-left: 0;
		}
		.list{
			display:flex;
			justify-content: center;
			margin: 0;
			.item{
				text-align: center;
				font-weight: bold;
				margin: 0 20px;
				@media(max-width:576px){
					margin: 0 10px;
				}
				.item-text{
					@media(max-width:576px){
						font-size: .9rem;
					}
				}
			}
		}
	}
}
.navbar-fullscreen{
.villa-group{
		.list{
			display:flex;
			justify-content: center;
			@media(max-width:576px){
				flex-wrap: wrap;
				}
			.item{
				position: relative;
				text-align: center;
				font-weight: bold;
				width: 50%;
				@media(max-width:576px){
					width: 100%;
				}
				&::before{
					content:"";
					display: block;
					position: absolute;
					width: 100%;
					height: 100%;
					display: block;
					background: rgba(0,0,0,.45);
					pointer-events: none;
				}
				@media(max-width:576px){
				}

				.item-img{
					line-height: 0;
				}
				.item-text{
					text-align: center;
					position: absolute;
					z-index: 2;
					top: 50%;
					  left: 50%;
					  transform: translate(-50%, -50%);
					margin: auto;
					@media(max-width:576px){
						width: 100%;
				}
					.name{
						
						font-family: "Sawarabi Mincho",serif;
						font-weight: 200;
						font-size: 1.2rem;
						color: #fff;
					}
					.en{
						font-family: "Sawarabi Mincho",serif;
						color: #fff;
						letter-spacing: .1em;
						font-size: .95rem;
						margin: 7px 0 20px 0;
					}
				}
			}
		}
		.c-button.-secondary{
			margin: 10px auto 0;
			a{	
				border:1px solid #fff;
				color: #fff;
				&::before,&::after{
					    content: "";
						border-top: 1px solid #fff;
				}
			}
		}
	}	
}
.sec-villa,
.sec-villa{
	.villa-group{
		.list{
			display:flex;
			justify-content: center;
			margin: 40px 0 0;
			.item{
				text-align: center;
				font-weight: bold;
				margin: 0 20px;
				max-width:400px;
				@media(max-width:576px){
					margin: 0 8px;
				}
				a{
					transition: all .3s;
					&:hover{
						opacity: .8;
					}					
				}
			}
		}
	}	
	.main__index {
    padding: 0;
}
	.main__index .block.sec-villa{
		background: #fff;
	}
	.main__index .contact {
    margin: 100px 0;
    @media(max-width:576px){
	    margin: 50px 0;
    }
}
}

.page-template-_page-rooms-cottage{
	.main__rooms .section__rooms-lead{
		padding: 140px 0;
		@media(max-width:576px){
			padding: 70px 0;
		}
	}
	.rooms-visual{
		margin:0 0 80px;
		.block-01{
			display: flex;
			margin: 0 0 15px;
			@media(max-width:576px){
				display: block;
				margin: 0 0 10px;
					
			}
			.main{
				line-height: 0;
				width: 67.5%;
				padding: 0 15px 0 0;
				@media(max-width:576px){
					width: 100%;
					padding: 0 0 10px 0;
					
				}
			}
			.sub{
				width: 32.5%;
				display: flex;
				flex-direction:column;
				justify-content: space-between;
				@media(max-width:576px){
					width: 100%;
					flex-direction: row;
					
				}
				.img{
					line-height: 0;
					@media(max-width:576px){
						width: 49%;
					}

				}
			}
		}
		.block-02{
			.list{
			display: flex;
			justify-content: space-between;				
			}
			.item{
				width: 49%;
			}
		}
	}
}

.page-template-_page-dining-cottage{
	.main__dining .section__rooms-lead .heading {
	    text-align: center;
	    font-weight: 200;
	    font-family: "Sawarabi Mincho", serif;
	    margin: 90px 0 20px;
	    letter-spacing: .5rem;
	    font-size: 1.3rem;
	    line-height: 2;
	}	
}
.main__rooms .section__rooms-lead {
	@media(max-width:576px){
    padding: 40px 0 70px 0;
    }
}
.breadcrumbs{
	background: #ccc;
	padding: 10px 0;
	font-size: .75rem;
	@media(max-width:576px){
		padding: 6px 0;
		font-size: .7rem;
	}
}