body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td,img {
	margin:0;
	padding:0;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}
fieldset,img {
	border:0;
}
address,caption,cite,code,dfn,em,strong,th,var {
	font-style:normal;
	font-weight:normal;
}
strong {
	font-weight:bold;
}

ol,ul {
	list-style-position:inside;
}

ul {
	list-style-type:disc;
}

caption,th {
	text-align:left;
}
h1,h2,h3,h4,h5,h6 {
	font-size:100%;
	font-weight:normal;
}
q:before,q:after {
	content:'';
}
abbr,acronym {
	border:0;
}

/*======================================
	Custom definition
=======================================*/

* {
	font-style:normal;
	font-weight: normal;
	line-height:1.5em;
}

body {
	display:block;
	width:100%;
	height:1000px;
	position:relative;
	color:#444;
	background-color:#e8e8e7;
	font-family:Arial,Helvetica,sans-serif;
	background-image:url('./img/stripe_bg.png');
/*
	background-image:url('{%&file_path(file => 'img/bgimage.jpg')%}');
	background-position: top left;
	background-repeat: repeat-x;
*/
}

p,
ul,
ol,
pre,
address,
cite {
	margin-bottom:1em;
	font-size: 100%;
}

ol, ul {
	list-style-position: outside;
	margin-left: 1em;
}

pre {
	padding: 0.5em 10px;
	border: 1px dotted #aaa;
	width: 90%;
	overflow: scroll;
	color: #444;
	background-color: #f5f5f5;
	font-family: monospace, 'Courier New', "Osaka－等幅";
}

/*======================================
	1-9.Tables Module
=======================================*/
table {
	border-collapse: separate;
	border-spacing: 1px;
	border: 1px solid #cfd3d6;
}

caption {
	color: #454e58;
	border: 1px solid #97a4aa;
	border-width: 1px 1px 0 1px;
	border-style: solid;
	border-color: #cdd;
}

th,
td {
	padding: 0.1em 5px;
	border: 1px solid #efefef;
	border-color: #efefef #dce0e3 #dce0e3 #efefef;
	line-height:1.2em;
}

th {
	color: #000;
	background-color: #eff0f1;
}

td {
	border: 1px solid #ddd;
}

/*======================================
	1-8.Forms Module
=======================================*/
input,
textarea {
	margin: 0.4em 10px;
	padding: 0.1em 0.3em;
	border: 1px solid #ddd;
	font-family: Arial, Helvetica, "ヒラギノ角ゴ Pro W3",  sans-serif;
	background-color: #f5f5f5;
}

input {
	line-height: 1.2;
}

input.texttype {
	width:200px;
	max-width:80%;
}

input:hover,
textarea:hover {
	border: 1px solid #888;
}

input:focus,
textarea:focus {
	border: 1px solid #000;
}

h1 ,h2 ,h3 ,h4 ,h5 ,h6 ,body {
	margin:0;
	padding:0;
	width:auto;
	font-weight:normal;
}

h2 {
	font-size:0.9em;
	margin-bottom:1.5em;
	font-weight:bold;
}

/* アンカー */
a:link,
a:active,
a:hover,
a:visited {
	color:#444;
	text-decoration: none;
}

a:hover {
	color: #f00;
}

blockquote {
	width:auto;
	margin:0 0 1em 0;
	padding-left:10px;
	color:#555;
	border-left:5px solid #888;
	font-family: 'ＭＳ ゴシック',monospace, 'Courier New', "Osaka－等幅";
}

li img {
	margin-right:4px;
	vertical-align:middle;
}

textarea {
	width:90%;
	height:20em;
}

pre.program_code {
	clear:left;
	width:95%;
	height:auto;
	max-height:500px;
	margin:0 0 1em 0;
	padding:10px;
	overflow:scroll;
	border:1px solid #aaa;
	border-right:0;
	border-bottom:0;
	font-size:12px;
	line-height:13px;
	background-color:#000;
	background-color:#fffbf0;
	color:#444;
}

