@charset "UTF-8";

body.fixed {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}

/* header
--------------------------------*/
#header {
	width: 100%;
	height: 54px;
	background-color: #fff;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 999;
}

#header .wrap {
	width: 96%;
	max-width: 1160px;
	height: 100%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#header .logo_main {
	width: 125px;
	margin: 0;
}

#header .menuwrap {
	width: calc(100% - 130px);
/*	max-width: 820px;*/
	z-index: 999;
}

#header .gnavi {
	display: flex;
	align-items: flex-end;
	justify-content:flex-end;
/*	flex-wrap: wrap;*/
	gap: 1.1%;
	width: 100%;
	margin-bottom: 0;
	padding: 0;
}

#header .gnavi>li {
/*	width: 9.64%;*/
	max-width: 101px;
	list-style-type: none;
	display: block;
	pointer-events: auto;
	cursor: pointer;
}

#header .gnavi>li>a {
	position: relative;
	display: block;
	color: #211815;
	height: 54px;
	font-size: 12px;
	line-height: 1.2;
	letter-spacing: 0.05em;
	display: flex;
	justify-content: center;
	align-items: center;
	padding-bottom: 5px;
}

/*subnavi*/
#header .gnavi .subnavi {
	padding: 0;
	background: url(../img/bg_wh.png);
	display: none;
	position: fixed;
	left: 0;
	top: 54px;
	width: 100%;
	max-height: 100%;
	/*	pointer-events: none;*/
	overflow-y: scroll;
	cursor: initial;
}

#header .gnavi .subnavi .inner {
	padding: 100px 0 120px;
	min-height: 100vh;
}

#header .gnavi .subnavi .category_list {
	width: 100%;
	max-width: 1168px;
	margin: 0 auto;
	display: flex;
	justify-content: flex-start;
	/*	align-items: flex-start;*/
	flex-wrap: wrap;
	padding: 0;
	margin-top: 45px;
}

#header .gnavi .subnavi .category_list .item {
	width: 23.8%;
	max-width: 276px;
	background-color: #fff;
	border-radius: 20px;
	padding: 20px;
	list-style-type: none;
	margin: 0 1.6% 1.6% 0;
}

#header .gnavi .subnavi .category_list .item:nth-child(4n) {
	margin-right: 0;
}

#header .gnavi .subnavi .category_list .item a{
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
}

#header .gnavi .subnavi .category_list .item>* {
	color: #231815;
}

#header .gnavi .subnavi .category_list .item .img {
	width: 100%;
	aspect-ratio: 1/1;
	margin-bottom: 10px;
}

#header .gnavi .subnavi .category_list .item .img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#header .gnavi .subnavi .category_list .item .ttlbox {
	padding: 5px;
	border-bottom: 1px solid #231815;
	margin-bottom: 5px;
	flex: 1;
}

#header .gnavi .subnavi .category_list .item .ttl {
	font-weight: bold;
	font-size: 18.7px;
	line-height: 1.17;
	margin-bottom: 0;
	/*	min-height: 70px;*/
}

#header .gnavi .subnavi .category_list .item .ttl span {
	display: block;
	font-size: 12.5px;
	margin-bottom: 3px;
}

#header .gnavi .subnavi .category_list .item .calorie {
	padding: 10px 0 5px;
	position: relative;
}

#header .gnavi .subnavi .category_list .item .calorie::before {
	content: "";
	width: 158px;
	height: 1px;
	background-color: #231815;
	position: absolute;
	left: 0;
	top: 0;
}

#header .gnavi .subnavi .category_list .item .calorie p {
	display: inline-block;
	margin: 0;
	line-height: 1;
	vertical-align: bottom;
}

#header .gnavi .subnavi .category_list .item .calorie .per {
	font-weight: bold;
	font-size: 8px;
	letter-spacing: -0.05em;
	margin-right: .4em;
}

#header .gnavi .subnavi .category_list .item .calorie .value {
	font-weight: bold;
	font-family: 'Montserrat', sans-serif;
	font-size: 17.2px;
}

#header .gnavi .subnavi .category_list .item .calorie .value span {
	font-weight: bold;
	font-family: 'Montserrat', sans-serif;
	font-size: 13.6px;
}


@media screen and (min-width: 769px) {
	#header .gnavi>li:hover .subnavi {
		pointer-events: auto;
		z-index: 1;
	}


	#header .gnavi>li>a {
		pointer-events: none;
		cursor: pointer;
	}


	#header .gnavi>li>a::before {
		content: "";
		width: 9px;
		height: 9px;
		border-right: 1px solid #231815;
		border-bottom: 1px solid #231815;
		position: absolute;
		left: 50%;
		bottom: 5px;
		transform: rotate(45deg) translateX(-50%);
		transition: .3s ease;
	}


	#header .gnavi>li.open a::before {
		transform: rotate(45deg) translateX(-50%) scale(-1, -1);
		bottom: 2px;
	}
}

