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

/* [1]common
----------------------------------------------------*/
/* 設定 */
html{
	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;
	min-width: 1000px;
	
}

header {
	width: 100%;
	height: 100vh;
	overflow: hidden;
	z-index: 9999996;
	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%;
	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: 450px;
	height: 590px;
	margin-left: -225px; 
	margin-top: -330px;	
}

.mainTxt {
	width: 450px;
	height: 450px;
	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: 30px;
	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: 112px;
	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: 70px;
	top: 0;
	bottom: 0;
	margin: auto 0;
	content: "";
	box-shadow: 1px 1px 2px rgba(0,0,0,0.3);
}
.mainLogo span:after{left: -80px;}
.mainLogo span:before{right: -80px;}

.topmainTtlBox {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 600px;
	height: 480px;
	margin-left: -300px; 
	margin-top: -260px;
	text-align:  center;
}

.topmainTxt {
	width: 300px;
	height: 300px;
	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;
	line-height: 1.0;
}

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

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



.gnav {
	position: absolute;
	width: 100%;
	height: 65px;
	background-color: rgba(0,0,0,0.3);
	bottom: 0;
	left: 0;
	z-index: 99999999;
}
.gnav2,
.navigation2 { display: none; }
.gnav.fixed {
	position: fixed;
	top: 0;
	left: 0;
}
.gnav h2 { display: none; }
.gnav.fixed h2 { display: block; width: 209px; position: fixed;}
.gnav h2 a{
	background-image: url(images/mainLogomin.png);
	background-repeat: no-repeat;
	background-position: left top;
	width: 209px;
	height: 58px;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	display: block;
	z-index: 999999999;
	position:relative;
}

