@charset "utf-8";

/*============================================================
 キャンペーンコンテンツ用
============================================================*/
.noscroll { overflow: hidden; }

.notes {
	font-size: 12px !important;
	padding-left: 1em;
	text-indent: -1em;
}


/* メイン */
.anchor img.bg { width: 100%; }
.anchor {
	width: 950px;
	margin: 0 auto;
}
.anchor_left {
	float: left;
	width: 556px;
}
.anchor_left h1 { margin: 0 0 10px 0; }
.anchor_left ul {
    margin: 0;
    padding: 0;
}
.anchor_left ul li {
	position: relative;
	float: left;
	width: 273px;
    margin-left: 10px;
	padding: 0;
	overflow: hidden;
}
.anchor_left ul li:first-child { margin-left: 0; }

.anchor ul.anchor_right {
	float: right;
	width: 394px;
	margin: 0;
	padding: 0;
}
.anchor ul.anchor_right li {
	position: relative;
	float: left;
	width: 187px;
	margin: 0 0 10px 10px;
	padding: 0;
	overflow: hidden;
}

.anchor ul li div::before {
	position: absolute;
	top: 30px;
	right: 30px;
	bottom: 30px;
	left: 30px;
	box-shadow: 0 0 0 30px rgba(0,0,0,0.4);
	content: '';
	opacity: 1;
	-webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
	transition: opacity 0.35s, transform 0.35s;
	-webkit-transform: scale3d(1,1,1);
	transform: scale3d(1,1,1);
}
.anchor ul li:hover div::before {
	opacity: 0;
	-webkit-transform: scale3d(1.4,1.4,1);
	transform: scale3d(1.4,1.4,1);
}
.anchor ul li a {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	font-size: 0;
	text-indent: 200%;
	white-space: nowrap;
	z-index: 1000;
}
/*.anchor ul li p {
	position: absolute;
	margin-left: -77px;
	top: 30px;
	left: 50%;
}*/

/* LINE UP */
#lineup {
	background-color: #fff7e5;
	margin-top: 10px;
	padding: 60px 0;
}
#lineup h2 { margin-bottom: 25px; }
#lineup p {
	font-size: 18px;
	line-height: 1.7;
}


/* アコーディオン
----------------------------------------*/
.accordion {
	display: none;
	background-color: #fff7e5;
	padding-bottom: 10px;
	text-align: left;
}
.accordion h3 {
	font-size: 26px;
	margin-bottom: 30px;
	text-align: center;
}
.accordion h4 {
	font-size: 24px;
	line-height: 1.4;
	margin-bottom: 15px;
}
.accordion p { margin-bottom: 60px; }
.btn_close {
	text-align: center;
	cursor: pointer;
}

/* BRAND */
dl.list {
	position:relative;
	margin-bottom: 50px;
 }
dl.list dt { float: left; }
dl.list.even dt { float: right; }
dl.list dd {
	position: absolute;
	background-color: #fff7e5;
	border: 4px solid #be9d09;
	margin: 0;
	padding: 30px 20px 30px 25px;
	top: 80px;
	right: 0;
}
dl.list.even dd { left: 0; }
dl.list.brand01 dd { width: 390px; }
dl.list.brand02 dd { width: 410px; }
dl.list.brand03 dd { width: 475px; }
dl.list.brand04 dd { width: 490px; }
dl.list dd p { margin-bottom: 0; }

.bg_white {
	background-color: #fff;
	padding: 60px 0;
}
.bg_white h3 { margin-bottom: 0; }


