@charset "utf-8";
@font-face {
    font-family: 'BLG';
    src: url(../font/bleage_font.ttf);
    font-weight: normal;
}
img{
  vertical-align: bottom;
  width: 100%;
}
p,span,h1,h2,h3,h4,div,nav{
  font-family: 'Noto Sans JP', sans-serif;
  font-style: normal;
  font-feature-settings: "palt";
}
html {
  scroll-padding-top: 0px; /* 固定ヘッダの高さ分 */
  font-size: 62.5%;
  overflow-x: hidden;
}
body {
  line-height: 1.6875;
}
.module_title{
  display: none;
}
.blg-font{
  font-family: 'BLG';
  src: url(font/bleage_font.ttf);
  background-size: cover;
}
.color-white{
  color: white;
}
@media (min-width: 700px) {
.sp-br{
  display: none;
}
}
.pc-br{
  display: none;
}
@media (min-width: 700px) {
.pc-br{
  display: block;
}
}


@font-face {
  font-family: 'BN';
  src: url(../font/BebasNeue-Regular.ttf);
  font-weight: normal;
  }
  @font-face {
  font-family: 'GS';
  src: url(../font/GeneralSans-Semibold.ttf);
  }


/* /*================================================== */
/* KV */
/* /*================================================== */

.bn-txt{
  font-family:'BN';
}
.kv-contents{
  position: relative;
}
.kv-ttl{
  position: absolute;
  align-items: baseline;
  top: 50%;
  transform: translateY(-50%);
  margin-left: 15px;
  font-weight: normal;
}
@media (min-width: 700px) {
  .kv-ttl{
    margin-left: 15%;
  }
}
@media (min-width: 1500px) {
  .kv-ttl{

  }
}
.kv-ttl h1{
  font-size: 8rem;
  font-weight: normal;
  line-height: 6rem;
  letter-spacing: 0.2rem;
}
@media (min-width: 700px) {
  .kv-ttl h1{
    font-size: 15rem;
    line-height: 13rem;
    letter-spacing: 0.5rem;
  }
}
.kv-ttl h2{
  font-size: 1.8rem;
  letter-spacing: 0.2rem;
}
@media (min-width: 700px) {
  .kv-ttl h2{
    font-size: 3rem;
    letter-spacing: 1.2rem;
  }
}


/* ---------------------------------------------------- */
/* スライダー*/
/* ---------------------------------------------------- */
.swipeBanner_spc {
  background-color:#ffffff ;
	padding: 50px 0;
  z-index: 20;
  position: relative;
}

.swipeBanner_spc_wrap {
	max-width: 1080px;
	margin: 0 auto;
	/* padding: 18px 0; */
}

.swipeBanner_spc img {
	width: 100%;
	max-width: 100%;
}

/* general
--------------- */
.onlySP {display: block;}
.onlySP_il {display: inline;}
.onlyPC, .onlyPC_il {display: none;}

/* style.css終わり */

/* pc.css始まり */
@media screen and (min-width: 640px) {

  .wrap_swipeCards1 h3 {
    font-size: 2rem;
  }
  
  .spc_swipeCards1 {	
    overflow-x: visible;
  }
  
  .inner_swipeCards1 {
    width: 100%;
  }
  
  .swipeCard1 {
    width: calc(33.33% - 10px);
  }
  
  /* general PC
  ------------------ */
  
  .onlyPC {display: block;}
  .onlyPC_il {display: inline;}
  .onlySP, .onlySP_il {display: none;}
  
  }
  
  
  @media screen and (min-width: 980px) {
    
  .swipeCard1 {
    width: calc(20% - 10px);
  }
  
  .player_blk {
    width: calc(33.33% - 20px);
  }
  
  }
/* ---------------------------------------------------- */
/* KV */
/* ---------------------------------------------------- */

/* ---------------------------------------------------- */
/* about */
/* ---------------------------------------------------- */
.wrapper{
  width: calc(100% - 50px);
  margin: 0 auto;
  padding: 60px 0 70px; 

}
@media (min-width: 700px) {
  .wrapper{
    max-width: 900px;
    width: calc(100% - 0px);
  }
}
.about-ttl{
  font-size: 2.8rem;
  text-align: center;
  padding-bottom: 30px;
  letter-spacing: 0.2rem;
  color: #A8A087;
  text-shadow: 0px 0px 5px #000000;
  line-height: 3.2rem;
}
@media (min-width: 700px) {
  .about-ttl{
    font-size: 4rem;
  }
}

