@charset "utf-8";

.stayhome {
	margin: 40px auto 0;
	padding: 0 15px;
}
.stayhome img {
	max-width: 640px;
	margin: 0 auto;
	padding: 5px;
	border: 1px solid #ccc;
}
.mainImg {
}
.shopLinkBG {
	padding: 30px 10px 50px;
	background-image: url(../images/JluHaJYYuXiW.png), url(../images/6tk4vkl3LODs.png), url(../images/qfOTJcc5ma3f.png), url(../images/HzKHGmAIboKO.png), url(../images/scaneiWucdXK.jpg);
	background-size: 160px auto, 160px auto, 160px auto, 100px auto, cover;
	background-position: left 20px, right 20px, right bottom, 40px bottom, center bottom;
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat, no-repeat;
}
.catchphrase {
	margin: 0 10px 30px;
	text-align: center;
	font-family: "hannari" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
	font-size: 1.25em;
	line-height: 1.6;
}
.catchphrase span {
	display: block;
	font-size: 1.75em;
}
.shopLink {
	max-width: 960px;
	margin: 0 auto;
}
.shopLink4,
.shopLink3 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 30px;
}
.shopLink4 li {
	width: 24%;
}
.shopLink3 {
	max-width: 680px;
	margin: 0 auto;
}
.shopLink3 li {
	width: 25%;
	display: flex;
    align-items: center;
}
.shopLink4 li a,
.shopLink3 li a {
	display: block;
}
.shopLink4 li a:hover,
.shopLink3 li a:hover {
	opacity: 0.7;
}

.seasonTopicsBG {
	padding: 40px 10px 60px;
}
.seasonTopics {
	max-width: 960px;
	margin: 0 auto;
}
.ajinoaji {
	max-width: 960px;
	margin: 30px auto 0;
	padding: 20px;
	border: 3px solid #5c5133;
	text-align: center;
	background: #f3f3f1;
}
.ajinoaji .img {
	max-width: 400px;
	margin: 0 auto 20px;
}
.season-news {
	max-width: 960px;
	margin: 30px auto 0;
	padding: 20px;
	border: 3px solid #5c5133;
	background: #f3f3f1;
}
.season-news .img {
	max-width: 540px;
	margin: 0 auto 20px;
}
.saitama-criterium {
	max-width: 960px;
	margin: 30px auto 0;
	padding: 20px;
	border: 3px solid #0c0c0c;
	background: #feffb8;
}
.saitama-criterium p {font-size: 0.94em;}
.seasonTopics .ttl {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 20px;
	background-image: url(../images/P9KLzonNXVg9.png);
	background-repeat: no-repeat;
	background-size: auto 120px;
	background-position: center center;
	height: 120px;
}
.seasonTopics .ttl {
	text-align: center;
	font-size: 0.94em;
}
.seasonTopics .ttl span {
	display: block;
	font-family: 'Playfair Display', serif;
	font-size: 2.5em;
	color: #5c5133;
	margin-bottom: 10px;
}
.seasonTopics > p {
	line-height: 2;
	font-size: 0.94em;
}

