@charset "utf-8";
/*
Theme Name: Lightning Child
Template: lightning
*/

/*------------------------------

  ここから下がハンバーガーメニュー
  に関するCSS

------------------------------*/

.drawer-content.mobile_nav{
  display: none;
}

.drawer-content ul{
	padding: 0 20px!important;
	margin-top:50px;
}

.menu-header-nav-container{
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: space-around;
	align-items: flex-start;
	align-content: space-around;
	height: 100%;
}

#drawer-check:checked ~ .drawer-open{
  background: #3791d0;
}

#drawer-check:checked ~ .drawer-open span::before, #drawer-check:checked ~ .drawer-open span::after{
	background: #fff;
}

#vk-mobile-nav-menu-btn{
	display: none!important;
}

.drawer{
  position: fixed;
  z-index: 9999;
  right: 20px;
  top: 20px;
}

/* チェックボックスは非表示に */
.drawer-hidden {
  display: none;
}

/* ハンバーガーアイコンの設置スペース */
.drawer-open {
  display: flex;
  height: 60px;
  width: 60px;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 100;/* 重なり順を一番上に */
  cursor: pointer;
  border-radius: 100px;
  z-index: 9999;
  background: #fff;
}

/* ハンバーガーメニューのアイコン */
.drawer-open span,
.drawer-open span:before,
.drawer-open span:after {
  content: '';
  display: block;
  height: 3px;
  width: 35px;
  border-radius: 3px;
  background: #3791d0;
  transition: 0.5s;
  position: absolute;
}

/* 三本線のうち一番上の棒の位置調整 */
.drawer-open span:before {
  bottom: 8px;
}

/* 三本線のうち一番下の棒の位置調整 */
.drawer-open span:after {
  top: 8px;
}

/* アイコンがクリックされたら真ん中の線を透明にする */
#drawer-check:checked ~ .drawer-open span {
  background: rgba(255, 255, 255, 0);
}

/* アイコンがクリックされたらアイコンが×印になように上下の線を回転 */
#drawer-check:checked ~ .drawer-open span::before {
  bottom: 0;
  transform: rotate(45deg);
}

#drawer-check:checked ~ .drawer-open span::after {
  top: 0;
  transform: rotate(-45deg);
}

/* メニューのデザイン*/
.drawer-content {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9998;
  background: #3791d0;
  transition: .5s;
  pointer-events: none;
  opacity: 0;
}

.drawer-content a{
	color: #fff!important;
	font-size: 28px;
	font-weight: bold;
	line-height: 1.4;
	padding: 10px 15px;
	float: left;
	width: 100%;
}

/* アイコンがクリックされたらメニューを表示 */
#drawer-check:checked ~ .drawer-content {
  pointer-events: auto;
  opacity: 1;
}


.facebook_wrap{
  margin-left: auto;
  margin-right: auto;
  width: 80%;
}

.fb-page,
.fb-page span,
.facebook_wrap iframe{
  width: 100% !important;
  height: 500px !important;
}

/*
右から左へ
----------------------------*/
@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}

/*
IE11対策
----------------------------*/
_:-ms-lang(x)::-ms-backdrop,
.slide_img {
  display: -ms-grid;
  overflow: hidden;
}
/*----------------------------*/

.slide_img_wrap .wpb_wrapper {
  display: flex;
  overflow: hidden;
}

.slide_list_item {
  display: flex;
}

.slide_list_item{
animation :infinity-scroll-left 95s infinite linear 0.5s both;
}

.slide_item {
  width: calc(100vw / 4);
}
.slide_item > img{
   width: 100%;
}

#scrollUp .scroll-top{
  display: none;
}

.custom_text{
padding-top: 20px;
border-top: 1px solid #ccc;
}

.custom_text p{
  line-height: 1.4;
  margin-bottom: 16px;
}

.sub_heading h3{
  -webkit-text-stroke: 1px #3791d0;
  text-stroke: 1px #3791d0;
  color: transparent;
}

.visible_column{
  overflow: visible!important;
}

.flow_left, .flow_right{
  position: absolute;
}

.flow_left{
  left: 5%;
  bottom: 50px;
}

.flow_right{
  right: 5%;
  bottom: 50px;
}

