@charset  "utf-8";
.mincho {font-family: source-han-serif-japanese,serif;}

.commonLayout2 > .caption {
	margin-bottom: 80px;
}

.fairMain div.fairHead {
	padding: 215px 0 0;
	background-size: cover;
	background-position: center;
	background-color: #000;
}

.fairMain h2 {
	padding-top: 50px;
	color: #bea574;
	font-size: 16px;
	font-size: 1.6rem;
	text-align: center;
	font-family: serif;
	background-color: rgba(0,0,0,0.8);
}

.fairMain h2:after {
	content: "";
	display: block;
	border-bottom: solid 2px #7e6606;
	width: 20px;
	padding-top: 30px;
	margin: 0 auto;
}

.contentWrap {
	padding: 65px 0 50px;
	margin: 0 auto;
	max-width: 950px;
}

.backBtn {
	display: block;
	margin: 50px auto 0;
	text-align: center;
	width: 280px;
	height: 60px;
	color: #fff;
	background-color: #A5964B;
	position: relative;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: background-color 0.3s,color .3s;
	-o-transition: background-color 0.3s,color .3s;
	transition: background-color 0.3s,color .3s;
}

.backBtn > span {
	font-size: 14px;
	letter-spacing: .32em;
}

.mT {
	display: block;
	text-align: center;
	color: #d9597e;
	width: 280px;
	height: 60px;
	position: relative;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: background-color 0.3s,color .3s;
	-o-transition: background-color 0.3s,color .3s;
	transition: background-color 0.3s,color .3s;
}

.mT > span {
	font-size: 15px;
	letter-spacing: .07em;
}

.mT,.comBtn,.backBtn {
	font-size: 0;
}

.mT > span,.comBtn > span,.backBtn > span {
	display: inline-block;
	vertical-align: middle;
}

.mT:before,.comBtn:before,.backBtn:before {
	content: "";
	display: inline-block;
	width: 0;
	height: 100%;
	vertical-align: middle;
}

.cal_anno {
	margin-bottom: 25px;
}
.comPageTit.type02 {
 padding-bottom: 0;
}
.comPageTit.type02 .tit.type02 {
	margin-bottom: 0;
}
@media screen and (max-width:640px) {
	.commonLayout2 > .caption {
		margin-bottom: 8%;
	}

	#container {
		background: url(../../images/prologue_bg.png) top;
	}

	.fairMain div.fairHead {
		padding: 75px 0 0;
	}

	.contentWrap {
		padding: 10% 3% 7%;
		margin: 0 auto;
		width: 94%;
	}

	.backBtn {
		display: block;
		margin: 7% auto 0;
		text-align: center;
		width: 100%;
		height: 60px;
		color: #fff;
		position: relative;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		-webkit-transition: background-color 0.3s,color .3s;
		-o-transition: background-color 0.3s,color .3s;
		transition: background-color 0.3s,color .3s;
	}

	.backBtn > span {
		font-size: 14px;
		letter-spacing: .32em;
	}

	.mT {
		display: block;
		text-align: center;
		color: #d9597e;
		width: 280px;
		height: 60px;
		position: relative;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		-webkit-transition: background-color 0.3s,color .3s;
		-o-transition: background-color 0.3s,color .3s;
		transition: background-color 0.3s,color .3s;
	}

	.mT:after {
		content: "";
		display: block;
		margin: auto 0;
		border-top: 1px solid;
		border-right: 1px solid;
		width: 8px;
		height: 8px;
		position: absolute;
		top: 0;
		bottom: 0;
		right: 15px;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		transform: rotate(45deg);
	}

	.mT > span {
		font-size: 15px;
		letter-spacing: .07em;
	}

	.mT,.comBtn,.backBtn {
		font-size: 0;
	}

	.mT > span,.comBtn > span,.backBtn > span {
		display: inline-block;
		vertical-align: middle;
	}

	.mT:before,.comBtn:before,.backBtn:before {
		content: "";
		display: inline-block;
		width: 0;
		height: 100%;
		vertical-align: middle;
	}

	.cal_anno {
		text-align: left;
		margin-bottom: 5%;
	}
}

.fairBtn {
	border-bottom: 1px solid #736636;
	font-size: 0;
	text-align: center;
	background-color: #fff;/*#000;*/
	padding-top: 100px;
	font-family: source-han-serif-japanese,serif;
}

.fairList .fairBtn {
	margin-bottom: 60px;
}

.fairBtn > * {
	display: inline-block;
	max-width: 300px;
	width: 100%;
	height: 60px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border: 1px solid #937B1C;
	border-bottom: 2px solid #7e6606;
}

.fairBtn > * + * {
	margin-left: 2px;
}

.fairBtn > :before {
	content: "";
	display: inline-block;
	width: 0;
	height: 100%;
	vertical-align: middle;
}

.fairBtn > * > span {
	font-size: 18px;
	vertical-align: middle;
	color: #fff;
}

.fairBtn > a {
	background-color: #483a00;
	color: #fff;
	text-decoration: none;
	-webkit-transition: background-color .3s;
	-o-transition: background-color .3s;
	transition: background-color .3s;
}

.no-touchevents .fairBtn > a:hover,
.fairBtn > a.hover {
	background-color: #7e6606;
}

.fairBtn > p {
	background-color: #7e6606;
	position: relative;
}

.fairBtn :nth-child(2) {
	margin-left: 2px;
}
@media screen and (max-width:640px) {

	.fairList .fairBtn {
		margin-bottom: 12%;
	}

	.fairBtn {
		background-color:#000;
		padding: 50px 5% 0;
	}

	.fairBtn > * {
		width: 48%;
		height: 40px;
	}

	.fairBtn > * img {
		width: auto;
		height: 13px;
		height: 4vw;
	}
}

.calenderWrap {
	background-image: url(../img/fair/fair_bg.jpg);
	-webkit-background-size: 100% auto;
	background-size: 100% auto;
	background-color: #1A1A1A;
	background-repeat: no-repeat;
	background-position: top center;
	padding: 80px 20px;
}

.calender {
	max-width: 1080px;
	width: 100%;
	margin: auto;
}

.calender .dateInfo {
	overflow: hidden;
	position: relative;
	max-width: 1180px;
	margin: 0 auto;
	padding-bottom: 30px;
}

.calender .dateInfo:after {
	content: "";
	display: block;
	clear: both;
}

.calender .dateInfo h3 {
	padding-bottom: 50px;
	text-align: center;
	font-size: 24px;font-weight: 700;line-height: 1.7;
	color: #FFF;
	font-family: source-han-serif-japanese,serif;
}

.calender .dateInfo h3:after {
	content: "";
	display: block;
	border-bottom: solid 2px #fff;
	width: 20px;
	padding-top: 30px;
	margin: 0 auto;
}

.calender .month {
	font-size: 30px;
	font-size: 3rem -webkit-text-stroke-width: .02em;
	text-stroke-width: .02em;
	letter-spacing: .05em;
	display: none;
	color: #fff;
	margin-top: 20px;
}

.calender .month.now {
	display: inline-block;
}

.calender .month span {
	font-size: 26px;
	letter-spacing: 0;
	margin: 0 3px 0 2px;
}

.calender .switchMonth {
	font-size: 0;
	display: inline-block;
	float: right;
}

.calender .switchMonth a {
	display: inline-block;
	color: #fff;
	background-color: #483a00;
	width: 200px;
	height: 60px;
	text-align: center;
	white-space: nowrap;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: color 0.3s,background-color .3s;
	-o-transition: color 0.3s,background-color .3s;
	transition: color 0.3s,background-color .3s;
	cursor: pointer;
	position: relative;
}

.calender .switchMonth a:first-child {
	margin-right: 12px;
}

.no-touchevents .calender .switchMonth a:hover,
.calender .switchMonth a.hover {
	color: #fff;
	background-color: #aba07E;
}

.no-touchevents .calender .switchMonth a:hover:after,
.calender .switchMonth a.hover:after {
	border-bottom-color: #aba07E;
}

