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

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

/*トップページ黄色のエリアスマホ用ズレ防止-start---------*/

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

  html, body {
    padding: 0;
    margin: 0;
    overflow-x: hidden !important; /* 横スクロール強制防止 */
  }

  .new-entry-card {
    width: 100% !important;
    padding: 0 !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
    /* background-color: #ff0000;*/
  }

  .new-entry-card-thumb,
  .new-entry-card-thumb img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    display: block;
    box-sizing: border-box !important;
  }

  .new-entry-card-content {
    padding: 10px !important;
    box-sizing: border-box !important;
  }

  .swiper-wrapper {
    transform: none !important; /* 変なズレ防止 */
    width: 100% !important;
  }

  .swiper-slide {
    width: 100% !important;
  }
}

@media screen and (max-width: 768px) {
  .new-entry-card-content {
    padding: 0 40px !important;
    box-sizing: border-box !important;
    word-break: break-word;
    overflow-wrap: break-word;
  }

  .new-entry-card-content * {
    box-sizing: border-box !important;
    max-width: 100% !important;
    width: 100% !important;
    word-break: break-word;
  }

  .new-entry-card-content p,
  .new-entry-card-content h1,
  .new-entry-card-content h2,
  .new-entry-card-content h3 {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/*トップページ黄色のエリアスマホ用ズレ防止-end---------*/










/*◆ヘッダーのｃｓｓ◆start*/

.yoshigen-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start; /* ← ここを変更 */
  flex-wrap: wrap;
  gap: 30px;
  padding: 0px 30px;
  max-width: 1100px;
  margin: 0 auto;
  font-family: sans-serif;
  background-color: #fff; /* 確認用 */
}



/* ロゴ（左） */
.logo-area {
  display: flex;
  align-items: center;
}

.logo-area img {
  height: 120px;
  display: block;
}

/* 中央エリア：上下分ける */
.center-area {
  display: flex;
  flex-direction: column;
  align-items: flex-end; /* 中央全体を右寄せ */
  flex: 1;
  gap: 10px;
}

/* NEW: お問い合わせ＋ボタンを一つにまとめて右寄せ */
.button-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 6px;
}

/* お問い合わせ（右揃え） */
.contact-area img {
  display: block;
  height: auto;
  width: auto;
}

/* 小ボタン群（右寄せ・下揃え） */
.button-area {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: flex-end;
  gap: 12px;
  margin-top: 10px;
}

.button-area img {
  height: 70px;
  transition: transform 0.2s ease;
}

.button-area img:hover {
  transform: scale(1.05);
}

/* OFFICIAL（右端） */
.official-area {
  display: flex;
  align-items: flex-end;
}

.official-area img {
  height: 110px;
  display: block;
}

/*◆ヘッダーのｃｓｓ◆end*/




/* ▼モバイル用全体のレイアウト調整 -------------------------------------------*/
.simple-mobile-header {
  display: none;
  background: white;
  border-bottom: 1px solid #ccc;
}

@media screen and (max-width: 1099px) {
  .simple-mobile-header {
    display: block;
  }
}

/* ▼ロゴとハンバーガーの配置 */
.mobile-header-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px;
}

.mobile-logo img {
  height: 40px;
}

/* ▼ハンバーガーアイコン */
.hamburger {
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  width: 30px;
  height: 24px;
  cursor: pointer;
}

.hamburger span {
  display: block;
  height: 3px;
  background: #333;
  border-radius: 2px;
}

/* ▼メニュー非表示デフォルト */
.mobile-menu {
  display: none;
  background-color: #fff;
  border-top: 1px solid #ccc;
}

.mobile-menu ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.mobile-menu li {
  border-bottom: 1px solid #eee;
}

.mobile-menu a {
  display: block;
  padding: 8px;
  text-decoration: none;
  color: #333;
}

.mobile-menu a {
  display: block;
  padding: 8px;
  text-decoration: none;
  color: #333;
}




/* ▼activeクラスがついたときに表示 */
.mobile-menu.active {
  display: block;
}


