/*==============================*/
/* h2 */
/*==============================*/
.side_column > div:first-child h2{
	font-size: 20px;
	line-height: 30px;
	color: #444;
	font-weight: 500;
	font-family: 'Noto Sans Japanese', sans-serif;
	letter-spacing: -0.05em;
	margin-bottom: 26px;
	border-top: 2px solid #444;
	padding-top: 10px; 
}
@media (max-width: 600px) {
	.side_column > div:first-child h2{
		font-size: 18px;
		line-height: 26px;
		margin-bottom: 16px;
		text-align: left;
	}	
}

.side_column > div:first-child h3,.wrap h4{ font-weight: bold; margin-bottom: 20px; }
.side_column > div:first-child p{ margin-bottom: 20px; }
.side_column > div:first-child a{ text-decoration: underline; }
.side_column > div:first-child ul { margin-left: 30px; margin-bottom: 20px; }
.side_column > div:first-child ul > li { list-style: disc inside!important; padding-left: 1em; text-indent: -1em; }
.side_column > div:first-child ol { margin-left: 30px; margin-bottom: 20px; }
.side_column > div:first-child ol > li { list-style: decimal inside!important; padding-left: 1em; text-indent: -1em; }


@media (max-width: 600px) {
	.wrap img { width: 100%; height: auto; }
	.wrap .blog_staff img { width: 50px; height: auto; }
}

@media (max-width: 600px) {
	/*-- スマホ：スクロール
	------------------------- */
	.side_column > div:first-child table{
		display: block; 
		width: auto; 
		position: relative; 
		overflow-x: scroll; 
		white-space: nowrap; 
	}
	.side_column > div:first-child table::-webkit-scrollbar {
	  height: 5px;
	}
	.side_column > div:first-child table::-webkit-scrollbar-track {
	  border-radius: 5px;
	  background: #eee;
	}
	.side_column > div:first-child table::-webkit-scrollbar-thumb {
	  border-radius: 5px;
	  background: #666;
	}
}

/*==============================*/
/* side column */
/*==============================*/
div.side_column{
	overflow: hidden;
	direction: rtl !important;
}
div.side_column > div:first-child{
	direction: ltr;
	width: 730px;
}
div.side_column > div:last-child{
	direction: ltr;
	width: 230px;
}
@media (max-width: 600px) {
	div.side_column{
	}
	div.side_column > div:first-child{
		width: 100%;
		margin: 0 auto 100px;
	}
	div.side_column > div:last-child{
		width: 100%;
		margin: 0 auto;
	}
}

/*==============================*/
/* side_menu */
/*==============================*/
h2.side_tit{
	font-size: 15px;
	padding: 10px;
	/*background: #2790b0;*/
    background: #242269;
	color: #fff;
	text-align: center;
}

ul.side_menu li{
	border-right: 1px solid #ccc;
	border-left: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	line-height: 1.3em; 
}
ul.side_menu li a{
	display: block;
	padding: 10px;
}
ul.side_menu li a:hover{
	background: #f1faff;
}
ul.yearly li{
	text-align: center;
}


/*==============================*/
/* topics_list */
/*==============================*/
@media (min-width: 600px) {
	div.topics_list{
	}
	div.topics_list dl{
		overflow: hidden;
		padding-left: 180px;
		position: relative;
		margin-bottom: 20px;
		padding-bottom: 16px; 
		border-bottom: 1px dashed #ccc;
	}
	div.topics_list dl dd.tmb{
		position: absolute;
		top: 0;
		left: 0;
		border: 1px solid #ccc;
	}
	div.topics_list dl dd.tmb a img{
		object-fit: contain!important;
	}
	div.topics_list dl dt{
		font-size: 18px;
		font-weight: bold;
		margin-bottom: 10px;
	}
	div.topics_list dl dt span{
		display: inline-block;
		padding: 0 10px;
		font-size: 13px;
		font-weight: normal;
		background: #f8b25a;
		color: #fff;
		margin-bottom: 14px;
	}
	div.topics_list dl dt a{
		display: block;
	}
	div.topics_list dl dd .link{
		font-size: 11px;
		display: inline-block;
		border: 1px solid #ccc;
		padding: 0px 10px;
	}
}

@media (max-width: 600px) {
	div.topics_list{
	}
	div.topics_list dl{
		overflow: hidden;
		margin-bottom: 20px;
		padding-bottom: 16px; 
		border-bottom: 1px dashed #ccc;
	}
	div.topics_list dl dd.tmb{
		display: inline-block;
		border: 1px solid #ccc;
	}
	div.topics_list dl dd.tmb a img{
		object-fit: contain!important;
	}
	div.topics_list dl dt{
		font-size: 18px;
		font-weight: bold;
		margin-bottom: 10px;
	}
	div.topics_list dl dt span{
		display: inline-block;
		padding: 0 10px;
		font-size: 13px;
		font-weight: normal;
		background: #f8b25a;
		color: #fff;
		margin-bottom: 14px;
	}
	div.topics_list dl dt a{
		display: block;
	}
	div.topics_list dl dd .link{
		font-size: 11px;
		display: inline-block;
		border: 1px solid #ccc;
		padding: 0px 10px;
	}
}
/* カテゴリアイコン */
div.topics_list dd .blog_category {display:inline-block; margin: auto auto auto 10px;}
div.topics_list dd .blog_category span{display:inline-block;
background-color:#cccccc; color:#FFFFFF; border:1px solid #cccccc; text-shadow: 1px 1px 2px #bcbcbc;
font-size:12px; padding:0px 6px; margin: 0 2px 2px 0; border-radius:2px;}
@media (max-width: 600px) {
	div.topics_list dd .blog_category {display:inline-block; margin: auto auto 10px 10px;}
}

