@charset "utf-8";

.thumbnail {
	display: flex;
    flex-wrap: wrap;
	width: 100%;
	margin: auto;
	background-color: #f9f9f9;
}

.thumbnail li {
	width: calc(100%/4);
	padding: 3px;
	list-style: none;
}

.thumbnail img {
	/* 画像のスタイル */
	width: 100%;
	object-fit: cover;
	border: #eee 3px solid;
}

.thumbnail li p {
	margin-bottom: 0rem;
	margin: 5px 0;
}

.modal-content {
	background-color: unset;
}

.rating-color {
	color: #fbc634;
}

.rating {
	color: #cecece;
}

.sm_m {
	margin-bottom: 50px;
}

.sample-movie {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 75%;
}

.sample-movie iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.list-img {
	width: 100%;
	height: 225px;
	object-fit: cover;
}

.fa-hatena:before {
	content: "B!";
	font-family: Verdana;
	/* はてブのフォントにもっとも近い */
	font-weight: bold
}

.share-btn-type7 {
	max-width: 240px;
	margin: 1.2em auto;
	display: flex;
	justify-content: space-between;
}

.share-btn-type7 .share-btn__item {
	width: 50px;
	height: 50px;
	color: #fff;
	font-size: 16px;
	text-align: center;
	line-height: 50px;
	border-radius: 50%;
	box-shadow: 0 2px 2px rgba(0, 0, 0, .16);
	transition: all .3s;
}

.share-btn-type7 .share-btn__item:hover {
	transform: scale(1.08);
	box-shadow: 0 4px 10px rgba(0, 0, 0, .14);
}

.share-btn-type7 .share-btn__item--hatebu {
	background-color: #00A4DE;
}

.share-btn-type7 .share-btn__item--facebook {
	background-color: #1778F2;
}

.share-btn-type7 .share-btn__item--twitter {
	background-color: #1BA1F3;
}

.share-btn-type7 .share-btn__item--pocket {
	background-color: #EF4155;
}


body{
	color: #555;
	font-size: 16px;
    min-height: 100vh;
    position: relative;
    padding-bottom: 95px;
    box-sizing: border-box;
}

@media (max-width: 600px) {
	body{
		font-size: 16px;
	}
}

a {
    color: #2287ec;
    text-decoration: none;
}

.table {
	--bs-table-bg: transparent;
	--bs-table-accent-bg: transparent;
    --bs-table-striped-color: #555;
    --bs-table-striped-bg: rgba(0, 0, 0, 0.05);
    --bs-table-active-color: #555;
    --bs-table-active-bg: rgba(0, 0, 0, 0.1);
    --bs-table-hover-color: #555;
    --bs-table-hover-bg: rgba(0, 0, 0, 0.075);
    width: 100%;
    margin-bottom: 1rem;
    color: #555;
    vertical-align: top;
    border-color: #dee2e6;
}

.btn {
    border-radius: 5px;
	padding: 0rem 0.75rem;
}

button.btn  {
	padding: 0.5rem 0.75rem;
}

.btn-check:focus+.btn-secondary, .btn-secondary:focus {
    color: #fff;
    background-color: #2287ec;
	border: 0;
    border-color: transparent;
    box-shadow: none;
}

.btn-secondary:hover {
    color: #fff;
    background-color: #2287ec;
    border-color: transparent;
}

.me-3 {
	margin-right: 0rem!important;
}

.container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
	width: 100%;
	max-width: 1080px;
	background-color: #FFF;
	padding-top: 20px;
	padding-bottom: 0px;
	padding-right: var(--bs-gutter-x,.75rem);
	padding-left: var(--bs-gutter-x,.75rem);
	margin-right: auto;
	margin-left: auto;
}

nav.header {
	border-top: solid 25px #c10000;
	background-color: #FFFFFF;
}

nav.header .l-header__logo {
	max-width: 1080px;
	margin-left: auto;
	margin-right: auto;
	padding: 10px 0 10px 5px;
}