/*◆追加CSS引っ越し20251111　START------------------------*/

/* ページ送りナビの左右を反転 start---------*/
.pager-post-navi{
    display: flex!important;
    flex-direction: row-reverse!important;
}
.fa-chevron-left,.fa-chevron-right{visibility: hidden;}

/* 右側のボタン右端に移動 */
.pager-post-navi .prev-post .prev-post-thumb {order: 1; }
/* 右のボタン（古い記事）のテキストを右寄せにする */
.pager-post-navi .prev-post-title {
    text-align: right !important; /* テキストを右寄せに強制 */
    width: 100%; /* タイトル要素の幅を親要素いっぱいにする */
}


.pager-post-navi .next-post .next-post-thumb {order: 1; /* flexアイテムの順番を一番最初（左端）にする */
}

/* 左側のボタン（新しい記事、元の .next-post）の配置を左寄せにする */
.pager-post-navi .next-post {
    text-align: left !important; /* テキストを左寄せに */
    justify-content: flex-start !important; /* コンテンツを左端に詰める */
}


/* 左のボタン（新しい記事）内のタイトル要素を左寄せにする */
.pager-post-navi .next-post-title {
    text-align: left !important; /* テキストを左寄せに */
    width: 100%; /* タイトル要素の幅を親要素いっぱいにする（重要） */
}

/* 左のボタン（新しい記事、元の .next-post）のコンテンツ配置を調整 */
.pager-post-navi .next-post {
    /* これまでの設定に含まれる可能性があるため、再度確認 */
    justify-content: flex-start !important;
}
/* ページ送りナビの左右を反転 end---------*/





/*h2---------------*/
h2 {font-size:1.1em!important;
  color: #222222;/*文字色*/
  padding: 0.2em 0 0 0.5em!important;/*上下の余白*/
  border-top: dotted 2px #000000;/*上線*/
  border-bottom: dotted 2px #000000;/*下線*/
	background-color:#f8d700!important;
	margin-top:25px!important;
	margin-bottom:10px!important;
}






h3{
		border-left: none!important;
	border-right: none!important;
	border-top: dotted 2px #999999!important;/*上線*/
  border-bottom: dotted 2px #999999!important;/*下線*/
	background-color:#f8d700!important;
	margin-top:35px!important;
	margin-bottom:10px!important;
	background-color:#eeeeee!important;
}



/*h3 問い合わせボタン用*/
.h3-inf{
padding:6px 0 0 0;
background-color:#000000!important;
text-align:center!important;
color:white;letter-spacing:0.3em;border-radius: 7px;
}





/*エージング塗装とは*/
.page-id-7760 h2{ margin-top:40px!important;}
.feature-list p{ margin-left:10px!important;}
.feature-list h3{ margin:20px 10px 0 10px!important;}

/*フッター画像ボタン-------------*/
.image-buttons {
display: flex;
gap: 0px; /* ボタン間の余白 */
align-items: left;
}
.image-buttons img {
margin-left:10px!important;
max-height: 28px; /* 必要に応じてサイズ調整 */
height: auto;
}


/* スマホ-コピーライト直前の余白を消す */
@media screen and (max-width: 1099px) {
  .footer-bottom {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
}
	
/* フッター内の検索フォーム全体の幅を制限 */
.widget_search .search-box {
  max-width: 360px;       /* 最大幅を指定（お好みで調整） */
  width: 70%;
  margin: 0 auto;         /* 中央寄せ */
  display: flex;
  align-items: center;
	padding:7px!important;
}

/* 入力欄のスタイル */
.footer-left .search-edit {
  width: calc(100% - 40px); /* ボタン分の幅を除く */
  padding: 8px 12px;
  font-size: 15px;
  border: 1px solid #ccc;
  border-radius: 4px 0 0 4px;
  box-sizing: border-box;
}

/* 検索ボタンのスタイル */
.footer-left .search-submit {
  width: 40px;
  height: 68%;
  background-color: #666;
  color: #fff;
  border: none;
  border-radius: 0 4px 4px 0;
  font-size: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}

/* スマホ非表示 */
@media screen and (max-width: 1099px) {
  .footer-left .widget_search .search-box {
display:none;
  }
}




/* ======================
   ヘッダー表示と固定制御
   ====================== */

/* スマホ（1099px以下）：ヘッダーは表示するが固定しない */
@media (max-width: 1099px) {
  body {
    padding-top: 0;
  }
  .custom-header {
    position: static;
    display: none!important;
    background: #fff;

  }
}

/* PC（1100px以上）：ヘッダーを固定表示 */
@media (min-width: 1100px) {
  body {
    padding-top: 140px; /* ヘッダー高さ分の余白 */
  }
  .custom-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 9999;
    background: #fff;
  }
.simple-mobile-header{
    display: none!important;
}

}


	
	
