@charset "UTF-8";
/*
Theme Name: Ishibashi Inc.
Theme URI: http://www.ibk-e.net/
Description: for Ishibashi Inc.
Version: 1.0
Author: <a href="http://www.narts.jp/">NARTS</a>
*/

/*--- initialize ---*/

* {
	padding:0;
	margin:0;
}

#header, #right_side, #footer, .widget {
	overflow: hidden;
}

body {
	background-color: #FFF;
	background-image: url(img/bg.png);
	background-repeat: repeat-x;
	font-family: "メイリオ", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
html {
	overflow: scroll;
}
img {
	border:0px;
}
a:link {
	color: #36C;
	text-decoration: underline;
}
a:visited {
	color: #666;
	text-decoration: underline;
}
a:hover {
	color: #039;
	text-decoration: underline;
}

#wrap {
	width: 940px;
	margin-right: auto;
	margin-left: auto;
}

/*header*/
#header {
	height: 96px;
	position: relative;
}
h1 {
	font-size: 12px;
	color: #666;
	font-weight: normal;
	position: absolute;
	left: 0px;
	top: 10px;
}
h3 {
	font-size: 18px;
	line-height: 37px;
	font-weight: bold;
	background-image: url(img/h3.png);
	text-indent: 20px;
	height: 37px;
	width: 720px;
	margin-right: auto;
	margin-bottom: 10px;
	margin-left: auto;
}

p#logo {
	position: absolute;
	left: 0px;
	top: 30px;
}
p#header_tel {
	position: absolute;
	top: 15px;
	left: 780px;
}
p#header_fax {
	position: absolute;
	top: 40px;
	left: 780px;
}
p#header_form a {
	position: absolute;
	top: 65px;
	left: 780px;
	background-image: url(img/header_form.png);
	display: block;
	height: 20px;
	width: 154px;
	text-indent: -9999px;
	overflow: hidden;
}
p#header_form a:hover {
	background-position: 0px -20px;
}

/*global navi*/
ul#gnavi {
	list-style-type: none;
	height: 43px;
	margin-bottom: 15px;
}
ul#gnavi li {
	text-indent: -9999px;
	overflow: hidden;
	float: left;
}
ul#gnavi li a:hover {
	background-position: 0px -43px;
}
#gn01 a {
	background-image: url(img/gn01.png);
	display: block;
	height: 43px;
	width: 135px;
}
#gn02 a {
	background-image: url(img/gn02.png);
	display: block;
	height: 43px;
	width: 134px;
}
#gn03 a {
	background-image: url(img/gn03.png);
	display: block;
	height: 43px;
	width: 134px;
}
#gn04 a {
	background-image: url(img/gn04b.png);
	display: block;
	height: 43px;
	width: 134px;
}
#gn05 a {
	background-image: url(img/gn05.png);
	display: block;
	height: 43px;
	width: 134px;
}
#gn06 a {
	background-image: url(img/gn06.png);
	display: block;
	height: 43px;
	width: 134px;
}
#gn07 a {
	background-image: url(img/gn07.png);
	display: block;
	height: 43px;
	width: 135px;
}

/*visual*/
#image {
	margin-bottom: 20px;
}


/*side bar*/
#left_side {
	float: left;
	width: 200px;
	margin-bottom: 40px;
	padding-top: 2px;
}
#side_inq {
	background-color: #E8EDF7;
	border-radius:4px;
	margin-bottom: 10px;
	text-align: center;
	padding-bottom: 4px;
}
#side_tel {
	margin-bottom: 4px;
}

#side_faxsheet {
	background-image: url(img/side_faxsheet_bg.png);
	height: 30px;
	width: 192px;
	margin-right: auto;
	margin-left: auto;
	padding-top: 3px;
	background-repeat: no-repeat;
	margin-bottom: 4px;
}
#side_faxsheet a {
	background-image: url(img/side_faxsheet.png);
	text-indent: -9999px;
	display: block;
	height: 25px;
	width: 170px;
	margin-right: auto;
	margin-left: auto;
	overflow: hidden;
}
#side_faxsheet a:hover {
	background-position: 0px -25px;
}
#side_form {
	background-image: url(img/side_form_bg.png);
	height: 35px;
	width: 192px;
	margin-right: auto;
	margin-left: auto;
	padding-top: 32px;
}
#side_form a {
	background-image: url(img/side_form.png);
	display: block;
	height: 25px;
	width: 172px;
	text-indent: -9999px;
	margin-right: auto;
	margin-left: auto;
	background-repeat: no-repeat;
}
#side_form a:hover {
	background-position: 0px -25px;
}




/*contents*/
#right_side {
	float: right;
	width: 725px;
	margin-bottom: 40px;
}

/*footer*/
#footer {
	clear: both;
	background-image: url(img/footer_bg.png);
	background-repeat: repeat-x;
	padding-top: 15px;
	color: #333;
	background-color: #FFF;
}
#footer a:link {
	color: #333;
	text-decoration: none;
}
#footer a:visited {
	color: #333;
	text-decoration: none;
}
#footer a:hover {
	color: #36C;
	text-decoration: underline;
}


