@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
*/

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

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

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
	
/* =====================================
パパ活2.0 トップページ調整
===================================== */

/* Cocoon標準の見出し装飾を解除 */
.p20-home h1,
.p20-home h2,
.p20-home h3 {
background: transparent !important;
border: none !important;
border-radius: 0 !important;
box-shadow: none !important;
padding: 0 !important;
}

.p20-home h1::before,
.p20-home h1::after,
.p20-home h2::before,
.p20-home h2::after,
.p20-home h3::before,
.p20-home h3::after {
display: none !important;
}

/* セクション見出し */
.p20-home .p20-title {
color: #1A1A1A !important;
font-size: 27px;
font-weight: 700;
text-align: center;
line-height: 1.55;
margin: 0 0 18px !important;
}

/* ヒーロー部分 */
.p20-home .p20-hero h1 {
color: #FFFFFF !important;
font-size: 32px;
line-height: 1.6;
margin: 12px 0 20px !important;
}

/* 最下部の黒背景 */
.p20-home .p20-about .p20-title {
color: #FFFFFF !important;
}

/* カード内の見出し */
.p20-home .p20-guide h3,
.p20-home .p20-club h3,
.p20-home .p20-topic h3 {
color: #1A1A1A !important;
margin: 0 0 12px !important;
}

/* セクション見出しの下に細い金ライン */
.p20-home .p20-section > .p20-inner > .p20-title::after {
content: "";
display: block !important;
width: 46px;
height: 2px;
background: #C8A45D;
margin: 16px auto 0;
}

/* トップページの日付・投稿者を非表示 */
.home .date-tags,
.home .post-date,
.home .post-update,
.home .author-info,
.home .footer-meta,
.home .entry-footer {
display: none !important;
}

/* スマホ向け */
@media screen and (max-width: 767px) {

.p20-home .p20-section {
padding: 38px 18px;
}

.p20-home .p20-hero {
padding: 45px 20px;
}

.p20-home .p20-hero h1 {
font-size: 24px;
}

.p20-home .p20-hero p {
font-size: 13px;
line-height: 1.9;
}

.p20-home .p20-title {
font-size: 21px;
line-height: 1.55;
}

.p20-home .p20-lead {
font-size: 13px;
line-height: 1.85;
margin-bottom: 25px;
}

.p20-home .p20-guide {
padding: 22px 19px;
}

.p20-home .p20-guide h3 {
font-size: 19px;
}

.p20-home .p20-club {
padding: 19px 15px;
}

.p20-home .p20-club h3 {
font-size: 18px;
overflow-wrap: anywhere;
}

.p20-home .p20-club p,
.p20-home .p20-guide p {
font-size: 13px;
line-height: 1.85;
}

.p20-home .p20-button {
font-size: 12px;
padding: 12px 14px;
line-height: 1.6;
max-width: 100%;
}

.p20-home .p20-topic {
padding: 19px;
}

.p20-home .p20-topic h3 {
font-size: 16px;
}
}
	
/* =====================================
パパ活2.0 トップページ最終調整
スマートフォン表示
===================================== */

@media screen and (max-width: 767px) {

/* ボタンの文字折り返し改善 */
.p20-home .p20-button {
font-size: 11px;
padding: 12px 8px;
line-height: 1.5;
letter-spacing: 0;
width: 100%;
max-width: 100%;
box-sizing: border-box;
overflow-wrap: normal;
word-break: normal;
}

/* トップページの各セクションの余白 */
.p20-home .p20-section {
padding-top: 36px;
padding-bottom: 36px;
}

/* セクション見出しの下余白 */
.p20-home .p20-section-title {
margin-bottom: 22px;
}

/* カード内の余白 */
.p20-home .p20-club,
.p20-home .p20-guide {
margin-bottom: 16px;
}

}
  /*必要ならばここにコードを書く*/
}

/* パパ活2.0 ホームページの日付・投稿者を非表示 */

body.home .date-tags,
body.home .post-date,
body.home .post-update,
body.home .author-info,
body.home .author-name,
body.home .article-header .date-tags,
body.home .article-footer .author-info {
display: none !important;
}

/* パパ活2.0｜目次デザイン */
.article .toc {
background: #FAF9F6;
border: 1px solid #E8DCC3;
border-top: 3px solid #C8A45D;
border-radius: 4px;
padding: 20px 24px;
box-shadow: none;
max-width: 680px;
margin: 32px auto;
}

.article .toc-title {
color: #1A1A1A;
font-weight: 700;
letter-spacing: 0.05em;
}

.article .toc a {
color: #333333;
text-decoration: none;
}

