/* カスタム CSS をここに入力してください */
h3.widgettitle.widget-title{
  font-size: 24px;
	padding: 4px 16px; 
  border: 3px double #fff;
  color: #FFFFFF;
  background-color: #4e7bbb;
}

h2.widgettitle{
  margin: 100px 0px 25px 0px;
  padding: 4px 16px; 
  border: 3px double #fff;
  color: #FFFFFF;
  background-color: #4e7bbb;
}


div.textwidget.custom-html-widget{
  margin: 0px 0px 0px 10px;
}

div.widget_text.footer_category{
	margin: 0 auto;
	width: 1200px;
  position:relative;
	clear: both;
	padding-top: 60px;
}

@media only screen and (max-width: 1280px) {

	div.widget_text.footer_category{
		max-width: 960px;
    position:relative;
    margin-left: 2%;
	}

}

@media only screen and (max-width: 1020px) {

	div.widget_text.footer_category{
		max-width: 800px;
    position:relative;
    margin-left: 2%;
	}

}

@media only screen and (max-width: 880px) {

	div.widget_text.footer_category{
		padding-left: 5%;
		padding-right: 5%;
	}

}


h2 {
	font-size: 30px;
	font-size: 3rem;
	padding:4px 16px;
	border: 3px double #fff;
	color: #FFFFFF;
	background: #4e7bbb;
}

h3 {
	font-size: 24px;
	font-size: 2.4rem;
	padding: 8px 16px;
	border-bottom: 4px solid #4e7bbb;	
}

h4 {
	font-size: 20px;
	font-size: 2rem;
	padding: 8px 16px;
	border-left: 4px solid #4e7bbb;
}

/*-------------*/
/*  2021/08/06追加｜img画像の%を変更*/
/*-------------*/
img.shrink {
	width: 85%;
	height: auto;
}


/*-------------*/
/*  2020/08/08追加｜アコーディオン：クリックして開く  */
/*-------------*/
.cp_actab {
	position: relative;
	overflow: hidden;
	width: 100%;
	margin: 0 auto;
	color: #ffffff;
}
.cp_actab input {
	position: absolute;
	z-index: -1;
	opacity: 0;
}
.cp_actab label {
	font-weight: bold;
	line-height: 3;
	position: relative;
	display: block;
	padding: 0 0 0 1em;
	cursor: pointer;
	margin: 0 0 1px 0;
	color :#ffffff;
  background :#85baef;
}
.cp_actab .cp_actab-content {
	overflow: hidden;
	max-height: 0;
	-webkit-transition: max-height 0.35s;
	transition: max-height 0.35s;
	color :#000000;
	background-color: #fafafa;
}
.cp_actab .cp_actab-content p {
	margin: 1em;
}
/* :checked */
.cp_actab input:checked ~ .cp_actab-content {
	max-height: 75em;
	opacity: 1;
}
/* Icon */
.cp_actab label::after {
	line-height: 3;
	position: absolute;
	top: 0;
	right: 0;
	display: block;
	width: 3em;
	height: 3em;
	-webkit-transition: all 0.35s;
	transition: all 0.35s;
	text-align: center;
}
.cp_actab input[type=checkbox] + label::after {
	content: '+';
}
.cp_actab input[type=checkbox]:checked + label::after {
	transform: rotate(315deg);
}

/*ラベルホバー時*/
.cp_actab label:hover {
   background :#a4cbf3;
}

