/*-----------------------------------------
section
-----------------------------------------*/
.section{
	padding: 3em 0 5em;
}
.border-bottom{
	border-bottom: 1px solid #dedede;
}
#products .section:first-child,
#contact .section:first-child,
#guide .section:first-child,
#sub .section:first-child,
#reserve .section:first-child{
	padding-top: 0;
}
	@media screen and (max-width: 950px) {
		.section{
			padding: 3em 6.5% 5em;
		}
	}

.mt{
	margin-top: 3em;
}
.mts{
	margin-top: 2em;
}
.mtxs{
	margin-top: 1em;
}
.x-mtxs{
	margin-top: .375em;
}
/*-----------------------------------------
font
-----------------------------------------*/
.min{
	font-family: 'Noto Serif JP', serif;
}
.sectiontitle{
	font-size: 1.75em;
	line-height: 1.375;
	margin-bottom: .5em;
}
.sectiontitle-small{
	font-size: 1.5em;
	line-height: 1.375;
	margin-bottom: .5em;
	font-weight: 600;
}
.midashi{
	font-size: 1.18em;
	line-height: 1.375;
	margin-bottom: .75em;
	font-weight: 500
}
.big{
	font-size: 1.09em;
	line-height: 1.375;
	margin-bottom: .25em;
	font-weight: 500
}

.medium{
	font-size: .9375em;
}
.small{
	font-size: .875em;
}
	@media screen and (max-width: 374px) {
		.medium-sp{
			font-size: .9375em;
		}
	}

.em{
	font-weight: bold;
}
.em_hr{
	font-weight: bold;
	border-bottom: 1px solid #030303;
	margin-bottom: .75em;
	padding-bottom: .25em;
}
.lh{
	line-height: 1.875;
}
.tsume{
	letter-spacing: -2px;
}
.kakko{
	margin-left: -.25em;
}
.icon-shikaku{
	position: relative;
	padding-left: 1.25em;
}
.icon-shikaku:before{
	content: "";
	position: absolute;
	top: 5px;
	left: 0;
	width: .8em;
	height: .8em;
	border:1px solid #030303;
}
.icon-maru{
	position: relative;
	padding-left: 1em;
}
.icon-maru:before{
	content: "";
	position: absolute;
	top: 8px;
	left: 0;
	width: .6em;
	height: .6em;
	background: #030303;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
}
.red{
	color: #cd0000;
}
.underline{
	text-decoration: underline;
}
.inline-block{
	display: inline-block;
}
/*-----------------------------------------
box
-----------------------------------------*/
.bgbox{
	background: #efefef;
	padding: 1.5em;
}
.bgbox-small{
	padding: .75em;
	background: #efefef;
	font-size: .825em;
}


/*-----------------------------------------
btn
-----------------------------------------*/
a.link-arw{
	color: #303030;
	position: relative;
	padding-left: 1em;
	display: inline-block;
}
a.link-arw:before{
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 0;
	height: 0;
	margin-top: -6px;
	border-top: solid .4em transparent;
	border-bottom: solid .4em transparent;
	border-left: solid .7em #303030;
}
a.link-arw:hover{
	text-decoration: underline;
}


a.link-arw-red{
	color: #800000;
	position: relative;
	padding-left: 1em;
	display: inline-block;
	text-decoration: underline;
}
a.link-arw-red:before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 0;
	margin-top: 8px;
	border-top: solid .4em transparent;
	border-bottom: solid .4em transparent;
	border-left: solid .7em #303030;
}
a.link-arw-red:hover{
	text-decoration: underline;
}


a.btn-click{
	background: #303030;
	color: #fff;
	display: inline-block;
	padding: .75em 2em .75em 1em;
	position: relative;
}
a.btn-click:before{
	content: "";
	position: absolute;
	top: 50%;
	right: .5em;
	width: 0;
	height: 0;
	margin-top: -4px;
	border-top: solid .3em transparent;
	border-bottom: solid .3em transparent;
	border-left: solid .5em #fff;
}
a.btn-click-yoyaku{
	background: #303030 url(../images/common/icon-calendar.png) no-repeat 1.25em center;
	background-size: 1.25em auto;
	font-weight: bold;
	color: #fff;
	display: inline-block;
	padding: .625em 3.25em .625em 3em;
	position: relative;
	border-radius: 3em;
	margin-bottom: .75em;
}
a.btn-click-yoyaku:before{
	content: "";
	position: absolute;
	top: 50%;
	right: .5em;
	width: 0;
	height: 0;
	margin-top: -4px;
	border-top: solid .3em transparent;
	border-bottom: solid .3em transparent;
	border-left: solid .5em #fff;
}

a.link-box{
	display: block;
	border: #a00 3px solid;
	color: #a00;
	text-align: center;
	padding: 1em;
	position: relative;
}
a.link-box:before{
	content: "";
	position: absolute;
	top: 50%;
	right: .5em;
	width: 0;
	height: 0;
	margin-top: -4px;
	border-top: solid .3em transparent;
	border-bottom: solid .3em transparent;
	border-left: solid .5em #a00;
}

