@charset "UTF-8";
#page_wrapper {
	&.res {
		width:100%;
		padding:0;
		overflow:clip;
	}
	.wrap {
		.contents {
			max-width:1000px;
			width:calc(100% - 100px);
			margin:0 auto;
			li {
				list-style:none;
			}
		}
	}
	#page_sale2025 {
		#sale_mv {
			.wrap {
				background-color:#ff7f66;
				padding:4em 0;
				.contents {
					max-width:1100px;
					p {
						color:#FFFFFF;
						text-align:center;
						font-weight:600;
						font-size:1.66em;
						line-height:1.6;
					}
				}
			}
		}
		#sale {
			.wrap {
				background-color:#fff4c7;
				padding:3.5em 0 3em;
				.contents {
					max-width:900px;
					h2 {
						margin-bottom:1.5em;
					}
					& > p {
						padding:0 2em;
						font-size:1.3em;
						line-height:1.5;
						font-weight:500;
						&.caption {
							font-size:1.1em;
							padding-top:1em;
							span {
								color:#e95377;
								font-weight:600;
							}
						}
					}
					.contents_inner {
						background-color:#FFFFFF;
						padding:2em 3em;
						display:grid;
						grid-template-columns:18% 1fr;
						grid-column-gap:5%;
						align-items:center;
						position:relative;
							margin-top:3.5em;
						.img {
							padding-top:1em;
							.label {
								position:absolute;
								width:7em;
								height:7em;
								z-index:1;
								left:-2em;
								top:-2em;
							}
						}
						.detail {
							h3 {
								margin-bottom:1em;
							}
							p {
								margin-right:-1em;
							}
							ul {
								li {
									text-indent:-1em;
									padding-left:1em;
									padding-right:1em;
								}
							}
						}
					}
				}
			}
		}
		#sale_products {
			.wrap {
				padding:4em 0 8em;
				.contents {
					.caution {
						border:8px solid #e95377;
						max-width:900px;
						margin:0 auto 7em;
						padding:3em 3.5em;
						dt {
							width:80%;
							margin:0 auto 3em;
						}
						dd {
							ul {
								font-size:1.3em;
								display:grid;
								grid-row-gap:.66em;
								li {
									display:grid;
									grid-template-columns:1.2em 1fr;
									grid-column-gap:.66em;
									font-weight:600;
									line-height:1.6;
									img {
										transform:translateY(.3em);
									}
								}
							}
						}
					}
					& > h2 {
						width:54%;
						margin:0 auto 5em;
					}
					.contents_inner {
						display:grid;
						grid-template-columns:repeat(3,1fr);
						grid-gap:4em 5%;
						&:not(:last-child) {
							margin-bottom:8em;
						}
						.item {
							.pimg {
								padding-bottom:1.5em;
								h3 {
									width:66%;
									margin:0 auto 1.5em;
								}
								p {
									margin-bottom:1.5em;
								}
								a {
									&.nolink {
										pointer-events:none;
									}
								}
							}
							.infobox {
								border-top:2px solid #60553e;
								border-bottom:2px solid #60553e;
								padding-top:1em;
								font-size:.9em;
								h4 {
									text-indent:-.5em;
									margin-bottom:.25em;
									span {
										color:#60abb1;
									}
								}
								& > dt {
									text-indent:-.5em;
									border-top:2px dotted #60553e;
									padding:.5em .25em .5em 0;
									margin-top:.66em;
									display:grid;
									grid-template-columns:1fr 1em;
									grid-column-gap:.5em;
									align-items:center;
									cursor:pointer;
									h4 {
										margin-bottom:0;
									}
									.plus {
										height:1em;
										position:relative;
										&::before,&::after {
											content:'';
											display:block;
											width:100%;
											height:2px;
											background-color:#60553e;
											position:absolute;
											top:50%;
											left:50%;
											transform:translate(-50%,-50%) rotate(0deg);
											transition:.3s;
										}
										&::after {
											transform:translate(-50%,-50%) rotate(90deg);
										}
									}
									&.open {
										.plus {
											&::before {
												transform:translate(-50%,-50%) rotate(90deg);
												opacity:0;
											}
											&::after {
												transform:translate(-50%,-50%) rotate(180deg);
											}
										}
									}
								}
								& > dd {
									&:last-child {
										display:none;
										padding-bottom:1.5em;
									}
									p {
										line-height:1.4;
										&:not(:last-child) {
											margin-bottom:1em;
										}
										&.limit {
											font-size:.9em;
										}
									}
									dl {
										display:grid;
										grid-template-columns:auto 1fr auto;
										grid-column-gap:.5em;
										align-items:center;
										&::after {
											content:'';
											order:1;
											border-bottom:2px dotted #60553e;
											opacity:.66;
										}
										dd {
											order:2;
										}
										&:has( + h4) {
											margin-bottom:1.5em;
										}
									}
								}
							}
						}
					}
				}
			}
		}
	}
}


