@charset 'UTF-8';

/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

	トップページ

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */



/* ================================================================================

	レイアウト

================================================================================ */

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	#wrapper {
	}

	main.outer_wrap {
		position: relative;
		max-width: none;
		/* max-width: 1920px; 固定幅レイアウト時 */
		width: 100%;
		min-height: 50vh;
		display: block;
		margin: 0 auto;
	}

	.inner_wrap {
		position: relative;
	}
	

		/* ロゴ
	----------------------------------------------- */
	.h_logo {
		position: relative;
		z-index: 1;
	}
	.h_logo a{
		position: absolute;
		top: 22.2vw;
		left: 48.2%;
		transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
		width: 14.2vw;
	}
	.h_logo a img{
		width: 100%;
	}



	.bs_footer{
		margin-top: 72px;
	}
}



/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	#wrapper {
	}

	main.outer_wrap {
		position: relative;
		width: 100%;
	}

	.inner_wrap {
		position: relative;
	}

		/* ロゴ
	----------------------------------------------- */
	.h_logo {
		position: relative;
		z-index: 1;
	}
	.h_logo a{
		position: absolute;
		top: 63.2vw;
		left: 48.2%;
		transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
		width: 46.2vw;
	}
	.h_logo a img{
		width: 100%;
	}


	.bs_footer{
		margin-top: 15vw;
	}
}





/* ================================================================================

	メイン画像

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.main_top {
		position: relative;
	}
	.main_top_in {
		position: relative;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.main_top {
		position: relative;
	}
	.main_top_in {
		position: relative;
	}
}





/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

	ここからコンテンツ内容

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */



/* ================================================================================

	共通設定

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	/* h2見出し
	----------------------------------------------- */
	.h2_title {
		padding: 0 0 12px 0 !important;
	}
	.h2_title h2 {
		position: relative;
		font-size: 81px;
		font-weight: 300;
		line-height: 0.97 !important;
		text-align: center;
		letter-spacing: 0.05em;
	}
	.h2_title h2::before {
		position: absolute;
		content: "";
		background: url(../img/h2_kazari_top.png) no-repeat center top / 100% auto;
		width: 108px;
		height: 50px;
		top: -37px;
		left: 50%;
		transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
	}
	.h2_title h2::after {
		position: absolute;
		content: "";
		background: url(../img/h2_kazari_bottom.png) no-repeat center top / 100% auto;
		width: 153px;
		height: 20px;
		bottom: -53px;
		left: 50.2%;
		transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
	}

	/* リンク
	----------------------------------------------- */
	.top_link_common {
	}
	.top_link_common ul {
		font-size: 0;
		letter-spacing: -0.4em;
		text-align: center;
	}
	.top_link_common ul li {
		display: inline-block;
		font-size: 25px;
		letter-spacing: 0;
	}
	.top_link_common ul li:not(:first-child) {
		margin-left: 80px;
	}
	.top_link_common ul li a {
		position: relative;
		display: block;
		background-color: #f6dc8e;
		color: #42362f;
		letter-spacing: 0.05em;
		text-indent: 0.05em;
		line-height: 1.3;
		padding: 1em 4em 1em;
		border-radius: 100px;
		width: 384px;
	}
	.top_link_common ul li a span{
		background-color: #f6dc8e;
		position: relative;
		z-index: 1;
		padding: 0 22px;
		display: inline-block;
	}
	.top_link_common ul li a::after {
		position: absolute;
		content: "";
		display: block;
		/* background: url(../img/arrow.png) center top / contain no-repeat; */
		background: #42362f;
		width: 308px;
		height: 1px;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	/* h2見出し
	----------------------------------------------- */
	.h2_title {
		padding: 0 0 2vw 0 !important;
	}
	.h2_title h2 {
		position: relative;
		font-size: 15vw;
		font-weight: 200;
		line-height: 1 !important;
		text-align: center;
	}
	.h2_title h2::before {
		position: absolute;
		content: "";
		background: url(../img/h2_kazari_top.png) no-repeat center top / 100% auto;
		width: 17.8vw;
		height: 8.4vw;
		top: -5.6vw;
		left: 50%;
		transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
	}
	.h2_title h2::after {
		position: absolute;
		content: "";
		background: url(../img/h2_kazari_bottom.png) no-repeat center top / 100% auto;
		width: 26vw;
		height: 4vw;
		bottom: -9.6vw;
		left: 50%;
		transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
	}

		/* リンク
	----------------------------------------------- */
	.top_link_common {
	}
	.top_link_common ul {
		text-align: center;
	}
	.top_link_common ul li {
		display: block;
		font-size: 4vw;
	}
	.top_link_common ul li:not(:first-child) {
		margin-top: 5vw;
	}
	.top_link_common ul li a {
		position: relative;
		display: block;
		width: 80vw;
		background-color: #f6dc8e;
		color: #42362f;
		letter-spacing: 0.05em;
		text-indent: 0.05em;
		line-height: 1.3;
		padding: 1.4em 4em 1.4em;
		margin-left: auto;
		margin-right: auto;
		border-radius: 100vw;
	}
	.top_link_common ul li a span{
		background-color: #f6dc8e;
		position: relative;
		z-index: 1;
		padding: 0 22px;
		display: inline-block;
	}
	.top_link_common ul li a::after {
		position: absolute;
		content: "";
		display: block;
		/* background: url(../img/arrow.png) center top / contain no-repeat; */
		background: #42362f;
		width: 58vw;
		height: 1px;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
	}

}





