section.panel {
	@media (width < 580px) {
		padding: 20px 7%;
	}
	> div {
		max-width: 1920px;
		margin-inline: auto;
		display: grid;
		grid-template-columns: 1fr 1.2fr;
		column-gap: 20px;
		@media (width < 580px) {
			grid-template-columns: 1fr;
			row-gap: 30px;
		}
		> figure {
			&:nth-of-type(1) {
				padding-left: 7%;
				align-self: center;
				@media (width < 580px) {
					display: none;
				}
			}
			&:nth-of-type(2) {
				background-color: #fff;
				padding: 10px;
				border-radius: 10px;
				margin-right: -15px;
				justify-self: end;
				@media (width < 580px) {
					margin-right: 0px;
				}
			}
			@media (width < 580px) {
				justify-self: center;
			}
			> img {
				max-width: 100%;
				border-radius: 8px;
			}
		}
	}
}
section.comingsoon {
	padding: 80px 7% 80px 7%;
	> div {
		max-width: 800px;
		margin-inline: auto;
		background-color: #c39d9e;
		padding-block: 50px;
		padding-inline: 10px;
		> p {
			font-size: 1.1rem;
			line-height: 1.4;
			color: #fff;
			text-align: center;
		}
	}
}
section.button {
	padding: 80px 7% 80px 7%;
	&.bg_fff {
		background-color: #fff;
	}
	> div {
		max-width: 1000px;
		margin-inline: auto;
		> div {
			max-width: 400px;
			margin-inline: auto;
			> a {
				text-decoration: none;
				text-align: center;
				&:hover {
					opacity: 0.8;
				}
				> p {
					padding-block: 20px;
					border-radius: 60px;
					text-align: center;
					background: linear-gradient(to bottom,#9c626a, #9c626a 50%, #8F5960 50%, #8F5960);
					font-size: 1.8rem;
					line-height: 1;
					color: #fff;
					@media (width < 500px) {
						padding-block: 20px;
						border-radius: 40px;
					}
				}
			}
		}
	}
}
section.top {
	padding: 50px 7% 50px 7%;
	background-color: #fff;
	> div {
		max-width: 1000px;
		margin-inline: auto;
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		column-gap: 10px;
		@media (width < 700px) {
			grid-template-columns: repeat(1, 1fr);
			row-gap: 20px;
		}
		> div {
			> h1 {
				margin-bottom: 30px;
				font-size: 1.6rem;
				line-height: 1.6;
				color: #333;
				font-weight: 700;
				letter-spacing: 5px;
			}
			> div {
				border-bottom: 1px dotted #333;
				margin-bottom: 20px;
				> h2 {
					padding: 5px 20px;
					margin-bottom: 15px;
					background-color: #9c626a;
					font-size: 1.2rem;
					line-height: 1;
					color: #fff;
					width: 240px;
					letter-spacing: 2px;
					font-weight: 600;
				}
				> p {
					margin-bottom: 20px;
					font-size: 1.1rem;
					line-height: 1.4;
					color: #333;
					font-weight: 700;
					letter-spacing: 1px;
				}
			}
		}
		> figure {
			@media (width < 700px) {
				justify-self: center;
			}
			> img {
				max-width: 100%;
			}
		}
	}
}
section.shopstyle {
	padding: 80px 7% 40px 7%;
	background-color: #F0E6E6;
	> div {
		max-width: 1000px;
		margin-inline: auto;
		> div.title {
			text-align: center;
			padding-bottom: 60px;
			> h1 {
				font-size: 2.5rem;
				line-height: 1.8;
				color: #333;
				font-family: var(--font-en);
				font-weight: 400;
			}
			> p {
				font-size: 1.1rem;
				line-height: 1;
				color: #333;
			}
		}
		> div.content {
			display: grid;
			grid-template-columns: repeat(3, 1fr);
			column-gap: 50px;
			@media (width < 700px) {
				grid-template-columns: repeat(2, 1fr);
				column-gap: 30px;
				row-gap: 30px;
			}
			@media (width < 460px) {
				grid-template-columns: repeat(1, 1fr);
			}
			> article {
				@media (width < 700px) {
					justify-self: center;
					&:nth-of-type(3) {
						grid-area: 2/1/3/3;
						width: 50%;
					}
				}
				@media (width < 460px) {
					&:nth-of-type(3) {
						grid-area: unset;
						width: unset;
					}
				}
				> h2 {
					padding-bottom: 20px;
					font-size: 1.5rem;
					line-height: 1.0;
					color: #333;
					text-align: center;
				}
				> figure {
					> img {
						max-width: 100%;
					}
				}
				> p {
					padding-top: 10px;
					font-size: 1.0rem;
					line-height: 1.6;
					color: #333;
				}
			}
		}
		> div.royalty {
			margin-top: 40px;
			padding-block: 10px;
			border-top: 1px solid #333;
			border-bottom: 1px solid #333;
			display: flex;
			justify-content: center;
			@media (width < 730px) {
				display: block;
			}
			> p {
				text-align: center;
				font-size: 1.4rem;
				font-weight: 700;
				line-height: 1.6;
				color: #333;
				letter-spacing: 2px;
				> small {
					font-size: min(1.1rem, 5.0vw);
					font-weight: 500;
					letter-spacing: 1px;
					line-height: 1.1;
				}
			}
		}
	}
}
section.join {
	padding: 80px 7% 40px 7%;
	background-color: #fff;
	> div {
		max-width: 1000px;
		margin-inline: auto;
		> div.title {
			text-align: center;
			padding-bottom: 60px;
			> h1 {
				font-size: 2.5rem;
				line-height: 1.1;
				color: #333;
				font-family: var(--font-en);
				font-weight: 400;
			}
			> p {
				margin-top: 10px;
				font-size: 1.1rem;
				line-height: 1;
				color: #333;
			}
		}
		> p {
			text-align: center;
			font-size: min(1.1rem,5vw);
			line-height: 1.6;
			color: #333;
		}
		> div.flow {
			margin-block: 30px;
			border-top: 1px dotted #333;
			border-bottom: 1px dotted #333;
			background-color: #F5F5F5;
			padding-inline: 7%;
			> p {
				padding-block: 30px;
				text-align: center;
				font-size: 1.0rem;
				line-height: 1.6;
				color: #333;
			}
			> figure {
				padding-bottom: 50px;
				max-width: 800px;
				margin-inline: auto;
				> img {
					max-width: 100%;
				}
			}
		}
	}
}
section.together {
	padding: 0px 7% 40px 7%;
	> div {
		padding-top: 80px;
		background-image: url(./image/circle.svg);
		background-repeat: no-repeat;
		background-position: 0% 7%;
		background-size: 160px;
		max-width: 1000px;
		margin-inline: auto;
		@media (width < 940px) {
			background-position: 10vw 4.5%;
		}
		@media (width < 780px) {
			background-position: 0px 4.5%;
		}
		@media (width < 570px) {
			background-image: unset;
		}
		> h1 {
			text-align: center;
			font-size: min(2rem, 7vw);
			line-height: 1.8;
			color: #9c626a;
			letter-spacing: 4px;
		}
		> p {
			padding-top: 40px;
			text-align: center;
			font-size: min(1.1rem,5vw);
			line-height: 1.6;
			color: #333;
		}
		> figure {
			padding-top: 40px;
			max-width: 800px;
			margin-inline: auto;
			> img {
				max-width: 100%;
			}
		}
	}
}
