@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){
  /*必要ならばここにコードを書く*/
}

/* Google公認reCAPTCHA v3　非表示 */
.grecaptcha-badge { visibility: hidden; }

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

/* 見出しリセット */
/* 見出し2 */
.article h2{
background:none;
padding: 0;
}

/* 見出し3 */
.article h3{
border-top:none;
border-bottom:none;
border-left:none;
border-right:none;
padding: 0;
}

/* 見出し4 */
.article h4{
border-top:none;
border-bottom:none;
padding: 0;
}

/* 見出し5 */
.article h5{
border-bottom:none;
padding: 0;
}

/* 見出し6 */
.article h6{
border-bottom:none;
padding: 0;
}

/************************************
**見出しの設定
************************************/
.article h2 {
  background: #b3e8ff;
  color: #606060;/*文字色*/
  font-size: 18px;/*文字サイズ*/
  box-shadow: 0px 0px 0px 5px #b3e8ff;
  border: dashed 2px white;
  padding: 0.5em 0.6em;
}

.article h3 {
  border-bottom: solid 4px #ccefff;
  color: #606060;/*文字色*/
  font-size: 16px;/*文字サイズ*/
  position: relative;
}

.article h3:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 4px #80d9ff;
  bottom: -3px;
  width: 20%;
}

.article h4 {
  padding: 0.5em;/*上下 左右の余白*/
  background: transparent;/*背景透明に*/
  border-left: solid 4px #80d9ff;/*左線太さと色*/
  color: #606060;/*文字色*/
  font-size: 16px;/*文字サイズ*/
}

.article h5 {
  /*線の種類（点線）大きさと線色*/
  border-bottom: dashed 3px #80d9ff;
  color: #606060;/*文字色*/
  font-size: 16px;/*文字サイズ*/
}

/************************************
** サイト全体リンク下線消す
************************************/
a{
text-decoration: none;
}

/************************************
** サイドバーカスタム
************************************/
.sidebar h3{
background:transparent; /* 背景を透明に */
color:#666666;
text-align:center;
border-bottom: 3px dotted #b3e8ff; /*ドット色変更*/
padding:0px;  /* 周囲の余白（内側） */
margin: 0px 0px 10px 0px;  /* 周囲の余白（外側） */
}
.widget_recent_entries ul li a, .widget_categories ul li a, .widget_archive ul li a, .widget_pages ul li a, .widget_meta ul li a, .widget_rss ul li a, .widget_nav_menu ul li a {
background-color:#ffffff;
margin: 6px 0;
padding: 4px 10px;
border-radius:20px;
transition: 0.4s
}
.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{
background-color:#ccefff;/*マウスオーバー時の背景色変更*/
color:#404040!important;
}
.tagcloud a{
background-color:#ffffff;
}
.tagcloud a:hover{
background-color:#ccefff;/*マウスオーバー時の背景色変更*/
color:#404040!important;
transition: 0.4s ;
}
.nwa .recommended.rcs-card-margin a {
margin: 0 0 1em;
width: 90%;
}
.widget-entry-cards .widget-entry-card-content{
color: #565656;
}

/************************************
**サイドバーカテゴリーの行間とフォントを小さくする
************************************/
.widget_categories ul li a{
	line-height: 1.0;
	font-size: 14px;
}

/************************************
**メインカラムとサイドバー角を丸くする
************************************/
#main ,#sidebar{
  border-radius: 20px;
}

/************************************
**検索ボックスのカスタム
************************************/
/*** 検索ボックス（通常時） ***/
input::placeholder{
	font-size:0.75em;/*「サイト内を検索」の文字サイズ*/
}
.search-edit, input[type="text"] {
 border: 3px solid #b3e8ff; /* 太さ・線種・罫線ドットより薄い同系色 */
	height:40px;
}
/*** 検索ボックス（クリック時） ***/
.search-edit:focus{
 outline: none;
 border: 3px solid #b3e8ff; /* 太さ・線種・罫線ドットより薄い同系色 */
 background-color: #fff9ff; /* 背景色・パステルピンク */
}
/*** 検索マーク色変更 ***/
span.fas.fa-search::before{
color:#cce5ff;
}

