@charset "utf-8";

/********* HTML再定義 ***********************************************/

body {
font-size: 100%;
}

h1 {
margin: 0;
}

h2 {
font-family: var(--font-c-title);
font-size: 150%;
padding: 0 1em;
margin-top: 30px;
}

.hidden {
display:none;
}

	a {
		text-decoration: none;		/* リンク文字の下線を消す */
	}
	a:link {
		text-decoration: none;		/* リンク文字の下線を消す */
		color: var(--color-a-link);		/* 未訪問リンク */
	}
	a:visited {
		text-decoration: none;		/* リンク文字の下線を消す */
		color: var(--color-a-visited);	/* 既訪問リンク */
	 }
	a:hover { color: var(--color-a-hover); }	/* マウスが載ったとき */

/********* 全体 *****************************************************/

div#container {
	width: 95%;
	margin: 0 auto;
	padding-top: 40px;
}

/********* ヘッダー *************************************************/

div#header {
	clear: both;
}
div#header h1 {
	line-height: 1.0;
	margin: 0;
}
div#header h1 a:link, div#header h1 a:visited {
	color: #222222;
	text-decoration: none;
}
div#header h1 a:active, div#header h1 a:hover {
	color: #777777;
	text-decoration: none;
}

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

div#footer {
	clear: both;
}
div#footer address {
	padding-top: 10px;
}

/********* メニュー *************************************************/

div#menu {
	background-color: #666666;
}
div#menu h2 {
	display: none;
}
div#menu ul {
	margin: 0;
	padding: 5px 10px;
}
div#menu ul li {
	display: inline;
	list-style: none;
	margin-right: 10px;
}

div#menu a:link, div#menu a:visited {
	color: #FFFFFF;
	text-decoration: none;
}
div#menu a:active, div#menu a:hover {
	color: #FFFFFF;
	text-decoration: underline;
}

/********* 内容 *****************************************************/

div#content {
	max-width: 1200px;
	text-align: center;
}

/********* エントリー ***********************************************/

div#entry h2 {
	display: none;
}
div#entry div.entry {
	width: 550px;
	margin: 15px 0;
	border: 1px solid #999999;
}
div#entry div.entry h3 {
	margin: 0;
	padding: 10px 10px 0 10px;
}
div#entry div.entry h3 a:link, div#entry div.entry h3 a:visited {
	color: #222222;
	text-decoration: none;
}
div#entry div.entry h3 a:active, div#entry div.entry h3 a:hover {
	color: #777777;
	text-decoration: none;
}
div#entry div.entry div.content {
	margin: 0 10px;
}
div#entry div.entry ul.information {
	margin: 2px 10px 15px 10px;
	padding-top: 2px;
	border-top: 1px solid #CCCCCC;
	font-size: 90%;
}
div#entry div.entry ul.information li {
	display: inline;
	margin-right: 5px;
}
div#entry div.entry ul.link {
	margin: 0;
	padding: 10px;
	text-align: right;
}
div#entry div.entry ul.link li {
	display: inline;
	margin-left: 5px;
}

div#entry div#entry_link h3 {
	display: none;
}
div#entry div#entry_link ul.entry_link {
	margin: 0;
}
div#entry div#entry_link ul.entry_link li {
	display: inline;
	list-style: none;
	margin-right: 10px;
}
div#entry div#entry_link ul.entry_link li.home {
	padding-right: 10px;
	padding-left: 10px;
	border-right: 1px solid #999999;
	border-left: 1px solid #999999;
}
div#entry div#entry_link ul.entry_link li.previous:before {
	content: "<< ";
}
div#entry div#entry_link ul.entry_link li.next:after {
	content: " >>";
}

/********* ページ移動 ***********************************************/

div#page h2 {
	display: none;
}
div#page ul.order {
	margin: 10px 0;
}
div#page ul.order li {
	display: inline;
	list-style: none;
	margin-right: 10px;
}
div#page ul.direct {
	margin: 10px 0;
	text-align: right;
}
div#page ul.direct li {
	display: inline;
	list-style: none;
	margin-left: 10px;
}

/********* コメント *************************************************/

div#comment div.comment ul.information {
	margin: 15px 0 0 0;
	text-align: right;
}
div#comment div.comment ul.information li {
	display: inline;
	margin-left: 5px;
}

/********* トラックバック *******************************************/

div#trackback div.trackback ul.information {
	margin: 15px 0 0 0;
	text-align: right;
}
div#trackback div.trackback ul.information li {
	display: inline;
	margin-left: 5px;
}

/********* インフォメーション ***************************************/

div#information {
	margin-bottom: 30px;
}
div#information ul.continue {
	margin: 0;
	text-align: right;
}
div#information ul.continue li {
	display: inline;
}

/********* ユーティリティ *******************************************/

