@charset "UTF-8";
/**
 * index用css
 */

/* コンテンツ並び順　表示非表示 */
body ,
header,
main #main_container1{
	display:flex;
	flex-direction:column;
}
[data-pcorder],
[data-sporder]{
	position:relative;
	z-index:1;
}
main{
	z-index: 102;
}

@media screen and (min-width:641px){
	[data-pcorder=""],
	[data-pcorder=""] *,
	[data-pcorder=""] img{
		display:none !important;
		height: 0 !important;
		min-height: 0 !important;
		font-size: 0 !important;
		line-height:0 !important;
		border-width: 0 !important;
		padding:0 !important;
		margin:0 !important;
	}
		.headerWrap,
	header {
		order:calc(0 + 1);
	}
										header [data-order="h1"]{
					order:1;
				}
												header [data-order="indexLogo"]{
					order:2;
				}
								main{
		order:calc(0 + 1 + 0 + 1);
	}
										main #main_container1 [data-order="shopPr"]{
					order:1;
				}
												main #main_container1 [data-order="entrance"]{
					order:2;
				}
												main #main_container1 [data-order="indexLink"]{
					order:3;
				}
							footer{
		order:calc(0 + 1 + 0 + 2);
	}
	#commonFreeContents {
		order:calc(0 + 1 + 0 + 3);
	}
		#fdc_copyRight{
		order:calc(0 + 1 + 0 + 4);
	}
	}
@media screen and (max-width:640px){
	[data-sporder=""],
	[data-sporder=""] *,
	[data-sporder=""] img{
		display:none !important;
		height: 0 !important;
		min-height: 0 !important;
		font-size: 0 !important;
		line-height:0 !important;
		border-width: 0 !important;
		padding:0 !important;
		margin:0 !important;
	}
		.headerWrap,
	header {
		order:calc(0 + 1);
	}
					header [data-order="h1"]{
			order:1;
		}
				header [data-order="indexLogo"]{
			order:2;
		}
					main{
		order:calc(0 + 1 + 0 + 1);
	}
					main #main_container1 [data-order="shopPr"]{
			order:1;
		}
				main #main_container1 [data-order="entrance"]{
			order:2;
		}
				main #main_container1 [data-order="indexLink"]{
			order:3;
		}
				footer{
		order:calc(0 + 1 + 0 + 2);
	}
	#commonFreeContents {
		order:calc(0 + 1 + 0 + 3);
	}
		#fdc_copyRight{
		order:calc(0 + 1 + 0 + 4);
	}
	
}
/* ----------------------------------------------------------
  Common Settings : css-reset
---------------------------------------------------------- */

html {
	font-family: Meiryo, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', sans-serif;
	overflow-y: scroll;
	-webkit-text-size-adjust: none;
	-webkit-font-smoothing: antialiased;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

body,
div,
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
li,
dl,
dt,
dd,
form,
fieldset,
legend,
input,
textarea,
pre,
code,
blockquote,
th,
td {
	margin: 0;
	padding: 0;
}

div,
h2,
h3,
h4,
h5,
h6,
p,
li,
dt,
dd,
pre,
code,
blockquote,
th,
td {
	word-break: break-all;
}

br {
	letter-spacing: 0;
}

fieldset,
img {
	border: 0;
}

li {
	list-style: none;
}

caption,
th {
	text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6,
th {
	font-size: 100%;
	font-weight: normal;
	font-style: normal;
}

input,
textarea,
select {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	color: #333;
}

input[type="submit"] {
	cursor: pointer;
}

select {
	background-color: #ffffff !important;
}

address,
caption,
cite,
code,
dfn,
var {
	font-style: normal;
	font-weight: normal;
}

abbr,
acronym {
	border: 0;
	font-variant: normal;
}

del,
u {
	text-decoration: none;
}


/*=================================================
 * CSS MAIN
 * ================================================= */
/** body :**/
body {
	text-align: center;
	font-size: 12px;
	line-height: 16px;
	position:relative;
	-webkit-text-size-adjust: 100%;
	scrollbar-face-color: #ffffff;
	scrollbar-3dlight-color: #553f09;
	scrollbar-highlight-color: #ffffff;
	scrollbar-shadow-color: #ffffff;
	scrollbar-darkshadow-color: #553f09;
	scrollbar-arrow-color: #553f09;
	scrollbar-track-color: #ffffff;
	-webkit-font-smoothing: subpixel-antialiased;
	min-width: var(--body-minwidth, 640px);
	overflow: hidden;
}	
	@media screen and (min-width:641px) and (max-width:3200px){
		body{
			min-width:641px;
		}
	}
body.tb {
	min-width: 100%;
}
																
																/*
body:after {
	display:block;
	width:100%;
	content:'';
	top:0;
	left:0;
	z-index:-1;
	background-color:#000000;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: subpixel-antialiased;
}
*/
body:after{
	content:unset;
}
#pageBg1 {
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
	z-index:-1;
}
#pageBg1:after {
	content:'';
	display:block;
	width:100%;
	height:100%;
	top:0;
	left:0;
		background-color:#000000;
	z-index:1;
}