body .vk-mobile-nav-menu-btn {
	background-image: url(images/menu.png);
  background-size: 50px;
  border: none;
  width: 50px;
  height: 50px;
  top:12px;
}

body .vk-mobile-nav-menu-btn.menu-open{
  background-image: url(images/close.png);
  background-size: 50px;
  background-color:transparent;
}

.global-nav{
  display: none!important;
}

.header_scrolled .site-header{
}
.vk-mobile-nav{
  overflow: auto;
  z-index: 9998;
  box-shadow: -5px 0px 10px rgba(0, 0, 0, 0.2);
}

body.device-pc .vk-mobile-nav-menu-btn{
  display: block!important;
  border-radius: 100px;
  padding: 40px;
  border-color: transparent;
  right: 0!important;
  top:0!important;
  border-radius: 0 0 0 30px!important;
  z-index: 9999;
}

body.device-pc .vk-mobile-nav{
  display: block;
  width: 40%;
  background: #3791d0;
  padding: 45px 0;
}

.vk-mobile-nav .widget_nav_menu ul li a, .vk-mobile-nav nav ul li a{
  color: #fff;
  border: none;
  font-size: 24px;
  padding: 10px 15px 10px 60px;
  font-weight: bold;
  transition: .35s;
}

.vk-mobile-nav .widget_nav_menu ul li a:hover, .vk-mobile-nav nav ul li a:hover{
  padding-left: 40px;
  border-left: 6px solid #fff;
}

.vk-mobile-nav nav>ul{
  border-top: none;
}

.vk-mobile-nav.vk-mobile-nav-open.vk-mobile-nav-left-in, .vk-mobile-nav.vk-mobile-nav-open.vk-mobile-nav-right-in{
  left: 60%;
}

.top_column{
  overflow: visible!important;
}

.top_column::before{
  content:"";
  height: 150px;
  width: 100%;
  background-color: #b0d02d;
  top: -150px;
  position: absolute;
}

body .footer_wave{
  background-position: center top!important;
}

.main-section{
  margin-bottom: 0;
}

.footer_pack{
  position: absolute;
  width: 25%;
  left: 10%;
  bottom:-100px;;
}

.site-footer{
  background-color: #3791d0!important;
}

.site-footer-copyright p{
  color: #fff;
}

.home .site-body{
  padding-bottom: 0!important;
}

.big_button button, .big_button a{
  background-color: #3791d0!important;
  padding: 30px!important;
  width: 500px;
  max-width: 100%;
  color: #fff!important;
  font-size: 21px!important;
  border-radius: 100px!important;
  border: 3px solid #3791d0!important;
  font-weight: bold;
}

.big_button button:hover, .big_button a:hover{
  background-color: #fff!important;
  color: #3791d0!important;
}

.blue_button button, .blue_button a{
  width: 200px;
  background-color: #3791d0!important;
  color: #fff!important;
  border: 3px solid #3791d0!important;
  font-weight: bold;
}

.blue_button button:hover, .blue_button a:hover{
  background-color: #fff!important;
  color: #3791d0!important;
  border: 3px solid #3791d0!important;
}

.green_button button, .green_button a{
  background-color: #b0d02d!important;
  color: #fff!important;
  border: 3px solid #b0d02d!important;
  font-weight: bold;
}

.green_button button:hover, .green_button a:hover{
  background-color: #fff!important;
  color: #b0d02d!important;
  border: 3px solid #b0d02d!important;
}

.white_button button{
  background-color: #fff!important;
  border: 2px solid #3791d0!important;
  color: #3791d0!important;
}

.white_button button:hover{
  background-color: #3791d0!important;
  color: #fff!important;
}

.pack_img1{
  position: absolute;
  left: 5%;
  bottom: 0px;
}

@keyframes rotation{
  0%{ transform:rotate(0);}
  100%{ transform:rotate(360deg); }
}

#ple-animates{
  margin-top: -75px;
  margin-left: -75px;
  position: absolute;
  width: 150px;
  height: 150px;
  left: 50%;
  top: 50%;
  transform: none;
}

.loading_img{
  width: 150px;
  height: 150px;
  animation:4s linear infinite rotation;
  display: block;
  position: absolute;
}

.loading_img_base{
  width: 150px;
  height: 150px;
  display: block;
  position: absolute;
}