/*トップ画面　メイン画像---------start*/
.slider-wrapper {
  max-width: 1150px;
  margin: 0 auto;
  padding: 0 px;
}

.simple-slider {
  position: relative;
 width: 80%;
 aspect-ratio: 300 / 225;
 margin: 0 auto !important;/* ← 中央寄せ */
 overflow: hidden;
}
.simple-slider img {
display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  object-fit: contain;
  opacity: 0;
  visibility: hidden;
  transition: opacity 1s ease-in-out;
}


/*トップ画面　メイン画像　スマホ用調整*/
@media screen and (max-width: 1099px) {
  .simple-slider img {
    width: 100% !important;
    height: auto !important;
    display: block;
  }

  .simple-slider {
    overflow: visible !important;
    height: auto !important;
  }
}



/* トップページ　コンテンツ上（メニュー下）の余白を消す */
.home .content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

@media (max-width: 768px) {
  .home .content,
  .home main#main.main {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
	.entry-content{    margin-top: 0 !important;
    padding-top: 0 !important;}
}





/*ギャラリー*/
.wp-block-gallery {
  max-width: 960px; /* お好みで調整。720px〜960pxが見やすい */
  margin: 0 auto;
  padding: 0 1em;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1em;
}

/*YOUTUBEを単純に挿入したら中央に設定*/
.wp-block-embed-youtube {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 600px; /* 必要に応じて調整 */
  box-sizing: border-box;
}

.wp-block-embed__wrapper {
  width: 100%;
  text-align: center;
}



/*画面の余白ゼロ*/
.main {padding:0;}

/* スマホだけメイン上の余白を詰める */
@media (max-width: 768px) {
  /* メイン領域の上パディングを小さく */
  main#main.main {
    padding-top: 8px !important;   /* 0～12pxで好み調整 */
  }

  /* 本文の最初のブロックの上マージンを消す（画像やグループ等） */
  .entry-content > *:first-child {
    margin-top: 0 !important;
  }

  /* スライダー/メイン画像のラッパーを使っている場合は保険で */
  .slider-wrapper,
  .simple-slider {
    margin-top: 0 !important;
  }
}




/*基本のタグのcss*/
a {/*color:#734e30!important;*/}



.category h2,
.tag h2 {
  background-color:#ffffff!important;
  margin-top:3px!important;
  margin-bottom:3px!important;
  padding:2px 3px!important;
  border-top: dotted 2px #999999;
  border-bottom: dotted 2px #999999;
}


h3{
	margin-top:19px!important;
	margin-bottom:10px!important;
	padding:6px 0px 0px 5px!important; 
 font-weight:nomal!important;}


/*サイドバーの文字*/
.widget-sidebar {font-size:smaller;}
.list-item-caption{margin:0;padding:0;}
.widget-sidebar a{padding:1px!important;}


/* Instagram埋め込みを中央寄せ＆レスポンシブ start*/
.entry-content .wp-block-embed-instagram,
.entry-content .wp-block-embed-instagram .wp-block-embed__wrapper {
  display: flex;
  justify-content: center;
}

.entry-content .instagram-media {
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 100% !important;   /* 親幅に合わせる */
}

