@charset "UTF-8";

/*
■ リセット
■ テキスト・フォント設定
■ 汎用・変数

■ 背景
■ タイトル
■ 導入
■ アイテム
■ イベント
■ スタッフスナップ
■ イベントナビ
■ スライダー
*/



/* ■ リセット ==================================================================================== */

body { min-width: 320px; margin: 0; padding: 0; }

#Feature_ div, #Feature_ section { margin: 0; color: inherit; word-break: normal; }
#Feature_ h1, #Feature_ h2, #Feature_ h3, #Feature_ h4, #Feature_ h5, #Feature_ p { margin: 0; padding: 0; letter-spacing: inherit; color: inherit; word-break: normal; }
#Feature_ dl, #Feature_ dt, #Feature_ dd { margin: 0; padding: 0; color: inherit; word-break: normal; }
#Feature_ *, #Feature_ *:before, #Feature_ *:after, #Feature_ *::before, #Feature_ *::after { box-sizing: border-box; }
#Feature_ *:focus { outline: none; }
#Feature_ figure, #Feature_ img, #Feature_ picture,#Feature_ video, #Feature_ canvas, #Feature_ svg { display: block; max-width: 100%; height: auto; border: none; vertical-align: bottom; }
#Feature_ form { margin: 0; padding: 0; }
#Feature_ li { list-style-type: none; }
#Feature_ table { width: 100%; border-collapse: collapse; border-spacing: 0; }
#Feature_ strong, #Feature_ em { font-style: normal; }
#Feature_ input, #Feature_ select, #Feature_ textarea, #Feature_ button { border-style: none; font-size: inherit; }
#Feature_ button { cursor: pointer; }
#Feature_ h2 { border: none; }

#Feature_ a:link {
text-decoration: none;
}

#Feature_ a:active {
text-decoration: none;
}

#Feature_ a:visited {
text-decoration: none;
}

#Feature_ a:hover {
text-decoration: none;
}


/* ページ管理用 --------------------------------------------------- */

.pane-contents {
margin-bottom: 0;
padding-bottom: 0;
}

body.page-page .pane-contents {
letter-spacing: inherit;
}

.pane-contents .container {
display: block;
padding-bottom: 0;
}

.pane-main {
margin-bottom: 0;
}

.block-page-freespace--caption {
margin-bottom: 0;
padding-top: 0;
}

.block-page-block--frame {
margin-bottom: 0;
padding: 0;
}

.block-page-block--contents {
display: block;
max-width: 100%;
}

.block-page-block--contents-text {
padding: 0;
}

.block-page-block--contents-body-text-1column {
width: 100%;
margin: 0;
}

.block-page-block--contents-body-text-1column div {
padding: 0;
}

.block-page-block--contents-body-text-1column img {
margin-inline: initial;
}

.block-page-block--contents-body-text-1column img:not(:first-child) {
margin-top: 0;
}

.block-page-freespace--caption img,
.block-pagecategory-freespace--top img,
.block-pagecategory-freespace--bottom img,
.block-page-block--frame img {
border-radius: inherit;
}

/* JSのZoom処理をリセット */
#Feature_ {
zoom: var(--body-reset-zoom); 
}

@media only screen and (max-width: 767px) {

	/* パンくず調整 */
	.block-topic-path {
	margin-top: 0;
	margin-bottom: 0;
	padding-top: 20px;
	padding-bottom: 20px;
	}

}



/* ■ テキスト・フォント設定 ==================================================================================== */

#Feature_ * {
font-family: "Sawarabi Gothic","Hiragino Kaku Gothic ProN","Hiragino Sans","Meiryo",Sans-Serif;
}


#Feature_ .WF1,
#Feature_ .WF1 * {
font-family: "Titan One", sans-serif;
}

#Feature_ .WF2,
#Feature_ .WF2 * {
}



/* ■ 汎用・変数 ==================================================================================== */

/*
変数
*/

#Feature_ .Disabled {
opacity: 0.3;
pointer-events: none;
}

#Feature_ .NoWrap {
white-space: nowrap;
}

/* リボン */
#Feature_ .Icon_Ribbon img {
display: inline-block;
}

