/*===========================
basic
===========================*/


    html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
	list-style-type: none;
}
body {
	line-height:1;
}
img {
	max-width: 100%;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display:block;
}
nav ul {
	list-style:none;
}
blockquote, q {
	quotes:none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content:'';
	content:none;
}
a {
	margin:0;
	padding:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
	color: #008bda;
}
/* 画像の下にできる隙間をなくす */
img {
	vertical-align: bottom;
}
/* hr 要素は不可視で使う */
hr {
	display: none;
}
/*===========================
fonts
===========================*/



/*  Fonts  */



 @font-face {
 font-family: 'minchouFont';
 src: url('../fonts/HanaMinA.eot'); /* IE9 Compat Modes */
 src: url('../fonts/HanaMinA.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ url('../fonts/HanaMinA.woff') format('woff'); /* Modern Browsers */
}
.minchouFontClass {
	font-family: "minchouFont";
}


 @media screen and (max-width: 768px) {
.minchouFontClass {
	font-family:serif;
}
 }



body {
	font-size:14px;
	line-height: 1.6em;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
	margin: 0;
	padding: 0;
	color:#222;
	background: #fff;
}
.wrapper {
	width: 90%;
	min-width:1000px;
	margin: 0 auto;
}
h1, h2, h3, h4, h5, h6 {
	color: #333;
	letter-spacing: 1px;
	font-weight:normal;
}
h1 {
	font-size: 2.4em;
	line-height:1.3em;
}
h1.content-title {
	text-align:center;
	background-image:url(../img/common/bg_content_title.png);
	background-position:center bottom;
	background-repeat:no-repeat;
	padding-bottom:45px;
	margin-bottom:40px;
}
h2 {
	font-size: 1.25em;
	margin: .75em 0;
}
main h2 {
	font-size: 1.5em;
	text-align:center;
	font-weight:bold;
	margin-bottom:2em;
}
main h3 {
	font-size: 1.25em;
	margin: .83em 0;
	text-align:center;
	background-image:url(../img/common/bg_h3.png);
	background-repeat:no-repeat;
	background-position:center bottom;
	padding-bottom:1em;
	margin-bottom:2em;
}
main h4 {
	font-size:1.25em;
	color:#4288bc;
	text-align:center;
	font-weight:bold;
	margin-bottom:1.5em;
}
h5 {
	font-size: .83em;
	margin: 1.5em 0
}
h6 {
	font-size: .75em;
	margin: 1.67em 0
}
.content h1 {
	font-size:2em;
	font-weight:bold;
	background-image:url(../img/common/bg_title1.png);
	background-position:center bottom;
	background-repeat:no-repeat;
	padding-bottom:0.7em;
	margin-bottom:0.7em;
	text-align:center;
}
.content h2 {
	font-weight:bold;
	color:#00337f;
	margin-bottom:1em;
}
.content h3 {
	padding:9px 7px;
	background-color:#e3e8eb;
	margin-bottom:1.5em;
}
.clearfix:before, .clearfix:after {
	content: " ";
	display: table;
}
.clearfix:after {
	clear: both;
}
.clearfix {
 *zoom: 1;
}
.sp {
	display:none;
}
.tx-center {
	text-align:center;
}


.list, .list li {
	padding:0px;
	margin:0px;
}
.list li {
	list-style-type:none !important;
	list-style-image:none !important;
	margin: 16px 0px 16px 0px !important;
}
.list1 li {
	position:relative;
	padding-left:20px;
	font-size:1.1em;
	font-weight:normal;
}
.list1 li:before {
	content:'';
	height:0px;
	width: 90%;
	display:block;
	position:absolute;
	top:18px;
	left:0px;
}
.list1 li:after {
	content:'';
	display:block;
	position:absolute;
	background:#070707;
	width:10px;
	height:10px;
	top:7px;
	left:5px;
	border-radius: 5px;
}
.list2 li {
	position:relative;
	padding-left:20px;
	padding-left:28px;
	font-size:1.2em;
	font-weight:bold;
}
.list2 li:after, .list2 li:before {
	content:'';
	display:block;
	position:absolute;
	top:4px;
	left:8px;
	height:11px;
	width:4px;
	background:#aaa;
	border-radius:10px;
	transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	-o-transform:rotate(45deg);
}
.list2 li:before {
	top:8px;
	left:3px;
	height:8px;
	transform:rotate(-45deg);
	-webkit-transform:rotate(-45deg);
	-o-transform:rotate(-45deg);
}
ol {
	padding:20px;
	border:1px solid #DDD;
	display: block;
	margin: 1em 1em 2em 1em; /* Webkit, Firefoxは、margin-before: 1em; margin-after: 1em; */
	padding-start: 40px; /* IEは、padding-left: 30pt; Operaは、padding-left: 40px; */
	list-style-position: outside;
}
ol li {
	list-style-type:decimal;
	padding:0 0 0 10px;
	margin-bottom:1em;
	margin-left:2em;
}
ol li span {
	display:block;
	font-weight:bold;
	font-size:1.1em;
}



 @media screen and (max-width: 768px) {

/*===========================
general
===========================*/



.wrapper {
 width: 96%;
 margin: 0 auto;
 min-width:96%;
}
 h1, h2, h3, h4, h5, h6 {
 letter-spacing: 0;
}
 h1 {
 font-size: 1.6em;
 line-height:1.3em;
}
main h1 {
 font-size:1.6em;
}

 .sp {
 display:block;
}
}
/*===========================
main_cut
===========================*/





/*===========================
visual-cut
===========================*/



#bg-vis {
	width: 100%;
	z-index: 0;
	position: relative;
	height: 0;
	background-repeat: no-repeat;
	background-position: center top;
	background-image:url(../img/common/bg_header.jpg);
	background-size: contain;
	/* 表示画像の高さ ÷ 表示画像の幅 × 100 */
	padding-top: 51.76%;
}
#bg-vis .catch {
	text-align: center;
	margin-top: -37%;
	font-size:2.4em;
	color:#1083c6;
	padding:0 0 80px 0;
	background-image:url(../img/common/bg_catch.png);
	background-position:center bottom;
	background-repeat:no-repeat;
	line-height:1.4em;
	font-weight:bolder;
}


 @media screen and (max-width: 768px) {
	 
	 #bg-vis {
		 margin-top:60px;
}
	 
	 #bg-vis .catch {
		 margin-top: -37.2%;
	font-size:1.8em;
	padding:0 0 12% 0;
	background-size:80%;
	line-height:1.2em;
	
 }
 }

 @media only screen and (max-width: 600px) {
	 
	 
	 #bg-vis .catch {
	margin-top: -35.4%;
	font-size:1.2em;
	padding:0 0 8% 0;
	background-size:60%;
}
 }


