@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Template:   cocoon-master
Version:    1.0.8
*/

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

.main{
	background-color: transparent;
	padding: 0 20px;
}

body {
    background-color: #EFEFEF;
}



/************************************
****　ヘッダーメニュー
************************************/
.navi-in > ul{/*メニューを中央に配置する場合は4～7行目を削除してください*/
justify-content: center;
}

#navi .navi-in>ul>li {
    width: 140px;
}

.navi-in>ul li {
line-height: 40px;
height: 40px;
}
.navi-in a{
font-size:16px;
}
#navi .navi-in a:hover {
transform: none!important;
}
.navi-in > ul .sub-menu a {
padding: 0;
}
.navi-in > ul .sub-menu{
box-shadow: 0px 2px 5px 0 rgba(0,0,0,.26);
}
.sub-menu .caption-wrap {
border-top: dotted #dddddd;
background:#A1CADC;/*サブメニューの背景色*/
padding:0 0 0 2em;
margin:0;
}
.navi-in > ul .sub-menu a:hover {
transform: none!important;
}
div#header-container {
box-shadow: none;
}
div.item-label{
font-weight:bold;
}


.header-site-logo-image{
	max-width: 720px;
	width: 80%;
}

.navi-in .has-icon {
    position: absolute;
    right: 15%;
    top: 0;
    display: inline-block;
    opacity: 1;
    font-size: 10px;
}

.fa-angle-down:before{
	    content: "\f0d7";
}


/************************************
****　記事一覧レイアウト
************************************/
.a-wrap{
	background-color: #fff;
}

.entry-card-content{
	padding: 30px 20px 50px 20px;
	border-radius: 0 0 10px 10px;
}

a.entry-card-wrap.a-wrap.border-element.cf{
padding: 0;
border-radius:10px;
width:48%;
margin-bottom:50px;
}
a.entry-card-wrap.a-wrap{
transition: all .1s;
}
a.entry-card-wrap.a-wrap:hover {
transform: translateY(-1px);
transition: all .1s;
background-color: #fff;
}
figure.entry-card-thumb.card-thumb.e-card-thumb{
	aspect-ratio: 400/215;
border-radius:10px 10px 0 0;
overflow:hidden;
display: flex;
justify-content: center;
align-items: center;
}
.e-card-thumb .cat-label{
margin-left:.8em;
}
@media screen and (max-width: 1100px){
figure.entry-card-thumb.card-thumb.e-card-thumb{
max-height:120px;
}}
@media screen and (max-width: 1023px){
figure.entry-card-thumb.card-thumb.e-card-thumb{
max-height:180px;
}
a.entry-card-wrap.a-wrap:hover {
transform: none;
background-color: #f7f7f7;
}}
@media screen and (max-width: 900px){
figure.entry-card-thumb.card-thumb.e-card-thumb{
max-height:160px;
}}
@media screen and (max-width: 750px){
figure.entry-card-thumb.card-thumb.e-card-thumb{
max-height:130px;
}}
@media screen and (max-width: 600px){
figure.entry-card-thumb.card-thumb.e-card-thumb{
max-height:250px;
}
a.entry-card-wrap.a-wrap.border-element.cf{
margin:.5em 1em!important;
}
.ect-vertical-card .entry-card-wrap {
width: 95%!important;
}
}
@media screen and (max-width: 480px){
.e-card-thumb .cat-label{
margin-left:1em;
}}
@media screen and (max-width: 1023px){
div#list a {
box-shadow: 0px 1px 5px 0 rgba(0,0,0,.2);
}
}
@media screen and (min-width: 601px) and (max-width: 834px){
div#content.content.cf{
margin:1em;
}}
h2.entry-card-title.card-title.e-card-title{
font-size:18px;
color:#000;
font-weight:bold;
line-height:1.8em;
text-align: left;
}
.entry-card-snippet{
-webkit-line-clamp: unset;
}
.entry-card-snippet.card-snippet.e-card-snippet{
font-size:14px;
color:#000;
line-height:1.8em;
padding-top:10px;
max-height:20em;
text-align: left;
}
@media (max-width:834px){
h2.entry-card-title.card-title.e-card-title{
font-size: 1.15em;
font-weight:bold;
line-height:1.7em;
padding: 1.5em .8em 1em;
margin:0;
}
.entry-card-snippet.card-snippet.e-card-snippet{
font-size:13px;
text-align:center;
line-height:1.8em;
padding:1em 0.5em 0;
margin: 0 1em 1.5em;
}
main.main, div.sidebar {
padding:0;
}
}
a.entry-card-wrap.a-wrap.border-element.cf .post-date,
a.entry-card-wrap.a-wrap.border-element.cf .post-update{
margin-right:1.5em!important;
color:#7b7b7b;
font-size: 14px;
}

