/*
Theme Name: テニスの日（Lightning子テーマ）
Theme URI: 
Template: lightning
Description:
Author: タロスカイ株式会社
*/

:root {
	--vk-color-text-body: #222;
	--color-primary: var(--wp--preset--color--vk-color-primary);
	--color-primary-d: var(--wp--preset--color--vk-color-primary-dark);
	--color-primary-v: var(--wp--preset--color--vk-color-primary-vivid);

	--color-dark: var(--wp--preset--color--vk-color-custom-1);
	--color-light: var(--wp--preset--color--vk-color-custom-2);
	--color-accent: var(--wp--preset--color--vk-color-custom-3);
	--color-accent2: var(--wp--preset--color--vk-color-custom-5);

	--color-bg1: var(--wp--preset--color--vk-color-custom-4);
	--color-bg2: #F8FFED;	
	--color-bg3: #ECFEFF;	

	--size-075: clamp(0.7rem, 1.5vw, 0.75rem);	
	--size-09: clamp(0.8rem, 1.8vw, 0.9rem);	
	--size-10: clamp(0.9rem, 2vw, 1rem);
	--size-1125: clamp(1rem, 2.25vw, 1.125rem);
	--size-125: clamp(1rem, 2.5vw, 1.25rem);
	--size-15: clamp(1.25rem, 3vw, 1.5rem);
	--size-175: clamp(1.5rem, 3.5vw, 1.75rem);
	--size-20: clamp(1.75rem, 4.25vw, 2rem);
	--size-25: clamp(2rem, 4.7vw, 2.5rem);
	--size-30: clamp(2.5rem, 5.7vw, 3rem);
	--size-40: clamp(3rem, 8vw, 4rem);
	--size-45: clamp(3.5rem, 9vw, 4.5rem);
	--size-60: clamp(4rem, 9.5vw, 6rem);
	--size-80: clamp(5rem, 10vw, 8rem);
	

	--size-h1: clamp(1.75em, 4.45vw, 2.5em);

	--radius-05: clamp(0.4rem, 1.5vw, 0.5rem);
	--radius-10: clamp(0.8rem, 3vw, 1rem);
	--radius-15: clamp(1.25rem, 3.5vw, 1.5rem);
	--radius-20: clamp(1.5rem, 4.25vw, 2rem);
	--radius-30: clamp(2rem, 6vw, 3rem);

	--font-accent:"Barlow Semi Condensed", sans-serif;

	--transition-S: 0.3s ease;
	--transition-M: 0.6s ease;
	--transition-L: 1.0s ease;	

	--shadow-05: 0 0 .5em rgba(0 0 0 / 0.15);
	--shadow-10: 0 0 1em rgba(0 0 0 / 0.15);
	--shadow-15: 0 0 1.5em rgba(0 0 0 / 0.15);	
	--shadow-20: 0 0 2em rgba(0 0 0 / 0.15);	

	--gradient-1: linear-gradient(90deg, rgba(0,107,183,1) 20%, rgba(43,151,240,1) 100%);
	--gradient-2: linear-gradient(90deg, rgba(0,120,219,1) 40%, rgba(17,89,149,1) 100%);
}

/*共通*/
/*共通 テキスト*/
p{
	line-height:2;
}
.size-09{
	font-size:var(--size-09);
	line-height:1.75;
}
h2{
	font-feature-settings: "palt";
	letter-spacing:0.05em;
}
a{
	transition:var(--transition-S);
}

/*見出し英語テキスト*/
.heading-text {
	gap: 0em !important;
}
.heading-text.instagram{
	gap:1em !important;
}
.heading-text p {
	letter-spacing:-0.01em;
	font-family: var(--font-accent);
	font-weight: 700;
	font-style: italic;
	font-size: var(--size-80);
	line-height: 1;	
	margin-bottom: 0 !important;
	padding-right:.1em;
}
.heading-text h2 {
	font-size: var(--size-175);
	line-height: 1.25;	
}

/*H3見出し
h3{
	font-size:var(--size-125);
	line-height:1.5;
	padding:.0em .75em .1em;
	border-left:.25em solid;
}
h3.has-text-align-center{
	border-left:none;

}
h3.has-text-align-center:after{
	content:'';
	bottom:-.5em;
	width:2.5em;
	height:4px;
	color:currentcolor;
	background-color:currentcolor;
}*/
/*H4見出し
h4{
	font-size:var(--size-1125);
	color:#333;
}*/


