@charset "utf-8";

/* ヘッダー */
header{
	position: relative;
	margin: 0 auto ;
	display: block;
	width: 100%;
}
header #keyvisual{
	position: relative;
	margin: 0 auto ;
	display: block;
	background-image: url("../img/main.jpg");
	background-repeat: no-repeat;
	background-position: 50% 0;
	background-size: cover;
	width: 100%;
	padding-top: 141.25%;
}

/* catch */
#catch{
	position: relative;
	margin: 10px auto 0 auto;
	padding: 20px 0 50px 0;
	background-image: url("../img/bg_catch.png");
	background-position: 50% 100%;
	background-repeat: no-repeat;
	background-size:min(420px, 70%) auto;
}
#catch .catchTxt01{
	position: relative;
	margin: 0 auto;
}
#catch .catchTxt01 img{margin: 0 auto;}
#catch .catchTxt01::before, #catch .catchTxt01::after{
	position: absolute;
	height: 1px;
	display: block;
	content: '';
}
#catch .catchTxt01::before{
	left: 0;
	top:7%;
	width: 18%;
	background-color: #cac5e4;
}
#catch .catchTxt01::after{
	bottom:7%;
	right: 0;
	width: 16%;
	background-color: #c4dae6;
}
#catch .catchTxt02{
	position: relative;
	margin: 25px auto 0 auto;
}
#catch .catchTxt02 img{margin: 0 auto;}

/* lead */
#lead{
	position: relative;
	margin: 0 auto;
	padding: 12px 0 ;
}
#lead .leadTxt{
	position: relative;
	margin: 0 auto;
	padding: 15px 20px ;
	width: calc(100% - 30px);
	max-width: 960px;
	text-align: center;
}

/* バナー */
#banner {
	position: relative;
	margin: 0 auto;
	padding-bottom: 20px;
}
#banner ul{
	position: relative;
	margin:0 auto;
	max-width: 1000px;
	gap:10px;
}
#banner ul li{
	position: relative;
	margin: 0 auto;
	width: calc(100% - 30px);
	max-width: 360px;
}

/* photo */
#photo{
	position: relative;
	margin:  0 auto;
	padding: 0;
}
#photo .photoWrap{
	position: relative;
	margin: 0 auto ;
	padding: 1px 0 0 0;
}
#photo .slick-slide{margin: 0 1px; background-color: transparent;}

/* とは */
#about{
	position: relative;
	margin: 0 auto;
}
#about h2{
	position: relative;
	margin: 0 auto 10px auto;
	width: calc(100% - 30px);
	max-width: 580px;
}
#about ul.aboutTxt{
	position: relative;
	margin: 0 auto;
	max-width: 1100px;
	gap:20px 0;
}
#about ul.aboutTxt li{
	position: relative;
	margin: 0 auto 30px auto;
	text-align: center;
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: 100% auto;
	width: 100%;
	max-width: 500px;
	padding-top: 81.5625%;
}
#about ul.aboutTxt li:nth-child(1){background-image:  url("../img/about01.png");}
#about ul.aboutTxt li:nth-child(2){background-image:  url("../img/about02.png");}
#about ul.aboutTxt li:nth-child(3){background-image:  url("../img/about03.png");}
#about ul.aboutTxt li .txt{
	position: absolute;
	width: 90%;
}
#about ul.aboutTxt li:nth-child(1) .txt{top:56%;left: 10%;}
#about ul.aboutTxt li:nth-child(2) .txt{top:56%;left: 3%;}
#about ul.aboutTxt li:nth-child(3) .txt{top:60%;left: 10%;}
#about .play{
	position: relative;
	margin: 0 auto;
	width: calc(100% - 20px);
	gap:10px;
}
#about .play li{
	position: relative;
	margin: 0;
	width: calc(33% - 10px);
	max-width: 150px;
	text-align: center;
}

/* campaign */
#campaign {
	position: relative;
	margin: 0 auto;
	/*padding: 0;*/
	padding-bottom:50px;
}
#campaign .cpArea,#banner ul{
	position: relative;
	margin:0 auto;
	width: calc(100% - 60px);
	max-width: 1100px;
}
#campaign .slick-slide{margin: 0 5px !important;}
#arrows{
	position: absolute;
	display: block;
	top: 50%;
	transform: translateY(-50%);
	left: -30px;
	text-align: center;
	width: calc(100% + 60px);
	height: 25px;
}
#campaign .slide-arrow{
    position: absolute;
	top:0;
	display: block;
	width: auto;
	height: 25px;
}
#campaign .prev-arrow{left: 0;cursor: pointer;transform: rotate(-180deg);}
#campaign .next-arrow{right: 0;cursor: pointer;}
#campaign .slick-disabled{display: none !important;}


/* CM */
#cm{
	position: relative;
	margin: 0 auto;
	padding-bottom:50px;
}
#cm .cmBox{
	position: relative;
	margin:0 auto ;
	width: calc(100% - 40px);
	max-width: 560px;
}
#cm .playMovieWrap{
	position: relative;
	margin: 20px auto 0 auto;
	width: calc(100% - 40px);
	max-width: 315px;
	background-color: #000000;
	overflow: hidden;
}
#cm .playMovieWrap .movieArea{
	position: relative;
	margin:0 auto;
	width: 100%;
	height: 0;
	padding-top: 177.777%
}
#cm .playMovieWrap .movieArea iframe{
	position: absolute;
	top:0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* ストーリー */
 #story{
	position: relative;
	margin: 0 auto;
	background-image: url("../img/bg_story.jpg");
	background-position: 0 0;
	background-repeat:no-repeat;
	background-size: 100% auto;
	 background-color: #a6dde8;
	 overflow: hidden;
}
#story h2{margin: 0 auto 20px auto;}
#story .storyWrap{
	position: relative;
	margin: 0 auto;
	 padding-top: 20px;
	 padding-bottom: 30px;
}
#story .storyWrap .storyBg{
	position: absolute;
	bottom:0;
	left: 0;
	width: 100%;
	height: 100%;
	display: block;
	background-image: url("../img/bg_story01.png");
	background-position: 0 100%;
	background-repeat: repeat;
	background-size: 160px auto;
}
#story .storyWrap .storyTxt{
	position: relative;
	margin: 0 auto;
	text-align: center;
	width: calc(100% - 70px);
	max-width: 910px;
	background-color: rgba(255,255,255,.4);
	padding: 20px;
	z-index: 201;
}
#story .storyWrap p{
	position: relative;
	margin: 0 auto;
	line-height: 2.2em;
	font-size: .14rem;
}
#story .moreTxt{
	position: relative;
	padding-top: 1em;
	display: none;
}
#story .btn_more{
	position: relative;
	margin: 20px auto 0 auto;
	padding: 3px 0;
	width: 13em;
	line-height: 1em;
	height: calc(1em + 6px);
	border: solid 1px #ffffff;
	border-radius: 100px;
	color: #ffffff;
	cursor: pointer;
	background: rgb(172,229,255);
	background: linear-gradient(90deg, rgba(172,229,255,1) 0%, rgba(187,161,238,1) 100%);
}
#story .btn_more::before{
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 100%;
	text-align: center;
	content: 'read more';
}
#story .btn_more.disp::before{content: 'close';}
#story .btn_more::after{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 10px;
	width: 11px;
	height: 11px;
	content: '';
	background-image: url("../img/arrowW.png");
	background-position: 0 0;
	background-repeat:no-repeat;
	background-size: contain;
	transition: all .3s ease-out;
}
#story .btn_more.disp::after{transform:translateY(-50%) rotate(-180deg);}

