@charset "UTF-8";

/*-----------------------------------

	reset, common

-----------------------------------*/

.fsc_gfooter__breadcrumb { margin-top: 0; }

#wrapper_hd .pc_hd { display: block; }
#wrapper_hd .pc_il_hd { display: inline-block; }
#wrapper_hd .sp_hd { display: none !important; }

#wrapper_hd a:hover { text-decoration: none; }
#wrapper_hd h2 { margin: 0; }
#wrapper_hd ul { padding: 0; margin: 0; }
#wrapper_hd li { list-style: none; }
#wrapper_hd .deco_hd { position: absolute; pointer-events: none; }
#wrapper_hd a { display: block; text-decoration: none !important; }
#wrapper_hd a { transition: .3s; }
#wrapper_hd img { width: 100%; height: auto; }
#wrapper_hd .sp_hd { display: none !important; }

#wrapper_hd {
	letter-spacing: .2em;
	overflow: hidden;
	position: relative;	
	-webkit-font-smoothing: antialiased;
	background: url("../images/bg.jpg") 0 0 / 500px auto repeat;
}
#wrapper_hd .inner_hd { width: 1100px; margin: 0 auto; position: relative; z-index: 1; }
#wrapper_hd .ttl_hd { width: 36%; margin: 0 auto; }
#wrapper_hd .flexWrap_hd { display: flex; }
#wrapper_hd .presentWrap_hd { display: flex; justify-content: center; align-items: center; }

.js-wiggle { opacity: 1; transform-origin: center; }
.js-wiggle.is-wiggle {
	animation-duration: 1s;
	animation-timing-function: steps(1);
	animation-iteration-count: infinite;
}
.js-wiggle.is-wiggle.wiggle-x { animation-name: wiggleX; }
@keyframes wiggleX {
	0%   { transform: rotate(-6deg); }
	50%  { transform: rotate(6deg); }
	100% { transform: rotate(-6deg); }
}
.js-wiggle.is-wiggle.wiggle-y { animation-name: wiggleY; }
@keyframes wiggleY {
	0%   { transform: translateY(-10px); }
	50%  { transform: translateY(10px); }
}

/* 動きを抑えたいユーザー向け */
@media (prefers-reduced-motion: reduce) {
  .js-wiggle.is-wiggle {
    animation: none;
    transform: none;
  }
}

@media (max-width: 1200px) {
	#wrapper_hd .inner_hd { width: 90%; }
}
@media (max-width: 768px) {
	#wrapper_hd .pc_hd,
	#wrapper_hd .pc_il_hd { display: none !important; }
	#wrapper_hd .sp_hd { display: block !important; }
}

/*-----------------------------------

	hero

-----------------------------------*/

#hero_hd { text-align: center; margin-bottom: 7vw; }
#hero_hd #logo_hd {
	margin: -30px auto 0;
	padding-right: 4%;
	max-width: 1900px;
	animation: scaleIn 0.9s cubic-bezier(.22,.61,.36,1);
	transform-origin: center;
}
#hero_hd .summaryBox_hd { position: relative; margin-top: -6vw; }
#hero_hd .summary_hd { line-height: 4; padding-bottom: 0; }
#hero_hd .summary_hd span {
	line-height: 1.3;
	font-size: min(3.2vw, 36px);
	font-weight: bold;
	letter-spacing: .1em;
	display: inline-block;
	background: linear-gradient(180deg, transparent 0%, transparent 50%, #ffec05 50%, #ffec05 100%);
}

@keyframes scaleIn {
	0% { opacity: 0; transform: scale(0.2); }
	60% { opacity: 1; }
	100% { transform: scale(1); }
}

