@charset "utf-8";
/*
Theme Name: Lightning Child
Theme URI: https://lightning.vektor-inc.co.jp/
Template: lightning
Description: Lightningは厳しい審査を通過したWordPress公式ディレクトリ登録テーマです。
Author: 株式会社ベクトル
Tags: 
Version: 0.1.2
*/

:root{
--serif:"Noto Serif JP", serif;
--sans:"Zen Kaku Gothic Antique", sans-serif;
--en: "Lato", sans-serif;
    --vk-size-radius: 14px;
--vk-line-height: 2.0em;
}
html { scroll-behavior: smooth; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
[id^="vk-htags-"] { scroll-margin-top: 90px; }
/* Contact Form7スマホ・タブレット用カスタマイズ */
@media(max-width:850px){
/* テーブルの見出しとフォーム */
table.inquiry th,table.inquiry td {
   display:block;
   padding:1em 0!important;
   width:100%;
   border:0;
}

/* 送信ボタン */
input.wpcf7-submit{
   margin-bottom:30px;
   width:100%;
}
}

/* 日付タグ上のテキストをPCとスマホで変更 */
@media(max-width:900px){
.pcdate{
   display: none;
}
}
@media(min-width:1000px){
.spdate{
   display: none;
}
/* 日付タグの幅を調整 */
.wpcf7-date.dateform{
   width: 25%;
}
}

/* Contact Form7全体カスタマイズ */

/* 自動入力されるPタグを無効にする */
.inquiry p {
   display: inline;
}

/*テーブル下に余白.枠線・テキストの行間 */
table.inquiry {
   margin-bottom: 30px;
   border:solid 1px #d7d7d7;
   line-height:1.2;
   vertical-align:middle;
}

/* テーブルの行 */
.inquiry tr {
   border:0!important;
}

/* テーブルの見出し側 */
.inquiry th{
   text-align:left;
   font-size:14px;
   color:#444;
   padding:1em 0.5em;
   width:0;
   background:#efefef;
   border:solid 1px #d7d7d7;
   white-space: nowrap;
}

/* 必須と任意タグ */
.inquiry th > p > span{
   font-size:13px;
   padding:5px;
   color:#fff;
   border-radius:2px;
   margin-right:5px;
   font-weight:normal;
   border-radius: 6px;
}

/* 任意タグの背景カラー */
.haveto{
   background-color:#ff9393;
}
.any{
	background-color:#999;
}

/* テーブルフォーム側 */
.inquiry td{
   font-size:13px;
   border:solid 1px #d7d7d7;	
}

/* 入力エリア幅最大 */
.wpcf7-form-control {
   width: 100%;
}

/* フォーム幅 */
@media (min-width: 992px) {
.wpcf7-form table.inquiry{width:90% !important; margin: 0 auto;}
}

/* フォーム入力欄の余白・背景カラー・枠線消す指定 */
.inquiry input,.inquiry select,.inquiry textarea {
   margin: 5px 0;
   background:#eff1f5;
   border: none;
   padding:0.7em;
}
.inquiry textarea {
   padding-bottom:10em;
}

/* チェックボックスとラジオボタンの位置調整 */
.wpcf7-list-item-label,.wpcf7-checkbox,input[type=checkbox],input[type=radio]{
   vertical-align:middle;
}
.wpcf7-list-item-label{
   padding:0 5px 0 2px;
}
/*ラジオボタンを縦並び指定*/
.verticallist{
   display:inline-grid;
}

/* 送信ボタンのデザイン */
.wpcf7-submit{
   display: block;
   margin:10px auto;
   padding:1em 0;
   width:80%;
   background:#09b555;
   color:#fff;
   font-size:18px;
   font-weight:bold;	 
   border-radius:4px;
   border: none;
}

/* 送信ボタンマウスホバー時 */
.wpcf7-submit:hover{
   opacity: 0.9;
   transition: 0.3s;
}

/* フォーム上部に表示されるエラーメッセージを非表示 */
.screen-reader-response {
    display: none;
}

/* フォーム内エラーメッセージを赤色に指定 */
.wpcf7-not-valid-tip {
    color: #e92323;
}

/* reCAPTCHAの保護マークの非表示 */
.grecaptcha-badge { visibility: hidden; }

/*---Contact Form7カスタマイズここまで--*/





/*-------------------------------------------*/
/*	全体リンクのホバー設定
/*-------------------------------------------*/
a,a:hover{transition: .5s;}
a img {
    -webkit-transition: opacity 0.5s ease-out;
    -moz-transition: opacity 0.5s ease-out;
    -ms-transition: opacity 0.5s ease-out;
    transition: opacity 0.5s ease-out;
}
a:hover,a:hover img {
    opacity: 0.8;
    -webkit-opacity: 0.8;
    -moz-opacity: 0.8;
    filter: alpha(opacity=80);
    /* IE lt 8 */
    -ms-filter: “alpha(opacity=80)”;
    /* IE 8 */
}

.txt_space{
	letter-spacing:0.07em;

}
h2,h3,h4,h5,h6{
	font-family:var(--sans);
	letter-spacing:0.07em;
}
.number_big strong{
	font-size:75px;
	font-family:var(--en);
}
.number_big h2{
	margin-top:20px!important;
}
.fz20{
	font-size:20px;
}
.fz20 .vk_inline-font-size{
	font-size:28px!important;
}
.cta_box{
	padding:50px;
}
.gap-0{
	gap:0 !important;
}

.fz28{
font-size: 28px;
letter-spacing: 0.11em;
}
.fz50{
	font-size: 50px;
	letter-spacing: 0.11em;
}
.fz40{
	font-size: 40px;
	letter-spacing: 0.11em;
}

/*-------------------------------------------*/
/*	ヘッダー
/*-------------------------------------------*/
#header-top .container,
#site-header-container.container{
	max-width:100%; min-width:1140px;
	}