/* ================================================================================

	NEWS

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.row01{
		padding: 44px 0 0;
	}
	.row01_in {
		padding: 37px 0;
		margin-top: 77px;
		background: #ffffff;
		border-radius: 10px;
	}

	/* 新着設定 */
	.row01_in .post_wrap ul{
		font-size: 0;
		text-align: center;
	}
	.row01_in .post_wrap ul li{
		font-size:  18px;
		display: inline-block;
		position: relative;
	}
	/* ナンバー設定 */
	.row01_in .post_wrap ul li:first-of-type::before{
		position: absolute;
		content: "";
		background: url(../img/01.png) no-repeat center top / 100% auto;
		width: 55px;
		height: 48px;
		top: -20px;
		left: -15px;
	}
	.row01_in .post_wrap ul li:nth-of-type(2)::before{
		position: absolute;
		content: "";
		background: url(../img/02.png) no-repeat center top / 100% auto;
		width: 62px;
		height: 48px;
		top: -20px;
		left: -15px;
	}
	.row01_in .post_wrap ul li:nth-of-type(3)::before{
		position: absolute;
		content: "";
		background: url(../img/03.png) no-repeat center top / 100% auto;
		width: 61px;
		height: 48px;
		top: -20px;
		left: -15px;
	}




	.row01_in .post_wrap ul li:nth-of-type(2){
		margin: 0 103px;
	}
	/* 日付 */
	.row01_in .post_wrap .post_date{
		font-weight: 900;
		font-size: 16px;
		text-align: left !important;
		padding-top: 11px;
	}
	/* タイトル */
	.row01_in .post_wrap .post_title{
		text-align: left !important;
		width: 265px;
		padding-top: 5px;
		line-height: 1.3;
	}
	.row01_in .post_wrap .post_title a{
		color: #42362f;
	}
	/* サムネイル */
	.row01_in .post_wrap img{
		width:265px;
		height:265px;
		object-fit: cover;
		font-family: 'object-fit: cover;'; /* IE対策 */
	}

	/* ボタン上パディング */
	.row01_button{
		padding-top: 103px;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.row01{
		padding: 15vw 0 0;
	}
	.row01_in {
		padding: 12vw 0;
		margin-top: 11vw;
		background: #ffffff;
	}

	/* 新着設定 */
	.row01_in .post_wrap ul{
		font-size: 0;
		text-align: center;
	}
	.row01_in .post_wrap ul li{
		position: relative;
		font-size:  4vw;
		display: inline-block;
	}
	/* ナンバー設定 */
	.row01_in .post_wrap ul li:first-of-type::before{
		position: absolute;
		content: "";
		background: url(../img/01.png) no-repeat center top / 100% auto;
		width: 10vw;
		height: 10vw;
		top: -4vw;
		left: -3vw;
	}
	.row01_in .post_wrap ul li:nth-of-type(2)::before{
		position: absolute;
		content: "";
		background: url(../img/02.png) no-repeat center top / 100% auto;
		width: 10vw;
		height: 10vw;
		top: -4vw;
		left: -3vw;
	}
	.row01_in .post_wrap ul li:nth-of-type(3)::before{
		position: absolute;
		content: "";
		background: url(../img/03.png) no-repeat center top / 100% auto;
		width: 10vw;
		height: 10vw;
		top: -4vw;
		left: -3vw;
	}


	.row01_in .post_wrap ul li:nth-of-type(2){
		margin-right: 3vw;
		margin-top: 12vw;
	}
	.row01_in .post_wrap ul li:nth-of-type(3){
		margin-left: 3vw;
		margin-top: 12vw;
	}
	/* 日付 */
	.row01_in .post_wrap .post_date{
		font-weight: 900;
		font-size: 3.5vw;
		text-align: left !important;
		padding-top: 11px;
	}
	/* タイトル */
	.row01_in .post_wrap > ul > li:first-of-type .post_title{
		text-align: left !important;
		width: 80vw;
		padding-top: 5px;
		line-height: 1.3;
	}
	.row01_in .post_wrap > ul > li:nth-of-type(2) .post_title,
	.row01_in .post_wrap > ul > li:nth-of-type(3) .post_title{
		text-align: left !important;
		width: 40vw;
		padding-top: 5px;
		line-height: 1.3;
	}
	.row01_in .post_wrap .post_title a{
		color: #42362f;
	}
	/* サムネイル */
	.row01_in .post_wrap > ul > li:first-of-type .post_thumb img{
		width: 80vw;
		height: 53vw;
		object-fit: cover;
		font-family: 'object-fit: cover;'; /* IE対策 */
	}
	.row01_in .post_wrap > ul > li:nth-of-type(2) .post_thumb img,
	.row01_in .post_wrap > ul > li:nth-of-type(3) .post_thumb img{
		width: 40vw;
		height: 40vw;
		object-fit: cover;
		font-family: 'object-fit: cover;'; /* IE対策 */
	}

	/* ボタン上パディング */
	.row01_button{
		padding-top: 14vw;
	}

}