/* Instagram & Twitter 共通：中央寄せ＋幅制限 */
.entry-content .instagram-media,
.entry-content .twitter-tweet {
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 400px !important; /* インスタと同じ幅にする */
}
/* Instagram埋め込みを中央寄せ＆レスポンシブ end*/





/*スマホ　カテゴリーページ　テキスト隙間*/
@media screen and (max-width: 768px) {
  .category-page-content p {
    padding: 0 20px 0 20px;
  }
}

/*スマホメニュー背景---------start*/
@media screen and (max-width: 1099px) {
  .simple-mobile-header {
    background-image: url('https://yojigenkun.com/gallery/wp-content/themes/cocoon-child-master/images/title-bg.png');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    padding: 2px; /* 必要に応じて調整 */
    border-radius: 20px; /* 任意。丸みつけたい場合 */
    background-color: transparent !important; /* Cocoonデフォルトを打ち消す */
  }
}

/*メイン画像---------end*/


/*トップページコピー---------start*/
.content-wrapper {
  max-width: 1050px;
  margin: 0 auto;
  padding: 0 16px;
}
.content-wrapper h2 {
  max-width: 1100px;
  margin: 10px auto;
  padding: 10px 10px 5px;
}

/*スマホボタン---------start*/
.sp-button-grid {
  display: none;
}

@media screen and (max-width: 1099px) {
  .sp-button-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    padding: 20px 6px 0px 6px;
  }

  .sp-btn {
    width: 100%;
    aspect-ratio: 4 / 1;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
  }

  .sp-btn img {
    width: 100%;
    height: auto;
    object-fit: contain;
    transition: transform 0.2s ease-in-out;
    display: block;
  }

  .sp-btn:hover img {
    transform: scale(1.05);
  }
}
/*スマホボタン---------end*/




/*トップ画面　メインテキスト　スマホ用調整*/
@media screen and (max-width: 768px) {
  .wp-block-column p {
    padding: 0 15px;
  }
}

/* スマホヘッダー部分の色*/
@media screen and (max-width: 768px) {
  .header-container,
  .simple-mobile-header {
    background-color: #f8d700 !important;
  }
}

/* トップページの日付を削除*/
.page .post-date,
.page .entry-date,
.page .published {
  display: none;
}

/* すべてのボタンをホバー時に少し上に移動 */
.wp-block-button__link {
  transition: transform 0.2s ease;
}

.wp-block-button__link:hover {
  transform: translateY(-2px);
  color: #ddff22 !important;
}

/* トップ波の中のリンクホバー */
.new-entry-card-link {
  transition: all 0.3s ease !important;
}
.new-entry-card-link:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2) !important;
  background-color: #f6c800;
}



/* お客様の声 -------------*/
.voice {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 20px;
  max-width: 800px;
  margin: 40px auto;
}

.voice img {
  width: 100px;
  height: auto;
  flex-shrink: 0;
}

.voice p {
  max-width: 600px;
  margin: 0;
  line-height: 1.6;
}

@media screen and (max-width: 768px) {
  .voice {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .voice p {
    max-width: 100%;
  }
}

/* お客様の声 -------------*/


/* 作品詳細テーブル */
.tbl-common01 {
  max-width: 1000px;
  margin: 2em auto;
  padding: 15px;
  font-family: sans-serif;
  color: #333;
}
.tbl-common01 dt {
  font-weight: bold;
  padding: 0.5em 0;
  border-bottom: 1px solid #ccc;
}
.tbl-common01 dd {
  padding: 0.5em 0 1em;
  margin: 0;
  border-bottom: 1px solid #eee;
}
@media screen and (min-width: 600px) {
  .tbl-common01 {
    display: grid;
    grid-template-columns: 30% 70%;
    gap: 0;
  }
  .tbl-common01 dt,
  .tbl-common01 dd {
    padding: 0.5em;
    border-bottom: 1px solid #ccc;
    margin: 0;
  }
}

/*フッタの会社情報をスマホでも表示*/
@media screen and (max-width: 834px) {
  .footer-widgets {
    display: block !important;
  }
}


/*メニュー切り替え*/
@media screen and (max-width: 1000px) {
  .custom-header {
    display: none;
  }
}
@media screen and (min-width: 1001px) {
  .mobile-header {
    display: none;
  }
}
.mobile-header-inner {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  height: 80px;
}
.mobile-logo {
  display: block;
}
.mobile-logo img {
  height: 70px !important;
}
.hamburger {
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
}

/* 更新日タグを非表示*/
.post-update {
  display: none;
}

/*幅1100　カテゴリー*/
#list {
  max-width: 1100px;
  margin: 0 auto;
}