a.link-pdf{
	display: inline-block;
	background: #262727 url("../images/common/icon-pdf.png") no-repeat .75rem center;
	background-size: auto 1.75rem;
	padding: .5em 1.375rem .5em 3.25rem;
	font-weight: bold;
	color: #fff;
	border-radius: 6px;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
}
a.link-pdf:hover{
	background-color: #606060;
}

/*-----------------------------------------
flex
-----------------------------------------*/
.flex{
	width: 100%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap:wrap;
}
.between{
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.center{
	align-items: center;
	justify-content: center;
}
.reverse{
	-webkit-box-direction:reverse;
	-moz-box-direction:reverse;
	-webkit-box-orient:horizontal;
	-moz-box-orient:horizontal;
	-webkit-flex-direction:row-reverse;
	-moz-flex-direction:row-reverse;
	flex-direction:row-reverse;
}
.clm2{
	width: 49%;
}
.clm3{
	width: calc(100% / 3);
}
.clm2_line{
	width: 50%;
}

	@media screen and (max-width: 568px) {
		.clm2{
			width: 100%;
			margin-bottom: 1em;
		}
		.clm2:last-child{
			margin-bottom: 0;
		}
		.clm3{
			width: 100%;
			margin-bottom: 1em;
		}
		.clm3:last-child{
			margin-bottom: 0;
		}
	}
/*-----------------------------------------
dl
-----------------------------------------*/
.dl-clm2{
	width: 100%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap:wrap;
	border-top: 1px solid #dfdfdf;
}
.dl-clm2 dt{
	padding: .75em 0;
	width: 22%;
	border-bottom: 1px solid #dfdfdf;
}
.dl-clm2 dd{
	padding: .75em 0 .75em 1em;
	width: 78%;
	border-bottom: 1px solid #dfdfdf;
}

/*特定商で使用*/
.dl-clm2-small{
	width: 100%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap:wrap;
}
.dl-clm2-small dt{
	width: 15em;
	padding-bottom: .75em;
}
.dl-clm2-small dd{
	width: calc(100% - 15em);
	padding-bottom: .75em;
}

	@media screen and (max-width: 568px) {
		.dl-clm2-small dt{
			width: 7em;
			padding: .75em 0;
			border-bottom: 1px dotted #dedede;


		}
		.dl-clm2-small dd{
			width: calc(100% - 7em);
			padding: .75em 0 .75em 1.5em;
			border-bottom: 1px dotted #dedede;
		}
	}

/*-----------------------------------------
list
-----------------------------------------*/
.list-decimal li{
	list-style-type: decimal;
	list-style-position: outside;
	margin-left: 1.5em;
}
.list-disc li{
	list-style-type: disc;
	list-style-position: outside;
	margin-left: 1.5em;
}

/*-----------------------------------------
guide
-----------------------------------------*/
#guide .list-decimal li{
	margin-bottom: 1.75em;
}
/*-----------------------------------------
news
-----------------------------------------*/

.news li{
	padding: 1.25em 0;
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:flex;
	flex-wrap: wrap;
	width: 100%;
	border-bottom: 1px solid #dedede;
}
.news li:first-child{
	padding-top: 0;
}
.news li .day{
	width: 6.7em;
	font-size: .93em;
	position: relative;
	padding-right: 1em;
	top: 1px;
}
.news li a:hover{
	text-decoration: underline;
}
.newstitle{
	font-size: 1.75em;
	margin-bottom: 1.25em;
}
.calendar{
	width:100%;
}
.calendar th,
.calendar td{
	width: 14.28%;
	padding: .15em .45em;
	border-color: #666;
	border-style: solid;
	border-width: 1px;
	font-weight: 500;
}
.calendar th{
	background: #bbb;
}

.calendar th:first-child,
.calendar td:first-child,
.calendar td.holiday{
	color: #F70000;

}
.calendar th:last-child,
.calendar td:last-child{
	color: #1B74A4;
}
.calendar td.bg{
	background: #ffc000
}
.calendar td div{
	font-size: .875em;
	margin: 1em 0;
}
.calendar td div.em{
	font-size: .875em;
	margin: .5em 0 .75em 0;
}
.calendar td > div.yasumi{
	font-weight: bold;
	font-size: 1.25em;
	text-align: center;
	margin: .25em 0 .75em 0;
}
	@media screen and (max-width: 950px) {
		.news li .day{
			width: 100%;

		}
	}


/*-----------------------------------------
about
-----------------------------------------*/

#about .flex-item:nth-child(odd){
	width: calc(100% - 224px);
}
#about .flex-item:nth-child(even){
	width: 224px;
	padding-left: 1.5em;
}
	@media screen and (max-width: 568px) {
		#about .flex-item:nth-child(odd){
			width: 100%;
			margin-bottom: 2em;
		}
		#about .flex-item:nth-child(even){
			padding-left: 0;
			margin: 0 auto;
		}
	}
/*-----------------------------------------
history
-----------------------------------------*/
#history .flex-item:nth-child(even){
	width: 210px;
	padding-left: 1.5em;
	margin-bottom: 2em;
}
#history .flex-item:nth-child(odd){
	width: calc(100% - 210px);
	margin-bottom: 2em;
}
#history .flex-item-reverse:nth-child(odd){
	width: 210px;
	padding-left: 1.5em;
	margin-bottom: 2em;
}
#history .flex-item-reverse:nth-child(even){
	width: calc(100% - 210px);
	margin-bottom: 2em;
}
#history .flex-item-reverse:last-child{
	margin-bottom: 0;
}

