@charset "utf-8";

#mainbanner{
	padding-bottom: 120px;
}
@media (max-width: 750px) {
	#mainbanner{
		padding-bottom: 45px;
	}
}


/********************************************
top contents
********************************************/
.top__contents{
	padding-bottom: 120px;
}
.top__contents.rev .cep{
	flex-direction: row-reverse;
}
.top__contents__text{
	width: 47.5%;
	text-align: center;
	font-size: 16px;
	left: 0.05em;
	line-height: 1.875;
	letter-spacing: 0.05em;
}
.top__contents__text b{
	font-size: 24px;
    font-weight: 300;
    letter-spacing: 0.05em;
    line-height: 1.25;
    display: block;
    margin-bottom: 25px;
}



.top__contents__image{
	width: 50%;
}
.top__contents__image img{
	width: 100%;
	height: auto;
}

.top__contents .title{
	font-size: 22px;
	letter-spacing: 0.1em;
	margin-bottom: 40px;
}

#top__tea .cep{
	align-items: flex-start;
}
.top__contents__cal{
	width: 47.5%;
	text-align: center;
}

#top__tea.top__contents .title{
	margin-bottom: 10px;
}
#cal iframe{
	width: 100%;
    height: 420px;
}

@media (max-width: 750px) {
	.top__contents{
		padding: 0 5% 150px;
		position: relative;
	}
	.top__contents__text{
		width: 100%;
	}
	.top__contents .title{
		font-size: 18px;
	}
	.top__contents__text p{
		text-align: left;
	}
	.top__contents__text .btn{
		position: absolute;
		bottom: 60px;
		left: 12.65%;
		width: 74.7%;
	}
	#top__tea .top__contents__text .btn{
		position: static;
	}
	.top__contents__image{
		width: 100%;
		margin-top: 50px;
	}

	#top__cafe.top__contents .cep{
		flex-direction:column-reverse;
	}
	#top__cafe.top__contents .top__contents__image{
		margin-top: 0;
		margin-bottom: 40px;
	}

	.top__contents__cal{
		text-align: center;
		margin-top: 57px;
		width: 100%;
	}
}

/********************************************
top insta
********************************************/
.top__insta{
	text-align: center;
	padding-bottom: 120px;
}
.top__insta .icon{
	display: inline-block;
	width: 42px;
	height: 42px;
	background-image: url(../images/icon_insta_wide.png);
	background-size: cover;
	font-size: 0;
	text-indent: -9999px;
	margin-bottom: 25px;
}
.top__insta dl dd{
	padding: 20px 0 35px;
}

@media (max-width: 750px) {
	.top__insta dl dd{
		font-size: 16px;
	}
}
.top__insta__list{
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin: 20px 0;
}

.top__insta__list li{
    position: relative;
    width: calc((100% - 60px)/4);
}

@media screen and (max-width: 750px){
    .top__insta__list li{
        width: calc((100% - 20px)/2);
    }
}

.top__insta__list li::before{
	content: "";
	display: block;
	padding-top: 100%;
}

.top__insta__list a{
	position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.top__insta__list img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
