@charset "utf-8";

/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}

@font-face {
  font-family: 'hinamincho';
  src: url('./fonts/HinaMincho.woff') format('woff');
  src: url('./fonts/HinaMincho.eot') format('eot');
  src: url('./fonts/HinaMincho.woff2') format('woff2');
  src: url('./fonts/HinaMincho.ttf') format('ttf');
}


#pagebody { display: none; }   /* 非表示 */
#pagebody2 { display: none; }   /* 非表示 */
#osirase { display: none; }   /* 非表示 */
#ka_structure { display: none; }   /* 非表示 */
#structure01 { display: none; }   /* 非表示 */
#m1 { display: none; }   /* 非表示 */
#h0 { display: none; }   /* 非表示 */
#wh1 { display: none; }   /* 非表示 */
#renov1 { display: none; }   /* 非表示 */
#tah1 { display: none; }   /* 非表示 */
#pj1 { display: none; }   /* 非表示 */
#pj2 { display: none; }   /* 非表示 */
#pj3 { display: none; }   /* 非表示 */
#project1 { display: none; }   /* 非表示 */
#project2 { display: none; }   /* 非表示 */
#project3 { display: none; }   /* 非表示 */
#of1 { display: none; }   /* 非表示 */
#t { display: none; }   /* 非表示 */
#map { display: none; }   /* 非表示 */
#table1 { display: none; }   /* 非表示 */
#table2 { display: none; }   /* 非表示 */
#fadein { display: none; }   /* 非表示 */
#hello { display: none; }   /* 非表示 */
#hjm0 { display: none; }   /* 非表示 */
.foot1 { display: none; }   /* 非表示 */
.foot2 { display: none; }   /* 非表示 */
.wap { display: none; }   /* 非表示 */
.buttons-coll1 { display: none; }   /* 非表示 */
.buttons-coll2 { display: none; }   /* 非表示 */
.buttons-coll3 { display: none; }   /* 非表示 */
.container1 { display: none; }   /* 非表示 */
.container2 { display: none; }   /* 非表示 */

.bx-wrapper { display: none; }   /* 非表示 */

.bxslider01 { display: none; }   /* 非表示 */
.bxslider02 { display: none; }   /* 非表示 */
.bxslider03 { display: none; }   /* 非表示 */
.bxslider04 { display: none; }   /* 非表示 */
.bxslider05 { display: none; }   /* 非表示 */




/*============================================
Google font 適用
============================================*/
<style>
@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho&display=swap');
</style> 





/*============================================
bxslider
============================================*/

.bx-slider{
    margin: 0 !important;


}

.bx-wrapper {
    margin: 50px auto !important;    /* 配置の高さの指定 */
    border:  5px solid #000000 !important;
    box-shadow: none !important;
}



.bx-wrapper img {
    display: block;
    margin: 0px auto;
}


.bx-wrapper .bx-caption {
  background: transparent !important;
}



.bx-viewport {
    max-height: 450px;
}



.slider img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  margin: auto;
}




/*============================================
Homeのスタイル
============================================*/
.home {
  height: 600px;
  position: relative; 
}

.home .btn-horizontal-border1 {
  display: block;
  width: 450px;
  text-align: center;
  top: 50%; /*親のtopから50%*/
  left: 50%; /*親のleftから50%*/
  transform: translateY(-50%) translateX(-50%); /*子要素自体の大きさを考慮*/
  margin: 0; /*margin:0を入れる*/
  padding: 30px 0; /*左右のpaddingを0にする*/
}


.home .btn-horizontal-border1 br {
  display: none;
}




.home .btn-horizontal-border2 {
  display: block;
  width: 450px;
  text-align: center;
  top: 50%; /*親のtopから50%*/
  left: 50%; /*親のleftから50%*/
  transform: translateY(-50%) translateX(-50%); /*子要素自体の大きさを考慮*/
  margin: 0; /*margin:0を入れる*/
  padding: 30px 0; /*左右のpaddingを0にする*/
  font-family: "hinamincho", serif;
  font-weight: 400;
  font-style: normal;
}


.home .btn-horizontal-border2 br {
  display: none;

}


.btn-horizontal-border2 .tochi1 {
  font-size: 15px;
  position: absolute; /*子要素をabusoluteに*/
  display: block;
  text-align: center;
  top: 80%; /*親のtopから50%*/
  left: 50%; /*親のleftから50%*/
  transform: translateY(-50%) translateX(-50%); /*子要素自体の大きさを考慮*/
  margin: 0; /*margin:0を入れる*/
  padding: 30px 0; /*左右のpaddingを0にする*/
  font-family: "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}





@media screen and (max-width:800px) {

.home {
  font-size: width: 80%;
  position: relative; 
}

.home .btn-horizontal-border1 {
  font-size: 10px;
  width: 80%;
  color: #043c78;
}

.home .btn-horizontal-border1 br {
  display: inline;
}



.home .btn-horizontal-border2 {
  font-size: 10px;
  width: 80%;
  color: #656765;
}

.home .btn-horizontal-border2 br {
  display: inline;
}


.btn-horizontal-border2 > div {
  color: #373330;
}



}



/*============================================
Homeボタンのスタイル、アクション
============================================*/

.btn-horizontal-border1 {
  position: relative;
  display: inline-block;
  font-weight: bold;
  padding: 12px 0 8px;
  text-decoration: none;
  color: #9fa09e;
  transition: .4s;
}

.btn-horizontal-border1:hover {  /*=========色の変化===========*/
  color: #043c78;
}

.btn-horizontal-border1:before {
  position: absolute;
  content: '';
  width: 100%;
  height: 4px;
  top:100%;
  left: 0;
  border-radius: 3px;
  background:#9fa09e;
  transition: .2s;
}

.btn-horizontal-border1:after {
  position: absolute;
  content: '';
  width: 100%;
  height: 4px;
  top:100%;
  left: 0;
  border-radius: 3px;
  background:#9fa09e;
  transition: .2s;
}

.btn-horizontal-border1:hover:before {
  top: -webkit-calc(100% - 15px);
  top: calc(100% - 15px);
}

.btn-horizontal-border1:hover:after {
  top: 15px;
}



.btn-horizontal-border2 {
  position: relative;
  display: inline-block;
  font-weight: bold;
  padding: 12px 0 8px;
  text-decoration: none;
  color: #9fa09e;
  transition: .4s;
}

.btn-horizontal-border2:hover {  /*=========色の変化===========*/
  color: #656765;
}

.btn-horizontal-border2:hover > div {  /*=========土地家屋調査士の色の変化===========*/
  color: #2b2b2b;
}


.btn-horizontal-border2:before {
  position: absolute;
  content: '';
  width: 100%;
  height: 4px;
  top:0%;
  left: 0;
  border-radius: 3px;
  background:#9fa09e;
  transition: .2s;
}

.btn-horizontal-border2:after {
  position: absolute;
  content: '';
  width: 100%;
  height: 4px;
  top:0%;
  left: 0;
  border-radius: 3px;
  background:#9fa09e;
  transition: .2s;
}


.btn-horizontal-border2:hover:before {
  top: -webkit-calc(100% - 15px);
  top: calc(100% - 5px);
}

.btn-horizontal-border2:hover:after {
  top: 15px;
}




/*============================================
helloボタンの回転 ホバーアクション
============================================*/

.hello p{
	transition: all 1s linear 0s;

}

.hello p:hover {
	transform: rotateY(360deg);
}



/*============================================
Hello
============================================*/

.hello {
position: relative;
width: 200px;
height: 150px;
background: #01558d;
color: white;
opacity: 0;
 margin: 0 auto;
 margin-top: 60px;
}

.hello p{
position: absolute;
width: 100%;
font-size: 20px;
font-family: "arial black", "sans-serif";
letter-spacing: 0.4em;
text-align: center;
text-indent: 0.4em;
margin: 0 auto;
margin-top: 60px;
}

.hello.open {
opacity: 1;
animation: Fade-In2  1s linear;
}


@keyframes Fade-In2 {
100% {transform: rotateY(360deg);}
} 




   /*画面が小さくなると、カーソルを変化させる*/

@media screen and (max-width:800px) {
.hello:hover {
	cursor: pointer;
}

.hello p{
font-size: 20px;
font-family: "arial black", "sans-serif";
}

}






/*============================================
お知らせ
============================================*/


#osirase{
 padding-top:80px;
 width:500px;
 margin-left: auto;
 margin-right: auto;
}


