@charset "utf-8";


#fftop_recomDetail section {
       padding: 0px;
}

h1,h2,h3,h4 {
      background: none;
}

tr, th, td, div, span, a, p, h4, h2,li {
     color: inherit;

}

article p, article li {
     color: #242424;
}


* {
	margin: 0;
	padding: 0;
}
table#vipup_in * {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	font-family: source-han-sans-japanese, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Meiryo, sans-serif;
}
table#vipup_in ol,
table#vipup_in ul {
	list-style-type: none;
}
table#vipup_in a {
	outline: none;
}

/* cf */
table#vipup_in .cf:before,
table#vipup_in .cf:after {
	content: "";
	display: block;
	overflow: hidden;
}
table#vipup_in .cf:after {
	clear: both;
}
table#vipup_in .cf {
	zoom: 1;
}

/* animation */
table#vipup_in .active {
	opacity: 1 !important;
}
.active.anime-in-left {
	animation-name: in-left;
	animation-duration: 0.5s;
	animation-timing-function: ease-out;
	animation-fill-mode: forwards;
}
.active.anime-in-left2 {
	animation-name: in-left2;
	animation-duration: 0.1s;
	animation-timing-function: ease-out;
	animation-fill-mode: forwards;
}

.active.anime-in-right {
	animation-name: in-right;
	animation-duration: 0.5s;
	animation-timing-function:ease-out;
	animation-fill-mode: forwards;
}
.active.anime-in-right2 {
	animation-name: in-right2;
	animation-duration: 0.1s;
	animation-timing-function:ease-out;
	animation-fill-mode: forwards;
}

@keyframes in-left {
	0% {
		transform: translateX(-100%);
	}
	100% {
		transform: translateX(0);
	}
}
@keyframes in-left2 {
	0% {
		transform: translateX(-25%);
	}
	100% {
		transform: translateX(0);
	}
}
@keyframes in-right {
	0% {
		transform: translateX(100%);
	}
	100% {
		transform: translateX(0);
	}
}
@keyframes in-right2 {
	0% {
		transform: translateX(25%);
	}
	100% {
		transform: translateX(0);
	}
}



/*********************************

 vipup_in
 
 *********************************/
body {
	overflow-x: hidden;
}
table#vipup_in {
	position: relative;
	width: 100%;
	background: #d5bb8a;
	border: 0;
	border-collapse: collapse;
	border-spacing: 0;
	color: #242424;
	font-size: 3vw;
	font-feature-settings: "palt";
	text-align: justify;
}
table#vipup_in img {
	width: 100%;
	height: auto;
}
table#vipup_in .pc {
	display:none !important;
}
table#vipup_in a img {
	outline:none;
}



/*********************************

 vipup_mv
 
 *********************************/
table#vipup_in #vipup_mv {
	position: relative;
	width: 100%;
	height: 136vw;
	background: #242424;
}

table#vipup_in #vipup_mv .img {
	position: absolute;
	width: 100%;
	top: 0;
	right: 0;
}
/* anime */
table#vipup_in #vipup_mv .img picture {
	position: relative;
  display: block;
  width: 100%;
  height: 100%;
  line-height: 0;
  overflow: hidden;
}
table#vipup_in #vipup_mv .img picture:after {
  content: "";
  position: absolute;
  width: 220%;
  height: 220%;
  top: 0%;
  left: -60%;
  transform: skew(-20deg);
  background: #242424;
}
table#vipup_in #vipup_mv .img picture.active:after {
  top: 0%;
  left: 100%;
  transition: all 0.6s cubic-bezier(.645, .045, .355, 1);
}

table#vipup_in #vipup_mv p.text {
	position: absolute;
	width: 100%;
	top: 77vw;
	color: #d5bb8a;
	font-size: 3.4vw;
	line-height: 2;
	text-align: center;
	letter-spacing: 0.12em;
}
table#vipup_in #vipup_mv p.text span {
	-webkit-clip-path: inset(100% 0 0 0);
	clip-path: inset(100% 0 0 0);
	-webkit-transition: all 0.1s ease;
	transition: all 0.1s ease;
}
table#vipup_in #vipup_mv p.text span.active {
	-webkit-clip-path: inset(0);
	clip-path: inset(0);
}

