@charset "UTF-8";
body {
  /* 游ゴシック系のフォント */
  font-family: 'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
  color: #333333;
  font-size: 12px;
  line-height: 150%;
  background-color: #efefef;
  margin: 0;
  padding: 0;
  
}
.pc {
  display: block;
}
.none{
  display: none;
}
.smp {
  display: none;
}
a {
  color: #333333;
  text-decoration: none;
}
a:hover {
  cursor: pointer;
  text-decoration: none;
}
img {
  border: none;
  vertical-align: bottom;
}
table {
  width: 100%;
  border-collapse: collapse;
}
li {
  list-style: none;
}
.clearfix::after {
  content: "";
  display: block;
  clear: both;
}
.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.img-responsive {
  width: 100%;
  height: auto;
}
*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}
.header{
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 200;
}
.header-container{
  max-width: 1080px;
  margin: 10px auto;
  display: flex;
  -webkit-align-items: flex-end;    /* Safari etc. */
  -ms-align-items    : flex-end;    /* IE10        */
  align-items        : flex-end;
}
.main-v{
  height: 85vh;
  max-width: 100%;
  background-image: url(../img/main-img.jpg);
  background-size: cover;
  background-position:  right bottom;
  background-repeat: no-repeat;
  position: relative;
  z-index: -100;
}
.position-c{
  position: relative;
  max-width: 1080px;
  margin: 0 auto;
  height: 100%;
}
.forever{
  position: absolute;
font-size: 3em;
left: 30%;
top: 50%;
transform: translate(-50%, -50%);
font-weight: bold;
color: #ffffff;
}
.main-v-text{
  height: 15vh;
  position: relative;
}
.text-h{
  position: absolute;
  width: 80%;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  line-height: 3vh;
  letter-spacing: 0.1em;
}
.h1{
  width: 100px;
  margin-right: 50px;
}
.nav{
  display: flex;
  flex-direction: row;

}
.nav__item{
  margin: 10px;
  margin-bottom: 0;
  width: 90px;
  text-align: center;
}
.text-c{
  text-align: center;
}
.parks,.nowparks,.kings{
  height: 700px;
  max-width: 100%;
  background-size: cover;
  background-position:  center;
  background-repeat: no-repeat;
  position: relative;
}

.parks{
  height: 100vh;
  background-image: url(../img/v1.jpg);
  background-attachment: fixed;
}
.nowparks{
  background-image: url(../img/nowparks.jpg);
}
.kings{
  background-image: url(../img/osakakings.jpg);
  height: 80vh;
}
.position-c-img{
  width: 100px;
position: absolute;
top: 30px;
left: 10px;
}
.kings01{
  width: 150px;
}
.container-contents{
  position: absolute;
  left: 50%;
  top: 60%;
  transform: translate(-50%, -50%);
  width: 100%;
  text-align: center;
}
.container-contents_kings{
  top:80%;
}
.container-title{
  color: #ffffff;
  font-size: 3em;
  margin-bottom: 60px;
}
.movie{
  margin-top: 200px;
  padding: 50px 0;
  background-color: #231815;
  color: #ffffff;
  text-align: center;
}
.movie-title,.event-title{
  font-size: 3em;
  text-align: center;
  
}
.lh-4{
  margin: 40px 0;
  line-height: 4vh;
  font-size: 1.3em;
}
.event{
  padding: 50px 0;
}
.contents{
  padding: 50px 0;
  max-width: 1080px;
  margin: 10px auto;
}
.event-box{
display: flex;
margin: 30px 0 80px;
align-items: center;
justify-content: space-between;
}
.event-box-img{
  width: 60%;
}
.event-box-anno{
  width: 30%;
  text-align: center;
}
.event-box-anno-p{
line-height: 2.8em;
}
.btn{
  margin: 20px auto ;
}
.btn_link{
  display: block;
  width: 130px;
  margin: 0 auto;
  padding: 10px;
  border: 1px solid #000000;
}
.btn_link_white{
  display: block;
  width: 130px;
  margin: 0 auto;
  padding: 10px;
  border: none;
  background-color: #efefef;
  color: #000000;
}
.event-box:nth-child(even){
  flex-direction: row-reverse;
}
.ft_sns ul{
  display: flex;
width: 120px;
margin: 30px auto;
justify-content: space-between;

}