#osirase > dl{
 width:500px;
}

#osirase > dt{
 border-bottom:1px solid #ccc;
 float:left;
 padding:10px 5px;
}

#osirase > dd{
 border-bottom:1px solid #ccc;
 margin-left:100px;
 padding:10px 5px;
}

#osirase > dt > a{
 background-color:#aacf53;	/*ボタンの色*/
 border-radius:5px;
 color:#fbfbfb;	                /*文字の色*/
 margin:0 20px;
 padding:5px 15px;
 text-decoration:none;
 cursor:default;	        /*カーソルの種類*/
}





@media screen and (max-width: 800px){

#osirase{
 padding-top:80px;
 width:300px;
 margin-left: auto;
 margin-right: auto;
}


#osirase > dl{
 width:300px;
}

#osirase > dt{
 font-size: 70%;
 border-bottom:1px solid #ccc;
 float:left;
 padding:5px 1px;
}

#osirase > dd{
 font-size: 70%;
 border-bottom:1px solid #ccc;
 margin-left:50px;
 padding:5px 1px;
}

#osirase > dt > a{
 background-color:#aacf53;	/*ボタンの色*/
 border-radius:5px;
 color:#fbfbfb;	                /*文字の色*/
 margin:0 5px;
 padding:5px 8px;
 text-decoration:none;
 cursor:default;	        /*カーソルの種類*/
}


}








/*============================================
全般的なスタイル
============================================*/
* {
	margin:0; padding:0; 		/*全要素のマージン・パディングをリセット*/
}
body {
	background-color:#FFFFFF;	/*ページ全体の背景色*/
	font-size:95%;			/* フォントサイズを95%にする */
	font-family:'Shippori Mincho', serif;	/* googlefont */
	line-height:1.5;		/* 行の高さを1.5倍にする */
	color:#333333;			/* 文字色を濃い目のグレーにする */

user-select:none;
-webkit-user-select:none;
-ms-user-select: none;
-moz-user-select:none;
-khtml-user-select:none;
-webkit-user-drag:none;
-khtml-user-drag:none;

}



div#pagebody {
	width:1000px; margin:0 auto;			/*内容全体をセンタリング*/
	background-color:#ffffff;			/*内容全体の背景色*/
}


div#pagebody2 {
	width:1000px; margin:0 auto;			/*内容全体をセンタリング*/
	background-color:#ffffff;			/*内容全体の背景色*/
}


.q1 .char {
  animation: slide-in 10s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  animation-delay: calc(60ms * var(--char-index));
}

.q2 .char {
  animation: slide-in 10s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  animation-delay: calc(60ms * var(--char-index));
}

.cyousasi1 {
  display:block;
  font-size: 23px
}



.q1 {
width:380px;
  cursor: pointer;
  color: #043c78;
}

.q2 {
width:280px;
  cursor: pointer;
  color: #656765;
  font-family: "hinamincho", serif;
  font-weight: 400;
  font-style: normal;
}

.cyousasi1 {
  color: #373330;
  font-family: "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

@keyframes slide-in {
  0% {
    transform: translateY(-1em) rotate(-0.5turn) scale(0.5);
  }
  3%,
  100% {
    transform: translateY(0) rotate(0deg) scale(1);
  }
}




p {
  width:660px;		/*幅の指定*/
  margin:10px;		/*マージン*/
  text-indent:1em;       /*インデント幅*/
}



@media screen and (max-width: 800px){

html,body {
  overflow-x: hidden;
}

.q1 {
  width:300px;
  font-size:5vw;
  margin-top: 5px ;
  margin-left: 15px ;
}

.q2 {
  width:180px;
  font-size:5vw;
  margin-top: 5px ;
  margin-left: 15px ;
}

.cyousasi1 {
  display:block;
  font-size: 14px
}

}



/*============================================
ヘッダ
============================================*/
div#header {
	height:80px;				/*ヘッダ部分の高さ*/
}
div#header h1 {
	padding:10px 0px 5px 20px;		/*見出しの位置調整*/
	font-size:18px;				/*フォントのサイズ*/
	font-family:'Shippori Mincho', serif;	/*googlefont*/
}
div#header h1 a {text-decoration:none;} 	/*リンクの下線を無くす*/

/*============================================
メインメニュー
============================================*/
ul.gNav-menu  {
	width:1000px; height:50px; 	/*メインメニュー部分の幅と高さ*/
	margin:0px 20px; 		/*上下マージン0px、左右マージン20px*/
	text-align:center;
}
.gNav-menu  li {
	list-style-type:none;		/*リストマーカー無しにする*/
	display:inline;			/*リスト項目をインライン表示にする*/
	float:left;			/*リスト項目を横に並べる*/
}
.gNav-menu  li a {
	background-color:ffffff;		/*背景色*/
	color:#111111;			/*文字色*/
	display:block;			/*リンク部分をブロック表示にする*/
	width:200px; height:35px;	/*幅と高さ*/
	padding:5px 0px 0px 0px;	/*上パディング*/
	text-align:center;		/*テキストをセンター揃えにする*/
	text-decoration:none;		/*リンク部分を下線無しにする*/

}



.gNav-menu a {
  position: relative;
  text-align: center;
  overflow: hidden;
  padding: 10px 23px; //メニューに入るテキスト量によってpaddingは変更してください
}
.gNav-menu a::after {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  content: "";
  width: 0%;
  height: 2px;
  background: #043c78;
  transition: all 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.gNav-menu a span {
  display: block;
  width: 100%;
  margin: 0 auto;
  transition: all 0.1s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.gNav-menu a span.en {
  position: absolute;
  top: 100%;
  left: 0%;
  font-size: 14px;
  font-weight: bold;
  white-space: nowrap;
}
.gNav-menu a:hover::after {
  width: 100%;
}
.gNav-menu a:hover span.ja {
  transform: translate(0%, -150%);
}
.gNav-menu a:hover span.en {
  top: 25%;
}




/*============================================
メインメニュー responsive
============================================*/




#hamburger .btn-gNav{
  position: fixed;
  top: 1px;
  right: 20px;
  width: 30px;
  height: 24px;
  z-index: 3;
  box-sizing: border-box;
  cursor: pointer;
  -webkit-transition: all 400ms;
  transition: all 400ms;
}

#hamburger .btn-gNav span{
  position: absolute;
  width: 100%;
  height: 4px;
  background: #666;
  border-radius: 10px;
  -webkit-transition: all 400ms;
  transition: all 400ms;
}
#hamburger .btn-gNav span:nth-child(1) {
  top:0;
}
#hamburger .btn-gNav span:nth-child(2) {
  top:10px;
}
#hamburger .btn-gNav span:nth-child(3) {
  top:20px;
}
#hamburger .btn-gNav.open span:nth-child(1){
  background: #fff;
  top: 6px;
  -webkit-transform: rotate(-45deg);
  -moz-transform   : rotate(-45deg);
  transform        : rotate(-45deg);
}
#hamburger .btn-gNav.open span:nth-child(2),#hamburger .btn-gNav.open span:nth-child(3){
  top: 6px;
  background :#fff;
  -webkit-transform: rotate(45deg);
  -moz-transform   : rotate(45deg);
  transform        : rotate(45deg);
}
#gNav{
  position: fixed;
  top: 0;
  right: -100%;
  width: 100%;
  height: 100%;
  background: #444;