@media (max-width: 1800px) {
	#hero_hd #logo_hd { padding-right: 0; margin-left: -4%; }
}
@media (max-width: 1460px) {
	#hero_hd #logo_hd { width: 120vw; margin-left: calc(-10vw - 2.5%); }
	#hero_hd .summaryBox_hd { margin-top: -7vw; }
}
@media (max-width: 1200px) {
	#hero_hd #logo_hd { width: 150vw; margin-left: calc(-25vw - 3%); }
	#hero_hd .summaryBox_hd { margin-top: -9vw; }
}
@media (max-width: 1100px) {
	#hero_hd .summary_hd { line-height: 6vw; }
}
@media (max-width: 768px) {
	#hero_hd { margin-bottom: 0; }
	#hero_hd #logo_hd { width: 100%; margin: 0; }
	#hero_hd .summaryBox_hd { line-height: 6vw; width: 90%; margin: 5vw auto 0; }
	#hero_hd .summary_hd { line-height: 9vw; }
	#hero_hd .summary_hd span { font-size: 5vw; }
	#hero_hd .deco01_hd { width: 14%; left: -2%; bottom: -20%; transform: rotate(20deg); }
	#hero_hd .deco02_hd { width: 13%; right: 0; bottom: -20%; }
}

/*-----------------------------------

	event

-----------------------------------*/

#event_hd { padding-top: 3vw; position: relative; }
#event_hd .decoWrap_hd .deco01_hd { width: 16%; top: 0; left: -27%; }
#event_hd .decoWrap_hd .deco02_hd { width: 17%; top: 0; right: -27%; }
#event_hd .decoWrap_hd .deco03_hd { width: 23%; bottom: -70%; left: -15%; }
.sale_terms_hd #event_hd .decoWrap_hd .deco03_hd { width: 28%; bottom: -30%; left: -17%; }

#event_hd .eventBox_hd { background: #ffd506; padding: 9% 3% 6%; position: relative; z-index: 1; }
#event_hd .ttl_hd {
	position: absolute;
	top: -15%;
	left: 50%;
    margin-left: -140px;
    z-index: 1;
	width: 280px;
}
.sale_terms_hd #event_hd .ttl_hd { top: -8%; }
#event_hd .dateList_hd {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
}
#event_hd .dateList_hd li { width: calc(100%/5 - 10px); margin: 0 5px; }
.sale_terms_hd #event_hd .dateList_hd li { width: calc(73%/4 - 10px); margin: 0 5px; }
.sale_terms_hd #event_hd .dateList_hd .today_hd { width: 27%; }

.sale_terms_hd #event_hd #number_hd { display: block; }
#event_hd #number_hd {
	text-align: center;
	display: none;
	background: #fff;
	margin: 5% auto 0;
	width: 80%;
	border-left: 1.8vw solid #b35ce7;
	padding: 4% 4% 4% 5%;
}
#event_hd .numberWrap_hd { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; }
#event_hd #number_hd .numberBox_hd { width: 51%; }

#event_hd #number_hd .ticket_hd {
	font-family: "秀英角ゴシック銀 B", "Shuei KakuGo Gin B";
	font-weight: bold;
	color: #fc703d;
	font-size: min(8.6vw,94px);
	line-height: 1;
	margin-top: 1.4vw;
	letter-spacing: 0;
}
#event_hd #number_hd .btn {
	padding: 5% 7% 4% 4%;
	background: #b35ce7;
	border: none;
	border-radius: 0;
	width: 42%;
	margin: 0 0 2% 0;
	box-shadow: 0 15px 0 #9542d1;
	transition: .1s;
}
#event_hd #number_hd .btn:hover { box-shadow: none; transform: translate(0,15px); }
#event_hd #number_hd .btn:after {
	content: url("../images/arrow.svg");
	position: absolute;
	right: 5%;
	top: 50%;
	width: 14%;
	margin: -7% 0 0 -7%;
}
#event_hd #number_hd .btn button {
	background: url(../images/hold_btn.svg) 0 0 / auto 100% no-repeat;
	outline: none;
    border: none;
	width: 100%;
    height: 0;
    padding: 31% 0 0 0;
    display: block;
    margin: 0 auto;
	transition: .1s;
	color: transparent;
}	
#event_hd #number_hd .btn + p,
#event_hd #number_hd .btn + p + p {
	margin: 2vw auto 0;
	font-weight: bold;
	color: #f00000;
	letter-spacing: 0;
	width: 100%;
    text-align: center;
	font-size: min(2.2vw, 20px);
	z-index: 10;
	position: relative;
}
#event_hd .decoBg_hd { display: none; }
.sale_terms_hd #event_hd .decoBg_hd { display: block; }
#event_hd .decoBg_hd .deco01_hd { width: 68%; bottom: 10%; left: -5.5%; }
#event_hd .decoBg_hd .deco02_hd { width: 72%; bottom: -5%; right: -4%; }

