/*
Theme Name: Imbalance 2
Theme URI: http://www.wpshower.com/
Description: Imbalance 2 turns you Wordpress-based website to an attractive blog, portfolio or even online magazine. This free template designed in strict modern style with a minimalistic touch. Imbalance 2 can easily fresh up your web-magazine or blog. Due to modern flexible features and layout Imbalance 2 fits to almost any project and your visitors won't remain indifferent.
Author: WPSHOWER
Author URI: http://www.wpshower.com
Version: 1.0.3
License: GNU General Public License
License URI: license.txt
Tags: fluid, grid, blog, magazine, imbalance
*/

html, body, form, ul, li, table, td { margin: 0; padding: 0; }
body { position: relative; color: #333; }
body, input, textarea { font-size: 13px; }
a { text-decoration: none; }
a:hover { text-decoration: underline; }
a img { border: 0; }
td { vertical-align: top; }
ul { list-style-position: inside; }
h1 { font-size: 12px; }
h2 { font-size: 18px; }
h3 { font-size: 12px; }
blockquote { border-left-width: 3px; border-left-style: solid; margin-left: 7px; padding-left: 20px; font-size: 16px; color: #000; }
.clear { clear: both; }
.main_separator { color: #dedfe0; }
.wrapper { padding-top: 11px; margin: 0 40px;}
#header { border-bottom: 1px solid #dedfe0; padding-bottom: 50px; }
#site-title { float: left; width: 210px; padding-right: 40px; overflow: hidden; line-height: 27px; font-size: 23px; }
#site-title a { color: #333; font-weight: bold; text-decoration: none; }
#header-left { float: left; width: 210px; padding-right: 40px; }
#header-center { float: left; width: 210px; padding-right: 30px; }
#search { float: right; width: 220px; }
#header-right { margin: 20px 0 0 10px; }
#search label, #search input[type=submit] { display: none; }
#search input[type=text] { width: 200px; padding: 7px 9px; margin: 0; border: 1px solid #dedfe0; background: #fff; font-size: 13px; outline: none; }
#page_search input[type=submit] { display: none; }
.menu ul { list-style-type: none; }
.menu ul li { padding-bottom: 9px; }
.menu ul a { line-height: 13px; color: #303030; text-decoration: none; }
#boxes { margin-top: 40px; }
.box { width: 210px; margin-bottom: 70px; color: #000; }
.box .rel { position: relative; }
.box .rel p { margin: 0; }
.box .texts { position: absolute; top: -20px; left: -20px; width: 210px; color: #000; z-index: 200; opacity: 0; filter: alpha(opacity=0); }
.box .texts .categories a, .box .texts a, .box .texts .posted, .box .texts .posted a { color: #fff; }/*施工例フォント*/
.box .texts .transparent img { opacity: 0.1; filter: alpha(opacity=5); }
.box .texts .abs { position: absolute; top: 0; }
.box .categories { padding-bottom: 15px; }
.box .categories a, .box .posted a { color: #a1a1a1; }
.box h1 { margin: 0; padding-top: 10px; font-size: 16px; }
.box h1 a { color: #333; }
.box .posted { padding-top: 10px; color: #a1a1a1; }
.box img { display: block; }
.fetch { clear: both; width: 460px; margin: 0 auto 40px; background: #f9f9f9; -moz-border-radius: 4px; border-radius: 4px; text-align: center; }
.fetch a { display: block; height: 40px; line-height: 40px; font-size: 16px; font-weight: bold; color: #333; text-decoration: none; }
.fetch:hover a { color: #fff; }
#content { padding-bottom: 20px; }
#nav-above { float: left; width: 210px; padding-left: 650px; text-align: right; color: #000; }
#nav-above a { text-decoration: none; color: #000; }
.nav-previous, .nav-next { display: inline; }
.nav-separator { color: #e5e5e5; }
.post_title { margin-top: 35px; overflow: hidden; }
.post_title h2 { margin: 0 0 10px 20px; font-size: 18px; line-height: 35px; width: 710px; }
.entry-title, .page-title { margin-left: 20px; margin-top: 35px; font-size: 18px;}
.entry-meta { padding-bottom: 30px; color: #000; }
.entry-meta a { color: #333; text-decoration: none; }
#wides { clear: both; }
.entry-aside { width: 0px; padding-right: 20px; vertical-align: middle; }
.entry-content-right { width: 710px; font-size: 12px; line-height: 21px; }
.entry-content { width: 710px; margin-left: 20px; font-size: 15px; line-height: 21px; }
.entry-utility { padding: 10px 0; }
.entry-tags { margin: 10px 0; }
.entry-tags span { font-weight: bolder; }
#social { padding: 20px 0 0 0; }
.twitter-share-button { float: left; margin: 2px 20px 0 0; }
.post img, .page img { margin: 20px 0; }
.post .alignleft, .page .alignleft { float: left; margin-right: 20px; }
.post .alignright, .page .alignright { float: right; margin-left: 20px; }
.post .aligncenter, .page .aligncenter { display: block; clear: both; margin: 20px auto; }
#comments { padding: 0 0 0 246px; width: 714px; }
#comments-title { font-size: 21px; margin: 40px 0 20px 4px; }
.commentlist { margin: 0; padding: 0; list-style: none; }
.commentlist ul.children { list-style: none; }
.commentlist li > div { position: relative; border-bottom: 1px solid #dedfe0; padding: 30px 0 30px 4px; }
.commentlist li li > div { margin-left: 90px; }
.commentlist li li li > div { margin-left: 180px; }
.commentlist li li li li > div { margin-left: 270px; }
.commentlist li li li li li > div { margin-left: 360px; }
.comment-avatar { position: absolute; top: 30px; left: -96px; }
.comment-content { margin-left: 96px; border-bottom: 1px solid #dedfe0; }
.comment-author { float: left; width: 210px; padding-right: 40px; font-size: 15px; }
cite { font-style: normal; font-weight: bold; }
.comment-meta { float: left; width: 210px; padding-right: 40px; color: #999999; }
.comment-body { clear: both; padding-top: 7px; font-size: 15px; line-height: 21px; }
#respond { padding-left: 4px; }
li.comment > div { position: relative; }
.reply { position: absolute; top: 30px; right: 20px; }
#reply-title { font-size: 21px; }
.comment-reply-link { display: none; }
.comment-form-author, .comment-form-email, .comment-form-url { float: left; width: 460px; margin: 0; padding: 10px 0; }
.comment-form-comment { clear: both; width: 460px; margin: 0; padding: 10px 0; }
input[type="text"], textarea { background: #fff; border: 1px solid #ccc; padding: 8px; outline: none; color: #6b6b6b; -moz-border-radius: 4px; border-radius: 4px; }
#comments input[type="text"] { width: 442px; }
#comments textarea { width: 442px; }
.form-submit { margin-bottom: 40px; }
.form-submit input { width: 460px; padding: 6px 0; color: #fff; font-size: 15px; font-weight: bold; cursor: pointer; border: 0; text-align: center; -moz-border-radius: 4px; border-radius: 4px; }
.recent { margin-top: 40px; padding-top: 40px; border-top: 1px solid #ccc; }
#footer { padding: 30px 0 70px; border-top: 1px solid #000000; }
#site-info { float: left; width: 460px; padding: 40px 40px 0 20px; line-height: 22px; }
#site-info a { text-decoration: none; color: #333; }
#footer-left { float: left; width: 180px; padding-right: 0px; }
#footer-right { float: left; width: 210px; margin-left:20px; }
#footer-ar { float: left; width: 220px; margin-left:30px; margin-top: 0px; margin-right:30px; line-height:2em;}
#footer-ad { float: none; width: 320px; margin-left:720px; margin-top: 0px; line-height:2em;}
#infscr-loading { background: none repeat scroll 0 0 #000000; bottom: 40px; color: #FFFFFF; height: 100px; left: 40%; opacity: 0.8; padding: 10px; position: fixed; width: 200px; z-index: 5000; border-radius: 10px; }
#footer-right p, #footer-left p {
font-weight: bold;
}

/*ヘッダー-----------------------------------------------------------------------------------*/

#header {

	height: 180px;
	padding: 30px 0 30px; border-bottom:solid 1px #000066;
}

.headerMenu {
	width: 1200px;
	margin: 5px 0 0 25px;
	padding-top: 20px;
	clear:both;
	font-size:18px;
}

.headerMenu li {
    display: inline;
	opacity: 1.0;
 }
 
.hmenu {
	padding-right: 115px;
}

.headerMenu li:hover {
	opacity: 0.5;
 } 
 
.headerLogo {
	 width: 144px;
	 margin: 20px 0 0 20px;
	 float: none;
 }
 
.headerText {
	width: 650px;
	float:left;
line-height: 170%;
	margin: 20px 0x 20px 0;
}

.headerText h1 {
margin-left: 20px;
padding-top:5px;
}

.headerText p {
width: 500px;
margin: 20px 0 0 20px;
}

.costA {
width:1000px;
height: 600px;
   border-width: 0px 0px 1px 0px; /* 太さ */
   border-style: dotted; /* 線種 */
   border-color: #000; /* 線色 */
   height: 1px; /* 高さ */
}

.costA th {
width:300px;
padding-right:20px;
padding-top: 20px;
text-align:left;
vertical-align: top;
}

.costA td {
width:700px;
margin-left: 30px;
text-align:right;
}


.costA img {
margin-right:0px;
}

.costAN {
width:1000px;
height: 600px;
}

.costAN th {
width:300px;
padding-right:20px;
padding-top: 20px;
text-align:left;
vertical-align: top;
}

.costAN td {
width:700px;
margin-left: 30px;
text-align:right;
}


.costAN img {
margin-right:0px;
}



/*追記-----------------------------------------------------------------------------------*/

.fb-like-box {
margin-left: 50px;
}

.topMenu li { 	
    display: inline;
	width: 166px;
} 

.topMenuB {
list-style-type:none;
float:left;
margin-top:20px;
padding: 90px 0 0 20px;
overflow: hidden;
clear:both;
}

.topMenuB li {
float: left;
}

.topMenuBA {
width: 450px;
}


.boxImgText {
	width: 210px;
	height: 0px;
	position:absolute;
	top:160px;
}

.boxImg {
	width: 210px;
	height: 150px;
margin5px;
	padding: 14px 14px 125px 13px;
	position: absolute;
	z-index:2;
}

.boxA h3 {
	margin-top: 15px;
}

.boxA p {
	margin-top: 10px;
	font-size:13px;
}

.boxA {
	width:210px;
	height:150px;
	padding-right:25px;
	margin-top: 20px;
	margin-bottom: 120px;
	color: #;
	float: left;
	display: inline;  /* IE6 fix */
text-decoration:none;
}


.boxImg a:link    { color:#333; /*background:#bbb;*/ text-decoration:none;}   /* リンク */
.boxImg a:visited { color:#333; background:#bbb; text-decoration:none;}   /* 訪問済みリンク */
.boxImg a:hover   { color:#fff; background:#555; text-decoration:none;}   /* ポイント時のリンク */
.boxImg a:active  { color:#fff; background:#555; text-decoration:none;}   /* アクティブなリンク */

.boxA :link    { color:#333; /*background:#bbb;*/ text-decoration:none;}   /* リンク */
.boxA :visited { color:#333; background:#bbb; text-decoration:none;}   /* 訪問済みリンク */
.boxA :hover   { color:#fff; background:#555; text-decoration:none;}   /* ポイント時のリンク */
.boxA :active  { color:#fff; background:#555; text-decoration:none;}   /* アクティブなリンク */


.social-content {
border-top: 1px solid rgb(0, 0, 0);
margin-top:50px;
}

/* color from theme options */
/*
body, input, textarea { font-family: "Helvetica Neue", Helvetica, Arial, "Sans-Serif"; }
a, .menu a:hover, #nav-above a:hover, #footer a:hover, .entry-meta a:hover { color: #fff; text-decoration: underline; }
.fetch:hover { background: #555; }
blockquote { border-color: #555; }
.menu ul .current-menu-item a { color: #fff; }
#respond .form-submit input { background: #fff; }
*/

/* fluid grid */

.wrapper { margin: 0 40px; }
.box .texts { border: 20px solid #808080; background: #808080; color: #fff; }
.box .categories { padding-top: 15px; color: #fff; }


#haikei {
text-align: right;
float:left;
font-weight:bold;
font-size:12px;
margin-left: 15px;
line-height:170%;
/*
background:url('http://brownplus.jp/images/hukidasi.png') no-repeat;
*/
width:520px;
height:60px;
}

.fb {
font-weight: bold;
}
/*
.anime {
background:url('https://brownplus.jp/images/ganime.gif') no-repeat;
width:520px;
height:60px;
}
*/

/* --- Masonry.jsのレイアウトを無効化し、CSS Gridで上書き --- */

/* 1. 親コンテナ(#boxes)をGridレイアウトに変更 */
#boxes {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); /* 210px幅を基本に自動で列数を調整 */
  gap: 40px; /* アイテム間の隙間 */

  /* Masonryが設定する高さをリセット */
  height: auto !important; 
  position: static !important; /* positionをリセット */
}

/* 2. Masonryが各アイテム(.box)に設定するスタイルを無効化 */
.box {
  /* JSが設定する position:absolute と top, left を強制的に上書き */
  position: static !important;
  top: auto !important;
  left: auto !important;
  width: auto !important; /* 幅指定もGridに任せる */
  margin: 0 !important; /* マージンもリセット */
}

/* 3. 画像下のテキスト部分の高さを揃える */
.box > .rel {
  display: flex;
  flex-direction: column;
  height: 100%; /* 高さを100%に */
}

.box h1 {
  /* タイトルが伸びて、下のカテゴリを押し下げる */
  flex-grow: 1; 
}