/*===========================
header
===========================*/

#telset {
	position: absolute;
	top: 0;
	right: 3%;
	width:233px;
	height:74px;
	background-image:url(../img/common/header_bg_tel.png);
	background-position:0 0;
	background-repeat:no-repeat;
	z-index:1;
}
#telset .tel {
	line-height:48px;
	font-family:Arial, Helvetica, sans-serif;
	font-size:2em;
	color:#FFF;
	text-indent:32px;
	font-weight:bolder;
	letter-spacing:1px;
}

#telset .tel a {
	color:#FFF;
}


#telset .txt {
	color:#FFF;
	text-align:center;
	text-indent:7px;
}
#header{
	width:94%;
	height:100px;
	padding:0 3%;
	background-color: rgba(255, 255, 255, 0.96);
	margin-top:-100px;
	border-bottom:1px solid #e5e5e5;
	z-index:9999;
	position:relative;
}
#header h1 {
	background-image:url(../img/common/logo.png);
	background-position:left center;
	background-repeat:no-repeat;
	height:100px;
	text-indent:-9999px;
	float:left;
}

#header h1 a {
	display:block;
	height:100px;
}
#header .main-nav {
	min-width:1000px;
}
#header .main-nav ul {
	float:right;
}
#header .main-nav ul li {
	display:inline-block;
	color:#222;
	line-height:1;
}
#header .main-nav ul li a {
	display:table-cell;
	vertical-align:middle;
	padding:0 15px;
	height:100px;
	color:#222;
	text-decoration:none;
}
#header .main-nav ul li a:after {
	display: block;
	content: "";
	width: 0;
	height: 3px;
	background-color: #1787c8;
	margin: 5px auto 0;
 transition: .10s ease-out;
 -webkit-transition: .10s ease-out;
 -moz-transition: .10s ease-out;
 -o-transition: .10s ease-out;
 -ms-transition: .10s ease-out;
}
#header .main-nav ul li a:hover:after {
	width: 100%;
}
#header .main-nav ul li a:hover {
}
.fixed {
	position: fixed;
	top: 100x;
	left: 0px;
	z-index: 9999;
}
#slide-menu {
	display:none;
}
 @media only screen and (max-width: 768px) {
	 
	 #header {
	width:94%;
	height:60px;
	padding:0 3%;
	background-color: rgba(255, 255, 255, 1);
	margin-top:0;
	border-bottom:1px solid #e5e5e5;
	z-index:9999;
	top:0;
	position:fixed;
}

	 
 #header h1 {
	 height:60px;
 background-size:100%;
}

