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















/*デフォルトリンク*/
a {
  color: #2121d3;
}
a:hover {
  color: #d32121;
}

p {
color: #111;
}



/*カラムシャドー*/

#header-container {
text-align: center;
background-color: #f3f4f5;
}

#header-container-in {
max-width: 1256px;
margin: 0 auto;
box-shadow: 1px 1px 6px #aaa;
}

.content {
margin-top: 15px;
}

#main {
box-shadow: 1px 1px 6px #aaa;
border-radius: 0px;
margin-top: 0px;
}

#sidebar {
box-shadow: 1px 1px 6px #aaa;
border-radius: 0px;
}


#footer {
box-shadow: 6px 0px 0px #aaa;
border-radius: 0px;
}



/************************************
** ヘッダー改造
************************************/


/*835px以上*/
@media screen and (min-width: 834px){

.header {
padding: 0 ;
margin: 0;
background-color: #fff;

}

#header-in {
padding: 14px 10px 0px 15px;
margin: 0;
}

#header-in .tagline {
text-align:left;
color:#fff;
font-size: 15px;
padding: 15px 15px 0px 20px;
margin: 0;
background-color: #ff5511;
}


#header-in .logo {
font-family: "times","Verdana";
color:#fff;
line-height: 1.2;
text-align: left;
padding: 3px 15px 18px 2px;
margin: 0;
background-color: #ff5511;
}
	
span.site-name-text{
font-size: 28px;
font-weight: 600;
letter-spacing: 0.05em;
}
}



/*834px以下*/
@media screen and (max-width: 834px){
#header-in .tagline {
color:#222;
text-align:center;
padding-top: 8px;
}
#header-in .logo {
font-family: "times","Verdana";
font-weight: 800;
letter-spacing: 0.05em;
}
}





** グローバルメニュー
************************************/
.navi {
  background-color: #fff;
}

.navi-in a {
  position: relative;
}
.navi-in .has-icon {
  position: absolute;
  right: 6px;
  top: 0;
  display: inline-block;
  opacity: 0.7;
  font-size: 11px;
}
.navi-in > ul {
  padding: 0;
  margin: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
justify-content: left;
text-align: left;
margin-left: 0px;

  /*サブメニュー*/
}
.navi-in > ul li {
  display: block;
  width: 176px;
width: 210px;
height: 38px;
line-height: 38px;
  position: relative;
}
.navi-in > ul li:hover > ul {
  display: block;
}
.navi-in > ul .menu-item-has-description > a > .caption-wrap {
  line-height: 21.4285714286px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  align-content: center;
  height: 38px;
}
.navi-in > ul .menu-item-has-description > a > .caption-wrap > div {
  width: 100%;
}
.navi-in > ul .sub-menu {
  display: none;
  position: absolute;
  margin: 0;
  min-width: 240px;
  list-style: none;
  padding: 0;
  background-color: #fafbfc;
  z-index: 99;
  text-align: left;
  /*サブメニューのサブメニュー*/
}
.navi-in > ul .sub-menu li {
  width: auto;
}
.navi-in > ul .sub-menu a {
  padding-left: 16px;
  padding-right: 16px;
}
.navi-in > ul .sub-menu ul {
  top: -50px;
  left: 240px;
  position: relative;
}
.navi-in a {
  color: #333;
  text-decoration: none;
  display: block;
  font-size: 16px;
  transition: all 0.3s ease-in-out;
}
.navi-in a:hover {
  background-color: #f5f8fa;
  transition: all 0.3s ease-in-out;
  color: #333;
}
.navi-in a:hover > ul {
  display: block;
}






h1.entry-title{
font-size: 26px;
line-height: 1.5;
font-weight: 800;
margin-bottom: 0px;
}


.article h2 {
color:#fff;
font-size: 20px;
font-weight: 800;
line-height: 1.6;
padding: 0.6em 1em 0.5em;
margin: 1em -8px 0.5em;
border: double 4px #fff;
background: #ff5511;
}


/*480px以下*/
@media screen and (max-width: 480px){
.article h2 {
padding: .8em .5em .8em 1em;
margin: 30px -10px 0 -10px;
}
}

.entry-card-snippet h2,
h2 a.entry-title-link {
font-size: 18px ;
color: #111;
line-height: 1.5;
margin: 15px 0 ;
}


h2.entry-card-title, h2.card-title {
font-size: 19px;
line-height: 1.6;
}