@media (max-width: 1200px) {
	#event_hd .ttl_hd { margin-left: -10vw; width: 20vw; }
}
@media (max-width: 1100px) {
	#event_hd .eventBox_hd { padding-left: 8%; padding-right: 8%; }
	#event_hd #number_hd { width: 100%; }
}
@media (max-width: 768px) {
	#event_hd { padding-top: 0; }
	#event_hd .inner_hd { padding-top: 13vw; }
	.sale_terms_hd #event_hd .inner_hd { padding-top: 10vw; }
	#event_hd .dateList_hd { flex-wrap: wrap; }
	#event_hd .dateList_hd li { width: calc(100%/3 - 10px) !important; }
	.sale_terms_hd #event_hd .dateList_hd .today_hd { width: 46% !important; }
	#event_hd .ttl_hd { margin-left: -13vw; top: -10%; width: 26vw; }
	#event_hd #number_hd .btn { box-shadow: 0 10px 0 #9542d1; }
	#event_hd #number_hd .btn:hover { transform: translate(0,10px); }
}
@media (max-width: 414px) {
	#event_hd .ttl_hd { margin-left: -18vw; width: 36vw; }
	.sale_terms_hd #event_hd .ttl_hd { top: -4%; }
	#event_hd .eventBox_hd { padding: 15% 5% 6%; }
	#event_hd .numberWrap_hd { flex-direction: column; }
	#event_hd #number_hd { padding: 7% 5% 12% 5%; }
	#event_hd #number_hd .numberBox_hd { width: 80%; margin-bottom: 6vw; }
	#event_hd #number_hd .ticket_hd { font-size: 15vw; }
	#event_hd #number_hd .btn + p,
	#event_hd #number_hd .btn + p + p { font-size: 4vw; margin-top: 6vw; }
	#event_hd #number_hd { margin-top: 6vw; }
	#event_hd #number_hd .btn { width: 90%; padding-top: 3%; padding-bottom: 2%; }
	#event_hd #number_hd .btn button { background-position: 30% 60%; background-size: auto 75%; }
	#event_hd .decoWrap_hd .deco03_hd { bottom: -20%; left: -8%; width: 27%; }
	.sale_terms_hd #event_hd .decoWrap_hd .deco03_hd { width: 26%; left: -8%; bottom: -13%; }
}

/*-----------------------------------

	special

-----------------------------------*/

.special_hd {
	padding-top: 10%;
	text-align: center;
	font-family: "秀英丸ゴシック B", "Shuei MaruGo B";
	font-weight: bold;
	font-size: min(3vw, 34px);
	line-height: 1.6;
}
.special_hd .specialBox_hd { background: #fff; padding: 10% 5% 6%; position: relative; z-index: 1; }
#wrapper_hd .special_hd .ttl_hd {
	position: absolute;
	top: -9%;
	left: 50%;
	margin-left: -215px;
    z-index: 5;
	width: 430px;
}
.special_hd .specialBox_hd .summary_hd { margin-bottom: 2vw; font-size: min(3vw,36px); letter-spacing: 0.1em; }

