@charset "utf-8";
/* --------------------------------------------
   共通パーツ
-------------------------------------------- */
body {
	background: #E6F2FF;
}
section > .inner {
	width:920px;
	background:#fff;
	padding:0 20px 20px !important;
}
/* h2 */
h2 {
	color: #fff;
	font-weight: bold;
	text-align:left;
	position: relative;
	padding: 0 20px 10px 55px;
	background:#ec6d71 url(images/h2_icon.png) left 10px top no-repeat;
}
h2:after {
	content: '';
	position: absolute;
	top: -10px;
	left: 0;
	width: -webkit-calc(100% - 10px);
	width: calc(100% - 10px);
	height: 0;
	border: 5px solid #ec6d71;
}

/* h3 */
h3 {
	color:#ec6d71;
	font-weight:bold;
	padding: 10px 15px;
	border-left:#ec6d71 5px solid;
	border-right:#ec6d71 1px solid;
	border-top:#ec6d71 1px solid;
	border-bottom:#ec6d71 1px solid;
	box-shadow: 0 -1px 0 rgba(42,43,86,0.1) inset;
	margin:0 0 30px;
}

/* h4 */
h4 {
	color:#ec6d71;
	font-weight:bold;
	padding: 10px 0 10px 40px;
	border-top:#ec6d71 3px solid;
	border-bottom:#ec6d71 3px solid;
	border-right:#ec6d71 1px solid;
	border-left:#ec6d71 1px solid;
	position: relative;
	border-radius: 10px;
	margin-top:5px;
}
h4:before, h4:after {
	content: '';
	border-radius: 100%;
	position: absolute;
}
h4:after {
	width: 14px;
	height: 14px;
	background:#ec6d71;
	top: 17px;
	left: 20px;
}
h4 > span {
	color:initial;
	font-size:12px;
	display:block;
}

/* 共通バナー */
.bnr01 {
	background:rgba(0,117,194,0.20);
}

 @media screen and (max-width: 640px) {
section > .inner {
	width:96%;
	padding:0 2% 2% !important;
}
img.fltR {
	float:none;
	display:block;
	margin:0 auto 20px;
}
 }
/* --------------------------------------------
   【structure】
-------------------------------------------- */
#fixedTop {
	width: 130px;
	height:40px;
}
#fixedTop img {
	width: 130px;
	height:40px;
}
 @media screen and (max-width: 640px) {
#fixedTop {
	width: 65px;
	height: 20px;
}
#fixedTop img {
	width: 65px;
	height: 20px;
}
 }
/* --------------------------------------------
   【header】
-------------------------------------------- */
#header {
	background: #fff;
}
#h1 {
	background: #ec6d71;
}
#h1 h1 {
	color: #fff;
}
#header .hdrLogo > a {
	color: #c53d43;
}
#header ul.hdrContact > li:nth-child(2) {
	background: #c53d43;
}
#mainVisual {
	background: url(images/mainVisual_bg.png);
	background-size: cover;
}
/* --------------------------------------------
   【navi】
-------------------------------------------- */
#hdrNav01 {
	background: rgba(197,61,67,0.9);
	border: 1px solid #DDD;
}
#hdrNav01 > ul#menu > li {
	border-right: #fff 1px solid;
}
#hdrNav01 > ul#menu > li:first-child {
	border-left: #fff 1px solid;
}
#hdrNav01 > ul#menu > li > a {
	color: #fff;
}
 @media screen and (max-width: 640px) {
#hdrNavMB00 {
	 background:#c53d43;
	 border-color:#c53d43;
}
#hdrNav01 > ul#menu > li {
	background: rgba(197,61,67,0.9);
	border-bottom-color:#fff;
}
#hdrNav01 > ul#menu > li > a {
	color:#fff;
}
 }
/* --------------------------------------------
   【footer】
-------------------------------------------- */
#footer #copy {
	background: #ec6d71;
}
#footer #sanzen > a {
	color:#565656;
}
 @media screen and (max-width: 640px) {
#footer > .ftrContact {
	background:#fff;
}
#footer > .ftrContact > li:first-child {
	color:#ec6d71;	
}
 }
/* --------------------------------------------
   サービス
-------------------------------------------- */
#service .box{
	flex-wrap: wrap;
}
#service .box .img,#service .box .text {
	width: calc(50% - 20px);
	padding:10px;
}
#service .box .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#service .box:nth-child(even){
	display: flex;
	flex-direction: row-reverse;
	}
#service .box:nth-child(odd){
	display: flex;
               }
#service ul.ld01 {
  list-style-type: disc;
  padding: 15px 20px 20px 35px;
}
#service ul.ld01 li {
  margin-top: 10px;
	font-size: 16px;
	display: flex;
    align-items: center;
    gap: 0 5px;
    padding: .1em;
}
#service ul.ld01 li::before {
    display: inline-block;
    width: 13px;
    height: 8px;
    border-bottom: 4px solid #ec6d71;
    border-left: 4px solid #ec6d71;
    transform: rotate(-45deg) translateY(-1.5px);
    content: '';
}
#service .list-tit {
  background: #ebf4f8;
  display: inline-block;
  font-weight: bold;
  font-size: 20px;
  margin: 0 0 0 1.2em;
  padding: .5em;
}
#service .tit-bor {
  background: linear-gradient(90deg, #99bdde 0%, #99bdde 100%);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100% 20%;
}
#service .listBox {
  background: #ebf4f8;
  border-radius: 10px;
  padding: .5em 0;
	margin-bottom: 40px;
}

 @media screen and (max-width: 640px) {
	 #service .box .text{
		 margin-bottom: 60px;
		 width:100%;
	 }
	 #service .box .img{
		 width: auto;
	 }

 }

/* --------------------------------------------
   施工例
-------------------------------------------- */
#example ul > li > a > dl > dt > img {
	min-height:161px;
}
#example .more {
	background: #ec6d71;
}

/* --------------------------------------------
   施工例詳細【works】
-------------------------------------------- */
#works ul > li > dl:first-child > dt:after {
	width:30px;
	height:30px;
	border: 30px solid transparent;
	border-left:#ec6d71 30px solid;
	right:-50px;
}
 @media screen and (max-width: 640px) {
#works ul > li > dl:first-child > dt:after {
	border: 30px solid transparent;
	border-top:#ec6d71 30px solid;
	bottom:-60px;
	right:0;
}
 }
/* --------------------------------------------
   料金
-------------------------------------------- */
.price01 {
	width:50%;
}
.price02 tr {
	display:table-cell;
}
.price02 tr > th, .price02 tr > td {
	display:block;
	border-right:none;
}
.price02 tr > td {
	border-top:none;
}
.price02 tr:last-child > th, .price02 tr:last-child > td {
	border-right:1px solid #e0e0e0;
}
 @media screen and (max-width: 640px) {
.price01 {
	width:100%;
}
.price02 tr {
	display:initial;
}
.price02 tr > th, .price02 tr > td {
	border-right:1px solid #e0e0e0;
}
 }

/* --------------------------------------------
   会社概要
-------------------------------------------- */
#company table {
	width:560px;
}
#company table tr > td > span {
	color:#ec6d71;
}
