/* body {

	margin: 0px 0px 20px 0px;

		background-color: #CCCCCC;

        	text-align: center;

	}
*/


a {

	text-decoration: underline;

}



a:link {

	color: #333333;

}



a:visited {

	color: #333333;

}



a:active {

	color: #333333;

}



a:hover {

	color: #FF6600;

}



h2,
h3 {

	margin: 0px;

	padding: 0px;

	font-weight: normal;

}



#blog_container {

	float: right;

	line-height: 140%;

	margin-right: auto;

	margin-left: auto;

	text-align: left;

	padding: 0px;

	width: 700px;

	background-color: #FFFFFF;

}



#banner {

	font-family: Verdana, Arial, sans-serif;

	color: #FFFFFF;

	background-color: #99ccff;

	text-align: left;

	padding: 10px;

	height: 80px;

}



#banner-img {

	display: none;

}



#banner a {

	color: #FFFFFF;

	text-decoration: none;

}



#banner h1 {

	margin: 0px;
	padding: 0px;
	font-weight: normal;
	font-size: xx-large;
	border-bottom: none;

}



#banner h2 {

	font-size: medium;

}



#banner h3 {

	font-size: small;

}



#center {

	float: left;

	width: 500px;

	overflow: hidden;

}



#right {

	float: left;

	width: 300px;

	background-color: #FFFFFF;

	overflow: hidden;

	margin: 20px 0px 0px 20px;
}



.blog_content {

	padding: 15px 15px 5px 15px;
	/*
	background-color: #FFFFFF;
*/
	color: #333333;

	font-family: Verdana, Arial, sans-serif;

}


.blog_content blockquote {

	line-height: 150%;

}



.blog_content li {
	line-height: 150%;
	text-align: left;
}



.blog_content h2 {
	color: #000000;
	font-family: Verdana, Arial, sans-serif;
	font-size: small;
	text-align: left;
	font-weight: bold;
	margin-bottom: 10px;
}



.blog_content h3 {
	color: #111111;
	font-family: Verdana, Arial, sans-serif;
	font-size: medium;
	text-align: left;
	font-weight: bold;
	margin-bottom: 10px;
}



.blog_content p {
	color: #333333;
	font-family: Verdana, Arial, sans-serif;
	font-size: small;
	font-weight: normal;
	line-height: 150%;
	text-align: left;
	margin-bottom: 10px;
}


.blog_content p.posted {
	color: #999999;
	font-family: Verdana, Arial, sans-serif;
	font-size: x-small;
	border-top-style: solid;
	border-top-color: #999999;
	border-top-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #999999;
	border-bottom-width: 1px;
	text-align: left;
	margin-bottom: 25px;
	line-height: normal;
	padding-top: 3px;
	padding-right: 3px;
	padding-bottom: 3px;
	padding-left: 3px;
	clear: both;
}



.sidebar {

	padding-top: 10px;
	padding-left: 10px;
	padding-right: 10px;
	padding-bottom: 10px;

}



#calendar {
	line-height: 140%;
	color: #666666;
	font-family: Verdana, Arial, sans-serif;
	font-size: small;
	padding-top: 2px;
	padding-right: 6px;
	padding-bottom: 2px;
	padding-left: 2px;
	text-align: center;
	margin-bottom: 30px;
	letter-spacing: 0.1em;
}



#calendar table {

	/*	padding: 2px;
*/
	border-collapse: collapse;

	border: 0px;

	width: 96%;

}



#calendar caption {
	color: #666666;
	font-family: Verdana, Arial, sans-serif;
	font-size: small;
	text-align: center;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 0.2em;
}



#calendar th {

	text-align: center;

	font-weight: normal;

}



#calendar td {
	text-align: center;
}



.sidebar h2 {

	color: #666666;

	font-family: Verdana, Arial, sans-serif;

	font-size: x-small;



	text-align: center;

	font-weight: bold;



	text-transform: uppercase;



	letter-spacing: .3em;

}



.sidebar ul {

	padding-left: 10px;

	margin: 0px;

	margin-bottom: 30px;

}



.sidebar li {

	color: #666666;

	font-family: Verdana, Arial, sans-serif;

	font-size: x-small;

	text-align: left;

	line-height: 150%;

	margin-top: 10px;

	list-style-type: none;

}



.files {

	float: right;

	margin-bottom: 5px;

	margin-left: 10px;

}



.link-note {

	font-family: Verdana, Arial, sans-serif;

	font-size: x-small;

	line-height: 150%;

	text-align: left;

	/*
	padding: 2px;

	margin-bottom: 15px;
*/

}



#powered {

	font-family: Verdana, Arial, sans-serif;

	font-size: x-small;

	line-height: 150%;

	text-align: left;

	color: #666666;

	margin-top: 50px;

}

