@charset "Shift_JIS";
/* 三宅龍太郎 (c)2002 */

/* (2021-08-17) 長さ px を em に變更
                畫像をレスポンシブ對應
                a:focus を追加         */
/* (2023-05-16) モバイル用メディアクエリ追加 */

	html {
		margin: 0;
		padding: 0;
		width: 100%;
		font-size: 16px;
	}
	body {
		margin: 0 0 48px;
		padding: 0;
		width: auto;
		color: #333;
		/* background: #fff url('./image/umi3.png') repeat-x top left; */
		background: #fff url('../../../../../image/wall/sora02.png') repeat-x top left;
		font-family: sans-serif;
		/* 追加 */
		font-family: 'Hiragino Kaku Gothic ProN', 'BIZ UDPGothic', sans-serif;
		/* 遅延読込み */
		content-visibility: auto;
		/* contain-intrinsic-size: 500px; ←2024-10-31時点ではエラー */
	}

	h1, h2, h3, h4, p, address, ul, dl, li, table {
		font-family: sans-serif;
		/* 追加 */
		font-family: 'Hiragino Kaku Gothic ProN', 'BIZ UDPGothic', sans-serif;
	}
	h1 {
		margin-top: 1.8em;
		margin-bottom: 0.8em;
		font-size: 1.6em;
		text-shadow: 1px 1px 0 #fff;	/* 追加 */
	}
	h2 {
		margin-top: 0;
		font-size: 1.4em;
		color: #369;
		text-shadow: 1px 1px 0 #fff;	/* 追加 */
	}
	h3 {
		margin: 1.5em auto 1.0em;
		font-size: 1.4em;
		/* background: url('./image/ribbon01.png') no-repeat 50% 50%/320px 35px; */
		background: url('../../../../../image/wall/ribbon01.png') no-repeat 50% 50%/320px 35px;
		text-align: center;
		text-shadow: 1px 1px 0 #fff;	/* 追加 */
	}
	h4 {
		font-size: 1.2em;
		text-align: center;
	}
	h5 {
		font-size: 1.1em;
	}

	#noJs {
		margin: 0;
		padding: 0.1em .5em;
		position: absolute;
		top: 0.9em;
		right: 1.0em;
		font-size: 0.9em;
		color: #c33;
		background-color: #fff;
		border: 1px solid #99c;
		z-index: 999;
	}

	#NAVI {
		margin: 0;
		padding: 0;
		list-style: none inside;
		position: absolute;
		top: 0.9em;
		right: 1.0em;
	}
	#NAVI ol {
		margin: 0;
		padding: 0 0.125em;;
		list-style: none inside none;
	}

	#NAVI li {
		margin: 0;
		padding: 0;
		width: 8.75em;
		float: right;
		font-size: 1.0em;
		line-height: 1.6;
		text-align: center;
		border: 1px solid #99c;
		background-color: #ffc;
	}
	#NAVI li.top {
		margin-right: 0.1875em;
		width: 6.9em;
	}
	#NAVI li a {
		display: block;
	}
	#NAVI li a:hover {
		background-color: #fcc;
		text-decoration: none;
	}

	#NAVI ol {
		display: none;	/* 初期状態でメニューは閉じている */
		margin: 0;
		padding: 0;
	}
	#NAVI ol li {
		margin: 0 0.125em 0.125em 0;
		width: 8.45em;
		background-color: #cff;
	}
	#NAVI ol li a {
		font-weight: bold;
	}
	#NAVI ol li.so {
		background-color: transparent;
		border: 0 none;
	}

	table {
		margin: 0 auto 0.5em;
		padding: 0;
		border: 0 none;
		border-spacing: 0;
		border-collapse: collapse;
	}
	table caption {
		margin: 0 auto;
		padding: 0;
		font-size: 1.1rem;	/* rem 追加 */
		font-weight: bold;
		color: #69c;
	}
	table tbody tr {
		margin: 0;
		padding: 0;
	}
	table tbody td {
		padding: 4px;
		font-size: .9rem;	/* rem 追加 */
		vertical-align: top;
		text-align: center;
	}
	table tfoot td {
		font-size: .9rem;	/* rem 追加 */
	}
	p, ul, dl, blockquote {
		margin: 0.5em 8%;
		text-align: left;
		line-height: 1.7;
	}
	blockquote p {
		margin: .5em 0;
	}
	dd ul, dd blockquote, li ul {
		margin: 0;
	}
	dl {
		margin: 0 8%;
		border: 1px solid;
		border-color: #ccc #999 #999 #ccc;
	}
	dl dt {
		padding: 0 0.5em;
		font-weight: bold;
		line-height: 1.8;
		background-color: #fcc;
	}
	blockquote {
		margin: 0;
	}
	hr {
		margin-top: 1em;
		/* 追加 */
		border-width: .0625em 0 0;
		border-style: solid;
		border-color: #000;
		height: .0625em;
	}
	hr.pb {
		margin-top: 1.5em;
		margin-bottom: 1.0em;
		width: 84%;
		height: 1px;
		color: #888;
	}
	address {
		margin: 0;
		padding: 0;
		line-height: 1.2;
	}

	a {
		text-decoration: none;
	}
	a:hover {
		text-decoration: underline;
		color: #c33;
	}
	/* 追加 */
	a[href$='.jpg'] {
		display: inline-block;
	}
	a:focus {
		outline: 3px solid #55b5fb;
	}
	img {
		display: inline-block;
		margin: 0;
		padding: 0;
		max-width: 100%;
		height: auto;
		position: relative;
		vertical-align: bottom;
		border: 1px solid;
		border-color: #ccc #999 #999 #ccc;
	}
	textarea {
		font-size: 1.0em;
	}
	strong, em {
		font-style: normal;
		font-weight: bold;
	}
	small {
		font-size: .8em;
	}

	.center {
		text-align: center;
	}
	.right {
		margin: 0 8%;
		text-align: right;
		line-height: 1.8;
		list-style: inside;
	}
	.fleft {
		position: relative;
		float: left;
		margin: 0 1.0em 0 8%;
	}
	.clsF, br {
		display: inline-block;
		margin: 0;
		line-height: 0;
		clear: both;
	}
	.del {
		display: none;
	}
	/*
	.box {
		margin: 1.0em 8%;
		text-align: left;
		line-height: 1.8;
	}
	*/
	.box-s {
		margin: 1.0em 8%;
		padding: 0.4em 0.8em;
		text-align: left;
		font-size: 0.9em;
		line-height: 1.6;
		border: 1px solid;
		border-color: #ccc #999 #999 #ccc;
	}
	.colR {
		color: #c33;
	}
	.cat {
		background: url('./image/neko.gif') no-repeat 90% 0;
	}
	#end {
		margin: 2em 5% 0;
	}
	#end p {
		margin: .5em 0;
		text-align: right;
	}
	#end a {
		display: inline-block;
		margin: 0 0 0 0.8em;
	}
	/* 追加 */
	.footer :is(address, p) {
		margin: 0 3%;
		text-align: right;
		font-size: .9em;
	}
	:is(#end, .footer) img {
		border: 0 none;
	}

@media print {

	#NAVI {
		display: none;
		height: 0;
	}

}

@media (max-width: 480px) {

	#NAVI {
		display: none;
		height: 0;
	}

}