.gnav ul{
	text-align: center;
	z-index: 999999998;
}
.gnav li{display: inline-block;}
.gnav li a{
	display: block;
	box-sizing: border-box;
	padding: 20px 25px;
	color: #FFF;
	font-size: 20px;
	width: 100%;
	font-family: 'Patua One', cursive;
}
.gnav li a span{
	display: inline-block;
	box-sizing: border-box;
	padding: 0 5px;
	font-size: 15px;
}
.gnav li a:hover{color: #ffd800;}


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

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

.section006 h4{
	font-weight: bold;
	font-size: 30px;
	text-align: center;
	position: relative;
	/* padding-top: 90px;  */
	line-height: 1.1;
	box-sizing: border-box;
	margin-bottom: 30px;	
}
/* .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: 14px;
}
.section006 ul li{ margin-bottom: 5px; }
.section006 ul li dl { margin-bottom: 10px; }
.section006 ul li dt{ font-size: 13px;}
.section006 ul li dd{ font-size: 12px;}
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 10px; 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;	
}

/* 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: 150px;
	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;
}

#pageTop a:hover:before{
	top: 8px;
	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;	
}
.btn a {
	font-size: 23px;
	display: inline-block;
	box-sizing: border-box;
	padding: 18px 40px 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;
	width: 56px;
	height: 56px;
	content: "";
	margin: auto 0 auto 110px;
}

.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 100px; }
.btn a:hover {background-color: #ffd800; }

.btn.btn2 li a{ width: 400px; }
.btn.btn2 li:nth-of-type(2) { display: none; }


/* layout */
.section001 { position: relative; background-color: #fd7202; }
.sec001Box {
	width: 100%;
	padding: 100px 80px 40px;
	box-sizing: border-box;
	position: relative;
	margin: 0 auto;
	max-width: 1325px;
}

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

.sec001Ttl {
	border-top: 4px solid #FFF;
	border-bottom: 4px solid #FFF;
	padding: 40px 0 15px;
	box-sizing: border-box;
	position: relative;
	margin-bottom: 40px;
}
.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: 840px; */
	max-width: 700px;
	position: relative;
	margin: 0 auto;
	color: #FFF;
	
}

.sec001Ttl div { max-width: 840px;	margin: 0 auto; position: relative; height: 127px; }
.sec001Ttl h3 { line-height: 1.0; position: absolute; 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: 150px; height: 150px; }

.sec001sTtl_1,
.sec001sTtl_3 {
	display: inline-block;
	color: #FFF;
	font-size: 35px;
	position: relative;
	padding: 0 20px;
	box-sizing: border-box;
	font-weight: 600;
}
.paternTime {
	display: inline-block;
	letter-spacing: normal;
	color: #ffff00;
	font-size: 72px;
	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: 155px;
	box-sizing: border-box;
	font-weight: 600;
}
.sec001sTtl_4 { font-size: 190px;}
.sec001sTtl_1:after,
.sec001sTtl_1:before {
	position: absolute;
	color: #FFF;
	font-size: 30px;	
}

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

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

.sec001sTtl_1 span {
	display: inline-block;
	position: absolute;
	top: -10px;
	right: 13px;
	font-size: 10px;
	
}
.sec001sTtl_2 {
	display: block;
	color: #ffff00;
	font-size: 66px;
	font-weight: bold;
	font-family: 'Lora', serif;
	position: relative;
	padding-left:35px;
}

.sec001sTtl_2:before {
	position: absolute;
	top: 8px;
	left: -15px;
	background-image: url("images/add-new001.png");
	background-repeat: no-repeat;
	background-position:  left top;
	background-size: contain;
	width: 50px;
	height: 50px;
	content: "";
}

.sec001Ttl dl {
	position: absolute;
	top: 0;
	right:0;
	width: 205px;	
}
.sec001Ttl dt {
	color: #ffff00;
	/* position: absolute;
	right: 5px;
	top: -25px; */
	font-size: 130px;
	font-weight: bold;
	float: left;
	line-height: 0.6;
}
.sec001Ttl dd {
	color: #ffff00;
	line-height: 1.0;
	font-size: 50px;
	font-weight: bold;
	/* position: absolute;
	top: -25px; */
	float: left;
	writing-mode: vertical-rl;
	transform: rotate(180deg);
}
.sec001Hukd {
	position: absolute;
	top: 40px;
	right: 70px;
}
.sec001Hukd p{
	background-color: #FFF;
	width: 210px;
	height: 100px;
	border-radius: 50%;
	position:relative;
	text-align: center;
	transform: rotate(5deg);
	color: #fd7202;
	font-size: 28px;
	font-weight: bold;
	line-height: 1.1;
	padding-top: 33px;
	box-sizing: border-box;
}
.sec001Hukd.paternB2 {
	right: 300px;
}
.sec001Hukd.paternB2 p { font-size: 40px; padding-top: 25px; }
.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: -10px;
	left: 30px;	
}
.sec001Hukd p span {
	display: block;
	font-size: 20px;
	color: #000;
	
}

.sec001Price li {
	float: left;
	width: 50%;
	padding: 10px;
	box-sizing: border-box;
	text-shadow: #FFF 2.5px 2.5px 0px;
}

.sec001Price li:nth-of-type(1) {
	padding-right: 10px;
	border-right: 4px dotted #FFF;
	color: #fb165c; 
}
.sec001Price li:nth-of-type(2) {
	padding-left: 30px;
	color: #0581ff;
}
.sec001Price li dt {
	float: left;
	text-align: center;
	font-size: 45px;
	line-height: 1.0;
	font-weight: bold;
	position:relative;
	width: 55px;
	margin-top: 15px;
}
.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 dd {
	float: left;
	font-family: 'Lora', serif;
	font-size: 145px;
	line-height: 0.8;
	font-weight: bold;
	letter-spacing: -1px;
	width: calc(100% - 55px);
}
.sec001Price li dd span { font-size: 40px;}

.sec001Price li:nth-of-type(1) p.priceSabun {
padding-right: 25px;
}
.sec001Price li:nth-of-type(2) p.priceSabun {
padding-right: 5px;
}

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

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

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

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

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