.entry-card-meta{
	bottom: 20px;
}


.eye-catch .cat-label, .cat-label{
font-size: 14px;
border-radius:10px;
margin: 10px 20px;
padding: 5px;
line-height: 1;
background-color:#1B4E8D;/*カテゴリーラベルの色変更はこちら*/
color:#fff;
}
div.admin-pv{/*閲覧数を非表示*/
display:none;
}

/************************************
****　本文記事見出し
************************************/
.archive-title{
	position: inherit;
  background: #1B4E8D;
  box-shadow: 0px 0px 0px 5px #1B4E8D;
  border: dashed 1px #fff;
  padding: 15px 0 15px 20px;
  color: #fff;
  border-radius: 0;
}


/************************************
****　本文記事見出し H2 H3 H4 H5
************************************/
.article{
	background-color: #fff;
	padding: 20px;
}

.article h2:before {
background-image: none;
}

.article h2:after {
    border-bottom: 0;
    bottom: 0;
}
.article h2:before {
    border-top: 0;
    top: 0;
}

.article h2{
    position: inherit;
  background: #1B4E8D;
  box-shadow: 0px 0px 0px 5px #1B4E8D;
  border: dashed 1px #fff;
  padding: 15px 0 15px 20px;
  color: #fff;
  border-radius: 0;
}

.article h3{
padding: 15px 0 15px 10px;/*文字周りの余白*/
  color: #fff;/*文字色*/
  background: #DEEEF5;/*背景色*/
  border-left: solid 5px #1B4E8D;/*左線（実線 太さ 色）*/
	border-bottom: 0;
}
.article h3:before {
width: 0em;
}
.article h4{
  border-bottom: solid 2px #1B4E8D;

}
.article h5{
background: #F7F7F7;/*H5背景色の変更はこちら*/
font-weight:normal;
line-height:2;
color:#333333;
border-bottom: none;
border-radius: 4px;
padding: 1.5em;
margin-left:0 auto;
border:1.5px dashed;
border-color:#93b69c;/*H5枠色の変更はこちら*/
margin-top:1.5em;
margin-bottom:1.5em;
}
@media (max-width:480px){
.article h2{
padding:1.5em 1em 1.5em 0.5em;
}
.article h3{
font-weight:bold;
}
.article h4, .article h5{
}
}

/************************************
****　番号付きリスト
************************************/
.list-number{
   counter-reset:number; 
   list-style-type: none; 
   padding:0;
   margin:0;
	line-height: 1.5;
}
.list-number li { 
   position: relative;
   margin:0.5em 0 !important;
   background-color: #DEEEF5;
   font-size: 18px;
	padding: 15px 0 15px 60px;
}
.list-number li:before {
   counter-increment: number;
   content: counter(number);
   background-color: #1B4E8D; /* 文字背景色 */
   color: #fff; /* 文字色 */
   position: absolute;
   font-weight:bold;
   font-size: 18px;
   left: 0;
   top: 0;
   width: 50px;
   text-align: center;
       height: 100%;
    line-height: 3.2;

}

/************************************
****　リストドット
************************************/
.list-dot{
    list-style: none;
    padding:0;
    margin:0;
    font-size: 18px;
}
.list-dot li { 
    position: relative;
    margin:0.5em 0 !important;
    padding-left: 25px;
}
.list-dot li:before {
   background-color:  #1B4E8D; /* 点の色 */
   position: absolute;
   content: '';
   top: 12px;
   left: 0.5em;
   width: 7px;
   height: 7px;
   border-radius: 4px;
}

@media screen and (max-width: 834px){
.article ul,.article ol {
    padding-left: 0 ;
}
}

/************************************
****　ボックス
************************************/
.box-blue{
	background-color: #cce4eb;
	padding: 20px;
	color: #0b3840;
	border-radius: 10px;
}

.box-red{
	background-color: #DCA1A1;
	padding: 20px;
	color: #fff;
	border-radius: 10px;
}

.box-yellow{
	background-color: #FBDFA9;
	padding: 20px;
	border-radius: 10px;
}