pre.program_code span.keyword {color: #00f}
pre.program_code span.keyword2 {color: #808}
pre.program_code span.number {color: #f00}
pre.program_code span.identifier {color: #a66}
pre.program_code span.function {color: #a66; text-decoration: underline}
pre.program_code span.method {color: #a66; text-decoration: underline}
pre.program_code span.variable {color: #f80}
pre.program_code span.statement {color: #00f}
pre.program_code span.comment {color: #080}
pre.program_code span.perlpod {color: #080}
pre.program_code span.quote {color: #a66}
pre.program_code span.wquote {color: #600}
pre.program_code span.value {color: #a66}
pre.program_code span.regexp_statement {background: #ffa}
pre.program_code span.tag {color: #00f}
pre.program_code span.url {color: #00f; text-decoration: underline}

/* 検索文字列 */
span.search_result {
	background-color:#ff5;
	font-weight:inherit;
	font-family:inherit;
	text-decoration:inherit;
}

/* ------------------ サイトタイトル ------------------ */
#head_stripe {
	position:relative;
	min-width:830px;
	border:0;
	margin:0;
	background-color:#fff;
	height:120px;
	background-image:url('./img/cubes.png');
	/* background-image:url('./img/headstripe_bg.jpg'); */
	background-position: right 0px;
	background-repeat: no-repeat;
/*
*/
}

#site_title {
	border:0;
}

#site_title a {
	position:absolute;
	display:block;
	top:4px;
	left:35px;
	width:230px;
	height:69px;
	background-image:url('./img/title.png');
	background-position: left top;
	background-repeat: no-repeat;
}

#site_title a:hover {
	background-position: left bottom;
}

#site_title a span {
	display:none;
}

#rss_subscribe {
	position:absolute;
	top:0;
	right:30px;
	padding:10px 20px 15px 20px;
	font-size:10px;
	font-weight:normal;
	font-family:Helvetica,Arial,sans-serif;
	letter-spacing:0.4px;
	font-size:16px;
	background-color:#779;
	opacity:0.9;
	filter:alpha(opacity=90);
}

#rss_subscribe #subscribe_link {
	margin:0;
	color:#ddd;
}

#rss_subscribe #subscribe_link:hover {
	color:#fff;
}

#rss_subscribe #subscribe_link img {
	vertical-align:bottom;
}

#rss_subscribe #subscribe_icon {
	margin-right:8px;
}

#ie_caution {
	color:#d22;
}

/* ------------------ カレンダーストライプ ------------------ */
#calendar_stripe {
	position:absolute;
	left:0;
	bottom:0px;
	width:100%;
	height:32px;
	margin:0;
	padding:0;
	overflow:hidden;
	text-align:center;
	background-color:#fff;
	opacity:0.9;
	filter:alpha(opacity=90);
}

#calendar_stripe caption {
	display:none;
}

#calendar_stripe h2 {
	display:none;
}

#calendar_stripe table {
	position:absolute;
	right:0;
	margin:0;
	border:0;
	background-color:transparent;
	border-collapse:collapse;
	width:100%;
	min-width:600px;
}

#calendar_stripe td {
	padding:0;
	margin:0;
	border:0px;
	font-size:9px;
	width:3.57%;
	min-width:35px;
	white-space:nowrap;
	background-color:transparent;
}

#calendar_stripe td span,
#calendar_stripe td a {
	padding:7px 0 5px 0;
	height:15px;
	min-width:24px;
	display:block;
	font-family: arial, sans-serif, helvetica;
	font-size:10px;
	color:#aaa;
	line-height:1.2em;
	border-bottom:5px solid #aaa;
	}

#calendar_stripe td a {
	border-bottom:5px solid #55a;
}

#calendar_stripe table td a:link,
#calendar_stripe table td a:visited,
#calendar_stripe table td a:hover,
#calendar_stripe table td a:active {
	color:#666;
	text-decoration: none;
}

#calendar_stripe table td a:hover {
	border-bottom:5px solid #d84;
}

/* ------------------ container ------------------ */
#container {
	position:relative;
	width:100%;
	min-width:920px;
	margin: 0;
	padding:30px 0 0 0;
	font-size:0.8em;
}