.sec002Ttl:after {
	position: absolute;
	background-image: url(images/scroll.png);
	background-repeat: no-repeat;
	background-position: left top;
	width: 85px;
	height: 87px;
	left: 0;
	right: 0;
	margin: 0 auto;
	bottom: -110px;
	content: "";	
}
.sec002Ttl h3{
	font-size: 70px;
	font-weight: bold;
}
.sec002Ttl p{
	font-size: 25px;
	font-weight: bold;
}
@media screen and (max-width:1130px) { 
.sec001Hukd {right: 0px;}
.sec002TtlBox {background-size: contain;}
.btn.btn2 li a{ width: 395px; }
}

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

.movie span{
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: 100%;
	height: 100vh;
	margin-left: -50%;
	margin-top: -50%;
	z-index: 999999;
	background-size: 158px 158px;
	background-image: url(images/icon-movie.png);
	background-repeat: no-repeat;
	background-position: center 65%;
}

.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; }
.section002 figure { position: relative; width: auto; height: 100%; overflow: hidden; }
.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: 250px;
	height: 250px;
	border-radius: 50%;
	border: 2px solid #FFF;
	transform: rotate(-10deg);
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	line-height: 1.1;
	box-sizing: border-box;
	padding-top: 35px;
	opacity:0.5; filter: alpha(opacity=50); -ms-filter: "alpha( opacity=50 )";
}
.section002 p.characteristicadd span{
	font-size: 130px;
	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: 25px;
	font-weight: bold;
	line-height: 1.1;
	margin-bottom: 30px;
	border-bottom: 4px solid #fd7202;
	position: relative;
	display: inline-block;
	padding: 0 20px 20px;
	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;
}

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

.section002 li:nth-of-type(1) div.section002Box div {
	height: 210px;
	margin-top: -105px;
}
.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: 16px; 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;}

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

.sec003TtlBox .btn { margin: 0 auto 120px; }
.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 100px; }
.section005 .btn a:after {background-image: url(images/icon-btn001.png); } */
.sec003TtlBox h3 {
	position: relative;
	text-align: center;
	font-size: 60px;
	font-weight: bold;
	line-height: 1.1;
}

.sec003TtlBox h3 span {
	position: absolute;
	top: -35px;
	left: 50%;
	margin-left: -370px;
	font-size: 30px;
	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;
	width: 85px;
	height: 87px;
	left: 0;
	right: 0;
	bottom: -90px;
	margin: 0 auto;
	content: "";
}