@media screen and (min-width: 641px) {
		body:after{
		/*
		background-image:var(--index-bodyBgImage1Pc);
		height:var(--index-bodyBgImage1HeightPc);
		position:var(--index-bodyBgImage1PositionPc);
		background-size: cover;
		background-repeat:no-repeat;
		background-position:right bottom;
		*/
	}
	#pageBg1 {
		position:var(--index-bodyBgImage1PositionPc);
		height:var(--index-bodyBgImage1HeightPc);
		-webkit-text-size-adjust: 100%;
		-webkit-font-smoothing: subpixel-antialiased;
	}
	#pageBg1:after {
		position:var(--index-bodyBgImage1PositionPc);
					background-image:var(--index-bodyBgImage1Pc);
			background-size: cover;
			background-repeat:no-repeat;
			background-position:right bottom;
			}
	}
@media screen and (max-width: 640px) {
	body{
		width: auto;
		min-width: 0;
	}
	body:after{
		/*
		background-image:var(--index-bodyBgImage1Sp);
		height:var(--index-bodyBgImage1HeightSp);
		position:var(--index-bodyBgImage1PositionSp);
		background-size: cover;
		background-repeat:no-repeat;
		background-position:right bottom;
		*/
	}
	body::before {
		content: "";
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		z-index: -1;
		width: 100%;
		height: 100vh;
	}
		#pageBg1 {
		position:var(--index-bodyBgImage1PositionSp);
		height:var(--index-bodyBgImage1HeightSp);
		-webkit-text-size-adjust: 100%;
		-webkit-font-smoothing: subpixel-antialiased;
	}
	#pageBg1:after {
		position:var(--index-bodyBgImage1PositionSp);
					height:var(--index-bodyBgImage1HeightSp);
			background-image:var(--index-bodyBgImage1Sp);
			background-size: cover;
			background-repeat:no-repeat;
			background-position:right bottom;
			}
	}

a {
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
}
body.sp a:hover {
	text-decoration: none;
}

h2,
h3 {
	font-size: 13px;
}

ul {
	list-style-type: none;
}

li {
	margin: 0px;
	padding: 0px;
}

table {
	font-size: 13px;
}

table tr {
	vertical-align: top;
}

em {
	font-style: normal;
}

/* コンテンツパララックス及び通常背景の共通設定 */
.bgImg,
.bgImgSp{
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	clip-path: inset(-1px);
	z-index: -1;
}
.bgImg:after,
.bgImgSp:after{
	position: absolute; /*パララックス時はfix */
	content: '';
	top: 0;
	left: 0;
	width: 100%;
	height: 100%; /*パララックス時はvh */
	background-repeat: no-repeat;
	background-size: cover;
}
@media screen and (min-width:641px){
	.bgImgSp{
		display:none;
	}
}
@media screen and (max-width:640px){
	.bgImg{
		display:none;
	}
}

/* 背景画像2 */
	
	#pageBg2 {
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 0;
	top: 0;
	left: 0;
	pointer-events:none;
}
#pageBg2:after {
	content:'';
	display:block;
	width:100%;
	height:100%;
	top:0;
	left:0;
	position: fixed;
	z-index:1;
}
@media screen and (min-width: 641px) {
		#pageBg2 {
		position:var(--index-bodyBgImage2PositionPc);
		height:var(--index-bodyBgImage2HeightPc);
		-webkit-text-size-adjust: 100%;
		-webkit-font-smoothing: subpixel-antialiased;
	}
	#pageBg2:after{
		position: var(--index-bodyBgImage2PositionPc);
			}
	}
@media screen and (max-width: 640px) {
	#pageBg2{
		position:var(--index-bodyBgImage2PositionSp);
		height:var(--index-bodyBgImage2HeightSp);
		-webkit-text-size-adjust: 100%;
		-webkit-font-smoothing: subpixel-antialiased;
	}
	#pageBg2:after{
			}
		}




/* header */
header {
	/*
		background-color:rgba(0,0,0,0);
	*/
	position: relative;
	/*color:#;*/
				min-height: 0vh;
		align-items:center;
	z-index: 2;
}
@media screen and (max-width: 640px) {
	header {
					min-height: unset;
			}
}
header .bgImg {
	display:block;
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	clip-path: inset(-0.5px);
	z-index: -1;
	backdrop-filter: var(--parts3-bgEffectFilter0, none);
}
@media screen and (max-width: 640px) {
	header .bgImg {
		backdrop-filter: var(--parts3-bgEffectFilter0, none);
	}
}

@media screen and (min-width:641px){
							header .bgImg:after {
			content: '';
			display: block;
			width: 100%;
			top: 0px;
			left: 0;
			/*max-height:100vh;*/
			z-index: 2;
	
			position: absolute;
			height: 100%;
					}
			}
@media screen and (max-width: 640px) {
	header {
							min-height: 0vh;
				max-width:100%;
	}

							header .bgImg:after {
			content: '';
			display: block;
			width: 100%;
			top: 0px;
			left: 0;
			/*max-height:100vh;*/
			z-index: 2;
			position: absolute;
			height: 100%;
			background-image:var(--index-headerBgImageSp1);
			background-size:unset;
			background-repeat:no-repeat;
			background-position:center top;
		}
			}