#container:after {
	content: "";
	display: block;
	clear: both;
	height: 1px;
	overflow: hidden;
}

/* ------------------ widget ------------------ */
.layout-column {
	margin: 0;
	padding: 0;
	float: left;
	height: auto;
	min-height: 20px;
}

.widget-placeholder {
	margin: 0;
	background-color: #ebebeb;
	border: 1px dashed #656;
}

.widget {
	margin: 0 0 5px 0;
}

h2.widget-header {
	position:relative;
	color:#fff;
	padding: 0.3em 9px 0.3em 9px;
	font-size:12px;
	font-family: arial, sans-serif, helvetica;
	font-weight: bold;
	overflow:hidden;
	margin-bottom:1px;
	background-color:#505055;
	background-image:url('./img/widget/title_bar.png');
	background-repeat: repeat-x;
	background-position: center bottom;
	border:0;
	height:18px;
	white-space:nowrap;
}

.widget-menu {
	position:absolute;
	right:0.8em;
}

.widget-menu a {
	color:#fff;
	margin: 0 0 0 0.5em;
}

.widget-header img {
	cursor:pointer;
	border: none;
	vertical-align: middle;
}

.widget-content {
	width:auto;
	padding:20px;
	margin:0 0 20px 0;
	background:#fff;
	border:1px solid #acacb0;
	overflow:hidden;
}

#main_area .board .widget-content {
	padding:30px;
}

#main_area .board.widget-newly-added .widget-content {
	background-color:#faf8f0;
	padding:28px;
	border:3px solid #d84;
}

#main_area .widget-newly-added .widget-content {
	background-color:#faf8f0;
	padding:18px;
	border:3px solid #d84;
}

/* ------------------ main ------------------ */
#main_area {
	width:100%;
	margin:0 -490px 30px 0;
}

#main_area .widget,
#main_area .widget-placeholder {
	margin:0 510px 5px 30px;
}

/* ------------------ links ------------------ */
#links {
	width:240px;
	margin:0 20px 30px 0;
}

/* ------------------ links2 ------------------ */
#links2 {
	width:200px;
	margin:0 0 30px 0;
}

/* ------------------ board ------------------ */
.board {
	// Firefoxで不要
	// IEでは？
	/* position:relative; */
}

.entry_ad {
	width:468px;
	margin:10px auto 10px auto;
	text-align:center;
}

.board .widget-content .main-container .parent {
	margin-bottom:30px;
}

.board div {
	// Firefoxで不要
	// IEでは？
	/* clear:left; */
}

.board h3 {
	position:relative;
	height: 32px;
	padding:0 0 0 40px;
	margin-bottom:2px;
	border:0;
	font-size:1.2em;
	font-weight:bold;
	background-image: url('./img/fixed_icon/article-32.png');
	background-repeat: no-repeat;
	background-position: left bottom;
	border-bottom:1px dashed #000;
	vertical-align:bottom;
}

.board h3 a {
	position: absolute;
	bottom:0;
	text-decoration:none;
	font-weight:bold;
}

.board .info_line {
	position:relative;
	text-align:right;
	padding:0;
	margin-top:0.2em;
	margin-bottom:1.0em;
	font-size:0.9em;
	font-family: georgia,serif;
}

.board .info_line .last_modified {
	padding-left:0.3em;
}

.board .sentences p {
	clear:left;
}

.board .sentences img {
	clear:left;
	float:left;
	margin:0 15px 5px 0;
	width:150px;
	border:1px solid #000;
}

.board .sentences img.diagram {
	width:inherit;
	max-width:400px;
}

.board .sentences a {
	text-decoration:underline;
}

.board .attach {
	margin-bottom:40px;
	clear:left;
}

/* ------------------ widget setup ------------------ */
#links .widget-content {
	border:3px solid #569;
}

.widget-content.blocklist {
	padding:0;
	background-color:#d84;
	background-image:url('./img/hidden_pattern.png');
	background-repeat: repeat-y;
	background-position: right top;
}

