@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への上書き、カラー変数設定など */

body,p,li,th,td,span,div, a {
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 500;
	font-style: normal;
}
h1,h2,h3,h4,h5 {
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 700;
	font-style: normal;
}
h2 span {
	font-weight:700;
}

h2.min-semi,
p.min-semi {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
}

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

h2 {
	font-size:clamp(1.375rem, 1.193rem + 0.91vw, 1.875rem); /*22-30*/
}
/*見出し 下線*/
.is-style-vk-heading-solid_bottomborder_black {
	border-bottom:1px solid #ddd;
}
.is-style-vk-heading-solid_bottomborder_black:before {
	    content: "";
        width: 2em;
        height: 1px;
        background: var(--vk-color-primary);
        position: absolute;
        bottom: -1px;
        left: 0px;
        z-index: 1;
}
/*見出し べた背景*/
h1.has-background, h2.has-background, h3.has-background, h4.has-background, h5.has-background, h6.has-background {
	padding:.5em 1em;
}

/*見出し　上下線*/
.is-style-vk-heading-solid_black, .editor-styles-wrapper .block-editor-block-list__layout .is-style-vk-heading-solid_black {
	border-top:3px solid var(--vk-color-primary);
}


.bgstripe {
background-size: auto auto;
background-color: rgba(255, 255, 255, 1);
background-image: repeating-linear-gradient(45deg, transparent, transparent 2px, rgba(217, 235, 246, 1) 2px, rgba(217, 235, 246, 1) 12px );
}
.bgstripe2 {
  background-image: repeating-linear-gradient(45deg, #fbebde, #fbebde 10px, transparent 10px, transparent 12px);
}
.bgstripe3 {
  background-image: repeating-linear-gradient(45deg, #ebf7ee, #ebf7ee 10px, transparent 10px, transparent 12px);
}


.w-fitcontent {
	width:fit-content;
}
/*右側へ要素を広げる*/
.column-out-right{
    margin-right: calc(50% - 50vw);
}

/*左側へ要素を広げる*/
.column-out-left{
    margin-left: calc(50% - 50vw);
}

/*角丸*/
.border-round {
	border-radius:1rem;
}

/*シャドウ*/
.b-shadow {
	box-shadow:3px 3px 15px rgba(0,0,0,.1);
}

.h100 {
	height:100%;
}
.height100 {
	height:100px;
}
.m-center {
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	width:100%;
}

.left-img img {
	border-radius:0 1rem 1rem 0;
	position:relative;
	z-index:10;
	margin-top:4rem;
}
.right-txt {
	position:absolute;
	right:0;
	top:0;
	width:70%;
	padding:5rem 3rem 5rem calc(15% + 3rem);
}

/*テーブル*/
:where(:not(.wp-block-table))>table,
:where(:not(.wp-block-table))>table :is(thead,tbody,tfoot,th,td) {
	border-color:#ccc;
}

/* コピー禁止 */
body {
  -webkit-user-select: none; /* Chrome, Safari */
  -moz-user-select: none;    /* Firefox */
  -ms-user-select: none;     /* IE/Edge */
  user-select: none;         /* 標準 */
}
img {
  -webkit-user-drag: none; /* Chrome, Safari */
  -khtml-user-drag: none;  /* 古いSafari */
  -moz-user-drag: none;    /* Firefox */
  -o-user-drag: none;      /* Opera */
  user-drag: none;
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Header ヘッダーまわり
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

/*若葉マーク*/
.icon-wakaba .vk_button_link_txt:before {
  content:"";
	background:url(../../../wp-content/uploads/icon-beginner-1.png)no-repeat center/contain;
	width:16px;
	height:27px;
}


/* ヘッダー固定 */
body  {
	overflow-x: unset !important;
    display: flex;
    flex-direction: column;
}
.device-pc #site-header {
    position: sticky;
    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);
}
/*.global-nav-list>li .global-nav-name {
	font-size:18px;
}*/
.device-pc .global-nav-list>li>a {
	padding:.8rem;
}

.header-top .header-top-description {
	text-align:left!important;
	font-size:.8rem;
}
#site-header-container .site-header-logo {
	padding-block:20px;
}
.header_nav_search_container {
	min-width:unset;
	margin-left:0;
	position:static;
}
.site-header-container.container,
.header-top .container {
	max-width:100%;
}

#site-header-container {
	align-items:end;
}

/*ヘッダー*/
.header-btn {
	position:absolute;
	top:0;
	right:15px;
}
.header-btn .vk_buttons_col {	
	align-items:start;
}
.header-btn .vk_button_link {
	height:60px;
}
.header-btn .vk_button_link.btn {
	padding:0 1.2rem .5rem!important;
	border-radius:0 0 8px 8px!important;
	position:relative;
}

/*右固定*/
.fixed-right {
	position:fixed;
	top:200px;
	/*transform:translateY(-50%);*/
	right:0px;
}
.fixed-right .vk_buttons_col,
.fixed-right .vk_button_link_caption {
	flex-direction:column;
}
.fixed-right .vk_button_link_txt {
	writing-mode: vertical-rl;
}
.fixed-right .vk_button_link_before {
	margin-right:0;
	margin-bottom:.5rem;
}
.fixed-right .vk_button_link.btn {
	padding:.5rem .8rem 1rem!important;
	border-radius:8px 0 0 8px!important;
	min-width:unset;
}



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

.footer-nav-list {
	padding:1.5rem 0 2rem;
	border-bottom:1px solid #ccc;
}
.footer-nav li {
	padding:0 .8rem;
	font-size:1rem;
}
.site-footer aside.widget p {
	font-size:1rem;
}
.site-footer aside.widget{
	margin-bottom:.5rem;
}
.site-footer .vk_button_link_txt {
	font-size:1rem;
}

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