/*幅1100　固定ページ　お問合専用*/
.page-id-118 .entry-content {
  max-width: 1000px;
  margin: 0 auto;
}



/*トップ　タイトル非表示*/
.page-id-4534 .entry-title {
  display: none;
}

/*トップ　最新リスト６*/
.home .wp-block-latest-posts__list {
  width: 1000px;
}
.home .wp-block-latest-posts__list img {
  width: 100%;
  height: 150px;
  object-fit: cover;
}

/* 投稿ページタイトル */
h1.entry-title,
h1.archive-title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 1.8rem;
  color: #222;
  text-align: center;
  padding: 1em 0;
  position: relative;
}
h1.entry-title::before,
h1.entry-title::after,
h1.archive-title::before,
h1.archive-title::after {
  content: "";
  display: inline-block;
  width: 40px;
  height: 4px;
  background-color: #f8d700;
  vertical-align: middle;
  margin: 0 12px;
}
@media screen and (max-width: 768px) {
  .entry-title {
    border-top: none !important;
    border-bottom: none !important;
  }
  .entry-title::before,
  .entry-title::after,
  .archive-title::before,
  .archive-title::after {
    display: none !important;
  }
}

/* サムネイル枠 */
.entry-card .entry-card-thumb img,
.widget-entry-card .entry-card-thumb img,
.related-entry-card-thumb img {
  border: 1px solid #f8d700;
  border-radius: 16px;
  box-sizing: border-box;
}

/* 投稿ページのH1とカテゴリH1を共通デザインに */
h1.entry-title,
.category-title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 1.8rem;
  color: #222;
  text-align: center;
  padding: 1em 0;
  position: relative;
}
h1.entry-title::before,
h1.entry-title::after,
.category-title::before,
.category-title::after {
  content: "";
  display: inline-block;
  width: 40px;
  height: 4px;
  background-color: #f8d700;
  vertical-align: middle;
  margin: 0 12px;
}

/* テゴリサムネイル群の下の隙間 */
#list {
  padding-bottom: 40px;
}
/*カテゴリーラベル*/
.cat-label {
  position: absolute;
  top: 8px !important;
  left: 8px !important;
  background-color:#f8d700!important;
  color: #fff;
  padding: 4px 12px 2px 12px;
  font-size: 0.75rem;
  border-radius: 6px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
  z-index: 3;
}

.new-entry-card-thumb img {
  border-radius: 12px;
}

/* トップ最新情報サムネイル */
.thumbnail-wrapper {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
  padding: 20px 0;
	margin-bottom: 0 !important;
  padding-bottom: 0 !important;
background-color:#f8d700!important;
}


.thumbnail-wrapper > * {
  flex: 0 0 auto;
}
.only-pc {
  display: block;
}
.only-sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .only-pc {
    display: none;
  }
  .only-sp {
    display: block;
  }
	/*スマホ用最新サムネイル少し小さく*/
	.thumbnail-wrapper img{width:85%!important;margin:0 auto;}
}

/* トップサムネイル 波 */
.wave-border {
  display: block;
  line-height: 0;
}
.wave-border img {
  width: 100%;
  height: auto;
  display: block;
}
.wave-border {
  margin: 0;
}