.widget-content.blocklist .main-container a {
	display:block;
	margin:0;
	background-color:#fff;
	padding:0.3em 10px 0.3em 10px;
	border-bottom: 1px solid #458;
	font-size:0.9em;
	text-decoration: none;
	white-space:nowrap;
	-webkit-text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
	-ms-text-overflow: ellipsis;
	text-overflow: ellipsis;
	overflow: hidden;
}

.widget-content.blocklist .main-container a:hover {
	background-color:transparent;
	color:#fff;
}

/* ------------------ calendar ------------------ */
#calendar caption {
	margin:-5px 0 5px auto;
	border:0;
	border-bottom:1px solid #aaa;
	color:#aaa;
	text-align:right;
}

#calendar table {
	margin:auto;
	width:auto;
	border:0;
	border-collapse:collapse;
	background-color:transparent;
	overflow:hidden;
}

#calendar table tr,
#calendar table td,
#calendar table th {
	padding:0;margin:0;border:0px;
	text-align:center;
	width:1%;
	white-space:nowrap;
	background-color:transparent;
	/* font-size:9px; */
}

#calendar table th span,
#calendar table td span,
#calendar table td a {
	margin-left:0px;
	padding:4px 0 4px 0;
	width:28px;
	display:block;
	font-family: arial, sans-serif, helvetica;
	font-size:10px;
	line-height:1.0em;
	color:#aaa;
}

#calendar table a:link,
#calendar table a:visited,
#calendar table a:hover,
#calendar table a:active {
	color:#222;
	text-decoration: none;
}

#calendar table a:hover {
	color:#fff;
	background-color:#d84;
}

/* ------------------ search_form ------------------ */
#search_form .widget-content {
	text-align:center;
}

#search_form .widget-content form,
#search_form .widget-content form p {
	margin:0;
	padding:0;
}

#search_form input {
	width:auto;
	margin:0;
	padding:2px 18px 2px 2px;
	background-image:url('./img/searchform_glass.png');
	background-repeat: no-repeat;
	background-position: right center;
	text-align:left;
	font-size:14px;
	font-family: 'ＭＳ ゴシック',monospace, 'Courier New', "Osaka－等幅";
}

/* ------------------ foot_stripe ------------------ */
#foot_stripe {
	width:100%;
	clear:both; /* IE対策 */
	border-bottom:5px solid #114779;
}

/* ------------------ copyright ------------------ */
#copyright {
	text-align:left;
	margin-left:30px;
	font-size:10px;
	color:#666;
	font-family:verdana,sans-serif;
}

#copyright a {
	color:inherit;
	font-family:inherit;
}

/* ------------------ keitan2 ------------------ */
.comments .comment_conteiner {
	padding-top:1.5em;
	position:relative;
}

.comments .comment_conteiner .date {
	position:absolute;
	top:0;
	left:0;
}

.comments .comment_conteiner .author {
	position:absolute;
	top:0;
	left:70px;
}

.comments .comment_conteiner .content {
	padding:10px 0 0 70px;
	border-top:1px dashed #555;
}

.relatives .current {
	font-weight:bold;
}

/* ------------------ tag_cloud ------------------ */
#tag_cloud .widget-content {
	padding-right:0;
	padding-left: 0;
	text-align:center;
	word-break: break-all;
}

#tag_cloud .widget-content a {
	letter-spacing:0px;
	line-height:0.1em;
	color:#fff;
	text-decoration:none;
	font-weight:bold;
	padding: 0.1em 8px 0.1em 8px;
	margin: 0;
	position:relative;
	opacity:0.9;
	filter:alpha(opacity=90);
}

#tag_cloud .widget-content .level0 {
	z-index:1;
	font-size:9px;
	background-color:#cbcfe0;
}

#tag_cloud .widget-content .level1,
#tag_cloud .widget-content .level2 {
	z-index:1;
	font-size:12px;
	background-color:#9ea8ca;
}

#tag_cloud .widget-content .level3,
#tag_cloud .widget-content .level4 {
	z-index:3;
	font-size:16px;
	background-color:#909ece;
}

