@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);
}
.color-white{
  color: white;
}
@media (min-width: 700px) {
.sp-br{
  display: none;
}
}
.pc-br{
  display: none;
}
@media (min-width: 700px) {
.pc-br{
  display: block;
}
}

.color-black{
  color: #000000 !important;
}
/* ---------------------------------------------------- */
/* スライダー*/
/* ---------------------------------------------------- */
.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% - 20px);
  margin: 0 auto;
  padding: 60px 0 70px; 
}
@media (min-width: 700px) {
  .wrapper{
    max-width: 900px;
    width: calc(100% - 0px);
  }
}

.about_wrapper{
  background-color: #000000;
  background-image: url(../img/bg_about.webp);
  background-position: bottom;
  background-size: cover;
}

.topics_wrapper{
  background-color: #090909;
}

.about-ttl{
  font-size: 2rem;
  text-align: center;
  padding-bottom: 30px;
}

@media (min-width: 700px) {
  .about h2{
    font-size: 5rem;
    padding-bottom: 30px;
  }
}
.about-txt{
  font-size: 1.5rem;
  line-height: 3.5rem;
  text-shadow: 0px 0px 4px black;
}
@media (min-width: 700px) {
  .about-txt{
    font-size: 1.6rem;
    line-height: 5rem;
    text-align: center;
  }
}
.about-container{
  color: #ffffff;
  background-repeat: no-repeat;
  background-size: cover;
}
/* ---------------------------------------------------- */
/* スライダー */
/* ---------------------------------------------------- */
.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: 8rem;
  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;
  background-color: #ffffff;
  font-size: 1.5rem;
  font-weight: normal;
  color: #000000;
}

.accordion-title::before,
.accordion-title::after {
  content: "";
  position: absolute;
  right: 20px;
  top: 0;
  bottom: 0;
  margin: auto 0;
  background-image: url(../img/icon_arrowR3.svg);
  width: 15px;
  height: 15px;
  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;
  }
}

.map{
  width: calc(100% - 30px);
  margin: 0 auto;
  display: block;
  padding-bottom: 5rem;
}

@media (min-width: 700px) {
  .map{
  width: calc(100% - 0px);
  max-width: 800px;
  }
}

.access_img{
  width: calc(100% - 30px);
  margin: 0 auto;
}

@media (min-width: 700px) {
  .access_img{
  width: calc(100% - 0px);
  max-width: 900px;
  margin-bottom: 5rem;
  }
}

.access_link img:hover{
  opacity: 0.6;
}