@media screen and (min-width:641px){
							header .bgImg:before {
			content: '';
			display: block;
			width: 100%;
			top: 0px;
			left: 0;
			/*max-height:100vh;*/
			position: absolute;
			height: 100%;
						z-index:4;
		}
			}
@media screen and (max-width: 640px) {
							header .bgImg:before {
			content: '';
			display: block;
			width: 100%;
			top: 0px;
			left: 0;
			/*max-height:100vh;*/
			position: absolute;
			height: 100%;
			background-image:var(--index-headerBgImageSp2);
			background-size:unset;
			background-repeat:no-repeat;
			background-position:center top;
			z-index:4;
		}
			}

.catch {
	width: 860px;
	font-size: 11px;
	line-height: 16px;
	margin: 0 auto 20px auto;
	padding: 5px;
	border-radius: 13px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}


/** entrance **/
nav {
	position: relative;
	font-size: 0;
	line-height: 0;
	background: none !important;
	margin-bottom:13px;
	position:relative;
}
.entranceCenter img {
	width: 64px;
	height: 64px;
    transform:rotate(-45deg);
    margin: -9px 0 0 -9px;
}
.entranceCenter span {
	content: '';
	display: inline-block;
	width: 46px;
	height: 46px;
	position: absolute;
	z-index: 1;
	margin-top:-23px;
	left: calc(50% - 23px);
	transform: rotate(45deg);
	background-color: #E94593;
}
nav a {
	display: inline-block;
	vertical-align: middle;
	font-size: 14px;
	line-height: 12px;
	margin: 0 50px;
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position:relative;
}
nav a:hover {
	text-decoration: none;
	opacity: 0.8;
	filter: alpha(opacity=80);
}
nav a .enterBtnWrap,
nav a .leaveBtnWrap{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	height: 55px;
	margin: auto;
}
nav a span[title=ENTER] ,
nav a span[title=EXIT] {
	position: relative;
	display: inline-block;
	font-size: 40px;
	line-height: 40px;
}

.textBlock18 {
	display: inline-block;
	vertical-align: top;
	margin: 0 0 40px 0;
}
.textBlock18 > div{
	font-size: 15px;
	font-weight: bold;
	line-height: 1.2;
	padding: 5px 10px;
	border-radius: 14px;
	background-color: rgba(0,0,0, 1);
			color:#FFFFFF;
	}
#blockEntrance nav.entranceWrap {
	display:flex;
	align-content: stretch;
	align-items:center;
				max-width: 1120px;
		margin:0 auto;
	justify-content: space-between;
		flex-direction:row;
		padding: 0;
}

#blockEntrance nav div.entranceLeft {
	width: calc(50% - 42px);
	align-self:center;
	flex-shrink:1;
		order:1;
		text-align:right;
}
#blockEntrance nav div.entranceCenter {
	max-width:84px;
	text-align:center;
	align-self:center;
	flex-shrink:1;
		order:2;
	}
#blockEntrance nav div.entranceRight {
	width: calc(50% - 42px);
	align-self:center;
	flex-shrink:1;
	order:3;
		margin-top:0;
		text-align:left;
}
#blockEntrance nav div.entranceLeft a {
	margin:0 0 0 auto;
}
#blockEntrance nav div.entranceRight a {
	margin:0 auto 0 0;
}
#enterBtn,
#enterBtn + img.btnHover {
	max-width: 100%;
		width: auto;
		min-width: 10%;
	height: auto;
	max-height: 100%;
}
#leaveBtn,
#leaveBtn + img.btnHover {
	max-width: 100%;
		width: auto;
		min-width: 10%;
	height: auto;
	max-height: 100%;
}
.btnEnter {
		border-radius: 0px;
		width: 270px;
		height:80px;
	min-width: 100px;
	min-height: 40px;
	text-align: center;
	max-width:100%;
			background-image:url(/img/design/texture/texture_703_alpha.png);
		background-repeat:repeat-x;
		background-size: contain;
			background-color:rgba(204,45,130, 1);
	backdrop-filter: var(--parts3-bgEffectFilter0, none);
}
	.btnEnter [title=ENTER] {
		color:#FFFFFF;
	}
	.btnEnter .subText {
		color:#FFFFFF;
	}
.btnExit {
		border-radius: 0px;
		width: 270px;
		height:80px;
	min-width: 100px;
	min-height: 40px;
	text-align: center;
	max-width:100%;
			background-image:url(/img/design/texture/texture_703_alpha.png);
		background-repeat:repeat-x;
		background-size: contain;
			background-color:rgba(204,45,130, 1);
	backdrop-filter: var(--parts3-bgEffectFilter0, none);
}
	.btnExit [title=EXIT] {
		color:#FFFFFF;
	}
	.btnExit .subText {
		color:#FFFFFF;
	}
