@charset "utf-8";
/* =============================================================
   Under the Radar Japan (page: under_the_radar_japan)
   ※ 基本レイアウト・見出し(crm-head)・FAQアコーディオン等は
     seo.css を併読。本ファイルは本ページ固有パーツのみ定義。
   ============================================================= */
.page-service .mv {
	max-height: inherit;
}

.mv {
	background: url(../../images/crm/crm-mv.png) no-repeat center !important;
}

.utr-section {
	margin-bottom: 80px;
}

.utr-page-wrap {
	margin-top: 20px;
	font-size: 18px;
}

.utr-lead {
	font-size: 16px;
	line-height: 2;
	text-align: justify;
	margin: 0 0 32px;
	padding: 0 10px;
}

.utr-subhead {
	font-size: 22px;
	font-weight: bold;
	color: #1F2879;
	margin: 48px 0 24px;
	padding-left: 16px;
	border-left: 6px solid #1F2879;
	line-height: 1.4;
}

/* --- ページ内リンク（PCは5列固定） --- */
.utr-link-btn-wrap {
	flex-wrap: nowrap;
}
.utr-link-btn-wrap a {
	width: 19%;
	max-width: none;
	margin-right: 0;
}

/* --- バナー（ヒーロー画像1枚） --- */
.banner-area.utr-banner-area {
	position: relative;
	height: auto;
	margin-bottom: 48px;
}
.banner-area.utr-banner-area img {
	position: static;
	left: auto;
	top: auto;
	z-index: auto;
	display: block;
	width: 100%;
	height: auto;
	object-fit: unset;
}

/* --- 定義ボックス --- */
.utr-def {
	background: #eef2fa;
	border: 2px solid #1F2879;
	border-radius: 10px;
	padding: 32px 40px;
	margin: 0 0 40px;
}
.utr-def-ttl {
	font-size: 22px;
	font-weight: bold;
	color: #1F2879;
	text-align: center;
	margin: 0 0 16px;
	padding-bottom: 14px;
	border-bottom: 1px dashed #aab4d4;
	line-height: 1.4;
}
.utr-def-body {
	font-size: 16px;
	line-height: 1.9;
	margin: 0;
	text-align: justify;
}

/* --- 安心材料 --- */
.utr-proof {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 0 0 32px;
	padding: 0 10px;
}
.utr-proof span {
	display: inline-flex;
	align-items: center;
	background: #f4f6fb;
	border: 1px solid #d7ddec;
	border-radius: 20px;
	padding: 8px 16px;
	font-size: 14px;
	font-weight: bold;
	color: #1F2879;
	line-height: 1.4;
}
.utr-proof span::before {
	content: "✓";
	margin-right: 8px;
	color: #e60012;
}

/* --- 課題カード --- */
.utr-issues {
	display: flex;
	gap: 16px;
	margin: 0 0 16px;
}
.utr-issue {
	flex: 1;
	background: #fff;
	border: 1px solid #d7ddec;
	border-radius: 8px;
	padding: 28px 20px 24px;
	text-align: center;
}
.utr-issue img {
	width: 56px;
	height: 56px;
	margin: 0 auto 14px;
	display: block;
}
.utr-issue-ttl {
	font-size: 18px;
	font-weight: bold;
	color: #1F2879;
	margin: 0 0 8px;
}
.utr-issue p:last-child {
	margin: 0;
	font-size: 14px;
	line-height: 1.7;
	color: #415461;
}

/* --- 番組概要カード --- */
.utr-about {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	margin: 0;
}
.utr-about-item {
	width: calc(50% - 8px);
	background: #f7f8fb;
	border-top: 4px solid #1F2879;
	border-radius: 0 0 8px 8px;
	padding: 24px 22px;
	box-sizing: border-box;
}
.utr-about-item--wide {
	width: 100%;
}
.utr-about-ttl {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 17px;
	font-weight: bold;
	color: #1F2879;
	margin: 0 0 10px;
}
.utr-about-ttl img {
	width: 28px;
	height: 28px;
}
.utr-about-item p:last-child {
	margin: 0;
	font-size: 15px;
	line-height: 1.8;
}

/* --- エピソード --- */
.utr-episodes {
	display: flex;
	gap: 20px;
	margin: 0 0 8px;
}
.utr-ep {
	flex: 1;
	background: #fff;
	border: 1px solid #d7ddec;
	border-radius: 8px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}
.utr-ep a {
	color: inherit;
	text-decoration: none;
}
.utr-ep-thumb {
	position: relative;
	display: block;
	aspect-ratio: 16 / 9;
	background: #eef2fa;
	overflow: hidden;
}
.utr-ep-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.utr-ep-play {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 52px;
	height: 52px;
	margin: -26px 0 0 -26px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.95);
	display: flex;
	align-items: center;
	justify-content: center;
}
.utr-ep-play::after {
	content: "";
	display: block;
	margin-left: 4px;
	border-style: solid;
	border-width: 10px 0 10px 16px;
	border-color: transparent transparent transparent #1F2879;
}
.utr-ep-meta {
	padding: 16px 18px 20px;
}