#history .img-large:nth-child(odd){
	width: calc(100% - 320px)!important;
}
#history .img-large:nth-child(even){
	width: 320px!important;
}

#history table{
	width: 100%;
}

#history th{
	text-align: left;
	width: 22%;
	padding: 1em;
	border-bottom: 1px solid #dedede;
}
#history td{
	width: 50%;
	padding: 1em;
	border-bottom: 1px solid #dedede;
	border-left:  1px solid #dedede;
}
#history td:nth-child(3){
	width: 28%;
	font-size: .85em;
}
#history tr:nth-child(odd) th,
#history tr:nth-child(odd) td{
	background: #efefef;
}

	@media screen and (max-width: 1080px) {
		#history .img-large:nth-child(odd){
			width: 100%!important;
		}
		#history .img-large:nth-child(even){
			max-width: 320px!important;
			width: 100%;
			margin: 0 auto 2em;
		}
	}

	@media screen and (max-width: 568px) {
		#history .flex-item:nth-child(even){
			width: 192px;
			padding-left: 0;
			margin: 0 auto 2em auto;
		}
		#history .flex-item:nth-child(odd){
			width: 100%;
		}		
		#history .flex-item-reverse:nth-child(odd){
			width: 192px;
			padding-left: 0;
			margin: 0 auto 2em auto;
		}
		#history .flex-item-reverse:nth-child(even){
			width: 100%;
		}
		
		#history tr:nth-child(odd) td{
			background: none;
		}
		#history th{
			display:block;
			width: 100%;
			padding: .5em 1em;
			border-bottom: none;
			background: #efefef;
			margin-bottom: 1em;
			clear: both;
		}
		#history tr:nth-child(odd) th{
			background: #efefef
		}
		#history td{
			display:block;
			width: 100%;
			padding: 0 1em;
			border-bottom:none;
			border-left: none;
			clear: both;
		}
		#history td:nth-child(3){
			display:block;
			width: 100%;
			padding: 0 1em;
			margin-bottom:2em;
		}
	}
/*-----------------------------------------
brand
-----------------------------------------*/
#brand .flex-item:nth-child(odd){
	width: 157px;
}
#brand .flex-item:nth-child(even){
	width: calc(100% - 157px);
	padding-left: 1.5em;
}
#brand .reverse .flex-item:nth-child(even){
	padding-right: 1.5em;
	padding-left: 0;
}

#brand .txt_c img{
	max-width: 290px;
	width: 70%;
	margin: 0 auto;
	display: block;
}
	@media screen and (max-width: 568px) {
		#brand .flex-item:nth-child(odd){
			margin: 0 auto .75em;
		}
		#brand .flex-item:nth-child(even){
			width: 100%;
			padding-left: 0;
		}
		#brand .reverse .flex-item:nth-child(even){
			padding-right: 0;
		}
	}

#brand-wakazo .flex-item:nth-child(odd){
	width: calc(100% - 30%);
	padding-right: 1.25em;
}
#brand-wakazo .flex-item:nth-child(even){
	width: 30%;
}
	@media screen and (max-width: 568px) {
		#brand-wakazo .flex-item:nth-child(odd){
			width: 100%;
			padding-right: 0;
			margin-bottom: 2em;
		}
		#brand-wakazo .flex-item:nth-child(even){
			width: 100%;
		}
	}

/*-----------------------------------------
sakebrewing
-----------------------------------------*/
#sakebrewing .flex-item:nth-child(odd){
	width: calc(100% - 30.5%);
	padding-right: 1.5em;
}
#sakebrewing .flex-item:nth-child(even){
	width: 30.5%;
}
	@media screen and (max-width: 568px) {
		#sakebrewing .flex-item:nth-child(odd){
			width: 100%;
			padding-right: 0;
			margin-bottom: 2em;
		}
		#sakebrewing .flex-item:nth-child(even){
			width: 100%;
		}
	}
/*-----------------------------------------
meiji-sakagura
-----------------------------------------*/
#meiji-sakagura .bgbox{
	width: 48%;
}
#group .bgbox,
#tour .bgbox{
	width: 100%;
}
	@media screen and (max-width: 1050px) {
		#meiji-sakagura .bgbox{
			width: 100%;
		}
	}
#meiji-sakagura .flex-item:nth-child(odd){
	width: calc(100% / 2);
	padding-right: 1em;
}
#meiji-sakagura .flex-item:nth-child(even){
	width: calc(100% / 2);
	padding-left: 1em;
}
#meiji-sakagura .clm2{
	width: 48.4%;
	margin-bottom: 1em;
}
#group{
	padding-top: 3.25em;
}
dl.tour-dl,
dl.group-dl{
	width: 100%;
}
dl.tour-dl dt{
	width: 8.5em;
	background: #e2e2e2;
	padding: 1em;
	border-bottom: 1px solid #fff;
	font-weight: 500;
}
dl.tour-dl dd{
	width: calc(100% - 8.5em);
	background: #efefef;
	padding: 1em;
	border-bottom: 1px solid #fff;
}
	dl.tour-dl dt span{
		font-weight: 500;
	}