#header h1 a {
	display:block;
	height:60px;
}

 .main-nav {
 display:none;
}
 #slide-menu {
 display:block;
 float: right;
 margin-right: 3%;
 width: 44px;
 height: 100%;
 background: url("../img/common/icon-menu.svg") no-repeat center center;
 background-size: 44px 44px;
 cursor: pointer;
 text-indent:-9999px;
}

.sidr .close {
	background-color:#d9d9d9;
	box-shadow: 0 0 5px 5px #d3d3d3 inset;
}


.sidr ul .close:hover > a,
.sidr ul .close:hover > span, .sidr ul .close.active > a,
.sidr ul .close.active > span, .sidr ul .close.sidr-class-active > a,
.sidr ul .close.sidr-class-active > span {
  box-shadow: 0 0 15px 3px #d3d3d3 inset;
}

	 #telset {
	position: relative;
	width:100%;
	height:50px;
	right:auto;
	background-image:none;
	z-index:1;
		background-color: rgba(33, 127, 206, 0.8);
		margin-top:-50px;
}
#telset .tel {
	line-height:46px;
	font-size:1.6em;
	text-indent:0;
	letter-spacing:1px;
	text-align:left;
	background-image:url(../img/common/header_bg_tel_sp.png);
	background-position:8px 10px;
	background-repeat:no-repeat;
	padding:0 0 0 24px;
	margin:0 auto;
	float:left;
}



#telset .txt {
	float:right;
	line-height:46px;
	font-size:1em;
	margin-right:1em;
}
 }
 
 
 
  @media only screen and (max-width: 600px) {
	  #telset .tel {
	line-height:46px;
	font-size:1.2em;
	text-indent:0;
	letter-spacing:1px;
	text-align:left;
	background-image:url(../img/common/header_bg_tel_sp.png);
	background-position:8px 10px;
	background-repeat:no-repeat;
	padding:0 0 0 24px;
	margin:0 auto;
	float:left;
}
#telset .txt {
	float:right;
	line-height:46px;
	font-size:0.8em;
	margin-right:0.1em;
}
  }
/*===========================
main_area
===========================*/




.text {
	margin:0 0 1em 0;
}
.text2 {
	margin:0 0 2em 0;
}
/*===========================
footer
===========================*/