ul.vineyard {
	margin-bottom: 30px;
	padding: 0;
}
ul.vineyard.line { border-bottom: 2px solid #be9d09; }
ul.vineyard li {
	float: left;
	width: 405px;
	background-color: #fff7e5;
	border: 4px solid #be9d09;
	margin-bottom: 30px;
	padding: 30px 20px 30px 20px;
}
ul.vineyard li:nth-child(2n) { float: right; }
ul.vineyard li h4 { font-size: 20px; }
ul.vineyard li p {
	font-size: 14px !important;
	margin-bottom: 0;
}

/* HISTORY */
.history {
	background: url(../img/history/border.png) center top repeat-y;
	margin-bottom: 40px;
	padding: 20px 0 10px 0;
}
.history dl {
	display: table;
	width: 100%;
	background-position: center center;
	background-repeat: no-repeat;
	margin: 0;
}
.history dl.year1869 { background-image: url(../img/history/txt_1869.png); }
.history dl.year1875 { background-image: url(../img/history/txt_1875.png); }
.history dl.year1876 { background-image: url(../img/history/txt_1876.png); margin: -12px 0 50px 0; }
.history dl.year1920 { background-image: url(../img/history/txt_1920-33.png); margin-bottom: 30px; }
.history dl.year1934 { background-image: url(../img/history/txt_1934.png); }
/*.history dl.year1939 { background-image: url(../img/history/txt_1939.png); margin-bottom: 10px; }*/
.history dl.year1967 { background-image: url(../img/history/txt_1967.png); }
.history dl.year1971 { background-image: url(../img/history/txt_1971.png); margin-top: -30px; }
.history dl.year1972 { background-image: url(../img/history/txt_1972.png); margin: -10px 0 30px 0; }
.history dl.year1976 { background-image: url(../img/history/txt_1976.png); margin-bottom: 25px; }
.history dl.year1984 { background-image: url(../img/history/txt_1984.png); }
.history dl.year1990 { background-image: url(../img/history/txt_1990.png); }
.history dl.year1996 { background-image: url(../img/history/txt_1996.png); }
.history dl.year2001 { background-image: url(../img/history/txt_2001.png); margin-top: -20px; }
/*.history dl.year2012 { background-image: url(../img/history/txt_2012.png); }*/
.history dl.year2015 { background-image: url(../img/history/txt_2015.png); }
.history dl.year2021 { background-image: url(../img/history/txt_2021.png); }
.history dl.year2025 { background-image: url(../img/history/txt_2025.png); }

.history dl dt {
	display: table-cell;
	width: 360px;
	padding-left: 110px;
}
.history dl dd {
	display: table-cell;
	color: #0f4465;
	width: 360px;
	margin: 0;
	padding-right: 110px;
	text-align: left !important;
	vertical-align: middle;
}
.history dl.photo_left dt { padding: 0 110px 0 0; text-align: right; }
.history dl.photo_left dd { padding: 0 0 0 110px; }
.history dl dd.right { padding: 0 0 0 110px; }

.history dl dd span { display: none; }
.history dl dd h3 {
	font-size: 18px;
	line-height: 1.4;
	margin-bottom: 10px;
	text-align: left;
}
.history dl dd p {
	font-size:14px !important;
	margin-bottom: 0;
}

/* LINE UP */
ul.products {
	width: 940px;
	font-size: 0;
	text-align: center;
	padding: 0;
}
ul.products li {
	position: relative;
	display: inline-block;
	width: 312px;
	font-size: 12px;
	margin-bottom: 70px;
}
ul.products.col2 li { width: 468px; }
ul.products li h4 {
	font-size: 12px;
	margin: 20px 0;
}
ul.products li p {
	font-size: 12px !important;
	margin-bottom: 15px;
}
ul.products li img.point {
	position: absolute;
	top: 125px;
	left: 239px;
}

ul.products li a img {
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all  0.5s ease;
}
ul.products li a:hover img {
	filter: alpha(opacity=60);
	-moz-opacity: 0.6;
	opacity: .60;
}


/* キャンペーン
----------------------------------------*/
.campaign { clear: both; }
.campaign .column {
	position: relative;
	width: 950px !important;
	background-color: #fff;
	padding: 0 !important;
}

#recipe {
    position: relative;
    width: 100%;
    height: 330px;
    background: url(../img/bg_worldewcipe.jpg) center center no-repeat;
    background-size: cover;
    margin: 10px 0;
    padding-top: 65px;
    box-sizing: border-box;
}
#recipe div::before {
	position: absolute;
	top: 50px;
	right: 50px;
	bottom: 50px;
	left: 50px;
	box-shadow: 0 0 0 50px rgba(0,0,0,0.4);
	content: '';
	opacity: 1;
	-webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
	transition: opacity 0.35s, transform 0.35s;
	-webkit-transform: scale3d(1,1,1);
	transform: scale3d(1,1,1);
}
#recipe:hover div::before {
	opacity: 0;
	-webkit-transform: scale3d(1.4,1.4,1);
	transform: scale3d(1.4,1.4,1);
}
#recipe h2 { margin: 0; }
#recipe a {
	position: absolute;
    margin-left: -130px;
	top: 223px;
	left: 50%;
	z-index: 1000;
}