@media (max-width: 1000px) {
	nav.header .l-header__logo {
    	padding: 0px 0 10px 5px;
}
}

.l-header__logo .c-headLogo {
	margin-bottom: 0rem!important;
}

@media (max-width: 1000px) {
.l-header__logo .c-headLogo img {
	width: 220px;
	height: auto;
}
}

.c-headLogo__link {
	text-decoration: none;
	display: inline-block;
}

@media not all and (min-width: 1000px) {
	.c-headLogo__link {
    	padding: 10px 0 0;
	}

}

.container h1 {
	font-size: 18px!important;
	line-height: 1.5;
	font-weight: bold;
	padding: 0.5em 1.2em 0.5em 0.5em;
	border-bottom: 0px #3d3d3d solid!important;
	background-color: #eee!important;
}

/*=================================================================================
プロモーション文字
=================================================================================*/
.promotion {
	margin: 5px 0px 0px 5px;
	font-size: 14px;
	color: #aaa;
	font-weight: bold;
}

@media (max-width: 1000px) {
	.promotion {
		margin: 0px 0px 0px 5px;
		font-size: 12px;
	}
}

/*=================================================================================
サイトデザイン
=================================================================================*/
#container {
	width: 100%;
	max-width: 1080px;
	margin: 0 auto 40px;
	display: flex;
	background-color: #FFF;
}

@media (max-width: 1000px) {
	#container {
		display: block;
	}
}

main {
	width: 100%;
	max-width: 755px;
}

@media (max-width: 1000px) {
	.container {
		max-width: 100%;
	}
	main {
		max-width: 100%;
	}
}

aside {
	width: 100%;
	max-width: 300px;
	margin-left: var(--bs-gutter-x,.75rem);
	margin-right: var(--bs-gutter-x,.75rem);
	background-color: #FFF;
	margin-bottom: 3em;
	padding: 20px 0;
}

@media (max-width: 1000px) {
	aside {
		width: 94%;
		max-width: none;
		margin-left: 0px;
		margin-left: 3%;
		margin-right: 3%;
	}
}


/*=================================================================================
サイトメニュー
=================================================================================*/
nav#menubtn {
	padding-left: 0rem;
	max-width: 1080px;
	margin: 1em 0 0;
	margin-left: auto;
	margin-right: auto;
	background-color: #fff;
}

@media (max-width: 600px) {
	nav#menubtn {
		margin: 1em 0 0;
	}
}

/* メニューのスタイリング */
.menu {
	list-style: none;
	padding: 0;
	margin-bottom: 1em;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.menu-item {
	padding: 5px;
	box-sizing: border-box;
	text-align: center;
	width: calc(100%/4);
}

.menu-item a {
	display: block;
	background-color: #c10000;
	position: relative;
}

.menu-item a:before {
	position: absolute;
	top: 4px;
	left: 4px;
	width: calc(100% - 8px);
	height: calc(100% - 8px);
	content: '';
	border: 1px solid #fff;
}

.menu-item a span {
	margin: 20px 0;
	background-color: #fff;
	display: inline-block;
	width: 85%;
	height: 40px;
	border-radius: 40px;
	font-size: 17px;
	font-weight: bold;
	color: #666;
	line-height: 40px;
}
  
/* レスポンシブ対応 */
@media (max-width: 960px) {
	.menu-item {
		width: calc(100%/2);
	}
}

@media (max-width: 600px) {
	.menu-item a span {
		margin: 15px 0;
		height: 30px;
		line-height: 30px;
	}
}


/*=================================================================================
サイト背景 画像
=================================================================================*/
.fixed-top {
	position: inherit;
}

#searchbox , #actresssearchbox {
	margin-bottom: 30px;
}

@media (max-width: 600px) {
}

.form-control {
	line-height: 2;
}

#searchbox input::placeholder {
	font-weight: bold;
	color: #cccccc;
}

.d-flex {
    display: flex!important;
    flex-wrap: wrap;
}

@media (max-width: 1000px) {
	.d-flex {
		display: flex!important;
		flex-wrap: nowrap;
	}
}

