@charset "utf-8";
/*
Theme Name: Lightning Child
Template: lightning
Author:アートフレア株式会社
Version: 1.2
*/
/* 標準データ最終更新日：2025/04/14  */


/*
 * WEBフォントの読み込み（@import url('https://fonts～'); ）はHeader.phpで行う
*/


/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  General　全体的な設定
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* :root設定、bodyへの上書き、カラー変数設定など */
:root{
	--en:  "Barlow", sans-serif;
	--vk-line-height: 2.2em;
}


/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Common 汎用パーツ系
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* 繰り返しボタン・見出し、余白設計など 汎用パーツへの上書き */

.vkp_button-through-arrow.vk_button .vk_button_link.is-style-outline {
    position: relative;
    z-index: 0;
    border-radius: 0;
    padding: 22px 35px!important;
    letter-spacing: 0.1em;
    min-width: 340px!important;
}

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

.txt20{
	font-size:20px;
}
.txt50{
	font-size:50px;
}

.btn_s .vk_button_link_txt{
	color:var(--vk-color-custom-2);
	transition:0.3s;
}
.btn_s a:hover .vk_button_link_txt{
	color:var(--vk-color-primary)
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Header ヘッダーまわり
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* ヘッダー固定 */
body  {
	overflow-x: unset !important;
    display: flex;
    flex-direction: column;
}
.device-pc #site-header {
    position: fixed !important;
    top: 0;
}
.logged-in.device-pc #site-header {
    top: 32px;
}

/* グローバルナビ */
.global-nav-list>li>a {
	transition: .3s;
	border-bottom: 3px solid transparent;
}
.global-nav-list>li>a:hover,
.global-nav-list>li.current-menu-item>a {
    color: var(--vk-color-custom-1);
    border-bottom: 3px solid var(--vk-color-custom-1);
}

#site-header-container{
	max-width:100%;
}

#site-header-container{
	padding:20px;
}
.global-nav-list>li .global-nav-name{
	font-size:16px;
	font-weight:400;
}
.global-nav-list>li>a {
        padding: 14px 1.2em;
    }

#menu-item-5211 a{
	background-color:#D10822;
	border-radius:3px;
	margin-left:10px;
}
#menu-item-5210 a{
	background-color:#292929;
	border-radius:3px;
		margin-left:10px;
}
#menu-item-5209 a{
	background-color:#004FCE;
	border-radius:3px;
	margin-left:10px!important;
}
#menu-item-5211 a:hover,#menu-item-5210 a:hover,#menu-item-5209 a:hover{
	background-color:#A20015;
	border-bottom: 3px solid transparent;
}

 .home #site-header{
	background-color:rgba(0, 0, 0, 0.0);
	 transition:0.5s;

}
.scrolled #site-header{
	background-color:rgba(0, 0, 0, 0.24)

}


/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Footer フッターまわり
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* フッターウィジェット、フッターロゴ、コピーライト */

footer,footer p,footer li {
	font-size:16px;
}

.footer_link h3{
	font-size:17px;
	font-weight:500;
		margin-top:10px;
}
.footer_link h4{
	font-size:14px;
	font-weight:500;
	padding-left:13px;
	margin-top:10px;
}
.sublink{
		padding-left:26px !important;
}
.sublink li{
	margin-top:3px;
	margin-bottom:0;
	font-size:14px;
}

.footer_link  li::marker,.footer_link li::before{
	font-size:9px !important;
}
.bnlink a img{
	border:solid 2px #fff;
	transition:0.3s;
}
.bnlink a:hover img{
	border-color:var(--vk-color-primary)
}
.footer_link a {
	text-decoration:none;
	transition:0.5s;
}
.footer_link a:hover{
	color:var(--vk-color-primary)
}

.footer_area{
	position:relative;
}
.bnlink{
	width:340px;
	position:absolute;
	bottom:10px;
	right:0;
}


/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Toppage トップページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* パーツごとにコメントアウトで注釈を入れてください。 */
.teaser_bg{
	position:fixed;
	z-index:0;
	width:100vw!important;
	top:0;
	left:0
}
.teaser{
	position:relative;
	z-index:1;
}
.teaser h2{
	font-size:80px!important;
	font-family:var(--en);
	font-weight:600;
	padding-left:2rem;
	top:50%;
	position:absolute;
	width:100%!important;
	transform: translateY(-50%);
}

.teaser .wp-block-cover__inner-containe{
height:100vh!important;
}

