.inner-body {
	background: #f7f4ef;
	color: #352b27;
}
.inner-body .site-header {
	position: relative;
	height: 92px;
	background: #a70d17;
	color: #fff4df;
}
.inner-body .header-inner {
	height: 100%;
}
.inner-body .logo-mark {
	border-color: #e5bd76;
	color: #e5bd76;
}
.inner-body .nav {
	font-size: 15px;
	gap: 38px;
}
.inner-body .nav a {
	position: relative;
	padding: 8px 2px;
}
.inner-body .nav a.active,
.inner-body .nav a:hover {
	color: #f2cd88;
}
.inner-body .nav a.active:after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 1px;
	background: #e4b96b;
}
.inner-hero {
    width: 100%;
    aspect-ratio: 1 / 0.2;

	display: flex;
	align-items: center;
	color: #fff;
}
.inner-hero-copy {
	width: 80%;
	margin: auto;
	text-align: center;
}
.inner-hero-copy h1 {
	margin: 0;
	font-size: 42px;
	font-weight: 400;
	letter-spacing: 10px;
	text-shadow: 0 3px 10px #0008;
}
.inner-hero-copy p {
	margin: 13px 0 0;
	color: #f2dcc2;
	font-size: 17px;
	letter-spacing: 3px;
}
.inner-title {
	padding: 42px 0 30px;
	text-align: center;
	background: #fff;
}
.inner-title-en {
	display: block;
	color: #bd7f82;
	font-size: 29px;
	letter-spacing: 2px;
}
.inner-title h2 {
	margin: 3px 0 0;
	color: #a90c17;
	font-size: 36px;
	font-weight: 400;
	letter-spacing: 8px;
}
.inner-container {
	width: 80%;
	max-width: 1160px;
	margin: auto;
}
.inner-crumb {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 16px 0;
	color: #766963;
	font-size: 14px;
	border-bottom: 1px dashed #cfc4bb;
}
.inner-crumb img {
	width: 16px;
	height: 16px;
}
.inner-crumb span {
	color: #b5aaa3;
}
.inner-content {
	padding: 42px 0 90px;
}
.inner-footer {
    display: flex;
	background: #2b201c;
	color: #ad9d93;
	text-align: center;
	padding: 26px 6%;
	font-size: 13px;
	line-height: 2;
	    flex-direction: column;
    align-items: center;
}
.inner-footer b {
	display: block;
	color: #e3c698;
	font-size: 16px;
	font-weight: 400;
}
.inner-footer b a img{
    max-height: 50px;
        margin-bottom: 25px;
}
.inner-menu {
	display: none;
	border: 0;
	background: transparent;
	color: #fff;
	font-size: 29px;
}
.inner-category {
	display: flex;
	justify-content: center;
	gap: 12px;
	margin: 0 0 34px;
}
.inner-category a {
	min-width: 96px;
	padding: 8px 18px;
	border: 1px solid #d8ccc3;
	text-align: center;
	color: #796a63;
	background: #fff;
	transition: 0.25s;
}
.inner-category a:hover,
.inner-category a.active {
	border-color: #b71925;
	background: #b71925;
	color: #fff;
}
.inner-section-title {
	display: flex;
	align-items: center;
	gap: 15px;
	margin: 0 0 24px;
	color: #8f151d;
	font-size: 25px;
	font-weight: 400;
}
.inner-section-title:before {
	content: "";
	width: 4px;
	height: 25px;
	background: #b71925;
}
.brand-intro {
	display: grid;
	grid-template-columns: 0.86fr 1.14fr;
	gap: 46px;
	align-items: center;
}
.brand-photo {
	height: 420px;
	position: relative;
	background: url("../images/culture-bg.jpg") center/cover;
}
.brand-photo:after {
	content: "百年传承";
	position: absolute;
	right: -18px;
	bottom: 28px;
	padding: 12px 18px;
	background: #a70d17;
	color: #f4dba9;
	letter-spacing: 4px;
}
.brand-copy p {
	margin: 0 0 16px;
	color: #665b55;
	font-size: 16px;
	line-height: 2.05;
	text-align: justify;
}
.brand-values {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
	margin: 45px 0;
}
.brand-value {
	padding: 27px 22px;
	border-top: 2px solid #a70d17;
	background: #fff;
	box-shadow: 0 8px 24px #3c24120a;
}
.brand-value span {
	color: #c29a58;
	font-size: 28px;
}
.brand-value h3 {
	margin: 5px 0;
	color: #4c3b34;
	font-size: 19px;
}
.brand-value p {
	margin: 0;
	color: #887b74;
	font-size: 14px;
}
.history {
	margin-top: 48px;
	padding: 36px 36px 30px;
	background: #3b2923;
	color: #eee;
}
.history h3 {
	margin: 0 0 29px;
	color: #e5c187;
	font-size: 25px;
	font-weight: 400;
}
.history-list {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 24px;
}
.history-item {
	position: relative;
	padding-top: 18px;
	border-top: 1px solid #8c6b5c;
}
.history-item:before {
	content: "";
	position: absolute;
	top: -5px;
	left: 0;
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: #d8a44c;
}
.history-item strong {
	display: block;
	color: #e0b45f;
	font-size: 26px;
}
.history-item p {
	margin: 5px 0;
	color: #cbbdb5;
	font-size: 14px;
}
.news-layout {
	display: grid;
	grid-template-columns: 220px 1fr;
	gap: 40px;
}
.news-side {
	align-self: start;
	border-top: 3px solid #a70d17;
	background: #fff;
}
.news-side h3 {
	margin: 0;
	padding: 18px 20px;
	color: #a70d17;
	font-size: 20px;
	font-weight: 400;
	border-bottom: 1px solid #eee4dc;
}
.news-side a {
	display: block;
	padding: 13px 20px;
	color: #756862;
	border-bottom: 1px solid #eee8e3;
}
.news-side a.active,
.news-side a:hover {
	background: #a70d17;
	color: #fff;
}
.news-list-page {
	background: #fff;
	padding: 5px 28px;
}
.news-row {
	display: grid;
	grid-template-columns: 78px 1fr auto;
	align-items: center;
	gap: 22px;
	padding: 20px 0;
	border-bottom: 1px dashed #d8cec7;
}
.news-date {
	text-align: center;
	color: #a70d17;
}
.news-date strong {
	display: block;
	font-size: 25px;
	line-height: 1;
}
.news-date span {
	font-size: 12px;
}
.news-row h3 {
	margin: 0 0 5px;
	color: #40342f;
	font-size: 18px;
	font-weight: 400;
}
.news-row p {
	margin: 0;
	color: #998d87;
	font-size: 14px;
}
.news-arrow {
	color: #c3b5ad;
	font-size: 22px;
}
.news-row:hover h3,
.news-row:hover .news-arrow {
	color: #a70d17;
}
.pager {
	padding: 32px 0 18px;
}
.pager a {
	background: #fff;
}
.article-shell {
	max-width: 900px;
	margin: auto;
	background: #fff;
	padding: 44px 58px;
}
.article-title {
	text-align: center;
	margin: 0;
	color: #392f2b;
	font-size: 29px;
	font-weight: 400;
}
.article-meta {
	margin: 14px 0 32px;
	padding-bottom: 18px;
	border-bottom: 1px solid #eee4dd;
}
.article-body video,
.article-body img{
    max-width: 100%;
    height: auto;
}
.article-body p {
	margin: 0 0 20px;
	color: #645a55;
	font-size: 16px;
	line-height: 2.1;
	text-indent: 2em;
}
.article-next {
    margin-top: 34px;
    padding-top: 18px;
    border-top: 1px solid #eadfd7;
    color: #8d7e77;
    display: flex;
    flex-direction: column;
}
.article-next a {
	color: #a70d17;
}
.wine-filter {
	    display: flex;
    justify-content: center;
    gap: 10px;
    margin-bottom: 34px;
    flex-wrap: wrap;
}
.wine-filter a {
	padding: 8px 28px;
	border: 1px solid #d8cbc2;
	background: #fff;
	color: #766861;
}
.wine-filter a.active,
.wine-filter a:hover {
	background: #a70d17;
	border-color: #a70d17;
	color: #fff;
}
.wine-list-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 22px;
}
.wine-list-card {
	position: relative;
	padding: 14px 14px 18px;
	border: 1px solid #ded3cb;
	background: #fff;
	text-align: center;
	transition: 0.3s;
}
.wine-list-card:before {
	content: "";
	position: absolute;
	top: -1px;
	left: -1px;
	width: 20px;
	height: 20px;
	border-top: 2px solid #a70d17;
	border-left: 2px solid #a70d17;
}
.wine-list-card img {
	width: 100%;
    aspect-ratio: 1 / 0.8;
	object-fit: contain;
	background: #faf8f5;
}
.wine-list-card h3 {
	margin: 14px 0 4px;
	color: #453832;
	font-size: 17px;
	font-weight: 400;
}
.wine-list-card p {
	margin: 0;
	color: #b08a4b;
	font-size: 13px;
}
.wine-list-card:hover {
	transform: translateY(-5px);
	border-color: #bc8f68;
	box-shadow: 0 12px 26px #59371f17;
}
.product-detail {
	display: grid;
	grid-template-columns: 0.9fr 1.1fr;
	gap: 55px;
	align-items: start;
}
.product-gallery {
	display: grid;
	grid-template-columns: 76px 1fr;
	gap: 14px;
}
.product-thumbs {
	display: grid;
	align-content: start;
	gap: 10px;
}
.product-thumbs button {
	padding: 5px;
	border: 1px solid #ddd1c8;
	background: #fff;
}
.product-thumbs button.active {
	border-color: #a70d17;
}
.product-thumbs img {
	width: 64px;
	height: 70px;
	object-fit: contain;
}
.product-main-image {
	height: 480px;
	border: 1px solid #ded2ca;
	background: #fff;
	padding: 25px;
}
.product-main-image img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.product-info {
	padding: 13px 0;
}
.product-info h3 {
	margin: 0 0 13px;
	color: #3d302b;
	font-size: 30px;
	font-weight: 400;
}
.product-sub {
	color: #aa8a62;
	border-bottom: 1px solid #e5d8ce;
	padding-bottom: 22px;
}
.product-prices {
	margin: 24px 0;
	padding: 18px 22px;
	background: #eee7e1;
}
.product-prices del {
	color: #9c8f89;
}
.product-prices strong {
	display: block;
	color: #ad101c;
	font-size: 30px;
}
.product-specs {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 12px 22px;
	color: #71655f;
}
.product-specs span {
	padding-bottom: 8px;
	border-bottom: 1px dashed #d8ccc4;
}
.article-body video,
.article-body img{
       width: auto;
    height: auto;
    max-width: 100%;
    object-fit: contain;
}
.detail-description {
	margin-top: 52px;
	padding: 34px;
	background: #fff;
}
.detail-description p {
	color: #6f625c;
	line-height: 2;
}
.guide-list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 22px;
}
.guide-card {
	display: grid;
	grid-template-columns: 70px 1fr;
	gap: 20px;
	padding: 26px;
	border: 1px solid #dfd4cc;
	background: #fff;
}
.guide-number {
	display: grid;
	place-items: center;
	width: 70px;
	height: 70px;
	border: 1px solid #b71925;
	color: #a70d17;
	font-size: 28px;
}
.guide-card h3 {
	margin: 0 0 8px;
	color: #493a34;
	font-size: 19px;
	font-weight: 400;
}
.guide-card p {
	margin: 0;
	color: #8d817a;
	line-height: 1.8;
}
.contact-page {
	display: grid;
	grid-template-columns: 1.25fr 0.75fr;
	gap: 34px;
}
.contact-map {
	
	position: relative;

	border: 1px solid #d9cec6;
}