.article .toc a:hover {
color: #A58243;
}

@media screen and (max-width: 480px) {
.article .toc {
padding: 16px;
margin: 24px auto;
width: 100%;
box-sizing: border-box;
}
}

/* パパ活2.0｜目次の横幅調整 */
.article .toc {
width: 100%;
max-width: 600px;
box-sizing: border-box;
}

/* =====================================
パパ活2.0｜SNSシェアボタン
===================================== */

/* シェアボタン全体 */
.sns-share.ss-bottom {
margin-top: 48px;
margin-bottom: 36px;
}

/* ボタン共通デザイン */
.sns-share.ss-bottom .sns-share-buttons a {
background: #1A1A1A !important;
color: #C8A45D !important;
border: 1px solid #C8A45D;
border-radius: 6px;
box-shadow: none;
transition: background 0.25s ease,
color 0.25s ease,
transform 0.25s ease;
}

/* アイコン・キャプション */
.sns-share.ss-bottom .sns-share-buttons a .fa,
.sns-share.ss-bottom .sns-share-buttons a .button-caption {
color: #C8A45D !important;
}

/* ホバー時 */
.sns-share.ss-bottom .sns-share-buttons a:hover {
background: #C8A45D !important;
color: #1A1A1A !important;
transform: translateY(-2px);
}

/* ホバー時のアイコン・文字 */
.sns-share.ss-bottom .sns-share-buttons a:hover .fa,
.sns-share.ss-bottom .sns-share-buttons a:hover .button-caption {
color: #1A1A1A !important;
}

/* スマートフォン */
@media screen and (max-width: 480px) {
.sns-share.ss-bottom {
margin-top: 32px;
}

.sns-share.ss-bottom .sns-share-buttons a {
border-radius: 4px;
}
}


/* パパ活2.0｜SNSシェア見出し */
.sns-share.ss-bottom .sns-share-message {
font-size: 0;
text-align: center;
margin-bottom: 18px;
}

.sns-share.ss-bottom .sns-share-message::after {
content: "SHARE THIS ARTICLE";
font-size: 15px;
font-weight: 600;
letter-spacing: 0.15em;
color: #A58243;
}

/* パパ活2.0｜SNSフォローボタン */
.sns-follow .sns-follow-buttons a {
background: #1A1A1A !important;
color: #C8A45D !important;
border: 1px solid #C8A45D;
border-radius: 6px;
box-shadow: none;
transition: background 0.25s ease,
color 0.25s ease;
}

.sns-follow .sns-follow-buttons a:hover {
background: #C8A45D !important;
color: #1A1A1A !important;
}
	
	
/* ========================================
パパ活2.0｜ラグジュアリー見出し
======================================== */

/* H2：マットブラック × ゴールド */
.article .entry-content h2 {
position: relative;
background: #1A1A1A;
color: #FFFFFF;
border: none;
border-radius: 2px;
padding: 30px 28px 24px;
margin: 64px 0 28px;
font-size: 1.5em;
font-weight: 700;
line-height: 1.6;
letter-spacing: 0.035em;
box-shadow: none;
}

.article .entry-content h2::before {
content: "";
display: block;
width: 38px;
height: 2px;
margin-bottom: 14px;
background: #C8A45D;
}

/* H3：ゴールドの左線 × 細い下線 */
.article .entry-content h3 {
background: transparent;
color: #1A1A1A;
border: none;
border-left: 3px solid #C8A45D;
border-bottom: 1px solid #E8DCC3;
border-radius: 0;
padding: 10px 14px 14px;
margin: 44px 0 22px;
font-size: 1.25em;
font-weight: 700;
line-height: 1.6;
letter-spacing: 0.025em;
box-shadow: none;
}

/* H4：小さなゴールドアクセント */
.article .entry-content h4 {
position: relative;
background: transparent;
color: #333333;
border: none;
padding: 4px 0 4px 18px;
margin: 30px 0 16px;
font-size: 1.1em;
font-weight: 700;
line-height: 1.6;
}

.article .entry-content h4::before {
content: "";
position: absolute;
top: 0.85em;
left: 0;
width: 7px;
height: 7px;
border-radius: 50%;
background: #C8A45D;
}

/* スマートフォン用 */
@media screen and (max-width: 480px) {
.article .entry-content h2 {
padding: 23px 18px 20px;
margin: 44px 0 22px;
font-size: 1.25em;
}

.article .entry-content h3 {
padding: 8px 12px 12px;
margin: 32px 0 18px;
font-size: 1.13em;
}

.article .entry-content h4 {
font-size: 1.05em;
}
}
	