/************************************
**マーカーの色
************************************/
.marker { /*黄色マーカー*/
 background-color: #ffffd6;
}
.marker-red { /*赤色マーカー*/
 background-color: #ffeaf4;
}
.marker-blue { /*水色マーカー*/
 background-color: #e0efff;
}
.marker-under { /*黄色アンダーラインマーカー*/
 background: linear-gradient(transparent 70%, #fff3b8 70%);
}
.marker-under-red { /*赤色アンダーラインマーカー*/
 background: linear-gradient(transparent 70%, #ffe5f2 70%);
}
.marker-under-blue { /*水色アンダーラインマーカー*/
 background: linear-gradient(transparent 80%, #d6eaff 80%);
}

/************************************
**ボックス白抜き・タブの色と太さ変更
************************************/
.blank-box {border-width: 3px; border-color: #d2d2d2;} /* 枠の太さと灰色の変更 */
.blank-box.bb-yellow {border-color: #f9e6a6;} /* 黄色 */
.blank-box.bb-red {border-color: #ffccd4;} /* 赤色 */
.blank-box.bb-blue {border-color: #b3e8ff;} /* 青色 */
.blank-box.bb-green {border-color: #d6e6b8;} /* 緑色 */
.blank-box.bb-tab .bb-label {
  background-color: #d2d2d2;}
.blank-box.bb-tab.bb-yellow .bb-label {
  background-color: #f9e6a6;}
.blank-box.bb-tab.bb-red .bb-label {
  background-color: #ffccd4;}
.blank-box.bb-tab.bb-blue .bb-label {
  background-color: #b3e8ff;}
.blank-box.bb-tab.bb-green .bb-label {
  background-color: #d6e6b8;}

/************************************
**ボックス付箋風の色変更
************************************/
.blank-box.sticky {
  border-color: #cccccc;
  background-color: #f2f2f2;
}
.blank-box.sticky.st-yellow {
  border-color: #f9e6a6;
  background-color: #ffffe6;
}
.blank-box.sticky.st-red {
  border-color: #ffccd4;
  background-color: #ffeff7;
}
.blank-box.sticky.st-blue {
  border-color: #b3e8ff;
  background-color: #eaf4ff;
}
.blank-box.sticky.st-green {
  border-color: #d6e6b8;
  background-color: #ecf3de;
}

/************************************
**ボックス白抜き・タブの余白を減らす
************************************/
.blank-box {
padding: 8px 10px; /*  左側の数字を変更する*/
margin: 8px; /* 上の数字と同じに */
}

/************************************
**シェアボタン変更
************************************/
/* 各SNSボタン共通 */
#main .sns-buttons a{
 color:#5d5d5d;
 background-color:#fff;
 width:2.5em;
 margin-left:0.5em;
}
/* テキストを非表示 */
#main .button-caption {
	display: none; /*キャプション非表示*/
}
/* ホバー時 */
.sns-buttons .icon-x:hover{
color:#55acee;
}
.sns-buttons .icon-facebook:hover{
color:#3b5998;
}
.sns-buttons .icon-hatena:hover{
color:#3C7DD1;
}
.sns-buttons .icon-pocket:hover{
color:#EE4257;
}
.sns-buttons .icon-line:hover{
color:#00c300;
}

/************************************
** ブログカード説明文(スニペット)非表示外部リンクのみ
************************************/
.external-blogcard-snippet{
    display: none;
}

/************************************
** エントリーカードサムネイルの角を丸める
************************************/
.card-thumb img{
border-radius: 20px; /*サムネイルの角を丸める*/
}

/************************************
** エントリーカード全体の角を丸める
************************************/
.entry-card-wrap{
border-radius: 10px; /*エントリーカード全体の角を丸める*/
}

/************************************
** エントリーカードのタイトル文字サイズ設定
************************************/
.entry-card-title {
 font-size: 15px;
} 

/************************************
** お問い合わせフォームのカスタム
************************************/
#cf-tbl{
width: 80％;
}

#cf-tbl table{
width: 100%;
border-collapse: collapse;
border: solid #CCC;
border-width: 1px;
color: #444;
}
#cf-tbl table tr th,
#cf-tbl table tr td{
padding: 0.5em;
text-align: left;
vertical-align: top;
border: solid #CCC;
border-width: 1px;
vertical-align: middle;
}
#cf-tbl table tr th{
width: 35%;
background: #eee;
}
@media screen and (max-width:768px){
#cf-tbl{
width: 100%;
}

#cf-tbl table,
#cf-tbl table tbody,
#cf-tbl table tr,
#cf-tbl table tr th,
#cf-tbl table tr td{
display: block;
}

#cf-tbl table{
width: 100%;
border-width: 0 0 1px 0;
}

#cf-tbl table tr th,
#cf-tbl table tr td{
width: 100%;
padding: 3% 5%;
}

#cf-tbl table tr td{
border-width: 0px 1px 0px 1px;
}
}
/*「必須」文字デザイン背景撫子色*/
.required{
font-size:.8em;
padding: 5px;
background: #eebbcb;
color: #606060;
border-radius: 3px;
margin-right: 5px;
}

/*「任意」文字デザイン背景白藍色*/
.optional{
font-size:.8em;
padding: 5px;
background: #b3e8ff;
color: #606060;
border-radius: 3px;
margin-right: 5px;
}

/* 入力項目を見やすく */
input.wpcf7-form-control.wpcf7-text,
textarea.wpcf7-form-control.wpcf7-textarea {
	width: 100%;
	padding: 8px 15px;
	margin-right: 10px;
	margin-top: 10px;
	border: 1px solid #d0d5d8;
	border-radius: 3px;
	background-color: #eff1f5;
}
textarea.wpcf7-form-control.wpcf7-textarea {
	height: 200px;
}

/* 「送信する」ボタン */
input.wpcf7-submit {
    display: block;
    padding: 15px;
    width: 400px;
    background: #b3e8ff;
    color: #606060;
    font-size: 18px;
    font-weight: 700;
    border-radius: 2px;
    margin: 15px auto 0
}
@media screen and (max-width:768px){
input.wpcf7-submit {
width: 250px;
}
}

input.wpcf7-submit:hover {
	box-shadow: 0 15px 30px -5px rgba(0,0,0,.15), 0 0 5px rgba(0,0,0,.1);
	transform: translateY(-4px);
	opacity:0.7;
}
/* エラーメッセージを見やすく背景鳶色 */
span.wpcf7-not-valid-tip,
.wpcf7-response-output.wpcf7-validation-errors {
	color: #95483f;
	font-weight: 600;
}

/************************************
**プロフィールデザイン設定
************************************/

/************************************
** サイト型TOP画面カスタマイズ
************************************/
body .entry-content>*:first-child {
    margin-top: .1em !important;
}
h2.top_menu {
    font-size: 1.4em;
    border-left: none;
    background-color: #FFFFFF;
    color: #666;
    overflow: hidden;
    text-align: center;
}
h2.top_menu:after {
    content: "";
    display: block;
    width: 60px;
    height: 1px;
    background-color: #FFFFFF;
}
.page .breadcrumb,
.page .article-header,
.page .article-footer{
    display: none;
}
.widget-entry-cards {
    justify-content: space-between;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: -moz-box;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
.widget-entry-cards.card-large-image .a-wrap {
    width: 48.5%;
    margin: 1em 0;
    max-width: none;
    background: white;
    padding: 10px;
}
.sidebar .widget-entry-cards.card-large-image .a-wrap {
    width: 100%;
    margin: 0;
}
.widget-entry-cards.card-large-image .a-wrap:nth-child(odd) {
    margin-right: 3%;
}
.card-content {
    padding-top: 10px;
    line-height: 1.6;
}
.widget-entry-card-date {
    text-align: right;
}
.p-button {
    max-width: 300px;
    margin: 0 auto;
}
.p-button a {
    display: block;
    margin:25px 0;
    padding: 0.6em 0.8em;
    border-radius: 2em;
    color: #606060;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
    background: #eeeeee; /* 「もっと見る」ボタンの色*/
    text-align: center;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    opacity:1;
}
.p-button a:hover{
    box-shadow: none;
    transform: translateY(3px);
    opacity:1;
}

/*(スマホ)480px以下の表示設定*/
@media screen and (max-width: 480px) {
    .widget-entry-cards.card-large-image .a-wrap {
	width: 50%;  /*スマホで２列表示は50％*/
    }
    .widget-entry-cards.card-large-image .a-wrap:nth-child(odd) {
 	margin-right: 0;
    }
}

/*カード枠*/
.e-card{border: 1px solid #ffffff; /*枠線の太さ、形状、色*/
border-radius: 20px;padding: 8px;} /*角の丸み*/

/*記事ホバー時背景色設定*/
.new-entry-card:hover { /*マウスオン時*/
background-color: #ccefff; /*背景色*/
}

/*フロント固定ページのタイトルを非表示　*/
.home .article h1{display:none;}
/*フロント固定ページの投稿日を非表示　*/
.home .post-date{display:none;}
/*フロント固定ページの更新日を非表示*/
.home .post-update{display: none;}
/*フロント固定ページのシェアボタンを非表示*/
.home.page .sns-share{display: none;}
/*フロント固定ページのフォローボタンを非表示*/
.home.page .sns-follow{display: none;}
/*フロント固定ページの投稿者名を非表示*/
.home.page .author-info{display: none;}

/************************************
** ボタンデザイン設定
************************************/
/*トップページで使用*/
.btn-gradient-radius {
  display: inline-block;
  padding: 7px 20px;
  border-radius: 25px;
  text-decoration: none;
  font-weight: bold;
  color: #767676;
  background-image: linear-gradient(45deg, #ccefff 0%, #b3e8ff 100%);
  transition: .4s;
}

.btn-gradient-radius:hover {
  background-image: linear-gradient(45deg, #ccefff 0%, #80d9ff 100%);
  color: #767676;
}

/************************************
** フロントページの上部文字メニューカスタム
************************************/
/* ナビメニュー 文字*/
#navi {
	font-weight: bold; /* 太文字 */
	letter-spacing: 0.12em;/*字間を広げる*/
	color: #333;
}
.navi-in a {
	font-size: 13px;/*文字サイズ*/
}

/* ナビメニュー 下線*/
#navi .navi-in a::after {
	position: absolute;/*線の位置を絶対配置に*/
	bottom: 12px;/*線の位置*/
	left: 0;
	content: '';
	width: 100%;
	height: 2px;/*線の太さ*/
	background: #b2d8ff;/*線の色*/
	transform: scale(0, 1);
	transform-origin: center top;
	transition: transform 0.3s;/*変形の時間*/
}

#navi .navi-in a:hover::after {
	transform: scale(1, 1);
}

/* タブレットメニュー中央寄せ */
@media screen and (max-width: 768px){
#navi-in{
	display: flex;
	justify-content: center;
}
}

/*スマホメニューを横スクロール*/
@media screen and (max-width: 480px){
#header-container .navi-in > ul li {
   height: auto;
   font-weight: 600;
   line-height:1.3;
}
#header-container #navi a{
   color:#222; /* 文字色 */
   padding:0.8em 1em;
}
#header-container #navi a:hover{
   color:#222; /* マウスホバー時の文字色 */
}
#header-container .navi-in > ul > .menu-item-has-children > a::after {
   top: 0.8em;
   font-size: 1.2em;
   font-weight: 600;
}
#header-container .sub-menu .caption-wrap{
   padding-left:1em;
}
.navi-in > ul .menu-item-has-description > a > .caption-wrap{
   height:auto;
}
}	
@media screen and (max-width: 1030px){
  #header-container .menu-mobile{
    display:none;
  }
  .navi-in > .menu-mobile{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    overflow-x: scroll;
    white-space: nowrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
  }
  #header-container #navi a{
    font-size:0.8em;
    padding: 1em 1.2em;
  }
  #header-container .navi-in > ul > .menu-item-has-children > a::after{
    display:none;
  }
  #navi .navi-in > .menu-mobile li {
    height: auto;
    line-height: 1.8;
  }
  .mblt-header-mobile-buttons {
    margin-top: 53px;
  }
}

/************************************
** モバイルボタンとスライドインメニューカスタム
************************************/
/*ヘッダーの文字色背景色を変える*/
.mobile-header-menu-buttons, .mobile-menu-buttons, .menu-button {
  color: #606060;
  background-color: rgba(255,255,255,0.5);  /*背景色透明化*/
}

/* ホームボタンの色 */
.mobile-menu-buttons .home-menu-button > a {
color: #606060;
}

/* ページトップボタンの色 */
.mobile-menu-buttons .top-menu-button > a {
color: #606060;
}

/*スライドイン背景透明化*/
.navi-menu-content{
  background-color: rgba(244,247,247,0.8);  /*背景色*/
}

/*ハンバーガーメニューを右からスライドに変更*/
.navi-menu-content {
	left: auto;
	right: 0;
	transform: translateX(105%);
}

/************************************
** モバイルフッターメニューを一列にする
************************************/
@media screen and (max-width: 834px){
.navi-footer-in>.menu-footer{
    flex-wrap: nowrap;  /*フッターメニューを一列に*/
    justify-content: center;
  }
.navi-footer-in a{
    font-size: 85%;  /*フッターメニューの文字の大きさを変更*/
  }
}