#footer {
	width:94%;
	padding:1em 3% 0 3%;
	clear:both;
	background-image:url(../img/common/bg_copyright.gif);
	background-repeat:repeat-x;
	background-position:center bottom;
	color:#c6deec;
	background-color:#1e72b0;
}
#footer h2 {
	color:#FFF;
	font-size:1em;
	padding:0;
	margin:0;
	margin-bottom:0.2em;
}
#footer nav {
	padding:0.5em 0 1em;
	float:left;
	width:50%;
}
#footer nav ul li {
	margin-right:2%;
	display: inline;
}
#footer nav ul li a {
	text-decoration:none;
	color:#FFF;
}
#footer .data-area {
	float:left;
	width:100%;
	clear:both;
}
#footer .data-area .div1 {
	padding-right:2%;
	float:left;
	margin-bottom:0.5em;
}
#footer .data-area .div2 {
	float:left;
	margin-bottom:0.5em;
}
#footer .inq-set {
	float:right;
	width:50%;
}
#footer .inq-set .txt {
	color:#FFF;
	font-size:1.1em;
	padding:5px 1% 0 0;
}
#footer .inq-set .tel {
	float:right;
	width:auto;
}
#footer .inq-set .tel .no {
	color:#FFF;
	font-family:Arial, Helvetica, sans-serif;
	font-weight:bolder;
	font-size:2.2em;
	letter-spacing:1.5px;
	line-height:1;
	padding:0 0 0 32px;
	margin-bottom:8px;
	background-image: url(../img/common/footer_icn_tel.png);
	background-repeat:no-repeat;
	background-position:10 2px;
}
#footer .inq-set .tel .mail a {
	background-color:#115792;
	padding:2px 10px 2px 35px;
	background-image:url(../img/common/footer_icn_mail.png);
	background-position:10px 9px;
	background-repeat:no-repeat;
	color:#FFF;
	text-decoration:none;
	border-radius: 2px;
	-webkit-border-radius: 2px;    /* Safari,Google Chrome用 */
	-moz-border-radius: 2px;   /* Firefox用 */
}
#footer .copyright {
	clear:both;
	font-size:92%;
	line-height:30px;
	text-align:center;
	color:#FFF;
}

 @media screen and (max-width: 768px) {
	 
	 #footer nav {
	float:none;
	width:100%;
		display: inline-block;
		text-align:center;
}


#footer nav ul li {
	margin-right:1%;
}

#footer .data-area {
	float:left;
	width:100%;
	clear:both;
}
#footer .data-area .div1 {
	padding-right:0;
	float:none;
	text-align:center;
	padding:1em 0;
}
#footer .data-area .div2 {
	float:none;
	text-align:center;
	padding:1em 0;
}
#footer .inq-set {
	float:none;
	width:100%;
}



#footer .inq-set .tel .no {
	padding:0 0 0 32px;
	margin-bottom:8px;
	background-image: url(../img/common/footer_icn_tel.png);
	background-repeat:no-repeat;
	background-position:0px 2px;

 }
 }
 
 
  @media screen and (max-width: 600px) {
	  
	  #footer .inq-set {
		  width:auto;
}
	  #footer .inq-set .txt {
	float:none;
	margin:0 auto;
	text-align:center;
}

#footer .inq-set .tel {
	float:none;
	margin:0 auto;
	width:270px;
}


  }


/*===========================
other
===========================*/


.red {
	color:#FF0000;
}
/* 「※」付きなど用の文字インデント */

.ex {
	padding-left: 1em; /*1em（1文字）分、右に動かす*/
	text-indent: -1em; /*最初の行だけ1em（1文字）分、左に動かす*/
	margin-bottom:0.4em;
	line-height:1.3em;
}
.ex span {
	color:#FF0000;
}
#pagetop {
	position: fixed;
	bottom: 80px;
	right: 10px;
	font-size:12px;
	z-index:5;
}
#pagetop a {
	display:block;
	background-color: rgba(255, 255, 255, 0.5);
	border:#CCC solid 1px;
	text-decoration:none;
	color:#333;
	background-image:url(../img/common/arrow_top.png);
	background-position:center 10px;
	background-repeat:no-repeat;
	padding:25px 22px 13px;
}
#pagetop a:hover {
	background-color: rgba(255, 255, 255, 0.7);
}
.dataArea {
	padding:40px 0 40px 0;
	border-top:1px solid #d8e3ec;
	clear:both;
}
.dataArea .data {
	float:left;
	margin-right:20px;
}
.pdf {
	background-image:url(../img/common/icn_pdf.png);
	background-position:0 4px;
	background-repeat:no-repeat;
	padding-left:21px;
}
.external {
	background-image:url(../img/common/icn_externallink.png);
	background-position:right 4px;
	background-repeat:no-repeat;
	padding-right:15px;
}
 @media only screen and (max-width: 768px) {
 #pagetop {
 bottom: 20px;
 right: 10px;
}
}





/*===========================
banner
===========================*/


/*===========================
content
===========================*/




.bgcolor1 {
	padding:50px 0;
	background-color:#fff;
}
.bgcolor2 {
	padding:50px 0;
	background-color:#fff;
	background-image:url(../img/common/bg_sky.jpg);
	background-repeat:no-repeat;
	background-size:cover;
}
.bgcolor2 .wrapper {
	width: 82%;
	min-width:83%;
	background-color: rgba(255, 255, 255, 0.7);
	padding:4%;
}
.content {
	padding:40px 0;
}
/* レイアウトA-1 (2カラム　1：3)*/