/*ボタン*/
/*VKボタン デフォルト設定変更*/
.vk_button-color-custom a:hover, .editor-styles-wrapper .vk_button-color-custom a:hover {
    opacity: 1;
    -webkit-box-shadow: 0 0 0rem .2rem rgba(171,184,195,.0);
    box-shadow: 0 0 0rem .2rem rgba(171,184,195,.0);
}
/*ボタン 背景色あり*/
.vk_button .vk_button_link.btn{
	padding: .75em 2em;
	border-width:2px;
	font-weight:bold;
	border-radius:100rem;
 }
.vk_button .vk_button_link.btn-sm{
  font-size:1rem;
}
.vk_button .vk_button_link.btn-md{
  font-size:1.125rem;
}
.vk_button .vk_button_link.btn-lg{
  font-size:1.25rem;
}
.vk_button_link.has-vk-color-primary-background-color {
 border-color: var(--wp--preset--color--vk-color-primary);
}
.vk_button_link.has-vk-color-custom-1-background-color {
 border-color: var(--wp--preset--color--vk-color-custom-1);
}
.vk_button_link.has-vk-color-custom-2-background-color {
 border-color: var(--wp--preset--color--vk-color-custom-2);
}
.vk_button_link:hover.has-background.has-vk-color-primary-background-color {
	color: var(--wp--preset--color--vk-color-primary) !important;
}
.vk_button_link:hover.has-background.has-vk-color-custom-1-background-color {
	color: var(--wp--preset--color--vk-color-custom-1) !important;
}
.vk_button_link:hover.has-background.has-vk-color-custom-2-background-color {
	color: var(--wp--preset--color--vk-color-custom-2) !important;
}
.vk_button_link:hover.has-background.has-vk-color-custom-1-color {
    background-color: var(--wp--preset--color--vk-color-custom-1) !important;
}
.vk_button_link:hover.has-background:not(.has-text-color) {
    background-color: #fff !important;
}
/*ボタン背景なし*/
.vk_button .has-text-color.is-style-outline:hover, 
.editor-styles-wrapper .vk_button .has-text-color.is-style-outline:hover {
    border: 2px solid;
}
.vk_button_link:hover.is-style-outline.has-vk-color-custom-1-color{
	border-color: var(--wp--preset--color--vk-color-custom-1) ;
}

/*テキストボタン　丸矢印*/
.vk_button_link-type-text {
	transition: var(--transition-S);
}
.vk_button_link-type-text .vk_button_link_txt{
	font-weight: bold;
}
.vk_button_link-type-text .vk_button_link_after {
	font-size: .75em;
	border: solid .15em currentColor;
	width: 2em;
	height: 2em;
	border-radius: 10em;
	transition: var(--transition-S);
	display: flex;
	justify-content: center;
	align-items: center;
}
.vk_button .vk_button_link-type-text:hover .vk_button_link_after {
	color: var(--color-light);
}
.has-vk-color-custom-1-color.vk_button_link-type-text:hover .vk_button_link_after {
	border-color: var(--wp--preset--color--vk-color-custom-1);
	background-color: var(--wp--preset--color--vk-color-custom-1);
}

/*ホバーで動きをつける場合*/
.btn-moveR.vk_button:hover .vk_button_link-type-text {
	padding-left: 0.3em;
}
.btn-moveR.vk_button:hover .vk_button_link-type-text .vk_button_link_after {
	margin-left: 0.5em;
}

/*テキストボタン アンダーライン消す*/
.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,
.editor-styles-wrapper
	.vk_button
	.has-text-color.vk_button_link-type-text:hover
	.vk_button_link_txt,
.editor-styles-wrapper
	.vk_button
	.has-text-color.vk_button_link-type-text:hover
	.vk_button_link_subCaption {
	text-decoration: none;
}


/*テキストに丸矢印*/
.wp-block-group p.circle-arrow {
	margin:.25em .5em;
}
.circle-arrow{
	transition: var(--transition-S);	
	font-size:var(--size-125);
	font-weight: 700;
	display:flex;
	justify-content: flex-end;	
	gap:.5em;
}
.circle-arrow::after {
	content:"\f061";
	font-family:"Font Awesome 6 Free";
	font-size: .75em;
	border: solid 2px currentcolor;
	width: 2em;
	height: 2em;
	border-radius: 10em;
	transition: var(--transition-S);
	display: flex;
	justify-content: center;
	align-items: center;
}
.circle-arrow:hover {
	gap:.25em;
}
.circle-arrow:hover::after {
	color: #fff;
	background-color: var(--color-primary);
}
.circle-arrow:hover {
	margin-left: 1.25em;
}