/* キャラクター */
#charactor {
	position: relative;
	margin:0 auto;
}
#charactor .charaList{position: relative;}
#charactor .chara{
	position: relative;
	margin: -20px auto 0 auto;
	width: 100%;
	max-width: 1000px;
}
#charactor .more{
	position: relative;
	margin: 60px auto 0 auto;
	width: 16%;
	max-width: 110px;
}
#charactor .charaList .btnChara{
	position: absolute;
	width: 20%;
	max-width: 180px;
}
#charactor .charaList .btnChara.chara01, #charactor .charaList .btnChara.chara02, #charactor .charaList .btnChara.chara03{top: 37%;}
#charactor .charaList .btnChara.chara04, #charactor .charaList .btnChara.chara05, #charactor .charaList .btnChara.chara06{bottom:-2%;}
#charactor .charaList .btnChara.chara01, #charactor .charaList .btnChara.chara04{left:35%;}
#charactor .charaList .btnChara.chara02, #charactor .charaList .btnChara.chara05{left:2%;}
#charactor .charaList .btnChara.chara03, #charactor .charaList .btnChara.chara06{left:66%;}
#charactor .charaDisp, #charactor .charaDisp1{
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	width: calc(100% - 90px);
	padding: 25px;
	background-image: url("../img/cornerC1.png"), url("../img/cornerC2.png"), url("../img/cornerC3.png"), url("../img/cornerC4.png");
	background-position: 2px 2px, calc(100% - 2px) 2px, 2px calc(100% - 2px), calc(100% - 2px) calc(100% - 2px);
	background-repeat:no-repeat, no-repeat, no-repeat, no-repeat;
	background-size: 35px auto, 35px auto, 35px auto, 35px auto;
	display: none;
	z-index: 200;
}
#charactor .charaDisp{top: 14%;background-color: rgba(213,237,255,.95);}
#charactor .charaDisp1{bottom: -20px;background-color: rgba(218,255,254,0.95);}

#charactor .charaDisp .charaDetail, #charactor .charaDisp1 .charaDetail{
	position: relative;
	margin: 0 auto;
	display: none;
}
#charactor .charaDisp .closeC, #charactor .charaDisp1 .closeC{
	position: absolute;
	top: -10px;
	right: -15px;
	width: 40px;
	height: 40px;
	cursor: pointer;
}
#charactor .charaDisp .charaDetail .name, #charactor .charaDisp1 .charaDetail .name{
	position: relative;
	margin: 0 auto;
	width: 70%;
	max-width: 376px;
}
#charactor .charaDisp .charaDetail .txt, #charactor .charaDisp1 .charaDetail .txt{
	position: relative;
	margin: 10px auto 0 auto;
	text-align: center;
	color: #11446f;
	line-height: 2em;
}
#charactor .links{
	position: relative;
	margin: 50px auto 0 auto;
	width: calc(100% - 30px);
	max-width: 380px;
}
#charactor .links img{border: solid 1px #E0DBE0;}


/* 参加方法 */
#howto{
	position: relative;
	margin: 0 auto;
	padding-bottom: 20px;
}
#howto ul{
	position: relative;
	margin:20px auto 0 auto;
	max-width: 1200px;
}
#howto ul li{
	position: relative;
	margin: 0;
	padding: 15px 2px 1.3% 1px;
	background-color: rgba(255,255,255,.95);
	background-image: url("../img/bar_howto.png"), url("../img/bar_howto.png");
	background-position: 0 0, 0 100%;
	background-repeat:no-repeat, no-repeat;
	background-size: calc(100% - 1px) auto, calc(100% - 1px)  auto;
}
#howto ul li .howtoWrap{
	position: relative;
	margin: 0 auto;
	padding-bottom: 10px;
	border-left: solid 1px #a4803c;
	border-right: solid 1px #a4803c;
	height: 100%;
}
#howto .ttl{
	position: relative;
	margin: 2px auto;
	padding-top: 15px;
	width: calc(100% - 20px);
}
#howto p{
	position: relative;
	margin: 0 auto;
	padding: 20px 15px;
}
#howto .cautionWrap{
	position: relative;
	margin: -10px auto 0 auto;
}
#howto .cautionWrap p{
	position: relative;
	margin: 0 auto;
	padding: 0 15px 0 calc(15px + 1.2em);
	font-size: .12rem;
}
#howto .cautionWrap p::before{
	position: absolute;
	top:0;
	left: 15px;
	content: '※';
}
#howto .linkArea{
	position: relative;
	margin: 0 auto;
	width: calc(100% - 30px);
	font-size: .13rem;
}
#howto .linkArea .button{margin: 0 auto 10px auto;}
#howto .slick-slide{margin: 0 10px 0 20px !important;}
#howto .slick-slide:last-child{margin: 0 20px !important;}
#howto .slick-track {display: flex;}
#howto .slick-slide {height: auto !important;}
#arrowsH{
	position: absolute;
	display: block;
	top: 45%;
	left: 5px;
	text-align: center;
	width: calc(100% - 10px);
	height: 30px;
	z-index: 1000;
}
#howto .slide-arrow{
    position: absolute;
	top:0;
	display: block;
	width: 30px;
	height: auto;
}
#howto .prev-arrow{transform: scale(-1, 1);left: 0;cursor: pointer;}
#howto .next-arrow{right: 0;cursor: pointer;}
#howto .slick-disabled{display: none !important;}


