/* ねとろぐ FANZA自動投稿 — 記事内パーツ（色は SWELL の変数に合わせる） */

.otona-package {
	margin: 0 0 1.5em;
	text-align: center;
}
.otona-package img {
	width: 100%;
	height: auto;
	border-radius: 4px;
	box-shadow: 0 2px 12px rgba(0, 0, 0, .12);
}

.otona-movie {
	position: relative;
	width: 100%;
	max-width: 720px;
	margin: 0 auto 2em;
	aspect-ratio: 720 / 480;
	background: #000;
	border-radius: 4px;
	overflow: hidden;
}
.otona-movie iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

.otona-gallery {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 6px;
	margin-bottom: 2em;
}
@media (max-width: 599px) {
	.otona-gallery { grid-template-columns: repeat(3, 1fr); }
}
.otona-gallery__item {
	display: block;
	aspect-ratio: 3 / 2;
	overflow: hidden;
	border-radius: 3px;
	background: #eee;
}
.otona-gallery__item img {
	width: 100%;
	height: 100%;
	/* DMM の規約で画像の加工は拡大・縮小だけなので、切り抜かずに全体を表示する */
	object-fit: contain;
	transition: transform .3s;
}
.otona-gallery__item:hover img { transform: scale(1.06); }

.otona-spec th {
	width: 7.5em;
	white-space: nowrap;
	background: var(--color_gray, #f7f7f7);
}
.otona-spec td a { color: var(--color_link); }

.otona-actress {
	margin: 0 0 1em;
	text-align: center;
}
.otona-actress img {
	width: 120px;
	height: 120px;
	object-fit: cover;
	border: 3px solid var(--color_main);
	border-radius: 50%;
}

.otona-comment {
	margin: 2em 0;
	padding: 1.25em 1.5em;
	background: #fff;
	border: 2px solid var(--color_main);
	border-radius: 6px;
}
.otona-comment__ttl {
	margin-bottom: .5em !important;
	color: var(--color_main);
	font-weight: 700;
}
.otona-comment p:last-child { margin-bottom: 0; }

/* サンプル画像のライトボックス */
.otona-lb {
	position: fixed;
	inset: 0;
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
	background: rgba(0, 0, 0, .9);
	cursor: zoom-out;
}
.otona-lb img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}
.otona-lb__btn {
	position: absolute;
	top: 50%;
	padding: .5em .75em;
	color: #fff;
	font-size: 28px;
	background: rgba(255, 255, 255, .12);
	border: 0;
	cursor: pointer;
	transform: translateY(-50%);
}
.otona-lb__btn.-prev { left: 8px; }
.otona-lb__btn.-next { right: 8px; }

/* 同人のサンプルを縦に並べて読む（画像は切り抜かず、横幅に合わせて縮小するだけ） */
.otona-reader {
	max-width: 760px;
	margin: 0 auto 1.5em;
}
.otona-reader__page {
	margin: 0 0 6px;
}
.otona-reader__page img {
	display: block;
	width: 100%;
	height: auto;
	background: #f2f2f2;
}
.otona-reader__note {
	margin: .5em 0 0;
	font-size: .8em;
	text-align: center;
	opacity: .7;
}

/* 一覧・スライダーのサムネイルも切り抜かない（同人の表紙は比率が違うため） */
.c-postThumb__img.u-obf-cover {
	object-fit: contain;
}
.c-postThumb__figure {
	background: #f2f2f2;
}

/* まとめ記事の作品カード */
.otona-rd {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 16px;
	margin: 0 0 2em !important;
	padding: 0 !important;
	list-style: none !important;
}
@media (min-width: 600px) {
	.otona-rd { grid-template-columns: repeat(3, 1fr); }
}
.otona-rd__item {
	margin: 0 !important;
	padding: 0 !important;
	font-size: .85em;
	line-height: 1.5;
}
.otona-rd__item::before { display: none !important; }
.otona-rd__link {
	display: block;
	color: inherit;
	text-decoration: none;
}
.otona-rd__img {
	display: block;
	aspect-ratio: 3 / 2;
	margin-bottom: .4em;
	overflow: hidden;
	background: #f2f2f2;
	border-radius: 3px;
}
.otona-rd__img img {
	width: 100%;
	height: 100%;
	/* 画像は切り抜かずに全体を表示する */
	object-fit: contain;
}
.otona-rd__ttl {
	display: -webkit-box;
	overflow: hidden;
	font-weight: 700;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
}
.otona-rd__link:hover .otona-rd__ttl { color: var(--color_link); }
.otona-rd__meta {
	display: block;
	margin-top: .3em;
	font-size: .9em;
	opacity: .75;
}
.otona-rd__rank-img {
	max-width: 480px;
	margin: 0 auto 1em;
	text-align: center;
}
.otona-rd__rank-img img {
	width: 100%;
	height: auto;
	border-radius: 4px;
}

/* まとめ記事：各作品の FANZA へのリンク */
.otona-rd__fanza {
	display: inline-block;
	margin-top: .4em;
	padding: .2em .8em;
	color: #fff !important;
	font-size: .85em;
	font-weight: 700;
	text-decoration: none !important;
	background: var(--color_btn_red, var(--color_main));
	border-radius: 3px;
}
.otona-rd__fanza:hover { opacity: .85; }