.section003 { background-color: #000; color: #FFF; }
.sec003SubTtl { width: 220px; float: right; position: relative; box-sizing: border-box; height: 200px; } 
.sec003SubTxt { width: calc(100% - 220px); float: left; box-sizing: border-box; padding-right: 20px;}
.sec003SubTxt dt { width: 50%; float: left; position:relative; height:320px; }
.sec003SubTxt dd { width: 50%; float: left; padding: 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: left; }
.section003 li:nth-of-type(2) .sec003SubTxt{ float: right; padding-left: 25px; padding-right: 0;}
.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 p{padding-top: 20px;}

.sec003SubTtl div {
	position: absolute;
	top: 50%;
	left: 50%;
	margin-left: -100px;
	margin-top: -100px;
	width: 200px;
	height: 200px;
	border: 4px solid #fff;
	background-color: rgba(0,0,0,0.15);
	text-align: center;
}
.sec003Txt { padding: 40px; box-sizing: border-box;}
.sec003Txt li {
	float: left;
	width: 50%;
}
.sec003Txt li:nth-of-type(2) .sec003SubTtl div {
	border-right: none;
}
.sec003Txt li:nth-of-type(1) .sec003SubTtl div {
	border-left: none;
}

.sec003Txt li:nth-of-type(2) .sec003SubTtl div:after {
	position: absolute;
	top: 0;
	right: -26px;
	background-image: url(images/icon-fukidashi010.png);
	background-repeat: no-repeat;
	background-position: left center;
	width: 30px;
	height: 200px;
	content: "";
}

.sec003Txt li:nth-of-type(1) .sec003SubTtl div:after {
	position: absolute;
	top: 0;
	left: -26px;
	background-image: url(images/icon-fukidashi011.png);
	background-repeat: no-repeat;
	background-position: left center;
	width: 30px;
	height: 200px;
	content: "";
}

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

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

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

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

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

/* sec004 */
.secBox004 {
	padding: 80px 0 40px;
	box-sizing: border-box;
	max-width: 840px;
	width: 100%;
	margin: 0 auto 80px;
	border-bottom: 4px solid #fd7202;
}
.secBox004 h3 {
	color: #fd7202;
	font-size: 80px;
	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: 4px;
	width: 100%;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto 0;
	content: "";
}
.secBox004 p {
	color: #000;
	font-size: 20px;
	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;
}
.sec004ReviewImg p { font-size: 12px; }
.sec004ReviewTxt {
	float: left;
	width: calc(100% - 152px);
	box-sizing: border-box;
	padding: 30px 60px;
	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: 0;
	bottom: 0;
	left: -51px;
	content: "";
	width: 51px;
	height: 32px;
	background-repeat: no-repeat;
	background-position: left top;
	margin: auto 0;
	
}

.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: 25px;
	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: 25px;
	margin: auto 0 auto 40px;
	left: 50%;
	font-size: 30px;
	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: 80px 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: 65px;
	font-weight: bold;
	line-height: 1.2;
}
.sec005Ttl h3 span{
	display: block;
	font-size: 25px;
	font-weight: bold;
}

.sec005Box {
	width: 100%;
	padding: 40px 80px 0;
	box-sizing: border-box;
	position: relative;
	margin: 0 auto;
	max-width: 1325px;
}
.sec005Box h4 {
	text-align: center;
	font-size: 55px;
	font-weight: bold;
}
.sec005Box h4 span {
	color: #449d7c;
	font-size: 90px;
	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;
	width: 49px;
	height: 53px;
	content: "";	
}
.sec005Box h4 span:before {
	background-image: url(images/icon-numLf.png);
	left: -30px;	
}

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

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

.sec005SubBox { margin-top: 60px; }

.sec005SubBox,
.sec005Detail {	position: relative; }
.sec005SubBox.box005-3 { margin-bottom: 30px; }

.sec005SubBox div.sec005plan { position: relative; }
.sec005SubBox div.sec005plan dt {
	position: absolute;
	top: -30px;
	width: 120px;
	height: 120px;
	background-color: #449d7c;
	border-radius: 50%;
	z-index: 999999;
	color: #FFF;
	line-height: 1.0;
	font-size: 55px;
	font-weight: bold;
	text-align: center;
	box-sizing: border-box;
	padding-top: 20px;
}

.sec005SubBox div.sec005plan dt span {
	display: block;
	font-size: 20px;
	
}

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

.sec005SubBox.box005-1 div.sec005plan dt { left: -30px; }
.sec005SubBox.box005-2 div.sec005plan dt { right: -30px; }
.sec005SubBox div.sec005plan dd {
	text-align: center;
	font-size: 50px;
	font-weight: bold;
}

.sec005SubBox div.sec005plan p {
	text-align: center;
	font-size: 50px;
	font-weight: bold;
	
}
.sec005SubBox div.sec005plan p span {display: inline-block; position:relative; line-height: 1.0; }
.sec005SubBox.box005-1 div.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;
	top: 2px;
	background-repeat: no-repeat;
	background-position: left top;
	width: 33px;
	height: 58px;
	content: "";
}

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

.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: 30px;
	box-sizing: border-box;	
}
.sec005SubTxt001 {
	margin: 10px auto 50px;
	font-size: 14px;
	text-align: center;	
}

