@charset "UTF-8";

/* --------------------------------------------------------------------------------------
	キービジュアル
--------------------------------------------------------------------------------------- */

.top-key-image {
	background: #000 url(../img/top/key-image.png) no-repeat center top / cover;
	color: #fff;
	min-height: 990px;
	padding-top: 90px;
	position: relative;
}

@media (min-width: 1680px) {
	.top-key-image { min-height: 55.333vw; }
}

.top-key-image .inner {
	text-align: center;
	z-index: auto;
}

.top-key-image h2 { font-weight: var(--Bold); }

.top-key-image h3 {
	font-family: var(--font-Antonio);
	font-size: 72px;
	font-weight: var(--Bold);
	line-height: 1.2;
	margin-top: 16px;
}

.top-key-image h4 {
	font-size: 24px;
	font-weight: var(--Bold);
	left: 11px;
	line-height: 1;
	margin-top: 20px;
	position: relative;
}

.top-key-image .period {
	display: inline-block;
	margin-left: auto;
	margin-right: auto;
	margin-top: 28px;
}

.top-key-image dl {
	align-items: center;
	border: 1px solid #fff;
	border-radius: 6px;
	display: flex;
	margin-left: auto;
	margin-right: auto;
	overflow: hidden;
	width: 100%;
}

.top-key-image dl:nth-of-type(n+2) { margin-top: 8px; }

.top-key-image dt,
.top-key-image dd {
	font-weight: var(--Bold);
	padding: 4px 18px;
	white-space: nowrap;
}

.top-key-image dt {
	background-color: rgba(255, 255, 255, .2);
	font-size: 14px;
	min-height: 32px;
	text-align: center;
	width: 200px;
}

.top-key-image .banner-area { margin-top: 32px; }

.top-key-image .banner-area ul {
	display: flex;
	gap: 20px;
	justify-content: center;
	margin-top: 32px;
}

.top-key-image .wine-photo-section {
	align-items: flex-end;
	display: flex;
	justify-content: center;
	margin-top: 38px;
	overflow: hidden;
}

.top-key-image .wine-photo-section .item {
	animation: serveDrink 1.8s cubic-bezier(0.1, 0.7, 0, 1) forwards,sparkle-once 1.6s ease-out;
	opacity: 0;
	transform: translateX(-50px);
}

@keyframes serveDrink {
	to {
		opacity: 1;
		transform: translateX(0);
	}
}

@keyframes sparkle-once {
	0% {
		filter: brightness(1);
	}
	30% {
		filter: brightness(1.8);
	}
	100% {
		filter: brightness(1);
	}
}

.top-key-image .wine-photo-section .wine-photo-01 {
	animation-delay: 0s, 1.3s;
	max-width: 136px;
}

.top-key-image .wine-photo-section .wine-photo-02 {
	animation-delay: 0.1s, 1.3s;
	margin-left: 50px;
	max-width: 156px;
}

.top-key-image .wine-photo-section .wine-photo-03 {
	animation-delay: 0.2s, 1.3s;
	margin-left: 38px;
	max-width: 179px;
}

.top-key-image .wine-photo-section .wine-photo-04 {
	animation-delay: 0.3s, 1.3s;
	margin-left: 28px;
	max-width: 166px;
}

.top-key-image .wine-photo-section > div img { mix-blend-mode: hard-light; }

.banner-award {
	max-width: 300px;
	position: fixed;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	transition: all .3s ease-in-out;
	z-index: 20;
}

.banner-award .close {
	align-items: center;
	background-color: #000;
	border-radius: 100vw;
	color: #fff;
	cursor: pointer;
	display: flex;
	font-size: 13px;
	height: 26px;
	justify-content: center;
	left: -12px;
	position: absolute;
	top: -10px;
	width: 26px;
}

