@charset "utf-8";
/*
Theme Name: Lightning Child
Theme URI:
Template: lightning
Description:
Author:アートフレア株式会社
Tags: 
Version: 0.1.2
*/


@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&display=swap');
:root{
	--enfont: 'Bebas Neue', cursive;
}
.font-en,.font-en *{
	font-family: "Bebas Neue";
	font-weight:normal !important;
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 * アートフレアユーティリティCSS
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* パソコン版ではtel:～をクリッカブルにしない */
@media screen and (min-width:767px){
	a[href^="tel:"] {pointer-events: none;	}
}

/* フロー図へ自動連番 */
body {
	counter-reset: flow 0;  /* numberのカウンタを0に指定 */
	}
.wp-block-vk-blocks-flow{
	position:relative;
}
.wp-block-vk-blocks-flow::before {
	counter-increment: flow 1;  /* numberのカウンタを1ずつ増加 */
	content: "0" counter(flow);  /* 番号の後ろに0 */
	font-size: 100px;
	position: absolute;
	z-index: 1;
	opacity: 0.1;
	right:30px;
}
.wp-block-vk-blocks-flow *{
	z-index:2;
}

/* アニメーションを一回で固定する場合。*/
.vk_animation-active-fixed { 
	left: 0 !important; 
	right: 0 !important; 
	opacity: 1 !important; 
} 
/*テーブルタグ内でのリストの調整*/
.wp-block-table ul,.wp-block-table ol {
    margin: 0;
}

.wp-block-table li {
    margin: 0;
    line-height: 2;
}
/* ファンシーボックスに疑似要素虫めがね。 */
a.fancybox.image{
	z-index: 0;
	position: relative;
}
a.fancybox.image::after {
	content: "\f00e";
	font-family:"Font Awesome 5 Free";
	font-weight:900;
	z-index: 1;
	padding-left: .3em;
}

figure a.fancybox.image{
	z-index: 0;
	position:relative;
}
figure a.fancybox.image::after {
	position: absolute;
	bottom: 0;
	right: 0;
	font-size: 30px;
	color: #333;
	background: rgb(239 239 239 / 50%);
	width: 60px;
	line-height: 60px;
	text-align: center;
	padding: 0;
	border-radius: 99px;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 * 下層ページ　ページヘッダー
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
.page-header {
    margin-bottom: 60px;
}
.page-header-inner.container {
    max-width: 500px;
    background: #fff;
    color: #333; /* 仮 */
    border-radius: 20px;/* 仮 */
    padding: 20px 0;/* 仮 */
    margin-left: calc((100vw - 1140px)/2);
    margin-bottom: -50px;
}
h1.page-header-title {
    color: #000;/* 仮 */
}

.page-header-subtext {
    color: #000;/* 仮 */
    opacity: 0.3;
}
nav#global-nav li.menu-item-home {
	display: none;
}

.header_scrolled nav#global-nav li.menu-item-home {
    display: block;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  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 h4 {
    text-align: center;
}
.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%;
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 * メールフォーム 
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
.contactform-entext {
	display: block;
	font-size: var(--vk-size-text-xs);
	font-weight: normal;
}

.contactform-table th {
    font-size: var(--vk-size-text);
    text-align: left;
    position: relative;
    background: #f9f9f9;
    width: 30%;
}

th.contactform-required::after ,th.contactform-unrequired::after {
	display: block;
	position: absolute;
	font-size: 14px;
	font-weight: normal;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	padding: 5px 10px;
	line-height: 1;
	border-radius: 3px;
}

th.contactform-required::after {
	content: '必須';
	background: #f55555;
	color: #fff;
}
th.contactform-unrequired::after {
	content: '任意';
	background: #eee;
	color: #888;
}

dl.contactform-addlist {
    margin: 0;
}
dl.contactform-addlist dt:not(:first-child) {
    margin-top: 1em;
}
dl.contactform-addlist dt {
    font-size: var(--vk-size-text-sm);
    color: #333;
    font-weight: normal;
}
span.mwform-file-delete {
    display: inline-block;
    width: 30px;
    height: 30px;
    background: #eee;
    line-height: 30px;
    text-align: center;
    border-radius: 50px;
    font-size: 22px;
    vertical-align: revert;
    margin-left: 3rem;
    transition: .1s;
}

span.mwform-file-delete:hover {
    background: #aaa;
    color: #fff;
}

input[type="file"] {
    font-size: 1rem;
}
p.contactform-note {
    font-size: var(--vk-size-text-sm);
    color: #777;
    margin: 0;
}
/*バリデーション＆エラー＆確認画面*/
.form-errored input, .form-errored select {
    border: solid 1px #f22 !important;
    background: #fbeeee;
}

.mw_wp_form .error::before {
    content: '\f06a';
    font-family: 'Font Awesome 5 Free';
    font-weight: 600;
    padding-right: .5em;
}
.mw_wp_form_preview .contactform-preview-hidden{
	display:none;	
}
input[name=submitBack] {/* 送信ボタン */
    background: transparent;
    color: var(--vk-color-primary);
    margin-right: 2em;
}

/*HOME*/

body, p {
	font-size:16px;
	line-height:2em;
}

.header-top .header-top-description {
    padding: 10px 20px 3px 0;
}
.site-header {
    box-shadow: none;
    background-color: transparent;
}
.header-top {
    background: transparent;
    border-bottom: none;
}
@media (min-width: 992px) {
.device-pc .global-nav-list>li>a {
    padding: 14px 0.8em;
}
.device-pc .global-nav-list>li>a:hover,
.device-pc .global-nav-list>li.current_page_item a{
    color:#fff;
}
}

.site-body-container {
	background-color:#fff;
	padding:50px 50px 50px;
	border-radius:0 0 0px 0px;
	overflow: hidden; /*　不具合あるなら消す　*/
}
body.home .site-body-container {
	padding:0px 50px 50px;
	border-radius:20px;
}
.mainimg {
	margin:0 -50px 0;
	width: calc(100% + 100px);
}
.mainimg img {
	width: calc(100% + 100px);
	max-width: calc(100% + 100px);
	border-radius:20px 20px 0 0 !important;
}

.site-footer .row {
    justify-content: space-between;
}
.site-footer .row .col-lg-4 {
    flex: 0 0 31%;
	border-radius:20px;
	background-color:#fff;
	padding:20px;
}
.site-footer .row .col-lg-4:last-child {
	background-color:transparent;
	padding:0px;
}

.site-body-container::before {
    content: "© 2022 Sugawara Erectric Service.";
    font-family: 'Bebas Neue';
    letter-spacing: 0.1em;
    font-size: 24px;
    color: #fff;
    transform: rotate(90deg) translateX(-50%);
    transform-origin: left center;
    position: fixed;
    top: 50%;
	left: calc(-50px + (100% - 1140px) / 2);
}
@media screen and (max-width:1200px){.site-body-container::before {left: calc(-50px + (100% - 960px) / 2);}}
@media screen and (max-width:992px){.site-body-container::before {left: calc(-50px + (100% - 720px) / 2);}}
@media screen and (max-width:767px){.site-body-container::before {left: calc(-50px + (100% - 540px) / 2);}}


.site-header--layout--nav-float .site-header-logo {
    margin-right: 0em;
}
.site-header--layout--nav-float .site-header-logo img {
    max-width: 274px;
}
.header_nav_search_container {
    width: 750px;
}
.header_nav_search_container .vk_button .btn.has-background:not(.has-text-color) {
    color: #333;
	background-color:#ffe533;
	font-size:11px;
	font-weight:bold;
	padding:10px 10px;
	width: 100%;
	border-radius:5px;
	box-shadow: 3px 3px 5px -2px rgba(0,0,0,0.2);
	margin:10px 0 0;
}
.header_nav_search_container .vk_button .btn.has-background:not(.has-text-color) .emp01 {
    color: #62b5aa;
	font-size:14px;
	font-weight:bold;
}

.header-top-tel-wrap {
	font-family: "Bebas Neue";
	color:#333;
	font-size:20px !important;
    margin-top: 3px;
}

/* グローバルナビのアニメーションを消す */
.global-nav-list>li:before {
	transition: none;
}

/* スクロール時のヘッダー挙動 */
.header_scrolled .site-header {
    width: 1000px;
    left: 50%;
    transform: translate(-50%, 10px);
    padding: 10px 30px;
    border-radius: 999px;
	box-shadow: 0px 5px 10px rgb(0 0 0 / 10%);
}

.header_scrolled .site-header .header_nav_search_container {
    width: 240px !important;
}
.header_scrolled ul#menu-headernavigation li.current_page_item a,.header_scrolled  ul#menu-headernavigation li:hover a {
    color: var(--vk-color-primary);
}
.header_scrolled ul#menu-headernavigation .sub-menu li a {
    color: #fff;
}