.calender .switchMonth .now {
	background-color: #7e6606;
	color: #fff;
	z-index: 1;
}

.calender .switchMonth .now:after {
	content: "▼";
	display: block;
	text-align: center;
	color: #7e6606;
	font-size: 20px;
	line-height: 1em;
	position: absolute;
	bottom: -15px;
	width: 100%;
}

.no-touchevents .calender .switchMonth .now:hover,
.calender .switchMonth .now.hover {
	background-color: #83773A;
	color: #fff;
}

.no-touchevents .calender .switchMonth .now:hover:after,
.calender .switchMonth .now.hover:after {
	border-bottom-color: #83773A;
}

.calender .switchMonth a:before {
	content: "";
	display: inline-block;
	height: 100%;
	vertical-align: middle;
}

.calender .switchMonth a > span {
	display: inline-block;
	white-space: normal;
	font-size: 20px;
	font-size: 2rem;
	letter-spacing: .1em;
	-webkit-text-stroke-width: .01em;
	text-stroke-width: .01em;
	vertical-align: middle;
}

.calender .switchMonth a > span > span {
	font-size: 25px;
}

.calender .marklist {
	margin-bottom: 18px;
	margin-left: -12px;
	text-align: center;
	display: none !important;
}

.calender .marklist li {
	margin: 0 0 12px 12px;
	display: inline-block;
	color: #fff;
}

.calender .marklist li:last-child {
	margin-right: 12px;
}

.calender .marklist li b {
	margin-right: 5px;
	display: inline-block;
	background-color: #ccc;
	color: #fff;
	padding: 2px 5px;
	font-size: 12px;
}

@media screen and (max-width:640px) {
	.calenderWrap {
		padding: 15% 5%;
	}

	.calender .dateInfo {
		margin-bottom: 0;
		padding-bottom: 5%;
		overflow: hidden;
	}
	
	.calender .dateInfo h3 {
		padding-bottom: 10%;
	}
	.calender .dateInfo h3::after {
		padding-top: 7%;
	}
	
	.calender .dateInfo h3 img {
		width: auto;
		height: 18px;
		height: 5.5vw;
	}

	.calender .dateInfo:after {
		content: "";
		display: block;
		clear: both;
	}

	.calender .month {
		font-size: 1.3rem;
		-webkit-text-stroke-width: .02em;
		text-stroke-width: .02em;
		letter-spacing: .05em;
		display: none;
		color: #fff;
		text-align: center;
		float: none;
		margin-top: 0;
		margin-bottom: 5%;
	}

	.calender .month.now {
		display: block;
	}

	.calender .month span {
		margin-left: 5px;
		font-size: 40px;
		letter-spacing: 0;
	}

	.calender .switchMonth {
		margin-bottom: 7%;
		font-size: 0;
		float: none;
		width: 100%;
	}

	.calender .switchMonth a {
		display: inline-block;
		color: #fff;
		height: 40px;
		width: 45%;
		text-align: center;
		white-space: nowrap;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		-webkit-transition: color 0.3s,background-color .3s;
		-o-transition: color 0.3s,background-color .3s;
		transition: color 0.3s,background-color .3s;
		cursor: pointer;
	}

	.calender .switchMonth a:first-child {
		margin-right: 9%;
	}

	.calender .switchMonth .now {
	}

	.calender .switchMonth a:before {
		content: "";
		display: inline-block;
		height: 100%;
		vertical-align: middle;
	}

	.calender .switchMonth a:after {
		content: none;
	}

	.calender .switchMonth a > span {
		display: inline-block;
		white-space: normal;
		font-size: 15px;
		font-size: 1.5rem;
		letter-spacing: .1em;
		-webkit-text-stroke-width: .01em;
		text-stroke-width: .01em;
		vertical-align: middle;
	}

	.calender .switchMonth a > span > span {
		font-size: 25px;
	}

	.calender .dateInfo .txt {
		text-align: center;
		color: #fff;
		font-size: 14px;
		font-size: 1.4rem;
		margin-top: 10%;
	}

	.calender .marklist {
		display: inline-block;
	}

	.calender .marklist li {
	}

	.calender .marklist li:last-child {
		margin-right: 12px;
	}

	.calender .marklist li b {
		margin-right: 5px;
		display: inline-block;
		background-color: #ccc;
		color: #fff;
		padding: 2px 5px;
		font-size: 12px;
	}
	
	
	
	
	
	
	.calender .contentDetail .title {
		margin-bottom: 3%;
		text-align: center;
		font-weight: 400;
		font-size: 16px;
		color: #fff;
	}

	.calender .contentDetail .select {
		margin-bottom: 7%;
	}

	.calender .contentDetail .select .attention {
		font-size: 14px;
		font-size: 1.4rem;
		line-height: 22px;
		line-height: 2.2rem;
		text-align: center;
		color: #fff;
		font-weight: bold;
	}

	.calender .contentDetail .fairDetail {
		display: block;
		border-top: 1px solid #cacaca;
		padding: 5% 0;
		color: #fff;
	}

	.calender .contentDetail .fairDetail:last-child {
		margin-bottom: 10%;
		border-bottom: 1px solid #cacaca;
	}

	.calender .contentDetail .fairDetailWaku {
		position: relative;
		min-height: 100px;
		color: #fff;
		white-space:nowrap;
	}
	.calender .contentDetail .fairDetailWaku:before {
		content:"";
		display:inline-block;
		height:100px;
		width:0;
		vertical-align:middle;
	}

	.calender .contentDetail .fairDetailWaku:after {
		content: "";
		display: block;
		margin: auto 0;
		width: 10px;
		height: 10px;
		border-top: 1px solid #646464;
		border-right: 1px solid #646464;
		position: absolute;
		top: 0;
		bottom: 0;
		right: 7px;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		transform: rotate(45deg);
	}

	.calender .contentDetail .fairDetailWaku .ph {
		display: block;
		margin: auto 0;
		width: 100px;
		height: 100px;
		background-size: cover;
		background-position: center;
		position: absolute;
		left: 0;
		top: 0;
		bottom: 0;
	}

	.calender .contentDetail .fairDetailWaku .txt {
		display: inline-block;
		margin: 26px 20px 0 110px;
		text-align: left;
		color: #fff;
		white-space:normal;
		vertical-align:top;
	}
	.calender .contentDetail .fairDetailWaku.labelWaku .txt {
		margin-top:0;
	}

	.calender .contentDetail .fairDetailWaku .txt .date {
		margin-bottom: 2%;
		font-size: 10px;
		/* font-size: 1.0rem; */
		line-height: 18px;
		line-height: 1.8rem;
		word-break: break-all;
	}

	.calender .contentDetail .fairDetailWaku .txt .title {
		text-align: left;
		font-size: 12px;
		line-height:1.6;
	}
	.calender .fairDetail.hover .txt .title {
		text-decoration: underline;
	}

	.calender .listLink {
		display: block;
		width: 100%;
	}
	#spDayDetailContent {
		background-color: #333333;
		padding: 3%;
	}
	.contentDetail {
		margin-top: 10%;
	}
	.calender .contentDetail .fairDetailWaku .label {
		position: absolute;
		top: 0;
		left: 110px;
		width: 80px;
		height: 0;
		padding-top: 20px;
		overflow: hidden;
		background-position: top;
		background-repeat: no-repeat;
		background-size: contain;
		color: #FFF;
		font-size: 14px;
		line-height: 36px;
		text-align: center;
	}
	.calender .contentDetail .fairDetailWaku .label.label01 {
		background-image: url("../common/img/fair_label01b.png");
	}
	.calender .contentDetail .fairDetailWaku .label.label02 {
		background-image: url("../common/img/fair_label02b.png");
	}
	.calender .contentDetail .fairDetailWaku .label.label03 {
		background-image: url("../common/img/fair_label03b.png");
	}
}

.content_cal {
    width: 100%;
    border-collapse: collapse;
}