/*==============================*/
/* date */
/*==============================*/
@media (min-width: 600px) {
	p.date {
        background: #f8b25a;
        color: #fff;
        padding: 0 10px;
        float: right;
        font-weight: 400 !important;
        font-size: 14px !important;
        letter-spacing: 0.1em;
	}
    .title + p.date {
        background: transparent;
        color: initial;
        float: initial;
        padding-left: 0;
    }
    .side_column > div:first-child .title + p.date {
        margin-bottom: 30px;
    }
}
@media (max-width: 600px) {
    p.date {
        display: block;
        background: #f8b25a;
        color: #fff;
        padding: 0 5px;
        float: none;
        font-weight: 400 !important;
        font-size: 14px !important;
        letter-spacing: 0.1em;
    }
    .title + p.date {
        background: transparent;
        color: initial;
        float: initial;
        padding-left: 0;
    }
    .side_column > div:first-child .title + p.date {
        margin-bottom: 30px;
    }
}


.page_nav{
	margin-top: 50px;
	margin-bottom: 100px;
	border-top: 1px solid #ccc;
	padding-top: 10px; 
}

.tablenav{
	display: block;
	margin: 0 auto;
	text-align: center;
}
.tablenav a{
	display: inline-block;
	padding: 2px 6px;
	border: 1px solid #ccc;
}
.tablenav a:hover{
	background: #ccc;
}
.tablenav .current{
	display: inline-block;
	padding: 2px 6px;
	background: #444;
	color: #fff;
	border: 1px solid #444;
}

/*==============================*/
/* staff */
/*==============================*/
.blog_staff{
	margin-bottom: 30px;
	border: 1px solid #ccc;
	padding: 10px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.blog_staff h3{
	margin-top: 10px;
	font-weight: bold;
	color: #2790B0;
	float: left;
}
.blog_staff ul{
	float: left;
	margin-top: 5px;
	margin-left: 40px;
	margin-bottom: 8px;
}
.blog_staff ul li{
	font-size: 12px;
	line-height: 16px;
}
.blog_staff p.name{
	font-size: 16px;
	font-weight: bold;
}
.blog_staff p.name span{
	font-size: 12px;
	margin-bottom: 0;
	font-weight: 400;
}
@media (min-width: 600px) {
	.blog_staff p.name span{
		margin-left: 5px;
	}
}
@media (max-width: 600px) {
	.blog_staff p.name span{
		display: block;
		font-size: 10px;
		line-height: 1;
		margin-top: 5px;
	}
	.side_column > div .blog_staff p.degree {
		line-height: 1;
	}
	.side_column > div .blog_staff p.degree + .name {
		margin-top: 5px;
	}
}
.blog_staff p.tmb{
	margin-right: 15px;
}
.blog_staff p.degree{
	font-size: 12px;
}
.side_column > div .blog_staff p.name,
.side_column > div .blog_staff p.tmb,
.side_column > div .blog_staff p.degree{
	margin-bottom: 0;
}
.blog_staff_detail{
	display: flex;
	align-items: center;
}
.blog_staff_button{
	display: inline-block;
	width: 150px;
	border-radius: 16px;
	border: 1px solid #ccc;
	text-align: center;
	line-height: 1;
	padding: 9px 0 7px;
}
.side_column > div:first-child .blog_staff_button{
	text-decoration: none;
}
@media (min-width: 600px) {
	.blog_staff_button:hover{
		border-color: #294a7d;
		color: #294a7d;
	}
}
@media (max-width: 600px) {
	.blog_staff_button{
		width: 100px;
	}
}

/*==============================*/
/* ブログ */
/*==============================*/
.blog_contact_wrap{
	padding: 100px 0 50px 0;
	/* background: url("http://www.ricksoft.jp/common/img/share/bg_dot_beige.png"); */
}
.blog_contact_column{
	display: flex; display: -webkit-flex; /* Safari */
	justify-content: space-between; -webkit-justify-content: space-between; /* Safari */
}
.blog_contact{
	display: flex; display: -webkit-flex; /* Safari */
	flex-direction: column; -webkit-flex-direction: column; /* Safari */
	width: calc(33.3% - 1.5%);
}
.blog_contact .blog_contactTmb{
	margin-bottom: 10px;
}
.blog_contact h3{
	padding: 5px 0;
	margin-bottom: 1px;
	background: #ECAE3F;
	color: #fff;
	text-align: center;
	font-family: 'Noto Sans Japanese', sans-serif;
	font-size: 16px;
	letter-spacing: -0.04em;
}
.blog_contact h4{
	margin-bottom: 10px;
	text-align: center;
	font-size: 17px;
	font-weight: 500;
	font-family: 'Noto Sans Japanese', sans-serif;
}
.blog_contact p{line-height: 1.52em;}
.blog_contact .blog_contactBtn{ text-align: center; margin-top: auto;}
.blog_contact .blog_contactBtn a{
	display: inline-block;
	padding: 10px 0 8px 0;
	max-width: 250px;
	width: 100%;
	background: #F09D33;
	border-radius: 5px;
	color: #fff;
}
.blog_contact .blog_contactBtn a:hover{ background: #ef8307; }

table > thead > tr > td {
    background-color:#EFEFEF;
    font-weight:bold;
}

/*==============================*/
/* レコメンドBOX */
/*==============================*/
@media (min-width: 600px) {
    #blog_recommend {display:block; margin-top:30px;}
　　#blog_recommend h4{margin-bottom:0px;}
    #blog_recommend p{margin:0 auto 4px 0;}
    #blog_recommend a{display: inline-block; background: #4e4d4a; color:#FFFFFF; padding: 3px 24px; border-radius: 4px; font-size: 12px; text-decoration: none; margin-bottom: 10px;}
    #blog_recommend a:hover{background: #222222;}
    #blog_recommend .narrow{position:relative; top:0px;}
    #blog_recommend span{display:block;}
}
@media (max-width: 600px) {
    #blog_recommend {display:block; margin-top:30px;}
　　#blog_recommend h4{margin-bottom:0px;}
    #blog_recommend p{margin:0 auto 4px 0;}
    #blog_recommend a{display: inline-block; background: #4e4d4a; color:#FFFFFF; padding: 3px 24px; border-radius: 4px; font-size: 12px; text-decoration: none; margin-bottom: 10px;}
    #blog_recommend a:hover{background: #222222;}
    #blog_recommend .narrow{position:relative; top:0px;}
    #blog_recommend span{display:block;}
}

/*==============================*/
/* 関連ブログ */
/*==============================*/
@media (min-width: 600px) {
    #blog_relation {margin-top:30px; text-align: left; display:block;}
    #blog_relation h4{border-bottom: 1px dotted #aaaaaa; padding-bottom: 10px; margin-bottom: 10px;}
    #blog_relation div{border-bottom:1px dotted #aaaaaa; margin-bottom:10px;}
    #blog_relation dl{display: flex; flex-wrap: wrap;}
    #blog_relation dl dt{width:120px; margin-bottom:20px;}
    #blog_relation dl dt img{ width:100%; height:auto;}
    #blog_relation dl dd{width: 580px; padding-left:20px;}
}
@media (max-width: 600px) {
    #blog_relation h4{border-bottom: 1px dotted #aaaaaa; padding-bottom: 10px; margin-bottom: 10px;}
    #blog_relation div{border-bottom:1px dotted #aaaaaa; margin-bottom:10px;}
    #blog_relation dl{display: flex; flex-wrap: wrap;}
    #blog_relation dl dt{width:40%; margin-bottom:20px;}
    #blog_relation dl dt img{ width:100%; height:auto;}
    #blog_relation dl dd{width: 55%; padding-left:5%;}
}
#blog_relation div p{padding-left:16px; padding-top:6px;position:relative;}
#blog_relation div p:before{position: absolute; left:0px; top:9px; content:""; border: 6px solid transparent; border-left: 8px solid #2790b0;}
#blog_relation div p a{display:block; word-break: break-all;}

/*==============================*/
/* お問い合わせ */
/*==============================*/
@media (min-width: 600px) {
    #blog_inquiry {display:block; margin-top:30px;}
    #blog_inquiry p{margin:0 auto 4px 0;}
    #blog_inquiry a{display: inline-block; background: #f7a546; color:#FFFFFF; padding: 7px 30px; border-radius: 4px; font-size: 12px; text-decoration: none; margin-bottom: 10px;}
	#blog_inquiry a:hover{background: #EF742F;}
}
@media (max-width: 600px) {
	#blog_inquiry {display:block; margin-top:30px;}
    #blog_inquiry p{margin:0 auto 4px 0;}
    #blog_inquiry a{display: inline-block; background: #f7a546; color:#FFFFFF; padding: 7px 30px; border-radius: 4px; font-size: 12px; text-decoration: none; margin-bottom: 10px;}
	#blog_inquiry a:hover{background: #EF742F;}
}

/*=======================================*/
/* 記事詳細のカテゴリ  */
/*=======================================*/
#blog_relation_category span{
background-color:#FFFFFF; color:#064d7e; border:1px solid #064d7e; 
font-size:0.86em; padding:2px 6px; margin: 0 -2px 2px 0; display:inline-block; border-radius:3px;}
#blog_relation_category span a{text-decoration: none;}
#blog_relation_category span:hover{background-color: #064d7e; color:#FFFFFF;}

/*=======================================*/
/* カテゴリTOP（TOPページリニューアル）  */
/* 2025/7 著者ページ用クラス追加  */
/*=======================================*/
#category_top{}
#category_top h2{display:block; width:100%; height:120px; text-align:center; background-color:#2790b0; }
#category_top h2 img{margin:20px auto;}
@media (max-width: 600px) {
	#category_top h2 img{width:340px; height:auto; margin:20px auto 0;}
}
#category_top h3{text-align:center;}
#category_top h3 span{display:inline-block; margin:40px auto 10px; border-top:2px solid #001e57; font-size:18px; font-weight:bold; padding:20px;}

#category_top .flex_container,
#author .flex_container {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
#category_top .flex_container li,
#author .flex_container li {
    width: 313px;
    border-radius: 6px; /*overflow: hidden;*/
    box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3);
}
#category_top .flex_container li:hover,
#author .flex_container li:hover {
    opacity: 0.5;
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.5);
}

