@charset "UTF-8";a,abbr,acronym,address,applet,article,aside,audio,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font:inherit}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}html{height:100%}
body{
	color:#333;
	background:#efefef;
	background-attachment:fixed;
	height: 100%;
	/*font-family: "游ゴシック",YuGothic,"メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Verdana,Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;*/
	font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, 游ゴシック体, メイリオ, sans-serif;
	overflow-y: scroll;
}
a:link,a:active,a:visited { color:#555; transition: .5s; text-decoration:none; }
a:hover { color: #4082d3; }
.clr, .clearfix { clear:both; min-height:1px; }
a:hover > img, a:hover { opacity:0.5; }
b,strong{ font-weight:bold; }

/* 文字寄せ */
.left{ text-align: left; }
.center{ text-align: center; }
.right{ text-align: right; }

/* スマホページのみ非表示にするクラス */
.sp { display:none; }
.pc img{
	margin:0px auto;
	display:block;
}

p.sitename img{
	width: 433px;
	height:64px;
}
/* ▼サンプルコード用 */
pre,code{ text-align:left; background:#000; color:#fff; line-height: 1.5;  }

pre { overflow-x:scroll; padding: 13px; }
pre::-webkit-scrollbar{height:10px;}/*バーの太さ*/
pre::-webkit-scrollbar-track{background:#dddddd;}/*バーの背景色*/
pre::-webkit-scrollbar-thumb{background:#2cc2e4;}/*バーの色*/

/*  SETTING COLUMNS  */
#wrapper{ width:100%; min-width:1260px; position:relative; }
header{
	width:100%;
	margin:0 auto;
	padding:0px;
	z-index:200;
	background:#4ab4f7;
}

#headerbox{
	width:1100px;
	margin:0 auto;
	padding:10px 0;
	position:relative;
	text-align:center;
}

/* 		HEADER		*/
#headerbox > .sitename {
	text-align: center !important;
    margin: 0;
}

#headerbox > .sitename > a{
	transition: .5s;
	display:inline-block;
	color: #fff;
	font-size:25px;
    font-weight:bold;
    text-decoration:none;
    font-family:Verdana;
}

#headerbox > .sitename > a:hover { 
	opacity:0.5;
	-moz-opacity:0.5;
}


/*	▼ヘッダー下メニュー部分：nav▼ */
nav{
	width:100%;
	background:#fff;
	margin: 0;
	padding: 7px 0;
}
nav .nav-menu ul{
	width: 1300px;
	display: table;
	margin: 0px auto;
	padding: 0px;
}
nav .nav-menu li{
	width: 20%;
	display: table-cell;
	text-align:center;
	margin: 0px auto;
	padding: 0px;
	border-left: 1px solid #eee;
}
nav .nav-menu li a{
	display: block;
	margin: 0px 10px;
	padding: 10px;
	box-sizing: border-box;
	border-bottom:4px solid transparent;
}
nav .nav-menu li a:hover{
	color: #4082d3;
	border-bottom:4px solid #4082d3;
}
nav .nav-menu li:last-child{
	border-right: 1px solid #eee;
}
/* 記事の作成・更新日：.update */
.update{
	display:block;
	vertical-align:top;
	font-size:13px;
	line-height:24px;
	padding:0px;
	margin:0px !important;
}

.update::before{
	content:"\f021";
	color:#89b1f9;
	font-family:FontAwesome;
	margin-right:10px;
}

/* 		SEARCHBOX		*/
#searchbox{
	padding: 15px 20px;
}
#searchbox > form{
	position:relative;
	background: #ccc;
	/*padding:0px 10px;*/
}
#searchbox > form > .sbform{
	width:calc(100% - 70px);
	border:none;
	display:inline-block;
	border:1px solid #ccc;
	/*margin:5px 0;*/
	text-align:left;
	font-size:16px;
	background:#fff;
	padding:12px;
	position: relative;
}


#searchbox > form > .sbform::focus::placeholder{
	color:transparent;
}