/*ティーザー内*/
.numlist {
	background:rgba(255,255,255,.8);
	padding:8px 15px 8px 3.5em;
	position:relative;
	font-size:20px;
	border-radius:8px;
}
.numlist .num {
	position:absolute;
	top:-.5em;
	left:.8em;
	border-radius:100%;
	line-height:1;
	padding:.5em;
	aspect-ratio:1;
}

.ad-maru {
	background:var(--wp--preset--color--vk-color-custom-2);
	padding:1rem;
	border-radius:100%;
	aspect-ratio:1;
	color:#fff;	
}


/*提供サービス*/
.stripe-drop {
	position:relative;
}
.stripe-drop:before {
	position:absolute;
	content:"";
	display:block;
	width:100%;
	height:280px;
	top:0;
	left:0;
	background-size: auto auto;
background-color: rgba(255, 255, 255, 1);
background-image: repeating-linear-gradient(45deg, transparent, transparent 2px, rgba(217, 235, 246, 1) 2px, rgba(217, 235, 246, 1) 12px );
}

.shadowbtn .vk_button_link.btn {
	padding:1.5rem 2rem;
	border-radius:1rem;
	position:relative;
	box-shadow:5px 5px 15px rgba(0,0,0,.2);
	transition:.5s;
	border:5px solid transparent;
	text-align:left;
}
.shadowbtn .vk_button_link_txt {
	font-size:clamp(1.5rem, 1.318rem + 0.91vw, 2rem);
	font-weight:700;
}
.shadowbtn .vk_button_link_subCaption {
	font-size:1rem;
}
.shadowbtn .vk_button_link_after {
	position:absolute;
	right:1rem;
	top:50%;
	transform:translateY(-50%);
}
.shadowbtn span.vk_button_link_txt {
	display:flex;
	align-items:center;
}

/**イメージバナー**/
.imgbnr {
	position:relative;
	margin-bottom:0;
}
.imgbnr figure {
	margin:0!important;
	overflow:hidden;
}
.imgbnr figure img {	
	transition: .5s;
	width:100%;
	aspect-ratio:4/3;
}
.imgbnr:hover figure img {
	transform: scale(1.1)
}
.imgbnr .wp-block-vk-blocks-button {
}
.imgbnr .wp-block-vk-blocks-button a {
}
.imgbnr .wp-block-vk-blocks-button a:before {
	content:'';
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background:rgba(0,0,0,.5);	
	transition: .5s;
}
.imgbnr .wp-block-vk-blocks-button a:hover:before {
	background:rgba(0,0,0,.2);
}
.imgbnr .vk_button_link_caption {
	position:absolute;
	left:50%;
	top:50%;
	transform:translate(-50%,-50%);
	font-size:1.5rem;
	font-weight:700;
}

.vk_button .has-text-color.vk_button_link-type-text:hover .vk_button_link_txt {
	text-decoration:none;
}


/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Pageheader, Breadcrumb 下層ページヘッダー・パンくずリスト
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* 下層ページのページヘッダー、パンクズ設定 */



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

/* 会社概要 */

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

/*はじめての方へ　ステップ*/
.vk_timeline_item_caption {
	font-size:1.5rem;
	margin-bottom:.5em!important;
	color:#333!important;
}
.vk_timeline .vk_timeline_item_style {
	top:10px;
}
.vk_timeline_item_lineStyle-default::before {
	top:32px;
}
.vk_timeline .vk_timeline_item_style.vk_timeline_item_style-outlined {
	background:currentColor;
}

/*FAQ*/
.vk_faq .vk_faq_title:before {
	background:var(--wp--preset--color--vk-color-custom-3);
}
.is-style-vk_faq-bgfill-circle .vk_faq_content:before {
	background:var(--wp--preset--color--vk-color-custom-5)
}

/*FLOW*/
.vk_flow .vk_flow_frame {
	background:#fff;
	border:1px solid var(--vk-color-primary);
	padding:2rem;
	position:relative;
}
.vk_flow_frame_text_title {
	font-size:1.5rem!important;
	padding:0 0 1rem 5rem!important;
}
.vk_flow_frame_text_title mark {
	background:var(--vk-color-primary);
	color:#fff;
	padding:1.5rem;
	font-size:2rem;
	aspect-ratio:1;
	border-radius:100%;
	position:absolute;
	left:1rem;
	top:-1rem;
	line-height:.8;
}
.vk_flow_frame_image {
	max-width:250px!important;
}
.vk_flow_frame_image img {
	width:100%;
	aspect-ratio:4/3;
	object-fit:cover;
}

/*プライバシーポリシー*/
.ppg {
	background:rgba(0, 119, 193,.1);
	padding:1rem!important;
	margin-bottom:1rem;
}
.privacy-box {
	height:250px;
	overflow-y:scroll!important;
}

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



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

.sub-section .widget {
	background:var(--wp--preset--color--vk-color-custom-4);
	padding:1rem;
	border-radius:.5rem;
}
.sub-section .widget h4 {
	font-weight:700;
	border-bottom:1px solid #000;
	padding-bottom:1rem;
}

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

/*左固定レイアウト*/
.sticky-left {
	position: sticky !important;
    top: 200px !important;
}
.sticky-wrap {
	display: flex !important;
    overflow: visible !important;
    align-items: flex-start !important;
}
.wp-block-vk-blocks-outer.vk_outer {
	overflow:visible;
}