.wave-border {
  margin-top: -1px !important;
  padding-top: 0 !important;
  line-height: 0;
}
.wave-border img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 !important;
  padding: 0 !important;
}
.home .wp-block-columns,
.home .wp-block-column {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* カテゴリー説明文 */
.entry-content p:first-of-type {
  max-width: 1080px;
  margin: 0 auto;
}

/* フッター設定 */
#footer,
#footer-in,
.footer-widgets,
.footer-left,
.footer-info,
.footer-info li,
.footer-left * {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  border: none !important;
}
.footer-left {
  padding: 15px 0 0 0px !important;
}
.footer-left li {
  line-height: 1.5 !important;
  margin: 0 0 0 9px !important;
  font-size: 0.8em;
}
.footer-left strong {
  font-size: 1.2em !important;
}

/*SNSアイコン*/
.social-icons {
  margin-top: 5px !important;
  margin-left: 11px !important;
  display: flex;
  gap: 12px;
}
.social-icons img {
  height: 28px;
  width: auto;
  filter: brightness(0) invert(1);
  transition: opacity 0.3s;
}
.social-icons img:hover {
  opacity: 0.7;
}

/*パンくずリスト*/
#breadcrumb {
  max-width: 1150px;
  margin: 30px auto 0px auto;
  text-align: right;
  padding-right: 20px;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* H1周辺の余白を詰める */
.article-header {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
.entry-title {
  margin-top: 5px !important;
  padding-top: 0 !important;
}
.category-header {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
.archive-title {
  margin-top: 5px !important;
  padding-top: 0 !important;
}

/* 付箋デザイン */
.fusen-box {
  position: relative;
  width: 90%;
  max-width: 600px;
  margin: 2em auto;
  padding: 1.2em 1em;
  background: #f8d700;
  border: 1px solid #f0e68c;
  box-shadow: 3px 3px 8px rgba(0, 0, 0, 0.2);
  font-size: 1.2rem;
  line-height: 1.6;
  box-sizing: border-box;
  animation: fuwafuwa 3.5s ease-in-out infinite;
  transform-origin: top center;
}
.fusen-tape {
  content: "";
  position: absolute;
  top: -10px;
  left: 20px;
  width: 60px;
  height: 20px;
  background: rgba(200, 200, 200, 0.6);
  transform: rotate(-5deg);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  pointer-events: none;
}
@keyframes fuwafuwa {
  0% {
    transform: rotate(-0.5deg);
  }
  50% {
    transform: rotate(0.5deg);
  }
  100% {
    transform: rotate(-0.5deg);
  }
}
/* --- YouTubeを中央＆レスポンシブに --- */

/* アーカイブページ、作品カテゴリーだけサイドバーを非表示 start*/
body.categoryid-3 .sidebar,
body.archive .sidebar{
  display: none;
}

body.categoryid-3 .main,
body.archive .main{
  width: 100%;
}


/* アーカイブページ、作品カテゴリーだけサイドバーを非表示 end*/


/*サイドバーありメインエリアの上部隙間削除*/
.main{padding-top:0px;}
.breadcrumb{margin-top:10px!important;}
/*フッターコンテンツの幅*/
.footer-in{width:100%;}




.home .only-sp a{width:80%!important;margin:0 auto;padding-left:0px;}

.home .swiper-button-next{
	display:none;
}
html {
  scroll-behavior: smooth;
}

/*関連用語集のクラス-ウィジェットページ下部登録*/
.zoukei-dictionary{}
/*パンくず*/
.breadcrumb{padding:15px!important;}


/*フッター直前のメニュー---------*/

.sitemap-banner {
background-color: #EEEEEE;
position: relative;
left: 0;
right: 0;
padding: 2px 20px 0 0;
text-align: right;
margin: 0 auto;
box-sizing: border-box;
font-size:0.8em;
}
.sitemap-banner a {
  color: #000;
  text-decoration: underline;
  font-size: 1em;
}

/* ＰＣ　グローバルメニュー全体 ---------*/
.global-header-layout {
  width: 1050px;
  margin: 0 auto;
  position: relative;
  padding: 0px;
}

/* 右上のリンク（隙間なし） */
.utility-links-container {
  display: flex;
  gap: 9px; /* ← 隙間をなくす */
	justify-content: flex-end; /* ← 中身を右寄せ */
}

.utility-links-container a {
    margin: 0;
  padding: 0;
}

.utility-links-container img {

  vertical-align: middle;
  border: none;
}

/* ロゴとメニューの並び */
.gallery-global-menu {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 9px;
}

/* ロゴエリア */
.logo-area {
  flex: 0 0 auto;
}

.logo-area img {
  display: block;
}

/* メニューエリア */
.main-navigation {
  flex: 1;
  text-align: right;
}

.work-categories {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 0px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.work-categories li {
  display: inline-block;
}

.work-categories li img {
  display: block;
}


.work-categories li img {
  display: block;
  height: auto; /* 縦横比を維持 */
  max-width: 100%; /* 親要素からはみ出さない */
}
.global-header-layout img:hover {
  opacity: 0.6;
  transition: opacity 0.3s ease;
}

/* ＰＣ　グローバルメニュー全体　end ---------*/







.top-yellowback
{background-color:#f8d700!important;
margin: 0 !important;
width:100%;}
.top-yellowback p{
	text-align:center;
  animation: float 3s ease-in-out infinite;
}
@keyframes float {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0px);
  }}



/*ページ送り*/
.wp-post-image {
  border-radius: 15px;
	margin-right: 15px!important;
}
.prev-post-title{padding:5px;}
.next-post-title{padding:5px;}
/*関連記事のテキスト非表示*/
.related-entry-card-snippet{display:none;}
.related-entry-card-title {font-size:15px!important;background-color:#ffffff!important;margin:0!important;border:none!important;}
	
/*作品ページのfaq*/
.faq dt{margin:0!important;
	padding:0 0 0 8px!important;
border-top: 2px dotted #333;   
border-bottom: 2px dotted #333;
background-color:#eeeeee;
}
.faq dd{margin:0!important;
	padding:0 0 0 8px!important;}

.cocoon-block-faq{margin:0 auto 20px auto!important;
	padding:0!important;width:90%;}


/*旧　各作品ページのfaq*/
.faq-box{width: 90%;
		margin:0 auto 30px auto;}
.faq-box .faq-item{ 
	  display: inline-block; 
	width: 100%;
	font-size:0.9em!important;
}
.faq-item h3{font-size:1.1em!important;}




/*作品サイトマップ*/
/* 1. Content Viewsで表示されるタイトルの要素を特定する (行数制限) */
.pt-cv-title a {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2; /* 2行で制限する例 */
    overflow: hidden;
} /* ← 最初のブロックの閉じ括弧 */

/* 2. サイズと余白の調整 */
.pt-cv-title a {
    font-size: 12px;
    width: 90%;
    padding: 0 !important;
    margin: 0 !important;
	color:#333333;
} /* ← 2番目のブロックの閉じ括弧 */

.page-id-8164 h4{border-color:#ffffff!important;padding:0!important;}
/*タイトル削除*/
.pt-cv-heading-container{display:none;}




.pt-cv-thumb-wrapper {
    /* 前回の角丸設定 */
    border-radius: 10px; 
    overflow: hidden; 
    
    /* アニメーション（ホバー）を滑らかにする設定 */
    /* transformとbox-shadowの変化に0.3秒かけて変化させます */
    transition: transform 0.3s ease-out, box-shadow 0.3s ease-out; 
    
    /* 拡大・移動時に画像がブレないように、初期状態のtransformを設定（パフォーマンス向上） */
    transform: translateZ(0);
}


.pt-cv-thumb-wrapper:hover {
    /* マウスに引き寄せられるように、1.05倍に拡大します */
    /* scale()の値を大きくすると、より派手な効果になります */
    transform: scale(1.05); 
    
    /* 浮き上がっているように見せるための影（box-shadow）を追加 */
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.3); 
    

}