#category_top .flex_container li a,
#author .flex_container li a {
    display: block;
    width: 100%;
}
#category_top .flex_container li a dl,
#author .flex_container li a dl {
    width: 100%;
}
#category_top .flex_container li a dl img,
#author .flex_container li a dl img {
    width: 100%;
    height: 176px;
    object-fit: cover;
    border-radius: 6px 6px 0 0;
}
#category_top .flex_container li a dl dt,
#author .flex_container li a dl dt {
    position: relative;
}
#category_top .flex_container li a dl dt span,
#author .flex_container li a dl dt span {
    display: block;
    padding: 0 10px;
    font-size: 13px;
    font-weight: normal;
    background: #f8b25a;
    color: #fff;
    position: absolute;
    bottom: 10px;
    right: 10px;
}

#category_top .flex_container li a dl dd,
#author .flex_container li a dl dd {
    padding: 10px;
}
#category_top .flex_container li a dl dd h4,
#author .flex_container li a dl dd h4 {
    font-size: 18px;
    margin: 10px auto;
}

@media (min-width: 600px) {
    #category_top .flex_container li,
    #author .flex_container li {
        width: 313px;
        margin: 0 30px 30px 0;
    }
    #category_top .flex_container li:nth-child(3n),
    #author .flex_container li:nth-child(3n) {
        margin: 0 0 30px 0;
    }
}
@media (max-width: 600px) {
    #category_top .flex_container li{
        width: 80%;
        margin: 0 auto 20px;
    }
    #author .flex_container {
        gap: 20px 10px;
        margin-bottom: 30px;
    }
    #author .flex_container li {
        width: calc((100% - 30px) / 2);
        margin: 0 5px;
    }
    #author .flex_container li a dl img {
        height: 100px;
    }
    #author .flex_container li a dl dt span {
        right: 5px;
        font-size: 12px;
    }
    #author .flex_container li a dl dd h4 {
        font-size: 14px;
        line-height: 1.4;
        margin-top: 0;
    }
}
#category_top .flex_container_category_lst{display:flex; flex-wrap:wrap; justify-content:flex-start;}
#category_top .flex_container_category_lst li{border-radius:6px; background-color:#064d7e; display:table;}
#category_top .flex_container_category_lst li:hover{background-color:#064d7e; box-shadow: 0 0 7px 7px #042e4b inset;
-moz-box-shadow: 0 0 7px 7px #042e4b inset; -webkit-box-shadow: 0 0 7px 7px #042e4b inset;}
#category_top .flex_container_category_lst li a{display:table-cell; vertical-align: middle; color:#FFFFFF; text-align:center; font-size:18px; padding:10px; word-break: break-all;}

