@charset "utf-8";
/*--------------------------------------------------
[1]common
[2]headerContainer
[3]sideContainer
[4]footerContainer
[5]Container
[6]topContainer
[7]subContainer
[8]Display: none;
----------------------------------------------------*/

/* [1]common
----------------------------------------------------*/
/* 設定 */
html{
	-webkit-text-size-adjust: 100%;
	/* font-size: 62.5%; */
	margin: 0;
	padding: 0;
}

/* font */
body{
	line-height: 1.5;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	font-size: 14px;
	font-family: 'Noto Sans JP', sans-serif;
	font-style: normal;
	font-variant: normal;
	font-weight: 500;	
	color: #000;
	font-weight: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-x: hidden;
}


header {
	width: 100%;
	height: 100vh;
	overflow: hidden;
	position: relative;
}

#trns{
	  position: fixed;
	  top:0;
	  left: 0;
	  width: 100%;
	  height: 100%;
	  z-index: 9999999999;
		background-image: url(images/logo-footer.png);
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 209px 58px;
		background-color: #000;
}

#wrapper {
	width: 100%;
	position: relative;
	overflow: hidden;
}

/* clear
-------------------------------------------------- */
.clear { clear: both; }
.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
.clearfix { min-height: 1px; }
* html .clearfix {
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}


/* a 
----------------------------------------------- */
a,a:link { text-decoration: none; }
a img, img {
	border: none;
	line-height: normal;
	vertical-align: top;
}

/* img 
--------------------------------------------- */
img{
    max-width: 100%;
    height: auto;
    width /***/:auto;　/*IE8のみ適用*/
}
.imgText {
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
.object-fit-img {
  object-fit: cover;
  object-position: 50% 50%;
  font-family: 'object-fit: cover; object-position: 50% 50%;'
}

/* slide
------------------------------------ */
#mainbox,
#topmainbox {
	position: relative;
	width: 100%;
	height: 100vh;
	padding: 0;
	box-sizing: border-box;
	overflow: hidden;
}

#mainbox figure,
#topmainbox figure {
	position: relative;
	width: 100%;
	overflow: hidden;
	height: 100vh;
}

#mainbox figure img,
#topmainbox figure img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: cover;
}



/* [2]headerContainer
----------------------------------------------------------------------------------------- */
.mainTtlBox {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 220px;
	height: 300px;
	margin-left: -110px; 
	margin-top: -150px;	
}

.mainTxt {
	width: 220px;
	height: 220px;
	background-image: url(images/mainTxt.png);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	display: block;
}

.mainLogo {
	text-align: center;
	color: #FFF;
	font-size: 14px;
	font-family: 'Lora', serif;
	line-height: 1.0;
}
.mainLogo h1 a{
	background-image: url(images/mainLogo.png);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
	width: auto;
	height: 50px;
	display: block;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
}
.mainLogo span{
	position:relative;
	display: inline-block
}
.mainLogo p {
	text-shadow:
    rgba(0,0,0,0.3) 1px 1px 2px, rgba(0,0,0,0.3) -1px 1px 2px,
    rgba(0,0,0,0.3) 1px -1px 2px, rgba(0,0,0,0.3) -1px -1px 2px;	
}
.mainLogo span:after,
.mainLogo span:before {
	position: absolute;
	background-color: #FFF;
	height: 1px;
	width: 20px;
	top: 0;
	bottom: 0;
	margin: auto 0;
	content: "";
	box-shadow: 1px 1px 2px rgba(0,0,0,0.3);
}
.mainLogo span:after{left: -30px;}
.mainLogo span:before{right: -30px;}

.topmainTtlBox {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 220px;
	height: 400px;
	margin-left: -110px; 
	margin-top: -200px;	
}

.topmainTxt {
	width: 150px;
	height: 150px;
	background-image: url(images/mainTxt.png);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	display: block;
	position: relative;
	margin:  0 auto;
}

.topmainLogo {
	text-align: center;
	color: #FFF;
	font-size: 14px;
	line-height: 1.0;
}

.topmainLogo  h1{
	margin-bottom:  5px;
}

.topmainLogo h1 a{
	background-image: url(images/mainLogo.png);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
	width: auto;
	height: 50px;
	display: block;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
}

.topmainLogo ul { text-align:  center; }
.topmainLogo ul li { margin-bottom: 2px; }
/* .topmainLogo ul li { display:  inline-block;} */
.topmainLogo ul li a{
display: block;
color: #FFF;
padding: 10px 20px;
box-sizing:  border-box;
border: 1px solid #FFF;
border-radius:  5px;
font-family: 'Noto Sans JP', sans-serif;
font-size:  16px;
background-color:  rgba(0,0,0,0.5);
}



.gnav { display: none; }
.gnav2 {
	background-color: #000;
	position: fixed;
	width: 100%;
	height: 40px;
	top: 0;
	left: 0;
	z-index: 999999998;
}
.navigation2 {
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	right: -100%;
	z-index: 999999997;
	padding: 40px 0px 10px;
	box-sizing: border-box;
	background-color: #000;
	overflow: auto;	
	min-height: 100vh;
}
.navigation2 h2 {
	position: fixed;
	top: 0px;
	left: 5px;
	width: auto;
	height: 35px;
}
.gnav2 h2 a{
	background-image: url(images/mainLogomin.png);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
	width: 126.12068px;
	height: 35px;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	display: block;
	z-index: 999999999;
	position:relative;
}
.navigation2 ul{
	text-align: center;
	z-index: 999999998;
	border-top: 1px solid #fff;
}
.navigation2 li a{
	display: block;
	box-sizing: border-box;
	padding: 15px 0;
	color: #ffd800;
	font-size: 20px;
	width: 100%;
	font-family: 'Patua One', cursive;
	border-bottom: 1px solid #fff;
}
.navigation2 li a span{
	display: inline-block;
	box-sizing: border-box;
	padding: 0 5px;
	font-size: 15px;
}



/* [4]footerContainer
----------------------------------------------------------------------------------------- */
footer {
	position: relative;
	width: 100%;
}

.section006 {
	background-color: #aaa;
	padding: 60px 10px;
	box-sizing: border-box;
	color: #666;
}

.section006 h4{
	font-weight: bold;
	font-size: 20px;
	text-align: center;
	position: relative;
	/* padding-top: 90px; */
	line-height: 1.1;
	box-sizing: border-box;
	margin-bottom: 20px;	
}
/* .section006 h4:before{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	background-image: url(images/icon-atention.png);
	background-repeat: no-repeat;
	background-position: left top;
	width: 97px;
	height: 97px;
	content: "";
	margin: 0 auto;	
} */
.section006 ul {
	width: 100%;
	max-width: 840px;
	margin: 0 auto;
	font-size: 11px;
}
.section006 ul li{ margin-bottom: 5px; }
.section006 ul li dl { margin-bottom: 10px; }
.section006 ul li dt{ font-size: 12px;}
.section006 ul li dd{ font-size: 11px;}

footer h2 {
	text-align: center;
}

footer h2 a {
	background-image: url(images/logo-footer.png);
	background-repeat: no-repeat;
	background-position: left top;
	width: 209px;
	height: 58px;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	display: block;
	margin: 0 auto;	
}

.footerBox { padding: 20px 0 5px; box-sizing: border-box; }

