/*
 Theme Name: Lightning Child
 Template: lightning
 Version: 1.0.0
*/

/* ===== ここから既存のカスタムCSS ===== */

.ltg-slide-text-title {
  font-size:3rem;
}

#menu-item-183 a{
  color: black;
  background-color:#E83929;
}

/* …今まで追加CSSに書いていたものを全部ここに… */
.ltg-slide-text-title {
	font-size:3rem;
}

#menu-item-183 a{
  color: black;
	background-color:#E83929;
}

#site-header-container {
	justify-content:flex-end;
}

.site-body {
	padding:0;
}

.header-top .container,
.site-header-container{
    width: 100%;
    max-width: 100%;
}

.custom-header-div {
    width: 100%;
    max-width: 100%;
}

.page-header-inner.container {
    margin: 0;
}


/*ContactForm7カスタマイズ*/
table.CF7_table{
	width:80%;
	margin:0 auto;
	border: 3px solid #e5e5e5;
}

table.CF7_table tr{
	border-top: 1px solid #e5e5e5;
	text-align:left;
}

.single .entry-content table.CF7_table,
.page .entry-content table.CF7_table{
	display:table;
}

/*入力欄*/
.CF7_table input, .CF7_table textarea {
	border: 1px solid #d8d8d8;
}

.CF7_table ::placeholder {
	color:#797979;
}

/*「必須」文字*/
.CF7_req{
	font-size:.9em;
	padding: 5px;
	background: #E83929;/*赤*/
	color: #fff;
	border-radius: 3px;
	margin-right:1em;
}

/*「任意」文字*/
.CF7_unreq{
	font-size:.9em;
	padding: 5px;
	background: #bdbdbd;/*グレー*/
	color: #fff;
	border-radius: 3px;
	margin-right:1em;
}

/* タイトル列 */
@media screen and (min-width: 768px){
	.CF7_table th{
	width:30%;/*横幅*/
	background-color:#ebedf5;/*ブルーグレー*/
	}
}

/* レスポンシブ */
@media screen and (max-width: 768px){
	table.CF7_table{
	width:95%;
	}
	.CF7_table tr, .CF7_table td, .CF7_table th{
	display: block;
	width: 100%;
	line-height:2.5em;
	}
	.CF7_table th{
	background-color:#ebedf5;
	}
}

/* 「送信する」ボタン */
.wpcf7 input.wpcf7-submit {
	border:0;
	color:#fff;
	font-size:1.2em;
	font-weight:bold;
	margin:0 auto;
}

.CF7_btn{
	text-align:center;
	margin-top:20px;
}

.wpcf7-spinner{
	width:0;
	margin:0;
}
/* ===== ThriveSports カレンダーCSS（ここに追記） ===== */
/* ThriveSports Auto Calendar (PC grid / SP list) */
.ts-cal { --ts-border: rgba(0,0,0,.10); --ts-muted: rgba(0,0,0,.60); --ts-radius: 14px; --ts-shadow: 0 10px 25px rgba(0,0,0,.06); }
.ts-cal * { box-sizing: border-box; }

.ts-cal__head{ display:flex; align-items: baseline; justify-content: space-between; gap:12px; margin: 0 0 12px; }
.ts-cal__title{ font-size: clamp(18px, 2.2vw, 28px); line-height: 1.2; margin: 0; }
.ts-cal__note{ color: var(--ts-muted); font-size: 14px; }

.ts-cal__legend{ display:flex; flex-wrap:wrap; gap:8px 10px; margin: 10px 0 14px; }
.ts-tag{ display:inline-flex; align-items:center; gap:8px; border:1px solid var(--ts-border); border-radius:999px; padding:6px 10px; font-size:13px; color: rgba(0,0,0,.75); background: rgba(255,255,255,.7); }
.ts-dot{ width:10px; height:10px; border-radius:999px; display:inline-block; }

.ts-cal__grid{ border:1px solid var(--ts-border); border-radius: var(--ts-radius); overflow:hidden; box-shadow: var(--ts-shadow); background:#fff; }
.ts-cal__dow{ display:grid; grid-template-columns: repeat(7, minmax(0,1fr)); border-bottom:1px solid var(--ts-border); background: rgba(0,0,0,.02); }
.ts-cal__dow div{ padding:10px; font-size:13px; color: var(--ts-muted); }

.ts-cal__days{ display:grid; grid-template-columns: repeat(7, minmax(0,1fr)); }
.ts-day{ min-height:110px; padding:10px; border-right:1px solid var(--ts-border); border-bottom:1px solid var(--ts-border); }
.ts-day:nth-child(7n){ border-right:none; }
.ts-day.is-empty{ background: rgba(0,0,0,.015); }
.ts-day__num{ font-weight:700; font-size:14px; margin-bottom:8px; opacity:.9; }

.ts-event{ display:block; text-decoration:none; border:1px solid var(--ts-border); border-radius:10px; padding:8px 9px; margin:6px 0 0; font-size:12.5px; line-height:1.35; color: rgba(0,0,0,.82); background: rgba(255,255,255,.92); }
.ts-event:hover{ transform: translateY(-1px); box-shadow: 0 10px 20px rgba(0,0,0,.06); }
.ts-event__time{ display:block; font-size:12px; color: var(--ts-muted); margin-bottom:2px; }

/* Category colors (ThriveSports) */
.ts-cat-korf{ border-left:5px solid #2e7d32; }   /* コーフ：緑 */
.ts-cat-bb5{ border-left:5px solid #fdd835; }    /* BB5/ウィッフル：黄色 */
.ts-cat-youfo{ border-left:5px solid #e53935; }  /* YOU.FO：赤 */
.ts-cat-molkky{ border-left:5px solid #8d6e63; } /* モルック：茶色 */
.ts-cat-pickle{ border-left:5px solid #1e88e5; } /* ピックル：青 */
.ts-cat-admin{ border-left:5px solid #fb8c00; }  /* 運営：オレンジ */
.ts-cat-other{ border-left:5px solid #546e7a; }  /* 予備 */

/* Mobile list */
.ts-cal__list{ display:none; gap:10px; }
.ts-list-item{ border:1px solid var(--ts-border); border-radius: var(--ts-radius); padding:12px; box-shadow: var(--ts-shadow); background:#fff; }
.ts-list-date{ display:flex; align-items:center; justify-content: space-between; gap:8px; margin-bottom:8px; }
.ts-list-date strong{ font-size:15px; }
.ts-list-date span{ font-size:12.5px; color: var(--ts-muted); }

@media (max-width: 768px){
  .ts-cal__grid{ display:none; }
  .ts-cal__list{ display:grid; }
}

/* Month navigation */
.ts-cal-nav{ display:flex; flex-wrap:wrap; gap:8px; margin: 0 0 16px; }
.ts-cal-nav a{
  display:inline-flex; align-items:center; justify-content:center;
  border:1px solid var(--ts-border); border-radius:999px;
  padding:8px 12px; font-size:13px; text-decoration:none;
  color: rgba(0,0,0,.75); background: rgba(255,255,255,.7);
}
.ts-cal-nav a:hover{ box-shadow: var(--ts-shadow); transform: translateY(-1px); }

.ts-cal {
  /* カレンダー用CSS */
}
.ts-cal-nav a.is-active{
  font-weight: 700;
  text-decoration: underline;
}