@media screen and (max-width:1000px){
	#header .gnavi>li>a{
		font-size: 11px;
	}
}

@media screen and (max-width:880px){
	#header .gnavi{
		gap: .5%;
	}
	#header .gnavi>li>a{
		font-size: 10px;
	}
}

@media screen and (max-width: 768px) {
	#header {
		width: 54px;
		height: 50px;
		border-radius: 0 0 0 25px;
		left: auto;
		right: 0;
	}

	#header .wrap {
		max-width: inherit;
		display: none;
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 990;
		text-align: center;
		overflow-y: scroll;
		width: 100%;
		max-height: 100%;
		background-color: #fff;
		padding: 16px 4vw 4vw;
		-webkit-overflow-scrolling: touch;
	}

	#header .menu-trigger {
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		width: 100%;
		height: 100%;
		z-index: 999;
		text-align: center;
		font-family: fot-tsukuardgothic-std, sans-serif;
	}

	#header .menu-trigger span {
		display: inline-block;
		transition: all .4s;
		position: absolute;
		right: 17px;
		width: 20px;
		height: 2px;
		border-radius: 2px;
		background-color: #58442f;
	}

	#header .menu-trigger span:nth-of-type(1) {
		top: 16px;
	}

	#header .menu-trigger span:nth-of-type(2) {
		top: 23px;
	}

	#header .menu-trigger span:nth-of-type(3) {
		width: 16px;
		top: 30px;
	}

	#header .logo_main {
		width: 100px;
		margin: 0;
		line-height: 1;
	}

	#header .logo_main a {
		display: block;
		font-size: 4vw;
	}

	#header .menuwrap {
		width: 100%;
		max-width: inherit;
		padding: 12vw 8vw;
	}

	#header .gnavi {
		display: block;
		padding: 0;
	}

	#header .gnavi>li {
		max-width: inherit;
	}

	#header .gnavi>li>a {
		display: block;
		height: auto;
		padding: 4vw 0;
		font-size: 3.6vw;
		text-align: left;
	}


	/*subnavi*/
	#header .gnavi .subnavi {
		display: none;
	}


}


/* recipe_detail
--------------------------------*/
#recipe_detail {
	min-height: calc(100vh - 46px);
	padding: 154px 0 60px;
	background: url(../img/bg_wh.png);
}

#recipe_detail .content_wrap {
	width: 94%;
	max-width: 1090px;
	margin: 0 auto;
}

#recipe_detail .content_wrap * {
	color: #211815;
}

.p-recipe_detailbox {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	/*margin-bottom: 20px;*/
	margin: 0 0 15px;
}


.p-recipe_detail-textbox {
	width: 47%;
	max-width: 508px;
	margin-bottom: 40px;
}

.p-recipe_detail-imgbox {
	width: 49%;
	max-width: 530px;
	aspect-ratio: 530 / 462;
	overflow: hidden;
}

.p-recipe_detail-imgbox img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.p-detail-titlebox {
	display: block;
	margin-bottom: 30px;
	margin-top: 35px;
	border-bottom: solid 1px #211815;
	padding-bottom: 10px;
}

.p-detail-titlebox .flex {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	font-size: 0;
	line-height: 1;
}

.p-detail-title {
	flex: 1;
	font-size: 32px;
	font-weight: bold;
	line-height: 1.2;
	letter-spacing: 0;
	margin-bottom: 0;
}

.p-detail-subtitle {
	font-weight: bold;
	display: block;
	font-size: 1.4rem;
	line-height: 1.375;
	margin-bottom: .2em;
}

.p-detail-taste {
	font-weight: bold;
	display: block;
	font-size: 2.4rem;
	line-height: 1.375;
	margin-bottom: 0;
}

.p-calbox span {
	font-size: 10px;
	line-height: 1.2;
}

.p-calbox{
	margin-left: 10px;
}

.p-calbox p {
	font-size: 27px;
	font-weight: bold;
	font-family: 'Montserrat', sans-serif;
	letter-spacing: 1px;
	margin-bottom: 4px;
}

.p-calbox p span {
	font-size: 21px;
	font-family: 'Montserrat', sans-serif;
}

.p-material-area {
	display: flex;
	justify-content: space-between;
}

.p-material-area div:nth-child(1) {
	width: 11.3%;
}

.p-material-area div:nth-child(2) {
	/*	width: 15.2%;*/
	flex: 1 1 auto;
	margin-right: 1.8%;
}

.p-material-area div:nth-child(3) {
	width: 72%;
}

.p-amountbox {
	font-size: 18px;
	text-align: left;
}

.p-amountbox span {
	display: block;
	font-size: 10px;
}