dl.group-dl dt{
	width: 10em;
	margin-bottom: .5em;
}
dl.group-dl dd{
	width: calc(100% - 10em);
	margin-bottom: .5em;
}
.group-tit{
	font-size: 1.375em;
	font-weight: 500;
	padding: .25em 0;
	border-top: 1px solid #333;
	border-bottom: 1px solid #333;
	margin-bottom: 1em;
}
#group .tel{
	font-size: 1.25em;
	position: relative;
	line-height: 1.2;
}
#group .bgbox li{
	margin-right: 1.5em;
}
.caution-txt{
	font-size: 0.875em;
	padding-left: 1.25em;
	color: #cd0000;
	position: relative;
}
.caution-txt:before{
	position: absolute;
	top: 0;
	left: 0;
	content: "※";
}

	@media screen and (max-width: 568px) {
		#meiji-sakagura .flex-item:nth-child(odd){
			width:100%;
			padding-right: 0;
			padding-bottom: .75em;
		}
		#meiji-sakagura .flex-item:nth-child(even){
			width:100%;
			padding-left: 0;
		}
		#meiji-sakagura .clm2{
			width: 100%;
			margin-bottom: 2em;
		}
		#meiji-sakagura .clm2:last-child{
			margin-bottom: 0;
		}
		dl.tour-dl dt{
			width: 100%;
			padding: .25em 1em;
			border-bottom:none;
		}
		dl.tour-dl dd{
			width: 100%;
			background: #efefef;
			padding: 1em;
			border-bottom:none;
			margin-bottom: .75em;
		}

		dl.group-dl dt{
			width: 100%;
			margin-bottom: .25em;
		}
		dl.group-dl dd{
			width: 100%;
			margin-bottom: .75em;
		}
		dl.group-dl dt div.icon-shikaku{
			font-weight: 600;
		}
	}
.oshirase-borderbox{
	border: 2px solid #dedede;
	background: #fff;
	padding: 1.5em 1.75em;
}
.reserveform .oshirase-borderbox{
	padding: 1.75em;
	font-size: .9em;
	margin-bottom: 1.5em;
}

.oshirase-title{
	font-size: 1.0625em;
	font-weight: bold;
	line-height: 1.5;
	background: #dedede;
	padding: .5em;
	margin-bottom: 1em;
}
	@media screen and (max-width: 568px) {
		.oshirase-borderbox{
			font-size: .9em;
			padding: 1em;
		}
		.reserveform .oshirase-borderbox{
			margin-bottom: 0;
		}
	}

/*-----------------------------------------
locality
-----------------------------------------*/
.shinshinotsu .clm2:nth-child(odd){
	width: calc(100% - 28.5%);
}
.shinshinotsu .clm2:nth-child(even){
	width: 26.5%;
}
	@media screen and (max-width: 568px) {
		.shinshinotsu .clm2:nth-child(odd){
			width: 100%;
		}
		.shinshinotsu .clm2:nth-child(even){
			width: 100%;
		}
		.shinshinotsu .clm2:nth-child(even) img{
			padding: 0 22%;
		}

	}

/*-----------------------------------------
sakelees
-----------------------------------------*/
#sakelees .section-sakelees{
	padding: 5em 0 1.5em;
	border-top: 1px solid #dedede
}

#sakelees .flex-item:nth-child(odd){
	width: 224px;
}
#sakelees .flex-item:nth-child(even){
	width: calc(100% - 224px);
	padding-left: 1.5em;
}	
	@media screen and (max-width: 950px) {
		#sakelees .section-body{
			padding: 3em 6.5em 5em;
		}
	}


	@media screen and (max-width: 568px) {
		#sakelees .section-sakelees{
			padding: 4em 6.5% 2em;
		}
		#sakelees .flex-item:nth-child(odd){
			margin: 0 auto 1em auto;
			width: 100%;
		}
		#sakelees .flex-item:nth-child(even){
			width: 100%;
			padding-left: 0;
		}

	}
#sakelees .image-wrap{
	margin-bottom: 4em;

}

/*-----------------------------------------
award
-----------------------------------------*/
#award table{
	font-size: 87.5%;
	border-bottom: 1px solid #efefef;
}
#award table th,
#award table td{
	padding: 1em;
}
#award table tr:nth-child(even) th,
#award table tr:nth-child(even) td{
	background: #f0f0f0;
}
#award table th{
	width: 9%;
}
#award table td:nth-child(3){
	width: 25%;
}
#award table td:nth-child(4){
	width: 14%;
}
	@media screen and (max-width: 568px) {
		#award table th,
		#award table td{
			padding: 1em .75em;
		}
		#award table th{
			width: 18%;
		}
		#award table td{
			width: 100%;
			display: block;
		}
		#award table td:nth-child(3),
		#award table td:nth-child(4){
			width: 100%;
			padding-top: 0;
		}
		#award table td:nth-child(2),
		#award table td:nth-child(3){
			border-bottom: none;
			padding-bottom: .5em;
		}
	}
