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

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

/* ヘッダー ================================== */
#header .tagline {
  font-size: 1em;
  margin-bottom: 0;
}

#header .logo-text {
  padding-top: 0;
  padding-bottom: 0;
}

#header .search-box {
  margin-top: 0;
}

/* サイトタイトル */
#header .site-name-text {
  font-family: 'Jost', sans-serif;
  /* Google font */
  font-size: 2.0em;
  color: #d45b23;
}

@media screen and (max-width: 834px) {
  .content {
    margin-top: 0;
  }
}

@media screen and (max-width: 480px) {
  #header .tagline {
    font-size: 14px;
    margin-bottom: 0;
  }

  #header .site-name-text {
    font-size: 1.5em;
    line-height: 1.5em;
  }
}

/* ヘッダーロゴ下 検索フォーム */
.add-header-contents {
  width: 50%;
  margin: 0 auto;
}

.add-header-contents input[type="text"].search-edit {
  border-radius: 8px;
  padding: 0.5em 1.0em;
  color: #333;
  box-shadow: none;
}

.add-header-contents input[type="text"].search-edit:focus {
  outline: 1px solid #d45b23;
  border: none;
}

/* ヘッダーメニュー ========================================= */

/* デスクトップ ヘッダーメニュー */
.navi-in>ul li {
  width: calc(80% / 10);
}

/* アイテムが無いメニュー */
.navi-in>ul li.item-nothing a {
  color: #d7d7d7;
}

/* Fontはセリア体 */
.navi-in>ul li a .item-label {
  font-family: serif;
  font-size: 1.2em;
}

/* デスクトップのコンテンツの横幅 */
/* @media screen and (max-width: 1220px){} */

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

  /* モバイルメニューが表示される横幅 */
  nav#navi {
    display: none;
    /* ヘッダーナビゲーション非表示 */
  }
}



/* パンくずリスト */
/* 2番目のカテゴリ（手順）を非表示 */
.breadcrumb-home+.breadcrumb-item {
  display: none;
}

/* サイドバー　検索フォーム */
input[type="text"].search-edit {
  border-radius: 8px;
}

input[type="text"].search-edit:focus {
  outline: 1px solid #d45b23;
  border: none;
}

input[type="text"]::placeholder {
  color: #ccc;
}

/* ヘッダー検索フォーム　非表示 */
body.page .add-header-contents,
body.single .add-header-contents,
/* ヘッダーナビゲーション　非表示 */
body.page #navi,
/* 固定 */
body.single #navi,
/* 投稿 */
/* 検索結果の検索フォーム　非表示 */
body.search-results #main form.search-box {
  display: none;
}

/* モバイル 非表示 */
@media screen and (max-width: 834px) {
  .add-header-contents {
    display: none;
  }
}

body.home .main,
body.category #main,
body.tag #main,
body.search-results #main {
  background-color: transparent;
}



/* お問い合わせ フォーム */
.wpcf7 {
  margin: 0 auto;
  max-width: 600px;
  padding: 1.0em;
}

/* お問い合わせ 送信ボタン */
input[type='submit'].wpcf7-form-control {
  border: none;
  background-color: #e6e6e6;
  border-radius: 30px;
  width: 50%;
  display: block;
  margin: 0 auto;
  font-weight: bold;
  padding: 0.5em;
  font-size: 16px;
}

@media screen and (max-width: 834px) {
  input[type='submit'].wpcf7-form-control {
    width: 70%;
  }
}



#content {
  margin-top: 0;
}

main.main {
  margin-top: 1.0em;
  margin-bottom: 1.0em;
  padding-top: 1.0em;
  padding-bottom: 1.0em;
}

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

  main.main {
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 16px;
    padding-bottom: 16px;
  }

}

#list {
  margin-bottom: 0;
}



/* フッター */
#footer {
  margin-top: 0;
  padding-bottom: 3.0em;
}

.footer-bottom.fnm-text-width .menu-footer li a {
  padding: 0 15px;
}

.navi-footer-in > .menu-footer li{
  border-left:none;
  margin-bottom: 0.5em;
}

.navi-footer-in > .menu-footer li:last-child{
  border-right: none;
}


/* サイドバー */
.sidebar {
  border-radius: 8px;
  background-color: #f4f5f7;
}

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

  /* 下部メニュー 背景色*/
  .mobile-menu-buttons {
    background-color: #d45b23;
  }

  /* アイコン */
  .mobile-menu-buttons .menu-icon .fa {
    color: #fff;
  }

  /* アイコンテキスト */
  .mobile-menu-buttons .menu-caption {
    color: #fff;
  }
}

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

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

  /* タグと写真の間隔 */
  .entry-categories-tags {
    margin-bottom: 0;
  }

  .entry-content {
    margin-top: 0;
  }
}



