@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

div#toc{
	display:none;
}
div.package-wrap{
	width: 400px;
    height: 400px;
    margin: 0 auto;
	max-width:100%;
}

div.actress-info {
    padding: 0em 0.1em;
    margin: 2em 0.5em;
    color: #000000;
    background: #eeeeee;
    border-bottom: solid 6px #e2e0e0;
    border-radius: 9px;
}

p.important-info {
    margin: 0;
    padding: 0;
}

div.actress_image{
	text-align: center;
}

div.actress_image > img{
	border-radius: 20px;
}

div.eye-catch-wrap{
	display:none;
}

a.page-numbers {
    overflow: hidden;
}

.review-wrap {
    border: 1px solid #ddcdcd;
    padding: 0.2em;
}

/* 画像 */
div.package-wrap > a > img{
	max-height:100%;
	object-fit:contain;
}

img.smaple-images {
    width: 48%;
    padding: 0.1em;
}

div.sample_image_wrapper > div.common-icon-box {
    padding: 0px;
}

.sample_image_wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}

/* 固定ページ*/
div.category-wrap > li {
    list-style: none;
    /* margin: 1em; */
    padding: 0.5em;
    white-space: nowrap;
    margin: 0.1em;
    overflow: hidden;
    font-weight: bold;
    width: 24%;
    border: 1px solid #ded8d8;
}

.category-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

/* 記事ー追加PHPのCSS */
div.related_post_wrap{
	display: flex;
    flex-wrap: wrap;
    text-align: center;
	width: 98%;
	max-width:98%;
}

div.related_post_innner_content {
    width: 25%;
    margin: 0.1em;
}

/* 全表示 固定ページ ページネーション */
div.all_related_post_innner_content{
    width: 24%;
    margin: 0.1em;
	text-align:center;
}

ul.page-numbers {
	display: flex;
    align-items: center;
    flex-basis: content;
    padding: 2em;
    list-style: none;
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
	justify-content: center;
}
span.page-numbers.current {
    font-size: x-large;
    border: 1px solid #898383;
    border-radius: 30px;
}

div.all_related_post_innner_content > a{
	display:block;
}
/* star */

span.review-score:after {
    position: absolute;
    left: 0;
    top: 0;
    color: #FFA500;
}

span.review-score4:before {
    color: #ccc;
}

span.review-score{
    position: relative;
    display: inline-block;
}

span.mgs_star_00_04:before, span.mgs_star_00_04:after {
    content: "☆";
}
span.mgs_star_05_09:before, span.mgs_star_05_09:after {
    content: "☆";
}
span.mgs_star_10_14:before, span.mgs_star_10_14:after {
    content: "★";
}
span.mgs_star_15_19:before, span.mgs_star_15_19:after {
    content: "★";
}
span.mgs_star_20_24:before, span.mgs_star_20_24:after {
    content: "★★";
}
span.mgs_star_25_29:before, span.mgs_star_25_29:after {
    content: "★★";
}
span.mgs_star_30_34:before, span.mgs_star_30_34:after {
    content: "★★★";
}
span.mgs_star_35_39:before, span.mgs_star_35_39:after {
    content: "★★★";
}
span.mgs_star_40_44:before, span.mgs_star_40_44:after {
    content: "★★★★";
}
span.mgs_star_50:before, span.mgs_star_50:after {
    content: "★★★★★";
}

/* 検索  function */
form.my_searchform > input {
    margin: 0.1em;
}
form.my_searchform > select {
    margin: 0.1em;
}
form.my_searchform {
    display: flex;
    flex-wrap: inherit;
    width: 100%;
}

/* 検索結果-タグ */
a.entry-card-wrap.a-wrap.border-element.cf {
    width: 49%;
}

div#list {
    display: flex;
    width: 30;
    flex-flow: wrap;
}

/* ショートコード override */
div.popular-entry-cards{
	display: flex;
    flex-wrap: wrap;
}

.widget-entry-cards.card-large-image .a-wrap {
    max-width: 400px;
    width: 30%;
    margin: 0 auto;
}

/* twitter-timeline  */
div.twitter-timeline{
	margin:0 auto;
	width:50%;
}

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
	div.related_post_innner_content{
		width:48%;
	}
	div.all_related_post_innner_content {
		width:48%;
	}
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
	div.category-wrap > li{
		width: 48%;
	}
	div.related_post_innner_content{
		width:100%;
	}
	div.all_related_post_innner_content {
		width: 100%;
	}
	form.my_searchform {
    	flex-wrap: wrap;
    }
	.widget-entry-cards.card-large-image .a-wrap {
       width: 48%;
	}
    /* twitter-timeline*/
	div.twitter-timeline{
		width:100%;
	}
	/* gazou */
	img.smaple-images {
		width: 100%;
	}
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}
.related-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    margin: 30px 0;
}

.related-item{position:relative;overflow:hidden;border-radius:8px;box-shadow:0 3px 10px rgba(0,0,0,.15)}
.related-thumb{width:100%;height:100%;object-fit:cover;transition:.3s}
.related-item:hover .related-thumb{transform:scale(1.08)}
.related-title{
    position:absolute;bottom:0;left:0;right:0;
    background:linear-gradient(transparent,#000);
    color:#fff;padding:20px 8px 8px;font-size:13px;line-height:1.3;
    font-weight:600;text-shadow:0 1px 3px #000;
}

@media(min-width:768px){
    .related-grid{grid-template-columns:repeat(4,1fr)}
}

/* レビュー全体のカード化（影＋丸角） */
.review-wrap {
    background: #fff;
    border-radius: 16px;
    padding: 24px;
    margin: 30px 0;
    box-shadow: 0 8px 25px rgba(0,0,0,0.12);
    border: 1px solid #ffebee;
    position: relative;
    overflow: hidden;
    transition: transform .3s, box-shadow .3s;
}
.review-wrap:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(233,30,99,0.15);
}

/* タイトル部分 */
.review-wrap h4 {
    margin: 0 0 12px 0;
    font-size: 20px;
    font-weight: 700;
    color: #c2185b;
    position: relative;
    padding-left: 28px;
}

/* 評価（★＋数字） */
.review-score {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #fff;
    padding: 6px 16px;
    border-radius: 50px;
    font-weight: 800;
    font-size: 18px;
    margin-bottom: 16px;
}

/* レビュー本文（読みやすい＆興奮度UP） */
.review-text {
    font-size: 16px;
    line-height: 1.78;
    color: #333;
    background: rgba(255,240,245,0.4);
    padding: 20px;
    border-radius: 12px;
    border-left: 5px solid #e91e63;
    position: relative;
}
.review-text:before {
    content: "“";
    position: absolute;
    top: -10px;
    left: 12px;
    font-size: 80px;
    color: #e91e63;
    opacity: 0.15;
    font-family: Georgia, serif;
}

/* スマホ対応 */
@media (max-width: 767px) {
    .review-wrap { padding: 18px; border-radius: 12px; }
    .review-wrap h4 { font-size: 18px; }
    .review-text { font-size: 15px; padding: 16px; }
}