@charset "utf-8";

/* -------- */
/* 全体属性 */
/* -------- */
	html {
		height: 100%;
	}

	body {
		min-height: 100%;
		display: flex;
		flex-direction: column;
		width: 1280px;
		margin: 5px auto;
		font-family: "Hiragino Kaku Gothic Pro", HiraKakuPro-W3, "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "MS P ゴシック", verdana,sans-serif;
		font-size: 12px;
		color: #666;
		line-height: 150%;
		letter-spacing: 1px;
		border: 1px solid #eee;
		border-radius: 10px;
	}

	/* リンク */
	a {
		color: #8080c0;
	}
	a:hover {
		text-decoration: underline;
		color: #ff8040;
	}

	select {
		height: 25px;
	}


	/* テーブル全体属性 */
		table {
			table-layout: fixed;
			width: 100%;
			border: 1px solid silver;
			margin-bottom: 20px;
		}
		th, td {
			border: 1px solid silver;
			padding: 5px;
		}
		caption {
			text-align: left;
			font-weight: bold;
			font-size: 14px;
			margin-bottom: 5px;
		}

	.center {
		text-align: center;
	}

	/* リスト */
	ul {
		margin: 0;
		padding: 0 0 0 5px;
	}
	li {
		list-style: none;
	}

	/* 文字色（赤） */
	.red {
		color: red;
	}
	.red-b {
		color: red;
		font-weight: bold;
	}

	/* 文字色（青） */
	.blue {
		color: blue;
	}
	.blue-b {
		color: blue;
		font-weight: bold;
	}

	/* 文字色（オレンジ） */
	.orange {
		color: orange;
	}

	/* 右寄せ、左寄せ */
	.float_r {
		float: right;
	}
	.float_l {
		float: left;
	}

	input[type="tel"] {
		height: 18px;
	}

	/* 強調する文字に黄色の背景色を着ける */
	.bgyellow {
		background-color: #ffff00;
	}

	.w100 {
		width: 100px;
	}
	.w150 {
		width: 150px;
	}
	.w200 {
		width: 200px;
	}

/* ----------- */
/*  ヘッダ部　 */
/* ----------- */
	div#container {
		position: relative;
		width: 100%;
		flex: 1;
	}


	ul#pankuzu {
		height: 30px;
		margin: 15px 0 0 15px;
	}

	ul#pankuzu li {
		float: left;
		margin: 3px 15px 0 0;
		background: url( "../images/pankuzu.png" ) 0px 2px no-repeat;
		padding-left: 17px;
	}
	p.caution {
		padding: 10px;
		border: 1px solid #666;
		border-radius: 5px;
	}

/* ----------- */
/*  メイン部　 */
/* ----------- */
	main {
		margin: 0 0 300px 0;
	}

	header {
		background-color: #faebd7 ;
		border-radius: 5px 5px 0 0;
		height: 95px;
		margin: 20px 0;
	}
	header img {
		position: absolute;
		top: 12px;
		float:left;
		margin-left: 10px;
	}

	/* H1タイトル */
	h1 {
		border-bottom: solid 3px skyblue;
		position: relative;
		font-size: 14px;
		text-align: right;
		margin: -20px 10px 0 10px;
		padding-top: 74px;
	}

	h1:after {
		position: absolute;
		content: " ";
		display: block;
		border-bottom: solid 3px #ffc778;
		bottom: -3px;
		width: 30%;
		float:left;
	}

	article {
		float: left;
		width: 860px;
		margin: 0 0 200px 30px;
	}

	section.map, section.car, section.kei {
		min-height: 450px;
	}
	section h2 {
		font-size: 20px;
		color: gray;
		letter-spacing: 0;
		border-bottom: 1px solid blue;
		background: url( "../images/car.png" ) 5px 10px no-repeat;
		margin: 40px 0 10px 0;
		padding: 10px 0 5px 40px;
		width: 98%;
		border-radius: 5px 5px 0 0;
	}

	section.map h2, section.map th, table.kankatsu th {
		background-color: #e3f0fb;
	}
	table.kankatsu th {
		width: 150px;
	}
	table.kankatsu th img {
		border-radius: 3px;
	}
	section.car h2, section.car th, table.car th {
		background-color: #dbebc4;
	}

	section.kei h2, section.kei th, table.kei th {
		background-color: #f0f0d0;
	}

	section.map p, section.car p, section.kei p {
		float: left;
		max-width: 50%;
		margin: 50px 0 0 30px;
	}

	section.map2 p, section.car2 p, section.kei2 p {
		float: initial;
		max-width: initial;
	}

	section.map table, section.car table, section.kei table {
		float: right;
		max-width: 50%;
		margin-top: 20px;
	}
	section.map2 table, section.car2 table, section.kei2 table {
		float: initial;
		max-width: initial;
	}

	section.map2 img, section.car2 img, section.kei2 img {
		margin: 10px auto 50px auto;
	}

	section.map th, section.car th, section.kei th {
		width: 80px;
		height: 25px;
	}

	section.map li, section.car li, section.kei li {
		float: left;
		margin-right: 10px;
	}

	section.kaisetsu p {
		min-height: 90px;
		padding: 10px;
		font-size: 14px;
		line-height: 1.5;
		/* background-color: #dbebc4; */
		border: 1px solid #666;
		border-radius: 5px;
	}
	section.kaisetsu p img {
		float: left;
		border-radius: 5px;
		margin: 0 10px 10px 0;
	}

	p.kaisetsu {
		min-height: 90px;
		padding: 10px;
		font-size: 14px;
		line-height: 1.5;
		border: 1px solid #666;
		border-radius: 5px;
		width: initial;
	}

	p.kaisetsu img {
		float: right;
		margin: 0 0 10px 10px;
	}

	/* フォームのエラーメッセージ */
		ul.error {
			margin: 0 0 10px 0;
		}
		ul.error li {
			color: red;
			font-weight: bold;
		}

	table.border-none {
		width: 150px;
		border: none;
	}
	table.border-none th, table.border-none td {
		border: none;
	}