/*-------------------------
  ブログカード
-------------------------*/
.blog-card {
  background: #fbfaf8;
	border:1px solid #ddd;
	word-wrap:break-word;
	max-width:100%;
	border-radius:5px;
	margin: 30px;
  /* sp用 ※4 */
}
.blog-card:hover {
  background: #fee;
}
.blog-card a {
  text-decoration: none;
}
.blog-card-title {
	color: #337ab7;
	display: block;
}
.blog-card-thumbnail {
	float:left;
	padding:10px;
}
.blog-card-thumbnail img {
	display: block;
	padding: 0;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.blog-card-content {
	line-height:120%;
}
.blog-card-title {
	padding:10px 10px 10px 0;
	font-size:120%;
  font-weight: bold;
  line-height: 1.5em;
}
.blog-card-excerpt {
	color:#333;
	margin:0 10px 10px;
  line-height: 1.5em;
}
.blog-card .clear {
  clear: both;
}

/*-------------*/
/*  2020/08/08追加｜引用  */
/*-------------*/
blockquote.item {
	position: relative;
	border-left: 4px solid #4e7bbb;
	margin: 2em 0;
  background-color: #fafafa;
	top: -30px;
	color: #000000; /* タイトルの文字色 */
	content: '';
	padding: 1em 1em 1em 1em;
	font-size: 1em;
	border-radius: 2px;
}

/*
blockquoete.item:after{
	position: absolute;
	bottom: 0;
	right: 0;

	color: #000000; 
  background-color: #fafafa;
	font-size: 1em;
	opacity: .1;
}
*/

/*-------------*/
/*  2019/03/29追加｜箇条書き  */
/*-------------*/
div.itemization{
	padding: 24px 24px 24px 24px;
	background-color: #fafafa;
	margin-bottom: 12px;
	font-size: 16px;
	border:2px solid #9CC8EB;
}

div.item {
 position: relative;
 margin: 36px 12px 24px;/* margin: 36px 12px 24px;*/
 padding: 36px 12px 24px;
 /*padding: 24px 24px 24px;
 margin-top: 32px;
 margin-bottom: 24px;*/
 border:2px solid #9CC8EB;
 background-color: #fafafa;
}

div.item-title {
  position: absolute;
  padding: 0 0.5em;
	left: 20px;
  top: -17px; /* タイトルの位置を調整 */
  /*font-weight: bold;*/
  background-color: #fafafa;
	/*background: #4e7bbb;*/
  border:2px solid #9CC8EB;
}

div.item p:last-child {
margin-bottom: 0;
}

/*-------------*/
/*  2019/08/13追加｜関連記事の吹き出し付紹介  */
/*-------------*/
div.recommendation {
position: relative;
margin: 72px 12px 72px;
padding: 24px 12px 24px;
border:2px solid #9CC8EB;
font-size: 18px;
background-color: #fafafa;
}

div.recommendation p:last-child {
margin-bottom: 0;
}

div.recommendation::before {
position: absolute;
bottom: 100%;
left: -2px;
padding: 2px 6px;
content: "あわせて読んでほしい";
color: #FFFFFF;
background: #4e7bbb;
font-weight: bold;
}


/*-------------*/
/*  2019/08/25追加｜記事がいよう  */
/*-------------*/
div.summary {
position: relative;
margin: 72px 12px 72px;
padding: 24px 12px 24px;
border:2px solid #9CC8EB;
font-size: 18px;
background-color: #fafafa;
}

div.summary p:last-child {
margin-bottom: 0;
}

div.summary::before {
position: absolute;
bottom: 100%;
left: -2px;
padding: 2px 6px;
content: "この記事の概要（がいよう）";
color: #FFFFFF;
background: #4e7bbb;
font-weight: bold;
}

div.explanation{
	padding: 24px 24px 24px;
	background-color: #3F3F3F;
	color: #DCDCDC;
	margin-bottom: 32px;
	font-size: 15px;
	border:2px solid #9CC8EB;
}

/*-------------*/
/*  2020/07/23追加｜プログラミング解説  */
/*-------------*/
div.programming {
 position: relative;
 margin: 72px 12px 36px;
 padding: 36px 12px 24px;
 border:2px solid #9CC8EB;
 font-size: 16px;
 background-color: #3F3F3F;
 color: #ffffff;
}

div.programming-title {
  position: absolute;
  padding: 0 0.5em;
  left: 20px;
  top: -17px; /* タイトルの位置を調整 */
  color: #555555; /* タイトルの文字色 */
  font-weight: bold;
  font-size:0.9em; /* タイトルの文字サイズ */
  background-color: #ffffff;
  border:2px solid #9CC8EB;
}

div.programming p:last-child {
margin-bottom: 0;
}

div.program {
 position: relative;
 margin: 60px 12px 36px;
 padding: 24px 12px 24px;
 top:-10px;
 border:2px solid #9CC8EB;
 font-size: 16px;
 background-color: #3F3F3F;
 color: #ffffff;
}

blockquote {
	position: relative;
	background-color: #3F3F3F;
	margin: 2em 0;
	top: -30px;
	font-family: 'Monaco';
	color: #FFFFFF; /* タイトルの文字色 */
	padding: 1em 1em 1em 2.6em;
	font-size: 1em;
	border-left: 5px solid #CCC;
	border-radius: 2px;
}
blockquote:after{
	position: absolute;
	background-color: #3F3F3F;
	bottom: 0;
	right: 0;
	color: #FFFFFF; /* タイトルの文字色 */
	content: '';
	font-family: sans-serif;
	font-size: 6em;
	opacity: .1;
}

/*-------------*/
table , td, th {
	border: 1px solid #595959;
	border-collapse: collapse;
}
/*  2019/08/25追加｜Table  */
/*-------------*/


table{
  width: 100%;
  border-collapse:separate;
  border-spacing: 0;
  border-right:none;
  border-left:none;
  border-top: solid 1px silver;
  border-bottom:solid 1px silver;
}

table th:first-child{
  border-right:none;
  border-left:none;
  background-color: #4e7bbb;
  color: #FFFFFF;
}

table th:last-child{
  border-right:none;
  border-left:none;
  background-color: #4e7bbb;
  color: #FFFFFF;
}

table th{
  text-align: center;
  background-color: #4e7bbb;
  color: #FFFFFF;
  border-top: solid 1px silver;
  border-bottom:solid 1px silver;
  border-right:none;
  border-left:none;
  padding: 10px 0;
}

table td{
  text-align: center;
  border-top: solid 1px silver;
  border-bottom:solid 1px silver;
  border-right:none;
  border-left:none;
  padding: 10px 0;
}