.sec005Detail div h5 {
	font-family: 'Lora', serif;
	font-size: 75px;
	font-weight: bold;
	float: left;
}
.sec005Detail div p {
	float: right;
	font-weight: bold;
	line-height: 1.0;
	font-size: 40px;
}

.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;
	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: right;
	padding: 5px 35px 0 0;
	font-family: 'Noto Sans JP', sans-serif;
}

.sec005Detail div p img{
	width:80px;
	padding-top: 13px;
}

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

.sec005Detail div ul { clear:both; }
.sec005Detail div ul li { float: left; width: 50%; padding: 20px 0; box-sizing: border-box; text-align: center; font-weight: bold; }


.sec005Detail div ul li:nth-of-type(1) { border-right: 4px dotted #FFF; padding-right: 20px; color: #fb165c; }
.sec005Detail div ul li:nth-of-type(2) { padding-left: 20px; color: #0581ff; }
.sec005Detail div ul li dt{
	background-color: #FFF;
	padding: 15px;
	box-sizing: border-box;
	border-radius: 10px;
	font-size: 25px;
	text-align: center;
}

.sec005Detail div ul li dd { font-size: 70px; line-height: 1.0; text-shadow: rgba(0,0,0,0.1) 1px 1px 1px; letter-spacing: -1px; margin-top: 5px; }
.sec005Detail div ul li dd span{ font-size: 130px; font-family: 'Lora', serif;  }
.sec005Detail div ul li dd span.sec005subdot { font-size: 80px; }

.sec005Detail.paternB3 div ul li dd { margin: 20px auto; }

.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;
	width: 25px;
	height: 45px;
	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: 110px;
	float: left;
}
.box005-2 .sec005Detail div dl {
	width: calc(100% - 110px);
	float: left;
	box-sizing:  border-box;
}

.box005-2 .sec005Detail a{
/* height: 300px; */
display:  block;
}

.box005-2 .sec005Detail a{
background-image: url("images/bg-sec004.png");
background-repeat: no-repeat;
background-position: left top;
background-size: contain;
width: 100%;
/* height: 473px; */
}
.box005-2 .sec005Detail div h5 {
	float: none;
	text-align: center;
	line-height: 1.1;
}
.sec005Detail div.secticketL { float: left; width: 88%; position: relative; }

.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: 57px;
font-weight:  bold;
text-align: center;
position: relative;
box-sizing:  border-box;
}
.secticketR span.ticketsubtxt {
position: absolute;
width: 60px;
height: 200px;
top: 50%;
margin-top: -100px;
left: 50%;
margin-left: -20px;
display: block;
/* padding: 30px;
box-sizing: border-box; */
}
.secticketR span.ticketsubtxt02 { display:  block; font-size: 14px; font-weight:  normal; letter-spacing: 0.5px;}


.timeBox {
position: absolute;
top:  200px;
left:  50%;
width: 80px;
margin-left: -40px;
}
.timeBox li { margin: 90px auto; }
.timeBox li p {
background-color: #FFF;
text-align: center;
font-size: 35px;
border-radius: 50%;
line-height: 1.0;
font-weight: bold;
width: 80px;
height: 80px;
padding-top: 12px;
box-sizing: border-box;
}
.timeBox li p span {
font-size: 15px;
display: block;
}

.timeOver {
position: absolute;
bottom: 200px;
left: 20px;
font-size: 20px;
font-weight: bold;
width: calc(100% - 40px);
}

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

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

@media screen and (max-width:1216px) { 
.sec005Detail div ul li dd span{ font-size: 130px;}
.box005-2 .sec005Detail div ul li dd span{ font-size: 115px;}
.timeBox li { margin: 82px auto; }
.sec005Detail.paternB3 div ul li dd { margin: 30px auto; }
.timeOver {bottom: 230px;}
}

@media screen and (max-width:1130px) { 
.sec005Box {padding: 40px 10px 0;}
.timeBox {top: 210px;}
.timeBox li { margin: 80px auto; }
}