/*グロナビ*/
@media (width > 992px) {
	#site-header .container {
		max-width: 100%;
	}
	#site-header .container {
		padding-right: 2vw;
		padding-left: 2vw;
	}
}
@media (width < 992px){
	body:not(.header_scrolled) #site-header::after{
		width:210px;		
	}
	.site-header-logo{
		position:fixed;
	}
.header_scrolled .site-header-logo {
		display: block;
	}
}


/*三角*/
.triangle {
    transform: scale(102%) translateY(1px);
}
.triangle-reversal{
	transform:rotate(180deg) scale(102%) translateY(1px);
}


/*グロナビ　アニメーションなど*/
#site-header .nav li a,
#site-header nav li a {
    color: var(--color-dark);
}
.global-nav-list > li:hover > a,
.global-nav-list > li.current-menu-item > a,
.global-nav-list > li.current-page-parent > a{
	color: var(--color-primary) !important;
	transition:var(--transition-S);
}

.global-nav-list > li:hover:before,
.global-nav-list > li[class*='current']:where(:not(.menu-item-anchor)):before {
	width:80%;
}
.global-nav-list > li::before {
	transition: all 0.3s ease-out;
	content: '';
	width:px;
	height:3px;
	border-radius:10em;
	bottom:8px;	
	left: 50%;
	transform: translateX(-50%);
	z-index: 1000;
	opacity: 0;
	background-color: var(--color-accent2);
	border:none;
}
.global-nav-list > li:hover::before,
.global-nav-list > li.current-menu-item::before,
 .global-nav-list > li.current-page-parent::before{
	bottom: 8px;
	opacity: 1;
}
.global-nav-list > li.menu-item-has-children:hover::before{
	opacity: 0;
}

.global-nav-list>li.menu-item-has-children::after {
    bottom: 2px;
}
.device-pc .global-nav-list > li.menu-item-has-children:hover::after,
.global-nav-list > li.acc-parent-open::after {
	display:none;
}
@media (min-width: 992px) {
    .global-nav--layout--float-right .global-nav-list {
        height:60px;
    }
}



/*サブメニュー　サブメニューなければ削除
.global-nav-list>li>ul.sub-menu {
	background-color: transparent;
	border:none;
	width:20em;
	left: 50%;
	transform: translateX(-50%);
	margin-left: auto;
	top: 32px;
	transition: all 0.3s ease-in;
	box-shadow: none;
	padding:2em;
}
:has(body.header_scrolled) 
.global-nav-list>li>ul.sub-menu {
	top: 50px;
}
.global-nav-list>li>ul.sub-menu li a{
	color:var(--color-primary);
	text-align:center;
	border-bottom: none;
	transition:var(--transition-S);
	background-color:var(--color-bg1);
	margin-bottom:4px;
	border-radius:.25em;
 	padding: 10px 1.2em;
	box-shadow:0 0 .5em rgba(0 0 0 / 0.10);
}
.global-nav-list .sub-menu li a, .global-nav-list .sub-menu li a:hover {
  color:var(--color-primary);
}
.global-nav-list .sub-menu li a:focus-within, .global-nav-list .sub-menu li a:hover {
  	background-color: var(--color-accent);
}*/

/*ハンバーガーメニュー*/
.mobile-nav-btn-right .vk-mobile-nav-menu-btn, .vk-mobile-nav-menu-btn.position-right {
	right: .5rem ;
	top:.5rem ;
}
.vk-mobile-nav-menu-btn {
    display: flex;
    top: 0px;
    left: 0px;
    width: 34px;
    height: 34px;
    font-size: 5px;
		padding-bottom: 6px;
    text-indent: 0px;
    justify-content: center;
    align-items: flex-end;
    overflow: visible;
    color: var(--color-dark);
}
.vk-mobile-nav-menu-btn {
    --vk-mobile-nav-menu-btn-bg-src: url("/wp-content/uploads/2025/06/vk-menu-btn-nv.svg");
    background: var(--vk-mobile-nav-menu-btn-bg-src) center 20% no-repeat;
    background-size: 70%;
    background-color: #fff !important;
    border: 1px solid var(--color-dark);
	border-radius: 10em;
}
.vk-mobile-nav-menu-btn.menu-open {
	--vk-mobile-nav-menu-btn-close-bg-src: url("/wp-content/uploads/2025/06/vk-menu-close-nv.svg");
	background: var(--vk-mobile-nav-menu-btn-close-bg-src) center 20% no-repeat;
	background-size:70%;
	border: 1px solid var(--color-dark);
}