.ttl-a {
	position:relative;
	margin-bottom: 30px;
}
.ttl-a .vk_heading {
	display: flex;
    flex-direction: column;
}
.ttl-a h2 {
    font-size: 20px;
    text-align: left;
	order:2;
	text-align:center;
}
.ttl-a p.vk_heading_subtext {
    font-size: 86px;
	line-height:1;
    color: #d2e9e6;
    font-family: "Bebas Neue";
    text-align: left;
    top: 0;
    display: block;
    width: 100%;
	order:1;
	text-align:center;
}


.ttl-a2 {
	position:relative;
	margin-bottom: 30px;
}
.ttl-a2 .vk_heading {
	display: flex;
    flex-direction: column;
}
.ttl-a2 h2 {
    font-size: 20px;
    text-align: left;
	order:2;
}
.ttl-a2 p.vk_heading_subtext {
    font-size: 86px;
	line-height:1;
    color: #d2e9e6;
    font-family: "Bebas Neue";
    text-align: left;
    top: 0;
    display: block;
    width: 100%;
	order:1;
}

.ttl-b {
	font-size:22px;
	text-align:center;
}

.box-pt-a1 {
	background-color:#b0e1ec;
	border-radius:10px;
	padding:40px;
	background-image:url(../../../wp-content/uploads/pbk-a1.png) ;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:cover;
}
.box-pt-a1 p {
	font-size:14px;
}
.box-pt-a2 {
	background-color:#f8f084;
	border-radius:10px;
	padding:40px;
	background-image:url(../../../wp-content/uploads/pbk-a2.png) ;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:cover;
}
.box-pt-a2 p {
	font-size:14px;
}

