@charset "UTF-8";

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

body{
color: #303030;
/* font-family: 'Helvetica Neue','Helvetica','Arial', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro','メイリオ', 'Meiryo', '游ゴシック', 'Yu Gothic', 'ＭＳ Ｐゴシック', sans-serif;*/
/* font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif; */
font-family: "Helvetica", "Arial", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
}

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:#303030;
}

pre{
font-size:18px;
line-height:1.75;
}

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


h1{
font-size:28px;
font-weight: bold;
margin:10px 0 5px 0;
border-bottom:2px solid #808080;
}

h2{
font-size:24px;
font-weight: bold;
line-height: 26px;
border-left: solid 5px #7db4e6;
background: #E5F1FF;
margin: 60px 0 40px;
padding: 0.5em 0.5em;
}

h3{
font-size:22px;
font-weight: bold;
margin:40px 0 20px 0;
border-bottom:1px solid #CCC;
}

h4{
font-size:20px;
margin:40px 0 20px 0;
border-bottom:1px solid #CCC;
}

div.samplecode{
font-size:22px;
font-weight: bold;
margin:40px 0 20px 0;
background: linear-gradient(transparent 70%, #C1E3FF 70%);
}

code{
font-family: Consolas, "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
background: #e0e0e0;
padding: 0 5px;
}

/* レイアウト */

div.container{
max-width: 1088px;
margin: 0 auto;
display: flex;
justify-content: space-between;
}

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

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

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

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

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

#sitelogoimg img{
margin:0;
}

/* ---- サイトロゴ(新) ---- */
#sitelogo{
max-width: 1088px;
margin: 0 auto;
padding:3px 0;
font-size:18px;
font-weight:bold;
color:#000000;
height:30px;
font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
}

#sitelogo img{
margin:0;
vertical-align: middle;
}

#sitelogo span{
vertical-align: middle;
}

/*アイキャッチ */
#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;
}

/* --------------------------------------------- 新しいパンくず -------------------------------------------------- */

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

#newpankuzu{
width:100%;
}

#newpankuzu li{
display:inline;
list-style-type:none;
font-size:14px;
color:#000;
}

#newpankuzu li a{
border-bottom:1px solid #c0c0c0;
}

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

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

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

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

#adheader{
margin:3px 0;
padding:0;
}

#adtop{
margin:5px 0 0 0;
}

#admokuji{
margin:5px 0 0 0;
}

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

#adcenter_l{
}

#adcenter_r{
}

/*
#adcenter{
margin-top:40px;
width:100%;
height:280px;
}

#adcenter_left{
margin-top:40px;
width:100%;
height:250px;
}
*/

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

div.adnative{
padding:10px 0;
}

/* --記事下広告-- */
#adbottom{
margin-top:40px;
}

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

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

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

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

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

#adfooter{
max-width: 1092px;
text-align:center;
border-top:1px solid #cccccc;
margin: 10px auto;
padding-top:10px;
}

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

#adfooter{
max-width: 1092px;
margin: 20px auto;
}

.adtextbox {
position: relative;
margin: 2em 0;
padding: 0.5em 1em;
border: solid 2px #95ccff;
border-radius: 6px;
}

.adtextbox .box-title {
position: absolute;
display: inline-block;
top: -8px;
left: 10px;
padding: 0 9px;
line-height: 1;
font-size: 14px;
background: #FFF;
color: #95ccff;
font-weight: bold;
}

.adtextbox p {
margin: 0; 
padding: 0;
font-family: Consolas, "Helvetica Neue", Arial, "Hiragino Sans", Meiryo, sans-serif;
}

.adtextbox .title{
font-size:18px;
margin:10px 0 0 0;
}

.adtextbox .summary{
font-size:12px;
margin:0 0 20px 0;
}

*/

/* Amazon 広告 */

div.ama{
max-width:334px;
height:278px;
border:1px solid #a0a0a0;
text-align:center;
}

div.amaimg{
margin-top:5px;
}

div.amatext {
font-size:14px;
margin:0 10px;
}

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

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;
}

/* ---------------------------------------------  Twitter -------------------------------------------------- */

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

#twitterdiv{
margin:30px 0;
}

/* ---------------------------------------------  サイト内検索 -------------------------------------------------- */

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

#searchdiv{
margin:10px 0 20px 0;
}

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

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;
}