/* モバイル スライドバー */
.sidebar-menu-content {
  background-color: #f4f5f7;
}

/* 閉じるボタン */
.menu-close-button {
  padding-top:16px;
  padding-bottom: 0.5em;
}

/* 閉じるボタン アイコンカラー */
.menu-close-button .fa.fa-close {
  color: #aaaaaa;
}

/* モバイル で検索フォームを非表示 */
@media screen and (max-width: 1023px) {
  .widget_search {
    display: none;
  }
}



/* 固定ページ */

/* 更新日・公開日の非表示 */
article.page .date-tags {
  display: none;
}

/* 見出し */
article.page h2 {
  font-size: 22px;
  padding-left: 0;
  margin-bottom: 0;
  color: #444;
  border-radius: 0px;
  background-color: #fff;
}

article.page h3 {
  font-size: 20px;
  color: #555;
  border: 0;
  padding: 0;
  margin-bottom: 0.5em;
}





/* トップ エントリーカード  */

/* デスクトップ サイズ */
.ect-vertical-card .entry-card-wrap {
  width: calc((100% - (0.5% * 3)) / 4);
  /* カード4列・間 3つ */
  /*
     親要素プロパティに column-gap:0.5%; があり、
     (0.5% * 3) はカード4列の間に3つある gap の合計
    */
  padding: 1.0em;
  background-color: #fff;
  border-radius: 8px;
}

.ect-vertical-card.ect-tile-card .a-wrap {
  margin-bottom: 0.5%;
}

.entry-card-thumb {
  margin: 0;
}

.entry-card-title {
  margin-top: 0.7em;
  margin-bottom: 0;
  font-size: 1.0em;
}

.entry-card-snippet {
  line-height: 1.5em;
}

.entry-card-meta {
  display: none;
}

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

  .ect-vertical-card .entry-card-wrap {
    width: calc((100% - (0.5% * 2)) / 3);
    /* カード3列・間 2つ */
  }

}

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

  .ect-vertical-card .entry-card-wrap {
    width: calc((100% - (0.5% * 1)) / 2);
    /* カード2列・間 1つ */
  }

}

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

  .ect-vertical-card .entry-card-wrap {
    width: 100%;
  }

  .entry-card-snippet {
    line-height: 1.6em;
  }

}

/* カードのカテゴリラベル（複数表示） */
.entry-card-category-labels {
  position: absolute;
  top: 0.2em;
}

.entry-card-category-labels .cat-label {
  display: inline-block;
  border: none;
  position: static;
  max-width: 100%;
  padding: 1px 7px;
  margin-right: 2px;
}

.entry-card-category-labels .cat-label:last-child {
  margin-right: 0;
}

/* @media screen and (max-width: 834px){} */

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

  .entry-card-category-labels .cat-label {
    font-size: 0.8em;
    padding: 2px 7px;
  }

  .entry-card-title {
    font-size: 1.2em;
  }

  .e-card-snippet {
    font-size: 14px;
  }
}

/* カテゴリリンク */
.cat-link {
  padding: 0.1em 0.6em;
  border-radius: 5px;
}

/* タグの枠線 */
.tag-link,
.tagcloud a {
  border: none;
}

.tagcloud a {
  flex: initial;
}





/* SNSボタン ======================================== */

footer .sns-share {
  margin-top: 2.0em;
  margin-bottom: 3.5em;
}

/* シェアボタン */
#main .button-caption {
  display: none;
}

.sns-share-message {
  font-weight: bold;
  color: #808080;
}

.sns-share-buttons {
  flex-wrap: nowrap;
  justify-content: center;
}

.sns-share-buttons a {
  border-radius: 50%;
  font-size: 20px;
  margin: 0 10px;
}

#main .sns-share a {
  width: 40px;
  height: 40px;
}

/* フォローボタン */
.sns-follow-message {
  font-weight: bold;
  color: #808080;
}

.sns-follow-buttons {
  justify-content: center;
}

.sns-follow-buttons a {
  border-radius: 50%;
  font-size: 20px;
  margin: 0 10px;
}

#main .sns-follow a {
  width: 40px;
  height: 40px;
}



/* サイドバー
================================== */

