@charset "utf-8";
/* CSS Document */

/* reset */

/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
 
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;
}
 
body {
    line-height:1;
}
 
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:#666;
}
 
/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}
 
/* change colours to suit your needs */
mark {
    background-color:#ff9;
    color:#000; 
    font-style:italic;
    font-weight:bold;
}
 
del {
    text-decoration: line-through;
}
 
abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}
 
table {
    border-collapse:collapse;
    border-spacing:0;
}
 
/* change border colour to suit your needs */
hr {
    display:block;
    height:1px;
    border:0;   
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}
 
input, select {
    vertical-align:middle;
}

* {
	box-sizing:border-box;
}

/* 本文ここから */

a:hover img {
 opacity: 0.5;
}
 
a img {
 transition: opacity 0.3s ease-out;
}

body {
	background-color: #FFFFFF;
	font-family: "KozGoPro-Light", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
	color:#333;
	line-height:1.4;
}

a:hover img {
 opacity: 0.5;
}
 
a img {
 transition: opacity 0.3s ease-out;
}

figure img {
	vertical-align:bottom;
}

a:hover {
	text-decoration:underline;	
}

h1 {
	margin-bottom:10px;	
}

#container {
	width:940px;
	margin:0 auto;
	text-align:left;
	padding-bottom:100px;
}

#container:after {
	clear:both;
	content:"";	
}

header {
	text-align:center;
	padding:30px 0 20px;
}

header nav li {
	display:inline-block;
	font-size:16px;
	color:#525261;
	vertical-align:top;
}

header nav li a {
	display:block;
	width:auto;
	height:auto;
	color:#525261;
	text-decoration:none;
	vertical-align:top;
	padding:5px 30px;
	font-weight:600;
}

header nav li a span {
	font-size:12px;
	font-weight:normal !important;	
}

#main-img {
	margin-bottom:15px;	
}

#main-img img {
	vertical-align:bottom;	
}

/* サイドナビ */

#side {
	float:left;
	width:210px;	
}

.snav {
	list-style:none;
	list-style-type:none;
	margin:0;
	padding:0;	
}

.snav li {
	border:1px solid #ccc;
	background:url(../common/snav_bg.jpg) no-repeat bottom center;
	margin-bottom:5px;
}

.snav li a {
	display:block;
	padding:10px 10px 10px 35px;
	text-decoration:none;
	color:#3F3F51;
	font-size:14px;
	background:url(../common/snav_icon.png) no-repeat 10px center;
	line-height:normal;
}

.snav li a:hover {
	text-decoration:underline;
}
.sb-nav {
	list-style:none;
	list-style-type:none;
	margin:0;
	padding:0;
	text-align:center;
	margin:23px 0;
}

.sb-nav li {
	display:inline-block;
	text-align:center;
	margin:0 12px;
}



/* footer */

footer {
	width:auto;
	height:auto;
	min-height:81px;
	clear:both;
	background:url(../common/footer_bg.jpg) repeat-x top;
	text-align:center;
	font-family:"ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	line-height:81px;
}

footer address {
	font-size:12px;
	font-style:normal;
	
}

/* main */

#main {
	width:720px;
	height:auto;
	float:right;
}

.top-box {
	width:355px;
	border:1px solid #d7d7d7;
	position:relative;
	margin-top:5px;
	margin-bottom:10px;
	float:left;
}

.top-box:nth-child(even) {
	margin-left:10px;
}

.top-box:before {
	position:absolute;
	left:-1px;
	top:-6px;
	width:355px;
	height:5px;
	content:"";
	background:url(../images/top/top_box_bg.jpg) repeat-x top;
}

.top-box h2 {
	background:url(../images/top/top_h2_bg.jpg) no-repeat 0 0;
	text-align:left;
	min-height:38px;
	line-height:38px;
	padding-left:10px;
	border-bottom:1px solid #d7d7d7;
	font-size:13px;
}

.top-box figure {
	width:116px;
	height:116px;
	display:table-cell;
	text-align:center;
	vertical-align:middle;
}

.top-box .inner {
	position:relative;
	width:auto;
	height:auto;
	padding:10px;
	text-align:left;
}

.top-box .txt {
	display:table-cell;
	padding-left:30px;
	padding-top:5px;
	vertical-align:text-bottom;
	text-align:left;
	font-size:12px;
}

.top-box .more {
	position:absolute;
	right:10px;
	bottom:10px;	
}

.top-box .more a {
	text-decoration:none;
}

.top-box .more a:hover {
	text-decoration:underline;
}


#news {
	width:auto;
	height:auto;
	clear:both;
	padding-top:20px;
}