.header-top ul>li>a, .header-top ul>li>span {/*ヘッダートップのTELの文字を大きく*/
    font-size: 16px;
	}

/* .site-header-logo{
	position:absolute;
	width:170px !important;
	top:-6px !important;
	padding-top:0;
	z-index:9;
	left:90px !important;
}
.site-header-logo img {
    max-height: 170px ;
} */

.site-header-logo img {
    max-height: 97px ;
}
.site-header-logo a:hover ,.site-header-logo a:hover img{
	opacity:1 !important;
}
/* .header_scrolled .site-header-logo{
	position:absolute;
	width:170px !important;
	top:-16px !important;
	padding-top:0;
	z-index:9;
	left:90px !important;
} */
.header_scrolled .site-header-container--scrolled--logo-and-nav-container .site-header-logo img{
	max-height: 97px !important;
}
.header_scrolled .site-header-container--scrolled--logo-and-nav-container .site-header-logo, .header_scrolled .site-header-container--scrolled--logo-and-nav-full .site-header-logo{
	margin:0 !important;
}
.header_scrolled .site-header-logo{
	position:relative;
	width:97px !important;
	top:0px !important;
	padding-top:0;
	z-index:9;
	left:0px !important;
} 
.site-header .site-header-logo{
	padding:0;
	margin:0;
}
.page-header-inner{
	min-width:100%;
	height:192px !important;
	background-image:url(../../../wp-content/uploads/sun_pageimage_mask.png);
	background-repeat:no-repeat;
	background-size:auto 130%;
	background-position:left center;
	margin:0 !important;
	padding:70px !important;
	padding-left:270px !important;
}
#site-header-container{
	padding-right:0;
	padding-left:0;
}

/*-------------------------------------------*/
/*	グローバルメニュー
/*-------------------------------------------*/
.global-nav-list{
	padding:0px 0;
}
.global-nav-list>li .global-nav-name {
    font-size: 16px;
	}