/*ハンバーガー 展開*/
.vk-mobile-nav {
    background-color: var(--color-dark);
		opacity: .98;
    border-bottom: 1px solid #e5e5e5;
}
.vk-mobile-nav .widget_nav_menu ul li a,
.vk-mobile-nav nav ul li a {
    color: #fff;
    border-bottom: 1px solid var(--color-primary-d);
	transition:var(--transition-S);
}
.vk-mobile-nav nav>ul {
    border-top: 1px solid var(--color-primary-d);
}
.vk-mobile-nav a:hover{
	color:#bbb;
}


/*トップへ戻るボタン*/
.page_top_btn {
	width: 42px;
	height: 42px;
	border: 2px solid var(--color-bg1);
	border-radius:100em;
	background: var(--color-primary);
	box-shadow: none;
	background-image: var(--ver_page_top_button_url);
	background-size: 80%;
	background-repeat: no-repeat;
	background-position: center 40%;
	transition: opacity 0.3s;
}

/*共通 角丸*/
.radius-05,
.radius-05 img{
	border-radius:var(--radius-05);
}
/*共通 リスト*/
.wp-block-list li::marker,
ul.is-style-vk-triangle-mark li::before, 
ol.is-style-vk-triangle-mark li::before {
	color:var(--color-primary);
}
/*共通　カラムブロック*/
/*カラムギャップ*/
:root :where(.is-layout-flex) {
	gap: 2rem;
}
/*カラム スマホ時逆にする*/
@media (width < 769px) {
	.sp-column-reverse.wp-block-columns {
		flex-direction: column-reverse;
	}
}
/*カラムをコンテンツにフィット*/
.column-fit {
	width: fit-content;
}
/*横並び スマホ時縦にする*/
@media (width < 600px) {
	.sp-column {
		flex-direction: column;
	}
}

/*テーブル　調整*/
@media (width <= 768px) {
	.table-details th {
		border-bottom: none !important;
		padding-bottom: 0 !important;
	}
	.table-details td {
		border-top: none !important;
		padding-top: 0.25em !important;
	}
	.table-outline td {
		border-top: none !important;
	}
}
/*カバーブロック調整*/
.wp-block-cover{
	padding: 0;
}

/*左右マージン調整*/
@media (576px < width <= 1440px){

		.side-margin{
			margin-left: 2rem;
			margin-right: 2rem;
	}
}
/*スマホ時センター揃え*/
@media (width < 768px){
	.sp-center,
	.sp-center .vk_button.vk_button-align-left{
		text-align:center;
	}
	.sp-center h2:not(.subpage-h2){
		text-align:center;
	}	
}

/*パンくずリスト*/
.breadcrumb {
	border-top: none;
	border-bottom: none;
}
.breadcrumb > .container {
	padding-left: 0;
	margin-left: 2vw;
}
.breadcrumb i {
	display: none;
}
.breadcrumb li a {
	text-decoration: none;
	color: var(--color-dark);
}
.breadcrumb li a:hover {
	text-decoration: underline;
	color: var(--color-primary);
}