.layout-a1 {
}
.layout-a1 .a1-1 {
	width:25%;
	float:left;
}
.layout-a1 .a1-2 {
	width:75%;
	float:right;
}
.layout-a1 .a1-2 h1 {
	margin-bottom:0.5em;
	font-weight:bolder;
}


 @media screen and (max-width: 768px) {
	 .bgcolor2 .wrapper {
	width: 82%;
	background-color: rgba(255, 255, 255, 0.7);
	padding:4%;
}
 }


/*info*/

.layout-a1 .a1-2 .info h2 {
	margin-bottom:0.5em;
	font-weight:bolder;
	font-size:1.2em;
	color:#1e72b0;
	padding:5px 0 5px 35px;
	background-image:url(../img/top/icn_news.png);
	background-position:0 0;
	background-repeat:no-repeat;
	text-align:left;
}
.layout-a1 .lead {
	width:100%;
	padding-bottom:14px;
	margin-bottom:14px;
	border-bottom:1px solid #222;
}
.layout-a1 .a1-2 .info {
	max-height:200px;
	min-height:80px;
	overflow:auto;
}
.layout-a1 .a1-2 .info dl {
	width:100%;
	overflow:auto;
}
.layout-a1 .a1-2 .info dl dt {
	float: left;
	clear:left;
	width: 5.0em;
	margin:0;
	padding: 3px 0 3px 4px;
}
.layout-a1 .a1-2 .info dl dd {
	margin:0;
	padding: 3px 0 3px 5.5em;
}
.layout-a1 .a1-1 .pic img {
	padding:0 7%;
	width:86%;
}


 @media screen and (max-width: 768px) {

.layout-a1 .a1-2 .info {
	overflow:visible;
	height:auto;
	max-height:none;
}

.layout-a1 .a1-2 .info dl {
	overflow:visible;
}

 }


 @media screen and (max-width: 600px) {
	 
.layout-a1 .a1-1 {
	width:100%;
	float:none;
}

.layout-a1 .a1-1 .pic {
	width:65%;
	margin:0 auto;
}

.layout-a1 .a1-2 {
	width:100%;
	float:none;
	padding:2em 0 0;
}

.layout-a1 .a1-2 h1 {
	text-align:center;
}

 }
 
  @media screen and (max-width: 360px) {
	  .layout-a1 .a1-2 .info dl dt {
	float: none;
	clear:both;
}
.layout-a1 .a1-2 .info dl dd {
	margin:0;
	padding: 3px 0 3px 0;
}
  }




/* レイアウトA-2 (3分割アンカー用)*/


.anchor-area {
	padding:30px 0;
	background-color:#e9f5f9;
}

.layout-a2 {
}
.layout-a2 div {
	width:31.3%;
	float:left;
	margin:0 1%;
	background-position:0 0;
	background-repeat:no-repeat;
	background-size:cover;
	padding-top:14%;
}
.anchor1 {
	background-image:url(../img/top/bg_anchor1.jpg);
}
.anchor2 {
	background-image:url(../img/top/bg_anchor2.jpg);
}
.anchor3 {
	background-image:url(../img/top/bg_anchor3.jpg);
}
.layout-a2 div p a {
	display:block;
	text-align:center;
	padding:10px 0 40px;
	background-color: rgba(72, 164, 212, 0.65);
	background-image:url(../img/top/chip_anchor.png);
	background-position:center 38px;
	background-repeat:no-repeat;
	color:#FFF;
	text-decoration:none;
	font-size:1.2em;
	-webkit-transition: all 0.7s;
	-moz-transition: all 0.7s;
	transition: all 0.7s;
}
.layout-a2 div p a:hover {
	background-color: rgba(74, 221, 219, 0.65);
}

 @media screen and (max-width: 600px) {
	 .layout-a2 div {
	width:98%;
	float:none;
	margin:0 1%;
	background-position:0 0;
	background-repeat:no-repeat;
	background-size:cover;
	padding-top:8%;
	margin-bottom:1em;
}

 }


/* レイアウトA-3 (2カラム　1：1)*/