/* 販売 */
#ticket{
	position: relative;
	margin:0 auto;
}
/* 料金 */
#ticket .price{
	position: relative;
	margin: 0 auto;
	padding: 10px 0;
}
#ticket .price ul.ticketP {
	position: relative;
	width: calc(100% - 120px);
	max-width: 600px;
	margin: 0 auto;
}
#ticket .price ul.ticketP li{
	position: relative;
	margin: 0;
	width: calc(50% - 10px);
	color: #6d346d;
	background-color: #ffffff;
	border: solid 1px #e0cceb;
	border-radius: 100px;
	font-weight: 500;
	cursor: pointer;
}
#ticket .price ul.ticketP li.active{background-color: #e0cceb;}
#ticket .price ul.ticketP li.active::after{
	position: absolute;
	bottom: -.7em;
	left: 0;
	content: '\025bc';
	display: block;
	width: 100%;
	height: 1em;
	color: #e0cceb;
	line-height: 1em;
	text-align: center;
}
#ticket .price ul.ticketP li p{
	position: relative;
	padding: 5px 0;
	text-align: center;
}
#ticket .priceBox{
	position: relative;
	margin: 0 auto;
}
#ticket .priceBox .caution{
	position: relative;
	margin: 0 auto;
	font-weight: 500;
	font-size: .12rem;
}
#ticket .priceBox .table{
	position: relative;
	margin: 10px auto 0 auto;
	width: calc(100% - 40px);
	display: none;
}
#ticket .priceBox .table table{
	position: relative;
	margin: 0 auto;
	width: 100%;
	border-collapse: collapse !important;
	border-spacing:1px;
	border: solid 1px #297ca7;
}
#ticket .priceBox .table.active{display: block;}
#ticket .priceBox .table table.ttable{margin: 10px auto 0 auto;}
#ticket .priceBox table th{
	position: relative;
	width: 24%;
	text-align: center;
	vertical-align: middle;
	line-height: 1.4em;
	padding: 7px 2px;
	font-size: .12rem;
	border-right: solid 1px #297ca7;
	background-color: #b8cded;
}
#ticket .priceBox table td{
	position: relative;
	width: 37%;
	margin: 10px;
	text-align: center;
	padding: 10px 0;
	font-size: .12rem;
	border-right: solid 1px #297ca7;
	border-top: solid 1px #297ca7;
	vertical-align: middle;
	background-color: #ffffff;
}
#ticket .priceBox table td span{font-size: .18rem;font-weight: 700;}
#ticket .priceBox table td p{font-size: .12rem;line-height: 1.4em;}
#ticket .priceBox table thead th{border-top: solid 1px #297ca7;padding: 5px 0; color: #ffffff;}
#ticket .priceBox table tbody th{background-color: #ffffff;border-top: solid 1px #297ca7;padding: 10px 2px; color: #297ca7;height: calc(2.8em + 10px) !important;}
#ticket .priceBox table thead th span, #ticket .priceBox table tbody th span{font-size: .10rem;}
#ticket .priceBox table td.gray{background-color: #CCCCCC;}

#ticket .ticCautionWrap{
	position: relative;
	margin: 20px auto;
	width: calc(100% - 40px);
	max-width: 620px;
}
#ticket .tokuten .ticCautionWrap{width: calc(100% - 20px);}
#ticket .ticCautionWrap .btn_ticCaution{
	position: relative;
	margin: 0 auto;
	background-color: #8D63A6;
	border: solid 1px #8D63A6;
	color: #ffffff;
	text-align: center;
	padding: 5px 30px;
	cursor: pointer;
	transition: all .3s ease-out;
}
#ticket .ticCautionWrap .btn_ticCaution:hover{background-color: #ffffff; color: #8D63A6;}
#ticket .ticCautionWrap .btn_ticCaution::after{
	position: absolute;
	top: 50%;
	right: 10px;
	width: 12px;
	height: 12px;
	content: '';
	display: block;
	background-image: url("../img/arrowW.png");
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: contain;
	transform: translateY(-50%);
}
#ticket .ticCautionWrap .btn_ticCaution.disp::after{transform: translateY(-50%) rotate(-180deg);}
#ticket .ticCaution{
	position: relative;
	margin: 0 auto;
	font-size: .13rem;
	line-height: 1.6em;
	padding:10px;
	text-align: left;
	display: none;
	border-left: solid 1px #8D63A6;
	border-right: solid 1px #8D63A6;
	border-bottom: solid 1px #8D63A6;
}
#ticket .ticCaution p{position: relative;padding-left: 1.2em;padding-bottom: 5px;text-align: left;}
#ticket .ticCaution p::before{
	position: absolute;
	content: '・';
	left: 0;
}

#ticket .release{
	position: relative;
	margin: 30px auto 0 auto;
	text-align: center;
	padding-bottom: 30px;
}
#ticket .release ul{position: relative;}
#ticket .release ul li{
	position: relative;
	width: calc(100% - 30px);
	margin: 30px auto 40px auto;
}
#ticket .release ul li:last-child{margin: 0 auto;}
#ticket .release .typeTxt{
	position: relative;
	margin:  0 auto 20px auto;
	padding: 5px 0;
	background-color: #84a7dc;
	color: #ffffff;
	font-size: .15rem;
}
#ticket .release .typeTxt::before, #ticket .release .typeTxt::after{
	position: absolute;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #84a7dc;
	display: block;
	content: '';
}
#ticket .release .typeTxt::before{top:-3px;}
#ticket .release .typeTxt::after{bottom:-3px;}
#ticket .release p{
	position: relative;
	font-size: .14rem;
}
#ticket .scraptanteidan{position: relative;}
#ticket .scraptantei p{
	padding: 10px 0 0 0;
	font-size: .13rem;
}
#ticket .scraptantei img{
	width: calc(100% - 80px);
	margin: 0 auto;
	max-width: 320px;
}

#ticket .tokuten{
	position: relative;
	margin: 40px auto;
	width: calc(100% - 50px);
	max-width: 770px;
	background-color: #fffcf1;
	padding-bottom: 10px;
}
#ticket .tokuten .name{
	position: relative;
	padding: 15px 20px 6px 20px;
	color: #6d346d;
	font-weight: 700;
	text-align: center;
	font-size: .14rem;
	background-color: #E9DDF0;
	background-image: url("../img/bg_tokuten_ttl.png"), url("../img/bg_tokuten_ttl01.png");
	background-position: 1px 1px, calc(100% - 1px) 1px;
	background-repeat:no-repeat, no-repeat;
	background-size: auto calc(100% - 4px), auto calc(100% - 4px);
}
#ticket .tokuten .Img{
	position: relative;
	margin: 0 auto 20px auto;
}
#ticket .tokuten .txt{
	position: relative;
	width: calc(100% - 30px);
	margin: 10px auto;
	max-width: 620px;
}
#ticket .tokuten .txt h4{
	position: relative;
	padding: 20px 0 0 0;
	margin: 0 auto 10px auto;
	color: #6d346d;
	font-weight: 700;
	border-bottom: solid 1px;
}
#ticket .u22{
	position: relative;
	margin: 50px auto 10px auto;
	width: calc(100% - 40px);
	border: solid 1px #2375db;
	max-width: 800px;
}
#ticket .u22 .ttlU22{
	position: relative;
	margin: -30px auto 0 auto;
	width: 120px;
	background-color: #ffffff;
	padding: 10px;
}
#ticket .u22 .u22Txt{
	position: relative;
	margin: 0 auto;
	padding: 10px 20px 20px 20px;
}
#ticket .sendC{padding: 10px 0 0 0;}


