/*

Theme Name: Lightning Child 

Theme URI:

Template: lightning

Description: lightningの子テーマです。

Author: t-shimizu

*/



/* テーマファイルトップの余白調整 */





.home .siteContent {

  padding: 0;

}

.top_grid :is(*, div):nth-child(1) {

  order: 1;

}

.top_grid :is(*, div):nth-child(2) {

  order: 2;

}

.top_grid :is(*, div):nth-child(3) {

  order: 3;

}

.top_grid :is(*, div):nth-child(4) {

  order: 4;

}

.top_grid :is(*, div):nth-child(5) {

  order: 5;

}

.top_grid :is(*, div):nth-child(6) {

  order: 6;

}

.top_grid :is(*, div):nth-child(7) {

  order: 7;

}

.top_grid :is(*, div):nth-child(8) {

  order: 8;

}





@media (max-width: 1200px) {

  .home .siteContent {

      padding: 0;

  }

}

@media (max-width: 992px) {

  .home .siteContent {

      padding: 0;

  }

  .top_grid :is(*, div):nth-child(1) {

    order: 1;

  }

  .top_grid :is(*, div):nth-child(2) {

    order: 2;

  }

  .top_grid :is(*, div):nth-child(3) {

    order: 3;

  }

  .top_grid :is(*, div):nth-child(4) {

    order: 5;

  }

  .top_grid :is(*, div):nth-child(5) {

    order: 4;

  }

  .top_grid :is(*, div):nth-child(6) {

    order: 8;

  }

  .top_grid :is(*, div):nth-child(7) {

    order: 6;

  }

  .top_grid :is(*, div):nth-child(8) {

    order: 7;

  }



}

@media (max-width: 768px) {

  .home .siteContent {

      padding: 0;

  }

  .top_grid :is(*, div):nth-child(1) {

    order: 1;

  }

  .top_grid :is(*, div):nth-child(2) {

    order: 2;

  }

  .top_grid :is(*, div):nth-child(3) {

    order: 3;

  }

  .top_grid :is(*, div):nth-child(4) {

    order: 5;

  }

  .top_grid :is(*, div):nth-child(5) {

    order: 4;

  }

  .top_grid :is(*, div):nth-child(6) {

    order: 8;

  }

  .top_grid :is(*, div):nth-child(7) {

    order: 6;

  }

  .top_grid :is(*, div):nth-child(8) {

    order: 7;

  }

}







/* 子テーマファイルオリジナルCSS */



body{

  font-family: 'Montserrat', sans-serif, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo;

}





.ani-fadeIn.animated {

  opacity: 1 !important;

  transition: opacity 3s cubic-bezier(0.155, 0.91, 0.695, 0.95);

}



.ani-fadeInUp {

  position: relative;

  transform: translate(0, 140px);

  transition: opacity 1s cubic-bezier(0.155, 0.91, 0.695, 0.95), transform 1s cubic-bezier(0.155, 0.91, 0.695, 0.95);

}



.ani-fadeInUp.animated {

  opacity: 1 !important;

  transform: translate(0, 0);

}



.ani-fadeInRight {

  position: relative;

  transform: translate(140px, 0);

  transition: opacity 1s cubic-bezier(0.155, 0.91, 0.695, 0.95), transform 1s cubic-bezier(0.155, 0.91, 0.695, 0.95);

}



.ani-fadeInRight.animated {

  opacity: 1 !important;

  transform: translate(0, 0);

}



.ani-fadeInLeft {

  position: relative;

  transform: translate(-140px, 0);

  transition: opacity 1s cubic-bezier(0.155, 0.91, 0.695, 0.95), transform 1s cubic-bezier(0.155, 0.91, 0.695, 0.95);

}



.ani-fadeInLeft.animated {

  opacity: 1 !important;

  transform: translate(0, 0);

}