.layout-a3 .a3-1 {
	float:left;
	width:49%;
}
.layout-a3 .a3-2 {
	float:right;
	width:49%;
}
.layout-a3 .a3-1 table.table2 th {
	width:20%;
}

.layout-a3 .a3-3 {
	float:left;
	width:35%;
}
.layout-a3 .a3-4 {
	float:left;
	width:65%;
}


 @media screen and (max-width: 768px) {
.layout-a3 .a3-1 {
	float:none;
	width:100%;
	margin-bottom:3em;
}
.layout-a3 .a3-2 .a3-3 .a3-4 {
	float:none;
	width:100%;
	margin-bottom:3em;
}
 }



/* 3カラム */




/* 施工例写真など(画像は6分割（16.6%）の倍数で統一)*/

.example {
	width:100%;
	/*可変で崩れる場合は幅固定で対処
	width:1000px;*/
	margin:0 auto;
	background-image:url(../img/content2/bg_pic.png);
	background-repeat:repeat;
}
.example li {
	display:block;
	float:left;
	padding:0;
	margin:0;
	position: relative;
	overflow: hidden;
}

.example li .caption {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	width: 90%;
	height: 100%;
	background: rgba(0,0,0,.4);
	-webkit-transition: .3s;
	transition: .3s;
	opacity: 0;
	text-align:center;
	color:#FFF;
	padding:10px 5%;
}
.example li:hover .caption {
	opacity: 1;
}

.example li img {
	width:100%;
}
.example .size1 {
	width:16.65%;
}
.example .size2 {
	width:33.3%;
}
.example .size3 {
	width:49.95%;
}


 @media screen and (max-width: 768px) {
	 
	 /* 施工例写真など(画像は4分割（25%）の倍数で統一)*/

.example {
	width:100%;
	/*可変で崩れる場合は幅固定で対処
	width:600px;*/
	margin:0 auto;
	background-image:url(../img/content2/bg_pic.png);
	background-repeat:repeat;
}


.example .size1 {
	width:25%;
}
.example .size2 {
	width:50%;
}
.example .size3 {
	width:75%;
}

 }
 
  @media screen and (max-width: 600px) {
	 
	 /* 施工例写真など(画像は3分割（33.32%）の倍数で統一)*/

.example {
	width:100%;
	/*可変で崩れる場合は幅固定で対処
	width:600px;*/
	margin:0 auto;
	background-image:url(../img/content2/bg_pic.png);
	background-repeat:repeat;
}


.example .size1 {
	width:33.3%;
}
.example .size2 {
	width:66.6%;
}
.example .size3 {
	width:99.9%;
}

 }



/* table */


/* 背景画像の上に使うtable */

table.table1 {
	width:100%;
	background-color: rgba(255, 255, 255, 0.8);
	padding:30px;
}
table.table1 tr {
}
table.table1 th {
	padding:7px;
	border-bottom: 1px #25456d solid;
	font-weight:normal;
	text-align:left;
}
table.table1 td {
	padding:5px;
	border-bottom: 1px #25456d solid;
	font-weight:normal;
}
/* 線のtable */

table.table2 {
	width:100%;
	margin-bottom:3.5em;
	padding-top:1.5em;
}
table.table2 tr {
}
table.table2 th {
	padding:9px 5px;
	border-bottom: 1px #ddd solid;
	font-weight:normal;
	text-align:left;
}
table.table2 td {
	padding:9px 5px;
	border-bottom: 1px #ddd solid;
	font-weight:normal;
}
/* リンクボタン */


main .btn {
	text-align:center;
}
main .btn a {
	border:3px solid #4288bc;
	padding:6px 5%;
	color:#222;
	text-decoration:none;
	-webkit-transition: all 0.7s;
	-moz-transition: all 0.7s;
	transition: all 0.7s;
}
main .btn a:hover {
	background-color: rgba(66, 136, 188, 0.3);
}
 @media only screen and (max-width: 768px) {
 table.table2 {
 width: 100%;
 margin-bottom:3.5em;
}
table.table2 tr {
 display: block;
}
table.table2 th {
 display: list-item;
 padding: 0;
 border-bottom: none;
 text-align: left;
 font-weight: normal;
 vertical-align: top;
 width: 100%;
 line-height: 1em;
 border:none;
 font-weight:bold;
}
table.table2 td {
 display: list-item;
 width: 100%;
 padding-bottom: 3%;
 margin-bottom: 3%;
 border-bottom: 1px #c9d4dc solid;
 font-weight: normal;
 padding: 5px 0 3% 0;
}
}
/* 普通のtable */

