/* =========================================================
   KOREMIYO
   ========================================================= */


/* =========================================================
   01. Base
   ========================================================= */

.kmy-site-body {
	background-image: none;
}


/* =========================================================
   02. Common Header
   ========================================================= */

.kmy-site-body .kmy-header {
	position: relative;
	overflow: hidden;

	width: 100%;
	min-height: 380px;

	margin: 0;
	padding: 0;

	/* general.css の旧ヘッダー装飾を解除 */
	border-top: 0;
	box-shadow: none;

	background-color: var(--kmy-header-color, #9ccfcf);

	/* ヘッダー下端のカーブ */
	border-radius:
		0 0 50% 50%
		/
		0 0 18% 18%;
}


.kmy-site-body .kmy-header__pattern {
	display: flex;
	align-items: flex-start;
	justify-content: center;

	min-height: 380px;

	padding:
		74px
		24px
		110px;

	background-image:
		url("/wp/wp-content/uploads/2026/09/koremiyo-top-header-bg.webp");

	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}


/* Logo */

.kmy-site-body .kmy-header__logo {
	position: relative;
	z-index: 1;

	margin: 0;
	padding: 0;

	line-height: 1;
}


.kmy-site-body .kmy-header__logo a {
	display: block;
}


.kmy-site-body .kmy-header__logo .logo {
	display: block;

	width: clamp(230px, 24vw, 340px);
	max-width: none;
	height: auto;

	margin: 0 auto;
}

.kmy-site-body .kmy-header__inner {
	display: flex;
	flex-direction: column;

	align-items: center;

	width: min(620px, 100%);
}


.kmy-site-body .kmy-header__copy {
	display: block;

	width: min(460px, 70vw);

	margin-top: 20px;
}


.kmy-site-body .kmy-header__copy img {
	display: block;

	width: 100%;
	max-width: 100%;
	height: auto;

	margin: 0 auto;
}
/* =========================================================
   03. Home - Base
   ========================================================= */

.kmy-page-home {
	background-image:
		url("/wp/wp-content/uploads/2026/09/main-bg.webp");

	background-repeat: repeat-y;
	background-position: center top;
	background-size: 100% auto;
}


.kmy-page-home .kmy-content-shell,
.kmy-page-home .kmy-content {
	width: 100%;

	margin: 0;
	padding: 0;

	background: transparent;
}


.kmy-page-home #primary.kmy-home {
	float: none;

	width: 100%;
	max-width: none;

	margin: 0;
	padding: 0;
}
.kmy-home__inner {
	width: min(900px, calc(100% - 48px));

	margin: 0 auto;

	padding:
		24px
		0
		100px;
}


/* =========================================================
   04. Home - About
   ========================================================= */

.kmy-about {
	position: relative;

	width: 100%;
	max-width: none;

	margin:
		-64px
		auto
		44px;

	padding:
		48px
		38px
		30px;

	background: #fff;

	border: 2px solid #222;
	border-radius: 16px;

	box-shadow:
		5px 5px 0
		rgba(226, 232, 51, 0.45);
}


.kmy-about__title {
	position: absolute;

	top: -24px;
	left: 50%;

	display: flex;
	align-items: center;
	justify-content: center;

	width: min(420px, 78%);
	min-height: 48px;

	margin: 0;

	padding:
		4px
		20px;

	transform: translateX(-50%);

	background: #e5ee1c;

	border: 2px solid #222;
	border-radius: 12px;

	color: #111;

	font-size: 20px;
	font-weight: 700;
	line-height: 1.2;

	text-align: center;
}


.kmy-about__body {
	display: grid;

	grid-template-columns:
		minmax(0, 1fr)
		190px;

	gap: 32px;

	align-items: center;
}


.kmy-about__text {
	text-align: left;
}


.kmy-about__text p {
	margin: 0;

	font-size: 14px;
	line-height: 1.8;
}


.kmy-about__text p + p {
	margin-top: 18px;
}


