@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: 同人シリタイ（DLsite/FANZA同人）SEO向け子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.2.0
*/

/************************************
** 同人シリタイ — 子テーマスタイル
************************************/

body.dojin-site .entry-title,
body.dojin-site .article-header-title{
	font-family:'Hiragino Sans','Meiryo',sans-serif;
}

/* 投稿本文（AdAffiTower / 旧 goods 互換） */
body.dojin-site .dojin-work-article,
body.dojin-site .av-kirinuki-container {
	max-width: 720px;
	margin: 0 auto;
	font-family: 'Hiragino Sans', 'Meiryo', sans-serif;
	line-height: 1.75;
	color: var(--dojin-text, #f5f0fa);
}

body.dojin-site .dojin-work-article .source-badge,
body.dojin-site .av-kirinuki-container .source-badge {
	display: inline-block;
	margin: 0 auto 16px;
	padding: 6px 16px;
	background: linear-gradient(135deg, #6b21a8, #9333ea);
	color: #fff;
	border-radius: 999px;
	font-size: 0.82rem;
	font-weight: 800;
	letter-spacing: 0.06em;
}

body.dojin-site .dojin-work-article .circle-section,
body.dojin-site .av-kirinuki-container .actress-section {
	text-align: center;
	padding: 28px 20px;
	background: linear-gradient(135deg, rgba(88, 28, 135, 0.35), rgba(30, 20, 52, 0.9));
	border: 1px solid var(--dojin-border, #3d2a5c);
	border-radius: 16px;
	margin: 28px 0;
}

body.dojin-site .dojin-work-article .circle-catch,
body.dojin-site .av-kirinuki-container .actress-catch {
	font-size: 0.9rem;
	color: var(--dojin-muted, #b4a3c8);
	margin: 0 0 6px;
}

body.dojin-site .dojin-work-article .circle-name,
body.dojin-site .av-kirinuki-container .actress-highlight,
body.dojin-site .av-kirinuki-container .actress-name {
	font-size: 1.35rem;
	font-weight: 800;
	color: var(--dojin-purple-bright, #a855f7);
	text-decoration: none;
}

body.dojin-site .av-kirinuki-container .actress-name:hover {
	color: var(--dojin-pink, #ec4899);
	text-decoration: underline;
}

body.dojin-site .dojin-work-article .watch-btn,
body.dojin-site .av-kirinuki-container .watch-btn {
	display: block;
	width: 100%;
	max-width: 420px;
	margin: 24px auto;
	padding: 16px 20px;
	background: linear-gradient(135deg, #7c3aed, #ec4899);
	color: #fff !important;
	text-align: center;
	font-size: 1rem;
	font-weight: 800;
	border-radius: 999px;
	text-decoration: none !important;
	box-shadow: 0 6px 24px var(--dojin-glow, rgba(147, 51, 234, 0.38));
	transition: transform 0.2s, box-shadow 0.2s;
}

body.dojin-site .watch-btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 10px 32px rgba(168, 85, 247, 0.45);
}

body.dojin-site .dojin-work-article .description-card,
body.dojin-site .av-kirinuki-container .description-card,
body.dojin-site .dojin-work-article .fanza-post-description {
	background: var(--dojin-bg-card, #1c1434);
	border: 1px solid var(--dojin-border, #3d2a5c);
	border-left: 4px solid var(--dojin-purple, #9333ea);
	border-radius: 12px;
	padding: 20px;
	margin: 24px 0;
}

body.dojin-site .dojin-work-article .fanza-post-description p {
	margin: 0;
	color: #e8dff0;
	line-height: 1.75;
}

body.dojin-site .article .entry-content,
body.dojin-site .article-body {
	background: transparent !important;
	color: var(--dojin-text, #f5f0fa) !important;
}

body.dojin-site .dojin-work-article .dojin-detail-section {
	margin: 24px 0;
}

body.dojin-site .dojin-work-article .dojin-detail-section__title {
	font-size: 1rem;
	font-weight: 800;
	color: var(--dojin-accent-soft, #e9d5ff);
	margin: 0 0 12px;
	padding: 0 0 8px 2px;
	border-bottom: 2px solid var(--dojin-purple, #9333ea);
	letter-spacing: 0.06em;
}

body.dojin-site .dojin-work-article figure.wp-block-table.detail-table,
body.dojin-site .dojin-work-article .dojin-detail-section figure {
	margin: 0 !important;
	overflow: visible !important;
}

body.dojin-site .dojin-work-article figure.wp-block-table,
body.dojin-site .dojin-work-article table.detail-table {
	background: var(--dojin-bg-card, #1c1434) !important;
	border-radius: 12px;
	box-shadow: 0 6px 28px rgba(0, 0, 0, 0.28);
}

body.dojin-site .dojin-work-article table.detail-table td {
	color: #f0e6f8 !important;
	background-color: #231a3a !important;
	line-height: 1.7;
	word-break: break-word;
}

body.dojin-site .dojin-work-article table.detail-table tbody tr:nth-child(even) td {
	background-color: #2a1f45 !important;
}

body.dojin-site .dojin-work-article table.detail-table th {
	background-color: #581c87 !important;
	color: #f3e8ff !important;
	font-weight: 800;
	border-right: 1px solid var(--dojin-border, #3d2a5c) !important;
}

body.dojin-site .entry-content .dojin-detail-section table.detail-table th,
body.dojin-site .entry-content .dojin-detail-section table.detail-table td {
	border-color: var(--dojin-border, #3d2a5c) !important;
}

body.dojin-site .fc2-gallery {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
	gap: 10px;
	margin: 20px 0;
}

body.dojin-site .fc2-gallery img {
	border-radius: 8px;
	width: 100%;
	height: auto;
}

body.dojin-site .dojin-work-article .dojin-seo-section {
	background: var(--dojin-bg-card, #1c1434);
	border: 1px solid var(--dojin-border, #3d2a5c);
	border-radius: 12px;
	padding: 20px 22px;
	margin: 24px 0;
}

body.dojin-site .dojin-work-article .dojin-seo-section h2 {
	font-size: 1.05rem;
	font-weight: 800;
	color: var(--dojin-accent-soft, #e9d5ff);
	margin: 0 0 14px;
	padding-bottom: 8px;
	border-bottom: 2px solid var(--dojin-purple, #9333ea);
}

body.dojin-site .dojin-work-article .dojin-seo-section p,
body.dojin-site .dojin-work-article .dojin-seo-section li {
	color: #e8dff0;
	line-height: 1.75;
	font-size: 0.94rem;
}

body.dojin-site .dojin-work-article .dojin-seo-list {
	margin: 0;
	padding-left: 1.2em;
}

body.dojin-site .dojin-work-article .dojin-faq__item {
	margin-top: 14px;
	padding-top: 12px;
	border-top: 1px solid rgba(147, 51, 234, 0.25);
}

body.dojin-site .dojin-work-article .dojin-faq__item:first-of-type {
	margin-top: 0;
	padding-top: 0;
	border-top: none;
}

body.dojin-site .dojin-work-article .dojin-faq__q {
	font-size: 0.92rem;
	font-weight: 700;
	color: #f3e8ff;
	margin: 0 0 6px;
}

body.dojin-site .dojin-work-article .dojin-faq__a {
	margin: 0;
}

body.dojin-site .dojin-work-article .dojin-seo-keywords__links a {
	color: var(--dojin-accent-soft, #e9d5ff);
	text-decoration: underline;
	text-underline-offset: 3px;
}

body.dojin-site .dojin-work-article .dojin-seo-keywords__links a:hover {
	color: #fff;
}

/************************************
** レスポンシブ
************************************/
@media screen and (max-width: 834px) {
	body.dojin-site .dojin-work-article .circle-name,
	body.dojin-site .av-kirinuki-container .actress-highlight {
		font-size: 1.15rem;
	}
}

@media screen and (max-width: 480px) {
	body.dojin-site .dojin-work-article,
	body.dojin-site .av-kirinuki-container {
		padding: 0 4px;
	}
}