.footername {
	color: #fd7202;
	text-align: center;
	font-family: 'Lora', serif;
	line-height: 1.0;
	margin-bottom: 10px;
	font-size: 18px;	
}
.footeraddress {
	text-align: center;
	font-size: 12px;
	line-height: 1.4;	
}
.footeraddress a { color: #000;}
/* copyright */
.copyright {
	font-size: 10px;
	text-align: center;
	background-color: #000;
	padding: 20px;
	color: #FFF;
}


/* pageTop */
#pageTop {
	width: 53px;
	height: 53px;
	z-index: 9999999;
	position: absolute;
	bottom: 140px;
	left: 50%;
	margin-left: -26.5px;
	text-align: center;

}

#pageTop a{
	width: 53px;
	height: 53px;
	z-index: 9998;
	background-color: #FFF;
	border: 2px solid #fd7202;
	border-radius: 50%;
	display: block;
	color: #fd7202;
	font-size: 10px;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	box-sizing: border-box;
	padding-top: 28px;
	text-align: center;
	margin: 0 auto;
	position:relative;
	
}

#pageTop a:before{
	width: 29px;
	height: 19px;
	position: absolute;
	background-image: url(images/pagetop.png);
	background-repeat: no-repeat;
	background-position: left top;
	content: "";
	top: 15px;
	left: 0;
	right: 0;
	margin: 0 auto;
	transition: top .5s;
}


/* [5]Container
----------------------------------------------------------------------------------------- */

#container {
	width: 100%;
	box-sizing: border-box;
	padding: 0;
	position: relative;
}
.btn { text-align: center; margin: 40px auto 30px; } 
.btn li {
	/* display: inline-block;
	margin: 0 10px; */
	box-sizing: border-box;
	margin-bottom: 5px;	
}
.btn a {
	font-size: 20px;
	display: inline-block;
	box-sizing: border-box;
	padding: 18px 30px 18px 20px;
	margin: 0 auto 0;
	text-align: center;
	transition: background-color .5s;
	cursor: pointer;
	color: #fff;
	background-color: #000;
	border-radius: 80px;
	position: relative;
	font-weight: 600;
}
.btn a:after {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 50%;
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
	width: 30px;
	height: 30px;
	content: "";
	margin: auto 0 auto 100px;
}

.btn .shopBtn a:after { background-image: url(images/icon-btn001.png); }
.btn .telBtn a:after { background-image: url(images/icon-btn002.png); margin: auto 0 auto 90px; }