/* ========================================
パパ活2.0｜ラグジュアリー見出し
======================================== */

/* H2：マットブラック × ゴールド */
.article .entry-content h2 {
position: relative;
background: #1A1A1A;
color: #FFFFFF;
border: none;
border-radius: 2px;
padding: 30px 28px 24px;
margin: 64px 0 28px;
font-size: 1.5em;
font-weight: 700;
line-height: 1.6;
letter-spacing: 0.035em;
box-shadow: none;
}

.article .entry-content h2::before {
content: "";
display: block;
width: 38px;
height: 2px;
margin-bottom: 14px;
background: #C8A45D;
}

/* H3：ゴールドの左線 × 細い下線 */
.article .entry-content h3 {
background: transparent;
color: #1A1A1A;
border: none;
border-left: 3px solid #C8A45D;
border-bottom: 1px solid #E8DCC3;
border-radius: 0;
padding: 10px 14px 14px;
margin: 44px 0 22px;
font-size: 1.25em;
font-weight: 700;
line-height: 1.6;
letter-spacing: 0.025em;
box-shadow: none;
}

/* H4：小さなゴールドアクセント */
.article .entry-content h4 {
position: relative;
background: transparent;
color: #333333;
border: none;
padding: 4px 0 4px 18px;
margin: 30px 0 16px;
font-size: 1.1em;
font-weight: 700;
line-height: 1.6;
}

.article .entry-content h4::before {
content: "";
position: absolute;
top: 0.85em;
left: 0;
width: 7px;
height: 7px;
border-radius: 50%;
background: #C8A45D;
}

/* スマートフォン用 */
@media screen and (max-width: 480px) {
.article .entry-content h2 {
padding: 23px 18px 20px;
margin: 44px 0 22px;
font-size: 1.25em;
}

.article .entry-content h3 {
padding: 8px 12px 12px;
margin: 32px 0 18px;
font-size: 1.13em;
}

.article .entry-content h4 {
font-size: 1.05em;
}
}

/* パパ活2.0｜H2見出しの余白調整 */

/* PC・タブレット */
.article .entry-content h2 {
padding: 20px 26px 22px !important;
margin-top: 44px !important;
margin-bottom: 24px !important;
}

/* ゴールドラインと文字の間隔 */
.article .entry-content h2::before {
margin-bottom: 10px !important;
}

/* スマートフォン */
@media screen and (max-width: 480px) {
.article .entry-content h2 {
padding: 18px 18px 20px !important;
margin-top: 36px !important;
margin-bottom: 20px !important;
}

.article .entry-content h2::before {
margin-bottom: 9px !important;
}
	
/* パパ活2.0｜スマホH2の横幅最適化 */
@media screen and (max-width: 480px) {

.article .entry-content h2 {
font-size: 1.08em !important;
line-height: 1.5 !important;
letter-spacing: 0 !important;
padding: 16px 12px 18px !important;
overflow-wrap: anywhere;
}

.article .entry-content h2::before {
width: 30px !important;
margin-bottom: 8px !important;
}

}
}


/* Cocoon標準のPR表記 */
.article .pr-label {
background: #FAF9F6 !important;
border: 1px solid #DCCBA8 !important;
border-radius: 4px !important;
padding: 12px 16px !important;
margin: 18px 0 24px !important;
color: #333333 !important;
font-size: 13px !important;
line-height: 1.7 !important;
text-align: left !important;
}

/* 広告・PRラベル */
.article .pr-label::before {
content: "広告・PR";
display: inline-block;
background: #1A1A1A;
color: #FFFFFF;
padding: 3px 8px;
margin-right: 10px;
border-radius: 2px;
font-size: 11px;
font-weight: bold;
letter-spacing: 0.3px;
vertical-align: middle;
}

/* スマートフォン */
@media screen and (max-width: 480px) {
.article .pr-label {
padding: 12px !important;
font-size: 12px !important;
margin: 14px 0 20px !important;
}

.article .pr-label::before {
margin-right: 7px;
margin-bottom: 4px;
}
}
	
/* ========================================
パパ活2.0｜PR表記 最終デザイン
======================================== */

/* PC・スマートフォン共通 */
.article .pr-label.pr-label-l {
box-sizing: border-box !important;
background: #FAF9F6 !important;
border: 1px solid #DCCBA8 !important;
border-radius: 4px !important;
padding: 12px 16px !important;
margin: 18px 0 24px !important;
color: #333333 !important;
font-size: 13px !important;
line-height: 1.8 !important;
text-align: left !important;
}