/*お知らせ 新着情報*/
.vk_post{
  margin: 0;
	padding:1.25em .5em;
	transition:var(--transition-S);
	position:relative;
}
.vk_post {
	column-gap: 1em;
	row-gap: 0;
	display: flex;
	flex-direction: column;
}
.vk_posts {
    margin: 0;
}
.postListText_date{
	font-size: .875rem ;
	color:var(--color-dark);
	font-weight:bold;
	min-width: 90px;
}
.postListText_title{
    font-size: 1rem;
	font-feature-settings: "palt";
	letter-spacing:.05em;
	width:inherit;
}
.vk_post_title_new{
	margin-left: .5em;
	font-weight:bold;
	color: var(--color-primary-v);
}
.postListText{
    border-bottom: 1px solid #e5e5e5;
}
.postListText_title a{
	font-weight:bold;
	text-decoration:none;
	transition:var(--transition-S);
	padding-right: 3.5em;
	width:inherit;
	position:relative;
	display:flex;
	align-items: center;
}
.postListText_title a::after{
	font-family:"Font Awesome 6 Free";
	content:"\f061";
	font-weight:bold;
	position:absolute;
	right:.5em;
	font-size: .75em;
	border: solid .15em var(--color-dark);
	width: 2em;
	height: 2em;
	border-radius: 10em;
	color:var(--color-dark);
	transition:var(--transition-S);	
	display: flex;
	justify-content: center;
	align-items: center;
	opacity:0;
}
.vk_post:has(.postListText_title a:hover){
	padding-left:1em;
	background-color:#fcfcfc;
}
.postListText_title a:hover{
	text-decoration:none  !important;
	text-decoration-thickness: 1px;
	text-underline-offset: 1em;
	text-decoration-color:currentcolor;
}
.postListText_title a:hover{
	color:var(--color-dark);	
	padding-right: 3em ;	
}
.postListText_title:hover a::after{
	color: var(--color-light);
	background-color: var(--color-dark);
	opacity: 1;
}

@media (width <= 768px){
	.postListText{
    align-items: flex-start;
    flex-direction: column;
	} 
	.postListText_title{
		flex-direction: row;
	}
	.postListText,
	.postListText_title{
		justify-content: center;
	}
}

/*背景 斜めストライプ*/
.bg-stripe{
	z-index:0;
}
.bg-stripeR{
	position:absolute;
	top:0;
	right:0;
	z-index: -1;
}
.bg-stripeL{
	position:absolute;
	bottom:0;
	left:0;
	z-index: -1;
}

/*フッター*/
.jtc-logo{
	background-color:#fff;
	padding:1rem;
}
.site-footer,
#block-site-footer {
    border-top: none;
}
.site-footer {
    display: grid;
}
.site-footer::before{
	content: '';
	position: absolute;
	inset: 0;
	opacity: .9;
	z-index: 0;
	mix-blend-mode: color;
	background-color:var(--color-accent2);
} 
.site-footer .wp-block-separator {
    border-width: 1px;
}
.site-footer-content{
	order:1;
	z-index: 1;
    padding-top: 0;
}
.site-footer-content > .row{
    flex-direction: column;
    align-content: center;
    align-items: center;
}
.site-footer-content > .row > div{
	flex: 0 0 100%;
  max-width: 100%;
}
.footer-nav{
	order:2;
	z-index: 1;
    border-bottom:none;
}
.site-footer-copyright{
	order:3;
	z-index: 1;
}
.footer-nav-list--align--center {
    text-align: center;
}
.column-org.vk_gridColumn [class*=col-] {
    padding: 0 1.5%;
}
.footer-nav-list a{
	transition:var(--transition-S);
}
.footer-nav-list a:hover{
	color:#777 ;
}

/*トップページ*/
/*ファーストビュー*/
/*グリーン背景*/
.bg-gr.wp-block-cover .wp-block-cover__background{
	opacity:.9 !important;
	mix-blend-mode: color;
	z-index:2;
}
.bg-gr.wp-block-cover .wp-block-cover__inner-container,
.mainvisual.wp-block-cover .wp-block-cover__inner-container{
  z-index:10;
}

/*ファーストビュー白*/
.white.mainvisual.wp-block-cover .wp-block-cover__background{
  opacity:0 !important;
}
/*動画のフィルター*/
.white.mainvisual.wp-block-cover::before {
	content: '';
	position: absolute;
	inset: 0;
	opacity: .9;
	z-index: 2;
	mix-blend-mode: hard-light;
	background-image:url(/wp-content/uploads/2025/06/bg01.png);
	background-attachment: fixed;
	background-size: cover;
	background-position: center;
	background-repeat:no-repeat;
}

.white.mainvisual.wp-block-cover video{
	filter: grayscale(0);
}