/*-----------------------------------------
contact
-----------------------------------------*/
#contact .flex-item:nth-child(odd),
#contact .flex-item:nth-child(even){
	width: 47.5%;
}
	@media screen and (max-width: 568px) {
		#contact .flex-item:nth-child(odd),
		#contact .flex-item:nth-child(even){
			width: 100%;
		}
		#contact .flex-item:nth-child(odd){
			margin-bottom: 2em;
		}
	}

.contactbox div{
	margin-bottom: .5em;
}
.contactbox div span.size{
	font-size: 1.18em;
	padding-left: .5em;
}
.contactbox div.mail{
	background: #dedede;
	padding: 1em;
	display: inline-block;
	margin-top: .75em;
}
ul.acsess{
	font-size: 93.75%;
	border-top: 1px solid #dedede;
}
ul.acsess li{
	padding: 1em 0;
	border-bottom: 1px solid #dedede;
}
ul.acsess li .big{
	padding-left: 2em;
}
.walk{
	background: url(../images/contact/walk.png) no-repeat  left center;
	background-size: 1em auto;
}
.car{
	background: url(../images/contact/car.png) no-repeat  left center;
	background-size: 1em auto;
}
.airplane{
	background: url(../images/contact/airplane.png) no-repeat  left center;
	background-size: 1em auto;
}
.bus{
	background: url(../images/contact/bus.png) no-repeat  left center;
	background-size: 1em auto;
}
.parking-box{
	margin-bottom: 1em;
}
.parking-box a{
	position: relative;
	display: block;
	color: #fff;
	font-weight: bold;
	background: #262727;
	padding: 1em 0 1em 2.25em;
}
.parking-box a:before{
	content: "";
	position: absolute;
	top: 50%;
	left: 1em;
	width: 0;
	height: 0;
	margin-top: -6px;
	border-top: solid .4em transparent;
	border-bottom: solid .4em transparent;
	border-left: solid .7em #fff;
}
.parking-box div{
	font-size: .75em;
	margin-top: .25em;
}


/*-----------------------------------------
kurachallenge
-----------------------------------------*/
/* 2022 06 23今後 ---------------------*/
.wakazo-histroy{
	padding: 2.5em 0;
	border-bottom: 1px solid #ccc;
}

.wakazo-histroy .flex-item:nth-child(odd){
	width: calc(100% - 200px);
	padding-right: 2em;
}
.wakazo-histroy .flex-item:nth-child(even){
	width: 200px;
}

	@media screen and (max-width: 568px) {

		#kurachallenge .flex-item:nth-child(odd){
			width: 100%;
			padding-right: 0;
		}
		#kurachallenge .flex-item:nth-child(even){
			width: 70%;
			margin: 0 auto;
		}
	}


/* 以前 ---------------------*/

#kurachallenge .clm2{
	margin-bottom: .75em;
}
/*----------------------*/

.top-image-caption{
	padding-top: 1.5em;
	font-size: .875em;
}
.images-harf{
	max-width: 49%;
	height: auto
}

/*　2021　*/
.clm2-member{
	width: 48%;
	margin-bottom: 1em;
}
	@media screen and (max-width: 568px) {
		.clm2-member{
			width: 100%;
			margin-bottom: 1em;
		}
		.clm2-member:last-child{
			margin-bottom: 0;
		}
	}


.snslinkbox{
	background: #c0c1c1;
	padding: 2em 1.5em;
	text-align: center;
	margin: 4em 0;
	color: #110f24;
}
.sns-link-flex {
	margin-top: 1.75em;
}
.sns-link-flex a{
	display: block;
	width: 49%;
	padding: 1.5em;
	color: #c0c1c1;
	text-align: left;
	font-weight: bold;
}
.sns-link-flex a:hover{
	opacity: .8;
}
.sns-link-flex a.icon-insta{
	background: #110f24 url("../images/common/btn-insta-pc.png") no-repeat 96% center;
	background-size: 2.5em auto;
}
.sns-link-flex a.icon-fb{
	background: #110f24 url("../images/common/btn-fb-pc.png") no-repeat 96% center;
	background-size: 2.5em auto;
}
	@media screen and (max-width: 950px) {
		.top-image-caption{
			padding-left: 6.5%;
			padding-right: 6.5%;
		}
	}
	@media screen and (max-width: 568px) {
		.images-harf{
			max-width: 100%;
			height: auto
		}
		
		/*　2021　*/
		.snslinkbox{
			padding: 2em 1em;
		}
		.snslinkbox span{
			display: block;
		}
		.sns-link-flex a{
			width: 100%;
			margin-bottom: .5em;
		}
	}