.device-pc .global-nav-list>li>a {
    padding: 10px 1.5em; line-height:1.7;
}
.global-nav-list>li:before{
	border-bottom-width:3px;
}
#menu-item-4386 a{
	background-color:var(--vk-color-primary);
	color:#fff;
	padding:30px 30px 40px!important;
	margin-left:20px;
	border-bottom:none;
}
#menu-item-4386::before{
	display:none!important;
	border:none;
}
.global-nav-list{
	align-items:center;
}
/*-------------------------------------------*/
/*	Top
/*-------------------------------------------*/
.teaser{
	height:70vh;
	height:750px;
	position:relative;
}
.teaser .swiper{
/* 	position:absolute;
	width:100%;
	height:70vh;
	top:0; */
}
.teaser .swiper-wrapper img{
	min-height:750px!important;
}
.teaser .swiper-wrapper{
	min-height:750px!important;
}
.teaser_copy{
	background-image:url(../../../wp-content/uploads/teaser_mask.png);
	background-size:auto 100%;
	height:70vh;
	min-height:750px;
	background-repeat:no-repeat;
	position:absolute;
	z-index:2;
	width:100%;
}
.teaser .wp-block-group__inner-container{
	max-width:100% !important;
}
.teaser_copy{
	padding-left:70px;
	display:flex;
	flex-wrap:wrap;
	align-content:center;
	align-items:center;
	justify-content:start;
}
.teaser_copy .wp-block-group__inner-container{
	margin-left:0 !important;
}
.teaser_copy h2{
	width:100%;
	font-size:40px;
	color:#fff;
	font-family:var(--serif);
}
.teaser_copy h2 strong{
	font-size:50px;
}
.teaser_copy h3{
	width:100%;
	font-size:40px;
	color:#fff;
	font-family:var(--serif);
}
.teaser_copy p{
	width:100%;
		font-size:18px;
	color:#fff;
}
.teaser_copy p strong{
		font-size:23px;
}

.top_riyuu_box{
	padding:10px 40px 40px;
	position:relative;
	height:100%;
}
.top_riyuu_box h3{
font-size:28px;
	height:120px;
	display:flex;
	justify-content:center;
	align-items:center;
}
.top_riyuu_box h4{
font-size:20px;
}
.numbaer_ic1{
	width:80px;
	height:80px;
	font-size:24px;
	font-family:var(--en);
	font-weight:600;
	position:absolute;
	z-index:2;
	top:-40px;
	left:50%;
	transform: translateX(-50%);
	padding:0px;
	display:flex;
	align-items:center;
	justify-content:center;
}

.top_service_box  .card{
background: rgba(255, 255, 255, 0.88);

}
.top_service_box  .card:hover {
    transform: translateY(0.0em) !important;
}
.top_service_box h5{
	font-size:22px!important;
}
.vk_card_item .vk_post_excerpt.card-text {
    font-size: 16px;
font-weight: 500;
font-size: 16px;
line-height: 26px;
color: #0d0d0d;
}

.top_taisaku_txt{
	padding:20px 50px;
}

.voice_box{
	padding:40px 40px 20px;
	margin-bottom:50px;
}
.voice_box h3{
font-weight: 900;
font-size: 32px;
letter-spacing: 0.11em;
}
.voice_box img{
	width: 175px;
height: 175px;
border: 5px solid rgba(39, 27, 155, 0.2);
border-radius:50%;
}
.voice_box2 img{
	width: 175px;
height: 175px;
border: 5px solid rgba(39, 27, 155, 0.2);
border-radius:50%;
}
.midashi_q{
	background-color:#FCFAEC;
	border-radius:3px;
	padding:10px;
	font-size:17px;
	position:relative;
	min-height:64px;
	padding-left:70px;
	display:flex;
	align-items:center;
}
.midashi_q::before{
	position:absolute;
	top:10px;
	left:10px;
font-family:var(--en);
	font-size: 20px;
 content: 'Q';
  display: inline-block;
  width: 44px;
  height: 44px;
border-radius:50%;
	background-color:var(--vk-color-primary);
	color:#fff;
	text-align:center;
	line-height:44px;
}

