@charset "UTF-8";
body {
	font-family: "Noto Sans JP", "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳＰゴシック", "MS PGothic", sans-serif;
	font-size: 18px;
	color: #333;
}
img {
	max-width: 100%;
}
.innerwrap {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
}

.pc-only {
	display: block;
}
.sp-only {
	display: none;
}

/* テキスト */
main h3 {
	text-align: center;
	font-weight: bold;
	font-size: 34px;
	letter-spacing: .05em;
	line-height: 51px;
	margin-top: 80px;
	margin-bottom: 55px;
}
.section-description {
	text-align: center;
	font-size: 20px;
	letter-spacing: .05em;
	line-height: 38px;
	margin-bottom: 37px;
}
main h4 {
	text-align: center;
	font-weight: bold;
	font-size: 34px;
	letter-spacing: .05em;
	margin-bottom: 80px;
}
main h5 {
	font-weight: bold;
	font-size: 26px;
	letter-spacing: .05em;
	margin-bottom: 30px;
}
.minimenu {
	margin-left: 50px;
}
p.concept-text {
	font-weight: bold;
	font-size: 30px;
	letter-spacing: .05em;
	line-height: 45px;
	margin-bottom: 37px;
}
p.midium {
	font-size: 15px;
	letter-spacing: .05em;
	line-height: 30px;
	margin-bottom: 37px;
}

/* ヘッダー */
header {
	width: 100%;
	height: 100px;
	display: flex;
	justify-content: space-between;
	padding: 0 50px;
	position: fixed;
	top: 0;
	z-index: 20;
}
.header-logo {
	display: flex;
	align-items: center;
	width: 255px;
	transition: .5s;
}
.header-logo:hover {
	opacity: 0.6;
}
.gnav-pc-wrap{
	display: flex;
	align-items: center;
}
ul.gnav-pc li {
	display: inline;
	margin-right: 40px;
	align-items: center;
}
ul.gnav-pc li a {
	font-size: 20px;
	transition: .5s;
}
ul.gnav-pc li a:hover {
	color: #97f7db
}
.gnav-pc-wrap img {
	width: 25px;
}
.insta {
	width: 35px;
	height: auto;
	transition: .4s;
}
.insta:hover {
	opacity: 0.6;
}
#menu-button {
	display: none;
}
.gnav-sp-wrap {
	display: none;
}

/* メインビジュアル */
.mainvisual {
	width: 100vw;
	height: calc(100vh - 70px);
	margin-top: 75px;
	background: url(../images/hero.jpg) no-repeat center/contain;
}
main .mainvisual .innerwrap {
	height: calc(100vh - 70px);
	position: relative;
}
main h2 {
	color: #fdf9f1;
	font-weight: bold;
	font-size: 34px;
	text-shadow: 4px 4px 10px #6b6c67;
	letter-spacing: .05em;
	line-height: 60px;
}
.copy-wrap {
	position: absolute;
	top: 224px;
	right: 280px;
}