#searchbox > form > .search{
	background: transparent;
    border: none;
    margin: auto;
    padding: 5px 7px;
    display: inline-block;
    line-height: 0;
	border-radius: 0px 50% 50% 0px;
}


#searchbox > form > .search:hover{
	opacity:0.5;
}

#searchbox > form > .search:after{
	content:"\f002";
	font-family:FontAwesome;
	font-size:21px;
    line-height: 0;
    position: absolute;
    top: 50%;
    color: #fff;
}

/*	▼フッター全体：footer▼ */
footer {
	width:100%;
	color:#545454;
	background:#ccc;
	margin-top:110px;
}

footer a { color:#545454; }

/* ▼フッターメニュー：.footer_box▼ */
.footer_box { width:1100px; margin:0 auto; padding:30px 5px;}

.footer_box > a { width:300px; display:inline-block; vertical-align:top; }
.footer_box > a > img{ width:75%; }
.footer_box > a:hover { opacity:.5; }


.footer_box > div {
	display:inline-block;
	vertical-align:top;
	width:330px;
	text-align:left;
	padding:0px 15px;
}

.footer_box > div.menu-footer_right-container{ width:270px; }

.footer_box > div.menu-footer_right-container .menu li{
	list-style:none;
}


/* ▼フッターウィジェット */

.footer_box .widget_title{
	margin-bottom: 20px;
}
.footer_box .widget.single_widget li{
	list-style:none;
}

.footer_box .widget.single_widget li {
	border-bottom:1px solid #aaa;
}

.footer_box .widget.single_widget li a {
	text-decoration:none;
	padding:10px 0;
	display:block;
}

/* ▼コピーライト */
.copyright{
	padding:40px;
	text-align:center;
	display:block;
}

/*	▼レイアウト設計：.containar > .con_main/.con_side▼ */
.containar{
	width:1300px;
	margin:10px auto !important;
}

.containar::before,.containar::after{
	content:"";
	clear:both;
	display:block;
}
/*	▼メイン部分：.con_main▼ */
.con_main{
	width:calc(100% - 370px);
	padding: 30px;
    box-sizing: border-box;
    background: #fff;
    margin-top: 25px;
    margin-right: 15px;
	float: left;
	border: 1px solid #ddd;
	position: relative;
}
/* ▼サイドメニュー無しバージョン */
.con_main.full-size{
	margin:20px 0 !important;
	width:100% !important;
}


/*	▼サイド部分：.con_side▼ */
.sidewidget ul li{
	border-bottom: 1px dashed #cccccc;
	position: relative;
}
.con_side{
	width:340px;
	float:right;
	position:relative;
	font-size:13px;
	margin-top: 15px;
}

.side_label, .widget_title{
	font-size:15px;
	text-align:center;
	display:block;
	font-weight:bold;
	padding: 10px;
    border-radius: 5px;
	margin:10px 0 0px;
}
.side_label, .widget_title{
	color:#fff;
	background:#4082d3
}
.sidewidget > .side_label{
	color:#fff;
	background:#4ab4f7;
	border-radius: 5px 5px 0px 0px !important; 
}
.side_label li{
	list-style:none;
	border-bottom:1px solid #ccc;
}
.con_side .topics{
	margin:10px;
	list-style: none;
}
.con_side .topics li{
	margin:7px 0;
}
.con_side .topics .rl_left,
.con_side .topics .rl_right{
	display:inline-block;
	vertical-align:middle;
}
.con_side .topics .rl_left{
	width:80px;
	margin-right:10px;
}
.con_side .topics .rl_right{
	width:calc(100% - 100px);
}
.con_side .topics .rl_left .imgbox{
	width:80px;
	height:80px;
	display:block;
	background-color:#ccc;
	background-repeat:no-repeat;
	background-size:cover;
}
.con_side .topics .rl_right .rl_title{
	font-size:15px;
	font-weight:bold;
}
.con_side .topics .rl_right .rl_data{
	font-size:11px;
}

/* ▼サイドメニューウィジェット：.sidewidget */
.sidewidget:nth-of-type(1){
	margin-top: 0 !important;
}
.sidewidget {
	margin:25px 0 35px;
	background:#fff;
	border-radius: 5px;
}
.sidewidget ul{
	list-style: none;
    margin: 0px 20px;
    padding: 10px 0px;
}
.sidewidget ul li a{
	font-size: 15px;
    line-height: 1;
    text-decoration: none;
    font-weight: 700;
    display: block;
    padding: 13px 0;
    padding-left: 10px;
}
.sidewidget ul li a:hover{
	opacity: 1;
	color: #4082d3;
	text-decoration: underline;
}
.sidewidget ul li a:before{
	content:"\f0da";
	font-family:FontAwesome;
	margin-right:7px;
	position: absolute;
	left: 0;
}
.sidewidget .sub-menu{
	margin:0px 0px 20px 20px;
	font-size:14px;
}
.sidewidget .sub-menu li{
	border-bottom:1px dashed #ccc;
}

/* ▼カテゴリー・検索ページ共通項目 */
/* ▽タイトルラベル：related_label▽ */
.related_label{
	margin:5px 0px 20px;
	padding:20px;
	background:#ffffff;
	border-top:3px solid #4ab4f7;
	text-align: center;
}

.related_label .rl_imgbox,
.related_label .rl_label_text{
	display:inline-block;
	vertical-align:top;
}

.related_label .rl_imgbox{
	
}

.related_label .rl_label_text{
	
}

.related_label .rl_label_text .rl_label_title{
	font-size:20px;
	line-height:32px;
	font-weight:bold;
	color:#4ab4f7;
}

.related_label .rl_label_text h1{
	font-size:13px;
	line-height:20px;
	color:#333;
}


/* ▼一覧表示：.related▼ */
/* ▽共通項目▽ */
.related li{
	list-style:none;
	margin:10px 0;
}
.related .rl_right .rl_title{
	font-size:19px;
	font-weight:bold;
	margin:5px 0;
}

/* ▽縦1行ずつ リスト表示▽ */
.related.list:first-of-type{
	border:none;
}
.related.list .rl_left,
.related.list .rl_right{
	display:inline-block;
	vertical-align:middle;
}
.related.list .rl_left{
	width:200px;
	margin-right:20px;
}
.related.list .rl_right{
	width:calc(100% - 250px);

}
.related.list .rl_left .imgbox{
	width: 200px;
    height: 150px;
    display: block;
    background-color: #ccc;
    background-repeat: no-repeat;
    border: 1px solid #ddd;
    background-size: cover;
}


/*		ぱんくず：#pankuzu		*/
#pankuzu{ padding:0px; margin:20px 0px 0px; font-size:13px; line-height:1; display:block; }
#pankuzu > ul{ list-style:none; padding:10px 0px; }
#pankuzu > ul > li{ display:inline-block;}
#pankuzu > ul > li > a{ color:#333; text-decoration:none; }
#pankuzu > ul > li:first-child > a:after{ content:""; }
#pankuzu > ul > li { font-family:FontAwesome; }
#pankuzu > ul > li::before{ content:"\f105";  margin:0px 10px;  }
#pankuzu > ul > li:first-child::before{ content:""; margin:0px; }
#pankuzu > ul > li:first-child { content:"" !important; }


/*	▼TOP・目次に戻るボタン▼	*/
#pageTop, #mkjTop{  margin:0; display:none; position: fixed; }
#pageTop { bottom: 0px; right: 0px; padding-right:60px; padding-bottom:60px; z-index:2; }
#mkjTop  { bottom: 0px; right: 0px; padding-right:60px; padding-bottom:180px; z-index:1; }

#pageTop > a, #mkjTop > a {
    text-decoration: none;
    text-align: center;
    display: block;
}