#blog_foot {
	clear: both;
	text-align: center;
	font-size: medium;
	background: #fff;
	width: 1080px;
	padding: 10px 10px 10px 10px;
	margin-bottom: 20px;
	/*
	border-top: 1px solid #999;
	border-left: 1px solid #999;
	border-right: 1px solid #999;
	border-bottom: 1px solid #999;
*/
}

/* トップメニュー・ボタンの装飾 */
.blog_topmenu {
	position: relative;
	display: inline-block;
	padding-top: 15px;
	margin-bottom: 15px;
}

.blog_topmenu img {
	display: block;
	max-width: 100%;
}

.blog_menu {
	position: absolute;
	top: 30px;
	left: 20px;
}

.blog_menu td {
	border: 0px;
	padding: 10px;
}

/* ボタン本体 */
a.blog_menu_btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 128px;
	height: 90px;
	color: #FFFFFF !important;
	text-decoration: none !important;
	font-size: 36px;
	font-weight: lighter;
	border-radius: 20px;
	background-color: rgba(38, 188, 38, 0.4);
	/* 半透明の緑 */
	border: 3px dashed rgba(150, 255, 150, 0.1);
	/* 薄い緑の破線 */
	transition: all 0.3s ease;
	text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.9);
}

a.wide-btn {
	width: 230px;
}

/* ホバー時 */
a.blog_menu_btn:hover {
	background-color: rgba(0, 150, 0, 0.8) !important;
	/* 濃い緑に */
	border: 3px dashed rgb(85, 255, 85) !important;
	/* 明るい緑の破線 */
	transform: scale(1.05);
	/* 少し大きく */
}

/* カテゴリーアーカイブのレイアウト */
.cat-archive-list {
	margin-top: 10px;
	margin-bottom: 10px;
	text-align: left;
}

.cat-year-group {
	margin-bottom: 30px;
}

.cat-year-title {
	font-size: 1.2em;
	font-weight: bold;
	color: #0288d1;
	border-bottom: 2px solid #0288d1;
	margin-bottom: 15px;
	padding-bottom: 5px;
	line-height: normal;
}

.cat-month-links {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	padding-left: 10px;
	padding-right: 10px;
	margin-bottom: 10px;
}

.cat-month-item {
	font-size: 1.1em;
	width: 120px;
}

.cat-month-item a {
	text-decoration: none;
	color: #333;
	padding: 5px 20px;
	background: #f5f5f5;
	border-radius: 4px;
	border: 1px solid #ddd;
	transition: background 0.2s;
}

.cat-month-item a:hover {
	background: #e0e0e0;
	color: #ff6600;
}

/* アーカイブ一覧用のスタイル追加 */
.year-nav {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 20px;
	margin-bottom: 10px;
	padding: 10px;
	background: #f8f9fa;
	border-radius: 8px;
	font-weight: bold;
}

.year-nav a {
	text-decoration: none;
	color: #0288d1;
}

.year-archive-list {
	margin-top: 20px;
}

.year-month-row {
	display: flex;
	align-items: center;
	padding: 10px;
	border-bottom: 1px solid #eee;
}

.month-label {
	font-weight: bold;
	min-width: 60px;
	font-size: 1.1em;
}

.period-links {
	display: flex;
	gap: 10px;
}

.archive-btn,
.year-btn {
	display: inline-block;
	padding: 5px 15px;
	background: #f5f5f5;
	border: 1px solid #ddd;
	border-radius: 4px;
	text-decoration: none;
	color: #333;
	transition: all 0.2s;
}

.archive-btn:hover,
.year-btn:hover {
	background: #0288d1;
	color: #fff;
	border-color: #0277bd;
}

.all-years-list {
	margin-top: 10px;
	margin-bottom: 10px;
	text-align: left;
}

.archive-btn {
	width: 90px;
	height: 30px;
	font-size: 1.3em;
}

.archive-month-row {
	display: flex;
	text-align: center;
	margin-left: 100px;
	padding: 5px;
}

.archive-disabled-btn {
	width: 90px;
	height: 30px;
	font-size: 1.3em;
	background: #ccc;
	color: #fff;
	cursor: default;
	border-color: #ccc;
}

.year-btn {
	width: 90px;
	font-size: 1.3em;
	margin-top: 10px;
	margin-left: 10px;
	padding: 10px 20px;
	text-align: center;
}

.article-meta {
	font-size: 0.85em;
	color: #777;
	text-align: left;
	margin-bottom: 5px;
}

.period-article-list {
	padding: 10px 20px;
}

.period-article-item {
	margin-bottom: 25px;
	padding-bottom: 15px;
	border-bottom: 1px dotted #ccc;
	text-align: left;
}

.period-article-item h3 {
	font-size: 1.2em;
	font-weight: bold;
	margin: 5px 0 10px 0;
}

.period-article-item h3 a {
	text-decoration: none;
	color: #0288d1;
}