.home .wp-block-vk-blocks-faq.vk_faq,.home .wp-block-vk-blocks-faq2.vk_faq {
    border-radius: 20px;
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, .0);
}
.home .vk_faq .vk_faq_title,.home .wp-block-vk-blocks-faq2.vk_faq .vk_faq_content{
	padding-left:55px;
	padding-right:0;
	
}
.home .vk_faq .vk_faq_title{
	border-bottom-style:solid;
	display:flex;
	min-height:114px !important;
	align-items:center;
	padding-top:0;
	padding-bottom:0;
}
 .vk_faq-body{
	padding:0 30px;
}
.vk_faq_content p{
	padding-bottom:5px!important;
}
.home .vk_faq_content p{
	padding-bottom:0px!important;
}
.vk_faq .vk_faq_title:before{
	width:45px;
	height:45px;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:20px;
	font-family:var(--sans);
	background-color:var(--vk-color-primary);
	left:0 !important;
	top:50% !important;
	transform: translateY(-50%) !important;
}

.vk_faq .vk_faq_content:before{
	width:45px;
	height:45px;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:20px;
	left:0 !important;
	color:var(--vk-color-primary) !important;
	font-family:var(--sans);
	background-color:#FAF6D7;
}
.home .wp-block-vk-blocks-faq2-a{
	padding-bottom:0 !important;
}
.top_blog .vk_post_imgOuter{
	border-radius:10px !important;
	border:none !important;
}
.vk_posts .vk_post_imgOuter_singleTermLabel{
	top:0;
	right:0;
	border-radius:0 10px 0 0 !important;
	padding:5px 14px !important;
}
.top_blog .card-body{
	padding-top:10px !important;
}
.top_blog .card-text{
	font-size:16px;
}
.top_blog .card-title{
	font-size:18px;
}
/*-------------------------------------------*/
/*	下層ページ
/*-------------------------------------------*/

h1.entry-title,h1.archive-header-title{
	font-size:24px;
	}
.tlBd,.widget-title.sub-section-title{
	border-left: solid 5px var(--vk-color-primary); padding-left:15px;
	}

.service_box  img{
	border-radius:20px;
}
.service_box .wp-block-column{
	border-radius:20px;
/* 	background-color:var(--vk-color-custom-3) !important; */
}

.img_round img{
	border-radius:20px;
}
.box_padding{
	padding:40px 50px;
}
.number_jisseki{
	padding:8px 25px !important;
}
.pagelink .vk_button-width-25{
	width:31.33%;
}
.pagelink a{
	position:relative;
}
.pagelink i{
	position:absolute;
	left:25px;
}

/*-------------------------------------------*/
/*	フッター
/*-------------------------------------------*/

.site-footer ul li{
	line-height:1.8; margin-bottom:30px;
	}
.site-footer ul li span{
	font-size:14px!Important;
	}

.cta_list{
	background-color:#fff;
	border-radius:35px;
	padding:50px;
	padding-left:90px!Important;
	display:flex;
	flex-wrap:wrap;
}
.cta_list li{
	width:50%;
	font-size:20px;
}
.cta_list li::before{
	font-size:28px;
	position:relative;
	top:0px;
}
.cta{
	padding:50px ;
	position:relative;
	top:-40px;
	z-index:1;
}
.cta_arrow{
	position:relative;
	z-index:2;
}
.cta_txt2{
	font-size:20px;
	font-weight:600;
}
.cta_txt2 strong{
	font-size:30px;
}
.cta_btn a{
	font-size:18px;
	width: 372px;
padding:35px !Important;
	position:relative;
	top:-8px !Important;
}
.cta_btn i{
	font-size:24px !Important;
}
.cta_tel_txt{
	font-size:18px;
	padding:3px;
}
.cta_tel a{
	font-size:37px;
	font-family:var(--en);
	line-height:1.2 !Important;
}
.cta_tel i{
	font-size:27px;
	position:relative;
	top:2px;
}
.cta_tel_box1{
	margin:0 20px !Important;
}
.contact_box .cta_tel_box{
		margin:0 20px !Important;
}
.footer_list li{
	margin-bottom:10px !Important;
}
.footer_list a{
	text-decoration:none !Important;
	font-size:16px;
}
.footer_list a:hover{
	color: var(--vk-color-custom-1);
}