.kmy-about__character {
	text-align: center;
}


.kmy-about__character img {
	display: block;

	width: 100%;
	max-width: 190px;
	height: auto;

	margin: 0 auto;
}


/* =========================================================
   05. Home - Section Title
   ========================================================= */

.kmy-home__section-title {
	margin:
		0
		0
		42px;

	padding: 0;

	color: #333;

	font-size: 30px;
	font-weight: 700;
	line-height: 1.4;

	text-align: center;

	text-shadow:
		1px 1px 0 #fff,
		-1px 1px 0 #fff,
		1px -1px 0 #fff,
		-1px -1px 0 #fff;
}


/* =========================================================
   06. Home - Channel Cards
   ========================================================= */

.kmy-channel-list {
	display: grid;

	gap: 72px;
}


.kmy-channel-card {
	--kmy-accent: #c92f34;

	position: relative;

	padding:
		58px
		60px
		34px;

	background: #fff;

	border: 2px solid #222;
	border-radius: 16px;

	/*
	 * ACF指定色
	 * 透過85% = 不透明度15%
	 */
	box-shadow:
		7px 7px 0
		color-mix(
			in srgb,
			var(--kmy-accent) 85%,
			transparent
		);
}


.kmy-channel-card__month {
	position: absolute;

	top: -22px;
	left: 50%;

	width: min(430px, 70%);

	margin: 0;

	padding:
		9px
		20px;

	transform: translateX(-50%);

	background: var(--kmy-accent);

	border: 2px solid #222;
	border-radius: 12px;

	color: #fff;

	font-size: 24px;
	font-weight: 700;
	line-height: 1.2;

	text-align: center;
}


.kmy-channel-card__month span {
	font-size: inherit;
}


.kmy-channel-card__name {
	margin:
		0
		0
		20px;

	padding: 0;

	color: #222;

	font-size: 16px;
	font-weight: 700;
	line-height: 1.5;

	text-align: center;
}


.kmy-channel-card__logo {
	margin-bottom: 34px;

	text-align: center;
}


.kmy-channel-card__logo a {
	display: inline-block;
}


.kmy-channel-card__logo img {
	display: block;

	width: auto;
	max-width: 280px;
	height: 105px;
	max-height: none;

	margin: 0 auto;

	object-fit: contain;
}

/* =========================================================
   07. Home - Prizes
   ========================================================= */

.kmy-prizes {
	display: grid;

	grid-template-columns:
		repeat(2, minmax(0, 1fr));

	gap: 48px;

	align-items: start;

	margin-top: 18px;
}


.kmy-prizes--single {
	grid-template-columns:
		minmax(0, 420px);

	justify-content: center;
}


.kmy-prize {
	min-width: 0;

	text-align: left;
}


.kmy-prize__image {
	margin-bottom: 12px;

	text-align: center;
}


.kmy-prize__image img {
	display: block;

	width: 100%;
	max-width: 100%;
	max-height: 430px;
	height: auto;

	margin: 0 auto;

	object-fit: contain;
}


.kmy-prize__caption {
	margin:
		6px
		0
		12px;

	color: #555;

	font-size: 11px;
	line-height: 1.5;

	text-align: right;
}


.kmy-prize__name {
	margin: 0;

	color: #ef665c;

	font-size: 20px;
	font-weight: 700;
	line-height: 1.4;
}


.kmy-prize__meta {
	display: flex;

	gap: 16px;

	align-items: flex-start;
	justify-content: space-between;

	margin-top: 2px;
}


.kmy-prize__description {
	flex: 1;

	margin: 0;

	color: #222;

	font-size: 16px;
	line-height: 1.55;
}


.kmy-prize__number {
	flex: 0 0 auto;

	margin: 0;

	color: #ef665c;

	font-size: 15px;
	line-height: 1.5;

	white-space: nowrap;
}


