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

/************************************
** 子テーマ用のスタイルを書く
************************************/
/************************************
** Traveling Webcams 共通デザイン V1｜本番用
** 2026-11-13
** 通常の記事・固定ページに適用。
** .tw-page を含む完成済みトップページの本文は除外。
** ヘッダー、フッター、サイドバーは対象外。
************************************/

/* 01：ブランドの色・文字。本文領域だけに適用 */
#main .entry-content:not(:has(.tw-page)) {
  --tw-blue: #003d98;
  --tw-teal: #04a1a1;
  --tw-ink: #1f2d3d;
  --tw-border: #d9e2ec;
  box-sizing: border-box;
  width: 100%;
  max-width: 790px;
  margin-left: auto;
  margin-right: auto;
  color: var(--tw-ink);
  font-family: -apple-system, BlinkMacSystemFont, "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-size: 16px;
  line-height: 1.76;
}

/* 02：本文段落・リスト。Cocoonの見出し以外の構造は維持 */
#main .entry-content:not(:has(.tw-page)) p,
#main .entry-content:not(:has(.tw-page)) li {
  line-height: 1.76;
}

/* 03：H2見出し */
#main .entry-content:not(:has(.tw-page)) h2 {
  color: #003d98;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  padding: 0;
  margin: 2em 0 0.7em;
  font-size: clamp(25px, 3vw, 33px);
  font-weight: 700;
  line-height: 1.45;
}

/* 04：H3見出し */
#main .entry-content:not(:has(.tw-page)) h3 {
  color: #003d98;
  background: transparent;
  border: 0;
  border-left: 4px solid #04a1a1;
  border-radius: 0;
  box-shadow: none;
  padding: 5px 0 5px 14px;
  margin: 1.7em 0 0.65em;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.5;
}

/* 05：H4見出し */
#main .entry-content:not(:has(.tw-page)) h4 {
  color: #003d98;
  background: transparent;
  border: 0;
  border-bottom: 1px solid #d9e2ec;
  border-radius: 0;
  box-shadow: none;
  padding: 5px 0 10px;
  margin: 1.5em 0 0.6em;
  font-size: 19px;
  font-weight: 700;
  line-height: 1.5;
}

/* 06：WordPress標準のボタンブロック */
#main .entry-content:not(:has(.tw-page)) .wp-block-button__link {
  display: inline-block;
  color: #fff;
  background: #003d98;
  border: 1px solid #003d98;
  border-radius: 12px;
  padding: 13px 25px;
  font-weight: 700;
  line-height: 1.5;
  text-decoration: none;
  box-shadow: none;
  transition: background-color 0.2s ease;
}
#main .entry-content:not(:has(.tw-page)) .wp-block-button__link:hover,
#main .entry-content:not(:has(.tw-page)) .wp-block-button__link:focus-visible {
  color: #fff;
  background: #002c70;
}

/* 07：専用クラス tw-card を付けたグループのカード装飾。
   既存のすべてのグループには適用しません。 */
#main .entry-content:not(:has(.tw-page)) .tw-card {
  box-sizing: border-box;
  padding: 26px;
  border: 1px solid #d9e2ec;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 5px 20px rgba(18, 48, 78, 0.06);
}


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

/*834px以下*/
@media screen and (max-width: 834px){
  #main .entry-content:not(:has(.tw-page)) h2 { font-size: 27px; }
  #main .entry-content:not(:has(.tw-page)) h3 { font-size: 20px; }
}

/*480px以下*/
@media screen and (max-width: 480px){
  #main .entry-content:not(:has(.tw-page)) h2 { font-size: 25px; }
  #main .entry-content:not(:has(.tw-page)) h3 { font-size: 19px; }
  #main .entry-content:not(:has(.tw-page)) h4 { font-size: 18px; }
  #main .entry-content:not(:has(.tw-page)) .tw-card { padding: 20px; }
}