/* FOOD PAIRING
----------------------------------------*/
#food {
    position: relative;
    width: 100%;
    height: 330px;
    background: url(../img/bg_food.jpg) center center no-repeat;
    background-size: cover;
    margin: 10px 0;
    padding-top: 43px;
    box-sizing: border-box;
}
#food div::before {
	position: absolute;
	top: 50px;
	right: 50px;
	bottom: 50px;
	left: 50px;
	box-shadow: 0 0 0 50px rgba(0,0,0,0.4);
	content: '';
	opacity: 1;
	-webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
	transition: opacity 0.35s, transform 0.35s;
	-webkit-transform: scale3d(1,1,1);
	transform: scale3d(1,1,1);
}
#food:hover div::before {
	opacity: 0;
	-webkit-transform: scale3d(1.4,1.4,1);
	transform: scale3d(1.4,1.4,1);
}
#food h2 { margin: 0; }
#food a {
	position: absolute;
    margin-left: -130px;
	top: 223px;
	left: 50%;
	z-index: 1000;
}


/* WALLPAPER
----------------------------------------*/
#wallpaper {
    position: relative;
    width: 100%;
    height: 327px;
    background: url(../img/bg_wallpaper.jpg) center center no-repeat;
    background-size: cover;
/*    margin-bottom: 10px;*/
    padding-top: 43px;
    box-sizing: border-box;
}
#wallpaper div.bg_wallpaper {
    width: 360px;
    height: 240px;
    background: url(../img/bg_details.png) center center no-repeat;
    background-size: cover;
    margin: 0 auto 10px auto;
    padding-top: 46px;
    box-sizing: border-box;
}
#wallpaper div.bg_wallpaper h2 { margin: 0 0 22px 0; }


/* リンク
----------------------------------------*/
.link {
	min-width: 940px;
	margin: 0 auto;
}
.link figure {
	position: relative;
	min-width: 940px;
	min-height: 390px;
	width: 100%;
	height: auto;
	margin: 10px 0 0 0;
	text-align: center;
	cursor: pointer;
	overflow: hidden;
}
.link.lineup figure { min-height: 240px; }
.link figure:before {
    content: "";
    display: block;
}

.link figure div {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.link figure img.bg {
	position: relative;
	display: block;
	width: 100%;
	max-width: 100%;
	min-height: 100%;
}

.link figure figcaption {
	color: #fff;
	text-transform: uppercase;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
.link figure figcaption::before,
.link figure figcaption::after { pointer-events: none; }

.link figure figcaption,
.link figure figcaption > a {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}
.link figure figcaption > a {
	font-size: 0;
	text-indent: 200%;
	white-space: nowrap;
	z-index: 1000;
	opacity: 0;
}
.link.food figure figcaption > a {
    position: relative;
    width: 260px;
    height: 42px;
    opacity: 1;
}

.link figure h2, .link figure h3, .link figure p { margin: 0; }
.link figure p {
	position: absolute;
	margin: 0 0 0 -29px;
	top: 271px;
	left: 50%;
}
.link.lineup figure p { top: 113px; }

figure.effect-ming { background: #000; }
figure.effect-ming img {
	opacity: 1;
	-webkit-transition: opacity 0.35s;
	transition: opacity 0.35s;
}
figure.effect-ming figcaption::before {
	position: absolute;
	top: 50px;
	right: 50px;
	bottom: 50px;
	left: 50px;
	box-shadow: 0 0 0 50px rgba(0,0,0,0.4);
	content: '';
	opacity: 1;
	-webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
	transition: opacity 0.35s, transform 0.35s;
	-webkit-transform: scale3d(1,1,1);
	transform: scale3d(1,1,1);
}
figure.effect-ming h2 { margin: 60px 0 0 0; }
figure.effect-ming p {
	-webkit-transition: transform 0.35s;
	transition: transform 0.35s;
	-webkit-transform: translate3d(0,-20px,0);
	transform: translate3d(0,-20px,0);
}
figure.effect-ming:hover h2 {}
figure.effect-ming:hover figcaption::before {
	opacity: 0;
	-webkit-transform: scale3d(1.4,1.4,1);
	transform: scale3d(1.4,1.4,1);
}
figure.effect-ming:hover p {
	-webkit-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
}

figure.effect-ming.active p { display: none; }
figure.effect-ming.active figcaption::before { opacity: 0; }