background-color: rgba(100, 100, 100, 0.9);  /* 90% 不透過 */
  font-size: 16px;
  box-sizing: border-box;
  z-index: 2;
  padding-top: 50px;
  transition: .3s;
}
#gNav.open{
  right: 0px;
}
#gNav .gNav-menu{
  width: 100%:;
  height:100%;
  display: flex;
  flex-direction: column;
  text-align: center;

}
#gNav .gNav-menu li{
  display: block;
  padding : 20px 30px;

}
#gNav .gNav-menu li a{
  color:  #fff;        /*文字色*/
  text-decoration: none;

}

#gNav .gNav-menu li a .en{

  text-decoration: none;

}




@media screen and (min-width: 800px){
  .btn-gNav{
    position: fixed;
    display: none;

  }


  #gNav{

    position: relative;
    top: -100;
    right: 0;
    height: 50px;
    background-color:#ffffff;
  }


  #gNav .gNav-menu{
    display: flex;
    flex-direction: row;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    padding-left: 50px;

  }


  #gNav .gNav-menu li a{
	color:#111111;	
    padding-top: 5px;

  }




}




/*============================================
会社概要のページの配置

============================================*/

.table1 {
    display: block;
    margin-top: 40px;
    margin-left: auto;
    margin-right: auto;
}


.table2 {
    display: block;
    margin-top: 40px;
    margin-left: auto;
    margin-right: auto;
}

#of1 {
    display: block;
    margin-top: 70px;
    margin-left: auto;
    margin-right: auto;
}

#map {
    display: block;
    margin-top: 70px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 200px;
}



.hjm0 {
  display: flex;
  justify-content: center;
}

.hjm1 {
  font-size: 30px;
  font-family: 'Hannotate SC',sans-serif,
       "Helvetica Neue",
       Arial,
       "Hiragino Kaku Gothic ProN",
       "Hiragino Sans",
       Meiryo,
       sans-serif;
  display: flex;
  justify-content: center;
  flex-wrap: wrap; 
  padding: 0px 0;
color:#69b076;
}

.hjm2 {
  font-size: 30px;
  font-family: 'Hannotate SC',sans-serif,
       "Helvetica Neue",
       Arial,
       "Hiragino Kaku Gothic ProN",
       "Hiragino Sans",
       Meiryo,
       sans-serif;
  display: flex;
  justify-content: center;
  flex-wrap: wrap; 
  padding: 0px 0;
color:#69b076;
}

.hjm3 {
  font-size: 30px;
  font-family: 'Hannotate SC',sans-serif,
       "Helvetica Neue",
       Arial,
       "Hiragino Kaku Gothic ProN",
       "Hiragino Sans",
       Meiryo,
       sans-serif;
  display: flex;
  justify-content: center;
  flex-wrap: wrap; 
  padding: 0px 0;
color:#69b076;
}



@media(max-width: 800px){

.hjm0 {
  padding-top: 40px;
}

}

/*============================================
テーブルのデザイン
============================================*/

.table1 {
  border:solid 1px #aaaaaa;
  width:550px;  /*表の幅*/
}

ul {
  list-style: none;
}


.table1 th{
  border:solid 1px #aaaaaa;
  width: 30%;
  background-color: #6666;
  text-align: center;
  padding : 5px 10px;
}

.table1 td{
  border:solid 1px #aaaaaa;
  width: 70%;
  padding : 5px 10px;
  text-align: left;
}



.table2 {
  border:solid 1px #aaaaaa;
  width:550px;  /*表の幅*/
}

ul {
  list-style: none;
}


.table2 th{
  border:solid 1px #aaaaaa;
  width: 30%;
  background-color: #6666;
  text-align: center;
  padding : 5px 10px;
}

.table2 td{
  border:solid 1px #aaaaaa;
  width: 70%;
  padding : 5px 10px;
  text-align: left;
}





@media(max-width: 800px){
.table1 {
  border:solid 1px #aaaaaa;
  width:100%;  /*表の幅*/

}

.table2 {
  border:solid 1px #aaaaaa;
  width:100%;  /*表の幅*/

}


ul {
  list-style: none;
}


.table1 th{
display: block;
  font-size: 10pt;
  border:solid 1px #aaaaaa;
  width: 100%;
  background-color: #6666;
  text-align: left;
  padding : 3px 30px;
box-sizing: border-box;
}

.table1 td{
display: block;
  font-size: 10pt;
  border:solid 1px #aaaaaa;
  width: 100%;
  padding : 5px 10px;
  text-align: left;
box-sizing: border-box;
}

.table2 th{
display: block;
  font-size: 10pt;
  border:solid 1px #aaaaaa;
  width: 100%;
  background-color: #6666;
  text-align: left;
  padding : 3px 30px;
box-sizing: border-box;
}

.table2 td{
display: block;
  font-size: 10pt;
  border:solid 1px #aaaaaa;
  width: 100%;
  padding : 5px 10px;
  text-align: left;
box-sizing: border-box;
}

}




/*============================================
Office 写真
============================================*/

.office  {  
    position: relative;
    width:  550px;
    margin: auto;
}


#of1 {
    width:  550px;
    border:double 4px #aaaaaa;
    box-sizing: border-box;
}

.office h2 {  
    position: absolute;
    padding: 10px;
    top: -40px;
    color:#696969;
}



@media(max-width: 800px){

.office  {  
    position: relative;
    width:   100%;
    margin: auto;
}

#of1 {
    width:  100%;
	display: table;
	margin-left: auto;
	margin-right: auto;
    border:double 4px #aaaaaa;
}

.wap {
    width:  100%;
  text-align: center;

}
}


/*============================================
Googlemap
============================================*/

.map {
    position: relative;
    width:  550px;
    height: 550px ;
    margin: -5px 0px 0px 0px ;
    box-sizing: border-box;
}

.map iframe {
    width:  550px;
    height: 550px ;
    box-sizing: border-box;
}


.map h2 {  
    position: absolute;
    padding: 10px;
    top: -40px;
    color:#696969;
}



@media(max-width: 800px){
.map {
    width:  100%;
    height: 400px ;
	display: table;
	margin-left: auto;
	margin-right: auto;
}

.map iframe {
        height: 400px ;
	display: table;
	margin-left: auto;
	margin-right: auto;
    box-sizing: border-box;
width: 100%;
}

}



/*============================================
電話
============================================*/

             /* 電話ボタン*/

.btn-tel{
  pointer-events: none;
  color: black;

}


   /* スマホでタップした時だけ電話発信を有効にする*/

@media(max-width: 800px){

.btn-tel{
  pointer-events: auto;
  color: #008b8b;
}

}


/*============================================
写真　マスク 
============================================*/

.olk{
   overflow : hidden;
   position : relative;
  /*=====    transition: 0.5s ;    これを使うとアニメーションがおかしくなる======*/
}

.olk .caption {
   font-size: 16px;
   text-align:center;
   color:#fff;
   padding-top:80px;
}



.olk .mask {

   width:100%;
   height:100%;
   position:absolute;
   top:0;
   left:0;
   opacity:0;	/* マスクを表示しない */
   background-color:rgba(0,0,0,0.4);
   -webkit-transition:all 0.4s ease-out;
   transition:all 0.4s ease-out;
}

.olk:hover .mask {

   opacity:1;	/* マスクを表示する */
   -webkit-transform:scale(1);	/* 拡大 */
   transform:scale(1);
}

.olk:hover {
   transform: scale(1.1);
}





                         /* NEW の表示 */
.new1 {            
   font-family: "Comic Sans MS" ;
   font-size: 15px;
   color:#ff7f7f;
   position: absolute;
   bottom: 5px; 
   right: 5px; 
}



.olk:hover .new1 {
   opacity:0;	/* マスクを非表示する */
}






/*============================================
写真  project 配置
============================================*/



.container1 {
    margin: 20px ;
    display: grid;
    grid-auto-rows: 200px;
    grid-template-columns: repeat(auto-fit, 200px);
    justify-content: center; /* グリッド全体を中央に寄せる設定 */
    column-gap: 30px;
    row-gap: 30px;
}

.container1 .olk > img{
    width: 200px;
}





#pj1:hover {
	cursor: pointer;
}

#pj2:hover {
	cursor: pointer;
}




/*============================================
写真  project 
============================================*/