/* PC：月別カード内部レイアウト */
@media screen and (min-width: 641px) {

	/* チャンネル名からロゴまでの間隔 */
	.kmy-page-home .kmy-channel-card__name {
		margin-bottom: 14px;
	}

	/* ロゴから賞品エリアまでの間隔 */
	.kmy-page-home .kmy-channel-card__logo {
		margin-bottom: 18px;
	}

	/* A賞・B賞の横間隔と賞品エリア上部余白 */
	.kmy-page-home .kmy-prizes {
		gap: 32px;
		margin-top: 8px;
	}

	/* 賞品画像から賞品名までの間隔 */
	.kmy-page-home .kmy-prize__image {
		margin-bottom: 8px;
	}

	/* 賞品説明の下に当選人数を右揃え */
	.kmy-page-home .kmy-prize__meta {
		display: block;
	}

	.kmy-page-home .kmy-prize__number {
		margin-top: 6px;

		text-align: right;
	}

	/* 賞品情報から応募エリアまでを少し圧縮 */
	.kmy-page-home .kmy-apply {
		margin-top: 34px;
		padding-top: 20px;
	}

}


.kmy-prize__extra {
	margin:
		8px
		0
		0;

	color: #444;

	font-size: 12px;
	line-height: 1.6;
}


/* =========================================================
   08. Home - Application
   ========================================================= */

.kmy-apply {
	margin-top: 42px;

	padding:
		28px
		0
		0;

	border-top:
		1px
		dashed
		var(--kmy-accent);

	text-align: center;
}


.kmy-apply__label {
	margin:
		0
		0
		6px;

	color: #333;

	font-size: 14px;
	line-height: 1.5;
}


.kmy-apply__date {
	margin:
		0
		0
		16px;

	color: #ef665c;

	font-size: 19px;
	line-height: 1.5;
}


.kmy-apply__date .fa {
	margin-right: 6px;
}


.kmy-apply__button {
	display: inline-block;

	width: min(520px, 92%);

	padding:
		16px
		28px;

	background: #f3f3f3;

	border: 1px solid #777;
	border-radius: 9px;

	color: #ef665c;

	font-size: 17px;
	line-height: 1.4;

	text-align: center;
	text-decoration: none;

	transition:
		background-color 0.2s ease,
		border-color 0.2s ease;
}

.kmy-apply__button:hover {
	background: #fff;

	border-color: #ef665c;

	color: #ef665c;
}


.kmy-apply__button .fa {
	margin-left: 6px;
}


.kmy-channel-link {
	position: relative;

	display: inline-block;

	width: min(500px, 92%);

	margin-top: 16px;

	padding:
		14px
		54px
		14px
		24px;

	background: #fffca1;

	border-radius: 999px;

	color: #333;

	font-size: 14px;
	font-weight: 700;
	line-height: 1.4;

	text-align: center;
	text-decoration: none;
}


.kmy-channel-link::after {
	content: "";

	position: absolute;
	top: 50%;
	right: 18px;

	width: 22px;
	height: 22px;

	transform: translateY(-50%);

	background:
		url("/wp/wp-content/uploads/2026/09/arrow-double.webp")
		center / contain
		no-repeat;

	pointer-events: none;
}


.kmy-channel-link:hover {
	background: #fff96a;

	color: #333;
}


/* =========================================================
   09. Home - Coming Soon
   ========================================================= */

.kmy-coming {
	text-align: center;
}


.kmy-coming__image {
	display: block;

	width: min(400px, 90%);
	height: auto;

	margin:
		20px
		auto
		28px;
}


.kmy-coming__date {
	margin:
		6px
		0
		18px;

	color: #ef665c;

	font-size: 19px;
}


/* =========================================================
   10. Home - Past Channels
   ========================================================= */

.kmy-past {
	margin-top: 90px;
}


.kmy-past__text {
	max-width: 850px;

	margin: 0 auto;

	color: #222;

	font-size: 14px;
	line-height: 1.75;

	text-align: left;
}