.teaser.wp-block-cover.has-custom-content-position.has-custom-content-position.is-position-center-left .wp-block-cover__inner-container{
	height:100vh!important;
		width:100vw!important;
	max-width:100%!important;
}
* スクロールダウンの位置 */
.scroll {
  writing-mode: vertical-rl;
	color:#fff;
}
.scroll span{
	  writing-mode: vertical-rl;
	color:#fff;
	font-family:var(--en);
	font-size:12px;
}
.scroll{
	position:absolute;
	bottom:100px;
	left:50%;
}
/* 線のアニメーション部分 */
.scroll::before {
  animation: scroll 2s infinite;
  background-color: #fff;
  bottom: -115px;
  content: "";
  height: 100px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  width: 1px;
  z-index: 2;
}
/* 線の背景色 */
.scroll::after {
  background-color:rgba(255, 255, 255, 0.49);
  bottom: -115px;
  content: "";
  height: 100px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  width: 1px;
}

/* 線のアニメーション */
@keyframes scroll {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  51% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}

.section1{
	background-color:rgba(255, 255, 255, 0.00)!important;
}

.sec1_map{
	opacity:0.5;
}
.txt44{
font-size:44px;}

.sv_box .vk_accordion-trigger{
	background-color:var(--vk-color-custom-2);
	color:#fff;
	padding-left:35px;
	padding-top:25px;
	padding-bottom:25px;
}
.sv_ti1{
	text-transform: uppercase;
	font-size:26px;
		font-family:var(--en);
	font-weight:600;
	line-height:1.3;
}
.sv_ti2{
	font-size:14px;
}

.vk_accordion-trigger .vk_accordion-toggle-close::after, .vk_accordion-trigger .vk_accordion-toggle-open::after{
	border-right:1px solid #fff;
	border-top:1px solid #fff;
	    width: 15px;
    height: 15px;
	    top: 41%;
}
.sv_box .vk_button{
margin-bottom:0;	
}
.sv_box .vk_accordion-target-open{
	background-color:#fff;
	padding-top:2px;
}

.sv_box .wp-block-vk-blocks-button a{
	padding:25px 12px!important;
	display:block;
	border-bottom:solid 1px #ccc;
	position:relative;
	transition:0.3s;
}

.svbtn_l a{
	font-size:20px!important;
}
.svbtn_l a span::before {
  font-family: "Font Awesome 6 Free";
  content:'\f111';
  font-weight: 900;
  padding-right: 10px;
	color:var(--vk-color-primary);
	font-size:9px;
	position:relative;
	top:-4px;
}
#main .svbtn_s a{
			padding:16px 12px!important;
	padding-left:24px!important;

}
.svbtn_s span::before {
  font-family: "Font Awesome 6 Free";
  content:'\f068';
  font-weight: 900;
  margin-right: 10px;
	color:#B4B4B4;
		color:var(--vk-color-primary);
	font-size:14px;
	position:relative;
/* 	top:-2px; */
	left:5px;
}

.sv_box .vk_button_link_txt{
	color:var(--vk-color-custom-2);
}
.sv_box i{
	position:absolute;
	right:12px;
	font-size:10px;
	top:9px;
}
.sv_box .wp-block-vk-blocks-button a::after{
	  background: #F2F2F2;
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 100%;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: .5s cubic-bezier(0.45, 0, 0.55, 1);
  z-index: 0;
}
.sv_box .vk_button_link_caption{
	position:relative;
	z-index:1;
	width:100%;
	display:block;
}
.sv_box .wp-block-vk-blocks-button a{
	background-color:transparent
}

.sv_box .wp-block-vk-blocks-button a:hover::after {
  transform: scale(1, 1);
} 

#main .linknone a,.linknone i,.linknone .vk_button_link_txt{
	color:#C1C1C1 !important;
}

#main .linknone a span::before {
	color:#C1C1C1;
}
#main .linknone a:hover::after {
  transform: scale(0, 1);
}
.vk_button .has-text-color.vk_button_link-type-text:hover .vk_button_link_txt, .vk_button .has-text-color.vk_button_link-type-text:hover .vk_button_link_subCaption, .editor-styles-wrapper .vk_button .has-text-color.vk_button_link-type-text:hover .vk_button_link_txt, .editor-styles-wrapper .vk_button .has-text-color.vk_button_link-type-text:hover .vk_button_link_subCaption{
	text-decoration:none;
}
.sv_contact{
	padding:20px 20px 15px 25px;
	border:solid 1px #fff;
	background-image:url(../../../wp-content/uploads/contact_bg.png);
	background-size:26px;
	background-repeat:no-repeat;
	background-position:top 3px left 3px;
	transition:0.3s;
	position:relative;
}
.sv_contact:hover{
	border:solid 1px var(--vk-color-primary);
}
.sv_contact p{
	line-height:1.6;
}
.sv_contact_link a{
	text-decoration:none;
	color:var(--vk-color-custom-2);
}
.sv_contact_link::after{
	  font-family: "Font Awesome 6 Free";
  content:'\f138';
  font-weight: 900;
  padding-left: 3px;
	font-size:12px;
	color: var(--vk-color-primary);
}