#tag_cloud .widget-content .level5 {
	margin-top:3px;
	z-index:5;
	font-size:20px;
	background-color:#7585be;
}

#tag_cloud .widget-content .level6 {
	margin-top:3px;
	z-index:6;
	font-size:24px;
	background-color:#6a78b8;
}

#tag_cloud .widget-content a:hover {
	z-index:1000;
	background-color:#d84;
}

/* ------------------ TOOLTIP ------------------ */
#TOOLTIP,
#ENTRY_DETAIL,
#LIST_BY_DATE {
	text-align		: left;
	position		: absolute;
	z-index			: 3000;
	border-top		: 1px solid #9b9;
	border-right	: 2px solid #676;
	border-bottom	: 2px solid #676;
	border-left		: 1px solid #9b9;
	background		: #edffdd;
	width			: 20em;
	padding			:10px;
	font-size		: 12px;
	font-family		: 'ＭＳ ゴシック',monospace, 'Courier New', "Osaka－等幅";
}

#TOOLTIP h3,
#LIST_BY_DATE h3,
#TOOLTIP div,
#LIST_BY_DATE div {
	font-size   : 1.1em;
	font-weight : normal;
	margin	  : 0;
	margin-bottom: 0.5em;
	padding:0 0 0 18px;
	border	  : 0;
	background-repeat: no-repeat;
	background-position: left center;
}

#TOOLTIP blockquote.search_input {
	background-color:#f5f5f5;
	border:1px solid #ccc;
	width:193px;
	margin:0;
	padding:2px 18px 2px 2px;
	background-image:url('./img/searchform_glass.png');
	background-repeat: no-repeat;
	background-position: right center;
	text-align:left;
	font-size:14px;
	font-family: 'ＭＳ ゴシック',monospace, 'Courier New', "Osaka－等幅";
}

/* ------------------ Pop up help ------------------ */
#TOOLTIP h3 {
	background-image:url('./img/xiao_icon/52.png');
}

/* ------------------ list_by_date ------------------ */
#LIST_BY_DATE h3 {
	background-image:url('./img/xiao_icon/30.png');
}

.list_by_date,
.list_by_date td {
	background-color:transparent;
	border:0;
	vertical-align:top;
	padding-left:4px;
}

.list_by_date td.date {
	text-align:right;
}

/* ------------------ ウィジェット内ナビゲーション ------------------ */
a.widget-navigation-up,
a.widget-navigation-down,
.widget-appender-container a.widget-appender {
	background-color: #eeeef0;
}

.widget-appender-container a.widget-appender {
	display:block;
	float:left;
	min-width:2em;
	padding:4px;
	margin-right:2px;
	margin-bottom:2px;
	font-size:10px;
	background-color: #9ea8ca;
	text-align:center;
}

.widget-appender-container a:hover {
	background-color: #d84;
	color:#fff;
}

.widget-appender-container a.current,
.widget-appender-container a.current:hover,
.widget-appender-container a.subcontent-tab-selected {
	background-color: #55a;
	color:#fff;
}

.widget-appender-container a:last-child {
	margin-bottom:20px;
}

.has-sub-node > .widget-appender-container a:last-child {
	margin-bottom:0;
}

.subcontent {
	clear:left;
}

.has-sub-node .subcontent {
	display:none;
	padding:20px;
	border:1px solid #9ea8ca;
	background-color: #d0d8e0;
}

.main-container h4 {
	border:0;
	margin:2.2em 0 0.8em 0;
	font-size:1.2em;
	font-weight:bold;
	border-bottom:1px solid #888;
}

.main-container .subcontent h4 {
	display:none;
}

a.widget-navigation-up,
a.widget-navigation-down {
	width: auto;
	height: 12px;
	border: 1px solid #bbb;
	display: block;
	line-height:12px;
	font-size:6px;
	text-align:center;
	color:#888;
}

a.widget-navigation-up:hover,
a.widget-navigation-down:hover {
	background-color:#eeeee0
}

a.widget-navigation-up {
	margin: -16px -16px 20px -16px;
}