/* ----------- */
/*  コラム部　 */
/* ----------- */
	aside {
		float: left;
		width: 336px;
		margin: 22px 0 0 40px;
		padding-top: 10px;
	}
	aside h2 {
		position: relative;
		border-top: solid 2px #80c8d1;
		border-bottom: solid 2px #80c8d1;
		background: #f4f4f4;
		line-height: 1.4;
		padding: 0.4em 0.5em;
		margin: 0 0 2px 0;
	}

	aside h2:after {
		/*タブ*/
		position: absolute;
		font-family: "Font Awesome 5 Free",'Quicksand','Avenir','Arial',sans-serif;
		font-weight: 900;
		content: "Check";
		background: #80c8d1;
		color: #fff;
		left: 0px;
		bottom: 100%;
		border-radius: 5px 5px 0 0;
		padding: 5px 7px 3px;
		font-size: 0.7em;
		line-height: 1;
		letter-spacing: 0.05em;
	}

	aside ul {
		border-right: 1px solid #80c8d1;
		border-bottom: 1px solid #80c8d1;
		border-left: 1px solid #80c8d1;
		margin-top: -8px;
		margin-bottom: 15px;
		padding: 7px 5px 4px 5px;
		border-radius: 0 0 2px 2px;
		box-sizing: border-box;
	}

	aside li {
		min-height: 62px;
		border-bottom: 1px solid silver;
		line-height: 1.5;
		padding-top: 5px;
	}

	aside li img {
		float: left;
		margin: 0 10px 5px 0;
	}

	aside li a {
		text-decoration: none;
		font-weight: bold;
		color: #666;
	}

	aside dl {
		background-color: #EFEACE;
		border-top: 1px solid #80c8d1;
		border-right: 1px solid #80c8d1;
		border-left: 1px solid #80c8d1;
		border-bottom: 1px solid #80c8d1;
		margin: 3px 0 0 0;
		padding: 7px 5px 4px 5px;
		box-sizing: border-box;
		border-radius: 2px 2px;
	}

	aside dt  {
		font-size: 15px;
		margin: 10px 10px 5px 0;
	}

	aside dt img {
		float: left;
		margin: 0 10px 5px 0;
	}

	aside dd, aside dt p {
		margin:  0 0 0 5px;
	}

	aside dd.address {
		text-align: right;
	}

	aside p {
		border-top: 1px solid #80c8d1;
		border-right: 1px solid #80c8d1;
		border-left: 1px solid #80c8d1;
		border-bottom: 1px solid #80c8d1;
		margin: 3px 0 0 0;
		padding: 7px 5px 10px 10px;
		box-sizing: border-box;
		border-radius: 2px 2px;
	}

	aside dt img, aside p img {
		float: right;
		margin: 0 0 5px 0;
	}


/* ----------- */
/*  フッタ部　 */
/* ----------- */
	footer {
		width: 100%;
		position: absolute;
		bottom: 0;
		margin-top: auto;
	}
	div#footer {
		border-top: 1px dashed #666;
		margin: 10px auto;
		text-align: center;
		padding: 5px 0 0 30px;
	}
