@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Kaisei+Opti:wght@500;700&family=Noto+Sans+JP:wght@400;500;600&display=swap');
#content img {
	vertical-align: top;
}
#content-main {
    overflow: clip;
}
#content-main .contact-note, .btn-link a {
	font-family: YakuHanJP, 'M PLUS Rounded 1c', sans-serif;
	transform: rotate(0.03deg);
	letter-spacing: .05em;
}
#content-main .sec-info p {
	font-family: YakuHanJP, 'M PLUS Rounded 1c', sans-serif;
	transform: rotate(0.03deg);
  font-weight: 500;
}
.sec-special .-ti01, .sec-special .-ti02, .sec-special .-ti03 .-tx, .sec-special .-btn > span, .sec-special .sp-label, .content-title .-copy p {
  font-family: "Kaisei Opti", serif;
	transform: rotate(0.03deg);
}
.sec-special li, .sec-special p, .sec-special dt, .sec-special dd {
	font-family: "Noto Sans JP", sans-serif;
}
.pageTop {
  width: 100%;
  transform: translate3d(0, 0, 0);
  /*position: sticky;*/
  z-index: 9999;
  right: 0;
  bottom: 0;
}
.pageTop a {
  border-radius: 9999em;
  display: block;
  background: #e6992e url(../images/halloween2026_preview/btn_pagetop.svg) no-repeat 50% 47% / calc(18/60*100%) auto;
  width: 60px;
  height: 60px;
  text-indent: -9999px;
  overflow: hidden;
  position: absolute;
  transition: all .3s ease;
  right: 20px;
  bottom: 16px;
}
.pageTop a:hover {
	opacity: .8;
}
@media screen and (max-width: 767px) {
  .pageTop {
    margin-top: calc(100vw * 132 / 750);
  }
	.pageTop a {
    right: calc( 100vw * 20 / 750);
    bottom: calc( 100vw * 30 / 750);
		width: calc( 100vw * 86 / 750);
		height: calc( 100vw * 86 / 750);
	}
}
.sec-special {
	background: #451028 url(../images/halloween2026_preview/bg01.png) 50% 0 / min(160/900*100vw, 160px);
  color: #ffffff;
	font-size: 16px;
	line-height: 1.8;
	position: relative;
	z-index: 1;
}
.sec-special .content-inner {
	max-width: 840px;
	margin: 0 auto;
	padding: .1px 20px;
}
.sec-special .note-list > li {
  font-size:14px;}