@media screen and (min-width:641px){
	#blockEntrance {
		margin-top: 0px;
		margin-right: 0px;
		margin-bottom: 40px;
		margin-left: 0px;
		width:calc(100% - 0px - 0px);
	}
}
@media screen and (max-width: 640px) {
	#blockEntrance {
		margin-top: 0px !important;
		margin-right: 0px !important;
		margin-bottom: 40px !important;
		margin-left: 0px !important;
		width:calc(100% - 0px - 0px);
	}
	#blockEntrance nav.entranceWrap {
		width:var(--contents-sp-width);
				flex-direction:row;
						padding: 0;
				min-width:95%;
	}
	#blockEntrance nav div.entranceLeft {
				order:1;
		width:calc(50% - 29px);
				text-align:right;
	}
	#blockEntrance nav div.entranceCenter {
		max-width:58px;
				order:2;
		min-height:0;
			}
	#blockEntrance nav div.entranceRight {
				margin-top:0px;
		width:calc(50% - 29px);
				text-align:left;
	}
	#blockEntrance nav div.entranceLeft a {
		margin:0 0 0 auto;
	}
	#blockEntrance nav div.entranceRight a {
		margin:0 auto 0 0;
	}
	#enterBtn {
				width: 100%;
			}
	#leaveBtn {
				width: 100%;
			}
	body #blockEntrance .btnEnter {
				max-width: 100%;
							backdrop-filter: var(--parts3-bgEffectFilter0, none);
			}
	body #blockEntrance .btnExit {
				max-width: 100%;
							backdrop-filter: var(--parts3-bgEffectFilter0, none);
			}
}

/** button hover anime **/


/*---- main contents --------------------------------------------------------*/
#main_container1 {
	display: block;
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	text-align: center;
}
.wrapContents ,
#main_container1 .wrapContents {
	padding-top: 0;
	padding-bottom: 0;
	padding-left: var(--contents-pc-commonMarginLeft, 0);
	padding-right: var(--contents-pc-commonMarginRight, 0);
	box-sizing:border-box;
}
	@media screen and (min-width:641px) {
		.wrapContents > section,
		#main_container1 .wrapContents > section{
			min-width:var(--parts3-commonContentsMinWidth);
		}
	}

@media screen and (min-width:641px){
	#main_container1 {
					}
}
body.tb .wrapContents > section,
body.tb #main_container1 .wrapContents > section{
	width:100%;
	min-width:unset;
	max-width:unset;
	box-sizing:border-box;
	padding:var(--contents-pc-marginTop, 0) 0 var(--contents-pc-marginBottom, 40px) 0;
}
body.tb .wrapContents ,
body.tb #main_container1 .wrapContents {
	/*
	width: var(--contents-tb-width, calc(100% - 72px));
	*/
	padding: 0 var(--contents-pc-commonMarginRight, auto) 0 var(--contents-pc-commonMarginLeft, auto);
	width: 100%;
	box-sizing:border-box;
	min-width:unset;
	max-width:unset;	
}

@media screen and (min-width:641px) {
	.wrapContents ,
	#main_container1 .wrapContents {
		width:var(--contents-pc-commonWidthClamp);
		padding-left:var(--contents-pc-commonWidthClampSpaceLeft);
		padding-right:var(--contents-pc-commonWidthClampSpaceRight);
		box-sizing:content-box;
	}
	.wrapContents[class*=contentsBlock-officialFreecontents] {
		width:var(--contents-pc-commonWidthClamp) !important;
	}
}

@media screen and (max-width: 640px) {
	#main_container1 {
					}
	.wrapContents ,
	#main_container1 .wrapContents {
		/*width: var(--contents-sp-width, calc(100% - 40px));*/
		background: none !important;
		padding: 0 var(--contents-sp-marginRight, auto) 0 var(--contents-sp-marginLeft, auto);
		box-sizing:border-box;
	}
	body > section,
	#main_container1 > section{
		margin: 0 auto;
	}
}
/* h1 */
h1 {
	font-size:12px;
	font-weight: normal;
	text-align: center;
	line-height: 20px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin:0 auto;
	position:relative;
	background-color:rgba(0,0,0,0);
	backdrop-filter: var(--parts3-bgEffectFilter0, none);
	border-top:0px solid rgba(255,38,154,0);
	border-bottom:0px solid rgba(255,38,154,0);
}
.contentsBlock-h1,
main #main_container1 .contentsBlock-h1{
	z-index:2;
}
body.tb .wrapContents.contentsBlock-h1,
body.tb h1{
	width:100%;
	min-width:unset;
	max-width:unset;
	padding-left:0;
	padding-right:0;
}
@media screen and (min-width: 641px) {
	h1 {
		width:100%;
	}
	.contentsBlock-h1,
	main #main_container1 .contentsBlock-h1{
		margin-top:0px;
		margin-bottom:0px;
																width:calc(var(--contents-pc-commonWidthClamp) - 0px - 0px);
								margin-right:0px;
				margin-left:0px;
				min-width:var(--parts3-commonContentsMinWidth);
										max-width:var(--parts3-commonContentsMaxWidth);
						}
}

	@media screen and (min-width:641px) {
		h1 {
			width:100%;
			padding-left:var(--contents-pc-commonMarginLeft);
			padding-right:var(--contents-pc-commonMarginLeft);
		}
	}
h1.css-marquee {
	padding: 0px 0px 0px 0px;
	}
h1 a{
	color:#FFFFFF;
}