#pageTop > a > i, #mkjTop > a > i {
    display: block;
    background:#555;
    color: #fff;
    width:40px;
    height:40px;
    padding:7px;
    font-size:15px;
	border-radius:50%;
	position:relative;
	transition:.5s;
}

#pageTop > a > i.fa , #mkjTop a > i.fa {
	font-size:33px;
	margin:0;
	vertical-align:middle;
	padding-right:7px;
}

#pageTop > a > span , #mkjTop a > span {
	display:block;
	font-size:13px;
	font-weight:bold;
	margin:3px 0;
}

#pageTop a:hover, #mkjTop a:hover{
  	filter:alpha(opacity=100);
	-moz-opacity: 1;
	opacity: 1;
}

/*	本文：article */
article { padding:0px; }
article p a { color:#2033b2 !important; text-decoration:underline !important; }
article p a:hover { text-decoration:none !important; }

article > p{ font-size:16px; line-height:27px; }

/*	注意タグ：.caution */
.caution{ font-size:13px; color:#888; }


/*	▼リストタグ：チェックボックスつき > ul.checkbox ▼ */
article  .checkbox{
	background:#eee;
	padding:15px;
}

article  .checkbox > li{
	list-style:none;
	padding:10px;
	margin:10px 7px;
	font-weight:bold;
	line-height:30px;
	text-indent:-30px;
	padding-left:45px;
	vertical-align: top;
	border:2px solid #ccc;
	background:#fff;
}

article  .checkbox > li:before{ content:""; width:32px; height:32px; margin:0; padding:0; display:inline-block; vertical-align: top; background-repeat:no-repeat; background-image:url(../images/css/checkbox.png); margin-right:5px; }




/*	▼リストタグ：まとめ（水色ボタン付き） > ul.checkbox ▼ */
article  .matome > li{ list-style:none; padding:3px 0px; font-weight:normal; text-indent:-30px; padding-left:35px; }
article  .matome > li:before{ content:"●"; color:#6EC3C8; margin-right:10px; }


/*	枠線をつける場合は、  class="border" を入れる
	背景色をつける場合は、class="back" を入れる */
.border{ border:3px solid #79A1D4; padding:10px 20px; }
.bg{ background:#a4c6f1; padding:10px 20px; }

/*	▼内部リンク / .link▼	*/
.link{ text-align:right; margin:15px 0 40px; }
.link > a{
	color:#f77f85;
	text-decoration:none;
	font-size:19px;
	font-weight:bold;
	padding:5px;
}

.link > a:after{
	content:"\f138";
	font-family:FontAwesome;
	padding-left:7px;
}

.link > a:hover{
	color:#f7811d;
	text-decoration:none;
}


/*		▼まとめボックス / .mtm▼	*/
.mtm{
	width:550px;
	border:3px double #2d3861;
	margin:60px auto 30px;
	padding:15px 7px;
	text-align:center;
	position:relative;
	background:#fff;
}

.mtm ul{ margin:0px 15px 20px; }
.mtm li{
	list-style:none;
	color:#444;
	font-size:16px;
	line-height:25px;
	border-bottom:1px dotted #2d3861;
	text-indent:-15px;
	font-weight:bold;
	padding:7px 7px 7px 15px;
}

.mtm li:before{
	content:"";
	width:20px;
	height:20px;
	line-height:1;
	display:inline-block;
	font-size:0;
	vertical-align:top;
	background-image:url(../images/checkp.png);
	background-repeat:no-repeat;
	background-position:0px 3px;
	background-size:contain;
	margin-right:10px;
}

.mtm p{
	width:200px;
	font-size:20px;
	line-height:1;
	color:#fff;
	font-weight:bold;
	line-height:25px;
	margin:auto !important;
	padding:6px;
	border-radius:5px 5px 0 0;
	text-align:center;
	position:absolute;
	top:-40px;
	left:-3px;
	background:#2d3861; /* article背景と同じ色 */
}

.word_result { font-size:17px; margin-bottom:10px; padding-bottom:5px; }

/*関連記事レイアウト*/
h2.kb-lk-title {
    background:#F78D4A;
    color: #fff;
    padding: 7px 15px;
    border: none;
    /* font-weight: normal; */
	margin-bottom: 10px !important;
	border-left: 5px solid #f6660b;
}
.kn-tex ul {
    margin: 0 !important;
}
.relatedposts {
    display: flex;
    flex-wrap: wrap;
	justify-content: space-between;
}
.cell {
	width: 46% !important;
}
.cell {
	padding: 10px;border-bottom: 1px dashed  #8b8b8b;
	margin-bottom:10px;
}
.cell:after {
   content: "";
   display: block;
   clear: both;
}
.imgbox {
    float: left;
	margin-right:10px;
}
.kn-tex ul li {
    display: inline-block;
    margin: 5px 0 5px 5px;
    padding: 2px 5px 3px;
    background: #4ab4f7;
    border-radius: 3px;
    color: #fff;
	line-height: 19px !important;
}
.kn-tex ul li a{
	color:#ffffff !important;
	font-size: 11px!important;
	text-decoration:none;
}
.kn-tex {
    overflow: hidden;
}
a.kn-tle {
    color: #333;
    text-decoration: none;
    font-weight: bold;
	line-height: 1.4;
	font-size: 0.9em;
}
a.kn-tle:hover{
	    color: #59c7e9 !important;
	    text-decoration:underline;
}
/*前へ次へ*/
ul.pn-list {
    /*display: flex;*/
    max-width: 100%;
    /*justify-content: space-between;*/
    flex-wrap: wrap;
	margin-top:2em;
	list-style-type:none;
	margin: 2.5em 0 0;
}
li.pn-next {
    display: flex;
	align-items: center;
}
li.pn-next .pn-img{
	margin-right:10px;
	width: 17%;
}
li.pn-prev .pn-img{
	margin-left:10px;
	width: 17%;
}
li.pn-prev {
    display: flex;
	align-items: center;
    flex-flow: row-reverse;
    padding-right: 65px;
}
li.pn-next,li.pn-prev{
	position:relative;
	box-shadow: 0 0 2px #666;
	padding:10px;
}
li.pn-next img,li.pn-prev img{
	position:relative;
	max-width:100%;
}
li.pn-next {
    padding-left: 65px;
	margin-bottom:20px;
}
li.pn-prev {
    padding-right: 65px;
}
li.pn-prev a{
	float:right;
}
li.pn-next:after,li.pn-prev:after{
   content: "";
   display: block;
   clear: both;
}
li.pn-next a::before {
   content: "\f053";
    font-family: FontAwesome;
    font-size: 1.45em;
    font-weight: 700;
    position: absolute;
    left: 10px;
    /* right: 10px; */
    color: #4ab4f7;
    top: 49%;
    transform: translateY(-50%);
}
li.prev a::after {
content: '前の記事へ';
    font-family: FontAwesome;
    font-size: 0.6em;
    font-weight: 700;
    position: absolute;
    /* top: 5px; */
    bottom: 5px;
    left: 5px;
    color: #585858;
    /* top: 49%; */
    /* transform: translateY(-50%); */	
}
li.pn-prev a::after {
   content: "\f054";
    font-family: FontAwesome;
    font-size: 1.45em;
    font-weight: 700;
    position: absolute;
    right: 10px;
    /* right: 10px; */
    color: #4ab4f7;
    top: 49%;
    transform: translateY(-50%);
}
li.pn-prev::before{
	content: '次の記事へ';
    font-family: FontAwesome;
    font-size: 0.6em;
    font-weight: 700;
    position: absolute;
    /* top: 5px; */
	right: 5px !important;
    bottom: 5px;
    color: #585858;
    /* top: 49%; */
    /* transform: translateY(-50%); */
	z-index:10;
}
li.pn-next::before {
content: '前の記事へ';
    font-family: FontAwesome;
    font-size: 0.6em;
    font-weight: 700;
    position: absolute;
    /* top: 5px; */
    bottom: 5px;
    left: 5px;
    color: #585858;
    /* top: 49%; */
    /* transform: translateY(-50%); */
    z-index:10;
}
span.in-bro {
    display: inline-block;
}
/*見出しパディング調整*/
#review{
	margin-top: 0px !important;
    padding-top: 0px !important;
}
/*スマホ版のサーチフォームを表示させない*/
div#b-search{
    width: 100%;
    max-width: 100%;
    background-color: #fff;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 10;
    transform: translate(101%);
    transition: all .5s;
}