#PageWrapper{
	width: 900px;
	margin: 36px auto;

	display: grid;
	grid-template-columns: 628px 1fr;
	column-gap: 18px;
}
#PageBody{
	/* base element */
	h1{
		border: solid 1px #BFBFBF;
		margin: 0 0 18px;
	}
	h2{
		font-size: var(--font-m);
		color: #333333;

		margin: 1rem 0 1rem;
		border-width: 0 0 0 9px;
		border-color: #663300;
		border-style: solid;
		border-radius: 6px;
		padding-left: 9px;
	}
	h3{
		font-size: var(--font-s);
		color: #442200;

		margin: 1rem 0 0.5rem;
	}
	p{
		font-size: var(--font-s);
		line-height: 1.4;
		margin: 1rem 0;
	}
	dt,dd{
		font-size: var(--font-s);
		line-height: 1.4;
	}
	ul{
		font-size: var(--font-s);
		margin: 0;
		padding-left: 1rem;
	}
	ol{
		font-size: var(--font-s);
		margin: 0;
		padding-left: 1rem;
	}
	li{
		margin: 0.25rem 0;
	}
	table{
		width: 100%;
		margin: 1.0rem 0;
		caption{
			font-size: var(--font-ms);
			padding: 0.3rem;
		}
		td,th{
			font-size: var(--font-s);
			border: solid 1px #ccc;
			padding: 0.1rem 0.2rem;
		}
	}

	/* sibling direction
	--------------------------- */
	.flex + ul{
		list-style-type: none;
		display: flex;
		flex-wrap: wrap;
		margin: 0;
		padding: 0;

		li{
			background-image: url(/theme/image/ctr_circle.png);
			background-repeat: no-repeat;
			background-position: 5px center;
			padding-left: 1rem;
			padding-right: 0.5rem;
		}
	}
	
	.noborder + table th,
	.noborder + table td{
		border: none;
	}
	.center + table td,
	.center + ul{
		text-align: center;
		img{ display: inline; }
	}

	/* direct direction
	--------------------------- */
	.empty{
		display: none;
	}
	.dcenter{
		text-align: center;
		img{ display: inline; }
	}
	.dcenter{
		td, th{
			text-align: center;
		}
	}

	.page_cols{
		display: grid;
		column-gap: 1.0rem;
	}
	.page_cols.col2{ grid-template-columns: repeat(2, 1fr); }
	.page_cols.col3{ grid-template-columns: repeat(3, 1fr); }

	/* Page: Showroom
	--------------------------- */
	.showroom_tile + ul{
		list-style-type: none;
		margin: 0 0 2.0rem;
		border: solid 1px #ccc;
		padding: 0;

		display: grid;
		grid-template-columns: repeat(3, 1fr);

		li{
			margin: 0;
			padding: 0;
		}
	}
	.showroom_shops{
		h3{
			text-align: center;
		}
		dl{
			display: grid;
			grid-template-columns: 2.0rem auto;
			box-sizing: border-box;

			dt{
				font-weight: bold;
				border-right: solid 1px #ccc;
				border-bottom: solid 1px #ccc;
				padding: 0.3rem 0;
			}
			dd{
				border-bottom: solid 1px #ccc;
				padding: 0.3rem 0.5rem;
			}
			dt:last-of-type{ border-bottom: none; }
			dd:last-of-type{ border-bottom: none; }
		}
	}

	.zisseki_tile + ul{
		list-style-type: none;
		display: grid;
		grid-template-columns: 1fr 1fr 1fr;
		column-gap: 0.5rem;
		margin: 0;
		padding: 0;

		ul{
			list-style-type: none;
			margin: 0;
			padding: 0;
		}
		ul li:nth-of-type(1){
			background: linear-gradient(rgba(156,145,144,0.7) 0%, rgba(156,145,144,0.9) 50%);
			text-align: center;
			color: white;
			padding: 0.3rem;
		}
		ul li:nth-of-type(3){
			background-color: #eee;
			text-align: center;
			padding: 0.3rem;
		}
	}
}

