@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
*/

@import url('https://fonts.googleapis.com/css2?family=Barlow:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
:root{
	--en:"Barlow", sans-serif;
    --vk-line-height: 1.8em;
	}
/* 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;
}
.is-style-vk-heading-background_fill_lightgray{
	font-size:2rem!important;
}

.table1 td{
	padding:20px;
}
.table1 td:nth-of-type(1){
	width:30%;
}
.vk_timeline_item_caption{
	font-size:1.8rem;
	color:var(--vk-color-primary)!important;
	font-weight:600;
	line-height:1;
position:relative;
	top:-8px;
}
.tsuyomi_slider .wp-block-list{
overflow-x:auto;
	height:220px;
}

.vk_slider .swiper-button-next,  .vk_slider .swiper-button-prev,.vk_post_list_slider .swiper-button-next, .vk_post_list_slider .swiper-button-prev{
	width:1.5rem;
	height:1.5rem;
}
.vk_slider .swiper-button-next:after, .vk_slider .swiper-button-prev:after, .vk_post_list_slider .swiper-button-next:after, .vk_post_list_slider .swiper-button-prev:after {
    font-size: 0.8rem;
}
.swiper-button-prev{
	left:0;
}
.swiper-button-next{
	right:0;
}
@media (max-width: 768px) {
	.wp-block-media-text .wp-block-media-text__content {
		padding:0;
		margin-top:1em;
	}
}

/* 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; }

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 */
}


.gap-5{
	gap:5em;
}

/*-------------------------------------------*/
/*	ヘッダー
/*-------------------------------------------*/
#header-top .container,
#site-header-container.container{
	max-width:100%; min-width:100%;
	padding-left:0;
	}
.header-top { padding-bottom:10px;
}
.header-top ul>li>a, .header-top ul>li>span {
    font-size: 13px;
}
.site-header-logo {
    padding-top:0;
}
.site-header-logo img {
    max-height: 90px;
}
.page-header-inner{
	display:flex;
	flex-wrap:wrap;
	flex-direction: column-reverse;
}
.page-header-inner h2{
	width:100%;
}
.page-header-subtext{
	width:100%;
	font-family:var(--en);
}
/*-------------------------------------------*/
/*	グローバルメニュー
/*-------------------------------------------*/
.global-nav-list>li .global-nav-name {
    font-size: 16px;
}
.device-pc .global-nav-list>li>a {
    padding: 10px 3em; line-height:1.7;
}
.device-pc .global-nav-list>li:last-child a {
	background-color:#fff;
	padding: 5px 2em;
	border-radius:5px;
	color:#000!important;
}
.device-pc .global-nav-list>li:last-child a i{
	color:var(--vk-color-primary);
}
.header_scrolled .global-nav-list>li:last-child a{
	border-radius:0px;
}
.device-pc .global-nav-list>li:last-child::before{
	display:none;
}

/*-------------------------------------------*/
/*	Top
/*-------------------------------------------*/

/*スライダー */
.mini-content-container-1.container{
	position:absolute; padding-top:2.5%; right:15%;width:240px; height:240px;
	border-radius:50%; background-color:rgba(133,105,20,.8);
}
.ltg-slide-text-title {
    font-size: 26px;
}
.ltg-slide-text-caption {
    font-size: 1rem;
}
.mini-content-container-1 .btn { padding:2px 10px;}


.vk_heading.vk_heading-style-plain .vk_heading_title { margin-bottom: .8rem!important;
	}
.vk_heading_subtext mark{
	padding-left:20px; padding-right:20px; font-size:14px;
	}	
	
/*背景拡大バナー */
.rcm-box {
  background-color: #000;
  position: relative;
  overflow: hidden; padding:0!important;
}
.rcm-box img {
  display: block;
  width: 100%; height:auto;
  opacity: 0.8;
  -webkit-transition: opacity 0.4s, transform 0.4s;
  transition: opacity 0.4s, transform 0.4s;
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
}
.rcm-box:hover img {
  opacity:1; 
  -webkit-transform: scale3d(1.2, 1.2, 1);
  transform: scale3d(1.2, 1.2, 1);
}
.rcm-overlay {
  position: absolute;
  top: 30%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  text-align: center;
  -webkit-transition: opacity 0.4s;
  transition: opacity 0.4s;
}
.rcm-overlay.vk_button .vk_button_link{
	position:absolute; z-index:100; top: 0;left: 0;right: 0;margin: auto; width:50%;
	font-size:24px!important; background-color:rgba(255,255,255,.9)!important; color:#363!important; 
	padding:10% 0px!important;
	}
.rcm-overlay.vk_button .vk_button_link i{ position:absolute; bottom:0; right:2px; margin:0;font-size:18px!important;
	}
.rcm-box figure.wp-block-image,.wp-block-column.rcm-box {
    margin: 0!important;overflow: hidden;
}
.rcm-box p.text{
	position:absolute; z-index:100; bottom:0; margin-bottom:0; font-size:14px; padding:10px 10px 10px 15px; color:#FFF; background-color:rgba(0,0,0,.5);
	}
	