@media (max-width: 1024px) {
	
	#page_wrapper {
		#page_10th {
			.contents {
				width:calc(100% - 60px);
			}
		}
	}
	
}


@media (max-width: 768px) {
	
	#page_wrapper {
		.wrap {
			.contents {
				width:84%;
			}
		}
		#page_sale2025 {
			#sale_mv {
				.wrap {
					padding:3em 0;
					.contents {
						p {
							font-size:1.2em;
							margin:0 -1em;
						}
					}
				}
			}
			#sale {
				.wrap {
					padding:3em 0;
					.contents {
						& > p {
							padding:0;
							font-size:1.2em;
							&.caption {
								font-size:1em;
							}
						}
						.contents_inner {
							padding:2em;
							grid-template-columns:25% 1fr;
							.img {
								padding-top:0;
								.label {
									width:6em;
									height:6em;
								}
							}
							.detail {
								display:contents;
								h3 {
									margin-bottom:0;
								}
								p {
									margin-right:0;
									grid-area:2/1/3/3;
									padding-top:1.5em;
								}
								ul {
									grid-area:3/1/4/3;
								}
							}
						}
					}
				}
			}
			#sale_products {
				.wrap {
					padding:3em 0 5em;
					.contents {
						.caution {
							border:5px solid #e95377;
							margin:0 auto 5em;
							padding:2em 1.5em;
							font-feature-settings:'palt';
							dt {
								width:100%;
								margin:0 auto 2em;
							}
							dd {
								ul {
									font-size:1em;
								}
							}
						}
						& > h2 {
							width:84%;
							margin:0 auto 4em;
						}
						.contents_inner {
							grid-template-columns:1fr;
							&:not(:last-child) {
								margin-bottom:5em;
							}
							.item {
								.pimg {
									padding-bottom:1.5em;
									display:grid;
									grid-template-columns:38% 1fr;
									h3 {
										width:100%;
										margin:0 auto;
									}
									p {
										margin-bottom:1.5em;
									}
									a {
										grid-area:2/1/3/3;
										background:url(./img/outletsale2025/btn01bg.png) repeat-x center center/auto 100%;
										img {
											display:block;
											width:75%;
											margin:0 auto;
										}
										&.nolink {
											background:url(./img/outletsale2025/btn02bg.png) repeat-x center center/auto 100%;
										}
									}
								}
								.infobox {
									border-top:1px solid #60553e;
									border-bottom:1px solid #60553e;
									padding-top:1em;
									font-size:1em;
									& > dt {
										padding:.75em .25em .75em 0;
									}
								}
							}
						}
					}
				}
			}
		}
		#page_food_btm {
			h3 {
				font-size:1.3em;
			}
			ol {
		        display: grid;
		        grid-template-columns: repeat(2, 1fr);
		        grid-gap: 20px 4%;
				li {
					width:100%;
					h4 {
						font-size:1.1em;
					}
				}
		    }
		}
	}

}