@charset "Shift-JIS";

/*共通*/
*{
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font-weight: normal;
	font-style: normal;
	text-decoration: none;
}
*, *::before, *::after {
  box-sizing: border-box;
}

/*　リンク設定　*/
a { /* リンクされた文字 */
  color:#0000ff;
  font-style:normal;
  text-decoration:underline;
}
a:link { /* 未訪問のリンク */
  color:#0D4154;
  font-style:normal;
  font-weight:normal;
  text-decoration:underline;
}
a:visited { /* 訪問後のリンク */
  color:#0D4154;
  text-decoration:underline;
}
a:hover { /* マウスをのせたとき */
  color:#ff0000;
  font-style:normal;
  text-decoration:underline;
}
a:active {/* クリック中 */
  text-decoration:none;
}
p {
  text-align: justify;
}
ul {
  list-style-type: none;
  padding-left: 0;
}



/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* ここから　HTML5にしたときのtopBarのレイアウト崩れ修正用 2025.12.09 */

/* セル内の余白を完全に削除 */
#topBar td img {
	display: block;
}
/* ここまで　HTML5にしたときのtopBarのレイアウト崩れ修正用 */
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */



/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

body {
	color: #333;
}
.wrapper {
	width: 960px;
	margin: 0 auto;
	text-align: left;
}

/*----- Flex-----*/
.flex {
  display: flex;
  width: 100%;
  justify-content: space-between;
  flex-direction: row;
}
.flex.inquiry {
  justify-content: space-around;
}


/*下付き文字*/
sub {
  font-size: 0.7em;
  vertical-align: text-bottom;
  font-weight: inherit;
}

/*赤文字*/
.h1-title {
  font-weight: bold;
  color: #da4e32;
  font-size: 1.5em;
  margin: 0 0 1em;
}
.akairo {
  padding: 1em 0;
  font-size: 1.1em;
  line-height: 1.5;
  text-align: center;
  font-weight: bold;
  color: #73151a;
}


/* 問い合わせ欄 */
a.btn-link:link,
a.btn-link:visited {
  display: block;
  width: 50%;
  padding: 18px 0;
  margin: 1em auto 0.5em;
  background: #ec7911;
  text-align: center;
  font-weight: bold;
  color: #fff;
  font-size: 1.8em;
  cursor: pointer;
  border: #fff 5px double;
  border-radius: 2em;
  text-decoration: none;
  box-shadow: 3px 4px 4px #3333332f;
}
a.btn-link:hover,
a.btn-link:active {
  transition: all 0.5s;
  background-color: #fff;
  color: #73151a;
  border: #73151a 5px double;
}

p.adrs {
	color: #333;
  line-height: 130%;
  font-size: 16pt;
  font-weight: 700;
  margin: 5px 0;
  text-align: center;
  margin-top: 10px;
}
h2.titletoi {
  height: auto;
	line-height: 130%;
  font-size: 1.2em;
  text-align: center;
  color: #fff;
  font-weight: bold;
  letter-spacing: 0.05em;
  background-color: #73151a;
  padding: 10px;
  margin: 0;
}
div.add {
  border: 1px solid #414d5a;
  padding: 0;
  margin: 10px auto;
}
.inquiry.address {
  padding: 1em;
  font-size: small;
}
p.inquiry {
  text-align: center;
  padding:0;
}


/* 画像 */
.cap-image > img{
  box-sizing: border-box;
	max-width:100%;
	display:block;
  padding: .5em 0;
	margin:0 auto;
}

/*　ナビ　*/
nav {
  float: left;
  width: fit-content;
}
ul.navi {
	display: flex;
	font-size: 1em;
  margin: .5em 0 0;
	list-style-type: none;
}
ul.navi > li {
	display: block;
  border-left: 1px solid #ffffff;
  border-bottom: 1px solid #ffffff;
}
ul.navi a {
	display: block;
  padding: 0.8em 1.75em;
	text-align: center;
  white-space: nowrap;
  text-decoration: underline;
  background-color: #E6E6E6;
  color: #333;
  font-size: 1em;
}
ul.navi a:hover {
  background-color: #483430;
  color: #ffffff;
}

/* お知らせ　スクロール */
.news-title {
  float:left;
  width:fit-content;
  height:28px;
  padding: 0 0.5em;
  text-align:center;
  line-height: 30px;
  background:#73151a;
  color:#ffffff;
} 
ul.update-scroll {
	list-style-type: none;
  min-height: 28px;
	max-height: 4.2em;
	overflow: auto;
	border: 1px solid #bbb;
	padding-left: 0.5em;
}
ul.update-scroll li {
	margin-top: 0.1em;
	font-size:10pt;
  clear: both;
}
ul.update-scroll a {
	text-decoration: none;
}
time {
  padding-right: .5em;
}


/*-------------------------------------------------
建設AIでできること
--------------------------------------------------*/
.ko-midashi {
  font-size: 1.1em;
  font-weight: bold;
  color: #73151a;
  margin-top: 1em;
}