@media only screen and (max-width: 767px) {

	#Feature_ .PC {
	display: none;
	}

	/* ボタン */
	#Feature_ .Btn {
	display: inline-block;
	height: 35px;
	padding: 0 25px;
	border-radius: 100vh;
	font-size: 14px;
	line-height: 35px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	color: #fff;
	background-color: var(--color1);
	}	

	/* リボン */
	#Feature_ .Icon_Ribbon {
	text-align: center;
	}

	#Feature_ .Icon_Ribbon img {
	max-width: 64px;
	}

}

@media print, screen and (min-width: 768px) {

	#Feature_ .SP {
	display: none;
	}

	/* ボタン */
	#Feature_ .Btn {
	display: inline-block;
	height: 40px;
	padding: 0 30px;
	border-radius: 100vh;
	font-size: 16px;
	line-height: 40px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	color: #fff;
	background-color: var(--color1);
	}	

	/* リボン */
	#Feature_ .Icon_Ribbon {
	text-align: center;
	}

	#Feature_ .Icon_Ribbon img {
	max-width: 128px;
	}

}

@media (hover: hover) {

	#Feature_ a:hover {
	transition: all 0.2s ease 0.01s;
	}

	#Feature_ a:hover {
	opacity: 0.7;
	}

}


/* 変数 --------------------------------------------------- */

#Feature_ * {
--color1: #c01920;
}



/* ■ 背景 ==================================================================================== */

#Feature_ {
background-color: #fff;
}



/* ■ タイトル ==================================================================================== */

@media only screen and (max-width: 767px) {

}

@media print, screen and (min-width: 768px) {

	#Feature_ .Feature_Title_Wrap {
	position: relative;
	}

	#Feature_ .Feature_Title_Logo {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 120px;
	}

}



/* ■ 導入 ==================================================================================== */

@media only screen and (max-width: 767px) {

	#Feature_ .Feature_Intro_Wrap {
	padding-top: 40px;
	padding-bottom: 40px;
	}

	#Feature_ .Feature_Intro_Mds {
	margin-top: 20px;
	font-size: 40px;
	line-height: 1;
	letter-spacing: 0.05em;
	text-align: center;
	color: var(--color1);
	}

	#Feature_ .Feature_Intro_Mds2 {
	margin-top: 20px;
	margin-bottom: 40px;
	font-size: 25px;
	line-height: 1;
	text-align: center;
	color: var(--color1);
	}

	#Feature_ .Feature_Intro_Lead {
	margin-top: 20px;
	padding: 0 30px;
	font-size: 14px;
	line-height: 2;
	}

	#Feature_ .Feature_Intro_Notice {
	color: #f00a14;
	}

}

@media print, screen and (min-width: 768px) {

	#Feature_ .Feature_Intro_Wrap {
	padding-top: 80px;
	padding-bottom: 100px;
	}

	#Feature_ .Feature_Intro {
	max-width: 800px;
	margin: 0 auto;
	}

	#Feature_ .Feature_Intro_Mds {
	margin-top: 30px;
	font-size: 58px;
	line-height: 1;
	letter-spacing: 0.05em;
	text-align: center;
	color: var(--color1);
	}

	#Feature_ .Feature_Intro_Mds2 {
	margin-top: 20px;
	margin-bottom: 40px;
	font-size: 40px;
	line-height: 1;
	text-align: center;
	color: var(--color1);
	}

	#Feature_ .Feature_Intro_Lead {
	margin-top: 30px;
	font-size: 16px;
	line-height: 2.3;
	}

	#Feature_ .Feature_Intro_Notice {
	color: #f00a14;
	}

}



/* ■ アイテム ==================================================================================== */

@media only screen and (max-width: 767px) {

	#Feature_ .Feature_Item {
	padding: 40px 10px 60px;
	}

	#Feature_ .Feature_Item:nth-of-type(odd) {
	background-color: #fef2f2;
	}

	#Feature_ .Feature_Item_Mds1 {
	font-size: 40px;
	line-height: 1.1;
	text-align: center;
	color: var(--color1);
	}

	#Feature_ .Feature_Item_Lead {
	margin-top: 20px;
	padding: 0 20px;
	font-size: 14px;
	line-height: 2;
	}

	#Feature_ .Feature_Item_Photo {
	position: relative;
	margin-top: 30px;
	}

	#Feature_ .Feature_Item_Photo_Cover {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
	}

	#Feature_ .Feature_Item_Mds2 {
	margin-top: 30px;
	font-size: 23px;
	line-height: 1.2;
	text-align: center;
	color: var(--color1);
	}

	#Feature_ .Feature_Item_Price_Wrap {
	margin-top: 15px;
	}

	#Feature_ .Feature_Item_Price {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 17px;
	line-height: 1;
	color: var(--color1);
	}

	#Feature_ .Feature_Item_Price span {
	font-size: 11px;
	}

	#Feature_ .Feature_Item_Buy {
	margin-top: 20px;
	text-align: center;
	}

	#Feature_ .Feature_Item_Buy .Btn {
	padding: 0 40px;
	font-size: 20px;
	}

}

