/* CSS Document */
.item-name{
	font-size:var(--fs36);
}
.price-list{
	font-size:var(--fs22);
}
.description-box{
	font-size:var(--fs20);
}
.spec-list{
	font-size:var(--fs18);
}

.single-menu-main {
	padding-top: 10rem;
}
.description-box,.price-list,.spec-list{
	font-family: var(--zen-kaku-gothic-new);
}
/* レイアウト */
.menu-detail-flex {
	display: flex;
	gap: 50px;
	margin-bottom: 80px;
	width: 80%;
	margin: auto;
	max-width: var(--max);
}
.menu-images-column, .menu-info-column {
	width: 50%;
}
/* スライダー部分 */
#main-view {
	width: 100%;
	height: auto;
	transition: opacity 0.3s;
	margin-bottom: 10px;
}
.sub-images {
	display: flex;
	gap: 5px;
}
.sub-images .thumb {
	width: 25%;
	cursor: pointer;
}
.sub-images img {
	width: 100%;
	object-fit: cover;
}
/* テキスト部分 */
.item-name {
	margin: 0 0 30px;
	font-weight: bold;
	line-height:1em;
	padding-bottom: 0;
	border-bottom: unset;
}
.price-list {
	margin-bottom: 30px;
}
.description-box {
	background: #f5f5f5;
	padding: 5%;
	margin-bottom: 30px;
	line-height: 1.8;
}
.description-box p{
	margin:0;
}
/* スペック表（赤いライン） */
.spec-list{
	margin-top:5rem;
}
.spec-row {
	display: flex;
}
.spec-row dt {
	width: 25%;
	border-bottom: 2px solid var(--hover-red);
	font-weight: bold;
	position: relative;
}
.spec-row dt span{
	display:inline-block;
}
.spec-row dd,.spec-row dt{
	margin-bottom: 25px;
    padding-bottom: 25px;
}
.spec-row dd{
	border-bottom: 2px solid var(--gray);
	/*padding-left: 5%;*/
	width:75%;
	margin-left: 30px;
}

/* 提供店舗リンク */
.shop-links {
	list-style: none;
	padding: 0;
}
.shop-links li a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #f2f2f2;
	padding: 10px 20px;
	border-radius: 25px;
	text-decoration: none;
	color: var(--black);
	margin-bottom: 8px;
}

/* CATEGORYセクション */
.category-section .container {
	position: relative;
	padding: 75px 0 125px;
}
.category-title {
	text-align: center;
	margin-bottom: 40px;
	color: #b33e3e;
}
.category-title span {
	vertical-align: middle;
}
/*.category-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.cat-card {
    display: flex; justify-content: space-between; align-items: center;
    padding: 20px; border: 1px solid #333; text-decoration: none; color: #333;
    font-weight: bold; border-radius: 5px;
}
.cat-card .arrow { 
    width: 20px; height: 20px; border-radius: 50%; background: #333; color: #fff;
    display: flex; align-items: center; justify-content: center; font-size: 10px;
}
.cat-card .arrow::after { content: "▶"; transform: scale(0.7); }*/
/* 戻るボタン */
.back-to-list {
	text-align: center;
	width: 80%;
	max-width: 400px;
	margin: 75px auto auto;
}

@media(max-width:1000px){
	.menu-info-column {
		width:80%;
		margin: auto;
	}
	.menu-detail-flex {
		display: block;
		width:100%;
	}
	.menu-images-column{
		width: 80%;
		margin: auto auto 50px;
	}
}
@media(max-width:767px){
	.single-menu-main {
		padding-top: 0;
	}
	.menu-images-column{
		width: 100%;
	}
	.menu-info-column{
		width:90%;
		margin: auto auto 5rem;
	}
	.item-name,.price-list,.spec-list{
		width:90%;
		margin-right: auto;
		margin-left: auto;
	}
	
	.shop-links li:last-of-type a{margin-bottom:0;}
}

@media(max-width:600px){
	.spec-row{
		display:block;
		border-bottom: 2px solid; 
		border-image: linear-gradient(to right, var(--hover-red) 20%, var(--gray) 20%);
		border-image-slice: 1;
		padding-bottom: 20px;
		margin-bottom: 20px;
	}
	.spec-row dt,.spec-row dd{
		border-bottom:unset;
		margin-bottom: 0;
		padding-bottom:0;
		width:100%;
	}
	.spec-row dt{
	}
	.spec-row dd{
		margin-left: 0;
	}
	.shop-links li a {
		padding: 5px 20px;
	}
	.shop-links{margin-top:10px;}
	.menu-info-column {
		margin: auto auto 7.5rem;
	}
	.shop-card-btn {
		aspect-ratio: 6 / 1;
	}
	.back-to-list {
		margin: 50px auto auto;
	}
	.category-section .container {
		padding: 75px 0 50px;
	}
	.spec-list {
		margin-top: 3rem;
	}
}
@media (max-width: 450px){
	.shop-card-btn {
		aspect-ratio: 6 / 1;
	}
}