table#vipup_in #vipup_mv .btn {
	position: absolute;
	width: 100%;
	top: 105vw;
	left: 0;
}
table#vipup_in #vipup_mv .btn a {
	display: block;
	width: 74vw;
	margin: 0 auto;
	background: #930c2a url(../images/mv_icn01.png) 93% center no-repeat;
	color: #fff;
	font-size: 4.2vw;
	font-weight: 700;
	line-height: 3.6em;
	text-align: center;
	letter-spacing: 0.1em;
	text-decoration: none;
}
table#vipup_in #vipup_mv .btn img {
	width: 80%;
}
table#vipup_in #vipup_mv .notice {
	position: absolute;
	width: 100%;
	top: 122vw;
	left: 0;
	color: #fff;
	font-size: 2.6vw;
	text-align: center;
	letter-spacing: 0.1em;
}



/*********************************

 vipup_about
 
 *********************************/
table#vipup_in #vipup_about {
	padding: 16vw 0 0 0;
}
table#vipup_in #vipup_about h2 {
	overflow: hidden;
	font-size: 6vw;
	font-weight: 700;
	text-align: center;
	line-height: 8vw;
}
table#vipup_in #vipup_about h2 span {
	display: inline-block;
	margin: 0 -0.01em;
	padding: 0 0.05em 0.1em 0.05em;
	border-bottom: 4px solid #242424;
	-webkit-clip-path: inset(100% 0 0 0);
	clip-path: inset(100% 0 0 0);
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
table#vipup_in #vipup_about h2 span.active {
	-webkit-clip-path: inset(0);
	clip-path: inset(0);
}

table#vipup_in #vipup_about .img {
	width: 96%;
	margin: 6vw auto 0 auto;
	-webkit-clip-path: inset(100% 0 0 0);
	clip-path: inset(100% 0 0 0);
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
table#vipup_in #vipup_about .img.active {
	-webkit-clip-path: inset(0);
	clip-path: inset(0);
}
table#vipup_in #vipup_about ul.notice {
	width: 96%;
	margin: 0 auto;
	padding: 0.8em 0 0 0;
	font-size: 2.6vw;
	letter-spacing: 0.08em;
}
table#vipup_in #vipup_about ul.notice li {
	margin: 0.4em 0 0 0;
}



/*********************************

 vipup_sp
 
 *********************************/
table#vipup_in #vipup_sp {
	padding: 24vw 0 0 0;
}
table#vipup_in #vipup_sp h2 {
	font-size: 6vw;
	font-weight: 700;
	text-align: center;
	line-height: 8vw;
}
table#vipup_in #vipup_sp h2 span {
	display: inline-block;
	margin: 0 -0.01em;
	padding: 0 0.05em 0.1em 0.05em;
	border-bottom: 4px solid #242424;
	-webkit-clip-path: inset(100% 0 0 0);
	clip-path: inset(100% 0 0 0);
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
table#vipup_in #vipup_sp h2 span.active {
	-webkit-clip-path: inset(0);
	clip-path: inset(0);
}



/*********************************

 special event
 
 *********************************/
table#vipup_in #vipup_sp .event_in {
	opacity: 0;
	padding: 6vw 0 0 0;
}
table#vipup_in #vipup_sp .event_in .box {
	position: relative;
	width: 96%;
	height: 107vw;
	margin: 0 auto;
	background: #930c2a;
}
table#vipup_in #vipup_sp .event_in .box h3 {
	position: absolute;
	overflow: hidden;
	width: 21vw;
	top: 30vw;
	left: 62vw;
	z-index: +2;
}

table#vipup_in #vipup_sp .event_in .box .bg {
	position: absolute;
	width: 84%;
	height: 52vw;
	top: 8.5vw;
	left: 8%;
	border: 5px solid #d5bb8a;
	z-index: +2;
}
table#vipup_in #vipup_sp .event_in .box .img {
	position: absolute;
	width: 65vw;
	top: 16vw;
	left: -2%;
}
table#vipup_in #vipup_sp .event_in .box .img span {
	display: block;
	width: 100%;
	height: 100%;
	-webkit-clip-path: inset(100% 0 0 0);
	clip-path: inset(100% 0 0 0);
	-webkit-transition: all 0.4s ease-in;
	transition: all 0.4s ease-in;
}
table#vipup_in #vipup_sp .event_in .box .img span.active {
	-webkit-clip-path: inset(0);
	clip-path: inset(0);
}