@media screen and (max-width: 640px) {
	h1 {
		font-size:12px;
		text-align: center;
		background-color:rgba(0,0,0,0);
		backdrop-filter: var(--parts3-bgEffectFilter0, none);
		border-top:0px solid rgba(255,38,154,0);
		border-bottom:0px solid rgba(255,38,154,0);
	}
	h1.css-marquee {
		padding: 10px 0px 10px 0px;
			}
	h1 a{
		color:#FFFFFF;
	}
}
@media screen and (max-width: 640px) {
	/*body.sp header h1,*/
	h1 {
		line-height: 1.2;
		padding: 10px 0;
		/*
					width:var(--contents-sp-width);
				*/
		width: 100%;
		margin:0 auto;
	}

	.contentsBlock-h1,
	main #main_container1 .contentsBlock-h1{
		margin-top:0px;
		margin-right:0px;
		margin-bottom:0px;
		margin-left:0px;
		width: calc(100% - 0px - 0px);
			}
	h1 br,
	header h1 br{
		display:none;
	}

}

/** headLine **/
section#blockHeadLine > div {
	box-sizing:border-box;
			backdrop-filter: var(--parts3-bgEffectFilter0, none);
	}
@media screen and (max-width: 640px) {
	section#blockHeadLine > div {
					backdrop-filter: var(--parts3-bgEffectFilter0, none);
			}
	}
@media screen and (min-width:641px){
	main .wrapContents section.contentsSection#blockHeadLine{
		padding-left:0px;
		padding-right:0px;
	}
	.wrapContents.contentsBlock-headLine,
	#main_container1 .wrapContents.contentsBlock-headLine{
		margin-top:0px;
		margin-right:0px;
		margin-bottom:40px;
		margin-left:0px;
							width:calc(var(--contents-pc-commonWidthClamp) - 0px - 0px);
			}
}

@media screen and (max-width: 640px) {
	.wrapContents section.contentsSection#blockHeadLine,
	main .wrapContents section.contentsSection#blockHeadLine{
		padding:0;
	}
	.wrapContents.contentsBlock-headLine,
	#main_container1 .wrapContents.contentsBlock-headLine{
		margin-top:0px;
		margin-right:0px;
		margin-bottom:40px;
		margin-left:0px;
		width:calc(100% - 0px - 0px) !important;
	}
}



/** linkListWrap **/
.link_list {
	font-size: 0;
	line-height: 0;
	padding: 0 0 30px 0;
}

.link_list a {
	display: inline-block;
	vertical-align: top;
	margin: 0 5px 10px 5px;
}
#textlink {
	height: 20px;
}

#textlink p {
	position: relative;
	z-index: 10;
}

#textlink p br {
	display: none;
}


body.sp .link_list {
	padding: 0 0 5px 0;
}
body.sp .link_list:last-child {
	padding: 0 0 5px 0;
}
body.sp .link_list a {
	margin: 0 2px 5px 2px;
}
body.sp .bnr46860 img {
	width: 300px;
	height: auto;
}
body.sp #bnr468 img {
	width: 300px;
	height: auto;
}

@media screen and (max-width: 640px) {
	.link_list {
		padding: 0 0 5px 0;
	}
	.link_list:last-child {
		padding: 0 0 5px 0;
	}
	.link_list a {
		margin: 0 2px 5px 2px;
	}
	.bnr46860 img {
		width: 300px;
		height: auto;
	}
	#bnr468 img {
		width: 300px;
		height: auto;
	}
}


/** add **/
#ad {
	font-size: 10px;
	line-height: 16px;
	padding: 15px 0;
}

#ad br {
	display: none;
}

/** color **/
.sat {
	color: #0066ff;
}
.sun {
	color: #ff0000;
}
.red {
	color: #ff0000;
}
.tel {
	color: #6699ff;
}
.on {
	color: #ff3333;
}
.off {
	color: #999999;
}
.next {
	color: #6173a1;
}

/** rollover **/
.fade {
	display: inline-block;
	padding: 0;
	font-size: 0;
	line-height: 0;
}

.hover,
.fade input {
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.hover:hover,
.fade input:hover {
	opacity: 0.8;
	filter: alpha(opacity=80);
}


/***** none *****/
#topimg,
#navToggle {
	display: none;
}

#returnTop {
	position: absolute;
	top: -9999px;
}


/***************************************************
ANIMATION CSS
***************************************************/


/** BASE **/
.delighter {
	opacity: 0;
	filter: alpha(opacity=0);
}


/** START **/
.delighter.started {
	-webkit-transition: 0.5s ease-in-out;
	-moz-transition: 0.5s ease-in-out;
	-o-transition: 0.5s ease-in-out;
	transition: 0.5s ease-in-out;
	opacity: 1;
	filter: alpha(opacity=100);
}

/** END **/
.delighter.started.ended {
	opacity: 1;
	filter: alpha(opacity=100);
}

/*=================================================
 * CSS for SP
 * ================================================= */

/** header **/
#indexBody.sp header {
	/*margin: 0;*/
	/*padding: 0;*/
	/*background: none;*/
	/*height:30px;*/
}
#indexBody.sp header:before{
	display:none;
}

