/*
Theme Name: Lightning Child
Theme URI: 
Template: lightning
Description: 
Author: 
Tags: 
Version: 0.6.0
*/
@charset "utf-8";

/* header */
.page-header {
	margin-top: 79px;
	min-height: 370px;
	background-size: cover;
	background-position-y: bottom;
	margin-inline: 2%;
	border-radius: 0.5em;
	overflow: hidden;
}
.page-header::before{
  background: linear-gradient(135deg, rgb(0 90 183), rgb(111 150 214));
  z-index: -1;
  opacity: .5;
}
.page-header-inner{
	display: flex;
	flex-direction: column-reverse;
}
.page-header-inner .page-header-subtext{
	font-size: min(3.875rem , 8vw);
	font-weight: 500;
	font-family: "Roboto", sans-serif;
	color: #fff;
	letter-spacing: 1px;
	margin-bottom: 0.15em;
}
.page-header .page-header-title {
	font-size: min(3rem , 8vw);
	font-weight: 600;
	text-align: center;
	color: #fff;
	filter: drop-shadow(1px 1px 6px #000000e3);
}
.page-header .page-header-title:has(+ .page-header-subtext){
  font-size: 1.125rem;
}

/* breadcrumb */
.breadcrumb{
	border: none;
}
.breadcrumb-list {
	text-align: left;
	font-size: .875rem;
	padding: 2.5em 0;
}
.breadcrumb-list li a {
  text-decoration: none;
}
.breadcrumb-list li a .fas {
  display: none;
}
.breadcrumbs ul {
  padding-left: 0;
}


/* content */
.site-body{
	text-align: left;
	padding-bottom: 0;
}
.container {
	max-width: 1100px;
	--main-color: #0064ba;
}
:where(:not(.wp-block-table))>table :is(thead, tbody, tfoot, th, td) {
  border-color: transparent;
}
.entry-body h2,
.section-wrap h2,
.archive-header-title {
	position: relative;
	z-index: 0;
	text-align: left;
	font-size: 1.875rem;
	font-weight: bold;
	color: var(--main-color);
	margin-bottom: 1em;
	padding-bottom: 0.25em;
	border-bottom: 2px solid var(--main-color);
}
.entry-body h3 {
	font-size: 1.75rem;
	font-weight: bold;
	margin-bottom: 1em;
	padding: 0.1em 0.5em;
	background: #005ab721;
	border-radius: 5px;
}
.entry-body h4 {
	font-size: 1.5rem;
	font-weight: 500;
	margin-bottom: 0.5em;
}
.entry-body h5 {
	font-size: 1.25rem;
	color: var(--main-color);
	font-weight: 600;
}
.entry-body h6 {
	font-size: 1.125rem;
	font-weight: bold;
}
#vk-mobile-nav-menu-btn {
  display: none;
}
.entry-body ul li {
  list-style-type: disc;
}
.entry-body a {
  color: #e0273d;
  text-decoration: underline;
  text-underline-offset: 0.35em;
}
.entry-body a:hover {
  text-decoration: none;
}
.entry-body a:focus {
  text-decoration: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  -o-appearance: none;
  outline: none;
}
.has-fixed-layout th,
.has-fixed-layout td {
  border-top: 1px solid #e9e9e9;
  border-bottom: 1px solid #e9e9e9;
  font-size: 1rem;
}
.has-fixed-layout th {
  font-weight: bold;
}
.wp-block-vk-blocks-button .vk_button_link:not(.vk_button_link-type-text) {
	display: inline-flex;
	max-width: 320px;
	min-width: 320px;
	width: 100%;
	align-items: center;
	text-decoration: none !important;
	border: solid 1px var(--main_color);
	border-radius: 5em;
	color: var(--main_color) !important;
	background: #fff !important;
	font-size:1.125rem;
	word-break: auto-phrase;
	font-weight: 500;
	padding: 0.5em 4em 0.5em 2.25em;
	min-height: 70px;
	position: relative;
	z-index: 0;
	margin: 1em 0 0 auto;
	transition: background .3s, color .3s;
}
.wp-block-vk-blocks-button .vk_button_link:not(.vk_button_link-type-text) ::before{
	position: absolute;
	z-index: 10;
	display: inline-block;
	content: "";
	margin: auto;
	width: 1px;
	height: 54%;
	background: var(--main_color);
	inset: 0 22% 0 auto;
	transition: background .3s;
}
.wp-block-vk-blocks-button .vk_button_link:not(.vk_button_link-type-text)::after {
  content: "→";
  position: absolute;
  top: 50%;
	right: 1.5em;
  font-size: 1.2rem;
  transform: translateY(-50%);
  transition: transform 0.4s ease, opacity 0.4s;
  pointer-events: none;
  overflow: hidden;
}
@media (any-hover: hover) {
	.wp-block-vk-blocks-button .vk_button_link:not(.vk_button_link-type-text):hover {
		color: var(--white)!important;
		background: var(--main_color) !important;
		box-shadow: none;
		opacity: 1;
	}
	.wp-block-vk-blocks-button .vk_button_link:not(.vk_button_link-type-text):hover ::before{
		background: var(--white);
	}
	.wp-block-vk-blocks-button .vk_button_link:not(.vk_button_link-type-text):hover:after {
		color: var(--white) !important;
	}
}
.wp-block-vk-blocks-button.vk_button-align-block .vk_button_link,
.wp-block-vk-blocks-button.vk_button-align-wide .vk_button_link {
  max-width: 100%;
}
@media screen and (max-width: 1150px) {
  .page-header {
    margin-top: 80px;
  }
}
@media screen and (max-width: 767px) {
	.page-header {
		min-height: 12em;
		margin-top: 0;
	}
	.page-header .page-header-title {
		font-size: 1.7rem;
	}
	.entry-body h2,
	.section-wrap h2,
	.archive-header-title {
	  font-size: 1.6rem;
	}
	.entry-body h3 {
		font-size: 1.5rem;
	}
	.entry-body h4 {
		font-size: 1.35rem;
	}
	.entry-body h5 {
		font-size: 1.25rem;
	}
	.entry-body h6 {
		font-size: 1.125rem;
	}
	table.has-fixed-layout,
	.has-fixed-layout tbody {
		border: none;
	}
	.has-fixed-layout th,
	.has-fixed-layout td {
		font-size: 1rem;
	}
	.has-fixed-layout.is-stacked-on-mobile tr:not(:first-of-type) th,
	.has-fixed-layout.is-stacked-on-mobile td {
		border-top-color: #fff;
	}
	.has-fixed-layout.is-stacked-on-mobile th,
	.has-fixed-layout.is-stacked-on-mobile td {
		padding: 0.75em 1em !important;
	}
	.has-fixed-layout th {
		font-weight: bold;
	}
	.wp-block-button {
		width: 100%;
	}
	 .wp-block-vk-blocks-button{
		 text-align: center;
	 }
  .wp-block-vk-blocks-button .vk_button_link:not(.vk_button_link-type-text) {
	max-width: 100%;
	width: auto;
	min-height: 3.5em;
	min-width: 280px;
	margin-inline: auto;
	}
  .wp-block-vk-blocks-button.vk_button-align-wide .vk_button_link {
    width: 100%;
  }
  .wp-block-buttons>.wp-block-button.has-custom-width .wp-block-button__link {
    max-width: 100%;
  }
  .wp-block-button .wp-block-button__link:hover {
    transform: none;
  }
}
.entry-body a img {
  transition: opacity .4s;
}
@media (any-hover: hover) {
  .entry-body a:hover img {
    opacity: 0.6;
  }
}