.telPopBox {
	width: 700px;
	height:250px;
	position: relative;
	background-color: #f97104;
	text-align: center;
	padding: 50px 40px 30px;
	box-sizing: border-box;
	
}
.telPopBox dt { text-align: center; margin-bottom: 20px; }
.telPopBox dt span{ display: inline-block; font-weight: bold; font-size: 20px; color:#FFF; position: relative; }
.telPopBox dt span:after,
.telPopBox dt span:before{
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto 0;
	background-color: #fff;
	height: 1px;
	width: 150px;
	content: "";
}
.telPopBox dt span:after { right: -160px;}
.telPopBox dt span:before { left: -160px;}
.telPopBox dd {
	color: #fff;
	font-size: 70px;
	font-weight: bold;
	font-family: 'Lora', serif;
	line-height: 1.1;
}
.telPopBox dd img { vertical-align: middle; }

.modal{
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
	z-index: 999999999;
}
.modal__bg{
    background: rgba(0,0,0,0.8);
    height: 100vh;
    position: absolute;
    width: 100%;
}
.modal__content{
   /*  background: #fff; */
    left: 50%;
    padding: 40px;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
    width: 60%;
}
a.js-modal-close {
background-image: url("images/close.png");
background-repeat:  no-repeat;
background-position:  left top;
width:  40px;
height:  40px;
text-indent:  100%;
overflow:  hidden;
white-space:  nowrap;
position:  fixed;
top: 20px;
right:  20px;

}

.swiper-wrapper { padding: 0; box-sizing: border-box; }
.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: 20px;
	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: 30px; box-sizing: border-box; width: 100%; max-width: 680px; background-color: rgba(255,255,255,0.98); }

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

.caladetailTxt {
	/* position: absolute;
	bottom: 60px;
	right: 40px;
	width: 280px; */
	float: right;
	width: calc(100% - 220px);
}
.caladetailTxt dl { width: 100%;}
.caladetailTxt dt{
	font-size: 25px;
	margin-bottom: 20px;
	font-weight: bold;
	line-height: 1.1;	
}
.caladetailTxt dt span{
	font-size: 12px;
	display: block;
	color: #959495;
	font-weight: 200;
	letter-spacing: 1px;	
}
.caladetailTxt dd{
	font-size: 14px;
	line-height:1.8;
}



/* ticket */
.ticketBtn {max-width: 890px; width: 100%; position: relative; margin: 30px auto;}

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

.ticketBtn a{
background-image: url("images/bg-ticket.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; }
.ticketBtn li:nth-of-type(1){float: left; width: 87%;}
.ticketBtn li:nth-of-type(2){float: right; width: 13%; padding: 30px 35px 35px 35px;}


.ticketBtn dl { box-sizing:  border-box; width: 700px; margin:  2% auto;}
.ticketBtn dt {
float: left;
font-size:21px;
line-height: 1.0;
font-weight:  bold;
color: #000;
padding-right: 10px;
padding-top: 24px;
padding-bottom: 23px;
border-right: 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-left: 10px;
padding-top: 22px;
padding-bottom: 20px;
}
.ticketBtn dd span{ color: #F00; }
.ticketBtn p {
color: #FFF;
writing-mode: vertical-rl;
line-height: 1.0;
transform: rotate(180deg);
font-size: 25px;
font-weight: bold;
}
.ticketBtn p span{
font-size: 25px;
display:  inline-block;
}


/* 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,
.caladetailImg 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%;	
}

.box005-2 .sec005Detail a:hover,
.ticketBtn a:hover {opacity:0.9; filter: alpha(opacity=90); -ms-filter: "alpha( opacity=90 )";}

/* 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; }

.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;}

:hover { transition:background-color .5s, color .5s, opacity .5s;}
.pcno { display: none; }

/* slide */
#_btn,
#fadeLayer {
  display: none;
}


@-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);
  }
}