/*
Theme Name: Lightning Child
Theme URI: 
Template: lightning
Description: 
Author: 
Tags: 
Version: 0.6.0
*/
@import url('https://use.typekit.net/bbk6buw.css');
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap');
:root {
--vk-size-text: 18px;
--vk-size-text-sm:1rem;
--vk-color-primary: #145aaa;
--vk-margin-block-bottom:1rem;
}
.en,
.vk-mobile-nav .widget_nav_menu ul li a,
.vk-mobile-nav nav ul li a{
font-family: "neue-haas-grotesk-display", sans-serif;
}
.vk-mobile-nav-menu-btn {
border:0!important;
}
h1.page-header-title {
	font-size:2.5rem;
	line-height:120%;
	letter-spacing:0.05rem;
}
h1.page-header-title .sm_ttc {
	display:block;
	font-size:18px;
	line-height:120%;
}
h2 {
word-break: auto-phrase;
}
.mx_700 {
	max-width:700px;
	margin-left:auto;
	margin-right:auto;
}
.mx_530 {
	max-width:530px;
	margin-left:auto;
	margin-right:auto;
}
#splash {
    /*fixedで全面に固定*/
  position: fixed;
  z-index: 1001;
  width: 100%;
  height: 100%;
  background:#145aaa;
  text-align:center;
  color:#fff;
}
#splash img {
 width: 400px;
max-width: 50vw;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 999;
    bottom: 0;
aspect-ratio: 640 / 260;
}
/* Loadingバー中央配置　*/
#splash_text {
  position: absolute;
  top: 50%;
  left: 50%;
    z-index: 999;
  width: 100%;
	max-width:400px;
  transform: translate(-50%, -50%);
  color: #FFF;
}

/*IE11対策用バーの線の高さ※対応しなければ削除してください*/
#splash_text svg{
    height: 3px;
}

h2.information small{
margin-left: 0.5rem;
font-size: 1rem;
}
table.wp-calendar-table td a{
	text-decoration:underline;
	font-weight:bold;
}
table.wp-calendar-table td a:hover {
text-decoration:none;
}
table.wp-calendar-table td{
color: #666;
}
.wp-block-calendar table:where(:not(.has-text-color)) td,
.wp-block-calendar table:where(:not(.has-text-color)) th {
    border-color:#CCC;
}
:where(.wp-block-calendar table:not(.has-background) th) {
    background: #21288a20;
}
.work_list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.work_list div{
	width: calc(25% - 1.5rem);
	color: #ffffff;
}

.work_list div a{
	display: block;
	text-decoration: none;
}

.work_list div a:hover{
	opacity: .7;
}

.work_list div .work_title{
	font-size: 1.5rem;
	font-weight: 700;
	color: #ffffff;
}

ul.column3_list{
    display: flex;
    flex-wrap: wrap;
    list-style: none;
	justify-content: space-between;
}

ul.column3_list li{
	width: calc(33% - 1rem);
	padding: unset;
    margin: 0;
    margin-bottom: 2rem;
}

.w_area{
	display: flex;
	margin-bottom: 5rem;
}

.w_image{
	width: 60%;
	margin-right: 2rem;
}

.w_image img{
	display: block;
	width: 100%;
}

.work_detail{
	width: calc(40% - 2rem);
	border: none;
    height: fit-content;
}

.work_detail tr th,
.work_detail tr td{
	display: flex;
	margin: 0;
	border: none;
}

.work_detail tr th{
	background: #efefef;
}

.work_detail tr td{
	margin-bottom: 1rem;
}

