@charset "utf-8";
/* 
 style info : 下層ページスタイル

2019.12


color 

 */
 
 /*----------------------------------------------------
	下層ページベース
----------------------------------------------------*/

.subttl{
	background:#000;
	padding:20px 0;
	text-align:center;
}
.subttl h2{
	font-size:2.0rem;
	color: #fff;
}

 /*.page h3{
	 font-size:1.8rem;
	 border-bottom:1px solid #000;
	 margin:40px 0 8px;
 }
 .page h3:first-child{
	 margin-top:0;
  }
  .page.error p{
  margin-bottom:120px;
  }
*/

.flexbox{
	display: flex;
}
@media screen and (max-width: 768px) {
	.flexbox{
	display: block;
}
}

i{
	margin-right: 5px;
}
#contents ul{
	margin-left: 1em;
}
#contents ul li{
 padding-left: 1em;
  text-indent: -1em;

}

/*about
----------------------------------------------------*/

.about h3{
	font-size: 2.6rem;
	padding-bottom: 3px;
	margin-bottom:10px;
	border-bottom: 2px solid #003894;
}
.about h4{
	color:#003894;
}
.about p{
	margin-bottom: 15px;
}

.about .flexbox{
	padding: 10px;
}
.about figure{
	padding: 10px;
}
.about figure img{
	width: 100%;
}
.about .txtbox{
	margin: 15px;
}

.about .flexbox figure img{
	width: auto;
}

@media screen and (max-width: 768px) {
	.about .flexbox{
	padding: 0;
}
	.about figure{
		text-align: center;
}
}

/*menu
----------------------------------------------------*/
.menu a{
	text-decoration: underline;
}

.menu h3{
	font-size: 2.6rem;
	padding-bottom: 3px;
	margin-bottom:10px;
	border-bottom: 2px solid #003894;
}
.menu h4{
	font-size: 2.0rem;
	margin:50px 0  5px;
	font-weight: bold;
	color:#003894;
}
.menu h5{
	font-size: 2.0rem;
	margin:30px 0  5px;
	padding: 5px 0 5px 20px;
	font-weight: bold;
	background:#f2f2f1;
}
.menu table{
	border-collapse: collapse;
	width:100%;
	box-sizing: border-box;
	margin:20px 0 5px;
}

.menu table th {
	background: #e8ecf4;
	padding: 15px 20px;
	vertical-align:middle;
	white-space:nowrap;
	border:1px solid #9cb7cf;
}
.menu table td {
	padding: 15px 20px;
	vertical-align: top;
	border:1px solid #9cb7cf;
}

.menu th{
	width: 33%;
}
	
.menu .taxcopy{
	text-align: right;
	font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
	.menu table{
	margin:10px 0 5px;
}
.menu th{
	width: 20%;
}
	}

.reccomend li{
	margin-left: 15px;

}
.reccomend p{
	margin-top: 20px;
	color: coral;
}
.annotation{
	background: #f2f2f1;
	border: 1px dashed #9cb7cf;
	padding:2vw;
}
#contents .annotation ul li{
	padding-left: 2em;
	 text-indent: -2em;
   
   }

/*access
----------------------------------------------------*/

.access .map{
	margin-top: 20px;
	position: relative;
	padding: 0 0 56%;
	height: 0;
	overflow: hidden;
}
.access .map iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}

.access table {
	border-collapse: collapse;
	width:100%;
	box-sizing: border-box;
}
.access table tr{
	border-bottom:1px solid  #97918f;
}

.access table th {
	background: #f2f2f1;
	padding: 10px 20px;
	width: 230px;
}
.access table td {
	padding: 30px 20px;
	/*vertical-align: top;*/
}

@media screen and (max-width: 768px) {
	.access table th ,.access table td {
		display:block;
		box-sizing:border-box;
		padding: 10px;
		width:100%;
		}
	.access table tr{
	border-bottom:none;
}
	.access table th {
	border-bottom:1px solid  #97918f;	
	}
	.access table td {
		padding: 15px 20px;
	}
}

/*news
----------------------------------------------------*/


.news .newsbox{
	padding:0 0 30px 20px;
	margin-bottom:30px;
	border-bottom: 2px solid #f2f2f1;
}
.news .newsbox a{
	text-decoration:underline;
	color: #06c;
}
@media screen and (max-width: 768px) {
	.news .newsbox h3{
	font-size:1.6rem;
	}
.news .newsbox{
	margin-bottom:40px;
	}
}