.kmy-past__text p {
	margin: 0;
}


/* =========================================================
   11. Home - Information
   ========================================================= */

.kmy-info {
	margin:
		68px
		auto
		56px;

	text-align: center;
}


.kmy-info picture,
.kmy-info img {
	display: block;
}


.kmy-info img {
	width: min(650px, 100%);
	height: auto;

	margin: 0 auto;
}


/* =========================================================
   12. Home - Partner Stations
   ========================================================= */

.kmy-partners {
	margin-top: 42px;

	text-align: center;
}


.kmy-partners__title {
	margin:
		0
		0
		24px;

	color: #222;

	font-size: 13px;
	font-weight: 400;
	line-height: 1.5;
}


.kmy-partners__logos {
	display: grid;

	grid-template-columns:
		repeat(4, minmax(0, 1fr));

	gap: 12px;

	max-width: 760px;

	margin: 0 auto;
	padding: 0;

	list-style: none;
}


.kmy-partners__logos li {
	margin: 0;
	padding: 0;
}


.kmy-partners__logos a {
	display: flex;

	align-items: center;
	justify-content: center;

	min-height: 88px;

	padding: 10px;

	background:
		rgba(255, 255, 255, 0.82);
}


.kmy-partners__logos img {
	display: block;

	width: auto;
	max-width: 100%;
	max-height: 62px;
	height: auto;

	margin: 0 auto;
}
/* =========================================================
   Program Pages
   ========================================================= */

/*
 * おすすめ番組投稿共通
 * TOPには適用しない
 */

.kmy-site-body .kmy-content-shell:has(.program) {
	width: 100%;

	background-image:
		url("/wp/wp-content/uploads/2026/09/main-bg.webp");

	background-repeat: repeat-y;
	background-position: center top;
	background-size: 100% auto;
}


.kmy-site-body .kmy-content:has(.program),
.kmy-site-body .kmy-content:has(.program) #primary,
.kmy-site-body .kmy-content:has(.program) #wrap {
	float: none;

	width: 100%;
	max-width: none;

	margin: 0;
	padding: 0;

	background: transparent;
}


.kmy-site-body .program {
	position: relative;
	z-index: 2;

	width: 100%;
	max-width: none;

	margin:
		-64px
		auto
		0;

	padding:
		0
		24px
		100px;

	box-sizing: border-box;
}


.kmy-site-body .program article {
	width: 100%;
	max-width: none;

	margin: 0;
	padding: 0;

	background: transparent;
}


.kmy-site-body .program .entry-header,
.kmy-site-body .program .entry-content {
	width: 100%;
	max-width: none;

	margin: 0 auto;
	padding-left: 0;
	padding-right: 0;
}


/* ---------------------------------------------------------
   Post Title + Channel Introduction
   --------------------------------------------------------- */

/*
 * kmy-program-intro を持たない投稿用。
 * 従来の通常タイトル表示を維持する。
 */
.kmy-site-body .program article > .entry-header {
	position: relative;
	z-index: 2;

	display: flex;
	align-items: center;
	justify-content: center;

	width: min(900px, 100%);
	min-height: 64px;

	margin:
		0
		auto
		-64px;

	padding:
		0
		38px;

	background: transparent !important;

	border: 0 !important;
	border-radius: 0 !important;

	box-shadow: none !important;

	box-sizing: border-box;
}


.kmy-site-body
.program
article > .entry-header
.entry-title {
	position: static;

	margin: 0 !important;
	padding: 0 !important;

	background: transparent !important;

	border: 0 !important;
	box-shadow: none !important;

	color: #111;

	font-size: 30px;
	font-weight: 700;
	line-height: 1.4;

	text-align: center;
}


/*
 * おすすめ番組ページのタイトル帯
 */
