/*
Theme Name: ZDC Lightning Child
Template: lightning
Text Domain: lightning
Theme URI: https://lightning.vektor-inc.co.jp/en/
Description: Lightning is a very simple & easy to customize theme which is based on the Bootstrap. It is also very friendly with custom post types and custom taxonomies. When you add a new one, the breadcrumbs will be adjusted and posts will look beautifully without editing or adding a template files.
Author: Vektor,Inc.
Author URI: https://www.vektor-inc.co.jp
Version: 15.29.6
Requires at least: 6.4
Tested up to: 6.7
Requires PHP: 7.4
Tags: blog, one-column, custom-background, custom-colors, custom-logo, custom-menu, editor-style, featured-images, footer-widgets, full-width-template, sticky-post, theme-options, threaded-comments, translation-ready, block-styles, wide-blocks
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

Lightning WordPress theme, Copyright (C) 2015-2025 Vektor,Inc.
Lightning WordPress theme is licensed under the GPL.

Lightning WordPress Theme bundles the following third-party resources:

Font Awesome icon font, Copyright 2012 Fonticons, Inc.
its fonts are licensed under the terms of the SIL OFL License 1.1, and its code is licensed under the terms of the MIT license
Source: https://fontawesome.com/

Bootstrap framework, Copyright 2011 Bootstrap Authors and Twitter, Inc.
Bootstrap is licensed under the terms of the MIT license
Source: https://getbootstrap.com/

CSS Simple Tree Shaking
CSS Simple Tree Shaking is licensed under the terms of the GNU General Public License v2 license
Source: https://celtislab.net/
*/
/*
「CTAの編集」ボタン非表示
*/

body {
	outline: 0 !important;
	color: #222;
}

.more-link {
	margin: 1em 0;
	text-align: right;
	font-size: 14px;
	color: #0d56cf;
}

.more-link a {
	color: #111;
	text-decoration: underline dotted 1px;
}

.name {
	font-weight: 550 !important;
	letter-spacing: .1em !important;
	margin-bottom: 0 !important;
}

.kana {
	font-weight: 600 !important;
	letter-spacing: .1em !important;
}

.vk_timeline_item_caption {
	font-weight: 600;
	color: #222 !important;
}

.veu_adminEdit {
	display: none;
}

#global-nav strong.global-nav-name {
	font-size: 15px;
}

#menu-header-navigation li.menu-item {
	vertical-align: middle !important;
}


/*「お問い合わせ」グローバルナビ*/
#global-nav #menu-item-7543 strong.global-nav-name {
	font-size: 14px;
}

#global-nav #menu-item-7543 a {
	background: #0d56cf;
	color: #fff;
	line-height: 1 !important;
	height: auto !important;
	border-radius: 50vh !important;
}

#global-nav #menu-item-7543 a i {
	margin-left: 3px;
}

#global-nav #menu-item-7543 a:hover {
	background: #1E232C;
}

/*
#global-nav #menu-item-7543 strong.global-nav-name {
	font-size: 14px;
}

#global-nav #menu-item-7543 a {
	background: #cf2e2e;
	color: #fff;
	padding: 3.05em 2em !important;
	line-height: 1 !important;
	height: auto !important;
}

#global-nav #menu-item-7543 a i {
	margin-left: 3px;
}
*/

.archive-header h1.archive-header-title,
.entry-header h1.entry-title {
	position: relative;
	padding: .5em .7em;
	background-color: #f2f2f2;
}

.archive-header h1.archive-header-title::before,
.entry-header h1.entry-title::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 5px;
	/* ボーダーの太さ */
	height: 100%;
	background: linear-gradient(to bottom, #3c85ff, #0d56cf);
	background: #0d56cf;
}

.page-header .page-header-title {
	letter-spacing: .2em !important;
}

.image-wrapper {
	perspective: 1000px;
	/* 立体的な回転に必要 */
	display: inline-block;
}

.image-wrapper img {
	transition: transform 0.6s ease;
	transform-style: preserve-3d;
}

.image-wrapper:hover img {
	transform: rotateY(180deg);
}

a.btn-result2 {
	display: block;
	padding: 6px 10px;
	background-color: #bdbdbd;
	color: #fff;
	text-decoration: none;
	border-radius: 4px;
	font-size: 13px;
}

a.btn-result2:hover {
	text-decoration: none !important;
	opacity: 1 !important;
	cursor: default;
}

a.btn-result {
	display: block;
	padding: 6px 10px;
	background-color: #d90000;
	color: #fff;
	text-decoration: none;
	border-radius: 4px;
	font-size: 13px;
	transition: background-color 0.3s ease;
}

a.btn-result:hover {
	background-color: #c30000;
	text-decoration: none !important;
}

.profileFrame {
	font-weight: 600;
	font-weight: 550 !important;
}

.profileFrame h3 {
	letter-spacing: .1em !important;
	border-bottom: 5px solid #ffff74;
	padding-bottom: 7px;
	margin-bottom: 17px;
}

