/* MICS Site — 予定一覧（モノクロ） */
.mics-schedule,
.mics-archive {
	--mics-ink: #222222;
	--mics-sub: #6b6b68;
	--mics-line: #e2e2df;
	--mics-card: #ffffff;
	--mics-card-border: #e6e6e3;
	--mics-soft: #f2f2f0;
	color: var(--mics-ink);
	font-size: 14px;
	line-height: 1.7;
}

/* 絞り込みボタン */
.mics-filter {
	display: flex;
	gap: 8px;
	overflow-x: auto;
	padding: 0 0 8px;
	margin: 0 0 20px;
	-webkit-overflow-scrolling: touch;
}
.mics-chip {
	flex: 0 0 auto;
	min-height: 44px;
	padding: 0 18px;
	border: 1px solid #d6d6d2;
	border-radius: 999px;
	background: #ffffff;
	color: var(--mics-ink);
	font: inherit;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
}
.mics-chip:hover {
	border-color: var(--mics-ink);
}
.mics-chip.is-active {
	background: var(--mics-ink);
	border-color: var(--mics-ink);
	color: #ffffff;
}
.mics-chip:focus-visible {
	outline: 2px solid var(--mics-ink);
	outline-offset: 2px;
}

/* ブロックを段組みで並べる */
.mics-groups,
.mics-archive {
	columns: 3 320px;
	column-gap: 20px;
}
.mics-group {
	break-inside: avoid;
	display: inline-block;
	width: 100%;
	box-sizing: border-box;
	margin: 0 0 20px;
	padding: 18px 20px 10px;
	background: var(--mics-card);
	border: 1px solid var(--mics-card-border);
	border-radius: 20px;
}
.mics-group[hidden] {
	display: none;
}
.mics-schedule .mics-group__title,
.mics-archive .mics-group__title {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 4px;
	padding: 0;
	border: none;
	background: none;
	font-size: 16px;
	font-weight: 900;
	line-height: 1.5;
	color: var(--mics-ink);
}
.mics-schedule .mics-group__title::before,
.mics-archive .mics-group__title::before {
	content: "";
	display: block;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: var(--mics-ink);
	position: static;
	border: none;
}
.mics-group__title small {
	margin-left: auto;
	font-size: 12px;
	font-weight: 500;
	color: var(--mics-sub);
}
.mics-schedule .mics-section__title {
	margin: 10px 0 0;
	padding: 4px 0;
	border: none;
	background: none;
	font-size: 13px;
	font-weight: 700;
	color: #4a4a47;
}
.mics-schedule .mics-section__title::before,
.mics-schedule .mics-section__title::after {
	display: none;
}
.mics-section__title small {
	margin-left: 8px;
	font-size: 12px;
	font-weight: 400;
	color: var(--mics-sub);
}

/* 1予定 = 1行 */
.mics-rows {
	list-style: none;
	margin: 0;
	padding: 0;
}
.mics-schedule .mics-rows li,
.mics-archive .mics-rows li {
	margin: 0;
	padding: 0;
}
.mics-schedule .mics-rows li::before,
.mics-archive .mics-rows li::before {
	display: none;
}
.mics-row {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 8px 0 !important;
	border-top: 1px dashed var(--mics-line);
	white-space: nowrap;
}
.mics-row__date {
	flex: 0 0 auto;
	width: 74px;
	font-weight: 700;
	font-size: 15px;
	font-variant-numeric: tabular-nums;
}
.mics-row__date small {
	font-size: 11px;
	font-weight: 500;
	color: var(--mics-sub);
}
.mics-row__time {
	flex: 0 0 auto;
	font-size: 13px;
	color: #4a4a47;
	font-variant-numeric: tabular-nums;
}
.mics-row__place {
	flex: 1 1 auto;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	font-size: 13px;
}
.mics-row__place small {
	margin-left: 6px;
	font-size: 12px;
	color: var(--mics-sub);
}

/* ラベル */
.mics-label {
	flex: 0 0 auto;
	padding: 2px 8px;
	border-radius: 6px;
	font-size: 11px;
	font-weight: 700;
	line-height: 1.6;
}
.mics-label.is-new {
	background: var(--mics-ink);
	color: #ffffff;
}
.mics-label.is-full {
	background: #555555;
	color: #ffffff;
}
.mics-label.is-few {
	border: 1px solid var(--mics-ink);
	color: var(--mics-ink);
}
.mics-label.is-caution {
	background: #e6e6e3;
	color: var(--mics-ink);
}
.mics-label.is-info {
	background: var(--mics-soft);
	color: #4a4a47;
}

.mics-notice {
	padding: 16px 20px;
	border-radius: 12px;
	background: #f2f2f0;
	color: #4a4a47;
}

@media (max-width: 599px) {
	.mics-group {
		padding: 16px 16px 8px;
	}
	.mics-row__date {
		width: 66px;
	}
}

/* リストの余白をSWELLの設定より優先して消す */
.post_content ul.mics-rows,
ul.mics-rows,
ul.mics-news {
	padding-left: 0 !important;
	margin-left: 0 !important;
}

/* ============================================================
 * HOME 共通
 * ============================================================ */
