@charset "UTF-8";

body,div,h1,h2,h3,pre,p,ul,ol,li{
margin: 0;
padding: 0;
}

body{
color: #222;
font-family: 'Avenir','Helvetica Neue','Helvetica','Arial','游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', 'メイリオ', sans-serif;
font-weight: 500;
}

img {
max-width: 100%;
height: auto;
margin:10px 0;
border-width:0;
vertical-align:bottom;
}

img.waku{
border:1px solid #9f9f9f;
}

p{
font-size:18px;
line-height:1.75;
margin:25px 0 25px 0px;
color:#222;
}

a:link{color:#1E79A7;}
a:visited{color:#1E79A7;}
a:hover, a:active{color:#ff0000;}


h1{
font-size:30px;
margin:10px 0 5px 0;
border-bottom:2px solid #808080;
color:#808080;
}

h2{
font-size:24px;

/* font-weight:bold;
margin:40px 0 20px 0;
padding:5px 0 3px 10px;
color:#222222;
border-bottom:1px solid #808080;
border-left:10px solid #808080;
*/

    line-height: 26px;
border-left: solid 5px #7db4e6;
background: #E5F1FF;
/*    border-bottom: 4px solid #888; */
    margin: 40px 0 20px;
    padding: 0.5em 0.5em;
    font-weight: bold;
}

h3{
font-size:18px;
margin:20px 0 10px 0;
border-bottom:1px solid #CCC;
}

/* レイアウト */

div.container{
max-width: 1088px;
margin: 0 auto;
}

#header{
width:100%;
border-bottom:1px solid #d0d0d0;
background:#f0f0f0;
}

/* ---- サイトロゴ ---- */

#sitelogoimg{
max-width: 1088px;
margin: 0 auto;
padding:10px 0;
}

#sitelogoimg img{
margin:0;
}

/*アイキャッチ */
#eyecatch{
margin:0;
padding:0;
}

/* --------------------------------------------- パンくず -------------------------------------------------- */

#pankuzubar{
margin:0;
padding:3px 0;
width:100%;
}

#pankuzu{
width:100%;
}

#pankuzu li{
display:inline;
list-style-type:none;
font-size:12px;
color:#303030;
}

#pankuzu li img{
margin:0;
padding:0;
vertical-align:middle;
}

#pankuzu li span{
border-bottom:1px solid #c0c0c0;
}

#pankuzu li.s{
font-size:12px;
}

#pankuzu li a {text-decoration:none;}
#pankuzu li a:link{color:#303030;}
#pankuzu li a:visited{color:#303030;}
#pankuzu li a:hover, a:active{color:#303030;}

#pankuzu li span.here{
color:#A0A0A0;
border-bottom:none;
}

#pankuzu li span.sya{
font-size:11px;
border-bottom:none;
color:#303030;
}

/* --------------------------------------------- 広告関係 -------------------------------------------------- */

/* --記事上広告(336x300用)-- */

#adtoplabel{
padding:0;
font-size:11px;
color:#696969;
margin-top:10px;
}

#adtop{
padding:5px 0 15px 0;
}

#adtop_box{
padding:5px 0;
display: flex;
}

#adtop_l{
width: 336px;
}

#adtop_r{
width: 336px;
margin-left:10px;
}

#adcenter_box{
margin-top:40px;
display: flex;
justify-content: space-between;
}

#adcenter_l{
width: 336px;
}

#adcenter_r{
width: 336px;
}

/* --記事中広告 -- */

div.adnativelabel{
padding:0;
font-size:11px;
color:#696969;
}

div.adnative{
padding:10px 0;
}

/* --記事中リンク広告 -- */

#adcenterlink{
padding:10px 0;
}

/* --記事下広告-- */

#adbottom_box{
margin-top:30px;
display: flex;
justify-content: space-between;
}

#adbottom_l{
width: 336px;
}

#adbottom_r{
width: 336px;
}

#adbottom{
margin-top:30px;
}

/* --記事下リンク広告-- */

#adbottomlink{
margin:30px 0;
}

/* --右サイドバー広告-- */

div.adright{
margin:5px 0;
width:300px;
}

/* --右サイドバー追尾広告-- */