.kmy-site-body .program .kmy-program-intro__header {
	position: absolute;
	z-index: 3;

	top: -26px;
	left: 50%;

	display: flex;
	align-items: center;
	justify-content: center;

	width: min(800px, calc(100% - 48px));
	min-height: 52px;

	margin: 0;
	padding:
		8px
		28px;

	transform: translateX(-50%);

	background: #f3f51f;

	border:
		2px
		solid
		#222;

	border-radius: 15px;

	box-sizing: border-box;
}


.kmy-site-body .program .kmy-program-intro__title {
	margin: 0 !important;
	padding: 0 !important;

	background: transparent !important;

	border: 0 !important;
	box-shadow: none !important;

	color: #111;

	font-size: 20px;
	font-weight: 700;
	line-height: 1.35;

	text-align: center;
}


.kmy-site-body .program .entry-header::before,
.kmy-site-body .program .entry-header::after,
.kmy-site-body .program .entry-title::before,
.kmy-site-body .program .entry-title::after {
	content: none !important;
	display: none !important;
}


.kmy-site-body .program .entry-content {
	margin-top: 0;
}


.kmy-site-body .program .kmy-program-intro {
	position: relative;
	z-index: 1;

	width: min(900px, 100%);

	margin:
		0
		auto;

	padding:
	48px
	38px
	34px;

	background: #fff;

	border:
		2px
		solid
		#222;

	border-radius: 16px;

	box-shadow:
		7px
		7px
		0
		rgba(226, 232, 51, 0.72);

	box-sizing: border-box;
}


.kmy-site-body
.program
.kmy-program-intro
> .wp-block-group__inner-container {
	display: grid;

	grid-template-columns:
		220px
		minmax(0, 1fr);

	gap: 34px;

	align-items: center;

	width: 100%;
	max-width: none;

	margin: 0;
	padding: 0;
}


.kmy-site-body .program .kmy-program-intro figure {
	margin: 0;

	text-align: center;
}


.kmy-site-body .program .kmy-program-intro figure img {
	display: block;

	width: 220px !important;
	max-width: 100%;
	height: auto !important;

	margin: 0 auto;

	object-fit: contain;
}


.kmy-site-body .program .kmy-program-intro p {
	margin: 0;

	color: #222;

	font-size: 14px;
	line-height: 1.8;
	
	text-align: left;
}


/* ---------------------------------------------------------
   "おすすめ番組" Headline Image
   --------------------------------------------------------- */

.kmy-site-body .program .kmy-program-section-title {
	width: min(900px, 100%);

	margin:
		72px
		auto
		48px;

	text-align: center;
}


.kmy-site-body .program .kmy-program-section-title img {
	display: block;

	width: min(560px, 80%) !important;
	max-width: 100%;
	height: auto !important;

	margin: 0 auto;

	aspect-ratio: auto !important;
	object-fit: contain !important;
}


/* ---------------------------------------------------------
   Program Card
   --------------------------------------------------------- */

.kmy-site-body .program .kmy-program-card {
	width: min(900px, 100%);

	margin:
		0
		auto
		72px;

	padding:
		48px
		28px
		26px;

	background: #fff;

	border:
		2px
		solid
		#222;

	border-radius: 16px;

	box-shadow:
		7px
		7px
		0
		rgba(226, 232, 51, 0.72);

	box-sizing: border-box;
}


.kmy-site-body .program .kmy-program-card:last-child {
	margin-bottom: 0;
}


.kmy-site-body
.program
.kmy-program-card
> .wp-block-group__inner-container {
	width: 100%;
	max-width: none;

	margin: 0;
	padding: 0;
}


.kmy-site-body
.program
.kmy-program-card
> .wp-block-group__inner-container
> * {
	max-width: none;
}


/* Program title */

.kmy-site-body .program .kmy-program-card__title {
	margin:
		0
		0
		26px;

	padding: 0;

	color: #111 !important;

	font-size: 28px;
	font-weight: 700;
	line-height: 1.45;

	text-align: center;
}


