@charset "utf-8";
/* CSS Document */
/* 共通 */
/*================================================
 *  ヘッダー
 ================================================*/
header {
	padding: 15px 0;
	
}
header .container{
display:flex;
    justify-content: space-between;
    align-items: center;
}
.summary {
    display: flex;
}
/*================================================
 *  グローバルナビゲーション
 ================================================*/
@media print, screen and (min-width:768px) {
	header h1{
		
	}	
	.headtel img,.headcon img{
		max-width: 100%;
	}
	.headtel{
        margin-right: 10px;
    }	
	.headtel,.headcon{
	
		width: 240px;
	}	
 nav {
 z-index:3;
}
 nav ul {
 margin:0;
 padding:0;
}
 nav li {
 position:relative;
 width:20%;
 float:left;
 margin:0;
 padding:0;
 text-align:center;
 list-style:none;
}
 nav li.no {
 display:none;
}
 nav li span {
 display:block;
 font-size:1.6em;
}
 nav li:before {
 content:"";
 margin-top:-25px;
 position:absolute;
 top:50%;
 left:0;
 width:1px;
 height:50px;
 background:#ccc;
}
 nav li:nth-child(5):after {
 content:"";
 margin-top:-25px;
 position:absolute;
 top:50%;
 right:0;
 width:1px;
 height:50px;
 background:#ccc;
}

 nav li a {
 display:block;
 padding:10px 0;
color: #44acdd;
 text-decoration:none;
}
  nav li a:hover {
	  background:#44acdd;

color: #fff;
 text-decoration:none;
}
 nav li:hover > a {

}
 nav li:hover > a:hover {

}
 .gnav {
 display:block !important;
}
 #spMenu {
 display:none;
}
 .fixed {
 position:fixed;
 top:0;
 left:0;
}
}

/*================================================
 *  スマートフォン向けデザイン
 ================================================*/
@media screen and (max-width:767px) {
 .lock {
 overflow:hidden;
}
 header {
 z-index:999;
 box-sizing:border-box;
 position:fixed;
 top:0;
 left:0;
 width:100%;
	 
	 padding: 10px 0 0 0;

background: #fff;
}
    header .container{
display:block;

}
header h1 img {
 width:50%;
}
 .summary {	 
 width:100%;
 text-align:center;
	 border-top: 1px dotted #aaa;
 
 position:relative;
 top:auto;
 right:auto;
 margin-top:5px;
padding-top:10px;
}
p.headtel {
 margin:0 2% 0 0;
 padding:0;
}
p.headmail {
 margin:0 0 0 0;
 padding:0;
}
p.headtel img {
 width:100%;
}
p.headcon img {
 width:100%;
}

 nav {
 background:#fff;
}
 nav ul {
 margin:0;
 padding:0;
}
 nav .inner > ul {
 z-index:999;
 overflow:auto;
 position:fixed;
 top:70px;
 right:0;
 width:100%;
 height:88%;
 height:-webkit-calc(100% - 70px);
 height:calc(100% - 70px);
}
 nav li {
 position:relative;
 width:100%;
 float:none;
 margin:0;
 text-align:left;
 list-style:none;
 border-bottom:1px solid #fff;
 background:#44acdd;
}
 nav li:first-child {
 border-top:1px solid #fff;
}
 nav li:last-child {

}
 nav li a {
 display:block;
 padding:10px 30px;
 color:#fff;
 text-decoration:none;
 background:#44acdd;
}
 nav li a:hover {
 color:#44acdd;
 background:#fff;
	 text-decoration: none;
}

 nav li span {
 display:none;
}
 .active > a:before {
 margin-top:0;
}
 .active > a:after {
 margin-top:5px;
}
 .gnav, .headnav {
 display:none;
}
 #spMenu {
 display:block;
 z-index:999;
 position:fixed;
 top:8px;
 right:10px;
}
 #spMenu:hover {
 cursor:pointer;
}
 #navBtn {
 display:inline-block;
 position:relative;
 width:40px;
 height:40px;
 border-radius:5%;
 background:#44acdd;
}
 #navBtnIcon {
 display:block;
 position:absolute;
 top:50%;
 left:50%;
 width:14px;
 height:2px;
 margin:-1px 0 0 -7px;
 background:#fff;
 transition:.2s;
}
 #navBtnIcon:before,  #navBtnIcon:after {
 display:block;
 content:'';
 position:absolute;
 top:50%;
 left:0;
 width:14px;
 height:2px;
 background:#fff;
 transition:0.3s;
}
 #navBtnIcon:before {
 margin-top:-6px;
}
 #navBtnIcon:after {
 margin-top:4px;
}
 #navBtn .close {
 background:transparent;
}
 #navBtn .close:before,  #navBtn .close:after {
 margin-top:0;
}
 #navBtn .close:before {
 transform:rotate(-45deg);
 -webkit-transform:rotate(-45deg);
}
 #navBtn .close:after {
 transform:rotate(-135deg);
 -webkit-transform:rotate(-135deg);
}
.topmenu ul li {
 margin:0 0 10px 0;
 padding:0;
display:block;
}
}