/*480px以下*/
@media screen and (max-width: 480px){
h2.entry-card-title, h2.card-title {
font-size: 16px;
line-height: 1.4;
}
}

.entry-card-snippet, .card-snippet {
font-size: 18px;
line-height: 1.6;
}



#comment-area h3,
#related-entries h2 {
font-size: 20px;
font-weight: 800;
color: #000;
line-height: 1.5;
padding: 0.5em 0.5em 0.4em 0.8em;
margin: 30px 0px;
border: none;
border-left: 5px solid #207bd6;
border-left: 5px solid #00a8ad;
border-left: 5px solid #396cd7;
border-left: 5px solid #ff5511;
}

.article h3 {
font-size: 20px;
font-weight: 800;
color: #000;
line-height: 1.5;
padding: 0 0 0.4em 0;
margin: 30px 0px 0px;
border: none;
}

.article h3:before  {
font-family: "Font Awesome 5 Free";
content: '\f560';
color: #ff5511;
font-size: 1.2em ;
font-weight: 900;
padding-right: 0.5em;
}



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

.article h3 {
margin: 30px -9px 0 -9px;
}
}

.article h4 {
font-size: 19px;
font-weight: 800;
color: #000;
line-height: 1.5;
padding: 0.4em 0 0.3em;
margin: 30px 0px;
border: none;
}


.related-entry-card-content h3.related-entry-card-title, related-entry-card-content h3.card-title {
font-size: 17px;
line-height: 1.5;
font-weight: 600;
}

/*480px以下*/
@media screen and (max-width: 480px){
h3.related-entry-card-title, h3.card-title {
font-size: 16px;
line-height: 1.4;
}
}


/*480px以下*/
@media screen and (max-width: 480px){
.related-entry-card-snippet, .card-snippet {
font-size: 16px;
line-height: 1.4;
}
}

.article h4, .article h5{
font-size: 18px;
font-weight: 800;
margin: 20px 0px;
}


.article p{
margin: 1em 0px;
}

.article dl{
padding: 0 0;
margin: 1em;
}

.article dt{ 
color:#111;
font-size: 16px;
font-weight:800;
line-height: 1.6;
margin: 12px 0px 0px 0px;
padding: 0px 0px 0px 0px;
display:block;
}

.article dd{ 
color:#222;
font-size: 16px;
line-height: 1.6;
margin: 0 0;
padding: 6px 0px 8px 0px;
border-bottom: 1px dotted #dedede;
}





/************************************
** 目次
************************************/
.toc {
border: 1px solid #ccc;
font-size: 16px;
line-height: 1.5;
padding: 1em 1em 0.7em ;
margin-bottom: 1em;
display: table;
}

.toc ul, .toc ol {
padding-left: 20px;
margin-top: 0.5em;
}
.toc ul {
list-style: none;
padding-left: 5px;
}

.toc a {
color: #222;
text-decoration: none;
}

.toc a:hover {
  text-decoration: underline;
}

.toc-title {
font-size: 16px;
  text-align: center;
  display: block;
  padding: 2px 16px;
}


.sidebar h3 {
font-size: 18px;
line-height: 1.6;
color: #fff;
text-align: center;
font-weight: 600;
padding: 8px 10px 8px 0px;
margin: 1.5em 0 1em;
border: double 4px #fff;
background: #009fd6;
background: #ff5511;
}


/************************************
** カテゴリーのラベル
************************************/

.cat-label {
  position: absolute;
  top: 0.3em;
  left: 0.3em;
  border: 1px solid #fff;
  font-size: 11px;
  color: #fff;
  background-color: rgba(51, 51, 51, 0.7);
background-color:#ff5511;
padding: 3px 6px 2px 6px;
border: 1px solid #fff;
  max-width: 80%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  opacity: 0.8;
}

/*本文下カテゴリ*/
.cat-link {
  color: #fff;
  text-decoration: none;
  display: inline-block;
  margin-right: 5px;
  padding: 3px 7px 2px;
  font-size: 12px;
  background-color: #dd4e42;
  border-radius: 2px;
  word-break: break-all;
}
.cat-link::before {
  font-family: FontAwesome;
  content: "";
  padding-right: 3px;
}
.cat-link:hover {
  opacity: 0.5;
  color: #fff;
}

ul li.cat-item {
font-size: 16px;
border-bottom: 1px dotted #ccc;
line-height: 1.5;
margin: 0 0;
padding: 0px 0px 0px 0px;
}