div.adsticky{
  position: -webkit-sticky; /* Safari */
  position: sticky;
  top: 10px;
}

div.adstickyinner{
  margin-top:20px;
}

#adbill{
margin:20px 0;
text-align:center;
}

/* ---------------------------------------------  サイドバー タイトル -------------------------------------------------- */

div.menutitle{
font-size:16px;
font-weight:bold;
margin:25px 0 8px 0;
border-bottom:1px solid #9f9f9f;
color:#9f9f9f;
}

/* Profile(Written byの箇所) */

#profile{
margin:15px 0;
}

#profile p{
margin:0;
padding:0;
color:#9f9f9f;
padding:0 10px 0 0;
text-align:right;
font-size:12px;
font-style:italic;
}

/* ---------------------------------------------  関連コンテンツ -------------------------------------------------- */

div.relatedlabel{
font-size:18px;
font-weight:bold;
margin:30px 0 10px 0;
border-bottom:1px solid #7f7f7f;
color:#333333;
}

div.relatedarea{
width:100%;
max-width: 1062px;
margin: 0 auto;
padding:0 0 10px 0;
}

/* ---------------------------------------------  ソーシャルボタン -------------------------------------------------- */

#sarea{
margin:10px 0 10px 0;
width:300px;
}

#sarea:after{
content:".";
display:block;
height:0;
clear:both;
visibility:hidden;
}

#sarea-fb{
float:left;
}

#sarea-twitter{
float:left;
}

/* ---------------------------------------------  Profile(右上) -------------------------------------------------- */

#profiletitle{
font-size:16px;
font-weight:bold;
margin:10px 0 8px 0;
border-bottom:1px solid #9f9f9f;
color:#9f9f9f;
}

#profileblock{
width:300px;
}

#profileblock:after{
content:".";
display:block;
height:0;
clear:both;
visibility:hidden;
}

#profilephoto{
float:left;
width:60px;
padding:3px;
border:1px solid #a0a0a0;
}

#profilephoto img{
border-width:0;
margin:0;
}

#profiletext{
float:right;
width:227px;
margin:0 0 0 5px;
padding:0;
}

#profiletext a {text-decoration:none;}
#profiletext a:link{color:#0000ff;}
#profiletext a:visited{color:#0000ff;}
#profiletext a:hover, a:active{color:#0000ff;}

p.profilemsg{
font-size:11px;
margin:5px 0 0 0;
padding:0;
line-height:1.4;
letter-spacing:0;
}

#profileauthor{
font-size:12px;
margin:0;
padding:0;
letter-spacing:0;
}

/* ---------------------------------------------  Profile(記事下) -------------------------------------------------- */

#profiletitle2{
font-size:18px;
font-weight:bold;
margin:30px 0 10px 0;
border-bottom:1px solid #7f7f7f;
color:#333333;
}

#profileblock2{
display: flex;
}

#profilephoto2{
width:140px;
}

#profilephoto2 img{
padding:10px;
border:1px solid #9f9f9f;
}

#profiletext2{
flex: 1;
width:100%;
}

#profiletext2 p{
font-size:16px;
margin:5px 0 0 0;
}

#profiletext a {text-decoration:none;}
#profiletext a:link{color:#0000ff;}
#profiletext a:visited{color:#0000ff;}
#profiletext a:hover, a:active{color:#0000ff;}

/* ---------------------------------------------  フッター -------------------------------------------------- */

#footer{
border-top:1px solid #cccccc;
padding:5px 0;
max-width: 1092px;
margin: 0 auto;
}

#copyright{
margin:0px;
padding:0px;
color:#606060;
font-size:12px;
text-align:center;
}

#copyright a:link{color:#606060;}
#copyright a:visited{color:#606060;}
#copyright a:hover, a:active{color:#606060;}

/* ---------------------------------------------  div や pre  -------------------------------------------------- */

div.borderdiv{
margin:10px 0;
border:1px dashed #c8c8c8;
background-color:#fafad2;
padding:10px;
font-size:16px;
line-height:1.6;
-moz-box-sizing: border-box;
box-sizing: border-box;
width:100%;
}