#special01_hd .present_hd { width: 80%; margin: 0 auto; }
#special01_hd .decoWrap_hd .deco01_hd { width: 16%; top: 20%; left: -26%; }
#special01_hd .decoWrap_hd .deco02_hd { width: 16%; bottom: 20%; right: -26%; }
#special01_hd .decoWrap_hd .deco03_hd { width: 28%; top: -18%; right: -23%; z-index: 2; }
#special01_hd .decoBg_hd .deco01_hd { width: 71%; bottom: -6%; left: -5.5%; }
#special01_hd .decoBg_hd .deco02_hd { width: 47%; bottom: -11%; right: -11%; }

#special02_hd .specialBox_hd { padding: 10% 7% 8%; }
#special02_hd .ttl_hd { top: -5% !important; }
#special02_hd .flexWrap_hd { justify-content: space-between; margin-bottom: 3vw; }
#special02_hd .flexWrap_hd div { width: 48%; }
#special02_hd .presentWrap_hd .summary_hd {
	font-size: min(2.8vw, 32px);
	margin: 0 2% 0 0;
	flex-shrink: 1;
	text-align: right;
}
#special02_hd .presentWrap_hd + .presentWrap_hd { margin-top: 1vw; }
#off5_hd .detail_hd { width: 32%; }
#merry300_hd { margin-bottom: 3vw; }
#merry300_hd .detail_hd { width: 56%; }
#special02_hd .btn_hd {
	padding: 2.5% 7% 3% 7%;
	border: none;
	border-radius: 0;
	margin: 0 auto;
	background: #c8c8c8;
	box-shadow: 0 15px 0 #b0b0b0;
	transition: .1s;
	max-width: 800px;
	position: relative;
	pointer-events: none;
}
.sale_terms_hd #special02_hd .btn_hd {
	background: #b35ce7;
	box-shadow: 0 15px 0 #9542d1;
	padding: 2.5% 12% 3% 7%;
	pointer-events: all;
}
.sale_terms_hd #special02_hd .btn_hd:hover { box-shadow: none; transform: translate(0,15px); }
#special02_hd .btn_hd:after {
	content: "ただいま準備中";
    color: #222;
    background: rgba(255, 255, 255, .8);
    font-size: min(2.6vw, 28px);
    width: 30%;
    line-height: 1;
    padding: 1.5%;
    transform: rotate(-5deg);
    position: absolute;
    left: 50%;
    top: 50%;
    margin: -3% 0 0 -15%;
    letter-spacing: 0.1em;
}
.sale_terms_hd #special02_hd .btn_hd:after {
	content: url("../images/arrow.svg");
	left: auto;
	right: 3%;
	width: 5%;
	background: none;
	transform: none;
	padding: 0;
	margin: -2.5% 0 0 -2.5%;
}
#special02_hd .btn_hd span { display: block; margin: 0 auto; }	
#special02_hd .decoWrap_hd .deco01_hd { width: 28%; top: 3%; left: -24%; z-index: 2; }
#special02_hd .decoWrap_hd .deco02_hd { width: 11%; bottom: 20%; left: -23%; }
#special02_hd .decoWrap_hd .deco03_hd { width: 17%; top: -5%; right: -23%; }
#special02_hd .decoBg_hd .deco01_hd { width: 38%; bottom: -5.5%; left: -7%; }
#special02_hd .decoBg_hd .deco02_hd { width: 89%; bottom: -6%; right: -6%; }

#special03_hd .specialBox_hd { padding: 10% 7% 8%; }
#special03_hd .ttl_hd { top: -6% !important; }
#special03_hd .flexWrap_hd { justify-content: space-between; align-items: center; }
#special03_hd .imgBox_hd { width: 47%; }
#special03_hd .txtBox_hd { width: 48%; }
#special03_hd .txtBox_hd .summary_hd { margin-bottom: 1vw; }
#special03_hd .decoWrap_hd .deco01_hd { width: 16%; top: -7%; left: -26%; }
#special03_hd .decoWrap_hd .deco02_hd { width: 32%; top: -13%; right: -30%; z-index: 2; }
#special03_hd .decoBg_hd .deco01_hd { width: 76%; bottom: -6%; left: -5.5%; }
#special03_hd .decoBg_hd .deco02_hd { width: 60%; bottom: -7%; right: -10%; }

