/* CSS Document */

#main{
	margin-bottom: clamp(24px, calc(56 / 1200 * 100dvw), 56px);
}

#detail{
	display: grid;
	grid-template-columns: 1fr var(--wrap) 1fr;
	&:before{
		content: "";
		grid-column: 1 / 4;
		grid-row: 1;
		background: var(--color-theme) url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none" viewBox="0 0 1366 400"><path fill="white" opacity="0.1" d="M1366,23.59c-49.72-11.77-99.48-14.67-129.8-13.61-72.45,2.53-178.28,33.01-293.37,99-115.09,66-225.53,101.23-331.84,117.95-106.31,16.72-223.2,3.97-276.26-12.54s-163.7-59.58-216.27-89.37C118.46,125.02,65.87,92.63,0,85.07v262.08c42.97,5.38,91.05,1.56,142.21-15.86,145.25-49.45,176.76-76.57,288.31-79.7,111.56-3.13,200.19,20.55,289.72,42.68,89.53,22.12,389.57,114.18,563.27,86.69,29.99-4.75,57.55-11.84,82.48-20.89V23.59Z"/></svg>') no-repeat center -24px / max(640px, 100%) clamp(240px, calc(400 / 1200 * 100dvw), 400px);
	}
	&>*{
		grid-column: 2;
	}
	& h2{
		grid-row: 1;
		display: grid;
		grid-template-columns: auto 1fr;
		margin: clamp(24px, calc(32 / 1200 * 100dvw), 32px) 0;
		column-gap: 0.5em;
		color: #fff;
		font-weight: 700;
		font-size: clamp(24px, calc(32 / 768 * 100dvw), 32px);
		&:before{
			content: attr(data-kana);
			grid-column: 2;
			font-size: clamp(12px, calc(15 / 768 * 100dvw), 15px);
		}
		&:after{
			content: "";
			grid-column: 1;
			grid-row: 2;
			aspect-ratio: 1;
			width: 1em;
			background: currentColor;
			transform: translateY(calc(0.875em - 50%));
			-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M220.66,268.85c21.7,0,39.29-17.59,39.29-39.3s-17.59-39.29-39.29-39.29-39.3,17.59-39.3,39.29,17.59,39.3,39.3,39.3ZM442.58,73.76v-34.71H0v364.48h34.72V73.76h407.87ZM69.42,108.47v364.48h442.58V108.47H69.42ZM477.29,438.23H104.13V143.18h373.16v295.06ZM351.33,248.98c-3.59-5.44-9.67-8.71-16.18-8.7-6.52,0-12.59,3.29-16.17,8.73l-62.43,95.01-34.46-39.05c-3.99-4.53-9.88-6.93-15.9-6.5-6.03.42-11.5,3.64-14.82,8.69l-57.83,88.11h314.36l-96.56-146.29Z"/></svg>') no-repeat center / contain;
		}
	}
	#text{
		justify-self: center;
		width: min(100%, 720px);
		margin-top: clamp(32px, calc(64 / 1200 * 100dvw), 64px);
	}
	#photo{
		grid-row: 2;
		margin-top: clamp(32px, calc(72 / 1200 * 100dvw), 72px);
	}
	#status{
		grid-row: 3;
		margin-top: clamp(32px, calc(72 / 1200 * 100dvw), 72px);
	}
	#cart{
		margin-top: clamp(32px, calc(72 / 1200 * 100dvw), 72px);
	}
	@media (min-width: 992px) {
		#photo{
			width: 50%;
		}
		#status{
			grid-row: 2;
			justify-self: end;
			width: min(calc(50% - 56px));
		}
	}
}

#text{
	font-weight: 500;
}

#photo{
	& img{
		aspect-ratio: 3 / 2;
		object-fit: contain;
		background: #eee;
		border-radius: 10px;
	}
}

#status{
	& dl{
		display: grid;
		background: #f7f7f7;
		border: 1px solid var(--color-theme);
		border-radius: 10px;
		overflow: hidden;
	}
	& dt,
	& dd{
		padding: 16px 24px;
		font-weight: 500;
		&:nth-of-type(even){
			background: #efefef;
		}
	}
	& dt{
		display: grid;
		grid-template-columns: auto 1fr;
		column-gap: 0.75em;
		&:before{
			content: "";
			width: 3px;
			height: 1em;
			background: var(--color-theme);
			transform: translateY(calc(0.875em - 50%));
		}
		&:nth-of-type(n+2){
			border-top: 1px solid #e8e8e8;
		}
	}
	@media (max-width: 575.98px) {
		& dd{
			padding-top: 0;
		}
	}
	@media (min-width: 576px) {
		& dl{
			grid-template-columns: auto 1fr;
		}
		& dt{
			min-width: 10em;
		}
		& dd{
			&:nth-of-type(n+2){
				border-top: 1px solid #e8e8e8;
			}
		}
	}
}