/************************************
** 新着記事ウィジェット（デフォルト）
************************************/
.widget-entry-cards .a-wrap {
  padding: 5px 3px;
line-height: 1.5;
  margin-bottom: 4px;
}
.widget-entry-cards .widget-entry-card {
  font-size: 0.8em;
  position: relative;
}
.widget-entry-cards figure {
  width: 120px;
}
.widget-entry-cards .widget-entry-card-content {
  margin-left: 124px;
}
.widget-entry-cards .widget-entry-card-pv {
  margin-left: 5px;
  font-style: italic;
  font-size: 0.8em;
}


.new-entry-card-title, .widget-entry-card-title card-title {
font-size: 16px;
font-weight: 400;
color: #222;
}

/************************************
** 新着記事ウィジェット（大きなサムネイル）
************************************/
.widget-entry-cards.not-default .a-wrap {
  max-width: 400px;
}
.widget-entry-cards.not-default .e-card {
  font-size: 16px;
}
.widget-entry-cards.not-default figure {
  float: none;
  width: 100%;
}
.widget-entry-cards.not-default figure img {
  width: 100%;
}
.widget-entry-cards.not-default .card-content {
  margin: 0 0 0.5em;
}
.widget-entry-cards.not-default .widget-entry-card-pv {
  opacity: 0.7;
  position: absolute;
  top: 0;
  right: 0;
  padding: 3px 6px;
  background-color: #333;
background-color: #009fd6;
  color: #fff;
}

/************************************
** 新着記事ウィジェット（タイトルを重ねた大きなサムネイル）
************************************/
.widget-entry-cards.large-thumb-on .a-wrap:hover {
  opacity: 0.7;
}
.widget-entry-cards.large-thumb-on .e-card {
  position: relative;
}
.widget-entry-cards.large-thumb-on .card-content {
  margin: 0;
}
.widget-entry-cards.large-thumb-on .card-title {
  position: absolute;
  width: 100%;
  bottom: 0;
  padding: 10px 5px;
  background-color: rgba(51, 51, 51, 0.7);
background-color: #009fd6;
  color: #fff;
  max-height: 30%;
  overflow: hidden;
}

/************************************
** 人気記事ウィジェットランキング表示
************************************/
.widget-entry-cards.ranking-visible {
  counter-reset: p-rank;
}
.widget-entry-cards.ranking-visible .widget-entry-card-thumb {
  counter-increment: p-rank;
}
.widget-entry-cards.ranking-visible .widget-entry-card-thumb::before {
  content: counter(p-rank);
  position: absolute;
  top: 0;
  left: 0;
  padding: 4px;
  width: 16px;
  height: 16px;
line-height: 16px;
background-color: #ff5511;
  color: #fff;
  opacity: 0.8;
  text-align: center;
  font-size: 14px;
  font-family: Arial,sans-serif;
  z-index: 1;
}


.popular-entry-card-title, .widget-entry-card-title card-title {
font-size: 16px;
font-weight: 400;
line-height: 1.5;
color: #222;
}


/*タグクラウド*/
.tagcloud {
  display: flex;
  flex-wrap: wrap;
}
.tagcloud a {
  background-color: #fff;
  border: 1px solid #dddedf;
  border-radius: 2px;
  color: #555;
  display: inline-block;
  padding: 3px 8px;
  text-decoration: none;
  font-size: 14px;
  margin: 2px;
  flex: 1 1 auto;
  display: flex;
  justify-content: space-between;
}
.tagcloud a:hover {
  background-color: #65b145;
  transition: all 0.5s ease;
  color: #fff;
}
.tagcloud a .tag-caption {
  word-break: break-all;
}
.tagcloud a .tag-caption::before {
  font-family: FontAwesome;
  content: "";
  padding-right: 5px;
}
.tagcloud a .tag-link-count {
  margin-left: 8px;
}
















/*ラ君*/

/*引用*/
blockquote{
	position:relative;
	color:#3F3F3F;
	margin-top:20px;
	padding:20px 20px 20px 70px;
	background-color: #F2F2F2;
}
blockquote::before{
	position:absolute;
	top:10px;
	left:20px;
	font-family: "icomoon";
	content: "\e909";
	font-size:3rem;
	color:#D9D9D9;
}

/*枠線ボックス*/
.borderBox{
	border:1px solid #E5E5E5;
	padding:20px;
	margin-top:20px;
}

/*二重線ボックス*/
.border2Box{
	border:4px double #E5E5E5;
	padding:20px;
	margin-top:20px;
}

/*背景ボックス*/
.bgBox{
	background:#F2F2F2;
	padding:20px;
	margin-top:20px;
}