#y2021 .concept01:nth-child(odd){
	width: 76%;
}
#y2021 .concept01:nth-child(even){
	width: 24%;
}
/*------*/
#y2021 .concept02:nth-child(odd){
	width: 55%;
}
#y2021 .concept02:nth-child(even){
	width: 41%;
	margin-top: .5em;
}
/*------*/
#y2021 .clm2-thumb:nth-child(odd){
	width: 76%;
}
#y2021 .clm2-thumb:nth-child(even){
	width: 20%;
}
/*------*/
#y2021 .clm2-thumb2:nth-child(odd){
	width: 56%;
}
#y2021 .clm2-thumb2:nth-child(even){
	width: 40%;
}
	@media screen and (max-width: 950px) {
		#y2021 .clm2-thumb:nth-child(odd){
			width: 70%;
		}
		#y2021 .clm2-thumb:nth-child(even){
			width: 26%;
		}
	}

	@media screen and (max-width: 568px) {
		#y2021 .concept01:nth-child(odd){
			width: 100%;
		}
		#y2021 .concept01:nth-child(even){
			display: block;
			width: 40%;
			margin: 2em auto .75em;
		}
		/*------*/

		#y2021 .concept02:nth-child(odd){
			width: 100%;
		}
		#y2021 .concept02:nth-child(even){
			display: block;
			width: 100%;
			margin: 2em auto 0;
		}
		/*------*/

		#y2021 .clm2-thumb:nth-child(odd){
			width: 100%;
		}
		#y2021 .clm2-thumb:nth-child(even){
			display: block;
			width: 55%;
			margin: 1.75em auto 0;
		}
		/*------*/

		#y2021 .clm2-thumb2:nth-child(odd){
			width: 100%;
		}
		#y2021 .clm2-thumb2:nth-child(even){
			width: 85%;
			margin: 1.75em auto 0;
		}
	}

/*　2022　*/
#y2022 .section{
	padding-bottom: 4em;
}

.y2022-concept:nth-child(odd){
	width: calc(100% - 200px);
}
.y2022-concept:nth-child(even){
	width: 200px;
}

.y2022-thumb:nth-child(odd){
	width: calc(100% - 300px);
	padding-right: 1.5em;
}
.y2022-thumb:nth-child(even){
	width: 300px;
}
	@media screen and (max-width: 950px) {
		.y2022-thumb:nth-child(odd){
			width: calc(100% - 250px);
		}
		.y2022-thumb:nth-child(even){
			width: 250px;
		}
	}
	@media screen and (max-width: 666px) {
		.y2022-concept:nth-child(odd){
			width: 100%;
		}
		.y2022-concept:nth-child(even){
			width: 50%;
			margin: 1em auto 0;
		}
		.y2022-thumb:nth-child(odd){
			width: 100%;
			padding-right: 0;
		}
		.y2022-thumb:nth-child(even){
			width: 100%;
			margin-top: 1.5em;
		}

	}

/*-----------------------------------------
reserve
-----------------------------------------*/
.reserveform > dl{
	width: 100%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap:wrap;
}
.reserveform >  dl > dt{
	width: 27%;
	border-bottom: 1px solid #dedede;
	padding: 2.25em 0;
	font-weight: bold;
}
.reserveform >  dl > dd{
	width: 73%;
	border-bottom: 1px solid #dedede;
	padding: 2.25em 0;
}

	@media screen and (max-width: 666px) {
		.reserveform >  dl > dt{
			width: 100%;
			border-bottom: none;
			padding-bottom: .5em;
		}
		.reserveform >  dl > dd{
			width: 100%;
			padding-top: .5em;
		}
	}

.reserveform >  dl > dt span{
	font-size: .65em;
	font-weight: bold;
	line-height: 1.0;
	padding: .1em .5em;
	background: #E53F46;
	color: #fff;
	margin-right: 1em;
	position: relative;
	top: -1px;
}
.reserveform >  dl > dd .example{
	font-size: .8em;
	margin-top: .25em;
}
.reserveform >  dl > dd .em{
	margin-bottom: .5em;
}
.reserveform input,
.reserveform select,
.reserveform  textarea{
	font-size: 16px;
}

.reserveform input:focus,
.reserveform textarea:focus{
	background: #FFFFEF;
}
.reserveform input[type="text"] {
	border: solid 1px #999;
	padding: .5em .5em;
	border-radius: .25em;
	-moz-border-radius: .25em;
	-webkit-border-radius: .25em;
	line-height:1;
	width: 95%;
}

.reserveform select {
	padding: .25em .5em;
	border-radius: 0;
	border: solid 1px #999;
	position: relative;
}
.reserveform  textarea{
	border: solid 1px #999;
	width: 98%;
}

.reserveform .checkbox {
	box-sizing: border-box;
	cursor: pointer;
	display: inline-block;
	padding-left:2em;
	position: relative;
	width: auto;
}
.reserveform .checkbox::before {
	content: '';
	background: #fff;
	border: 1px solid #231815;
	display: block;
	top: 50%;
	left: 0;
	position: absolute;
	width: 12px;
	height: 12px;
	margin-top: -6px;
}
.reserveform .checkbox::after {
	content: '';
	border-right: 3px solid #E53F46;
	border-bottom: 3px solid #E53F46;
	display: block;
	top: 50%;
	left: 0;
	opacity: 0;
	position: absolute;
	transform: rotate(45deg);
	width: 6px;
	height: 12px;
	margin-top: -9px;
}
.reserveform input[type=checkbox]:checked + .checkbox::after {
    opacity: 1;
}

.reserveform  .submitbtn{
	text-align: center;
	margin: 3em auto 2em;
}
.reserveform .backbtn{
	text-align: center;
}
.reserveform input[type="submit"] {
	width: 40%;
	background: #E53F46;
	color: #fff;
	padding: 1.25em 0;
	border-radius: 5em;
	-moz-border-radius: 5em;
	-webkit-border-radius: 5em;
}