.tejyun_01 {
  display:inline-block;
  color:#000;
  font-size: 18px;
  font-weight: bold;
  border: solid 1px #454545;
  padding: 1px 10px 1px 10px;
  margin-top:10px;
}

.image0 {  
    position: relative;
    width: 650px;
    height: 100px;
    margin: 0 auto;
    margin-top: 50px;
    margin-bottom: 150px;
}

.image0 h2 {  
    position: absolute;
    top: -40px;
    color:#000;
}

.image0-1 {  
    position: relative;
    width: 650px;
    height:100px;
    margin : 0 auto;
    margin-top: 50px ;
    margin-bottom: 10px ;
}

.image0-1 h2 {  
    position: absolute;
    top: -40px;
    color:#000;
}

.image0-2 {  
    position: relative;
    width: 650px;
    height: 100px;
    margin : 0 auto;
    margin-top: 50px;
    margin-bottom: 200px;
}

.image0-2 h2 {  
    position: absolute;
    top: -40px;
    color: #000;
}

.small_02 span {
  display:inline-block;
  padding-left:10px;
}

.image1 {  
    position: relative;
    width: 650px;
    height: 450px;
    margin: 0 auto;
    border: solid 5px #000000;
    margin-bottom: 150px;
}

.image1 h2 {  
    position: absolute;
    top: -40px;
    color: #000;
}

.image1-1 {  
    position: relative;
    width: 650px;
    height:450px;
    margin: 0 auto;
    border: solid 5px #000000;
    margin-bottom: 150px;
}

.image1-1 h2 {  
    position: absolute;
    top: -40px;
    color: #000;
}

.image1-2 {  
    position: relative;
    width: 650px;
    height: 450px;
    margin : 0 auto;
    border: solid 5px #000000;
    margin-bottom: 150px;
}

.image1-2 h2 {  
    position: absolute;
    top: -40px;
    color: #000;
}

.image1-3 {  
    position: relative;
    width: 650px;
    height: 450px;
    margin: 0 auto;
    border: solid 5px #000000;
    margin-bottom: 150px;
}

.image1-3 h2 {  
    position: absolute;
    top: -40px;
    color: #000;
}

.image1-4 {  
    position: relative;
    width: 650px;
    height: 450px;
    margin : 0 auto;
    border: solid 5px #000000;
    margin-top: 50px ;
    margin-bottom: 150px;
}

.image1-4 h2 {  
    position: absolute;
    top: -40px;
    color: #000;
}

.image2 {  
    position: relative;
    width: 650px;
    height: 449px;
    margin : 0 auto;
    border: solid 5px #000000;
    margin-bottom: 150px;
}

.image2 h2 {  
    position: absolute;
    top: -40px;
    color: #000;
}

.image3 {  
    position: relative;
    width: 449px;
    height: 650px;
    margin : 0 auto;
    border: solid 5px #000000;
    margin-bottom: 150px;
}

.image3 h2 {  
    position: absolute;
    top: -40px;
    color: #000;
}

.image4 {  
    position: relative;
    width: 449px;
    height: 650px;
    margin : 0 auto;
    margin-bottom: 150px;
}

.image4 h2 {  
    position: absolute;
    top: -40px;
    color: #000;
}

.image5 {
    position: relative;
    width: 800px;
    height: 800px;
    margin : 0 auto;
    margin-top: 50px;
    padding-bottom: 400px;
}

.image5 img{ 
    position: absolute;
    top: 250px;
}

.small_01 {
  margin-top: 10px;
}

.small_01 span {
  display:inline-block;
  padding-left:36px;
}

.small_03 {
  margin-top: 10px;
}

.small_03 span {
  display:inline-block;
  padding-left:50px;
}

.moji_01{
    position: absolute;
    top: -10px;
    padding-left: 100px;
}



.image6 { 
    position: relative;
    width: 800px;
    height: 800px;
    margin : 0 auto;
    margin-bottom: 150px;
}

.image7 {  
    position: relative;
    width: 650px;
    top: 40px;
    height: 677px;
    margin : 0 auto;
    margin-bottom: 250px;
}

.image7 img{  
    position: relative;
    top: 60px;
}

.image7 h2 {  
    position: absolute;
    top: -40px;
    color: #000;
}

.moji_02 {
    position: absolute;
    top: -10px;
}

.image8 {  
    position: relative;
    width: 650px;
    height: 557px;
    margin : 0 auto;
    margin-bottom: 150px;
}

.image8 h2 {  
    position: absolute;
    top: -40px;
    color:#000;
}

.image9 {  
    position: relative;
    width: 650px;
  display: block;
    margin: 0 auto;
    margin-bottom: 300px;
}

.image9 video{  
    position: relative;
    width: 650px;
  display: block;
    margin: 0 auto;
    margin-bottom: 300px;
}

.image9 h2 {  
    position: absolute;
    top: -40px;
    color: #000;
}

.word-101 {
    padding-bottom: 20px;
}

.image10 {  
    position: relative;
    top: 40px;
    width: 650px;
    height: 475px;
    margin: 0 auto;
    margin-bottom: 300px;
}

.image10 img{  
    position: relative;
    top: 60px;
}

.image10 h2 {  
    position: absolute;
    top: -40px;
    color: #000;
}







