html{
  overflow-x: visible!important;
}
.site-body{
  margin-top: 0!important;
}


/* フォント */
body{
  font-family:  "Noto Sans JP" ,serif!important;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-variation-settings:
    "BNCE" 0,
    "INFM" 0,
    "SPAC" 0;
  width: 100%;
  color: white!important;
}


/* 表示サイズ設定 */
section {
  padding: 0 20px;
  margin: 0 auto;
}

@media screen and (max-width:768px) {
  section{
    padding: 0 20px;
  }
}

/* 各コンテナの左右スペース設定 */
.site-body-container{
  margin: 0 auto!important;
  padding: 0!important
}
@media screen and (max-width:768px) {
  .site-body-container{
    padding: 0 20px!important;
  }
}

/* 共通 */
.padding-adjust{
    padding: 0 15px!important;
  }
/* レシポンブ対応で順番を入れ替える  */
@media screen and (max-width: 767px) {
  .container-1{
    order: 1;
  }

  .container-2{
    order: 2;
  }
  .container-3{
    order: 3;
  }

  /* ぱっでぃんぐで幅調整 */
  .padding-adjust{
    padding: 0 15px!important;
  }
  /* マージンで幅調整 */
  .margin-adjust{
    margin: 0 20px!important;
  }
}

/* pc,mobileでの画像表示切替 */
.mobile-img{
  display: none!important;
}

@media screen and (max-width: 767px) {
  .pc-img{
    display: none!important;
  }

  .mobile-img{
    display: block!important;
  }
}


/* フォント設定 */
p{
  line-height: 2!important;
  letter-spacing: 0.2rem;
  margin-bottom: 0!important;
  
}


.page_top_btn{
  color: transparent!important;
}

h1{
  font-size: 4rem!important;
  letter-spacing: 0.2rem;
}

 h2, h3, h4, h5{
  margin-bottom: 0!important;
  letter-spacing: 0.2rem;

}


.index-container{
  position: relative;
  width: fit-content;
}

.index-eng{
  font-size: 3.75rem;
  color: #808080!important;
  margin-bottom: -2rem!important;
  z-index: 10;
}

.index-title{
  font-size: 2.5rem!important;
  border-top: #ffde59 15px solid!important;
  border-bottom: #ffde59 15px solid!important;
  /* width: 50%; */
  padding: 0.6rem 0!important;
  white-space: nowrap;
}


@media screen and (max-width:768px) {
  .index-title{
    font-size: 1.3rem!important;
  }
  .index-eng{
    font-size: 2rem!important;
    margin-bottom: -1.3rem!important;
  }
}

.is-layout-flex{
  align-items: center!important;
}


/* ナビゲーション装飾 */
/* モバイルハンバーガーボタン消去 */
.vk-mobile-nav-menu-btn{
  display: none!important;
}

/* ヘッダー部分装飾 */
#site-header{
  background-color: black;
}

/* 表の表示設定 */
li, td{
  color: white;
  /* font-size: var(--vk-size-text-sm) !important; */
  /* list-style-type: none; */
  line-height: 2;
  letter-spacing: 0.2rem;
}
td{
  border: none!important;
}




/* 矢印 */
.arrow-pointer {
  display:inline-block;
  width: 180px;
  text-align:center;
  margin:5px;
  cursor:pointer;
  position: relative;
  text-decoration: none;
}
.arrow-pointer a{
  text-decoration: none;
  color: black;
}

.arrow-pointer::before {
  content: "";
  display: block;
  position: absolute;
  top: calc(50% - 5px);
  right: 15px;
  width: 20px;
  height: 5px;
  border: none;
  border-right: 2px solid black;
  border-bottom: 1px solid black;
  transform: skew(45deg);
  transition: .3s;
}
.arrow-pointer:hover::before{
 right: 10px;
 width: 30px;
}



/* フッター装飾 */
/* フッター黒 */
.site-footer{
  background-color: black;
}

/* footerコピーライト削除 */
.site-footer-copyright p:nth-child(2) {
	display: none;
}

/* footerろご */
.sns-logo{
  width: 3rem;
}

.sns-logo a:hover{
  transform: translateY(3px);
  transition: ease-in-out 0.5s;
}


.section-container div{
  max-width: none!important;
}

.grecaptcha-badge {
  bottom: 85px !important;
}


/* フッター */
.footer-menu div{
  text-align: center;
}

.site-footer img{
  width: 200px;
}

/* フッターの下線削除 */
.site-footer ul li a{
  border: none!important;
}

.site-footer-content{
  max-width: none!important;
}

@media screen and (max-width:992px) {
  /* menuセンター寄せ */
  .site-footer-content .row {
    flex-direction: column;
    text-align: center;
    align-items: center;
  }
}
.site-footer {
  border: white!important;
}


/* 動きのアニメーションcss */

/* 全体共通の設定 */
.blink2{
  opacity: 0;
  animation: blink2-animation 0.4s calc(var(--index) * 0.1s) both  ;
}
@keyframes blink2-animation {

  50%{
    opacity: 1;
    /* color: black; */
  }
  100%{
  opacity: 1;
  }
}

.blink{
  animation: blink-animation 2.4s calc(var(--index) * 0.1s) both infinite ;
}

@keyframes blink-animation {

  50% {
    color: black;
  }
}

.blink-white{
  animation: blink-animation2 2.4s calc(var(--index) * 0.1s) both infinite ;
}

@keyframes blink-animation2 {

  50% {
    color: #fafafa;
  }
}

.blink-continue{
  animation: blink-continue-anime 2s both infinite ;
}

@keyframes blink-continue-anime{
  0%,100%{
    opacity: 1;
  }
  50%{
    opacity: 0;
  }
}

/* フェードイン */
.fadeIn{
  opacity: 0;
}
.fadeIn.is-show {
/* opacity: 0; */
-webkit-animation: fade-in-bck 2.5s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
animation: fade-in-bck 2.5s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
}

@-webkit-keyframes fade-in-bck {
  0% {
    -webkit-transform: translateZ(80px);
            transform: translateZ(80px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
    opacity: 1;
  }
}
@keyframes fade-in-bck {
  0% {
    -webkit-transform: translateZ(80px);
            transform: translateZ(80px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
    opacity: 1;
  }
}

/* 下からフェードイン */
.fadeIn_up {
  opacity: 0;
  
}
.fadeIn_up.is-show {
  -webkit-animation: slide-in-bottom 1.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
	        animation: slide-in-bottom 1.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}
@-webkit-keyframes slide-in-bottom {
  0% {
    -webkit-transform: translateY(30%);
            transform: translateY(30%);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}
@keyframes slide-in-bottom {
  0% {
    -webkit-transform: translateY(30%);
            transform: translateY(30%);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}