.mics-hero,
.mics-picks,
.mics-news,
.mics-report {
	--mics-ink: #222222;
	--mics-sub: #6b6b68;
	--mics-line: #e2e2df;
	--mics-card-border: #e6e6e3;
	--mics-soft: #f2f2f0;
	color: var(--mics-ink);
}
.mics-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 0 28px;
	border: 1.5px solid #222222;
	border-radius: 999px;
	background: #ffffff;
	color: #222222 !important;
	font-weight: 700;
	text-decoration: none !important;
	transition: opacity 0.2s;
}
.mics-btn.is-primary {
	background: #222222;
	color: #ffffff !important;
}
.mics-btn:hover {
	opacity: 0.8;
}
.mics-ph {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	background: repeating-linear-gradient(135deg, #ebebe8 0 1px, #f5f5f3 1px 12px);
	color: #8a8a86;
	font-size: 13px;
}

/* ---------- ヒーロー ---------- */
.mics-hero {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 40px;
}
.mics-hero__main {
	flex: 999 1 440px;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.mics-hero__eyebrow {
	font-size: 12px;
	letter-spacing: 0.2em;
	color: var(--mics-sub);
}
.post_content .mics-hero__title,
.mics-hero__title {
	margin: 0 !important;
	font-size: clamp(30px, 4.4vw, 46px);
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: 0.04em;
}
.post_content .mics-hero__lead,
.mics-hero__lead {
	margin: 0 !important;
	color: #5a5a57;
	font-size: 15px;
	line-height: 1.9;
}
.mics-hero__btns {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}
.mics-hero__stats {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 40px;
	margin: 8px 0 0 !important;
}
.mics-hero__stats div {
	margin: 0;
}
.mics-hero__stats dt {
	margin: 0;
	padding: 0;
	font-size: 28px;
	font-weight: 800;
	line-height: 1.1;
	font-variant-numeric: tabular-nums;
	background: none;
	border: none;
}
.mics-hero__stats dt::before,
.mics-hero__stats dt::after {
	display: none;
}
.mics-hero__stats dd {
	margin: 0;
	font-size: 12px;
	color: var(--mics-sub);
}
.mics-hero__side {
	flex: 1 1 360px;
	min-width: 0;
}

/* ---------- 最新の活動レポート ---------- */
.mics-report {
	padding: 14px;
	border-radius: 28px;
	background: #ffffff;
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.08);
}
.mics-report__img {
	position: relative;
	display: block;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	border-radius: 20px;
}
.mics-report__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.mics-report__tag {
	position: absolute;
	top: 14px;
	left: 14px;
	padding: 6px 12px;
	border-radius: 999px;
	background: #ffffff;
	color: #222222;
	font-size: 12px;
	font-weight: 700;
}
.mics-report__body {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 4px 12px;
	padding: 16px 8px 6px;
}
.mics-report__body time {
	flex: 1 1 100%;
	font-size: 12px;
	color: var(--mics-sub);
}
.mics-report__title {
	flex: 1 1 auto;
	color: #222222 !important;
	font-weight: 700;
	text-decoration: none !important;
}
.mics-report__btn {
	flex: 0 0 auto;
	padding: 8px 16px;
	border-radius: 999px;
	background: #222222;
	color: #ffffff !important;
	font-size: 13px;
	font-weight: 700;
	text-decoration: none !important;
}

/* ---------- 注目のイベント ---------- */
.mics-picks {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: 24px;
}
.mics-pick {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var(--mics-card-border);
	border-radius: 22px;
	background: #ffffff;
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.05);
}
.mics-pick__img {
	display: block;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: var(--mics-soft);
}
.mics-pick__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.mics-pick__body {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 18px 20px 20px;
}
.mics-pick__head {
	display: flex;
	align-items: center;
	gap: 8px;
}
.mics-pick__date {
	font-size: 30px;
	font-weight: 800;
	line-height: 1;
	font-variant-numeric: tabular-nums;
}
.mics-pick__w {
	padding: 2px 8px;
	border-radius: 6px;
	background: #222222;
	color: #ffffff;
	font-size: 12px;
	font-weight: 700;
}
.mics-pick__head .mics-label {
	margin-left: auto;
}
.post_content .mics-pick__title,
.mics-pick__title {
	margin: 4px 0 0 !important;
	padding: 0 !important;
	border: none !important;
	background: none !important;
	font-size: 16px !important;
	font-weight: 900;
	line-height: 1.5;
}
.mics-pick__title::before,
.mics-pick__title::after {
	display: none !important;
}
.mics-pick__title a {
	color: #222222 !important;
	text-decoration: none !important;
}
.mics-pick__meta {
	display: flex;
	justify-content: space-between;
	gap: 10px;
	font-size: 13px;
	color: var(--mics-sub);
}
.post_content .mics-pick__desc,
.mics-pick__desc {
	margin: 0 !important;
	font-size: 13px;
	color: #5a5a57;
}
.mics-pick__btn {
	display: block;
	padding: 14px;
	background: #222222;
	color: #ffffff !important;
	text-align: center;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none !important;
}
.mics-pick__btn:hover {
	opacity: 0.85;
}

/* ---------- お知らせ ---------- */
.mics-news {
	list-style: none;
	border-top: 1px solid var(--mics-line);
}
.mics-news li {
	margin: 0 !important;
	padding: 0 !important;
	border-bottom: 1px solid var(--mics-line);
}
.mics-news li::before {
	display: none !important;
}
.mics-news a {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 20px;
	padding: 14px 4px;
	color: #222222 !important;
	text-decoration: none !important;
}
.mics-news time {
	flex: 0 0 auto;
	font-size: 13px;
	color: var(--mics-sub);
	font-variant-numeric: tabular-nums;
}
.mics-news span {
	flex: 1 1 240px;
	font-weight: 700;
}
.mics-news a:hover span {
	text-decoration: underline;
}

@media (max-width: 599px) {
	.mics-hero {
		gap: 28px;
	}
	.mics-btn {
		flex: 1 1 auto;
	}
}

/* ============================================================
 * セクション見出し（見出しブロックに「mics-sec」クラス）
 * ============================================================ */
.post_content h2.mics-sec,
h2.mics-sec {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 4px 14px;
	margin: 80px 0 24px !important;
	padding: 0 !important;
	border: none !important;
	background: none !important;
	box-shadow: none !important;
	color: #222222 !important;
	font-size: clamp(22px, 3vw, 28px) !important;
	font-weight: 900;
	line-height: 1.4;
	letter-spacing: 0.04em;
}
.post_content h2.mics-sec::before,
.post_content h2.mics-sec::after,
h2.mics-sec::before,
h2.mics-sec::after {
	content: none !important;
	display: none !important;
}
.mics-sec__en {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.18em;
	color: #6b6b68;
}
/* ヒーローの直後の見出しは少し詰める */
.mics-hero + h2.mics-sec,
.wp-block-shortcode + h2.mics-sec:first-of-type {
	margin-top: 72px !important;
}

/* 番号付きルール（リストブロックに「mics-rules」クラス） */
.post_content ol.mics-rules,
ol.mics-rules {
	counter-reset: mics-rule;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	background: none !important;
}
.post_content ol.mics-rules > li,
ol.mics-rules > li {
	position: relative;
	margin: 0 0 14px !important;
	padding: 2px 0 0 44px !important;
	line-height: 1.8;
}
.post_content ol.mics-rules > li::before,
ol.mics-rules > li::before {
	counter-increment: mics-rule;
	content: counter(mics-rule) !important;
	position: absolute;
	top: 0;
	left: 0;
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border: none !important;
	border-radius: 50%;
	background: #222222 !important;
	color: #ffffff !important;
	font-size: 14px;
	font-weight: 800;
	line-height: 1;
}

/* 注意事項の囲み（段落ブロックに「mics-notice-box」クラス） */
.post_content p.mics-notice-box,
p.mics-notice-box {
	margin: 0 0 12px !important;
	padding: 18px 22px !important;
	border-radius: 16px;
	background: #f2f2f0;
	color: #333333;
	font-size: 14px;
}

/* ============================================================
 * HOME（[mics_hero] があるページ）
 * ============================================================ */
.mics-wide {
	--article_size: 1120px;
}
.mics-wide #breadcrumb {
	display: none;
}
.mics-wide .c-pageTitle {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}
.mics-wide .l-mainContent {
	padding-top: 24px;
}

/* ============================================================
 * 下層ページ用パーツ（ブロックの「追加CSSクラス」で使う）
 *   mics-lead   … 段落：ページ冒頭の説明文
 *   mics-cta    … 段落：中のリンクをボタンにする
 *   mics-steps  … 番号付きリスト：STEPカード（各項目の先頭を太字に）
 *   mics-facts  … 箇条書き：頻度・費用などの情報カード（先頭を太字に）
 *   mics-acc    … 詳細ブロック：開閉できる説明
 *   mics-box    … グループ／段落：グレーの囲み
 * ============================================================ */