.white{
  color: #efefef;
}
.black{
  color: #231815;
}
.kings-word{
  position: absolute;
  top:150px;
  left: 80px;
  color: #ffffff;
  font-size: 2.5em;
  line-height: 2em;
  letter-spacing: 1.1rem;
}
.small{
  font-size: 0.8rem;
}
.slider img{
  height: 200px;
  object-fit: cover;
}


.sliderArea {
  /* background: #fff; */
  overflow: hidden;
}
.sliderWide {
  max-width: 100%;
  margin: 0 auto;
  padding: 50px 0;
}
.sliderWide .slick-arrow {
  opacity: 0;
  transition-duration: 0.3s;
}
.sliderWide:hover .slick-arrow {
  opacity: 1;
}
.slider01 {
  width: 600px;
  margin: 0 auto;
  padding: 0;
}
.slider01 .slick-list {
  overflow: visible;
}

.slider01 .slick-slide {
  
  opacity: .5;
  transition-duration: 0.3s;
  width: 590px!important;
}
.slide100{
  padding: 0 80px;
}
.slider01 .slick-slide.slick-current {
  opacity: 1;
}
.slider01 .slick-slide a {
  display: block;
}
.slider01 .slick-slide a:hover {
  display: block;
  opacity: .7;
}
.slider01 img {
  height: auto;
  width: 100%;
}
.slider01 a,.slider03 a{
  color: #ffffff;
}
.slick-prev, .slick-next {
  z-index: 1;
}
.slick-dots {
  bottom: -33px;
}
.slide-arrow {
  bottom: 0;
  cursor: pointer;
  margin: auto;
  position: absolute;
  top: 0;
  width: 30px;
}
.prev-arrow {
  width: 30px!important;
  left: -30px;
}
.next-arrow {
  width: 30px!important;
  right: -30px;
}
.slider01 p{
margin-top: 20px;
}
.contact{
  color: #3e3a39;
  background-color: #b5b5b6;
}
.contact-title{
  font-size: 3em;
  text-align: center;
  margin-bottom: 30px;
}
.footer{
  padding: 15px 0 10px;
  color: #3e3a39;
}
.conpany{
  text-align: right;
  text-decoration: underline;
  position: relative;
  top: -18px;
}


.contact_form {
  width: 100%;
  max-width: 1080px;
  /* font-size:1vh; */
  line-height: 2;
margin: 0 auto;
  }
  dl {
    display: flex;
    flex-wrap: wrap;
    width: 600px;
    align-items: center;
    margin: 0 auto;
  }
  
  .contact_form dt {
width: 110px;
margin-bottom: 20px;
    }
    .contact_form dd {
    width: 490px;
    /* max-width: 640px; */
    margin-bottom: 20px;
    /* border: 1px solid #000;
    box-sizing: border-box; */ 
  }
input[type="text"],input[type="email"],textarea{
 width: 100%;
  padding: 15px 15px;
  font-size: 1vh;
  border: none;
  border-radius: 5px;
}

input[type="radio"]{
vertical-align:middle;
margin-left: 20px;
}
input[type="radio"]:first-child{
margin-left: 0;
}
.contact_form p.btnSubmit input[type="submit"] {
  -webkit-appearance: none;
	border-radius: 0;
 width: 100px;
  padding: 5px 10px;
margin-top: 30px;
  color: #000000;
 font-size: 0.8rem;
  cursor: pointer;
  border: none;
  background-color: white!important;
  }
 .contact_form p.btnSubmit{
text-align: center;
  }
  .section_title_thanks{
    text-align: center;
    line-height: 4vh;
    padding: 200px 0;
  }
  .kaisha{
    width: 450px;
    margin: 70px auto 0;
    line-height: 200%;
  }
  .kaisha th{
width: 120px;vertical-align: top;
  }
  .kaisha th,
.kaisha td {
border: none;
padding: 20px 20px;
font-weight: normal;
}
.company-main{
  background-color: #ffffff;
  padding-top: 150px;
  padding-bottom: 150px;
}
.company-title{
  margin-bottom: 20px;
}
.lh5{
  line-height: 200%;
}
.slider03 {
  margin: 30px auto 0;
  /* max-width: 500px; */
  width: 80%;
}
.slick03-img img {
  height: auto;
  object-fit: cover;
  width: 100%;
}
.visual{
  width:100%;
  height:100vh;
  /* position:relative; */
  z-index: -1;
  /* background: url(../img/nowparks.jpg) no-repeat  bottom; */
  background-size:cover;
  text-align: center;
  margin-bottom: ;
}
#video {
  min-width:100%;
  min-height:100%;
  overflow:hidden;
  display: flex;
  position: absolute;
  z-index:-1;
}