.utr-ep-portrait {
	width: 56px;
	height: 56px;
	border-radius: 50%;
	object-fit: cover;
	border: 1px solid #d7ddec;
	display: block;
	margin: 0 0 12px;
	margin-left: auto;
	margin-right: auto;
}
.utr-ep-label {
	display: inline-block;
	background: #1F2879;
	color: #fff;
	font-size: 11px;
	font-weight: bold;
	letter-spacing: 0.06em;
	padding: 3px 10px;
	margin: 0 0 8px;
}
.utr-ep-name {
	font-size: 17px;
	font-weight: bold;
	color: #1F2879;
	margin: 0 0 4px;
	line-height: 1.4;
}
.utr-ep-company {
	font-size: 13px;
	color: #415461;
	margin: 0;
	line-height: 1.6;
}
.utr-ep--waiting {
	border-style: dashed;
	align-items: center;
	justify-content: center;
	min-height: 220px;
	text-align: center;
	padding: 32px 20px;
	background: #f7f8fb;
}
.utr-ep--waiting .utr-ep-plus {
	font-size: 42px;
	line-height: 1;
	color: #1F2879;
	font-weight: bold;
	margin: 0 0 8px;
}
.utr-ep--waiting p {
	margin: 0;
	font-size: 15px;
	font-weight: bold;
	color: #1F2879;
}
.utr-ep--waiting span {
	display: block;
	margin-top: 6px;
	font-size: 13px;
	font-weight: normal;
	color: #415461;
}

/* --- ホスト --- */
.utr-host {
	display: flex;
	gap: 32px;
	align-items: flex-start;
	background: #f7f8fb;
	border: 1px solid #d7ddec;
	border-radius: 10px;
	padding: 32px;
}
.utr-host-photo {
	width: 160px;
	flex-shrink: 0;
}
.utr-host-photo img {
	width: 160px;
	height: 160px;
	object-fit: cover;
	border-radius: 50%;
	display: block;
}
.utr-host-name {
	font-size: 24px;
	font-weight: bold;
	color: #1F2879;
	margin: 0 0 6px;
	line-height: 1.4;
}
.utr-host-role {
	font-size: 14px;
	color: #415461;
	margin: 0 0 14px;
	line-height: 1.6;
}
.utr-host-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 16px;
}
.utr-host-tags span {
	display: inline-block;
	border: 1px solid #aab4d4;
	border-radius: 20px;
	background: #fff;
	font-size: 12px;
	color: #1F2879;
	padding: 4px 12px;
	line-height: 1.4;
}
.utr-host-body p {
	font-size: 15px;
	line-height: 1.9;
	margin: 0;
	text-align: justify;
}

/* --- 示唆／結論ボックス --- */
.utr-insight {
	background: #1F2879;
	color: #fff;
	border-radius: 10px;
	padding: 32px 40px;
	margin: 32px 0 0;
}
.utr-insight-ttl {
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	margin: 0 0 18px;
}
.utr-insight p:last-child {
	font-size: 16px;
	line-height: 2;
	margin: 0;
	text-align: justify;
}
.utr-insight .marker_line {
	background: linear-gradient(transparent 60%, rgba(255, 255, 54, 0.55) 60%);
	font-weight: bold;
}