.period-article-item h3 a:hover {
	color: #ff6600;
}

.period-article-item .article-body {
	font-size: 0.95em;
	color: #444;
	line-height: 1.6;
	margin-left: 10px;
}

/* Photo Badge (Sample A) */
.photo-badge {
	display: inline-flex;
	align-items: center;
	padding: 2px 8px;
	font-size: 11px;
	font-weight: bold;
	border-radius: 4px;
	margin-right: 6px;
	vertical-align: middle;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	background: #004a99;
	color: #ffffff;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

/* RSS Badge (Orange) */
.rss-badge {
	display: inline-flex;
	align-items: center;
	padding: 2px 8px;
	font-size: 11px;
	font-weight: bold;
	border-radius: 4px;
	vertical-align: middle;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	background: #f60;
	/* RSSの標準色であるオレンジ */
	color: #ffffff;
	text-decoration: none;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.rss-badge:hover {
	background: #ff8800;
	color: #fff;
}

.link-note {
	margin-top: 15px;
	padding-top: 10px;
	border-top: 1px dashed #ddd;
	text-align: center;
}

/* カテゴリーアーカイブ全期間リンク用スタイル (button化) */
.category-year-group {
	margin-bottom: 30px;
}

.year-section {
	margin-bottom: 20px;
}

.year-title {
	font-size: 1.2em;
	font-weight: bold;
	color: #0288d1;
	border-bottom: 2px solid #0288d1;
	margin-bottom: 15px;
	padding-bottom: 5px;
}

.category-month-list {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	padding-left: 0;
	margin: 0;
	list-style: none;
	/* remove bullets */
}

.category-month-list li {
	margin-left: 3px;
	width: 110px;
}

.category-month-list a {
	display: inline-flex;
	align-items: center;
	text-decoration: none;
	color: #333;
	padding: 5px 15px;
	background: #f5f5f5;
	border-radius: 4px;
	border: 1px solid #ddd;
	transition: all 0.2s;
	font-size: 1em;
}

.category-month-list a:hover {
	background: #0288d1;
	color: #fff;
	border-color: #0277bd;
}

.category-month-list .count {
	font-size: 0.85em;
	color: #777;
	margin-left: 8px;
	transition: color 0.2s ease;
}

.category-month-list a:hover .count {
	color: #e1f5fe;
}

.archive-all-list {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	padding-left: 16px;
	padding-bottom: 16px;
	margin: 0;
	list-style: none;
}

.archive-all-list li {
	margin-left: 10px;
	border-bottom: 5px;
	width: 160px;
}

.archive-all-list a {
	display: inline-flex;
	align-items: center;
	text-decoration: none;
	color: #333;
	padding: 5px 15px;
	background: #f5f5f5;
	border-radius: 4px;
	border: 1px solid #ddd;
	transition: all 0.2s;
	font-size: 1em;
}

.archive-all-list a:hover {
	background: #0288d1;
	color: #fff;
	border-color: #0277bd;
}

.archive-all-list .count {
	font-size: 0.85em;
	color: #777;
	margin-left: 8px;
	transition: color 0.2s ease;
}

.archive-all-list a:hover .count {
	color: #e1f5fe;
}

/* アーカイブ画面の上部ヘッダー（タイトルと月間ナビなど） */
.archive-header {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 15px;
	margin-bottom: 20px;
	padding-top: 16px;
}

.archive-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	justify-content: center;
}

.archive-title {
	margin: 0;
}

.month-navigation a {
	display: inline-block;
	padding: 5px 15px;
	background: #f5f5f5;
	border: 1px solid #ddd;
	border-radius: 4px;
	text-decoration: none;
	color: #333;
	transition: all 0.2s;
	font-size: 0.9em;
}

.month-navigation a:hover {
	background: #0288d1;
	color: #fff;
	border-color: #0277bd;
}

.category-month-list-container {
	padding-left: 16px;
	padding-bottom: 16px;
}

/* 記事リスト・カードのスタイル（アーカイブページ用） */
.articles-list {
	text-align: left;
	padding: 10px 20px;
}

.article-card {
	margin-bottom: 30px;
	padding-bottom: 20px;
	border-bottom: 1px dotted #ccc;
}

.article-date {
	font-size: 0.85em;
	color: #777;
	margin-bottom: 5px;
}

.article-card .article-title {
	font-size: 1.25em;
	font-weight: bold;
	margin: 5px 0 10px 0;
}

.article-card .article-title a {
	text-decoration: none;
	color: #0288d1;
}

.article-card .article-title a:hover {
	color: #ff6600;
}

.article-excerpt {
	font-size: 0.95em;
	color: #444;
	line-height: 1.6;
	margin-bottom: 10px;
}

.article-meta {
	font-size: 0.85em;
	color: #888;
}

.article-meta a {
	color: #0288d1;
}