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


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


/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  General　全体的な設定
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* :root設定、bodyへの上書き、カラー変数設定など */
:root {
    --vk-color-text-body:#474747;
    --bxshadow:0px 10px 30px rgba(0, 0, 0, 0.1);
    --en:"Cinzel", serif;
    --gra:linear-gradient(to right,#08017D 10%,#309AD8 80%);
    --rounded:2rem;
}
h1,h2,h3,h4,h5 {
	line-height:1.7;
}
.fw-bold {
  font-weight:700;
}
.fw-bolder {
  font-weight:900;
}

.fs-ll {
  font-size:clamp(2.25rem, 1.977rem + 1.36vw, 3rem); /*36-48*/
}
.fs-l {
  font-size:clamp(1.75rem, 1.568rem + 0.91vw, 2.25rem); /*28-36*/
}
.fs-m {
  font-size:clamp(1.125rem, 0.989rem + 0.68vw, 1.5rem); /*18-24*/
}
.fs-s {
  font-size:0.875rem; /*14*/
}

.en {
  font-family: "Cinzel", serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

.gra {
    background-image: var(--gra);
}
.bxshadow {
	box-shadow:var(--bxshadow);
}
.rounded {
	border-radius:var(--rounded);
}

a {
	transition: .5s;
	font-weight:700;
}
.gap-0 {
	gap:0;
}
.gap-3 {
	gap:1rem;
}
.gap-5 {
	gap:3rem;
}

.h-100 {
	height:100%;
}

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

/*ボタンのリセット（下線消しとか）*/
.vk_button .vk_button_link.btn:hover {box-shadow:none; opacity: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{
  text-decoration:none!important;
}

figure.wp-block-image.is-style-vk-image-rounded img {
	border-radius:2rem;
}


/*テーブル*/
figure.wp-block-flexible-table-block-table.is-style-border-rows>table {
	border-top:none;
}
.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table>table tr th,
.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table>table tr td {
	border-color:#999;
    padding:1rem;
	font-size:1rem;
}
.table-borderless table,
.table-borderless table th,
.table-borderless table td {
	border:none!important;
}

/*CTA*/
.cta-box {
	box-shadow:var(--bxshadow);
	border-radius:var(--rounded);
}

/*ボタンhover*/
.is-style-bgcolor .vk_button_link.btn.has-background:hover {
  background: var(--vk-color-primary) !important;
}
.is-style-bgcolor .vk_button_link.btn.has-background.has-vk-color-primary-background-color:hover {
  background: var(--wp--preset--color--vk-color-custom-2) !important;
}
.is-style-bgcolor .vk_button_link.btn.has-background.has-vk-color-primary-background-color:hover .vk_button_link_caption {
	color:var(--vk-color-primary);
}

/*ボタン グラデーションhover*/
.head-contact .vk_button_link.btn,
.is-style-gra .vk_button_link.btn.has-background {
	position:relative;
	z-index: 1;
	overflow:hidden;
}
.head-contact .vk_button_link.btn:before,
.is-style-gra .vk_button_link.btn.has-background:before {
	content: "";
	position: absolute;
	top: 0; right: 0;
	width:100%;
	height:100%;
	background: var(--vk-color-primary);
	z-index: -1;
	opacity: 0;
	transition: opacity 0.5s ease; 
}
.head-contact .vk_button_link.btn:hover:before,
.is-style-gra .vk_button_link.btn.has-background:hover:before {
	opacity:1;
}

.vk_button_link.vk_button_link-type-text .vk_button_link_caption {
	position:relative;
	padding:.5em 0;
}
.vk_button_link.vk_button_link-type-text .vk_button_link_caption:after {
    position: absolute;
    content: '';
    bottom: 0;
    left: 0;
    width: 0;
    height: 2px;
    background: var(--vk-color-primary);
    transition: all .5s ease 0s;
}
.vk_button_link.vk_button_link-type-text:hover .vk_button_link_caption:after {
    width: 100%;
}

/*楕円の枠*/
.daen-waku {
	border-radius:39% 61% 40% 60% / 48% 44% 56% 52%;
	padding:2rem 1rem 3rem!important;
}

/*背景白透過*/
.bgw {
	background:rgba(255,255,255,.8);
	padding:3rem;
	border-radius:var(--rounded);
	gap:1rem;
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Header ヘッダーまわり
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* ヘッダー固定 */
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:1rem;
}

.site-header {
	box-shadow:none;
	background-color:#a3ddff;
}

.site-header-container.container {
	min-width:100%;
	padding:15px;
}

.head-contact .vk_button_link.btn {
	min-width: 200px;
    padding: .8rem 1em;
    background-image: linear-gradient(to right,#08017D 10%,#309AD8 80%);
    border:none;
	border-radius:100px;
}

.device-pc .menu-item-has-children > a .global-nav-name::after {
	color:var(--vk-color-text-body);
}

.site-header-logo img {
	max-height:80px;
}


/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Footer フッターまわり
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* フッターウィジェット、フッターロゴ、コピーライト */
.site-footer {
	font-size:.9rem;
}
ul.fnav,
ul.fnav li ul {
	list-style:none;
	padding-left:0;
}
ul.fnav li a,
ul.fnav li a:hover {
	text-decoration:none!important;
	font-weight:400;
}
ul.fnav li a:hover {
	text-decoration:underline!important;
}
ul.fnav li ul li:before {
	content: '\f105';
	font-family: "Font Awesome 7 Free";
	font-weight: 900;
	margin-right:5px;
}

.widget.widget_block:not(.widget_media_image):not(.widget_text) {
    text-align: right;
}
.site-footer-content .col-lg-6:first-child {
	flex-basis:40%;
}
.site-footer-content .col-lg-6:last-child {
	flex-basis:60%;
}

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

/*メインイメージ*/
.teaser-wrap {
	background-image:url(../../../wp-content/uploads/header-wave.png);
  background-position:top center!important;
  background-repeat:no-repeat!important;
  background-size:100%!important;
}
.teaser-column {
	padding-inline:5%;
}
.teaser-illust01 {
	position:absolute;
	bottom:15%;
	left:35%;
	z-index:1;
}
.teaser-illust01 img {
	width:150px;
}
.teaser-illust02 {
	position:absolute;
	bottom:-5em;
	right:15px;
	z-index:1;
}
.teaser-illust02 img {
	width:250px;
}


/*コンセプト*/

/* スクロール固定Column */
.position-sticky-wrap {
    overflow: visible !important;
}
.device-pc .wp-block-column.position-sticky-column {
    position: sticky;
    top: 150px;
    align-self: flex-start;
}

/*横固定内アンカーリンク*/
.position-sticky-column .vk_button_link {
	display: flex !important;
    flex-direction: row-reverse;
    justify-content: start;
	gap:1rem;
}
.position-sticky-column .vk_button_link_caption {
	font-weight:700;
	text-align:left;
}
.position-sticky-column .vk_button_link_subCaption {
	background:var(--vk-color-primary);
	color:#fff;
	border-radius:100%;
	width:40px;
	height:40px;
	flex-shrink:0;
	line-height:40px;
	font-family:var(--en);
	font-size:1.1rem;
}
.groupLink {
	transition:.5s;
}
.groupLink:hover {
	box-shadow:var(--bxshadow);
}


.daen {
	border-radius:41% 59% 49% 51% / 55% 55% 45% 45%;
	padding:1.5rem 1rem;
	position:absolute;
	top:-1rem;
	right:1rem;
	width:clamp(6.25rem, 5.341rem + 4.55vw, 8.75rem);
}
.daen p {
	font-size:clamp(1rem, 0.818rem + 0.91vw, 1.5rem);
}


/*ご利用案内*/

.is-style-vk-blocks-steps-vertical .wp-block-vk-blocks-step-item.vk_step_item {
	padding-inline:15px;
}

.txt-price {
	font-size:clamp(1rem, 0.682rem + 1.59vw, 1.875rem);
}
.txt-price-big {
	font-size:clamp(2.5rem, 1.591rem + 4.55vw, 5rem);
}

.flt-up {
	transform:translateY(-1rem);
}

/*インフォメーション*/
.backgroundtxt {
	position:absolute;
	top:10%;
	left:50%;
	font-size:clamp(2.5rem, 12.5vw, 9.375rem);
	color:rgba(163, 221, 255,.2);
	transform: translateX(-50%);
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Pageheader, Breadcrumb 下層ページヘッダー・パンくずリスト
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* 下層ページのページヘッダー、パンクズ設定 */
.breadcrumb-list {
	padding:1rem 0;
}

.page-header {
	position:relative;
}
.page-header:after{
  content: '';
  position: absolute;
  top: 0;
  left: -1px;
  display: block;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top left;
  z-index: 2;
	width: calc(100% + 1.3px); 
    height: 130px;
  background-image: url('data:image/svg+xml;utf8,<svg data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 120" preserveAspectRatio="none"><path d="M321.39,56.44c58-10.79,114.16-30.13,172-41.86,82.39-16.72,168.19-17.73,250.45-.39C823.78,31,906.67,72,985.66,92.83c70.05,18.48,146.53,26.09,214.34,3V0H0V27.35A600.21,600.21,0,0,0,321.39,56.44Z" fill="%23A3DDFF"></path></svg>');
}
.shape-fill { 
    fill: #A3DDFF; 
}

.page-header-inner {
	margin:4em auto 0;
}
.page-header-title, h1.page-header-title {
	font-size:clamp(1.5rem, 1.227rem + 1.36vw, 2.25rem);
	font-weight:900;
}
.page-id-5468 .page-header-title,
.page-id-5470 .page-header-title,
.page-id-5474 .page-header-title {
	font-size:1.5rem;
	font-weight:700;
}
.page-header-subtext {
	font-size:4rem;
	margin-top:2rem;
	font-weight:900;
	color:var(--wp--preset--color--vk-color-custom-2);
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Page 下層ページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* ページごと、パーツごとにコメントアウトで注釈を入れてください。 */

/* 会社概要 */

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

/*プログラムステップ*/
.vk_timeline, body .container .is-layout-flow>.vk_timeline {
	margin:0 auto;
}
.is-style-af-timeline-2col.program-step {
	--time-width: 150px;
}
.is-style-af-timeline-2col.program-step .vk_timeline_item_caption {
	font-size:1.5rem;
	font-family:var(--en);
	color:var(--vk-color-primary);
}

/*区切り線*/
.wp-block-separator {
	border-width:5px;
	border-style:dashed;
}

/*FAQ*/
.vk_faq .vk_faq_title:before {
	font-family:var(--en);
	background-color:var(--wp--preset--color--vk-color-custom-2);
}
.vk_faq .vk_faq_content:before {
	font-family:var(--en);
	background-color:var(--wp--preset--color--vk-color-custom-3);
}
.vk_faq,
.vk_faq .vk_faq_title {
	border-bottom:none;
}
.vk_faq {
	background:var(--wp--preset--color--vk-color-custom-4);
	padding-inline:2rem;
	padding-bottom:0;
	border-radius:var(--rounded);
}

/*アクセス　route*/
.route {
	position:absolute;
	top:-1rem;
	left:1rem;
	width:50px;
	height:50px;
	border-radius:100px;
	background:var(--wp--preset--color--vk-color-custom-3);
	color:#fff;
	text-align:center;
	font-weight:700;
	line-height:50px;
	font-size:.6rem;
}

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

.postListText {
	border-color:#999;
}

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



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

/****背景イラスト****/
.bg-star-blue {
  background-image:url(../../../wp-content/uploads/illust-star-blue.png);
  background-position: left 20% top 5%;
  background-repeat: no-repeat;
  background-size:50%;
}
.bg-star-pink {
  background-image:url(../../../wp-content/uploads/illust-star-pink.png);
  background-position: left 20% top 15%;
  background-repeat: no-repeat;
  background-size:contain;
}