@media(max-width: 800px){

div.project1 img{
    vertical-align: top;
    position: relative;
    border: none;
    width: 100%;
    height: auto;
    max-width: 100%;
    margin: 0 auto;
}

div.project2 img{
    vertical-align: top;
    position: relative;
    border: none;
    width: 100%;
    height: auto;
    max-width: 100%;
    margin: 0 auto;
}

div.project3 img{
    vertical-align: top;
    position: relative;
    border: none;
    width: 100%;
    height: auto;
    max-width: 100%;
    margin: 0 auto;
}

div.structure1 img{
    vertical-align: top;
    position: relative;
    border: none;
    width: 100%;
    height: auto;
    max-width: 100%;
    margin: 0 auto;
}

.image0 {  
    vertical-align: top;
    position: relative;
    width: 90%;
    height: auto;
    margin-top: 100px;
    margin-bottom: 150px;
}

.image0 h2 {
    font-size: 17px;
    position: absolute;
    top: -40px;
    color: #000;
    z-index: 1;
}

.image0-1 {  
    vertical-align: top;
    position: relative;
    width: 90%;
    height: auto;
    margin-top: 100px;
    margin-bottom: 150px;
}

.image0-1 h2 {
    font-size: 20px;
    position: absolute;
    top: -40px;
    color: #000;
    z-index: 1;
}

.image0-2 {  
    position: relative;
    width: 90%;
    height: auto;
    margin-top: 50px;
    margin-bottom: 150px ;
}

.image0-2 h2 {
    font-size: 17px;
    position: absolute;
    top: -40px;
    color: #000;
    z-index: 1;
}

.image1 {  
    vertical-align: top;
    position: relative;
    width: 90%;
    height: auto;
    border: solid 3px #000000;
    margin-top: 100px;
    margin-bottom: 150px;
}

.image1 h2 {
    position: absolute;
    top: -40px;
    color: #000;
    z-index: 1;
}

.image1-1 {  
    vertical-align: top;
    position: relative;
    width: 90%;
    height: auto;
    border: solid 3px #000000;
    margin-top: 100px;
    margin-bottom: 150px;
}

.image1-1 h2 {
    font-size: 20px;
    position: absolute;
    top: -40px;
    color: #000;
    z-index: 1;
}

.image1-2 {  
    vertical-align: top;
    position: relative;
    width: 90%;
    height: auto;
    border: solid 3px #000000;
    margin-top: 100px;
    margin-bottom: 150px;
}

.image1-2 h2 {
    position: absolute;
    font-size: 15px;
    top: -30px;
    color: #000;
    z-index: 1;
}

.image1-3 {  
    vertical-align: top;
    position: relative;
    width: 90%;
    height: auto;
    border: solid 3px #000000;
    margin-top: 100px;
    margin-bottom: 150px;
}

.image1-3 h2 {
    position: absolute;
    top: -70px;
    color: #000;
    z-index: 1;
}

.image1-4 {  
    position: relative;
    width: 90%;
    height: auto;
    border: solid 3px #000000;
    margin-top: 50px;
    margin-bottom: 150px;
}

.image1-4 h2 {
    position: absolute;
    top: -40px;
    color: #000;
    z-index: 1;
}

.image2 {  
    vertical-align: top;
    position: relative;
    width: 90%;
    height: auto;
    border: solid 3px #000000;
    margin-top: 100px;
    margin-bottom: 150px;
}

.image2 h2 {
    position: absolute;
    top: -40px;
    color: #000;
    z-index: 1;
}

.image3 {  
    vertical-align: top;
    position: relative;
    width: 70%;
    height: auto;
    border: solid 3px #000000;
    margin-top: 100px;
    margin-bottom: 150px;
}

.image3 h2 {
    position: absolute;
    top: -40px;
    color: #000;
    z-index: 1;
}

.image4 {  
    vertical-align: top;
    position: relative;
    width: 90%;
    height: auto;
    margin-top: 100px;
    margin-bottom: 150px;
}

.image4 h2 {
    position: absolute;
    top: -40px;
    color: #000;
    z-index: 1;
}

.image5 {
    position: relative;
    width: 90%;
    height: auto;
    margin-top: 100px;
    padding-bottom: 280px;
}

.image5 h2 {
    position: absolute;
    top: -40px;
    color: #000;
    z-index: 1;
}

.image5 img{ 
    position: absolute;
    top: 280px;
}

.small_01 {
  margin-top: 10px;
}

.small_03 {
  margin-top: 10px;
}

.small_01 span {
  display:inline-block;
  padding-left:36px;
}

.small_03 span {
  display:inline-block;
  padding-left:50px;
}

.moji_01 {
    position: absolute;
    top: 0px;
    padding-left: 0px;
}

.image6 {  
    vertical-align: top;
    position: relative;
    width: 90%;
    height: auto;
    margin-top: 100px;
    margin-bottom: 150px;
}

.image6 h2 {
    padding-left: 0px;
    position: absolute;
    top: -40px;
    color: #000;
    z-index: 1;
}

.image6 img{ 
    position: absolute;
    top: -40px;
}

.image7 {  
    vertical-align: top;
    position: relative;
    width: 90%;
    height: auto;
    margin-top: 100px;
    margin-bottom: 250px;
}

.image7 h2 {
    font-size: 18px;
    position: absolute;
    top: -40px;
    color: #000;
    z-index: 1;
}

.image8 {  
    vertical-align: top;
    position: relative;
    width: 90%;
    height: auto;
    margin-top: 100px;
    margin-bottom: 100px;
}

.image8 h2 {
    font-size: 17px;
    position: absolute;
    top: -40px;
    color: #000;
    z-index: 1;
}

.image9 {  
    vertical-align: top;
    position: relative;
    width: 90%;
    height: auto;
    display: block;
    margin: auto;
    margin-bottom: 200px;
}

.image9 video{  
    vertical-align: top;
    position: relative;
    width: 90%;
    height: auto;
    display: block;
    margin: auto;
}

.image9 h2 {
    display: block;
    font-size: 17px;
    position: absolute;
    top: -40px;
    color: #000;
    z-index: 1;
}

.word-101 {
    margin-bottom: 20px;
}

.image10 {  
    vertical-align: top;
    position: relative;
    width: 90%;
    height: auto;
    margin-bottom: 200px;
}

.image10 h2 {
    display: block;
    line-height: 2em;
    font-size: 17px;
    margin-bottom : 20px;
    position: absolute;
    top: -40px;
    color: #000;
    z-index: 1;
}



}


/*============================================
画像の差し替え N_house　　平面図の表示
============================================*/


.heimen-1{ 
display: inline;
}

.heimen-2{ 
display: none;
}



@media(max-width: 800px){

.heimen-1{ 
display: none;
}

.heimen-2{ 
display: inline;
}

}





/*============================================
吹き出し用のbox N_house_1F
============================================*/

.box_1 {
  position: absolute;
  margin: auto;
  width: 38px;
  height: 40px;
  background-color: transparent;
    top:32px;
    left:95px;
}


.box_2 {
  position: absolute;
  margin: auto;
  width: 38px;
  height: 200px;
  background-color: transparent;
  top:72px;
  left:95px;
}

.box_3 {
  position: absolute;
  margin: auto;
  width: 140px;
  height: 240px;
  background-color: transparent;
  top:32px;
  left:150px;
}

.box_5 {
  position: absolute;
  margin: auto;
  width: 38px;
  height: 90px;
  background-color: transparent;
  top:280px;
  left:95px;
}


.box_6 {
  position: absolute;
  margin: auto;
  width: 130px;
  height: 95px;
  background-color: transparent;
  top:288px;
  left:133px;
}


.box_7 {
  position: absolute;
  margin: auto;
  width: 95px;
  height: 95px;
  background-color: transparent;
  top:288px;
  left:265px;
}


.box_8 {
  position: absolute;
  margin: auto;
  width: 60px;
  height: 100px;
  background-color: transparent;
  top:175px;
  left:305px;
}


.box_9 {
  position: absolute;
  margin: auto;
  width: 80px;
  height: 20px;
  background-color: transparent;
  top:390px;
  left:275px;
}


.box_10 {
  position: absolute;
  margin: auto;
  width: 80px;
  height: 20px;
  background-color: transparent;
  top:390px;
  left:95px;
}


.box_11 {
  position: absolute;
  margin: auto;
  width: 130px;
  height: 130px;
  background-color: transparent;
    top:412px;
    left:225px;
}



.box_12 {
  position: absolute;
  margin: auto;
  width: 120px;
  height: 130px;
  background-color: transparent;
    top:412px;
    left:95px;
}



.box_13 {
  position: absolute;
  margin: auto;
  width: 260px;
  height: 80px;
  background-color: transparent;
    top:544px;
    left:95px;
}



@media(max-width: 800px){

.box_1 {
display: none;
}

.box_2 {
display: none;
}

.box_3 {
display: none;
}

.box_5 {
display: none;
}

.box_6 {
display: none;
}

.box_7 {
display: none;
}

.box_8 {
display: none;
}

.box_9 {
display: none;
}

.box_10 {
display: none;
}

.box_11 {
display: none;
}

.box_12 {
display: none;
}

.box_13 {
display: none;
}

}


/*============================================
吹き出し N_house_1F
============================================*/


.box_1:hover .baloon_1{
  display: inline;
}

.baloon_1 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(255, 127, 127, 0.50);
  width:80px;
  font-size: 100%;
  border-radius: 10px;
  margin: -3em -0.7em;
}

.baloon_1:after{
  border-top: 20px solid rgba(255, 127, 127, 0.50);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left: 18%;
  content: "";
  position: absolute;
}





.box_2:hover .baloon_2 {
  display: inline;
}

.baloon_2 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(255, 127, 127, 0.50);
  width:120px;
  font-size: 100%;
  border-radius: 10px;
  margin: 1.5em -0.7em;
}

.baloon_2:after{
  border-top: 20px solid rgba(255, 127, 127, 0.50);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left: 18%;
  content: "";
  position: absolute;
}




.box_3:hover .baloon_3{
  display: inline;
}

.baloon_3 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(255, 127, 127, 0.50);
  width:80px;
  font-size: 100%;
  border-radius: 10px;
  margin: 4em 6em;
}

.baloon_3:after{
  border-top: 20px solid rgba(255, 127, 127, 0.50);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: "";
  position: absolute;
}




.box_5:hover .baloon_5{
  display: inline;
}

.baloon_5 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(255, 127, 127, 0.50);
  width:80px;
  font-size: 100%;
  border-radius: 10px;
  margin: 0em -0.7em;
}
.baloon_5:after{
  border-top: 20px solid rgba(255, 127, 127, 0.50);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: "";
  position: absolute;
}






.box_6:hover .baloon_6{
  display: inline;
}

