/* ==========================================================================
   東京女風静岡店 — トップページ ビジュアルリファレッシュ
   ミニマル・クリーン（白基調）
   スコープ: body.home のみ。レイアウト/マークアップは変更せず、
   既存要素の見た目（色・余白・角丸・影・タイポグラフィ）のみを調整する。
   ========================================================================== */

body.home {
	--jh-ink: #1A1A1A;
	--jh-ink-soft: #767676;
	--jh-line: #ECECEC;
	--jh-accent: #E8447A;
	--jh-accent-text: #C22563;
	--jh-accent-soft: #FCE9F0;
	--jh-navy: #002984;
	--jh-navy-soft: #EEF1FB;
	--jh-radius-lg: 20px;
	--jh-radius-md: 14px;
	--jh-radius-pill: 999px;
	--jh-shadow: 0 4px 24px rgba(20, 20, 40, 0.07);
	--jh-shadow-hover: 0 16px 40px rgba(20, 20, 40, 0.13);
	background: #FFFFFF;
}

/* ---- セクション間の余白 ------------------------------------------------ */
body.home .widget.widget-top,
body.home .sidebar.widget-area > .widget {
	margin-bottom: 56px;
}
body.home #block-17 {
	margin-bottom: 64px;
	margin-top: 8px;
}

/* ---- セクション見出し：斜めグラデーション帯 → 細いアクセントラインへ ---- */
body.home #main-content .widget-title {
	background: none;
	text-align: left;
	padding: 0 0 18px;
	margin-bottom: 28px;
	border-bottom: 1px solid var(--jh-line);
	position: relative;
}
body.home #main-content .widget-title::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -1px;
	width: 56px;
	height: 3px;
	background: var(--jh-accent);
	border-radius: var(--jh-radius-pill);
}
body.home #main-content .widget-title .title-name {
	display: inline-block;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	color: var(--jh-ink);
	border: none;
	padding: 0;
	text-indent: 0;
}

/* ---- ヒーロースライダー：角丸＋余白＋やわらかい影 ---------------------- */
body.home #block-17 .soliloquy-container {
	border-radius: 0 !important;
	overflow: hidden;
	box-shadow: var(--jh-shadow);
}
body.home #block-17 .soliloquy-pager-link span {
	background: rgba(255, 255, 255, 0.55) !important;
}
body.home #block-17 .soliloquy-pager-link.active span,
body.home #block-17 .soliloquy-pager-link:hover span {
	background: #FFFFFF !important;
}

/* ---- ニュース系リスト（新着情報／ご利用案内） -------------------------- */
body.home .widget_cp5_news .news-lists-frame > li {
	border-bottom: 1px solid var(--jh-line);
	transition: background-color 0.25s ease;
}
body.home .widget_cp5_news .news-lists-frame > li:hover {
	background-color: var(--jh-accent-soft);
}
body.home .widget_cp5_news .news-lists-frame > li > .row {
	padding: 14px 10px;
}
body.home .widget_cp5_news .news-section .entry-title {
	font-weight: 600;
	color: var(--jh-ink);
	transition: color 0.2s ease;
}
body.home .widget_cp5_news .news-lists-frame > li:hover .entry-title {
	color: var(--jh-accent-text);
}
body.home .widget_cp5_news .news-thumb img {
	border-radius: var(--jh-radius-md);
}
body.home .widget_cp5_news .news-date {
	color: var(--jh-ink-soft);
	font-size: 0.85em;
}
body.home .widget_cp5_news .news-icon .cat-label {
	background: var(--jh-navy-soft);
	color: var(--jh-navy);
	border-radius: var(--jh-radius-pill);
	padding: 3px 12px;
	font-weight: 600;
	font-size: 0.75em;
}

/* ---- ピックアップキャスト カルーセル ----------------------------------- */
body.home .widget_cp5_cast_slider .cast-frame {
	background: #FFFFFF;
	border-radius: 0;
	box-shadow: var(--jh-shadow);
	overflow: hidden;
	margin: 0 8px;
	transition: box-shadow 0.3s ease, transform 0.3s ease;
}
body.home .widget_cp5_cast_slider .cast-frame:hover {
	box-shadow: var(--jh-shadow-hover);
	transform: translateY(-4px);
}
body.home .widget_cp5_cast_slider .cast-image {
	overflow: hidden;
}
body.home .widget_cp5_cast_slider .cast-image img {
	transition: transform 0.5s ease;
	display: block;
}
body.home .widget_cp5_cast_slider .cast-frame:hover .cast-image img {
	transform: scale(1.06);
}
body.home .widget_cp5_cast_slider .cast-section {
	padding: 14px 16px 18px;
}
body.home .widget_cp5_cast_slider .cast-name .name {
	font-weight: 700;
	font-size: 1.15em;
	color: var(--jh-ink);
}
body.home .widget_cp5_cast_slider .cast-icon-label {
	background: var(--jh-accent-soft);
	color: var(--jh-accent-text);
	border-radius: var(--jh-radius-pill);
	padding: 3px 10px;
	margin: 2px 4px 2px 0;
	display: inline-block;
	font-size: 0.72em;
	font-weight: 600;
}
body.home .widget_cp5_cast_slider .new-icon img {
	border-radius: var(--jh-radius-pill);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}
body.home .widget_cp5_cast_slider .owl-dots .owl-dot span {
	background: var(--jh-line) !important;
}
body.home .widget_cp5_cast_slider .owl-dots .owl-dot.active span {
	background: var(--jh-accent) !important;
}
body.home .widget_cp5_cast_slider .slide-prev,
body.home .widget_cp5_cast_slider .slide-next {
	background: #FFFFFF !important;
	box-shadow: var(--jh-shadow);
	border-radius: 50%;
}

/* ---- トップページ：新着情報／ピックアップキャスト等、半分幅ウィジェットの段ズレ対策 ----
   フロート/回り込みベースの並びだと、片方のウィジェットの高さが高い場合に
   次の段のウィジェットが早く回り込んでしまい、段がズレて見える。
   flexで明示的に2列グリッド化し、各段の高さの違いに影響されないようにする。 */
@media (min-width: 641px) {
	main#top.row {
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
	}
	main#top.row > .widget-top {
		float: none;
	}
	main#top.row > .widget-top.large-6 {
		flex: 0 0 50%;
		max-width: 50%;
		box-sizing: border-box;
	}
	main#top.row > .widget-top.large-12 {
		flex: 0 0 100%;
		max-width: 100%;
		box-sizing: border-box;
	}
}

/* ---- SNS バナー一覧 ----------------------------------------------------- */
body.home #cp5_banner_display-2 li a img {
	border-radius: 0;
	box-shadow: var(--jh-shadow);
	transition: box-shadow 0.3s ease, transform 0.3s ease;
	display: block;
}
body.home #cp5_banner_display-2 li {
	margin-bottom: 16px;
}
body.home #cp5_banner_display-2 li a:hover img {
	box-shadow: var(--jh-shadow-hover);
	transform: translateY(-3px);
}

/* ---- キャンペーンバナー（新規割／モニター割／求人） -------------------- */
body.home .sidebar.widget-area .widget_media_image .wp-block-image img {
	border-radius: 0;
	box-shadow: var(--jh-shadow);
	transition: box-shadow 0.3s ease, transform 0.3s ease;
}
body.home .sidebar.widget-area .widget_media_image:hover .wp-block-image img {
	box-shadow: var(--jh-shadow-hover);
	transform: translateY(-4px);
}
body.home .sidebar.widget-area .widget_media_image {
	margin-bottom: 24px;
}