/*ドットフィルター*/
.dot.mainvisual.wp-block-cover::after {
	content:'';
	position: absolute;
	inset:0;
	opacity:.5;
	mix-blend-mode: screen;
}
.dot.mainvisual.wp-block-cover::after {
	background-image: radial-gradient(#fff 30%, transparent 31%), radial-gradient(#fff 30%, transparent 31%);
	background-size: 4px 4px;
	background-position: 0 0, 2px 2px;
}
@media (width < 700px){
	.fv-title{
		padding: 0 2rem;
	}
}
/*アニメーションのスピード*/
.delay-0.vk_animation-speed-fast {
    -webkit-transition: all .3s ease-out .0s;
    transition: all .3s ease-out .0s;
}


/*メインビジュアル下の三角*/
.firstview{
	position:relative;
}
.triangle-bg {
	clip-path: polygon(100% 0, 0 100%, 100% 100%);
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	min-height: 12vw;
	z-index: 2;
}

/*SNS*/
img{
	transition:var(--transition-S);
}
.sns-icon img:hover{
	filter:brightness(75%);
	
}
.firstview .sns-icon{
	position:absolute;
	z-index:5;
	right:1rem;
	flex-direction: column;
	top: 50%;
  transform: translate(0,-50%);
}

@media (width < 880px){
	.firstview .sns-icon{
		top: unset;
		bottom:1rem;
		left:50%;
		flex-direction: row;
		transform: translate(-50%,0);
	}
}

/*リードテキスト*/
.heading-text-lead {
	gap: 0 !important;
}
.heading-text-lead p {
	letter-spacing:-0.01em;
	font-family: "Barlow Semi Condensed", sans-serif;
	font-weight: 700;
	font-style: italic;
	font-size: var(--size-175);
	line-height: 1;	
	margin-bottom: 0 !important;
	padding-right:.1em;
	
}
.heading-text-lead h2 {
	font-size: var(--size-20);
	line-height: 1.25;
	
}
.text-lead{
	font-size:var(--size-1125);
	font-weight:bold;
}
/*ポスター*/
@media (576px <= width <= 1440px){
	.poster-column{
		margin:auto  2rem;
	}
}
.poster-dl-wrap{
	gap:2.5em;
}
.poster-dl, .dl-btn-wrap{
	column-gap:1.5em;
	row-gap:1em;
}
.poster-dl p{
	font-weight:bold;
	font-size:1.25rem;
}
.poster-dl .vk_button .vk_button_link.btn {
	padding: .5em 1em;
	border-width: 1px;
	font-weight: bold;
	border-radius: .5em;
	border-color:var(--color-light);
}
.poster-dl .vk_button .vk_button_link.btn:hover .vk_button_link_caption > * {
		color:var(--color-dark);
}

/*テニスの日*/
.about-bg {
	background-color: #fff;
	border-radius: .5rem;
	box-shadow: var(--shadow-20);
	padding:var(--size-25);	
}
.about-text{
	font-size:1.125em;
}
.heading-text-h3 {
	gap:0;
}
.heading-text-h3 p {
	font-size: 1.75rem;
	font-family: var(--font-accent);
	font-weight: 700;
	font-style: italic;
	line-height: 1;
	--vk-margin-element-bottom: .5rem;
}
.heading-text-h3 h3{
	font-size:1.75rem;
}
#about .btn{
	width:min(90%,420px);
}
/*ロゴマーク*/
.logo-mark{
	gap:0;
}
@media (width < 854px) {
	.logo-mark{
		flex-direction: column;
		align-items: center !important;	
	}
}


/*イベント*/
.event-contents-wrap{
	background-color:#fff;
	border-radius:.5rem;
	padding:clamp(1.5rem, 5.5vw, 3rem);
	border:4px solid var(--color-light) ;
	box-shadow:1rem 1rem 0 #CCE74Eaa ;
	width:fit-content;
	margin:auto;
}
.event-title{
	gap:.5em;
}
.event-title p{
	margin:0 !important;
	line-height:1.25;
	font-weight:bold;
  font-feature-settings: "palt";
	letter-spacing:.05em;
}

.event-title-sub{
	font-size:min(7vw, 38px);
}
.event-title-main{
	font-size:min(12vw, 54px);
}
.event-contents-wrap .btn{
	width:min(90%, 420px);
	border:none;
}
.bg-nv.wp-block-cover .wp-block-cover__background {
    opacity: 1 !important;
    mix-blend-mode: multiply;
    z-index: 0;
}
@media (width <= 576px){
	.event-contents-wrap{
		box-shadow:.5rem .5rem 0 #CCE74Eaa ;
	}
}


/*ボレーボレー*/
.event-subpage-wrap{
	background-color:#fff;
	border-radius:.5rem;
	padding:clamp(1.5rem, 5.5vw, 3rem);
	border:4px solid var(--color-accent) ;
	box-shadow:1rem 1rem 0 #A0F00099 ;
}