.box-merit{
	padding: 30px 20px 20px 20px;
	border: 2px solid #DCA1A1;
	position: relative;
	border-radius: 10px;
}

.box-mean{
	padding: 30px 20px 20px 20px;
	border: 2px solid #1B4E8D;
	position: relative;
	border-radius: 10px;
}

.box-precedent{
	padding: 30px 20px 20px 20px;
	border: 2px solid #E0E0E0;
	position: relative;
	border-radius: 10px;
}

.box-detail-merit {
    display: inline-block;
	position: absolute;
    background: #DCA1A1;
    width: max-content;
    border-radius: 10px;
    color: #fff;
	top: -20px;
    left: 20px;
    padding: 5px 20px;
    }

.box-detail-mean {
    display: inline-block;
	position: absolute;
	background: #1B4E8D;
    width: max-content;
    border-radius: 10px;
    color: #fff;
	top: -20px;
    left: 20px;
    padding: 5px 20px;
    }

.box-img{
	display: inline-block;
	position: absolute;
	top: -20px;
    left: 20px;
	width: 40px;
	height: 40px;
	background-size: contain;
}

.box-p{
	margin: 0 !important;
}



/************************************
****　ボタン
************************************/
.btn,
a.btn,
button.btn {
  position: relative;
  display: inline-block;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  color: #212529;
  border-radius: 10px;
	max-width: 360px;
	width: 100%;
	font-size: 18px;
}

.btn-wrap {
	text-align: center;
}

a.btn {
  padding: 20px 0;
  position: relative;
  color: #fff;
  background: #EA8044;
  -webkit-box-shadow: 0 5px 0 #A35930;
  box-shadow: 0 5px 0 #A35930;
}

a.btn.btn-small{
	font-size: 16px;
	max-width: 200px;
	  padding: 10px 0;
}

a.btn.flash{
		  animation: flash 1.5s linear infinite;
}

@keyframes flash {
  0% {
    opacity: 1;
  }

  50% {
    opacity: 0.5;
  }
  
  
  100% {
    opacity: 1;
  }
}