#searchbox form button {
	width: 100%;
	font-weight: bold;
	font-size: 17px;
	margin-top: 15px;
}

@media (max-width: 1000px) {
	#searchbox form button {
		width: 110px;
		font-size: 16px;
		margin-top: 0px;
		margin-left: 5px;
	}
}


h2.ttl_frame1, h3.ttl_frame1 {
	font-size: 20px;
	line-height: 1.5;
	font-weight: bold;
	padding: 0.5em 1.2em 0.5em 0.5em;
	border-bottom: 0px #3d3d3d solid!important;
	background-color: #eee!important;
	display: flex;
	justify-content: space-between;
}

@media (max-width: 649px) {
	h2.ttl_frame1, h3.ttl_frame1 {
		font-size: 20px;
		line-height: 1.5;
	}
}

.h2menuwaku {
    display: flex;
    justify-content: space-between;
    width: 210px;
}


.btn-group-sm>.btn, .btn-sm {
	margin-left: 10px;
    font-size: 15px;
	font-weight: bold;
    border-radius: 0.2rem;
}

.actresssearchboxbtn {
	width: 100%;
}

.btn.actresssearchboxbtn {
    line-height: 2;
    font-weight: bolder;
    font-size: 18px;
}

/*=================================================================================
女優検索 五十音順
=================================================================================*/
#actlist {
	display: flex;
}

#actlist table {
	width: 50%;
}

@media (max-width: 650px) {
	#actlist {
		display: block;
	}
	#actlist table {
		width: 100%;
	}
}

#actlist table a {
	display: inline-block;
	height: 40px;
	width: 40px;
	border-radius: 50%;
	background-color: #ffe7b5;
	text-align: center;
	line-height: 40px;
	font-weight: bold;
}

/*=================================================================================
動画 横の数
=================================================================================*/
@media (max-width: 749px) {
	.col-sm-3 {
		width: calc(100% / 2);
	}
}

@media (min-width: 750px) and (max-width: 899px) {
	.col-sm-3 {
		width: calc(100% / 3);
	}
}

@media (min-width: 900px) {
	.col-sm-3 {
		width: calc(100% / 3);
	}
}

.card-body-title {
	font-size: 17px!important;
	font-weight: bold;
	color: #555555;
    background-color: #eeeeee;
	margin-top: 10px;
    padding: 10px;
	border-radius: 0.25rem;
} 

.show .card-body {
	padding: 1rem 0rem 3em;
}

.card {
	height: 100%;
	border: none;
	border-radius: 0;
	background-color: #f9f9f9;
}

.card .list-img {
    height: 180px;
}

.card-title {
	height: 40px;
}

.card .card-body {
    padding: 0.5rem 0.5rem;
	font-size: 16px;
}

.card .card-body p.off {
	display: none;
}

.card .card-body > p:nth-of-type(n+2)  {
	font-size: 14px;
	font-weight: bold;
	color: #999999;
    margin-bottom: 5px;
}

.row {
    margin-top: calc(var(--bs-gutter-y) * -0);
    margin-right: calc(var(--bs-gutter-x) * -.0);
    margin-left: calc(var(--bs-gutter-x) * -.0);
}

@media (min-width: 600px) {
.row>* {
	padding-right: 3px;
	padding-left: 3px;
}
}

@media (max-width: 599px) {
.row>* {
	padding-right: 3px;
	padding-left: 3px;
}
.card .list-img {
	height: 120px;
}
.card .card-body {
    padding: 0.2rem 0.2rem;
	font-size: 14px;
}
.card-title {
	height: auto;
}
p.off {
	display: none;
}
}

#actbody {
	margin-top: 30px;
}

#actbody .g-3 {
    --bs-gutter-y: 2rem;
}

#actbody .g-3 {
	--bs-gutter-x: 2rem;
}

.list-img {
	border: #eee 5px solid;
}

.btn-secondary {
	font-weight: bold;
    color: #577ee0;
    background-color: transparent;
    border-color: transparent;
}