@media (min-width: 700px) {
  .about h2{
    font-size: 5rem;
    padding-bottom: 30px;
  }
}
.about-txt{
  font-size: 1.5rem;
  line-height: 3.5rem;
  padding: 3rem 2rem;
  border: 1px solid #A8A087;
}
@media (min-width: 700px) {
  .about-txt{
    font-size: 1.6rem;
    line-height: 5rem;
    text-align: center;
  }
}
.about-container{
  color: #ffffff;
  background-repeat: repeat;
  background-size: contain;
  background-image: url(../img/top-bg.webp);
  padding-bottom: 5rem;
}

.map{
  width: calc(100% - 50px);
  margin: 0 auto;
  display: block;
  max-width: 700px;
}
@media (min-width: 700px) {
  .map{
    width: calc(100% - 0px);
  }
}
.map-big{
  font-size: 1.3rem;
  margin-bottom: 28px;
  text-align: center;
  color: #fff;
  text-decoration: underline;
}

.map-big a{
  color: #fff;
}

.map-txt{
  text-align: center;
  font-size: 1.5rem;
  width: calc(100% - 50px);
  margin: 0 auto 5rem;
  letter-spacing: 0.2rem;
  max-width: 900px;
  border: 1px solid #A8A087;
  padding: 3rem 2rem;
}

@media (min-width: 700px) {
  .map-txt{
  font-size: 2rem;
  width: calc(100% - 0px);
  }
}
/* ---------------------------------------------------- */
/* スライダー */
/* ---------------------------------------------------- */
.slider-wrapper {
  display: flex; /* スライドのグループを横並び */
  overflow: hidden; /* はみ出たスライドを隠す */
  transform: rotate(1.5deg) translateX(0);
}
.slider-wrapper2 {
  display: flex; /* スライドのグループを横並び */
  overflow: hidden; /* はみ出たスライドを隠す */
  transform: rotate(-1.5deg) translateX(0);
}

.slider {
  animation: scroll-left 180s infinite linear .5s both;
  display: flex; /* スライド3枚を横並び */
}
.slider2 {
  animation: scroll-right 180s infinite linear .5s both;
  display: flex; /* スライド3枚を横並び */
  padding: 50px 0;
}
.slide {
  width: 100%;
  list-style: none;
}
.slide img {
  display: block;
  width: auto;
  height: 100px;
}
@media (min-width: 700px) {
  .slide img {
    height: 160px;
    opacity: 0.8;
  }
}
.slide2{
  list-style: none;
}
.slide2 img {
  display: block;
  width: auto;
  height: 100px;
}
@media (min-width: 700px) {
  .slide2 img {
    height: 160px;
    opacity: 1;
  }
}
/* CSSアニメーション */
@keyframes scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes scroll-right {
    from {
      transform: translateX(-100%);
    }
      to {
      transform: translateX(0%);
    }
}

/* ---------------------------------------------------- */
/* news */
/* ---------------------------------------------------- */
.news-ttl{
  font-size: 7rem;
  line-height: 4rem;
  font-weight: normal;
  letter-spacing: 0.5rem;
  text-align: center;
}
@media (min-width: 700px) {
  .news-ttl{
    font-size: 10rem;
    line-height: 6rem;
  }
}

.news-sub-ttl{
  font-size: 2rem;
  padding-top: 1.5rem;
  letter-spacing: 0.5rem;
  text-align: center;
}
@media (min-width: 700px) {
.news-sub-ttl{
  padding-top: 20px;
  font-size: 2rem;
  letter-spacing: 0.5rem;
}
}

.accordion {
  max-width: 900px;
  margin: 0 auto;
  width: calc(100% - 30px);
}
.accordion-item {
  margin-top: 10px;
  cursor: pointer;
}
.accordion-title {
  position: relative;
  padding: 15px 60px 15px 20px;
  font-weight: bold;
  cursor: pointer;
  font-size: 1.5rem;
  font-weight: normal;
  border: 1px solid #A8A087;
}

.accordion-title::before,
.accordion-title::after {
  content: "";
  position: absolute;
  right: 20px;
  top: 0;
  bottom: 0;
  margin: auto 0;
  background-image: url(../img/icon_arrowR1.svg);
  width: 30px;
  height: 30px;
  transition: all 0.3s;
}