.sidebar .widget_nav_menu {
  display: flex;
  align-items: flex-start;
  margin-left: 2.5em;
  margin-bottom: 0.5em;
}

/* 見出し */
.sidebar .widget_nav_menu .widget-sidebar-title {
  margin-top: 0;
  margin-left: -2.0em;
  margin-bottom: 0.5em;
  font-size: 22px;
  font-family: serif;
  font-weight: bold;
  background-color: #fff;

  /* 正円  */
  border-radius: 50%;
  padding: 0.5em;
  line-height: 1.0em;
}

/* カテゴリー0 リスト */
.widget_nav_menu .menu {
  /* ul.menu */
  margin-top: 0.5em;
  margin-left: 0.5em;
}

.widget_nav_menu .menu li {
  display: inline-block;
  font-size: 14px;
  margin-right: 0.3em;
  margin-bottom: 0.3em;
}

.widget_nav_menu .menu li a {
  padding: 0.2em 0.9em;
}

.widget_nav_menu .menu li a:hover {
  font-weight: bold;
  font-family: serif;
  background-color: transparent;
}

/* カテゴリーが active */
.widget_nav_menu .menu li.current-menu-parent {
  margin-top: -0.5em;
  /* 枠線の上幅の調整 */
  margin-bottom: 0.5em;
  border: 1px solid #c7c7c7;
  background-color: #fff;
  box-shadow: 1px 1px 2px 1px #dfdfdf;
  font-size: 1.0em;
  font-weight: bold;
  font-family: serif;
  border-radius: 30px;
}

.widget_nav_menu .menu li.current-menu-parent a {
  padding: 0.3em 0.9em;
  line-height: 1.5em;
}

/* タグクラウド */
.widget_tag_cloud {
  margin-top: 2.0em;
  margin-left: 0;
  margin-bottom: 2.0em;
}

/* 検索 */
.sidebar .widget_search {
  margin-left: 0;
}



/* 投稿ページ 全体
 ======================================== */

.entry-content__item {
  display: flex;
  flex-direction: column;
}

@media screen and (max-width: 834px) {
  .entry-content__item {
    display: block;
  }
}

/* slick スライダー
======================================== */

/* slick メイン画像 */
.slider__main-image {
  width: calc(100% - 80px - 2.0em);
  margin-bottom: 0.5em;
}

@media screen and (max-width: 834px) {
  .slider__main-image {
    width: auto;
    margin-right: 1.0em;
    margin-left: 1.0em;
  }
}

.slider__main-image .slick-list {
  background-color: #fff;
  /* アイテム画像の背景色 */
}

.slider__main-image .slick-list .slick-track {
  display: flex !important;
  align-items: center;
}

.slider__main-image .slick-list .slick-track .slick-slide img {
  margin: 0 auto;
}

/* 矢印の位置 */
.slick-prev,
.slick-next {
  position: absolute;
  z-index: 3;
  top: 42%;
  cursor: pointer;
  outline: none;
}

.slick-prev {
  left: 2.5%;
}

.slick-next {
  right: 2.5%;
}



/* slick サムネイル写真 */
.slider__thumb-image {
  width: 80px;
  /* slick の style 直書きで継承される */
  margin-right: 2.0em;
}

.slider__thumb-image .slick-track {
  width: 100% !important;
  /* display: flex !important; */
  flex-wrap: wrap;
  align-items: stretch;
  /* スライドを固定する */
  transform: unset !important;
}

.slider__thumb-image .slick-track .slick-slide {

  /* width: calc(100% / 3) !important;
    display: flex;
    align-items: center; */
  margin-bottom: 0.3em;
  background-color: #f5f5f5;

  /* slick.css 上書き */
  float: none;
  height: auto;
  min-height: unset;
}

.slider__thumb-image .slick-track .slick-slide img {
  width: 100%;
  border-radius: 10px;
  cursor: pointer;
}

.slider__thumb-image .slick-track .slick-slide.slick-current:focus {
  outline: none;
}

.slider__thumb-image .slick-track .slick-slide.slick-current img {
  opacity: 0.2;
}


/* ドットナビゲーションにサムネイル画像を設定する場合のスタイル（制作途中 2023/07/19） */
/* .slick-dots {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    background-color: #f5f5f5;
}

.slick-dots li {
    width: calc(100% / 3) !important;
    height: auto;
    background-color: #f5f5f5;

    display: flex;
    align-items: center;
    margin: 0 !important;
} */

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

  /* Slick スライダー  dots */
  .slick-dots {
    display: block !important;

    padding-left: 0 !important;
    list-style: none;
    text-align: center;
    bottom: -60px;
    margin-bottom: 0;
  }

  .slick-dotted.slick-slider {
    margin-bottom: 60px;
  }

  /* ナビゲーションスライダー（サムネイル画像）を非表示 */
  .slider__thumb-image {
    display: none !important;
  }

}