nav ol.border {
	border: 0px solid #ffffff!important;
	background: none!important;
	font-size: 14px;
	font-weight: bold;
	color: #999;
}

/* ページャー */
nav ul.pagination { margin-top: 1.5rem; }

.page-link { padding: 0.8rem 1.0rem; }

/*=================================================================================
フッター
=================================================================================*/
#footerwrapper {
	width: 100%;
	bottom: 0;
	position: absolute;
}

#footerwrapper .apiimg {
	text-align: center;	
	padding: 5px 0;
}

#footerwrapper .information ul.listlink {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	list-style: none;
	background-color: #404849;
	margin: 0;
	padding: 5px 0;
}

#footerwrapper .information ul.listlink li:first-child {
	border-left: 1px solid;
}

#footerwrapper .information ul.listlink li {
	border-right: 1px solid;
}

#footerwrapper .information ul.listlink li a {
	color: #FFF;
	display: inline-block;
	font-size: 13px;
	padding: 0 0.75em;
}

#footerwrapper footer {
	width: 100%;
	height: 52px;
	display: inline-block;
	background-color: #404849;
	color: #FFF;
	font-size: 12px;
}

#footerwrapper footer .copyright {
	margin: 1.4em 0;
	text-align: center;
}


/*=================================================================================
パッケージ
=================================================================================*/
a.packageimg {
	padding: 20px 0;
	background-color: #f9f9f9;
	border-radius: 0.25rem;
}

.packageimgwaku {
	padding: 5px 0;
	text-align: center;
	background-color: #f9f9f9;
}

img.packageimg {
	width: 400px;
	max-width: 100%;
}

/*=================================================================================
サンプル画像 スライダー
=================================================================================*/
.sampleimg {
	margin: 1em 5px 0;
}

.clickimg {
	font-weight: bold;
}

/*=================================================================================
動画＆口コミ ボタン
=================================================================================*/
.syouhinlist {
    width: 100%;
	margin: 0 0 0px;
	padding: 30px 50px;
    background-color: #f9f9f9;
    border-radius: 0.25rem;
}

@media (max-width: 599px) {
	.syouhinlist {
		margin: 0 0;
		padding: 20px 10px;
	}
}

.syouhinlist .btn-social-flat {
	text-decoration: none;
	display: block;
	height: 76px;
	padding: 0 0 0 80px;
	border: #c10000 4px solid;
	border-radius: 8px;
	color: #FFF;
	background: #c10000 url("../images/videoiconbt60.png") 6px 4px no-repeat;
	box-shadow: 0 5px 1px -2px #940000;
}

.syouhinlist.sitelist .btn-social-flat {
	width: 90%;
	margin: 0 4.9%;
}

.btn-social-flat-text{
    display: block;
    font-size: 28px;
    font-weight: bold;
    line-height: 1.3;
    width: 97%;
    border-bottom: #FFF 1px solid;	
}

.kotiratext{
	display: inline-block;
	text-decoration: none;
	font-weight: bold;
	line-height: 1;
	padding: 7px 3px 0;
	font-size: 19px;
}

.btn-social-flat .kotiratext .aka {
	display: inline-block;
	margin-right: 5px;
	color: #ff4634;
	font-weight: bolder;
	background-color: #FFF;
	padding: 0px 8px 2px;
	border-radius: 15px;
}

/*=================================================================================
動画 詳細
=================================================================================*/
.syouhindesc {
    width: 100%;
    margin: 30px 0 30px;
    padding: 30px 20px;
    background-color: #f9f9f9;
    border-radius: 0.25rem;
}

@media (max-width: 800px) {
	.syouhindesc {
		font-size: 15px;
		padding: 20px 10px;
	}
}

.syouhindesc p {
	line-height: 1.8;
}

.syouhindesc a {
	pointer-events: none;
	color: #555;
}

/*=================================================================================
個別ページ 詳細
=================================================================================*/
.table-responsive {
    background-color: #f9f9f9;
    font-size: 15px;
}