.baloon_6 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(255, 127, 127, 0.50);
  width:120px;
  font-size: 100%;
  border-radius: 10px;
  margin: 0em 2em;
}
.baloon_6:after{
  border-top: 20px solid rgba(255, 127, 127, 0.50);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: "";
  position: absolute;
}





.box_7:hover .baloon_7{
  display: inline;
}

.baloon_7 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(255, 127, 127, 0.50);
  width:80px;
  font-size: 100%;
  border-radius: 10px;
  margin: 0em 2em;
}
.baloon_7:after{
  border-top: 20px solid rgba(255, 127, 127, 0.50);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: "";
  position: absolute;
}





.box_8:hover .baloon_8{
  display: inline;
}

.baloon_8 {
  position   : absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(255, 127, 127, 0.50);
  width:120px;
  font-size: 100%;
  border-radius: 10px;
  margin: 0em 0em;
}
.baloon_8:after{
  border-top: 20px solid rgba(255, 127, 127, 0.50);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: "";
  position: absolute;
}



.box_9:hover .baloon_9{
  display: inline;
}

.baloon_9 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(255, 127, 127, 0.50);
  width:80px;
  font-size: 100%;
  border-radius: 10px;
  margin: -2em 1em;
}
.baloon_9:after{
  border-top: 20px solid rgba(255, 127, 127, 0.50);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: "";
  position: absolute;
}



.box_10:hover .baloon_10{
  display: inline;
}

.baloon_10 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(255, 127, 127, 0.50);
  width:80px;
  font-size: 100%;
  border-radius: 10px;
  margin: -2em 1em;
}
.baloon_10:after{
  border-top: 20px solid rgba(255, 127, 127, 0.50);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: "";
  position: absolute;
}




.box_11:hover .baloon_11{
  display: inline;
}

.baloon_11 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(255, 127, 127, 0.50);
  width:80px;
  font-size: 100%;
  border-radius: 10px;
  margin: 1em 1em;
}
.baloon_11:after{
  border-top: 20px solid rgba(255, 127, 127, 0.50);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: "";
  position: absolute;
}




.box_12:hover .baloon_12{
  display: inline;
}

.baloon_12 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(255, 127, 127, 0.50);
  width:80px;
  font-size: 100%;
  border-radius: 10px;
  margin: 1em 2em;
}
.baloon_12:after{
  border-top: 20px solid rgba(255, 127, 127, 0.50);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: "";
  position: absolute;
}






.box_13:hover .baloon_13{
  display: inline;
}

.baloon_13 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(255, 127, 127, 0.50);
  width:120px;
  font-size: 100%;
  border-radius: 10px;
  margin: 1em 4.5em;
}
.baloon_13:after{
  border-top: 20px solid rgba(255, 127, 127, 0.50);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: "";
  position: absolute;
}




/*============================================
吹き出し用のbox N_house_2F
============================================*/

.box_14 {
  position: absolute;
  margin: auto;
  width: 75px;
  height: 180px;
  background-color: transparent;
    top:32px;
    left:95px;
}

.box_15 {
  position: absolute;
  margin: auto;
  width: 80px;
  height: 35px;
  background-color: transparent;
    top:218px;
    left:95px;
}

.box_16 {
  position: absolute;
  margin: auto;
  width: 90px;
  height: 80px;
  background-color: transparent;
    top:260px;
    left:95px;
}

.box_17 {
  position: absolute;
  margin: auto;
  width: 80px;
  height: 80px;
  background-color: transparent;
    top:350px;
    left:95px;
}

.box_18 {
  position: absolute;
  margin: auto;
  width: 80px;
  height: 105px;
  background-color: transparent;
    top:435px;
    left:95px;
}


.box_19 {
  position: absolute;
  margin: auto;
  width: 170px;
  height: 230px;
  background-color: transparent;
    top:32px;
    left:185px;
}


.box_20 {
  position: absolute;
  margin: auto;
  width: 80px;
  height: 100px;
  background-color: transparent;
    top:275px;
    left:185px;
}


.box_21 {
  position: absolute;
  margin: auto;
  width: 90px;
  height : 95px;
  background-color: transparent;
    top:290px;
    left:270px;
}



.box_22 {
  position: absolute;
  margin: auto;
  width: 170px;
  height: 130px;
  background-color: transparent;
    top:400px;
    left:185px;
}



.box_23 {
  position: absolute;
  margin: auto;
  width: 260px;
  height: 80px;
  background-color: transparent;
    top:544px;
    left:95px;
}



@media(max-width: 800px){

.box_14 {
display: none;
}

.box_15 {
display: none;
}

.box_16 {
display: none;
}

.box_17 {
display: none;
}

.box_18 {
display: none;
}

.box_19 {
display: none;
}

.box_20 {
display: none;
}

.box_21 {
display: none;
}

.box_22 {
display: none;
}

.box_23 {
display: none;
}


}




/*============================================
吹き出し N_house_2F
============================================*/

.box_14:hover .baloon_14{
  display: inline;
}

.baloon_14 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(77, 255, 255, 0.54);
  width:120px;
  font-size: 100%;
  border-radius: 10px;
  margin: 3em -0.7em;
}
.baloon_14:after{
  border-top: 20px solid rgba(77, 255, 255, 0.54);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: "";
  position: absolute;
}




.box_15:hover .baloon_15{
  display: inline;
}

.baloon_15 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(77, 255, 255, 0.54);
  width:80px;
  font-size: 100%;
  border-radius: 10px;
  margin: -2em 0em;
}
.baloon_15:after{
  border-top: 20px solid rgba(77, 255, 255, 0.54);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: "";
  position: absolute;
}




.box_16:hover .baloon_16{
  display: inline;
}

.baloon_16 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(77, 255, 255, 0.54);
  width:80px;
  font-size: 100%;
  border-radius: 10px;
  margin: 0em 2em;
}
.baloon_16:after{
  border-top: 20px solid rgba(77, 255, 255, 0.54);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: "";
  position: absolute;
}




.box_17:hover .baloon_17{
  display: inline;
}

.baloon_17 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(77, 255, 255, 0.54);
  width:80px;
  font-size: 100%;
  border-radius: 10px;
  margin: 1em 0em;
}
.baloon_17:after{
  border-top: 20px solid rgba(77, 255, 255, 0.54);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: "";
  position: absolute;
}




.box_18:hover .baloon_18{
  display: inline;
}

.baloon_18 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(77, 255, 255, 0.54);
  width:80px;
  font-size: 100%;
  border-radius: 10px;
  margin: 1em 0em;
}
.baloon_18:after{
  border-top: 20px solid rgba(77, 255, 255, 0.54);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: "";
  position: absolute;
}




.box_19:hover .baloon_19{
  display: inline;
}

.baloon_19 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(77, 255, 255, 0.54);
  width:180px;
  font-size: 100%;
  border-radius: 10px;
  margin: 3em 2em;
}
.baloon_19:after{
  border-top: 20px solid rgba(77, 255, 255, 0.54);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: "";
  position: absolute;
}




.box_20:hover .baloon_20{
  display: inline;
}

.baloon_20 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(77, 255, 255, 0.54);
  width:100px;
  font-size: 100%;
  border-radius: 10px;
  margin: 0.5em -1em;
}
.baloon_20:after{
  border-top: 20px solid rgba(77, 255, 255, 0.54);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: "";
  position: absolute;
}




.box_21:hover .baloon_21{
  display: inline;
}

.baloon_21 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(77, 255, 255, 0.54);
  width:90px;
  font-size: 100%;
  border-radius: 10px;
  margin: 0.5em 0em;
}
.baloon_21:after{
  border-top: 20px solid rgba(77, 255, 255, 0.54);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: "";
  position: absolute;
}




.box_22:hover .baloon_22{
  display: inline;
}

.baloon_22 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(77, 255, 255, 0.54);
  width:140px;
  font-size: 100%;
  border-radius: 10px;
  margin: -1em 2em;
}
.baloon_22:after{
  border-top: 20px solid rgba(77, 255, 255, 0.54);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: "";
  position: absolute;
}





