@charset "utf-8";
/********************** MOBILE FIRST ************************/

.bg--gray {
	background: #ada699;
}

.border-top {
	padding: 15px 15px 0px;
	margin: 0 auto;
	width: 70%;
	border-top: 1px solid #c9c9c9;
}

.notice {
	font-size: 14px;
	color: #333333;
}

/**************** header ****************/
h2 {
	margin-bottom: 30px;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 2.6rem;
	text-align: center;
}

.bg--gray h2 {
	color: #fff;
}

p.title {
	margin-top: -20px;
	margin-bottom: 20px;
	text-align: center;
}

@media (min-width: 767px) {
	h2 {
		font-size: 4.0rem;
	}
}


/**************** mainVis ****************/
.mainVis {
	max-width: 100%;
	height: auto;
}

@media (min-width: 767px) {
	.mainVis {
		margin: 0 auto;
	}
}


/**************** gloval nav ****************/
.gloval_nav {
	padding: 5px 15px;
	width: 100%;
	height: auto;
	box-sizing: border-box;
	font-weight: bolder;
}

.gloval_nav ul li {
	margin-bottom: 2px;
	padding-right: 2px;
	float: left;
	width: 50%;
	box-sizing: border-box;
}

.gloval_nav ul li a {
	display: block;
	padding: 13px 0;
	font-size: 1.3rem;
	font-weight: 400;
	text-align: center;
	text-decoration: none;
	color: #010101;
	background: #eee;
	position: relative;
}

.gloval_nav ul li a:after {
	content: '';
	width: 0;
	height: 0;
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	border-top: 5px solid #9c9585;
	position: absolute;
	top: 47%;
	right: 8px;
	margin-top: -3px;
}

/* ieのみ游明朝だと下に余白ができてしまう調整 */
@media all and (-ms-high-contrast:none) {
	.gloval_nav ul li a {
		padding: 22px 0 16px;
	}
}

@media (min-width: 767px) {
	.gloval_nav {
		max-width: 940px;
		padding: 30px 0;
		margin: 0 auto;
	}

	.gloval_nav ul {
		display: flex;
	}

	.gloval_nav ul li {
		padding-right: 0;
		margin-right: 2px;
		float: none;
		width: 100%;
	}

	.gloval_nav ul li a {
		font-size: 1.3rem;
	}

	.gloval_nav ul li a:hover {
		color: #fff;
		background: #9c9585;
	}
}

/*--schedule--*/
section#schedule {
	padding: 50px 15px 50px;

}

map a {
	outline: none;
}

/*--campaign--*/
section#campaign {
	padding: 50px 15px 50px;
}

.imgbox {
	margin-bottom: 30px;
}

/**************** tab ****************/
.tablabel,
.tablabel02 {
	display: flex;
	margin-bottom: 40px;
}

.tablabel li,
.tablabel02 li {
	padding: 15px 0;
	width: calc(100% / 2);
	text-align: center;
	background: #eee;
	position: relative;
	cursor: pointer;
	z-index: 3;
}

.tablabel li.now,
.tablabel02 li.now {
	color: #fff;
	;
	background: #9c9585;
}

.tablabel li.now::after {
	content: '';
	width: 0;
	height: 0;
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
	border-top: 7px solid #9c9585;
	position: absolute;
	bottom: -7px;
	right: 0;
	left: 48%;
}

#campaign .tablabel02 {
	margin-bottom: 0;
}

#campaign .tablabel02 li {
	border-bottom: 4px solid #c39845;
}

#campaign .tablabel02 li.now {
	background: #c39845;
}

#campaign .tablabel02 li.now::after {
	content: '';
	width: 0;
	height: 0;
	border-left: 15px solid transparent;
	border-right: 15px solid transparent;
	border-top: 13px solid #c39845;
	bottom: -15px;
	left: 50%;
	margin-left: -15px;
	position: absolute;
}

/**************** detailbox ****************/
.detailbox {
	margin: 0 20px 40px;
	text-align: center;
}

.detailbox.sale--04 {
	margin: 0 0 40px;
	text-align: center;
	border: 4px solid #c39845;
	border-top: 0;
}

.detailbox.sale--04 dd {
	padding: 20px;
}

.detailbox dt {
	padding: 10px;
	font-size: 1.8rem;
	color: #fff;
	background: #7d7d7d;
}

.detailbox dt span {
	font-size: 1.2rem;
}

.detailbox dd {
	padding: 20px;
	border: 1px solid #c9c9c9;
	background: #fff;
}

.detailbox dd p.sale {
	background: #bfbfbf;
	padding: 5px 0;
	margin: 15px 30px 10px 0;
	position: relative;
}

.detailbox dd p.toriyose {
	width: 50%;
	padding: 5px;
	margin: 15px auto 10px;
	background: #eee;
}

.detailbox dd p.campaign {
	color: #fff;
	background: #c34546;
}

.detailbox dd p.main-copy {
	font-size: 1.8rem;
	font-weight: 700;
	margin: 25px 0;
	text-align: center;
	color: #c34546;
	line-height: 1.2;
}

.detailbox dd p.sub-copy {
	font-size: 1.6rem;
	font-weight: 700;
	margin: 25px 0;
	text-align: center;
}

.detailbox dd p.further {
	font-size: 2.0rem;
	font-weight: 700;
	background: #c34546;
	border-radius: 50%;
	text-align: center;
	width: 75px;
	height: 75px;
	margin: 0 auto 25px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #ffffff;
}