/*ペーパーボックス*/
.paperBox {
	position: relative;
	padding:20px;
	margin-top:20px;
	background-color: #F2F2F2;
}
.paperBox::after {
    content: "";
	position: absolute;
	bottom: 0;
    right: 0;
    border-color: #D8D8D8 #ffffff #ffffff #D8D8D8;
    border-style: solid;
    border-width: 0 0 20px 20px;
}

/*太文字ボックス*/
.boldBox{
	border:3px solid #191919;
	padding:20px;
	margin-top:20px;
	font-weight:700;
}

/*括弧ボックス*/
.bracketsBox{
	position:relative;
	padding:20px;
	margin-top:20px;
}
.bracketsBox:before,
.bracketsBox:after {
    display: inline-block;
    position: absolute;
    width: 20px;
    height: 30px;
    content: "";
}
.bracketsBox:before {
    top: 0;
    left: 0;
    border-top: solid 1px #191919;
    border-left: solid 1px #191919;
}
.bracketsBox:after {
    right: 0;
    bottom: 0;
    border-right: solid 1px #191919;
    border-bottom: solid 1px #191919;
}

/*はてなボックス*/
/*ビックリボックス*/
.questionBox,
.exclamationBox{
	position:relative;
	margin-top:20px;
	padding:20px 20px 20px 70px;
}
.questionBox{background-color: #D9EFF7;}
.exclamationBox{background-color: #F6E1DF;}
.questionBox::before,
.exclamationBox::before{
	position:absolute;
	top:20px;
	left:20px;
	font-size:2rem;
	font-weight:800;
	color: #ffffff;
    text-align: center;
    vertical-align: middle;
    width: 30px;
    height: 30px;
	line-height: 30px;
    border-radius: 50%;
}
.questionBox::before{content: "?";background: #0096c8;}
.exclamationBox::before{content: "!";background: #c53929;}


/*ポイントボックス*/
.pointBox {
	position: relative;
font-size: 1rem;
    border: 2px solid #c53929;
border: 2px solid #396cd7;
    border-radius: 5px;
    padding:10px;
margin: 20px 0 30px;
}
.pointBox::before {
	content: "POINT";
	position: absolute;
	top: -15px;
	left: 15px;
	font-size: 18px;
	font-weight: 800;
    background-color: #ffffff;
    color: #396cd7;
    padding: 0 10px;
}


/*チェックボックス*/
.checkBox {
	position: relative;
font-size: 1rem;
    border: 2px solid #c53929;
    border-radius: 5px;
    padding:10px;
margin: 20px 0 30px;
}

.checkBox::before {
	content: "CHECK";
	position: absolute;
	top: -15px;
	left: 15px;
	font-size: 18px;
	font-weight: 800;
    background-color: #ffffff;
    color: #c53929;
    padding: 0 10px;
}







/*チェックボックス 赤*/
.box-red {
position: relative;
font-size: 1rem;
line-height: 1.7;
border: 2px solid #c53929;
border-radius: 5px;
padding: 0px 15px 18px;
margin: 20px 0 30px;
}

.box-red-title{
position: absolute;
top: -15px;
left: 15px;
font-size: 18px;
font-weight: 800;
background-color: #ffffff;
color: #c53929;
padding: 0 10px;
}

/*チェックボックス 青*/
.box-blue {
position: relative;
font-size: 1rem;
line-height: 1.7;
border: 2px solid #396cd7;
border-radius: 5px;
padding: 0px 15px 18px;
margin: 20px 0 30px;
}

.box-blue-title{
	position: absolute;
	top: -15px;
	left: 15px;
	font-size: 18px;
	font-weight: 800;
    background-color: #ffffff;
    color: #396cd7;
    padding: 0 10px;
}


.box-red ul, .box-red ol, .box-blue ul, .box-blue ol{
padding:0px 0px;
margin: 1.4em 1em -0.5em 1.5em;
}


.box-red ul li, .box-red ol li, .box-blue ul li, .box-blue ol li{
line-height: 1.5;
margin: 0 0 0.6em;
}


/*注釈*/
.asterisk{
	display: block;
    font-size: 1.3rem;
    color: #7F7F7F;
}

/*イエローマーカー*/
.markerYellow{background: linear-gradient(transparent 60%, #ffffbc 80%);}
/*ピンクマーカー*/
.markerPink{background: linear-gradient(transparent 60%, #FFDFEF 60%);}
/*ブルーマーカー*/
.markerBlue{background: linear-gradient(transparent 60%, #cce5ff 60%);}




.my-orange {
font-family: "Font Awesome 5 Free";

content: '\f560';
content: '\f1e2';
color: #ff5511;
font-size: 1.2em ;
font-weight: 900;
}









#header-in{
	animation: fade-in 2s ease 0s 1 normal;
}

@keyframes fade-in{
	0%{opacity:0;transform:translate3d(0, -20px, 0);}
	100%{opacity:1;transform:translate3d(0,0,0);}
}



/*-- 追加 --*/


dl{
padding: 0 10px 0.5em;
margin: 0.5em 0  1em;
}

.article dt{ 
color:#0066aa;
font-size: 1.1rem;
font-weight:800;
line-height: 1.6;
margin: 12px 0px 0px 0px;
padding: 0px 0px 0px 0px;
display:block;
}

.article dd{ 
color:#222;
font-size: 1.1rem;
line-height: 1.6;
margin: 0 0;
padding: 8px 0px 8px 0px;
border-bottom: 1px dotted #dedede;
}


dl.outline{
clear: both;
width: auto;
background:#eee;
padding:0px;
border-top: 1px solid #dedede;
border-right: 1px solid #ddd;
border-bottom: 1px solid #ddd;
margin:0px 0px 15px 0px;
}

dl.outline dt{
float:left;
clear:both;
font-size: 1.1rem;
width:110px;
height: auto;
text-align:center;
background:#eee;
padding: 8px 10px 7px 14px;
border-top: 1px solid #fff;
margin:0px 0px 0px 0px;
}

dl.outline dd{
width:auto;
height: auto;
font-size: 1.1rem;
text-align:left;
background-color:#eee;
padding: 8px 10px 7px 14px;
border-top: 1px solid #fdfdfd;
border-left: 1px solid #045A98;
margin:0px 0px 0px 110px;
}

tr{
border-bottom: 1px dotted #ddd;
}

dl.outline dd img{
float:left;
padding: 0;
margin:0px 10px 5px 0px;
}

.clear{
clear:both;
}



.admain{ 
text-align: left;
margin: 25px 0 30px 0px;
padding: 0px;
}

.red{
color: #ff0000;
}

.orange{
color: #ff7d13;
}

.g-map{
position: relative;
margin: 20px 0;
padding-bottom: 56.25%;
padding-top: 30px;
overflow: hidden;
max-width: 100%;
height: auto;
}
 
.g-map iframe, .g-map object, .g-map embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}



.rwd_embed {
position: relative;
margin: 20px 0;
padding-bottom: 56.25%;
padding-top: 30px;
overflow: hidden;
max-width: 100%;
height: auto;
}
 
.rwd_embed iframe, .rwd_embed object, .rwd_embed embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}


.square_btn{
    display: inline-block;
    position: relative;
font-size:18px; 
line-height: 1.7;
    padding: 0.6em 1em 0.5em ;
margin: 0.8em 0px;
    text-decoration: none;
    background: #207bd6;/*ボタン色*/
    color: #FFF;
    border-bottom: solid 5px #106ac5;/*ボタン色より暗めに*/
    border-right: solid 5px #0059b4;/*ボタン色より暗めに*/
}

.square_btn:before{    
    content: " ";
    position: absolute;
    bottom: -5px;
    left: -1px;
    width: 0;
    height: 0;
    border-width: 0 6px 6px 0px;
    border-style: solid;
    border-color: transparent;
    border-bottom-color: #FFF;
}

.square_btn:after{   
    content: " ";
    position: absolute;
    top: -1px;
    right: -5px;
    width: 0;
    height: 0;
    border-width: 0px 6px 6px 0px;
    border-style: solid;
    border-color: #FFF;
    border-bottom-color: transparent;
}

.square_btn:active{ /*ボタンを押したとき*/
    border:none;
    -ms-transform: translate(6px,6px);
    -webkit-transform: translate(6px,6px);
    transform: translate(6px,6px);
}

.square_btn:active:after,.square_btn:active:before {
    content: none;/*ボタンを押すと線が消える*/
}

.square_btn a {color:#fff;text-decoration: none; border-bottom: 1px #fff solid;} 
.square_btn a :visited {color:#fff;} 
.square_btn a :hover {color: #aaa;} 


.check-icon:before{
color: #009977;
font-family: "Font Awesome 5 Free";
content: "\f00c";
font-weight: 900;
 margin-right: 0;
}