.bg-gray{
	background-image: url("../images/bg-gray.jpg");
}
.bg-contact{
	background-image: url("../images/bg-contact.jpg");
}
.resimg{
	max-width:100%;
}
img.linkimg:hover {
	opacity: 0.8;
}
.section {
  padding:4rem 0;
}
.footer {
  padding:1rem 0;
}
.bobox{
	border:4px solid #44acdd;
	padding: 2em;
	background: #fff;
	 border-radius: 10px;
}
.big{
	font-size: 1.2em;
}
.small{
	font-size: 0.9em;
}
.red{
	color: #F00;
}
h2.blue{
	text-align: center;
	color: #44acdd;
	font-size: 1.8rem;
}
h2.blue span{
	border-bottom:solid 5px #44acdd;
}
h2.black{
	text-align: center;
	font-size: 1.8rem;
}
h2.black span{
	border-bottom:solid 5px #44acdd;
}
.hex-about {
    font-size: 28px;
    line-height: 64px;
    position: relative;
    display: inline-block;
    width: 10em;
    height: 64px;
    transition: all .1s ease-in-out;
    text-align: center;
    text-decoration: none;
    color: #fff;
    background-color: #44acdd;
}
.hex-flow {
    font-size: 28px;
    line-height: 64px;
    position: relative;
    display: inline-block;
    width: 7em;
    height: 64px;
    transition: all .1s ease-in-out;
    text-align: center;
    text-decoration: none;
    color: #fff;
    background-color: #44acdd;
}
.hex-price {
    font-size: 28px;
    line-height: 64px;
    position: relative;
    display: inline-block;
    width: 4em;
    height: 64px;
    transition: all .1s ease-in-out;
    text-align: center;
    text-decoration: none;
    color: #fff;
    background-color: #44acdd;
}
.hex-jisseki {
    font-size: 22px;
    line-height: 64px;
    position: relative;
    display: inline-block;
    width: 12em;
    height: 64px;
    transition: all .1s ease-in-out;
    text-align: center;
    text-decoration: none;
    color: #fff;
    background-color: #44acdd;
}
.hex-taisyo {
    font-size: 28px;
    line-height: 64px;
    position: relative;
    display: inline-block;
    width: 6em;
    height: 64px;
    transition: all .1s ease-in-out;
    text-align: center;
    text-decoration: none;
    color: #fff;
    background-color: #44acdd;
}
.hex:before,
.hex:after {
    position: absolute;
    top: 0;
    width: 0;
    height: 0;
    content: '';
    border: 32px solid transparent;
    border-right: 16px solid transparent;
    border-left: 16px solid transparent;
}
.hex:before {
    right: 100%;
    border-right-color:#44acdd;
}
.hex:after {
    left: 100%;
    border-left-color: #44acdd;
}

/*CVとは*/
.abouttitle{
	display: flex;
	color: #44acdd;
	font-size: 1.1em;
	font-weight: bold;
	align-items: center;
}
.at1{
	font-size:2em;
	margin-right: 0.4em;
}

table.hikaku{
	border:solid 2px #44acdd;
}
table.hikaku td{
	border:solid 2px #44acdd;
}
table.hikaku th{
	color: #fff;
	background: #44acdd;
}
table.hikaku th.thcenter{
	border-left:solid 2px #fff;
	border-right:solid 2px #fff;
}
table.hikaku th,table.hikaku td{
	text-align: center;

	padding:0.4em 1em;
}


table.table01 {
	width:100%;
	border-right:#44acdd solid 2px;
	border-collapse: collapse;
}
table.table01 thead th {
	text-align: center;
	background:#44acdd;
	color:#FFF;
	padding:0.5em 1em;
	border-right:#FFF solid 2px;
}
table.table01 thead th:first-child {


	border-bottom:#FFF solid 2px;
}
table.table01 thead th:last-child {
	border-right:#44acdd solid 2px;
}
table.table01 tbody th {
	text-align: center;
	background:#44acdd;
	color:#FFF;
	padding:0.5em 1em;
	border-bottom:#FFF solid 2px;
	vertical-align:top;
}
table.table01 tbody tr:last-child th {
	border-bottom:#44acdd solid 2px;
}
table.table01 tbody td {
	text-align: center;
	
	padding:0.5em 1em;
	border-left:#44acdd solid 2px;
	border-bottom:#44acdd solid 2px;
	vertical-align:top;
}
table.table01 tbody td p{
	margin: 0;
	padding: 0;
}
@media screen and (max-width: 767px) {
table.table01 thead {
	display:none;
}
table.table01 tbody th {
	display:block;
}
table.table01 tbody td {
	display:block;
}
table.table01 tbody td::before {
	content: attr(label);
	float: left;
	clear:both;
	font-weight:bold;
}
table.table01 tbody td p {
	padding-left:6em;
}
}


