@charset "utf-8";
/* 2025 青森りんご頒布会LP */
:where(.lp-daichi) {
		--lp-green: #f2ffe6;
		--bg-cold: #ffe664;
		--color-cv-bg: #e2c629;
		--cv-shadow: #8b7705;

		/* https://min-max-calculator.9elements.com/ :w480,960 */
		--min9max13: clamp(0.563rem, 0.313rem + 0.83vw, 0.813rem);
		--min18max20: clamp(1.125rem, 1rem + 0.42vw, 1.25rem);
		--min20max30: clamp(1.25rem, 0.625rem + 2.08vw, 1.875rem);
		--min23max27: clamp(1.438rem, 1.188rem + 0.83vw, 1.688rem);
		--min25max100: clamp(1.563rem, -3.125rem + 15.63vw, 6.25rem);
		--min28max45: clamp(1.75rem, 0.688rem + 3.54vw, 2.813rem);
		--min30max40: clamp(1.875rem, 1.25rem + 2.08vw, 2.5rem);
		--min30max50: clamp(1.875rem, 0.625rem + 4.17vw, 3.125rem);
		--min38max70: clamp(2.375rem, 0.375rem + 6.67vw, 4.375rem);
	}

	:where([class]).-aomoriApple {
		background: var(--lp-green);
	}

	.cv-area, .chart-area, .schedule-area, .voice-area {
		padding-inline: 3%;
	}

	.chart-image, .voice-item.-first {
		display: block;
		margin-top: var(--min18max20);
	}
	.cv-area {
		margin-top: var(--min20max30);
	}
	.chart-area, .schedule-area, 
	.voice-area, .voice-item.-second, 
	.voice-area + .cv-area {
		margin-top: var(--min30max50);
	}
	.schedule-bg {
		width: 106%;
		transform: translateX(-3%);
	}

	.area-head.-chart img{
		width: 98%;
	}

	.schedule-area {
		letter-spacing: .04em;
	}
	.schedule-title {
		/* max-width: 240px; */
		margin: 0 auto 15px;
		font-weight: bold;
		font-size: var(--min28max45);
		text-align: center;
		color: #642D14;
		letter-spacing: 0.04em;
	}
	.schedule-desc {
		max-width: 510px;
		display: flex;
		justify-content: space-between;
		margin: 0 auto 30px;
		gap: 2%;
		font-size: 16px;
	}
	.schedule-desc img {
		width: 80px;
		height: 40px;
	}
	.schedule-wrap {
		display: flex;
		justify-content: space-between;
	}
	.schedule-left,
	.schedule-right {
		width: 48%;
	}
	.schedule-item {
		font-size: 20px;
		font-weight: bold;
		color: #C91D0E;
		border-bottom: 1px dashed #D5D5D5;
		margin-bottom: 10px;
		box-sizing: border-box;
		padding-bottom: 20px;
	}
	.schedule-item > .rare {
		position: relative;
		padding-right: 3.4rem;
	}
	.schedule-item > .rare:after {
		content: "";
		display: block;
		width: 40px;
		height: 20px;
		background-image: url(/external/category/image/2024/aomori_apple_planz/142/rarity.png);
		background-size: contain;
		background-repeat: no-repeat;
		position: absolute;
		top: 5px;
		right: 0;
	}
	.schedule-item > .schedule {
		font-size: 16px;
		font-weight: bold;
		color: #333;
	}
	.schedule-item > .text {
		font-size: 16px;
		font-weight: 300;
		color: #333;
	}
	.area-head.-voice {
		display: block;
		max-width: 545px;
		margin-inline: auto;
	}
	.voice-item {
		display: block;
	}

	.guide-sec + .cv-area {
		margin-bottom: 50px;
	}
	.cv-area > *:not(.guide-anc) {
		background: #fff;
	}
	.dialog-opener {
		display: block;
		margin-inline: auto;
	}
	/* .farmer-area + .cv-area {
		padding-top: 0;
	} */
	.dialog-opener:hover {
		transition: all 0.7s;
		opacity: 0.7;
	}
	.cv-area .btnwrap {
		border: var(--min2max5) solid var(--cv-border);
		border-top-style: none;
		padding: 0 3.5% 3.5%;
	}
	.js-item-sales {
		padding: 0 9%;
	}
	.js-item-sales .item-summary .info .cart .add-to-cart.registration fieldset .button {
		width: 100%;
		max-width: 529px;
		filter: none;
		background-color: var(--color-cv-bg);
		box-shadow: 0 6px 0 var(--cv-shadow);
		border-radius: 15px;
		padding-block: 16px 10px;
		transition: all .7s;
		margin: 10px auto 0;
		text-align: center;
		letter-spacing: 0.15rem;
	}
	.js-item-sales .item-summary .info .cart .add-to-cart.registration fieldset .button > span {
		font-size: var(--min23max27);
		background: none;
		padding: 0;
		margin: 0;
		display: grid;
		grid-template-columns: auto 1fr;
		column-gap: 8px;
		color: #242424;
		align-items: center;
	}
	.js-item-sales .item-summary .info .cart .add-to-cart.registration fieldset .button > span::before {
		content: "";
		display: block;
		width: 30px;
		aspect-ratio: 17 / 15;
		background: url(/assets/img/icon_reserve-renewal.png) no-repeat;
		background-size: contain;
	}
	.js-item-sales .item-summary .info .cart .add-to-cart.registration fieldset .button:hover {
		transition: all .7s;
		box-shadow: 0 2px 0 var(--cv-shadow);
		transform: translateY(6px);
	}
	.special-note {
		display: none;
	}
	.cv-list {
		display: block;
		width: calc(100% - var(--min25max100));
		max-width: 695px;
		margin: var(--min20max30) auto 0;
		color: #333;
		font-size: var(--min9max13);
		line-height: 1.7;
		font-weight: bold;
	}
	.cold-mark {
		display: inline-block;
		background: var(--bg-cold);
		line-height: 1;
		margin-left: .6%;
		padding: .6% .8% .2%;
	}

	@media (max-width: 768px) {
		.schedule-wrap {
			display: block;
			width: 100%;
		}
		.schedule-left,
		.schedule-right {
			width: 100%;
		}
		.schedule-item {
			width: 100%;
		}
	}
	@media (max-width: 480px) {
		.schedule-title {
			/* max-width: 224px; */
			margin: 0 auto 15px;
    }
    .schedule-desc {
			max-width: 355px;
			margin: 0 auto 30px;
			font-size: 16px;
    }
		.schedule-desc p {
			max-width: 285px;
    }
		.cv-area .btnwrap {
			padding-bottom: 6.5%;
		}
	}