h1,
h2,
h3,
h4,
h5,
h6,
.page-header-title,
.global-nav,
.site-header .site-header-logo,
#global-nav a,
.footer-name,
h2,
h3,
h4 {
	font-family: "Noto Sans JP", sans-serif, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3" !important;
}

h2.wp-block-heading {
	letter-spacing: .1em !important;
	border-bottom: solid 3px #ddd;
	position: relative;
	padding-bottom: 10px;
	font-size: 1.5em;
	font-weight: 600;
}

h2.wp-block-heading::after {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 3px #3c85ff;
	bottom: -3px;
	width: 90px;
}

#site-header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 9999;
	background-color: #fff;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.ttl-bg-grade1 .vk_outer-background-area {
	background: linear-gradient(to bottom right, #093a91, #0d56cf) !important;
	background: #0d56cf !important;
}

.ttl-bg-grade2 .vk_outer-background-area {
	background: linear-gradient(to bottom right, #0d56cf, #093a91) !important;
	background: #0d56cf !important;
}

.sub-ttl {
	letter-spacing: .3em !important;
	font-weight: 600;
}

.top_athlete_card .wp-block-vk-blocks-gridcolcard-item {
	border-top: none !important;
	border-right: none !important;
	border-left: none !important;

}

.top_athlete_card .vk_gridcolcard_item_container {
	transition: background 0.3s ease;
	/* 背景色の変化をなめらかに */
}

.top_athlete_card a:hover.vk_gridcolcard_item_container {
	background: #0d56cf;
	color: #fff;
}

.top_athlete_card .name-arrow {
	margin-bottom: 1em !important;
}

.top_athlete_card a:hover .name-arrow,
.top_athlete_card a:hover .name-arrow::after {
	color: #fff;
}

.footer-name {
	letter-spacing: .1em !important;
}

.name-arrow {
	font-weight: 550 !important;
	letter-spacing: .1em !important;
}

.name-arrow::after {
	content: "\f105";
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	margin-left: 0.5em;
	color: #0d56cf;
}

.site-header-logo img {
	max-height: 90px !important;
	height: auto !important;
}

.slider-logo {
	display: none;
}

.slider-logo img {
	animation: zoom 4s infinite alternate;
	opacity: .9;
}

.dlpc2025-banner {
	text-align: center;
}

.dlpc2025-banner img {
	max-width: 100%;
}

@keyframes zoom {
	0% {
		transform: scale(0.8);
	}

	100% {
		transform: scale(1.0);
	}
}

.pc {
	display: block !important;
}

.sp {
	display: none !important;
}

/**************************************************************************************
カスタマイズCSS
**************************************************************************************/
/*
新着情報（トップページ）
*/
#top-info ul {
	margin-left: 0;
	padding-left: 0;
}

#top-info li {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	padding: 10px 0;
	border-bottom: 1px solid #efefef;
	list-style: none;
	gap: 8px;
	/* 間隔調整 */
}

#top-info li span.date {
	flex: 0 0 120px;
	/* 固定幅 */
	font-size: 14px;
	color: #222;
}

#top-info li a {
	flex: 1;
	color: #272727;
	font-size: 14px;
	line-height: 1.6;
	text-decoration: none;
}

/*--------------------------------
ラベル
---------------------------------*/

.label {
	display: inline;
	padding: .2em .5em .2em;
	font-size: 12px;
	color: #fff;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	border-radius: 3px;
	box-shadow: 0 1px 1px rgba(0, 0, 0, .15);
	margin: 2px;
	line-height: normal;
}

a.label:hover,
a.label:focus {
	color: #fff;
	text-decoration: none;
	cursor: pointer;
}

.label:empty {
	display: none;
}

.label-gray {
	color: #434a54;
	background-color: #fff;
	border: 1px solid #aab2bd;
	box-shadow: none;
}

.label-gray {
	background-color: #666;
}

.label-green {
	background-color: #0d56cf;
}

.label-blue {
	background-color: #FF5B79;
}

.label-pink {
	background-color: #6CBC2F;
}

/*
.label {
	display: inline-block;
	font-size: 24px;
	padding: 0 8px 0 28px;
	position: relative;
	margin-right: 6px;
}
*/
/* 種目ごとの色 + アイコン */
/*
.label-blue::before,
.label-pink::before,
.label-green::before {
	content: "";
	display: inline-block;
	width: 32px;
	height: 32px;
	background-size: contain;
	background-repeat: no-repeat;
	margin-right: 5px;
	vertical-align: middle;
}

.label-blue::before {
	background-image: url('https://zdc-athlete.samplesite.work/wp-content/uploads/2025/05/icon-badminton.png');
}

.label-pink::before {
	background-image: url('https://zdc-athlete.samplesite.work/wp-content/uploads/2025/05/icon-athletics.png');
}

.label-green::before {
	background-image: url('https://zdc-athlete.samplesite.work/wp-content/uploads/2025/05/icon-soccer.png');
}
*/

/*タブ切り替え全体のスタイル*/

.tabs {
	background-color: #fff;
	/*
	padding-bottom: 40px;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
*/
	width: 100%;
	margin: 0 auto;
}