.p-amountbox span {
	text-indent: -.5em;
}

.p-material-area hr {
	margin: 12px 0 0;
	border: 1px solid;
	color: #4b433a;
	border-bottom: none;
}

.p-material-box table {
	width: 100%;
}

.p-material-box table th,
.p-material-box table td {
	font-size: 12px;
	padding: 5px;
	letter-spacing: 0.1em;
}

.p-material-box table th {
	padding-left: 14px;
	font-weight: normal;
	vertical-align: top;
}

.p-material-box table td {
/*	width: 27.5%;*/
	text-align: right;
	padding-right: 16px;
	vertical-align: bottom;
}

.p-material-box table th.ls0,
.p-material-box table td.ls0 {
	letter-spacing: 0;
}

.p-material-box table tr:nth-child(odd) {
	background: rgba(255, 230, 50, .4);
}

.p-material-box table tr:nth-child(even) {
	background: rgba(255, 255, 255, .8);
}

.p-methodbox {
	display: flex;
	flex-wrap: wrap;
}

.p-method-title {
	font-size: 18px;
}

.p-method-title span {
	font-size: 11px;
	padding-left: 0;
}

.p-method-title span img {
	padding-left: 10px;
	padding-right: 6px;
}

.p-methodbox>div {
	width: 25%;
	padding: 0 1.83%;
	border-right: none;
	background-image: linear-gradient(to bottom, #211815, #211815 2px, transparent 1px, transparent 4px);
	background-size: 1px 6px;
	background-position: right;
	background-repeat: repeat-y;
	min-height: 124px;
}

.p-methodbox>div:first-child,
.p-methodbox>div:nth-child(4n + 1) {
	padding-left: 0;
}

.p-methodbox>div:last-child {
	border-right: none;
	background: none;
}

.p-method-num {
	font-size: 22px;
	font-family: 'Montserrat', sans-serif;
	margin-bottom: 0;
}

.p-method-text {
	font-size: 12px;
	letter-spacing: 1px;
	line-height: 2;
	margin-bottom: 0;

	letter-spacing: 0;
}

.p-method-text .txt_green {
	color: #006641 !important;
}

.material_attention {
	margin-top: 20px;
	padding-left: 1em;
	text-indent: -1em;
	font-size: 12px;
}

.material_attention:before {
	content: "※";
}

@media screen and (min-width: 769px) {
	.p-methodbox>div:nth-child(n + 5) {
		margin-top: 15px;
	}

	.p-methodbox>div:nth-child(4) {
		border-right: none;
		background: none;
	}

}

@media screen and (max-width: 768px) {
	#recipe_detail {
		min-height: inherit;
		padding: 5vw 0 13vw;
	}

	#recipe_detail .content_wrap {
		width: 90%;
	}

	.p-recipe_detail-textbox {
		width: 100%;
		margin: 0 auto 9vw;
	}

	.p-recipe_detail-imgbox {
		width: 100%;
	}

	.p-detail-titlebox {
		position: relative;
		margin-bottom: 0;
		padding-bottom: 3vw;
		margin-top: 5vw;
	}

	.p-detail-titlebox .flex {
		width: 100%;
		position: relative;
	}

	.p-detail-title {
		margin-bottom: 0;
		font-size: 6.13vw;
	}

	.p-detail-subtitle {
		font-size: 4.27vw;
		margin-bottom: .4em;
	}

	.p-detail-taste {
		font-size: 5vw;
		line-height: 1.375;
		margin-bottom: 0;
	}

	.p-detail-title span {
		font-size: 4.27vw;
		margin-bottom: .2em;
		line-height: 1.375;
	}

	.p-calbox {
		margin-left: 2vw;
		margin-top: -3vw;
	}

	.p-calbox p {
		margin-bottom: .1em;
		font-size: 5.87vw;
	}

	.p-calbox span {
		font-size: 2.9vw;
	}

	.p-calbox p span {
		font-size: 3.2vw;
	}

	.p-material-area {
		margin-top: 7vw;
		display: block;
	}


	.p-material-area div:nth-child(1) {
		width: 100%;
		text-align: left;
	}

	.p-material-area div:nth-child(2) {
		display: none;
	}

	.p-material-area div:nth-child(3) {
		width: 100%;
	}

	.p-method-title span {
		vertical-align: text-top;
	}

	.p-amountbox p {
		font-size: 5vw;
		margin-bottom: 1.4vw;
	}

	.p-amountbox span {
		font-size: 3.2vw;
		display: inline-block;
		text-indent: 0;
	}

	.p-material-box table th,
	.p-material-box table td {
		padding: 1% 3vw;
		font-size: 3.47vw;
		letter-spacing: 0.01em;
	}

	.p-material-box table td {
		padding-left: 0;
	}

	.p-method-title {
		font-size: 5vw;
		line-height: 1;
	}

	.p-method-title span {
		display: inline-block;
		font-size: 3.2vw;
		line-height: 1;
		vertical-align: bottom;
		margin-bottom: .5vw;

	}

	.p-method-title span img {
		width: 7.33vw;
		padding-left: 3vw;
		padding-right: 1vw;
	}

	.p-methodbox {
		flex-direction: column;
	}

	.p-methodbox>div {
		display: flex;
		width: 100%;
		min-height: inherit;
	}

	.p-methodbox>div {
		border-right: none;
		background-image: linear-gradient(to right, #211815, #211815 2px, transparent 1px, transparent 4px);
		background-size: 6px 1px;
		background-position: bottom;
		background-repeat: repeat-x;
		padding: 3.2vw 0;
	}

	.p-method-num {
		margin-bottom: 0;
		margin-right: .5em;
		font-size: 5vw;
		line-height: 1.2;
	}

	.p-method-text {
		margin-bottom: 0;
		font-size: 3.47vw;
		line-height: 1.7;
		min-height: inherit;
	}

	.p-recipe_detailbox {
		flex-direction: column-reverse;
		margin-bottom: 2%;
	}

}