.post_content p.mics-lead,
p.mics-lead {
	margin: 0 0 8px !important;
	font-size: 16px;
	line-height: 2;
	color: #3e3e3b;
}

.post_content p.mics-cta,
p.mics-cta {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 20px 0 !important;
}
p.mics-cta a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 0 28px;
	border-radius: 999px;
	background: #222222;
	color: #ffffff !important;
	font-weight: 700;
	text-decoration: none !important;
	transition: opacity 0.2s;
}
p.mics-cta a + a {
	background: #ffffff;
	color: #222222 !important;
	border: 1.5px solid #222222;
}
p.mics-cta a:hover {
	opacity: 0.8;
}

/* STEP カード */
.post_content ol.mics-steps,
ol.mics-steps {
	counter-reset: mics-step;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 16px;
	list-style: none !important;
	margin: 0 0 24px !important;
	padding: 0 !important;
	border: none !important;
	background: none !important;
}
.post_content ol.mics-steps > li,
ol.mics-steps > li {
	position: relative;
	margin: 0 !important;
	padding: 56px 24px 24px !important;
	border: 1px solid #e6e6e3;
	border-radius: 24px;
	background: #ffffff;
	line-height: 1.8;
	font-size: 14px;
	color: #3e3e3b;
}
.post_content ol.mics-steps > li::before,
ol.mics-steps > li::before {
	counter-increment: mics-step;
	content: "STEP " counter(mics-step) !important;
	position: absolute;
	top: 20px;
	left: 24px;
	display: inline-block !important;
	width: auto !important;
	height: auto !important;
	padding: 2px 12px;
	border: none !important;
	border-radius: 999px;
	background: #222222 !important;
	color: #ffffff !important;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.1em;
	line-height: 1.8;
}
ol.mics-steps > li strong {
	display: block;
	margin-bottom: 6px;
	font-size: 17px;
	color: #222222;
}
ol.mics-steps > li a {
	font-weight: 700;
	color: #222222;
}

/* 情報カード */
.post_content ul.mics-facts,
ul.mics-facts {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 12px;
	list-style: none !important;
	margin: 0 0 24px !important;
	padding: 0 !important;
	border: none !important;
	background: none !important;
}
.post_content ul.mics-facts > li,
ul.mics-facts > li {
	margin: 0 !important;
	padding: 18px 20px !important;
	border-radius: 18px;
	background: #f2f2f0;
	font-size: 14px;
	line-height: 1.8;
}
.post_content ul.mics-facts > li::before,
ul.mics-facts > li::before {
	display: none !important;
}
ul.mics-facts > li strong {
	display: block;
	margin-bottom: 4px;
	font-size: 12px;
	letter-spacing: 0.1em;
	color: #6b6b68;
}

/* 開閉 */
.post_content details.mics-acc,
details.mics-acc {
	margin: 0 0 12px !important;
	padding: 0 !important;
	border: 1px solid #e6e6e3 !important;
	border-radius: 20px;
	background: #ffffff;
	overflow: hidden;
}
details.mics-acc > summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	min-height: 60px;
	padding: 14px 22px;
	cursor: pointer;
	list-style: none;
	font-weight: 900;
	font-size: 16px;
}
details.mics-acc > summary::-webkit-details-marker {
	display: none;
}
details.mics-acc > summary::after {
	content: "+";
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: #f2f2f0;
	font-size: 18px;
	font-weight: 500;
	line-height: 1;
}
details.mics-acc[open] > summary::after {
	content: "−";
}
details.mics-acc > :not(summary) {
	margin-left: 22px !important;
	margin-right: 22px !important;
}
details.mics-acc > :last-child {
	margin-bottom: 22px !important;
}

/* グレーの囲み */
.post_content .mics-box,
.mics-box {
	margin: 0 0 16px !important;
	padding: 22px 24px !important;
	border-radius: 20px;
	background: #f2f2f0;
}

/* ============================================================
 * 注目のイベント：スライダー
 * ============================================================ */
.mics-slider {
	position: relative;
}
.mics-slider .mics-picks {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: calc((100% - 48px) / 3);
	grid-template-columns: none;
	gap: 24px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	padding: 4px 2px 16px;
	scrollbar-width: none;
}
.mics-slider .mics-picks::-webkit-scrollbar {
	display: none;
}
.mics-slider .mics-pick {
	scroll-snap-align: start;
}
.mics-slider__nav {
	position: absolute;
	top: -64px;
	right: 0;
	display: flex;
	gap: 8px;
}
.mics-slider.is-static .mics-slider__nav {
	display: none;
}
.mics-slider__btn {
	width: 44px;
	height: 44px;
	border: 1px solid #222222;
	border-radius: 50%;
	background: #ffffff;
	color: #222222;
	font-size: 18px;
	line-height: 1;
	cursor: pointer;
}
.mics-slider__btn:hover:not(:disabled) {
	background: #222222;
	color: #ffffff;
}
.mics-slider__btn:disabled {
	opacity: 0.3;
	cursor: default;
}
@media (max-width: 959px) {
	.mics-slider .mics-picks {
		grid-auto-columns: calc((100% - 24px) / 2);
	}
}
@media (max-width: 599px) {
	/* スマホ：小さめのカードを2枚ちょっと見せて横スワイプ */
	.mics-slider .mics-picks {
		grid-auto-columns: 46%;
		gap: 12px;
		padding-bottom: 8px;
	}
	.mics-slider .mics-pick {
		border-radius: 16px;
	}
	.mics-slider .mics-pick__body {
		gap: 4px;
		padding: 10px 12px 12px;
	}
	.mics-slider .mics-pick__date {
		font-size: 20px;
	}
	.mics-slider .mics-pick__w,
	.mics-slider .mics-pick__head .mics-label {
		padding: 1px 6px;
		font-size: 10px;
	}
	.mics-slider .mics-pick__head {
		flex-wrap: wrap;
		gap: 4px 6px;
	}
	.post_content .mics-slider .mics-pick__title,
	.mics-slider .mics-pick__title {
		font-size: 13px !important;
		line-height: 1.45;
	}
	.mics-slider .mics-pick__meta {
		flex-direction: column;
		gap: 0;
		font-size: 11px;
		line-height: 1.5;
	}
	.mics-slider .mics-pick__desc {
		display: none;
	}
	.mics-slider .mics-pick__btn {
		padding: 10px;
		font-size: 12px;
	}
	.mics-slider__nav {
		top: -54px;
	}
	.mics-slider__btn {
		width: 40px;
		height: 40px;
		font-size: 16px;
	}
}