.coverTop {
  width: 100%;
  height:100vh;
  position: absolute;
  background-image: linear-gradient(45deg, rgba(0, 0, 0, 0.164) 50%, rgba(0, 0, 0, 0.384) 50%);
  background-size: 2px 2px;
  z-index:2;
}
.p{
  position: relative;
}
.nowparks_btn{
  /* position: absolute;
  left: 50%;
  bottom: 50%;
  transform: translate(-50%, -50%);
  z-index: 100; */
position: absolute;
text-align: center;

  z-index: 100;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

@media screen and (max-width: 656px) {
  body {
    font-size: 12px;
  }
  .pc {
    display: none;
  }
  .smp {
    display: block;
  }
  .text-h{
    left: inherit;
    top:0;
    letter-spacing: 0.1em;
  }
  .text-h{
    position: relative;
    width: 98%;
    line-height: inherit;
    transform: inherit;
    margin: 20px 0;
  }
  .main-v-text{
    height: auto;
  }
  .container-title {
    color: #ffffff;
    font-size: 2em;
    margin-bottom: 60px;
    line-height: 150%;
}
.kings-word{
  position: absolute;
  top: 150px;
  left: 20px;
  color: #ffffff;
  font-size: 1.3em;
  line-height: 1.4em;
  letter-spacing: 0.6rem;
}
.slider img {
  height:  100px;
}
.movie {
  margin-top: 100px;
  padding: 50px 0;
  background-color: #231815;
  color: #ffffff;
  text-align: center;
}
.lh-4 {
  margin: 40px 5px;
  line-height: 200%;
  font-size: 1em;
}
.slider01 {
  width: 300px;
  margin: 0 auto;
  padding: 0;
}
.slider03 p {
  margin-top: 20px;
  text-align: center;
  color: #ffffff;
}
.prev-arrow,.next-arrow{
  width: 20px !important;
}
.event-box{
  flex-direction: column !important;
  margin-bottom: 50px;
}
.event-box:last-child{
  margin-bottom: 20px;
}
.event-box-img,.event-box-anno{
  width: 95%;
  margin: 0 auto;
}
.event-box-anno{
  margin-top: 30px;
}
.event{
  padding-bottom: 0px;
}
.footer{
  margin: 0 20px;
}
dl{
  display: inherit;
  width: 100%;
  padding-bottom: 20;
}
.contact_form dd {
  width: 100%;
}
.contact_form {
  width: 95%;
  margin: 0 auto;
}
.kaisha{
  width: 100%;
  margin: 20px;
}
.kaisha th, .kaisha td {
  display: block;
  padding: 10px;
  text-align: left;
}
.btn01 {
	/* ボタンの配置位置  */
	position: fixed;
	top: 16px;
	right: 16px;
	/* 最前面に */
	z-index: 109;
	/* ボタンの大きさ  */
	width: 24px;
	height: 30px;
}button {
	margin: 0;
	padding: 0;
	outline: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: inherit;
	vertical-align: middle;
	text-align: inherit;
	font: inherit;
	-webkit-appearance: none;
	appearance: none;
}
/***** 真ん中のバーガー線 *****/
.btn-line {
	display: block;
	/* バーガー線の位置基準として設定 */
	position: relative;
	/* 線の長さと高さ */
	width: 100%;
	height: 4px;
	/* バーガー線の色 */
	background-color: #000000;
	transition: .2s;
}
/***** 上下のバーガー線 *****/
.btn-line::before , .btn-line::after {
	content: "";
	/* 基準線と同じ大きさと色 */
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: #000000;
	transition: .5s;
}
.btn-line::before {
	/* 上の線の位置 */
	transform: translateY(-10px);
}
.btn-line::after {
	/* 下の線の位置 */
	transform: translateY(10px);
}
/***** メニューオープン時 *****/
.btn-line.open {
	/* 真ん中の線を透明に */
	background-color: transparent;
}
.btn-line.open::before , .btn-line.open::after {
	content: "";
	background-color: #333;
	transition: .2s;
}
.btn-line.open::before {
	/* 上の線を傾ける */
	transform: rotate(45deg);
}
.btn-line.open::after {
	/* 上の線を傾ける */
	transform: rotate(-45deg);
}
/**************** ここまで、ハンバーガーボタンのスタイリング ****************/
/**************** 以下、メニューのスタイリング ****************/
.menu {
	/* メニューを縦に */
	display: flex;
	flex-direction: column;
	position: fixed;
  /* メニューの位置マイナス指定で画面外に */
  top: 60px;
	right: -70%;
	width: 70%;
	height: 70vh;
	background-color: rgba(239, 239, 239, .9);
  color: #000000;
  
	transition: .3s;
}
.menu-list {
	/* メニューテキスト位置をリスト内中心に */
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}
.menu-list:hover {
	background-color: rgba(255, 255, 255, .5);
	color: #333;
	cursor: pointer;
	transition: .3s;
}
/***** メニューオープン時位置0にして画面内に *****/
.menu.open {
	position: absolute;
	right: 0;
}
.forever {
  position: absolute;
  font-size: 2em;
  left: 30%;
  top: 35%;
  /* transform: translate(-50%, -50%); */
  font-weight: bold;
}
.kings-word{
 width: 90%;
}
.movie-title, .event-title,.contact-title{
  font-size: 2em;
}
input[type="radio"]{
  margin-left: 0;
}
input[type="submit"]{
  appearance: none;
  -webkit-appearance: none;
}
.conpany{
  top: 0px;
  text-align: center;
}

.parks,.kings{
  height: 600px;
  background-attachment: inherit;
}
.nowparks{
  height: 300px;
}
.main-v{
  background-image: url(../img/main-img_smp.jpg);
}
.parks{
  background-image: url(../img/v1_smp.jpg);
}
.nowparks{
  background-image: url(../img/nowparks_smp.jpg);
}
.kings{
  background-image: url(../img/osakakings.jpg);
  height: 75vh;
}


.header{
  margin-left: 10px;
}

.visual{
 
  height:40vh;
}
#video {
  width:100%;
  height:40vh;
  overflow:hidden;
  display: flex;
  position: absolute;
  z-index:-1;
}
.coverTop {
  width: 100%;
  height:40vh;
  position: absolute;

}
.nowparks_btn{
  position: absolute;
  left: 50%;
  bottom: 30%;
  transform: translate(-50%, -50%);
}


}
.anime{
  opacity: 0;
}
.anim-box{
  animation-delay: 20s;
  animation: slideIn 3s cubic-bezier(0.5, 1, 0.5, 1) 1 forwards;
}
@keyframes slideIn {
  0% {
    transform: translateX(80px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
  }
 100% {
    opacity: 1;
  }
  
}

.top-title {
  display: flex;
  /* overflow: hidden; */
  color: #000000;
  font-family: 'Josefin Sans', sans-serif;
}

.top-title span {
  display: block;
  /* transform: translate(0, 105%);*/
  transition: transform cubic-bezier(0.215, 0.
  61, 0.355, 1) 0.5s; 
  opacity: 0;
}

.top-title.-visible span {
  /* transform: translate(0, 0); */
  opacity: 1;
}

.top-title span:nth-child(2) {
  transition-delay: 0.06s;
}
.top-title span:nth-child(3) {
  transition-delay: 0.12s;
}
.top-title span:nth-child(4) {
  transition-delay: 0.18s;
}
.top-title span:nth-child(5) {
  transition-delay: 0.24s;
}
.top-title span:nth-child(6) {
  transition-delay: 0.30s;
}
.top-title span:nth-child(7) {
  transition-delay: 0.36s;
}
.top-title span:nth-child(8) {
  transition-delay: 0.42s;
}
.top-title span:nth-child(9) {
  transition-delay: 0.48s;
}
.top-title span:nth-child(10) {
  transition-delay: 0.54s;
}
.top-title span:nth-child(11) {
  transition-delay: 0.6s;
}
.top-title span:nth-child(12) {
  transition-delay: 0.66s;
}
.top-title span:nth-child(13) {
  transition-delay: 0.72s;
}
.top-title span:nth-child(14) {
  transition-delay: 0.78s;
}
.top-title span:nth-child(15) {
  transition-delay: 0.84s;
}
.top-title span:nth-child(16) {
  transition-delay: 0.90s;
}