.reserveform input[type="button"] {
	width: 40%;
	background: #eee;
	color: #666;
	padding: 1.25em 0;
	border-radius: 5em;
	-moz-border-radius: 5em;
	-webkit-border-radius: 5em;
}
	@media screen and (max-width: 666px) {
		.reserveform input[type="submit"],
		.reserveform input[type="button"]  {
			width: 80%;
		}

	}

/*-----------------------------------------
products
-----------------------------------------*/
.products-cartlink{
	position: relative;
	top: -2.25em;
	text-align: right;
}
.products-cartlink a{
	background: #000;
	color: #fff;
	font-size: .82em;
	display: inline-block;
	padding: .25em .75em;
}
.products-index{
	width: 100%;
	position: relative;
	top: 0;
}
.products-index .flex-item{
	width: 32%;
	background: #e6e6e6;
	margin-bottom: 1em;
}
	@media screen and (max-width: 950px) {
		.products-cartlink{
			text-align: left;
		}
		.products-cartlink{
			top: 0;
			margin-bottom: 1.25em;
		}
		.products-index{
			top: 0;
		}
	}
	@media screen and (max-width: 666px) {
		.products-index .flex-item{
			width: 49%;
		}
	}

	@media screen and (max-width: 414px) {
		.products-index .flex-item{
			width: 100%;
			margin-bottom: .5em;
			font-size: .92em;
		}
		.products-index .brand{
			background: #669fc9;
		}
		.products-index .limited{
			background: #c1c966;
		}
		.products-index .takasago{
			background: #d583a8;
		}
		.products-index .liqueur{
			background: #72bf87;
		}
		.products-index .sakelees{
			background: #c9ab66;
		}
		.products-index .goods{
			background: #66bec9;
		}
		.products-index .flex-item .inner {
			width: 100%;
			display: -webkit-flex;
			display: -moz-flex;
			display: -ms-flex;
			display: -o-flex;
			display: flex;
			flex-wrap:wrap;
		}
	}

.products-index .flex-item .inner div{
	height: 15em;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap:wrap;
	align-items: center;
	-webkit-box-direction:reverse;
	-moz-box-direction:reverse;
	-webkit-box-orient:horizontal;
	-moz-box-orient:horizontal;
	-webkit-flex-direction:row-reverse;
	-moz-flex-direction:row-reverse;
	flex-direction:row-reverse;
}

.products-index .brand .inner div{
	background: url(../images/products/index/brand.png) no-repeat bottom left;
	background-size: auto 100%;
}
.products-index .limited .inner div{
	background: url(../images/products/index/limited.png) no-repeat bottom left;
	background-size: auto 100%;
}
.products-index .takasago .inner div{
	background: url(../images/products/index/takasago.png) no-repeat bottom left;
	background-size: auto 100%;
}
.products-index .liqueur .inner div{
	background: url(../images/products/index/liqueur.png) no-repeat bottom left;
	background-size: auto 100%;
}
.products-index .sakelees .inner div{
	background: url(../images/products/index/sakelees.png) no-repeat bottom left;
	background-size: auto 100%;
}
.products-index .goods .inner div{
	background: url(../images/products/index/goods.png) no-repeat bottom left;
	background-size: auto 100%;
}

.products-index .flex-item .inner span{
	padding: .5em 1em;
	color: #fff;
	font-weight: bold;
	font-size: 1.08em;
}
.products-index .brand .inner span{
	background: #669fc9;
}
.products-index .limited .inner span{
	background: #c1c966;
}
.products-index .takasago .inner span{
	background: #d583a8;
}
.products-index .liqueur .inner span{
	background: #72bf87;
}
.products-index .sakelees .inner span{
	background: #c9ab66;
}
.products-index .goods .inner span{
	background: #66bec9;
}

.products-index .flex-item .inner > ul{
	padding: 2em 1em 1em 1em;
}
	@media screen and (max-width: 414px) {
		.products-index .flex-item .inner div{
			height: auto;
			display: block;
			width: 50%;
			background: none!important;
			padding: 1.25em 1em;
		}
		.products-index .flex-item .inner span{
			padding: 0;
			background: none!important;
			font-size: 1em;
		}
		.products-index .flex-item .inner > ul{
			padding: 1em 0;
			width: 50%;
		}
		.products-index .flex-item .inner > ul a{
			display: block;
		}
	}


.products-index .flex-item .inner > ul li{
	padding: .5em 0 .5em 1em;
	position: relative;
	display: block;
	line-height: 1.0;
}
.products-index .flex-item .inner > ul li:before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 0;
	margin-top: 9px;
	border-top: solid .4em transparent;
	border-bottom: solid .4em transparent;
	border-left: solid .6em #303030;
}