/* バレーページのお知らせリンク */
.post_content ul.mics-links,
ul.mics-links {
	list-style: none !important;
	margin: 0 0 24px !important;
	padding: 0 !important;
	border: none !important;
	background: none !important;
	border-top: 1px solid #e2e2df !important;
}
.post_content ul.mics-links > li,
ul.mics-links > li {
	margin: 0 !important;
	padding: 0 !important;
	border-bottom: 1px solid #e2e2df;
}
.post_content ul.mics-links > li::before,
ul.mics-links > li::before {
	display: none !important;
}
ul.mics-links > li > a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 12px;
	min-height: 56px;
	padding: 12px 4px;
	color: #222222 !important;
	font-weight: 700;
	text-decoration: none !important;
}
ul.mics-links > li > a::after {
	content: "→";
	flex: 0 0 auto;
}
ul.mics-links > li > a:hover {
	text-decoration: underline !important;
}

/* ============================================================
 * 参加申込カード [mics_entry]
 * ============================================================ */
.mics-entry {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 14px;
}
.mics-entry__card {
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-height: 150px;
	padding: 20px;
	border: 1px solid #e6e6e3;
	border-radius: 20px;
	background: #ffffff;
	box-sizing: border-box;
}
.mics-entry__name {
	font-size: 17px;
	font-weight: 900;
	color: #222222;
}
.mics-entry__desc {
	font-size: 12px;
	line-height: 1.6;
	color: #6b6b68;
}
.mics-entry__links {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 14px;
	margin-top: auto;
	padding-top: 8px;
}
.mics-entry__btn {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 0 18px;
	border-radius: 999px;
	background: #222222;
	color: #ffffff !important;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none !important;
}
.mics-entry__btn:hover {
	opacity: 0.85;
}
.mics-entry__sub {
	font-size: 13px;
	font-weight: 700;
	color: #222222 !important;
}
.post_content p.mics-entry__note,
p.mics-entry__note {
	margin: 14px 0 0 !important;
	font-size: 12px;
	color: #6b6b68;
}
@media (max-width: 599px) {
	.mics-entry {
		grid-template-columns: 1fr 1fr;
		gap: 10px;
	}
	.mics-entry__card {
		min-height: 0;
		padding: 14px;
		border-radius: 16px;
	}
	.mics-entry__name {
		font-size: 15px;
	}
	.mics-entry__btn {
		min-height: 40px;
		padding: 0 14px;
		font-size: 13px;
	}
}

/* パンくずの「ホーム > ホーム」重複を消す */
.mics-under-front .p-breadcrumb__item:nth-child(2) {
	display: none;
}

/* バレー：平日・休日の2つの申込ボタン */
p.mics-cta--pair a + a {
	background: #222222;
	color: #ffffff !important;
	border: 0;
}

/* ------------------------------------------------------------
 * 写真ページ：インスタグラム（Smash Balloon Instagram Feed）
 * ------------------------------------------------------------ */
#sb_instagram .sb_instagram_header {
	display: none !important; /* 上の「インスタグラムを見る」と重なるので隠す */
}
#sb_instagram #sbi_images {
	gap: 8px !important;
}
#sb_instagram .sbi_photo_wrap,
#sb_instagram .sbi_photo {
	border-radius: 10px;
	overflow: hidden;
}
#sb_instagram #sbi_load {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 12px;
	margin-top: 16px;
}
#sb_instagram #sbi_load .sbi_load_btn,
#sb_instagram .sbi_follow_btn a {
	display: inline-flex !important;
	align-items: center;
	min-height: 48px;
	margin: 0 !important;
	padding: 0 26px !important;
	border-radius: 999px !important;
	background: #222222 !important;
	color: #ffffff !important;
	font-weight: 700;
	box-shadow: none !important;
}
#sb_instagram #sbi_load .sbi_load_btn {
	background: #ffffff !important;
	color: #222222 !important;
	border: 1.5px solid #222222 !important;
}
@media (max-width: 959px) {
	#sb_instagram #sbi_images {
		grid-template-columns: repeat(3, 1fr) !important;
	}
}
@media (max-width: 599px) {
	#sb_instagram #sbi_images {
		gap: 4px !important;
	}
	#sb_instagram .sbi_photo_wrap,
	#sb_instagram .sbi_photo {
		border-radius: 6px;
	}
}

/* ============================================================
 * 0.7.0 スポーツの色とアイコン（落ち着いた色）
 * ============================================================ */
