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

/************************************
** 子テーマ用のスタイルを書く
************************************/
/* ==============================================
	cta buttons
=============================================== */
/* ========= 基本表示制御 ========= */
.cta-bar .pc { 
	display: block !important; 
	line-height: initial;	
}
.cta-bar .sp { display: none !important; }

body {
  padding-bottom:100px; /* PCのCTA高さ分 */
}

/* ========= レイアウトベース ========= */
.cta-bar {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background: #ffffff;
  opacity:0.9;
  z-index: 10000;
  box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.05);
}

.w1000 {
  margin: 0 auto;
  padding: 0;
}

.cta-buttons {
  max-width:1000px;
  list-style: none;
  margin: 0 auto;
  padding: 0;
  display: flex;
  justify-content: space-between;
  gap: 1em;
  align-items: flex-start; /* ✅ 中央 → 上付きに修正 */
  padding: 0.3em 0;          /* ✅ 上下に少し余白を残す */
  bottom: 0;
  left: 0;
  right: 0;
}

.cta-buttons li {
  flex: 1;
  text-align: center;
}

/* ========= メールボタン ========= */
.cta-buttons .mail {
  display: block;
  background: #6ed3a4;
  color: #ffffff;
  font-weight: bold;
  text-decoration: none;
  padding: 0.5em 1.5em;
  border-radius: 50px;
  box-shadow: inset 0 -5px 0 #159f4d;
  font-size: 1.2rem;
  transition: all 0.3s ease;
  transform: scale(1);
  position: relative;
  padding-left: 3em;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cta-buttons .mail span {
  font-size:26px;
  display: inline-block;
}
.cta-buttons .mail::before {
  content: '';
  display: inline-block;
  width: 1.6em;
  height: 1.6em;
  background-image: url('http://github-enterprise.jp/media/wp-content/uploads/2025/08/icon_forward_w.png');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin-right: 0.5em;
}

.cta-buttons .mail:hover {
  background: #5fc995;
  box-shadow: 0 0 10px rgba(111, 207, 160, 0.4);
  transform: scale(1.02);
}


/* ========= 電話ボタン（隙間調整） ========= */
.cta-buttons .tel {
  display: flex;
  align-items: center;           /* ✅ アイコンをボタン高さの中央に配置 */
  justify-content: center;
  gap: 0.8em;                    /* アイコンとテキストの間隔 */
  padding: 0.3em 1.5em;
  border-radius: 50px;
  text-decoration: none;
  font-weight: bold;
  background: #ffffff;
  color: #57c59c;
  border: 2px solid #57c59c;
  transition: all 0.3s ease;
  transform: scale(1);
  font-size: 1.2rem;
  line-height: 1.2;
}

/* アイコン画像 */
.cta-buttons .tel-icon {
  display: block;
  width: 1.6em;
  height: 1.6em;
  background: url('http://github-enterprise.jp/media/wp-content/uploads/2025/08/icon_tel.png') no-repeat center center;
  background-size: contain;
  flex-shrink: 0;
}

/* テキスト側は縦並び */
.cta-buttons .tel-text-block {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  line-height: 1.1;
}

.cta-buttons .tel span:first-child {
  display: flex;	
  font-size:24px;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
}

.cta-buttons .tel-text-block. span:first-child{	
}

.cta-buttons .tel span {
  display: block;                   /* ✅ 各行ごとに明示的に分ける */
  margin: 0;
  padding: 0;
  line-height: 1.2;
}

.cta-buttons .tel:hover {
  background: #e8f9f1;
  color: #2b9d74;
  transform: scale(1.02);
}

/* ========= 電話番号内構造 ========= */
.cta-buttons .number {
  display: block;
  margin-top: 0em;
  font-size: 1rem;
}

.cta-buttons .number .sp {
  display: none;
  font-size: 0.95rem;
}

/* ========= 時間表示（PC） ========= */
.time.pc {
  margin-top: 0em;
  text-align: center;
  font-size: 0.95rem;
  color: #57c59c;
  opacity: 0.8;
}

/* ========= レスポンシブ（スマホ） ========= */
@media screen and (max-width: 600px) {
  body {
    padding-bottom: 120px; /* SPのCTA高さ分 */
  }
	
  .cta-bar .pc {
    display: none !important;
  }
  .cta-bar .sp {
    display: inline !important;
  }

  .cta-buttons {
    flex-direction: column;
    gap: 0.3em;
    padding: 0.5em;
  }

  .cta-buttons li {
    width: 100%;
  }

  .cta-buttons .mail,
  .cta-buttons .tel {
    width: 100%;
	padding-left:0;
  }

	.cta-buttons .mail span {
		font-size:16px
	}	
	
	
  .time.pc {
    display: none;
  }

  .cta-buttons .tel {
    background: #6ed3a4;
    color: #ffffff;
    border: none;

    /* ✅ 凹凸感を追加 */
    box-shadow: inset 0 -5px 0 #159f4d;

    transition: transform 0.25s ease, box-shadow 0.25s ease;
  }

  .cta-buttons .tel:hover {
    background: #5fc995;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: inset 0 -3px 0 #0e9c45; /* 若干凹みを軽くしてhover感 */
  }
	
.cta-buttons .tel span:first-child {
		font-size:16px;
	}
.cta-bar .tel-text-block .sp {
		font-size:16px;
	}

  .cta-buttons .number .sp {
    display: block;
  }
  .cta-buttons .mail::before {
	width:1em;
	  height:1em;
    background-image: url('http://github-enterprise.jp/media/wp-content/uploads/2025/08/icon_forward_w.png');
  }
  .cta-buttons .tel::before {
	width:1em;
	  height:1em;
    background-image: url('http://github-enterprise.jp/media/wp-content/uploads/2025/08/icon_tel_w.png');
  }
.cta-buttons .tel-icon {
  display: block;
	width:1em;
	  height:1em;
  background: url('http://github-enterprise.jp/media/wp-content/uploads/2025/08/icon_tel_w.png') no-repeat center center;
  background-size: contain;
  flex-shrink: 0;
}
}




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

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

}

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

}