.shopInfoBG {
	padding: 40px 10px 80px;
	background-image: url(../images/4WxRAO4Nz01x.jpg);
	background-size: cover;
	background-position: center center;
}
.shopInfo {
	max-width: 1120px;
	margin: 0 auto;
}
.shopInfo > .ttl {
	font-size: 0.94em;
	text-shadow: 0 0 5px rgba(255,255,255,1);
	text-align: center;
	margin-bottom: 30px;
}
.shopInfo > .ttl span {
	display: block;
	font-family: 'Playfair Display', serif;
	font-size: 2.5em;
	color: #5c5133;
	margin-bottom: 10px;
}
.shopInfo .event {
	margin: 0 -10px;
}
.shopInfo .event img {
	border-radius: 4px;
	margin-bottom: 5px;
}
.shopInfo .event .icon {
	display: inline-block;
	font-size: 0.7em;
	color: #fff;
	margin-bottom: 8px;
	padding: 4px 6px;
	border-radius: 4px;
	line-height: 1;
}
.shopInfo .event .aL { background: #B60005; }
.shopInfo .event .iL { background: #009246; }
.shopInfo .event .sT { background: #A04F14; }
.shopInfo .event .oK { background: #EB6161; }
.shopInfo .event .wD { background: #ba9137; }
.shopInfo .event .gK { background: #666; }
.shopInfo .event .vL { background: #5D5036; }
.shopInfo .event .date {
	font-size: 0.8em;
	margin-bottom: 5px;
	line-height: 1;
}
.shopInfo .event {
	margin-bottom: 20px;
}
.shopInfo .event .ttl {
	font-size: 0.94em;
	font-weight: bold;
}
.shopInfo .event li a {
	display: block;
	color: #333;
}
.shopInfo .event li a:hover {
	text-decoration: none;
	opacity: 0.8;
	color: #5c5133;
}
.shopInfo .otherInfo {
	text-align: center;
	font-size: 0.8em;
}

.reserveBtn {
	margin-top: -50px;
	padding: 0 10px;
}
.reserveBtn nav {
	max-width: 960px;
	margin: 0 auto;
}
.reserveBtn nav ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.reserveBtn nav ul li {
	width: 33%;
	background: #fff;
}
.reserveBtn nav ul li a {
	display: block;
}
.reserveBtn nav ul li a:hover {
	opacity: 0.9;
}

.snsBG {
	padding: 50px 10px 30px;
}
.sns {
	max-width: 1120px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.sns > div {
	width: 48%;
}
.sns .logo {
	margin-bottom: 20px;
}
.sns .logo img {
	width: 60px;
	margin: 0 auto 5px;
}
.sns .logo p {
	font-size: 0.88em;
	font-weight: bold;
	color: #999;
	text-align: center;
}
.sns .instagram #instafeed {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.sns .instagram #instafeed li {
	width: 23.5%;
	margin-right: 2%;
	margin-bottom: 15px;
	position: relative;
}
.sns .instagram #instafeed li:nth-child(4n) { margin-right: 0; }
.sns .instagram #instafeed li a {
	display: block;
}
.sns .instagram #instafeed li img {
	border-radius: 4px;
}
.sns .instagram #instafeed li a .mask {
	display: none;
}
.sns .instagram #instafeed li a:hover .mask {
	display: block;
	background: rgba(0,0,0,0.5);
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	border-radius: 4px;
}
.sns .instagram #instafeed li a:hover .likes {
	position: absolute;
	top: 50%;
	left: 50%;
	color: #fff;
	-ms-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}
.sns .instaPage ul,
.sns .fbPage ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	max-width: 445px;
	margin: 0 auto;
}
.sns .instaPage ul li,
.sns .fbPage ul li {
	width: 23.5%;
	margin-right: 2%;
	margin-bottom: 20px;
}
.sns .instaPage ul li:nth-child(4n),
.sns .instaPage ul li:last-child,
.sns .fbPage ul li:nth-child(4n),
.sns .fbPage ul li:last-child { margin-right: 0; }
.sns .fbPage ul li a {
	display: block;
	color: #5c5133;
}
.sns .instaPage ul li a:hover,
.sns .fbPage ul li a:hover {
	text-decoration: none;
	opacity: 0.8;
}
.sns .instaPage ul li img,
.sns .fbPage ul li img {
	border-radius: 4px;
}
.sns .instaPage ul li p,
.sns .fbPage ul li p {
	text-align: center;
	font-size: 10px;
	margin-top: 5px;
}

.wedding {
	padding: 50px 10px;
	background-image: url(../images/cW7ebHA0952X.jpg);
	background-size: cover;
	background-position: center top;
}
.wedding ul {
	max-width: 300px;
	margin: 0 auto;
}
.wedding ul li:nth-child(1) img {
	max-width: 200px;
	margin: 0 auto 15px;
}
.wedding ul li:nth-child(2) {
	background-color: rgba(255,255,255,1);
}
.wedding ul li:nth-child(2) a {
	display: block;
	border: 1px solid #ccc;
	padding: 10px;
	background-image: url(../images/FbvV6i7CLAzQ.svg);
	background-size: 10px auto;
	background-position: 97% center;
	background-repeat: no-repeat;
	background-color: rgba(255,255,255,1);
	font-size: 0.88em;
}
.wedding ul li:nth-child(2) a:hover {
	background-color: rgba(255,225,240,0.3);
	text-decoration: none;
}

.rootsBG {
	padding: 40px 10px;
	background-image: url(../images/pTxgonu586hJ.jpg);
	background-size: cover;
	background-position: center center;
}
.roots {
	max-width: 960px;
	margin: 0 auto;
}
.roots .ttl {
	font-size: 3.25em;
	font-family: 'Marck Script', cursive;
	margin-bottom: 20px;
	text-align: center;
	color: #fff;
}
.roots .txt {
	padding: 20px;
	background: rgba(0,0,0,0.3);
}
.roots p {
	color: #fff;
	line-height: 2;
	margin-bottom: 20px;
	font-family: "hannari" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
}

.messageBG {
	padding: 60px 10px;
	background-image: url(../images/TFbxRnqJpWiK.png), url(../images/UTwttPi14hPc.png), url(../images/scaneiWucdXK.jpg);
	background-size: 90px auto, 70px auto, cover;
	background-position: 95% bottom, 5% 98%, center bottom;
	background-repeat: no-repeat, no-repeat, no-repeat;
}
.message {
	max-width: 960px;
	margin: 0 auto;
	padding: 40px 20px 60px;
	background-image: url(../images/P6PiYc1N6Wuj.png), url(../images/PWxxrgVw8tYZ.png);
	background-size: 70px auto, 120px auto;
	background-repeat: no-repeat, no-repeat;
	background-position: 2% 15%, 98% 95%;
	background-color: rgba(255,255,255,1);
	box-shadow: 0 0 10px rgba(0,0,0,0.3);
}
.message .ttl {
	margin-bottom: 10px;
}
.message .ttl {
	text-align: center;
	font-size: 0.94em;
}
.message .ttl span {
	display: block;
	font-family: 'Playfair Display', serif;
	font-size: 2.5em;
	color: #5c5133;
	margin-bottom: 10px;
}
.message .messageTxt {
	max-width: 700px;
	margin: 0 auto;
}
.message .messageTxt p {
	background: url(../images/I2UYKgxiwXwb.svg) rgba(255,255,255,0.6);
	background-size: 10px 40px;
	text-align: center;
	line-height: 40px;
}
.message .messageTxt p span {
	display: block;
}

/* ---------------------------------------------
	768px
--------------------------------------------- */
@media only screen and (max-width: 768px) {

	.shopLinkBG {
		padding: 20px 10px 40px;
		background-size: 140px auto, 140px auto, 140px auto, 80px auto, cover;
	}
	.catchphrase {
		font-size: 1.12em;
	}
	.catchphrase span {
		font-size: 1.5em;
	}

	.seasonTopicsBG {
		padding: 30px 10px;
	}
	.seasonTopics .ttl {
		margin-bottom: 10px;
		background-size: auto 100px;
		height: 100px;
	}
	.seasonTopics .ttl {
		font-size: 0.88em;
	}
	.seasonTopics .ttl span {
		font-size: 2em;
	}

	.shopInfoBG {
		padding: 30px 10px 30px;
	}
	.shopInfo > .ttl {
		font-size: 0.88em;
	}
	.shopInfo > .ttl span {
		font-size: 2em;
	}

	.reserveBtn {
		margin-top: 20px;
	}

	.sns .logo img {
		width: 40px;
	}
	.sns .instaPage ul li p,
	.sns .fbPage ul li p {
		font-size: 10px;
	}

	.wedding ul li:nth-child(1) img {
		max-width: 140px;
	}

	.roots .ttl {
		font-size: 2.5em;
	}
	.roots .txt {
		padding: 15px;
	}
	.roots p {
		font-size: 0.94em;
		line-height: 1.6;
		margin-bottom: 15px;
	}

	.messageBG {
		padding: 40px 10px;
		background-image: url(../images/scaneiWucdXK.jpg);
		background-size: cover;
		background-position: center bottom;
		background-repeat: no-repeat;
	}
	.message .ttl {
		font-size: 0.88em;
	}
	.message .ttl span {
		font-size: 2em;
	}
	.message .messageTxt p {
		font-size: 0.94em;
	}

}

/* ---------------------------------------------
	640px
--------------------------------------------- */
@media only screen and (max-width: 640px) {

	.shopLinkBG {
		padding: 20px 10px 40px;
		background-size: 120px auto, 120px auto, 120px auto, 60px auto, cover;
	}
	.catchphrase {
		font-size: 1em;
		margin-bottom: 20px;
	}
	.catchphrase span {
		font-size: 1.375em;
	}
	.shopLink4 {
		max-width: 400px;
		margin: 0 auto;
	}
	.shopLink4 li {
		width: 48%;
		margin-bottom: 20px;
	}

	.seasonTopics > p {
		line-height: 2;
		font-size: 0.88em;
	}

	.snsBG {
		padding: 30px 10px 20px;
	}
	.sns {
		justify-content: center;
	}
	.sns > div {
		width: 100%;
		max-width: 400px;
	}
	.sns .instagram {
		margin-bottom: 20px;
	}

	.wedding {
		padding: 40px 10px;
	}

	.roots .ttl {
		font-size: 2em;
	}

	.message .messageTxt p {
		font-size: 0.88em;
	}

}

/* ---------------------------------------------
	480px
--------------------------------------------- */
@media only screen and (max-width: 480px) {

	.shopLink3 {
		max-width: 280px;
	}
	.shopLink3 li {
		width: 50%;
		margin-bottom: 10px;
	}

	.shopInfo .event .ttl {
		font-size: 0.88em;
	}

	.reserveBtn nav ul {
		max-width: 360px;
		margin: 0 auto;
		justify-content: center;
	}
	.reserveBtn nav ul li {
		width: 49%;
		margin-right: 2%;
		margin-bottom: 5px;
	}
	.reserveBtn nav ul li:nth-child(2n),
	.reserveBtn nav ul li:last-child {
		margin-right: 0;
	}

	.wedding {
		padding: 30px 10px;
	}
	.wedding ul li:nth-child(1) img {
		max-width: 100px;
	}
	.wedding ul {
		max-width: 260px;
	}

	.message {
		padding: 30px 20px 60px;
	}

}