@media (max-width: 1099px) {

	.top-key-image {
		min-height: 100svh;
		padding-top: 19.333vw;
	}

	.top-key-image h2 { font-size: 3.483vw; }

	.top-key-image h3 {
		font-size: 9.95vw;
		margin-top: 2.488vw;
	}

	.top-key-image h4 {
		font-size: 3.731vw;
		margin-top: 2.985vw;
	}

	.top-key-image .period {
		margin: 4.975vw 4.975vw 0;
		min-height: 6.333vw;
	}

	.top-key-image dt,
	.top-key-image dd { padding: 0.995vw 2.488vw; }

	.top-key-image dt {
		font-size: 2.985vw;
		min-height: 6.333vw;
		width: 36.876vw;
	}

	.top-key-image dd { font-size: 2.985vw; }

	.top-key-image .banner-area { margin-top: 8.975vw; }

	.top-key-image .banner-area ul {
		display: inline-flex;
		flex-direction: column;
		gap: 2.975vw;
		margin-top: 2.975vw;
	}

	.top-key-image .wine-photo-section { margin: 13.97vw 4.975vw 0; }

	.top-key-image .wine-photo-section .wine-photo-01 { max-width: 33.831vw; }

	.top-key-image .wine-photo-section .wine-photo-02 {
		margin-left: 6.219vw;
		max-width: 38.806vw;
	}

	.top-key-image .wine-photo-section .wine-photo-03 {
		margin-left: 4.726vw;
		max-width: 44.527vw;
	}

	.top-key-image .wine-photo-section .wine-photo-04 {
		margin-left: 3.483vw;
		max-width: 41.294vw;
	}

	.banner-award {
		bottom: 14.333vw;
		max-width: 69.333vw;
		top: auto;
		transform : none;
	}

	.banner-award .close {
		font-size: 10px;
		height: 20px;
		left: -10px;
		top: -8px;
		width: 20px;
	}

}

/* --------------------------------------------------------------------------------------
	Lead
--------------------------------------------------------------------------------------- */

.lead { padding-top: 80px; }

.lead .inner { text-align: center; }

.lead h2 {
	font-size: 28px;
	font-weight: var(--Bold);
}

.lead .text {
	line-height: 2.5;
	margin-top: 40px;
}

.lead .feature {
	display: flex;
	justify-content: center;
	margin-top: 80px;
}