/* ================================================================================

	店内背景２箇所

================================================================================ */


.eachTextAnime span{opacity: 0;}
.eachTextAnime.appeartext span{ animation:text_anime_on 1s ease-out forwards; }
@keyframes text_anime_on {
	0% {opacity:0;}
	100% {opacity:1;}
}



/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	/* 1 */
	.bg_space01{
		background: url(../img/img_bg_01.jpg) no-repeat center top / auto;
		height: 617px;
		position: relative;
		margin-top: 90px;
	}
	.bg_space01 p{
		color: #ffffff;
		text-align: right;
		font-size: 47px;
		font-weight: 500;
		letter-spacing: 0.05em;
		padding: 222px 0 0 0;
		margin-right: -81px;
		-moz-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.35);
		-webkit-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.35);
		-ms-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.35);
		text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.35);
	}

	/* 2 */
	.bg_space02{
		background: url(../img/img_bg_02.jpg) no-repeat center top / auto;
		height: 617px;
		position: relative;
	}
	.bg_space02 p{
		color: #ffffff;
		text-align: right;
		font-size: 47px;
		font-weight: 500;
		letter-spacing: 0.05em;
		padding: 222px 0 0 0;
		margin-right: -81px;
		-moz-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.35);
		-webkit-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.35);
		-ms-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.35);
		text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.35);
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
		/* 1 */
		.bg_space01{
			background: url(../img/sp_img_bg_01.jpg) no-repeat center top / 100% auto;
			height: 81vw;
			position: relative;
			margin-top: 13vw;
		}
		.bg_space01 p{
			color: #ffffff;
			text-align: center;
			font-size: 7vw;
			font-weight: 500;
			letter-spacing: 0.05em;
			padding: 35vw 0 0 0;
			-moz-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.35);
			-webkit-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.35);
			-ms-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.35);
			text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.35);
		}
	
		/* 2 */
		.bg_space02{
			background: url(../img/sp_img_bg_02.jpg) no-repeat center top / 100% auto;
			height: 81vw;
			position: relative;
			margin-top: 13vw;
		}
		.bg_space02 p{
			color: #ffffff;
			text-align: center;
			font-size: 7vw;
			font-weight: 500;
			letter-spacing: 0.05em;
			padding: 35vw 0 0 0;
			-moz-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.35);
			-webkit-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.35);
			-ms-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.35);
			text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.35);
		}
	
}