@media print, screen and (min-width: 768px) {

	#Feature_ .Feature_Item {
	padding-top: 120px;
	padding-bottom: 140px;
	}

	#Feature_ .Feature_Item:nth-of-type(odd) {
	background-color: #fef2f2;
	}

	#Feature_ .Feature_Item_Mds1 {
	font-size: 58px;
	text-align: center;
	color: var(--color1);
	}

	#Feature_ .Feature_Item_Lead {
	max-width: 800px;
	margin: 30px auto 0;
	font-size: 15px;
	line-height: 2.2;
	}

	#Feature_ .Feature_Item_Photo {
	position: relative;
	max-width: 900px;
	margin: 60px auto 0;
	}

	#Feature_ .Feature_Item_Photo_Cover {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
	}

	#Feature_ .Feature_Item_Mds2 {
	margin-top: 50px;
	font-size: 32px;
	line-height: 1;
	text-align: center;
	color: var(--color1);
	}

	#Feature_ .Feature_Item_Price_Wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 15px;
	margin-top: 30px;
	}

	#Feature_ .Feature_Item_Price {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 22px;
	line-height: 1;
	color: var(--color1);
	}

	#Feature_ .Feature_Item_Price span {
	font-size: 16px;
	}

	#Feature_ .Feature_Item_Buy .Btn {
	padding: 0 50px;
	font-size: 24px;
	}

}



/* ■ イベント ==================================================================================== */

@media only screen and (max-width: 767px) {

	#Feature_ .Feature_Event_Wrap_Wrap {
	padding-top: 30px;
	}

	#Feature_ .Feature_Event_Wrap {
	padding: 20px 12.5px;
	background-color: var(--color1);
	}
	
	#Feature_ .Feature_Event {
	padding: 100px 25px 40px;
	border-radius: 20px;
	background-color: #fffdf7;
	}

	#Feature_ .Feature_Event_Mds {
	margin: -150px -15px 0;
	}

	#Feature_ .Feature_Event_Info_Wrap {
	padding-top: 20px;
	}

	#Feature_ .Feature_Event_Photo img {
	border-radius: 20px;
	}

	#Feature_ .Feature_Event_Mds2 {
	margin-top: 20px;
	font-size: 17px;
	line-height: 1.7;
	color: var(--color1);
	}

	#Feature_ .Feature_Event_Lead {
	margin-top: 15px;
	font-size: 14px;
	line-height: 2;
	}

	#Feature_ .Feature_Event_Btn {
	margin-top: 20px;
	text-align: center;
	}

}

@media print, screen and (min-width: 768px) {

	#Feature_ .Feature_Event_Wrap_Wrap {
	padding-top: 80px;
	}

	#Feature_ .Feature_Event_Wrap {
	padding-top: 50px;
	padding-bottom: 50px;
	background-color: var(--color1);
	}
	
	#Feature_ .Feature_Event {
	max-width: 1050px;
	margin: 0 auto;
	padding: 80px 60px 60px;
	border-radius: 20px;
	background-color: #fffdf7;
	}

	#Feature_ .Feature_Event_Mds {
	margin: -200px -15px 0;
	}

	#Feature_ .Feature_Event_Info_Wrap {
	display: flex;
	padding-top: 20px;
	}

	#Feature_ .Feature_Event_Photo {
	width: 440px;
	}

	#Feature_ .Feature_Event_Photo img {
	border-radius: 20px;
	}

	#Feature_ .Feature_Event_Info {
	flex: 1;
	padding-left: 40px;
	}

	#Feature_ .Feature_Event_Mds2 {
	font-size: 24px;
	line-height: 1.7;
	color: var(--color1);
	}

	#Feature_ .Feature_Event_Lead {
	margin-top: 15px;
	font-size: 15px;
	line-height: 2.4;
	}

	#Feature_ .Feature_Event_Btn {
	margin-top: 25px;
	}

}