body.sp #topimg {
	display: block;
	margin: 0 0 10px 0;
}
body.sp #topimg h2 {
	font-size: 0;
	line-height: 0;
}
/** ad_div **/
body.sp #ad_div {
	display: block;
}
body.sp #ad_div a {
	display: block;
	width: 100%;
	font-size: 4.5vw;
	font-weight: bold;
	line-height: 38px;
	text-align: center;
	border-bottom: 2px;
	border-bottom-style: solid;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
}
body.sp #ad_div span {}
body.sp #ad_div span {
	position: relative;
	display: inline-block;
	vertical-align: top;
	width: 8px;
	height: 9px;
	margin: 12px 5px 0 0;
	border: solid 1px currentColor;
	background-color: currentColor;
	border-radius: 5px 5px 0 0;
}
body.sp #ad_div span:before {
	content: '';
	position: absolute;
	bottom: -5px;
	left: 2px;
	width: 2px;
	height: 1px;
	border-radius: 50%;
	border: solid 1px currentColor;
	background-color: currentColor;
}
body.sp #ad_div span:after {
	content: '';
	position: absolute;
	bottom: -2px;
	left: -3px;
	width: 14px;
	height: 0px;
	border-top: solid 1px currentColor;
	border-bottom: solid 1px white;
}
/** main **/
body.sp main {}
body.sp .catch {
	width: auto;
	font-size: 10px;
	line-height: 14px;
	margin: 0 0 10px 0;
	padding: 5px;
	border-radius: 0;
}
/** nav **/
body.sp nav {
	margin: 0 0 10px 0;
	padding: 0 !important;
	box-sizing:border-box;
}
body.sp nav:before {
	width: 36px;
	height: 36px;
	position: absolute;
	z-index: 1;
	top: calc( 50% - 18px);
	left: calc( 50% - 19px);
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
body.sp nav:after {
	width: 50px;
	height: 50px;
	position: absolute;
	z-index: 2;
	top: 5px;
	left: calc( 50% - 26px);
	background: url(../img/18_alpha.png) no-repeat 50% 50%;
	-webkit-background-size: 50px 50px;
	background-size: 50px 50px;
}
body.sp nav a {
	font-size: 11px;
	/*padding-top: 10px;
	width: calc(50% - 30px);*/
}
body.sp .btnEnter{
	height:60px;
}
body.sp .btnExit{
	height:60px;
}
body.sp nav a .enterBtnWrap,
body.sp nav a .leaveBtnWrap{
	height:45px;
}
body.sp nav a span[title=ENTER] ,
body.sp nav a span[title=EXIT] {
}body.sp nav a span[title=ENTER] ,
body.sp nav a span[title=EXIT] {
	font-size: 28px;
	line-height: 28px;
}
body.sp nav a:nth-of-type(1) {
	margin: 0 30px 0 0;
}
body.sp nav a:nth-of-type(2) {
	margin: 0 0 0 30px;
}
body.sp .textBlock18 {
	padding:0px;
	margin:0 auto 20px auto;
	width:95%;
}
body.sp .textBlock18 > div{
	font-size: 11px;
	font-weight: bold;
	line-height: 16px;
	border-radius: 10px;
	padding:2px 8px;
}


/*-- PR ----------------------------------------------*/
#blockShopPr{
	/*padding: 40px 0 0 0;*/
		/*margin: 0 auto 40px auto;*/
	margin-bottom:40px;
}
body.tb #blockShopPr {
	width: calc(100% - 0px - 0px);
	margin-left:0px;
	margin-right:0px);
}
section#blockShopPr > div {
			backdrop-filter: var(--parts3-bgEffectFilter0, none);
	}
@media screen and (max-width: 640px) {
	section#blockShopPr > div {

					backdrop-filter: var(--parts3-bgEffectFilter0, none);
			}
	}



/** link **/
section#blockLinkList > div {
			backdrop-filter: var(--parts3-bgEffectFilter0, none);
	}
@media screen and (max-width: 640px) {
	section#blockLinkList > div {
					backdrop-filter: var(--parts3-bgEffectFilter0, none);
			}
}



/** footer **/
footer {
	margin: 0;
			border-width: 0px;
				color:#FFFFFF;
	}
#footer a:not(.btnReturnTop){
			color:#FF409C;
	}
@media screen and (min-width: 641px) {
	footer {
									background-color:rgba(0,0,0, 0.7);
				backdrop-filter: var(--parts3-bgEffectFilter0, none);
	}
}
@media screen and (max-width: 640px) {
	footer {
									background-color:rgba(0,0,0, 0.7);
				backdrop-filter: var(--parts3-bgEffectFilter0, none);
	}
}
body.sp footer {
	width: 100%;
	height: auto;
}
body.sp #footer {
	width: auto;
	margin: 0;
	padding: 0 0 15px 0;
}
body.sp #textlink {
	display: block;
	text-align: left;
	padding: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
body.sp #textlink a {
	position: relative;
	display: inline-block;
	vertical-align: top;
	width: 50%;
	font-size: 12px;
	line-height: 20px;
	text-align: left;
	padding: 15px 10px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
body.sp #textlink a:nth-of-type(odd) {
	border-right-width: 1px;
	border-right-style: solid;
}
body.sp #textlink a:after {
	content: '';
	position: absolute;
	width: 5px;
	height: 5px;
	position: absolute;
	top: calc(50% - 3px);
	right: 10px;
	border-bottom: solid 1px currentColor;
	border-right: solid 1px currentColor;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
