@charset "UTF-8";
/* base
------------------------------------ */
body {
  width: 100%;
  height: 100%;
  font-size: 13px;
  line-height: 1.8em;
  color: #000;
  word-break: break-all;
  font-feature-settings: "palt";
}
section {
  width: 100%;
  padding: 60px 8%;
  margin: 0 auto;
  box-sizing: border-box;
}
.bg01 {

}

section {
    color: #fff;
}

h1 {
  font-size: 30px;
  font-weight: 800;
  margin: 0 auto 30px;
  text-align: center;
  line-height: 1.5;
}
h2 {
    font-size: 20px;
    font-size: 5.2vw;
    font-weight: 800;
    text-align: center;
    line-height: 1.5;
    margin: 0 auto 20px;
}
h3{
  font-size: 20px;
  color: #000;
  text-align: center;
  font-weight: bold;
  margin: 40px auto 20px;

}
.lead {font-size: 16px; font-weight: 800; text-align: left; line-height: 1.5; margin-bottom: 5px;}
.txt--sub {
    font-size: 12px;
    line-height: 1.4;
    text-indent: -1.4em;
    margin: 0 0 0 1.4em;
}
.lead+.txt--sub.center{ text-align: left; }
.pc{ display: none !important;}
.block--bg{ opacity: 1; }
.block--bg span:nth-of-type(1){
  width: 50vw;
  height: 50vw;
  top: -5%;
  left: -7%;
}
.block--bg span:nth-of-type(2){
  width: 70vw;
  height: 70vw;
  left: 43%;
  bottom: 0;
  }
.block--bg span:nth-of-type(3){
  width: 80vw;
  height: 110vw;
  bottom: -70px;
  left: -11%;
}
.block--bg span:nth-of-type(4){
  width: 50vw;
  height: 90vw;
  left: 50%;
}
.block--bg span:nth-of-type(5){
  width: 60vw;
  height: 50vw;
  left: 48%;
  top: -4%;
}
.block--bg span:nth-of-type(6){
  width: 60vw;
  height: 50vw;
}
.block--bg span:nth-of-type(7){
  width: 30vw;
  height: 30vw;
  left: 77%;
}
.block--bg span:nth-of-type(8){
	width: 180px;
	height: 180px;
	bottom: 1vh;
	left: 1%;
}
.block--bg span:nth-of-type(9){
  width: 140%;
  height: 27vw;
  left: -20%;
  bottom: 53vh;
}
.block--bg span:nth-of-type(10){
  width: 80vw;
  height: 20vw;
}
.block--bg span:nth-of-type(11){
  width: 80vw;
  height: 20vw;
}
.block--bg span:nth-of-type(12){
  width: 80vw;
  height: 20vw;
}

.block--hero {
    height: 100svh;
    position: relative;
    overflow: hidden;
}

.block--hero figure {
    width: 35vh;
    margin: 6vh auto 20px;
}
.block--hero .block {
    width: 100%;
    background: rgb(208 198 180 / 82%);
    padding: 30px 0;
    position: absolute;
    bottom: 0;
    left: 0;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
}
.logo {
    width: 40%;
    margin: 0 auto 10px;
    max-width: 200px;
}
.logo p {
    line-height: 0;
}

h1 {
    font-size: 6.2vw;
    font-weight: 900;
    margin: 0 auto;
    line-height: 1.4;
}
.scroll { bottom: 0; display: none;}

.block--dticket figure {
    width: 95%;
    margin: 20px auto 0;
}

.block--vr figure {
    width: 65%;
    margin: 20px auto 0;
}

.block--vr figure{ margin-bottom: 0; }
.block--vr h2 img {
    width: 90%;
    display: block;
    margin: 20px auto 0;
}
.block--vr .subTit {
    font-size: 19px;
    margin: 0 0 10px 0;
}
.block--contents{
margin: 0 0 30px 0;
}
.list--contents{
border-radius: 0;
    overflow: inherit;
    padding: 20px;  
}
.list--contents li{
display: block;
    width: 100%;
    float: none;
    text-align: left;
    height: auto;
    position: relative;
    margin-bottom: 30px;
    border-bottom: 1px solid #878787;
    border-radius: 0;
    padding: 0 0 30px;
}
.list--contents li:last-child {
    margin: 0;
    padding: 0;
    border: none;
}