/*対象*/
ul.taisyolist{
	/*display: flex;*/
	 
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	list-style: none;
}
ul.taisyolist li{
	font-size: 1.4em;
	margin: 0.5em;
}
@media screen and (max-width: 767px) {
	ul.taisyolist li{
	font-size: 1.1em;

}
}
ul.taisyolist li i{
	color: #44acdd;
	font-size:1.4em;
	margin-right: 0.2em;
}
.etc{
	text-align: right;
	margin-bottom: 0;
}
/*料金*/
.pricetable{
	width: 100%;
}
.pricetable caption{
	color: #fff;
	text-align: center;
	font-weight: bold;
	background:#44acdd;
}
.pricetable tr td{
	padding: 1em;
	text-align: center;
	border: 2px #44acdd solid;
}
.pricetable tr td span{
	color: #44acdd;
	font-weight: bold;
	font-size: 2em;
}
/*詳細*/
.date1{
	padding-bottom: 2em;
	margin-bottom: 2em !important;
	border-bottom: 3px solid #c9c9c9;
	
	border-top: 3px solid #c9c9c9;
	padding-top: 2em;
}
.google-map {
    position: relative;
    width: 100%;    /* 左右に余白が必要なら値を変更してもOK */
    height: 0;
    padding-bottom: 56.25%;    /* padding-topでもOK */
    overflow: hidden;
}
.google-map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;    /* 必要であれば!importantを付けてください */
    height: 100%;    /* 必要であれば!importantを付けてください */
}


/*問合せ*/
.contxt{
	border-bottom: 3px solid #c9c9c9;
	border-top: 3px solid #c9c9c9;
	margin: 1em 0;
	padding: 1em 0;
	font-size:1.1em;
}
.contxt .blue{
	font-weight:bold;
	color: #44acdd;
	font-size:1.1em;
	display: block;
	margin-top: 0.5em;
}
a.btn-square:hover{
	color: #fff;
	text-decoration: none;
}
.btn-square {
	font-size:1.4em;
  display: inline-block;
  padding: 0.5em 1.5em;
  text-decoration: none;
  background: #44acdd;/*ボタン色*/
  color: #FFF;
  border-bottom: solid 4px #3f91b8;
  border-radius: 3px;
}
.btn-square:active {
  /*ボタンを押したとき*/
  -webkit-transform: translateY(4px);
  transform: translateY(4px);/*下に動く*/
  border-bottom: none;/*線を消す*/
}



#page_top{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 0;
  bottom: 0;
  background: #999;
  opacity: 0.8;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
  font-family: FontAwesome;
  content: '\f106';
  font-size: 18px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}


/*================================================
 *  スライドショー
 ================================================*/

/* slide01 */
.slide01 {
    display:none;
    overflow:hidden;
    position:relative;
    width:100%;
}

.slide01 .slidePrev {
    position:absolute;
    cursor:pointer;
    z-index:100;
}

.slide01 .slideNext {
    position:absolute;
    cursor:pointer;
    z-index:100;
}

.slide01 .slidePrev img {
    position:absolute;
    width:50px !important;
    height:60px !important;
}

.slide01 .slideNext img {
    position:absolute;
    width:50px !important;
    height:60px !important;
}

.slide01 .slideInner {
    position:relative;
    margin:0;
    padding:0;
}
.slide01 .slideInner li {
    float:left;
    margin:0;
    padding:0;
    list-style:none;
}
.slide01 .slideInner li img {
    margin:0 5px;
    padding:0;
    vertical-align:bottom;
}

.slide01 .filterPrev {
    position:absolute;
    left:0;
    opacity:0.5;
    filter:alpha(opacity=50);
    background-color:#fff;
}

.slide01 .filterNext {
    position:absolute;
    right:0;
    opacity:0.5;
    filter:alpha(opacity=50);
    background-color:#fff;
}

.slide01 .controlNav {
      position:relative;
      float:left;
      left:50%;
}
.slide01 .controlNav span {
      position:relative;
      left:-50%;
      float:left;
      margin:10px 5px 0 5px;
      -webkit-border-radius:5px;
      -moz-border-radius:5px;
      border-radius:5px;
      width:10px;
      height:10px;
      overflow:hidden;
      background:#ccc;
      text-indent:-9999px;
      vertical-align:middle;
}
.slide01 .controlNav span:hover {
      background:#999;
      cursor:pointer;
}
.slide01 .controlNav span.current {
      background:#44acdd;
}


@media (min-width: 768px) {
	.flowimg-sp{
		display: none;
	}
	}
@media (max-width: 767px) {
	.flowimg-pc{
		display: none;
	}
  .pricetable tr td {
	  border-top: none !important;

    display: block;
    width: 100%;
  }

}