/* ■ スタッフスナップ ==================================================================================== */

@media only screen and (max-width: 767px) {

	#Feature_ .Feature_Snap_Wrap {
	padding: 40px 0;
	background-image: url(/special/hellokitty/img/Snap_Bg.png?ver=2);
	background-size: 550px auto;
	}

	#Feature_ .Feature_Snap_Mds {
	margin-top: 15px;
	font-size: 40px;
	line-height: 1;
	text-align: center;
	color: var(--color1);
	}

	#Feature_ .Feature_Snap_Lead {
	margin-top: 20px;
	font-size: 14px;
	line-height: 2;
	font-weight: bold;
	text-align: center;
	}

	#Feature_ .Feature_Snap_Photo_Wrap {
	margin-top: 30px;
	padding: 30px 30px;
	background: #fbecec;
	}

	#Feature_ .Feature_Snap_Photo {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12.5px;
	}

	#Feature_ .Feature_Snap_Btn {
	margin-top: 30px;
	text-align: center;
	}

	#Feature_ .Feature_Snap_Copyright {
	margin-top: 40px;
	font-size: 11px;
	text-align: center;
	color: var(--color1);
	}

}

@media print, screen and (min-width: 768px) {

	#Feature_ .Feature_Snap_Wrap {
	padding: 80px 0;
	background-image: url(/special/hellokitty/img/Snap_Bg.png?ver=2);
	background-size: 1100px auto;
	}

	#Feature_ .Feature_Snap_Mds {
	margin-top: 30px;
	font-size: 58px;
	line-height: 1;
	text-align: center;
	color: var(--color1);
	}

	#Feature_ .Feature_Snap_Lead {
	margin-top: 30px;
	font-size: 18px;
	line-height: 2;
	font-weight: bold;
	text-align: center;
	}

	#Feature_ .Feature_Snap_Photo_Wrap {
	margin-top: 70px;
	padding: 35px 0;
	background: #fbecec;
	}

	#Feature_ .Feature_Snap_Photo {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0 15px;
	max-width: 1050px;
	margin: 0 auto;
	}

	#Feature_ .Feature_Snap_Btn {
	margin-top: 50px;
	text-align: center;
	}

	#Feature_ .Feature_Snap_Btn .Btn {
	height: 50px;
	font-size: 18px;
	line-height: 50px;
	}

	#Feature_ .Feature_Snap_Copyright {
	margin-top: 70px;
	font-size: 16px;
	text-align: center;
	color: var(--color1);
	}

}



/* ■ イベントナビ ==================================================================================== */

@media only screen and (max-width: 767px) {

	#Feature_ .Feature_EventNav {
	position: fixed;
	left: 0;
	bottom: -200px;
	z-index: 4;
	transition: all 1s ease 0.01s;
	}

	#Feature_ .Feature_EventNav_Show {
	bottom: 5px;
	}

	/* ページの先頭へボタン調整 */
	#footer_pagetop {
	bottom: 80px;
	}

}

@media print, screen and (min-width: 768px) {

	#Feature_ .Feature_EventNav {
	position: fixed;
	top: 350px;
	right: -200px;
	z-index: 4;
	width: 160px;
	transition: all 1s ease 0.01s;
	}

	#Feature_ .Feature_EventNav_Show {
	right: 20px;
	}

}

@media (hover: hover) {

	#Feature_ .Feature_EventNav a:hover {
	opacity: 1;
	}

}



/* ■ スライダー ==================================================================================== */