/* 広告・PRラベル */
.article .pr-label.pr-label-l::before {
content: "広告・PR";
display: inline-block;
background: #1A1A1A;
color: #FFFFFF;
padding: 3px 8px;
margin-right: 10px;
border-radius: 2px;
font-size: 11px;
font-weight: bold;
letter-spacing: 0.3px;
vertical-align: middle;
}

/* スマートフォンのみ */
@media screen and (max-width: 480px) {

.article .pr-label.pr-label-l {
padding: 12px !important;
font-size: 12px !important;
margin: 14px 0 20px !important;
}

.article .pr-label.pr-label-l::before {
display: table !important;
margin-right: 0 !important;
margin-bottom: 8px !important;
}

}

/* パパ活2.0｜スマホ比較表・横スクロール案内 */
@media screen and (max-width: 767px) {

/* 外側はスクロールさせない */
.wp-block-flexible-table-block-table {
position: relative;
overflow: visible !important;
max-width: 100%;
margin-bottom: 8px !important;
}

/* テーブル直下の余白を縮小 */
.wp-block-flexible-table-block-table table {
margin-bottom: 0 !important;
}

/* 案内文の位置を調整 */
.wp-block-flexible-table-block-table::after {
margin-top: 0 !important;
padding-top: 4px !important;
padding-bottom: 0 !important;
}



/* テーブル本体のみ横スクロール */
.wp-block-flexible-table-block-table table {
display: block;
overflow-x: auto !important;
-webkit-overflow-scrolling: touch;
width: 100% !important;
min-width: 0 !important;
white-space: nowrap;
table-layout: auto !important;
}

/* セル幅を確保 */
.wp-block-flexible-table-block-table th,
.wp-block-flexible-table-block-table td {
min-width: 150px;
white-space: nowrap;
word-break: normal;
}

/* 案内文はスクロール領域の外に固定 */
.wp-block-flexible-table-block-table::after {
content: "↔ 表は左右にスクロールできます";
display: block;
position: relative;
width: 100%;
text-align: center;
font-size: 11px;
font-weight: 400;
color: #777777;
letter-spacing: 0.04em;
padding: 8px 0 0;
margin: 0;
}

}

/* ========================================
パパ活2.0｜Cocoon標準FAQ
ブラック × ゴールド
======================================== */

/* FAQ全体 */
.entry-content .faq {
background: #FAF9F6;
border: 1px solid #E5D8BD;
border-radius: 8px;
padding: 22px 24px;
margin: 24px 0;
box-shadow: none;
}

/* 質問・回答の行 */
.entry-content .faq .faq-question,
.entry-content .faq .faq-answer {
display: flex;
align-items: flex-start;
gap: 14px;
margin: 0;
padding: 0;
border: none;
background: transparent;
}

/* 質問 */
.entry-content .faq .faq-question {
padding-bottom: 16px;
border-bottom: 1px solid #E5D8BD;
font-weight: 700;
color: #1A1A1A;
}

/* 回答 */
.entry-content .faq .faq-answer {
padding-top: 16px;
color: #333333;
}

/* Q・Aラベル共通 */
.entry-content .faq .faq-question-label,
.entry-content .faq .faq-answer-label {
display: flex;
align-items: center;
justify-content: center;
flex: 0 0 36px;
width: 36px;
height: 36px;
padding: 0;
margin: 0;
border: none;
border-radius: 4px;
font-size: 17px;
font-weight: 700;
line-height: 1;
box-shadow: none;
}

/* Q：ブラック背景＋ゴールド文字 */
.entry-content .faq .faq-question-label {
background: #1A1A1A;
color: #C8A45D;
}

/* A：ゴールド背景＋ブラック文字 */
.entry-content .faq .faq-answer-label {
background: #C8A45D;
color: #1A1A1A;
}

/* 質問・回答の本文 */
.entry-content .faq .faq-question-content,
.entry-content .faq .faq-answer-content {
flex: 1;
min-width: 0;
margin: 0;
padding: 0;
}

/* 本文中の段落余白を調整 */
.entry-content .faq .faq-question-content p,
.entry-content .faq .faq-answer-content p {
margin: 0;
padding: 0;
line-height: 1.7;
}

/* スマートフォン */
@media screen and (max-width: 767px) {

.entry-content .faq {
padding: 18px 15px;
margin: 20px 0;
}

.entry-content .faq .faq-question,
.entry-content .faq .faq-answer {
gap: 10px;
}

.entry-content .faq .faq-question-label,
.entry-content .faq .faq-answer-label {
flex-basis: 30px;
width: 30px;
height: 30px;
font-size: 15px;
}

}