.content_cal.now {
    display: table;
}

.content_cal thead tr th {
    background-color: #FFFFFF;
    color: #4f4f4f;
    text-align: center;
    font-weight: normal;
    font-size: 14px;
    letter-spacing: 0.2em;
	border-right: 1px solid #DADADA;
    padding: 16px 0;
    width: 14.28%;
    font-weight: bold;
}

.content_cal thead tr th:nth-child(6) {
    background-color: #3C78A6;
    color: #fff;
	border-right: 1px solid #FFFFFF;
}

.content_cal thead tr th:nth-child(7) {
    background-color: #B55C5F;
    border-right: 0;
    color: #fff;
	border-right: none;
}

.content_cal tbody tr td {
    background-color: #e7e7e7;
    border-right: 1px solid #C6C6C6;
    border-bottom: 1px solid #C6C6C6;
    padding: 4px;
    vertical-align: top;
    width: 14.28%;
    position: relative;
    -webkit-transition: background-color 0.3s;
    -o-transition: background-color 0.3s;
    transition: background-color 0.3s;
}

.content_cal tbody tr td:first-child {
    border-left: 0;
}

.content_cal tbody tr td:nth-child(7) {
    border-right: 0;
}

.no-touchevents .content_cal tbody tr td:hover,
.content_cal tbody tr td.hover {
    background-color: #E0E0E0;
}

.content_cal tbody tr td > p {
    color: #323232;
    font-size: 18px;
    letter-spacing: 0.05em;
    display: block;
    position: relative;
    top: -3px;
    padding: 4px 0 10px 4px;
	color: #9e8d46;
}

.content_cal tbody tr td:nth-child(6) > p {
	font-weight: bold;
	color: #3C78A6;
}

.content_cal tbody tr td.holiday > p ,
.content_cal tbody tr td:nth-child(7) > p {
	font-weight: bold;
	color: #B55C5F;
}

.content_cal tbody tr td .fairgroup {
    min-height: 140px;
}

.content_cal tbody tr td .fairgroup > a {
    display: inline-block;
    margin-bottom: 5px;
    padding: 12px 5px 8px 5px;
    -webkit-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    background-color: #eee;
    font-size: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border: 1px solid #FFF;
	
	-webkit-transition: 0.2s;
	-moz-transition: 0.2s;
	-ms-transition: 0.2s;
	-o-transition: 0.2s;
	transition: 0.2s;
}

.no-touchevents .content_cal tbody tr td .fairgroup > a:hover,
.content_cal tbody tr td .fairgroup > a.hover {
	-webkit-filter: brightness(110%);
	filter: brightness(110%);
}

.content_cal tbody tr td .fairgroup > a span {
    color: #4B4B4B;
    display: inline-block;
    margin-bottom: 3px;
    margin-bottom: 3px;
    font-size: 12px;
    width: 100%;
	line-height: 1.5;
}

.no-touchevents .content_cal tbody tr td .fairgroup > a:hover span ,
.content_cal tbody tr td .fairgroup > a.hover span {
	text-decoration: underline;
}

.content_cal tbody tr td .fairgroup > a b {
    margin-bottom: 2px;
}

.content_cal tbody tr td .fairgroup > a b {
    display: inline-block;
    margin: 0 3px 3px 0;
    padding: 5px 4px;
    color: #fff;
    background-color: #aaa;
    font-weight: normal;
    font-size: 12px;
}

.content_cal tbody tr td .hide {
    background-color: rgba(120, 120, 120, 0.6);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5;
}
@media screen and (max-width:640px) {
    .content_cal {
        margin-bottom: 5%;
    }
    .content_cal.now {
        display: table;
    }
    .content_cal thead {}
    .content_cal thead tr th {
        text-align: center;
        font-weight: bold;
        font-size: 14px;
        letter-spacing: 0.2em;
        border-right: 1px solid #E7E5E1;
        padding: 6px 0;
        width: 14.28%;
    }
    .content_cal thead tr th:nth-child(6) {}
    .content_cal thead tr th:nth-child(7) {
        border-right: 0;
    }
    .content_cal tbody tr td {
        background-color: #fff;
        border-right: 1px solid #E7E5E1;
        border-bottom: 1px solid #E7E5E1;
        padding: 4px 4px 6.5% 4px;
        width: 14.28%;
        text-align: center;
        position: relative;
        vertical-align: middle;
        position: relative;
        font-size: 0;
        -webkit-transition: background-color 0.3s;
        -o-transition: background-color 0.3s;
        transition: background-color 0.3s;
    }
    .content_cal tbody tr td[rel] {
        cursor: pointer;
    }
    .content_cal tbody tr td:first-child {
        border-left: 0;
    }
    .content_cal tbody tr td:nth-child(7) {
        border-right: 0;
    }
    .content_cal tbody tr td > p {
        display: inline-block;
		padding-top: 6px;
        color: #323232;
        font-size: 14px;
        letter-spacing: -0.5px;
        position: relative;
        top: 0;
        z-index: 1;
        pointer-events: none;
		padding: 0;
    }
    .content_cal tbody tr td:nth-child(6) > p {
	}
    .content_cal tbody tr td.holiday > p,
    .content_cal tbody tr td:nth-child(7) > p {
	}
    .content_cal tbody tr td .fairgroup {
        min-height: 140px;
        display: block;
        margin: auto;
        min-height: 0;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
    }
    .calender .content_cal tbody tr td .fairgroup:after {
        content: "開催";
        display: block;
        margin: 0 auto;
        font-size: 10px;
        letter-spacing: 0.05em;
        position: absolute;
        left: 0;
        right: 0;
		top: 23px;
        pointer-events: none;
    }
    .calender .content_cal tbody tr td .fairgroup.off:after {
        display: none;
    }
    .content_cal tbody tr td .fairgroup > a {
        display: block;
        margin: auto;
        padding: 0;
        position: absolute;
        left: 0;
        top: 0;
        right: 0;
        bottom: 0;
        width: 80%;
        height: 80%;
        border: 1px solid #fdf2f4;
        background-color: #eee;
        font-size: 0;
    }
    .content_cal tbody tr td .fairgroup > a span,
    .content_cal tbody tr td .fairgroup > a b {
        display: none;
    }
    .content_cal tbody tr td .fairgroup > a b {
        display: none;
    }
    .content_cal tbody tr td .hide {
        background-color: rgba(120, 120, 120, 0.7);
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 5;
    }
}

/* fairWeekend */
.fairWeekend {
	font-size: 0;
	text-align: left;
	/*padding: 75px 20px;*/
	padding: 75px 0 100px;
	background-color: #e7e2df;
}

.fairWeekend > .in {
	/*max-width: 1200px;*//*1080px;*/
	width: 100%;
	margin: auto;
}

/*.sec_fair {
	padding: 0;
}*/
.sec_fair .slidearea.second{
	margin-top: 50px;
}

.fairWeekendTitle {
	text-align: center;
	/*padding-top: 75px;*/
	margin-bottom: 50px;
}