a.widget-navigation-down {
	margin: 20px -16px -16px -16px;
}

.blocklist.widget-content a.widget-navigation-up {
	padding: 0;
	margin: 0;
	border:0;
	border-bottom: 1px solid #459;
}

.blocklist.widget-content a.widget-navigation-down {
	padding: 0;
	margin: 0;
	border:0;
}

#experiment ul,
#otherlinks ul {
	list-style:none;
}

/**
 * jQuery lightBox plugin
 * This jQuery plugin was inspired and based on Lightbox 2 by Lokesh Dhakar (http://www.huddletogether.com/projects/lightbox2/)
 * and adapted to me for use like a plugin from jQuery.
 * @name jquery-lightbox-0.5.css
 * @author Leandro Vieira Pinho - http://leandrovieira.com
 * @version 0.5
 * @date April 11, 2008
 * @category jQuery plugin
 * @copyright (c) 2008 Leandro Vieira Pinho (leandrovieira.com)
 * @license CC Attribution-No Derivative Works 2.5 Brazil - http://creativecommons.org/licenses/by-nd/2.5/br/deed.en_US
 * @example Visit http://leandrovieira.com/projects/jquery/lightbox/ for more informations about this jQuery plugin
 */
#jquery-overlay {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 90;
	width: 100%;
	height: 500px;
}
#jquery-lightbox {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 100;
	text-align: center;
	line-height: 0;
}
#jquery-lightbox a img { border: none; }
#lightbox-container-image-box {
	position: relative;
	background-color: #fff;
	width: 250px;
	height: 250px;
	margin: 0 auto;
}
#lightbox-container-image { padding: 10px; }
#lightbox-loading {
	position: absolute;
	top: 40%;
	left: 0%;
	height: 25%;
	width: 100%;
	text-align: center;
	line-height: 0;
}
#lightbox-nav {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	z-index: 10;
}
#lightbox-container-image-box > #lightbox-nav { left: 0; }
#lightbox-nav a { outline: none;}
#lightbox-nav-btnPrev, #lightbox-nav-btnNext {
	width: 49%;
	height: 100%;
	zoom: 1;
	display: block;
}
#lightbox-nav-btnPrev {
	left: 0;
	float: left;
}
#lightbox-nav-btnNext {
	right: 0;
	float: right;
}
#lightbox-container-image-data-box {
	font: 10px Verdana, Helvetica, sans-serif;
	background-color: #fff;
	margin: 0 auto;
	line-height: 1.4em;
	overflow: auto;
	width: 100%;
	padding: 0 10px 0;
}
#lightbox-container-image-data {
	padding: 0 10px;
	color: #666;
}
#lightbox-container-image-data #lightbox-image-details {
	width: 70%;
	float: left;
	text-align: left;
}
#lightbox-image-details-caption { font-weight: bold; }
#lightbox-image-details-currentNumber {
	display: block;
	clear: left;
	padding-bottom: 1.0em;
}
#lightbox-secNav-btnClose {
	width: 66px;
	float: right;
	padding-bottom: 0.7em;
}

table.transparent,
table.transparent tr,
table.transparent td,
table.transparent th {
	border:0;
	background-color:transparent;
}

/* ------------------ twitter_div ------------------ */
div.feed-widget .main-container{
	position:relative;
}

div.feed-widget ul.feed-widget-list {
	font-size:0.9em;
}

div.feed-widget ul.feed-widget-list a {
	font-weight:bold;
}

div.feed-widget .widget-navigation-down {
	height: 16px;
	font-size: 14px;
	line-height: 16px;
	padding:4px 0;
}

div.feed-widget .main-container {
	min-height:1px;
}

div.feed-widget .utility {
	margin: -16px -16px 20px -16px;
}

div.feed-widget .utility a {
	background-color:#eeeef0;
	float:right;
	display:block;
	text-align:center;
	border: 1px solid #bbb;
	color:#888;
	display: block;
	padding:2px;
	margin:2px;
}

div.feed-widget .utility a:hover {
	background-color:#eeeee0
}

.dom_for_js {
	display:none;
}