table#vipup_in #vipup_sp .event_in .box h4 {
	position: absolute;
	overflow: hidden;
	width: 84%;
	top: 69vw;
	left: 8%;
	color: #fff;
	font-size: 5.4vw;
	letter-spacing: 0.05em;
	z-index: +2;
}
table#vipup_in #vipup_sp .event_in .box h4 span {
	-webkit-clip-path: inset(100% 0 0 0);
	clip-path: inset(100% 0 0 0);
	-webkit-transition: all 0.1s ease;
	transition: all 0.1s ease;
}
table#vipup_in #vipup_sp .event_in .box h4 span.active {
	-webkit-clip-path: inset(0);
	clip-path: inset(0);
}

table#vipup_in #vipup_sp .event_in .box .text {
	position: absolute;
	width: 84%;
	top: 79vw;
	left: 8%;
	color: #fff;
	font-size: 3.2vw;
	line-height: 2;
	letter-spacing: 0.1em;
}



/*********************************

 special price
 
 *********************************/
table#vipup_in #vipup_sp .price_in {
	opacity: 0;
	padding: 2.5% 0 0 0;
}
table#vipup_in #vipup_sp .price_in .box {
	position: relative;
	width: 96%;
	height: 108vw;
	margin: 0 auto;
	background: #131e41;
}
table#vipup_in #vipup_sp .price_in .box h3 {
	position: absolute;
	width: 21vw;
	top: 30vw;
	left: 10vw;
}
table#vipup_in #vipup_sp .price_in .box .bg {
	position: absolute;
	width: 84%;
	height: 52vw;
	top: 6.5vw;
	left: 8%;
	border: 5px solid #d5bb8a;
	z-index: +1;
}
table#vipup_in #vipup_sp .price_in .box .img {
	position: absolute;
	width: 65vw;
	top: 6.5vw;
	right: -2%;
}
table#vipup_in #vipup_sp .price_in .box .img span {
	display: block;
	width: 100%;
	height: 100%;
	-webkit-clip-path: inset(100% 0 0 0);
	clip-path: inset(100% 0 0 0);
	-webkit-transition: all 0.4s ease-in;
	transition: all 0.4s ease-in;
}
table#vipup_in #vipup_sp .price_in .box .img span.active {
	-webkit-clip-path: inset(0);
	clip-path: inset(0);
}
table#vipup_in #vipup_sp .price_in .box h4 {
	position: absolute;
	overflow: hidden;
	width: 84%;
	top: 66vw;
	left: 8%;
	color: #fff;
	font-size: 5.4vw;
	letter-spacing: 0.05em;
	text-align: right;
}
table#vipup_in #vipup_sp .price_in .box h4 span {
	-webkit-clip-path: inset(100% 0 0 0);
	clip-path: inset(100% 0 0 0);
	-webkit-transition: all 0.1s ease;
	transition: all 0.1s ease;
}
table#vipup_in #vipup_sp .price_in .box h4 span.active {
	-webkit-clip-path: inset(0);
	clip-path: inset(0);
}

table#vipup_in #vipup_sp .price_in .box .text {
	position: absolute;
	width: 84%;
	top: 83vw;
	left: 8%;
	color: #fff;
	font-size: 3.2vw;
	line-height: 2;
	letter-spacing: 0.1em;
	text-align: right;
}



/*********************************

 guidebook present
 
 *********************************/
table#vipup_in #vipup_sp .present_in {
	opacity: 0;
	padding: 2.5% 0 0 0;
}
table#vipup_in #vipup_sp .present_in .box {
	position: relative;
	width: 96%;
	height: 109vw;
	margin: 0 auto;
	background: #930c2a;
}
table#vipup_in #vipup_sp .present_in .box h3 {
	position: absolute;
	width: 19vw;
	top: 27.5vw;
	left: 63vw;
}

table#vipup_in #vipup_sp .present_in .box .bg {
	position: absolute;
	width: 84%;
	height: 52vw;
	top: 8vw;
	left: 8%;
	border: 5px solid #d5bb8a;
	z-index: +1;
}
table#vipup_in #vipup_sp .present_in .box .img {
	position: absolute;
	width: 61vw;
	top: 13vw;
	left: -2%;
}
table#vipup_in #vipup_sp .present_in .box .img span {
	display: block;
	width: 100%;
	height: 100%;
	-webkit-clip-path: inset(100% 0 0 0);
	clip-path: inset(100% 0 0 0);
	-webkit-transition: all 0.5s ease-in;
	transition: all 0.5s ease-in;
}
table#vipup_in #vipup_sp .present_in .box .img span.active {
	-webkit-clip-path: inset(0);
	clip-path: inset(0);
}