/*=================================================================================
キーワード検索
=================================================================================*/
#searchbutton {
	display: none;
}

@media (max-width: 1000px) {
#searchbutton {
	display: block;
}
}

@media (max-width: 649px) {
	.sp_off { display: none;}
}

@media (min-width: 650px) {
	.pc_off { display: none;}
}

ul.mainkeyword_genre {
	list-style: none;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	font-weight: bold;
	padding-left: 0;
}

ul.mainkeyword_genre li {
	display: inline-block;
	padding-left: 10px;
	color: #555;
}

@media (max-width: 649px) {
	ul.mainkeyword_genre li {
		width: calc(100%/2);
		text-align: center;
		border-bottom: 2px #ddd solid;
	}

	ul.mainkeyword_genre li a {
		display: block;
		padding: 15px 0;
		font-size: 15px;
	}
}

ul.keyword_genre {
	list-style: none;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	padding-left: 0;
}

ul.keyword_genre li {
	display: inline-block;
	width: calc(100%/5);
	text-align: center;
	border-bottom: 1px #ddd dotted;
}

@media (min-width: 750px) and (max-width: 899px) { ul.keyword_genre li { width: calc(100%/4); } }
@media (max-width: 749px) { ul.keyword_genre li { width: calc(100%/3); } }

ul.keyword_genre li a {
	display: block;
	padding: 8px 0;
	margin: 10px 0;
	font-size: 15px;
	font-weight: bold;
	border-left: 1px #eee solid;
	border-right: 1px #eee solid;
}

/*=================================================================================
プライバシーポリシー
=================================================================================*/

#privacyPolicybox {
	margin-bottom: 25px;
	padding: 1em;
	background: linear-gradient(-45deg,transparent 25%,#efefef 25%,#efefef 50%,transparent 50%,transparent 75%,#efefef 75%,#efefef);
	background-clip: padding-box;
	background-size: 6px 6px;
}

#privacyPolicybox p {
	margin: 25px;
}

#privacyPolicybox ul {
	margin: 25px;
}

/*=================================================================================
404
=================================================================================*/
.e404 {
	padding: 1.3em 1em 10em!important;
	text-align: center;
	font-weight: bold;
}

.e404 p.title404 {
	font-size: 10em;
}

.e404 a {
	display: inline-block;
	margin-top: 30px;
	padding: 10px 50px;
	background-color:#c10000 ;
	font-size: 1.5em;
	color: #ffffff;
    border-radius: 1.5em;
}

/*=================================================================================
サイドバー
==================================================================================*/
.sidewaku {
	margin: 0px 0 30px;
}

.sidewaku img {
	width: 100%;
	height: auto;
}

ul.listlink li a {
	font-size: 14px;
	font-weight: bold;
}

ul.rankimg {
	display: inline-block;
	margin: 10px 0 0 0;
}

/*=================================================================================
サイドバー アコーディオン
==================================================================================*/
.toggle_contents {
	border: 0px solid #d9d9d9;
}
.toggle_title {
	position: relative;
	padding: 15px;
	cursor: pointer;
	color: #FFF;
	font-size: 16px;
	line-height: 1.4;
	background-color: #b5b5b5 ;
	border-radius: 5px;
}
.toggle_title.selected {
	background-color: #c10000 ;
}