/* ---------------------------------------------  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:18px;
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.blue{color:#156EDB;}
span.bold{font-weight:bold;}
span.redbold{font-weight:bold;color:#dc143c;}
span.bluebold{font-weight:bold;color:#156EDB;}
span.s{font-size:12px;}

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

span.sbig{font-size:26px}
span.big{font-size:22px}
span.small{font-size:16px;}

span.key{
border: 1px solid #888;
border-radius: 5px;
box-shadow: 0 3px 4px rgba(0, 0, 0, 0.32);
font-size: 0.85em;
font-weight: bold;
padding: 2px 5px;
}

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

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;
}

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

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

table.pro2 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;
}

/* ---- カラーボックス ---- */

.titlebox1 {
margin: 20px 0;
padding: 10px 20px;
border: solid 3px #62c1ce;
background:#F9FEFF;
}

.titlebox2 {
margin: 20px 0;
padding: 10px 20px;
border: solid 3px #F4DBD4;
background:#FFFCF7;
}

.titlebox3 {
margin: 20px 0;
padding: 10px 20px;
border: solid 3px #c4c4c4;
background:#f3f3f3;
}

.titlebox4 {
margin: 20px 0;
padding: 10px 20px;
border-top: solid 30px #298FCC;
background:#000000;
color:#f0f0f0;
}

.titlebox1 p, .titlebox1 pre, .titlebox2 p, .titlebox2 pre, .titlebox3 p, .titlebox3 pre, .titlebox4 p, .titlebox4 pre {
margin: 0; 
padding: 0;
/* font-family: Consolas, 'Helvetica Neue','Helvetica','Arial', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro','メイリオ', 'Meiryo', '游ゴシック', 'Yu Gothic', 'ＭＳ Ｐゴシック', sans-serif; */
/* font-family: Consolas, "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif; */
font-family: Consolas, "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
}

.titlebox-top{
margin-bottom:0
}

.titlebox-bottom{
margin-top:0;
border-top:none;
background: #fdfdfd;
}

.longtext{
overflow-x:scroll;
}

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

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

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

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

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

#catemokuji{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
background:#fcfcfc;
padding: 1em 1em 1em 3em;
border: solid 2px gray;
margin:20px 0;
}

#catemokuji div.catebox{
width: 45%;
}

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

div.sidebartitle{
margin:0 0 5px 0;
padding:2px 0 0 5px;
font-size:22px;
border-bottom:1px solid #a0a0a0;
background:none;
}

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

div.menubox{
margin:30px 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:#000;
border-bottom:1px solid #f0f0f0;
}

div.menubox li a{color:#004A7F;}
div.menubox li a:link{color:#004A7F;}
div.menubox li a:visited{color:#004A7F;}
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:22px;
border-bottom:1px solid #a0a0a0;
background:none;
}

/* ------ */

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;
}

/* ------ */

div.menubox li.subnavi{
background:none;
font-weight:bold;
padding:10px 0 10px 20px;
}

/* --- サイドバーカテゴリ用 ------ */

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

div.sidebarcate ul{
margin:0;
}

/* ------ */

div.sidebarcate li{
margin:5px 0;
font-size:14px;
color:#000;
list-style-type:none;
}

div.sidebarcate li a{color:#004A7F;}
div.sidebarcate li a:link{color:#004A7F;}
div.sidebarcate li a:visited{color:#004A7F;}
div.sidebarcate li a:hover, a:active{color:#ff0000;}


/* クラス構成表示用(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: 1130px) {
  div.container{
  display: block;
  }

  div.restitle{
  display:none;
  }

  div.adsticky{
  display:none;
  }

  div.main{
  width:auto;
  padding:0 10px;
  }

  #catemokuji div.catebox{
  width: 100%;
  }

  #sitelogo{
  margin-left:10px;
  }

  .titlebox1 pre, .titlebox2 pre, .titlebox3 pre {
  overflow-x:scroll;
  }

  #adtop{
  width:300px;
  text-align:center;
  margin:0 auto
  }

  #adcenter_l{
  width:320px;
  text-align:center;
  margin:0 auto
  }

  #adcenter_r{
  display:none;
  }

  #adbottom{
  width:300px;
  text-align:center;
  margin:0 auto
  }

  #adbottom_l{
  width:100%;
  }

  #adbottom_r{
  display:none;
  }

  #adfooter{
  display:none;
  }

  div.ama{
  max-width:288px;
  height:278px;
  border:1px solid #a0a0a0;
  text-align:center;
  }
}