.footer_list li::before{
	top:2px;
	    left: -1.0em;
}
.left_line{
	border-left:solid 1px #ccc;
	padding-left:50px;
}

/* Mediaとテキスト */
.wp-block-media-text:not(.has-media-on-the-right) .wp-block-media-text__content {
    padding-right: 0;
}
.wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
    padding-left: 0;
}

@media (max-width: 768px) {
	.wp-block-media-text .wp-block-media-text__content {
		padding:0;
		margin-top:1em;
	}
}
.footer_undeline{
	padding:15px 0;
	border-bottom:solid 1px #ddd;
}
.footer_map a .vk_button_link_txt{
	text-decoration:underline !Important;
}
.footer_map i{
	color:#B1ADDB !Important;
}
.site-footer-copyright{
	padding:10px !Important;
	color:#fff;
	font-size:16px;
	max-width:100%;
	background-color:#4E4E4E
}
.site-footer-copyright p{
	font-size:16px;

}

.vk_borderBox-background-white .vk_borderBox_body{
	background-color:var(--vk-color-custom-4)
}
.media-img{
	border:none;
	border-radius:10px;
}

.form_block{
	display:block;
	margin-top:15px;
}
.privacy_box{
	background-color:#fafafa;
	height:200px;
	padding:15px;
	overflow-y:auto;
	border:solid 1px #ccc;
	border-radius:10px;
	margin:10px 0
}
.privacy_box p{
	display:block;
	margin-bottom:15px;
}
.cta-sub{
	top:0 !Important;
}
/*-------------------------------------------*/
/*	モバイルメニュー/ハンバーガーボタンを丸く
/*-------------------------------------------*/

.vk-mobile-nav-menu-btn,
.vk-mobile-nav-menu-btn.menu-open,
.menu-toggle {
  width: 44px;             /* ボタン幅 */
  height: 44px;            /* ボタン高さ */
  border-radius: 50%;      /* 完全な丸形 */
  background-color: var(--vk-color-custom-2); /* 背景色：変更可 */
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.3s ease;
  }
div#vk-mobile-nav-menu-btn::after { /* 3本線アイコン */
  content: '\f0c9';
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: 20px;
  color: #fff;
  position: absolute;
  top: 0;
  left: 0;
  line-height: 44px;
  width: 44px;
  text-align: center;
  text-indent: 0;
  }
div#vk-mobile-nav-menu-btn.menu-open::after {/* オープン後のアイコン */
        content: "\f00d";
    }
.vk-mobile-nav-menu-btn,.vk-mobile-nav-menu-btn.menu-open,
.vk-mobile-nav-menu-btn:hover,.vk-mobile-nav-menu-btn.menu-open:hover,
.menu-toggle:hover{/* デフォルトのボーダーと背景画像を削除 */
  border:none;
  background-image:none;
  }
.vk-mobile-nav-menu-btn:hover,
.menu-toggle:hover {/* ホバー・アクティブ時の色 */
  background-color: var(--vk-color-custom-2); 
  }
#vk-mobile-nav {/*モバイルメニュー背景色*/
        background-color: #f3f3f3;
    }
.vk-mobile-nav nav ul li a {/*モバイルメニューの文字設定*/
	font-weight:bold;
	font-size:16px;
	}