@media (min-width: 600px) {
    #category_top .flex_container_category_lst li{width:144px; height:144px; margin:0 27px 27px 0;}
    #category_top .flex_container_category_lst li:nth-child(6n){margin-right:0px;}
}
@media (max-width: 600px) {
    #category_top .flex_container_category_lst{width:350px; margin:auto;}
    #category_top .flex_container_category_lst li{width:110px; height:110px; margin:0 10px 10px 0;}
    #category_top .flex_container_category_lst li:nth-child(3n){margin-right:0px;}
    #category_top .flex_container_category_lst li a{font-size:16px;}
}

@media (max-width: 600px) {
    #category_top .latest li:nth-child(n+4){display:none;}
    #category_top .pickup_blog li:nth-child(n+6){display:none;}
}

#category_top .flex_container li a dl dd div span,
#author .flex_container li a dl dd div span{
background-color:#FFFFFF; color:#064d7e; border:1px solid #064d7e;
font-size:0.86em; padding:2px 6px; margin: 0 -2px 2px 0; display:inline-block; border-radius:3px;}

#category_top .flex_container li a dl dd,
#author .flex_container li a dl dd{position:relative; z-index:1;}
#category_top .flex_container li a dl dd p,
#author .flex_container li a dl dd p{position:absolute; top:-150px; right:-20px;
z-index:9; background-color:#2790b0; color:#FFFFFF; padding:10px; width:80%; height:auto;
display:none; border-radius:4px;}
#category_top .flex_container li a dl dd p:after,
#author .flex_container li a dl dd p:after {width: 100%; content: ""; display: block; position: absolute;
left: 0.5em; bottom: -11px; border-bottom:12px solid transparent; border-left:12px solid #2790b0;}

#category_top .flex_container li:hover a dl dd p,
#author .flex_container li:hover a dl dd p{display:none;}
#category_top .flex_container li:hover,
#author .flex_container li:hover{opacity: 1.0;}

#category_top .other li,
#author .other li{width:auto; height:auto; background-color: #FFFFFF; margin:0;}
#category_top .other li:hover,
#author .other li:hover{background-color: #FFFFFF; box-shadow:none;}

#category_top .other li a,
#category_top .other li a:hover,
#author .other li a,
#author .other li a:hover{position: relative; display: inline-block; 
margin: 0 .6em .6em .6em; padding: .6em .6em .6em 1.2em; line-height: 1; font-size:0.86em; color: #fff;
text-decoration: none; background-color: #064d7e;}

#category_top .other li a:before,
#author .other li a:before {position: absolute; top: 0; left: -1em; content: '';
border-width: 1.1em 1em 1.1em 0; border-style: solid; border-color: transparent #064d7e transparent transparent;}
#category_top .other li a:after,
#author .other li a:after {position: absolute; top: center; left: 0; content: '●'; color: #fff;}
#category_top .other li a:hover,
#author .other li a:hover{background-color: #042e4b;}
#category_top .other li a:hover:before,
#author .other li a:hover:before{border-color: transparent #042e4b transparent transparent;}

.acd-check{display: none;}
.acd-label{display: block; text-align:right; position:relative; top:-10px; font-size:0;}
.acd-label:after{ content: "全てのカテゴリを見る"; font-size:16px;}
.acd-check:checked + .acd-label:after{ content: "カテゴリを閉じる"; font-size:16px;}

