/*
 Theme Name:   Lightning Child
 Template:     lightning
 Version:      1.0.0
*/

body
 {
  font-family: "Yu Mincho", serif;
}

/* 個別投稿ページのみパンくずリストを非表示 */
body .container .breadcrumb-list {
    display: none;
}

.site-header-logo {
        margin-right: 0;
        width: auto;}

.site-header-logo img {
    max-height: 80px;
}

.global-nav--layout--float-right {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}

.site-header {box-shadow:none;}

.breadcrumb {border:none;}

.site-body {padding: 0rem 0 2rem;}

.top-copy {font-size:clamp(2rem, 0.222rem + 3.7vw, 3rem);}

.top-copy2 {font-size:clamp(1.75rem, -0.472rem + 4.63vw, 3rem);}

header .nav li a, nav li a {color: #171c61;}

header nav li :hover {opacity:0.6;}

header nav #menu-item-342 {background-color: #171c61;	margin-left:10%;}

header nav #menu-item-342 a {color:#fff;}

.global-nav-list li  {font-family: "Noto Sans JP", sans-serif;}

.global-nav-list>li::before {content:none;
	color: #176057;}

.global-nav-list>li .global-nav-name {font-size: 16px;}

.top-img {width: 100vw;
	min-height: 765px;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	max-width: var(--vk-width-full);
	background-image:URL(https://jft-sports.jp/wp-content/uploads/2024/12/top-img.jpg);
	object-fit: cover;
	background-size: cover;
	background-repeat:no-repeat;
	background-position: 50%;
	box-sizing: border-box;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 1em;
}

.fadein {
    animation: fadeIn 2s ease-in 0s 1 normal;
}

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

.fadein-u {
	opacity: 0;
	transform: translateY(30px);
	transition-property: transform, opacity;
	transition-duration: 2s;
	transition-delay: 0s;
}

.fadein-u.is-active {
	opacity: 1;
	transform: translateY(0);
}

.typing {
  width: 20ch;
  animation: typing 2s steps(11), effect .5s step-end infinite alternate;
  white-space: nowrap;
  overflow: hidden;
	animation-delay: 250ms;
}
 
@keyframes typing {
  from {
    width: 0
  }
}
    
@keyframes effect {
  50% {
    border-color: transparent
  }
}

.top-box {
	
	flex-direction:column;
}

h2 {font-size:clamp(2rem, 0.222rem + 3.7vw, 3rem);
	color: #171c61;
	font-family: "trajan-pro-3", serif;
	font-weight: 600;
	font-style: normal;}

.entry-title--post-type--page, h2:where(:not(.wp-block-post-title)) {padding: .3em 0;
	border-top: 0px ;
	border-bottom: 0px ;}

h3 {border-bottom: 0px ;
	font-size:clamp(1.25rem, 0.806rem + 0.93vw, 1.5rem);}

h3 .wp-image-1060 {width: 56px;
    vertical-align: middle;
    margin-right: 10px;
}

h4:where(:not(.wp-block-post-title)) {background-color: #a4904a;
	border-radius: 0;
	color:#fff;}

h4 {font-size:clamp(1.4rem, 0.333rem + 2.22vw, 2rem);}

.tsuyomi {font-family: "r41-alfabeta-16", serif;
	font-weight: 400;
	font-style: normal;
	font-size: clamp(1.75rem, 0.861rem + 1.85vw, 2.25rem);}

h5 {font-size: clamp(1.25rem, 0.806rem + 0.93vw, 1.5rem);}

h5:where(:not(.wp-block-post-title)) {padding-bottom: .2em;
	border-bottom: 1px solid #000;}

h6 {font-size:clamp(1.05rem, 0.977rem + 0.36vw, 1.25rem);
}

.contactform input {width:60%;}

.contactform-age input {width:15%;}

input[type=submit] {display:flex;
	margin:0 auto;
	border: 0px ;
	border-radius: 0;}

.wp-block-buttons .wp-block-button__link {border-radius: 0;}

.wp-block-button .wp-block-button__link:hover{
	background-color:var(--vk-color-primary-dark);}

.has-text-align-left { background-color:#fff;}

.wp-block-latest-posts__featured-image {text-align: center;}

.site-footer {border-top: 0px ;
	background-color:#171c61;}

.footer-nav {padding: 2em 0;
	border-bottom: 0px ;
	font-family: "Noto Sans JP", sans-serif;}

.footer-nav .container {display:flex;
	justify-content:center;}

footer .nav li a, nav li a {color: #fff;}

footer nav ul {width:100%;
	text-align:center;}

.row {display: flex;
	justify-content:center;
	flex-wrap: nowrap;}

.widget {display: flex;
	justify-content:center;}

.site-footer {font-size: 14px;
	font-weight:bold;}

.site-footer-copyright p {color:#fff;}

.site-footer-title:after, .sub-section-title:after, h3:where(:not(.wp-block-post-title)):after {border-bottom: 0px ;}

.site-footer-copyright p:nth-child(2) {display: none;}

/* Aboutページ */
.page-header { display:none; }

.about-t-01 {font-size:clamp(2rem, 1.818rem + 0.91vw, 2.5rem);}

.about-t-02 {font-size:clamp(1.5rem, 1.318rem + 0.91vw, 2rem);
	color:#a4904a;}

.about-ul li {list-style: none;}

.about-table tr td:nth-child(1) {width:60px;}

.about-table .has-fixed-layout { table-layout: auto;
	border: none;}

.about-table table { width: 70%;
margin:0 auto;}

.about-table td,.about-table th {border: none;
	vertical-align:top;}

.about-jftbeginning {background-image: url(https://jft-sports.jp/wp-content/uploads/2025/01/about-jft.jpg);
background-size:contain;
background-repeat: no-repeat;
background-position:left;
min-height:500px;}

.about-jftbeginning-end  {background-image: url(https://jft-sports.jp/wp-content/uploads/2025/01/about-jft02.jpg);
background-size:contain;
background-repeat: no-repeat;
background-position:left;
min-height:500px;
margin-bottom: var(--vk-margin-xxl);}

/* Serviceページ */
.service-list {display:flex;
	flex-wrap:wrap;}

.s-list-text {border: 1px solid #000; padding: 3px 10px; margin:0 5px 5px 0; border-radius: 20px; width: fit-content; font-size:14px;}

.wp-block-cover__image-background wp-image-879 {object-fit: contain;}

.service-h3 {font-family:"Noto Sans JP", ans-serif;}

/* Programページ */
.program-t {font-size:clamp(1.25rem, 1.159rem + 0.45vw, 1.5rem);
	font-weight:bold;
	color:#a4904a;}

.wp-image-618 { padding-right:10px;}

.wp-image-619 {padding-left:10px;}

.vkp_table_speech_bubble table{
  border-spacing: 0 5px;
  border: 1px solid #7c7c7c;
  margin:auto;
	width:60%;
}

.vkp_table_speech_bubble table ul {margin:-10px 0;}

/* tdの共通背景色 */
:root {--td-bg-color:#176057}

.vkp_table_speech_bubble :is(td,th) {
  padding: 1rem;
  background:#fff;
}

/* 最初のtd */
.vkp_table_speech_bubble tr td:nth-of-type(1)  {
  position:relative;
  background: var(--td-bg-color);
  vertical-align: middle;
  text-align: center;
  overflow: visible;
color:#fff;
font-size: var(--vk-size-text);
}

.program-onemonth table, .program-table table{
  border-spacing: 0 5px;
  border: 1px solid #7c7c7c;
  margin:auto;
}

.program-onemonth tr th, .program-table tr th {
  background:#171c61 ;
color:#fff;
  vertical-align: middle;
  text-align: center;
  overflow: visible;
font-size: var(--vk-size-text);
}

/* tdの共通背景色 */
.program-onemonth :is(td,th) {
  padding: 1rem;
  background:#fff;
}

.program-table :is(td,th) {
  padding: 1rem;
  background:#fff;
}

/* contactページ */

.table-res-form  {
    font-family:"Noto Sans JP", ans-serif;
}

.table-res-form th,.table-res-form td {
	font-size:1rem;
}
/*一行ごとに上ボーダー*/
.table-res-form tr {
    border: 1px #fff solid;
}

/*thとtd内の余白指定*/
.table-res-form th, .table-res-form td {
    padding: 1.5em;
}
/*th（項目欄）は30%幅、テキストを右寄せ*/
.table-res-form th {
    width: 30%;
    text-align: right;
}

.form-honbun {
	vertical-align: top;
}

/* 投稿ページ */
.entry-header {margin-top: var(--vk-margin-block-bottom);}


@media (min-width: 1200px) {
.site-body {padding: 0rem 0 4rem;}
}

@media (min-width: 992px) {
.site-header--layout--nav-float .site-header-logo  {margin-right: 0;width: auto;}
	
.site-header-logo {padding-top: 5px;margin-bottom:5px;}
}	

.site-body {padding: 0rem 0 3.5rem;}
	
body:not(.header_scrolled) .global-nav--layout--float-right {justify-content: center;}
	
body:not(.header_scrolled) .global-nav--layout--float-right {
    display: flex;
    justify-content: center;
    align-items: center;
}
.global-nav--layout--float-right .global-nav-list {margin: 0 auto;}


@media (min-width: 768px) {
.site-body {padding: 0rem 0 2.5rem;}
}

@media (max-width: 991.98px) {
.site-header-container {display: none;}
.about-table table {width: 100%;}

.vkp_table_speech_bubble table{width:100%;}
	
}

@media (max-width: 768px) {
/* .top-concept br, .top-service br, .service-top br { display: none; } */
	
h3 .wp-image-1060 {width: 50px;}

.wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__content {padding:1rem 0;}

.top-concept, .top-service, .top-program, .about-philosoph, .program-top, .service-top {text-align: left;}

.table-res-form th, .table-res-form td {display: block;}

.table-res-form th {
	padding-bottom: 0;
	text-align: left;}

.table-res-form th, .table-res-form td {
    padding: 0.5em;
}

.table-res-form th {
    width: 120px;
}

br { display: block; } 

.about-jftbeginning {
  margin-bottom:50px;
}

.program-title h3 {
    font-size: 1rem;
}
	
.program-onemonth :is(td,th) {padding: 0.23rem;}

.program-table :is(td,th) {padding: 1rem 0.23rem;}
	
.program-onemonth tr td {
  vertical-align: top;}

.program-onemonth tr th, .program-table tr th {font-size: var(--vk-size-text-sm);}
	
.vkp_table_speech_bubble tr td:nth-of-type(1) {
    font-size: var(--vk-size-text-sm);
}

.wp-block-media-text.is-stacked-on-mobile {
        grid-template-columns: 100% !important;}

.wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__content {
        grid-column: 1;
        grid-row: 2;}

.wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__media {
        grid-column: 1;
        grid-row: 1;}

}

@media (max-width: 580px) {
.top-img {background-image:URL(https://jft-sports.jp/wp-content/uploads/2025/01/top-img-sp.jpg);
}
	

}
	