.mics-ico {
	display: inline-block;
	margin-right: 6px;
	font-size: 1.05em;
	line-height: 1;
	font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif;
}
/* 絞り込みボタン */
.mics-chip[style*="--sc"] {
	display: inline-flex;
	align-items: center;
	border-color: color-mix(in srgb, var(--sc) 35%, #ffffff);
	background: color-mix(in srgb, var(--sc) 8%, #ffffff);
}
.mics-chip[style*="--sc"]:hover {
	border-color: var(--sc);
}
.mics-chip[style*="--sc"].is-active {
	background: var(--sc);
	border-color: var(--sc);
	color: #ffffff;
}
/* 予定のブロック */
.mics-group.is-sport {
	position: relative;
	overflow: hidden;
	border-color: color-mix(in srgb, var(--sc) 22%, #ffffff);
	background: linear-gradient(180deg, color-mix(in srgb, var(--sc) 9%, #ffffff) 0, #ffffff 64px);
}
.mics-group.is-sport::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 5px;
	background: var(--sc);
}
.mics-schedule .mics-group.is-sport .mics-group__title {
	color: color-mix(in srgb, var(--sc) 75%, #222222);
}
.mics-schedule .mics-group.is-sport .mics-group__title::before {
	display: none;
}
.mics-group.is-sport .mics-ico {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	margin-right: 2px;
	border-radius: 50%;
	background: #ffffff;
	box-shadow: 0 0 0 1.5px color-mix(in srgb, var(--sc) 40%, #ffffff);
	font-size: 16px;
}
.mics-group.is-sport .mics-section__title {
	color: color-mix(in srgb, var(--sc) 60%, #333333);
}
.mics-group.is-sport .mics-row__date {
	color: color-mix(in srgb, var(--sc) 70%, #222222);
}
/* 申込カード */
.mics-entry__card[style*="--sc"] {
	position: relative;
	overflow: hidden;
	border-color: color-mix(in srgb, var(--sc) 25%, #ffffff);
	background: linear-gradient(180deg, color-mix(in srgb, var(--sc) 8%, #ffffff) 0, #ffffff 70%);
}
.mics-entry__card[style*="--sc"]::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 5px;
	background: var(--sc);
}
.mics-entry__card[style*="--sc"] .mics-entry__btn {
	background: var(--sc);
}

/* ============================================================
 * 0.7.0 ヒーロー：左にレポート、右にロゴとフォロワー数
 * ============================================================ */
.mics-hero.is-v2 {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
	align-items: center;
	gap: 48px;
}
.mics-hero.is-v2 .mics-hero__report .mics-report__img {
	aspect-ratio: 4 / 3;
}
.mics-hero__brand {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 18px;
	text-align: center;
}
.post_content p.mics-hero__logo,
p.mics-hero__logo {
	margin: 0 !important;
	padding: 10px;
	border-radius: 36px;
	background: #ffffff;
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.07);
	line-height: 0;
}
.mics-hero__logo img {
	width: clamp(180px, 22vw, 280px);
	height: auto;
	border-radius: 28px;
}
.mics-hero.is-v2 .mics-hero__lead {
	font-size: 13px;
	letter-spacing: 0.18em;
	color: var(--mics-sub);
}
.mics-follow {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	width: 100%;
	max-width: 420px;
}
.mics-follow__item {
	display: grid;
	grid-template-columns: auto 1fr;
	grid-template-rows: auto auto;
	align-items: center;
	column-gap: 10px;
	padding: 14px 16px;
	border-radius: 18px;
	background: #ffffff;
	border: 1px solid #e6e6e3;
	color: #222222 !important;
	text-align: left;
	text-decoration: none !important;
	transition: transform 0.2s, box-shadow 0.2s;
}
.mics-follow__item:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
}
.mics-follow__icon {
	grid-row: 1 / 3;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 12px;
	color: #ffffff;
}
.mics-follow__icon svg {
	width: 24px;
	height: 24px;
}
.mics-follow__item.is-line .mics-follow__icon {
	background: #06c755;
}
.mics-follow__item.is-insta .mics-follow__icon {
	background: linear-gradient(45deg, #f9a03f, #e1306c 50%, #833ab4);
}
.mics-follow__num {
	font-size: 22px;
	font-weight: 800;
	line-height: 1.1;
	font-variant-numeric: tabular-nums;
	letter-spacing: 0.02em;
}
.mics-follow__label {
	font-size: 11px;
	color: var(--mics-sub);
}
.mics-hero.is-v2 .mics-hero__btns {
	justify-content: center;
}
@media (max-width: 899px) {
	.mics-hero.is-v2 {
		grid-template-columns: 1fr;
		gap: 28px;
	}
	.mics-hero__brand {
		order: -1; /* スマホではロゴを先に */
	}
}
@media (max-width: 599px) {
	.mics-hero__logo img {
		width: 170px;
	}
	.mics-follow__item {
		padding: 12px;
		column-gap: 8px;
	}
	.mics-follow__icon {
		width: 34px;
		height: 34px;
	}
	.mics-follow__num {
		font-size: 18px;
	}
	.mics-hero.is-v2 .mics-hero__btns {
		flex-wrap: nowrap;
		width: 100%;
	}
	.mics-hero.is-v2 .mics-hero__btns .mics-btn {
		flex: 1 1 0;
		padding: 0 10px;
		font-size: 14px;
		white-space: nowrap;
	}
	.mics-follow__label {
		font-size: 10px;
		white-space: nowrap;
	}
}

/* ============================================================
 * 0.8.0 下層ページを色とアイコンでポップに（.mics-pop）
 * ============================================================ */
.mics-sc-volley { --sc: #5b7db1; }
.mics-sc-badminton { --sc: #4f9a94; }
.mics-sc-basket { --sc: #c47a4a; }
.mics-sc-soccer { --sc: #5f8f5b; }
.mics-sc-tennis { --sc: #a99a3c; }
.mics-sc-various { --sc: #8b72a8; }
.mics-sc-event { --sc: #b8667c; }

/* 見出しのアイコン（見出しの先頭に <span class="mics-sec__ico">🏐</span>） */
.mics-sec__ico {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 46px;
	height: 46px;
	border-radius: 15px;
	background: color-mix(in srgb, var(--sc, #222222) 14%, #ffffff);
	font-size: 23px;
	line-height: 1;
	font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif;
	align-self: center;
}
.mics-pop h2.mics-sec {
	align-items: center !important;
}
.mics-pop .mics-sec__en {
	color: var(--sc);
}

/* 冒頭の説明 */
.mics-pop .post_content p.mics-lead,
.mics-pop p.mics-lead {
	padding: 4px 0 4px 18px;
	border-left: 4px solid var(--sc);
}
/* 囲み */
.mics-pop .post_content .mics-box,
.mics-pop .mics-box {
	background: color-mix(in srgb, var(--sc) 10%, #ffffff) !important;
	border: 1px solid color-mix(in srgb, var(--sc) 25%, #ffffff) !important;
	border-left: 6px solid var(--sc) !important;
}
/* 情報カード */
.mics-pop .post_content ul.mics-facts > li,
.mics-pop ul.mics-facts > li {
	position: relative;
	overflow: hidden;
	background: #ffffff;
	border: 1px solid color-mix(in srgb, var(--sc) 22%, #ffffff);
	padding-top: 22px !important;
}
.mics-pop ul.mics-facts > li::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 5px;
	background: var(--sc);
}
.mics-pop ul.mics-facts > li strong {
	display: table; /* ラベルの後ろの文章は次の行から */
	margin-bottom: 8px;
	padding: 3px 12px;
	border-radius: 999px;
	background: color-mix(in srgb, var(--sc) 14%, #ffffff);
	color: color-mix(in srgb, var(--sc) 70%, #222222);
	font-size: 13px;
	letter-spacing: 0.04em;
}
/* 開閉 */
.mics-pop .post_content details.mics-acc,
.mics-pop details.mics-acc {
	border-color: color-mix(in srgb, var(--sc) 25%, #ffffff) !important;
}
.mics-pop details.mics-acc > summary::after {
	background: var(--sc);
	color: #ffffff;
}
.mics-pop details.mics-acc[open] > summary {
	background: color-mix(in srgb, var(--sc) 9%, #ffffff);
}
.mics-pop details.mics-acc h3 {
	color: color-mix(in srgb, var(--sc) 75%, #222222) !important;
}
/* リンクをカードに */
.mics-pop .post_content ul.mics-links,
.mics-pop ul.mics-links {
	display: grid;
	gap: 10px;
	border-top: none !important;
}
.mics-pop .post_content ul.mics-links > li,
.mics-pop ul.mics-links > li {
	border-bottom: none;
}
.mics-pop ul.mics-links > li > a {
	padding: 14px 18px;
	border-radius: 18px;
	background: color-mix(in srgb, var(--sc) 9%, #ffffff);
	border: 1px solid color-mix(in srgb, var(--sc) 25%, #ffffff);
	transition: transform 0.2s;
}
.mics-pop ul.mics-links > li > a:hover {
	text-decoration: none !important;
	transform: translateY(-2px);
}
.mics-pop ul.mics-links > li > a::after {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: var(--sc);
	color: #ffffff;
}
/* ボタン */
.mics-pop p.mics-cta a {
	background: var(--sc);
}

/* ============================================================
 * 0.9.0 「MICSって？」ページ用パーツ（ブロックの「追加CSSクラス」）
 *   mics-acro    … 箇条書き：MI・C・S の3枚（先頭を太字に）
 *   mics-stats   … 箇条書き：ひと目でわかる数字（先頭を太字に）
 *   mics-purpose … 番号付きリスト：目的のカード
 *   mics-chips   … 箇条書き：丸いタグ
 *   mics-checks  … 箇条書き：チェック付きリスト
 *   mics-timeline… 箇条書き：年表（先頭の年を太字に）
 *   mics-qa      … グループ：Q&A の囲み（中の見出し3に Q マーク）
 * ============================================================ */
.mics-sc-mics { --sc: #4a6a8a; }

.post_content ul.mics-acro, ul.mics-acro,
.post_content ul.mics-stats, ul.mics-stats,
.post_content ol.mics-purpose, ol.mics-purpose,
.post_content ul.mics-chips, ul.mics-chips,
.post_content ul.mics-checks, ul.mics-checks,
.post_content ul.mics-timeline, ul.mics-timeline {
	list-style: none !important;
	margin: 0 0 24px !important;
	padding: 0 !important;
	border: none !important;
	background: none !important;
}
.post_content ul.mics-acro > li::before,
.post_content ul.mics-stats > li::before,
.post_content ul.mics-chips > li::before,
ul.mics-acro > li::before,
ul.mics-stats > li::before,
ul.mics-chips > li::before {
	display: none !important;
}

/* MI・C・S */
.post_content ul.mics-acro, ul.mics-acro {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
}
.post_content ul.mics-acro > li, ul.mics-acro > li {
	margin: 0 !important;
	padding: 20px 6px 16px !important;
	border-radius: 20px;
	background: color-mix(in srgb, var(--sc, #222222) 9%, #ffffff);
	text-align: center;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.5;
	color: #3e3e3b;
}
ul.mics-acro > li strong {
	display: block;
	margin-bottom: 4px;
	font-size: 36px;
	font-weight: 900;
	line-height: 1.1;
	letter-spacing: 0.04em;
	color: var(--sc, #222222);
}

/* ひと目でわかる数字 */
.post_content ul.mics-stats, ul.mics-stats {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
}
.post_content ul.mics-stats > li, ul.mics-stats > li {
	margin: 0 !important;
	padding: 16px 6px !important;
	border: 1px solid color-mix(in srgb, var(--sc, #222222) 22%, #ffffff);
	border-radius: 18px;
	background: #ffffff;
	text-align: center;
	font-size: 12px;
	line-height: 1.5;
	color: #6b6b68;
}
ul.mics-stats > li strong {
	display: block;
	margin-bottom: 2px;
	font-size: 24px;
	font-weight: 900;
	line-height: 1.3;
	color: #222222;
}

/* 目的 */
.post_content ol.mics-purpose, ol.mics-purpose {
	counter-reset: mics-purpose;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 10px;
}
.post_content ol.mics-purpose > li, ol.mics-purpose > li {
	position: relative;
	margin: 0 !important;
	padding: 18px 18px 18px 64px !important;
	border-radius: 18px;
	background: #ffffff;
	border: 1px solid color-mix(in srgb, var(--sc, #222222) 22%, #ffffff);
	font-size: 16px;
	font-weight: 800;
	line-height: 1.6;
}
.post_content ol.mics-purpose > li::before, ol.mics-purpose > li::before {
	counter-increment: mics-purpose;
	content: "0" counter(mics-purpose) !important;
	position: absolute;
	top: 50%;
	left: 20px;
	transform: translateY(-50%);
	display: block !important;
	width: auto !important;
	height: auto !important;
	border: none !important;
	background: none !important;
	color: var(--sc, #222222) !important;
	font-size: 22px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.02em;
}

/* 丸いタグ */
.post_content ul.mics-chips, ul.mics-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
.post_content ul.mics-chips > li, ul.mics-chips > li {
	margin: 0 !important;
	padding: 8px 16px !important;
	border-radius: 999px;
	background: color-mix(in srgb, var(--sc, #222222) 9%, #ffffff);
	border: 1px solid color-mix(in srgb, var(--sc, #222222) 22%, #ffffff);
	color: color-mix(in srgb, var(--sc, #222222) 70%, #222222);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.5;
}

/* チェック付きリスト */
.post_content ul.mics-checks, ul.mics-checks {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 10px;
}
.post_content ul.mics-checks > li, ul.mics-checks > li {
	position: relative;
	margin: 0 !important;
	padding: 14px 16px 14px 50px !important;
	border-radius: 16px;
	background: #ffffff;
	border: 1px solid #e6e6e3;
	font-size: 14px;
	line-height: 1.7;
}
.post_content ul.mics-checks > li::before, ul.mics-checks > li::before {
	content: "✓" !important;
	position: absolute;
	top: 14px;
	left: 14px;
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 24px !important;
	height: 24px !important;
	border: none !important;
	border-radius: 50%;
	background: var(--sc, #222222) !important;
	color: #ffffff !important;
	font-size: 13px;
	font-weight: 800;
	line-height: 1;
}

/* 年表 */
.post_content ul.mics-timeline, ul.mics-timeline {
	padding-left: 8px !important;
}
.post_content ul.mics-timeline > li, ul.mics-timeline > li {
	position: relative;
	margin: 0 !important;
	padding: 0 0 26px 28px !important;
	border-left: 2px solid color-mix(in srgb, var(--sc, #222222) 28%, #ffffff);
	font-size: 14px;
	line-height: 1.9;
	color: #3e3e3b;
}
.post_content ul.mics-timeline > li:last-child, ul.mics-timeline > li:last-child {
	padding-bottom: 0 !important;
	border-left-color: transparent;
}
.post_content ul.mics-timeline > li::before, ul.mics-timeline > li::before {
	content: "" !important;
	position: absolute;
	top: 3px;
	left: -9px;
	display: block !important;
	width: 16px !important;
	height: 16px !important;
	border-radius: 50%;
	background: var(--sc, #222222) !important;
	border: 3px solid #ffffff !important;
	box-shadow: 0 0 0 2px color-mix(in srgb, var(--sc, #222222) 28%, #ffffff);
}
ul.mics-timeline > li strong {
	display: block;
	margin-bottom: 4px;
	font-size: 18px;
	font-weight: 900;
	line-height: 1.4;
	color: var(--sc, #222222);
}

/* Q&A の囲み */
.post_content .mics-qa h3, .mics-qa h3 {
	position: relative;
	margin: 0 0 12px !important;
	padding: 0 0 0 42px !important;
	border: none !important;
	background: none !important;
	font-size: 17px !important;
	line-height: 1.7 !important;
}
.post_content .mics-qa h3::before, .mics-qa h3::before {
	content: "Q" !important;
	position: absolute;
	top: 0;
	left: 0;
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 30px !important;
	height: 30px !important;
	border: none !important;
	border-radius: 50%;
	background: var(--sc, #222222) !important;
	color: #ffffff !important;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	transform: none !important;
}
.post_content .mics-qa h3::after, .mics-qa h3::after {
	content: none !important;
	display: none !important;
}
.post_content .mics-qa p, .mics-qa p {
	font-size: 15px;
	line-height: 1.9;
}
.post_content .mics-qa > :last-child,
.mics-qa > :last-child,
.mics-qa .wp-block-group__inner-container > :last-child {
	margin-bottom: 0 !important;
}

@media (max-width: 599px) {
	ul.mics-acro > li strong { font-size: 30px; }
	ul.mics-stats > li { font-size: 11px; padding: 14px 4px !important; }
	ul.mics-stats > li strong { font-size: 19px; }
	.post_content ol.mics-purpose > li, ol.mics-purpose > li { padding: 16px 16px 16px 58px !important; }
	.post_content ul.mics-checks, ul.mics-checks { grid-template-columns: 1fr; }
	.post_content .mics-qa p, .mics-qa p { font-size: 14px; }
}

/* 0.9.2 開閉の中の囲みは左右にすき間 */
.post_content details.mics-acc > .mics-box,
details.mics-acc > .mics-box {
	margin: 0 22px 16px !important;
	padding: 18px 20px !important;
}
.post_content details.mics-acc > .mics-box:last-child,
details.mics-acc > .mics-box:last-child {
	margin-bottom: 22px !important;
}
@media (max-width: 599px) {
	.post_content details.mics-acc > .mics-box,
	details.mics-acc > .mics-box {
		margin: 0 14px 16px !important;
		padding: 14px 16px !important;
	}
	.post_content details.mics-acc > .mics-box:last-child,
	details.mics-acc > .mics-box:last-child {
		margin-bottom: 16px !important;
	}
}

/* 0.9.3 色付きページの STEP カード・ボタン・リンク */
.mics-pop .post_content ol.mics-steps > li,
.mics-pop ol.mics-steps > li {
	border-color: color-mix(in srgb, var(--sc) 22%, #ffffff);
	overflow: hidden;
}
.mics-pop ol.mics-steps > li::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 5px;
	background: var(--sc);
}
.mics-pop .post_content ol.mics-steps > li::before,
.mics-pop ol.mics-steps > li::before {
	background: var(--sc) !important;
}
.mics-pop ol.mics-steps > li a,
.mics-pop .mics-box a,
.mics-pop ul.mics-facts > li a {
	color: color-mix(in srgb, var(--sc) 80%, #222222) !important;
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 3px;
}
.mics-pop p.mics-cta a + a {
	background: #ffffff;
	color: var(--sc) !important;
	border-color: var(--sc);
}
@media (max-width: 599px) {
	.mics-pop p.mics-cta a {
		flex: 1 1 100%;
	}
}

/* 0.9.7 公式LINEのボタンは LINE の緑 */
p.mics-cta a[href*="lin.ee"],
p.mics-cta a[href*="line.me"],
.mics-pop p.mics-cta a[href*="lin.ee"],
.mics-pop p.mics-cta a[href*="line.me"] {
	background: #06c755 !important;
	border-color: #06c755 !important;
	color: #ffffff !important;
}

/* ============================================================
 * 1.0.0 スポーツ別ページ
 * ============================================================ */
.mics-sc-pickle { --sc: #3f8fae; }
.mics-sc-hiking { --sc: #8a6a48; }
.mics-sc-baseball { --sc: #b0574d; }

/* ページ上の写真（画像ブロックに「mics-photo」クラス） */
.post_content figure.mics-photo,
figure.mics-photo {
	margin: 0 0 28px !important;
}
.post_content figure.mics-photo img,
figure.mics-photo img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 10;
	object-fit: cover;
	border-radius: 24px;
}
/* 写真を2枚並べる（ギャラリーに「mics-photos」クラス） */
.post_content .mics-photos,
.mics-photos {
	display: grid !important;
	grid-template-columns: 1fr 1fr;
	gap: 10px !important;
	margin: 0 0 28px !important;
}
.mics-photos figure {
	margin: 0 !important;
	width: auto !important;
}
.mics-photos img {
	width: 100% !important;
	height: 100% !important;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: 18px;
}
@media (max-width: 599px) {
	.post_content figure.mics-photo img,
	figure.mics-photo img {
		border-radius: 18px;
	}
	.mics-photos {
		grid-template-columns: 1fr;
	}
}
/* 1つのスポーツだけの予定：絞り込みボタンは出さない */
.mics-schedule.is-only .mics-filter {
	display: none;
}

/* 1.0.2 数字カードの LINE・インスタのアイコン（[mics_icon]） */
.mics-stat-ico {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	margin: 0 auto 6px;
	border-radius: 9px;
	color: #ffffff;
	vertical-align: middle;
}
ul.mics-stats > li .mics-stat-ico {
	display: flex;
}
.mics-stat-ico svg {
	width: 18px;
	height: 18px;
}
.mics-stat-ico.is-line {
	background: #06c755;
}
.mics-stat-ico.is-insta {
	background: linear-gradient(45deg, #f9a03f, #e1306c 50%, #833ab4);
}

/* 1.0.4 予定の絞り込みボタンは折り返して全部見せる */
.mics-filter {
	flex-wrap: wrap;
	overflow-x: visible;
	padding-bottom: 0;
}
/* 色付きページの2つ目のボタン（休日のバレーなど）に枠線 */
.mics-pop p.mics-cta a + a {
	border: 1.5px solid var(--sc) !important;
}
/* インスタグラムのボタンはインスタの色 */
p.mics-cta a[href*="instagram.com"] {
	background: linear-gradient(45deg, #f9a03f, #e1306c 50%, #833ab4) !important;
	border: 0 !important;
	color: #ffffff !important;
}
/* 数字カードの MICS ロゴ */
.mics-stat-ico.is-logo {
	overflow: hidden;
	background: #ffffff;
	border: 1px solid #e6e6e3;
}
.mics-stat-ico.is-logo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* 1.0.5 ボタンの文字は真ん中。スマホでは横いっぱい */
p.mics-cta a {
	text-align: center;
}
@media (max-width: 599px) {
	.post_content p.mics-cta a,
	p.mics-cta a {
		flex: 1 1 100%;
		padding: 0 20px;
	}
}

/* 1.0.6 インスタの埋め込み：フォローボタンをインスタの色、読み込みボタンはそれに合わせた枠線 */
#sb_instagram .sbi_follow_btn a,
#sb_instagram #sbi_load .sbi_follow_btn a {
	background: linear-gradient(45deg, #f9a03f, #e1306c 50%, #833ab4) !important;
	color: #ffffff !important;
	border: 0 !important;
}
#sb_instagram #sbi_load .sbi_load_btn {
	background: #ffffff !important;
	color: #c13584 !important;
	border: 1.5px solid #e1306c !important;
}

/* 1.0.8 囲みの中の小見出しとボタン（代表についてページなど） */
.post_content .mics-box h3,
.mics-box h3 {
	margin: 0 0 10px !important;
	padding: 0 !important;
	border: none !important;
	background: none !important;
	font-size: 17px !important;
	line-height: 1.6 !important;
	color: #222222;
}
.post_content .mics-box h3::before,
.post_content .mics-box h3::after,
.mics-box h3::before,
.mics-box h3::after {
	content: none !important;
	display: none !important;
}
.mics-pop .mics-box h3 {
	color: color-mix(in srgb, var(--sc) 75%, #222222);
}
.mics-pop .mics-box p.mics-cta a,
.mics-pop .post_content .mics-box p.mics-cta a {
	color: #ffffff !important;
	text-decoration: none !important;
}
.mics-box p.mics-cta {
	margin: 14px 0 0 !important;
}

/* ============================================================
 * 1.0.9 ブログページ [mics_blog]
 * ============================================================ */
.mics-blog .mics-sec:first-child {
	margin-top: 24px !important;
}
.mics-bcards {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	gap: 20px;
}
.mics-bcard {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid #e6e6e3;
	border-radius: 18px;
	background: #ffffff;
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.05);
	color: #222222 !important;
	text-decoration: none !important;
}
.mics-bcard__img {
	display: block;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: #f2f2f0;
}
.mics-bcard__img img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.mics-bcard__body {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 14px 16px 18px;
}
.mics-bcard__date,
.mics-blist__date {
	color: #6b6b68;
	font-size: 12px;
	font-weight: 700;
	font-variant-numeric: tabular-nums;
}
.mics-bcard__title {
	font-size: 16px;
	font-weight: 900;
	line-height: 1.5;
}
.mics-bcard__desc {
	color: #6b6b68;
	font-size: 13px;
	line-height: 1.6;
}
.post_content ul.mics-blist,
ul.mics-blist {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	border-top: 1px solid #e2e2df;
}
.post_content ul.mics-blist > li,
ul.mics-blist > li {
	margin: 0 !important;
	padding: 0 !important;
	border-bottom: 1px solid #e2e2df;
}
.post_content ul.mics-blist > li::before,
ul.mics-blist > li::before {
	content: none !important;
}
.mics-blist a {
	display: flex;
	align-items: center;
	gap: 14px;
	min-height: 64px;
	padding: 12px 4px;
	color: #222222 !important;
	text-decoration: none !important;
}
.mics-blist__img {
	flex: 0 0 64px;
	width: 64px;
	height: 64px;
	overflow: hidden;
	border-radius: 10px;
	background: #f2f2f0;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 10px;
	color: #6b6b68;
}
.mics-blist__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.mics-blist__body {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}
.mics-blist__title {
	font-size: 15px;
	font-weight: 700;
	line-height: 1.5;
}
@media (max-width: 599px) {
	.mics-bcards {
		grid-template-columns: 1fr;
		gap: 16px;
	}
}

/* ============================================================
 * 1.0.11 YouTube（押すまではサムネイルだけ）
 * ============================================================ */
.mics-yt {
	position: relative;
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 12px;
	overflow: hidden;
	background: #000000;
	cursor: pointer;
}
.wp-has-aspect-ratio .wp-block-embed__wrapper > .mics-yt {
	position: absolute;
	inset: 0;
	aspect-ratio: auto;
	height: 100%;
}
.mics-yt img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.mics-yt__play {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 68px;
	height: 48px;
	transform: translate(-50%, -50%);
	border-radius: 14px;
	background: #ff0033;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.3);
}
.mics-yt__play::after {
	content: "";
	position: absolute;
	left: 27px;
	top: 14px;
	border-style: solid;
	border-width: 10px 0 10px 17px;
	border-color: transparent transparent transparent #ffffff;
}
.mics-yt__title {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	padding: 10px 12px 24px;
	background: linear-gradient(rgba(0, 0, 0, 0.65), rgba(0, 0, 0, 0));
	color: #ffffff;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.4;
	text-align: left;
}
.mics-yt__frame {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	border: 0;
	border-radius: 12px;
}

/* ============================================================
 * 1.0.12 動画の横スライダー [mics_youtube]
 * ============================================================ */
.mics-vslider {
	display: flex;
	gap: 14px;
	margin: 24px 0;
	padding: 2px 0 12px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
}
.mics-vslider__item {
	flex: 0 0 85%;
	min-width: 0;
	scroll-snap-align: start;
}
.mics-vslider__item:only-child {
	flex-basis: 100%;
}
@media (min-width: 600px) {
	.mics-vslider__item {
		flex-basis: 48%;
	}
}

/* 記事の一番上の日付（開催日／公開日） */
.post_content p.mics-postdate,
p.mics-postdate {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 24px !important;
	padding: 6px 14px 6px 6px;
	border-radius: 999px;
	background: #f2f2f0;
	color: #222222;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.4;
}
.mics-postdate__label {
	padding: 3px 10px;
	border-radius: 999px;
	background: #222222;
	color: #ffffff;
	font-size: 12px;
}

/* 注目のイベント：開催日が複数あるときの日付一覧 */
.post_content p.mics-pick__dates,
p.mics-pick__dates {
	margin: 0 !important;
	color: #6b6b68;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.5;
}

/* ============================================================
 * 1.0.16 注目のイベント：まだ先にカードがあることが分かるように
 *  ・次のカードが少し見える ・右端をぼかす ・位置が分かるバー
 * ============================================================ */
.mics-slider {
	position: relative;
}
@media (min-width: 960px) {
	.mics-slider .mics-picks {
		grid-auto-columns: calc((100% - 72px) / 3.3);
	}
}
@media (min-width: 600px) and (max-width: 959px) {
	.mics-slider .mics-picks {
		grid-auto-columns: calc((100% - 24px) / 2.3);
	}
}
.mics-slider::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 26px;
	width: 56px;
	background: linear-gradient(to right, rgba(255, 255, 255, 0), var(--color_bg, #ffffff));
	pointer-events: none;
	transition: opacity 0.2s;
}
.mics-slider.is-end::after,
.mics-slider.is-static::after {
	opacity: 0;
}
.mics-slider__bar {
	position: relative;
	height: 4px;
	margin: 14px auto 0;
	max-width: 240px;
	border-radius: 2px;
	background: #e2e2df;
	overflow: hidden;
}
.mics-slider__bar span {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	border-radius: 2px;
	background: #222222;
	transition: left 0.15s, width 0.15s;
}
.mics-slider.is-static .mics-slider__bar {
	display: none;
}

/* 1.0.17 →←ボタンを見出しより手前に（見出しの枠がかぶってクリックできなかった）／マウスでつかんで動かす */
.mics-slider__nav {
	z-index: 5;
}
.mics-slider .mics-picks {
	cursor: grab;
}
.mics-slider .mics-picks.is-drag {
	cursor: grabbing;
	scroll-snap-type: none;
	user-select: none;
}
.mics-slider .mics-picks img {
	-webkit-user-drag: none;
}

/* 1.0.19 応募フォーム移行中の注意書き */
.mics-entry-notice {
	margin: 0 0 18px;
	padding: 14px 16px;
	background: #fff4e5;
	border: 2px solid #f0a53c;
	border-radius: 14px;
}
.post_content p.mics-entry-notice__text,
p.mics-entry-notice__text {
	margin: 0 !important;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.7;
	color: #222222;
}
.post_content p.mics-entry-notice__line,
p.mics-entry-notice__line {
	margin: 10px 0 0 !important;
}
.mics-entry-notice__line a {
	display: inline-block;
	padding: 8px 18px;
	border-radius: 999px;
	background: #06c755;
	color: #ffffff !important;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none !important;
}