.dekirukoto {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  justify-content: left;
}
.dekirukoto span {
  font-size: 1.1em;
  line-height: 1.8;
  font-weight: bold;
}
.dekirukoto li {
  padding: 15px;
  flex-basis: 30%;
  border: solid 3px #73151a;
  border-radius: 7px;
  box-shadow: 3px 3px 3px #bababa;
}
.dekirukoto li p {
  font-size: 14px;
}
.dekirukoto img {
  display: block;
  margin: 0 auto;
}
.bold {
  font-weight: bold;
  font-size: 1.1em;
  line-height: 1.8;
}




/*-------------------------------------------------
通常のLLM・Hikari　比較
--------------------------------------------------*/
.gray,.red {
  display: flex;
  flex-direction: column;
}
.red {
  color: #73151a;
  font-weight: bold;
}
.comparison li {
  display: block;
  text-align: center;
  margin: 0 auto;
  width: 92%;
  height: 3em;
  line-height: 3em;
  border: #333 solid 1px;
  font-size: 1.1em;
}
li.long {
  line-height: 1.6em;
}
.comparison li+ li {
  margin-top: 15px;
}

li.gray,li.red {
  font-weight: bold;
  font-size: 1.3em;
  line-height: 3em;
  color: #ffffff;
}
li.gray {
  background-color: #444;
}
li.red {
  background-color: #ac0c14;
  color: #fff;
}

.triangle img {
  display: block;
  margin: 15px auto 0;
}

p.gray,p.red {
  line-height: 1.6;
  padding: 15px 0.5em;
  width: 92%;
  font-size: 1.1em;
  margin: 15px auto 0;
}

p.gray {
  background-color: #f0f0f0;
}

p.red {
  background-color: #fff5f5;
}

/*ページの先頭へ*/
.to-top {
  clear: both;
  float: right;
  margin-top: 5em;
  font-size: small;
}

/*float解除のためのclearfix*/
.clearfix:after {
	content: ".";
	clear: both;
	display: block;
	line-height: 0;
	height: 0;
	visibility: hidden;
}
.clearfix {
	min-height: 1px;
	zoom: 1;
}
h2 {
  height: 57px;
  clear: both;
  background-repeat: no-repeat;
  background-size: contain;
}
.hikari {
  background-image: url(images/akari-03.png);
  color: transparent;
}
.kensetsu {
  background-image: url(images/akari-04.png);
  color: transparent;
}








@media screen and (max-width: 520px){
  
html { scroll-behavior: smooth; }

  /* -------------------------------------------------------------
	ヘッダー
	---------------------------------------------------------------- */
	#topBar {
		max-width: 100% !important;
		overflow-x: scroll;
	}
	
	.inc-head-div {
		width: 100% !important;
	}
  
  /* 全体 */
  .wrapper {
    max-width:95%;
    margin:0 auto;
    padding:0 10px;
		overflow-x: hidden;
  }
  .flex {
    flex-direction: column;
  }

  .top-image img {
    width: 100%;
  }

  /* 見出し切り替え */
 
  .hikari,.kensetsu {
    background-image: none;
    padding: 3px 0 0 0.5em;
    height: fit-content;
    background-color: #73151a;
    color: #fff;
    font-size: 1.2em;
    line-height: 1.6;
    font-weight: bold;
  }

  .h1-title {
    font-size: 1.3em;
  }
  h2 {
    height: fit-content;
  }
  .hikari, .kensetsu {
    font-size: 1.2em;
  }

  .ko-midashi,
  .akairo {
    text-align: left;
    line-height: 1.7;
  }

  /* 新着&ナビ */
  ul.navi {
    flex-wrap: wrap;
  }
  ul.navi li {
    width: 100%;
    margin: 0 auto;
  }
  ul.navi a {
    padding: 0.5em;
    font-size: .9em;
  }
  ul.navi a:hover {
    background-color: #E6E6E6;
    color: inherit;
  }


  ul.update-scroll {
    max-width:100%;
  }
  .update-scroll-frame {
    max-width:100%;
    height: 50px;
    margin-bottom: 24px;
    padding-top:8px;
    overflow-y: auto;
    overflow-x: hidden;
  }

  .dekirukoto li {
    width: 90%;
    flex-basis: 45%;
  }

  .dekirukoto {
    font-size: 0.9em;
  }

  .comparison:first-child{
    margin-bottom: 2em;
  }
  .comparison li,.comparison p {
    font-size: 1em;
    height: auto;
    width: 100%;
  }


  a.btn-link:link,
  a.btn-link:visited {
    font-size: 1.3em;
    width: fit-content;
    padding: 18px;
    border: #fff 5px double;
    box-shadow: 2px 2px 4px #3333332f;
  }
  a.btn-link:hover,
  a.btn-link:active {
    transition: all 0;
    background-color: #ec7911;
    color: #fff;
    border: #fff 5px double;
  }
}