@charset "utf-8";

img {  
	border: 0;
}  
li {  
	list-style-type: none;
}

.clear {clear: both;}
.clearfix:after {
	clear: both;
	content: ".";
	display: block;
	height: 0;
	visibility: hidden;
}
.clearfix {min-height: 1px;}


/* bugfix */
.clearfix:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}

/* contents */
h3 {
	border-left: 8px solid #f60;
	border-bottom: 1px solid #f93;
	padding: 0 0 2px 5px;
	line-height: 1.3;
}
h3 span {
	font-weight: 300;
	font-size: .85em;
}
h4 {
	margin: .5em 0 0 0;
}
.small {
	font-size: 0.8em;
}
.data {
	text-align: right;
}
#contents {
	width: 900px;
	margin: 15px auto 0;
	font-family:'Lucida Grande','Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
	font-size: 95%;
	line-height: 1.4;
}
#contents p {
	margin: 0 0 1em 0;
	text-indent: 1em;
}
#contents p.cap {
	text-align: right;
	font-size: 90%;
}
ul li {
	list-style-type: decimal;
	margin: 0 0 15px 0;
}
#contents ul.patronage p {
	margin: 0;
	text-indent: 0;
}
.photo_left {
	width: 400px;
	margin: 0 10px 5px 0;
	float: left;
}
.sub_title {
   /* border-bottom: 3px solid #ccc;*/
    display: block;
    margin-bottom: 0.5em;
    position: relative;
}
#data {
	position: relative;
}
#data span {
	position: absolute;
	right: 15px;
	top: 0;
	font-size: .9em;
}
/* table */
#contents table {
	border-collapse: collapse;
	font-size: 90%;
	width: 95%;
	margin: 1em auto;
	border-top: solid 1px #777;
	border-left: solid 1px #777;
}
#contents th,
#contents td {
	padding: 5px;
	border-bottom: solid 1px #777;
	border-right: solid 1px #777;
	font-weight: 300;
}
#contents th {
	background: #cde9f7;
}
#contents thead th,
#contents thead td {
	background: #333;
	font-weight: 600;
	text-align: center;
	color: #fff;
}
/**/
.indent {
	padding-left: 5em;
}

#contents th.subtitle {
	background: #ddd;
}
.address {
	border: #ccc 1px solid;
	padding: 10px;
}


@media only screen and (max-width: 769px) {
	#contents {
		width: 98%;
		margin: 0 1%;
	}
	h3 {
	padding: 5px 0 5px 10px;
	font-size: 1.2em;
	}
	p#data {
		text-align: right;
		padding-right: 10px;
	}
	#contents th {
		width: 3.5em;
	}
	/*map*/
	img.map_img {
		width: 100%;
		margin: .7em 0 0;
	}
	/*sinkai*/
	.sinkai {
		display: block;
	}
	.sinkai img {
		width: 100%;
		margin: .7em 0 0;
	}
	#contents .sinkai p.cap {
		margin-bottom: 0;
		text-indent: 0;
	}
	#contents .sinkai p.cap br {
		display: none;
	}
	/**/
	.photo_cod {
		width: 98%;
		margin: 0 1%;
	}
	.photo_cod .photo_cont {
		width: 98%;
		margin: 0 1%;
	}
	.photo_cod .photo_cont img {
		width: 100%;
	}
  /* info_table */
  dl.info_table {
    width: 96%;
    margin: 0 auto;
    box-sizing: border-box;
    font-size: 100%;
    border-right: 1px solid #666;
    border-bottom: 1px solid #666;
    border-left: 1px solid #666;
  }
  dl.info_table dt,
  dl.info_table dd {
    box-sizing: border-box;
    padding: .8em;
  }
  dl.info_table dt {
    border-top: 1px solid #666;
    font-weight: 600;
    text-align: center;
    background: #cde9f7;
  }
  dl.info_table dd {
    border-top: 1px solid #666;
    margin-left: 0;
  }
}
@media only screen and (min-width: 769px) {
	/* contents */
	h3 {
		width: 900px;
		font-size: 21px;
	}
	#contents {
		width: 900px;
		margin: 15px auto 0;
	}
	#contents th {
		width: 10%;
	}
	.photo_left {
		width: 400px;
		margin: 0 10px 5px 0;
		float: left;
	}
	#contents p.cap {
		font-size: 90%;
		line-height: 1.25;
		text-indent: 0;
		margin-top: 5px;
	}
	.sub_title {
	 /* border-bottom: 3px solid #ccc;*/
		display: block;
		margin-bottom: 0.5em;
		position: relative;
	}
	#data {
		position: relative;
	}
	#data span {
		position: absolute;
		right: 15px;
		top: 0;
		font-size: .9em;
	}
  /* info_table */
  dl.info_table {
    display: flex;
    flex-wrap: wrap;
    box-sizing: border-box;
    font-size: 100%;
    border-right: 1px solid #666;
    border-bottom: 1px solid #666;
    border-left: 1px solid #666;
  }
  dl.info_table dt,
  dl.info_table dd {
    box-sizing: border-box;
    padding: .8em;
  }
  dl.info_table dt {
    width: 15%;
    border-top: 1px solid #666;
    font-weight: 600;
    background: #cde9f7;
  }
  dl.info_table dd {
    width: 85%;
    border-top: 1px solid #666;
    border-left: 1px solid #666;
    margin-left: 0;
  }
	/* table */
	table .norap {
		white-space: nowrap;
	}
	/* map */
	img.map_img {
		width: calc(100% - 20px);
		margin: .7em 10px;
	}
	/*sinkai*/
	.sinkai {
		display: flex;
		 align-items: flex-end;
	}
	.sinkai img {
		width: 33%;
		margin: .7em 10px 0;
	}
	#contents .sinkai p.cap {
		margin-bottom: 0;
		text-align: right;
	}
	/**/
	.photo_cod {
		width: 900px;
		display: flex;
	}
	.photo_cod .photo_cont {
		width: 447px;
	}
	.photo_cod .photo_cont:last-child {
		margin-left: 6px;
	}
	.photo_cod .photo_cont img {
		width: 100%;
	}

}