table.table3 {
	width:100%;
	border-top: 1px #c9d4dc solid;
	border-left: 1px #c9d4dc solid;
}
table.table3 th {
	padding:6px 3px 6px 3px;
	border-bottom: 1px #c9d4dc solid;
	border-right: 1px #c9d4dc solid;
	font-weight:bold;
	background-color:#dbe4ea;
	letter-spacing:0;
}
table.table3 td {
	padding:4px 3px 4px 3px;
	border-bottom: 1px #c9d4dc solid;
	border-right: 1px #c9d4dc solid;
	font-weight:normal;
	background-color:#FFFFFF;
	letter-spacing:0;
}
/* アクセス */



#map_canvas {
	width:100%;
	height:380px;
	margin:0 auto;
	margin-bottom:20px;
}
.map_data {
	padding:0 0 1em 0;
}

.map_data p {
	text-align:center;
}

.map_area h3 {
	font-weight:bold;
}
.map_data .address {
	margin-bottom:2em;
}
 @media only screen and (max-width: 768px) {
 #map_canvas {
 margin-bottom:0;
}
 #map_area .map_data {
 padding:1em;
 position:relative;
 padding:15px 10px;
 top:0px;
}
 #map_area .map_data .address {
 margin-bottom:0;
}
}


 @media only screen and (max-width: 600px) {
	 #map_canvas {
	width:300px;
	height:300px;
}
 }
/*===========================
inquiry
===========================*/


.inquiry table {
	background-color: #e3eef5;
	empty-cells: show;
	width: 100%;
	margin:0 auto;
	line-height: 1.3em;
	border-spacing: 0px;
	margin-bottom: 1.5em;
	padding: 20px 0;
}
.inquiry table th {
	padding: 12px 36px 12px 0;
	border-bottom: 1px solid #FFF;
	text-align: right;
	font-weight: normal;
	vertical-align: top;
	width: 33%;
	line-height: 2.2em;
}
.inquiry table td {
	padding: 12px 5px 12px 0;
	border-bottom: 1px solid #FFF;
	text-align: left;
}
.inquiry table td .select {
	margin-bottom: 0.5em;
}
.inquiry table td .select li {
	float: left;
	margin-right: 20px;
}
.inquiry table td .select li input {
	vertical-align: middle;
}
.inquiry table td label {
	padding: 0 0 0px 5px;
}
.inquiry table span {
	color: #ff0000;
}
.inquiry table input {
	margin: 2px 0 2px 0;
	height: 1.6em;
	border: 1px solid #DDD;
}
.inquiry .formBtn {
	width: 100%;
	text-align: center;
	margin-bottom: 30px;
}
.inquiry .btnSend {
	background-color: #0080c3;
	color: #FFF;
	padding: 8px 0;
	margin: 0 5px 0 5px;
	border: 0;
	width:160px;
}
.inquiry .btnReset {
	background-color: #FFF;
	color: #196096;
	padding: 7px 0;
	margin: 0 5px 0 5px;
	border: 0;
	border:1px solid #0080c3;
	width:160px;
}
.inquiry .forml {
	width: 90%;
}
.inquiry .formm {
	width: 50%;
}
 @media only screen and (max-width: 768px) {
 .inquiry table {
 width: 100%;
 margin: 0 0 3% 0;
 padding: 10px;
}
.inquiry table tr {
 display: block;
}
.inquiry table th {
 display: list-item;
 padding: 0;
 border-bottom: none;
 text-align: left;
 font-weight: normal;
 vertical-align: top;
 width: 100%;
 line-height: 1em;
}
.inquiry table td {
 display: list-item;
 width: 100%;
 padding-bottom: 3%;
 margin-bottom: 3%;
 border-bottom: 1px #FFF solid;
 font-weight: normal;
 padding: 5px 0 3% 0;
}
 .inquiry .forml {
 width: 100%;
}
.inquiry .formm {
 width: 100%;
}
 .inquiry .btnSend {
 width:100px;
}
.inquiry .btnReset {
 width:100px;
}
}