.kmy-site-body .program .kmy-program-card__title strong {
	display: inline;

	padding:
		0
		4px
		2px;

	background:
		linear-gradient(
			to bottom,
			transparent 58%,
			#f5fc32 58%,
			#f5fc32 92%,
			transparent 92%
		);

	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
}


/* Broadcast schedule */

.kmy-site-body .program .kmy-program-card__schedule {
	margin:
		0
		0
		24px;

	padding: 0;

	color: #111 !important;

	font-size: 17px;
	font-weight: 700;
	line-height: 1.6;

	text-align: center;
}


/* Program description */

.kmy-site-body .program .kmy-program-card__text {
	margin:
		0
		0
		28px;

	padding: 0;

	color: #222;

	font-size: 14px;
	line-height: 1.8;

	text-align: left;
}


/* Program images */

.kmy-site-body .program .kmy-program-card .wp-block-image {
	width: 100%;

	margin:
		24px
		0
		14px;

	text-align: center;
}


.kmy-site-body .program .kmy-program-card .wp-block-image img {
	display: block;

	width: 100% !important;
	max-width: 100%;
	height: auto !important;

	margin: 0 auto;

	object-fit: contain;
}


/* Copyright */

.kmy-site-body .program .kmy-program-card__credit {
	margin: 0;
	padding: 0;

	color: #222;

	font-size: 11px;
	line-height: 1.55;

	text-align: left;
}
/* =========================================================
   13. Common Footer
   ========================================================= */

.kmy-site-body #colophon.kmy-footer {
	width: 100%;

	margin: 0;
	padding: 0;

	background: #fffef4;

	border: 0;
	box-shadow: none;

	color: #222;
}


.kmy-site-body .kmy-footer__main {
	width: 100%;

	padding:
		38px
		24px
		34px;

	background: #fffef4;
}


.kmy-site-body .kmy-footer__inner {
	display: flex;

	align-items: center;
	justify-content: center;

	gap: 28px;

	width: min(900px, calc(100% - 48px));

	margin: 0 auto;
}


.kmy-site-body .kmy-footer__logo {
	display: block;

	flex: 0 0 auto;

	width: 88px;
	max-width: none;
	height: auto;

	margin: 0;
}


.kmy-site-body .kmy-footer__company {
	margin: 0;

	text-align: left;
}


.kmy-site-body .kmy-footer__name,
.kmy-site-body .kmy-footer__address {
	margin: 0;
	padding: 0;

	color: #222;

	font-style: normal;
}


.kmy-site-body .kmy-footer__name {
	margin-bottom: 3px;

	font-size: 13px;
	font-weight: 700;
	line-height: 1.5;
}


.kmy-site-body .kmy-footer__address {
	font-size: 12px;
	font-weight: 400;
	line-height: 1.6;
}


.kmy-site-body .kmy-footer__copyright {
	width: 100%;

	padding:
		12px
		20px;

	background: #c92f34;

	text-align: center;
}


.kmy-site-body .kmy-footer__copyright p {
	margin: 0;
	padding: 0;

	color: #fff;

	font-size: 11px;
	font-weight: 400;
	line-height: 1.5;
}
/* =========================================================
   13. Smartphone
   ========================================================= */

