@charset "utf-8";
@import url("red_magic/tags.css");
@import url("red_magic/bookmark.css");
@import url("red_magic/hatena.css");
@import url("red_magic/amazlet.css");
@import url("prettify.css");

/* 全体 */
* {
    padding: 0px;
    margin : 0px;
}

body {
    font-family: verdana, sans-serif;
    background-color: #FBFBF9;
    line-height: 150%;
}

a:link {
    color: #006699;
    text-decoration: none;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #CCCCCC;
}
a:hover {
    color: #003366;
    background-color: #FFFFCC;
}
a:visited {
    color: #660000;
    text-decoration: none;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #CCCCCC;
}

p {
    margin-bottom: 1em;
}
/* 全体 */

/* ヘッダ */
#banner-header {
    background-color: #CC0000;
    background-image: url(red_magic/site_title.png);
    background-repeat: no-repeat;
    background-position: left top;
    height: 110px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #660000;
}

#banner-header a {
    display: block;
    width: 500px;
    height: 110px;
    background-image: url(red_magic/site_title_a.png);
    background-repeat: no-repeat;
    background-position: left top;
    font-size: 16px;
    text-indent: -10000em;
    text-decoration: none;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #660000;
}
#banner-header a:link {
    text-decoration: none;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #660000;
}

#banner-header a:hover {
    background-color: transparent;
    background-image: url(red_magic/site_title_a.png);
    background-repeat: no-repeat;
    background-position: left bottom;
}

#banner-header a:visited {
    text-decoration: none;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #660000;
}

#banner-description {
    border-bottom-width: 1px;
    border-bottom-style: dotted;
    border-bottom-color: #990000;
    padding: 2px 2px 2px 20px;
    margin-bottom: 10px;
    font-weight: normal;
    font-size: small;
}
/* ヘッダ */

/* レイアウト */
div.hatena-body {
    font-size: 100%;
    position: relative;
    width: auto;
    _width: 100%;
    margin-left: 10px;
    margin-right: 10px;
    padding-bottom: 15px;
}

div.main {
    margin-right: 220px;
    width: auto;
}

div.sidebar {
    position: absolute ;
    top: 0px ;
    right: 0px ;
    width: 210px ;
}
/* レイアウト */

/* サイドバー */

.hatena-moduletitle {
    background-image: url(red_magic/side_title_bg.gif);
    background-repeat: no-repeat;
    background-position: center center;
    height: 30px;
    line-height: 1.75em;
    font-weight: bold;
    font-size: 100%;
    font-weight: bold;
    text-align: center;
    word-spacing: 1em;
    letter-spacing: .2em;
    color: #FFFFCC;
    margin-bottom: 5px;
}

.hatena-moduletitle a {
    color: #FFFFCC;
}

.hatena-moduletitle a:hover {
    color: #990000;
    background-color: #FFFFCC;
}

.hatena-modulebody{
    font-size: 90%;
    margin-right: 5px;
    margin-left: 5px;
    margin-bottom: 5px;
}

ul.module-list {
    margin-left: 15px;
    line-height: 120%;
}

li.module-list-item {
  margin-bottom: 0.2em;
}
ul ul.module-list {
    margin-bottom: 2px;
    margin-left: 15px;
    line-height: 150%;
}
ul ul li.module-list-item {
    list-style-type: none;
    display: inline;
}
/* サイドバー */

/* 本文 */
.date-header {
    font-size: 90%;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #000033;
    padding: 1px;
    margin-bottom: 10px;
}

.date-header a:link{
    color: #006699;
    text-decoration: none;
    display: block;
    border-bottom-style: none;
}
.date-header a:hover{
    color: #000033;
    background-color: #FFFFCC;
    text-decoration: none;
    border-bottom-style: none;
}
.date-header a:visited{
    color: #000033;
    text-decoration: none;
    display: block;
    border-bottom-style: none;
}

div.body {
    margin-right: 10px;
    margin-left: 10px;
}
div.section {
}

.entry-header {
    margin-bottom: 5px;
    line-height: 120%;
    margin-bottom: 1em;
}

p.sectionfooter {
    font-size: 80%;
    border-top-width: 1px;
    border-top-style: dotted;
    border-top-color: #003366;
    text-align: right;
}

div.calendar {
    font-size: 90%;
}

p.notice {
    background-image: url(red_magic/notice.png);
    border-width: 1px;
    border-style: solid;
    border-color: #FFDEDE;
    color: #DD0000;
    padding: 0.2em;
    font-size: 90%;
}
/* 本文 */

/* アーカイブ */
ul.section{
    margin-left: 2em;
}
                
li.entry-header{
    margin-bottom: 0.2em;
}
/* アーカイブ */

/* 文字修飾系 */
div.section ul,
div.section ol {
    margin-left: 2em;
    margin-bottom: 1em;
    line-height: 130%;
}
div.section li,
div.section li {
    line-height: 120%;
    margin-bottom: 0.2em;
}
div.section ul ol,
div.section ol ul,
div.section ul ul,
div.section ol ol {
    margin-bottom: 0.2em;
}

div.section h4 {
    font-weight: bold;
    padding: 2px;
    border-left-width: 5px;
    border-left-style: solid;
    border-left-color: #660000;
    margin-bottom: 0.5em;
}

div.section img {
    border: 1px solid #330000;
}

pre {
    font-size: 90%;
    white-space: pre;
    border-left-width: 3px;
    border-left-style: solid;
    border-left-color: #660000;
    padding: 2px;
    line-height: 110%;
    width: 100%;
    overflow: scroll;
    color: #330000;
	margin-bottom: 1em;
}

code {
    font-family: "Lucida Console", sans-serif;
}

blockquote {
    background-color: #EEEEEE;
    padding: 0.1em;
    border: 1px solid #660000;
    margin-right: 1em;
    margin-bottom: 1em;
    margin-left: 1em;
}
blockquote cite {
    font-style: normal;
    font-weight: bold;
}
/* 文字修飾系 */


/* trackback */
h3#trackback {
    font-size: 100%;
    padding: 3px 0px 2px 10px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #660000;
}

div.trackbacks-content {
    margin-right: 10px;
    margin-left: 10px;
}
div.refererlist p {
    font-size: 90%;
}

div.trackback {
    margin-bottom: 0.5em;
    border-left-width: 5px;
    border-left-style: solid;
    border-left-color: #990000;
    padding-left: 5px;
}
/* trackback */

/* Comments */
div.commentshort h4 {
    padding: 3px 0px 2px 10px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #660000;
    margin-bottom: 0.2em;
}
div.commentshort p {
}
div.commentbody p {
    margin-right: 10px;
    margin-left: 10px;
}

.comments-open-header {
    font-size: 100%;
    padding: 3px 0px 2px 10px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #660000;
    margin-bottom: 0.2em;
}

div.comments-open-content {
    margin-right: 10px;
    margin-left: 10px;
}

input#comment-author,
input#comment-email,
input#comment-url {
	font-size: 100%;
	line-height: 120%;
	padding: 0.2em;
	border: 1px solid #660000;
    width: 100%;
}

p#comments-open-text textarea {
	font-size: 100%;
	line-height: 120%;
	padding: 0.2em;
	border: 1px solid #660000;
    width: 100%;
}

/* bullet */
h4.bullet {
    padding: 3px 0px 2px 10px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #660000;
    margin-bottom: 0.2em;
}

div#bullet {
    margin-right: 10px;
    margin-left: 10px;
	margin-bottom: 10px;
}

div#bullet input.comment {
	font-size: 100%;
	line-height: 120%;
	padding: 0.2em;
	border: 1px solid #660000;
    width: 80%;
}