/* schedule */
#schedule{
    position: relative;
    margin: 0 auto;
	padding-bottom: 10px;
}
#schedule .soon{
	position: relative;
	margin: 40px auto 20px auto;
	color: #6d346d;
	text-align: center;
	font-weight: 700;
}
#schedule .soon span{font-style: italic;}
#schedule ul.areaList{
	position: relative;
	margin:20px auto 0 auto;
	width: calc(100% - 30px);
	max-width: 960px;
}
#schedule ul  li.contents{
	position: relative;
	margin: 0 auto 30px auto;
	background-color: #ffffff;
	padding:0;
	text-align: center;
	border: solid 1px #6d346d;
}
#schedule ul  li.contents::before{
	position: absolute;
	top:-10px;
	left: -10px;
	width: calc(100% + 20px);
	height: calc(100% + 20px);
	display: block;
	content: '';
	background-image: url("../img/bg_sche01.png"), url("../img/bg_sche02.png"), url("../img/bg_sche03.png"), url("../img/bg_sche04.png");
	background-position: 0 0, 100% 0, 0 100%, 100% 100%;
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
	background-size: 20px auto, 20px auto, 20px auto, 20px auto;
}
#schedule ul li.contents:last-child{margin: 0 auto;}
#schedule ul li.contents::after{
	position: absolute;
	top:-15px;
	right: -15px;
	width: 50%;
	height: 30px;
	display: block;
	content: '';
	background-position:  100% 100%;
	background-repeat: no-repeat;
	background-size: contain;
	z-index: 300;
}
#schedule ul li.contents.pre::after{background-image: url("../img/pre.png");}
#schedule ul li.contents.play::after{background-image: url("../img/play.png");}
#schedule ul li.contents.closed::after{background-image: url("../img/end.png");}
#schedule ul li.contents.addnext::after{background-image: url("../img/addnext.png");}
#schedule ul li.closed .end{
	position: absolute;
	top:0;
	left: 0;
	width: 100%;
	height: 100%;
	 background-color: rgba(237,237,237,0.85);
	z-index: 10;
}
#schedule ul li .areaWrap{
	position: relative;
	margin: 0 auto;
	padding: 0;
	text-align: center;
}
#schedule ul li .area{
	position: relative;
	margin: 0 auto;
	padding:0;
}
#schedule ul li .area .areaname{
	position: relative;
	margin: 0;
	width: 40%;
	max-width: 100px;
	transform: translate(-8px, -10px);
}
#schedule ul li .area .shopname{
	position: relative;
	margin: 0 auto;
	width: calc(100% - 30px);
	padding-top: 25px;
}
#schedule ul li .area .shopname p{
	position: relative;
	padding-bottom: 20px;
	font-weight: 700;
	color: #6d346d;
	font-size: .18rem;
	background-image: url("../img/bar.png");
	background-position: 50% 100%;
	background-repeat: no-repeat;
	background-size: auto 12px;
}
#schedule ul li .area .kikan{
	position: relative;
	margin: 0 auto;
	padding: 10px 0 0 0;
	font-size: .13rem;
	width: calc(100% - 10px);
}

#schedule ul li .detail{
	position: relative;
	height: 0;
	overflow: hidden;
	opacity: 0;
	padding: 0;
	transition: all .5s ease-out;
}
#schedule ul li .detail.disp{height: auto;opacity: 1;margin: 0 auto;}
#schedule ul li .detail .areaTxt a{color: #0b3b80;}
#schedule ul li .detail .map{
	position: relative;
	margin:0 auto;
	width: calc(100% - 40px);
}
#schedule ul li .detail .map iframe{max-width: 100%;height: 220px;}
#schedule ul li .ttlS{
	position: relative;
	margin: 30px auto 20px auto;
	width: calc(100% - 40px);
	padding: 4px 0;
	font-weight: 700;
	background-image: url("../img/bar01.png");
	background-position: 50% 100%;
	background-repeat: no-repeat;
	background-size: auto 5px;
	color: #0d5fab;
}
#schedule ul li .detail p.areaTxt{padding: 0 10px;font-size: .14rem;}
#schedule ul li .detail p.areaTxt.contact{padding: 0 10px 30px 10px;}
#schedule ul li .ttlS1{
	position: relative;
	margin: 20px auto 10px auto;
	background-color: #0d5fab;
	color: #ffffff;
	font-size: .13rem;
	line-height: 1em;
	padding: 3px 20px;
	display: inline-block;
	width: auto;
	border-radius: 100px;
}
#schedule ul li .btn_soon{
	margin: 0 auto;
	padding: 2px 0;
	background-color: #797D81;
	color: #D2D2D2;
	font-size: .12rem;
}
#schedule ul li .btn_sAccess{
	position: relative;
	margin:  10px auto 20px auto;
	padding: 5px 0;
	width: calc(100% - 20px);
	border-radius: 100px;
	color: #ffffff;
	cursor: pointer;
	background: rgb(172,229,255);
	background: linear-gradient(90deg, rgba(172,229,255,1) 0%, rgba(187,161,238,1) 100%);
}
#schedule ul li .btn_sAccess::after{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 10px;
	width: 13px;
	height: 13px;
	content: '';
	background-image: url("../img/arrowW.png");
	background-position: 0 0;
	background-repeat:no-repeat;
	background-size: contain;
	transition: all .3s ease-out;
}
#schedule ul li .btn_sAccess.accessClose::after{transform:translateY(-50%) rotate(-180deg);}
#schedule ul li .detail .button{
	width: calc(100% - 2em - 20px);
	font-size: .13rem;
}