#footer ul {
	font-size: 12px;
	text-align: center;
	list-style-type: none;
	margin-bottom: 30px;
}
#footer li {
	display: inline;
}
#footer_contents {
	width: 940px;
	margin-right: auto;
	margin-left: auto;
	position: relative;
	height: 70px;
	font-size: 13px;
	color: #333;
}
p#footer_logo {
	position: absolute;
	left: 0px;
	top: 0px;
}
p#footer_add {
	position: absolute;
	left: 0px;
	top: 40px;
}
p#footer_copy {
	text-align: right;
	position: absolute;
	top: 40px;
	right: 0px;
}
p.pagetop {
	background-image: url(img/arr05.png);
	background-repeat: no-repeat;
	background-position: left center;
	font-size: 12px;
	padding-left: 15px;
	margin-left: auto;
	width: 120px;
}

/* clearfix */
.clearfix:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}


/* ---------------------------------------- #post用 */
.post {
	margin-bottom: 20px;
}
.title {
	font-size: 14px;
	line-height: 35px;
	font-weight: bold;
	color: #039;
	background-image: url(img/h3.jpg);
	height: 35px;
	width: 685px;
	margin-bottom: 15px;
	padding-left: 15px;
	clear: both;
}
.meta {
  font-size:12px;
  text-align: right;
}
.post p {
	font-size: 14px;
	line-height: 150%;
	padding-right: 10px;
	padding-left: 20px;
	margin-bottom: 20px;
}
.post table {
	margin: 0 0 20px 10px;
	font-size: 14px;
}
.post table.table02 {
	margin: 0 auto 20px auto;
}
.post table.table02 td{
	width: 332px;
}
.post blockquote {
	margin:0 0 20px 30px;
}
/* table内はpタグ無視 */
.post table p {
	margin:0 !important;
	font-size: 14px !important;
	padding: 0 !important;
}
.post table td {
	vertical-align: top;
	padding: 5px;
}
.post img {
	padding:5px;
	border:1px solid #ccc;
}
.post a:hover img {
	opacity:0.8;
	filter:alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
	padding:5px;
	border:1px solid #039;
}

/* ---------------------------------------- #wordpress用 */
.contact_red {
  color: #F44;
  font-size:10px;
}
span.wpcf7-list-item { display: block; }
.aligncenter {
  margin-left:auto;
  margin-right:auto;
  display : block;
}
.alignright {
   float: right;
   margin: 0 0 0 10px;
}
.alignleft {
   float: left;
   margin: 0 10px 0 0;
}
.alignclear {
   clear:both;
}
.breadcrumb {
   font-size:12px;
   margin: 0 0 15px 0;
}
.clear {
	font-size: 0px;
	clear: both;
}


/***********************************************
　　　　レスポンシブ対応（東内）
***********************************************/
@media screen and (max-width: 767px) {
body {
	background-image: none;
}
#wrap {	
	width: 100%;
}
/*header*/
#header {	
	height: auto;
	position: static;
	border-top: 4px solid #639AFF;
}
h1 {
	text-align: center;
	position: static;
	padding-top: 7px;
}
h3 {	
	width: 100%;
	background-repeat: no-repeat;
	height: auto;
	min-height: 37px;
	line-height: 1.3em;
	padding-top: 7px;
}
p#logo {	
	position: static;
	text-align: center;
	margin-bottom: 0.5em;
}
p#header_tel {	
	position: static;
	text-align: center;
	margin-bottom: 0.2em;

}
p#header_fax {
	position: static;
	text-align: center;
	margin-bottom: 0.2em;
}
p#header_form {
	text-align: center;
	margin-bottom: 0.2em;
}
p#header_form a {
	position: static;
	background-position: center top;
	background-repeat: no-repeat;
	width: 100%;
}
p#header_form a:hover {	
	background-position: center -20px;
}
ul#gnavi {	
	width: 403px;
	height: auto;
	margin-top: 0.5em;
	margin-left: auto;
	margin-right: auto;
	background-image: url(img/gn_back_image.png);
	background-repeat: repeat;
}
#gn01 {
	display: none;
}
#gn07 a {	
	width: 134px;
}
#image img {
	max-width: 100%;
	height: auto;
}

/*contents*/
#right_side {	
	float: none;
	width: 100%;
}

/*side bar*/
#left_side {
	float: none;
	margin-left: auto;
	margin-right: auto;
	width: 200px;
	margin-bottom: 40px;
	padding-top: 2px;
}

#footer_contents {	
	width: 100%;
	position: static;
	height: auto;
}
p#footer_logo {
	position: static;
	text-align: center;
}
p#footer_add {
	position: static;
}
p#footer_copy {
	text-align: right;
	position: static;
}

}

/****************************
　　　　スマホ
****************************/
@media screen and (max-width: 402px) {
ul#gnavi {	
	width: 269px;
}
}