/*施工実績スライダー */
.vk_slider_item .vk_post .vk_post_title {
    font-size: 24px;
	}
.vk_slider_item .vk_post .vk_post_excerpt,.vk_slider_item .vk_post .vk_post_taxonomy,.vk_slider_item .vk_post .vk_post_btn{
    font-size: 16px;
	}
	
/* メインイメージ */
.teaser h2{
	font-size:50px!important;
	font-weight:400;
}
.top_priducr_ph figure{
	margin-bottom:8px!important;
}

.btn-big a{
	min-width:487px!important;
	padding:30px!important;
}
.news_box{
	padding:30px 50px;
	width:90%;
	margin:auto;
}
/*-------------------------------------------*/
/*	下層ページ
/*-------------------------------------------*/
.box_list{
	padding:30px 80px !important;
	width:70%;
	margin:auto;
}
.box_kaiketsu{
	padding:20px 25px !important;
}
.box{padding:50px; border-radius:20px; box-shadow: 0 0 15px rgb(0 0 0 / 10%); }
.bd{ border:1px solid #ccc;}
.bgGray{ background-color:#f5f5f5;}

h2::after{ border-top: solid 3px var(--vk-color-primary);}
h2.none::after{ display:none;}


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;
	}


/*施工事例*/
.widget_nav_menu>ul li a { padding:10px 5px; color:#096; font-size:1rem;}



/*form*/
table.tbr {border: 10px solid #eee;max-width: 900px; margin:auto;}

table.tbr th,table.tbr dt{ text-align:left; font-size:16px; }
.tbr th{ width:30%; position:relative;}
.tbr th,.tbr td{padding: 1.4em; border-left:none; border-right:none;}
.tbr th em{ font-size:13px; color:#999;}
.tbr td ul{ padding:0;}
.tbr td li{ list-style:none;}
.required-srt {
	position:absolute; right:5px;
    font-size: 0.8em!important; font-weight:normal;
    padding: 1px 5px!important;
    border-radius: 5px; margin-left:10px;
    background: #C66!important;
    color: #ffffff;
}
.required-srt.gray {
	background-color: #E7EDE7!important;
    color: #333;
}
.tbr select {
    padding: 0.8em 1em!important;
	}
input[type=submit] {
    font-size: 1.3rem; font-weight:bold; border:none; margin-top:20px;
	}
.privacy{
	height:150px; overflow: auto; font-size:14px;
	}




.arrow {
    content: "";
    position: relative;
    right: 0;
    top: 0;
    left: 0;
    width: 0px;
    height: 0px;
    margin: auto;
    border-style: solid;
    border-color: var(--vk-color-primary-vivid) transparent transparent transparent;
    border-width: 20px 20px 0 20px;
}
.vk_button .btn{ border-radius:5px!important;
}

.is-style-vk-heading-brackets_black::before,
.is-style-vk-heading-brackets_black::after {opacity:.3;}

.vk_step .vk_step_item .vk_step_item_dot{width: 60px;height: 60px;}
.vk_step .vk_step_item .vk_step_item_dot_caption {font-size: 14px;}
.vk_step .vk_step_item .vk_step_item_dot_num{font-size: 24px; font-weight:bold;}

.vk_flow .vk_flow_frame{padding:30px; border-radius:20px; box-shadow: 0 0 15px rgb(0 0 0 / 10%); }

.vk_faq .vk_faq_title:before,.vk_faq .vk_faq_content:before { font-family:'Oswald', sans-serif; font-size:30px;
}

/* VKステップ横並び */
.vk_step-horizontal {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: flex-start;
}
.vk_step-horizontal .vk_step_item {
    display: flex;
    flex-direction: column;
    padding: 0;
	width:100%;
}
.vk_step.vk_step-horizontal .vk_step_item_dot {
	position: unset;
	order: 1;
	margin: auto;
	z-index: 3;
}
.vk_step-horizontal p {
    padding: 0 1rem;
}
.vk_step-horizontal .vk_step_item_dot.vk_step_item_style-outlined {
    background: #fff;
}
.vk_step.vk_step-horizontal .vk_step_item_content {
    order: 2;
    text-align: center;
}
.vk_step-horizontal .vk_step_item_lineStyle-default::before {
    z-index: 0;
    width: 100%;
    height: 5px;
    top: 25px;
    left: auto;
    right: -50%;
}
.vk_step-horizontal .vk_step_item_lineStyle-default:last-child::before {
	display:none;
    /*最後のアイテム*/
}

.rounded{ order-radius:10px; }

.parent-pageid-5126 .breadcrumb-list li:nth-child(2) a{
	pointer-events: none;
}
.parent-pageid-5126 .entry-header h1{
	    background-color: var(--wp--preset--color--vk-color-custom-2) !important;
	    font-size: 1.75rem !Important;
	text-align:center;border-radius:5px;
	color:#fff;
	padding:30px;
	margin:3rem auto 0;
}

/*-------------------------------------------*/
/*	フッター
/*-------------------------------------------*/
li a, p a{
	   text-decoration-style:none!Important;
	text-decoration:none!Important;
}
#footer{
	color:#fff;
}
#footer a{
	text-decoration:none!Important;
	    text-decoration-style:none!Important;
}
.footer-nav {
    border-bottom:none;
}
.site-footer ul li{
	line-height:1.8; margin-bottom:15px;
	list-style:none;
}
.site-footer ul li span{
	font-size:14px!Important;
}
.footer_link{
	padding-left:70px;
}
.site-footer-copyright{
	background-color:var(--vk-color-primary);
	max-width:100%;
}
.site-footer-copyright p{
	width:1140px;
	margin:auto;
	text-align:right;
}

.soudan_txt{
min-height:180px;}

/* table ------------------------------------------------------------------ */
.table1 td {
    border: 1px solid #ddd;
	}
.table1 th {
	background-color: #EEF3EB; color: #366 ;border: 1px solid #ddd; width:20%;
	}
table ul,table li,table ol { margin:0;}
table th,table td {
    padding: 1rem; line-height:1.7;font-size:1rem;
	}

.img_contain .vk_post_imgOuter{
	background-size:contain;
	background-repeat:no-repeat;
	background-color:#eee;
}
.sub_txt_outer {
	position:relative;
}
.sub_txt{
	position:absolute;
	z-index:5;
	top:195px;
	right:0px;
	font-size:11px;

}
textarea.wpcf7-form-control.wpcf7-textarea {
  height: 150px; /* 任意の高さに調整 */
}
/* Font ------------------------------------------------------------------ */
.fzSS  { font-size:  75%;}
.fzS   { font-size:  85%;}
.fzM   { font-size: 100%;}
.fzL   { font-size: 113%;}
.fzLL  { font-size: 150%;}
.fzLLL { font-size: 220%;}

.text-s{ color: #666; font-size:12px;}

.taL{ text-align: left;}
.taC{ text-align: center;}
.taR{ text-align: right;}	

.flL{ display: inline; float: left;}
.flR{ display: inline; float: right;}
	
/* Width ------------------------------------------------------------------ */
.w10    { width:10%;}
.w20    { width:20%;}
.w30    { width:30%;}
.w35    { width:35%;}
.w40    { width:40%;}
.w50    { width:50%;}
.w60    { width:60%;}
.w70    { width:70%;}
.w80    { width:80%;}
.w90    { width:90%;}
.mr-auto{
	margin:auto;
}
/* Margin ------------------------------------------------------------------ */
.mt00 { margin-top: 0!important;}
.mt05 { margin-top: 5px!important;}
.mt10 { margin-top:10px!important;}
.mt15 { margin-top:15px ;}
.mt20 { margin-top:20px;}
.mt25 { margin-top:25px ;}
.mt30 { margin-top:30px ;}
.mt35 { margin-top:35px ;}
.mt40 { margin-top:40px ;}
.mt45 { margin-top:45px ;}
.mt50 { margin-top:50px ;}
.mr00 { margin-right: 0 ;}
.mr05 { margin-right:5px;}
.mr10 { margin-right:10px;}
.mr15 { margin-right:15px;}
.mr20 { margin-right:20px;}
.mr25 { margin-right:25px;}
.mr30 { margin-right:30px;}
.mr35 { margin-right:35px;}
.mr40 { margin-right:40px ;}
.mr45 { margin-right:45px ;}
.mr50 { margin-right:50px ;}
.mb00 { margin-bottom: 0 !important;}
.mb05 { margin-bottom: 5px!important;}
.mb10 { margin-bottom:10px!important;}
.mb15 { margin-bottom:15px ;}
.mb20 { margin-bottom:20px ;}
.mb25 { margin-bottom:25px ;}
.mb30 { margin-bottom:30px ;}
.mb35 { margin-bottom:35px ;}
.mb40 { margin-bottom:40px ;}
.mb45 { margin-bottom:45px ;}
.mb50 { margin-bottom:50px ;}
.ml00 { margin-left: 0  ;}
.ml05 { margin-left: 5px ;}
.ml10 { margin-left:10px ;}
.ml15 { margin-left:15px ;}
.ml20 { margin-left:20px;}
.ml25 { margin-left:25px;}
.ml30 { margin-left:30px;}
.ml35 { margin-left:35px;}
.ml40 { margin-left:40px;}
.ml45 { margin-left:45px;}
.ml50 { margin-left:50px;}

.mg-auto { margin:auto;}

/* Padding ------------------------------------------------------------------ */
.pd00 { padding:0px!important;}
.pd05 { padding:5px;}
.pd10 { padding:10px;}
.pd15 { padding:15px;}
.pd20 { padding:20px;}
.pd30 { padding:30px;}
.pd50 { padding:50px;}