.accordion-content {
  padding: 0 20px 15px 20px;
  display: none;
  cursor: pointer;
  background-color: #ffffff;
}
.accordion-content img{
  padding: 50px 0;
}
.accordion-txt2{
  padding: 50px 0;
}
.accordion-txt{
  font-size: 1.5rem;
  padding-bottom: 50px;
  color: black;
}
.accordion-content.is-open {
  display: block;
}

.accordion-item.is-active .accordion-title::before {
  transform: rotate(90deg);
}

.accordion-item.is-active .accordion-title::after {
  transform: rotate(90deg);
  opacity: 0;
}

.news-btn{
  position: relative;
  padding: 13px 50px;
  color: #fff;
  background-color: #000000;
  text-decoration: none;
  font-size: 1.5rem;
  display: block;
  margin: 0 auto;
  max-width: 300px;
  font-weight: bold;
  letter-spacing: 0.2rem;
  text-align: center;
}

.news-btn::after {
  content: '';
  position: absolute;
  right: 20px;
  top: 35%;
  width: 15px;
  height:15px;
  background-image: url(../img/icon_arrowR2.svg);
  transform: translate(0, 0%) rotate(0deg);
}

/*==================================
動きの設定
===================================*/
/*背景色が伸びて出現（左から・右から）*/
.bgextend{
	animation-name:bgextendAnimeBase;
	animation-duration:1s;
	animation-fill-mode:forwards;
	position: relative;
	overflow: hidden;/*はみ出た色要素を隠す*/
	opacity:0;
}

@keyframes bgextendAnimeBase{
  from {
    opacity:0;
  }

  to {
    opacity:1;  
}
}

.bgextend2{
	animation-name:bgextendAnimeBase;
	animation-duration:1s;
	animation-fill-mode:forwards;
	position: relative;
	overflow: hidden;/*はみ出た色要素を隠す*/
	opacity:0;
}

/*中の要素*/
.bgappear{
	animation-name:bgextendAnimeSecond;
	animation-duration:1s;
	animation-delay: 0.6s;
	animation-fill-mode:forwards;
	opacity: 0;
}
.bgappear2{
	animation-name:bgextendAnimeSecond;
	animation-duration:1s;
	animation-delay: 0.6s;
	animation-fill-mode:forwards;
	opacity: 0;
}

@keyframes bgextendAnimeSecond{
	0% {
	opacity: 0;
	}
	100% {
	opacity: 1;
}
}

/*背景色が伸びて出現（左から）*/
.bgLRextend::before{
	animation-name:bgLRextendAnime;
	animation-duration:1s;
	animation-fill-mode:forwards;
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #272727;/*伸びる背景色の設定*/
}
@keyframes bgLRextendAnime{
	0% {
		transform-origin:left;
		transform:scaleX(0);
	}
	50% {
		transform-origin:left;
		transform:scaleX(1);
	}
	50.001% {
		transform-origin:right;
	}
	100% {
		transform-origin:right;
		transform:scaleX(0);
	}
}

.bgLRextend2::before{
	animation-name:bgLRextendAnime;
	animation-duration:1s;
	animation-fill-mode:forwards;
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #918871;/*伸びる背景色の設定*/
}

