@charset "utf-8";

/* reset */
/* -------------------------------------------------------- */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {margin:0; padding:0;}
html {width:100%; height:100%; overflow-y:scroll;}
h1,h2,h3,h4,h5,h6 {font-size:100%; font-weight:bold;}
p, ul, ol, dl, address, blockquote, table, div {font-size:100%;}
p {margin:0 0 0 0;}
ol,ul {list-style:none;}
fieldset,img {border:0; vertical-align:top;}
table {border-collapse:collapse; border-spacing:0;}
caption,th {text-align:left;}
th {vertical-align:top; font-weight:normal; text-align:left;}
td {vertical-align:top;}
address,caption,cite,code,dfn,em,strong,th,var {font-style:normal; font-weight:normal;}
q:before,q:after {content:'';}
abbr,acronym {border:0;}


/* common */
/* -------------------------------------------------------- */
html,body {font-variant-ligatures:none;}
html {font-size:62.5%;}
body {font-size:18px; font-size:1.8rem; font-family:'YuMincho','Yu Mincho','游明朝','Hiragino Mincho ProN','ヒラギノ明朝 ProN W3','HG明朝E','Times New Roman',serif; color:#000; text-align:center; -webkit-text-size-adjust:100%; text-size-adjust:100%; background:none;}

h1, h2, h3, h4, h5, h6, h7 {line-height:1.75;}
p, li, dt, dd, th, td, address, blockquote, div {line-height:2.0;}
input, select, textarea, button {font-size:18px; font-size:1.8rem; font-family:'YuMincho','Yu Mincho','游明朝','Hiragino Mincho ProN','ヒラギノ明朝 ProN W3','HG明朝E','Times New Roman',serif; line-height:1.4; vertical-align:middle;}
input[type='submit'],input[type='reset'],input[type='button'], button {cursor:pointer; -ms-appearance:none; -webkit-appearance:none; appearance:none;}
:placeholder-shown {color:#ccc;}
::-webkit-input-placeholder {color:#ccc;}
:-moz-placeholder {color:#ccc; opacity:1;}
::-moz-placeholder {color:#ccc; opacity:1;}
:-ms-input-placeholder {color:#ccc;}

strong {font-weight:bold;}
ol {list-style-type:decimal; margin-left:2.2em;}
img {max-width:100%; width:auto; height:auto; line-height:0; vertical-align:top; border:0; display:inline;}

a {color:#000; text-decoration:underline;}
a:hover {color:#000; text-decoration:none;}

@media screen and (max-width:767px){
	body {font-size:3.2vw;}
	input, select, textarea, button {font-size:3.2vw;}
}


/* decision */
/* -------------------------------------------------------- */
#bpCheck {display:none;}

body .pc {display:block;}
br.pc, span.pc, img.pc {display:inline;}
body .sp, br.sp, span.sp, img.sp {display:none;}

a.off {pointer-events:none; cursor:default; opacity:0.3;}
a.tel {pointer-events:none; cursor:default;}
body.mobile a.tel {pointer-events:auto; cursor:pointer;}

.cfix::before,
.cfix::after {display:table; content:" ";}
.cfix::after {clear:both;}

.parallax {opacity:0; transform:translate3d(0,30px,0);}
.parallax.on {opacity:1; transform:translate3d(0,0,0); transition:opacity 1.0s ease, transform 1.0s ease;}

@media screen and (max-width:767px){
	#bpCheck {display:block;}

	body .pc, br.pc, span.pc, img.pc {display:none;}
	body .sp {display:block;}
	br.sp, span.sp, img.sp {display:inline;}
}


/* container */
/* -------------------------------------------------------- */
#container {width:100%; overflow:hidden;}


/* header */
/* -------------------------------------------------------- */
#header {width:100%; position:relative; top:0; left:0; z-index:300;}
#header .btn-instagram {position:absolute; top:34px; right:487px;}
#header .btn-instagram a {width:32px; height:32px; background:url(../img/icon_01.png) no-repeat center center; background-size:cover; display:block; transition:opacity 0.3s ease;}
#header .btn-instagram a:hover {opacity:0.7;}
#header .btn-online-shop {position:absolute; top:29px; right:230px;}
#header .btn-online-shop a {width:230px; height:40px; font-family:sans-serif; font-size:1.6rem; font-weight:bold; text-decoration:none; color:#000; background-color:#fff; box-shadow:0 0 5px rgba(0,0,0,0.3); border-radius:7px; display:flex; justify-content:center; align-items:center; transition:opacity 0.3s ease;}
#header .btn-online-shop a:hover {opacity:0.7;}
#header .btn-online-shop span {padding:0 34px 0 0; display:inline-block; position:relative;}
#header .btn-online-shop span::after {content:''; width:15px; height:15px; margin:-7px 0 0 0; background:url(../img/arrow_01.png) no-repeat center center; background-size:cover; display:block; position:absolute; top:50%; right:0;}

#gNavBtn {width:54px; height:54px; position:fixed; top:23px; right:76px; z-index:310; cursor:pointer; display:block;}
#gNavBtn > span {width:100%; height:2px; margin:-1px 0 0 0; display:block; position:absolute; top:50%; left:0;}
#gNavBtn > span::before,
#gNavBtn > span::after {content:''; width:100%; height:2px; background-color:rgba(255,255,255,1); box-shadow:0 0 5px rgba(0,0,0,0.7); display:block; position:absolute; left:0;}
#gNavBtn > span::before {top:-8px; transition-property:top;}
#gNavBtn > span::after {bottom:-8px; transition-property:bottom;}
body.load #gNavBtn > span::before,
body.load #gNavBtn > span::after {transition-duration:0.3s; transition-delay:0s; transition-timing-function:ease;}

#gNavCheck {display:none;}
#gNavCheck:checked + #header #gNavBtn > span::before {box-shadow:0 0 5px rgba(0,0,0,0); top:0; transform:rotate(45deg); transition-property:transform;}
#gNavCheck:checked + #header #gNavBtn > span::after {box-shadow:0 0 5px rgba(0,0,0,0); bottom:0; transform:rotate(-45deg); transition-property:transform;}

#gNav {width:100%; height:0; background-color:#000; position:fixed; top:0; left:0; z-index:305; overflow:hidden; transition:all 0.6s ease;}
#gNavCheck:checked + #header #gNav {height:100vh; overflow:auto;}
#gNav::before {content:''; width:610px; height:610px; background:url(../img/ttl_nav.png) no-repeat 0 0; background-size:100% auto; display:block; position:absolute; top:0; left:0; pointer-events:none;}
#gNav .sec {max-width:100%; text-align:right; padding:170px 100px 100px 100px;}
#gNav .inr {margin:0 0 0 auto; display:inline-block; position:relative; z-index:5;}
#gNav .nav > li {text-align:left; padding:30px 0 35px 0; border-top:solid 1px #fff;}
#gNav .nav > li:first-of-type {border-top:none;}
#gNav .nav a {font-size:3.7rem; line-height:1.4; text-decoration:none; color:#fff; display:block; transition:opacity 0.3s ease;}
#gNav .nav a span {font-size:86.4%; display:block;}
#gNav .nav a:hover {opacity:0.7;}
#gNav .bnr {position:absolute; bottom:35px; left:-580px;}
#gNav .bnr a {width:480px; height:270px; text-align:center; background-color:rgba(0,0,0,0.9); border:solid 1px #c0c0c0; box-sizing:border-box; display:flex; justify-content:center; align-items:center; transition:opacity 0.3s ease;}
#gNav .bnr a:hover {opacity:0.7;}
#gNav .bnr a > span > span:nth-of-type(1) {width:280px; margin:0 auto; display:block;}
#gNav .bnr a > span > span:nth-of-type(2) {width:335px; margin:32px auto 0 auto; display:block;}

@media screen and (max-width:767px){
	#header .btn-instagram {top:4.0vw; right:16.5vw;}
	#header .btn-online-shop {top:4.0vw; right:20.5vw; display:none;}
	#header .btn-online-shop a {width:39.4vw; height:6.6vw; font-size:2.8vw; border-radius:1.0vw;}
	#header .btn-online-shop span {padding:0 4.8vw 0 0;}
	#header .btn-online-shop span::after {width:2.5vw; height:2.5vw; margin:-1.25vw 0 0 0;}

	#gNavBtn {width:7.0vw; height:7.0vw; top:3.8vw; right:6.4vw;}
	#gNavBtn > span::before {top:-1.0vw;}
	#gNavBtn > span::after {bottom:-1.0vw;}

	#gNav::before {width:66.6vw; height:66.6vw;}
	#gNav .sec {max-width:100%; padding:22.6vw 5.3vw 5.3vw 5.3vw;}
	#gNav .nav {margin:0 0 0 auto; display:inline-block;}
	#gNav .nav > li {padding:4.0vw 0 4.6vw 0;}
	#gNav .nav a {font-size:5.3vw;}
	#gNav .bnr {margin:3.3vw 2.0vw 0 2.0vw; position:relative; bottom:0; left:0;}
	#gNav .bnr a {width:100%; height:auto; padding:2.0vw 4.0vw; display:block;}
	#gNav .bnr a > span {display:flex; justify-content:space-between; align-items:center;}
	#gNav .bnr a > span > span:nth-of-type(1) {width:37.2%; margin:0;}
	#gNav .bnr a > span > span:nth-of-type(2) {width:59.0%; margin:0;}
}


/* footer */
/* -------------------------------------------------------- */
#footer {color:#fff; padding:445px 0 0 0; background:#0e0e0f url(../img/bg_12.png) no-repeat center bottom; position:relative; overflow:hidden;}
#footer::before {content:''; width:100%; height:100%; background:url(../img/bg_11.jpg) no-repeat center top; display:block; position:absolute; top:0; left:0; pointer-events:none;}
#footer .inr1 {color:#fff; padding:30px 0 85px 0; background-color:rgba(37,37,37,0.56); position:relative; z-index:10;}
#footer .inr1::before {content:''; width:100%; height:200%; background:url(../img/bg_16.png) no-repeat right bottom; display:block; position:absolute; bottom:0; right:0; pointer-events:none;}
#footer .inr1 .txt {max-width:780px; text-align:left; margin:0 auto; display:inline-block; position:relative; z-index:10;}
#footer .inr1 .bnr {text-align:center; margin:15px 0 0 0; position:relative; z-index:10;}
#footer .inr1 .bnr a {transition:opacity 0.3s ease;}
#footer .inr1 .bnr a:hover {opacity:0.7;}
#footer .inr2 {padding:80px 0 20px 0; position:relative; z-index:10;}
#footer .inr2::before {content:''; width:100%; height:100%; background:url(../img/bg_17.png) no-repeat left top; display:block; position:absolute; top:0; left:0; pointer-events:none;}
#footer .inr2 .sec {position:relative; z-index:10;}
#footer .inr2 .txt1 {max-width:860px; font-size:2.5rem; line-height:1.44; text-align:center; margin:0 auto; display:inline-block;}
#footer .inr2 .txt2 {font-size:2.0rem; line-height:2.5; text-align:center;}
#footer .inr2 .txt3 {font-size:2.0rem; line-height:1.5; text-align:center;}
#footer .inr2 .txt4 {font-size:2.5rem; text-align:center; margin:70px 0 0 0;}
#footer .inr2 .box {max-width:800px; margin:30px auto 0 auto; padding:35px 0 0 0; border-top:solid 1px #fff;}
#footer .inr2 a {text-decoration:underline; color:#fff;}
#footer .inr2 a:hover {text-decoration:none; color:#fff;}
#footer .copy {font-size:1.6rem; text-align:center; margin:35px 0 0 0;}
@media screen and (max-width:767px){
	#footer {padding:70.0vw 0 0 0; background-image:url(../img/bg_12_sp.png); background-size:100% auto;}
	#footer::before {background-image:url(../img/bg_11_sp.jpg); background-size:100% auto;}
	#footer .inr1 {margin:0 -6.6vw; padding:5.3vw 0 20.0vw 0; background-color:rgba(37,37,37,0);}
	#footer .inr1::before {width:80%; background-size:100% auto;}
	#footer .inr1 .txt {max-width:100%; font-size:3.4vw;}
	#footer .inr1 .bnr {margin:4.0vw 3.0vw 0 3.0vw;}
	#footer .inr2 {padding:18.6vw 0 5.3vw 0;}
	#footer .inr2::before {width:100%; background-size:100% auto;}
	#footer .inr2 .txt1 {font-size:4.0vw;}
	#footer .inr2 .txt2 {font-size:3.2vw;}
	#footer .inr2 .txt3 {font-size:3.2vw;}
	#footer .inr2 .txt4 {font-size:4.0vw; margin:9.3vw 0 0 0;}
	#footer .inr2 .box {margin:4.0vw auto 0 auto; padding:3.4vw 0 0 0;}
	#footer .copy {font-size:2.9vw; margin:3.4vw 0 0 0;}
}

/* contents */
/* -------------------------------------------------------- */
#contents {}
.sec {max-width:980px; margin:0 auto; padding:0 15px; box-sizing:border-box;}
.movie {width:100%; padding:56.25% 0 0 0; position:relative;}
.movie iframe {width:100% !important; height:100% !important; position:absolute; top:0; right:0;}
@media screen and (max-width:767px){
	.sec {padding:0 10.0vw;}
}


/* head */
#head {background-color:#000; position:relative; z-index:5;}
#head::before {content:''; width:100%; height:100%; background:url(../img/bg_01.jpg) no-repeat  center center; background-size:cover; display:block; position:absolute; top:0; left:0; z-index:1;}
#head::after {content:''; width:100%; height:1610px; background:url(../img/bg_13.png) no-repeat 0 0; display:block; position:absolute; top:0; left:0; z-index:5;}
#head .sec {max-width:1150px; padding:0 100px;}
#head .inr {height:800px; position:relative; z-index:10;}
#head h1 {font-size:5.0vw; font-weight:normal; line-height:1; color:#fff; position:absolute; top:34px; left:5%; z-index:20;}
#head .ttl {width:86.3%; position:absolute; top:170px; left:-10.5%;}
#head .ttl span {width:100%; display:block; position:absolute; top:0; left:0;}
#head .ttl span:nth-of-type(1) {transform-origin:23% 33%;}
#head .ttl span:nth-of-type(2) {transform-origin:47% 75%;}
#head .ttl span:nth-of-type(3) {transform-origin:3% 16%;}
#head .ttl span:nth-of-type(4) {transform-origin:47% 42%;}
#head .ttl span:nth-of-type(5) {transform-origin:78% 42%;}
#head .cap {font-size:1.2rem; color:#fff; position:absolute; bottom:10px; right:-80px;}
#head.parallax,
#head.parallax.on {opacity:1; transform:translate3d(0,0,0);}
#head.parallax .cap,
#head.parallax::before {opacity:0; transform:translate3d(0,0,0);}
#head.parallax.on .cap,
#head.parallax.on::before {opacity:1; transform:translate3d(0,0,0); transition:opacity 2.0s 4.6s ease;}
//#head.parallax.on .cap,
//#head.parallax.on::before {opacity:1; transform:translate3d(0,0,0); transition:opacity 2.0s ease;}
#head.parallax::after {opacity:0; background-position:-50px 30px;}
#head.parallax.on::after {opacity:1; background-position:0 0; transition:opacity 4.0s ease, background-position 4.0s ease;}
#head.parallax .ttl span:nth-of-type(1) {opacity:0; transform:scale3d(1.2,1.2,1);}
#head.parallax.on .ttl span:nth-of-type(1) {opacity:1; transform:scale3d(1,1,1); transition:opacity 1.0s 2.0s ease, transform 1.0s 2.0s ease;}
#head.parallax .ttl span:nth-of-type(2) {opacity:0; transform:scale3d(1.2,1.2,1);}
#head.parallax.on .ttl span:nth-of-type(2) {opacity:1; transform:scale3d(1,1,1); transition:opacity 1.0s 2.2s ease, transform 1.0s 2.2s ease;}
#head.parallax .ttl span:nth-of-type(3) {opacity:0; transform:scale3d(1,0,1);}
#head.parallax.on .ttl span:nth-of-type(3) {opacity:1; transform:scale3d(1,1,1); transition:opacity 1.0s 3.0s ease, transform 1.0s 3.0s ease;}
#head.parallax .ttl span:nth-of-type(4) {opacity:0; transform:scale3d(1,0,1);}
#head.parallax.on .ttl span:nth-of-type(4) {opacity:1; transform:scale3d(1,1,1); transition:opacity 1.0s 3.2s ease, transform 1.0s 3.2s ease;}
#head.parallax .ttl span:nth-of-type(5) {opacity:0; transform:scale3d(1,0,1);}
#head.parallax.on .ttl span:nth-of-type(5) {opacity:1; transform:scale3d(1,1,1); transition:opacity 1.0s 3.4s ease, transform 1.0s 3.4s ease;}
@media screen and (max-width:767px){
	#head::before {background-image:url(../img/bg_01_sp.jpg);}
	#head::after {height:280.0vw; background-size:cover; top:-5.8vw;}
	#head .sec {padding:0;}
	#head .inr {height:133.3vw;}
	#head h1 {font-size:10.0vw;}
	#head .ttl {width:94.6vw; top:56.0vw; left:2.7vw;}
	#head .cap {font-size:2.1vw; bottom:1.3vw; right:1.3vw;}
}

/* Introduction */
#Introduction {color:#fff; background:#1a1a1a url(../img/bg_02.jpg) no-repeat center bottom; background-size:cover; position:relative;}
#Introduction::before {content:''; width:100%; height:100%; background:url(../img/bg_14.png) no-repeat center bottom; background-size:100% auto; display:block; position:absolute; bottom:0; left:0; z-index:5;}
#Introduction .inr {padding:130px 0 80px 0; position:relative; z-index:10;}
#Introduction .ctx {text-align:left; text-align:justify; margin:0 0 0 52.7%;}
#Introduction .ttl {font-size:4.2rem; font-weight:normal;}
#Introduction .ctx p {margin:25px 0 0 0;}
#Introduction .cap {font-size:1.2rem; color:#fff; position:absolute; bottom:10px; right:51.5%;}
#Introduction.parallax {opacity:0; transform:translate3d(0,0,0);}
#Introduction.parallax.on {opacity:1; transform:translate3d(0,0,0); transition:opacity 2.0s ease;}
#Introduction.parallax::before {opacity:0; transform:translate3d(0,50px,0);}
#Introduction.parallax.on::before {opacity:1; transform:translate3d(0,0,0); transition:opacity 4.0s ease, transform 4.0s ease;}
#Introduction.parallax .ttl {opacity:0; transform:translate3d(0,30px,0);}
#Introduction.parallax.on .ttl {opacity:1; transform:translate3d(0,0,0); transition:opacity 1.0s 2.0s ease, transform 1.0s 2.0s ease;}
#Introduction.parallax .ctx p {opacity:0; transform:translate3d(0,30px,0);}
#Introduction.parallax.on .ctx p {opacity:1; transform:translate3d(0,0,0); transition:opacity 1.0s 2.5s ease, transform 1.0s 2.5s ease;}
@media screen and (max-width:767px){
	#Introduction {background-image:url(../img/bg_02_sp.jpg);}
	#Introduction .inr {padding:25.6vw 0 19.4w 0;}
	#Introduction .ctx {margin:0;}
	#Introduction .ttl {font-size:7.6vw;}
	#Introduction .ctx p {margin:3.4vw 0 0 0;}
	#Introduction .cap {font-size:2.1vw; bottom:1.3vw; right:-8.7vw;}
}

/* History */
#History {background:url(../img/bg_03.jpg) no-repeat center center; background-size:cover; position:relative;}
#History::after {content:''; width:700px; height:700px; margin:-350px 0 0 -350px; background:url(../img/kanji_01.png) no-repeat center center; background-size:cover; display:block; position:absolute; top:50%; left:50%; z-index:1;}
#History .inr {padding:120px 0 80px 0; position:relative; z-index:10;}
#History .ttl {font-size:4.2rem; font-weight:normal; text-align:center;}
#History p {text-align:left; text-align:justify; margin:25px 0 0 0;}
#History.parallax {opacity:0; transform:translate3d(0,0,0);}
#History.parallax.on {opacity:1; transform:translate3d(0,0,0); transition:opacity 2.0s ease;}
#History.parallax::after {opacity:0; transform:scale3d(1.2,1.2,1);}
#History.parallax.on::after {opacity:1; transform:scale3d(1,1,1); transition:opacity 1.0s 1.0s ease, transform 1.0s 1.0s ease;}
#History.parallax .ttl {opacity:0; transform:translate3d(0,30px,0);}
#History.parallax.on .ttl {opacity:1; transform:translate3d(0,0,0); transition:opacity 1.0s 2.5s ease, transform 1.0s 2.5s ease;}
#History.parallax p {opacity:0; transform:translate3d(0,30px,0);}
#History.parallax.on p {opacity:1; transform:translate3d(0,0,0); transition:opacity 1.0s 3.0s ease, transform 1.0s 3.0s ease;}
@media screen and (max-width:767px){
	#History {background-image:url(../img/bg_03_sp.jpg);}
	#History::after {width:133.3vw; height:133.3vw; margin:-66.6vw 0 0 -66.6vw;}
	#History .inr {padding:17.3vw 0;}
	#History .ttl {font-size:7.6vw;}
	#History p {margin:6.6vw 0 0 0;}
}

/* Performances */
#Performances {position:relative;}
#Performances > div {padding:80px 0; background-repeat:no-repeat; background-position:center center; background-size:cover; position:static;}
#Performances > div .sec {position:relative; z-index:10;}
#Performances .inr1 {background-image:url(../img/bg_04.jpg);}
#Performances .inr1 .clm::before {background-image:url(../img/kanji_02.png); left:-280px;}
#Performances .inr2 {background-image:url(../img/bg_05.jpg);}
#Performances .inr2 .clm::before {background-image:url(../img/kanji_03.png); right:-280px;}
#Performances .inr2 .clm > div {order:1;}
#Performances .inr2 .clm > dl {order:2;}
#Performances .inr2 .img {display:flex;}
#Performances .inr2 .img > div {width:50%;}
#Performances .inr2 .cap {text-align:left;}
#Performances .inr3 {background-image:url(../img/bg_06.jpg);}
#Performances .inr3 .clm::before {background-image:url(../img/kanji_04.png); left:-280px;}
#Performances .inr3 dl {color:#000;}
#Performances .inr3 dt::before {background-color:#000;}
#Performances .inr4 {width:100%; height:100%; display:block; background:url(../img/bg_15.png) no-repeat 0 0; background-size:cover; position:absolute; top:0; left:0; opacity:0.5;}
#Performances .ttl {font-size:4.2rem; font-weight:normal; text-align:left; color:#fff; position:relative; z-index:10;}
#Performances .ttl + .clm {margin-top:65px;}
#Performances .clm {display:flex; justify-content:space-between; position:relative;}
#Performances .clm::before {content:''; width:680px; height:680px; margin:-340px 0 0 0; background-repeat:no-repeat; background-position:center center; background-size:cover; display:block; position:absolute; top:50%;}
#Performances .clm > div {width:47.3%; position:relative; z-index:10;}
#Performances .clm > dl {width:48.4%; position:relative; z-index:10;}
#Performances dl {text-align:left; color:#fff; position:relative;}
#Performances dt {font-size:2.6rem; padding:0 0 5px 0; display:inline-block; position:relative;}
#Performances dt::before {content:''; width:100%; height:3px; background-color:#fff; display:block; position:absolute; bottom:0; left:0;}
#Performances dd {text-align:justify; margin:35px 0 0 0;}
#Performances .cap {font-size:1.2rem; text-align:right; color:#fff; margin:5px 0 0 0;}

#Performances.parallax {opacity:0; transform:translate3d(0,0,0);}
#Performances.parallax.on {opacity:1; transform:translate3d(0,0,0); transition:opacity 1.0s ease, transform 1.0s ease;}
#Performances.parallax .ttl {opacity:0; transform:translate3d(0,30px,0);}
#Performances.parallax.on .ttl {opacity:1; transform:translate3d(0,0,0); transition:opacity 1.0s 1.0s ease, transform 1.0s 1.0s ease;}
#Performances.parallax .inr4 {opacity:0; transform:scale3d(1.2,1.2,1);}
#Performances.parallax.on .inr4 {opacity:0.5; transform:scale3d(1,1,1); transition:opacity 1.0s 1.0s ease, transform 1.0s 1.0s ease;}
#Performances .inr1 .parallax {opacity:1; transform:translate3d(0,0,0);}
#Performances .inr1 .parallax.on {opacity:1; transform:translate3d(0,0,0);}
#Performances .inr1 .parallax .clm::before {opacity:0; transform:scale3d(1.2,1.2,1);}
#Performances .inr1 .parallax.on .clm::before {opacity:1; transform:scale3d(1,1,1); transition:opacity 1.0s 1.0s ease, transform 1.0s 1.0s ease;}
#Performances .inr1 .parallax dt {opacity:0; transform:translate3d(-30px,0,0);}
#Performances .inr1 .parallax.on dt {opacity:1; transform:translate3d(0,0,0); transition:opacity 1.0s 2.5s ease, transform 1.0s 2.5s ease;}
#Performances .inr1 .parallax dd {opacity:0; transform:translate3d(-30px,0,0);}
#Performances .inr1 .parallax.on dd {opacity:1; transform:translate3d(0,0,0); transition:opacity 1.0s 2.5s ease, transform 1.0s 2.5s ease;}
#Performances .inr1 .parallax .img {opacity:0; transform:translate3d(30px,0,0);}
#Performances .inr1 .parallax.on .img {opacity:1; transform:translate3d(0,0,0); transition:opacity 1.0s 2.5s ease, transform 1.0s 2.5s ease;}
#Performances .inr2 .parallax {opacity:0; transform:translate3d(0,0,0);}
#Performances .inr2 .parallax.on {opacity:1; transform:translate3d(0,0,0); transition:opacity 2.0s ease;}
#Performances .inr2 .parallax .clm::before {opacity:0; transform:scale3d(1.2,1.2,1);}
#Performances .inr2 .parallax.on .clm::before {opacity:1; transform:scale3d(1,1,1); transition:opacity 1.0s 1.0s ease, transform 1.0s 1.0s ease;}
#Performances .inr2 .parallax dt {opacity:0; transform:translate3d(30px,0,0);}
#Performances .inr2 .parallax.on dt {opacity:1; transform:translate3d(0,0,0); transition:opacity 1.0s 2.5s ease, transform 1.0s 2.5s ease;}
#Performances .inr2 .parallax dd {opacity:0; transform:translate3d(30px,0,0);}
#Performances .inr2 .parallax.on dd {opacity:1; transform:translate3d(0,0,0); transition:opacity 1.0s 2.5s ease, transform 1.0s 2.5s ease;}
#Performances .inr2 .parallax .img {opacity:0; transform:translate3d(-30px,0,0);}
#Performances .inr2 .parallax.on .img {opacity:1; transform:translate3d(0,0,0); transition:opacity 1.0s 2.5s ease, transform 1.0s 2.5s ease;}
#Performances .inr3 .parallax {opacity:0; transform:translate3d(0,0,0);}
#Performances .inr3 .parallax.on {opacity:1; transform:translate3d(0,0,0); transition:opacity 2.0s ease;}
#Performances .inr3 .parallax .clm::before {opacity:0; transform:scale3d(1.2,1.2,1);}
#Performances .inr3 .parallax.on .clm::before {opacity:1; transform:scale3d(1,1,1); transition:opacity 1.0s 1.0s ease, transform 1.0s 1.0s ease;}
#Performances .inr3 .parallax dt {opacity:0; transform:translate3d(-30px,0,0);}
#Performances .inr3 .parallax.on dt {opacity:1; transform:translate3d(0,0,0); transition:opacity 1.0s 2.5s ease, transform 1.0s 2.5s ease;}
#Performances .inr3 .parallax dd {opacity:0; transform:translate3d(-30px,0,0);}
#Performances .inr3 .parallax.on dd {opacity:1; transform:translate3d(0,0,0); transition:opacity 1.0s 2.5s ease, transform 1.0s 2.5s ease;}
#Performances .inr3 .parallax .img {opacity:0; transform:translate3d(30px,0,0);}
#Performances .inr3 .parallax.on .img {opacity:1; transform:translate3d(0,0,0); transition:opacity 1.0s 2.5s ease, transform 1.0s 2.5s ease;}
@media screen and (max-width:767px){
	#Performances > div {padding:17.3vw 0;}
	#Performances .inr1 {background-image:url(../img/bg_04_sp.jpg);}
	#Performances .inr1 .clm::before {margin-top:-28.0vw; left:50%;}
	#Performances .inr2 {background-image:url(../img/bg_05_sp.jpg);}
	#Performances .inr2 .clm::before {left:50%; right:auto;}
	#Performances .inr3 {background-image:url(../img/bg_06_sp.jpg);}
	#Performances .inr3 .clm::before {left:50%;}
	#Performances .inr3 .clm > div {margin:17.3vw -7.3vw 0 -7.3vw;}
	#Performances .inr4 {top:20.0vw; background-position:left center; background-size:250% auto;}
	#Performances .ttl {font-size:7.6vw; line-height:1.3;}
	#Performances .ttl + .clm {margin-top:17.3vw;}
	#Performances .clm {display:block;}
	#Performances .clm::before {width:133.3vw; height:133.3vw; margin:-16.0vw 0 0 -66.6vw; top:0;}
	#Performances .clm > div {width:auto; margin:17.3vw 0 0 0;}
	#Performances .clm > dl {width:auto;}
	#Performances dt {font-size:4.6vw; padding:0 0 0.5vw 0;}
	#Performances dt::before {height:0.5vw;;}
	#Performances dd {margin:9.3vw 0 0 0;}
	#Performances .cap {font-size:2.4vw; margin:0.6vw 0 0 0;}
}

/* VIDEO */
#VIDEO .inr1 {padding:80px 0 110px 0; background:url(../img/bg_07.png) no-repeat center center; background-size:cover; position:relative;}
#VIDEO .inr1 .txt1 {text-align:left;}
#VIDEO .inr1 .txt2 {font-size:2.0rem; text-align:center; margin:80px 0 0 0;}
#VIDEO .inr1 .txt3 {font-size:4.2rem; text-align:center;}
#VIDEO .inr1 .txt4 {font-size:3.0rem; text-align:center;}
#VIDEO .inr1 .video {max-width:912px; margin:50px auto 0 auto;}
#VIDEO .inr2 {padding:80px 0;}
#VIDEO .inr2 .ttl {font-size:4.2rem; font-weight:normal; text-align:center;}
#VIDEO .inr2 .clm {margin:80px 0 0 0; display:flex; justify-content:space-between;}
#VIDEO .inr2 .clm > div {width:43.7%;}
#VIDEO .inr2 .cap {font-size:2.5rem; text-align:center; margin:25px 0 0 0;}
#VIDEO .inr3 {padding:80px 0 90px 0; background:url(../img/bg_08.jpg) no-repeat right center; background-size:cover; position:relative;}
#VIDEO .inr3::before {content:''; width:100%; height:100%; background:url(../img/bg_08_01.png) no-repeat left center; background-size:auto 100%; display:block; position:absolute; top:0; left:0;}
#VIDEO .inr3 .sec {position:relative; z-index:10;}
#VIDEO .inr3 .ttl {font-size:4.2rem; font-weight:normal; text-align:center;}
#VIDEO .inr3 .txt1 {text-align:center; margin:25px 0 0 0;}
#VIDEO .inr3 .txt2 {text-align:center; margin:25px 0 0 0;}
#VIDEO .inr3 .txt2 a {font-family:sans-serif; font-size:1.6rem; font-weight:bold; text-decoration:none; color:#000; padding:0 0 6px 38px; display:inline-block; position:relative; transition:opacity 0.3s ease;}
#VIDEO .inr3 .txt2 a:hover {opacity:0.7;}
#VIDEO .inr3 .txt2 a::before {content:''; width:28px; height:28px; margin:2px 0 0 0; background:url(../img/arrow_02.png) no-repeat center center; background-size:cover; display:block; position:absolute; top:0; left:0;}
#VIDEO .inr3 .txt2 a::after {content:''; width:100%; height:6px; background-color:#000; display:block; position:absolute; bottom:0; left:0;}
#VIDEO .inr4 {color:#fff; padding:80px 0 90px 0; background:url(../img/bg_09.png) no-repeat center center; background-size:cover; position:relative;}
#VIDEO .inr4 .txt {max-width:780px; text-align:left; margin:0 auto; display:inline-block;}
#VIDEO .inr4 .bnr {text-align:center; margin:15px 0 0 0;}
#VIDEO .inr4 .bnr a {transition:opacity 0.3s ease;}
#VIDEO .inr4 .bnr a:hover {opacity:0.7;}
@media screen and (max-width:767px){
	#VIDEO .inr1 {padding:17.3vw 0 20.0vw 0; background-image:url(../img/bg_07_sp.png);}
	#VIDEO .inr1 .txt2 {font-size:3.6vw; margin:17.3vw 0 0 0;}
	#VIDEO .inr1 .txt3 {font-size:7.6vw; line-height:1.4;}
	#VIDEO .inr1 .txt4 {font-size:5.3vw;}
	#VIDEO .inr1 .video {margin:9.3vw -9.0vw 0 -9.0vw;}
	#VIDEO .inr2 {padding:17.3vw 0;}
	#VIDEO .inr2 .ttl {font-size:7.6vw; }
	#VIDEO .inr2 .clm {margin:17.3vw 0 0 0; display:block;}
	#VIDEO .inr2 .clm > div {width:80.0vw; margin:7.4vw auto 0 auto;}
	#VIDEO .inr2 .clm > div:first-of-type {margin-top:0;}
	#VIDEO .inr2 .cap {font-size:5.0vw; margin:2.6vw 0 0 0;}
	#VIDEO .inr3 {padding:17.3vw 0; background-image:url(../img/bg_08_sp.jpg);}
	#VIDEO .inr3::before {background-image:url(../img/bg_08_01_sp.png) no-repeat left center;}
	#VIDEO .inr3 .ttl {font-size:7.6vw;}
	#VIDEO .inr3 .txt1 {text-align:left; margin:9.3vw -3.3vw 0 -3.3vw;}
	#VIDEO .inr3 .txt2 {margin:9.3vw 0 0 0;}
	#VIDEO .inr3 .txt2 a {font-size:3.1vw; padding:0 0 1.0vw 6.4vw;}
	#VIDEO .inr3 .txt2 a::before {width:4.8vw; height:4.8vw; margin:0.6vw 0 0 0;}
	#VIDEO .inr3 .txt2 a::after {height:0.8vw;}
	#VIDEO .inr4 {padding:17.3vw 0; background-image:url(../img/bg_09_sp.png);}
	#VIDEO .inr4 .sec {padding:0 3.3vw;}
	#VIDEO .inr4 .txt {max-width:100%;}
	#VIDEO .inr4 .bnr {margin:5.3vw 2.6vw 0 2.6vw;}
}

/* Cultural */
#Cultural {padding:90px 0 70px 0; position:relative;}
#Cultural .clm {display:flex; justify-content:space-between; position:relative;}
#Cultural .clm::before {content:''; width:760px; height:760px; margin:-380px 0 0 -280px; background:url(../img/kanji_05.png) no-repeat center center; background-size:cover; display:block; position:absolute; top:50%; left:0; z-index:1;}
#Cultural .clm > div {position:relative; z-index:10;}
#Cultural .clm > .ctx {width:48%; text-align:left;}
#Cultural .clm > .img {width:44.8%;}
#Cultural .ttl {font-size:3.8rem; font-weight:normal; line-height:1.4;}
#Cultural .ttl span {font-size:71%; display:block;}
#Cultural .ctx p {text-align:justify; margin:35px 0 0 0;}
#Cultural .cap {font-size:1.2rem; text-align:right; margin:5px 0 0 0;}
#Cultural.parallax {opacity:1; transform:translate3d(0,0,0);}
#Cultural.parallax.on {opacity:1; transform:translate3d(0,0,0);}
#Cultural.parallax .clm::before {opacity:0; transform:scale3d(1.2,1.2,1);}
#Cultural.parallax.on .clm::before {opacity:1; transform:scale3d(1,1,1); transition:opacity 1.0s 1.0s ease, transform 1.0s 1.0s ease;}
#Cultural.parallax .ttl {opacity:0; transform:translate3d(0,30px,0);}
#Cultural.parallax.on .ttl {opacity:1; transform:translate3d(0,0,0); transition:opacity 1.0s 2.5s ease, transform 1.0s 2.5s ease;}
#Cultural.parallax .ctx p {opacity:0; transform:translate3d(0,30px,0);}
#Cultural.parallax.on .ctx p {opacity:1; transform:translate3d(0,0,0); transition:opacity 1.0s 3.0s ease, transform 1.0s 3.0s ease;}
#Cultural.parallax .img {opacity:0; transform:translate3d(30px,0,0);}
#Cultural.parallax.on .img {opacity:1; transform:translate3d(0,0,0); transition:opacity 1.0s 3.5s ease, transform 1.0s 3.5s ease;}
@media screen and (max-width:767px){
	#Cultural {padding:17.3vw 0;}
	#Cultural .clm {display:block;}
	#Cultural .clm::before {width:133.3vw; height:133.3vw; margin:0 0 0 -66.6vw; top:0; left:50%;}
	#Cultural .clm > .ctx {width:auto;}
	#Cultural .clm > .img {width:auto; margin:17.3vw 0 0 0;}
	#Cultural .ttl {font-size:7.6vw;}
	#Cultural .ctx p {margin:8.6vw 0 0 0;}
	#Cultural .cap {font-size:2.1vw; margin:2.0vw 0 0 0;}
}

/* Dome */
#Dome {padding:90px 0; background:url(../img/bg_10.jpg) no-repeat center center; background-size:cover; position:relative;}
#Dome .clm {display:flex; justify-content:space-between; position:relative;}
#Dome .clm::before {content:''; width:650px; height:650px; margin:-325px -280px 0 0; background:url(../img/kanji_06.png) no-repeat center center; background-size:cover; display:block; position:absolute; top:50%; right:0; z-index:1;}
#Dome .clm > div {position:relative; z-index:10;}
#Dome .clm > .ctx {width:48%; text-align:left; order:2;}
#Dome .clm > .img {width:44.8%; order:1;}
#Dome .ttl {font-size:3.8rem; font-weight:normal; line-height:1.4;}
#Dome .ttl span {font-size:71%; display:block;}
#Dome .txt1 {text-align:justify; margin:35px 0 0 0;}
#Dome .txt2 {margin:30px 0 0 0;}
#Dome .txt2 a {font-family:sans-serif; font-size:1.6rem; font-weight:bold; text-decoration:none; color:#000; padding:0 0 6px 38px; display:inline-block; position:relative; transition:opacity 0.3s ease;}
#Dome .txt2 a:hover {opacity:0.7;}
#Dome .txt2 a::before {content:''; width:28px; height:28px; margin:2px 0 0 0; background:url(../img/arrow_02.png) no-repeat center center; background-size:cover; display:block; position:absolute; top:0; left:0;}
#Dome .txt2 a::after {content:''; width:100%; height:6px; background-color:#000; display:block; position:absolute; bottom:0; left:0;}
#Dome .img {display:flex; flex-wrap:wrap;}
#Dome .img > div {width:50%;}
#Dome .img > div:nth-of-type(1),
#Dome .img > div:nth-of-type(2) {width:100%;}
#Dome.parallax {opacity:0; transform:translate3d(0,0,0);}
#Dome.parallax.on {opacity:1; transform:translate3d(0,0,0);}
#Dome.parallax .clm::before {opacity:0; transform:scale3d(1.2,1.2,1);}
#Dome.parallax.on .clm::before {opacity:1; transform:scale3d(1,1,1); transition:opacity 1.0s 1.0s ease, transform 1.0s 1.0s ease;}
#Dome.parallax .ttl {opacity:0; transform:translate3d(0,30px,0);}
#Dome.parallax.on .ttl {opacity:1; transform:translate3d(0,0,0); transition:opacity 1.0s 2.5s ease, transform 1.0s 2.5s ease;}
#Dome.parallax .txt1 {opacity:0; transform:translate3d(0,30px,0);}
#Dome.parallax.on .txt1 {opacity:1; transform:translate3d(0,0,0); transition:opacity 1.0s 3.0s ease, transform 1.0s 3.0s ease;}
#Dome.parallax .txt2 {opacity:0; transform:translate3d(0,30px,0);}
#Dome.parallax.on .txt2 {opacity:1; transform:translate3d(0,0,0); transition:opacity 1.0s 3.5s ease, transform 1.0s 3.5s ease;}
#Dome.parallax .img {opacity:0; transform:translate3d(-30px,0,0);}
#Dome.parallax.on .img {opacity:1; transform:translate3d(0,0,0); transition:opacity 1.0s 3.5s ease, transform 1.0s 3.5s ease;}

@media screen and (max-width:767px){
	#Dome {padding:17.3vw 0; background-image:url(../img/bg_10_sp.jpg);}
	#Dome .clm {display:block;}
	#Dome .clm::before {width:133.3vw; height:133.3vw; margin:0 0 0 -66.6vw; top:0; left:50%; right:auto;}
	#Dome .clm > .ctx {width:auto;}
	#Dome .clm > .img {width:auto; margin:17.3vw 0 0 0;}
	#Dome .ttl {font-size:7.6vw;}
	#Dome .txt1 {margin:9.3vw 0 0 0;}
	#Dome .txt2 {margin:9.3vw 0 0 0;}
	#Dome .txt2 a {font-size:3.1vw; padding:0 0 1.0vw 6.4vw;}
	#Dome .txt2 a::before {width:4.8vw; height:4.8vw; margin:0.6vw 0 0 0;}
	#Dome .txt2 a::after {height:0.8vw;}
}