.toggle_btn {
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	background: #ffffff;
	display: block;
	width: 24px;
	height: 24px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	border-radius: 50%;
}
.toggle_btn:before, .toggle_btn:after {
	display: block;
	content: '';
	background-color: #c10000 ;
	;
	position: absolute;
	width: 10px;
	height: 2px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.toggle_btn:before {
	width: 2px;
	height: 10px;
}
.toggle_title.selected .toggle_btn:before {
	content: normal;
}
.toggle_contents dd {
	display: none;
}

.toggle_contents:first-of-type dd {
	display: block;
}

aside ul.keyword_genre li {
	display: inline-block;
	width: calc(100%/3);
	border-bottom: 1px #ddd dotted;
}

aside ul.keyword_genre li a {
    display: block;
    padding: 8px 0;
    margin: 10px 0;
    font-size: 15px;
}

@media (max-width: 1000px) {
	aside ul.keyword_genre li {
		width: calc(100%/5);
	}
}

@media (max-width: 800px) {
	aside ul.keyword_genre li {
		width: calc(100%/4);
	}
}

@media (max-width: 600px) {
	aside ul.keyword_genre li {
		width: calc(100%/3);
	}
}

/*=================================================================================
個別ページ 広告
==================================================================================*/
.otoapuad {
	margin: 30px 0;
}

.otoapuad a img {
	width: 100%;
}

/*=================================================================================
もっとボタン
==================================================================================*/
.morebtnbox {
	display: flex;
	justify-content: flex-end;
	margin-bottom: 30px;
}

.morebtn {
	display: block;
	width: 100px;
	text-align: center;
	font-weight: bold;
	font-size: 16px;
	line-height: 1.8;
	color: #fff;
	background-color: #c10000;
	border-radius: 5px;
}

.morebtn:hover {
	color: #fff;
}

/*=================================================================================
ファンザ 解説
==================================================================================*/
#fanzakaisetu img {
	width: 100%;
    border: #eee 5px solid;
}

#fanzakaisetu h3 {
	margin-top: 30px;
}

#fanzakaisetu .is-style-bg_stripe {
	margin-bottom: 25px;
	padding: 1em;
	background: linear-gradient(-45deg, transparent 25%, #f8f8f8 25%, #f8f8f8 50%, transparent 50%, transparent 75%, #f8f8f8 75%, #f8f8f8);
	background-clip: padding-box;
	background-size: 6px 6px;
}

#fanzakaisetu table {
	border: 1px solid #dcdcdc;
    border-collapse: collapse;
    border-spacing: 0;
    line-height: 1.6;
    max-width: 100%;
    text-align: left;
    width: 100%;
}

#fanzakaisetu table th {
	padding: 0.5em 0.75em;
	border: 1px solid #dcdcdc;
	background-color: #dadada;
}

#fanzakaisetu table td {
    padding: 0.5em 0.75em;
	border: 1px solid #dcdcdc;
	background-color: #ffffff;
}

#fanzakaisetu h4 {
	margin: 30px 0 0px;
	font-size: 20px;
	line-height: 1.5;
	font-weight: bold;
	padding: 0.5em 1.2em 0.5em 0.5em;
}

#fanzakaisetu dl dd {
	margin: 15px 0 20px 30px;
	line-height: 1.8;
}

#fanzakaisetu dl.dlred dt {
	color: #e44141;
	text-decoration: underline solid rgb(255, 251, 0) 5px;
}

#fanzakaisetu dl.dlblue dt {
	color: #3d79d5;
	text-decoration: underline solid rgb(255, 251, 0) 5px;
}

#fanzakaisetu ul.deviceli {
	display: flex;
	flex-wrap: wrap;
	padding-left: 0rem;
}

#fanzakaisetu ul.deviceli li {
	display: inline-block;
	line-height: 1.5;
    margin: 0.25em 0;
	padding: 0 8px;
}

/*=================================================================================
プロフィール
==================================================================================*/
.p-profileBox {
    width: 100%;
	margin: 0 0 30px;
    padding: 8px;
    background-color: #fff;
    border: #eee 1px solid;
}

figure.p-profileBox__bg {
	margin: 0 0 0;
	height: 160px;
	background: linear-gradient(-45deg, transparent 25%, #ececec 25%, #ececec 50%, transparent 50%, transparent 75%, #ececec 75%, #ececec);
	background-clip: padding-box;
	background-size: 6px 6px;
}

figure.p-profileBox__icon {
	margin: -88px 0 0;
	text-align: center;
}

.p-profileBox__name {
	margin: 5px 0;
	text-align: center;
}

.p-profileBox__text {

}


/*=================================================================================
他サイトへ
=================================================================================*/
.hokadouga a {
	display: inline-block;
	margin: 0 0 10px;
}