body.sp #textlink span {
	display: none;
}

body.sp #ad {
	font-size: 10px;
	line-height: 16px;
	padding: 10px 0;
}
body.sp #ad br {
	display: inline;
}

/***** none *****/
body.sp img.lazy {
	-webkit-transition: none !important;
	-moz-transition: none !important;
	-o-transition: none !important;
	transition: none !important;
}

#indexBody .logo,
#indexBody header .logo{
	position:relative;
}
@media screen and (min-width:641px){
	#indexBody .logo,
	#indexBody header .logo{
		left:0px;
		max-width:60%;
		padding:100px 0 100px 0;
	}
}
#indexBody.sp #topimg > span > .logo {
	max-width:80%;
	padding:50px 0 30px 0;
}
@media screen and (max-width:640px){
	#indexBody .logo,
	#indexBody header .logo{
		left:0px;
		max-width:80%;
		padding:50px 0 30px 0;
	}

}
#blockShopPr .textBlock {
	/*width: var(--contents-width, 1120px);*/
	width: 100%;
		background-color:rgba(255,255,255, 0);
				background-image:unset;
		border-radius: 10px;
	border-top:0px solid rgba(255,38,154,0);
	border-right:0px solid rgba(255,38,154,0);
	border-bottom:0px solid rgba(255,38,154,0);
	border-left:0px solid rgba(255,38,154,0);
					text-align:center;
}
#blockShopPr .catchCopy{
	width: 100%;
	font-size:20px;
	font-weight:bold;
	padding-bottom:0px;
	color:#EE24AC;
	line-height:1.6;
	text-align:center;
	background: transparent;
	box-sizing:border-box;
}
#blockShopPr .textBlock p{
	font-size:17px;
	color:#FFFFFF;
}
body.sp #blockShopPr .catchCopy{
	font-size:18px;
}
@media screen and (min-width: 641px) {
	.logoWrap,
	header .logoWrap{
		margin:0 auto;
									width:1120px;
								}
	body.tb .logoWrap,
	body.tb header .logoWrap{
		width:100%;
		min-width:unset;
		max-width:usnet;
	}
						/* ロゴ表示位置 */
		.logoWrap {
			display:flex;
			text-align:center; justify-content:center; align-items:flex-start;
		}
		header .logoWrap {
			margin:unset;
							flex-grow:1;
					}
		#blockShopPr .textBlock p{
		display:inline-block;
		line-height:1.6;
		text-align:center;
	}
	.wrapContents.contentsBlock-shopPr,
	#main_container1 .wrapContents.contentsBlock-shopPr{
		margin-top:0px;
		margin-right:0px;
		margin-bottom:40px;
		margin-left:0px;
							width:calc(var(--contents-pc-commonWidthClamp) - 0px - 0px);
			}
			.contentsBlock-shopPr > section,
		#main_container1 .contentsBlock-shopPr > section{
							width:var(--contents-pc-commonWidthClamp);
				margin-left:var(--contents-pc-commonWidthClampSpaceLeft);
				margin-right:var(--contents-pc-commonWidthClampSpaceRight);
					}
	}

@media screen and (min-width:641px){
	#footer > div {
							max-width:var(--parts3-commonContentsMaxWidth);
			min-width:var(--parts3-commonContentsMinWidth);
			width:var(--contents-pc-commonWidthClamp);
			padding-left:var(--contents-pc-commonWidthClampSpaceLeft, 0);
			padding-right:var(--contents-pc-commonWidthClampSpaceRight, 0);
			}
	body.tb #footer > div {
		width:100%;
		min-width:unset;
		max-width:unset;
		box-sizing:border-box;
	}
}