@media (max-width: 600px) {
 .acd-label{width:350px; margin:auto; display: block; text-align:right; position:relative; top:0px;}
}
.acd-label span{position: relative; display: inline-block; padding: 0 0 0 16px;
color: #000; vertical-align: middle; text-decoration: none; font-size: 15px;}
.acd-label span:after{
position: absolute; top: -11px; bottom: 0; left: 0; margin: auto;
content: ""; vertical-align: middle; left: 0px; box-sizing: border-box;
width: 6px; height: 6px; border: 6px solid transparent; border-left: 8px solid #333333;}

.acd-content{border: 0px solid #333; height: 0; opacity: 0; padding: 0; transition: .5s; visibility: hidden;}
.acd-check:checked + .acd-label + .acd-content{height: auto; opacity: 1; padding: 0; visibility: visible;}

/* 
注目の記事、表示順制御について(有効にする場合は522からのコメントアウトを削除)
1.記事分の#category_top .pickup_blog li:nth-child(n)を用意する 
2.order: n; で表示したい順を指定する
3.PC版には表示制御としてmargin-rightの制御を適宜行う
*/
/*
#category_top .pickup_blog li:nth-child(1) {order: 5;}
#category_top .pickup_blog li:nth-child(2) {order: 3;}
#category_top .pickup_blog li:nth-child(3) {order: 2;}
#category_top .pickup_blog li:nth-child(4) {order: 4;}
#category_top .pickup_blog li:nth-child(5) {order: 1;}

@media (min-width: 600px) {
	#category_top .pickup_blog li{margin-right:27px;}
	#category_top .pickup_blog li:nth-child(2) {margin-right:0;}
	#category_top .pickup_blog li:nth-child(3) {margin-right:27px;}
}
*/

/*=============================================*/
/* カテゴリ一覧のヘッダ部と一覧のカテゴリ表示  */
/*=============================================*/
@media (min-width: 600px) {
    #category_lst{background-color:#2790b0; width:730px; min-height:120px; display: flex; align-items: center; }
    #category_lst a{text-decoration:none;}
    #category_lst .category_lst_title{width:100%; text-align:center;}
    #category_lst .category_lst_title h3{color:#FFFFFF; text-align:left; width:730px; position:relative; margin-bottom:0;}
    #category_lst .category_lst_title h3 span{width:490px; padding:0 10px 0 14px; display:inline-block; font-size: 1.8em; line-height: 1em;  word-break: break-all;}
    #category_lst .category_lst_title h3 img{width:200px; position:absolute; top:-15px;}
    #category_lst .category_lst_title .category_txt{background-color:#FFFFFF;display:block; text-align:left;
    width:92%; margin:10px auto 0; border-radius:6px; padding:10px 16px; color:#333333; font-size:0.86em; line-height:1.6em; }
}
@media (max-width: 600px) {
    #category_lst{background-color:#2790b0; width:100%; padding-bottom:1px;}
    #category_lst a{text-decoration:none;}
    #category_lst .category_lst_title{width:100%; text-align:center;}
    #category_lst .category_lst_title h3{color:#FFFFFF; width:100%;}
	#category_lst .category_lst_title h3 span{width:90%; margin:auto; padding:20px 0 10px 0; display:inline-block; font-size: 1.8em; line-height: 1em;  word-break: break-all;}
    #category_lst .category_lst_title h3 img{width:200px;}
    #category_lst .category_lst_title .category_txt{background-color:#FFFFFF;display:block; text-align:left;
    width:80%; margin:auto auto 16px; border-radius:6px; padding:10px 16px; color:#333333; font-size:0.86em; line-height:1.6em;}
}

/*=============================================*/
/* カテゴリ一覧、最新の記事追加表示  */
/*=============================================*/
#category_top .accordion_inner{display:none;}
#category_top .accordion_header,
#category_top .close_box{text-align:right; font-size:16px;}

#category_top .accordion_header span,
#category_top .close_box span{position: relative; display: inline-block; padding: 0 0 0 16px;
color: #000; vertical-align: middle; text-decoration: none; font-size: 15px;}

#category_top .accordion_header span:after,
#category_top .close_box span:after{
position: absolute; top: -4px; bottom: 0; left: 0; margin: auto;
content: ""; vertical-align: middle; left: 0px; box-sizing: border-box;
width: 6px; height: 6px; border: 6px solid transparent; border-left: 8px solid #333333;}

@media (min-width: 600px) {
	#category_top .accordion_inner .pc{display:flex;}
	#category_top .accordion_inner .sp{display:none;}
}
@media (max-width: 600px) {
	#category_top .accordion_inner .pc{display:none;}
	#category_top .accordion_inner .sp{display:flex;}
	#category_top .accordion_inner .sp li{display:block;}
}

/*=============================================*/
/* カテゴリ一覧、過去の記事表示  */
/*=============================================*/
#category_top .past_blog{display:flex; flex-wrap:wrap; justify-content:flex-start;}
#category_top .past_blog li{border-radius:6px; background-color:#2790b0; display:table;}
#category_top .past_blog li:hover{background-color:#23758e;}
#category_top .past_blog li a{display:table-cell; vertical-align: middle; color:#FFFFFF; text-align:center; font-size:18px; padding:10px; word-break: break-all;}

@media (min-width: 600px) {
    #category_top .past_blog li{width:144px; height:40px; margin:0 27px 10px 0;}
    #category_top .past_blog li:nth-child(6n){margin-right:0px;}
}
@media (max-width: 600px) {
    #category_top .past_blog{width:350px; margin:auto;}
    #category_top .past_blog li{width:110px; height:40px; margin:0 10px 10px 0;}
    #category_top .past_blog li:nth-child(3n){margin-right:0px;}
    #category_top .past_blog li a{font-size:16px;}
}

/*==============================*/
/* パンくずの打消し */
/*==============================*/
.pankuzu{display:none;}

/*==============================*/
/* h1の打消し */
/*==============================*/
.header h1{display:none;}

/*==============================*/
/* gnaviの打消し */
/*==============================*/
#gnavi{display:none;}

/*==============================*/
/* 固定ヘッダーの打消し  ★★ */
/*==============================*/
.contents{ padding-top: 120px; padding-bottom: 50px; min-height:280px;}
#top .contents{ padding-top: 120px; padding-bottom: 0; }

@media (max-width: 600px) {
    .contents{ padding-top: 100px; padding-bottom: 50px; }
    #top .contents{ padding-top: 100px; padding-bottom: 0; }
}

.contents #share{display: none;}

.contents h1.title {
    font-size: 20px;
    color: #294a7d;
    letter-spacing: -0.05em;
    padding: 12px 0;
    border-top: 4px double #999;
    border-bottom: 1px dotted #999;
}
.single-post .contents h1.title {
    font-size: 25px;
    line-height: 1.4;
    border-bottom: none;
    border-top: none;
    padding-top: 0;
    margin-bottom: 13px;
}
@media (max-width: 600px) {
    .single-post .contents h1.title {
        font-size: 20px;
    }
}



/*==============================*/
/* ページTOP */
/*==============================*/
#page-top { position: fixed; bottom: 30px; right: 30px; /*background: #666;*/ padding: 5px 15px; border-radius: 4px; font-size: 12px; border: 1px solid #fff; z-index: 9999; }
#page-top a { color: #fff; }

#page-top {right:0px; border-right:0; border-radius:4px 0 0 4px; background: rgba(0,0,0,0.7);}

@media (min-width: 600px) {
    #page-top {bottom:60px;}
}
@media (max-width: 600px) {
    /*#page-top {bottom:160px;}*/
    #page-top {bottom:18px;}
}

/*==============================*/
/* フォーム */
/*==============================*/
#link-form { position: fixed; bottom: 60px; right: 30px; background: #666; padding: 5px 15px; border-radius: 4px; font-size: 12px; border: 1px solid #fff; z-index: 9999;}
#link-form a { color: #fff; }

#link-form {right:0px; border-right:0; border-radius:4px 0 0 4px; background: rgba(0,0,0,0.7);}

@media (min-width: 600px) {
    #link-form {bottom:90px;}
}
@media (max-width: 600px) {
    #link-form {bottom:48px;}
}



/* ブログ内ボタンの追加css  */
.btn a{text-decoration: none!important;}
.btn a:hover{background-color: #222222;}

/* コードサンプル用追加css */
.code_area{background-color: #364549; color: #e3e3e3; padding:20px;}
.code_area>pre{word-wrap: break-word; white-space: break-spaces;}
.c_green{color:#00cf00;}
.c_blue{color:#48c6f2;}
.c_pink{color:#ff1493;}
.c_purple{color:#cab9f9;}

/* 追加css */
.side_column blockquote{border-left: 1px solid #dfe1e6; margin-left: 19px; padding: 10px 20px; color: #7a869a;}
.side_column strong{font-weight:bold;}
.side_column .frame_in_dl{padding:10px 10px 0 10px; border:1px solid #ccc; background-color: #fcfcfc; border-radius:6px; margin-bottom:1em;}
.side_column .frame_in_dl dl dt{font-weight:bold; margin-bottom:0.5em;}
.side_column .frame_in_dl dl dd{line-height:120%; margin-bottom:1.0em;}

/* 下部オレンジ部分レスポンシブル対応 */
@media (max-width: 600px) {
  .blog_contact_column{display: flex; flex-wrap: wrap;}
  .blog_contact_column div{width: calc(100% - 80px); padding:0 40px;}
}

/* デバイスごとに表示・非表示切替 */
.pc_view{display: block;}
.sp_view{display: none;}
@media (max-width: 600px) {
    .pc_view{display: none;}
    .sp_view{display: block;}
}

/* サムネイル画像に枠をつける */
img.thumb {
    border: 1px solid #E8E8E8!important;
}

/* グレー枠をつける＆目次枠 */
.line_area {
    padding: 10px;
    background: #fcfcfc;
    border: 1px solid #ccc;
    border-radius: 0px;
    margin-bottom: 30px;
}

/* あわせて読みたい枠 */
.tg_area {
    padding: 10px;
    background: #fffdf6;
    border: 1px solid #ffeaae;
    border-radius: 6px;
    margin-bottom: 30px;
}
.tg_area_tp {
    position: relative;
    margin: 2em 0;
    padding: 25px 10px 7px;
    border: solid 2px #FFC107;
    background: #fffdf6;
    border-radius: 6px;
}
.tg_area_tp h3 {
	position: absolute;
    display: inline-block;
    padding: 1px 9px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #FFC107;
    color: #ffffff;
    font-weight: bold;
}
.tg_area_tp_blog h3 {
    top: -2px;
    left: -2px;
}
.tg_area_tp_lp h3 {
    top: -27px;
    left: -3px;
    border-radius: 5px 5px 0 0;
}
.tg_area_tp p {
	padding: 0 5px;
}
.tg_area_tp_blog p {
	margin-top: 20px;
}

/* 関連記事枠 */
.rel_area {
    padding: 10px;
    background: #f4f9f4;
    border: 1px solid #99c89b;
    border-radius: 6px;
    margin-bottom: 30px;
}

/* インフォメーション枠 */
.info_area {
    border: solid 1px;
    padding: 15px;
}

/* りっくまアイコン */
.icon_rikkuma {
    width: 50px;
    height: auto;
}

/* 左右2カラム枠 */
.col2_area {
    padding: 20px 20px 0 20px;
    background: #fcfcfc;
    border: 1px solid #aaa;
    border-radius: 0px;
    margin-bottom: 30px;
    display: flex;
    align-items: center;
}
.col2_area_left {
    width: calc(40% - 0px);
}
.col2_area_right {
    width: calc(60% - 20px);
}
.btm05 {
    margin-bottom: 5px !important;
}
.fc_red {
    color: #f00;
}
.wat {
    width: auto !important;
}
.w100hm {
    width: 100%;
    height: auto;
    margin: auto;
}
.col09 { width: 9%; }
.col14 { width: 14%; }
.col18 { width: 18%; }

/* CTAエリア */
.cta_area_border {
    background-color: #26236b;
    height: 5px;
}
.cta_area_img {
    display: flex;
    align-items: center;
    justify-content: center;
}
.cta_area_title {
    font-size: 24px;
    line-height: 1.3em;
}
.cta_area_title_txt {
    display: block;
    text-decoration: none !important;
}
.cta_area_detail {
    border-radius: 20px;
    background: #f2f2f2;
    padding: 10px 20px 30px;
}
.cta_area_btn {
    width: 60%;
    margin: -40px 15px 15px auto;
}
.cta_area_btn_txt {
    background: #26236b !important;
    color: #fff;
    display: block !important;
    font-size: 13px !important;
    padding: 5px 15px !important;
    line-height: 25px;
    text-align: center;
    border-radius: 30px !important;
    letter-spacing: 0.05em;
}

/* Jira-DL モジュール */
.jira_dl .title {
	background: #26236b;
	width: 100%;
	padding: 10px;
	margin-bottom: 30px;
	font-family: unset;
}
.jira_dl .title p {
	color: #fff;
	font-size: 30px;
	margin: 15px;
	padding-right: 10px;
	text-align: center;
}
.jira_dl .detail .right_area p.text {
	color: #26236b;
	font-size: 1.1em;
	font-weight: bold;
}
.jira_dl .detail .right_area p.btn {
	width: 100%;
}
.jira_dl .detail .right_area p.btn a {
	background: #efa125; color: #fff;
	display: block;
	font-size: 18px;
	padding: 15px;
	line-height: 25px;
	text-align: center;
}
.jira_dl hr {
	background-color: #26236b;
	height: 5px;
	margin-bottom: 20px;
}
@media (max-width: 600px) {
	.jira_dl .title p {
		line-height: 34px;
	}
}


/* blog_guide_support モジュール */
.blog_guide_support .title {
	letter-spacing: normal;
	border: none;
	font-weight: bold;
	font-size: 30px;
	color: #000;
	text-align: center;
	line-height: 1.1;
}
.blog_guide_support .sub_title {
	text-align: center;
	font-size: 16px;
}
.blog_guide_support .right_area .title {
	font-size: 18px;
}
.include_block {
	float: left;
}
.block_sp {
	margin-right: 10px;
}
@media (max-width: 600px) {
	.block_sp {
		margin-right: 0px;
	}
}
.blog_guide_support .right_area p.img {
	text-align: center;
}
.blog_guide_support .right_area p.img img {
	width: 80%;
}
.blog_guide_support .right_area .cta_area_btn {
	margin-top: -20px;
}
.blog_guide_support .right_area .cta_area_btn a {
	line-height: 1.5;
}
.blog_guide_support .right_area .inner_btn {
	margin-bottom: 2px;
}
.blog_guide_support .right_area .inner_btn a {
	width: 97%;
	margin-left: -3px;
}

.blog_guide_support .right_area .cta_block {
	margin-bottom: 30px;
}
.blog_guide_support .right_area .img_left {
	width: 30%;
	float: left;
}

.dashed_area {
	padding: 1em;
	margin: 2em 0;
	border: dashed 2px;
}
.JSM-ITIL {
	background: #fffdf6;
	border-color: #FFC107;
}
.JSM-ITIL-beginner {
	background: #f0f7ff;
	border-color: #5b8bd0;
}

.blog_link_area h3{margin-bottom: 0!important; padding: 16px 6px; text-align: center; font-size: 1.4em; color: #FFF;}
.blog_link_area h3 + div{padding: 25px 20px 7px; margin-left: 0px!important;}
.blog_link_area h3 + div p{list-style:none!important; text-indent: -1em; padding-left: 1em;}

.Blog_Confluence_manager_newfunction h3{background: #51bcd3;}
.Blog_Confluence_manager_newfunction h3 + div{background: #dbeff4;}

.Blog_JSM_newfunction h3{background: #51bcd3;}
.Blog_JSM_newfunction h3 + div{background: #dbeff4;}

.Blog_crosssell_JWtoCo h3{background: #51d395;}
.Blog_crosssell_JWtoCo h3 + div{background: #dbf4e9;}

.blog_lp_area{position: relative; border: solid 3px #95ccff; border-radius: 8px;}
.blog_lp_area h3{position: absolute;  display: inline-block; top: -13px; left: 10px; padding: 0 9px; line-height: 1;  font-size: 1.4em; background: #FFF; color: #95ccff; font-weight: bold;}
.blog_lp_area h3 + div{padding: 25px 20px 7px;}
.blog_lp_area h3 + div p{list-style:none!important; text-indent: -1em; padding-left: 1em;}

/* .LP_knowledgeshare{} */
/* .LP_projectmanagement{} */
/* .LP_Agile{} */
/* .LP_DX{} */
/* .LP_ITIL-beginner{} */

.Blog_AppsSupport + div .cta_area_btn {width: 75%;}

.card_area a {
	text-decoration: none !important;
}
.card_area .flex_area{display: flex; width: 100%;}
.card_area .flex_area img{width: 100%; height: auto; border-radius: 10px;}

.card_area .flex_area_70{display: flex; width: 70%; margin: auto;}
.card_area .flex_area_70 img{width: 100%; height: auto; border-radius: 10px;}

.card_area .flex_area .img_l{width: calc(100% - 20px); height: auto; margin: auto 20px auto auto;}
.card_area .flex_area .img_r{width: calc(100% - 20px); height: auto; margin: auto auto auto 20px;}
.w50_50 div{width: 50%;}
.w30_70 div:nth-child(1){width: 30%;}
.w30_70 div:nth-child(2){width: 70%;}

.w70_30 div:nth-child(1){width: 70%;}
.w70_30 div:nth-child(2){width: 30%;}


.w60_40 div:nth-child(1){width: 60%;}
.w60_40 div:nth-child(2){width: 40%;}

.w40_60 div:nth-child(1){width: 40%;}
.w40_60 div:nth-child(2){width: 60%;}

@media (max-width: 600px) {
	.card_area .flex_area{display: flex; flex-wrap: wrap;}
	.card_area .flex_area .img_l,.flex_area .img_r{width: calc(100% - 0px); height: auto; margin: auto auto 20px auto;}
	
	.card_area .flex_area_70{display: flex; flex-wrap: wrap;}
	.card_area .flex_area_70 .img_l,.flex_area .img_r{width: calc(100% - 0px); height: auto; margin: auto auto 20px auto;}
	
	.w50_50 div{width: 100%;}
	.w30_70 div:nth-child(1){width: 100%;}
	.w30_70 div:nth-child(2){width: 100%;}
	.w70_30 div:nth-child(1){width: 100%;}
	.w70_30 div:nth-child(2){width: 100%;}
	.w60_40 div:nth-child(1){width: 100%;}
	.w60_40 div:nth-child(2){width: 100%;}
	.w40_60 div:nth-child(1){width: 100%;}
	.w40_60 div:nth-child(2){width: 100%;}
}
dl dt{font-weight: bold; font-size: 1.2em; padding-bottom: 6px; color: #2CA6B5;}

.h_center{display: flex; flex-wrap: wrap; align-items: center;} /* 縦位置中央 */
a dl dt{text-decoration: underline;}
a.hover_bk_right_blue{display: block;}
a.hover_bk_right_blue:hover * {background: #f8feff;}
a:hover dl dt{text-decoration: none;}

/* 問い合わせ導線の常時表示 */
    /* PC表示用スタイル */
    .fixed-button-pc {
      display: none; /* 初期は非表示 */
      position: fixed;
      /*top: 400px;*/
      bottom:10px;
      right: 20px;
      padding: 10px;
      border-radius: 5px;
      z-index: 1000;
    }

    .fixed-button-pc a {
      display: block;
      margin-bottom: 10px;
      padding: 10px 15px;
      font-size: 14px;
      color: white;
      text-align: center;
      text-decoration: none;
      border-radius: 5px;
      background-color: #007bff; /* ボタンの背景色 */
    }

    .fixed-button-pc a:last-child {
      margin-bottom: 0;
    }

    /* SP表示用スタイル */
    .fixed-button-sp {
      display: flex;
      justify-content: space-around;
      position: fixed;
      bottom: 0;
      left: 0;
      right: 0;
      background-color: white;
      padding: 10px;
      box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.2);
      z-index: 1000;
    }

    .fixed-button-sp a {
      flex: 1;
      margin: 0 5px;
      padding: 10px 15px;
      font-size: 14px;
      color: white;
      text-align: center;
      text-decoration: none;
      border-radius: 5px;
      background-color: #007bff; /* ボタンの背景色 */
    }

    @media screen and (max-width: 768px) {
      /* SP表示時にPCメニューを非表示に */
      .fixed-button-pc {
        display: none !important;
      }
    }

    @media screen and (min-width: 769px) {
      /* PC表示時にSPメニューを非表示に */
      .fixed-button-sp {
        display: none;
      }
    }

.fixed-button-pc a:hover,
.fixed-button-sp a:hover{background-color: #0053ab; /* ボタンの背景色 */}

.detail_header {
    background: #242269;
    display: flex
;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 120px;
}
.detail_header img {
    width: 340px;
    height: auto;
    margin: auto;
}

/* cta_WBS */
.cta_wbs{background: #eaf2ff; width: calc(100% - 40px); padding: 20px; margin: 20px auto;}
.cta_wbs h3{font-weight: bold; margin: 20px auto 30px!important;}
.cta_wbs h3 a:hover{color: #2CA6B5!important;}

.cta_wbs dl{margin-bottom: 30px;}
.cta_wbs dl dt{color: #222;}
.cta_wbs dl dd{margin-bottom: 20px;}
.cta_wbs dl dd a{text-decoration: none!important;}
.cta_wbs dl dd a:hover{text-decoration: underline!important; color: #2CA6B5;}

.cta_wbs .cta_btn{text-align: center;}
.cta_wbs .cta_btn a{display: inline-block; width: 100%; max-width: 420px; padding: 14px 0; color: #FFF !important; font-size: 16px; font-weight: bold; text-align: center; text-decoration: none!important; border-radius: 24px; transition: background-color 0.3s ease-in-out, transform 0.2s ease-in-out;}

.cta_wbs .cta_btn a{background: #1976d2; transform:translateY(0);}
.cta_wbs .cta_btn a:hover{background: #0d47a1; transform:translateY(-2px);}

/* 目次　パターン１ */
.contents_lst_01{background-color: #edf5fe; padding: 10px; border-radius: 5px; border: solid 1px #1A73E8;}
.contents_lst_01 ul{margin: 0; padding-left: 20px;}
.contents_lst_01 ul li{margin: 0; padding-left: 20px; list-style-type: none!important;}
.contents_lst_01 ul li a{color: rgb(26, 115, 232); text-decoration: none!important; font-weight: bold; transition: text-decoration 0.3s;}
.contents_lst_01 ul li a:hover{text-decoration: underline!important;}
.side_column > div:first-child ul > li.no_disc {list-style-type: none!important;}

/* 目次　インデックスなしリスト */
.contents_lst_01 ul li.no_indent{padding-left: 0em!important; text-indent: 0em!important;}

/*==============================*/
/* 著者ページ */
/*==============================*/
.author-head .degree {
    font-size: 16px;
}
.author-head .name {
    font-size: 25px;
    font-weight: bold;
}
.author-head .name > span {
    font-size: 16px;
    font-weight: normal;
}
.author-head .intro {
    margin-top: 30px;
}
.author-head .intro a {
    text-decoration: underline;
    color: #064d7e;
}
.author-head .badge {
    margin-top: 30px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.author-head .badge > li {
    height: 60px;
}
.author-head .badge > li > img {
    height: 100%;
    width: auto;
}
@media (min-width: 600px) {
    .author-head {
        display: flex;
        justify-content: center;
        padding-top: 50px;
        margin-bottom: 60px;
    }
    .author-head > div {
        width: 700px;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }
    .author-head .name > span {
        margin-left: 10px;
    }
    .author-head .tmb {
        margin-right: 40px;
    }
}
@media (max-width: 600px) {
    .author-head {
        text-align: center;
        padding-top: 30px;
        margin-bottom: 50px;
    }
    .author-head .degree {
        margin-bottom: 20px;
    }
    .author-head .tmb {
        max-width: 150px;
        margin: 20px auto 0;
    }
    .author-head .name > span {
        display: block;
        margin-top: 10px;
        font-size: 14px;
    }
    .author-head .intro {
        text-align: left;
    }
    .author-head .badge {
        justify-content: center;
    }
    .author-head .badge > li {
        height: 60px;
    }
}
.author-title span {
    background: #eee;
    color: #333;
    position: relative;
    padding: 10px 0 10px 20px;
    width: calc(100% - 20px);
    text-align: left;
    display: inline-block;
    margin: 0 auto 30px;
    font-size: 16px;
    font-weight: bold;
}
.author-title span i {
    position: absolute;
    left: 0;
    top: 20%;
    width: 7px;
    height: 60%;
    background: #242269;
    display: block;
    font-style: normal;
}

/* breadcrumb */
.breadcrumb > ul {
    display: flex;
    flex-wrap: wrap;
    margin-top: 20px;
}
.breadcrumb > ul > li {
    line-height: 110%;
    margin-bottom: 10px;
}
.breadcrumb > ul > li > a {
    text-decoration: underline;
    position: relative;
    margin-right: 20px;
}
.breadcrumb > ul > li > a:hover {
    transition: opacity .3s ease;
    opacity: .7;
}
.breadcrumb > ul > li > a::after {
    content: "";
    position: absolute;
    top: 5px;
    right: -12px;
    width: 4px;
    height: 4px;
    border-top: 1px solid #444;
    border-right: 1px solid #444;
    transform: rotate(45deg);
}
@media (max-width: 600px) {
    .breadcrumb > ul {
        margin-top: 10px;
    }
}