.fairWeekendTitle.mincho {font-size: 28px;font-weight: 700;line-height: 1.7;letter-spacing: 0.1em;color: #7e6606;text-align: center;}
.fairWeekendTitle:after {
	content: "";
	display: block;
	border-bottom: solid 2px #7e6606;
	width: 20px;
	padding-top: 30px;
	margin: 0 auto;
}
@media screen and (max-width:640px) {
	.fairWeekendTitle.mincho {
		font-size: 24px;
		letter-spacing: .05em;
		line-height: 1.2;
	}
}

.fairWeekendInfo {
	padding-top: 30px;
	max-width: 1180px;
	margin: 0 auto;
}

.fairWeekendInfo > li {
	width: 47%;
	display: inline-block;
	vertical-align: top;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background-color: #fff;
	margin-bottom: 3%;
}

.fairWeekendInfo > li:nth-child(odd) {
	margin-right: 6%;
}

.fairWeekendInfo .link {
	position: relative;
	padding: 20px 23px;
	display: block;
	overflow: hidden;
}

.fairWeekendInfo .img {
	-webkit-background-size: cover;
	background-size: cover;
	background-position: center;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 42%;
	padding-top: 42%;
	float: left;
}

.fairWeekendInfo .title {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin-left: 46%;
	width: 54%;
	font-size: 16px;
	font-size: 1.6rem;
	position: relative;
	color: #a18100;
	margin-bottom: 10px;
	line-height: 1.5;
}

.no-touchevents .fairWeekendInfo .link:hover .title,
.fairWeekendInfo .link.hover .title {
	text-decoration: underline;
}

.fairWeekendInfo .time {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin-left: 46%;
	width: 54%;
	background-color: #f8f6ef;
	border-top: solid 1px #d9cb9a;
	padding: 10px;
	margin-bottom: 10px;
	display: block;
}

.fairWeekendInfo .time .line01 {
	display: block;
	font-size: 16px;
	font-size: 1.6rem;
	color: #961515;
	margin-bottom: .3em;
}

.fairWeekendInfo .time .line02 {
	display: block;
	font-size: 12px;
	font-size: 1.2rem;
	color: #4c4c4c;
}

.fairWeekendInfo .time .time_one {
	display: inline-block;
}
.fairWeekendInfo .time .time_one + .time_one:before {
	content: '/';
}

.fairWeekendInfo .caption {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin-left: 46%;
	width: 54%;
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1.8px;
	line-height: 1.8rem;
	color: #3c3c3c;
	margin-bottom: 1em;
}
@media screen and (max-width:640px) {
	.sec_fair .slidearea.second{
		margin-top: 25px;
	}

	.fairWeekend {
		padding: 15% 5%;
	}
	.fairWeekendInfo .time {
		padding: 15px 5px;
	}
	.fairWeekendTitle img {
		width: auto;
		height: 19px;
		height: 6vw;
	}
	.fairWeekendInfo {
		padding-top: 0;
	}
	.fairWeekendTitle {
		margin-bottom: 0;
	}
	.fairWeekendTitle:after {
		padding-top: 7%;
		margin-bottom: 7%;
	}
	.fairWeekendInfo .title {
		font-size: 12px;
		font-size: 1.2rem;
		line-height: 17px;
		line-height: 1.7rem;
	}
	.fairWeekendInfo .link {
		padding: 6% 5%;
	}
	.fairWeekendInfo .time .time_one {
		font-size: 1.0rem;
		line-height: 1.5;
	}
	.fairWeekendInfo .time .line01 {
		margin-bottom: 3%;
		font-size: 12px;
		font-size: 1.2rem;
	}
	.fairWeekendInfo .caption {
		font-size: .9rem;
		line-height: 1.7rem;
		margin-left: 0;
		width: 100%;
	}
	.fairWeekendInfo > li {
		width: 100%;
	}

	.fairWeekendInfo > li:nth-child(odd) {
		margin-right: 0;
	}
}


/* リスト */
.content_li {
	word-break: break-all;
	margin-bottom: 50px;
}

.content_li .dayblock {
	background-color: #FFF;
	display: table;
	max-width: 1180px;
	width: 100%;
}

.content_li .dayblock + .dayblock {
	border-top: 1px solid #D8D8D8 ;
}

.content_li .dayblock dt {
	text-align: center;
	background-color: #FFF;
	box-sizing: border-box;
	display: table-cell;
	width: 17.8%;/*15%;*/
	vertical-align: top;
	padding-top: 17px;
	border-right: 1px solid #D8D8D8 ;
	color: #4D4D4D;
}

.content_li .dayblock.fixed dt span.wrap {
	display: block;
	width: 210px;/*16.5%;*/
	position:fixed;
	top: 115px;
	left: 50%;
	margin-left: -590px;
	z-index: 1;
}
@media screen and (max-width:1220px) {
	.content_li .dayblock.fixed dt span.wrap{
		width: 17.8%;
		left: 20px;
		margin-left: 0;
	}
}

.content_li .dayblock dt span:nth-child(1) {
	display: inline-block;
	width: 100%;
	font-size: 28px;/*36px;*/
	font-size: 2.8rem;/*3.6rem;*/
	letter-spacing: 0.05em;
	/*margin-bottom: 10px;*/
}
.content_li .dayblock dt span:nth-child(1) br {
	display: none;
}

.content_li .dayblock dt span:nth-child(2) {
	font-size: 20px;
	font-size: 2.0rem;
	letter-spacing: 0.1em;
	display: inline-block;
	width: 100%;
}

.content_li .saturday dt {
 background-color: #3C78A6;
	color: #FFF;
}

.content_li .sunday dt,
.content_li .holiday dt {
	background-color: #B55C5F;
	color: #FFF;
}

.content_li .dayblock dd {
	vertical-align: middle;
	display: table-cell;
}

.content_li .dayblock .fairBlock {
	min-height: 280px;
	position: relative;
	font-size: 0;
	background-color: #F5F1E9;
	padding: 20px;
	margin: 10px;
}

.content_li .dayblock .fairBlock .photo {
    margin: 0;
	width: 200px;
	height: 200px;
    box-sizing: border-box;
    background-size: 100% auto;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 20px;
    bottom: 0;
}
.content_li .dayblock .fairBlock .photo img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.content_li .dayblock .fairBlock .txt {
    display: block;
    white-space: normal;
    margin-left: 220px;
	word-break: break-all;
	text-align: left;
}

.content_li .dayblock .fairBlock .txt .time{
	font-size: 14px;
	font-size: 1.4rem;
	color: #A18100;
	margin-bottom: 4%;
}

.content_li .dayblock .fairBlock .txt .title {
	color: #A18100;
    font-weight: bold;
    margin-bottom: 25px;
    display: block;
	padding-bottom: 25px;
	border-bottom: 2px solid #A18100;
}


/* リスト用ラベル */
.content_li .dayblock .fairBlock .label.label01 {
	background-image: url("../common/img/fair_label01.png");
}
.content_li .dayblock .fairBlock .label.label02 {
	background-image: url("../common/img/fair_label02.png");
}
.content_li .dayblock .fairBlock .label.label03 {
	background-image: url("../common/img/fair_label03.png");
}
@media screen and (max-width:640px) {
	.content_li .dayblock .fairBlock .label.label01 {
		background-image: url("../common/img/fair_label01b.png");
	}
	.content_li .dayblock .fairBlock .label.label02 {
		background-image: url("../common/img/fair_label02b.png");
	}
	.content_li .dayblock .fairBlock .label.label03 {
		background-image: url("../common/img/fair_label03b.png");
	}
}
.content_li .dayblock .fairBlock .label {
	position: absolute;
	top: 15px;
	right: 20px;
	width: 120px;
	height: 0;
	padding-top: 30px;
	overflow: hidden;
	background-position: top;
	background-repeat: no-repeat;
	background-size: contain;
	color: #FFF;
	font-size:16px;
	line-height: 58px;
	text-align: center;
	letter-spacing: -0.05em;
}


.no-touchevents .content_li .dayblock .fairBlock .txt .title:hover,
.content_li .dayblock .fairBlock .txt .title.hover {
    text-decoration: underline;
}

.content_li .dayblock .fairBlock .txt .title span:nth-child(1) {
    color: #A18100;
    display: block;
	font-size: 22px;
	font-size: 2.2rem;
	font-weight: normal;
}

.content_li .dayblock .fairBlock .txt .title span:nth-child(2) {
    display: block;
    font-size: 22px;
    font-size: 2.2rem;
}

.content_li .dayblock .fairBlock .txt .min {
	font-size: 14px;
	font-size: 1.4rem;
    margin-bottom: 20px;
	color: #616161;
	line-height: 25px;
	line-height: 2.5rem;
}

.content_li .dayblock .fairBlock .txt > ul {
    list-style: none;
    margin-bottom: 10px;
	font-size: 0;
}
.content_li .dayblock .fairBlock .txt > ul li {
    font-size: 13px;
    font-size: 1.3rem;
    display: inline-block;
    padding: 9px 0px 7px;
    color: #323232;
    border: 1px solid #961515;
    opacity: 0.3;
    width: 17%;
    text-align: center;
    margin-bottom: 1.2%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.content_li .dayblock .fairBlock .txt > ul li + li {
	margin-left: 1.5%;
}

.content_li .dayblock .fairBlock .txt > ul li.active {
    opacity: 1;
	color: #961515;
}

.content_li .dayblock .fairBlock .txt .detail,
.content_li .dayblock .fairBlock .txt .reservation {
    display: inline-block;
    vertical-align: top;
}

.content_li .dayblock .fairBlock .txt .mT {
    height: 50px;
    border: 1px solid;
    color: #fff;
	width: 42%;
}

.content_li .dayblock .fairBlock .txt .mT:hover {}

.content_li .dayblock .fairBlock .txt .detail {
    margin-right: 5%;
}

.content_li .dayblock .fairBlock .txt .reservation {
	cursor: pointer;
    background-color: #A10044;
}
.content_li .dayblock .fairBlock .txt .teltext {
	width: 47%;
	display: inline-block;
	color: #A10044;
}
.content_li .dayblock .fairBlock .txt .teltext span {
	text-align: center;
	display: block;
	font-size: 1.6rem;
	line-height: 13px;
}
.content_li .dayblock .fairBlock .txt .teltext b {
	text-align: center;
	display: block;
	font-family: "Amiri", serif, source-han-serif-japanese, serif, "游明朝", YuMincho, "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", verdana, "メイリオ", "Meiryo", "Osaka", sans-serif;
	font-size: 3.6rem;
	letter-spacing: 0.03em;
	margin-top: 10px;
}
.content_li .dayblock .fairBlock .txt .links{
	text-align: right;
}
@media screen and (min-width:1156px) {
	.content_li .dayblock .fairBlock .txt > ul li:nth-child(5n+1) {
		margin-left: 0;
	}
}

/* fairList */
.fairListWrap {
	padding: 80px 20px;
	background-image: url(../img/bg01.jpg);
}
.fairList {
	max-width: 1180px;/*1080px;*/
	width: 100%;
	margin: auto;
}
.fairList .pager {
	overflow: hidden;
	margin: 60px auto 0;
	max-width: 1180px;
	border-top: solid 1px #000;
	padding-top: 20px;
}

.fairList .pager .prev,
.fairList .pager .next {
    background-color: #000;
    width: 274px;
    height: 34px;
    text-align: center;
    display: inline-block;
    color: #fff;
    text-decoration: none;
    white-space: nowrap;
    position: relative;
    letter-spacing: 0.1em;
    -webkit-transition: 0.3s ease;
    -o-transition: 0.3s ease;
    transition: 0.3s ease;
    font-size: 12px;
}

.fairList .pager .prev:hover,
.fairList .pager .next:hover {
    opacity: 0.7;
}

.fairList .pager .prev:before,
.fairList .pager .next:before {
    content: "";
    display: inline-block;
    height: 100%;
    vertical-align: middle;
}

.fairList .pager .prev {}
.fairList .pager .next {}

.fairList .pager .prev span,
.fairList .pager .next span {
    display: inline-block;
    vertical-align: middle;
}

.fairList .pager .prev:after,
.fairList .pager .next:after {
    content: "";
    display: block;
    margin: auto 0;
    width: 4px;
    height: 4px;
    position: absolute;
    top: 0;
    bottom: 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.fairList .pager .prev:after {
    border-bottom: 1px solid #fff;
    border-left: 1px solid #fff;
    left: 10px;
}

.fairList .pager .next:after {
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    right: 10px;
}

.fairList .pager .prev:hover:after {
    left: 7px;
}

.fairList .pager .next:hover:after {
    right: 7px;
}

.fairList .pager .prev {
    float: left;
}

.fairList .pager .next {
    float: right;
}
@media screen and (max-width:640px) {
	.fairListWrap {
		padding: 15% 5%;
	}
	
}

/* フェア詳細 */
.fairDetailWrap {
	padding: 80px 20px;
	background-image: url(../img/bg01.jpg);
}
.fairDetail {
	max-width: 1080px;
	width: 100%;
	margin: auto;
}
.fairDetail > h1 {
	margin-bottom: 70px;
	text-align: center;
	color: #313131;
	font-weight: 400;
}

.fairDetail > h1 span {
	display: block;
}

.fairDetail > h1 .main {
	margin-bottom: 15px;
	font-size: 37px;
	line-height: 37px;
	letter-spacing: .12em;
}

.fairDetail > h1 .sub {
	font-size: 13px;
	line-height: 13px;
	letter-spacing: .12em;
}

.fairDetail .sec {
	max-width: 1180px;
	margin: 0 auto;
	background-color: #fff;
	padding: 10px;
}

.fairDetail .sec .titleArea {
	padding: 20px 20px 0;
	position: relative;
	background-color: #f5f1e9;
}

.fairDetail .sec .titleArea .in {
	border-bottom: solid 2px #a18100;
	padding-bottom: 15px;
}

.fairDetail .sec .titleArea .left {
	width: 80px;
	height: 80px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	background-color: #4E84AD;
	color: #A18100;
	font-size: 0;
	text-align: center;
	display: inline-block;
	margin: auto;
	vertical-align: middle;
}

.fairDetail .sec .titleArea .left .lineWrap {
	display: inline-block;
	vertical-align: middle;
	padding-top: 20px;
}

.fairDetail .sec .titleArea .left .lineWrap .line01,
.fairDetail .sec .titleArea .left .lineWrap .line02 {
	display: block;
	color: #FFF;
}

.fairDetail .sec .titleArea .left .lineWrap .line01 {
	font-size: 25px;
	font-size: 2.5rem;
	margin-bottom: 4px;
}

.fairDetail .sec .titleArea .left .lineWrap .line02 {
	font-size: 12px;
	font-size: 1.2rem;
}

.fairDetail .sec .titleArea .right {
	display: inline-block;
	vertical-align: top;
	padding-top: 10px;
}

.fairDetail .sec .dateTime {
	text-align: left;
	margin-bottom: 10px;
	font-size: 20px;
	font-size: 2.0rem;
	letter-spacing: .1em;
	color: #A18100;
}

.fairDetail .sec .dateTime span {
	display: inline-block;
}
.fairDetail .sec .dateTime span + span:before {
	content: '／';
}

/* 詳細用ラベル */
.fairDetail .sec .label.label01 {
	background-image: url("../common/img/fair_label01b.png");
}
.fairDetail .sec .label.label02 {
	background-image: url("../common/img/fair_label02b.png");
}
.fairDetail .sec .label.label03 {
	background-image: url("../common/img/fair_label03b.png");
}
.fairDetail .sec .label {
	position: absolute;
	top: 15px;
	right: 20px;
	width: 120px;
	height: 0;
	padding-top: 30px;
	overflow: hidden;
	background-position: top;
	background-repeat: no-repeat;
	background-size: contain;
	color: #FFF;
	font-size:16px;
	line-height: 58px;
	text-align: center;
	letter-spacing: -0.05em;
}


.fairDetail .sec h1 {
	font-size: 25px;
	font-size: 2.5rem;
	line-height: 28px;
	letter-spacing: .05em;
	font-weight: normal;
	color: #A18100;
}

.fairDetail .sec .content {
	padding: 0 25px 25px 25px;
	font-size: 0;
	background-color: #f5f1e9;
	overflow: hidden;
}

.fairDetail .sec .content .contentIn01 {
	overflow: hidden;
}

.fairDetail .sec .content .right {
	float: right;
	width: 63%;
}

.fairDetail .sec .content:after {
	content: "";
	display: block;
	clear: both;
}

.fairDetail .typelist {
	padding: 25px;
	font-size: 0;
	background-color: #f5f1e9;
}

.fairDetail .typelist li {
	display: none;
	padding: 5px 7px;
	margin: 0 10px 10px 0;
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 18px;
	color: #cdccc8;
	border: solid 1px #cdccc8;
}

.fairDetail .typelist li.active {
	color: #a10044;
	border: solid 1px #a10044;
	display: inline-block;
}

.fairDetail .sec .content .ph {
	margin-bottom: 55px;
	width: 33%;
	padding-top: 33%;
	float: left;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

.fairDetail .sec .content .leadTxt {
	font-size: 15px;
	font-size: 1.5rem;
	text-align: left;
	margin-bottom: 20px;
	line-height: 1.7;
}

.fairDetail .sec .content .linkarea {
	text-align: right;
	margin-bottom: 50px;
}

@media screen and (max-width: 640px) {
	.fairDetail .sec .content .linkarea {
		text-align: center;
	}
	.fairDetail .sec .content .linkarea {
		margin-bottom: 20px;
	}
	.fairDetail .sec .content .linkarea+.linkarea {
		margin-bottom: 50px;
	}
}

.fairDetail .sec .content .linkarea a {
	cursor: pointer;
	height: 50px;
	max-width: 300px;
	width: 100%;
}
.fairDetail .sec .content .teltext {
	margin: 10px 0 30px;
	width: 100%;
	color: #A10044;
}
.fairDetail .sec .content .teltext span {
	text-align: center;
	display: block;
	font-size: 1.6rem;
	line-height: 13px;
}
.fairDetail .sec .content .teltext b {
	text-align: center;
	display: block;
	font-family: "Amiri", serif, source-han-serif-japanese, serif, "游明朝", YuMincho, "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", verdana, "メイリオ", "Meiryo", "Osaka", sans-serif;
	font-size: 3.6rem;
	letter-spacing: 0.03em;
	margin-top: 10px;
}

.fairDetail .sec .content .tokuten {
	background-color: transparent;
	margin-bottom: 50px;
}

.fairDetail .sec .content .tokuten dt {
	margin-bottom: 15px;
}

.fairDetail .sec .content .tokuten dd {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.8;
	color: #333333;
}

.fairDetail .sec .content .bonusDetail {
	font-size: 13px;
	font-size: 1.3rem;
}

.fairDetail .sec .content .bonusDetail dt {
	text-align: left;
}

.fairDetail .sec .content .bonusDetail dd {
	text-align: left;
}

.fairDetail .sec .content .fairbtn {
	text-align: right;
}

.fairDetail .sec .content .fairbtn a {
	display: inline-block;
}

.fairDetail .sec .content .bonus,.fairDetail .sec .content .points {
	vertical-align: top;
}

.fairDetail .sec .content .bonus {
	margin: 0 0 40px;
	color: #616161;
	clear: both;
	padding: 0 50px 40px;
	background-image: url(../img/event/deco_left_bottom.png),url(../img/event/deco_right_bottom.png);
	background-position: left bottom,right bottom;
	background-repeat: no-repeat;
}

.fairDetail .sec .content .bonus dt {
	margin-bottom: 15px;
	padding: 10px 50px;
	font-size: 12px;
	margin-bottom: 35px;
	line-height: 12px;
	letter-spacing: .1em;
	color: #775239;
	background-color: #F9F7F7;
	text-align: center;
	margin-left: -50px;
	width: 100%;
}

.fairDetail .sec .content .bonus dt span {
	margin-right: 10px;
	font-size: 20px;
}

.fairDetail .sec .content .bonus dd {
	color: #83773A;
	font-size: 14px;
	line-height: 27px;
	letter-spacing: .04em;
}

.fairDetail .sec .content .bonus dd p {
	color: #83773A;
}

.fairDetail .sec .content .points {
	margin-bottom: 40px;
	padding: 0 50px 10px;
	background-image: url(../img/event/deco_left_bottom.png),url(../img/event/deco_right_bottom.png);
	background-position: left bottom,right bottom;
	background-repeat: no-repeat;
}

.fairDetail .sec .content .points > p {
	margin-bottom: 15px;
	padding: 10px 50px;
	font-size: 12px;
	margin-bottom: 35px;
	line-height: 12px;
	letter-spacing: .1em;
	color: #775239;
	background-color: #F9F7F7;
	text-align: center;
	width: 100%;
	margin-left: -50px;
}

.fairDetail .sec .content .points > p span {
	margin-right: 10px;
	font-size: 20px;
}

.fairDetail .sec .content .points ol {
	color: #313131;
}

.fairDetail .sec .content .points ol li {
	margin-bottom: 30px;
	font-size: 14px;
	padding-left: 45px;
	letter-spacing: .04em;
	line-height: 20px;
	position: relative;
}

.fairDetail .sec .content .points ol li:nth-child(1):before {
	content: "1";
}

.fairDetail .sec .content .points ol li:nth-child(2):before {
	content: "2";
}

.fairDetail .sec .content .points ol li:nth-child(3):before {
	content: "3";
}

.fairDetail .sec .content .points ol li:before {
	display: inline-block;
	text-align: center;
	margin: auto 0;
	border-radius: 50%;
	width: 35px;
	height: 35px;
	font-weight: 400;
	vertical-align: middle;
	font-size: 30px;
	line-height: 35px;
	color: #B49867;
	font-family: "Forum" !important;
	position: absolute;
	top: -5px;
	bottom: 0;
	left: 0;
	background-color: #EFECE1;
}

.fairDetail .sec .content .points ol li:after {
	content: "";
	display: block;
	clear: both;
}

.fairDetail .sec .content .comBtn {
	clear: both;
	margin: 0 auto;
}

.fairDetail .faircontent {
}

.fairDetail .faircontent dt {
	text-align: center;
	position: relative;
	margin-bottom: 30px;
}

.fairDetail .faircontent dt:before {
	content: '';
	background-color: #DAD3BC;
	width: 100%;
	height: 1px;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}

.fairDetail .faircontent dt span {
	padding: 0 30px;
	background-color: #F5F1E9;
	position: relative;
	display: inline-block;
}

.fairDetail .faircontent dt img {
	padding: 0 20px;
	background-color: #f5f1e9;
}

.fairDetail .faircontent dd {
	background-color: #fff;
}

.fairDetail .faircontentTable {
	width: 95%;
	border-collapse: collapse;
	margin: auto;
}

.fairDetail .faircontentTable thead {
	background-color: #F6F5F0;
	color: #A49477;
	font-size: 13px;
	font-size: 1.3rem;
	vertical-align: middle;
}

.fairDetail .faircontentTable thead .title {
	width: 20%;
}

.fairDetail .faircontentTable thead .disc {
	width: 80%;
}

.fairDetail .faircontentTable tbody {
	background-color: #FFF;
	color: #000;
	font-size: 13px;
	font-size: 1.3rem;
	vertical-align: middle;
}

.fairDetail .faircontentTable tbody .title {
	padding: 0 24px 0 89px;
	width: 25%;
	text-align: center;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
	vertical-align: middle;
}

.fairDetail .faircontentTable tbody .title .img {
	width: 70px;
	height: 70px;
	-webkit-background-size: cover;
	background-size: cover;
	background-position: center center;
	display: inline-block;
	vertical-align: top;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}

.fairDetail .faircontentTable tbody .title .txt {
	color: #c8b787;
	line-height: 1.6;
}

.fairDetail .faircontentTable tbody .disc {
	width: 75%;
	height: 100px;
	vertical-align: middle;
}

.fairDetail .faircontentTable tbody .disc .txt {
	-webkit-background-size: cover;
	background-size: cover;
	background-position: center center;
	display: inline-block;
	vertical-align: top;
	line-height: 1.8;
}

.fairDetail .faircontentTable tbody tr + tr {
	border-top: solid 1px #ece6cc;
}

@media screen and (max-width:640px) {
	.fairDetail .sec .content .tokuten dt {
		margin-bottom: 5%;
	}
	.fairDetail .sec .content .tokuten dt img {
		width: auto;
		height: 19px;
		height: 6vw;
	}
	.fairDetail .sec .content .tokuten {
		margin-bottom: 15%;
	}
	.fairDetail .sec .titleArea {
		position:relative;
	}
	.fairDetail .sec .titleArea .left {
		/* bottom: 86%;/*91%;*/
		margin: auto 0;
		width: 50px;
		height: 50px;
		position: absolute;
		left:10px;
		top: 0;
		bottom: 0;
	}
	.fairDetail .sec .titleArea .left .lineWrap {
		padding-top:14px;
	}
	.fairDetail .sec .titleArea .left .lineWrap .line01 {
		font-size:12px;
	}
	.fairDetail .sec .titleArea .left .lineWrap .line02 {
		font-size:10px;
	}
	.fairDetail .sec .titleArea .right {
		padding-left:60px;

	}
	.fairDetailWrap {
    	padding: 25% 4% 15%;
	}
	.fairDetail > h1 {
		margin-bottom: 70px;
		text-align: center;
		color: #313131;
		font-weight: 400;
	}

	.fairDetail > h1 span {
		display: block;
	}

	.fairDetail > h1 .main {
		margin-bottom: 15px;
		font-size: 37px;
		line-height: 37px;
		letter-spacing: .12em;
	}

	.fairDetail > h1 .sub {
		font-size: 13px;
		line-height: 13px;
		letter-spacing: .12em;
	}

	.fairDetail .sec .content .leadTxt {
		font-size: .9rem;
		line-height: 1.7rem;

	}

	.fairDetail .sec {}

	.fairDetail .sec .titleArea {
		position: relative;
		padding: 3% 3% 0;/*5% 3% 0;*/
	}

	.fairDetail .sec .dateTime {
		text-align: left;
		font-size: 10px;
		padding-right:80px;
		letter-spacing: .06em;
		margin-bottom: 2%;
	}
	.fairDetail .sec .label {
		width: 80px;
		padding-top: 20px;
		right: 0px;
		top: 0px;
	}

	.fairDetail .sec h1 {
		font-size: 14px;
		line-height:1.4;
		letter-spacing: .05em;
		font-weight: 400;
	}

	.fairDetail .sec .content {
		padding: 5% 3% 10%;
		font-size: 0;
		overflow: hidden;
	}
	.fairDetail .faircontent dt {
		margin-bottom: 8%;
	}
	.fairDetail .faircontent dt:before {
		height: 2px;
	}
	.fairDetail .faircontent dt span {
    	padding: 0 9px;
	}
	.fairDetail .faircontent dt img {
		width: auto;
		height: 16px;
		height: 5vw;
		padding: 0;
	}
	.fairDetail .faircontentTable tbody .title .img {
		width: 80%;
		height: 0;
		padding-top: 60%;
	}
	.fairDetail .faircontentTable tbody .title .txt {
		font-size: 16px;
		font-size: 1.6rem;
		display: block;
		text-align: center;
		margin-bottom: 4%;
	}
	.fairDetail .faircontentTable tbody .disc {
		height: auto;
	}

	.fairDetail .sec .content:after {
		content: "";
		display: block;
		clear: both;
	}

	.fairDetail .typelist {
		font-size: 0;
		padding: 7% 3% 1%;
	}

	.fairDetail .typelist li {
		display: none;
	}


	.fairDetail .typelist li.active {
		display: inline-block;
	}

	.fairDetail .sec .content .ph {
		margin-bottom: 5%;
		width: 100%;
		padding-bottom: 80%;
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center;
		height: 0;
	}

	.fairDetail .sec .content .right {
		float: none;
		width: 100%;
	}

	.fairDetail .sec .content .txt {
		margin-left: 0;
		margin-bottom: 7%;
		font-size: 13px;
		text-align: left;
		line-height: 24px;
		letter-spacing: .07em;
	}

	.fairDetail .sec .content .bonus {
		margin: 0 0 12%;
		padding: 0 5% 10%;
		color: #616161;
		clear: both;
	}

	.fairDetail .sec .content .bonus dt {
		text-align: center;
		margin: 0 0 5% -5%;
		padding: 5% 5% 3%;
		line-height: 12px;
		color: #d9597e;
		width: 100%;
	}

	.fairDetail .sec .content .bonus dt span {
		display: block;
		margin-bottom: 10px;
		font-size: 20px;
	}

	.fairDetail .sec .content .bonus dd {
		color: #EB8185;
		font-size: 14px;
		line-height: 27px;
		letter-spacing: .04em;
	}

	.fairDetail .sec .content .points {
		margin-bottom: 10%;
		padding: 0 5% 10%;
	}

	.fairDetail .sec .content .points > p {
		text-align: center;
		margin-bottom: 7%;
		padding: 4% 5% 3%;
		margin-left: -5%;
	}

	.fairDetail .sec .content .points > p span {
		display: block;
		margin-bottom: 10px;
		font-size: 20px;
	}

	.fairDetail .sec .content .points ol {
		color: #313131;
	}

	.fairDetail .sec .content .points ol li {
		margin-bottom: 5%;
		font-size: 14px;
		padding-left: 45px;
		letter-spacing: .04em;
		line-height: 20px;
		position: relative;
	}
	.fairDetail .sec .content .tokuten dd {
		font-size: .9rem;
		line-height: 1.7rem;

	}

	.fairDetail .sec .content .points ol li:nth-child(1):before {
		content: "1";
	}

	.fairDetail .sec .content .points ol li:nth-child(2):before {
		content: "2";
	}

	.fairDetail .sec .content .points ol li:nth-child(3):before {
		content: "3";
	}

	.fairDetail .sec .content .points ol li:before {
		display: inline-block;
		text-align: center;
		margin: auto 0;
		border-radius: 50%;
		width: 35px;
		height: 35px;
		font-weight: 400;
		vertical-align: middle;
		font-size: 30px;
		line-height: 35px;
		font-family: "Forum" !important;
		position: absolute;
		top: -5px;
		bottom: 0;
		left: 0;
	}

	.fairDetail .sec .content .points ol li:after {
		content: "";
		display: block;
		clear: both;
	}

	.fairDetail .sec .content .comBtn {
		clear: both;
		margin: 0 auto;
	}

	.fairDetail .sec .content .det_btn {
		-o-transition: background .3s;
	}

	.fairDetail .sec .content .det_btn:before {
		content: "";
		display: inline-block;
		height: 100%;
		vertical-align: middle;
	}

	.fairDetail .sec .content .det_btn span {
		display: inline-block;
		font-size: 14px;
		vertical-align: middle;
	}

	.fairDetail .sec .content .comBtn {
		width: 100%;
	}

	.fairDetail .faircontentTable tbody .title,.fairDetail .faircontentTable tbody .disc {
		display: block;
		width: 100%;
		padding: 0;
	}

	.fairDetail .faircontentTable tbody .title {
		font-size: 16px;
		font-size: 1.6rem;
	}

	.fairDetail .faircontentTable tbody .title .img {
		width: 80%;
		padding-top: 65%;
		height: 0;
		position: static;
		display: block;
		margin: 7% auto;
	}

	.fairDetail .faircontentTable tbody .disc .txt {
		display: block;
		padding: 0 5%;
		font-size: .9rem;
		line-height: 1.7rem;
	}
	.fairDetailDetbtnWrap .comBtn01 span {
		font-size: 16px;
		font-size: 1.6rem;
	}
}



.fairDetailDetbtnWrap {
	background-color: #fff;
	padding: 50px 5%;
	text-align: center;
}
.fairDetailDetbtnWrap .comBtn01.type03 {
	max-width: 480px;
	height: 70px;
	width: 100%;
}
.fairDetailDetbtnWrap .comBtn01 {
	cursor: pointer;
}
.fairDetailDetbtnWrap .comBtn01 span {
	font-size: 23px;
}
@media screen and (max-width:640px) {
	.fairDetailDetbtnWrap .comBtn01 span {
		font-size: 17px;
	}
	.fairDetailDetbtnWrap .type03+.type03 {
		margin-top: 20px;
	}
}
.fairDetailDetbtnWrap .teltext {
	width: 100%;
	color: #A10044;
}
.fairDetailDetbtnWrap .teltext span {
	text-align: center;
	display: block;
	font-size: 2.2rem;
	line-height: 13px;
}
.fairDetailDetbtnWrap .teltext b {
	text-align: center;
	display: block;
	font-family: "Amiri", serif, source-han-serif-japanese, serif, "游明朝", YuMincho, "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", verdana, "メイリオ", "Meiryo", "Osaka", sans-serif;
	font-size: 4.6rem;
	letter-spacing: 0.03em;
	margin-top: 20px;
}


.detailLists h1 {
	height: 45px;
	background-color: #4B3E36;
}

.detailLists h1:before {
	content: "";
	display: inline-block;
	height: 100%;
	vertical-align: middle;
}

.detailLists h1 span {
	display: inline-block;
	margin-left: 17px;
	font-size: 14px;
	color: #fff;
	vertical-align: middle;
}


@media screen and (max-width:640px) {
	/* フェアリスト */
	.content_li {
		/*margin-bottom: 10%;*/
		width: 90%;
		/* padding-left: 5%; */
		padding-right: 5%;
		padding-bottom: 10%;
		padding-top: 5%;
		margin-left: auto;
		margin-right: auto;
		background-color: #fff;
	}

	.content_li .dayblock {
		display: block;
		width: 100%;
		text-align: center;
		font-size: 14px;
		letter-spacing: .05em;
		background-color: transparent;/*#FFF;*/
		border-bottom: none!important; /*1px solid #f9f8f5;*/
		margin: -50px 0 10px;
		padding-top: 50px;/*50px;*/
	}
	.content_li .dayblock + .dayblock {
		padding-top: 70px;
		border-top:none!important;
	}
	.content_li .dayblock dt {
		width: 9%;
		position: relative;
		border-right: none!important;/*1px solid #D8D8D8;*/
	}
	.content_li .dayblock dt:before {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		right: 0;
		width: 1px;
		background-color: #D8D8D8;
	}
	.content_li .dayblock.fixed dt span.wrap {
		width: 7%;
		top: 10px;
		left: auto;
	}
	.content_li .dayblock dt span:nth-child(1) {
		font-size: 10px!important;
		font-size: 1.0rem!important;
		/*line-height: 1;*/
		margin-bottom: 10px;
	}
	.content_li .dayblock dt span:nth-child(1) br {
		display: inline-block;
	}
	.content_li .dayblock dt span:nth-child(2) {
		font-size: 10px!important;
		font-size: 1.0rem!important;
	}
	.content_li .dayblock dd {
		padding-left: 10px;
	}


	.content_li .dayblock .fairBlock {
		margin: 0;
		font-size: 0;
		min-height: 80px;
		padding: 5% 0;
		position: relative;
	}
	.content_li .dayblock .fairBlock + .fairBlock {
		margin-top: 13%;
	}

	
	.content_li .dayblock .fairBlock .label {
		width: 80px;
		padding-top: 20px;
		right: 0;
		top: 0;
	}

	.content_li .dayblock .fairBlock .photo {
		margin: 0 auto 5%;
		width: 90%;
		padding-bottom: 80%;
		box-sizing: border-box;
		background-size: 100% auto;
		background-position: center;
		background-repeat: no-repeat;
		height: 0;
		top: 0;
		position: relative;
	}

	.content_li .dayblock .fairBlock .txt {
		padding: 0 5%;
		text-align: left;
		display: block;
		white-space: normal;
		margin-left: 0;
	}
	.content_li .dayblock .fairBlock .txt .time {
		font-size: 11px;
		font-size: 1.1rem;
	}
	.content_li .dayblock .fairBlock .txt .title {
		font-weight: 700;
		margin-bottom: 5%;
		padding-bottom: 2%;
		display: block;
		line-height: 1.5;
	}

	.content_li .dayblock .fairBlock .txt .title span:nth-child(1) {
		display: block;
		margin-bottom: 5px;
		font-size: 13px;
		font-size: 1.3rem;
		letter-spacing: .05em;
		line-height: 1.2;
		text-decoration: none;
	}
	.content_li .dayblock .fairBlock .txt .title.hover span:nth-child(1) {
		text-decoration: underline;
	}
	.content_li .dayblock .fairBlock .txt .title span:nth-child(2) {
		display: block;
		font-size: 12px;
	}

	.content_li .dayblock .fairBlock .txt > p {
		font-size: 12px;
		font-size: 1.2rem;
		color: #585757;
		margin-bottom: 10px;
	}

	.content_li .dayblock .fairBlock .txt > ul {
		list-style: none;
		margin-bottom: 0;
	}
	.content_li .dayblock .fairBlock .txt > ul li {
		display: none;
	}
	.content_li .dayblock .fairBlock .txt > ul li.active {
		font-size: 11px;
		font-size: 1.1rem;
		display: inline-block;
		margin: 0 3px 3px 3px;
		width: 30%;
	}

	.content_li .dayblock .fairBlock .txt .detail,
	.content_li .dayblock .fairBlock .txt .reservation {
		display: inline-block;
		vertical-align: top;
		-webkit-transition: .3s ease;
		-o-transition: .3s ease;
		transition: .3s ease;
	}

	.content_li .dayblock .fairBlock .txt .mT {
		width: 180px;
		height: 40px;
		border: 1px solid;
		background-color: #413A34;
		color: #fff;
	}

	.content_li .dayblock .fairBlock .txt .detail {
		margin-right: 20px;
	}

	.content_li .dayblock .fairBlock .txt .reservation {
	}

	.fairList .pager {
		overflow: hidden;
		margin: 30px 0 0;
	}

	.fairList .pager .prev,.fairList .pager .next {
		width: 100px;
		height: 34px;
		text-align: center;
		display: inline-block;
		color: #fff;
		text-decoration: none;
		white-space: nowrap;
		position: relative;
		letter-spacing: .1em;
		-webkit-transition: .3s ease;
		-o-transition: .3s ease;
		transition: .3s ease;
		font-size: 12px;
	}

	.fairList .pager .prev:before,.fairList .pager .next:before {
		content: "";
		display: inline-block;
		height: 100%;
		vertical-align: middle;
	}

	.fairList .pager .prev {
	}

	.fairList .pager .next {
	}

	.fairList .pager .prev span,.fairList .pager .next span {
		display: inline-block;
		vertical-align: middle;
	}

	.fairList .pager .prev:after,.fairList .pager .next:after {
	}

	.fairList .pager .prev {
	}

	.fairList .pager .next {
		float: right;
	}
}

/* calenderWaiting */
.calenderWaiting {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.5);
	background-image: url(../common/img/loading_white.gif);
	-webkit-background-size: 50px 50px;
	background-size: 50px 50px;
	background-position: center center;
	background-repeat: no-repeat;
	z-index: 1000000;
	opacity: 0;
	pointer-events: none;
	display: none;
	-webkit-transition: .6s;
	-moz-transition: .6s;
	-ms-transition: .6s;
	-o-transition: .6s;
	transition: .6s;
}

.calenderWaiting.active {
	opacity: 1;
	display: block;
}

@media screen and (min-width:641px) {
	.sec_fair .slidearea .plancontent .row01 .right .title {
		/* min-height: 138px; */
		display: flex;
		flex-direction: column;
		justify-content: center;

		/* 20230705 追加 */
		min-height: auto;
		overflow: hidden;
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 3;
	}
	.sec_fair .slidearea .plancontent .label {
		top: 0;
		right: 0;
	}
}
@media screen and (max-width:640px) {
	.sec_fair .slidearea .plancontent .row01 .right .title {
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
	}
}