/* --- 取材の流れ --- */
.utr-step-list {
	list-style: none;
	padding: 0;
	margin: 0;
}
.utr-step-list li {
	position: relative;
	background: linear-gradient(90deg, #eef2fa 0%, #ffffff 55%, #f7f8fb 100%);
	border: 1px solid #d7ddec;
	border-radius: 8px;
	padding: 22px 28px 22px 92px;
	margin-bottom: 16px;
	box-shadow: 0 2px 8px rgba(31, 40, 123, 0.06);
}
.utr-step-num {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 74px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(180deg, #1F2879 0%, #003366 100%);
	color: #fff;
	font-size: 13px;
	font-weight: bold;
	text-align: center;
	line-height: 1.3;
	border-radius: 8px 0 0 8px;
}
.utr-step-list li.utr-step--entry .utr-step-num {
	background: linear-gradient(180deg, #415461 0%, #2c3540 100%);
}
.utr-step-ttl {
	font-size: 18px;
	font-weight: bold;
	color: #1F2879;
	margin: 0 0 6px;
}
.utr-step-list li p:last-child {
	margin: 0;
	font-size: 15px;
	line-height: 1.8;
}

/* --- CTA --- */
.utr-cta {
	background: #eef2fa;
	border-radius: 12px;
	padding: 40px 36px;
	text-align: center;
	margin: 0 0 24px;
}
.utr-cta-ttl {
	font-size: 24px;
	font-weight: bold;
	color: #1F2879;
	margin: 0 0 12px;
	line-height: 1.4;
}
.utr-cta-txt {
	font-size: 15px;
	line-height: 1.9;
	margin: 0 auto 24px;
	max-width: 640px;
}
.utr-btn {
	display: inline-block;
	background: #b30000;
	color: #fff !important;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.4;
	padding: 16px 40px;
	border-radius: 4px;
	text-decoration: none !important;
}
.utr-btn:hover {
	opacity: 0.88;
}
.utr-btn-ghost {
	display: inline-block;
	background: #fff;
	color: #b30000 !important;
	border: 1px solid #b30000;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.4;
	padding: 15px 32px;
	border-radius: 4px;
	text-decoration: none !important;
}

.utr-btn i,
.utr-btn-ghost i {
	margin-right: 10px;
	vertical-align: middle;
}

.utr-step-ttl i {
	margin-right: 10px;
	vertical-align: middle;
}
.utr-btn-row {
	display: flex;
	gap: 16px;
	justify-content: center;
	flex-wrap: wrap;
}
.utr-cta .utr-note {
	margin: 20px 0 0;
	text-align: left;
	max-width: 640px;
	margin-left: auto;
	margin-right: auto;
}

/* --- 応募フォーム --- */
.utr-form-box {
	background: #f7f8fb;
	border: 1px solid #d7ddec;
	border-radius: 10px;
	padding: 36px 32px;
}
.utr-form-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 16px 20px;
	margin: 0 0 20px;
}
.utr-form-item {
	width: calc(50% - 10px);
	box-sizing: border-box;
}
.utr-form-item--full {
	width: 100%;
}
.utr-form-item label {
	display: block;
	font-size: 13px;
	font-weight: bold;
	color: #415461;
	margin: 0 0 6px;
}
.utr-req {
	color: #e60012;
	font-size: 11px;
	margin-left: 6px;
	font-weight: bold;
}
.utr-form-item input,
.utr-form-item textarea {
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #c5c9d6;
	border-radius: 4px;
	padding: 10px 12px;
	font-size: 15px;
	font-family: inherit;
	background: #fff;
}
.utr-form-item textarea {
	min-height: 110px;
	resize: vertical;
}
.utr-form-item input:disabled,
.utr-form-item textarea:disabled {
	background: #fff;
	color: #333;
	opacity: 1;
	cursor: default;
}
.utr-form-notes {
	font-size: 13px;
	color: #415461;
	line-height: 1.9;
	margin: 0 0 24px;
}
.utr-form-box .utr-btn {
	min-width: 280px;
	text-align: center;
}

.utr-note {
	font-size: 14px;
	color: #415461;
	margin: 8px 0 0;
	line-height: 1.7;
}

/* =============================================================
   SP
   ============================================================= */
@media screen and (max-width: 768px) {
	.utr-section {
		margin-bottom: 56px;
	}

	.utr-link-btn-wrap {
		flex-wrap: wrap;
	}
	.utr-link-btn-wrap a {
		width: 49%;
		margin-right: 0;
		margin-bottom: 8px;
		font-size: 13px;
	}

	.utr-subhead {
		font-size: 19px;
		margin: 36px 0 20px;
	}
	.utr-def {
		padding: 24px 20px;
	}
	.utr-def-ttl {
		font-size: 18px;
	}
	.utr-insight {
		padding: 24px 22px;
	}
	.utr-insight-ttl {
		font-size: 21px;
	}

	.utr-issues,
	.utr-episodes {
		flex-wrap: wrap;
		gap: 12px;
	}
	.utr-issue,
	.utr-ep {
		width: 100%;
		flex: none;
	}
	.utr-issues .utr-issue {
		width: calc(50% - 6px);
		flex: none;
		padding: 20px 12px 18px;
	}

	.utr-about-item {
		width: 100%;
	}

	.utr-host {
		flex-direction: column;
		align-items: center;
		text-align: center;
		padding: 28px 20px;
	}
	.utr-host-tags {
		justify-content: center;
	}
	.utr-host-body p {
		text-align: left;
	}

	.utr-step-list li {
		padding: 56px 20px 20px;
	}
	.utr-step-num {
		width: 100%;
		height: 34px;
		bottom: auto;
		border-radius: 8px 8px 0 0;
	}

	.utr-form-item {
		width: 100%;
	}
	.utr-form-box {
		padding: 24px 16px;
	}
	.utr-form-box .utr-btn {
		width: 100%;
		min-width: 0;
		box-sizing: border-box;
	}

	.utr-cta {
		padding: 32px 20px;
	}
	.utr-cta-ttl {
		font-size: 20px;
	}
	.utr-btn-row {
		flex-direction: column;
	}
	.utr-btn,
	.utr-btn-ghost {
		width: 100%;
		box-sizing: border-box;
		text-align: center;
	}
}