.list--contents li .tit {
}
.list--contents li .tit img {
    position: relative;
    top: auto;
    left: auto;
    transform: none;
    -webkit-transform: none;
    -ms-transform: none;
}

.list--contents li .txt {
    font-size: 12px;
    text-align: center;
}
.list--contents li .subTit {
    font-weight: 600;
    font-size: 16px;
    text-align: center;
}
footer{
  padding-top: 0;
  color: #fff;
}
address{ margin-top: 0;}

#container .parts p:nth-child(1) {
    width: 150px;
}
#container .parts p:nth-child(2) {
    width: 100px;
    left: -14%;
    bottom: 50%;
}


/*------ animation ------*/
.block--hero figure{
  opacity: 0;
}
.loaded .block--hero figure{ 
    -webkit-animation: upIn 0.5s ease 0.3s 1 forwards;
    animation: upIn 0.5s ease 0.3s 1 forwards;
}
@-webkit-keyframes hero {
  0% {
    transform:scale(1);
    opacity: 0;
  }
  50% {
    transform:scale(1.45);
    opacity: 1;
  }
  100% {
    transform:scale(1);
    opacity: 1;
  }
}
@keyframes hero {
  0% {
    transform:scale(1);
    opacity: 0;
  }
  50% {
    transform:scale(1.2);
    opacity: 1;
  }
  100% {
    transform:scale(1);
    opacity: 1;
  }
}
.block--hero .block{
  opacity: 0;
  transform: translate3d(0,20vw,0);
  transition: .6s ease 1.1s;
}
.loaded .block--hero .block{
  opacity: 1;
  transform: translate3d(0,0,0);
}
h2.inview,
.block--lead.inview{
  transform: translate3d(0,40px,0);
  opacity: 0;

}
h2.inview.view,
.block--lead.inview.view{
  transform: translate3d(0,0,0);
  opacity: 1;
}
.block--dticket,
.block--vr {
  overflow: hidden;
}
.block--vr h2{
    font-size: 30px;
}
.block--vr h2 .arTit {
    width: 130px;
    margin: 10px auto;
}

.block--dticket figure,
.block--vr figure{
    opacity: 0;
    transform: translate3d(0,80px,0);
}
.block--dticket figure.view,
.block--vr figure.view{
    transform: translate3d(0,0,0);
    opacity: 1;
}
.block--vr h2 .sub {
    font-size: 16px;
}
.block--vr .lead {
    font-weight: 600;
    line-height: 1.8;
    font-size: 14px;
}
.block--vr .lead .mini {
    display: block;
    font-size: 10px;
    margin: 10px 0 0 0;
}
.list--contents li{
  transform: translate3d(0,40px,0);
  opacity: 0;
  transition: .4s;
}
.list--contents li.view{
  transform: translate3d(0,0,0);
  opacity: 1;
}

#bnr{width: 50%; margin-bottom: 10px;}

.block--vr .sub_bnr {
    font-size: 17px;
    width: 150px;
}

.block--vr .mainLead {
font-size: 18px;
    font-weight: bold;
    line-height: 1.8;
}
.block--vr .mainLead:after {
    position: absolute;
    bottom: -15px;
    top: auto;
    width: 40px;
    height: 40px;
}
.block--vr .pointListTit {
    font-size: 16px;
    margin: 0 0 20px 0;
}
.block--vr .topLead {
    font-size: 14px;
    text-align: left;
    margin: 0 0 20px 0;
}
.block--vr .topLead {
    font-size: 14px;
    text-align: left;
    margin: 0 0 20px 0;
}
.block--vr .pointListTit:before {
    content: '';
    display: inline-block;
    width: 30px;
    height: 30px;
}
.block--vr .pointListTit:after {
    content: '';
    display: inline-block;
    width: 30px;
    height: 30px;
    }