div.subtitle{
font-size:20px;
font-weight:bold;
margin:40px 0 20px 0;
padding:5px 0 3px 10px;
font-weight:bold;
color:#222222;
border-bottom:1px solid #808080;
border-left:10px solid #808080;
}

div.sublabel{
font-size:17px;
font-weight:bold;
margin:20px 0 10px 0;
border-bottom:1px solid #7f7f7f;
color:#333333;
}

ul.linktext{
text-align:left;
list-style-type:none;
line-height:1.3em;
margin:15px 0;
}

ul.linktext li.title{
font-size:14px;
font-weight:bold;
padding-left:14px;
background-image:url("../img/ya1.png");
background-repeat:no-repeat;
background-position:0px 6px;
}

span.red{color:#dc143c;}
span.bold{font-weight:bold;}
span.redbold{font-weight:bold;color:#dc143c;}
span.s{font-size:12px;}

span.ct{font-weight:bold;font-size:16px;color:#FF7F7F;}
span.k{background: linear-gradient(transparent 70%, #FFC1C3 70%);}

/* -- 装飾用 ---- */

pre.fixcode{
font-size:14px;
font-family: "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, Meiryo, 'ＭＳ ゴシック', monospace;
line-height:1.5;
background-color:#f8f8ff;
border:1px solid #dcdcdc;
padding:10px 20px 10px 15px;
margin:10px 0;
overflow:auto;
}

pre.fixcode16{
font-size:16px;
font-family: "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, Meiryo, 'ＭＳ ゴシック', monospace;
line-height:1.5;
background-color:#f8f8ff;
border:1px solid #dcdcdc;
padding:10px 20px 10px 15px;
margin:10px 0;
overflow:auto;
}

pre.fixcomment{
font-size:14px;
font-family: "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, Meiryo, 'ＭＳ ゴシック', monospace;
line-height:1.5;
background-color:#fffff0;
border:1px solid #dcdcdc;
padding:10px 20px 10px 15px;
margin:10px 0;
overflow:auto;
}

pre.fixcomment16{
font-size:16px;
font-family: "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, Meiryo, 'ＭＳ ゴシック', monospace;
line-height:1.5;
background-color:#fffff0;
border:1px solid #dcdcdc;
padding:10px 20px 10px 15px;
margin:10px 0;
overflow:auto;
}

pre.fixcommand{
font-size:14px;
font-family: "Consolas", "Courier New", monospace;
line-height:1.5;
background-color:#000000;
color:#ffffff;
border-top:20px solid #298FCC;
padding:10px 20px 10px 15px;
margin:10px 0;
overflow:auto;
min-height:250px;
white-space: pre-wrap;
}

pre.mheader{
-moz-box-sizing: border-box;
box-sizing: border-box;
font-size:14px;
font-family: "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, Meiryo, 'ＭＳ ゴシック', monospace;
line-height:1.5;
border:1px solid #C8C8C8;
background-color:#eee8aa;
margin:10px 0 0 0;
padding:5px 10px;
width:100%;
overflow:auto;
}

pre.mexplain{
-moz-box-sizing: border-box;
box-sizing: border-box;
font-size:12px;
font-family: "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, Meiryo, 'ＭＳ ゴシック', monospace;
line-height:1.5;
border-bottom:1px solid #C8C8C8;
border-right:1px solid #C8C8C8;
border-left:1px solid #C8C8C8;
background-color:#f5f5dc;
margin:0 0 10px 0;
padding:5px 10px;
width:100%;
overflow:auto;
}

table.pro{
border:none;
font-size:14px;
border-collapse:collapse;
width:100%;
}

table.pro th{
border:1px solid #888888;
padding:8px;
background-color:#f0f8ff;
}

table.pro td{
border:1px solid #888888;
padding:8px;
}

blockquote.other{
margin:10px 0 10px 15px;
border-left:3px solid #d0d0d0;
padding-left:8px;
font-size:16px;
}

/* ---------------------------------------------  目次  -------------------------------------------------- */

#mokuji{
background:#fcfcfc;
padding: 1em 1em 1em 2em;
border: solid 2px gray;
margin-bottom:20px;
}

#mokuji li{
font-size:18px;
padding: 5px 0;
}

#mokujititle{
font-size:18px;
margin:0;
padding: 5px 0;
}

#mokuji ol.next{
margin-left:2em;
}

/* ---------------------------------------------  番号付きリスト  -------------------------------------------------- */

ol.question{
    color: #1e366a;
    border: dotted #1e366a 1px;
    padding: 0.5em 0.5em 0.5em 2em;
}

ol.question li {
    line-height: 1.5;
    padding: 1em 0;
}

/* ----------------------------------------  ホームディレクトリへ戻る  ---------------------------------------------- */

#backhome{
font-size:18px;
}