a.btn.btn-big{
	width:100%;
	max-width: inherit;
	font-size: 28px;
	background: linear-gradient(180deg, #EA8044 0%, #EA8044 50%, #DB7339 50%, #DB7339 100%);
}

a.btn span {
  position: absolute;
  top: -20px;
  left: calc(50% - 150px);
  display: block;
  width: 300px;
  color: #1B4E8D;
  border: 2px solid #1B4E8D;
  border-radius: 10px;
  background: #fff;
  -webkit-box-shadow: 0 3px 3px #1F426D;
  box-shadow: 0 3px 3px #1F426D;
}

a.btn.btn-blue{
	background: linear-gradient(268.44deg, #1B4E8D 2.69%, #3574C2 100.01%);
	  -webkit-box-shadow: 0 5px 0 #1B4E8D;
	  box-shadow: 0 5px 0 #1B4E8D;
}

a.btn.btn-gray{
	background: #BFBFBF;
	  -webkit-box-shadow: 0 5px 0 #8B8A8A;
	  box-shadow: 0 5px 0 #8B8A8A;
}

a.btn.btn-gray:hover{
  -webkit-box-shadow: 0 2px 0 #8B8A8A;
  box-shadow: 0 2px 0 #8B8A8A;
}


a.btn.btn-blue:hover{
  -webkit-box-shadow: 0 2px 0 #1B4E8D;
  box-shadow: 0 2px 0 #1B4E8D;
}

a.btn:hover {
  -webkit-transform: translate(0, 3px);
  transform: translate(0, 3px);
  color: #fff;
  -webkit-box-shadow: 0 2px 0 #A35930;
  box-shadow: 0 2px 0 #A35930;
}

a.btn:hover:before {
  left: 2rem;
}

.fa-arrow-circle-right:before {
    content: "";
	background-image: url(https://factoring.co.jp/wp-content/uploads/2022/12/右向きの矢印のアイコン素材-2.png);
	width: 20px;
	height: 20px;
	background-size: contain;
    right: 20px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.fa-arrow-circle-right-small{
	  content: "";
	background-image: url(https://factoring.co.jp/wp-content/uploads/2022/12/右向きの矢印のアイコン素材-2.png);
   width: 10px;
	height: 10px;
	background-size: contain;
    right: 10px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}


/************************************
****　表
************************************/
.table-wrap {
  overflow-x: scroll;
}
.table {
  width: 100%;
  border-collapse: collapse;
}
.table th{
	background-color: #A1CADC;
	color: #fff;
}
.table th,
.table td {
  border: 1px solid #C3D1D7;
  padding: 10px 10px;
	    min-width: 200px;
    white-space: inherit;
}


/************************************
****　フッター
************************************/
.footer a:hover{
	background-color: transparent !important;
	opacity: 0.8;
}


@media screen and (max-width: 1023px){
.footer-bottom-logo .logo-image{
display: grid;
    text-align: center;
	margin-bottom: 40px;
}
}


.footer-bottom-logo .logo-image{
		max-width: 280px;
}

.footer-bottom-logo img{
    height: 100%;
    width: 100%;
	object-fit: contain;
}

.footer{
	background-color: #1B4E8D;
	color: #fff;
}


@media screen and (min-width: 1024px){
	.footer-bottom-logo{
		position: relative;
		float: inherit;
	}
	.footer-bottom-content{
		float: inherit;
		text-align: left;
    margin-top: 30px;
	}
	.footer-bottom {
    justify-content: space-between;
    display: flex;
		padding-left: 10%;
}
	.copyright {
    margin-top: 50px;
    display: inline-block;
    text-align: center;
    color: #fff;
}	
}

@media screen and (max-width: 1024px){
	.footer-widgets-mobile{
		display: none;
	}
	.navi-footer-in > .menu-footer li.menu-item{
		width: 100%;
	}
	
	.navi-footer-in > .menu-footer{
		display: inline-block;
	}
	.navi-footer-in > .menu-footer li:last-child{
		border: 0;
	}
	.navi-footer-in > .menu-footer li{
		border: 0;
	}
	
}

/************************************
** カテゴリータイトルアイコン非表示
************************************/
.archive-title :before {
  display: none;
}

.entry-title{
	color: #1B4E8D;
}

/************************************
** 検索バー
************************************/
.search-edit, input[type="text"]{
	background: #F5F5F5;
border: 1px solid #EBEBEB;
border-radius: 10px;
}

.search-box{
	margin-bottom: 0;
}

/************************************
**  サイドバー
************************************/
.sidebar {
	background-color: inherit;
    padding: 0;
}

.widget-sidebar{
	background-color: #fff;
	padding: 20px;
	margin-bottom: 20px;
}

.sidebar h3{
padding: 15px 0 15px 10px;
  color: #fff;
  background: #DEEEF5;
  border-left: solid 5px #1B4E8D;
	border-bottom: 0;
}



/************************************
**  ページネーション
************************************/
.pagination-next-link{
	background-color: #fff;
	color: #1B4E8D;
}

.pagination-next-link:hover{
	background-color: #1B4E8D;
	color: #fff;
}

.page-numbers{
	border-radius: 50px;
	color: #1B4E8D;
	background-color: #fff;
}

.pagination a:hover{
		color: #fff;
	background-color: #1B4E8D;
}


.pagination .current {
color: #fff;
	background-color: #1B4E8D;
}

/************************************
**  関連記事
************************************/
.related-entries.rect-entry-card{
	background-color: #fff;
	padding-left: 20px;
	padding-right: 20px;
	    padding-top: 10px;
}

.related-entry-card-title{
	font-size: 16px;
}

.related-entry-card-snippet{
	font-size: 12px;
	margin-top: 10px;
}

.related-entry-card-wrap{
	padding-left: 0;
	padding-right: 0;
	padding-top: 0;
}


.related-entry-card-thumb.card-thumb img{
	    border-radius: 10px;
	aspect-ratio: 200/115;
	object-fit: cover;
}


.related-entry-heading{
	padding: 15px 0 15px 10px;/*文字周りの余白*/
  color: #fff;/*文字色*/
  background: #DEEEF5;/*背景色*/
  border-left: solid 5px #1B4E8D;/*左線（実線 太さ 色）*/
	border-bottom: 0;
	text-align: left;
	border-top: 0;
	letter-spacing: 0;
}

a.related-entry-card-wrap.a-wrap{
transition: all .1s;
}
a.related-entry-card-wrap.a-wrap:hover {
transform: translateY(-1px);
transition: all .1s;
background-color: #fff;
	border-radius: 10px;
}

@media screen and (max-width: 480px){
.related-entry-card-thumb {
width: 100%;
		margin-top:0;

	}

	
.rect-entry-card .card-title {
    margin-bottom: 0;
    clear: both;
}
}

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

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

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

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