@media (max-width: 1200px) {
	#wrapper_hd .special_hd .ttl_hd { margin-left: -17vw; width: 34vw; }
}
@media (max-width: 768px) {
	.special_hd { padding-top: 15%; }
	#wrapper_hd .special_hd .ttl_hd { top: -6%; }
	.special_hd .specialBox_hd .summary_hd { font-size: 4.2vw !important; margin-bottom: 5vw; }
	#wrapper_hd .presentWrap_hd { flex-direction: column; }
	#special01_hd .decoWrap_hd .deco03_hd { width: 28%; top: -12%; right: -12%; }
	#special01_hd .decoBg_hd .deco01_hd { bottom: -4%; }
	#special01_hd .decoBg_hd .deco02_hd { bottom: -7%; }
	#special02_hd .presentWrap_hd .summary_hd { margin: 0 0 1% 0; }
	#special02_hd .presentWrap_hd + .presentWrap_hd { margin-top: 4vw; }
	#off5_hd .detail_hd { width: 50%; }
	#merry300_hd { margin-bottom: 5vw; }
	#merry300_hd .detail_hd { width: 90%; }
	#special02_hd .specialBox_hd { padding-top: 13%; padding-bottom: 11%; }
	#special02_hd .ttl_hd { top: -6% !important; }
	#special02_hd .flexWrap_hd { margin-bottom: 5vw; }
	#special02_hd .btn_hd { box-shadow: 0 10px 0 #b0b0b0; padding-top: 5% !important; padding-bottom: 5% !important; }
	.sale_terms_hd #special02_hd .btn_hd { box-shadow: 0 10px 0 #9542d1; }
	#special02_hd .btn_hd:after { font-size: 5vw; width: 52%; margin-left: -26%; }
	#special02_hd .btn_hd:hover { transform: translate(0,10px); }
	#special02_hd .decoWrap_hd .deco01_hd { width: 23%; top: -6%; left: -10%; }
	#special02_hd .decoBg_hd .deco01_hd { bottom: -4%; }
	#special02_hd .decoBg_hd .deco02_hd { bottom: -4%; }
	#special03_hd .specialBox_hd { padding: 15% 8% 10%; }
	#special03_hd .ttl_hd { top: -3% !important; }
	#special03_hd .flexWrap_hd { flex-direction: column; }
	#special03_hd .imgBox_hd { width: 100%; }
	#special03_hd .txtBox_hd { width: 100%; margin-top: 3vw; }
	#special03_hd .decoWrap_hd .deco02_hd { width: 30%; top: -18.3%; right: -9%; transform: rotate(-90deg); }
	#special03_hd .decoBg_hd .deco01_hd { bottom: -2%; }
	#special03_hd .decoBg_hd .deco02_hd { bottom: -3%; }
}
@media (max-width: 414px) {
	.special_hd { padding-top: 20%; }
	.special_hd .specialBox_hd { padding: 12% 5% 8%; }
	.special_hd .specialBox_hd .summary_hd { font-size: 5vw !important; }
	#wrapper_hd .special_hd .ttl_hd { width: 50vw; margin-left: -25vw; top: -8%; }
	#special01_hd .present_hd { width: 90%; }
	#off5_hd .detail_hd { width: 55%; }
	#merry300_hd { margin-bottom: 7vw; }
	#merry300_hd .detail_hd { width: 100%; }
}

/*-----------------------------------

	detail

-----------------------------------*/