@media screen and (max-width: 640px) {
	body {
		width: auto;
		min-width: 0;
	}
	a:hover {
		text-decoration: none;
	}
	body::before {
		content: "";
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		z-index: -1;
		width: 100%;
		height: 100vh;
	}
	/** header **/
	#indexBody header {
		margin: 0;
		padding: 0;
	}
	#indexBody header:before{
		display:none;
	}
	#indexBody .logoWrap,
	#indexBody header .logoWrap{
			}
	.logoWrap,
	header .logoWrap{
		width:100%;
			}
						/* ロゴ表示位置 */
		.logoWrap {
			display:flex;
			text-align:center; justify-content:center; align-items:flex-start;
		}
		header .logoWrap {
			margin:unset;
							flex-grow:1;
					}
		#topimg {
		display: block;
		margin: 0 0 10px 0;
	}
	#topimg h2 {
		font-size: 0;
		line-height: 0;
	}
	/** ad_div **/
	#ad_div {
		display: block;
	}
	#ad_div a {
		display: block;
		width: 100%;
		font-size: 4.5vw;
		font-weight: bold;
		line-height: 38px;
		text-align: center;
		border-bottom: 2px;
		border-bottom-style: solid;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 1000;
	}
	#ad_div span {}
	#ad_div span {
		position: relative;
		display: inline-block;
		vertical-align: top;
		width: 8px;
		height: 9px;
		margin: 12px 5px 0 0;
		border: solid 1px currentColor;
		background-color: currentColor;
		border-radius: 5px 5px 0 0;
	}
	#ad_div span:before {
		content: '';
		position: absolute;
		bottom: -5px;
		left: 2px;
		width: 2px;
		height: 1px;
		border-radius: 50%;
		border: solid 1px currentColor;
		background-color: currentColor;
	}
	#ad_div span:after {
		content: '';
		position: absolute;
		bottom: -2px;
		left: -3px;
		width: 14px;
		height: 0px;
		border-top: solid 1px currentColor;
		border-bottom: solid 1px white;
	}

	/** main **/
	main {}
	.catch {
		width: auto;
		font-size: 10px;
		line-height: 14px;
		margin: 0 0 10px 0;
		padding: 5px;
		border-radius: 0;
	}
	/** nav **/
	nav {
		margin: 0 0 10px 0;
		padding: 0 10px;
		box-sizing:border-box;
	}
	nav a {
		/*width: calc(50% - 30px);*/
		/*height: 60px;*/
		font-size: 11px;
		/*padding-top: 10px;*/
	}
	body .btnEnter{
		width:100%;
		height:60px;
	}
	body .btnExit{
		width:100%;
		height:60px;
	}
	nav a .enterBtnWrap,
	nav a .leaveBtnWrap{
		height:45px;
	}
	nav a span[title=ENTER] ,
	nav a span[title=EXIT] {
		font-size: 28px;
		line-height: 28px;
	}
	nav a:nth-of-type(1) {
		margin: 0 30px 0 0;
	}
	nav a:nth-of-type(2) {
		margin: 0 0 0 30px;
	}
	.textBlock18 {
		margin: 0 0 20px 0;
		margin:0 auto 20px auto;
		width:95%;
	}
	.textBlock18 > div{
		font-size: 11px;
		font-weight: bold;
		line-height: 16px;
		border-radius: 10px;
		margin:2px 8px;
	}

	/** pr **/
	.wrapContents.contentsBlock-shopPr,
	#main_container1 .wrapContents.contentsBlock-shopPr{
		margin-top:0px;
		margin-right:0px;
		margin-bottom:40px;
		margin-left:0px;
		width:calc(100% - 0px - 0px);
	}

	#blockShopPr{
		width:100%;
	}
	.contentsBlock-shopPr #blockShopPr,
	#main_container1 .contentsBlock-shopPr #blockShopPr{
		padding:0;
	}
	#blockShopPr .catchCopy{
		font-size:18px;
		line-height:1.6;
	}

	#blockShopPr .textBlock{
		width:100%;
	}
	#blockShopPr .textBlock p{
		font-size:16px;
		line-height:1.6;
		text-align:center;
	}
	/** footer **/
	footer {
		width: 100%;
		height: auto;
	}
	#footer {
		width: auto;
		margin: 0;
		padding: 0 0 15px 0;
	}
	#footer > div {
		width: var(--contents-sp-width, calc(100% - 40px));
		padding: 0 var(--contents-sp-marginRight, auto) 0 var(--contents-sp-marginLeft, auto);
	}
	#textlink {
		display: block;
		text-align: left;
		padding: 0;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	#textlink a {
		position: relative;
		display: inline-block;
		vertical-align: top;
		width: 50%;
		font-size: 12px;
		line-height: 20px;
		text-align: left;
		padding: 15px 10px;
		border-bottom-width: 1px;
		border-bottom-style: solid;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	#textlink a:nth-of-type(odd) {
		border-right-width: 1px;
		border-right-style: solid;
	}
	#textlink a:after {
		content: '';
		position: absolute;
		width: 5px;
		height: 5px;
		position: absolute;
		top: calc(50% - 3px);
		right: 10px;
		border-bottom: solid 1px currentColor;
		border-right: solid 1px currentColor;
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	#textlink span {
		display: none;
	}

	#ad {
		font-size: 10px;
		line-height: 16px;
		padding: 10px 0;
	}
	#ad br {
		display: inline;
	}

	/***** none *****/
	img.lazy {
		-webkit-transition: none !important;
		-moz-transition: none !important;
		-o-transition: none !important;
		transition: none !important;
	}
	.entranceCenter span{
				margin-top:-21px;
		transform: scale(0.75) rotate(45deg);
			}
}

/* link list width */
@media screen and (min-width: 641px) {
	.wrapContents.contentsBlock-indexLink{
		margin-top:0px;
		margin-bottom:40px;
	}
	}

@media screen and (max-width: 640px) {
	.wrapContents.contentsBlock-indexLink{
		margin-top:0px;
		margin-bottom:40px;
	}
	}


@media screen and (min-width: 641px) {
	.confirmTextSp{
		display:none;
	}
}
@media screen and (max-width: 640px) {
	.confirmTextPc{
		display:none;
	}
	.confirmTextSp{
		display:inline-block;
	}
}

#finfo h2{
	margin-bottom:5px;
}
div#finfo {
	display:inline-flex;
	flex-direction:column;
	gap:1px;
	margin-bottom: 5px;
}
div#finfo > p .label{
	padding-right:5px;
}

div#finfo > .shopLine i {
	font-size:1.1em;
	margin-right: -2px;
}

/*-- free contents ---------*/
					