div#utility {
	float: left;
	width: 200px;
	margin-left: 10px;
	margin-bottom: 20px;
}
div#utility h2 {
	display: none;
}
div#utility div.utility {
	margin: 15px 0;
	padding-bottom: 10px;
	background-color: #EEEEEE;
}
div#utility div.utility h3 {
	padding: 10px 10px 0 10px;
}
div#utility div.utility div.content {
	margin: 0 10px;
}
div#utility div.utility ul {
	margin-right: 0;
}
div#utility div.utility ul li ul {
	margin-top: 0;
	margin-bottom: 0;
}
div#utility div.utility form {
	margin: 0;
}
div#utility div.utility form dl {
	margin: 0;
}
div#utility div.utility form dl dt {
	display: none;
}
div#utility div.utility form dl dd {
	margin: 0;
}
div#utility div.utility form dl dd input {
	width: 170px;
}
div#utility div.utility form p {
	margin: 0 0 10px 0;
}

div#utility div.utility table.calender {
	margin: 0;
	border: 0px solid #000000;
}
div#utility div.utility table.calender tr th, table.calender tr td {
	padding: 5px;
	border: 0px solid #000000;
	background-color: #EEEEEE;
	font-weight: normal;
	text-align: center;
}
div#utility div.utility table.calender tr td span.day {
	color: #222222;
}
div#utility div.utility table.calender tr td span.satday {
	color: #2222CC;
}
div#utility div.utility table.calender tr td span.sunday {
	color: #CC2222;
}
div#utility div.utility ul.calender {
	margin: 10px 0;
}
div#utility div.utility ul.calender li {
	display: inline;
	list-style: none;
	margin-right: 10px;
}

div#utility div.utility ul.gallery {
	margin: 0;
	padding: 0;
}
div#utility div.utility ul.gallery li {
	list-style: none;
}
div#utility div.utility ul.gallery li img {
	max-width: 180px;
	max-height: 130px;
	margin-bottom: 5px;
}

/********* ギャラリー ***********************************************/

div#gallery {
	overflow: hidden;
}
div#gallery div.gallery {
	float: left;
	margin-right: 12px;
	margin-bottom: 20px;
}
div#gallery div.gallery p.picture {
	overflow: hidden;
	width: 140px;
	height: 100px;
	margin: 0;
}
div#gallery div.gallery p.picture a {
	color: #FFFFFF;
	text-decoration: none;
}
div#gallery div.gallery p.picture a img {
	min-width: 140px;
	min-height: 100px;
}
div#gallery div.gallery p.picture a span.empty {
	display: block;
	line-height: 100px;
	width: 140px;
	height: 100px;
	background-color: #AAAAAA;
	text-align: center;
}
div#gallery div.gallery p.comment {
	overflow: hidden;
	width: 140px;
	margin: 3px 0 0;
	font-size: 80%;
	text-align: center;
	text-overflow: ellipsis;
	white-space: nowrap;
}

div#gallery ul {
	margin: 10px 0 20px 0;
}
div#gallery ul li {
	display: inline;
}
div#gallery ul li img {
	margin: 0 2px 10px 0;
}

/********* 個別指定 *************************************************/

div#page_link ul.page_link {
	margin: 0 0 20px 0;
}
div#page_link ul.page_link li {
	display: inline;
	list-style: none;
	margin-right: 10px;
}
div#page_link ul.page_link li.home {
	padding-right: 10px;
	padding-left: 10px;
	border-right: 1px solid #999999;
	border-left: 1px solid #999999;
}
div#page_link ul.page_link li.previous:before {
	content: "<< ";
}
div#page_link ul.page_link li.next:after {
	content: " >>";
}

ul.link {
	margin: 0;
	padding: 10px;
	text-align: right;
}
ul.link li {
	display: inline;
	margin-left: 5px;
}

/********* レスポンシブ *********************************************/

@media (min-width: 800px) {
	form textarea {
		width: 95%;
	}
	img {
		max-width : 100%;
		height: auto;
	}
	div#container {
	max-width: 1200px;
	margin-inline: auto;
	}
	div#content {
		width: 100%;
	}
}

/********* IE6用設定 ************************************************/