/* アバウト */
.about {
	margin-bottom: 100px;
}
/* コンセプト */
.concept img {
	display: block;
	width: 100%;
	height: auto;
}
.concept {
	background-color: #fdf9f1;
}
.concept .innerwrap {
	padding: 20px 80px 0;
}
.col-2-1 {
	display: flex;
	justify-content: space-between;
	margin-bottom: 100px;
}
.col-2-1 .item {
	width: calc((100% - 24px)/2);
}
.col-2-2 {
	display: flex;
	justify-content: space-between;
}
.col-2-2 .item {
	width: calc((100% - 24px)/2);
}
/* メニュー　おにぎり */
.menu_title {
	margin-bottom: 20px;
}
.line {
	position: relative;
	right: 23px;
	top: -36px;
}
.menu_onigiri {
	width: 332px;
	height: 222px;
	border-radius: 26px;
	margin-left: 55px;
	position: relative;
	z-index: 10;
}
.col-2-3 {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
.col-2-3 .item {
	width: calc((100% - 24px)/2);
	align-self: center;
}
.item_gu .kisetsu {
	width: 232px;
	height: 133px;
	position: relative;
	left: 150px;
	bottom: 250px;
	display: block;
}
.item_gu ul {
	margin-top: 35px;
	margin-left: 50px;
	font-size: 20px;
	letter-spacing: .05em;
	line-height: 35px;
}
.col-2-3 .item .onigiri_icon {
	width: 166px;
	height: auto;
	position: relative;
	left: 250px;
	bottom: 280px;
}

/* メニュー　おそうざい */
.menu {
	margin-bottom: 100px;
}
.col2-souzai {
	display: flex;
	justify-content: flex-start;
}
.col2-souzai .item {
	width: calc((100% - 24px)/2);
	height: 366px;
}
.souzai_box {
	display: flex;
}
.souzai_box item {
	align-items: flex-start;
}
.menu_souzai {
	font-size: 16px;
	letter-spacing: .05em;
	line-height: 35px;
	position: relative;
	top: 5px;
	left: px;
}
.souzai {
	width: 196px;
	height: auto;
	position: relative;
	z-index: 10;
}
.misosiru {
	width: 196px;
	height: auto;
	position: relative;
	z-index: 10;
}
.box_misosiru {
	display: flex;
	height: 190px;
}
.bentou {
	width: 196px;
	height: auto;
	position: relative;
	z-index: 10;
}
.col2-souzai .item .onigiri_icon {
	width: 166px;
	height: auto;
	position: relative;
	left: 60px;
	bottom: 340px;
}
.onigiri_icon_mini1 {
	width: 117px;
	height: auto;
	position: relative;
	left: 110px;
	bottom: 154px;
}
.onigiri_icon_mini2 {
	width: 117px;
	height: auto;
	position: relative;
	left: 110px;
	bottom: 145px;
}

/* アクセス */
.shop {
	width: 326px;
	height: auto;
}
.col2-shop {
	display: flex;
	justify-content: space-evenly;
}
.col-shop .item {
	width: calc((100% - 24px)/2);
	margin: 0 60px;
}
.col2-shop .item .shop_logo {
	display: block;
	margin: 0 auto;
	width: 260px;
	margin-bottom: 40px;
}
table {
	margin: 0 auto;
}
td {
	padding: 0px 30px 5px 0px;
	font-size: 16px;
	letter-spacing: 0.05em;
    line-height: 30px;
}
.botton_border {
	display: block;
    width: 235px;
    height: 64px;
    border: 1px solid #97f7db;
    background-color: #fdf9f1;
    font-size: 15px;
    letter-spacing: 0.06em;
    line-height: 60px;
    text-align: center;
    border-radius: 32px;
	margin: 0 auto;
	margin-top: 30px;
	transition: .4s cubic-bezier(0.45, 0, 0.55, 1);
}
.botton_border:hover {
	background: #97f7db;
	color: #333;
	border: 1px solid #fdf9f1;
	cursor: pointer;
}
/* フッター */
footer {
	background-color: #97f7db;
	text-align: center;
	font-size: 15px;
	padding: 40px 0;
    margin-top: 110px;
}
.copyright {
	margin-top: 30px;
}

/* ------------------------------
	アニメーション
-------------------------------*/
header {
	animation-name:fadeInAnime;
	animation-duration:4s;
	animation-fill-mode:forwards;
	opacity:0;
}
.mainvisual {
	animation-name:fadeInAnime;
	animation-duration:4s;
	animation-fill-mode:forwards;
	opacity:0;
}

@keyframes fadeInAnime{
from {
    opacity: 0;
}
to {
    opacity: 1;
}
}

.fadeIn {
	opacity: 0;
	transition: 3s;
}
.fadeIn.is-show {
	opacity: 1;
}


/* ------------------------------
	スマホ
-------------------------------*/
@media screen and (max-width:768px) {
	.innerwrap {
		padding: 30px 35px 0px;
	}
	.pc-only {
		display: none;
	}
	.sp-only {
		display: block;
	}
}

/* スマホ テキスト */
@media screen and (max-width: 768px) {
	main h2 {
		color: #fdf9f1;
		font-weight: bold;
		font-size: 21px;
		text-shadow: 4px 4px 10px #6b6c67;
		letter-spacing: .05em;
		line-height: 60px;
	}
	main h3 {
		text-align: center;
		font-weight: bold;
		font-size: 20px;
		letter-spacing: 0em;
		line-height: 34px;
		margin-top: 40px;
		margin-bottom: 55px;
	}
	.section-description {
		text-align: center;
		font-size: 13px;
		letter-spacing: .05em;
		line-height: 27px;
		margin-bottom: 37px;
	}
	main h4 {
		text-align: center;
		font-weight: bold;
		font-size: 21px;
		letter-spacing: .05em;
		margin-top: 30px;
		margin-bottom: 50px;
	}
	main h5 {
		font-weight: bold;
		font-size: 17px;
		letter-spacing: .05em;
		margin-bottom: 30px;
	}
	p.concept-text {
		font-weight: bold;
		font-size: 17px;
		letter-spacing: .05em;
		line-height: 27px;
		margin-top: 25px;
		margin-bottom: 25px;
	}
	p.midium {
		font-size: 14px;
		letter-spacing: .05em;
		line-height: 24px;
		margin-bottom: 37px;
	}
	.minimenu {
		margin-left: 0px;
		margin-top: 50px;
	}
}

/* スマホ　ヘッダー */
@media screen and (max-width: 768px) {
	.header {
		height: 56px;
		padding: 0;
		display: flex;
		z-index: 101;
	}
	.header-logo {
		width: 170px;
		padding-left: 20px;
	}
	.gnav-pc-wrap {
		display: none;
	}
	

	/* ハンバーガーメニュー */
	#menu-button {
		display: block;
		width: 56px;
		height: 56px;
		padding: 22px 18px;
	}
	.menu-button-inner {
		position: relative;
		display: block;
		width: 100%;
		height: 100%;
	}
	.menu-button-inner span {
		display: block;
		height: 2px;
		width: 100%;
		background-color: #847e82;
		position: absolute;
	}

	.menu-button-inner span:nth-child(1) {
		top: 0;
	}
	
	.menu-button-inner span:nth-child(2) {
		top: 0;
		bottom: 0;
		margin: auto;
	}
	
	.menu-button-inner span:nth-child(3) {
		bottom: 0;
	}

	/* sp用メニュー */
	.gnav-sp-wrap {
		display: none;
		width: 100vw;
		height: 100vh;
		background-color: #fff;
		position: fixed;
		z-index: 100;
		padding-top: 100px;
		margin-top: 56px;
	}
	
	ul.gnav-sp li {
		text-align: center;
		margin-bottom: 30px;
	}
	
	ul.gnav-sp li a {
		font-size: 20px;
		letter-spacing: 0.1em;
		font-weight: bold;
	}
	.insta {
		display: block;
		margin: 0 auto;
	}
}