.box-pt-a .row .col-xl-6 {
    flex: 0 0 48%;
}
.box-pt-a .row {
    justify-content: space-between;
}


.btn-a a {
    width: 220px;
    max-width: 100%;
    border-radius: 23px;
	font-family: "Bebas Neue";
	font-size:22px !important;
	padding:10px 5px 8px !important;
	line-height:1;
	box-shadow: 3px 3px 8px -2px rgba(0,0,0,0.2);
}

.box-pt-b .wp-block-vk-blocks-grid-column-item {
	border:5px solid #f3f3f3;
	border-radius:10px;
	padding:25px 25px 5px;
}

.box-pt-b .col-xl-4 {
    flex: 0 0 31%;
    max-width: 31%;
}
.box-pt-b .row {
    justify-content: space-between;
}

.btn-b a {
    width: 270px;
    max-width: 100%;
    border-radius: 7px;
/* 	padding:8px 5px 10px !important; */
/* 	line-height:1; */
	box-shadow: none;
}
.btn-b a span ,
.btn-b a i {

	font-size:16px !important;
}
.box-pt-c .btn-b a {
    width: 220px;
}
.box-pt-c {
	margin:0 -50px 0;
	width: calc(100% + 100px);
	padding:0 50px;
	overflow:visible;
}
.pt-c {
	margin:-50px 0;
	border-radius:15px;
}

.btn-c a {
    width: 220px;
    max-width: 100%;
    border-radius: 7px;
/* 	padding:8px 5px 10px !important; */
/* 	line-height:1; */
	box-shadow: none;
	border:1px solid #e4d262 !important;
	background-color:#fcfaef !important;
	color:#333 !important;
}
.btn-c a span ,
.btn-c i {
	font-size:16px !important;
}
.btn-c a:hover span {
	color:#333 !important;
}
.btn-c a:hover i {
	color:#333 !important;
}

.footer-tel {
	text-align:center;
	font-size: 50px;
	line-height:1.2;
    color: #333;
    font-family: "Bebas Neue";
	margin:0px;
}