/* ================================================================================

	スケジュール

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.row02{
		padding: 82px 0 120px;
	}
	.row02_in{
		position:relative;
		padding-top: 76px;
		z-index: 0;
	}
	.row02_in::before{
		position:absolute;
		content: "";
		background: url(../img/vegetable01.jpg) no-repeat center top / auto;
		width: 252px;
		height: 341px;
		top: 220px;
		left: -70px;
		z-index: -1;
	}
	.row02_in::after{
		position:absolute;
		content: "";
		background: url(../img/vegetable02.jpg) no-repeat center top / auto;
		width: 248px;
		height: 483px;
		top: 40px;
		right: -59px;
		z-index: -1;
	}
	.row02_in img{
		border-radius: 10px;
	} 
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.row02{
		padding: 13vw 5vw 0;
	}
	.row02_in{
		padding-top: 10vw;
	}
	.row02_in img{
		border-radius: 10px;
	} 
}





/* ================================================================================

	ABOUT
omotyabako

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.row03{
		padding: 112px 0 95px;
		width: 1366px !important;
		margin: 0 auto;
	}
	.row03_in{
		position: relative;
		z-index: 0;
		width: 1366px !important;
		margin: 0 auto;
	}
	/* 背景 */
	.row03_in::before{
		position: absolute;
		content: "";
		background: #ffffff;
		border-radius: 10px;
		width: 1188px;
		height: 575px;
		top: 63.1%;
		left: 43.4%;
		transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
		z-index: -1;
	}
	/* タイトル */
	.row03 h2{
		margin-left: 66px;
		margin-bottom: 24px;
	}

	.row03 h3{
		font-size: 26px;
		font-weight: 400;
		line-height: 1.5;
		padding: 58px 0 0 135px;
	}
	/* テキスト */
	.row03_text{
		padding: 32px 0 0 135px;
	}
	.row03_text p:not(:first-child) {
		margin-top: 2em;
	}
	/* 画像 */
	.row03_img{
		position: relative;
		padding-top: 38px;
	}
	.row03_img img{
		border-radius: 10px;
	}

	/* リンク */
	.row03_button{
		position: relative;
	}
	.row03_button .top_link_common{
		position: absolute;
		bottom: -94px;
		left: 50%;
		margin-left: -870px;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.row03{
		padding: 13vw 0;
	}
	/* タイトル */
	.row03 h3{
		font-size: 5vw;
		font-weight: 400;
		line-height: 1.5;
		padding: 12vw 13vw 0;
	}
	.row03_in{
		position: relative;
		z-index: 0;
	}
	/* 背景 */
	.row03_in::before{
		position: absolute;
		content: "";
		background: #ffffff;
		width: 100%;
		height: 27vw;
		bottom: 5%;
		left: 50%;
		transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
		z-index: -1;
	}
	/* 画像 */
	.row03_img{
		padding-top: 10vw;
	}
	.row03_img img{
		border-radius: 10px;
	}
	/* テキスト */
	.row03_text{
		padding: 5vw 13vw 0;
	}
	/* リンク */
	.row03_button{
		margin-top: 18vw;
	}
}

	
	
/* ================================================================================

	MENU

================================================================================ */

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.row04{
		padding-top: 204px;
		background: url(../img/menu_cake.jpg) no-repeat center top 140px / auto;
		height: 887px;
	}
	.row04 .row04_text{
		padding-top: 80px;
		letter-spacing: 0.05em;
	}
	.row04 .row04_text p:not(:first-child) {
		margin-top: 2em;
	}


}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.row04{
		padding-top: 16vw;
		background: url(../img/sp_menu_cake.jpg) no-repeat center top 20vw / 100% auto;
		height: 131vw;
	}
	.row04 .row04_text{
		padding-top: 15vw;
		-moz-text-shadow: 0px 0px 9px rgb(255, 255, 255),0px 0px 9px rgb(255, 255, 255),0px 0px 9px rgb(255, 255, 255);
		-webkit-text-shadow: 0px 0px 9px rgb(255, 255, 255),0px 0px 9px rgb(255, 255, 255),0px 0px 9px rgb(255, 255, 255);
		-ms-text-shadow: 0px 0px 9px rgb(255, 255, 255),0px 0px 9px rgb(255, 255, 255),0px 0px 9px rgb(255, 255, 255);
		text-shadow: 0px 0px 9px rgb(255, 255, 255),0px 0px 9px rgb(255, 255, 255),0px 0px 9px rgb(255, 255, 255);
	}
	.row04 .row04_text p:not(:first-child) {
		margin-top: 2em;
	}

}
/* ================================================================================

	二連ボタンあたり

================================================================================ */

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.row05{
		padding-top: 122px;
	}
	.row05 .row05_text{
		position: relative;
	}	
	.row05 .row05_text p{
		position: relative;
		text-align: center;
		font-size: 20px;
		letter-spacing: 0.05em;
	}
	.row05 .row05_text p::before{
		position: absolute;
		content: "";
		background: #42362f;
		width: 1px;
		height: 53px;
		top: -176%;
		left: 50%;
		transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
	}
	.row05 .row05_text .top_link_common{
		padding-top: 50px;
	}


}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.row05{
		padding-top: 19vw;
	}
	.row05 .row05_text{
		position: relative;
	}	
	.row05 .row05_text p{
		position: relative;
		text-align: center;
		letter-spacing: 0.05em;
	}
	.row05 .row05_text p::before{
		position: absolute;
		content: "";
		background: #42362f;
		width: 1px;
		height: 8vw;
		top: -160%;
		left: 50%;
		transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
	}
	.row05 .row05_text .top_link_common{
		padding-top: 7vw;
	}

}

/* ================================================================================

	キャンペーン

================================================================================ */

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	.row06_title{
		padding-top: 190px;
	}



}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.row06_title{
		padding-top: 23vw;
	}
}