#detail_hd { padding: 7vw 0; letter-spacing: .1em; }
#detail_hd #how_hd { display: flex; justify-content: space-between; margin-bottom: 30px; }
#detail_hd #how_hd .summary_hd {
	font-size: min(4vw,18px);
	font-weight: bold;
	line-height: 1.7;
	text-align: justify;
	margin-bottom: 0;
}
#detail_hd #how_hd .attention_hd {
	font-size: min(7vw,18px);
	font-weight: bold;
	line-height: 1.7;
	color: #f42d31;
}
#detail_hd #how_hd .number_hd {
	text-align: center;
	padding: 15px 0 20px;
	margin-bottom: 20px;
	border: 3px solid #e15c24;
	position: relative;
}
#detail_hd #how_hd .number_hd:before {
	content: "";
    position: absolute;
    width: calc(100% - 6px);
    height: calc(100% - 6px);
    left: 3px;
    top: 3px;
    border: 3px solid #e15c24;
}
#detail_hd #how_hd .number_hd img {
	margin: -50px auto 0;
	z-index: 1;
	position: relative;
	width: 90%;
}
#detail_hd #how_hd .number_hd span {
	color: #f42d31;
	font-size: min(4vw,43px);
	font-weight: bold;
	display: block;
	line-height: 1;
	position: relative;
    z-index: 2;
}

#detail_hd .ttl_hd {
	font-size: min(5vw,28px);
    font-weight: bold;
    text-align: left;
    margin: 0 0 20px;
	width: 100% !important;
}
#detail_hd .decoWrap_hd .deco01_hd { width: 17%; top: -8%; left: -26%; }
#detail_hd .decoWrap_hd .deco02_hd { width: 19%; top: -7%; right: -27%; }

#wrapper_hd .attentionList_hd img { width: 20px; display: inline-block; margin: 0 3px 4px 0; }
#wrapper_hd .attentionList_hd li {
	position: relative;
	font-size: min(3.5vw,16px);
	padding-left: 1.2em;
	letter-spacing: 0.05em;
}
#wrapper_hd .attentionList_hd li:not(:last-child) { margin-bottom: 10px; }
#wrapper_hd .attentionList_hd li:before {
	content: "※";
	position: absolute;
	left: 0;
	top: 0;
}
#wrapper_hd #attention_hd .no_hd {
	text-align: right;
	margin-top: 10px;
	letter-spacing: 0.1em;
	font-size: min(3.5vw,16px);
}

@media (max-width: 1170px) {
	#detail_hd #how_hd .disc_hd br { display: none; }
}
@media (max-width: 768px) {
	#detail_hd { padding: 15vw 0 10vw; }
	#detail_hd #how_hd { flex-direction: column; }
	#detail_hd #how_hd p br { display: none; }
	#detail_hd #how_hd .number_hd { padding: 25px 0; }
	#detail_hd #how_hd .number_hd img { width: 80%; margin-top: 0; }
	#detail_hd #how_hd .number_hd span { margin-top: 10px; font-size: min(12vw,60px); }
}

/*-----------------------------------

	more

-----------------------------------*/

#more_hd { padding-bottom: 7vw; }
#more_hd .ttlBox_hd { margin: 0 auto 4vw; position: relative; }
#more_hd .title_hd { max-width: 520px; width: 47%; margin: 0 auto; }
#more_hd .ttlBox_hd .deco01_hd { width: 16%; top: -8%; left: 5%; }
#more_hd .ttlBox_hd .deco02_hd { width: 11%; top: 10%; right: 9%; }

#more_hd .bnrList_hd { display: flex; justify-content: space-between; }
#more_hd .bnrList_hd li { width: 49%; }
#more_hd .bnrList_hd li a img { transition: .3s; }
#more_hd .bnrList_hd li a:hover img { opacity: .8; }

@media (max-width: 768px) {
	#more_hd { margin-top: 0; padding-bottom: 12vw; background-size: 150% auto; }
	#more_hd .title_hd { width: 80%; margin-bottom: 6vw; }
	#more_hd .ttlBox_hd .deco01_hd { width: 16%; top: -25%; left: -2%; transform: rotate(80deg); }
	#more_hd .ttlBox_hd .deco02_hd { width: 12%; top: -14%; right: -1%; transform: rotate(15deg); }
	#more_hd .bnrList_hd { flex-direction: column; }
	#more_hd .bnrList_hd li { width: 100%; }
	#more_hd .bnrList_hd li:not(:last-child) { margin-bottom: 10px; }
}