/*タブのスタイル*/
.tab_item {
	width: calc(100%/3) !important;
	height: 50px;
	border-bottom: 3px solid #0d56cf;
	background-color: #f6f6f6;
	background-color: #eee;
	background-color: #f0f1f2;
	line-height: 50px;
	font-size: 16px;
	text-align: center;
	display: block;
	float: left;
	color: #0d56cf;
	text-align: center;
	font-weight: bold;
	transition: all 0.2s ease;
	letter-spacing: .1em;
}

.tab_item:hover {
	opacity: 0.75;
	cursor: pointer;
}

/*ラジオボタンを全て消す*/

input[name="tab_item"] {
	display: none;
}

/*タブ切り替えの中身のスタイル*/

.tab_content {
	display: none;
	padding: 40px 0 0;
	clear: both;
	overflow: hidden;
}

/*選択されているタブのコンテンツのみを表示*/

#tab1:checked~#tab1_content,
#tab2:checked~#tab2_content,
#tab3:checked~#tab3_content,
#tab4:checked~#tab4_content,
#tab5:checked~#tab5_content,
#tab6:checked~#tab6_content,
#tab7:checked~#tab7_content,
#tab8:checked~#tab8_content,
#tab9:checked~#tab9_content,
#tab10:checked~#tab10_content {
	display: block;
}

/*選択されているタブのスタイルを変える*/

.tabs input:checked+.tab_item {
	background-color: #0d56cf;
	color: #fff;
}

.blue {
	color: #0d56cf;
}

/*
スケジュール（トップページ）
*/
#top-schedule .enpty_schedule {
	text-align: center;
	font-size: 14px;
}

#top-schedule .ttl {
	padding: 20px 0 10px 0;
	text-align: center;
	color: #0d56cf;
	font-weight: bold;
	font-size: 26px;
	text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.15);
}

#top-schedule a:hover {
	opacity: .8;
	text-decoration: underline;
}

table.kiroku,
#top-schedule table.schedule {
	width: 100%;
}

#top-schedule table.schedule th {
	border: 1px solid #eee;
	background: #0d56cf;
	color: #fff;
	font-weight: bold;
	padding: 8px;
	width: 30%;
	letter-spacing: .5em;

}

#top-schedule table.schedule td {
	border: 1px solid #ddd;
	padding: 10px;
	vertical-align: middle;
}

#top-schedule table.schedule td.td1 {
	width: 24%;
}

#top-schedule table.schedule td.td2 {
	width: 27%;
}

#top-schedule table.schedule td.td3 {
	width: 27%;
}

#top-schedule table.schedule td.td4 {
	text-align: center;
	white-space: nowrap;
	width: 22%;
}

#top-schedule table.schedule td.nodata {
	border: none;
	width: 100%;
}

#top-schedule .exp {
	color: #666;
	font-weight: normal;
	font-size: 14px;
	padding: 5px 0;
}

.hissu {
	background-color: #ff0000;
	color: #fff;
	font-size: 0.7em;
	padding: 3px 6px;
	margin: 5px;
	line-height: 1;
	border-radius: 2px;
}

.index {
	font-weight: 600;
}

/**************************************************************************************
レスポンシブ
**************************************************************************************/
@media only screen and (max-width: 750px) {
	.pc {
		display: none !important;
	}

	.sp {
		display: block !important;
	}

	.dlpc2025-banner img {
		max-width: 80%;
	}

	#top-info li {
		display: block;
	}

	#top-info li a {
		display: block;
		margin-top: .3em;
	}

	.tab_item {
		height: 40px;
		line-height: 40px;
		font-size: 12px;
		letter-spacing: 0;
	}

	#top-schedule table.schedule th {
		letter-spacing: 0;

	}

	#top-schedule table.schedule td {
		padding: 5px;
	}

	#top-schedule table.schedule th:first-of-type {
		color: transparent;
		/* 元のテキストを見えなくする */
	}

	#top-schedule table.schedule th:first-of-type::before {
		content: "大会概要";
		color: #fff;
	}

	#top-schedule table.schedule th:nth-of-type(n+2) {
		display: none;
	}

	#top-schedule table.schedule td.td1,
	#top-schedule table.schedule td.td2,
	#top-schedule table.schedule td.td3,
	#top-schedule table.schedule td.td4 {
		width: 100% !important;
		display: block;
	}

	h3.athlete-msg {
		font-size: 16px;
	}

	.site-header-logo img {
		max-height: 60px !important;
		height: auto !important;
	}

	h3.wp-block-heading- {
		font-size: 22px !important;
	}

	h1.page-header-title,
	h2.wp-block-heading {
		font-size: 16px !important;
	}
	.wp-caption,
	img {
		max-width: 100%;
		height: auto;
	}
}

#vk-mobile-nav img {
	max-height: 60px !important;
	height: auto !important;
}

.vk-mobile-nav {
	z-index: 99999;
}

@media (min-width: 750px) {
	.dlpc2025-banner img {
		max-width: 470px;
	}
}