@charset "UTF-8";

* {
	margin:0;
	padding:0;
}
body {
	background:#0B3A6E url(../img/bg_contents.png) repeat;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size:12px;
	color:#000;
	letter-spacing:0.1em;
}
a:link,
a:visited {
	color:#257FB7;
	text-decoration:underline;
}
a:hover,
a:active {
	color:#FF6600;
}
a img {
	border:none;
}

#wrap {
	background:url(../img/bg_header.png) no-repeat center top;
}
#header {
	position:relative;
	width:870px;
	height:180px;
	margin:0 auto;
}
#header h1 {
	position: absolute;
	top: 54px;
	left: 20px;
	width: 309px;
	height: 60px;line-height: 1;
}
#header h1 img.logo2 {
	width:284px; height: auto; display: block;  margin: -2px 0 0;
}

#header .copy {
	position:absolute;
	top:60px; right:20px;
	line-height:1.5em;
	color:#FFFFFF;
	text-align:right;
}
#navi {
	position:absolute;
	top:110px; left:15px;
	width:840px;
	height:50px;
	border-top:solid 1px #CCCCCC;
	border-right:solid 1px #CCCCCC;
	border-bottom:solid 1px #CCCCCC;
	list-style-type:none;
}
#navi li {
	width:168px;
	height:50px;
	float:left;
}
#navi a {
	display:block;
	width:158px;
	height:43px;
	padding:7px 0 0 10px;
	background:url(../img/navi.png) no-repeat;
	font-weight:bold;
	color:#666666;
	text-decoration:none;
	line-height:1.6em;
}
#navi a span {
	font-size:10px;
	color:#3399CC;
}
#navi a:hover,
#contents_01 #navi_01 a,
#contents_02 #navi_02 a,
#contents_03 #navi_03 a,
#contents_04 #navi_04 a,
#contents_05 #navi_05 a {
	background-position:0 -50px;
	color:#3399CC;
}
#contents {
	width:840px;
	margin:0 auto;
	padding:0 15px;
	background:#FFFFFF url(../img/bg_sub.png) repeat-y;
}
#main_area {
	width:590px;
	float:right;
}
#main {
	width:590px;
	padding:0px;
	position: relative;
}
#main img{ width:100%; height: auto;}
#main hgroup{position:absolute; 
	bottom:20px; left: 40px;
  color: #fff;
  text-shadow: 0 0 5px #000,0 0 5px #000,0 0 5px #000,0 0 5px #000;
  font-weight: bold; 
}
#main hgroup h1{ font-size:26px; line-height: 1.2;}
#main hgroup h1 b{ display: inline-block; margin: 0 0.2em;}
#main hgroup h2{ font-size:18px;}

article{ background: url("../../img/back.png") 103% 0% no-repeat; background-size: 208px auto; padding: 2em 0; }
article h3 {
	margin:0;
	font-size:14px;
	font-weight:bold; letter-spacing: 0;
}
article h4,article ul{ display: inline-block; vertical-align: top;}
article h4{  margin:1em 1em; width:5em;}
article ul{  width: calc( 100% - 9em ); margin: 1em 0 0 0em}
article p{ margin: 1em 0;}
article a{  display: block; margin: 1em 0 0 auto; text-decoration: none !important; width:120px; padding: 5px ; border:1px solid #257FB7; text-align: center; position: relative;}
article a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900; font-size:16px; position:absolute; top:5px; left:10px;
  content: '\f0da'; }



#topics {
	margin-top:20px;
}
#topics h3,
#information h3,
#contents_02 #main_area h2,
#contents_03 #main_area h2,
#contents_04 #main_area h2,
#contents_05 #main_area h2 {
	width:580px;
	height:25px;
	padding:5px 0 0 10px;
	line-height:1.5em;
	background:url(../img/bg_tit.png) no-repeat;
	font-size:14px;
	font-weight:bold;
	color:#FFFFFF;
}
#contents_02 #main_area h2,
#contents_03 #main_area h2,
#contents_04 #main_area h2,
#contents_05 #main_area h2 {
	margin:11px 0 20px 0;
}
#sub_area {
	width:220px;
	float:left;
}
#footer {
	width:870px;
	margin:0 auto;
}
address {
	clear:both;
	padding:20px 0;
	font-size:10px;
	font-style:normal;
	color:#FFFFFF;
	text-align:center;
}
#topics ul {
	width:620px;
	margin-right:-20px;
	list-style-type:none;
}
#topics ul li {
	position:relative;
	width:273px;
	height:90px;
	border:solid 1px #CCCCCC;
	margin:10px 10px 0 0;
	padding:10px;
	float:left;
	overflow:hidden;
}
#topics ul li h4 {
	line-height:1.6em;
	font-size:14px;
	font-weight:bold;
	color:#3399CC;
}
#topics ul li .photo {
	padding-right:10px;
	float:left;
}
#topics ul li .text {
	line-height:1.6em;
}
#topics ul li .more {
	position:absolute;
	bottom:10px;
	right:10px;
	text-align:right;
}
#information {
	clear:both;
	margin-bottom:20px;
	padding-top:20px;
}
#information dl {
	position:relative;
	margin-top:10px;
}
#information dl dt {
	position:absolute;
	left:0;
	clear:both;
	width:130px;
	padding:5px 0 5px 10px;
	float:left;
	line-height:1.6em;
}
#information dl dd {
	padding:5px 0 5px 130px;
	border-bottom:dotted 1px #CCCCCC;
	line-height:1.6em;
}
.sub_navi,
#contact {
	width:210px;
	border:solid 1px #CCCCCC;
	margin:10px auto 0 auto;
	background-color:#FFFFFF;
}
.sub_navi a:link,
.sub_navi a:visited {
	font-size:13px;
	font-weight:bold;
	color:#257FB7;
	text-decoration:none;
}
.sub_navi a:hover,
.sub_navi a:active {
	color:#FF6600;
}
#contact {
	margin-bottom:10px;
}
.sub_navi h2,
#contact h2 {
	padding:5px 10px;
	line-height:1.5em;
	background-color:#257FB7;
	font-size:14px;
	font-weight:bold;
	color:#FFFFFF;
}
.sub_navi ul {
	list-style-type:none;
	padding-bottom: 8px;
}
.sub_navi ul li {
	border-top:dotted 1px #CCCCCC;
	padding:7px 10px 7px 20px;
	line-height:1.5em;
	position: relative;
}
.sub_navi ul li::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900; font-size:6px;
  content: '\f111';color: #257FB7;
  position: absolute; left:10px; top:7px; }