.footer-btn-contact a {
    color: #333 !important;
	background-color:#ffe533;
	font-size:16px;
	padding:10px 10px;
	width: 100%;
	border-radius:5px;
	box-shadow: 3px 3px 5px -2px rgba(0,0,0,0.2);
	margin:10px 0 0;
	background-color:#ffe533 !important;
}
.footer-btn-contact a .emp01 {
    color: #62b5aa !important;
	font-size:24px;
	font-weight:bold;
}
#wp_widget_vkexunit_profile-2 {
    margin: 0 0 10px;
		}
#wp_widget_vkexunit_profile-2 .veu_profile .profile_text {
	text-align:center;
}
#block-15 {
	margin:0 0 10px !important; 
}
.site-footer-copyright p {
	display:none;
}

.site-body {
    padding: 0;
}


/*当社の強み*/

@media (min-width: 1200px) {
.page-header {
    max-width: 1140px;
	border-radius: 20px 20px 0 0 !important;
	margin:0 auto;
}
#breadcrumb {
	max-width:1140px;
}
}
@media (max-width:1199px) {
.page-header {
    max-width: 960px;
	border-radius: 20px 20px 0 0 !important;
	margin:0 auto;
}
#breadcrumb {
	max-width:960px;
}
}
@media (max-width:991px) {
.page-header {
    max-width: 720px;
	border-radius: 20px 20px 0 0 !important;
	margin:0 auto;
}
#breadcrumb {
	max-width:720px;
}
}
@media (max-width:767px) {
.page-header {
    max-width: 540px;
	margin:0 auto;
}
#breadcrumb {
	max-width:540px;
}
}

#breadcrumb {
	background-color:#fff;
	border-radius:0 0 20px 20px;
	margin:0 auto;
}

.page-header {
    height: 200px !important;
    background-color: #97eadf;
    background-blend-mode: multiply;
}
.page-header-inner.container {
    margin-left: 30px;
    margin-bottom: -20px;
    bottom: 0;
    position: absolute;
}

.ttl-c h2 {
	font-size: 86px;
	line-height:1.2;
    color: #eee !important;
    font-family: "Bebas Neue";
    text-align: center;
}
.ttl-c p {
	font-size:24px;
	color:#62b5aa;
	font-weight:bold;
	text-align:center;
}

.box-str-a .wp-block-vk-blocks-grid-column-item {
	position:relative;
	border-radius: 10px;
	padding: 25px 25px 5px;
	border: 5px solid #fff;
	text-align:center;
	font-size:20px;
	font-weight:bold;
	color:#62b5aa;
}

.box-str-a .wp-block-vk-blocks-grid-column-item:hover {
    border: 5px solid #f3f3f3;
	background-color:#f7f7f7;
}
.a-whole {
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
}


.page-header-inner{
	position:relative;
	margin-bottom: 30px;
}
.page-header-inner {
	display: flex;
    flex-direction: column;
}
.page-header-inner .page-header-title {
    font-size: 20px;
    text-align: left;
	order:2;
	text-align:center;
}
.page-header-inner .page-header-subtext,
.page-header-inner > div:last-child{
    font-size: 50px;
	line-height:1;
    color: #d2e9e6;
    font-family: "Bebas Neue";
    text-align: left;
    top: 0;
    display: block;
    width: 100%;
	order:1;
	text-align:center;
	opacity:1;
}


.str-txt-a {
	font-size:26px;
	font-weight:bold;
	line-height:2.4;
}
.str-txt-a .emp01 {
	background-color:#8acbc2;
	color:#fff;
	font-size:30px;
	text-shadow: 2px 2px 2px rgba(0,0,0,0.3);
	font-weight:bold;
	padding:10px 15px;
	margin-right:10px;
}
.str-txt-a .emp02 {
	background-color:#8acbc2;
	color:#ffe533;
}
.waku-a {
	border:1px solid #e4d262;
}
.waku-a p {
	margin-bottom:0px;
}


/*企業理念・代表挨拶*/

.outerwide {
    margin: 0px -50px;
    width: calc(100% + 100px);
}
.box-philo-c {
	padding:70px 50px 30px;
}