.site-footer-copyright p:last-child{
	display: none;
}
.site-header--layout--nav-float .site-header-logo a {
display: flex;
width: 100%;
width: fit-content;
flex-direction: row;
align-items:center;
gap: 20px;
}
.site-header--layout--nav-float .site-header-logo a .pg_ttl {
font-size: 1.2rem;
line-height: 100%;
}
.site-header-logo {
padding-top: 1rem;
margin-bottom: 1rem;
}
.item-1 .ltg-slide-text-title {
font-size: 150px !important;
line-height: 60% !important;
opacity: 0.9;
font-family: "Outfit", sans-serif;
font-optical-sizing: auto;
font-weight: 700;
font-style: normal;
position: absolute;
left: 0;
height: 1.5em;
top: 0;
bottom: 0;
 margin: auto;
}
.home .lightning_swiper::before {
content: "";
/*aspect-ratio:1160 / 250;*/
background-image: url(https://www.hakata-express.com/wp/wp-content/uploads/2025/12/catch_ttl3.png);
width: 580px;
height:125px;
max-width:calc(100% - 12vw);
display: block;
position: absolute;
top:0;
bottom:0;
left:6vw;
z-index: 9;
background-repeat: no-repeat;
background-position: center center;
background-size: contain;
margin:auto;
}
.home .lightning_swiper::after {
    content: "";
    background-image: url(https://www.hakata-express.com/wp/wp-content/uploads/2025/12/dot_bg06.png);
	background-size:6px;
    width: 100%;
    display: block;
    height: 100%;
    position: absolute;
	z-index:8;
    top: 0;
    left: 0;
}

.vk_borderBox .vk_borderBox_title_container .vk_borderBox_title {
    font-size: 1.5em;
}
.swiper {
    max-height: calc(100vh - 65px);
}
.meta_box {
font-size:15px;
	line-height:150%;
	text-align:right;
	color:#666;
}
.wp-block-table td,
.wp-block-table th {
 padding: .8em;
}
#nav_menu-2 ul li {
	font-size:14px;
}
#nav_menu-2 ul li small {
color: #145AAA;
	margin-left:1rem;
	font-size:11px;
	font-weight:bold;
}
.global-nav-list li a {
font-family: "neue-haas-grotesk-display", sans-serif;
font-weight: 700;
}
@media (min-width: 992px) {
body:not(.header_scrolled) .global-nav--layout--float-right {
 display: block;
margin-left: auto;
 margin-right: auto;
}
.site-header--layout--nav-float .site-header-logo {
 margin-right: 0;
padding-top: 1rem;
padding-bottom: .5rem;
margin-bottom: 0;
}
.header_scrolled .site-header-logo {
display:block;
margin-right: 2rem;
padding-top: 1rem;
padding-bottom: 0;
margin-bottom: 1rem;
}

.site-header--layout--nav-float .site-header-logo a {
    width: 100%!important;
    gap: 0!important;
    justify-content: center!important;
}
.site-header--layout--nav-float .site-header-container {
flex-direction: column!important;
}
.header_scrolled .site-header-container {
flex-direction: row!important;
 }
.header_scrolled .site-header-logo a {
justify-content:flex-start!important;
}
.col-lg-4 {
flex: 0 0 50%!important;
max-width:50%!important;
}
}
@media screen and ( max-width:991px ){
.site-header--layout--nav-float .site-header-logo a {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
}
@media screen and ( max-width:980px ){
	.work_list div{
		width: calc(50% - 1rem);
		margin-bottom: 2rem;
	}
	
	.w_area{
		flex-direction: column;
	}
	
	.w_image{
		width: 100%;
		margin: auto;
		margin-bottom: 2rem;
	}
	
	.work_detail{
		width: 100%;
	}
}
@media screen and ( max-width:767px ){
.site-header-logo {
    padding-top: 1.5rem;
    margin-bottom: 1.5rem;
}
.vk-mobile-nav-menu-btn {
top: 8px;
width: 54px;
height: 54px;
}
.site-header--layout--nav-float .site-header-logo a {
    width: 100%;
    gap: 10px;
    /*justify-content: center;*/
}
.site-header--layout--nav-float .site-header-logo a .pg_logo {
width: 110px;
}
.site-footer {
--vk-size-text-sm: 16px;
}
.vk_borderBox_body .wp-block-table td {
 padding: .2rem .8rem .8rem .8rem;
word-break: auto-phrase;
}
.vk_borderBox_body .wp-block-table th {
 padding: .8rem .8rem 0 .8rem;
	font-size:1.25rem;
}
}
@media screen and ( max-width:640px ){
#splash img {
max-width: 40vw;
}
}