.contact-panel {
	padding: 35px 30px;
	background: #a70d17;
	color: #fff;
}
.contact-panel h3 {
	margin: 0 0 10px;
    color: #ffffff;
	font-size: 25px;
	font-weight: 400;
}
.contact-panel > p {
	margin: 0 0 28px;
	color: #ddbbb5;
}
.contact-line {
	display: grid;
	grid-template-columns: 40px 1fr;
	gap: 13px;
	align-items: center;
	padding: 15px 0;
	border-top: 1px solid #ffffff24;
}
.contact-line img {
	width: 22px;
	height: 22px;
	filter: brightness(0) invert(1);
	    object-fit: contain;
}
.contact-line b {
	display: block;

    color: #fff;
	font-weight: 400;
}
.contact-line span {
	font-size: 14px;
	color: #f4dedb;
}
@media (max-width: 900px) {
	.inner-body .nav {
		display: none;
		position: absolute;
		z-index: 20;
		top: 100%;
		left: 0;
		right: 0;
		padding: 14px 4%;
		background: #890b13;
		box-shadow: 0 10px 20px #25010542;
	}
	.inner-body .nav.inner-nav-open {
	
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
		gap: 5px;
	}
	.inner-body .nav a {
		text-align: center;
		padding: 11px 6px;
	}
	.inner-menu {
		display: block;
	}
	.inner-hero {
		height: 230px;
	}
	.inner-hero-copy {
		width: 92%;
	}
	.inner-hero-copy h1 {
		font-size: 32px;
		letter-spacing: 6px;
	}
	.inner-hero-copy p {
		font-size: 14px;
	}
	.inner-title {
		padding: 31px 0 24px;
	}
	.inner-title-en {
		font-size: 24px;
	}
	.inner-title h2 {
		font-size: 31px;
	}
	.inner-container {
		width: 92%;
	}
	.brand-intro,
	.product-detail,
	.contact-page {
		grid-template-columns: 1fr;
	}
	.brand-photo {
		height: 340px;
	}
	.news-layout {
		grid-template-columns: 1fr;
	}
	.news-side {
		display: flex;
		overflow: auto;
	}
	.news-side h3 {
		display: none;
	}
	.news-side a {
		white-space: nowrap;
		border-right: 1px solid #eee4dc;
	}
	.wine-list-grid {
		grid-template-columns: repeat(2, 1fr);
	}
	.guide-list {
		grid-template-columns: 1fr;
	}
	.contact-map {
		height: 360px;
	}
}
@media (max-width: 600px) {
	.inner-body .site-header {
		height: 72px;
	}
	.inner-body .header-inner,
	.inner-container {
		width: 92%;
	}
	.inner-body .logo {
		font-size: 16px;
	}
	.inner-body .nav.inner-nav-open {
		grid-template-columns: repeat(1, 1fr);
	}
	.inner-hero {
		height: 190px;
	}
	.inner-hero-copy h1 {
		font-size: 26px;
		letter-spacing: 3px;
	}
	.inner-hero-copy p {
		font-size: 12px;
		letter-spacing: 1px;
	}
	.inner-title-en {
		font-size: 20px;
	}
	.inner-title h2 {
		font-size: 27px;
		letter-spacing: 5px;
	}
	.inner-content {
		padding: 30px 0 60px;
	}
	.brand-intro {
		gap: 28px;
	}
	.brand-photo {
		height: 260px;
	}
	.brand-values {
		grid-template-columns: 1fr;
	}
	.history {
		padding: 28px 22px;
	}
	.history-list {
		grid-template-columns: repeat(1, 1fr);
	}
	.news-list-page {
		padding: 4px 16px;
	}
	.news-row {
		grid-template-columns: 58px 1fr;
		gap: 14px;
	}
	.news-row p,
	.news-arrow {
		display: none;
	}
	.article-shell {
		padding: 30px 20px;
	}
	.article-title {
		font-size: 24px;
	}
	.wine-filter {
	
		overflow: auto;
	}
	.wine-filter a {
		white-space: nowrap;
		padding: 7px 20px;
	}
	.wine-list-grid {
		gap: 12px;
	}
	.wine-list-card {
		padding: 9px;
	}

	.product-gallery {
		grid-template-columns: 1fr;
	}
	.product-thumbs {
		grid-template-columns: repeat(4, 70px);
		order: 2;
	}
	.product-main-image {
		height: 380px;
	}
	.product-specs {
		grid-template-columns: 1fr;
	}
	.detail-description {
		padding: 24px 20px;
	}
	.guide-card {
		grid-template-columns: 56px 1fr;
		padding: 20px 16px;
	}
	.guide-number {
		width: 56px;
		height: 56px;
	}
	.contact-map {
		height: 300px;
	}
	.contact-panel {
		padding: 28px 22px;
	}
}

.brand-photo:after {
	display: none;
}
.brand-value {
	border-top: 0;
}
.history {
	width: 100vw;
	margin-left: calc((100% - 100vw) / 2);
	padding-left: 10vw;
	padding-right: 10vw;
}
.inner-body .nav a:nth-child(4) {

}

@media (max-width: 900px) {
	
}
.brand-photo:after {
	display: none;
}
.brand-value {
	border-top: 0;
}
.history {
	width: 100vw;
	margin-left: calc(50% - 50vw);
	padding-left: 10vw;
	padding-right: 10vw;
}
.inner-content:has(.history) {
	padding-bottom: 0;
}
.brand-copy .inner-section-title:before {
	display: none;
}