.site-header-logo{
  padding-top: 7px;
}

.site-header-logo img{
  max-height: 42px;
}

.radius img{
  border-radius: 30px;
}

table tr td{
  font-size: 16px;
  word-break: break-all;
}

.contact_address table tr:first-child{
  background: #3791d0;
  color: #fff;
  font-weight: bold;
  text-align: center;
}

.contact_address tr td{
  padding: 20px;
}

.tab-group{
  display: flex;
  justify-content: center;
}
.tab{
  padding: 20px 40px;;
	color: #333;
	background: #f5f7f8;
  border: 3px solid #f5f7f8;
	text-align: center;
	cursor: pointer;
	transition: all 0.2s ease 0s;
  border-radius: 60px;
  margin: 0 10px;
  width: 250px;
}

.tab:hover{
  border: 3px solid #dce1e4;
  background-color: #dce1e4;
}

.panel-group{
}
.panel{
  display:none;
  transition: 0.35s;
}

.panel_center>.vc_column_container>.vc_column-inner{
  text-align: center;
}

.tab.is-active{
  background: #fff;
  color: #3791d0;
  border: 3px solid #3791d0!important;
  font-weight: bold;
}

.panel.is-show{
  display:block;
}

.tab_panel{
  margin-bottom: 0!important;
}

.tab_panel p{
  font-size: 14px;
}

/*タブ実装*/

.btn_area>.wpb_wrapper{
  display: flex;
  justify-content: center;
}

.tab_box .btn_area {
	margin:0 10px;
	display: -webkit-box;
	display: flex;
  justify-content: center;
}

.tab_box .tab_btn:last-child{
  margin-bottom: auto;
}

.tab_box .tab_btn {
	padding: 10px 40px;;
	color: #333;
	background: #f5f7f8;
  border: 3px solid #f5f7f8;
	text-align: center;
	cursor: pointer;
	transition: all 0.2s ease 0s;
  border-radius: 30px;
}

.tab_box .tab_btn:hover {
  border: 3px solid #dce1e4;
  background-color: #dce1e4;
}

.tab_box .tab_btn + .tab_btn {
	margin-left: 15px;
}

.tab_box .tab_btn:hover {
	background-color: #dce1e4;
}

.tab_box .tab_btn.active {
  background: #fff;
  color: #3791d0;
  border: 3px solid #3791d0!important;
  font-weight: bold;
}

.tab_box .panel_area>.vc_column_container{
    border: solid 1px #e3ebf3;
    padding: 20px;
    border-radius: 30px;
    transition: 0.35s;
    max-width: 100%;
    box-sizing: border-box;
}

.tab_box .tab_panel {
    display:none;
    transition: 0.35s;
}

.tab_box .tab_panel.active {
    display:block;
}

body{
  font-family: "dnp-shuei-mgothic-std", sans-serif;
  font-weight: 400;
  font-style: normal;
}

h2{
  font-size: 2.6rem;
  line-height: 1.4;
}

h1,h2,h3,h4,h5{
  border: none;
  font-family: "dnp-shuei-mgothic-std", sans-serif;
  font-weight: 600;
  font-style: normal;
}
h3::after{
  display: none;
}

p{
  font-size: 18px;
  line-height: 2;
}

.sub_heading, .sub_heading_white{
}

.sub_heading{
}

.sub_heading_white{s
}

.color_white{
  color:#fff;
}

.color_blue{
  color:#3791d0    ;
}

.site-footer{
  border-top: none;
}

.footer-nav{
  display: none;
}

.ltg-slide-text-title{
  font-size: 5.6vw;
}

.sp{
  display: none;
}

.scroll-top{
  display: none;
}

body #scrollUp{
  height: 140px;
  width: 90px;
  line-height: 75px;
  background-image: url(images/top.png)!important;
  background-size: contain!important;
  background-repeat: no-repeat!important;
  background-color: transparent!important;
  opacity: 1;
  bottom:-30px;
  z-index: 999!important;
}

body #scrollUp:hover{
  background-image: url(images/top_hover.png)!important;
}

#site-header-container{
  width: 100%;
  max-width: 100%;
  padding: 15px 50px;
}

.scrolled #site-header-container{
  padding: 0 50px;
}