.lead .feature .feature-column {
	background: conic-gradient(from -119deg, transparent 0%, #fff 40%, transparent 99%);
	border-radius: 100vw;
	height: 320px;
	mix-blend-mode: screen;
	padding: 1px;
	position: relative;
	width: 320px;
}

.lead .feature .feature-column::before {
	background-color: #000;
	border-radius: 50%;
	content: "";
	display: block;
	height: 100%;
	width: 100%;
}

.lead .feature .feature-column::after {
	background-color: #fff;
	border-radius: 100vw;
	content: "";
	display: block;
	height: 20px;
	position: absolute;
	width: 20px;
}

.lead .feature .feature-column:nth-of-type(1)::after { left: 6px; top: 81px; }
.lead .feature .feature-column:nth-of-type(2)::after { right: 45px; top: 31px; }
.lead .feature .feature-column:nth-of-type(3)::after { right: -4px; top: 186px; }

.lead .feature .feature-column:nth-of-type(n+2) { margin-left: -22px; }

.lead .feature .feature-column section {
	height: 100%;
	left: 0;
	padding-top: 76px;
	position: absolute;
	top: 0;
	width: 100%;
}

.english-page .lead .feature .feature-column section {
	align-items: center;
	display: flex;
	justify-content: center;
	padding-top: 0;
}

.lead .feature .feature-column section h3 {
	align-items: center;
	display: flex;
	font-family: var(--font-Antonio);
	font-size: 38px;
	font-weight: var(--Bold);
	justify-content: center;
	line-height: 1.2;
}

.lead .feature .feature-column section p {
	font-family: var(--Medium);
	letter-spacing: 1px;
	line-height: 1.6;
	margin: 20px auto 0;
	max-width: 77%;
}

@media (max-width: 1099px) {

	.lead { padding: 53.438vw 4.975vw 0; }

	.lead h2 { font-size: 4.97vw; }

	.lead .text {
		margin-top: 4.975vw;
		text-align: left;
	}

	.lead .text br { display: none; }

	.lead .feature {
		flex-wrap: wrap;
		margin-top: 8.438vw;
	}

	.lead .feature .feature-column {
		height: 47.801vw;
		width: 47.801vw;
	}

	.lead .feature .feature-column:nth-of-type(1) { margin-bottom: -10.333vw; }
	.lead .feature .feature-column:nth-of-type(n+2) { margin-left: 0; }
	.lead .feature .feature-column:nth-of-type(3) { margin-left: -5.633vw; }

	.lead .feature .feature-column::after {
		height: 3.98vw;
		width: 3.98vw;
	}

	.lead .feature .feature-column:nth-of-type(1)::after {
		left: 0.333vw;
		top: 13.333vw;
	}

	.lead .feature .feature-column:nth-of-type(2)::after {
		right: 4.333vw;
		top: 6.333vw;
	}

	.lead .feature .feature-column:nth-of-type(3)::after {
		right: -0.367vw;
		top: 30.3333vw;
	}

	.lead .feature .feature-column section { padding-top: 8.194vw; }

	.lead .feature .feature-column:nth-of-type(1) section {
		display: flex;
		flex-direction: column;
		justify-content: center;
		padding-top: 0;
	}

	.lead .feature .feature-column section h3 {
		font-size: 4.98vw;
		line-height: 1.4;
		min-height: 13.333vw;
	}

	.lead .feature .feature-column:nth-of-type(1) h3 { min-height: inherit; }

	.lead .feature .feature-column section p {
		font-size: 2.985vw;
		margin-top: 2.488vw;
		max-width: 83%;
	}

}

/* --------------------------------------------------------------------------------------
	CAMPAIGN
--------------------------------------------------------------------------------------- */

.campaign {
	background: #000 url(../img/top/campaign-bg.png) no-repeat right top;
	background-size: 1288px auto;
	color: #fff;
	min-height: 998px;
	padding-top: 112px;
}

@media (min-width: 1680px) {
	.campaign {
		background-size: 77% auto;
		min-height: 57.333vw;
	}
}

.campaign .inner {
	display: flex;
	justify-content: space-between;
}

.campaign .inner .image {
	display: flex;
	justify-content: flex-end;
	max-width: 40%;
	position: relative;
	text-align: right;
	width: 100%;
}

.campaign .inner .image > div { max-width: 312px; }

.campaign .inner .image > div:nth-of-type(2) {
	left: -208px;
	position: absolute;
	top: 101px;
}

.campaign .inner article {
	margin-right: 5%;
	max-width: 47%;
	padding-top: 28px;
	width: 100%;
}

.campaign .inner article h2 {
	font-size: 28px;
	font-weight: var(--Bold);
}

.campaign .inner article .text {
	line-height: 1.8;
	margin-top: 42px;
}

.campaign .inner article .list { margin-top: 42px; }

.campaign .inner article .list li {
	line-height: 1.8;
	padding: 20px 0 20px 42px;
	position: relative;
}

.campaign .inner article .list li::after {
	background: url(../img/top/icon-check.svg) no-repeat;
	background-size: 100% auto;
	content: "";
	height: 12px;
	left: 11px;
	position: absolute;
	top: 28px;
	width: 12px;
}

.campaign .inner article .list li:nth-of-type(n+2) { border-top: 1px solid var(--color-border); }

.campaign .inner article .list li dl { display: flex; }

.campaign .inner article .list li dt { line-height: 1.8; }

.campaign .inner article .list li dd {
	margin-left: 10px;
	padding-left: 66px;
	position: relative;
}

.campaign .inner article .list li dd::before {
	border-top: 1px solid var(--color-border);
	content: "";
	display: block;
	left: 0;
	position: absolute;
	top: 12px;
	width: 54px;
}

.campaign .inner article .list li dd p {
	line-height: 1.7;
	position: relative;
}

.campaign .inner article .list li dd p:nth-of-type(n+2) { margin-top: 4px; }

.campaign .inner article .list li dd p::before {
	border-bottom: 1px solid var(--color-border);
	border-left: 1px solid var(--color-border);
	content: "";
	display: block;
	height: calc(100% + 5px);
	left: -23px;
	position: absolute;
	top: 13px;
	width: 11px;
}

.campaign .inner article .list li dd p:last-of-type::before { display: none; }

.campaign-merit .inner {
	display: flex;
	justify-content: space-between;
	text-align: center;
}

.campaign-merit .inner section {
	max-width: 29.090%;
	width: 100%;
}

.campaign-merit .inner section:nth-of-type(1),
.campaign-merit .inner section:nth-of-type(3) { margin-top: 92px; }

.campaign-merit .inner section h3 {
	align-items: center;
	background: url(../img/top/campaign-merit-title-bg.png) no-repeat center;
	display: flex;
	font-size: 24px;
	font-weight: var(--Bold);
	height: 104px;
	justify-content: center;
	position: relative;
	text-align: center;
}

.campaign-merit .inner section p {
	line-height: 1.8;
	margin-top: 24px;
	text-align: left;
}

.campaign-tool {
	padding-bottom: 313px;
	padding-top: 84px;
}

.campaign-tool .inner { text-align: center; }

.campaign-tool h4 strong {
	display: block;
	font-size: 24px;
	font-weight: var(--Bold);
}

.campaign-tool h4 small {
	display: block;
	font-size: 14px;
	font-weight: var(--Bold);
	margin-top: 16px;
}

.campaign-tool .tool-item {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-top: 36px;
	position: relative;
}

.campaign-tool .tool-item::before {
	background-color: var(--color-border);
	border-radius: 100vw;
	content: '';
	display: block;
	height: 220px;
	left: 50%;
	position: absolute;
	top: 145px;
	transform: translateX(-50%);
	width: 960px;
	z-index: -1;
}

.campaign-tool .tool-item section {
	display: flex;
	flex-direction: column;
}

.campaign-tool .tool-item section .image {
	align-items: center;
	display: flex;
	justify-content: center;
	min-height: 207px;
}

.campaign-tool .tool-item .item-02 { margin-left: 70px; }
.campaign-tool .tool-item .item-03 { margin-left: 42px; }

.campaign-tool .tool-item .item-01 .image img { max-width: 259px; }
.campaign-tool .tool-item .item-02 .image img { max-width: 173px; }
.campaign-tool .tool-item .item-03 .image img { max-width: 288px; }

.campaign-tool .tool-item section h5 {
	align-items: center;
	display: flex;
	flex-grow: 1;
	font-size: 20px;
	font-weight: var(--Bold);
	justify-content: center;
	margin-top: 25px;
}

.campaign-tool .tool-item small {
	display: block;
	margin-top: 24px;
}

@media (max-width: 1099px) {

	.campaign  {
		background-size: cover;
		min-height: 229.333vw;
		padding-top: 18.333vw;
	}

	.campaign .inner .image { display: none; }

	.campaign .inner {
		display: block;
		padding-left: 4.975vw;
		padding-right: 4.975vw;
	}

	.campaign .inner article {
		margin-right: 0;
		max-width: inherit;
		padding-top: 0;
	}

	.campaign .inner article h2 { font-size: 5.97vw; }

	.campaign .inner article .text { margin-top: 5.224vw; }

	.campaign .inner article .list { margin-top: 5.224vw; }

	.campaign .inner article .list li {
		font-size: 3.483vw;
		padding: 3.333vw 0 3.333vw 8.333vw;
	}

	.campaign .inner article .list li::after {
		left: 1.333vw;
		top: 5.333vw;
	}

	.campaign .inner article .list li dt { min-width: 18.333vw; }

	.campaign-merit {
		padding-left: 4.975vw;
		padding-right: 4.975vw;
	}

	.campaign-merit .inner { display: block; }

	.campaign-merit .inner section {
		align-items: center;
		display: flex;
		justify-content: space-between;
		max-width: 100%;
	}

	.campaign-merit .inner section:nth-of-type(1),
	.campaign-merit .inner section:nth-of-type(3) { margin-top: 0; }

	.campaign-merit .inner section:nth-of-type(n+2) { margin-top: 4.975vw; }

	.campaign-merit .inner section h3 {
		font-size: 4.731vw;
		width: 29.333vw;
	}

	.campaign-merit .inner section p {
		font-size: 3.483vw;
		margin-top: 0;
		width: 63%;
	}

	.campaign-tool { padding: 12.438vw 4.975vw 49.333vw	; }

	.campaign-tool h4 strong {
		font-size: 5.473vw;
		line-height: 1.8;
	}

	.campaign-tool h4 small {
		font-size: 2.985vw;
		margin-top: 2.488vw;
	}

	.campaign-tool .tool-item { display: block; }

	.campaign-tool .tool-item::before {
		border-radius: 7.463vw;
		height: 106%;
		left: auto;
		top: 5.333vw;
		transform: none;
		width: 100%;
	}

	.campaign-tool .tool-item .item-02,
	.campaign-tool .tool-item .item-03 { margin-left: 0; }

	.campaign-tool .tool-item section {
		align-items: center;
		flex-direction: inherit;
		justify-content: space-between;
		width: auto;
	}

	.campaign-tool .tool-item section:nth-of-type(n+2) { margin-top: 8.975vw; }

	.campaign-tool .tool-item section .image {
		display: block;
		margin-left: 4.333vw;
		min-height: 1.333vw;
		text-align: center;
		width: 34.333vw;
	}

	.campaign-tool .tool-item .item-01 .image img { max-width: 32.214vw; }
	.campaign-tool .tool-item .item-02 .image img { max-width: 21.517vw; }
	.campaign-tool .tool-item .item-03 .image img { max-width: 35.821vw; }

	.campaign-tool .tool-item section h5 {
		display: block;
		flex-grow: 0;
		font-size: 3.58vw;
		margin-right: 4.333vw;
		margin-top: 0;
		text-align: left;
		width: 40.333vw;
	}

	.campaign-tool .tool-item small { margin-top: 3.98vw; }

}

/* --------------------------------------------------------------------------------------
	AWARDS
--------------------------------------------------------------------------------------- */

.awards {
	background-color: #fff;
	padding-bottom: 120px;
	position: relative;
	z-index: 0;
}

.awards::before {
	background-color: #fff;
	border-radius: 589.5px;
	content: '';
	display: block;
	height: 1179px;
	left: 50%;
	position: absolute;
	top: -357px;
	transform: translateX(-50%);
	width: 1520px;
	z-index: -1;
}

.awards-head {
	background: url(../img/top/awards-head-circle.png) no-repeat center top / 100% auto;
	margin-bottom: -186px;
	padding-top: 132px;
	position: relative;
	top: -186px;
}

.awards-head h2 {
	font-family: var(--font-Antonio);
	font-size: 56px;
	font-weight: var(--Bold);
	line-height: 1;
	text-align: center;
}

.awards-head .awards-name {
	font-weight: var(--Bold);
	margin-top: 14px;
	text-align: center;
}

.awards-head .awards-head-inner {
	display: flex;
	gap: 76px;
	justify-content: center;
	margin-top: 56px;
}

.awards-head .awards-head-inner section {
	display: flex;
	flex-direction: column;
	text-align: center;
}

.awards-head .awards-head-inner section h3 {
	align-items: center;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	flex-wrap: wrap;
	font-size: 20px;
	font-weight: var(--Bold);
	justify-content: center;
}

.awards-head .awards-head-inner section dl { margin-top: 20px; }

.awards-head .awards-head-inner section dt {
	display: inline-block;
	font-family: var(--font-Antonio);
	font-size: 72px;
	font-weight: var(--Bold);
	line-height: 1;
	position: relative;
}

.awards-head .awards-head-inner section dt::before {
	background: url(../img/top/icon-awards-01.svg) no-repeat;
	bottom: 5px;
	content: '';
	display: block;
	height: 39px;
	left: -51px;
	position: absolute;
	width: 50px;
}

.awards-head .awards-head-inner section dd {
	display: inline-block;
	font-size: 32px;
	margin-left: -3px;
	position: relative;
}

.awards-head .awards-head-inner section dd small {
	bottom: 7px;
	font-size: 12px;
	left: 30px;
	position: absolute;
	white-space: nowrap;
}

.english-page .awards-head .awards-head-inner section dd small {
	bottom: -12px;
	left: 0;
}

.awards-details { margin-top: 72px; }

.awards-details article {
	border-radius: 8px;
	display: flex;
	overflow: hidden;
}

.awards-details article:nth-of-type(n+2) { margin-top: 16px; }

.awards-details article h4 {
	align-items: center;
	background-color: #000;
	color: #fff;
	display: flex;
	font-size: 24px;
	font-weight: var(--Bold);
	justify-content: center;
	max-width: 15.818%;
	min-height: 163px;
	width: 100%;
}

.awards-details article .details-column {
	background-color: #f5f5f5;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 20px 42px;
	width: 100%;
}

.awards-details article .details-column .step {
	counter-reset: number 0;
	display: flex;
	margin-left: -42px;
}

.awards-details article .details-column .step li {
	display: grid;
	grid-template-rows: 1fr auto;
	padding: 8px 24px;
	text-align: center;
	width: 25%;
}

.awards-details article .details-column .step li:nth-of-type(n+2) {
	border-left: 1px solid #b4b4b4;
}

.awards-details article .details-column .step li h5 {
	display: block;
	font-size: 18px;
	font-weight: var(--Bold);
	text-align: center;
}

.awards-details article .details-column .step li h5::before {
	content: counter(number) ". ";
	counter-increment: number 1;
}

.awards-details article .details-column .step li h5 small {
	display: block;
	font-size: 12px;
	font-weight: var(--Medium);
	margin-top: 4px;
}

.awards-details article .details-column .step li .image {
	align-items: center;
	display: flex;
	justify-content: center;
	margin-top: 16px;
	min-height: 78px;
}

.awards-details article .details-column .dotted li {
	margin-left: 1em;
	text-indent: -1em;
}

.awards-details article .details-column .dotted li:nth-of-type(n+2) { margin-top: 6px; }

.awards .banner-area {
	display: flex;
	gap: 40px;
	justify-content: center;
	margin-top: 85px;
}

@media (max-width: 1099px) {

	.awards { padding-bottom: 12.438vw; }

	.awards::before {
		height: 100.333vw;
		top: -30.3333vw;
		width: 100.333vw;
	}

	.awards .inner { text-align: center; }

	.awards-head {
		background-size: 93%;
		margin-bottom: -20.667vw;
		margin-left: 4.975vw;
		margin-right: 4.975vw;
		padding-top: 15.333vw;
		top: -20.667vw;
	}

	.awards-head h2 { font-size: 9.96vw; }

	.awards-head .awards-name {
		font-size: 3.234vw;
		margin-top: 3.234vw;
	}

	.awards-head .awards-head-inner {
		flex-wrap: wrap;
		gap: 0;
		justify-content: space-between;
		margin-top: 9.463vw;
	}

	.awards-head .awards-head-inner .awards-01 {
		margin-bottom: 9.224vw;
		width: 100%;
	}

	.english-page .awards-head .awards-head-inner .awards-01 { margin-bottom: 10.224vw; }

	.awards-head .awards-head-inner section:nth-of-type(n+2) {
		max-width: 48%;
		width: 100%;
	}

	.awards-head .awards-head-inner section h3 {
		border-bottom: 1px solid var(--color-border);
		border-image: linear-gradient(to right, transparent, var(--color-border), transparent) 1;
		border-top: 1px solid var(--color-border);
		display: block;
		font-size: 4.726vw;
		line-height: 1.3;
		padding: 3.333vw 0;
	}

	.awards-head .awards-head-inner section dl { margin-top: 3.98vw; }

	.awards-head .awards-head-inner section dt { font-size: 17.413vw; }

	.awards-head .awards-head-inner section dd { font-size: 7.463vw; }

	.english-page .awards-head .awards-head-inner section dd { font-size: 5.463vw; }

	.awards-details {
		border-radius: 1.244vw;
		margin: 12.438vw 4.975vw 0;
		text-align: left;
	}

	.awards-details article { display: block; }

	.awards-details article:nth-of-type(n+2) { margin-top: 3.98vw; }

	.awards-details article h4 {
		font-size: 4.478vw;
		max-width: inherit;
		min-height: inherit;
		padding: 4.333vw;
	}

	.awards-details article .details-column { padding: 4.98vw 4.96vw; }

	.awards-details article .details-column .step {
		flex-wrap: wrap;
		margin-left: 0;
	}

	.awards-details article .details-column .step li {
		padding: 5.99vw 2.98vw 7.99vw;
		width: 50%;
	}

	.awards-details article .details-column .step li:nth-of-type(3) { border-left: none; }

	.awards-details article .details-column .step li:nth-of-type(n+3) { border-top: 1px solid #b4b4b4; }

	.awards-details article .details-column .step li h5 { font-size: 3.731vw; }

	.awards .banner-area {
		display: inline-flex;
		flex-direction: column;
		gap: 2.975vw;
		justify-content: center;
		margin-left: auto;
		margin-right: auto;
		margin-top: 8.975vw;
	}
}

/* --------------------------------------------------------------------------------------
	WINERY
--------------------------------------------------------------------------------------- */

.winery-section {
	background: url(../img/top/winery-image.jpg) no-repeat center center / cover;
	color: #fff;
	text-align: left;
}

.winery-section section {
	display: inline-flex;
	flex-direction: column;
	justify-content: center;
	margin-left: 19.333vw;
	min-height: 589px;
	text-align: center;
}

.winery-section section h2 {
	font-size: 28px;
	font-weight: var(--Bold);
}

.winery-section section p {
	line-height: 1.8;
	margin-top: 32px;
}

.winery-section section .banner { margin-top: 48px; }

@media (max-width: 1099px) {

	.winery-section {
		background-position: -11.667vw center;
		background-size: auto 100%;
		text-align: center;
	}

	.winery-section section {
		margin-left: auto;
		margin-right: auto;
		min-height: inherit;
		padding: 16.333vw 4.975vw;
	}

	.winery-section section h2 { font-size: 5.97vw; }

	.winery-section section p { margin-top: 3.98vw; }

	.winery-section section .banner { margin-top: 7.711vw; }
}

/* --------------------------------------------------------------------------------------
	FAQ
--------------------------------------------------------------------------------------- */

.faq {
	background-color: #eeeeee;
	padding-bottom: 104px;
	padding-top: 100px;
}

.faq h2 {
	font-family: var(--font-Antonio);
	font-size: 48px;
	font-weight: var(--Bold);
	line-height: 1;
	margin-bottom: 36px;
	text-align: center;
}

@media (max-width: 1099px) {

	.faq { padding: 12.438vw 4.975vw; }

	.faq h2 {
		font-size: 9.96vw;
		margin-bottom: 5.97vw;
	}
}