/* contact
-------------------------------------------------------------------*/
.smf-form--letter .smf-text-control__control,
.smf-form .smf-textarea-control__control:active,.smf-form .smf-textarea-control__control:focus,.smf-form .smf-textarea-control__control:focus-within,.smf-form .smf-textarea-control__control[aria-selected=true] {
	font-weight: 500;
}
    
.post-name-contact .form-agree-area{
	font-size: 1.125rem;
	font-weight: 600;
	padding: 2em 0 0;
	text-align: center;
}
.post-name-contact .form-agree-area a{
	font-size: 1rem;
}
.post-name-contact .form-promotion-area{
	font-size: 1rem;
	font-weight: 600;
	padding: 2em 1em;
	background: #f8f8fa;
	text-align: center;
}
.smf-action .smf-button-control__control {
	display: inline-flex;
	max-width: 320px;
	min-width: 320px;
	width: 100%;
	align-items: center;
	text-decoration: none !important;
	border: solid 1px var(--main_color);
	border-radius: 5em;
	color: var(--main_color) !important;
	background: #fff !important;
	font-size:1.125rem;
	word-break: auto-phrase;
	font-weight: 500;
	padding: 0.5em 4em 0.5em 2.25em;
	min-height: 70px;
	position: relative;
	z-index: 0;
	margin: 1em 0 0 auto;
	transition: background .3s, color .3s;
}
.smf-action .smf-button-control__control:before {
	position: absolute;
	z-index: 10;
	display: inline-block;
	content: "";
	margin: auto;
	width: 1px;
	height: 54%;
	background: var(--main_color);
	inset: 0 22% 0 auto;
	transition: background .3s;
}
.smf-action .smf-button-control__control::after {
  content: "→";
  position: absolute;
  top: 50%;
	right: 1.5em;
  font-size: 1.2rem;
  transform: translateY(-50%);
  transition: transform 0.4s ease, opacity 0.4s;
  pointer-events: none;
  overflow: hidden;
}
@media (any-hover: hover) {
	.smf-action .smf-button-control__control:hover {
		color: var(--white)!important;
		background: var(--main_color) !important;
		box-shadow: none;
		opacity: 1;
	}
	.smf-action .smf-button-control__control:hover:before{    
		background: var(--white);
	}
	.smf-action .smf-button-control__control:hover:after{    
		color: var(--white) !important;
	}
}
@media screen and (max-width:767px) {
	.post-name-contact .form-agree-area .text_lead,
	.post-name-contact .form-promotion-area .text_lead{
		text-align: left;
	}
	.smf-action .smf-button-control+.smf-button-control{
		margin-left: 0;
	}
}