/*背景色が伸びて出現（右から）*/
.bgRLextend::before{
	animation-name:bgRLextendAnime;
	animation-duration:1s;
	animation-fill-mode:forwards;
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #111;/*伸びる背景色の設定*/
}
@keyframes bgRLextendAnime{
	0% {
		transform-origin:right;
		transform:scaleX(0);
	}
	50% {
		transform-origin:right;
		transform:scaleX(1);
	}
	50.001% {
		transform-origin:left;
	}
	100% {
		transform-origin:left;
		transform:scaleX(0);
	}
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
.bgappearTrigger,
.bgUDextendTrigger,
.bgDUextendTrigger,
.bgRLextendTrigger,
.bgLRextendTrigger{
    opacity: 0;
}

.bgappearTrigger2,
.bgUDextendTrigger2,
.bgDUextendTrigger2,
.bgRLextendTrigger2,
.bgLRextendTrigger2{
    opacity: 0;
}

/* fadeup */
.fadeUp{
  animation-name:fadeUpAnime;
  animation-duration:0.5s;
  animation-fill-mode:forwards;
  opacity:0;
  }
  
  @keyframes fadeUpAnime{
    from {
      opacity: 0;
    transform: translateY(100px);
    }
  
    to {
      opacity: 1;
    transform: translateY(0);
    }
  }
  .fadeUpTrigger{
      opacity: 0;
  }

  /* 左から */
.fadeLeft{
  animation-name:fadeLeftAnime;
  animation-duration:0.5s;
  animation-fill-mode:forwards;
  opacity:0;
  }
  
  @keyframes fadeLeftAnime{
    from {
      opacity: 0;
    transform: translateX(-100px);
    }
  
    to {
      opacity: 1;
    transform: translateX(0);
    }
  }
  

/* 上から */

.fadeDown{
  animation-name:fadeDownAnime;
  animation-duration:0.5s;
  animation-fill-mode:forwards;
  opacity:0;
  }
  
  @keyframes fadeDownAnime{
    from {
      opacity: 0;
    transform: translateY(-100px);
    }
  
    to {
      opacity: 1;
    transform: translateY(0);
    }
  }


.partners-bg{
  background-color: #fff !important;
}

.sponser1{
  width: 300px;
  display: block;
  margin: 0 auto;
}
.sponser1 img{
  width: 100%;
}
.sponser2{
  width: 230px;
  display: block;
  margin: 0 auto;
  padding-bottom: 5rem;
}
.sponser2 img{
  width: 100%;
}

@media (min-width: 700px) {
  .sponser2{
    width: 300px;
  }
}
@media (min-width: 700px) {
  .sponser1{
    width: 450px;
  }
}

/* ---------------------------------------------------- */
/* アナウンス */
/* ---------------------------------------------------- */
.announce-contents{
  padding-top: 5rem;
}
.announce-wrap{
  width: calc(100% - 50px);
  margin: 0 auto;
}
@media (min-width: 700px) {
  .announce-wrap{
    width: calc(100% - 0px);
    max-width: 900px;
  }
}

.announce-ttl{
  font-size: 1.6rem;
  font-weight: 500;
  padding-bottom: 1rem;
}
@media (min-width: 700px) {
  .announce-ttl{
    font-size: 1.8rem;
  }
}
.announce-txt{
  font-size: 1.5rem;
}
@media (min-width: 700px) {
.announce-txt-pc{
  font-size: 1.6rem;
  font-weight: 500;
  padding-bottom: 1rem;
}
}
.announce-item{
  border-bottom: 1px solid #CAA961;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
}
@media (min-width: 700px) {
  .announce-item{
  margin-bottom: 2rem;
  }
}
.text-underline{
  color: #CAA961;
  border-bottom: 1px solid #CAA961;
}
.announce-btn{
  border-bottom:1px solid rgb(0, 0, 0) ;
  font-size: 1.5rem;
  color:black;
}
@media (min-width: 700px) {
  .announce-btn{
    font-weight: 500;
    font-size: 1.6rem;
  }
}
.announce-btn:hover{
  color: #CAA961;
}

/* ---------------------------------------------------- */
/* contact */
/* ---------------------------------------------------- */
.question{
  color: #CAA961;
  font-size: 1.8rem;
  padding-right: 1rem;
}
.answer{
  color: #CAA961;
  font-size: 1.8rem;
  padding-right: 1rem;
}
.accordion-txt2{
  font-size: 1.5rem;
  padding: 30px 0 30px;
  color: black;
}
.accordion-txt2 a{
  text-decoration: underline;
  color: #CAA961;
}
.accordion-bg{
  background-color: #fffdf9;
}
.contact-contents{
  padding-top: 8rem;
}
@media (min-width: 700px) {
  .contact-contents{
    padding-top: 10rem;
  }
}
.accordion2{
  margin-bottom: 0 !important;
}
.form-txt{
  padding-top: 5rem;
  font-size: 1.5rem;
  width: calc(100% - 50px);
  margin: 0 auto;
  letter-spacing: 0.2rem;
  padding-bottom: 1.5rem;
}
@media (min-width: 700px) {
  .form-txt{
  max-width: 900px;
  width: calc(100% - 0);
  text-align: center;
  padding-bottom: 3rem;
  }
}
.form-btn{
  color: white;
  display: flex;
  margin: 0 auto;
  padding: 15px 20px 15px 15px;
  box-sizing: border-box;
  letter-spacing: 0.2rem;
  font-size: 1.5rem;
  width: calc(100% - 50px);
  align-items: center;
  justify-content: space-between;
  max-width: 450px;
}
@media (min-width: 700px) {
.form-btn{
padding: 20px 25px 20px 20px;
}
}
.form-btn:hover{
  opacity: 0.2;
  cursor: pointer;
}
.form-btn img{
  width: 20px;
}