.block--vr .pointList {
    padding: 20px;
    margin: 0;
}    
.block--vr .pointList li {
    font-size: 13px;
    margin: 0 0 15px;
}
.block--vr .pointList li:last-child {
    margin: 0;
}
.block--vr .pointList li span {
    display: inline-block;
    width: 30px;
    height: 30px;
    position: absolute;
    left: -40px;
    top: 0;
}
.block--vr .pointList li p {
    font-size: 16px;
    font-weight: bold;
    margin: 0 0 5px 0;
}
.block--mov{
}
.block--mov .mov {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    margin: 0 auto 30px;   
}
.block--vr .btn a {
    width: 100%;
    margin: 30px auto 0;
    box-sizing: border-box;
font-size: 13px;    
}
.block--vr .btn a:hover{
opacity: 1;
}
.block--mov .tit {
    font-size: 19px;
    line-height: 1.5;
    margin: 0 0 20px 0;
}
.block--mov .lead {
    text-align: center;
    font-size: 14px;
}
.block--mov .lead span {
    font-size: 10px;
    display: block;
}
.list--contents li:nth-last-child(1), .list--contents li:nth-last-child(2) {
    margin: 0 auto 30px;
}



/* block--tour
----------------------------------- */

.block--tour h2 .sub {
    font-size: 16px;
}
.block--tour h2 {
    font-size: 32px;
    margin: 0 auto 60px;
}
.block--tour h2::before, .block--vr h2::before {
    width: 110px;
    height: 110px;
}
.block--vr h2::before {
    margin: 0 auto 60px;
    width: 140px;
    height: 140px;
}
.block--tour .block--lead div:nth-child(1) {
    width: 60%;
    margin: 0 auto 20px;
}
.block--tour .block--lead div:nth-child(2) {
    width: 100%;
}
.block--tour .block--lead .txt {
    font-size: 14px;
    line-height: 1.3;
}
.block--tour .block--lead {
    margin: 0 auto 30px;
}
.block--tour .contentsTit {
    font-size: 20px;
    margin: 0 auto 20px;
}
.block--tour .contentsList li {
    width: 100%;
    padding: 30px;
    margin: 0 0 20px 0;
}
.block--tour .contentsList li .tit {
    text-align: center;
    font-size: 13px;
    margin: 0 0 10px 0;
}
.block--tour .contentsList {
    margin: 0 auto 20px;
}
.block--tour .contentsTxt {
    font-size: 14px;
}

.block--campaign .tit {
    font-size: 18px;
    line-height: 1.5;
    margin: 0 0 20px 0;
}
.block--campaign .lead {
    font-size: 13px;
    line-height: 1.5;
    margin: 0 0 30px 0;
}
.block--campaign .step {
    padding: 20px;
}
.block--campaign .step dt {
    font-weight: bold;
    font-size: 13px;
    margin: 0 0 5px 0;
}
.block--campaign .step dd {
    font-size: 13px;
    font-weight: bold;
    text-indent: -1em;
    margin: 0 0 0 1em;
}
.block--campaign .data {
    padding: 15px;
    margin: 0 0 30px 0;
}
.block--campaign .data dt {
    border-bottom: 1px solid;
    font-size: 14px;
    padding: 0 0 5px 0;
    margin: 0 0 10px 0;
    font-weight: bold;
}
.block--campaign .detail {
    padding: 20px;
}
.block--campaign .detail .list li {
    padding: 20px 15px;
    text-align: center;
    width: 100%;
    margin: 0 0 10px 0;
}
.block--campaign .detail .list li .subTit {
    font-size: 13px;
}
.block--campaign .detail .list li .txt {
    font-size: 13px;
    text-align: left;
    line-height: 1.5;
}
.block--campaign .detail .list {
    margin: 0 auto 20px;
}
.block--campaign .attentionBox dt {
    font-size: 12px;
    margin: 0 0 10px 0;
}
.block--campaign .attentionBox {
    padding: 15px;
    border: 1px solid;
}
.block--campaign .attentionBox dd .attentionList li {
    font-size: 12px;
    text-indent: -1em;
    margin: 0 0 5px 1em;
    font-weight: bold;
    line-height: 1.5;
}
.block--campaign .data dd {
    font-size: 16px;
}



@media screen and (min-width: 758px) and (max-width: 960px) {
  body{ font-size: 14px;}
  .lead{ font-size: 24px;margin-bottom: 20px;}
  h2{ font-size: 6.2vw; margin-bottom: 60px; }
  .txt--sub{ font-size: 16px;}
  section { padding: 150px 10%; }
  .block--hero { height: 94vh;}


  
}