#contact dl {
	padding:10px 0;
}
#contact dl dt,#contact dl dd{ display: inline-block; vertical-align: top; }
#contact dl dt {
	width: 54px;
	padding: 0 4px 2px;
	line-height: 1.6em;
	font-weight: bold;
}
#contact dl dd {
	 width:calc( 100% - 62px);
	color:#257FB7;
	padding: 0 0 2px;
}
#contact dl dd:nth-of-type(5) { color: #000; font-size: 11px; letter-spacing:-0.002em;}
#contact dl dd a.access{margin: 3px 0 0; display: block;position: relative; padding-left: 16px; font-size: 12px; text-decoration: none; }
#contact dl dd a.access::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900; font-size:16px;
  content: '\f3c5';
  position: absolute; left:0px; top:0px; }
#service .photo {
	float:right;
	margin:0 0 20px 15px;
}
#service .text {
	padding:10px 0 0 10px;
	line-height:1.6em;
}
#service ul {
	clear:both;
	list-style-type:none;
}
#service ul li {
	border: 1px solid #257FB7;
	line-height:1.6em;
	display: inline-block; width: calc( 50% - 10px ); 
	vertical-align: top;
	margin: 5px 0;
	padding-bottom: 5px;
}
#service ul li:nth-child(even) { margin: 5px 0 0 5px;}
#service ul li h3 {
	margin:0;
	padding:2px 2px 2px 15px;
	line-height:1.5em;
	background:#D5ECFF ;
	font-size:14px;
	font-weight:bold;
	color:#257FB7;
}
#service ul li p {
	margin:0.5em 1em 1em;
	
}

#service ul li .pagetop {
	text-align:right;
	margin:10px 10px 20px 0;
}
#faq ul {
	list-style-type:none;
}
#faq ul li {
	border:solid 1px #CCCCCC;
	margin-bottom:10px;
	padding:10px;
}
#faq ul h3 {
	margin-bottom:10px;
	padding:3px 0 0 40px;
	line-height:1.8em;
	background:url(../img/faq_q.png) no-repeat;
	font-size:14px;
	font-weight:bold;
	color:#257FB7;
}
#faq ul .text {
	margin-bottom:10px;
	padding:4px 0 0 40px;
	line-height:1.6em;
	background:url(../img/faq_a.png) no-repeat;
}

#company .txt{  background: url("../../img/company_logo.jpg") 100% 50px no-repeat ; background-size: 180px auto;  margin-bottom: 30px;}
#company .txt h3{  font-weight: bold; font-size: 14px; margin: 2em 150px 1em 0;}
#company .txt h3 span,#company .txt h3 b{ display: inline-block; vertical-align: top; }
#company .txt  h3 span{  width:8em; }
#company .txt h3 b{ width:calc( 100% - 8em);  }

#company .txt p{  margin:0 180px 1em 0;}



#company dl {
	position:relative;
	margin-bottom:30px;
}
#company dl dt {
	position:absolute;
	left:0;
	clear:both;
	width:100px;
	padding:10px 0 10px 10px;
	float:left;
	font-weight:bold;
	color:#257FB7;
	line-height:1.6em;
}
#company dl dd {
	padding:10px 0 10px 120px;
	border-bottom:dotted 1px #CCCCCC;
	line-height:1.6em;
}
#company .text {
	margin-top:10px;
	line-height:1.6em;
}
#company dl dd img{ width:120px; height: auto; margin: 0; display: block;}

#access h3{ color:#257FB7;font-weight: bold; font-size: 14px; margin: 2em 0 1em;}
#access p{  margin:0 1em 1em}
#access p.train{ background: url("../../img/train.jpg") 0 50% no-repeat; background-size: 12px auto; padding-left: 14px; }
#access iframe{ margin: 2em auto ; width:1005; height: 250px}
#access .car,#access img{ display: inline-block; vertical-align: top;}
#access img{  width:300px; height: auto;}
#access .car{  width:calc( 100% - 330px ); margin: 0 10px;}
#access h4{ font-weight: bold; font-size: 14px; background: url("../../img/car.gif") 0 50% no-repeat; background-size: 15px auto; padding-left:20px; }
#access .car p{  margin: 0 0 1em 20px;}
#access .car .check{   color: crimson; padding-left: 1em; }
#access .car .check::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;  margin:0 0 0 -1em;  content: '\f071';}

/* クリアフィックスハック */
.clearfix:after { 
	content:"";
    display:block;
    clear:both;
} 
.clearfix { 
	display: inline-block; 
}
/* Mac版IE除外 \*/
.clearfix { 
	display: block; 
}