/************************************
** ■見出しカスタマイズ（h1-6）
************************************/

.article h1{ /*見出し2（タイトル）カスタマイズ*/
    position: relative;
    padding: 1rem;
    outline: 2px solid #333;
    background-image:
        linear-gradient(45deg, transparent 0 30px, #fff 30px),
        repeating-linear-gradient(135deg, #FF6601 0 3px, transparent 3px 6px);
    color: #333;
    font-size: 26px;
    font-weight: bold;
    text-align: center;
  }

.article h2{ /*見出し2（タイトル）カスタマイズ*/
    padding: 0.8rem 0;
	margin-bottom: 20px;
    background-image: linear-gradient(90deg, #FF6601 0 50px, transparent 50px 60px, #121212 0 60px);
    background-repeat: no-repeat;
    background-size: 100% 3px;
    background-position: bottom;
    color: #353535;
    font-weight: bold;
    font-size: 26px;
  }


.article h3{ /*見出し3（タイトル）カスタマイズ*/
  background: #ffffff; /*背景カラー*/
  font-size: 30px; /*フォントサイズ*/
  letter-spacing: 1px; /*文字間隔*/
  margin: -8px -8px 20px -8px;
  padding: 9px 10px 9px 10px;
  border-left: 10px solid #333333; /*左ラインの太さとカラー*/
  line-height: 35px; /*高さ*/
  border-radius: 3px; /*角丸コーナー*/
  }

/************************************
** ■ホバー時の背景色設定
************************************/
.widget_recent_entries ul li a:hover,
.widget_categories ul li a:hover,
.widget_archive ul li a:hover,
.widget_pages ul li a:hover,
.widget_meta ul li a:hover,
.widget_rss ul li a:hover,
.widget_nav_menu ul li a:hover,
.navi-in a:hover,
.navi-footer-in a:hover,
.a-wrap:hover,
.comment-reply-link:hover,
.recent-comments .a-wrap:hover .recent-comment-content,
.pagination a:hover,
.pagination-next-link:hover, .comment-btn:hover,
.pager-links a:hover span,
.pager-links a:hover span,
.mobile-menu-buttons .menu-button:hover,
.menu-drawer a:hover,
.bp-login-widget-register-link a:hover,
a:hover{
 background-color: #FFF; /* 背景色*/
 transition: all 0.8s ease; /*アニメーション*/
 color: #FF6601; /*フォントカラー*/
}

/************************************
** ■カテゴリーのデザイン
************************************/

.widget_categories ul li a { /*親カテゴリ用のコード*/
    color: #333;
    text-decoration: none;
    padding: 6px 0;
    display: block;
    padding-right: 4px;
    padding-left: 4px;
    border-top: 1px dotted #ccc; /*上部にボーダーを引く*/
    font-size: 16px;
}
.widget_categories ul li a::before { /*親カテゴリのアイコン*/
    font-family: FontAwesome;
    content: "\f0da";
    padding-right: 10px;
}
.widget_categories > ul > li > a:first-child { 
    border-top: none; /*最初の親カテゴリは上部ボーダーを消す*/
}
.widget_categories > ul > li > a:last-child {
    border-bottom: 1px dotted #ccc; /*最後の親カテゴリは下部ボーダーを引く*/
}
.widget_categories ul li a .post-count { /*記事数用のコード*/
    display: block;
    float: right;
    background: #ededed;
    padding: 0 1em;
    font-size: 14px;
    margin-top: .2em;
    border-radius: 4px;
}
.widget_categories ul li a:hover { /*親子共通マウスホバー時*/
    background: none;
    transition: 0.5s;
    color: #FF6601;
}
.widget_categories ul li a:hover .post-count { /*記事数のマウスホバー時*/
    background: #aaa;
    color: #FF6601;
    transition: 0.5s;
}
.widget_categories ul li ul { /*子カテゴリのボックス*/
    border-bottom: 1px dotted #FFF;
}
.widget_categories ul li ul li a { /*子カテゴリ用のコード*/
    color: #FFF;
    text-decoration: none;
    padding: 0 4px 4px 4px;
    display: block;
    border: none;
}
.widget_categories ul li ul li a::before { /*子カテゴリのアイコン*/
    font-family: FontAwesome;
    content: "・";
    padding: 0;
}

/************************************
** ●次のページボタンカスタマイズ
************************************/
.pagination-next,
.pager-prev-next { /*次のページ*/
  margin-top: 38px; /*上マージン*/
  border: solid 2px #dddddd; /*枠線*/
  border-radius: 6px; /*角丸コーナー*/
  background-color: #fff;
　box-shadow: 3px 3px 2px 0 rgba(0,0,0,0.3); /* シャドー（影）*/
}
.pagination-next-link { /*次のページ*/
  font-size: 20px; /*フォントサイズ*/
  letter-spacing: 10px; /*文字間隔*/
  font-weight: bold; /*文字強調*/
  color: #000000; /*フォントカラー*/
  padding: 6px; /*余白*/
  transition: all 0.6s ease; /*アニメーション*/
  border: none;
}
.pagination-next-link:hover {
  color: #FF6601; /*フォントカラー*/
  background-color: #dddddd; /*背景色*/
  transition: all 0.6s ease; /*アニメーション*/
}

/************************************
** ●ページ送りボタン／戻りボタンのカスタマイズ
************************************/
.page-numbers { /*現ページ以外のページ番号*/
  background-color: #fff; /*背景色*/
  border: solid 1px #dddddd; /*枠線*/
  border-radius: 24px; /*角丸コーナー*/
  font-family: sans-serif; /*フォントゴシック指定*/
  font-size: 20px; /*フォントサイズ*/
  font-style: oblique; /*斜体フォント*/
  color: #000000; /*文字色*/
  font-weight: bold; /*文字強調*/
 /* box-shadow: 3px 3px 2px 0 rgba(0,0,0,0.3); シャドー（影）*/
  transition: all 0.6s ease; /*アニメーション*/
  font-family: Lato,"ヒラギノ角ゴシック Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Arial,sans-serif;
}
  @media screen and (max-width: 1030px) { /*スマホ表示設定*/
  .page-numbers {
    font-size: 20px; /*フォントサイズ*/
    line-height: 44px; /*高さ調整*/
  }
}
.pagination a.page-numbers:hover { /*現ページ以外のページ番号のホバー時*/
  background-color: #dddddd!important; /*マウスオーバー時の背景色*/
  color: #FF6601!important; /*マウスオーバー時の文字色*/
  border: solid 1px #FF6601; /*マウスオーバー時の枠線fe619a*/
  transition: all 0.6s ease; /*アニメーション*/
}
.pagination .current { /*現ページ番号*/
  background-color: #dddddd; /*背景色ffddee*/
  border: solid 1px #dddddd; /*枠線fe619a*/
  border-radius: 24px; /*角丸コーナー*/
  font-family: sans-serif; /*フォントゴシック指定*/
  font-size: 20px; /*フォントサイズ*/
  font-style: oblique; /*斜体フォント*/
  color: #FF6601; /*文字色*/
  font-weight: bold; /*文字強調*/
/*  box-shadow: 3px 3px 2px 0 rgba(0,0,0,0.3); シャドー（影）*/
  font-family: Lato,"ヒラギノ角ゴシック Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Arial,sans-serif;
}
.page-numbers.dots { /*ページ番号ドット*/
  background-color: transparent; /*背景*/
  border: none; /*枠線*/
  color: #000000; /*文字色*/
  font-size: 28px; /*フォントサイズ*/
  font-weight: 900; /*文字強調*/
  font-style: normal; /*通常フォント*/
  box-shadow: none; /*シャドー（影）無し*/
  opacity: 1.0; /*不透明度無し*/
}
  @media screen and (max-width: 1030px) { /*スマホ表示設定*/
  .page-numbers.dots {
    line-height: 36px; /*高さ調整*/
  }
}