.site-header{
  box-shadow: none;
}

.swiper-container{
  width: 92%;
  margin-left: 4%;
}

.swiper-wrapper .swiper-slide{
  height: 80vh;
  width: 90%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 80px;
  overflow: hidden;
}

.swiper-slide.item-1{
  background-image: url(images/slide1.jpg);
  width: 100%;
}

.swiper-slide.item-2{
  background-image: url(images/slide2.jpg);
  width: 100%;
}

.swiper-slide.item-1 .ltg-slide-text-set,
.swiper-slide.item-2 .ltg-slide-text-set,
.swiper-slide.item-3 .ltg-slide-text-set,
.swiper-slide.item-5 .ltg-slide-text-set{
  top: 73%;
}

.swiper-slide.item-4 .ltg-slide-text-set{
  top: 28%;
}

.ltg-slide-text-set .container{
  max-width: 100%;
  padding-left: 50px;
  padding-right: 50px;
}

.swiper-slide.item-3{
  background-image: url(images/slide3.jpg);
  width: 100%;
}

.swiper-slide.item-4{
  background-image: url(images/slide4.jpg);
  width: 100%;
}

.swiper-slide.item-5{
  background-image: url(images/slide5.jpg);
  width: 100%;
}

.swiper-slide picture{
  width: 100%;
  height: 100%;
  display: block;
}

.swiper-slide picture img{
  display: none!important;
}

@media screen and (min-width:1200px){
}

@media screen and (min-width:992px){
  .header_scrolled .site-header{
    height: auto!important;
  }
}

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

@media screen and (max-width:767px){
  .drawer-content.mobile_nav{
    display: block;
  }

  .drawer-content.pc_nav{
    display: none;
  }
  /* ハンバーガーメニューのアイコン */
  .drawer-open span,
  .drawer-open span:before,
  .drawer-open span:after {
    width: 25px;
  }

  .drawer{
    right: 5px;
    top: 10px;
  }

  .drawer-open{
    background: #fff;
  }

  .vk-mobile-nav .widget_nav_menu ul li a, .vk-mobile-nav nav ul li a{
    padding: 10px 15px 10px 30px;
  }
  .vk-mobile-nav.vk-mobile-nav-open.vk-mobile-nav-left-in, .vk-mobile-nav.vk-mobile-nav-open.vk-mobile-nav-right-in{
    left: 0;
    background-color: #3791d0;
  }

  body .vk-mobile-nav-menu-btn.menu-open{
    z-index: 9999;
    border: none;
    background-size: 40px;
  }

  body .vk-mobile-nav-menu-btn {
    background-size: 40px;
  }

  .site-header-logo img{
    max-height: 32px;
  }

  .panel_area{
    padding: 0 20px;
  }

  .panel_area .vc_column-inner{
    padding: 0!important;
  }

  .btn_area>.wpb_wrapper{
    flex-wrap: wrap;
  }

  .tab_box .tab_btn{
    width: 30%;
    padding:10px;
  }

  h2,h3{
    text-align: center;
  }

  h2{
    font-size: 32px;
  }

  .swiper-slide.item-1 .ltg-slide-text-set,
  .swiper-slide.item-2 .ltg-slide-text-set,
  .swiper-slide.item-3 .ltg-slide-text-set,
  .swiper-slide.item-4 .ltg-slide-text-set,
  .swiper-slide.item-5 .ltg-slide-text-set{
    top: 5%;
    right:10%;
  }

  .ltg-slide-text-set .container{
    padding: 0;
  }

  .ltg-slide-text-set{
    left: 0;
    transform: none;
  }

  .ltg-slide-text-title{
     text-align: left;
     font-size: 36px;
     text-align: left;
     color: #3791d0!important;
     -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
      float: right;
      right: 20px;
  }

  .ltg-slide-text-title span{
    background-color: #fff;
    padding: 10px;
    margin-bottom: 10px;
    line-height: 2;
  }

  .swiper-container{
    width: 100%;
    margin-left: 0;

  }

  .swiper-wrapper .swiper-slide{
    border-radius: 0;
  }

  .sp{
    display: block;
  }

  .pc{
    display: none;
  }

  .slide_item {
    width: calc(100vw / 2);
  }
}