@media (max-width: 992px) {

  .ani-fadeInUp {

    position: relative;

    transform: translate(0, 0);

    transition: opacity 1s cubic-bezier(0.155, 0.91, 0.695, 0.95), transform 1s cubic-bezier(0.155, 0.91, 0.695, 0.95);

  }

  .ani-fadeInLeft {

    position: relative;

    transform: translate(0, 0);

    transition: opacity 1s cubic-bezier(0.155, 0.91, 0.695, 0.95), transform 1s cubic-bezier(0.155, 0.91, 0.695, 0.95);

  }

  .ani-fadeInRight {

    position: relative;

    transform: translate(0, 0);

    transition: opacity 1s cubic-bezier(0.155, 0.91, 0.695, 0.95), transform 1s cubic-bezier(0.155, 0.91, 0.695, 0.95);

  }

}





@keyframes fadeInFromLeft {

  from {

    opacity: 1 !important;

    transform: translateX(-30px);

  }

  to {

    opacity: 1 !important;

    transform: translateX(0);

  }

}




.ani-fadeInUp {

  position: relative;

  /* opacity: 0; */

  /* transform: translate(0, 140px); */

  transition: opacity 1s cubic-bezier(0.155, 0.910, 0.695, 0.950),transform 1s cubic-bezier(0.155, 0.910, 0.695, 0.950);

}

.ani-fadeInUp.animated{

  opacity: 1 !important;

  /* transform: translate(0, 0); */

}

.flexbox{

  display: flex;

  flex-direction: row;

  flex-wrap: wrap;

}





.siteHeader_logo{

  padding-left:70px;

  background: url(images/cropped-site_icon.png);

  background-repeat: no-repeat;

  background-position: left;

  background-size: 58px 58px;

}



@media (max-width: 992px) {

  .siteHeader_logo{

    padding-left:0;

    background: none;



  }

}





/* すりガラス */

.vkp_filter_blur{

  backdrop-filter: blur(5px);

  -webkit-backdrop-filter: blur(5px);  

  background: rgba(255,255,255,0.3); /* 半透明 */

  border-radius: 2rem; /* 角丸 */

  box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 10px; /* 影 */

  box-shadow: rgba(255, 255, 255, 0.1) 0px 0px 10px; /* 影 */

  max-width:700px; /* 最大幅 */

  margin:0 auto; /* 中央揃え */

}

/* 線 */

.vkp_hr_short{

  width: 3rem;

  height: 2px;

}


p.top_cc_01{
  font-size:2.6em !important;
}
p.top_cc_02{
  font-size:1.3em !important;
}
.p_rel{
  position: relative;
}

@media screen and (max-width: 834px){

  /* すりガラス */

	.vkp_filter_blur{

	  backdrop-filter: blur(5px);

	  -webkit-backdrop-filter: blur(5px);  

	  background: rgba(255,255,255,0.3); /* 半透明 */

	  border-radius: 2rem; /* 角丸 */

	  box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 10px; /* 影 */

	  box-shadow: rgba(255, 255, 255, 0.1) 0px 0px 10px; /* 影 */

	  max-width:700px; /* 最大幅 */

	  margin:0 auto; /* 中央揃え */

	}

  .swiper-wrapper{
    font-size: 12px;
  }
  p.top_cc_01{
  font-size:1.3em !important;
  }
  p.top_cc_02{
    font-size:1.0em !important;
  }
}

/* ローディング画面 */
#loading {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    transition: opacity 0.5s ease;
}

#loading.fade-out {
    opacity: 0;
    pointer-events: none;
}

/* ロゴのスタイル */
#loading-logo {
    width: 200px;
    height: auto;
    animation: pulse 1.5s ease-in-out infinite;
}
.print_cc{
  display: none;
}
/* ロゴのアニメーション */
@keyframes pulse {
    0%, 100% {
        opacity: 1;
        transform: scale(1);
    }
    50% {
        opacity: 0.7;
        transform: scale(1.05);
    }
}

h1.page-header-title{
  text-shadow:1px 1px 0 #FFF, -1px -1px 0 #FFF,
              -1px 1px 0 #FFF, 1px -1px 0 #FFF,
              0px 1px 0 #FFF,  0-1px 0 #FFF,
              -1px 0 0 #FFF, 1px 0 0 #FFF !important;
  letter-spacing: 0.3em;
}

@media print{
    #global-nav{
      display: none;
    }
    .container, .container-lg, .container-md, .container-sm, .container-xl {
        max-width: 100%;
    }
    .wp-block-vk-blocks-slider{
      display: none;
    }
    .print_cc{
      display: block;
    }
}