.products-list{
	width: 100%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap:wrap;
}
.products-list li{
	width: calc(100% / 3);
	font-size: 93.75%;
	margin-bottom: 3em;
}
.products-list li:nth-child(3n+1){
	padding-right: 1.6em;
}
.products-list li:nth-child(3n+2){
	padding: 0 .8em;
}
.products-list li:nth-child(3n+3){
	padding-left: 1.6em;
}
.products-list h2{
	font-size: 1.333em;
	line-height: 1.3;
	font-weight: 500;
	padding: .75em 0;
	margin-bottom: 1em;
	text-align: center;
	border-bottom: 1px solid #aaa;
}
.products-list h2 .xsmall{
	font-size: .8125em;
}
	@media screen and (max-width: 1024px) {
		.products-list li:nth-child(3n+1){
			padding-right: 0;
		}
		.products-list li:nth-child(3n+2){
			padding: 0;
		}
		.products-list li:nth-child(3n+3){
			padding-left: 0;
		}
		.products-list{
			-webkit-justify-content: space-between;
			justify-content: space-between;
		}
		.products-list li{
			width: 47%;
		}
		.products-list h2 br{
			display: none;
		}
	}

	@media screen and (max-width: 568px) {
		.products-list li{
			width: 100%;
			display: -webkit-flex;
			display: -moz-flex;
			display: -ms-flex;
			display: -o-flex;
			display: flex;
			flex-wrap:wrap;
		}
		.products-list li .thumb{
			width: 25%;
		}
		.products-list li .detail{
			width: 75%;
			padding-left: 1em;
		}
		.products-list h2{
			text-align: left;
			padding-top: 0;
			padding-bottom: .25em;
			margin-bottom: .75em;
		}
	}
.products-list li .thumb{
	position: relative;
}
.icon-info{
	position: absolute;
	top: 0;
	right: 0;
	line-height: 1.4;
	text-align: right;
}
.icon-info img{
	width: 48px;
	height: auto;
	margin-right: .15em;
	margin: 0;
}
.icon-info div{
	background: #ebcd00;
	font-size: .86em;
	line-height: 1.0;
	font-weight: bold;
	padding: .35em .5em;
	text-align: center;
	margin-bottom: .3em;
}
	@media screen and (max-width: 568px) {
		.icon-info img{
			width: 22px;
		}
		.icon-info br{
			display: none;
		}
		.icon-info div{
			font-size: .7692em;
			padding: .25em;
			margin-bottom: -2px;
			transform: scale(0.6);
			-webkit-transform: scale(0.6);
			-moz-transform: scale(0.6);
			transform-origin:100% 0;
			-webkit-transform-origin:100% 0;
			-moz-transform-origin:100% 0;
		}
		.icon-info div br{
			display: block;
		}
	}


.date{
	font-size: 93.75%;
	margin: 1em 0;
}
.type{
	line-height: 1.375;
	width: 100%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap:wrap;
	align-items: center;
	justify-content: center;
	font-size: 87.5%;
	margin: 1em 0;
}
.type div{
	width: calc(100% / 7);
	padding: .5em 0;
}
.type div:nth-child(n+2){
	border-style: solid;
	border-width: 1px 0 1px 1px;
	border-color: #666;
}
.type div:nth-child(6){
	border-right: 1px solid #666;
}
.type div:first-child,
.type div:last-child{
	text-align: center;
	border:none;
}
.type div.select{
	background: #FFB660;
}
.products-list dl{
	width: 100%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap:wrap;
	align-items: center;
	font-size: 87.5%;
}
.products-list dl dt{
	width: 52%;
	line-height: 1.4;
	padding: 1em 0;
}
.products-list dl dd{
	width: 48%;
	text-align: right;
	font-weight: bold;
}

.products-list dl dt span{
	font-weight: 600;
	font-size: 1.14em;
}
.buy{
	background: #9d9d9d;
	color: #fff;
	border-radius: .25em;
	-moz-border-radius: .25em;
	-webkit-border-radius: .25em;
	padding: .75em 0;
	width: 100%;
	font-size: 92%;
}
.soldout{
	border:1px solid #c0c0c0;
	color: #505050;
	border-radius: .25em;
	-moz-border-radius: .25em;
	-webkit-border-radius: .25em;
	padding: .75em 0;
	width: 100%;
	font-size: 92%;
	display: block;
	text-align: center;
}
.banner{
	margin-top: 1em;
	padding: .5em .75em;
	background: #030303;
	color: #fff;
	font-size: 92%;
	text-align: center;
	display: block;
	border-radius: .25em;
	-moz-border-radius: .25em;
	-webkit-border-radius: .25em;
	position: relative;
}
.banner:before{
	content: "";
	position: absolute;
	top: 50%;
	right: .75em;
	width: 0;
	height: 0;
	margin-top: -5px;
	border-top: solid .4em transparent;
	border-bottom: solid .4em transparent;
	border-left: solid .7em #fff;
}
a.btn-att{
	border:1px solid #F23E0C; 
	color:#F23E0C!important; 
	display: block;  
	padding: .75em; 
	font-size: 15px;
	font-weight: bold;
	line-height: 1.3;
	text-align: center;
}
.drawer-menu a.btn-att {
	max-width: 230px;
	margin: 1.75em auto;
	font-size: 12px;
	line-height: 1.5;
	font-family:"Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	padding: .75em .375em; 
}
	@media screen and (max-width: 568px) {
		.btn-att{
			text-align: left!important;
			font-size: 13px!important;
		}
	}