#backhome img{
vertical-align:middle;
}

/* ---------------------------------------------  カテゴリページ用  -------------------------------------------------- */

div.menubox{
margin:20px 0 35px 0;
}

div.menubox ul{
margin:0;
}

/* ------ */

div.menubox li{
margin:3px 0 0 0;
padding:3px 0 3px 20px;
background:url(../img/cateicon2.png) 5px 10px no-repeat;
list-style-type:none;
font-size:18px;
color:#606060;
border-bottom:1px solid #f0f0f0;
}

div.menubox li a{color:#1E79A7;};
div.menubox li a:link{color:#1E79A7;}
div.menubox li a:visited{color:#1E79A7;}
div.menubox li a:hover, a:active{color:#ff0000;}

/* ------ */

div.menubox li.navi{
margin:0 0 5px 0;
padding:2px 0 0 5px;
font-size:20px;
font-weight:bold;
border-bottom:1px solid #a0a0a0;
}

/* ------ */

div.menubox li.more{
margin:6px 0 0 0;
padding:0 0 0 15px;
font-size:13px;
color:#20b2aa;
}

div.menubox li.more a{color:#007F0E;};
div.menubox li.more a:link{color:#007F0E;}
div.menubox li.more a:visited{color:#007F0E;}

/* ------ */

div.menubox li.comment{
color:#7f7f7f;
padding:0 0 0 20px;
font-size:11px;
background:none;
border:none;
}

/* クラス構成表示用(JavaDrive等) */

div.classwaku{
border:1px solid #f0f0f0;
padding:8px;
margin:10px 0;
background-color:#fafafa;
}

ul.classdirectory{
font-size:12px;
margin:0px 5px;
list-style-type:none;
}

ul.classdirectory li.top{
padding-left:2px;
}

ul.classdirectory li.detail{
padding-left:2px;
margin:15px 5px 0px 0px;
}

ul.classdirectory li.row1,
ul.classdirectory li.row2,
ul.classdirectory li.row3,
ul.classdirectory li.row4,
ul.classdirectory li.row5,
ul.classdirectory li.row6,
ul.classdirectory li.row7,
ul.classdirectory li.row8{
background-image:url("../img/tree.png");
background-repeat:no-repeat;
}

ul.classdirectory li.row1{
padding-left:32px;
background-position:10px 0px;
}

ul.classdirectory li.row2{
padding-left:62px;
background-position:40px 0px;
}

ul.classdirectory li.row3{
padding-left:92px;
background-position:70px 0px;
}

ul.classdirectory li.row4{
padding-left:122px;
background-position:100px 0px;
}

ul.classdirectory li.row5{
padding-left:152px;
background-position:130px 0px;
}

ul.classdirectory li.row6{
padding-left:182px;
background-position:160px 0px;
}

ul.classdirectory li.row7{
padding-left:212px;
background-position:190px 0px;
}

ul.classdirectory li.row8{
padding-left:242px;
background-position:220px 0px;
}

/* Media queries
-------------------------------------------------------*/

@media only screen and (max-width: 996px) {
  div.restitle {
  display:none;
  }

  div.sidebar{
  margin-left:10px;
  padding:0;
  }

  div.main{
  margin:0 10px;
 }
}

@media only screen and (max-width: 450px) {
  h1{
    font-size:24px;
  }
}

@media only screen and (min-width : 996px) {

  div.container{
  display: flex;
  justify-content: space-between;
  }

  div.sidebar{
  width: 300px;
  margin-top:10px;
  padding:0;
  }

  div.main{
  flex: 1;
  width:100%;
  max-width: 728px;
  }

}