.box_23:hover .baloon_23{
  display: inline;
}

.baloon_23 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(255, 127, 127, 0.50);
  width:120px;
  font-size: 100%;
  border-radius: 10px;
  margin: 1em 4.5em;
}
.baloon_23:after{
  border-top: 20px solid rgba(255, 127, 127, 0.50);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: "";
  position: absolute;
}



/*============================================
吹き出し用のbox N_house_3F
============================================*/

.box_24 {
  position: absolute;
  margin: auto;
  width: 80px;
  height: 110px;
  background-color: transparent;
    top:42px;
    left:95px;
}

.box_25 {
  position: absolute;
  margin: auto;
  width: 170px;
  height: 110px;
  background-color: transparent;
    top:42px;
    left:185px;
}

.box_26 {
  position: absolute;
  margin: auto;
  width: 170px;
  height: 160px;
  background-color: transparent;
    top:165px;
    left:95px;
}

.box_27 {
  position: absolute;
  margin: auto;
  width: 90px;
  height: 95px;
  background-color: transparent;
    top:290px;
    left:270px;
}

.box_28 {
  position: absolute;
  margin: auto;
  width: 80px;
  height: 200px;
  background-color: transparent;
    top:330px;
    left:95px;
}



.box_29 {
  position: absolute;
  margin: auto;
  width: 170px;
  height: 130px;
  background-color: transparent;
    top:400px;
    left:185px;
}




@media(max-width: 800px){

.box_24 {
display: none;
}

.box_25 {
display: none;
}

.box_26 {
display: none;
}

.box_27 {
display: none;
}

.box_28 {
display: none;
}

.box_29 {
display: none;
}


}



/*============================================
吹き出し N_house_3F
============================================*/

.box_24:hover .baloon_24{
  display: inline;
}

.baloon_24 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(77, 255, 166, 0.50);
  width:80px;
  font-size: 100%;
  border-radius: 10px;
  margin: 1em 0em;
}
.baloon_24:after{
  border-top: 20px solid rgba(77, 255, 166, 0.50);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: "";
  position: absolute;
}



.box_25:hover .baloon_25{
  display: inline;
}

.baloon_25 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(77, 255, 166, 0.50);
  width:80px;
  font-size: 100%;
  border-radius: 10px;
  margin: 1em 4em;
}
.baloon_25:after{
  border-top: 20px solid rgba(77, 255, 166, 0.50);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: "";
  position: absolute;
}



.box_26:hover .baloon_26{
  display: inline;
}

.baloon_26 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(77, 255, 166, 0.50);
  width:120px;
  font-size: 100%;
  border-radius: 10px;
  margin: 5em 4em;
}
.baloon_26:after{
  border-top: 20px solid rgba(77, 255, 166, 0.50);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: "";
  position: absolute;
}




.box_27:hover .baloon_27{
  display: inline; 
}

.baloon_27 {
  position: absolute;
  text-align: center;
  display: none; 
  padding: 2px;
  background-color: rgba(77, 255, 166, 0.50);
  width:90px;
  font-size: 100%;
  border-radius: 10px;
  margin: 0.5em 0em; 
}
.baloon_27:after{       /* ボーダーの尻尾の部分 */
  border-top: 20px solid rgba(77, 255, 166, 0.50);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%; 
  content: ""; 
  position: absolute;
}





.box_28:hover .baloon_28{
  display: inline;
}

.baloon_28 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(77, 255, 166, 0.50); 
  width:140px;
  font-size: 100%;
  border-radius: 10px;
  margin: 4em 0em;
}
.baloon_28:after{       /* ボーダーの尻尾の部分 */
  border-top: 20px solid rgba(77, 255, 166, 0.50);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px; 
  left : 18%;
  content: "";
  position: absolute;
}





.box_29:hover .baloon_29{
  display: inline;
}

.baloon_29 {
  position: absolute;
  text-align: center;
  display: none;
  padding: 2px;
  background-color: rgba(77, 255, 255, 0.54);
  width:140px;
  font-size: 100%;
  border-radius: 10px;
  margin: -1em 2em;
}
.baloon_29:after{       /* ボーダーの尻尾の部分 */
  border-top: 20px solid rgba(77, 255, 255, 0.54);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -20px;
  left : 18%;
  content: ""; 
  position: absolute;
}





/*============================================
写真  project splitting scrollout
============================================*/

#of1{
--scale: calc(.8 + (.2  * var(--visible-y)));
opacity:  calc( var(--visible-y) );
  transform: scale(var(--scale));
}


#of:before{
opacity: 0;
}


.map iframe{
--scale: calc(.8 + (.2  * var(--visible-y)));
opacity:  calc( var(--visible-y) );
  transform: scale(var(--scale));
}

.map:before{
opacity: 0;

}


.im1{
--scale: calc(.8 + (.2* var(--visible-y)));
opacity:  calc( var(--visible-y) );
  transform: scale(var(--scale));
}

.im1:before{
opacity: 0;
}




.words .char {
    transition: transform .5s cubic-bezier(.5, 0, .1, 1), opacity .5s linear;
    transition-delay: calc( 30ms * var(--char-index) );
  }

[data-scroll="out"] .words .char {
    opacity: 0;
    transform: translateY(50px) scaleY(5);
  }






/*============================================
写真　配置 conpleted work
============================================*/



.container2 {
    margin: 20px ;
    display: grid;
    grid-auto-rows: 200px;
    grid-template-columns: repeat(auto-fit, 200px);
    justify-content: center; /* グリッド全体を中央に寄せる設定 */
    column-gap: 30px;
    row-gap: 30px;
}

.container2 .olk > img{
    width: 200px;
    }



#m1:hover {
	cursor: pointer;
}

#h0:hover {
	cursor: pointer;
}

#wh1:hover {
	cursor: pointer;
}

#renov1:hover {
	cursor: pointer;
}

#tah1:hover {
	cursor: pointer;
}





/*============================================
一つ前へ戻るボタン  +  トップへ戻るボタン
============================================*/



.buttons-coll1 {
  Position: fixed ;
  bottom:30%;
  right:5%;
  z-index: 1;
}

.buttons-coll2 {
  Position: fixed ;
  bottom:30%;
  right:5%;
  z-index: 1;
}


.buttons-coll3 {
  Position: fixed ;
  bottom:45%;
  right:5%;
  z-index: 1;
}



button {
  margin: 20px;
}

.custom-btn {
  font-size:10pt;
  width: 140pt;
  padding: 10px 25px;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  background: transparent;
  outline: none !important;
  cursor: pointer;
  transition: all 0.3s ease;
  position: relative;
  display: inline-block;
}


/**** BTN No. 1 計画案用****/
.btn-1 {
  border: 2px solid #000;
  z-index: 1;
}
.btn-1:after {
  position: absolute;
  content: "";
  width: 100%;
  height: 0;
  top: 0;
  left: 0;
  z-index: -1;
  background: #000;
  transition: all 0.3s ease;
}
.btn-1:hover {
  color: #fff;
}
.btn-1:hover:after {
  top: auto;
  bottom: 0;
  height: 100%;
}
.btn-1:active {
  top: 2px;
}


.btn-text1{
  display: flex;
  align-items: center;
  justify-content: space-around;
  transition: .0.5s;
  /*位置・大きさをボタンにあわせる*/
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: initial;
}

/*** 2つ目の文言は標準時隠しておく ***/
.btn-text2{
  visibility: hidden; /*非表示*/
  opacity: 0; /*透明*/
}

/*** ホバー時に文言を入れ替え ***/
.btn-1:hover .btn-text1{
  visibility:hidden; /*非表示*/
  opacity: 0; /*透明*/
}
.btn-1:hover .btn-text2{
  visibility: visible; /*表示*/
  opacity: 1; /*不透明*/
}