* html body {
	text-align: center;
}
* html div#container {
	width: 800px;
	text-align: left;
}
* html pre {
	width: 100%;
}
* html table tr th, * html table tr td {
	font-size: 80%;
}
	/* ---------------------- */
	/* ▼カード型リンクの装飾 */
	/* ---------------------- */
	.cardlink {
		display: inline-block;
		width: 100%;
		max-width: 500px;               /* 最大幅 (※横幅を制限したくない場合はこれを削除して下さい) */
		padding: 0 0.25em 0.5em 0;      /* 内側の余白量 */
		font-size: 0.9rem;              /* 文字サイズ */
		text-decoration: none;          /* リンク文字の下線を消す */
		vertical-align: middle;         /* 行内の上下方向では中央配置 */
	}

		/* ------------------------------------- */
		/* リンクカードの装飾(サイズS/L共通部分) */		/* ※後述の「サイズS用の追記」や「サイズL用の追記」と合わせて、1つのカードデザインになります。 */
		/* ------------------------------------- */
		/* カード外枠 */
		.cardlinkbox {
			border: 1px solid #ccc;    /* 枠線 */
			border-radius: 7px;        /* 角丸 */
			background-color: white;   /* 背景色 */
			display: flex;             /* 内部レイアウトのFlexbox化 */
		}
		/* (マウスが載ったとき) */
		.cardlinkbox:hover {
			background-color: var(--cardlink-bg-hover); /* 背景色 */
			border-color: ;        /* 枠線色 */
		}
			/* ▽リンクカード内の画像枠 (※読み込まれたog:imageは、この枠に《背景画像として》描画されます) */
			.cardlinkimage {
				background-image: linear-gradient(-30deg, #8a8, #e0f0e0);  /* プレースホルダ的な背景グラデーション(※og:imageの画像指定が読み込まれたら、この値は上書きされます) */
				background-size: cover;             /* 背景画像で枠を埋める */
				background-repeat: no-repeat;       /* 背景画像を繰り返さない */
			}
			/* ▽リンクカード内のテキスト枠 */
			.cardlinktextbox {
				display: flex;				/* Flexbox化 */
				flex-direction: column;		/* 子要素を縦方向に並べる */
				padding: 0.5em 1em;			/* 内側の余白量 */
}
				/* ▽リンクカードのテキスト枠内の3要素共通 */
				.cardlinktitle,
				.cardlinkdescription,
				.cardlinkurl {
					/* ↓表示行数を制限するための準備 (※システム側では文字数は制限せずに「記述されている全文字」をHTMLに出力しますので、表示分量を制限したい場合はCSSで制御する必要があります。) */
					display: -webkit-box;          /* -webkit-line-clampを使うために必要な記述1 ※A */
					-webkit-box-orient: vertical;  /* -webkit-line-clampを使うために必要な記述2 ※A */
					overflow: hidden;              /* 表示量を制限する場合に必須の記述 */
					/* ↓制限の仕様 */
					line-clamp: 1;                 /* 1行だけ見せる (将来的にはこれだけで実現可能かも) */
					-webkit-line-clamp: 1;         /* 1行だけ見せる (今のブラウザにはこちらが必要で、そのためには上記「※A」も必要) */
					text-overflow: ellipsis;       /* 省略記号(三点リーダー) */
				}
				/* リンクタイトル */
				.cardlinktitle {
					padding-bottom: 0.25em;        /* 内側下端の余白量 */
				}
				/* リンク概要文 */
				.cardlinkdescription {
					line-height:1.3;               /* 行の高さ */
					color:#555;                    /* 文字色 */
					line-clamp: 2;                 /* (既存指定の上書き) 最大2行まで見せる */
					-webkit-line-clamp: 2;         /* (既存指定の上書き) 最大2行まで見せる */
				}
				/* リンクドメイン */
				.cardlinkurl {
					color: #999;                   /* 文字色 */
				}

		/* ----------------------------------- */
		/* リンクカードの装飾(サイズL用の追記) */		/* 前述の「サイズS/L共通部分」と合わせて、1つのカードデザインになります。 */
		/* ----------------------------------- */
		.cardsize-L {
			position: relative;
			overflow: hidden;
					}
			/* ▽リンクカード内の画像枠 */
			.cardsize-L .cardlinkimage {
				aspect-ratio: 1.91 / 1;     /* 画像枠の縦横比を指定= (横)1.91：(縦)1 */
				width: 100%;                /* 横幅は枠最大に拡げる */
				height: auto;               /* 高さは自動計算 */
				border-radius: 6px; /* 上側だけ角丸 */
			}
			/* ▽リンクカード内のテキスト枠 */
			.cardsize-L .cardlinktextbox {
				  background: #000;
				  opacity: 0.7;
				display: flex;
				flex-direction: column;
				padding: 0.5em;
				position: absolute;
				top: 100%;
				left: 0%;
				transform: translate(0%,-100%);
			}
				/* ▽リンクカードのテキスト枠内の3要素 */
				.cardsize-L .cardlinktitle { font-weight: bold; }        /* 太字 */
				.cardsize-L .cardlinkdescription { display: none; min-height: 2.5em; }  /* 内容量が少ない場合でも一定の高さを確保 */
				.cardsize-L .cardlinkurl { display: none;
					border-top: 1px solid #ddd;  /* 上側の枠線 */
					margin-top:0.5em;            /* 上側の枠線より上の余白量 */
					padding-top:0.5em;           /* 上側の枠線より下の余白量 */
					font-size:0.75rem;           /* 文字サイズ(小さめ) */
				}