@media screen and (max-width: 640px) {


	/* -----------------------------------------------------
	   Header
	   ----------------------------------------------------- */

	.kmy-site-body .kmy-header {
		min-height: 150px;

		border-radius:
			0 0 50% 50%
			/
			0 0 10% 10%;
	}


	.kmy-site-body .kmy-header__pattern {
		min-height: 150px;

		padding:
			28px
			20px
			48px;

		background-position: center top;
		background-size: cover;
	}
	.kmy-site-body .kmy-header__copy {
		width: min(260px, 78vw);

		margin-top: 12px;
	}

	.kmy-site-body .kmy-header__logo .logo {
		width: 190px;
		max-width: 72vw;
	}


	/* -----------------------------------------------------
	   Home Base
	   ----------------------------------------------------- */

	.kmy-page-home {
		background-size: 900px auto;
	}

	.kmy-home__inner {
		width: calc(100% - 20px);

		margin: 0 auto;

		padding:
			52px
			0
			72px;
	}


	/* -----------------------------------------------------
	   About
	   ----------------------------------------------------- */

	.kmy-about {
		width: 100%;

		margin:
			-20px
			auto
			52px;

		padding:
			48px
			18px
			22px;

		border-radius: 12px;
	}


	.kmy-about__title {
		top: -20px;

		width: 82%;
		min-height: 40px;

		padding:
			4px
			12px;

		border-radius: 10px;

		font-size: 16px;
		line-height: 1.2;
	}


	.kmy-about__body {
		display: block;
	}


	.kmy-about__text p {
		font-size: 12px;
		line-height: 1.65;
	}


	.kmy-about__text p + p {
		margin-top: 14px;
	}


	.kmy-about__character {
		margin-top: 18px;
	}


	.kmy-about__character img {
		max-width: 100%;
	}


	/* -----------------------------------------------------
	   Section Title
	   ----------------------------------------------------- */

	.kmy-home__section-title {
		margin-bottom: 34px;

		font-size: 22px;
	}


	/* -----------------------------------------------------
	   Channel Cards
	   ----------------------------------------------------- */

	.kmy-channel-list {
		gap: 68px;
	}


	.kmy-channel-card {
		padding:
			50px
			18px
			26px;

		border-radius: 12px;

		box-shadow:
			5px 6px 0
			color-mix(
				in srgb,
				var(--kmy-accent) 85%,
				transparent
			);
	}


	.kmy-channel-card__month {
		top: -18px;

		width: 82%;

		padding:
			7px
			12px;

		border-radius: 9px;

		font-size: 19px;
	}


	.kmy-channel-card__name {
		margin-bottom: 18px;

		font-size: 13px;
	}


	.kmy-channel-card__logo {
		margin-bottom: 24px;
	}


	.kmy-channel-card__logo img {
		width: auto;
		max-width: 210px;
		height: 82px;
		max-height: none;
	}


	/* -----------------------------------------------------
	   Prize
	   ----------------------------------------------------- */

	.kmy-prizes,
	.kmy-prizes--single {
		grid-template-columns: 1fr;

		gap: 34px;
	}


	.kmy-prize__image img {
		width: 100%;
		max-height: none;
	}


	.kmy-prize__caption {
		font-size: 10px;
	}


	.kmy-prize__name {
		font-size: 18px;
	}


	.kmy-prize__meta {
		display: block;
	}


	.kmy-prize__description {
		font-size: 14px;
	}


	.kmy-prize__number {
		margin-top: 6px;

		font-size: 13px;

		text-align: right;
	}


	.kmy-prize__extra {
		font-size: 11px;
	}


	/* -----------------------------------------------------
	   Application
	   ----------------------------------------------------- */

	.kmy-apply {
		margin-top: 32px;

		padding-top: 22px;
	}


	.kmy-apply__label {
		font-size: 11px;
	}


	.kmy-apply__date,
	.kmy-coming__date {
		font-size: 14px;
	}


	.kmy-apply__button {
		width: 92%;

		padding:
			15px
			18px;

		font-size: 14px;
	}


	.kmy-channel-link {
		width: 92%;
		max-width: none;

		padding:
			13px
			42px
			13px
			14px;

		font-size: 12px;
	}


	/* -----------------------------------------------------
	   Past Channels
	   ----------------------------------------------------- */

	.kmy-past {
		margin-top: 68px;
	}


	.kmy-past__text {
		padding:
			0
			4px;

		font-size: 10px;
		line-height: 1.65;
	}


	/* -----------------------------------------------------
	   Information
	   ----------------------------------------------------- */

	.kmy-info {
		margin:
			48px
			auto
			40px;
	}


	/* -----------------------------------------------------
	   Partner Stations
	   ----------------------------------------------------- */

	.kmy-partners {
		margin-top: 32px;
	}


	.kmy-partners__title {
		font-size: 10px;
	}


	.kmy-partners__logos {
		grid-template-columns: 180px;

		justify-content: center;

		gap: 8px;
	}


	.kmy-partners__logos a {
		min-height: 72px;
	}


	.kmy-partners__logos img {
		max-height: 52px;
	}
		/* -----------------------------------------------------
	   Program Pages
	   ----------------------------------------------------- */

	.kmy-site-body .kmy-content-shell:has(.program) {
		background-size: 900px auto;
	}


	.kmy-site-body .program {
		margin-top: -30px;

		padding:
			0
			10px
			64px;
	}

	.kmy-site-body .program .kmy-program-intro__header {
	top: -20px;

	width: calc(100% - 28px);
	min-height: 42px;

	padding:
		6px
		14px;

	border-radius: 11px;
}


.kmy-site-body .program .kmy-program-intro__title {
	font-size: 16px;
	line-height: 1.35;
}


	.kmy-site-body .program .kmy-program-intro {
		margin:
			0
			auto;

padding:
	42px
	16px
	22px;

		border:
			2px
			solid
			#222;

		border-radius: 12px;

		box-shadow:
			5px
			5px
			0
			rgba(226, 232, 51, 0.7);
	}


	.kmy-site-body
	.program
	.kmy-program-intro
	> .wp-block-group__inner-container {
		display: block;
	}


	.kmy-site-body .program .kmy-program-intro figure {
		margin:
			0
			0
			16px;
	}


	.kmy-site-body .program .kmy-program-intro figure img {
		width: 170px !important;
		max-width: 70vw;

		height: auto !important;
	}


	.kmy-site-body .program .kmy-program-intro p {
		font-size: 12px;
		line-height: 1.7;
	}


	.kmy-site-body .program .kmy-program-section-title {
		margin:
			44px
			auto
			30px;
	}


	.kmy-site-body .program .kmy-program-section-title img {
		width: min(88%, 420px) !important;
	}


	.kmy-site-body .program .kmy-program-card {
		margin-bottom: 42px;

		padding:
			30px
			14px
			18px;

		border-radius: 12px;

		box-shadow:
			5px
			5px
			0
			rgba(226, 232, 51, 0.72);
	}


	.kmy-site-body .program .kmy-program-card__title {
		margin-bottom: 18px;

		font-size: 20px;
		line-height: 1.45;
	}


	.kmy-site-body .program .kmy-program-card__schedule {
		margin-bottom: 18px;

		font-size: 13px;
		line-height: 1.6;
	}


	.kmy-site-body .program .kmy-program-card__text {
		margin-bottom: 20px;

		font-size: 12px;
		line-height: 1.75;
	}


	.kmy-site-body .program .kmy-program-card .wp-block-image {
		margin:
			20px
			0
			10px;
	}


	.kmy-site-body .program .kmy-program-card__credit {
		font-size: 9px;
		line-height: 1.5;
	}
	/* -----------------------------------------------------
	   Footer
	   ----------------------------------------------------- */

	.kmy-site-body .kmy-footer__main {
		padding:
			28px
			16px
			24px;
	}


	.kmy-site-body .kmy-footer__inner {
		flex-direction: column;

		gap: 12px;

		width: 100%;
	}


	.kmy-site-body .kmy-footer__logo {
		width: 72px;
	}


	.kmy-site-body .kmy-footer__company {
		text-align: center;
	}


	.kmy-site-body .kmy-footer__name {
		margin-bottom: 2px;

		font-size: 10px;
	}


	.kmy-site-body .kmy-footer__address {
		font-size: 9px;
		line-height: 1.55;
	}


	.kmy-site-body .kmy-footer__copyright {
		padding:
			9px
			10px;
	}


	.kmy-site-body .kmy-footer__copyright p {
		font-size: 8px;
		line-height: 1.4;
	}
}