/* ========================================
パパ活2.0 高級交際クラブ紹介カード
======================================== */

.p20-club-card {
margin: 36px 0 48px;
background: #FAF9F6;
border: 1px solid #D8C49A;
border-radius: 12px;
overflow: hidden;
box-shadow: 0 8px 28px rgba(0,0,0,.07);
}

.p20-club-header {
background: #1A1A1A;
color: #FFFFFF;
padding: 24px;
border-bottom: 3px solid #C8A45D;
}

.p20-club-rank {
color: #C8A45D;
font-size: 12px;
font-weight: 700;
letter-spacing: .14em;
margin-bottom: 8px;
}

.p20-club-card .p20-club-name {
color: #FFFFFF;
font-size: 25px;
font-weight: 700;
line-height: 1.5;
margin: 0;
padding: 0;
border: none;
background: none;
}

.p20-club-body {
padding: 24px;
}

.p20-club-logo {
display: block;
width: auto;
max-width: 100%;
max-height: 105px;
object-fit: contain;
margin: 0 auto 22px;
}

.p20-club-point {
background: #F2EBDD;
border-left: 4px solid #C8A45D;
padding: 16px 18px;
margin-bottom: 24px;
}

.p20-club-point-label {
display: block;
color: #94712F;
font-size: 12px;
font-weight: 700;
letter-spacing: .1em;
margin-bottom: 7px;
}

.p20-club-point p {
color: #1A1A1A;
font-size: 17px;
font-weight: 700;
line-height: 1.8;
margin: 0;
}

.p20-club-table {
width: 100%;
border-collapse: collapse;
margin: 0 0 24px;
font-size: 15px;
}

.p20-club-table th,
.p20-club-table td {
padding: 13px 14px;
border-bottom: 1px solid #E4DCCB;
line-height: 1.7;
vertical-align: top;
}

.p20-club-table th {
width: 32%;
background: #F2EBDD;
color: #1A1A1A;
font-weight: 700;
text-align: left;
}

.p20-club-table td {
background: #FFFFFF;
color: #333333;
}

.p20-club-description {
color: #333333;
line-height: 1.9;
margin-bottom: 22px;
}

.p20-club-cta {
display: block;
background: #C8A45D;
color: #1A1A1A !important;
text-align: center;
text-decoration: none !important;
font-weight: 700;
font-size: 16px;
padding: 17px 14px;
border-radius: 6px;
transition: background .2s ease;
}

.p20-club-cta:hover {
background: #D9B975;
color: #1A1A1A !important;
}

.p20-club-note {
font-size: 12px;
color: #777777;
margin: 12px 0 0;
text-align: center;
}

.p20-club-detail {
margin-top: 18px;
text-align: center;
font-size: 14px;
}

.p20-club-detail a {
color: #806124;
text-decoration: underline;
}

@media screen and (max-width: 600px) {
.p20-club-header {
padding: 19px 17px;
}

.p20-club-card .p20-club-name {
font-size: 21px;
}

.p20-club-body {
padding: 17px 14px;
}

.p20-club-point p {
font-size: 15px;
}

.p20-club-table {
font-size: 13px;
}

.p20-club-table th,
.p20-club-table td {
padding: 11px 9px;
}

.p20-club-table th {
width: 34%;
}

.p20-club-cta {
font-size: 15px;
}
}

/* =====================================
パパ活2.0 男女別CTAボタン
===================================== */

.p20-club-cta-group {
display: flex;
flex-direction: column;
gap: 12px;
margin-top: 24px;
}

.p20-club-cta-group .p20-club-cta {
margin: 0;
}

/* 男性向け：ゴールド */
.p20-club-cta-male {
background: #C8A45D !important;
color: #1A1A1A !important;
border: 1px solid #C8A45D;
}

/* 女性向け：ブラック */
.p20-club-cta-female {
background: #1A1A1A !important;
color: #FFFFFF !important;
border: 1px solid #C8A45D;
}

.p20-club-cta-female:hover {
background: #333333 !important;
color: #FFFFFF !important;
}

@media screen and (max-width: 600px) {
.p20-club-cta-group {
gap: 10px;
}

.p20-club-cta-group .p20-club-cta {
font-size: 14px;
padding: 16px 10px;
}
}

/* パパ活2.0 交際クラブ公式バナー */

.p20-club-banner {
display: block;
width: 100%;
max-width: 100%;
height: auto;
margin: 0 auto 24px;
border-radius: 6px;
object-fit: contain;
}

@media screen and (max-width: 600px) {
.p20-club-banner {
margin-bottom: 20px;
border-radius: 4px;
}
}