/* チケットカレンダー */
.sTicket ul li{background-image: none !important;}
.ticAPI{position: relative;margin: 20px auto 0 auto;width: 100%;padding: 0;}
.ticket_api{margin: 0;padding: 0;color: #333333;width: 100%; background-color: #0b3b80;}
.ticketWrap{ margin: 0 auto; background-color: transparent !important;  padding:20px 0 0 0; font-size: .12rem !important; }
.ticketWrap .swiper-wrapper{padding: 0;}
.ticketWrap .naviBox {margin:  0 53px 0 53px;}
.ticketWrap .naviBox .prevBtn{top: 20px;left: 0; background-color: #ffffff; opacity: 1;}
.ticketWrap .naviBox .nextBtn{top: 20px;right: 0; background-color: #ffffff; opacity: 1;}
.ticketWrap .naviBox .prevBtn:hover, .ticketWrap .naviBox .nextBtn:hover{opacity: 1;}
.ticketWrap .naviBox ul li{margin: 0 1px !important;}
.ticketWrap .naviBox ul li .scheduleBox{color:#333333;}
.ticketWrap .naviBox ul li.cr .scheduleBox {background: #68caf2; color:#ffffff !important;}
.ticketWrap .naviBox ul li.cr .scheduleBox span span{color:#ffffff !important;}
.ticketWrap .detailsWrap {padding-top: 20px;min-height: 190px;}
.ticketWrap .detailsBox .tit {background-color: #d9edfd;font-size: .14rem !important;color:#000000 !important;}
.ticketWrap .detailsBox .tit p{margin: 0 !important;}
.ticketWrap .detailsBox .tit01 {font-size: .18rem !important;}
.ticketWrap .detailsBox .details h4 {margin: 30px 0; color:#333333 !important;border-bottom: 2px solid #333333; background-image: none;font-size: .13rem !important;text-align: center;font-weight: 700;}
.ticketWrap .detailsBox .details a.scrap {color: #000000; font-size: .12rem;font-weight: normal;}
.ticketWrap .detailsBox .details a.scrap:after {border-top: solid 1px #000000;border-right: solid 1px #000000; width: 5px; height: 5px;margin: -3px 0 0 0px;}
.ticketWrap .detailsBox .details ul li .scheduleBox.present {background: #ffffff; border: solid 1px #b3b3b3;color: #2a2a2a;}
.ticketWrap .detailsBox .details ul li .scheduleBox.sold {background: #b3b3b3; color:#969696; border: solid 1px #b3b3b3;}
.ticketWrap .detailsBox .details ul li .scheduleBox.few {background: #fbfdc2; border: solid 1px #b3b3b3;color: #2a2a2a;}
.ticket_api .note {margin: 0 auto !important;color:#232323; padding: 20px; background-color: #ffffff;}
.ticket_api .note a {color:#cf1009;}
.ticketWrap .detailsBox .details .ticketBox .ticketItem p {color:#232323;}
.ticketWrap .detailsBox .details ul li .scheduleBox .time {font-size: .13rem;}
.ticketWrap .detailsBox .details ul li .scheduleBox .state {font-size: .12rem;}

#schedule .closedTxt{
	position: relative;
	margin: 0 auto;
	text-align: center;
	padding: 0 0 10px 0;
	color: #BF0E59;
	font-size: 110%;
	font-weight: 600;
}

/* GOODS */
#goods{
	position: relative;
	margin: 0 auto;
	padding-bottom: 80px;
}
#goods ul{
	position: relative;
	margin: 20px auto 0 auto;
	width: calc(100% - 20px);
	max-width: 1100px;
	gap:30px 10px;
}
#goods ul li{
	position: relative;
	margin: 0;
	max-width: 380px;
	width:calc(50% - 10px);
	/*background-color: #fffcf1;*/
	background-color: #ffffff;
}
#goods ul li .btn{
	position: relative;
	margin: 0 auto;
	background-color: #ffffff;
}
#goods ul li .name{
	position: relative;
	margin: 0 auto;
	padding: 5px 0;
	color: #6d346d;
	font-weight: 700;
	font-size: .13rem;
	text-align: center;
	line-height: 1.4em;
	background-color: #ffffff;
}
#goods ul li .name span{font-size: .75em;}
#goods ul li .price{
	position: relative;
	margin: 0 auto;
	text-align: right;
	background-color: #ffffff;
}
#goods ul li .text{
	position: relative;
	margin: 0 auto;
	padding: 10px 0;
	background-color: #ffffff;
}
#goods ul li .spec{
	position: relative;
	margin: 0 auto;
	/*padding: 10px;*/
	padding: 10px 0;
	font-size: .8em;
}
#goods ul li .spec .caution{color: #E62A57;}
#goods .tokuten{
	position: relative;
	margin: 50px auto 20px auto;
	width: calc(100% - 20px);
	max-width: 770px;
}
#goods .tokuten .lead{
	position: relative;
	padding: 15px 20px 6px 20px;
	color: #6d346d;
	font-weight: 700;
	text-align: center;
	font-size: .14rem;
	background-color: #E9DDF0;
	background-image: url("../img/bg_tokuten_ttl.png"), url("../img/bg_tokuten_ttl01.png");
	background-position: 1px 1px, calc(100% - 1px) 1px;
	background-repeat:no-repeat, no-repeat;
	background-size: auto 58px, auto  58px;
}
#goods .tokuten .tokutenWrap{
	position: relative;
	margin: 0 auto;
	background-color: #fffcf1;
	padding: 20px;
	border: double 4px #6d346d;
}
#goods .tokuten .name{
	position: relative;
	margin: 0 auto;
	padding: 5px 0;
	color: #6d346d;
	font-size: .17rem;
	font-weight: 700;
	text-align: center;
	line-height: 1.4em;
}
#goods .tokuten .name span{font-size: .75em;}
#goods .tokuten .Img{
	position: relative;
	margin: 0 auto 20px auto;
	width: calc(100% - 50px);
	max-width: 380px;
}
#goods .tokuten .txt{
	position: relative;
	margin: 10px auto;
	max-width: 620px;
}
#goods .tokuten .txt .cautionWrap{
	position: relative;
	margin: 10px auto 0 auto;
}
#goods .tokuten .txt .cautionWrap p{
	position: relative;
	margin: 0 auto;
	padding: 0 0 5px 1.2em;
	font-size: .12rem;
	line-height: 1.5em;
}
#goods .tokuten .txt .cautionWrap p::before{
	position: absolute;
	top:0;
	left: 0;
	content: '※';
}
#goods .goodsCautionWrap{
	position: relative;
	margin: 20px auto 0 auto;
	width: calc(100% - 20px);
	max-width: 770px;
}
#goods .goodsCautionWrap .btn_goodsCaution{
	position: relative;
	margin: 0 auto;
	background-color: #8D63A6;
	border: solid 1px #8D63A6;
	color: #ffffff;
	text-align: center;
	padding: 5px 30px;
	cursor: pointer;
	transition: all .3s ease-out;
}
#goods .goodsCautionWrap .btn_goodsCaution::after{
	position: absolute;
	top: 50%;
	right: 10px;
	width: 12px;
	height: 12px;
	content: '';
	display: block;
	background-image: url("../img/arrowW.png");
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: contain;
	transform: translateY(-50%);
}
#goods .goodsCautionWrap .btn_goodsCaution.disp::after{transform: translateY(-50%) rotate(-180deg);}
#goods .goodsCaution{
	position: relative;
	margin: 0 auto;
	font-size: .13rem;
	line-height: 1.6em;
	padding:10px;
	text-align: left;
	display: none;
	border-left: solid 1px #8D63A6;
	border-right: solid 1px #8D63A6;
	border-bottom: solid 1px #8D63A6;
}
#goods .goodsCaution p{position: relative;padding-left: 1.2em;padding-bottom: 5px;text-align: left;}
#goods .goodsCaution p::before{
	position: absolute;
	content: '・';
	left: 0;
}
#goods ul li.soon{
	width:calc(100% - 70px);
	max-width: 500px;
}
#arrowsgoods06, #arrowsgoods07{
	position: absolute;
	display: block;
	top: 45%;
	left: -5px;
	text-align: center;
	width: calc(100% + 10px);
	height: 30px;
	z-index: 1000;
}
.modalCont .slide-arrow{
    position: absolute;
	top:0;
	display: block;
	width: 30px;
	height: auto;
}
.modalCont .prev-arrow{transform: scale(-1, 1);left: 0;cursor: pointer;}
.modalCont .next-arrow{right: 0;cursor: pointer;}
.modalCont .slick-disabled{display: none !important;}