.con_left{
	padding-left:5vw;
}
.con_txt1{
	font-size:12px;
	line-height:1.3;
}
.con_txt3{
	font-size:10px;
	font-family:var(--en);
	padding-left:10px;
}
.con_box_outer{
	position:relative;
}
.con_box_outer a::after{
	  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: transparent;
}
.con_box_outer img{
	transition:0.7s;
}
.con_box_outer:hover img{
/* 	transform: scale(1.1); */
}
#main .con_box_outer img{
	object-fit:cover;
	width:220px !important;
	height:340px !important;
}
.con_txt_box{
	position:absolute;
	bottom:0;
	width:100%;
	padding:10px 10px 7px 10px;
}
#main .con_box_outer2 img{
	height:170px !important;
}
.staff_box{
	width:1110px;
}
.staff_box_outer{
	overflow-y:auto;
	padding-bottom:20px;
}
.staff_box_outer::-webkit-scrollbar-track {
  background-color: rgba(255, 255, 255, 0.30)!important;
}

.staff_box_outer::-webkit-scrollbar-thumb {
  background-color: #fff;
  border-radius: 0px!important;
}

.staff_box_outer {
 
  scrollbar-gutter: stable;    /* 余白を確保してレイアウトずれ防止 */
  scrollbar-color: #fff rgba(255, 255, 255, 0.30);
  scrollbar-width: thin;
}
.staff_box_outer::-webkit-scrollbar       { width: 10px; }
.staff_box_outer::-webkit-scrollbar-track { background: #fff; }
.staff_box_outer::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.30);
  border-radius: 10px;
  border: 2px solid #fff;
	
}
.staff_box figure{
	margin-bottom:0;
	overflow:hidden;
}
.staff_box .wp-block-group{
gap:0	 !important;
}

.top_card .vk_post{
    padding: 0px !important;

}
.top_card .vk_post_body{
	padding-top:0;
}
.card-noborder .vk_post_imgOuter{
	border:none;
}

.sem_box{
	background-color:#F7F7F7;
	border-bottom:solid 1px #b9b9b9;
	border-top:solid 1px #b9b9b9;
	padding:45px;
}

.news1{
	width:110px;
}
.news2{
	width:150px;
	padding:4px 10px !important;
	border-radius:3px;
	text-align:center;
	font-size:14px !important;
}
.news_list{
padding:20px 0;
	border-bottom:solid 1px #ccc;
}
.vkp_button-through-arrow i{
	position:absolute;
	right:15px;
	font-size:14px;
	color:var(--wp--preset--color--vk-color-primary-vivid);
}
.contact_btn .vk_button_link_caption::before,
.contact_btn .vk_button_link_caption:after{
	display:none !important;
}
.contact_btn i{
	color:var(--wp--preset--color--vk-color-primary-vivid);
	position:relative;
}
.pd50{
	padding-left:50px;
}


/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Pageheader, Breadcrumb 下層ページヘッダー・パンくずリスト
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* 下層ページのページヘッダー、パンクズ設定 */
.page-header{
	margin-top:80px;
}


/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Page 下層ページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* ページごと、パーツごとにコメントアウトで注釈を入れてください。 */

/* 会社概要 */

/* 会社概要　＞　代表あいさつ */


/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Archive　ブログ一覧ページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* パーツごとにコメントアウトで注釈を入れてください。 */
.vk_post:hover {
    background: rgb(128 128 128 / 0%);
}
.card-noborder .vk_post_imgOuter{
	overflow:hidden;
	transition:0.7s;
	background-size:100%;
}
.vk_post:hover .vk_post_imgOuter{
background-size:110%;
}

.postListText_title,.postListText_date{
	font-size:16px;
}
.postListText_title a{
	text-decoration:none;
}
.postListText_singleTermLabel{
	min-width:120px;
}
.postListText_singleTermLabel a{
	padding:5px;
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Single　ブログ詳細ページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* パーツごとにコメントアウトで注釈を入れてください。 */



/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  その他・追加機能
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* パーツごとにコメントアウトで注釈を入れてください。 */