.btn.btn2 li a { width: 300px;}
.btn.btn2 li:nth-of-type(3) { display: none; }
/* layout */
.section001 { position: relative; background-color: #fd7202; }
.sec001Box {
	width: 100%;
	padding: 100px 0px 40px;
	box-sizing: border-box;
	position: relative;
	margin: 0 auto;
	max-width: 1010px;
}

.sectionImg001,
.sec003TtlImg {
	position: absolute;
	bottom: 0;
	width: 100%;
}

.sec001Ttl {
	border-top: 4px solid #FFF;
	border-bottom: 4px solid #FFF;
	padding: 20px 0 20px;
	box-sizing: border-box;
	position: relative;
	margin: 0 auto 40px;
	width: 94%;
}
.sec001Ttl div{
	position: relative;
	width: 100%;
}
.sec001Ttl:after {
	position: absolute;
	background-image: url(images/icon-fukidashi002.png);
	background-repeat: no-repeat;
	background-position: left top;
	width: 46px;
	height: 46px;
	bottom: -46px;
	left: 0;
	right: 0;
	margin: 0 auto;
	content:"";
}
.sec001Price {
	max-width: 304px;
	position: relative;
	margin: 0 auto;
	color: #FFF;
	
}

.sec001Price li p.priceSabun {
padding-right: 0px;
}

.sec001Ttl div { max-width: 304px; margin: 0 auto; position: relative; /* height: 127px; */ }
.sec001Ttl h3 { line-height: 1.0;  /* position: absolute; max-width: 635px; left: 50%; margin-left: -415px; */ }

.sec001Ttl h3.paternB1 {
 /* line-height: 0.3;
 position: absolute; 
 width:824px;
 left: 50%;
 margin-left: -412px;
 font-size: 0; */
 letter-spacing: -0.4em;
 top: -10px;	
}

.sec001Ttl h3.paternB1 img { width: 60px; height: 60px; display: inline-block; padding-top: 10px;}

.sec001sTtl_1 {
	display: inline-block;
	color: #FFF;
	font-size: 17px;
	position: relative;
	padding: 0 10px;
	box-sizing: border-box;
	font-weight: 600;
	

}
.sec001sTtl_1:after,
.sec001sTtl_1:before {
	position: absolute;
	color: #FFF;
	font-size: 18px;	
}

.sec001sTtl_1:after {
	bottom: 0;
	right: -10px;
	content:"』";
}

.sec001sTtl_1:before {
	top: 0;
	left: -10px;
	content:"『";
}

.sec001sTtl_1 span {
	display: none;
	
}
.sec001sTtl_2 {
	display: block;
	color: #ffff00;
	font-size: 40px;
	font-weight: bold;
	font-family: 'Lora', serif;
}

.paternTime {
	display: inline-block;
	letter-spacing: normal;
	color: #ffff00;
	font-size: 23px;
	padding: 0;
	box-sizing: border-box;
	font-weight: 600;
	line-height: 1.0;
}
.sec001sTtl_4,
.sec001sTtl_5 {
	/* display: inline-block; */
	letter-spacing: normal;
	color: #ffff00;
	font-size: 55px;
	box-sizing: border-box;
	font-weight: 600;
}
.sec001sTtl_4 { font-size: 68px;}

.sec001Ttl dl {
	position: absolute;
	bottom: 0px;
	right:0;
	width: 90px;
	/* text-align: center;
	position: relative;
	width: 183px;
	margin: 0 auto;	*/
}
.sec001Ttl dt {
	/* color: #FFF;
	position: absolute;
	right: 5px;
	top: 30px;
	font-size: 16px;*/
	color: #ffff00;
	font-size: 90px;
	font-weight: bold;
	float: left;
	line-height: 0.6;
}
.sec001Ttl dd {
	color: #ffff00;
	line-height: 1.0;
	font-size: 35px;
	font-weight: bold;
	float: left;
	/* position: absolute;
	top: -25px; */
	writing-mode: vertical-rl;
	transform: rotate(180deg);
}
.sec001Ttl dd span{
	display: inline-block;
	font-size: 120px;
	font-weight: bold;
}
.sec001Hukd {
	position: absolute;
	top: 40px;
	right: 0px;
}
.sec001Hukd p{
	background-color: #FFF;
	width: 150px;
	height: 70px;
	border-radius: 50%;
	position:relative;
	text-align: center;
	transform: rotate(5deg);
	color: #fd7202;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.1;
	padding-top: 25px;
	box-sizing: border-box;
}

.sec001Hukd.paternB2 {
	right: inherit;
	left: 50%;
	margin-left: -10px;
}
.sec001Hukd.paternB2 p { font-size: 25px; padding-top: 20px; }

.sec001Hukd p:before{
	position: absolute;
	background-image: url(images/icon-fukidashi001.png);
	background-repeat: no-repeat;
	background-position: left top;
	width: 27px;
	height: 28px;
	content: "";
	bottom: -15px;
	left: 30px;	
}
.sec001Hukd p span {
	display: block;
	font-size: 16px;
	color: #000;
}

.sec001Price li {
	text-shadow: #FFF 2px 2px 0px;
	text-align: center;
}

.sec001Price li:nth-of-type(1) {
	/* padding-right: 20px;
	border-right: 4px dotted #FFF; */
	border-bottom: 4px dotted #FFF;
	padding-bottom: 10px; 
	color: #fb165c; 
}
.sec001Price li:nth-of-type(2) {
	/* padding-left: 20px; */
	padding-top: 10px;
	color: #0581ff;
}

.sec001Price li dt {
	float: left;
	text-align: center;
	font-size: 60px;
	line-height: 1.0;
	font-weight: bold;
	position:relative;
	margin-top: 5px;
	margin-left: 5px;
}
.sec001Price li dt span{
	display: block;
	font-size: 10px;
	font-weight: normal;
	padding: 0 0 3px;
	box-sizing: border-box;
	position:relative;	
}

.sec001Price li:nth-of-type(1) dt span{
	border-bottom: 2px solid #fb165c;
}

.sec001Price li:nth-of-type(2) dt span{
	border-bottom: 2px solid #0581ff;
}

.sec001Price li dt span:before{
	position:absolute;
	background-color: rgba(255,255,255,1.0);
	height: 2px;
	width: 100%;
	bottom: -4px;
	left: 0;
	right: 0;
	content: "";
}

.sec001Price li dt img { width: 40px; }
.sec001Price li dd {
	float: left;
	font-family: 'Lora', serif;
	font-size: 130px;
	line-height: 0.8;
	font-weight: bold;
	letter-spacing: -0.5px;
	margin-left: 5px;
}
.sec001Price li dd span { font-size: 30px;}

/* sec002 */
.sec002TtlBox {
	max-width: 1050px;
	margin: 0 auto 0;
	background-image: url(images/bg-movie.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	padding-top: 120px;
	padding-bottom: 170px;
	box-sizing: border-box;
	position:relative;	
}

.sec002Hukidashi {
	color: #FFF;
	text-align: center;
	position: absolute;
	top: 60px;
	left: 5px;
}
.sec002Hukidashi p{
	font-size: 18px;
	line-height: 1.2;
	font-weight: bold;
	position: relative;
	transform: rotate(-10deg);
}
.sec002Hukidashi p span{
	display: block;
	font-size: 25px;
}

.sec002Hukidashi p:after,
.sec002Hukidashi p:before {
	position: absolute;
	top: 5px;
	content: "";
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
	width: 54.153846px;
	height: 80px;
}

.sec002Hukidashi p:after { background-image: url(images/icon-fukiiRi001.png); right: -50px; }
.sec002Hukidashi p:before { background-image: url(images/icon-fukiiLf001.png); left: -40px; }

.sec002Ttl {
	color: #FFF;
	text-align: center;
	position: absolute;
	padding-bottom: 0px;
	top: -220px;
	left: 50%;
	width: 300px;
	margin-left: -150px;
	z-index: 99999;		
}

.sec002Ttl:after {
	position: absolute;
	background-image: url(images/scroll.png);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
	width: 45px;
	height: 46.058823px;
	left: 0;
	right: 0;
	margin: 0 auto;
	bottom: -50px;
	content: "";	
}
.sec002Ttl h3{
	font-size: 30px;
	font-weight: bold;
	line-height: 1.1;
	margin-bottom: 20px;
}

.sec002Ttl p{
	font-size: 17px;
	font-weight: bold;
}

.movie {
	position: relative;
	overflow: hidden;
	padding-top: 66.666%;
	width: 100%;
}

.movie span{
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: 80px;
	height: 80px;
	margin-left: -40px;
	margin-top: -40px;
	z-index: 999999;
	display: none;
}

.movie span.no {
	display: none;
}


/* section002 */
.section002 { background-color: #000; color: #FFF; width: 100%; position: relative; }
.section002 li { position: relative; width: 100%; /* height: 550px; */ overflow: hidden; padding-bottom: 30px; }
.section002 figure { position: relative; width: 100%; padding-top: 41.41566%; overflow: hidden; margin-bottom: 20px; }
.section002 li:nth-of-type(1) figure,
.section002 li:nth-of-type(3) figure { right: 0; }
.section002 li:nth-of-type(2) figure { left: 0; }
.section002 li p.characteristicadd {
	position: absolute;
	bottom: -15px;
	width: 100px;
	height: 100px;
	border-radius: 50%;
	border: 2px solid #FFF;
	transform: rotate(-10deg);
	font-size: 10px;
	font-weight: bold;
	text-align: center;
	line-height: 1.1;
	box-sizing: border-box;
	padding-top: 10px;
	opacity:0.5; filter: alpha(opacity=50); -ms-filter: "alpha( opacity=50 )";
}
.section002 p.characteristicadd span{
	font-size: 50px;
	display: block;
}
.section002 li:nth-of-type(1) p.characteristicadd,
.section002 li:nth-of-type(3) p.characteristicadd { left: -15px; }
.section002 li:nth-of-type(2) p.characteristicadd { right: -15px; transform: rotate(10deg);}
.section002 li h4 {
	color: #fd7202;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.3;
	margin-bottom: 30px;
	border-bottom: 4px solid #fd7202;
	position: relative;
	display: inline-block;
	padding: 0 20px 10px;
	box-sizing: border-box;
}
.section002 li h4:after {
	position: absolute;
	background-image: url(images/icon-fukidashi003.png);
	background-repeat: no-repeat;
	background-position: left top;
	width: 25px;
	height: 27px;
	content: "";
	left: 0;
	right: 0;
	bottom: -27px;
	margin: 0 auto;
}
.section002 li div.section002Box {
	/*position: absolute;
	width: 40%;
	height: 550px;
	top: 0; */
	position:relative;
}

.section002 li div.section002Box div {
	/* width: 400px;
	height: 320px;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -160px;
	margin-left: -200px; */
	text-align: center;
}

.section002 li:nth-of-type(1) div.section002Box div {
	/* height: 230px;
	margin-top: -115px; */
}
.section002 li:nth-of-type(2) div.section002Box div {
	/* height: 280px;
	margin-top: -140px; */
}

.section002 li:nth-of-type(1) div.section002Box,
.section002 li:nth-of-type(3) div.section002Box { left: 0; }
.section002 li:nth-of-type(2) div.section002Box { right: 0; }
.section002 li div.section002Box p { text-align: center; font-size: 13px; text-shadow:rgba(0,0,0,0.5) 1px 1px 10px, rgba(0,0,0,0.5) -1px 1px 10px, rgba(0,0,0,0.5) 1px -1px 10px, rgba(0,0,0,0.5) -1px -1px 10px;}

.section002 li dt { text-align: center; font-size: 20px; font-weight: bold; margin-bottom: 10px; }
.section002 li dd { text-align: center; font-size: 13px; }

.sec003TtlBox {
	background-color: #fd7202;
	position: relative;
	overflow: hidden;
	height: 460px;
	top: 0;
	padding-top: 30px;
	color: #FFF;
}

.sec003TtlBox .btn { margin: 0 auto 60px; padding: 0 10px; box-sizing: border-box; }
.section005 .btn { margin: 0 auto; }

/*.sec003TtlBox .btn a,
.section005 .btn a { width: 100%; max-width: 840px; margin: 0 auto; }
.sec003TtlBox .btn a:after {background-image: url(images/icon-btn002.png); margin: auto 0 auto 90px; }
.section005 .btn a:after {background-image: url(images/icon-btn001.png); } */
.sec003TtlBox h3 {
	position: relative;
	text-align: center;
	font-size: 30px;
	font-weight: bold;
	line-height: 1.1;	
}

.sec003TtlBox h3 span {
	position: absolute;
	top: -35px;
	left: 50%;
	margin-left: -150px;
	font-size: 18px;
	border-bottom: 4px solid #FFF;
	transform: rotate(-10deg);
	display: inline-block;
	padding-bottom: 2px;
	box-sizing: border-box;	
}
.sec003TtlBox h3:after {
	position: absolute;
	background-image: url(images/scroll.png);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
	width: 45px;
	height: 46.058823px;
	left: 0;
	right: 0;
	bottom: -60px;
	margin: 0 auto;
	content: "";	
}


.section003 { background-color: #000; color: #FFF; }
.sec003SubTtl { width: 100%; position: relative; height:250px; } 
.sec003SubTxt { width: 100%; padding: 0 20px; box-sizing:  border-box;}
.sec003SubTxt dt { /* width: 50%; float: left; */ position:relative; padding: 30px 30px 0; box-sizing: border-box;}
.sec003SubTxt dd { /* width: 50%; float: left; */ padding: 10px 30px 30px; box-sizing: border-box; }

.sec003SubTxt dl:nth-of-type(2) dt { /* float: right; */ }
.sec003SubTxt dl:nth-of-type(2) dd { /* float: right; */ }
.section003 li:nth-of-type(2) .sec003SubTtl{ /* float: right; */ }
.section003 li:nth-of-type(2) .sec003SubTxt{ /* float: right; */ }
.section003 li:nth-of-type(2) .sec003SubTxt dl:nth-of-type(1) dt { /* float: right; */ }
.section003 li:nth-of-type(2) .sec003SubTxt dl:nth-of-type(1) dd { /* float: right; */ }
.section003 li:nth-of-type(2) .sec003SubTxt dl:nth-of-type(2) dt { /* float: left; */ }
.section003 li:nth-of-type(2) .sec003SubTxt dl:nth-of-type(2) dd { /* float: left; */ }
.sec003SubTxt dt figure{ position: relative; width: 100%; padding-top: 66.66%; overflow: hidden; }
.sec003SubTtl div {
	position: absolute;
	top: 50%;
	left: 50%;
	margin-left: -90px;
	margin-top: -90px;
	width: 180px;
	height: 180px;
	border: 4px solid #fff;
	background-color: rgba(0,0,0,0.15);
	text-align: center;
}

.sec003Txt li:nth-of-type(1) .sec003SubTtl div,
.sec003Txt li:nth-of-type(2) .sec003SubTtl div {
	border-bottom: none;
}

.sec003Txt li:nth-of-type(1) .sec003SubTtl div:after,
.sec003Txt li:nth-of-type(2) .sec003SubTtl div:after {
	position: absolute;
	bottom: -30px;
	left: 0;
	background-image: url(images/img-sphukidashi.png);
	background-repeat: no-repeat;
	background-position: top left;
	width: 180px;
	height: 32px;
	content: "";
}

.sec003SubTtl div h4 {
	color: #fd7202;
	font-size: 30px;
	font-weight: bold;
	position:relative;
	margin-bottom: 20px;
	padding-top: 30px;	
}

.sec003SubTtl div h4 span{
	font-size:12px;
	font-family: 'Lora', serif;
	display: block;
	line-height: 1.0;
}

.sec003SubTtl div h4:after {
	background-color: #fd7202;
	height: 4px;
	width: 80px;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	content: "";
}

.sec003SubTtl div p {
	color: #FFF;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.2;
}

.sec003SubTxt dd b { display: inline-block; margin-bottom: 10px; font-size: 16px; }

/* sec004 */
.secBox004 {
	padding: 80px 0px 40px;
	box-sizing: border-box;
	max-width: 840px;
	width: 94%;
	margin: 0 auto 80px;
	border-bottom: 2px solid #fd7202;
}
.secBox004 h3 {
	color: #fd7202;
	font-size: 40px;
	text-align: center;
	font-weight: bold;
	position: relative;	
}
.secBox004 h3 span {
	background-color: #fff;
	display: inline-block;

	padding: 0 10px;
	box-sizing: border-box;
	position:relative;
}
.secBox004 h3:before {
	background-color: #fd7202;
	height: 2px;
	width: 100%;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto 0;
	content: "";
}
.secBox004 p {
	color: #000;
	font-size: 16px;
	text-align: center;
	line-height: 1.1;
	font-weight: bold;	
}
.secBox004 ul { margin-top: 30px; }
.secBox004 ul li { margin-top: 10px; }
.sec004ReviewImg {
	/* float: left;
	width: 122px;
	margin-right: 30px; */
	text-align: center;
	margin-bottom: 10px;
}
.sec004ReviewImg p { font-size: 12px; }
.sec004ReviewTxt {
	/* float: left;
	width: calc(100% - 152px); */
	box-sizing: border-box;
	padding: 20px;
	color: #fff;
	position:relative;
}
.secBox004 ul li:nth-of-type(2n+1) .sec004ReviewTxt {
	background-color: #fea45b;	
}
.secBox004 ul li:nth-of-type(2n) .sec004ReviewTxt {
	background-color: #fd7202;	
}
.sec004ReviewTxt:after {
	position: absolute;
	top: -32px;
	left: 50%;
	margin-left: -100px;
	content: "";
	width: 51px;
	height: 32px;
	background-repeat: no-repeat;
	background-position: left top;
	transform: rotate(90deg);
	
}

.secBox004 ul li:nth-of-type(2n+1) .sec004ReviewTxt:after {
	background-image: url(images/icon-fukidashi004.png);
}
.secBox004 ul li:nth-of-type(2n) .sec004ReviewTxt:after {
	background-image: url(images/icon-fukidashi005.png);	
}

.secBox004 .more ul { margin-top: 0; }
.secBox004 .more ul li:nth-of-type(2n+1) .sec004ReviewTxt {
	background-color: #fd7202;		
}
.secBox004 .more ul li:nth-of-type(2n) .sec004ReviewTxt {
	background-color: #fea45b;	
}

.secBox004 .more ul li:nth-of-type(2n+1) .sec004ReviewTxt:after {
	background-image: url(images/icon-fukidashi005.png);
}
.secBox004 .more ul li:nth-of-type(2n) .sec004ReviewTxt:after {
	background-image: url(images/icon-fukidashi004.png);	
}

.sec004ReviewTxt dt {
	font-size: 18px;
	font-weight: bold;
	border-bottom: 4px solid #FFF;
	padding-bottom: 10px;
	margin-bottom: 10px;	
}
.secBox004 .open,
.secBox004 .close{
	margin-bottom: 0;
}
.secBox004 .open a,
.secBox004 .close a{
	width: 300px;
	position:relative;
}

.secBox004 .open a:after,
.secBox004 .close a:after{
	position: absolute;
	top: 0;
	margin: auto 0 auto 40px;
	left: 50%;
	font-size: 28px;
	font-weight: bold;
	line-height:1.0;
}

.secBox004 .open a:after {
	content: "+";
}
.secBox004 .close a:after {
	content: "－";		
}

/* sec005 */
.section005 {
	background-color: #fdf0d2;
	padding: 0 0 80px;
	box-sizing: border-box;
}

.sec005Ttl {
	background-color: #449d7c;
	color: #FFF;
	font-weight: bold;
	padding: 40px 0;
	box-sizing: border-box;
	position: relative;
	text-align: center;
}
.sec005Ttl:after {
	background-image: url(images/icon-fukidashi006.png);
	background-position: left top;
	background-repeat: no-repeat;
	width: 47px;
	height: 40px;
	position: absolute;
	bottom: -40px;
	left: 0;
	right: 0;
	margin: 0 auto;
	content:"";
}

.sec005Ttl h3 {
	font-size: 40px;
	font-weight: bold;
	line-height: 1.2;
}
.sec005Ttl h3 span{
	display: block;
	font-size: 20px;
	font-weight: bold;
}

.sec005Box {
	width: 100%;
	padding: 40px 10px 0;
	box-sizing: border-box;
	position: relative;
	margin: 0 auto;
	max-width: 1325px;
}
.sec005Box h4 {
	text-align: center;
	font-size: 30px;
	font-weight: bold;
}
.sec005Box h4 span {
	color: #449d7c;
	font-size: 45px;
	position:relative;
	display: inline-block;	
}
.sec005Box h4 span:before,
.sec005Box h4 span:after {
	position: absolute;
	top: 0;
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
	width: 20px;
	height: 21.632653px;
	content: "";	
}
.sec005Box h4 span:before {
	background-image: url(images/icon-numLf.png);
	left: -15px;	
}

.sec005Box h4 span:after {
	background-image: url(images/icon-numRi.png);
	right: -15px;	
}

.sec005SubTxt { text-align: center; color: #FFF; font-size: 18px; font-weight: bold; margin-bottom: 30px; }
.sec005SubTxt span {
	display: inline-block;
	background-color: #449d7c;
	border-radius: 80px;
	padding: 10px 20px;
	box-sizing: border-box;	
}

.sec005SubBox { margin-top: 60px; }

.sec005SubBox,
.sec005Detail {
	position: relative;	
}
.sec005SubBox.box005-3 { margin-bottom: 30px; }
.sec005SubBox dl.sec005plan { position: relative; }
.sec005SubBox dl.sec005plan dt {
	position: absolute;
	top: 35px;
	width: 70px;
	height: 70px;
	background-color: #449d7c;
	border-radius: 50%;
	z-index: 999999;
	color: #FFF;
	line-height: 1.0;
	font-size: 25px;
	font-weight: bold;
	text-align: center;
	box-sizing: border-box;
	padding-top: 15px;
}
.sec005SubBox.box005-2 dl.sec005plan dt {top: 10px;}
.sec005SubBox dl.sec005plan dt span {
	display: block;
	font-size: 10px;
}

.sec005SubBox dl.sec005plan dt:after {
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
	width: 20px;
	height: 20px;
	position: absolute;
	bottom: 0;
	content: "";	
}
.sec005SubBox.box005-1 dl.sec005plan dt:after,
.sec005SubBox.box005-2 dl.sec005plan dt:after {
	background-image: url(images/icon-fukidashi007.png);
	right: 0;	
}


.sec005SubBox.box005-1 dl.sec005plan dt,
.sec005SubBox.box005-2 dl.sec005plan dt { left: -20px; }

.sec005SubBox div.sec005plan p {
	text-align: center;
	font-size: 25px;
	font-weight: bold;
}
.sec005SubBox div.sec005plan p span {display: inline-block; position:relative; line-height: 1.0; }
.sec005SubBox.box005-1 dl.sec005plan dd { color: #5c0585;}
.sec005SubBox.box005-2 div.sec005plan p { color: #b68103;}
.sec005SubBox div.sec005plan p span:after,
.sec005SubBox div.sec005plan p span:before {
	position:absolute;
	bottom: 0;
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
	width: 22.75862px;
	height: 40px;
	content: "";
}

.sec005SubBox.box005-1 dl.sec005plan dd span:after { background-image: url(images/icon-fukiiRi002.png); right: -20px;}
.sec005SubBox.box005-1 dl.sec005plan dd span:before { background-image: url(images/icon-fukiiLf002.png); left: -20px;}
.sec005SubBox.box005-2 div.sec005plan p span:after { background-image: url(images/icon-fukiiRi003.png); right: -20px;}
.sec005SubBox.box005-2 div.sec005plan p span:before { background-image: url(images/icon-fukiiLf003.png); left: -20px;}

.sec005Detail figure {
	position: relative;
	width: 100%;
	overflow: hidden;
	height: 454px;
	border-radius: 10px;	
}

.sec005Detail.paternB3 figure {
	position: relative;
	width: 100%;
	overflow: hidden;
	height: 1144px;
	border-radius: 10px;	
}
.sec005Detail div {
	position: absolute;
	top: 0;
	left: 0;
	color: #FFF;
	width: 100%;
	padding: 20px 20px 0;
	box-sizing: border-box;	
}
.sec005SubTxt001 {
	margin: 10px auto 50px;
	font-size: 10px;
	text-align: left;	
}

.sec005Detail div h5 {
	font-family: 'Lora', serif;
	font-size: 35px;
	font-weight: bold;
	float: left;
	line-height: 1.1;
}
.sec005Detail div p {
	float: right;
	font-weight: bold;
	line-height: 1.0;
	font-size: 18px;
	text-align: center;
	padding-top: 5px;
	padding-bottom: 5px;
	border-left: 1px solid #FFF;
	padding-left: 5px;
}

.sec005Detail div p.priceSabun2 {
	float: none;
	font-weight: bold;
	line-height: 1.0;
	font-size:13px;
	color: #FFF;
	text-align: center;
	padding: 5px 0 0 10px;
	border: none;
	font-family: 'Noto Sans JP', sans-serif;
}
.sec005Detail div p.priceSabun3 {
	float: none;
	font-weight: bold;
	line-height: 1.0;
	font-size:13px;
	color: #FFF;
	text-align: center;
	padding: 5px 0 0 50px;
	border: none;
	font-family: 'Noto Sans JP', sans-serif;
}

.sec005Detail div p img{
	width: 60px;
	padding-top: 8px;
}

.sec005Detail div p span{
	font-size: 45px;
	display: block;
}

.sec005Detail div ul { clear:both; }
.sec005Detail div ul li { /* float: left; width: 50%; */ padding: 20px 0 0; box-sizing: border-box; text-align: center; font-weight: bold; position: relative; }
.sec005Detail div ul li:nth-of-type(1) { /* border-right: 4px dotted #FFF; padding-right: 20px; */ border-bottom: 4px dotted #FFF; padding-bottom: 10px; color: #fb165c; }
.sec005Detail div ul li:nth-of-type(2) { /* padding-left: 20px; */ color: #0581ff; }
.sec005Detail div ul li dt{
	background-color: #FFF;
	padding: 5px;
	box-sizing: border-box;
	border-radius: 10px;
	font-size: 18px;
	text-align: center;
}
.sec005Detail div ul li dd { font-size: 40px; line-height: 1.0; text-shadow: rgba(0,0,0,0.1) 1px 1px 1px; }
.sec005Detail div ul li dd span{ font-size: 90px; font-family: 'Lora', serif;}
.sec005Detail div ul li dd span.sec005subdot { font-size: 40px; }

.sec005Detail.paternB3 div ul li dd {width: 260px; margin: 0 auto;}

.sec005Detail.paternB3 div ul li dd { font-size: 30px; margin: 15px auto; line-height: 1.0; text-shadow: rgba(0,0,0,0.1) 1px 1px 1px; text-align: right; }
.sec005Detail.paternB3 div ul li dd span{ font-size: 70px; font-family: 'Lora', serif;}
.sec005Detail.paternB3 div ul li dd span.sec005subdot { font-size: 20px; }

.sec005Detail.paternB3 div ul li dd:nth-of-type(5) { margin-top: 40px; }

.sec005Detail.paternB3 div ul li dd p {
float: left;
display:  inline-block;
background-color: #FFF;
text-align: center;
font-size: 20px;
border-radius: 50%;
line-height: 1.0;
font-weight: bold;
width: 50px;
height: 50px;
padding-top: 10px;
box-sizing: border-box;
font-family: 'Noto Sans JP', sans-serif;
/* position: relative;
top: -5px;
color: #000; */
text-shadow: none;
margin-top: 10px;
}
.sec005Detail.paternB3 div ul li dd p span {
font-size: 10px;
display: block;
font-family: 'Noto Sans JP', sans-serif;
}

.sec005Detail div ul li dt span{
	position:relative;
	display: inline-block;	
}
.sec005Detail div ul li dt span:before{
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto 0;
	left: -30px;
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
	width: 16.666px;
	height: 30px;
	content: "";
}
.sec005Detail div ul li:nth-of-type(1) dt span:before{
	background-image: url(images/icon-women003.png);
}
.sec005Detail div ul li:nth-of-type(2) dt span:before{
	background-image: url(images/icon-men003.png);
}
.box005-2 .sec005Detail div li img {
	width: 60px;
	float: left;
	margin-top: 10px;
}
.box005-2 .sec005Detail div dl {
	width: calc(100% - 60px);
	float: left;
}
.box005-2 .sec005Detail a{
/* height: 300px; */
display:  block;
}

.box005-2 .sec005Detail a{

width: 100%;
/* height: 473px; */
}
.box005-2 .sec005Detail div h5 {
	float: none;
	text-align: center;
	line-height: 1.0;
}
.sec005Detail div.secticketL { /* float: left; width: 88%; */ position: relative; 
width: 100%;
background-image: url("images/bg-sec004Sp.png");
background-repeat: no-repeat;
background-position: left top;
background-size: cover;
}
.secticketR {
/* float: right;
width: 12%;
padding-top: 35.848101%;
color: #FFF;
margin: auto;
writing-mode: vertical-rl; */
line-height: 1.0;
/* transform: rotate(180deg); */
font-size: 40px;
font-weight:  bold;
text-align: center;
position: relative;
box-sizing:  border-box;
color: #FFF;
width: 100%;
padding-top: 26.5%;
background-image: url("images/bg-sec004Sp02.png");
background-repeat: no-repeat;
background-position: left top;
background-size: contain;
}
.secticketR span.ticketsubtxt {
position: absolute;
width: 260px;
height: 60px;
top: 50%;
margin-top: -30px;
left: 50%;
margin-left: -130px;
display: block;
 padding: 10px;
box-sizing: border-box;
}
.secticketR span.ticketsubtxt02 { display:  block; font-size: 10px; font-weight:  normal; letter-spacing: 0.5px;}


.sec005Detail div p.timeOver {
position: absolute;
bottom: 110px;
left: 0px;
right: 0;
margin: 0 auto;
font-size: 20px;
font-weight: bold;
width: calc(100% - 40px);
float: none;
}
.sec005Detail div li:nth-of-type(1) p.timeOver {
position: absolute;
bottom: 100px;
}

.sec005Detail div p.timeOver span {
background-color: #FFF;
border-radius: 80px;
display: inline-block;
padding: 0 20px;
width: 80px;
color: #449d7c;
font-size: 20px;
}

.sec005Detail div p.timeOver:before {
position: absolute;
left: 0;
top: 0;
bottom: 0;
margin: auto 0;
width: calc((100% - 120px)/2);
height: 2px;
background-color: #fff;
content: "";
}
.sec005Detail div p.timeOver:after {
position: absolute;
right: 0;
top: 0;
bottom: 0;
margin: auto 0;
width: calc((100% - 120px)/2);
height: 2px;
background-color: #fff;
content: "";
}

.lity-container{
	z-index:99999999992;
	position:relative;
	text-align:left;
	vertical-align:middle;
	display:inline-block;
	white-space:normal;
	max-width:100%;
	max-height:100%;
	width: 94%;
	/* height: 90vh; */
	outline:none !important;
	opacity:1;
	-webkit-transition:opacity .2s ease;
	-o-transition:opacity .2s ease;
	transition:opacity .2s ease;
}

.ggmap {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
 
.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}


.swiper-wrapper { padding: 0; box-sizing: border-box; margin-top: 30px; }
.swiper-wrapper li { padding: 0; box-sizing: border-box; }
.swiper-wrapper li div {
	position: relative;
	width: 100%;
	background-color: rgba(255,255,255,0.8);	
}

.swiper-wrapper li figure {
	position: relative;
	padding-top: 100%;
	width: 100%;
	overflow: hidden;	
}

.swiper-wrapper li figure img {
	position: absolute;
	top: 0%;
	left: 0%;
	object-fit: cover;
  	width: 100%;
	height: 100%;
  	box-sizing: border-box;
    -moz-transition: -moz-transform 0.5s linear;
    -webkit-transition: -webkit-transform 0.5s linear;
    -o-transition: -o-transform 0.5s linear;
    -ms-transition: -ms-transform 0.5s linear;
    transition: transform 0.5s linear;
    -webkit-transform: scale(1.0);
    -moz-transform: scale(1.0);
    -o-transform: scale(1.0);
    -ms-transform: scale(1.0);
    transform: scale(1.0);
}

.swiper-wrapper li a:hover figure img {
    -webkit-transform: scale(1.03);
    -moz-transform: scale(1.03);
    -o-transform: scale(1.03);
    -ms-transform: scale(1.03);
    transform: scale(1.03);
}

.swiper-wrapper li figure span{
	position: absolute;
	font-size: 18px;
	bottom: 0px;
	left: 3px;
	color: rgba(253,114,2,0.7);
	width: 20px;
	height: 100%;
	padding: 0;
	box-sizing: border-box;
	writing-mode: vertical-rl;
	content: "";
	font-weight: bold;
	text-align: right;
}

.swiper-wrapper li a:hover dd {
	background-color: #333;
}


.swiper-wrapper li a .hoverBg {
	/* background-color: rgba(0,0,0,0.65);
	background-color: rgba(239,122,0,0.8); */
	background-color: rgba(255,255,255,0.4);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transform-origin: right top;
	transform: scale(1, 1);
	transition: transform .3s;	
}

.swiper-wrapper li a:hover .hoverBg {
	transform-origin: left top;
	transform: scale(0, 1);
}

.swiper-button-prev,
.swiper-button-next {
	position: absolute;
	top: 50%;
	margin-top: -15.5px;
	width: 21px;
	height: 31px;
	background-repeat: no-repeat;
	z-index: 99999;
	cursor: pointer;
}

.swiper-button-prev {
	left: 0px;
	background-image: url(images/prev.png);	
}
.swiper-button-next {
	right: 0px;
	background-image: url(images/next.png);	
}

.caladetail { position: relative; padding: 15px; box-sizing: border-box; width: 100%; max-width: 680px; background-color: rgba(255,255,255,0.98); }

.caladetailImg {
	position: relative;
	width: 80px;
	height: 80px;
	overflow: hidden;
	float:  left;
	margin-right: 10px;
}

.caladetailTxt {
	/* position: absolute;
	bottom: 60px;
	right: 40px;
	width: 280px; */
	float: right;
	width: calc(100% - 90px);
}
.caladetailTxt dl { width: 100%;}
.caladetailTxt dt{
	font-size: 18px;
	margin-bottom: 10px;
	font-weight: bold;
	line-height: 1.1;	
}
.caladetailTxt dt span{
	font-size: 11px;
	display: block;
	color: #959495;
	font-weight: 200;
	letter-spacing: 1px;	
}
.caladetailTxt dd{
	font-size: 13px;
	line-height:1.4;
}

.caladetailTxt dd br{
display: none;
}
.lity-close{
	right:5px;
	top:5px;
}
/* ticket */
.ticketBtn {/* max-width: 300px; */ width: 94%; position: relative; margin: 30px auto;}

.section003 .ticketBtn{ margin: 0 auto 70px;}
.section004 .ticketBtn{ margin: 0 auto 80px;}

.ticketBtn a{
/* background-image: url("images/bg-sec004Sp.png");
background-repeat: no-repeat;
background-position:  left top;
background-size: contain; */
display:  block;
width: 100%;
/* height: 185px;*/
}

.ticketBtn li{/* float: left; */box-sizing:  border-box; text-align: center;}
.ticketBtn li:nth-of-type(1){/* float: left; width: 87%;*/
background-image: url("images/bg-sec004Sp.png");
background-repeat: no-repeat;
background-position:  left top;
background-size: cover;
width: 100%;
text-align: center;
padding-bottom: 1px;
box-sizing:  border-box;
}
.ticketBtn li:nth-of-type(2){
background-image: url("images/bg-sec004Sp02.png");
background-repeat: no-repeat;
background-position:  left top;
background-size: contain;
width: 100%;
padding-top: 26.5%;
position: relative;
box-sizing:  border-box;
/* float: right; width: 13%;padding: 40px 35px 35px 20px; */ }


.ticketBtn dl { box-sizing:  border-box; /* width: 700px; */ margin:  2% auto; text-align: center; padding: 0 20px;}
.ticketBtn dt {
/* float: left; */
font-size:21px;
line-height: 1.0;
font-weight:  bold;
color: #000;
padding-top: 24px;
padding-bottom: 10px;
border-bottom: 1px solid #FFF;

}
.ticketBtn dt span{
color: #FFF;
font-family: 'Lora', serif;
font-size:25px;
box-sizing:  border-box;

}
.ticketBtn dd {
/* float: left; */
font-size: 47px;
line-height: 1.0;
font-weight:  bold;
color: #000;
box-sizing:  border-box;
padding-top: 10px;
padding-bottom: 0px;
}
.ticketBtn dd span{ color: #F00; }
.ticketBtn p {
color: #FFF;
line-height: 1.0;
/* writing-mode: vertical-rl;
line-height: 1.0;
transform: rotate(180deg); */
font-size: 30px;
position: absolute;
top:50%;
width: 150px;
height: 30px;
left: 50%;
margin-left:  -75px;
margin-top:  -10px;
font-weight:  bold;
}

/* common */
.sectionImg001 figure {
	position: relative;
	overflow: hidden;	
	width: 100%;
	padding-top: 80%;
}

.sec003TtlImg figure {
	position: relative;
	overflow: hidden;	
	width: 100%;
	padding-top: 30%;
}

.sectionImg001 figure img,
.sec003TtlImg figure img{
	object-position: 50% 60%;
  	font-family: 'object-fit: cover; object-position: 50% 60%;'	
}
.sectionImg001 img,
.movie video,
.movie figure img,
.section002 figure img,
.sec003TtlImg figure img,
.sec003SubTtl figure img,
.sec003SubTxt dt figure img,
.sec005Detail figure img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	object-fit: cover;
	width: 100%;
	height: 100%;	
}

.modal{ display: none; }





/* font 
--------------------------------------------- */
.f10 { font-size: 10px; }
.f11 { font-size: 11px; }
.f12 { font-size: 12px; }
.f13 { font-size: 13px; }
.f14 { font-size: 14px; }
.f15 { font-size: 15px; }
.f16 { font-size: 16px; }
.f17 { font-size: 17px; }
.f18 { font-size: 18px; }
.f19 { font-size: 19px; }
.f20 { font-size: 20px; }
.f25 { font-size: 25px; }
.f30 { font-size: 30px; }
.f35 { font-size: 35px; }
.f40 { font-size: 40px; }
.f45 { font-size: 45px; }
.f50 { font-size: 50px; }
.f55 { font-size: 55px; }
.f60 { font-size: 60px; }
.f65 { font-size: 65px; }
.f70 { font-size: 70px; }

.txtC,.alignC { text-align: center; }
.txtR,.alignR { text-align: right; }
.txtL,.alignL { text-align: left; }
.posiR { position: relative; }

.pb80 { padding: 80px 0;}
.pb80t { padding-top: 80px; padding-bottom: 0; }
.pb80b { padding-bottom: 80px; padding-top: 0; }
.pb60 { padding: 60px 0;}
.pb30 { padding: 30px 0;}
.mb30 { margin-bottom: 30px; }
.mb10 { margin-bottom: 10px; }

.green { background-color: #4fb088; }
.gryBorder { border: #dcdcdc;}
.greenBg { background-color: #dff1e9; }
.gryBg { background-color: #fafafa; }

.borderB { border-bottom: 1px dashed #dcdcdc;}
.borderR { border-right: 1px dashed #dcdcdc;}
.borderL { border-left: 1px dashed #dcdcdc;}


.fontB { font-weight: bold; }

.asap {font-family: 'Asap', sans-serif;}
.notosans {font-family: 'Noto Sans JP', sans-serif;}
.notoserif {font-family: 'Noto Serif JP', sans-serif;}
.patuaOne {font-family: 'Patua One', cursive;}
.lora {font-family: 'Lora', serif;}

.spno { display: none; }

/* slide */
#_btn {
  overflow: hidden;
  background-color: #000;
  height: 40px;
  width: 40px;
  position: fixed;
  top: 0px;
  right: 0px;
  z-index: 999999999;
}

#_btn_nav {
  float: left;
  cursor: pointer;
  position: relative;
}

#nav_open {
  position: absolute;
  z-index: 2;
  top: 0;
  height: 40px;
  width: 40px;
}

#nav_close {
  position: relative;
  z-index: 2;
  top: 0px;
  height: 40px;
  width: 40px;
}

#fadeLayer {
  position:absolute;
  top:0px;
  left:0px;
  width:100%;
  height:100%;
  background-color: rgba(0,0,0,0);
  visibility:hidden;
  z-index: 99999998;
  cursor: pointer;
}

#menu {
  	position: relative;
  	z-index: 0;
  	top: 13px;
	margin: 0 auto;
 	height: 20px;
	width: 20px;
    cursor: pointer;
}

#menu .bar {
    display: inline-block;
    width: 20px;
    height: 2px;
    background-color: #fff;
    position: absolute;
    left: 50%;
	margin-left: -10px;
    transition: .15s ease-in-out;
}

#bar01 {top: 0;}
#bar02 {top: 6px;}
#bar03 {top: 12px;}

.active #bar01 {
    top: 7.5px;
    transform: rotate(45deg);
}
.active #bar02 {width: 0;}
.active #bar03 {
    top: 7.5px;
    transform: rotate(-45deg);
}

@media all and (min-width: 480px) {
	br.pcno { display: none;}
	br.pcno.pcno2 { display: block;}
	br.spno.pcno2 { display: block;}
	.txtC.txtLsp { text-align: center; }
	.txtC.txtSL { text-align: left; }
.ticketBtn { max-width: 330px; width: 94%; position: relative; margin: 30px auto;}
.sec001Ttl div { max-width: 430px; margin: 0 auto; position: relative; /* height: 127px; */ }
.mainTtlBox {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 200px;
	height: 240px;
	margin-left: -100px; 
	margin-top: -120px;	
}

.mainTxt {
	width: 200px;
	height: 200px;
	background-image: url(images/mainTxt.png);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	display: block;
}

.topmainTtlBox {
	width: 400px;
	height: 260px;
	margin-left: -200px; 
	margin-top: -130px;	
}

.topmainLogo h1 a{
	width: 200px;
	height: 50px;
	margin:  0 auto;
}

.topmainLogo ul li { margin-bottom: 2px; }
.topmainLogo ul li { display:  inline-block;} 
.topmainLogo ul li a{padding: 10px;}

	.sec005SubBox dl.sec005plan dd span:after,
	.sec005SubBox dl.sec005plan dd span:before {
		bottom: -10px;
	}
	.sec005SubBox dl.sec005plan dt,
	.sec005SubBox.box005-2 dl.sec005plan dt {
		top: -5px;
		left: -25px;
	}
.sec002Ttl {
	color: #FFF;
	text-align: center;
	position: absolute;
	padding-bottom: 0px;
	top: -130px;
	left: 50%;
	width: 480px;
	margin-left: -240px;
	z-index: 99999;		
}
.sec002TtlBox {
	max-width: 1050px;
	margin: 0 auto 0;
	background-image: url(images/bg-movie.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	padding-top: 120px;
	padding-bottom: 70px;
	box-sizing: border-box;
	position:relative;	
}
.sec003TtlBox {
	height: 450px;
}
.caladetailTxt dd br{
display: block;
}
.sec001Ttl dl {
	width: 80px;
}
.sec001Ttl dt {
	font-size: 75px;
}
.sec001Ttl dd {
	font-size: 30px;
}


}

@media all and (min-width: 560px) {
br.pcno.pcno2 { display: none;}
.sec005Detail div h5 {
	float: left;
}

.sec004ReviewImg {
	float: left;
	width: 122px;
	margin-right: 30px;
	text-align: center;
	margin-bottom: 0px;
}
.sec004ReviewTxt {
	float: left;
	width: calc(100% - 152px);
}
.sec004ReviewTxt:after {
	position: absolute;
	top: 0;
	bottom: 0;
	left: -51px;
	margin: auto 0;
	content: "";
	width: 51px;
	height: 32px;
	background-repeat: no-repeat;
	background-position: left top;
	transform: rotate(0deg);
	
}

.sec003SubTxt dt { width: 50%; float: left; position:relative; padding: 10px; box-sizing: border-box;}
.sec003SubTxt dd { width: 50%; float: left; padding: 10px; box-sizing: border-box; }

.sec003SubTxt dl:nth-of-type(2) dt { float: right; }
.sec003SubTxt dl:nth-of-type(2) dd { float: right; }

/* .sec001Price {max-width: 483px;} */
/* .sec001Ttl div { max-width: 483px; } 
.sec001Ttl h3 { float: left; width: 300px; margin-top: 30px; }
.sec001Ttl dl { float: left; width: 183px; }*/

.sec001Ttl div.paternB1 { max-width: 304px; }
.sec001Ttl h3.paternB1 { float: none; width: 304px; margin:  0 auto 20px; }
.ticketBtn { max-width: 480px; width: 94%; position: relative; margin: 30px auto;}
.sec003Txt li { float: left; width: 50%;}

}

@media all and (min-width: 660px) {
	br.spno.pcno3 { display: block;}
	.sec005SubBox dl.sec005plan dt,
	.sec005SubBox.box005-2 dl.sec005plan dt {
		top: -5px;
		left: -5px;
	}
.sec001Price li p.priceSabun {
padding-right: 15px;
}

.sec005Detail div h5 {
	font-size: 40px;
}
.sec005Detail figure {
	height: 280px;	
}	
.sec005Detail div ul li { float: left; width: 50%; }
.sec005Detail div ul li:nth-of-type(1) { border-right: 4px dotted #FFF; padding-right: 10px; border-bottom: none; padding-bottom: 0; color: #ff5959; }
.sec005Detail div ul li:nth-of-type(2) { padding-left: 10px; }
.sec001Price {max-width: 640px;}
.sec001Price li {
	float: left;
	width: 50%;
	padding: 10px;
	box-sizing: border-box;
}

.sec001Price li:nth-of-type(1) {
	padding: 5px;
	border-right: 4px dotted #FFF;
	border-bottom: none;
}
.sec001Price li:nth-of-type(2) {
	padding: 5px;
}

.btn li {
	display: inline-block;
	margin: 0 5px;
	box-sizing: border-box;
	margin-bottom: 5px;	
}
.section002 li { padding-bottom: 0px; }
.section002 figure { position: relative; width: 100%; padding-top: 0; height: 320px; overflow: hidden; margin-bottom: 0px; }
.section002 li div.section002Box {
	position: absolute;
	width: 40%;
	height: 320px;
	top: 0;
}

.section002 li div.section002Box div {
	width: 340px;
	height: 180px;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -90px;
	margin-left: -130px;
	text-align: center;
}

.section002 li:nth-of-type(1) div.section002Box div {
	height: 180px;
	margin-top: -90px;
}
.section002 li:nth-of-type(2) div.section002Box div {
	height: 250px;
	margin-top: -125px;
	margin-left: -190px;
}

.sec005Detail div li:nth-of-type(1) p.timeOver {
position: absolute;
bottom: 90px;
}
.sec005Detail.paternB3 figure {
	height: 650px;	
}
/* .sec003TtlBox {
	height: 260px;
} */


}

@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -20%, 0);
    transform: translate3d(0, -20%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -20%, 0);
    transform: translate3d(0, -20%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 20%, 0);
    transform: translate3d(0, 20%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 20%, 0);
    transform: translate3d(0, 20%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-10%, 0, 0);
    transform: translate3d(-10%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-10%, 0, 0);
    transform: translate3d(-10%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(10%, 0, 0);
    transform: translate3d(10%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(10%, 0, 0);
    transform: translate3d(10%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}