#goods .cautionWrap.goodsC{
	position: relative;
	margin: 20px auto 0 auto;
	width: calc(100% - 30px);
}
#goods .cautionWrap.goodsC p{
	position: relative;
	margin: 0 auto;
	padding: 0 0 5px 1.2em;
	font-size: .12rem;
	line-height: 1.5em;
}
#goods .cautionWrap.goodsC p::before{
	position: absolute;
	top:0;
	left: 0;
	content: '※';
}
#goods .goodsShop{
	position: relative;
	margin: 20px  auto;
	width: calc(100% - 78px);
	max-width: 600px;
	background-color: #fffcf1;
	padding: 20px;
	border: double 4px #6d346d;
	text-align: center;
}
#goods .goodsShop h3{
	position: relative;
	margin: 0 auto;
	font-size: .15rem;
	color: #E62A57;
	font-weight: 700;
}
#goods .goodsShop h4{
	position: relative;
	margin: 20px auto 5px auto;
	padding: 5px 0;
	color: #6d346d;
	font-weight: 700;
	border-bottom: solid 1px #6d346d;
	text-align: center;
	line-height: 1.4em;
}
#goods .goodsShop .button{
	position: relative;
	margin: 20px auto 0 auto;
	background-color: #8D63A6;
	border: solid 1px #8D63A6;
	color: #ffffff !important;
	text-align: center;
	padding: 5px 30px;
	max-width: calc(100% - 80px);
	transition: all .3s ease-out;
}
#goods .goodsShop .button:hover{background-color: #ffffff;color: #8D63A6 !important;}
#goods .goodsShop .button::after{
	position: absolute;
	top: 50%;
	right: 10px;
	width: 12px;
	height: 12px;
	content: '';
	display: block;
	background-image: url("../img/arrowW.png");
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: contain;
	transform: translateY(-50%) rotate(-90deg);
}

/* FAQ */
#precautions{
	position: relative;
	margin: 0 auto;
	padding: 10px 0 40px 0;
	background-color: #edf5ff;
}
#precautions .cautionWrap{
	position: relative;
	margin: 20px auto 0 auto;
	width: calc(100% - 40px);
	max-width: 960px;
	background-color: #ffffff;
}
#precautions .cautionWrap::after{
	position: absolute;
	top:5px;
	left: 5px;
	width: 100%;
	height: 100%;
	content: '';
	display: block;
	border: solid 1px #8b55ba;
}
#precautions .cautionWrap .ttl{
	position: relative;
	margin: 0 auto;
	padding: 15px 0 10px 0;
	z-index: 10;
	text-align: center;
	font-size: .18rem;
	font-weight: 700;
	color: #6d346d;
	cursor: pointer;
}
#precautions .ttl::after{
	position: absolute;
	top:50%;
	right: 10px;
	content: '▼';
	font-size: .12rem;
	display: block;
	transition: all .3s ease-out;
	transform: translateY(-50%) scale(1, .6);
}
#precautions .ttl.disp::after{transform: translateY(-50%) scale(-1,-.6);}
#precautions .faqWrap{
	position: relative;
	margin: 0 auto;
	padding: 0;
	height: 0;
	overflow: hidden;
	transition: all .3s ease-out;
	z-index: 9;
}
#precautions .CatTtl{
	position: relative;
	margin: 0 auto;
	padding: 5px 0;
	width: calc(100% - 30px);
	background-color: #e7f2fc;
	text-align: center;
	font-size: .16rem;
	color: #0d5fab;
}
#precautions .CatTtl.marginTop{margin: 30px auto 0 auto;}
#precautions  #limitlist .CatTtl{margin: 30px auto 15px auto;}
#precautions .faqWrap.disp{height: auto !important;padding: 20px 0; margin: 0 auto; }
#precautions .faqWrap dl{position: relative;}
#precautions .faqWrap dl dt{
	position: relative;
	font-weight: 900;
	font-size: .16rem;
}
#precautions .cautionlist .faqWrap dl dt{
	color: #0d5fab;
	line-height: 1em;
	padding:30px 0 0 0;
	text-align: center;
	font-weight: 700;
}
#precautions .faqWrap dl dd{padding: 15px 0;}
#precautions #faq.faqWrap dl dd{padding: 5px 0 0 0;}
#precautions .faqWrap dl dd p{
	position: relative;
	width: calc(100% - 50px);
	margin: 0 auto;
	padding-bottom: .8em;
	text-align: left;
	line-height: 1.5em;
}
#precautions .faqWrap dl dd .title{
	position: relative;
	width: calc(100% - 50px);
	margin: 5px auto 0 auto;
	text-align: left;
	font-weight: bold;
}
#precautions #cautionlist.faqWrap dl dd p, #precautions #faq.faqWrap dl dt p, #precautions #faq.faqWrap dl dd p, #precautions #limitlist dd p{padding-left: 1.2em;}
#precautions #faq.faqWrap dl dt p{
	position: relative;
	color: #0088cc;
	font-size: .14rem;
	font-weight: 500;
	text-align: left;
	margin: 0 auto;
	width: calc(100% - 50px);
	line-height: 1.6em;
}
#precautions #cautionlist.faqWrap dl dd p::before, #precautions #faq.faqWrap dl dt p::before, #precautions #faq.faqWrap dl dd p::before, #precautions #limitlist dd p::before{
	position: absolute;
	content: '・';
	left: 0;
}
#precautions #faq.faqWrap dl dt p::before{content: 'Q.';}
#precautions #faq.faqWrap dl dd p::before{content: 'A.';}
#precautions .faqWrap dl dd .caution{
	line-height: 1.4em;
	display: block;
	padding: 5px 0 0 0;
	text-align: left;
}
#precautions #limitlist .lead{
	position: relative;
	margin: 0 auto 15px auto;
	width: calc(100% - 50px);
}
#precautions  #limitlist dl{margin: 0 auto;width: calc(100% - 20px);}