#news h2 {
	background:url(../images/top/h2_bg.jpg) repeat-x bottom;
	color:#FFCA00;
	font-size:18px;
	padding-left:3px;
	padding-bottom:5px;
	margin-bottom:15px;
}

.news-inner {
	width:auto;
	height:150px;
	overflow:auto;
	font-size:12px;
	padding:0 10px 0 10px;
}

.news-inner dt {
	float:left;
	background:url(../images/top/news_icon.png) no-repeat 0 2px;
	padding-left:15px;
}

.news-inner dd {
	padding:0 0 0 95px;
	border-bottom:1px solid #d7d7d7;
	padding-bottom:10px;
	margin-bottom:10px;
}

/* セカンドページ共通 */

.sec-h2 {
	margin-bottom:30px !important;	
}

.table,
.table2,
.table3 {
	width:100%;
	table-layout:fixed;
	border:1px solid #ccc;	
}

.table th,
.table td {
	text-align:left;
	vertical-align:top;
	padding:5px 20px;
	border-bottom:1px dotted #ccc;
	line-height:200%;
	font-size:14px;
	font-weight:normal;
}

.table th {
	background-color:#FFFFE8;
	width:180px;
	vertical-align:middle;
}

.table2 th,
.table2 td {
	text-align:left;
	vertical-align:top;	
}

.table2 th {
	background-color:#FFFFE8;
	font-size:16px;
	padding:10px;
	border-top:1px solid #ccc;
	border-bottom:1px solid #ccc;
}

.table2 td {
	font-size:14px;
	padding:20px;
}

.table2 td .left-box,
.table2 td .right-box {
	display:inline-block;
	line-height:200%;
	border-right:1px dotted #ccc;
	padding-right:40px;
	vertical-align:top;
}


.table2 td .right-box {
	padding-left:40px;
	border:none;
}

.table2 td .requirement-box {
	width:200px;
	display:inline-block;	
}

.table2 td .kazu {
	width:40px;
	display:inline-block;
	text-align:right;
}

.table3 th {
	background-color:#FFFFE8;
	font-weight:normal;
	width:140px;
}

.table3 {
	border:none;
	
}

.table3 th,
.table3 td {
	padding:15px 20px;
	border-bottom:1px dotted #ccc;
	font-size:14px;
}

.table3 tr:last-child th,
.table3 tr:last-child td {
	border-bottom:none;
}

.cnt {
	width:auto;
	height:auto;
	border:1px solid #ccc;
	margin-bottom:30px;
}

.cnt .inner {
	width:auto;
	height:auto;
	padding:0 20px 20px;
}

.cnt h2 {
	width:auto;
	height:44px;
	line-height:44px;
	font-size:16px;
	background:url(../common/h2_bg.jpg) no-repeat 0 0;
	padding-left:10px;
	margin-bottom:20px;
}

/* 会社概要 */

/* 事業案内 */

/* アクセスマップ */

.map-bt {
	float:right;
	vertical-align:middle;
	margin-top:-5px;
}

.gmap {
	width:auto;
	height:auto;
	padding-top:10px;
	clear:both;	
}

/* お問合わせ */

.contact-form .table th,
.contact-form .table td {
	padding:10px 20px !important;
}

.contact-form .table th {
	width:200px;
}

.txt-center {
	text-align:center;	
}

.line300 {
	line-height:300%;	
	margin-bottom:30px;
}

.line300 strong {
	font-weight:600;
}

.contact-form {
	
}

.contact-form table {
	margin-bottom:20px;
}

.contact-form .input,
.contact-form .txtarea {
	width:100%;
	background-color:#FFFFF7;
	border:1px solid #ddd;	
	border-radius: 5px;        /* CSS3草案 */  
    -webkit-border-radius: 5px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 5px;   /* Firefox用 */ 
}

.contact-form .txtarea {
	height:300px;	
}

.submit-bt1 {
	width:180px;
	height:44px;
	border:none;
	cursor:pointer;
	background:url(../images/contact/submit_bt1.jpg) no-repeat;
	margin:0 auto;
	text-align:center;
}

.hissu {
	background-color:#B20000;
	color:#fff;
	float:right;	

	border-radius: 5px;        /* CSS3草案 */  
    -webkit-border-radius: 5px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 5px;   /* Firefox用 */
	padding:0px 3px;
}


.clr:after{
  content: "."; 
  display: block; 
  height: 0; 
  font-size:0;	
  clear: both; 
  visibility:hidden;
}
	
.clr {display: inline-block;} 

/* Hides from IE Mac \*/
* html .clr {height: 1%;}
.clr {display:block;}
/* End Hack */ 