#cart{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	grid-gap: 16px 40px;
	& a{
		display: grid;
		align-items: center;
		min-width: min(100%, 320px);
		min-height: clamp(48px, calc(56 / 768 * 100dvw), 56px);
		padding: 4px 16px;
		border: 1px solid currentColor;
		border-radius: clamp(24px, calc(28 / 768 * 100dvw), 28px);
		color: var(--color-theme);
		font-weight: 700;
		font-size: clamp(16px, calc(18 / 768 * 100dvw), 18px);
		letter-spacing: 0.05em;
		text-align: center;
		text-decoration: none;
		&[data-id]{
			grid-template-columns: auto 1fr;
			background: var(--color-theme);
			color: #fff;
			&:before{
				content: "";
				aspect-ratio: 1;
				width: 16px;
				background: currentColor;
				-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m17.5 11c2.484 0 4.5 2.016 4.5 4.5s-2.016 4.5-4.5 4.5-4.5-2.016-4.5-4.5 2.016-4.5 4.5-4.5zm.5 4v-1.5c0-.265-.235-.5-.5-.5s-.5.235-.5.5v1.5h-1.5c-.265 0-.5.235-.5.5s.235.5.5.5h1.5v1.5c0 .265.235.5.5.5s.5-.235.5-.5c0-.592 0-1.5 0-1.5h1.5c.265 0 .5-.235.5-.5s-.235-.5-.5-.5c-.592 0-1.5 0-1.5 0zm-6.479 1c.043.522.153 1.025.321 1.5h-9.092c-.414 0-.75-.336-.75-.75s.336-.75.75-.75zm1.106-4c-.328.456-.594.96-.785 1.5h-9.092c-.414 0-.75-.336-.75-.75s.336-.75.75-.75zm7.373-3.25c0-.414-.336-.75-.75-.75h-16.5c-.414 0-.75.336-.75.75s.336.75.75.75h16.5c.414 0 .75-.336.75-.75zm0-4c0-.414-.336-.75-.75-.75h-16.5c-.414 0-.75.336-.75.75s.336.75.75.75h16.5c.414 0 .75-.336.75-.75z"/></svg>') no-repeat center / contain;
			}
			&.deleteCart{
				background: #ddd;
				color: inherit;
				&:before{
					-webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m17.5 11c2.484 0 4.5 2.016 4.5 4.5s-2.016 4.5-4.5 4.5-4.5-2.016-4.5-4.5 2.016-4.5 4.5-4.5zm-5.979 5c.043.522.153 1.025.321 1.5h-9.092c-.414 0-.75-.336-.75-.75s.336-.75.75-.75zm3.704-.024 1.442 1.285c.095.085.215.127.333.127.136 0 .271-.055.37-.162l2.441-2.669c.088-.096.131-.217.131-.336 0-.274-.221-.499-.5-.499-.136 0-.271.055-.37.162l-2.108 2.304-1.073-.956c-.096-.085-.214-.127-.333-.127-.277 0-.5.224-.5.499 0 .137.056.273.167.372zm-2.598-3.976c-.328.456-.594.96-.785 1.5h-9.092c-.414 0-.75-.336-.75-.75s.336-.75.75-.75zm7.373-3.25c0-.414-.336-.75-.75-.75h-16.5c-.414 0-.75.336-.75.75s.336.75.75.75h16.5c.414 0 .75-.336.75-.75zm0-4c0-.414-.336-.75-.75-.75h-16.5c-.414 0-.75.336-.75.75s.336.75.75.75h16.5c.414 0 .75-.336.75-.75z"/></svg>');
				}
				&:hover:before{
					-webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m17.495 11c2.484 0 4.5 2.016 4.5 4.5s-2.016 4.5-4.5 4.5c-2.483 0-4.5-2.016-4.5-4.5s2.017-4.5 4.5-4.5zm-5.979 5c.043.522.153 1.025.321 1.5h-9.092c-.414 0-.75-.336-.75-.75s.336-.75.75-.75zm6.686-.5s.642-.642 1.061-1.061c.188-.187.188-.519 0-.707-.188-.187-.52-.187-.707 0-.419.419-1.061 1.061-1.061 1.061s-.641-.642-1.06-1.061c-.188-.187-.52-.187-.707 0-.188.188-.188.52 0 .707.418.419 1.06 1.061 1.06 1.061s-.642.642-1.06 1.061c-.188.187-.188.519 0 .707.187.187.519.187.707 0 .419-.419 1.06-1.061 1.06-1.061s.642.642 1.061 1.061c.187.187.519.187.707 0 .188-.188.188-.52 0-.707-.419-.419-1.061-1.061-1.061-1.061zm-5.579-3.5c-.329.456-.595.96-.786 1.5h-9.092c-.414 0-.75-.336-.75-.75s.336-.75.75-.75zm7.372-3.25c0-.414-.336-.75-.75-.75h-16.5c-.414 0-.75.336-.75.75s.336.75.75.75h16.5c.414 0 .75-.336.75-.75zm0-4c0-.414-.336-.75-.75-.75h-16.5c-.414 0-.75.336-.75.75s.336.75.75.75h16.5c.414 0 .75-.336.75-.75z"/></svg>');
				}
			}
			&.limit{
				background: #ccc;
				pointer-events: none;
			}
		}
		&.cart{
			grid-template-columns: 1fr auto;
			&:before,
			&:after{
				content: "";
				grid-column: 2;
				grid-row: 1;
				aspect-ratio: 1;
				width: 16px;
			}
			&:before{
				background: currentColor;
				border-radius: 100%;
			}
			&:after{
				background: #fff;
				-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" style="fill: none; stroke: black; stroke-width: 1.5px;"><polyline points="6.25 11.5 9.75 8 6.25 4.5"/></svg>') no-repeat center / contain;
			}
		}
	}
}