/* ----- pc ----- */
@media screen and (min-width: 641px) {
	
	/* ヘッダー */
	header #keyvisual{
		background-image: url("../img/main_pc.jpg");
		padding-top:56.25%;
	}

	/* catch */
	#catch{padding: 70px 0 60px 0;}
	#catch .catchTxt01::before{width: 25%;}
	#catch .catchTxt01::after{width: 24%;}
	#catch .catchTxt02{margin: 45px auto 0 auto;}

	/* lead */
	#lead{padding: 25px 0 ;}
	#lead .leadTxt{
		font-size: .18rem;
		line-height: 2em;
	}

	/* バナー */
	#banner {padding-bottom: 30px;}

	/* とは */
	#about h2{padding-top: 40px; max-width: 492px;}
	#about .play{gap:0 15px;padding-bottom: 40px; }
	#about .play li{
		width: calc(33% - 15px);
		max-width: 140px;
	}

	/* campaign */
	#campaign {/*padding: 0 0 40px 0;*/padding-bottom:60px;}

	/* CM */
	#cm{padding-bottom:60px;}
	#cm .cmBox{max-width: 720px;margin:  0;}
	#cm .cmWrap{
		position: relative;
		margin: 0 auto;
		width: 100%;
		max-width: 1000px;
		gap: 20px;
	}
	#cm .playMovieWrap{
		margin: 0;
		max-width: 220px;
	}


	/* ストーリー */
	 #story{
		background-image: url("../img/bg_story_pc.jpg");
		 background-color: #5fbdd0;
	}
	#story .storyWrap{
		 padding-top: 50px;
		 padding-bottom: 60px;
	}
	#story .storyWrap .storyBg{background-size: 210px auto;}
	#story .storyWrap .storyTxt{padding: 40px;}
	#story .storyWrap p{
		line-height: 2.2em;
		font-size: .18rem;
	}
	#story .btn_more{
		margin: 60px auto 0 auto;
		padding: 5px 0;
	}
	#story .btn_more::after{
		right: 10px;
		width: 15px;
		height: 15px;
	}

	/* キャラクター */
	#charactor{padding-bottom: 40px;}
	#charactor .charaList{max-width: 1092px;margin: 0 auto}
	#charactor .chara{
		margin: -20px auto 0 auto;
		max-width: 1000px;
	}
	#charactor .more{max-width: 105px;}
	#charactor .charaList .btnChara.chara01, #charactor .charaList .btnChara.chara02, #charactor .charaList .btnChara.chara03{top: 37%;}
	#charactor .charaList .btnChara.chara04, #charactor .charaList .btnChara.chara05, #charactor .charaList .btnChara.chara06{bottom:3%;}
	#charactor .charaList .btnChara.chara01{left:50%;}
	#charactor .charaList .btnChara.chara02{left:27%;}
	#charactor .charaList .btnChara.chara03{left:72%;}
	#charactor .charaList .btnChara.chara04{left:50%;}
	#charactor .charaList .btnChara.chara05{left:27%;}
	#charactor .charaList .btnChara.chara06{left:72%;}
	#charactor .charaDisp, #charactor .charaDisp1{
		padding: 30px 25px 45px 25px;
		max-width: 600px;
	}
	#charactor .charaDisp{top: 19%;padding: 40px;}
	#charactor .charaDisp1{bottom: 10%;}
	#charactor .charaDisp .charaDetail .name, #charactor .charaDisp1 .charaDetail .name{max-width: 320px;}
	#charactor .charaDisp .charaDetail .txt, #charactor .charaDisp1 .charaDetail .txt{margin: 20px auto 0 auto;}

	#charactor .links{margin: 40px auto 0 auto;}


	/* 参加方法 */
	#howto{padding-bottom: 40px;}
	#howto .cautionWrap p{font-size: .14rem;}

