section.panel {
	> div {
		> figure {
			> img {
				width: 100%;
			}
		}
	}
}
section.breadcrumbs {
	background-color: #f6f6f6;
}
section.top {
	padding: 60px 5% 60px 5%;
	> div {
		max-width: 800px;
		margin-inline: auto;
		> h2 {
			font-size: min(3.0rem, 8vw);
			line-height: 1.3;
			color: #333;
			font-weight: 900;
			letter-spacing: 0.05em;
			text-align: center;
			font-family: var(--font-serif2);
		}
		> h3 {
			font-size: min(1.2rem, 5.5vw);
			line-height: 1.2;
			color: #333;
			font-weight: 900;
			letter-spacing: 0.1em;
			text-align: center;
			font-family: var(--font-serif2);
		}
		> p {
			padding-top: 30px;
			font-size: min(1.1rem, 5vw);
			line-height: 2.2;
			color: #333;
			font-weight: 900;
			text-align: justify;
		}
	}
}
section.favorite {
	padding: 50px 5% 0px 5%;
	> div {
		max-width: 1000px;
		margin-inline: auto;
		> h2 {
			font-size: min(2.5rem, 8vw);
			line-height: 1.2;
			color: #333;
			font-weight: 900;
			font-family: var(--font-serif2);
		}
		> h4 {
			padding-top: 20px;
			font-size: min(1.0rem, 5vw);
			line-height: 1.4;
			color: #333;
			font-weight: 900;
			font-family: var(--font-serif2);
		}
		> h3 {
			padding-top: 40px;
			font-size: min(1.4rem, 6vw);
			line-height: 1.2;
			color: #333;
			font-weight: 900;
			font-family: var(--font-serif2);
		}
		> p {
			padding-top: 20px;
			font-size: min(1.0rem, 5vw);
			line-height: 1.6;
			color: #333;
			font-weight: 600;
			text-align: justify;
		}
		> div {
			padding-top: 60px;
			display: grid;
			grid-template-columns: 1fr 1fr;
			column-gap: 40px;
			row-gap: 40px;
			@media (width < 780px) {
				grid-template-columns: 1fr;
			}
			> figure {
				> img {
					max-width: 100%;
				}
			}
		}
	}
}
section.block {
	padding: 80px 5% 0px 5%;
	> div {
		max-width: 1000px;
		margin-inline: auto;
		display: grid;
		grid-template-columns: 1fr 1fr;
		column-gap: 40px;
		row-gap: 40px;
		@media (width < 890px) {
			grid-template-columns: 1fr;
			row-gap: 60px;
		}
		> article {
			> h2 {
				padding-bottom: 10px;
				font-size: min(2.4rem, 8vw);
				line-height: 1.0;
				color: #333;
				font-weight: 900;
				font-family: var(--font-serif2);
			}
			> a {
				&:hover {
					opacity: 0.7;
				}
				> div {
					display: grid;
					> figure {
						grid-area: 1/1/2/2;
						&:nth-of-type(1) {
							> img {
								max-width: 100%;
							}
						}
						&:nth-of-type(2) {
							justify-self: end;
							align-self: end;
							padding: 10px;
							> img {
								width: 60px;
							}
						}
					}
				}
			}
			> div {
				background-color: #ebebeb;
				padding: 40px 40px 50px 40px;
				@media (width < 940px) {
					padding: 30px 30px 40px 30px;
				}
				> div {
					display: flex;
					justify-content: space-between;
					align-items: end;
					border-bottom: 1px solid #333;
					padding-bottom: 15px;
					column-gap: 10px;
					> h4 {
						font-size: min(1.5rem, 5.0vw);
						line-height: 1.0;
						color: #333;
						font-weight: 900;
						font-family: var(--font-serif2);
					}
					> h3 {
						font-size: min(2.3rem, 7vw);
						line-height: 1.0;
						color: #333;
						font-weight: 900;
						font-family: var(--font-serif2);
						> small {
							font-size: min(1.4rem, 5.5vw);
						}
					}
				}
				> p {
					padding-top: 20px;
					font-size: min(1.0rem, 5vw);
					line-height: 1.0;
					color: #333;
					font-weight: 600;
				}
			}
		}
	}
}
section.choice {
	padding: 40px 5% 60px 5%;
	> div {
		max-width: 1000px;
		margin-inline: auto;
		> h3 {
			padding-top: 30px;
			font-size: min(1.6rem, 6vw);
			line-height: 1.8;
			color: #5a7837;
			font-weight: 900;
			font-family: var(--font-serif2);
			text-align: justify;
		}
		> p {
			font-size: min(1.4rem, 5.5vw);
			line-height: 1.6;
			color: #333;
			font-weight: 900;
			font-family: var(--font-serif2);
			text-align: justify;
		}
	}
}