/*bnr_mugen*/
.bnr_mugen {
	width: 100%;
	margin: 75px 0 50px;
}

.bnr_mugen a {
	display: block;
	cursor: pointer;
	background: #fff;
}

.bnr_mugen a:hover {
	opacity: 1;
}

.bnr_mugen a img {
	transition: .3s ease;
}

.bnr_mugen a:hover img {
	opacity: .75;
}

@media screen and (max-width: 768px) {
	.bnr_mugen {
		width: 78.666vw;
		margin: 5vw auto 0;
	}
}

/* footer
--------------------------------*/
footer {
	width: 100%;
	background-color: #fff;
}

footer .wrap {
	width: 100%;
	max-width: 1090px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

footer .f_bottom {
	padding: 15px 0;
}

footer .f_bottom p {
	margin: 0;
	color: #231815;
	line-height: 1;
	font-size: .8rem;
	letter-spacing: 0.1em;
}

footer .f_bottom p a {
	color: #231815 !important;
}

footer .f_bottom p a:hover {
	text-decoration: underline;
}

footer .f_bottom .link_top {
	line-height: 1;
	display: flex;
	align-items: center;
}

footer .f_bottom .link_top span {
	margin-right: 1.2em;
}

footer .f_bottom .copyright {
	font-size: .9rem;
}

@media screen and (max-width: 768px) {
	footer {
		padding-bottom: 22vw;
	}

	footer .wrap {
		width: 90%;
		display: block;
	}

	footer .f_bottom {
		padding: 5vw 0 3vw;
	}

	footer .f_bottom p {
		font-size: 2.4vw;
	}

	footer .f_bottom .link_top {
		margin-bottom: 3vw;
	}

	footer .f_bottom .link_top img {
		width: 41vw;
	}

	footer .f_bottom .link_top span img {
		width: 17.07vw;
	}

	footer .f_bottom .copyright {
		font-size: 2.67vw;
		margin-bottom: 1vw;
	}
}

/* bnr_mugen用
--------------------------------*/
@media screen and (min-width: 769px) {
	.fixed_bnr_mugen {
		width: 11.2%;
		max-width: 160px;
		position: fixed;
		top: calc(54px + 1vw);
		right: 1vw;
		z-index: 100;
	}

	.fixed_bnr_mugen a {
		display: block;
		cursor: pointer;
		position: relative;
	}

	.fixed_bnr_mugen a:hover {
		opacity: 1;
	}

	.fixed_bnr_mugen a::before {
		content: "";
		width: 100%;
		height: 100%;
		background: url(../img/bnr_mugen_s_bg.png) no-repeat center bottom / 100% auto;
		position: absolute;
		left: 0;
		bottom: 0;
		opacity: 0;
		transition: .3s ease;
		z-index: 1;
	}

	.fixed_bnr_mugen a:hover::before {
		opacity: .5;
	}
}

@media screen and (max-width: 768px) {
	.fixed_bnr_mugen {
		width: 100vw;
		max-width: inherit;
		height: 25.333vw;
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		transform: translateY(0);
		opacity: 1;
		visibility: visible;
		z-index: 100;
		transition: transform .6s ease, opacity .3s ease;
	}

	.fixed_bnr_mugen.is-hide {
		transform: translateY(100%);
		opacity: 0;
		visibility: hidden;
	}

}

/* 印刷用
--------------------------------*/

@media print {
	#header {
		position: absolute;
	}

	a[href]:after {
		content: "" !important;
	}

	abbr[title]:after {
		content: "" !important;
	}

	.fixed_bnr_mugen {
		display: none !important;
	}
}