/* 販売 */
#ticket{
	position: relative;
	margin:0 auto;
}
/* 料金 */
#ticket .price{
	position: relative;
	margin: 0 auto;
	padding: 10px 0;
}
	#ticket .price ul.ticketP {max-width: 350px;}
	#ticket .priceBox .caution{font-size: .14rem;}
	#ticket .priceBox .table{
		margin: 10px auto 0 auto;
		max-width: 840px;
	}
	#ticket .priceBox table th{
		width: 28%;
		font-size: .16rem;
	}
	#ticket .priceBox table td{font-size: .14rem;}
	#ticket .priceBox table td span{font-size: .24rem;}
	#ticket .priceBox table td p{font-size: .14rem;line-height: 1.4em;}
	#ticket .ticCautionWrap{margin: 30px auto;}
	#ticket .tokuten .ticCautionWrap{width: calc(100% - 60px);}
	#ticket .ticCautionWrap .btn_ticCaution::after{
		right: 10px;
		width: 15px;
		height: 15px;
	}
	#ticket .ticCaution{font-size: .14rem;}
	#ticket .release ul li{
		max-width: 560px;
		margin: 30px auto 60px auto;
	}
	#ticket .release ul li:last-child{margin: 0 auto;}
	#ticket .release .typeTxt{font-size: .18rem;}
	#ticket .release p{font-size: .16rem;}
	#ticket .scraptantei p{
		padding:20px 0 0 0;
		font-size: .14rem;
	}

	#ticket .tokuten{
		margin: 70px auto;
		max-width: 680px;
		padding-bottom: 30px;
	}
	#ticket .tokuten .name{
		font-size: .24rem;
		line-height: 1.4em;
		padding: 20px 30px 15px 30px;
	}
	#ticket .tokuten .Img{margin: 0 auto 30px auto;}
	#ticket .tokuten .txt{
		margin: 20px auto;
		text-align: center;
	}
	#ticket .u22{
		margin: 90px auto 10px auto;
		max-width: 720px;
	}
	#ticket .u22 .ttlU22{
		margin: -50px auto 0 auto;
		width: 130px;
	}
	#ticket .u22 .u22Txt{padding: 30px 40px 40px 40px;}

	/* GOODS */
	#goods{padding-bottom: 120px;}
	#goods ul{margin: 40px auto 0 auto;gap:80px 20px;}
	#goods ul li{width:calc(25% - 20px);}
	#goods ul li .name{
		padding:10px 0;
		font-size: .16rem;
		line-height: 1.4em;
	}
	#goods ul li .name span{font-size: .8em;}
	#goods ul li .text{padding: 20px 0;}
	#goods ul li .spec{padding: 20px 0;line-height: 1.7em;}
	#goods .tokuten{margin:50px auto;}
	#goods .tokuten .lead{
		font-size: .20rem;
		line-height: 1.4em;
		padding: 25px 30px 15px 30px;
		background-size: auto 80px, auto  80px;
	}
	#goods .tokuten .tokutenWrap{padding: 30px;}
	#goods .tokuten .name{
		padding: 5px 0;
		font-size: .24rem;
		line-height: 1.4em;
	}
	#goods .tokuten .name span{font-size: .7em;}
	#goods .tokuten .Img{margin: 0 auto 30px auto;}
	#goods .tokuten .txt .cautionWrap{margin: 20px auto 0 auto;}
	#goods .tokuten .txt .cautionWrap p{
		font-size: .14rem;
		line-height: 1.5em;
	}
	#goods .goodsCautionWrap{margin: 0 auto;}
	#goods .goodsCautionWrap .btn_goodsCaution{
		padding: 10px 30px;
		font-size: .18rem;
	}
	#goods .goodsCautionWrap .btn_goodsCaution::after{
		right: 10px;
		width: 15px;
		height: 15px;
	}
	#goods .goodsCaution{
		font-size: .15rem;
		line-height: 1.6em;
		padding:20px;
	}
	
	#goods .cautionWrap.goodsC{
		margin: 40px auto 0 auto;
		max-width: 18em;
	}
	#goods .cautionWrap.goodsC p{
		padding: 0 0 5px 1.2em;
		font-size: .13rem;
		line-height: 1.5em;
	}
	#goods .goodsShop{margin: 40px  auto;}
	#goods .goodsShop h3{font-size: .18rem;}
	#goods .goodsShop .button{font-size: .16rem;}

	/* schedule */
	#schedule{padding-bottom: 30px;}
	#schedule .soon{
		margin: 60px auto 20px auto;
		font-size: .18rem;
	}
	#schedule ul.areaList{margin:30px auto 0 auto;}
	#schedule ul  li.contents{margin: 0 auto 50px auto;}
	#schedule ul  li.contents::before{
		top:-18px;
		left: -18px;
		width: calc(100% + 36px);
		height: calc(100% + 36px);
		background-size: 40px auto, 40px auto,40px auto, 40px auto;
	}
	#schedule ul li.contents::after{
		top:-20px;
		right: -35px;
		width: 50%;
		height: 40px;
	}

	#schedule ul li .area .shopname{padding-top: 40px;}
	#schedule ul li .area .shopname p{
		padding-bottom: 30px;
		font-size: .24rem;
		background-size: auto 18px;
	}
	#schedule ul li .area .kikan{
		padding: 20px 0 0 0;
		font-size: .16rem;
	}
	#schedule ul li .detail .map iframe{height: 320px;}
	#schedule ul li .ttlS{
		margin: 50px auto 30px auto;
		padding: 8px 0;
		font-size: .18rem;
		background-size: auto 8px;
	}
	#schedule ul li .detail p.areaTxt{font-size: .16rem;}
	#schedule ul li .detail p.areaTxt.contact{padding: 0 10px 40px 10px;}
	#schedule ul li .ttlS1{
		margin: 30px auto 20px auto;
		font-size: .14rem;
		line-height: 1em;
		padding: 4px 30px;
	}
	#schedule ul li .btn_sAccess{
		margin:  30px auto 20px auto;
		padding: 7px 0;
		max-width: 800px;
	}
	#schedule ul li .btn_sAccess::after{
		right: 20px;
		width: 15px;
		height: 15px;
	}
	#schedule ul li .detail .button{font-size: .16rem;}

	/* FAQ */
	#precautions{padding: 20px 0 60px 0;}
	#precautions .cautionWrap{margin: 30px auto 0 auto;}
	#precautions .cautionWrap .ttl{
		padding: 20px 0 15px 0;
		font-size: .24rem;
	}
	#precautions .ttl::after{right: 20px;}

	#precautions .CatTtl{
		padding: 5px 0;
		width: calc(100% - 60px);
		font-size: .18rem;
	}
	#precautions  #limitlist .CatTtl{margin: 40px auto 20px auto;}
	#precautions .faqWrap dl dt{font-size: .16rem;}
	#precautions .cautionlist .faqWrap dl dt{padding:40px 0 0 0;}
	#precautions .faqWrap dl dd p{	width: calc(100% - 70px);}
	#precautions .faqWrap dl dd .title{width: calc(100% - 60px);}
	#precautions #faq.faqWrap dl dt{padding:  0 20px 0 30px;}
	#precautions #faq.faqWrap dl dd{padding: 5px 20px 0 20px;}
	#precautions #faq.faqWrap dl dt p{font-size: .16rem;}
	#precautions #limitlist dl{width: calc(100% - 40px);}
	#precautions #limitlist .lead{width: calc(100% - 70px);}
}

/* goods */
@media screen and (max-width: 380px) {
	#goods ul li .name{
		font-size: .12rem;
		line-height: 1.4em;
	}
}

/* ----- aboutTxt ----- */
@media screen and (min-width: 500px) {
	#about ul.aboutTxt{gap:10px 0;max-width: 1200px;}
	#about ul.aboutTxt li{
		max-width:375px;
		padding-top: min(62%, 300px);
		background-size: contain;
		font-size: .14rem;
	}
	#about ul.aboutTxt li:nth-child(1){transform: translateX(-5%);background-image:  url("../img/about01_pc.png");}
	#about ul.aboutTxt li:nth-child(2){transform: translateX(20%);background-image:  url("../img/about02_pc.png");}
	#about ul.aboutTxt li:nth-child(3){transform: translateX(-5%);background-image:  url("../img/about03_pc.png");}
	#about ul.aboutTxt li:nth-child(1) .txt{width: 100%; max-width:300px;top:56%;left: 50%;transform: translateX(-52%);}
	#about ul.aboutTxt li:nth-child(2) .txt{width: 100%;max-width:300px;top:55%;left: 50%;transform: translateX(-53%);}
	#about ul.aboutTxt li:nth-child(3) .txt{width: 100%;max-width:300px;top:60%;left: 50%;transform: translateX(-52%);}

}
@media screen and (min-width: 740px) {
	#about ul.aboutTxt li:nth-child(1){transform: translateX(0);}
	#about ul.aboutTxt li:nth-child(2){transform: translateX(0)}
	#about ul.aboutTxt li:nth-child(3){transform: translateX(0);}
}