/*ポスター*/
.page-id-482 .side-margin{
	margin-left: 2rem;
	margin-right: 2rem;
}

.column-charm img{
	background-color:#fff;
	box-shadow:var(--shadow-10);
	padding:.5rem;
}
.column-poster img {
	filter: drop-shadow(var(--shadow-05));
}
.notes img{
	background:none;
	box-shadow:none;
	filter:none;
}


/*TikTokスライダー*/
.vk_slider_item .vk_slider_item-background-area:not([class*=-background-color]) {
    background-color: transparent;
}
.embed-tiktok{
	
}
.vk_slider {
	padding:1.5em 0 1em;
}
.swiper-pagination-bullet {
    border-radius: 1em;
    width: .75em;
    height: .75em;
}
.swiper-pagination-bullet-active {
    background: var(--color-primary);
}
.vk_slider .swiper-button-next,
.vk_slider .swiper-button-prev {
    border-radius: 100em;
	color: var(--color-dark);
}
.vk_slider_item_container iframe {
    width: 100%;
    height: auto;
    aspect-ratio: 3/5;
}
/*スライダーをスワイプ可能にする*/
.vk_slider_item_container::before {
    content: "";
    position: absolute;
    z-index: 1;
    bottom: 15%;
    left: 0px;
    width: 70%;
    height: 35%;
    background-color: initial;
}

.vk_slider_item_container::after {
    content: "";
    position: absolute;
    z-index: 1;
    top: 10%;
    left: 0px;
    width: 100%;
    height: 35%;
    background-color: initial;
}

/*下層ページ*/
/*下層ページ全体*/
.page-header {
	align-items: flex-start;
	padding:0.5rem;
}
.page-header::before {
	background-color:var(--color-accent2);
	opacity:.9 !important;
	mix-blend-mode: color;
	z-index:2;	
}
@media (width < 768px){
	.page-header {
		min-height: 12rem;
		padding:3rem;
	}
}
.page-header-title, h1.page-header-title {
    font-size:var(--size-175);
}
/*下層ページ見出し*/
.subpage-h2,
.single-post h2{
	font-size:1.75rem;
	display: inline-flex;
	align-items: flex-start;
	justify-content: center;
	gap: .5em;
	width: fit-content;
}
.subpage-h2.has-text-align-center,
.single-post h2.has-text-align-center{
	display: flex;
	flex-direction: column-reverse;
	gap:.25em;
}
.subpage-h2::before,
.single-post h2::before{
	content:'';
	left:0;
	top: .125em;
	width:1rem;
	height:2rem;
	clip-path: polygon(70% 0, 100% 0%, 30% 100%, 0% 100%);
	background-color:var(--color-accent);	
}

.subpage-h3,
.single-post h3{
	font-size:1.5rem;
	line-height:1.5;
	padding:.0em 1em;
	border-left:.15em solid;
}
.subpage-h3.has-text-align-center,
.single-post h3.has-text-align-center{
	border-left:none;
}
.subpage-h3.has-text-align-center:after,
.single-post h3.has-text-align-center:after{
	content:'';
	bottom:-.5em;
	width:2.5em;
	height:.2rem;
	color:currentcolor;
	background-color:currentcolor;
}
/*下層ページヘッダー*/
.page-header-title, h1.page-header-title {
    font-size:var(--size-175);
}
.page-header::after{
	content: '';
	position:absolute;
	bottom:-1px;
	right:-1px;
	width:101%;
	aspect-ratio: 1440/178;
	z-index: 2;
	background:center/cover no-repeat url(/wp-content/uploads/2025/06/triangle-wh.svg);
}
/*新着情報ヘッダー*/
.page-header-title {
	display: flex;
	flex-direction: column;
	align-items: center;
	font-size: var(--size-175);
	line-height: 1.25;	
}
/*投稿ページヘッダー*/
.blog .page-header-title::before,
.archive .page-header-title::before,
.single-post .page-header-title::before{
	color:var(--color-primary);
	letter-spacing:-0.01em;
	font-family: var(--font-accent);
	font-weight: 700;
	font-style: italic;
	font-size: var(--size-60);
	line-height: 1;	
	margin: 0;
	padding-right:.1em;	
}
.blog .page-header-title::before,
.archive .page-header-title::before,
.single-post .page-header-title::before{
	content: 'News';
}
/*固定ページヘッダー*/
.page .page-header-inner {
	display: flex;
	flex-direction: column-reverse;
	align-items: center;
}
.page .page-header-subtext{
	color:var(--color-primary);
	letter-spacing:-0.01em;
	font-family: var(--font-accent);
	font-weight: 700;
	font-style: italic;
	font-size:var(--size-60) ;
	line-height: 1;	
	margin: 0;
	padding-right:.1em;	
}