/**** BTN No. 2 完成建物用****/
.btn-2 {
  border: 2px solid #000;
  z-index: 1;
}
.btn-2:after {
  position: absolute;
  content: "";
  width: 100%;
  height: 0;
  top: 0;
  left: 0;
  z-index: -1;
  background: #000;
  transition: all 0.3s ease;
}
.btn-2:hover {
  color: #fff;
}
.btn-2:hover:after {
  top: auto;
  bottom: 0;
  height: 100%;
}
.btn-2:active {
  top: 2px;
}


.btn2-text3{
  display: flex;
  align-items: center;
  justify-content: space-around;
  transition: .0.5s;
  /*位置・大きさをボタンにあわせる*/
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: initial;
}

/*** 2つ目の文言は標準時隠しておく ***/
.btn2-text4{
  visibility: hidden; /*非表示*/
  opacity: 0; /*透明*/
}

/*** ホバー時に文言を入れ替え ***/
.btn-2:hover .btn2-text3{
  visibility:hidden; /*非表示*/
  opacity: 0; /*透明*/
}
.btn-2:hover .btn2-text4{
  visibility: visible; /*表示*/
  opacity: 1; /*不透明*/
}








/**** スクロール****/
.btn-3 {
  border: 2px solid #000;
  z-index: 1;
}
.btn-3:after {
  position: absolute;
  content: "";
  width: 100%;
  height: 0;
  top: 0;
  left: 0;
  z-index: -1;
  background: #000;
  transition: all 0.3s ease;
}
.btn-3:hover {
  color: #fff;
}
.btn-3:hover:after {
  top: auto;
  bottom: 0;
  height: 100%;
}
.btn-3:active {
  top: 2px;
}

.btn3-text5{
  display: flex;
  align-items: center;
  justify-content: space-around;
  transition: .0.5s;
  /*位置・大きさをボタンにあわせる*/
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: initial;
}

/*** 2つ目の文言は標準時隠しておく ***/
.btn3-text6{
  visibility: hidden; /*非表示*/
  opacity: 0; /*透明*/
}

/*** ホバー時に文言を入れ替え ***/
.btn-3:hover .btn3-text5{
  visibility:hidden; /*非表示*/
  opacity: 0; /*透明*/
}
.btn-3:hover .btn3-text6{
  visibility: visible; /*表示*/
  opacity: 1; /*不透明*/
}







@media(max-width: 1050px){

.custom-btn {
  font-size: 7pt;
  width: 100pt;
  padding: 5px 10px;
}

button {
  margin: 20px;
}




.buttons-coll1 {
  Position: fixed ;
  bottom:10%;
  right:0;
  z-index: 8;
}

.buttons-coll2 {
  Position: fixed ;
  bottom:10%;
  right:0;
  z-index: 8;
}



.buttons-coll3 {
  Position: fixed ;
  bottom:10%;
  left:0;
  z-index: 5;
}

}














/*============================================
問合せフォーム
============================================*/

#t{
  position: relative;/* ←相対位置 */
  width:100%;
}

.lead-form{
  text-align: center;
  width:100%;
  margin: 0 auto;
  padding: 2em;
  font-size:15px;
}

.form1{
  width:300px;
  margin:0 auto;
}

.item{
  margin-bottom: 20px;
}

.label{
  float: left;
  margin-right: 20px;
  width:170px;
  border-left: solid 3px #e0505d;
  padding-left: 10px;
}

.input{
  width: 100%;
}


.inputs{
  padding: 10px;
  font-size:100%;	
  width: 100%;
}

textarea{
  border: solid 1px #aaa;
  border-radius:5px;
  height: 100px;
  font-size: 15px;
}


.g-recaptcha{
  padding-left: 10px;
}


#warning{
  font-size: 12px;
  padding-left: 65px;
  margin-top: -1px;
  margin-bottom: 30px;
}

.btn-area{
  text-align: center;
  margin-bottom: 200px;
}

input[type="submit"]{
  background: #e0505c;
  border: none;
  color: white;
  font-size:17px;
  font-weight:bold;
  padding: 10px 20px;
  margin: 0 5px;
}

input[type="reset"]{
  background: #aaa;
  border: none;
  color: white;
  font-size:17px;
  font-weight:bold;
  padding: 10px 20px;
  margin: 0 5px;
}

input[type="submit"]:hover {
	cursor: pointer;
}

input[type="reset"]:hover {
	cursor: pointer;
}





@media(max-width: 800px){

#t{
  position: relative;/* ←相対位置 */
  width:100%;
}

.lead-form{
  text-align: left;
  width: 400px;
  margin: 0 auto;
  padding: 2em;
  font-size:13px;
}

.form1{
  width:300px;
  margin:0 auto;
}

.item{
  margin-bottom: 20px;
}

.label{
  font-size:13px;
  float: left;
  width:150px;
  border-left: solid 3px #e0505d;
}

.input{
  width: 100%;
}

.inputs{
  padding: 10px;
  width: 100%;
}



textarea{
  border: solid 1px #aaa;
  border-radius:5px;
  height: 100px;
  font-size: 12px;
}

.g-recaptcha{
  margin:0 auto;
  text-align: center;
  padding-left: 1em;
}

#warning{
  font-size: 12px;
  padding-left: 1em;
  margin-top: -1px;
  margin-bottom: 30px;
}

.btn-area{
  -webkit-appearance: none;
  opacity: 1;
  text-align: center;
  margin-bottom: 100px;
}

input[type="submit"]{
  -webkit-appearance: none;
  opacity: 1;
  background: #e0505c;
  border: none;
  color: white;
  font-size:17px;
  font-weight:bold;
  padding: 10px 20px;
  margin: 0 5px;
}

input[type="reset"]{
  -webkit-appearance: none;
  opacity: 1;
  background: #aaa;
  border: none;
  color: white;
  font-size:17px;
  font-weight:bold;
  padding: 10px 20px;
  margin: 0 5px;
}

}



/*============================================
Phpの文字　センター寄せ
============================================*/

 /* ←戻るボタンの装飾 */
input[name="okbtn"]{   
  background: #e0505c;
  border: none;
  color: white;
  font-size:17px;
  font-weight:bold;
  padding: 10px 20px;
  margin: 0 5px;
  cursor: pointer;
}



.ech1{
text-align: center;
margin: 0 auto;

}



@media(max-width: 800px){

input[name="okbtn"]{
  appearance: none;
  -webkit-appearance: none;
  opacity: 1;
  background: #e0505c;
  border: none;
  color: white;
  font-size:17px;
  font-weight:bold;
  padding: 10px 20px;
  margin: 0 5px;
}


.ech1{
  font-size: 12px;
  margin: 0 auto;
}


}




/*============================================
フッタ
============================================*/

pagebody{

    min-height: 100vh; /* ←コンテンツの高さの最小値＝ブラウザの高さに指定 */
    position: relative;/* ←相対位置 */
    padding-bottom: 150px; /* ←フッターの高さを指定 */
    box-sizing: border-box;
}

.foot1{
    text-align:center;
    left: 50%; /*親のleftから50%*/
    transform: translateY(-50%) translateX(-50%); /*子要素自体の大きさを考慮*/
    position: fixed; /* ←相対位置 */
    bottom:0;
    padding: -150px 0; /* ←フッターの高さを指定 */
}

.foot2{
    text-align:center;
    left: 50%; /*親のleftから50%*/
    transform: translateY(-50%) translateX(-50%); /*子要素自体の大きさを考慮*/
    position: fixed; /* ←相対位置 */
    bottom:0;
    padding: -150px 0; /* ←フッターの高さを指定 */
}


@media(max-width: 800px){


pagebody{

    min-height: 100vh; /* ←コンテンツの高さの最小値＝ブラウザの高さに指定 */
    position: relative;/* ←相対位置 */
    padding-bottom: 150px; /* ←フッターの高さを指定 */
    box-sizing: border-box;
}


footer{
    text-align:center;
    left: 50%; /*親のleftから50%*/
    transform: translateY(-50%) translateX(-50%); /*子要素自体の大きさを考慮*/
    position: fixed; /* ←相対位置 */
    bottom:0;
    padding: -150px 0; /* ←フッターの高さを指定 */
}


}