/* 投稿 道具
====================================== */

/* スライダー */
.slider {
  display: flex;
  flex-direction: row-reverse;
  flex-wrap: wrap;

  max-width: 600px;
  margin: 0 auto 2.0em;
}

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

  .slider {
    display: block;
  }

  .slider figure {
    width: 65%;
    text-align: center;
    margin: 0 auto;
  }

}

/* 説明文＋ボタンブロック */
.article-item {
  width: 650px;
  margin: 0 auto;
}

@media screen and (max-width: 834px) {
  .article-item {
    width: auto;
  }
}

/* メーカー名 */
.article-item__maker p {
  font-size: 14px;
}





/* swiper */
.swiper-block {
  width: 80%;
  /* 横幅は外側のブロックで指定する */
  margin: 0 auto;
}

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

  .swiper-block {
    width: 90%;
  }

}

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

  .swiper-block {
    width: 100%;
  }

}

/* Cocoonのスタイルを上書き */
.swiper-wrapper {
  margin-top: 0;
}

.swiper {
  height: 40vw;
  max-height: 400px;
  min-height: 400px;
  margin-bottom: 2.0em;
}

.swiper .swiper-slide {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  /* 左右の中央揃え */
}

.swiper .swiper-slide img {
  align-self: center;
  /* 上下の中央揃え */
  max-width: 100%;
  max-height: 100%;
  width: auto;
}

/* 矢印アイコン */
.swiper-button-next::after,
.swiper-button-prev::after {
  font-size: 1.0rem;
  outline: none;
  color: #727272;
}

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

  /* 矢印アイコンブロックはモバイルでは非表示 */
  .swiper-button-prev,
  .swiper-button-next {
    display: none;
  }

}


.swiper-pagination-bullet-active {
  background-color: #727272;
}

/* サムネイル */
.mySwiper {
  height: 100px;
  max-height: 100px;
  min-height: 100px;
}

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

  .mySwiper {
    display: none;
  }

}

.mySwiper .swiper-wrapper .swiper-slide {
  width: 25%;
  height: 100%;
  cursor: pointer;
}

.mySwiper .swiper-wrapper .swiper-slide.swiper-slide-thumb-active {
  opacity: 0.3;
}

.mySwiper .swiper-thumbs {
  justify-content: center;
}





/* 投稿 書籍
====================================== */

/* 画像ブロック */
.book-cover {
  width: 40%;
  margin: 1.0em auto;
}

/* 説明文＋ボタンブロック */
/* .book_textbtn-block {
    width: calc(65% - 1.5em);
} */

@media screen and (max-width: 834px) {
  .book-cover {
    width: 70%;
  }
}

/* 書籍 情報 Table */
.table-info {
  margin-bottom: 1.0em;
}

.table-info table {
  width: 100%;
  font-size: 14px;
  margin-bottom: 0.5em;
}

.table-info table th {
  width: 32%;
  padding: 0.4em 1.0em;
}

.table-info table td {
  padding: 0.4em 1.0em;
}

/* 本文 */
.item_explain_text,
.item_review_text {
  font-size: 18px;
  line-height: 1.7em;
}



/* ボタンリンクの配置 ====================== */

.article-item .btn-list {
  display: grid !important;
  /* 非同期パターンのボタンリンクを上書きするため !important */
  justify-content: center !important;
  grid-template-columns: repeat(auto-fit, calc(40% - 2.0em));
  /* calc で横幅の gap を含めてボタン幅の指定している */
  gap: 0 2.0em;

  /* display: flex;
    flex-wrap: wrap;
    align-items: center; */
  /* margin-left: -0.2em;
    margin-right: -0.2em; */

  list-style: none;
  padding-left: 0;
}

.btn-list li,
.btn-list .btn-list-link {
  margin: 0;
}

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

  .article-item .btn-list {
    grid-template-columns: repeat(auto-fit, calc(48% - 1.0em));
    gap: 0 1.0em;
  }

}