/*テニスの日*/
.internal-links{
	gap:1rem;
}
.internal-links .btn{
	border-radius:.5rem !important;
	padding: .75em 1.25em;
    border-width: 2px;
    font-weight: bold;
    border-radius: 100rem;
}
.purpose-contents{
	padding:clamp(1.5rem, 6vw, 4rem);
	max-width:1080px;
	box-shadow:var(--shadow-10);
	margin:auto;
}
.history-contents-wrap{
	max-width:1080px;
	margin: auto;
}
.purpose-text-s{
	font-size:.9rem;
	line-height:1.75;
	font-feature-settings: "palt";
}
.purpose-wrap p{
	letter-spacing:.05em;
}
.history-column{
	padding:min(4vw ,2em);
	border-top:1px solid #ddd;
	background-color:#fff;
	row-gap:0.75rem;
}
.history-column:nth-child(2n-1){
		background-color:#f1f1f1;
}
.history-column:last-child{
	border-bottom:1px solid #ddd;
}
.history-date{
	gap:1em;
}
.history-date .year{
	font-size:4rem;
	font-weight: 700;
	font-style: italic;
	line-height:1;
	font-family:var(--font-accent);
}
.history-date .year-jp{
	font-size:1.25rem;
	line-height:1.5;
	font-weight:bold;
}
.history-table.wp-block-table td, .history-table.wp-block-table th {
	border: 0px solid;
	padding: .5em;
	vertical-align:top;
}
.history-table.wp-block-table:where(:not([class*=font-size])) {
    font-size: 1rem;
}
.history-table.wp-block-table td:first-child{
	width:5.5rem;
}

/*イベント*/
.event-title-bottom{
	font-size:min(9vw, 54px);
}

/*構成団体*/
.column-org.vk_gridColumn .row {
	display: flex;
	justify-content: center;
	align-items: center;
}
.column-org a,
.column-org a .vk_button_link_caption{
	transition:var(--transition-S) !important;
}
.column-org a:has(img):hover{
	filter:brightness(92%);
}
.column-org .vk_button_link_caption{
	font-size:var(--size-1125);
}
.column-org .vk_button_link-type-text .vk_button_link_after {
    font-size: 1em;
    border: none;
}
@media (width < 768px){
	.column-org.list-text .wp-block-vk-blocks-grid-column-item::after{
		content: '';
		position: absolute;
		width:84%;
		left:8%;
		bottom:-.75em;
		border-bottom:1px solid #ddd;
	}	
}



/*記事詳細ページ*/
.single-post .entry-title{
	font-feature-settings: "palt";
	letter-spacing:0.05em;
		color:var(--color-dark);
}@media (width <= 768px){
	.blog .vk_post, .archive .vk-post{
		flex-direction: column;
		align-items: flex-start;
	}
}
.single-post .entry-meta {
    font-size: var(--size-10);
	color:var(--color-dark);
}
.single-post .fa-calendar-alt:before{
    display:none;
}
.single-post h2,.single-post h3{
	color:var(--color-primary);
}
.entry-footer{
	display:none;
}

/*アーカイブページ*/
.blog .vk_post,
.archive  .vk_post {
    column-gap: 1em;
    row-gap: 0;
    display: flex;
    flex-direction: row;
    align-items: center;
}
@media (width <= 768px){
	.blog .vk_post, 
	.archive .vk-post{
		flex-direction: column;
		align-items: flex-start;
	}
}

.archive-header-title{
	color:var(--color-primary);
}
/*アーカイブ ページネーション*/
ul.page-numbers li {
	margin: 0 .5em;
	border-radius: 10em;
	background-color: #fff;
	border: 1px solid var(--color-primary);
}

ul.page-numbers li a, ul.page-numbers li span.page-numbers {
	padding: 8.5px 12px;
	line-height: 1;
	color: var(--color-primary);
	transition:var(--transition-S);
}
ul.page-numbers li a.next {
    padding: 6.5px 13px 10.5px;
}