@media only screen and (max-width: 767px) {

	#Feature_ .swiper {
	position: relative;
	}

	/* ボタン */
	#Feature_ .swiper-button-prev,
	#Feature_ .swiper-button-next {
	position: absolute;
	top: 50%;
	z-index: 5;
	width: 48px;
	height: 48px;
	margin-top: -10px;
	border: 3px solid #000;
	border-radius: 100vh;
	background-color: #fff;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 60px 60px;
	cursor: pointer;
	}

	#Feature_ .swiper-button-prev {
	left: 10px;
	}

	#Feature_ .swiper-button-next {
	right: 10px;
	}

	#Feature_ .swiper-button-prev::before,
	#Feature_ .swiper-button-prev::after,
	#Feature_ .swiper-button-next::before,
	#Feature_ .swiper-button-next::after {
	position: absolute;
	width: 16px;
	height: 3px;
	border-radius: 100vh;
	background-color: #000;
	content: '';
	}

	#Feature_ .swiper-button-prev::before,
	#Feature_ .swiper-button-prev::after {
	left: 11px;
	}

	#Feature_ .swiper-button-next::before,
	#Feature_ .swiper-button-next::after {
	right: 11px;
	}

	#Feature_ .swiper-button-prev::before,
	#Feature_ .swiper-button-next::before {
	top: 14px;
	}

	#Feature_ .swiper-button-prev::after,
	#Feature_ .swiper-button-next::after {
	top: 24px;
	}

	#Feature_ .swiper-button-prev::before {
	transform: rotate(-45deg);
	}

	#Feature_ .swiper-button-prev::after {
	transform: rotate(-135deg);
	}

	#Feature_ .swiper-button-next::before {
	transform: rotate(45deg);
	}

	#Feature_ .swiper-button-next::after {
	transform: rotate(135deg);
	}

	/* ページネーション	 */
	#Feature_ .swiper-pagination {
	display: flex;
	justify-content: center;
	position: inherit;
	bottom: inherit;
	margin-top: 15px;
	}

	#Feature_ .swiper-pagination-bullet {
	display: block;
	width: 18px;
	height: 18px;
	margin: 0 4px;
	border: 3px solid #000;
	border-radius: 100vh;
	background-color: #fff;
	opacity: inherit;
	cursor: pointer;
	}

	#Feature_ .swiper-pagination-bullet-active {
	background-color: var(--color1);
	}

}

@media print, screen and (min-width: 768px) {

	#Feature_ .swiper {
	position: relative;
	}

	/* ボタン */
	#Feature_ .swiper-button-prev,
	#Feature_ .swiper-button-next {
	position: absolute;
	top: 50%;
	z-index: 5;
	width: 60px;
	height: 60px;
	margin-top: -10px;
	border: 5px solid #000;
	border-radius: 100vh;
	background-color: #fff;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 60px 60px;
	cursor: pointer;
	}

	#Feature_ .swiper-button-prev {
	left: 30px;
	}

	#Feature_ .swiper-button-next {
	right: 30px;
	}

	#Feature_ .swiper-button-prev::before,
	#Feature_ .swiper-button-prev::after,
	#Feature_ .swiper-button-next::before,
	#Feature_ .swiper-button-next::after {
	position: absolute;
	width: 20px;
	height: 4px;
	border-radius: 100vh;
	background-color: #000;
	content: '';
	}

	#Feature_ .swiper-button-prev::before,
	#Feature_ .swiper-button-prev::after {
	left: 13px;
	}

	#Feature_ .swiper-button-next::before,
	#Feature_ .swiper-button-next::after {
	right: 13px;
	}

	#Feature_ .swiper-button-prev::before,
	#Feature_ .swiper-button-next::before {
	top: 16px;
	}

	#Feature_ .swiper-button-prev::after,
	#Feature_ .swiper-button-next::after {
	top: 28px;
	}

	#Feature_ .swiper-button-prev::before {
	transform: rotate(-45deg);
	}

	#Feature_ .swiper-button-prev::after {
	transform: rotate(-135deg);
	}

	#Feature_ .swiper-button-next::before {
	transform: rotate(45deg);
	}

	#Feature_ .swiper-button-next::after {
	transform: rotate(135deg);
	}

	/* ページネーション	 */
	#Feature_ .swiper-pagination {
	display: flex;
	justify-content: center;
	position: inherit;
	bottom: inherit;
	margin-top: 15px;
	}

	#Feature_ .swiper-pagination-bullet {
	display: block;
	width: 16px;
	height: 16px;
	margin: 0 4px;
	border: 3px solid #000;
	border-radius: 100vh;
	background-color: #fff;
	opacity: inherit;
	cursor: pointer;
	}

	#Feature_ .swiper-pagination-bullet-active {
	background-color: var(--color1);
	}

}