.btn-list li a,
.btn-list .btn-list-link a {
  display: block;
  padding: 0.3em 0.5em;
  border-radius: 30px;
  text-decoration: none;
  color: #fff;
  text-align: center;
  font-size: 14px;
}

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

  .btn-list .btn-list-link a {
    padding: 0.2em 0.3em;
    font-size: 0.8em;
  }

}

.btn-list .btn-list-link a:hover {
  opacity: 0.5;
  transition: 0.5s;
}

/* 楽天 */
.btn-list a.link-rt {
  background-color: #bf0000;
}

/* Amazon */
.btn-list a.link-az {
  background-color: #ff9900;
}

/* Yahoo */
.btn-list a.link-yh {
  background-color: #ff0033;
}

.btn-list a span {
  font-size: 1.1em;
  font-weight: bold;
  padding-right: 0.2em;
}



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

  /* 記事タイトル */
  .entry-title {
    font-size: 1.5em;
    line-height: 1.3em !important;
    padding-left: 0;
    padding-right: 0;
  }

}

/*480px以下*/
@media screen and (max-width: 480px) {}


/* カスタムフィールド 入力フォーム （functions.php）
==================================================== */
/* #item_detail_fields label {
    display: block;
    font-size: 14px;
    margin-bottom: 0.5em;
} */
#item_detail_fields {
  background-color: #fdf7f1;
}

#item_detail_fields h2 {
  background-color: #ffdebe;
}

#book_detail_fields {
  background-color: #ecfced;
}

#book_detail_fields h2 {
  background-color: #d5fbcd;
}

#item_detail_fields h3,
#book_detail_fields h3 {
  margin-bottom: 0.5em;
}

#item_detail_fields ul,
#book_detail_fields ul {
  margin-top: 0;
}

.cf-images,
.cf-explain,
.cf-maker,
.cf-cover,
.cf-author,
.cf-publisher,
.cf-release,
.cf-btn_af_url {
  margin-bottom: 2.0em;
}

#item_detail_fields .cf-images li:not(:last-child) {
  margin-bottom: 0.8em;
}



/* レビュー見出し  Cocoonスタイルを上書き */
.article-item__review h2 {
  background-color: transparent;
  padding: 0;
  margin-bottom: 1.0rem;
}

.article-item__review h3 {
  border: none;
  padding: 0;
  margin-bottom: 0.8rem;
}

/* h2 Point  */
.article-item__review .heading-point {
  display: grid;
  align-items: center;
  grid-template-columns: auto 1fr;
  margin-top: 2.0em;
  margin-bottom: 0.5em;
}

.article-item__review .heading-point .heading-point-num {
  font-family: serif;
  font-weight: bold;
  font-style: italic;
  font-size: 1.0rem;
  padding-right: 0.8em;
  padding-top: 0.1rem;
}

.article-item__review .heading-point .heading-point-txt {
  font-size: 1.1em;
}



/* 本文の画像 */
.wp-block-image {
  padding: 0 2.0em;
}

/* 画像ブロックがある grid */
.is-layout-grid:has(.wp-block-image) {
  padding: 0 2.0em;
}

/* grid の 画像ブロック */
.is-layout-grid .wp-block-image {
  padding: 0;
  margin-bottom: 0;
}

/* 画像ギャラリー  */
.wp-block-gallery {
  padding: 0 2.0em;
}

/* 画像ギャラリーの画像ブロック  */
.wp-block-gallery .wp-block-image {
  padding: 0;
  margin-bottom: 0;
}

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

  .wp-block-image,
  .is-layout-grid .wp-block-image,
  .wp-block-group:has(.wp-block-image)、 .wp-block-gallery .wp-block-image {
    padding: 0 1.0em;
  }

}

.wp-block-image img {
  border-radius: 10px;
  border: 1px solid #c5c5c5;
}

.wp-block-image:has(+ p) {
  margin-bottom: 1.2em !important;
}

.article-item__review p:has(+ .wp-block-image) {
  margin-bottom: 1.0em;
}



/* Spec ブロック */
.wp-block-heading.heading-spec {
  font-family: serif;
  font-style: italic;
  border-bottom: 1px solid #808080;
  padding-left: 0.3em;
  padding-bottom: 0.5em;
  margin-bottom: 0.8rem;
}

.block-spec {
  margin: 2.25rem 1.0em;
}

/* Spec table */
.table-spac-detail table th {
  text-wrap: nowrap;
  vertical-align: top;
  padding-right: 1.0em;
}

.table-spac-detail table th,
.table-spac-detail table td {
  background-color: #fff;
  padding-top: 3px;
  padding-bottom: 3px;
}





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

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

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