.gnav {
  flex-direction: column;
}
.nav-sp{
	font-size:1.0rem;
	border:1px solid #71a0c9;
	border-radius:8px;
	}
.nav-sm{
	border-left:1px solid #b8c8c4;
}

.top-copy{
	margin:15px auto 0 auto;
	width:638px;
	display:block;
	text-align:center;
}

.container_shi {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  background:linear-gradient(#f5f4ef,#e8e6e2);
}
@media (min-width: 576px) {
  .container_shi {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container_shi {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container_shi {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container_shi {
    max-width: 1200px;
  }
}
/* 3カラム */
.col_shisetsu{
	width: 100%;
	height:100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}
.shi-picture a{
		width:100%;
		height:100%;
		text-indent:-999em;
		background-repeat:no-repeat;
	}
.col_shisetsu > div{
	width: 33.33333%;
	height:auto;
	padding: 0;
}
.top-cont{
	margin-bottom:40px;
	overflow: hidden;
	position: relative;
	zoom:1;
}
.top-cont-l{
	width:700px;
	float:left;
}
.top-cont-r{
	width:275px;
	float:right;
}
.h3-serv{
	margin-bottom:10px;
	color: #747474;
	font-family:"Lucida Grande", "segoe UI", "�q���M�m�ۃS ProN W4", "Hiragino Maru Gothic ProN", Meiryo, Arial, sans-serif;
	font-size:1.2em;
	line-height: 1.5em;
	font-weight:bold;
	background-image:url(../images/serv_bg.gif);
	background-repeat:no-repeat;
	padding-left:20px;
}
.serv-cont{
	font-size:0.9em;
	padding-left:20px;
}
.col-2-2{
  width:100%;
  display:flex;
  flex-wrap:wrap;/* これを指定する */
  justify-content:space-between;
	}
/* 2カラム */
*, *:before, *:after {
	box-sizing: border-box;
}
.col_1{
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
	border:1px solid #dae0e3;
	border-radius:12px;
	margin:5px 10px;
	padding: 10px;
	}
.col_1>div{
    width: 100%;
    background: #FFF;
    border: 1px solid #999;
    padding: 10px;
}
.col_2>div{
    width: 50%;
    background: #FFF;
    border: 1px solid #999;
    padding: 10px;
}
.col_2{
	width: 50%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
	border:1px solid #dae0e3;
	border-radius:12px;
	margin:5px 10px;
	padding: 10px;
	}
.col_2-left {
    text-align: left; 
}
.col_2-right {
    text-align: right; 
}

@media screen and (max-width: 1090px) {
	.col_shisetsu > div{
		width: 50%;
	}
	.shi-box > div{
		width: 50%;
	}
}


.shisetsu{
	margin:0 auto 20px 0;
	text-align:center;
	position:relative;
	height:auto;
}
.top-copy{
	margin:0 auto 10px auto;
	width:100%;
}
.shi-box{
	position:relative;
}
	.shi-box a{
		margin:0 auto;
	}
.shisetsu01{
	margin:0 auto;
	left:inherit;
}
.shisetsu02{
	left:auto;
}
.shisetsu03{
	left:auto;
	top:auto;
}
.shisetsu04{
	left:auto;
	top:auto;
}
.shisetsu05{
	left:auto;
	top:auto;
}
.top-cont{
	margin-bottom:20px;
}
.top-cont-l{
	width:100%;
	float:none;
}
.top-cont-r{
	width:100%;
	float:none;
}
.news-l{
	float:none;
	margin-bottom:10px;
}
.news-r{
	float:none;
	width:100%;
}
}
/* フローディングバナー */
.l-container {
  max-width: 1200px;
  margin: 0 auto;
}
.button {
  color: #fff;
  font-size: 15px;
  padding: 0.5em 0;
  margin: 0.5em 0;
  width: 100%;
  display: block;
  border-radius: 100vw;
  background-color: #006b54;
  cursor: pointer;
}
.floating-banner {
  position: fixed;
  bottom: 5%;
  right: 0;
  padding: 10px;
  background-color: #ffffff;
  border-radius: 5px 0 0 5px;
  box-shadow: 0px 1px 10px rgba(0, 0, 0, 0.15);
}
.floating-banner.close {
  transform: translateX(250px);
  transition: all 500ms 0s ease;
}
.floating-banner .close-button {
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 35px;
  height: 35px;
  background-color: #006b54;
  border-radius: 50%;
  transform: translate(-10px, -10px);
  border: none;
}
.floating-banner .close-button span {
  position: relative;
}
.floating-banner .close-button span:first-child {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  width: 14px;
  height: 2px;
  background-color: #ffffff;
}
.floating-banner .close-button span:last-child {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
  width: 14px;
  height: 2px;
  background-color: #ffffff;
}
.text-fb:hover{
color: #ffffff;
}
.logo-f {
  width: 180px;
  font-size: clamp(100pxpx, 12.5vw, 180px);
  height: auto;
  display: block;
}
.floating-banner__inner {
  text-align: center;
}
/*フッターまでスクロールしたら消す*/
.is-hidden {
  visibility: hidden;
  opacity: 0;
}
/* フローディングボタンここまで */

@media screen and (max-width: 480px) {
	.col_shisetsu > div{
		width: 100%;
	}
	.col_2>div{
    width: 100%;
    background: #FFF;
    border: 1px solid #999;
    padding: 10px;
}
.col_2{
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
	border:1px solid #dae0e3;
	border-radius:12px;
	margin:5px 10px;
	padding: 10px;
	}
}