.detailbox dd .box + .box {
	margin-top: 50px;
}

.detailbox dd .border-box::before {
	content: "";
	width: 80%;
	margin: auto;
	border-top: 1px dotted #c34546;
	display: block;
	margin-bottom: 30px;
}

.detailbox dd .btn a {
	font-size: 1.4rem;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	color: #333333;
	display: block;
	background: #e1a2a2;
	border: 2px solid #c34546;
	width: 60%;
	padding: 10px 0 5px;
	margin: auto;
	position: relative;
	transition: .3s;
}

.detailbox dd .btn a:hover {
	opacity: 0.8;
}

.detailbox dd .btn a::after {
	content: "";
	position: absolute;
	right: 10px;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 0;
	height: 0;
	border-left: 8px solid #333333;
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
}

@media (min-width: 767px) {
	.detailbox {
		margin: 0 150px 50px;
		text-align: center;
	}

	.detailbox.sale--04 {
		margin: 0 0 50px;
		border: 4px solid #c39845;
		border-top: 0;
	}
}

.detailbox.sale--04 dt {
	background: #e1cba2;
	color: #333333;
	font-weight: 500;
	padding: 15px 10px 10px 10px;
}

.detailbox.sale--04 dd p.campaign {
	background: #c39845
}

.detailbox.sale--04 p.further {
	background: #c39845
}

.detailbox.sale--04 dd p.main-copy {
	color: #c39845;
}

.detailbox.annex dt {
	background: #856daf;
}

.detailbox.annex dd p.sale {
	color: #fff;
	background: #856daf;
}

.detailbox.annex dd p.sale::after {
	border-color: transparent transparent transparent #856daf;
}

.detailbox.tokeikan dt {
	background: #3071b9;
}

.detailbox.tokeikan dd p.sale {
	color: #fff;
	background: #3071b9;
}

.detailbox.tokeikan dd p.sale::after {
	border-color: transparent transparent transparent #3071b9;
}

.detailbox.fashion dt {
	background: #e4007f;
}

.detailbox.fashion dd p.sale {
	color: #fff;
	background: #e4007f;
}

.detailbox.fashion dd p.sale::after {
	border-color: transparent transparent transparent #e4007f;
}

.detailbox.annex dt {
	background: #866daf;
}

.detailbox.annex dd p.sale {
	color: #fff;
	background: #866daf;
}

.detailbox.annex dd p.sale::after {
	border-color: transparent transparent transparent #866daf;
}

/*--sale--*/
.detailbox.sale--01 dd {
	padding: 0 0 20px;
	border: 3px solid #c34546;
}

.detailbox.sale--01 dt {
	background: #c34546;
}

.detailbox.sale--01 dd p.sale {
	margin: 0 0 20px;
	color: #333333;
	background: #e1a2a2;
	font-weight: 500;
}

.detailbox.sale--02 dd {
	padding: 0;
	border: 3px solid #866daf;
}

.detailbox.sale--02 dt {
	background: #866daf;
}

.detailbox.sale--02 dd p.sale {
	margin: 0;
	color: #333333;
	background: #c2b6d7;
	font-weight: 500;
}

.detailbox.sale--02 dd p.sale::after {
	display: none;
}

.detailbox.sale--03 dd {
	padding: 0;
	border: 3px solid #3171b9;
}

.detailbox.sale--03 dt {
	background: #3171b9;
}

.detailbox.sale--03 dd p.sale {
	margin: 0;
	color: #333333;
	background: #98b8dc;
	font-weight: 500;
}

.detailbox.sale--03 dd p.sale::after {
	display: none;
}

.finished {
	position: relative;
}

.finished::before {
	content: "終了いたしました";
	position: absolute;
	margin-top: -20px;
	top: 50%;
	bottom: 0;
	left: 0;
	right: 0;
	font-size: 2.4rem;
	font-weight: 500;
	color: #fff;
	z-index: 3;
}

.finished::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	min-height: 100%;
	background-color: rgba(111, 111, 111, 0.6);
	background-repeat: no-repeat;
	background-position: center;
	z-index: 2;
}

@media (min-width: 767px) {
	.detailbox dd p.main-copy {
		font-size: 2.4rem;
		font-weight: 700;
	}

	.detailbox dd p.sub-copy {
		font-size: 2.2rem;
		font-weight: 700;
	}

	.detailbox dd .btn a {
		font-size: 1.8rem;
		font-weight: 700;
		text-align: center;
		text-decoration: none;
		color: #333333;
		display: block;
		background: #e1a2a2;
		border: 2px solid #c34546;
		width: 55%;
		padding: 10px 0 5px;
		margin: auto;
		position: relative;
		transition: .3s;
	}
}

/**************** detailbox ****************/
#accessmap p {
	padding: 30px;
	color: #ffffff;
}

#accessmap img {
	padding: 0 10px;
	box-sizing: border-box;
}

@media (min-width: 767px) {
	#accessmap img {
		display: block;
		margin: 0 auto;
	}
}

/**************** banner ****************/
.banner {
	padding: 30px 20px;
}

.banner li {
	margin-bottom: 5px;
}

@media (min-width: 767px) {
	#bannerarea .banner {
		display: flex;
		flex-wrap: wrap;
	}

	#bannerarea .banner li {
		width: calc(100% / 2);
		padding-right: 5px;
		box-sizing: border-box;
	}
}


/**************** footer ****************/
@media (min-width: 767px) {
	section.addon-footer {
		max-width: 100%;
	}
}