.box-philo-b .wp-block-media-text__media {
    border-radius: 15px;
}

/*会社概要*/

.ttl-d .emp01 {
	background-color:#8acbc2;
	border-radius:50%;
	font-weight:bold;
	color:#fff;
	font-size:24px;
    font-family: "Bebas Neue";
	padding:8px 10px;
	margin-right:10px;
	width:47px;
	display: inline-block;
	text-align:center;
}
/* .box-cmp-b .wp-container-4 {
	background-color: #f7f7f7;
    padding: 40px 40px 20px;
	border-radius:15px;
}
.box-cmp-b .wp-container-4 table {
	background-color:#fff; */
}

.box-cmp-b {
    padding-top: 2em;
    padding-bottom: 3.5em;
}

/*電気設備コンサル*/

.box-enr-a {
	justify-content: center;
	align-items: center !important;
}
.box-enr-b {
	justify-content: center;
	align-items: center !important;
}
.box-enr-c {
	justify-content: center;
	align-items: center !important;
	background-color:#f8f084;
	border-radius:15px;
	position:relative;
	overflow:visible;
	padding:20px 50px 0px
}
.box-enr-c img {
	margin:-60px 0 -60px;
}
.box-enr-d .row {
    gap:3.5%;
}
.box-enr-d .wp-block-vk-blocks-grid-column-item {
	flex: 0 0 31%;
	border:1px solid #ddd;
	padding:20px;
	border-radius:10px;
}

.ttl-e .vk_heading_title {
	text-align:center;
	margin-bottom:15px;
}
.table-case th {
	color:#8acbc2;
}

.box-enr-e {
	padding:80px 50px;
}
.box-enr-e-grid .row {
    gap:4%;
}
.box-enr-e-grid  .wp-block-vk-blocks-grid-column-item {
	flex: 0 0 48%;
	border:1px solid #ddd;
	padding:20px;
	border-radius:10px;
	background-color:#fff;
}
.box-enr-f {
	max-width:600px;
	margin:0 auto;
}

.box-enr-f .vk_step_item .vk_step_item_dot_num {
	font-family: "Bebas Neue";
	font-size: 23px;
    line-height: 34px;
}
.box-enr-g {
	padding:80px 50px 40px;
	border-radius:15px;
}

.ttl-f .vk_heading_title {
	border-left: 5px solid #8acbc2 !important;
	padding-left:15px !important;
	font-size:20px !important;
}

.ttl-g .vk_heading_title {
	font-size:20px !important;
}

/*施⼯実績*/
.single-works .page-header-title {
	color:#333;
}
.single-works h1.entry-title {
	text-align:center;
	color:#8acbc2;
	margin:40px 0 40px;
}

/*太陽光発電設備⼯事事業*/

.box-spg-a {
	justify-content: center;
	align-items: center !important;
}
.txt-list-a {
	margin-top:0px;
}
.txt-list-a {
    margin-top: 0px;
    font-weight: bold;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 2rem;
    justify-content: space-around;
}
.txt-list-a li {
    /* width: 33%; */
    /* float: left; */
    /* padding-right: 2%; */
    /* box-sizing: border-box; */
    /* font-weight: bold; */
    width: calc(50% - 1rem);
    min-width: 270px;
    margin: 0 !important;
}

.ttl-g {
	color:#8acbc2;
}

.service_list .row{
	gap:3rem 0;
}

.service_price {
    font-weight: 800;
    font-size: 1.2rem;
    color: var(--vk-color-custom-5);
    text-align: right;
}

.roof-list .row{
	gap:2rem 0;
}
.roof-list p {
    font-size: var(--vk-size-text-sm);
}

/*お問い合わせ*/

.contactform {
	margin-bottom:30px;
}
.waku-b {
	border-radius:15px;
}
.waku-b p {
	margin-bottom:0px;
}

/* 記事一覧など */
.vk_post_imgOuter {
    border-radius: 10px;
}
.vk_post h5.vk_post_title a:hover {
    text-decoration: underline;
}
.vk_post{
	position:relative;
}
.vk_post_body .vk_post_title{
	position:unset;
}
.vk_post_body a::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    pointer-events: auto;
    content: "";
    background-color: rgba(0,0,0,0);
}