/* スマホ　メインビジュアル */
@media screen and (max-width:768px) {
	.mainvisual {
		width: 100vw;
		background: url(../images/hero-sp.jpg) no-repeat center/cover;
		margin-top: 57px;
	}
	main .mainvisual .innerwrap {
		height: calc(100vh - 107px);
		position: relative;
	}
	main h2 {
		color: #fdf9f1;
		font-weight: bold;
		font-size: 21px;
		text-shadow: 4px 4px 10px #6b6c67;
		letter-spacing: .05em;
		line-height: 45px;
	}
	.copy-wrap {
		position: absolute;
		top: 132px;
		right: 20px;
	}
}

/* スマホ　コンセプト */
@media screen and (max-width:768px) {
	.about {
		margin-bottom: 50px;
	}
	.concept img {
		display: block;
		width: 100%;
		height: auto;
	}
	.concept .innerwrap {
		padding: 0px 20px;
	}
	.col-2-1 {
		display: flex;
		flex-direction: column-reverse;
		justify-content: space-between;
		margin-bottom: 30px;
	}
	.col-2-1 .item {
		width: 100%;
	}
	.col-2-2 {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}
	.col-2-2 .item {
		width: 100%;
	}
}

/* スマホ　メニュー */
@media screen and (max-width:768px) {
	/* スマホおにぎり */
	#menu {
		margin-bottom: 50px;
	}
	.line {
		position: static;
		margin-bottom: 50px;
	}
	.menu_onigiri {
		width: 120px;
		height: auto;
		border-radius: 20px;
		position: static;
		margin-left: 0;
	}
	.col-2-3 {
		display: flex;
		justify-content: space-around;
		align-items: flex-start;

	}
	.col-2-3 .item {
		flex-shrink: 0;
		flex-basis: 50%;
		align-self: flex-start;
	}
	.col-2-3 .item_gu {
		flex-shrink: 0;
		flex-basis: 50%;
		align-self: flex-start;
	}
	.item_gu ul {
		margin-top: 0;
		margin-left: 0;
		padding: 50px 0 0;
		font-size: 10px;
		letter-spacing: .05em;
		line-height: 15px;
	}
	.item_gu .kisetsu {
		width: 87px;
		height: auto;
		display: block;
		position: relative;
		left: 40px;
		bottom: 80px;
	}
	/* スマホおにぎりアイコン */
	.col-2-3 .item .onigiri_icon {
		display: none;
	}
	.col2-souzai .item .onigiri_icon {
		display: none;
	}
	.onigiri_icon_mini1 {
		display: none;
	}
	.onigiri_icon_mini2 {
		display: none;
	}

	/* スマホそうざい */

	.col2-souzai {
		display: flex;
		justify-content: flex-start;
		justify-content: space-around;
		flex-direction: column;
	}
	.col2-souzai .item {
		width: 100%;
		height: auto;
		flex-basis: auto;
	}
	.souzai_box {
		display: flex;
	}
	.souzai_box item {
		align-items: flex-start;
		flex-shrink: 0;
		flex-basis: 50%;
	}
	.menu_souzai {
		font-size: 10px;
		letter-spacing: .05em;
		line-height: 19px;
		position: static;
		top: 0;
		left: 0px;
		margin-left: 20px;
	}
	.souzai {
		width: 120px;
		height: 73px;
		position: static;
		z-index: 10;
		object-fit: cover;
		border-radius: 20px;
		margin-top: 50px;
	}
	/* スマホお味噌汁 */
	.misoben {
		display: flex;
		width: auto;
	}
	.misosiru {
		width: 120px;
		height: 73;
		position: static;
		z-index: 10;
	}
	.box_misosiru {
		display: flex;
		height: auto;
		flex-basis: 50%;
		flex-direction: column;
	}
	.bentou {
		width: 120px;
		height: auto;
		position: static;
		z-index: 10;
	}

	/* スマホアクセス */
	
	.shop {
		display: none;
	}
	.col2-shop {
		display: flex;
		flex-direction: column;
	}
	.col2-shop .item .shop_logo {
		width: 157px;
		margin-bottom: 30px;
	}
	td {
		font-size: 12px;
	}
	.botton_border {
		width: 190px;
		height: 46px;
		font-size: 12px;
		line-height: 46px;
	}

	/* スマホフッター */
	footer {
		background-color: #97f7db;
		text-align: center;
		font-size: 12px;
		padding: 30px 0;
		margin-top: 30px;
	}
	.insta {
		width: 24px;
		height: auto;
	}
	.copyright {
		margin-top: 20px;
	}
}