table#vipup_in #vipup_sp .present_in .box h4 {
	position: absolute;
	overflow: hidden;
	width: 84%;
	top: 67vw;
	left: 8%;
	color: #fff;
	font-size: 5.4vw;
	letter-spacing: 0.05em;
}
table#vipup_in #vipup_sp .present_in .box h4 span {
	-webkit-clip-path: inset(100% 0 0 0);
	clip-path: inset(100% 0 0 0);
	-webkit-transition: all 0.1s ease;
	transition: all 0.1s ease;
}
table#vipup_in #vipup_sp .present_in .box h4 span.active {
	-webkit-clip-path: inset(0);
	clip-path: inset(0);
}

table#vipup_in #vipup_sp .present_in .box .text {
	position: absolute;
	width: 84%;
	top: 84vw;
	left: 8%;
	color: #fff;
	font-size: 3.2vw;
	line-height: 2;
	letter-spacing: 0.1em;
}



/*********************************

 others
 
 *********************************/
table#vipup_in #vipup_sp .others_in {
	padding: 5vw 0 0 0;
}
table#vipup_in #vipup_sp .others_in h4 {
	overflow: hidden;
	margin: 5vw 0 0 0;
	font-size: 6vw;
	font-weight: 700;
	text-align: center;
	letter-spacing: 0.05em;
	-webkit-clip-path: inset(100% 0 0 0);
	clip-path: inset(100% 0 0 0);
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
table#vipup_in #vipup_sp .others_in h4.active {
	-webkit-clip-path: inset(0);
	clip-path: inset(0);
}
table#vipup_in #vipup_sp .others_in h4 span.icn {
	position: relative;
	display: inline-block;
	padding: 0 1.5em;
}
table#vipup_in #vipup_sp .others_in h4 span.icn::before {
	content: "";
	position: absolute;
	display: block;
	width: 1.5em;
	height: 1em;
	top: 0.1em;
	left: 0;
	background: url(../images/others_icn01.png) left bottom no-repeat;
	background-size: auto 1em;
}
table#vipup_in #vipup_sp .others_in h4 span.icn::after {
	content: "";
	position: absolute;
	display: inline-block;
	width: 1.5em;
	height: 1em;
	top: 0.1em;
	right: 0;
	background: url(../images/others_icn02.png) right bottom no-repeat;
	background-size: auto 1em;
}

table#vipup_in #vipup_sp .others_in .text {
	overflow: hidden;
	margin: 1.2em 0 0 0;
	font-size: 3.6vw;
	text-align: center;
	line-height: 1.9;
	letter-spacing: 0.05em;
}
table#vipup_in #vipup_sp .others_in .text span {
	-webkit-clip-path: inset(100% 0 0 0);
	clip-path: inset(100% 0 0 0);
	-webkit-transition: all 0.1s ease;
	transition: all 0.1s ease;
}
table#vipup_in #vipup_sp .others_in .text span.active {
	-webkit-clip-path: inset(0);
	clip-path: inset(0);
}

table#vipup_in #vipup_sp .others_in .btn {
	width: 76vw;
	margin: 7vw auto 0 auto;
}
table#vipup_in #vipup_sp .others_in .btn a {
	display: block;
	width: 100%;
	background: #242424 url(../images/mv_icn01.png) 93% center no-repeat;
	color: #fff;
	font-size: 4.2vw;
	font-weight: 700;
	line-height: 3.6em;
	text-align: center;
	letter-spacing: 0.1em;
	text-decoration: none;
}
table#vipup_in #vipup_sp .others_in .notice {
	margin: 1em 0 0 0;
	font-size: 2.6vw;
	text-align: center;
	letter-spacing: 0.08em;
}



/*********************************

 vipup_notice
 
 *********************************/
table#vipup_in #vipup_notice {
	padding: 13vw 0 6vw 0;
}
table#vipup_in #vipup_notice p {
	width: 96%;
	margin: 0 auto;
	padding: 1.2em 2em;
	background: #fff;
	font-size: 3.2vw;
	line-height: 1.9;
	letter-spacing: 0.08em;
	text-align: justify;
	text-justify: inter-ideograph;
}