.sec-special .note-list > li:first-letter,
.sec-special .note-list-m > li:first-letter {
  font-family: inherit;
}
.content-title {
  border-top: 6px solid #e6992e;
	text-align: center;
	padding: 100px 0 114px;
	background: url(../images/halloween2026_preview/bg05.png) no-repeat 50% 0%, url(../images/halloween2026_preview/bg06.png) no-repeat center bottom 135px, linear-gradient(to bottom, #c1385f, #451028);
  position: relative;
}
.content-title .-copy {
	font-size: 24px;
	line-height: 2.08;
  margin-top: 2.2em;
  padding-right: .6em;
}
@media screen and (max-width: 767px) {
	.sec-special {
		font-size: calc( 100vw * 28 / 750);
    background-size: calc( 100vw * 120 / 750);
    background-position: 55% 0;
	}
	.sec-special .note-list > li {
		line-height: 1.75;
		font-size: calc( 100vw * 24 / 750);
	}
	.content-title {
    border-top-width: calc( 100vw * 8 / 750);
    background: url(../images/halloween2026_preview/bg05_sp.png) no-repeat 50% 0% / 100% auto, url(../images/halloween2026_preview/bg06_sp.png) no-repeat center bottom calc( 100vw * 55 / 750) / 100% auto, linear-gradient(to bottom, #c1385f, #451028);
		padding: calc( 100vw * 100 / 750) 0 calc( 100vw * 160 / 750);
	}
	.content-title .-copy {
		font-size: calc( 100vw * 28 / 750);
    margin-top: 1.7em;
    line-height: 2.14;
	}
	.content-title .-copy span {
		letter-spacing: -0.12em;
		display: inline-block;
	}
}
.content-nav {
  border-top: 4px solid #e6992e;
	background: url("../images/halloween2026_preview/bg02.png") repeat-x 50% 0, url("../images/halloween2026_preview/bg03.png") no-repeat 50% 100%;
  background-color: #340c1e !important;
	padding: 80px 0;
	position: relative;
}
.content-nav ul {
  max-width: 600px;
	margin: 0 auto -10px;
}
.content-nav li {
  margin: 0 0 10px;
}
.content-nav li > a {
	display: block;
	position: relative;
}
.content-nav li.btn-official {
	position: relative;
}
.content-nav li.btn-official a[class^="btn"] {
  border-radius: 9999em;
  width: 248px;
  height: 34px;
  position: absolute;
  bottom: 14px;
  display: block;
  overflow: hidden;
  text-indent: -9999em;
}
.content-nav li.btn-official a.btn01 {
  left: 7%
}
.content-nav li.btn-official a.btn02 {
  right: 7%
}
@media screen and (max-width: 767px) {
	.content-nav {
    border-top-width: calc( 100vw * 8 / 750);
    background: url("../images/halloween2026_preview/bg02_sp.png") no-repeat 50% 0 / 100% auto;
		padding: calc( 100vw * 110 / 750) calc( 100vw * 25 / 750);
	}
	.content-nav ul {
		max-width: calc( 100vw * 650 / 750);
	  margin: 0 auto -2%;
	}
  .content-nav li {
    margin: 0 0 2%;
  }
  .content-nav li.btn-official a[class^="btn"] {
    width: calc( 100% * 256 / 650);
    height: calc( 100% * 64 / 200);
    bottom: calc( 100% * 18 / 200);
  }
  .content-nav li.btn-official a.btn01 {
    left: calc( 100% * 58 / 650);
  }
  .content-nav li.btn-official a.btn02 {
    right: calc( 100% * 59 / 650);
  }
}

.-ti01 {
	font-size: 61px;
	text-align: center;
	line-height: 1;
}
.-ti01 img {
	width: auto !important;
  height: 1em !important;
}
.sec-cp .-date {
	font-size: 44px;
  text-align: center;
  margin: .5em 0 0;
	line-height: 1;
}
.sec-cp .-date img {
	width: auto !important;
  height: 1em !important;
}
.-ti02 {
  min-height: 90px;
	background: url(../images/halloween2026_preview/bg04.png) repeat-x 50% 100%, linear-gradient(to top, #ecb268, #e6992e);
	font-size: 32px;
	font-weight: 700;
	line-height: 1.34;
	color: #4c0928;
	text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
	position: relative;
	margin: 0 auto 1em;
  padding: .1em 0 0;
}
.-ti02 .-tx {
  max-width: 900px;
	display: block;
	position: relative;
  margin: 0 auto;
	padding: .55em 0 .75em;
}
.-list-detail + .-ti02 {
	margin-top: 3.7em;
}
.sp-label {
  border-radius: .2em;
  background: #e9517c;
  font-size: 20px;
  font-weight: 700;
  width: 150px;
  height: 40px;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  margin: 1.8em auto 0;
  letter-spacing: 0.08em;
}
.sp-label::before,
.sp-label::after {
  content: "";
  background: no-repeat 50% 50% / contain;
  display: inline-block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
  pointer-events: none;
}
.sp-label::before {
  width: calc(138/20*1em);
  height: calc(51/20*1em);
  background-image: url("../images/halloween2026_preview/bg08.png");
  left: calc(-158/20*1em);
}
.sp-label::after {
  width: calc(134/20*1em);
  height: calc(60/20*1em);
  background-image: url("../images/halloween2026_preview/bg09.png");
  right: calc(-154/20*1em);
}
@media screen and (max-width: 767px) {
	#contentMain {
		padding-top: 75px;
	}
	.content-inner {
		padding: .1px 30px;
	}
  .-ti01 {
		font-size: calc( 100vw * 150 / 750);
  }
  .sec-cp .-date {
		font-size: calc( 100vw * 51 / 750);
		font-size: calc( 100vw * 48 / 750);
    margin: .6em 0 0;
  }
	.-ti02 {
    background: url(../images/halloween2026_preview/bg04_sp.png) repeat-x 50% 100% / 100% auto, linear-gradient(to top, #ecb268, #e6992e);
    min-height: calc( 100vw * 120 / 750);
		font-size: calc( 100vw * 42 / 750);
		margin-bottom: .7em;
	}
	.-list-detail + .-ti02 {
		margin-top: 4.3em;
	}
  .sp-label {
    font-size: calc( 100vw * 26 / 750);
    width: calc( 1em * 200 / 26);
    height: calc( 1em * 60 / 26);
    margin: calc(35/18*1em) auto 0;
  }
  .sp-label::before {
    transform: translateY(-60%);
    width: calc(204/26*1em);
    height: calc(76/26*1em);
    left: calc(-226 / 26 * 1em);
  }
  .sp-label::after {
    width: calc(198/26*1em);
    height: calc(89/26*1em);
    right: calc(-217 / 26 * 1em);
  }
}
.-btn {
	background: url(../images/halloween2026_preview/btn_bg01.png) no-repeat 0 50% / contain;
	font-size: 28px;
  font-weight: 700;
	display: flex;
	justify-content: center;
	align-items: center;
  color: #ffffff !important;
	text-shadow: 0 2px rgba(0,0,0,.5);
  width: 420px;
  height: 98px;
	margin: 155px auto 0;
	padding-bottom: .3em;
	position: relative;
	transition: all .3s ease;
	text-decoration: none !important;
  letter-spacing: .14em;
}
.-btn .-inner {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
  padding-left: .2em;
}
.-btn .tx-kana {
  letter-spacing: -.08em;
}
span.-btn {
	filter: grayscale(1) contrast(50%);
}
a.-btn:hover {
	opacity: .8;
}
.-btn + .-btn {
	margin-top: 30px;
}
.-btn-caption {
	text-align: center;
	margin-top: .3em;
	display: block;
	line-height: 1.6;
}
.-btn-caption + .-btn,
.icon-att + .-btn {
	margin-top: 45px;
}
@media screen and (max-width: 767px) {
	.-btn {
    background-image: url(../images/halloween2026_preview/btn_bg01_sp.png);
		font-size: calc( 100vw * 36 / 750);
		width: calc( 100vw * 600 / 750);
		height: calc( 100vw * 143 / 750);
		margin: calc( 100vw * 190 / 750) auto 0;
	}
	.-btn + .-btn {
    	margin-top: 6%;
	}
	.-btn-caption + .-btn,
	.icon-att + .-btn {
		margin-top: 2.5em;
	}
}
.content-mv {
	background: #26a7e1 linear-gradient(to top, #912a47, #4a116c) 50% 0;
}
.sec-cp {
	position: relative;
}
.sec-cp .content-inner {
	max-width: 900px;
	padding: .1px 50px .1px;
}
.sec-cp .sec-present {
  height: 488px;
	background: url(../images/halloween2026_preview/bg07.png) 50% 0 repeat-x;
	position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: -27px 0;
  padding: 15px 0 0;
  z-index: 1;
}
.sec-cp .sec-present .icon-att {
  margin: -.7em auto;
}
.sec-cp .sec-detail {
	padding: 108px 0 160px;
}
.sec-cp .sec-detail + .sec-detail {
	padding-top: 0;
}
.sec-cp .sec-detail .sec-info{
	margin-top: 8em;
	margin-bottom: 0;
	font-size: 15px;
}
.sec-cp .-tiny {
  letter-spacing: -0.02em;}
.sec-cp .tx-att {
	color:#fe88b7 !important;}
.sec-cp .icon-star {
	color:#e9517c !important;}
.sec-cp .tx-link {
  text-underline-offset: .2em;
  color: #e6992e !important;
}
.sec-cp .icon-att {
	font-size: 16px;
	display: table;
	font-weight: 400;
	border-radius: 9999em;
	background: #000;
	color:#fff;
	margin: .7em auto 0;
	padding: .6em 2em .6em;
	line-height: 1;
}
.sec-cp hr.hr0 {
	height: 0;
	border: none;
	margin: 25px 0;
}
.sec-cp .-ti01 .-icon {
	display: block;
	margin-top: 1.2em;
}
.sec-cp .-lead {
	font-size: 18px;
	font-weight: 500;
	margin: 1.5em 0;
  line-height: 2;
	text-align: center;
}
.sec-cp .-lead .note-list {
	margin: .5em 0 2.3em;
}
.sec-cp .-lead.tx-att {
	text-align: center;
}
.sec-cp .-text {
	margin: 17px 0px 0;
  line-height: 2;
}
.sec-cp .-img {
  margin: 1.6em 0 1.1em;
}
.sec-cp .-list-detail {
	font-size: 16px;
	line-height: 2.125;
	margin: 0 0;
	padding: 0 0 1px;
	border-bottom: 1px solid #e6992e;
}
.sec-cp dl.-list-detail {
	display: flex;
	align-items: flex-start;
}
.sec-cp .-list-detail > dt {
	clear: both;
	font-size: 15px;
  font-weight: 500;
	width: 94px;
  min-height: calc(40/15*1em);
	background: #e6992e;
  color: #451028;
  display: flex;
  justify-content: center;
  align-items: center;
	text-align: center;
	margin: 30px 30px 30px 0;
	padding: .2em 0;
	white-space: nowrap;
	line-height: 1.5;
}
.sec-cp .-list-detail > dd {
	width: calc( 100% - 124px );
	padding: 1.31em 0;
  line-height: 1.8;
}
.sec-cp dl.-list-detail > dd .note-list {
  margin-top: .6em;
  margin-bottom: .2em;
}
.sec-cp .-list-detail > dd.tx-line01 {
	padding-top: 2.1em;
}
.sec-cp .-list-detail.-detail-img {
	padding-bottom: 25px;
}
@media screen and (max-width: 767px) {
	.sec-cp .content-inner {
		padding: 0 25px .1px;
		padding: .1px calc( 100vw * 50 / 750) .1px;
	}
  .sec-cp .sec-present {
    height: calc( 100vw * 814 / 750);
		background-image: url("../images/halloween2026_preview/bg07_sp.png");
    background-size: auto 100%;
    margin: calc( 100vw * -35 / 750) 0;
    padding: 0;
  }
  .sec-cp .sec-detail {
		padding: calc( 100vw * 115 / 750) 0 calc( 100vw * 110 / 750);
	}
  .sec-cp .sec-detail + .sec-detail {
    padding-top: calc( 100vw * 50 / 750);
  }
	.sec-cp .sec-detail .content-inner {
		padding: .1px calc( 100vw * 35 / 750) .1px;
	}
	.sec-cp .icon-att {
    font-size: calc(100vw* 25 / 750);
	}
	.sec-cp .-ti01 .-icon {
		margin: calc( 100vw * 15 / 750) calc( 100vw * 90 / 750);
	}
	.sec-cp .-ti01 .-icon img {
		height: calc( 100vw * 80 / 750) !important;
	}
	.sec-cp .-lead {
		margin: 1.3em 0;
    font-size: calc(100vw* 32 / 750);
    line-height: 1.875;
		letter-spacing: normal;
	}
	.sec-cp .-lead.tx-att {
		text-align: left;
	}
	.sec-cp .-text {
		margin: calc( 100vw * 10 / 750) calc( 100vw * 15 / 750) calc( 100vw * 30 / 750);
	}
	.sec-cp .-img {
		margin: calc(100vw * 50 / 750) 0 calc(100vw * 20 / 750);
	}
	.sec-cp .-list-detail {
		font-size: calc( 100vw * 28 / 750);
		margin: 0 calc( 100vw * 15 / 750) calc( 100vw * 40 / 750);
    padding: 0;
	}
	.sec-cp .-list-detail > dt {
		width: 5.5em;
		font-size: calc( 100vw * 26 / 750);
    margin: 1.1em calc(100vw * 30 / 750) 0 0;
    padding: .1em 0;
    min-height: calc(60 / 26 * 1em);
	}
	.sec-cp .-list-detail > dd.tx-line01 {
		padding: 1em 0 1.9em 0;
	}
	.sec-cp .-list-detail > dd {
		width: 100%;
		padding: .9em 0 1.5em 0;
	}
  .sec-cp dl.-list-detail {
    display: inherit;
  }
	.sec-cp dl.-list-detail > dd .note-list {
		margin-top: .7em;
    margin-bottom: .3em;
	}
	.sec-cp dl.-list-detail > dd .note-list > li {
		font-size: calc( 100vw * 26 / 750);
	}
  .sec-cp .-list-detail.-detail-img {
    padding-bottom: calc( 100vw * 60 / 750);
  }
	.sec-cp .-list-detail.-detail-img .-img {
		margin: 0;
	}
}